Embedded System Design: Unified Hardware-Software Approach
Embedded System Design: Unified Hardware-Software Approach
Embedded System Design: Unified Hardware-Software Approach
Unified Hardware-Software
approach
Outline
• Embedded systems overview
– What are they?
– History
• Design challenge – optimizing design metrics
• Technologies
– Processor technologies
– IC technologies
– Design technologies
ESD: Trends
lens
delayed entry
On-time triangle, representing market
Market rise Market fall penetration
Delayed – Triangle area equals revenue
• Loss
D
– The difference between the on-
W 2W
On-time Delayed Time
time and delayed triangle areas
entry entry
Losses due to delayed market entry
(cont.)
• Area = 1/2 * base * height
Peak revenue
– On-time = 1/2 * 2W * W
– Delayed = 1/2 * (W-D+W)*(W-D)
Peak revenue from
Revenues ($)
• Example
– NRE=$2000, unit=$100
– For 10 units
– total cost = $2000 + 10*$100 = $3000
– per-product cost = $2000/10 + $100 = $300
NRE and unit cost metrics
• Compare technologies by costs -- best depends on quantity
– Technology A: NRE=$2,000, unit=$100
– Technology B: NRE=$30,000, unit=$30
– Technology C: NRE=$100,000, unit=$2
$200,000 $200
A A
B B
$160,000 $160
C C
total c ost (x1000)
$80,000 $80
$40,000 $40
$0 $0
0 800 1600 2400 0 800 1600 2400
Number of units (volume) Number of units (volume)
The performance design metric
• Widely-used measure of system, widely-abused
– Clock frequency, instructions per second – not good measures
– Digital camera example – a user cares about how fast it processes images, not clock
speed or instructions per second
• Latency (response time)
– Time between task start and end
– e.g., Camera’s A and B process images in 0.25 seconds
• Throughput
– Tasks per second, e.g. Camera A processes 4 images per second
– Throughput can be more than latency seems to imply due to concurrency, e.g.
Camera B may process 8 images per second (by capturing a new image while
previous image is being stored).
• Speedup of B over S = B’s performance / A’s performance
– Throughput speedup = 8/4 = 2
Three key embedded system
technologies
• Technology
– A manner of accomplishing a task, especially using
technical processes, methods, or knowledge
• Three key technologies for embedded systems
– Processor technology
– IC technology
– Design technology
Processor technology
• The architecture of the computation engine used to implement a
system’s desired functionality
• Processor does not have to be programmable
“Processor” not equal to general-purpose processor
Controller Datapath Controller Datapath Controller Datapath
Control index
Control Register Control logic Registers
logic
logic and file and State total
State register register State
Custom +
ALU register
General
IR PC ALU IR PC
Data Data
memory memory
Program Data Program memory
memory memory
Assembly code Assembly code
for: for:
total = 0 total = 0
for i =1 to … for i =1 to …
Processor technology
Processors vary in their customization for the problem at hand
•
total = 0
for i = 1 to N loop
total += M[i]
Desired end loop
functionality
general ALU
Program
• User benefits memory
Data
memory
– Low time-to-market and NRE costs
Assembly code
– High flexibility for:
power
IC technology
• The manner in which a digital (gate-level) implementation is mapped
onto an IC
– IC: Integrated circuit, or “chip”
– IC technologies differ in their customization to a design
– IC’s consist of numerous layers (perhaps 10 or more)
• IC technologies differ with respect to who builds each layer
and when
gate
IC package IC oxide
source channel drain
Silicon substrate
Moore’s law
• The most important trend in embedded systems
– Predicted in 1965 by Intel co-founder Gordon Moore
IC transistor capacity has doubled roughly every 18 months for the past several decades
10,000
1,000
Logic transistors
(in millions)
100
per chip
10
1
0.1
0.01
0.001
2009 2007 2005 2003 2001 1999 1997 1995 1993 1991 1989 1987 1985 1983 1981
Summary
• Key challenge: optimization of design metrics
– Design metrics compete with one another
• A unified view of hardware and software is
necessary to improve productivity
• Processor Technology: