II Characteristics & Constrints of Es
II Characteristics & Constrints of Es
Pascal Raymond
Verimag-CNRS
• Smart cards
• Household appliances
• Telecom equipments
• Computer Assisted Surgery
• Smart buildings and Energy
Characteristics
Characteristics
The environment
AIR
Actuator
Heater
Sensor
Reactive
ON, OFF
System
Temperature
initializations
while (true) { • Real-time: time to execute the code from (1)
--- point (1) to (2) must be short enough
get inputs
• Reactive: output to the environment influ-
from the sensors
compute outputs ence future inputs
and update memory • Criticity/Safety: badly controlled outputs may
write outputs have dramatic consequences e.g., this a
on the actuators
(small) part of a nuclear power-plant con-
--- point (2)
} troller
• Write code that is sufficiently fast (not always possible to “try a faster machine”)
• Be able to tell how fast your program is, in advance (Worst-Case-Execution-Time
static evaluation)
• It’s not always possible to write single-loop code, because of the intrinsic
parallelism of a reactive system.
e.g., multiple sensor-computing-actuator lines, like temperature and pressure
Safety Problems
Industrial Practice
Example: Scade
• Programming language/environment:
,→ Software engineering features (modularity, libraries)
,→ Automatic code generation:
KCG compiler is DO178B qualified
in particular, eliminates the need of low-level code testing
,→ Thanks to formal semantics, high-level validation possible (and sufficient cf. qualif.):
automated testing, formal verification
• Widely used (imposed) for high-critical systems (avionics, helicopters, power plants)
• Focus on functionality
• How to design/validate safe ES:
,→ programming languages (features? styles?)
,→ code generation
,→ functional validation (formal methods?)
,→ timing validation (Worst Case Exec time ?)
• Based on the so-called “Synchronous approach”
Summary 14/14