Real Time Embedded - System
Real Time Embedded - System
Definition
Real-time embedded systems are defined as
those systems in which the correctness of the
system depends not only on the logical result
of computation, but also on the time at which
the results are produced.
Hard real-time systems (e.g., Avionic control).
Firm real-time systems (e.g., Banking).
Soft real-time systems (e.g., Video on
demand).
2
Deadline
Hard deadline: penalty due to missing deadline is a higher
order of magnitude than the reward in meeting the
deadline
Firm deadline: penalty and reward are in the same order
of magnitude
Soft deadline: penalty often lesser magnitude than
reward
Car example
Mission: Reaching the destination safely.
Controlled System: Car.
Operating environment: Road conditions.
Controlling System
- Human driver: Sensors - Eyes and Ears of the driver.
- Computer: Sensors - Cameras, Infrared receiver, and
Laser telemeter.
Controls: Accelerator, Steering wheel, Break-pedal.
Actuators: Wheels, Engines, and Brakes.
5
Real-Time Tasks
Periodic tasks
- Time-driven. Characteristics are known a priori
- Task Ti is characterized by (pi, ci)
E.g.: Task monitoring temperature of a patient.
Aperiodic tasks
- Event-driven. Characteristics are not known a priori
- Task Ti is characterized by (ai, ri, ci, di)
E.g.: Task activated upon detecting change in patients condition.
Sporadic Tasks
Aperiodic tasks with known minimum inter-arrival time.
pi : task period ai : arrival time ri : ready time
di : deadline ci : worst case execution time.
Task constraints
Deadline constraint
Resource constraints
Shared access
Exclusive access
Precedence constraints
T1 T2: Task T2 can start executing only after T1
finishes its execution
Fault-tolerant requirements
To achieve higher reliability for task execution
Redundancy in execution
8
Computing systems
Uniprocessor, multiprocessor, distributed system
Notion of Predictability
10
Common Misconceptions
Real-time computing is equivalent to fast
computing.
Real-time programming is assembly coding,
priority interrupt programming, and writing
device drivers.
Real-time systems operate in a static
environment.
The problems in real-time system design have
been solved in other areas of computer
science and engineering.
11
Major challenge
The main challenge in real time embedded
system design is real time scheduling
Many existing scheduling techniques
12
14
Summary
Real-time systems are classified as: hard, firm, and soft real time
systems.
15