Post on 03-Apr-2018
7/28/2019 Embedded Systems Hardware
1/36
Embedded Systems
Hardware and Software IssuesDept of Electronics and Telecommunication Engineering
Jadavpur University, Kolkata 700 032
and
International Institute of Information Technology
Kolkata 700 091
7/28/2019 Embedded Systems Hardware
2/36
2
Introduction
D. Mukhopadhyay
What are embedded systems?
How are embedded systems designed?
(Hardware and Software)
Critical Design challenges
Tools of the trade
Future directions
7/28/2019 Embedded Systems Hardware
3/36
7/28/2019 Embedded Systems Hardware
4/36
4
What is an Embedded System?
Embedded systems are more limited inhardware and/or software functionality than a
personal computer.
An embedded system is designed to perform
a dedicated function. An embedded system is a computer system
with higher quality and reliability
requirements than other types of computer
systems.
7/28/2019 Embedded Systems Hardware
5/36
5
Embedded System?
Computational
but not first-and-foremost a computer
Integral with physical processes
sensors, actuators
Reactive
at the speed of the environment
Heterogeneous
hardware/software, mixed architectures
Networked
shared, adaptive
7/28/2019 Embedded Systems Hardware
6/36
7/28/2019 Embedded Systems Hardware
7/36
7
Embedded Systems and their Markets
Market Embedded Device
Automotive Ignition System, Engine Control, Brake System
Consumer
Electronics
Digital and Analog Televisions, Set-Top Boxes,
Kitchen Appliances, Toys/Games, Telephones/Cell
Phones/Pagers, Cameras, GPS
Industrial
Controls
Robotics and Manufacturing Controls
Medical Infusion Pumps, Dialysis Machines, Prosthetic
Devices, Cardiac MonitorsNetworking Routers, Hubs, Gateways
Office
Automation
Fax Machine, Photocopier, Printers, Monitors,
Scanners
7/28/2019 Embedded Systems Hardware
8/36
8
Design of Embedded Systems
Task partitioning between hardware and
software
Hardware design and integration
Software development
System integration
Test strategies
7/28/2019 Embedded Systems Hardware
9/36
9
Hardware-Software Partitioning
Some tasks could be performed usinghardware or software.
Example:
A system receiving data packets needs tocalculate a Cyclic Redundancy Check (CRC)value. If the packet is OK, an ACK signalshould be sent within a specified time.
CRC could be calculated in S/W or bydedicated H/W.
7/28/2019 Embedded Systems Hardware
10/36
10
Criteria for choice between
H/W and S/W
Hardware adds a per unit cost
Software adds a fixed cost
Hardware provides speed Software provides flexibility
Software solution can reduce cost at
least when production is in highvolume
Hardware solution used when fastresponse is required
7/28/2019 Embedded Systems Hardware
11/36
11
Example of CRC check
Choice depends on how much time we have forsending the ACK signal
If S/W is too slow, we have no choice H/Wmust be used
If S/W can meet the timing spec., we coulduse S/W
S/W solution needs Real Time guarantee
7/28/2019 Embedded Systems Hardware
12/36
12
Hardware Design
Since a micro-controller in anembedded system will run just oneprogram all the time, hardwareresources must be matched to needs of
the application.
Modern technology has made it
possible to put the entire electronicsinclusive of sensors, analog circuits,digital circuits etc. on a single chip.(System On a Chip or SoC).
7/28/2019 Embedded Systems Hardware
13/36
13
Hardware Design Challenges
Compatibility of the entire system Interface design (linear to digital,
asynchronous to synchronous etc.)
Low power design
Modularity and ability to upgrade the system
in the field.
Time to market
7/28/2019 Embedded Systems Hardware
14/36
14
Low Power Design
Especially important in 3 cases1. Battery operated and mobile systemse.g.
a portable MP3 music player
2. Systems with a limited power sourcesuchas a smart public call booth which derives
power from phone lines.
3. High complexity and speed systemswhere heat dissipation is a problem
7/28/2019 Embedded Systems Hardware
15/36
15
Low Power Design Techniques
Power smart blocks which go to a lowpower or off mode when not in use.
Reduced voltage swing on loaded
buses Coding schemes which minimize the
number of transitions on signal lines
Reduced activity (toggling) Reduced capacitances
Superior device engineering
7/28/2019 Embedded Systems Hardware
16/36
16
Software Design
Software must provide the algorithms etc.needed for implementing the applications.
These algorithms often have an impact on
the choice of hardware as well.
For example, whether a DSP processor
should be used or not.
Most embedded system software needs to
be real time software.
7/28/2019 Embedded Systems Hardware
17/36
17
Generic Requirements
Software must be Modular
Each module should have local effects
Should be reusable, adaptable
Self documenting
In embedded systems, hardware and
software design must go hand in hand
7/28/2019 Embedded Systems Hardware
18/36
7/28/2019 Embedded Systems Hardware
19/36
19
Real Time Systems
Real time systems have to guarantee that
they will respond to an external event withina specified amount of time.
Real Time systems dont have to be real
fast. They do have to be reliably on time.
7/28/2019 Embedded Systems Hardware
20/36
20
Type of Real Time Systems
Based on the type of timing guarantee
they provide, real time systems are
classified as
soft real time
or
hard real time.
7/28/2019 Embedded Systems Hardware
21/36
21
Soft Real Time Systems
Soft real time systems provide a time
guarantee, but missing an event is not
catastrophic.
For example, image decoding used duringsatellite TV reception must be completed
within a frame time.
If this guarantee is missed, there will be a
visible glitch.
Annoying but not catastrophic!
7/28/2019 Embedded Systems Hardware
22/36
22
Hard Real Time Systems
Hard real time systems are used when
missing a timing deadline will lead to
catastrophic results.
For example, a missile guidance system
should not miss any events!
7/28/2019 Embedded Systems Hardware
23/36
23
So why use soft real time
systems at all?
Both soft and hard real time systems
provide a real time guarantee. But if we can
afford to miss a few events, this guaranteed
response time can be much shorter.
Soft real time systems would be used in
non-critical applications which need to be
very fast.
7/28/2019 Embedded Systems Hardware
24/36
24
Hard and Soft
Real Time Systems
The time guarantee provided by soft real time
systems is statistical in nature whereas
that provided by hard real time systems is
absolute.
Design of soft real time systems optimizes
average case response whereas hard real
time systems must be designed for worstcase situations.
7/28/2019 Embedded Systems Hardware
25/36
25
Is real time software any different?
Interrupt handling has to be specially
careful.
Since interrupt handling and task
scheduling is done at the operating system
level, special real time compliant operating
systems should be used.
7/28/2019 Embedded Systems Hardware
26/36
26
Software Components
Device drivers
Schedulers
Real time routines
Non real time routines
Inter process communications
Pipes
Semaphores etc
Watchdog timers
7/28/2019 Embedded Systems Hardware
27/36
27
Inter-Process Communications
Signals
Pipes and FIFOs
Message Queues Semaphores
Shared Memory
7/28/2019 Embedded Systems Hardware
28/36
28
Future Directions Many more embedded systems will be full
systems on a single chip. This implies that
the software and hardware designs will
merge.
As systems on chip become more complex,software distributed over multiple
processors and running over different
memory spaces will become common
7/28/2019 Embedded Systems Hardware
29/36
29
Future Directions. Embedded systems will be developed in
unusual applications. For example: stress
detectors built into walls, powered and
accessed by RF beams.
Existing applications will become far moresophisticated with standardized user
interfaces such as web interfaces with
XML.
7/28/2019 Embedded Systems Hardware
30/36
30
Future Directions for
Developers
More and more multi-disciplinary expertise
will be required. For example biology-
chemistry-electronics and VLSI for bio-
sensors.
Fields of micro-processors, VLSI,
communications and information
technology will merge for developing
embedded systems.
7/28/2019 Embedded Systems Hardware
31/36
31
Discussion
What are the most challenging aspects of
these applications (and how does a
company make money) ?
Interaction mechanisms: sensors,
actuators, wireless networks Reliability and survivability
Infrastructure
Services Legislation
* * * * *
7/28/2019 Embedded Systems Hardware
32/36
32
Wireless Embedded System Networks
7/28/2019 Embedded Systems Hardware
33/36
33
Embedded System: A Connected Effort
Key Challenges
Control environmental parameters:
Temp, Humidity etc.Minimize power consumption
Cheap and small
Limited operation range of network:
Maximum 50 to 100 m
Low data rate per node: 1 10 bits/node(average)
Low mobility (at least 90% of nodes stationary)
7/28/2019 Embedded Systems Hardware
34/36
34
We Need Foundational Research
The science of computation has systematically
abstracted away the physical world. The scienceof physical systems has systematically ignored
computational limitations.
Embedded software systems, however, engage
the physical world in a computational manner.
It is time to construct a Hybrid Systems Science that
is simultaneously computational and physical.
Time, concurrency, robustness, continuums, and
resource management must be remarried to
computation.
7/28/2019 Embedded Systems Hardware
35/36
35
In Hardware
Low Power
Higher speed
Smaller size
Increased functionality
Increased productivity Reproducibility (especially in sensors and
actuators)
Networking and networked embedded systems
7/28/2019 Embedded Systems Hardware
36/36
36
But More So In Software
To create a modern computational systems science
and systems design practice with
Concurrency
Composability
Time
Hierarchy
Heterogeneity
Resource constraints
Portability Verifiability
Understandability