Embedded Systems

Download Report

Transcript Embedded Systems

Embedded Systems Design
Paul Pop, associate professor
Embedded systems engineering section
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
2
Embedded systems are everywhere
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o oo
o
o
o
oo
o
Our daily lives depend on embedded systems
3
From your bathroom...
Product: Sonicare Plus toothbrush.
Microprocessor: 8-bit Zilog Z8.
4
To Mars...
 Product: NASA's Mars
Sojourner Rover.
Microprocessor:
8-bit Intel 80C85.
5
Big...
6
And small...
7
Characteristics of embedded systems
 Single-functioned
 Dedicated to perform a single function
 Complex 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
8
Level of dependency
Embedded systems:
90% future innovations
40% price
Electronic Injections
Check Control
Speed Control
Central Locking
…
1970
Electronic Gear Control
Electronic Air Condition
ASC Anti Slip Control
ABS
Telephone
Seat Heating Control
Autom. Mirror Dimming
…
1980
Navigation System
CD-Changer
ACC Adaptive Cruise
Control
Airbags
DSC Dynamic Stability
Control
Adaptive Gear Control
Xenon Light
BMW Assist
RDS/TMC
Speech Recognition
Emergency Call…
ACC Stop&Go
BFD
ALC
KSG
42 voltage
Internet Portal
GPRS, UMTS
Telematics
Online Services
BlueTooth
Car Office
Local Hazard Warning
Integrated Safety
System
Steer/Brake-By-Wire
I-Drive
Lane Keeping Assist.
Personalization
Software Update
Force Feedback Pedal…
1990
2000
source: BMW
Automotive Electronics
9
Automotive architecture example
10
Evolution of handsets and technology
11
Smartphone architecture example
Battery
RF
Baseband
ASIC
64MB
NOR
FLASH
64MB
SDRAM
White LED
driver
ARM9
MixedSignal
ASIC
UMA core
2MPix
camera
module
LED Flash
Keyboard
512MB
NAND
FLASH
512 MB
DDR
DRAM
Position
sensors
Charger
Energy
management
ASIC
Back-light
LEDs
SIM
IHF
BT
Module
Application
processor
MMC
ARM9
Frame
buffer
ASIC
UMA core
LCDs
12
Architectures: Networked embedded systems
Distributed
functionality
...
Distributed
across
networks
Several
functions
per processor
...
13
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
14
Graphical illustration of Moore’s law
1981
1984
1987
1990
1993
1996
1999
2002
10,000
transistors
150,000,000
transistors
Leading edge
chip in 1981
Leading edge
chip in 2002
 Something that doubles frequently grows more quickly
than most people realize!
 A 2002 chip could hold about 15,000 1981 chips inside itself
15
16
More Moore vs. More than Moore
17
Tubes to Chips: Integrated Circuits
 Driven by Information Processing needs
IBM Power 5 IC
(2004)
IBM 701 calculator (1952)
Slide soruce: Krish Chakrabarty, Duke University
18
Tubes to Chips: Biochips
 Driven by biomolecular analysis needs
Agilent DNA analysis
Lab on a Chip (1997)
Test tube analysis
Slide soruce: Krish Chakrabarty, Duke University
19
Tubes to Chips: Biochips, cont.
Test tubes
Automation
Integration
Miniaturization
Robotics
Microfluidics
Slide soruce: Krish Chakrabarty, Duke University
Automation
Integration
Miniaturization
Automation
Integration
Miniaturization
20
Biochip Architecture
Slide soruce: Krish Chakrabarty, Duke University
21
Embedded systems design problem
 Find 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
22
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
23
Embedded software: size and deployment
24
Embedded software: complexity growth
25
Increasing complexity (telecom example)
26
Design crisis
Gates/cm2
Moore’s Law
Log Scale
Widening Gap
Design Productivity
Software Productivity
0.35µ
0.25µ
0.18µ
0.12µ
0.15µ
Technology (micron)
0.1µ
27
We need a better design methodology
 Design 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.
28
Abstraction and clustering
IP Block Performance
Inter IP Communication Performance Models
Gate Level Model
Capacity Load
abstract
1970’s
abstract
RTL
cluster
RTL
Clusters
SW
Models
cluster
abstract
Transistor Model
Capacity Load
abstract
SDF
Wire Load
IP Blocks
cluster
1980’s
1990’s
Year 2000 +
29
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
Platform API
Application Software
Software
Software Platform
Hardware Platform
Input devices
Hardware
Output Devices
I
O
Network
30
System-level design
Application
model
System platform
model
Application
model
Architecture
model
System-level
design tasks
Constructive vs.
improvement
Model of system
implementation
Software
synthesis
Evaluation
Analysis vs.
simulation
Hardware
synthesis
31
Typical design tasks: Mapping and scheduling
Given
m1
 Application: set of interacting processes
 Platform: set of nodes
 Timing constraints: deadlines
P1
P2
m3
m2
P3
P4
m4
Determine
N1
 Mapping of processes and messages
 Schedule tables for processes and messages
N2
 Such that the timing constraints are satisfied
P1
N1
Schedule
table
P4
P2
N2
Bus
S2
S1
m1
Deadline
P3
m2
m3
m4
32
Biochips design tasks
Source
Binding
Allocation
In S 2
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
–
In S 1
1
In R 1
2
5
In B
Dilute
6
7
In R 2
9
Mix
3
Mix
Detect
4
Detect
8
10
Sink
Scheduling
Placement
S1
Mixer1
B
R1
Mixer2
Diluter
Mixer2
Store
S2
O9
Mixer1
Diluter
S3
R2
W Detector
O7
O3
Store
O11
Detector
O10
O4
33
Design-space exploration
34
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
35