embedded system design - incheonesc.incheon.ac.kr/~chung/epc6071_2018/lecture_02.pdf · 2018. 3....

46
Jaeyong Chung System-on-Chips (SoC) Lab. Incheon National University Embedded System Design Lecture 2

Upload: others

Post on 26-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Jaeyong Chung

System-on-Chips (SoC) Lab.

Incheon National University

Embedded System Design

Lecture 2

Page 2: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Introduction

What are embedded computing systems?

Characteristics of embedded systems

Challenges in embedded computing system design.

Design methodologies.

Chung EPC6071 2

Page 3: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

What are embedded systems?

Chung EPC6071 3

Page 4: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Definition

Embedded computing system: any device that

includes an information processing system but is not

itself a general-purpose computer.

Chung EPC6071 4

Page 5: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Definition

Chung EPC6071

“Dortmund“ Definition: [Peter Marwedel]

Embedded systems are information processing systems

embedded into a larger product

Berkeley: [Edward A. Lee]:

Embedded software is software integrated with physical

processes. The technical problem is managing time and

concurrency in computational systems.

Cyber-Physical (cy-phy) Systems (CPS) are integrations of

computation with physical processes [Edward Lee, 2006].

Cyber-physical system (CPS) =

Embedded System (ES) + physical environment

5

Page 6: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Cyber-Physical System

Chung EPC6071

CPS = ES + physical environment

Embedded systems ("computers inphysical environments")Embedded systems

("small computers")

Cyber-physical systems

6

Page 7: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Cyber-Physical System

Chung EPC6071

Extreme view:

PhysicalCyber

Digital Controls Systems, ca. 1980

Cyber-Physical Systems, 2010+ !

7

Page 8: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Internet of Things (IoT)

Embedded System + Internet Connectivity on Things

Computers are often not so smart because

Insufficient information on the environment

IoT may allow computers to perceive the world real-time

Chung EPC6071 8

Real-time model of the world

Applications

Page 9: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Application Area: Automotive Electronics

© P. Marwedel, 2011

[Based on slide by J.Engblom]

Functions by embedded processing:

ABS: Anti-lock braking systems

ESP: Electronic stability control

Airbags

Efficient automatic gearboxes

Theft prevention with smart keys

Blind-angle alert systems

... etc ...

Today’s high-end automobile may have 100

microprocessors:

4-bit microcontroller checks seat belt;

microcontrollers run dashboard devices;

16/32-bit microprocessor controls engine.

Chung EPC6071 9

Page 10: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

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.

Chung EPC6071 10

Page 11: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

BMW 850i, cont’d.

brake

sensor

brake

sensor

brake

sensor

brake

sensor

ABShydraulic

pump

Chung EPC6071 11

Page 12: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Application Area: Avionics

© P

. M

arw

edel, 2

011

Avionics

Flight control systems,

anti-collision systems,

pilot information systems,

power supply system,

flap control system,

entertainment system,

And many more

Dependability is of outmost importance

Chung EPC6071 12

Page 13: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

More Application Areas

©Photos: P. Marwedel

Railroad

Waterways

Structural Safety

Sensors + data analysis

Taipeh 101

Bridge at Vancouver

Kilauea, Hawaii

Möhne lake dam

Chung EPC6071 13

Page 14: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Industrial Production Systems

Chung EPC6071

Chemical Installation

High-speed Bonder(SMD/PCB)

14

Page 15: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Finger print sensors

Airport security systems

Access control

Smart cards

Dependability is of outmost importance

Authentication Systems

Chung EPC6071 15

Page 16: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Smart Home

© P. Marwedel

Zero energy building, generates as much energy as

it consumes

Provides safety and security

Supports owners

Provides maximum comfort

ambient assisted living

Chung EPC6071 16

Page 17: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Learning Thermometers

Chung EPC6071 17

Nest Lab

A home automation company

Founded by ex-apple engineers, Tony Fadell and Matt

Rogers, in 2010

Acquired by Google for $3.2 billion in cash

Learning Thermometers

Easy to use

Good design

Page 18: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

벨브의신

Chung EPC6071 18

“아파트 ‘난방코딩’, 이런게 IoT 아닌가요?” –

Blotter.net

Page 19: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

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

om/etumble.htm]

Chung EPC6071 19

Page 20: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Smart Medicine

Diagnosis

Support of therapy

Evaluation

Risk analysis

Information about patients

Chung EPC6071 20

Page 21: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

switch

power station

control

station

sensors and local control

Decentralized

Control

centralized control

long distance

communication

Local Process

control

Centralized control

and monitoring

21

© DFG-

Forschergrup

pe 1511, TU

Dortmund,

Wietfeld,

Rehtanz et

al.

Smart Grid

Chung EPC6071 21

Page 22: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Smart Beer Glass

8-bit processor

Capacitive sensor for fluid

level

Inductive coil for RF ID activation &

power

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

Contact less transmission of power and

readings

© Jakob Engblom

Integrates several technologies:

Radio transmissions

Sensor technology

Magnetic inductance for

power

Computer used for

calibration

Impossible without the computer

Meaningless without the

electronics

Chung EPC6071 22

Page 23: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

More Application Areas

© Graphics: P. Marwedel, 2011

Telecommunication

Consumer electronics

Robotics

Public safety

Military systems

Chung EPC6071 23

Page 24: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Consumer Electronics

Simple control: front panel of microwave oven, etc.

Canon EOS 3 has three microprocessors.

32-bit RISC CPU runs autofocus and eye control systems.

Digital TV: programmable CPUs + hardwired logic for

video/audio decode, menus, etc.

Chung EPC6071 24

Page 25: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Head Mounted Display

Oculus VR

Founded by a HMD designer, Palmer Luckey

After E3 demo, the company announced a Kickstarter campaign

Within 4 hours of the announcement, raised $250,000 funding

Chung EPC6071 25

Page 26: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Robotics

Chung EPC6071

NASA’s Mars Sojourner Rover

Sony Aibo ERS-110 Robotic Dog

26

Page 27: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Characteristics of embedded systems

Dependability

Efficiency

Real-time constraints

Reactive & hybrid systems

Dedicated systems

Security

Chung EPC6071 27

Page 28: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

CPS/ES must be dependable,

Reliability R(t) = probability of system

working correctly provided that it 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

Dependability

Chung EPC6071 28

Page 29: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Efficiency

© Graphics: Microsoft, P. Marwedel, M. Engel, 2011

CPS & ES must be efficient

Code-size efficient

(especially for microcontroller)

Run-time efficient

Cost efficient

Energy efficient

Small form factor

Small weight (light)

Chung EPC6071 29

Page 30: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Importance of Energy Efficiency

© Hugo De Man (IMEC) Philips, 2007

Efficient software design needed, otherwise, the price for software flexibility cannot be paid.

Chung EPC6071 30

Page 31: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

CPS & ES Hardware

CPS & ES hardware is frequently used in a loop

(“hardware in a loop“):

Cyber-physical systems (!)

© Graphics: Microsoft, P. Marwedel, 2011

Chung EPC6071 31

Page 32: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Real-time Constraints

© Graphics: Microsoft

t

execute

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

“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 [Kopetz, 1997].

Chung EPC6071 32

Page 33: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Real-time Systems & CPS

CPS, ES and Real-Time Systems synonymous?

For some embedded systems, real-time behavior is less important

(smart phones)

For CPS, real-time behavior is essential, hence RTS CPS

CPS models also include a model of the physical system

Chung EPC6071 33

Page 34: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Reactive & Hybrid Systems

© Graphics: Microsoft, P. Marwedel, 2011

Typically, CPS are reactive systems:

“A reactive system is one which is in continual

interaction with 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.

Hybrid systems

(analog + digital parts).

Chung EPC6071 34

Page 35: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Dedicated Systems

© Graphics: P. Marwedel, 2011

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)

Situation is slowly changing here: systems become

less dedicated

Chung EPC6071 35

Page 36: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Security

Chung EPC6071

Defending against

Cyber crime („Annual U.S. Cybercrime Costs Estimated

at $100 Billion; …[Wall Street Journal, 22.7.2013])

Cyber attacks

Cyber terrorism

Cyber war (Cyber-Pearl-Harbor

[Spiegel Online, 13.5.2013])

Connectivity increases threats

entire production chains can be affected

local islands provide some encapsulation, but contradict idea

of global connectedness

36

Page 37: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Characteristics lead to corresponding challenges

© G

raphic

s: P

. M

arw

edel, 2

011

Challenges

Dependability

Energy Efficiency

Hardware properties, physical environment

Meeting real time requirements

Manufacturing Cost, Form factor, etc

Addressing any of these challenges add

a value to products

That value can be a game changer

Chung EPC6071 37

Page 38: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Dart: The world’s smallest Laptop Adaptor

Chung EPC6071 38

Page 39: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

To be an ES expert

CS

Physics

EE

medicine, statistics, ME, biology

Knowledge from many areas must be available

Chung EPC6071 39

Page 40: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Design Methodologies/Flow

A procedure for designing a system.

Understanding your methodology helps you ensure

you didn’t 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.

Chung EPC6071 40

Page 41: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Traditional Design Flow

Start from some informal specification of functionality

and a set of constraints (time, power, cost, etc)

Generate a more formal specification of the

functionality based on some modeling concept (finite

state machine, data-flow, etc) using Matlab,

statecharts, C, C++, UML, VHDL, etc

Simulate the model to check the functionality. If

needed make adjustments

Choose an architecture (microprocessor, buses, etc)

such that the cost limits are satisfied and, you hope,

that time and power constraints will be fulfilled

Build a prototype and implement the system

Verify the system

Chung EPC6071 41

Page 42: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Traditional Design Flow (cont.)

If neither time nor power constraints are satisfied,

Go back to the architecture selection and choose another

architecture and start a new implementation

Or negotiate with the customer on the constraints

Chung EPC6071 42

Page 43: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

Platform/Architecture Selection

Chung EPC6071 43

Platforms

(Mostly educational) Raspberry Pi, Aduino

System-on-chip

Processors

Microcontroller Architecture

ARM Cortex-M, Atmel AVR, AVR32, Intel 8051, etc

Microprocessor Architecture

FPGA

Microprocessors + FPGA

ASIC

Page 44: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

IoT Enablers

Chung EPC6071 44

Bluetooth Smart (Low Energy)

Beacon (Background scan)

System-on-chips

smaller form factor

Lower power

Lower cost

Standard

These allow us to make

For example, a sensor swarm (i.e., many sensors)

https://www.youtube.com/watch?v=lniACfnHwVM

https://www.youtube.com/watch?v=uoOXRa8DXTM

Page 45: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

IoT Hardware Platforms

Chung EPC6071 45

http://postscapes.com/internet-of-things-hardware

Tinyduino ($18) PanStamps ($19) RFduino (built-in BLE)

Page 46: Embedded System Design - Incheonesc.incheon.ac.kr/~chung/epc6071_2018/Lecture_02.pdf · 2018. 3. 13. · Embedded systems are information processing systems embedded into a larger

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.

Chung EPC6071 46