160 likes | 326 Views
Real-Time System Development. Issues and Methods. (As part of CSA404). Some opening wise-cracks!. “The computer is controlling something that interacts with with reality on a timely basis. … … An unresponsive real-time system may be worse than no system at all.”
E N D
Real-Time System Development Issues and Methods (As part of CSA404)
Some opening wise-cracks! “The computer is controlling something that interacts with with reality on a timely basis. … … An unresponsive real-time system may be worse than no system at all.” [R. Glass - 1983] “In today’s society, an incorrectly responsive real-time system is something that should be put to death before it itself has time to do so to others.” [E. Cachia - 1998]
A General Definition Systems whose correct functioning depends on the timeliness of its response(s)forcing its timing to be defined under some form of constraint This definition is very broad and clearly lends itself to further definition
R-T Distinguishing Features (1) • Form part of a larger system (embedded systems) • Often interact with non-human external entities (direct control systems) • Pre-defined timing constraints typically in the range of ms to minutes (time critical systems)
R-T Distinguishing Features (2) • Automatic (R-T) system control excluding any human intervention (automated control systems) • The current state of a R-T systems depends not only on any external stimuli it receives but also on its present state (reactive systems)
Application Areas of R-T Systems • Industrial • Commercial • Military Typical features Complexity Multiple control streams Strict timing constraints
WHAT?! R-T Categorisation Soft (missed timing deadlines are fault causing but not catastrophic) Hard (missed timing deadlines cause catastrophic system failure) Furthermore ... • Soft or hard R-T systems can be • Slow • Fast • Therefore, 4 classes of R-T systems can be defined
Some R-T Class Examples(1) • Hard-fast (computation times 10ms) • Vehicle airbag systems • Safety cut-off control systems • Aircraft control systems • Hard-slow (computation times 10s) • Missile engagement systems • Conventional process control • Critical environment monitoring systems
Some R-T Class Examples(2) • Soft-fast (times may vary up to minutes) • Specific characteristics include • Humans are a system component • Contain a substantial MMI • Weapon fire-control systems • System status monitor systems • Soft-slow (times usually vary up to minutes) • Trend monitoring systems • Analysis-for-feedback systems • Auto-adaptation systems
Modelling R-T Systems • Understand which aspects of R-T systems require particular attention • Adapt or create adequate representation tools for modelling the required R-T system aspects • Understand how specific R-T modelling techniques can be integrated into generic software development procedures
R-T System Aspects to Model • Model control functions • Model control data • Model timing constraints • Model system reactions • Model fault handling/recovery • (Sub) System redundancy
Modelling Control Functions • Control modelling is dynamic by nature • Modelling techniques to describe dynamic system behaviour exist • Control modelling can be tackled separately but should always be considered as part of the whole system model • One particular control modelling technique might not model all the required control aspects of a system
Some Tools for Modelling Dynamic System Behaviour • Finite State Machines in the form of Mealy State Transition Diagrams • Modified DFDs (e.g. Hatley-Pirbhai extensions a.k.a. Control Flow Diagrams - CFDs ) • Mathematical logic
Aspects to look out for when specifying R-T systems • Task execution time CPU time required for task completion • Task period/Task rate Time interval between task starts. The number of task starts in a fixed period of time is the rate • Task deadline Time by which a task must reach completion • Jitter Time interval in which a task may begin and terminate before its deadline • Transport lag Time interval between actual real-world event and the system’s response (signal to actuator)