Download Technologies - Embedded System Design - Lecture Slides and more Slides Computer Science in PDF only on Docsity!
Outline
• Embedded systems overview
– What are they?
• Design challenge – optimizing design metrics
• Technologies
– Processor technologies
– IC technologies
– Design technologies
Embedded systems overview
• Computing systems are everywhere
• Most of us think of “desktop” computers
– PC’s
– Laptops
– Mainframes
– Servers
• But there’s another type of computing system
– Far more common...
A “short list” of embedded systems
And the list goes on and on
Anti-lock brakes Auto-focus cameras Automatic teller machines Automatic toll systems Automatic transmission Avionic systems Battery chargers Camcorders Cell phones Cell-phone base stations Cordless phones Cruise control Curbside check-in systems Digital cameras Disk drives Electronic card readers Electronic instruments Electronic toys/games Factory control Fax machines Fingerprint identifiers Home security systems Life-support systems Medical testing systems
Modems MPEG decoders Network cards Network switches/routers On-board navigation Pagers Photocopiers Point-of-sale systems Portable video games Printers Satellite phones Scanners Smart ovens/dishwashers Speech recognizers Stereo systems Teleconferencing systems Televisions Temperature controllers Theft tracking systems TV set-top boxes VCR’s, DVD players Video game consoles Video phones Washers and dryers
Some common characteristics of
embedded systems
- Single-functioned
- Executes a single program, or has a custom hardware
for a single function.
- 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
Design challenge – optimizing design
metrics
- Obvious design goal:
- Construct an implementation with desired
functionality
- Key design challenge:
- Simultaneously optimize numerous design metrics
- Design metric
- A measurable feature of a system’s
implementation
- Optimizing design metrics is a key challenge
Design challenge – optimizing
design metrics
• Common metrics
– Unit cost: the monetary cost of manufacturing each copy of the system, excluding NRE cost
– NRE cost (Non-Recurring Engineering cost): The one-time
monetary cost of designing the system
– Size: the physical space required by the system
– Performance: the execution time or throughput of the system
– Power: the amount of power consumed by the system
– Flexibility: the ability to change the functionality of the system without incurring heavy
NRE cost
Design metric competition --
improving one may worsen others
- Expertise with both software and
hardware is needed to optimize
design metrics
- Not just a hardware or software
expert, as is common
- A designer must be comfortable with
various technologies in order to
choose the best for a given
application and constraints
Performance Size
Power
NRE cost
Microcontroller
CCD preprocessor Pixel coprocessor A2D
D2A
JPEG codec
DMA controller
Memory controller ISA bus interface UART LCD ctrl
Display ctrl
Multiplier/Accum
Digital camera chip
lens
CCD
Hardware
Software
Time-to-market: a demanding
design metric
- Time required to develop a product
to the point it can be sold to
customers
- Market window
- Period during which the product
would have highest sales
- Average time-to-market constraint is
about 8 months
Revenues ($)
Time (months)
Losses due to delayed market entry
(cont.)
- Area = 1/2 * base * height
- On-time = 1/2 * 2W * W
- Delayed = 1/2 * (W-D+W)*(W-D)
- Percentage revenue loss = (D(3W-
D)/2W^2 )*100%
On-time Delayed entry entry
Peak revenue
Peak revenue from
delayed entry
Market rise Market fall
W 2W
Time
D
On-time
Delayed
Revenues ($)
- Lifetime 2W=52 wks, delay D=4 wks
- (4(326 –4)/2*26^2) = 22%
- Lifetime 2W=52 wks, delay D=10 wks
- (10(326 –10)/2*26^2) = 50%
- Delays are costly!
NRE and unit cost metrics
- Costs:
- Unit cost: the monetary cost of manufacturing each copy of the system, excluding NRE cost
- NRE cost (Non-Recurring Engineering cost): The one-time monetary cost of designing the system
- total cost = NRE cost + unit cost * # of units
- per-product cost = total cost / # of units
= (NRE cost / # of units) + unit cost
• Example
- NRE=$2000, unit=$
- For 10 units
- total cost = $2000 + 10*$100 = $
- per-product cost = $2000/10 + $100 = $
Amortizing NRE cost over the units results in an additional $200 per unit
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 A = B’s performance / A’s
Docsity.com
Three key embedded system
technologies
• Processor technology
• IC technology
• Design technology
Processor technology
- Processors vary in their customization for the problem at hand
total = 0
for i = 1 to N loop
total += M[i]
end loop
General-purpose
processor
Single-purpose
processor
Application-specific
processor
Desired
functionality
General-purpose processors
- Programmable device used in a variety of applications
- Also known as “microprocessor”
- Features
- Program memory
- General datapath with large register file and general ALU
- User benefits
- Low time-to-market and NRE costs
- High flexibility
- “Pentium” the most well-known, but there are
hundreds of others
IR PC
Register file
General ALU
Controller Datapath
Program memory
Assembly code
for:
total = 0
for i =1 to …
Control logic and State register
Data memory