You are on page 1of 38

Introduction

to
Embedded Systems

Introduction

Dr. Pedro Mejia

Introduction
What are embedded systems?
What makes them different?
Real time operation
Many sets of constraints on designs
Challenges in embedded computing
system design.
Design methodologies.

Introduction

Dr. Pedro Mejia

Definition
Embedded system: any device that includes a
programmable computer but is not itself a generalpurpose computer.
Computer purchased as part of some other piece of
equipment
Typically dedicated software (may be user- customizable)
Often replaces previously electromechanical components
Often no real keyboard
Often limited display or no general- purpose display device: dont
need all the general-purpose bells and whistles.

Introduction

Dr. Pedro Mejia

What is an embedded system

Introduction

Dr. Pedro Mejia

Examples
Office systems and
mobile equipment

Building systems

Manufacturing and
Process Control

Answering machines
Copiers
Faxes
Laptops and notebooks
Mobile Telephones
PDAs, Personal organisers
Still and video cameras
Telephone systems
Time recording systems
Printer
Microwave

Air conditioning
Backup lighting and
generators
Building management
systems
CTV systems
Fire Control systems
Heating and ventilating
systems
Lifts, elevators, escalators
Lighting systems
Security systems
Security cameras
Sprinkler systems

Automated factories
Bottling plants
Energy control systems
Manufacturing plants
Nuclear power stations
Oil refineries and related
storage facilities
Power grid systems
Power stations
Robots
Switching systems
Water and sewage systems

Introduction

Dr. Pedro Mejia

Examples
Transport

Communications Other equipment

Aeroplanes
Trains
Buses
Marine craft
Jetties
Automobiles
Air Traffic Control
Signalling Systems
Radar Systems
Traffic Lights
Ticketing machines
Speed cameras,
Radar speed
detectors

Telephone systems
Cable systems
Telephone switches
Satellites
Global Positioning
System

Introduction

Automated teller systems


Credit card systems
Medical Imaging equipment
Domestic Central Heating control
VCRs

Dr. Pedro Mejia

Automotive embedded
systems
Todays high-end automobile may
have 100 microprocessors:
4-bit microcontroller checks seat belt;
microcontrollers run dashboard devices;
16/32-bit microprocessor controls
engine.

Introduction

Dr. Pedro Mejia

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.
Introduction

Dr. Pedro Mejia

BMW 850i, contd.


sensor

sensor

brake

brake
ABS

hydraulic
pump

brake

brake

sensor

sensor

Introduction

Dr. Pedro Mejia

Embedded systems rule


the market place
80 Million PCs vs. 3Billion Embedded
CPUs Annually
Embedded market growing; PC market
mostly saturated

Introduction

Dr. Pedro Mejia

Why are embedded systems


different from desktop computers ?

Introduction

Dr. Pedro Mejia

Four General Embedded


Systems Types
General Computing
Applications similar to desktop computing, but in an embedded package
Video games, set- top boxes, wearable computers, automatic tellers

Control Systems
Closed- loop feedback control of real- time system
Vehicle engines, chemical processes, nuclear power, flight control

Signal Processing
Computations involving large data streams
Radar, Sonar, video compression

Communication & Networking


Switching and information transmission
Telephone system, Internet

Introduction

Dr. Pedro Mejia

Characteristics of an
embedded system
Real-Time Operation
Reactive: computations must occur in response to external events
Correctness is partially a function of time
Small Size, Low Weight
Hand- held electronics and Transportation applications -- weight costs
money
Low Power
Battery power for 8+ hours (laptops often last only 2 hours)
Harsh environment
Heat, vibration, shock, power fluctuations, RF interference, lightning,
corrosion
Safety- critical operation
Must function correctly and Must not function in correctly
Extreme cost sensitivity
$. 05 adds up over 1,000, 000 units

Introduction

Dr. Pedro Mejia

Embedding a computer

CPU

embedded
computer
Introduction

output

analog

input

analog

mem

Dr. Pedro Mejia

Why use microprocessors?


Microprocessors simplify the design of families of
products.
Microprocessors are often very efficient: can use
same logic to perform many different functions,
but Microprocessors use much more logic to
implement a function than does custom logic.
Alternatives: field-programmable gate arrays
(FPGAs), ASICs, custom logic, etc.
What about MicroControllers or DSPs.
Custom logic is a clear winner for low power
devices.
Introduction

Dr. Pedro Mejia

An Embedded Control
System Designers View

Introduction

Dr. Pedro Mejia

A Customer View

Introduction

Dr. Pedro Mejia

Design teams
Often designed by a small team of
designers.
Often must meet tight deadlines.
6 month market window is common.
Cant miss back-to-school window for
calculator.

Introduction

Dr. Pedro Mejia

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?
Introduction

Dr. Pedro Mejia

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?
Introduction

Dr. Pedro Mejia

Embedded System Designer Skill Set


Appreciation for multi- disciplinary nature of design
Both hardware & software skills
Understanding of engineering beyond digital logic
Ability to take a project from specification through production
Communication & teamwork skills
Work with other disciplines, manufacturing, marketing
Work with customers to understand the real problem being solved
Make a good presentation; even better -- write trade rag articles
And, by the way, technical skills too
Low level: Microcontrollers, FPGA/ ASIC, assembly language, A/ D, D/ A
High level: Object- oriented Design, C/ C++, Real Time Operating Systems
Meta level: Creative solutions to highly constrained problems
Likely in the future: Unified Modeling Language, embedded networks
Uncertain future: Java, Windows CE

Introduction

Dr. Pedro Mejia

Design methodologies
A procedure for designing a system.
Understanding your methodology helps
you ensure you didnt 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.
Introduction

Dr. Pedro Mejia

Design goals
Performance.
Overall speed, deadlines.

Functionality and user interface.


Manufacturing cost.
Power consumption.
Other requirements (physical size,
etc.)

Introduction

Dr. Pedro Mejia

Levels of abstraction
requirements
specification
architecture
component
design
system
integration
Introduction

Dr. Pedro Mejia

Our requirements form


name
purpose
inputs
outputs
functions
performance
manufacturing cost
power
physical size/weight

Introduction

Dr. Pedro Mejia

Example: GPS moving map


requirements
I-78
Scotch Road

Moving map
obtains position
from GPS,
paints map
from local
database.

lat: 40 13 lon: 32 19

Introduction

Dr. Pedro Mejia

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: $500 street price = approx. $100
cost of goods sold.
Introduction

Dr. Pedro Mejia

GPS moving map needs,


contd.
Physical size/weight: Should fit in
hand.
Power consumption: Should run for 8
hours on four AA batteries.

Introduction

Dr. Pedro Mejia

GPS moving map


requirements form
name
purpose
inputs
outputs
functions
performance
manufacturing cost
power
physical size/weight

Introduction

GPS moving map


consumer-grade
moving map for driving
power button, two
control buttons
back-lit LCD 400 X 600
5-receiver GPS; three
resolutions; displays
current lat/lon
updates screen within
0.25 sec of movement
$100 cost-of-goodssold
100 mW
no more than 2: X 6:,
12 oz.

Dr. Pedro Mejia

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 nonfunctional elements.


May be executable or may be in
mathematical form for proofs.
Introduction

Dr. Pedro Mejia

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.

Introduction

Dr. Pedro Mejia

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.
Introduction

Dr. Pedro Mejia

GPS moving map block


diagram

GPS
receiver

search
engine

database

Introduction

renderer

user
interface

Dr. Pedro Mejia

display

GPS moving map hardware


architecture

display

frame
buffer

CPU
GPS
receiver

memory

Introduction

panel I/O

Dr. Pedro Mejia

GPS moving map software


architecture

position

Introduction

database
search

renderer

user
interface

timer

Dr. Pedro Mejia

pixels

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.

Introduction

Dr. Pedro Mejia

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.

Introduction

Dr. Pedro Mejia

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.
References:
Overheads for Computers as Components, W.Wolf.Morgan
Kaufman.
Embedded Systems in the Real World, Phillip Koopman. Carnegie
Mellon University.

Introduction

Dr. Pedro Mejia

You might also like