You are on page 1of 90

Embedded Electronic Systems

Davide Brunelli DISI University of Trento AA 2010-2011


P.Marwedel - 1-

Graphics: Alexandra Nolte, Gesine Marwedel, 2003

Motivation for Course (1)


According to forecasts characterized by terms such as Disappearing computer, Ubiquitous computing,

Pervasive computing, Ambient intelligence, Post-PC era, Cyber-physical systems. Basic technologies: Embedded Systems Communication technologies
P.Marwedel - 2-

Universitt Dortmund

Motivation for Course (2)


Information technology (IT) is on the verge of another revolution. Driven by the increasing capabilities and ever declining costs of computing and communications devices, IT is being embedded into a growing range of physical devices linked together through networks and will become ever more pervasive as the component technologies become smaller, faster, and cheaper... These networked systems of embedded computers ... have the potential to change radically the way people interact with their environment by linking together a range of devices and sensors that will allow information to be collected, shared, and processed in unprecedented ways. ... The use of [these embedded computers]

throughout society could well dwarf previous milestones in the information revolution.
National Research Council Report (US) Embedded Everywhere
P.Marwedel Source. Ed Lee, UC Berkeley, ARTEMIS Embedded Systems Conference, Graz, 5/2006] - 3-

Universitt Dortmund

Growing importance of embedded systems (1)


Spending on GPS units exceeded $100 mln during Thanksgiving week, up 237% from 2006 More people bought GPS units than bought PCs, NPD found. [www.itfacts.biz, Dec. 6th, 2007]

, the market for remote home health monitoring is expected to generate $225 mln revenue in 2011, up from less than $70 mln in 2006, according to Parks Associates. . [www.itfacts.biz, Sep. 4th, 2007]
According to IDC the identity and access management (IAM) market in Australia and New Zealand (ANZ) is expected to increase at a compound annual growth rate (CAGR) of 13.1% to reach $189.3 mln by 2012 [www.itfacts.biz, July 26th, 2008]. Accessing the Internet via a mobile device up by 82% in the US, by 49% in Europe, from May 2007 to May 2008 [www.itfacts.biz, July 29th, 2008]
P.Marwedel - 4-

Universitt Dortmund

Growing importance of embedded systems (2)


.. but embedded chips form the backbone of the electronics driven world in which we live ... they are part of almost everything that runs on electricity [Mary Ryan, EEDesign, 1995] The future is embedded, Embedded is the future! Foundation for the post PC era ES hardly discussed in other CS courses ES important for Technical University ES important for Europe Scope: sets context for specialized courses
P.Marwedel

Importance of education

1.3 importance

- 5-

Universitt Dortmund

Copyright 2003 Mani Srivastava

Where are the CPUs?

Estimated 98% of 8 Billion CPUs produced in 2000 used for embedded apps

Where Has CS Focused? Interactive Computers 200M Servers, per Year etc.

Where Are the Processors?


Direct 2% Robots Vehicles 6% 12%

8.5B Parts per Year

In Vehicles

In Robots Look for the CPUsthe Opportunities Will Follow!


- 6Source: DARPA/Intel (Tennenhouse)

Embedded

Universitt Dortmund

Copyright 2003 Mani Srivastava

History of Computing
Technology discontinuities drive new computing paradigms and applications

1960 1970 1980 1990 1995 1998 2000

Mainframe Mini Workstation PC Routers Cell phones, PDAs Networked Embedded Systems?

IBM DEC Sun, HP Intel, Dell Cisco Nokia, Palm ???

Increasing # of computers / person Increasing connectivity


- 7-

Universitt Dortmund

Embedded systems and ubiquitous computing


Ubiquitous computing: Information anytime, anywhere. Embedded systems provide fundamental technology.
Communication Technology
Optical networking Network management Distributed applications Service provision UMTS, DECT, Hiperlan, ATM Quality of service

Real-time Dependability

Embedded Systems
Robots Control systems Feature extraction and recognition Sensors/actors A/D-converters

Pervasive/Ubiquitous computing Distributed systems Embedded web systems


P.Marwedel
European Commission -

8-

Universitt Dortmund

Welcome to EES
Logistic

- 9-

Universitt Dortmund

Structure of this course

Architectures

Design Tools

Infrastructure Design flows

Algorithms

Low-cost Low-power

ctrl MSP430

proc. ARM-Cortex

Energy Efficient Multimedia


- 10 -

Universitt Dortmund

Course Program (1)


MICROCONTROLLER-BASED SYSTEMS - Levels of abstraction in modern microprocessors - Microprocessor-based system architecture - CPU microarchitecture - I/O devices and techniques - Parallel/serial interfaces - Asynchronous and synchronous communication - Timers - PWM and watchdog - CAN bus and AMBA bus

MICROPROCESSOR-BASED SYSTEMS - Architecture - Pipelining SENSORS - Definition of sensor; classification criteria - Active and passive sensors
- 11 -

Universitt Dortmund

Course Program (2)


INFORMATION MANAGEMENT SYSTEMS (IMS) Functional block diagram of a communication system; i/o relationship IMS evolution wireless sensor networks: organization and characteristics node architecture Functional units of a IMS: sensor: definition, classification criteria, examples conditioning: definition, examples information extraction: definition, examples analog and digital signal processing: basic components Analog section: characteristics and performance A/D section: performed functions - basic components - sampling-and-hold amplifier - quantization Digital section: - characteristics and performance - definition of on-line and off-line processing - definition of real-time processing (both sequential and block)
- 12 -

Universitt Dortmund

Course Logistics: Instructor Info


Email: davide.brunelli@disi.unitn.it Phone: +39 0461 28 5221

Office hours: by appointment Im very responsive by email Please put [EES course] in mail subject line

- 13 -

Universitt Dortmund

Exam
1-hour written examination. There will be two questions: a- general question b- practical question
(e.g. MCU configuration, experience in lab, )

each contributing up to 15 points to the total score.


You can consult your notes and datasheet

The exam is passed if the evaluation of the written test is at least 18/30.
Final mark can be integrated with a short oral test The oral test will contribute to the total score with up to a maximum of 3 points,
- 14 -

Universitt Dortmund

Alternative Exam (strongly encouraged)

Implementation Project work


Groups of 1-2 students

A set of possible project proposals will be available in the last part of the course.
If you have proposal, come and discuss possible project ideas with me! Project work completion is not mandatory. The project will be evaluated mainly for the diligence and the effort of the students Up to 15 minute power point interactive presentation (slide in English) like a conference talk with a demo Up to 12 page report in the style of a technical conference paper (Italian or English)
(e.g. IEEE style www.ieee.org/web/publications/pubservices/confpub/AuthorTools/conferenceTemplates.html )

- 15 -

Universitt Dortmund

Tools for Labs & Projects

MSP-EXP430FG4618
Experimenters Board Integrated 12-bit ADC & DAC, OpAmps, DMA, Multiplier, LCD Controller Board: mic, buzzer, LCD, touch-pad, buttons, proto space, RS232, JTAG, 3.5mm audio jack Chipcon expansion: CCxxx0EMK EVM inteface Interfaces: SPI, UART, I2C, IrDA
- 16 -

Universitt Dortmund

Tools for Labs & Projects

eZ430-RF2500
CC2500 Radio

Kit includes:
2 x eZ430-RF2500T target boards 1 x eZ430-RF USB emulator 1 x AAA battery pack IAR Kickstart Development Tool Wireless Sensor Monitor Demo SimpliciTI preloaded Documentation and source code

MSP430F2274 MCU

- 17 -

Universitt Dortmund

Tools for Labs & Projects

Jennic
WSN, Body Sensors SDK

32 bit RISc architecture (ARC)


Onboard temperature Light level and humidity sensors

Bitmapped LCD display 128x64


USB connection

- 18 -

Universitt Dortmund

Tools for Labs & Projects

GumStix Overo Air


Texas Instruments OMAP 3503 Application Processor with ARM Cortex-A8 CPU 600 MHz 256MB RAM 256MB Flash 802.11(g) and Bluetooth

3.2 Mpixel camera board


- 19 -

Universitt Dortmund

Some Books (for your interest only)


No books required unfortunately NO single adequate book exists Id mention books as we go along
Embedded, Everywhere: A Research Agenda for Networked Systems of Embedded Computers, National Research Council. http://www.nap.edu/books/0309075688/html/ G.D. Micheli, W. Wolf, R. Ernst, Readings in Hardware/Software Co-Design, Morgan Kaufman. S.A. Edwards, Languages for Digital Embedded Systems, Kluwer, 2000. R. Melhem and R. Graybill, Power Aware Computing, Plenum, 2002. M. Pedram and J. Rabaey, Power Aware Design Methodologies, Kluwer, 2002. Hassan Gomaa, "Software Design Methods for Concurrent and Real-Time Systems," AddisonWesley, 1993. P. Lapsley, J. Bier, A. Shoham, and E.A. Lee, DSP Processor Fundamentals: Architectures and Features, Berkeley Design technology Inc,, 2001. R. Gupta, "Co-synthesis of Hardware & Software for Embedded Systems," Kluwer, 1995. Felice Balarin, Massimiliano Chiodo, and Paolo Giusto, "Hardware-Software Co-Design of Embedded Systems : The Polis Approach," Kluwer, 1997. P. Marwedel, "Embedded System Design, Kluwer Academic Publishers.

- 20 -

Universitt Dortmund

Embedded Electronic Systems


Scenarios & Examples

- 21 -

Universitt Dortmund

Application areas (1)

Automotive electronics Avionics Trains Telecommunication

P.Marwedel

1.2 Application areas - 22 -

Universitt Dortmund

Application areas (2)


Medical systems For example: Artificial eye: several approaches, e.g.:
Camera attached to glasses; computer worn at belt; output directly connected to the brain, pioneering work by William Dobelle. Previously at
[www.dobelle.com]

Translation into sound; claiming much better resolution.


[http://www.seeingwithsound.com/etumble.htm]

P.Marwedel

- 23 -

Universitt Dortmund

Application areas (3)

Military applications
http://www.submarine.co.mp/wallpaper/submarine_640.jpg

Authentication

P.Marwedel

- 24 -

Universitt Dortmund

Application areas (4)


Consumer electronics

P.Marwedel

- 25 -

Universitt Dortmund

Application areas (5)


Industrial automation

Smart buildings

P.Marwedel

Show movie http://www.dateconference.com/conference/ 2003/keynotes/index.htm

- 26 -

Universitt Dortmund

Application areas (6)


Robotics Pipe-climber
Robot Johnnie (Courtesy and : H.Ulbrich, F. Pfeiffer, TU Mnchen)

P.Marwedel

Show movie of 2-legged robot(s)

- 27 -

Universitt Dortmund

Application Examples

Some embedded systems from real life

- 28 -

Universitt Dortmund

Smart Beer Glass


Capacitive sensor for fluid level
Integrates several technologies: Radio transmissions Sensor technology Magnetic inductance for power 8-bit processor Computer used for calibration Impossible without the computer Meaningless without the electronics

Contact less transmission of power and readings

Inductive coil for RF ID activation & power

Jakob Engblom

CPU and reading coil in the table. Reports the level of fluid in the glass, alerts servers when close to empty
- 29 -

P.Marwedel

Universitt Dortmund

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


Jakob Engblom

P.Marwedel

- 30 -

Universitt Dortmund

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

Jakob Engblom

P.Marwedel

- 31 -

Universitt Dortmund

If you want to play

Lego mindstorms robotics kit


Standard controller 8-bit processor

64 kB of memory
Electronics to interface to motors and sensors

Good way to learn embedded systems

P.Marwedel

Jakob Engblom

- 32 -

Universitt Dortmund

Mobile base station

Massive signal processing Several processing tasks per connected mobile phone Based on DSPs Standard or custom 100s of processors

Jakob Engblom

P.Marwedel

- 33 -

Universitt Dortmund

Telecom Switch

Rack-based Control cards IO cards DSP cards ... Optical & copper connections Digital & analog signals

Jakob Engblom

P.Marwedel

- 34 -

Universitt Dortmund

Smart Welding Machine

Electronics control voltage & speed of wire feed Adjusts to operator

kHz sample rate


1000s of decisions/second Perfect weld even for quite clumsy operators Easier-to-use product, but no obvious computer
Jakob Engblom

P.Marwedel

- 35 -

Universitt Dortmund

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

Jakob Engblom

P.Marwedel

- 36 -

Universitt Dortmund

Inside your PC
Custom processors Graphics, sound 32-bit processors IR, Bluetooth Network, WLAN Harddisk RAID controllers 8-bit processors USB Keyboard, mouse
Jakob Engblom

P.Marwedel

- 37 -

Universitt Dortmund

Forestry Machines
Networked computer system Controlling arms & tools Navigating the forest Recording the trees harvested Crucial to efficient work Tough enough to be out in the woods
Jakob Engblom

P.Marwedel

- 38 -

Universitt Dortmund

Cars
Multiple networks Functions by embedded Body, engine, telematics, processing: media, safety ABS: Anti-lock braking systems Multiple processors Up to 100 ESP: Electronic stability Networked together control Airbags Efficient automatic gearboxes Theft prevention with smart keys Blind-angle alert systems ... etc ... Jakob Engblom
P.Marwedel - 39 -

Universitt Dortmund

Automobiles as distributed embedded systems

P.Marwedel

- 40 -

Universitt Dortmund

How many CPUs in a car?


Todays high-end automobile may have more than 100 microprocessors:

4-bit microcontroller checks seat belt;


8-bit for door locks, lights, etc. 16-bit for most functions (e.g. Microcontrollers run dashboard devices); 16/32-bit microprocessor controls engine, airbags... DSP for Automatic stability control 16/32-bit microprocessor for Automatic stability control Intelligent Sensors and actuators distributed all over the vehicle

- 41 -

Universitt Dortmund

Extremely Large
Functions requiring computers:

Radar
Weapons Damage control

Navigation
basically everything Computers: Large servers 1000s of processors
Jakob Engblom

P.Marwedel

- 42 -

Universitt Dortmund

Networks and embedded systems

An increasing number of embedded systems connect to the Internet. Resource management. Security.

Many specialized networks have been developed for embedded systems: Automotive. Device control.

P.Marwedel

- 43 -

Universitt Dortmund

Embedded system at glance


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 several 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
- 44 -

Universitt Dortmund

Copyright 2003 Mani Srivastava

An Embedded Control System Designers View

- 45 -

Universitt Dortmund

Copyright 2003 Mani Srivastava

Complexity and Heterogeneity

control panel

controller processes Real-time OS

ASIC

controller

UI processes

DSP Assembly Code

Programmable DSP

Programmable DSP CODEC

DSP Assembly Code

Dual-ported RAM
Heterogeneity within H/W & S/W parts as well S/W: control oriented, DSP oriented H/W: ASICs, COTS ICs

- 46 -

Universitt Dortmund

Copyright 2003 Mani Srivastava

Increasingly on the Same Chip

System-on-Chip (SoC)
- 47 -

Universitt Dortmund

Copyright 2003 Mani Srivastava

Many Types of Programmable Processors

Past
Microprocessor

Now / Future
Network

Microcontroller
DSP Graphics

Processor

Processor Sensor Processor Cryptoprocessor Game Processor Wearable Processor Mobile Processor

- 48 -

Universitt Dortmund

Copyright 2003 Mani Srivastava

More SoCs

Camera-on-chip (Bell Labs)

Solar-power Wireless Sensor (Berkeley)


- 49 -

Universitt Dortmund

Copyright 2003 Mani Srivastava

SoCs with Mechanics: Berkeleys Smart Dust

- 50 -

P.Marwedel

Characteristics

- 51 Graphics: Alexandra Nolte, Gesine Marwedel, 2003

Universitt Dortmund

Copyright 2003 Mani Srivastava

Many Implementation Choices


Microprocessors

Speed

Power

Cost

Domain-specific processors
DSP Network processors

Microcontrollers
ASIPs
Application-specific instruction-set processor

Reconfigurable SoC
FPGA Gatearray

ASIC
Application-specific integrated circuit

High Low Volume - 52 -

Universitt Dortmund

Characteristics of Embedded Systems (1)


Must be dependable, Reliability R(t) = probability of system working correctly provided that is was working at t=0 Maintainability M(d) = probability of system working correctly d time units after error occurred. Availability A(t): probability of system working at time t Safety: no harm to be caused Security: confidential and authentic communication Even perfectly designed systems can fail if the assumptions about the workload and possible errors turn out to be wrong. Making the system dependable must not be an after-thought, it must be considered from the very beginning
P.Marwedel 1.1 terms and scope - 53 -

Universitt Dortmund

Characteristics of Embedded Systems (2)


Must be efficient Energy efficient Code-size efficient (especially for systems on a chip) Run-time efficient Weight efficient

Cost efficient
Dedicated towards a certain application Knowledge about behavior at design time can be used to minimize resources and to maximize robustness Dedicated user interface (no mouse, keyboard and screen)
P.Marwedel - 54 -

Universitt Dortmund

Characteristics of Embedded Systems (3)


Many ES must meet real-time constraints
A real-time system must react to stimuli from the controlled object (or the operator) within the time interval dictated by the environment. For real-time systems, right answers arriving too late are wrong.

A real-time constraint is called hard, if not meeting that constraint could result in a catastrophe [Kopetz, 1997].
All other time-constraints are called soft. A guaranteed system response has to be explained without statistical arguments
P.Marwedel - 55 -

Universitt Dortmund

Real-Time Systems

Embedded and Real-Time Synonymous? Most embedded systems are real-time

embedded embedded real-time real-time


- 56 -

Most real-time systems are embedded


Jakob Engblom

P.Marwedel

Universitt Dortmund

Characteristics of Embedded Systems (4)


Frequently connected to physical environment through sensors and actuators Hybrid systems (analog + digital parts). Typically, ES are reactive systems: A reactive system is one which is in continual interaction with is environment and executes at a pace determined by that environment [Berg, 1995] Behavior depends on input and current state. automata model appropriate, model of computable functions inappropriate.
P.Marwedel - 57 -

Universitt Dortmund

Quite a number of challenges, e.g. dependability

Dependability?

Non-real time protocols used for real-time applications


Over-simplification of models (e.g. aircraft anti-collision system) Using unsafe systems for safety-critical missions (e.g. voice control system in Los Angeles; ~ 800 planes without voice connection to tower for > 3 hrs

P.Marwedel

- 58 -

Universitt Dortmund

Moores Law

In 1965, Gordon Moore noted that the number of transistors on a chip doubled every 18 to 24 months He made a prediction that semiconductor technology will double its effectiveness every 18 months
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

LOG2 OF THE NUMBER OF COMPONENTS PER INTEGRATED FUNCTION

Electronics, April 19, 1965.

1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975

- 59 -

Universitt Dortmund

Moores law in Microprocessors

1000 Transistors (MT) 100 10 1 0.1 0.01 386 286 486

2X growth in 1.96 years!


P6 Pentium proc

Courtesy, Intel

8085

0.001 1970

8086 8080 8008 4004 1980 1990 Year 2000 2010

Transistors on Lead Microprocessors double every 2 years


- 61 -

Universitt Dortmund

Die Size Growth

100

Die size (mm)

10 8080 8008 4004 1 1970 8086 8085 286

386

P6 Pentium proc 486

Courtesy, Intel

~7% growth per year ~2X growth in 10 years

1980

1990 Year

2000

2010

Die size grows by 14% to satisfy Moores Law


- 62 -

Universitt Dortmund

Embedded HW: Moores Law


45nm 2600Kgates/mm2 65nm 1400Kgates/mm2

Margarshack03

STMicroelectronics Roadmap
- 63 -

P.Marwedel

Universitt Dortmund

Frequency

10000 Frequency (Mhz) 1000 100 486 10 1 0.1

Doubles every 2 years

Now its over!

P6 Pentium proc

Courtesy, Intel

8085

8086 286

386

8080 8008 4004 1980 1990 Year 2000 2010

1970

Lead Microprocessors frequency doubles every 2 years


- 64 -

Universitt Dortmund

Power is a major problem


100000 10000 Power (Watts) 1000 100

Hard bound

18KW 5KW 1.5KW 500W Pentium proc

286 486 8086 386 10 8085 8080 8008 1 4004 0.1

Courtesy, Intel

1971 1974 1978 1985 1992 2000 2004 2008 Year

Power delivery and dissipation will be prohibitive


- 65 -

Universitt Dortmund

Power density

10000 Power Density (W/cm2)

1000

Rocket Nozzle Nuclear Reactor


Courtesy, Intel

100
10 4004 Hot Plate P6 8008 8085 Pentium proc 386 286 486 8080 1 1970 1980 1990 2000 2010 Year 8086

Power density too high to keep junctions at low temp


- 66 -

Universitt Dortmund

Not Only Microprocessors

Cell Phone
Small Signal RF Power RF

Digital Cellular Market (Phones Shipped)

Power Management

1996 1997 1998 1999 2000


Units

48M 86M 162M 260M 435M (data from Texas Instruments)

Analog Baseband
Digital Baseband (DSP + MCU)

- 67 -

Universitt Dortmund

Challenges in Digital Design

DSM
Microscopic Problems
Ultra-high speed design Interconnect Noise, Crosstalk Reliability, Manufacturability Power Dissipation Clock distribution.

1/DSM
Macroscopic Issues
Time-to-Market Millions of Gates High-Level Abstractions Reuse & IP: Portability Predictability Verification and Theres a Lot of Them!

Everything Looks a Little Different

- 68 -

Universitt Dortmund

Design productivity gap


1981 leading edge chip required 100 designer months 10,000 transistors / 100 transistors/month 2002 leading edge chip requires 30,000 designer months 150,000,000 / 5000 transistors/month Designer cost increase from $1M to $300M
Complexity Logic Transistor per Chip (M)
10,000 10,000,000 1,000 1,000,000 100 100,000 10 10,000 1 1,000 0.1 100
xx x xx x x x

100,000 100,000,000

1,000 1,000,000 58%/Yr. compounded Complexity growth rate 100 100,000 10 10,000 21%/Yr. compound Productivity growth rate 1 1,000 0.1 100 0.01 10

0.01 10 0.001 1

1985

1981

1983

1987

1989

1991

1993

1995

1997

1999

2001

2003

2005

2007

2009

ITRS Roadmap
Source: Sematech

Complexity outpaces design productivity

Productivity (K) Trans./Staff - Mo.

Logic Tr./Chip Tr./Staff Month.

10,000 10,000,000

- 69 -

Universitt Dortmund

The mythical man-month


The situation is even worse than the productivity gap indicates In theory, adding designers to team reduces project completion time In reality, productivity per designer decreases due to complexities of team management and communication In the software community, known as the mythical man-month (Brooks 1975) At some point, can actually lengthen project completion time! (Too many cooks)
Team 60000 1M transistors, 1 designer=5000 trans/month Each additional designer reduces for 100 trans/month So 2 designers produce 4900 trans/month each 50000 40000 30000 24 Months until completion 43 Individual 19 16 15 16 18 23

20000
10000

10

20 30 Number of designers

40

P.Marwedel

- 70 -

Universitt Dortmund

Challenges for implementation in hardware


Lack of flexibility (changing standards).

Mask cost for specialized HW becomes very expensive

Trend towards implementation in Software

[http://www.molecularimprints.com/Technology/ tech_articles/MII_COO_NIST_2001.PDF9]

P.Marwedel

- 71 -

Universitt Dortmund

Copyright 2003 Mani Srivastava

Situation Worse in S/W


Embedded System Costs
45 40 35 30 25 20 15 10 5 0 1980 1982 1984 1986 1988 Software

Billion $/Year

Hardware

1990

1992

1994

- 72 -

Universitt Dortmund

Software complexity is a challenge


Exponential increase in software complexity In some areas code size is doubling every 9 months [ST
Microelectronics, Medea Workshop, Fall 2003]

... > 70% of the development cost for complex systems such as automotive electronics and communication systems are due to software development
[A. Sangiovanni-Vincentelli, 1999]

Rob van Ommering, COPA Tutorial, as cited by: Gerrit Mller: Opportunities and challenges in embedded systems,

Eindhoven Embedded Systems Institute, 2004

P.Marwedel

- 73 -

Universitt Dortmund

Challenges for Embedded Software


Dynamic environments

Capture the required behaviour!


Validate specifications

Efficient translation of specifications into implementations!


How can we check that we meet realtime constraints? How do we validate embedded realtime software? (large volumes of data, testing may be safety-critical)
P.Marwedel - 74 -

Universitt Dortmund

It is not sufficient to consider ES just as a special case of software engineering


EE knowledge must be available, Walls between EE and CS must be torn down
CS EE

P.Marwedel

- 75 -

Universitt Dortmund

Hardware/software design flow

requirements and specification architecture


hardware design integration software design

testing
P.Marwedel - 76 -

Universitt Dortmund

Co-design methodology

Must architect hardware and software together: provide sufficient resources; avoid software bottlenecks. Can build pieces somewhat independently, but integration is major step. Also requires bottom-up feedback.

P.Marwedel

- 77 -

Universitt Dortmund

Hierarchical design flow


Embedded systems must be designed across multiple levels of abstraction: system architecture; hardware and software systems; hardware and software components. Often need design flows within design flows.

P.Marwedel

- 78 -

Universitt Dortmund

Hierarchical HW/SW flow

spec architecture HW SW integrate test

spec spec HW architecture SW architecture detailed design detailed design integration integration testtest

system
P.Marwedel

hardware software
- 79 -

Universitt Dortmund

Codesign in time

Tasks

Traditional System Design Process


SW design
SW test

System design
ASIC design Fabrication Test

PCB test

Time
Copyright J. Madsen, some modifications applied

- 80 -

Universitt Dortmund

Codesign in time II

Tasks

Co-Design Process
SW design
SW test

System design

Shared Design
ASIC design Fabrication Test

PCB test

Time System-Level Partitioning


- 81 -

Universitt Dortmund

Goals of computer-aided hardware/software co-design

Explore different design alternatives Search for the best solution

Reduce system design time Reduce product time to market


Support coherent design specification Facilitate hardware and software reuse Provide integrated environment for synthesis and validation of hardware and software components
- 82 -

Universitt Dortmund

Synthesis

HW: HDL
DataFlow, Structural), (Behavioral,

Specification Co-Synthesis Synthesis

Schematic

Textual/Graphical representation

SW: Algorithm,

RTL, Gate level, Transistors, Layout

Detailed Representation of Implementation

Executable or Compilable code: The program(s), OS routines

- 83 -

Universitt Dortmund

System architecture
Hardware

accelerator CPU memory Software I/O

- 84 -

Universitt Dortmund

HW/SW co-design process


customer/marketing systems architect
system analysis process impl. & transformations architecture design, HW/SW partitioning and interfacing HW design SW design reused functions and processes HW architecture and components reused and manually optimized HW and SW components

co-specification high-level transformation

system architect

results

HW developer

evaluation (co-simulation)

co-design & synthesis

SW developer

- 85 -

Universitt Dortmund

Example: GPS moving map requirements

lat: 40 13 lon: 32 19
- 86 -

Scotch Road

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

I-78

Universitt Dortmund

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. Physical size/weight: Should fit in hand. Power consumption: Should run for 8 hours on four AA batteries.
- 87 -

Universitt Dortmund

GPS moving map block diagram

GPS receiver

search engine

renderer

display

database

user interface

- 88 -

Universitt Dortmund

GPS moving map hardware architecture

display

frame buffer

CPU GPS receiver

memory

panel I/O

- 89 -

Universitt Dortmund

GPS moving map software architecture

position

database search

renderer

pixels

user interface

timer

- 90 -

Universitt Dortmund

System integration
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. 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.

- 91 -

You might also like