You are on page 1of 38

Introduction to Embedded Systems

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems Dr. Pedro Mejia Alvarez

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 to Embedded Systems

Dr. Pedro Mejia Alvarez

What is an embedded system

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

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

Building systems
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
Dr. Pedro Mejia Alvarez

Manufacturing and Process Control


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 to Embedded Systems

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

Communications Other equipment


Telephone systems Cable systems Telephone switches Satellites Global Positioning System Automated teller systems Credit card systems Medical Imaging equipment Domestic Central Heating control VCRs

Dr. Pedro Mejia Alvarez

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 to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems

Dr. Pedro Mejia Alvarez

BMW 850i, contd.


sensor
brake ABS hydraulic pump

sensor
brake

brake
sensor
Introduction to Embedded Systems Dr. Pedro Mejia Alvarez

brake
sensor

Embedded systems rule the market place


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

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

Why are embedded systems

different from desktop computers ?

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems Dr. Pedro Mejia Alvarez

Embedding a computer
output analog

CPU

input

analog

embedded computer
Introduction to Embedded Systems

mem

Dr. Pedro Mejia Alvarez

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 to Embedded Systems Dr. Pedro Mejia Alvarez

An Embedded Control System Designers View

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

A Customer View

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems Dr. Pedro Mejia Alvarez

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 to Embedded Systems Dr. Pedro Mejia Alvarez

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 to Embedded Systems Dr. Pedro Mejia Alvarez

Design goals
Performance.
Overall speed, deadlines.

Functionality and user interface. Manufacturing cost. Power consumption. Other requirements (physical size, etc.)
Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

Levels of abstraction
requirements
specification architecture component design system integration
Introduction to Embedded Systems Dr. Pedro Mejia Alvarez

Our requirements form


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

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

Example: GPS moving map requirements


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

I-78 Scotch Road


lat: 40 13 lon: 32 19

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

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 Introduction to cost of goods sold. Embedded Systems Dr. Pedro Mejia Alvarez

GPS moving map needs, contd.


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

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

GPS moving map requirements form


name purpose inputs outputs functions performance manufacturing cost power physical size/weight 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.

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

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.
Introduction to Embedded Systems Dr. Pedro Mejia Alvarez

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 to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems Dr. Pedro Mejia Alvarez

GPS moving map block diagram

GPS receiver

search engine

renderer

display

database

user interface

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

GPS moving map hardware architecture

display

frame buffer

CPU GPS receiver

memory

panel I/O

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

GPS moving map software architecture

position

database search

renderer

pixels

user interface

timer

Introduction to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems

Dr. Pedro Mejia Alvarez

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 to Embedded Systems

Dr. Pedro Mejia Alvarez

You might also like