Intro to Embedded
-
Upload
ayman-a-al-khoder -
Category
Documents
-
view
81 -
download
0
Transcript of Intro to Embedded
![Page 1: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/1.jpg)
Embedded Computer Systems
Chapter1:
Embedded Computing
Dr. A. AL-SAIF
Systems Engineering Department
![Page 2: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/2.jpg)
2© 2011 Dr. AL-Saif (CISE 414)
Introduction
Why do we embed microprocessors in
systems?
What are embedded computing systems?
Challenges in embedded computing system
design.
Design methodologies.
System Specification
![Page 3: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/3.jpg)
3
Definition
Embedded computing system: any device
that includes a programmable computer but
is not itself a general-purpose computer.
Take advantage of application characteristics
to optimize the design:
don’t need all the general-purpose bells and
whistles.
© 2011 Dr. AL-Saif (CISE 414)
![Page 4: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/4.jpg)
4
Embedding a computer
CPU
mem
input
output analog
analog
embedded
computer
© 2011 Dr. AL-Saif (CISE 414)
![Page 5: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/5.jpg)
5
Examples
Cell phone.
Printer.
Automobile: engine, brakes, dash, etc.
Airplane: engine, flight controls, nav/comm.
Digital television.
Household appliances.
© 2011 Dr. AL-Saif (CISE 414)
![Page 6: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/6.jpg)
6
Early history
Late 1940’s: MIT Whirlwind computer was
designed for real-time operations.
Originally designed to control an aircraft simulator.
First microprocessor was Intel 4004 in early
1970’s.
HP-35 calculator used several chips to
implement a microprocessor in 1972.
© 2011 Dr. AL-Saif (CISE 414)
![Page 7: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/7.jpg)
7
Early history, cont’d.
Automobiles used microprocessor-based
engine controllers starting in 1970’s.
Control fuel/air mixture, engine timing, etc.
Multiple modes of operation: warm-up, cruise, hill
climbing, etc.
Provides lower emissions, better fuel efficiency.
© 2011 Dr. AL-Saif (CISE 414)
![Page 8: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/8.jpg)
8
Microprocessor varieties
Microcontroller: includes I/O devices, on-
board memory.
Digital signal processor (DSP):
microprocessor optimized for digital signal
processing.
Typical embedded word sizes: 8-bit, 16-bit,
32-bit.
© 2011 Dr. AL-Saif (CISE 414)
![Page 9: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/9.jpg)
9
Application examples
Simple control: front panel of microwave
oven, etc.
Canon EOS 3 has three microprocessors.
32-bit RISC CPU runs autofocus and eye control
systems.
Digital TV: programmable CPUs + hardwired
logic for video/audio decode, menus, etc.
© 2011 Dr. AL-Saif (CISE 414)
![Page 10: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/10.jpg)
10
Application areas (1)
Aerospace
Navigation systems, automatic landing systems,
flight attitude controls, engine controls, space
exploration (e.g., the Mars Pathfinder).
© 2011 Dr. AL-Saif (CISE 414)
![Page 11: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/11.jpg)
11
Application areas (2)
Automotive
Fuel injection control, passenger environmental
controls, anti-lock braking, air bag controls, GPS
mapping.
© 2011 Dr. AL-Saif (CISE 414)
![Page 12: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/12.jpg)
12
Application areas (3)
Children's Toys
Nintendo's "Game Boy", Mattel's "My Interactive
Pooh", Tiger Electronics’ "Furby".
© 2011 Dr. AL-Saif (CISE 414)
![Page 13: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/13.jpg)
13
Application areas (4)
Motorcycles
Trains
© 2011 Dr. AL-Saif (CISE 414)
![Page 14: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/14.jpg)
14
Application areas (5)
Telecommunication
Satellites; network routers, switches, hubs.
© 2011 Dr. AL-Saif (CISE 414)
![Page 15: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/15.jpg)
15
Application areas (6)
Home
Dishwashers, microwave ovens, VCRs,
televisions, stereos, fire/security alarm systems,
lawn sprinkler controls, thermostats, cameras,
clock radios, answering machines.
© 2011 Dr. AL-Saif (CISE 414)
![Page 16: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/16.jpg)
16
Application areas (7)
Office Automation
FAX machines, copiers, telephones,
and cash registers.
© 2011 Dr. AL-Saif (CISE 414)
![Page 17: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/17.jpg)
17
Application areas (8)
Consumer
electronics
© 2011 Dr. AL-Saif (CISE 414)
![Page 18: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/18.jpg)
18
Application areas (9)
Personal
Personal Digital Assistants (PDAs), pagers, cell
phones, wristwatches, videogames, portable MP3
players, GPS.
© 2011 Dr. AL-Saif (CISE 414)
![Page 19: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/19.jpg)
19
Application areas (10)
Medical
Imaging systems (e.g., XRAY,
MRI, and ultrasound),
patient monitors, and heart pacers.
© 2011 Dr. AL-Saif (CISE 414)
![Page 20: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/20.jpg)
20
Application areas (11)
• Smart buildings
• Fabrication equipment
© 2011 Dr. AL-Saif (CISE 414)
![Page 21: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/21.jpg)
21
Application areas (12)
• Robotics
„Pipe-climber“ Robot
„Johnnie“
(Courtesy
and ©:
H.Ulbrich, F.
Pfeiffer, TU
München)
© 2011 Dr. AL-Saif (CISE 414)
![Page 22: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/22.jpg)
22
Application areas (13)
Industrial
Elevator controls, surveillance systems
Robotics
Robot „Johnnie“
(Courtesy and ©:
H.Ulbrich, F. Pfeiffer,
TU München)
© 2011 Dr. AL-Saif (CISE 414)
![Page 23: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/23.jpg)
23
Pedometer Obvious computer work:
Count steps
Keep time
Averages
etc.
Hard computer work: Actually identify when a step is
taken
Sensor feels motion of device, not of user feet
© 2011 Dr. AL-Saif (CISE 414)
![Page 24: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/24.jpg)
24
Mobile phones Multiprocessor
8-bit/32-bit for UI
DSP for signals
32-bit in IR port
32-bit in Bluetooth
8-100 MB of memory
All custom chips
Power consumption &
battery life depends on
software
© 2011 Dr. AL-Saif (CISE 414)
![Page 25: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/25.jpg)
25
Telecom Switch
Rack-based
Control cards
IO cards
DSP cards
...
Optical & copper
connections
Digital & analog signals
© 2011 Dr. AL-Saif (CISE 414)
![Page 26: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/26.jpg)
26
Sewing Machine
User interface
Embroidery patterns
Touch-screen control
”Smart”
Sets pressure of foot depending
on task
Raise foot when stopped
New functions added by
upgrading the software
© 2011 Dr. AL-Saif (CISE 414)
![Page 27: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/27.jpg)
27
Forestry Machines
Networked computer
system
Controlling arms & tools
Navigating the forest
Recording the trees
harvested
Crucial to efficient work
Processors
16-bit processors in a
network
© 2011 Dr. AL-Saif (CISE 414)
![Page 28: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/28.jpg)
28
Operator Panel
Embedded PC
Graphical display
Touch panel
Joystick
Buttons
Keyboard
But tough enough to be
“out in the woods”
© 2011 Dr. AL-Saif (CISE 414)
![Page 29: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/29.jpg)
29
Extremely Large Functions requiring
computers: Radar
Weapons
Damage control
Navigation
basically everything
Computers: Large servers
1000s of processors
© 2011 Dr. AL-Saif (CISE 414)
![Page 30: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/30.jpg)
30
Inside your PC Custom processors
Graphics, sound
32-bit processors IR, Bluetooth
Network, WLAN
Harddisk
RAID controllers
8-bit processors USB
Keyboard, mouse
© 2011 Dr. AL-Saif (CISE 414)
![Page 31: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/31.jpg)
31
Cars
Functions by embedded processing:
ABS: Anti-lock braking systems
ESP: Electronic stability control
Airbags
Efficient automatic gearboxes
Theft prevention with smart keys
Blind-angle alert systems
... etc ...
© 2011 Dr. AL-Saif (CISE 414)
![Page 32: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/32.jpg)
32
Cars
Large diversity in processor types:
8-bit – door locks, lights, etc.
16-bit – most functions
32-bit – engine control, airbags
Form follows function
Processing where the action is
Sensors and actuators distributed all over the
vehicle
© 2011 Dr. AL-Saif (CISE 414)
![Page 33: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/33.jpg)
33© 2011 Dr. AL-Saif (CISE 414)
![Page 34: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/34.jpg)
34
Automotive embedded systems
Today’s high-end automobile may have 100
microprocessors:
4-bit microcontroller checks seat belt;
microcontrollers run dashboard devices;
16/32-bit microprocessor controls engine.
© 2011 Dr. AL-Saif (CISE 414)
![Page 35: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/35.jpg)
35
BMW 850i brake and stability control
system
Anti-lock brake system (ABS): pumps brakes
to reduce skidding.
Automatic stability control (ASC+T): controls
engine to improve stability.
ABS and ASC+T communicate.
ABS was introduced first---needed to interface to
existing ABS module.
© 2011 Dr. AL-Saif (CISE 414)
![Page 36: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/36.jpg)
36
BMW 850i, cont’d.
brake
sensor
brake
sensor
brake
sensor
brake
sensor
ABShydraulic
pump
© 2011 Dr. AL-Saif (CISE 414)
![Page 37: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/37.jpg)
37
Characteristics of embedded systems
Sophisticated functionality.
Real-time operation.
Low manufacturing cost.
Low power.
Designed to tight deadlines by small teams.
© 2011 Dr. AL-Saif (CISE 414)
![Page 38: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/38.jpg)
38
Functional complexity
Often have to run sophisticated algorithms or
multiple algorithms.
Cell phone, laser printer.
Often provide sophisticated user interfaces.
© 2011 Dr. AL-Saif (CISE 414)
![Page 39: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/39.jpg)
39
Real-time operation
Must finish operations by deadlines.
Hard real time: missing deadline causes failure.
Soft real time: missing deadline results in
degraded performance.
Many systems are multi-rate: must handle
operations at widely varying rates.
© 2011 Dr. AL-Saif (CISE 414)
![Page 40: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/40.jpg)
40
Non-functional requirements
Many embedded systems are mass-market
items that must have low manufacturing
costs.
Limited memory, microprocessor power, etc.
Power consumption is critical in battery-
powered devices.
Excessive power consumption increases system
cost even in wall-powered devices.
© 2011 Dr. AL-Saif (CISE 414)
![Page 41: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/41.jpg)
41
Design teams
Often designed by a small team of designers.
Often must meet tight deadlines.
6 month market window is common.
Can’t miss back-to-school window for calculator.
© 2011 Dr. AL-Saif (CISE 414)
![Page 42: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/42.jpg)
42
Why use microprocessors?
Alternatives: field-programmable gate arrays
(FPGAs), custom logic, etc.
Microprocessors are often very efficient: can
use same logic to perform many different
functions.
Microprocessors simplify the design of
families of products.
© 2011 Dr. AL-Saif (CISE 414)
![Page 43: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/43.jpg)
43
The performance paradox
Microprocessors use much more logic to
implement a function than does custom logic.
But microprocessors are often at least as
fast:
heavily pipelined;
large design teams;
aggressive VLSI technology.
© 2011 Dr. AL-Saif (CISE 414)
![Page 44: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/44.jpg)
44
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.
© 2011 Dr. AL-Saif (CISE 414)
![Page 45: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/45.jpg)
45
Platforms
Embedded computing platform: hardware
architecture + associated software.
Many platforms are multiprocessors.
Examples:
Single-chip multiprocessors for cell phone
baseband.
Automotive network + processors.
© 2011 Dr. AL-Saif (CISE 414)
![Page 46: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/46.jpg)
46
The physics of software
Computing is a physical act.
Software doesn’t do anything without hardware.
Executing software consumes energy,
requires time.
To understand the dynamics of software
(time, energy), we need to characterize the
platform on which the software runs.
© 2011 Dr. AL-Saif (CISE 414)
![Page 47: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/47.jpg)
47
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.
© 2011 Dr. AL-Saif (CISE 414)
![Page 48: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/48.jpg)
48
Characterizing performance
We need to analyze the system at several
levels of abstraction to understand
performance:
CPU.
Platform.
Program.
Task.
Multiprocessor.
© 2011 Dr. AL-Saif (CISE 414)
![Page 49: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/49.jpg)
49
Challenges in embedded system design
How much hardware do we need?
How big is the CPU? Memory?
How do we meet our deadlines?
Faster hardware or cleverer software?
How do we minimize power?
Turn off unnecessary logic? Reduce memory
accesses?
© 2011 Dr. AL-Saif (CISE 414)
![Page 50: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/50.jpg)
50
Challenges, etc.
Does it really work?
Is the specification correct?
Does the implementation meet the spec?
How do we test for real-time characteristics?
How do we test on real data?
How do we work on the system?
Observability, controllability?
What is our development platform?
© 2011 Dr. AL-Saif (CISE 414)
![Page 51: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/51.jpg)
51
Design methodologies
A procedure for designing a system.
Understanding your methodology helps you
ensure you didn’t skip anything.
Compilers, software engineering tools,
computer-aided design (CAD) tools, etc., can
be used to:
help automate methodology steps;
keep track of the methodology itself.
© 2011 Dr. AL-Saif (CISE 414)
![Page 52: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/52.jpg)
52
Design goals
Performance.
Overall speed, deadlines.
Functionality and user interface.
Manufacturing cost.
Power consumption.
Other requirements (physical size, etc.)
© 2011 Dr. AL-Saif (CISE 414)
![Page 53: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/53.jpg)
53
Levels of abstraction
requirements
specification
architecture
component
design
system
integration
© 2011 Dr. AL-Saif (CISE 414)
![Page 54: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/54.jpg)
54
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.
© 2011 Dr. AL-Saif (CISE 414)
![Page 55: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/55.jpg)
55
Stepwise refinement
At each level of abstraction, we must:
analyze the design to determine characteristics of
the current state of the design;
refine the design to add detail.
© 2011 Dr. AL-Saif (CISE 414)
![Page 56: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/56.jpg)
56
Requirements
Plain language description of what the user
wants and expects to get.
May be developed in several ways:
talking directly to customers;
talking to marketing representatives;
providing prototypes to users for comment.
© 2011 Dr. AL-Saif (CISE 414)
![Page 57: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/57.jpg)
57
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.
© 2011 Dr. AL-Saif (CISE 414)
![Page 58: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/58.jpg)
58
Our requirements form
name
purpose
inputs
outputs
functions
performance
manufacturing cost
power
physical size/weight
© 2011 Dr. AL-Saif (CISE 414)
![Page 59: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/59.jpg)
59
Example: GPS moving map
requirements
Moving map
obtains position
from GPS, paints
map from local
database.
lat: 40 13 lon: 32 19
I-78
Sco
tch R
oad
© 2011 Dr. AL-Saif (CISE 414)
![Page 60: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/60.jpg)
60
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.
© 2011 Dr. AL-Saif (CISE 414)
![Page 61: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/61.jpg)
61
GPS moving map needs, cont’d.
Physical size/weight: Should fit in hand.
Power consumption: Should run for 8 hours
on four AA batteries.
© 2011 Dr. AL-Saif (CISE 414)
![Page 62: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/62.jpg)
62
GPS moving map requirements form
name GPS moving map
purpose consumer-grademoving map for driving
inputs power button, twocontrol buttons
outputs back-lit LCD 400 X 600
functions 5-receiver GPS; threeresolutions; displayscurrent lat/lon
performance updates screen within0.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.
© 2011 Dr. AL-Saif (CISE 414)
![Page 63: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/63.jpg)
63
Specification
A more precise description of the system:
should not imply a particular architecture;
provides input to the architecture design process.
May include functional and non-functional
elements.
May be executable or may be in
mathematical form for proofs.
© 2011 Dr. AL-Saif (CISE 414)
![Page 64: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/64.jpg)
64
GPS 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.
© 2011 Dr. AL-Saif (CISE 414)
![Page 65: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/65.jpg)
65
Architecture design
What major components go satisfying the
specification?
Hardware components:
CPUs, peripherals, etc.
Software components:
major programs and their operations.
Must take into account functional and non-
functional specifications.
© 2011 Dr. AL-Saif (CISE 414)
![Page 66: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/66.jpg)
66
GPS moving map block diagram
GPS
receiver
search
enginerenderer
user
interfacedatabase
display
© 2011 Dr. AL-Saif (CISE 414)
![Page 67: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/67.jpg)
67
GPS moving map hardware
architecture
GPS
receiver
CPU
panel I/O
display frame
buffer
memory
© 2011 Dr. AL-Saif (CISE 414)
![Page 68: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/68.jpg)
68
GPS moving map software
architecture
position database
searchrenderer
timeruser
interface
pixels
© 2011 Dr. AL-Saif (CISE 414)
![Page 69: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/69.jpg)
69
Designing hardware and software
components
Must spend time architecting the system
before you start coding.
Some components are ready-made, some
can be modified from existing designs, others
must be designed from scratch.
© 2011 Dr. AL-Saif (CISE 414)
![Page 70: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/70.jpg)
70
System integration
Put together the components.
Many bugs appear only at this stage.
Have a plan for integrating components to
uncover bugs quickly, test as much
functionality as early as possible.
© 2011 Dr. AL-Saif (CISE 414)
![Page 71: Intro to Embedded](https://reader036.fdocuments.in/reader036/viewer/2022062404/5537dd8b550346bf308b464d/html5/thumbnails/71.jpg)
71
Summary
Embedded computers are all around us.
Many systems have complex embedded hardware
and software.
Embedded systems pose many design
challenges: design time, deadlines, power,
etc.
Design methodologies help us manage the
design process.
© 2011 Dr. AL-Saif (CISE 414)