Professional Documents
Culture Documents
04/02/24
Definition
04/02/24
Embedding a computer
output analog
input analog
CPU
mem
embedded
computer
04/02/24
Examples
Cell phone.
Printer.
Automobile: engine, brakes, dash, etc.
Airplane: engine, flight controls,
nav/comm.
Digital television.
Household appliances.
04/02/24
Microprocessor varieties
04/02/24
Application examples
04/02/24
BMW 850i brake and
stability control system
04/02/24
BMW 850i, cont’d.
sensor sensor
brake brake
hydraulic
ABS
pump
brake brake
sensor sensor
04/02/24
Characteristics of
embedded systems
Sophisticated functionality.
Real-time operation.
Low manufacturing cost.
Low power.
Designed to tight deadlines by small
teams.
04/02/24
Functional complexity
04/02/24
Real-time operation
04/02/24
Non-functional
requirements
04/02/24
Why use microprocessors?
04/02/24
The performance paradox
04/02/24
Power
Custom logic uses less power, but CPUs have
advantages:
Modern microprocessors offer features to
help control power consumption.
Software design techniques can help reduce
power consumption.
Heterogeneous systems: some custom logic for
well-defined functions, CPUs+software for
everything else.
04/02/24
Platforms
04/02/24
What does “performance”
mean?
In general-purpose computing,
performance often means average-case,
may not be well-defined.
In real-time systems, performance means
meeting deadlines.
Missing the deadline by even a little is bad.
Finishing ahead of the deadline may not help.
04/02/24
Characterizing
performance
04/02/24
Challenges, etc.
Performance.
Overall speed, deadlines.
Functionality and user interface.
Manufacturing cost.
Power consumption.
Other requirements (physical size, etc.)
04/02/24
Levels of abstraction
04/02/24
Top-down vs. bottom-up
Top-down design:
start from most abstract description;
work to most detailed.
Bottom-up design:
work from small components to big system.
Real design uses both techniques.
04/02/24
Stepwise refinement
04/02/24
Requirements
04/02/24
Functional vs. non-
functional requirements
Functional requirements:
output as a function of input.
Non-functional requirements:
time required to compute output;
size, weight, etc.;
power consumption;
reliability;
etc.
04/02/24
Our requirements form
name
purpose
inputs
outputs
functions
performance
manufacturing cost
power
physical size/weight
04/02/24
Example: GPS moving map
requirements
Moving map
obtains position I-78
from GPS, paints
Scotch Road
map from local
database.
lat: 40 13 lon: 32 19
04/02/24
GPS moving map needs
Functionality: For automotive use. Show major
roads and landmarks.
User interface: At least 400 x 600 pixel screen.
Three buttons max. Pop-up menu.
Performance: Map should scroll smoothly. No
more than 1 sec power-up. Lock onto GPS
within 15 seconds.
Cost: $120 street price = approx. $30 cost of
goods sold.
04/02/24
GPS moving map needs,
cont’d.
04/02/24
GPS moving map
requirements form
name GPS moving map
purpose consumer-grade
moving map for driving
inputs power button, two
control buttons
outputs back-lit LCD 400 X 600
functions 5-receiver GPS; three
resolutions; displays
current lat/lon
performance updates screen within
0.25 sec of movement
manufacturing cost $100 cost-of-goods-
sold
power 100 mW
physical size/weight no more than 2: X 6:,
12 oz.
04/02/24
Specification
Should include:
What is received from GPS;
map data;
user interface;
operations required to satisfy user requests;
background operations needed to keep the
system running.
04/02/24
Architecture design
user
database interface
04/02/24
GPS moving map hardware
architecture
memory
panel I/O
04/02/24
GPS moving map software
architecture
A Renderer converts the internal representation of UI Component
into the output stream (or writer) associated with the response
user
timer
interface
04/02/24
Designing hardware and
software components
04/02/24
System integration
04/02/24
Summary
Design methodologies.
Requirements and specification.
04/02/24
Design methodologies
Time-to-market:
beat competitors to market;
meet marketing window (back-to-school).
Design cost.
Manufacturing cost.
Quality.
04/02/24
Mars Climate Observer
04/02/24
Design flow
04/02/24
Waterfall model
requirements
architecture
coding
testing
maintenance
04/02/24
Waterfall model steps
04/02/24
Waterfall model critique
04/02/24
Spiral model
system feasibility
specification
prototype
initial system
enhanced system
requirements
design
test
04/02/24
Spiral model critique
04/02/24
Successive refinement
model
specify specify
architect architect
design design
build build
test test
04/02/24
Hardware/software design
flow
requirements and
specification
architecture
integration
testing
04/02/24
Co-design methodology
04/02/24
Hierarchical HW/SW flow
spec spec
spec
architecture HWSW
architecture
architecture
HW SW detailed
detailed
design
design
integrate integration
integration
test testtest
system hardware
software
04/02/24