Introduction to
Real-time and
Embedded
Systems
Course objectives
To enable students know the basics of planning and designing embedded
systems
Interfacing input and output devices to microcontrollers
Using simulation tools like proteus to design circuits
Wireless Sensor Network Simulation with Cooja
Embedded operating systems and Technologies
Using C programming to program embedded applications
Pre-requisites
Computer architecture
C programming or even assembly (Will use AVR Studio)
Simple electronics i.e. schematics drawing(will use Proteus )
Digital logic
Outline
Embedded systems overview
What are they?
Design challenge – optimizing design metrics
Technologies
Processor technologies
IC technologies
Design technologies
4
Real-time embedded system
Systems in which the correctness of
the system depends not only on the
logical result of computation, but
also on the time at which the results
are produced
5
Definition Cont’d
"embedded system", it constantly evolves with
advances in technology and dramatically decreases
in the cost of implementing various hardware and
software components.
In recent years, the field has outgrown many of its
traditional descriptions
Embedded systems
Embedded systems are more limited in hardware and/or software
functionality than a personal computer (PC).
This holds true for a significant subset of the embedded systems family
of computer systems.
this definition is only partially true today as boards and software
typically found in PCs of past and present have been repackaged into
more complex embedded system designs.
Embedded systems
An embedded system is designed to perform a dedicated
function
Most embedded devices are primarily designed for one
specific function.
devices such as personal data assistant (PDA)/cell
phone hybrids, which are embedded systems designed
to be able to do a variety of primary functions.
digital TVs include interactive applications that perform
a wide variety of general functions unrelated to the
"TV" function but just as important, such as e-mail, web
browsing, and games.
Embedded systems
An embedded system is a computer system with higher quality
and reliability requirements than other types of computer
systems
Some families of embedded devices have a very high
threshold of quality and reliability requirements.
a car's engine controller crashes while driving on a busy
freeway or a critical medical device malfunctions during
surgery, very serious problems result.
embedded devices, such as TVs, games, and cell phones, in
which a malfunction is an inconvenience but not usually a
life-threatening situation.
Examples of embedded systems
the wide spectrum of embedded system devices is that there is no
single definition reflecting them all
Automotive: Ignition System, Engine Control, Brake System
Industrial Control: Robotics and Control Systems
Networking: Routers, Hubs
Office Automation: Fax Machine, Printers, Scanners
Essential Components
Microprocessor / DSP
Sensors
Converters (A-D and D-A)
Actuators (mechanical device that converts energy into motion)
Memory (On-chip and Off chip)
Communication path with the interacting environment
11
Embedded systems overview
Embedded computing systems
Computing systems embedded within electronic
devices
Computers are in
Hard to define. Nearly any computing system other here...
than a desktop computer and here...
Billions of units produced yearly, versus millions of
desktop units and even here...
Perhaps 50 per household and per automobile
Lots more of these,
though they cost a lot
less each.
12
A “short list” of embedded systems
Anti-lock brakes Modems
Auto-focus cameras MPEG decoders
Automatic teller machines Network cards
Automatic toll systems Network switches/routers
On-board navigation
Automatic transmission
Pagers
Avionic systems Photocopiers
Battery chargers Point-of-sale systems
Camcorders Portable video games
Cell phones Printers
Cell-phone base stations Satellite phones
Cordless phones Scanners
Cruise control Smart ovens/dishwashers
Curbside check-in systems Speech recognizers
Digital cameras Stereo systems
Teleconferencing systems
Disk drives
Televisions
Electronic card readers Temperature controllers
Electronic instruments Theft tracking systems
Electronic toys/games TV set-top boxes
Factory control VCR’s, DVD players
Fax machines Video game consoles
Fingerprint identifiers Video phones
Home security systems Washers and dryers
Life-support systems
Medical testing systems
And the list goes on and on
13
Car example
Mission: Reaching the destination safely.
Controlled System: Car.
Operating environment: Road conditions.
Controlling System
- Human driver: Sensors - Eyes and Ears of the driver.
- Computer: Sensors - Cameras, Infrared receiver, and
Laser telemeter.
Controls: Accelerator, Steering wheel, Break-pedal.
Actuators: Wheels, Engines, and Brakes.
14
Car example Cont’d
Critical tasks: Steering and breaking.
Non-critical tasks: Turning on radio.
Cost of fulfilling the mission → Efficient
solution.
Reliability of the driver → Fault-tolerance
needs to be considered.
15
A typical real-time embedded
system
16
Embedded System Structure
(Generic)
Processor & D- Actuator
Sensor A-
ASICs A
D
Memory
17
General Characteristics of
Embedded Systems
Perform a single task
Usually not general purpose
Increasingly high performance and real
time constrained
Power, cost and reliability are important
considerations
HW-SW systems
Software is used for more features and
flexibility
Hardware (processors, ASICs, memory
etc. are used for performance and
security
18
Classification of Embedded
Systems
Distributed and Non distributed
Reactive and Transformational
Control dominated and Data dominated
19
Reactive Real-time Systems
Reactive Real-Time Systems
“React” to external environment
Maintain permanent interaction
Ideally never terminate
timing constraints (real-time)
Distributed Systems
Consist of components that may necessarily be physically
distributed.
Consist of communicating processes on multiple processors
and/or dedicated hardware connected by communication
links.
Motivation:
economical
4 8-bit micro-controller may be cheaper than a 32-bit processor
multiple processors to handle multiple time-critical tasks
physically distributed
devices under control may be physically distributed.
Control dominated vs Data
dominated
For control dominated systems, monitors control inputs,
sets control outputs. Reactive systems with event driven
behavior eg car brake controller
supports process scheduling and synchronization
Preemption (interrupt),
Context switch
Short latency times
For data dominated systems, transforms input data
streams into output streams and mostly has periodic
behavior. require efficient processing while computing
some mathematical function of the input streams .
eg signal processing an control engineering
Design Metrics
Unit cost – the $ cost for each unit excluding
development cost
cost: $ cost for design and development
Size: The physical space reqd. – determined by
bytes of sw, number of gates and transistors in hw
Performance: execution time or throughput of the
system
Power: lifetime of battery, cooling provisions
Flexibility: ability to change functionality without
heavy cost
Reliability
23
Design Metrics (contd.)
Time to market = Time to prototype +
Time to refine + Time to produce in bulk
Correctness: Test and Validation
Safety:
Often these metrics are contradictory –
hence calls for optimization
Processor choice, partitioning decisions,
compilation knowledge
Requires expertise in hw and sw both
24
MICROCONTROLLERS AND
EMBEDDED PROCESSORS
Company Website
Intel [Link]/design/mcs51 (8051)
Atmel [Link] (AVR)
Philips [Link]
m
Dallas Semi/Maxim [Link]
microchip [Link] (PIC)
Details + others:
[Link]
ocontrollers
25
references
Microprocessor microcontroller and embedded systems
AVR Microcontrollers and Embedded systems