Module Identifier CS33110  
Module Title SMALL REAL-TIME SYSTEMS  
Academic Year 2005/2006  
Co-ordinator Mr Jem Rowland  
Semester Semester 1  
Other staff Dr David Barnes, Mr Jem Rowland  
Pre-Requisite CS25510 normally required, CS21120 , CS22210  
Mutually Exclusive CS23110  
Course delivery Lecture   20 lectures  
Assessment
Assessment TypeAssessment Length/DetailsProportion
Semester Exam2 Hours  100%
Supplementary Exam2 Hours Will take the same form, under the terms of the Department's policy.  100%
Further details http://www.aber.ac.uk/compsci/ModuleInfo/CS33110  

Learning outcomes

On successful completion of this module students should be able to:
A student who successfully completes the course will be able to:


Brief description

A real-time computer system operates on a timescale that is governed by the application for which it is designed; in other words the computer must not only perform the function for which it is designed but it must do so on a specified timescale. One manufacturer of real-time products uses the appropriate catchphrase "the right answer late is wrong". Examples of real-time systems include washing machine controllers, engine management systems, industrial controllers, avionic systems and many more. All of these are also examples of embedded systems, computer systems that are designed exclusively for a specific application and may not be immediately recognisable as a computer. In all of these cases the computer interacts with the equipment that it monitors and controls via sensors and actuators, in contrast with the I/O facilities typically associated with conventional computers. The course introduces the ideas of real-time embedded systems, the special requirements that they place on the design process and some of the methods used for their design and implementation.

Content

1. Introduction to Real Time Computing: timing constraints, the role of concurrency.   

Characteristics of embedded systems. Example applications. [3 lectures]

2. Hardware aspects of embedded systems: processors, microcontrollers, interfacing and interface configuration, analogue signal interfaces and the Nyquist theorem, transducers. [3 lectures]

3. Responding to real-world events: polling, interrupts and interrupt mechanisms, buffering. [2 lectures]

4. Implementation aspects of concurrency; real-time operating systems and kernels. [2 lectures]

5. Approaches to real-time system design. Design methods: MASCOT 3, HOOD and HRT HOOD, RT UML and associated design processes. Hardware/software tradeoff. [5 lectures]

6. Developing real-time systems: development systems, languages for real-time systems development. [3 lectures]

7. Safety and reliability: an introduction to the requirements and techniques for design and implementation of real-time embedded systems for safety critical applications. [2 lectures]

In addition, students are required to read and research the above topics independently of the lectures in order to develop a good understanding of the subject.

Reading Lists

Books
** Recommended Text
Jim Cooling (2003) Software Engineering for Real-Time Systems Addison Wesley 0-201-59620-2
** Consult For Futher Information
Burns and Wellings (2001) Real Time Systems and Programming Languages Third. Addison Wesley 0-201-72988-1
Peter C. Dibble (2002) Real time Java Platform Programming Sun Microsystems 0-13-028261-8
B.P. Douglass (1999) Real Time UML Addison Wesley 0-201-65784-8

Notes

This module is at CQFW Level 6