Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

35
Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section

Transcript of Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

Page 1: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

Embedded Systems Design

Paul Pop, associate professorEmbedded systems engineering section

Page 2: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

2

Embedded Systems

Invisible computers, inside most of the devices we use, from a music player, a mobile phone, to cars, trains, medical equipment, and so on.

an embedded system special-purpose computer system, part of a larger system which it controls

More than humans on the planet, already 40 billion of such devices by 2020

99% of processors used in embedded systems 4 billion embedded processors sold last year

€71 billion global market in 2009, growth of 14% Market size is about 100 times the desktop market

Page 3: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

3

o o

oo oo

o o

o oo

oo oo

oo

o

oo

o

o

oo

oo

o

o o

o

oo

Embedded systems are everywhere

Our daily lives depend on embedded systems

Page 4: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

4

Product: Sonicare Plus toothbrush.

Microprocessor: 8-bit Zilog Z8.

From your bathroom...

Page 5: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

5

To Mars...

Product: NASA's Mars Sojourner Rover.

Microprocessor: 8-bit Intel 80C85.

Page 6: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

6

Big...

Page 7: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

7

And small...

Page 8: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

8

Characteristics of embedded systemsSingle-functioned

Dedicated to perform a single functionComplex functionality

Often have to run sophisticated algorithms or multiple algorithms. Cell phone, laser printer.

Tightly-constrained Low cost, low power, small, fast, etc.

Reactive and real-time Continually reacts to changes in the system’s environment Must compute certain results in real-time without delay

Safety-critical Must not endanger human life and the environment

Page 9: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

9

Leve

l of d

epen

denc

yAutomotive Electronics

Embedded systems:90% future innovations40% price

1970 1980 1990 2000

ACC Stop&GoBFDALCKSG42 voltageInternet PortalGPRS, UMTSTelematicsOnline ServicesBlueToothCar OfficeLocal Hazard WarningIntegrated Safety

SystemSteer/Brake-By-WireI-DriveLane Keeping Assist.PersonalizationSoftware UpdateForce Feedback Pedal…

Electronic InjectionsCheck ControlSpeed ControlCentral Locking…

Navigation SystemCD-ChangerACC Adaptive Cruise

ControlAirbagsDSC Dynamic Stability

ControlAdaptive Gear ControlXenon LightBMW AssistRDS/TMCSpeech RecognitionEmergency Call…

Electronic Gear ControlElectronic Air ConditionASC Anti Slip ControlABSTelephoneSeat Heating ControlAutom. Mirror Dimming…

sour

ce: B

MW

Page 10: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

10

Automotive architecture example

Page 11: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

11

Evolution of handsets and technology

Page 12: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

12

LCDs

Application processor

Baseband ASIC

Mixed-Signal ASIC

Energy management ASIC

Position sensors

512 MB DDR DRAM

512MB NAND FLASH

2MPix camera module

64MB NOR FLASH

64MB SDRAM

RF Battery

White LED driver

Frame buffer ASIC

MMC

ARM9

UMA core

Keyboard

LED Flash

ARM9

UMA core

BT Module

SIM

IHF

Back-light LEDs

Charger

Smartphone architecture example

Page 13: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

13

Architectures: Networked embedded systems

Distributedacross

networks

...

...Several functions

per processor

DistributedfunctionalityDistributedfunctionality

Page 14: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

14

Application areas: critical vs. best-effort Critical (e.g., avionics)

Based on worst-case assumptions Static reservation of resources Schedulability analysis and static scheduling Simple execution platforms Leads to overdesign (underutilization)

Best effort (e.g., multimedia, networks) Based on average-case Dynamic reservation of resources Sophisticated architectures Adaptive scheduling mechanisms Leads to temporary unavailability

Bridging the gap: partitioned architectures

Page 15: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

15

1981 1984 1987 1990 1993 1996 1999 2002

Leading edgechip in 1981

10,000transistors

Leading edgechip in 2002

150,000,000transistors

Graphical illustration of Moore’s law

Something that doubles frequently grows more quickly than most people realize! A 2002 chip could hold about 15,000 1981 chips inside itself

Page 16: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

16

Page 17: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

17

More Moore vs. More than Moore

Page 18: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

18

Tubes to Chips: Integrated Circuits

Driven by Information Processing needs

IBM 701 calculator (1952)

IBM Power 5 IC

(2004)

Slide soruce: Krish Chakrabarty, Duke University

Page 19: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

19

Tubes to Chips: Biochips

Driven by biomolecular analysis needs

Test tube analysis

Agilent DNA analysis

Lab on a Chip (1997)

Slide soruce: Krish Chakrabarty, Duke University

Page 20: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

20

Tubes to Chips: Biochips, cont.

Test tubes

Robotics

Microfluidics

AutomationIntegration

Miniaturization

AutomationIntegration

Miniaturization

AutomationIntegration

Miniaturization

Slide soruce: Krish Chakrabarty, Duke University

Page 21: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

21

Biochip Architecture

Slide soruce: Krish Chakrabarty, Duke University

Page 22: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

22

Embedded systems design problemFind an implementation that can perform the computation such

that the requirements are satisfied.

Embedded systems perform computations (software) that are subject to physical constraints (hardware)

Reaction to a physical environment: deadline, throughput, jitter Execution on a physical platform: processor speed, power, reliability

The need for an embedded systems design discipline Computer science separates computation from physical constraints Computer engineering ignores computation

Page 23: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

23

Traditional embedded systems design

Design and build the target hardware

Develop the software independently

Integrate them and hope it works

Does not work for complex systems

Page 24: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

24

Embedded software: size and deployment

Page 25: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

25

Embedded software: complexity growth

Page 26: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

26

Increasing complexity (telecom example)

Page 27: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

27

0.35µ 0.25µ 0.18µ 0.15µ 0.12µ 0.1µ

Lo

g

Sc

ale

Gates/cm2

Moore’s Law

Widening Gap

Design Productivity

Software Productivity

Technology (micron)

Design crisis

Page 28: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

28

We need a better design methodologyDesign methodology: the process of creating a system

Goal: optimize competing design metrics Time-to-market Design cost Manufacturing cost Quality, etc.

Design flow: sequence of steps in a design methodology. May be partially or fully automated. Use tools to transform, verify design.

Design flow is one component of design methodology. Methodology also includes management, organization, etc.

Page 29: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

29

Abstraction and clustering

abst

ract

Transistor ModelCapacity Load

1970’s

cluster

abst

ract

Gate Level ModelCapacity Load

1980’s

RTL

cluster

abst

ract

SDFWire Load

1990’s

IP Blocks

cluster

abst

ract

IP Block PerformanceInter IP Communication Performance Models

RTLClusters

SWModels

Year 2000 +

Page 30: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

30

Abstraction and clustering: Platforms The “PC platform” makes development easier

x86 instruction-set architecture fully specified set of buses and a specified set of I/O devices

Similar platform definitions for specific embedded systems application areas

Output DevicesInput devices

Hardware Platform

I O

Hardware

Software

Network

Software Platform

Application Software

Platform API

Page 31: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

31

Model of system implementation

System platform model

System-leveldesign tasks

Evaluation

Softwaresynthesis

Hardware

synthesis

Application model

Application model

Architecture model

System-level design

Constructive vs.improvement Analysis vs.

simulation

Page 32: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

32

Typical design tasks: Mapping and schedulingGiven

Application: set of interacting processes Platform: set of nodes Timing constraints: deadlines

Determine Mapping of processes and messages Schedule tables for processes and messages

Such that the timing constraints are satisfied

S2 S1

P1

P4

P2

m1 m2m3 m4

P3

N1

N2

Bus

Schedule

table

Deadline

P1

P4

P2 P3

m1 m2

m3 m4

N1 N2

Page 33: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

33

Operation Area (cells) Time (s) Mixing 2x2 6 Mixing 2x3 5 Mixing 2x4 4

Dilution 2x2 6 Dilution 2x3 5 Dilution 2x4 3 Storage 1x1 –

Biochips design tasks

Scheduling

Binding

Placement

Allocation

S1

S2

S3 B

R1

R2

W

Store

Mixer1

Mixer2

Dil

uter

Detector

Mixer1

Mixer2

Diluter

Store

Detector

O7

O9

O3

O11

O10 O4

1 2

3

4

5 6

7

10

8

9

In S1 In R 1

Mix

Detect

In S2 In B

DiluteIn R 2

Mix

Detect

Source

Sink

Page 34: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

34

Design-space exploration

Page 35: Embedded Systems Design Paul Pop, associate professor Embedded systems engineering section.

35

Safety-Critical Systems

Safety is a property of a system that will not endanger human life or the environment.

A safety-related system is one by which the safety of the equipment or plant is ensured.

Safety-critical system is: Safety-related system, or High-integrity system

Our daily lives depend on embedded systems