Characteristics of Real-Time Systems
Characteristics of Real-Time Systems
Real-Time Systems
1
10-Aug-19
What is a Real-Time
System?
• A system is called real-time:
Whenever we need to quantitatively
express time to describe its
behaviour.
• Recall how to describe the
behaviour of a system?
List inputs to the system and the
corresponding system response. 2
10-Aug-19
Important Characteristics
• An embedded system responds to events.
SENSORS
A/D
CONVERSION CPU D/A
CONVERSION
ACTUATORS
AUXILLARY
HUMAN DIAGNOSTIC SYSTEMS
INTERFACE PORT (POWER,
COOLING)
External
Environment
4
10-Aug-19
How is Real-Time OS Different
from Traditional OS?
• An embedded system responds to
external inputs:
If response is late, the system fails.
• General purpose OS:
Not designed for real-time use
• Real-time OS:
Helps tasks meet their deadline.
5
10-Aug-19
Characteristics of An
Embedded System
•Real-time:
• Some tasks are real-time
• Each real-time task is associated with
some time constraints, e.g. a Deadline.
•Correctness Criterion:
• Results should be logically correct,
• And within the stipulated time.
6
10-Aug-19
Characteristics of an
Embedded System cont…
• Safety and Task Criticality:
A critical task is one whose failure
causes system failure (example:
obstacle avoidance).
A safe system does not cause damage.
A safety-critical real-time system is
one where any failure causes severe
damage. 7
10-Aug-19
Characteristics of an
Embedded System cont…
• Concurrency:
A RT system needs to respond to
several independent events.
Typically separate tasks process each
independent event.
For the same inputs, the result can be
different (Non-determinism).
8
10-Aug-19
Characteristics of
Embedded Systems cont…
• Distributed and Feedback
Structure
• Custom Hardware:
An embedded system is often
implemented on custom H/W that
is specially designed and developed
for the purpose.
9
10-Aug-19
Characteristics of
Embedded Systems
Actuator Sensor
Embedded System
Actuator Sensor
Computation
Processing Processing
Environment
C1 V
O
T
C2 I Majority Result
N
C3 G
failure
success success failure
result
10-Aug-19
Modern Embedded Systems
Application
Analog
Specific HW
I/O
Processor
Cores Memory
Real-time
ASIC UI
Processor OS
processes
Dual-ported
CODEC
RAM
26
10-Aug-19
Why Have an OS in an
Embedded Device?
• Support for:
Multitasking, scheduling, and synchronization
Timing aspects.
Memory management
File systems
Networking
Graphics displays
Interfacing wide range of I/O devices
Scheduling and buffering of I/O operations
Security and power Management 27
10-Aug-19
Why Have an OS in an
Embedded Device?
• Example: A recent cell phone operating system
contained over five million lines of code!
• Few, if any projects will have the time and
funding:
To develop all of this code on their own!
• Typical Embedded OS license fees are a few
dollars per device –-- less than a desktop OS
• Some very simple low-end devices might not need
an OS:
But new devices are getting more complex.
28
10-Aug-19
What is Actually Being Used?
• What Types of Processors are used?
• What Operating Systems are used?
• What Programming Languages are
used?
• Will examine data from a 2006 Market
Survey of design engineers:
Embedded Systems Design Magazine.
29
10-Aug-19
Processor Bit Size Used
in New Embedded Designs
64-bit
32-bit
16-bit
8-bit
4-bit
Data was derived from EETimes and Embedded Systems Design Magazine 2006 Embedded Market Survey
30
10-Aug-19
Processor Architectures Widely
Used in New Embedded Designs
• ARM
• X86
• PowerPC
• MIPS
• Xscale (ARM)
• Renesas SuperH
31
10-Aug-19
32-64 bit Annual
Processor Sales
Processor Sales Volume
ARM
X86
MIPS
SuperH
PowerPC
32
10-Aug-19
Number of Processors Used
in New Embedded Designs
1 Processor
2 Processors
3-5 Processors
More Than 5
Data was derived from EETimes and Embedded Systems Design Magazine 2006 Embedded Market Survey
33
10-Aug-19
Processor Selection Issues
• Software Support
OS, Compilers, Debug Tools, Applications
• Price
• Performance
• Power
Battery Life (MIPS/Watt), Cooling
(Fan?)
• Desktop PC 100 W vs. Battery power 200 mw
• Availability
Long term availability, Multiple Vendors?
34
10-Aug-19
Use of Real-Time OS Kernels
in New Embedded Designs
Commercial OS
None
Internally Developed
Open Source
Data was derived from EETimes and Embedded Systems Design Magazine 2006 Embedded Market Survey
35
10-Aug-19
Pros and Cons of Open
Source OS
• Embedded devices are
extremely cost sensitive:
Even a $1 license fee per device
can make a product
uncompetitive.
• For satisfactory performance:
The source code often needs to
be fine tuned.
10-Aug-19
36
Open Source OS: Cons
• “Free” OS can increase product
development cost:
More time to develop device drivers, increased
labor cost.
More than offset the commercial OS license
fees saved.
• Some other licenses may still required:
Encoders & decoders, encryption, media player
• Open source license model may require:
That you publish your device’s source code
37
10-Aug-19
Commercial Operating Systems
used in New Embedded Designs
Microsoft Emb.
Wind River
Symbian
Green Hills
Palm
Others
Data was derived from EETimes and Embedded Systems Design Magazine 2006 Embedded Market Survey
38
10-Aug-19
Programming Languages Used
in New Embedded Designs
C
C++
C#
Java
Assembly
Others
39
10-Aug-19
Future of Embedded
Systems
• Use of multi-core processors:
Present operating systems and
tools do not make satisfactory
utilization of the multiple cores.
• Support of wireless and mobile
Internet.
• Power minimization.
40
10-Aug-19