Embedded Systems Design
Paul Pop, associate professorEmbedded systems engineering section
2
Embedded Systems
Invisible computers, inside most of the devices we use, from a music player, a mobile phone, to cars, trains, medical equipment, and so on.
an embedded system special-purpose computer system, part of a larger system which it controls
More than humans on the planet, already 40 billion of such devices by 2020
99% of processors used in embedded systems 4 billion embedded processors sold last year
€71 billion global market in 2009, growth of 14% Market size is about 100 times the desktop market
3
o o
oo oo
o o
o oo
oo oo
oo
o
oo
o
o
oo
oo
o
o o
o
oo
Embedded systems are everywhere
Our daily lives depend on embedded systems
4
Product: Sonicare Plus toothbrush.
Microprocessor: 8-bit Zilog Z8.
From your bathroom...
5
To Mars...
Product: NASA's Mars Sojourner Rover.
Microprocessor: 8-bit Intel 80C85.
6
Big...
7
And small...
8
Characteristics of embedded systemsSingle-functioned
Dedicated to perform a single functionComplex functionality
Often have to run sophisticated algorithms or multiple algorithms. Cell phone, laser printer.
Tightly-constrained Low cost, low power, small, fast, etc.
Reactive and real-time Continually reacts to changes in the system’s environment Must compute certain results in real-time without delay
Safety-critical Must not endanger human life and the environment
9
Leve
l of d
epen
denc
yAutomotive Electronics
Embedded systems:90% future innovations40% price
1970 1980 1990 2000
ACC Stop&GoBFDALCKSG42 voltageInternet PortalGPRS, UMTSTelematicsOnline ServicesBlueToothCar OfficeLocal Hazard WarningIntegrated Safety
SystemSteer/Brake-By-WireI-DriveLane Keeping Assist.PersonalizationSoftware UpdateForce Feedback Pedal…
Electronic InjectionsCheck ControlSpeed ControlCentral Locking…
Navigation SystemCD-ChangerACC Adaptive Cruise
ControlAirbagsDSC Dynamic Stability
ControlAdaptive Gear ControlXenon LightBMW AssistRDS/TMCSpeech RecognitionEmergency Call…
Electronic Gear ControlElectronic Air ConditionASC Anti Slip ControlABSTelephoneSeat Heating ControlAutom. Mirror Dimming…
sour
ce: B
MW
10
Automotive architecture example
11
Evolution of handsets and technology
12
LCDs
Application processor
Baseband ASIC
Mixed-Signal ASIC
Energy management ASIC
Position sensors
512 MB DDR DRAM
512MB NAND FLASH
2MPix camera module
64MB NOR FLASH
64MB SDRAM
RF Battery
White LED driver
Frame buffer ASIC
MMC
ARM9
UMA core
Keyboard
LED Flash
ARM9
UMA core
BT Module
SIM
IHF
Back-light LEDs
Charger
Smartphone architecture example
13
Architectures: Networked embedded systems
Distributedacross
networks
...
...Several functions
per processor
DistributedfunctionalityDistributedfunctionality
14
Application areas: critical vs. best-effort Critical (e.g., avionics)
Based on worst-case assumptions Static reservation of resources Schedulability analysis and static scheduling Simple execution platforms Leads to overdesign (underutilization)
Best effort (e.g., multimedia, networks) Based on average-case Dynamic reservation of resources Sophisticated architectures Adaptive scheduling mechanisms Leads to temporary unavailability
Bridging the gap: partitioned architectures
15
1981 1984 1987 1990 1993 1996 1999 2002
Leading edgechip in 1981
10,000transistors
Leading edgechip in 2002
150,000,000transistors
Graphical illustration of Moore’s law
Something that doubles frequently grows more quickly than most people realize! A 2002 chip could hold about 15,000 1981 chips inside itself
16
17
More Moore vs. More than Moore
18
Tubes to Chips: Integrated Circuits
Driven by Information Processing needs
IBM 701 calculator (1952)
IBM Power 5 IC
(2004)
Slide soruce: Krish Chakrabarty, Duke University
19
Tubes to Chips: Biochips
Driven by biomolecular analysis needs
Test tube analysis
Agilent DNA analysis
Lab on a Chip (1997)
Slide soruce: Krish Chakrabarty, Duke University
20
Tubes to Chips: Biochips, cont.
Test tubes
Robotics
Microfluidics
AutomationIntegration
Miniaturization
AutomationIntegration
Miniaturization
AutomationIntegration
Miniaturization
Slide soruce: Krish Chakrabarty, Duke University
21
Biochip Architecture
Slide soruce: Krish Chakrabarty, Duke University
22
Embedded systems design problemFind an implementation that can perform the computation such
that the requirements are satisfied.
Embedded systems perform computations (software) that are subject to physical constraints (hardware)
Reaction to a physical environment: deadline, throughput, jitter Execution on a physical platform: processor speed, power, reliability
The need for an embedded systems design discipline Computer science separates computation from physical constraints Computer engineering ignores computation
23
Traditional embedded systems design
Design and build the target hardware
Develop the software independently
Integrate them and hope it works
Does not work for complex systems
24
Embedded software: size and deployment
25
Embedded software: complexity growth
26
Increasing complexity (telecom example)
27
0.35µ 0.25µ 0.18µ 0.15µ 0.12µ 0.1µ
Lo
g
Sc
ale
Gates/cm2
Moore’s Law
Widening Gap
Design Productivity
Software Productivity
Technology (micron)
Design crisis
28
We need a better design methodologyDesign methodology: the process of creating a system
Goal: optimize competing design metrics Time-to-market Design cost Manufacturing cost Quality, etc.
Design flow: sequence of steps in a design methodology. May be partially or fully automated. Use tools to transform, verify design.
Design flow is one component of design methodology. Methodology also includes management, organization, etc.
29
Abstraction and clustering
abst
ract
Transistor ModelCapacity Load
1970’s
cluster
abst
ract
Gate Level ModelCapacity Load
1980’s
RTL
cluster
abst
ract
SDFWire Load
1990’s
IP Blocks
cluster
abst
ract
IP Block PerformanceInter IP Communication Performance Models
RTLClusters
SWModels
Year 2000 +
30
Abstraction and clustering: Platforms The “PC platform” makes development easier
x86 instruction-set architecture fully specified set of buses and a specified set of I/O devices
Similar platform definitions for specific embedded systems application areas
Output DevicesInput devices
Hardware Platform
I O
Hardware
Software
Network
Software Platform
Application Software
Platform API
31
Model of system implementation
System platform model
System-leveldesign tasks
Evaluation
Softwaresynthesis
Hardware
synthesis
Application model
Application model
Architecture model
System-level design
Constructive vs.improvement Analysis vs.
simulation
32
Typical design tasks: Mapping and schedulingGiven
Application: set of interacting processes Platform: set of nodes Timing constraints: deadlines
Determine Mapping of processes and messages Schedule tables for processes and messages
Such that the timing constraints are satisfied
S2 S1
P1
P4
P2
m1 m2m3 m4
P3
N1
N2
Bus
Schedule
table
Deadline
P1
P4
P2 P3
m1 m2
m3 m4
N1 N2
33
Operation Area (cells) Time (s) Mixing 2x2 6 Mixing 2x3 5 Mixing 2x4 4
Dilution 2x2 6 Dilution 2x3 5 Dilution 2x4 3 Storage 1x1 –
Biochips design tasks
Scheduling
Binding
Placement
Allocation
S1
S2
S3 B
R1
R2
W
Store
Mixer1
Mixer2
Dil
uter
Detector
Mixer1
Mixer2
Diluter
Store
Detector
O7
O9
O3
O11
O10 O4
1 2
3
4
5 6
7
10
8
9
In S1 In R 1
Mix
Detect
In S2 In B
DiluteIn R 2
Mix
Detect
Source
Sink
34
Design-space exploration
35
Safety-Critical Systems
Safety is a property of a system that will not endanger human life or the environment.
A safety-related system is one by which the safety of the equipment or plant is ensured.
Safety-critical system is: Safety-related system, or High-integrity system
Our daily lives depend on embedded systems