+ All Categories
Home > Documents > (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar...

(Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar...

Date post: 27-May-2019
Category:
Upload: vuongmien
View: 223 times
Download: 0 times
Share this document with a friend
90
fakultät für informatik informatik 12 technische universität dortmund (Introduction to) Embedded Systems Peter Marwedel TU Dortmund, Informatik 12 Graphics: © Alexandra Nolte, Gesine Marwedel, 2003 2010/09/20 preface
Transcript
Page 1: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

fakultät für informatik

informatik 12

technische universität dortmund

(Introduction to)

Embedded Systems

Peter Marwedel

TU Dortmund,

Informatik 12

Gra

phic

s: ©

Ale

xandra

Nolte,

Gesin

e M

arw

edel, 2

003

2010/09/20 preface

Page 2: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 2 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Motivation for Course (1)

According to forecasts, future of IT

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

Page 3: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 3 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Motivation for Course (2)

“Information technology (IT) is on the verge of another

revolution. …..

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 … throughout society could well dwarf previous

milestones in the information revolution.”

National Research Council Report (US)

Embedded Everywhere, 2001

Page 4: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 4 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Motivation for Course (3)

The future is embedded,

embedded is the future

Page 5: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 5 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Embedded Systems & Cyber-Physical Systems

“Dortmund“ Definition: [Peter Marwedel]

Embedded systems are information

processing systems embedded into a

larger product

Definition: Cyber-Physical (cy-phy)

Systems (CPS) are integrations of

computation with physical processes [Edward

Lee, 2006].

Page 6: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 6 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Extending the motivation:

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

© European Commission

Embedded

Systems

Robots

Control systems

Feature extraction

and recognition

Sensors/actuators

A/D-converters

Pervasive/Ubiquitous computing

Distributed systems

Embedded web systems

Real-tim

e

Dependabili

ty

Qualit

y o

f

serv

ice

Page 7: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 7 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Growing importance of embedded systems (1)

the global mobile entertainment industry is now worth some $32

bln…predicting average revenue growth of 28% for 2010 [www.itfacts.biz, July 8th, 2009]

…, 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]

Preface

Page 8: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 8 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

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

[Ryan, EEDesign, 1995]

Page 9: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

fakultät für informatik

informatik 12

technische universität dortmund

Application areas

and examples

Gra

phic

s: ©

Ale

xandra

Nolte,

Gesin

e M

arw

edel, 2

003

1.1 Application areas and examples

Page 10: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 10 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Automotive electronics

Multiple networks

Body, engine, telematics,

media, safety, ...

Multiple networked

processors Up to 100

© Jakob 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 ...

Page 11: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 11 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Avionics

Flight control systems,

anti-collision systems,

pilot information systems,

power supply system,

flap control system,

entertainment system,

Dependability is of outmost

importance.

Page 12: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 12 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Railways

Safety features

contribute significantly

to the total value of

trains, and dependability

is extremely important

Page 13: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 13 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Telecommunication

Mobile phones have been one

of the fastest growing markets

in the recent years,

Geo-positioning systems,

Fast Internet connections,

Closed systems for police,

ambulances, rescue staff.

Page 14: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 14 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

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]

Page 15: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 15 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Authentication systems

Finger print sensors

Access control

Airport security systems

Smartpen®

Smart cards

….

[tomsguide.com]

Page 16: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 16 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

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

Page 17: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 17 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Industrial automation

Examples

Page 18: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 18 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Forestry Machines

© Jakob Engblom

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”

Page 19: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 19 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Smart buildings

Examples

Integrated cooling,

lightning, room

reservation, emergency

handling, communication

Goal: “Zero-energy

building”

Expected contribution to

fight against global

warming

Show movie http://www.date-

conference.com/conference/

2003/keynotes/index.htm

Page 20: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 20 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Logistics

Applications of embedded/cyber-physical system

technology to logistics:

Radio frequency identification (RFID) technology provides

easy identification of each and every object, worldwide.

Mobile communication allows unprecedented interaction.

The need of meeting real-time constraints and scheduling

are linking embedded systems and logistics.

The same is true of energy minimization issues

Page 21: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

fakultät für informatik

informatik 12

technische universität dortmund

Educational concept

Gra

phic

s: ©

Ale

xandra

Nolte,

Gesin

e M

arw

edel, 2

003

From the preface of the book

Page 22: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 22 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Broad scope avoids problems with narrow perspectives

reported in ARTIST curriculum guidelines

“The lack of maturity of the domain results in a large variety

of industrial practices, often due to cultural habits”

“curricula … concentrate on one technique and do not

present a sufficiently wide perspective.”

“As a result, industry has difficulty finding adequately

trained engineers, fully aware of design choices.”

Source: ARTIST network of excellence:

Guidelines for a Graduate Curriculum on Embedded Software and Systems,

http://www.artist-embedded.org/Education/Education.pdf, 2003

Page 23: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 23 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Scope consistent with ARTIST guidelines

"The development of ES cannot ignore

the underlying HW characteristics.

Timing, memory usage, power

consumption, and physical failures are

important."

"It seems that fundamental bases are

really difficult to acquire during

continuous training if they haven’t been

initially learned, and we must focus on

them."

Page 24: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 24 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Textbook(s)

• Peter Marwedel, “Embedded System Design”, Kluwer

Academic Publishers, 2003.

• Peter Marwedel, “Embedded System Design:

Embedded Systems Foundations of Cyber-Physical

Systems”, Springer, 2011.

• Daniel D. Gajski, Samar Abdi, Andreas Gerstlauer,

Gunar Schirner, “Embedded System Design: Modeling,

Synthesis and Verification”, Springer 2009.

Page 25: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 25 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Slides, References, …

Slides are available at:

http://www2.itu.edu.tr/~orssi/

Course announcements

Page 26: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

fakultät für informatik

informatik 12

technische universität dortmund

Common

characteristics

Gra

phic

s: ©

Ale

xandra

Nolte,

Gesin

e M

arw

edel, 2

003

1.2 Common characteristics

Page 27: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 27 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Dependability

ES 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

Page 28: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 28 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Efficiency

ES must be efficient

• Code-size efficient

(especially for systems on a chip)

• Run-time efficient

• Weight efficient

• Cost efficient

• Energy efficient

Page 29: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 29 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Embedded System Hardware

Embedded system hardware is frequently used in a loop

(“hardware in a loop“):

cyber-physical systems

Page 30: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 30 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Real-time constraints

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

Page 31: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 31 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Real-Time Systems

Embedded and Real-

Time Synonymous?

Most embedded

systems are

real-time

Most real-time

systems are

embedded

embedded

real-time

embedded

real-time

© Jakob Engblom

Page 32: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 32 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Reactive & hybrid systems

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.

Hybrid systems

(analog + digital parts).

Page 33: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 33 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Dedicated systems

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)

Page 34: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

fakultät für informatik

informatik 12

technische universität dortmund

Challenges in ES

Design

Gra

phic

s: ©

Ale

xandra

Nolte,

Gesin

e M

arw

edel, 2

003

These slides use Microsoft clip arts.

Microsoft copyright restrictions apply.

Peter Marwedel

TU Dortmund,

Informatik 12

2010/09/20

Page 35: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 35 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Quite a number of challenges, e.g. dependability

Dependability?

Non-real time protocols used for real-time applications

(e.g. Berlin fire department)

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

Page 36: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 36 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Importance

of Energy

Efficiency

© Hugo De Man,

IMEC, Philips, 2007

Efficient software

design needed,

otherwise, the

price for software

flexibility cannot

be paid.

Page 37: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 37 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

It is not sufficient to consider ES

just as a special case of software engineering

CS EE

EE knowledge must be available,

Walls between EE and CS must be torn down

The same for walls to other disciplines and more challenges ….

Page 38: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

fakultät für informatik

informatik 12

technische universität dortmund

Design flows

Gra

phic

s: ©

Ale

xandra

Nolte,

Gesin

e M

arw

edel, 2

003

1.3 Design flows

Page 39: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 39 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Hypothetical design flow

Specification

ES-hardware

System software

(RTOS,

middleware, …)

Test *

Evaluation & Validation

(energy, cost,

performance, …)

Optimization

Application

mapping

Applic

ation K

now

ledg

e Design

repository

Generic loop: tool chains differ in the number and type of iterations

* Could be

integrated

into loop

Design

Page 40: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 40 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Page 41: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 41 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Page 42: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 42 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Page 43: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 43 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Page 44: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 44 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Iterative design (1) - After unrolling loop -

Example:

SpecC

tools

Page 45: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 45 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Page 46: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 46 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Motivation for considering specs

Why considering specs?

If something is wrong with the specs, then it

will be difficult to get the design right,

potentially wasting a lot of time.

Typically, we work with models of the

system under design (SUD)

What is a model anyway?

Page 47: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 47 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Requirements for specification techniques (5)

Presence of programming elements

Executability (no algebraic specification)

Support for the design of large systems ( OO)

Domain-specific support

Readability

Portability and flexibility

Termination

Support for non-standard I/O devices

Non-functional properties

Support for the design of dependable systems

No obstacles for efficient implementation

Adequate model of computation

What does it mean “to compute”?

Page 48: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 48 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Models

Definition: A model is a simplification of another entity,

which can be a physical thing or another model. The model

contains exactly those characteristics and properties of the

modeled entity that are relevant for a given task. A model

is minimal with respect to a task if it does not contain any

other characteristics than those relevant for the task.

[Jantsch, 2004]:

Which requirements do we have for our models?

Page 49: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 49 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Models and Architectures

• The system = collection of simpler subsystems or pieces

• There are different methods of decomposing functionality

• A particular method = a model

Page 50: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 50 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Model Taxonomy

1. State Oriented (state diagram)

for control systems temporal behavior

2. Activity Oriented (dataflow graph)

for transformational systems like digital signal

processing

3. Structure Oriented (block diagram)

4. Data Oriented (entity relationship diagram)

for information systems lik databases

3. Heterogeneous

Page 51: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 51 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Page 52: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 52 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Page 53: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 53 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Views of an Elevator Controller

• If the elevator is stationary and the floor requested

is equal to the current floor, then the elevator

remains idle.

• If the elevator is stationary and the floor requested

is less than the current floor, then lower the

elevator to the requested floor.

• If the elevator is stationary and the floor requested

is greater than the current floor, then raise the

elevator to the requested floor.

loop

if (req_floor = curr_floor) then

direction := idle;

elsif (req_floor < curr_floor) then

direction := down;

elsif (req_floor > curr_floor) then

direction := up;

end if;

end loop;

Dow

n Idle Up

req_floor < curr_floor

direction := down

req_floor = curr_floor

direction := idle

req_floor > curr_floor

direction := up

req_floor < curr_floor

direction := down

req_floor = curr_floor

direction := idle

req_floor = curr_floor

direction := idle

req_floor > curr_floor

direction := up

Page 54: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 54 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Finite State Machine

r3/n

f1 f2

f3

r1/n r2/n

start

r2/u1

r1/d1

r3/u2

r1/d2

r3/u1

r2/d1

Page 55: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 55 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Finite State Machine

States A set of transitions A set of actions

<S, I, O, f : S I S, h : S I O> Set of states : S={s1,s2,,sn} Set of inputs : I={i1,i2,,im} Set of outputs : O={o1,o2,,ok} Next state function : f Output function : h

Page 56: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 56 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Meally and Moore Machines

Transition based (Mealy) : h : S I O

State based (Moore) : h : S O

Page 57: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 57 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

FSM with Data Path

Curr_floor!=req_floor/output:=req_floor-curr_floor;

curr_floor:=req_floor S1 start

Curr_floor=req_floor/output:=0

•<S, I STAT, O A, f, h>

•A set of storage variables : VAR

•A set of expressions : EXP={ f(x, y, z, …) | x, y, z, …

VAR }

•A set of storage assignments : A={ X e | X VAR, e

EXP }

•A set of status expressions : STAT={ Rel(a, b) | a, b

EXP}

•f : S (I STAT) S

•h : S (I STAT) (O A)

Page 58: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 58 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Problems with FSM and FSMD models

Neither the FSM nor the FSMD model is suitable for complex systems Neither one supports concurrency and hierarchy

Page 59: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 59 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Requirements for specification techniques:

Hierarchy

Hierarchy

Humans not capable to understand systems

containing more than ~5 objects.

Most actual systems require more objects

Hierarchy

Behavioral hierarchy

Examples: states, processes, procedures.

Structural hierarchy

Examples: processors, racks,

printed circuit boards

proc

proc

proc

Page 60: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 60 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Hierarchical Concurrent Finite State Machine

(HCFSM)

Each set can be decomposed into a set of substates : hierarchy Each set can be decomposed into a set of concurrent substates : execute in parallel Language for HCFSM : Statecharts

Page 61: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 61 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Statechart Notation

Transitions

• If event E occurs in state S and condition C holds then

make the transition to state T.

• Actions to be carried out when event E occurs in state S are

normally put into an event-action table rather than part of

the diagram. The actions could be lengthy and detailed.

Page 62: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 62 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Hierarchical statecharts

• FSMs are flat. They provide no facility to

represent hierarchies.

• Details sometimes can to be hidden to portray

higher level abstraction.

• Because the arrows go inside node S, events A

and B indicate that there is more detail in state

S.

• When in state S it is also in either state P or

Q.

• When in state S, move from P to Q on event

C

• When in state T move to state S and within S

to P on event B.

• Regardless of states P or Q, on event E,

move to T

• Move to T from Q and S on event A

Page 63: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 63 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Clustering

• Clustering is another form of hierarchy.

• The advantage is the reduction in the number of arrows.

• Likely states P and Q are abstractly different from T.

Page 64: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 64 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Three modes of a digital watch

Page 65: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 65 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Start and Stop States

Start states are the simple large dots.

Stop states are the encircled dots.

A nested statechart should have a start point indicated and

a stop state if it's not obvious.

Page 66: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 66 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

History mechanism

When entering a state that has a

nested statechart, you may want to

resume where you left off when you left

the enclosing state. The encircled H as

the entry point as below means to start

in the state within that was exited.

Each level can have its own history

mechanism. Each history variable

would be initialized to the start state of

the level.

The encircled H can have an asterisk

attached to indicate that the history

mechanism is to be used at all levels of

the hierarchy.

Page 67: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 67 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Concurrency

Concurrency refers to the ability to manage more than one state

simultaneously.

If a simple FSM is used, the number of states needed is the product of

the number of states that can be represented in each group separately.

Example: Consider the 3 style types -- bold, italics and

underline. These styles can be used in any combination. Bold is on or

off, italics is on or off, underline is on or off. The total number of states is

2*2*2 = 8 and the number of transitions is nearly as bad.

Instead, keep each style type as a separate statechart (bold on or off),

(italics on or off) and (underline on or off). Each statechart is a simple

pair of states.

Example: Consider the 4 paragraph positions -- left, center, right and

justified. These types are mutually exclusive but the number of transition

arcs is 10 (=4*5/2).

Page 68: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 68 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Concurrency

Page 69: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 69 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Requirements for specification techniques (2):

Component-based design

Systems must be designed from

components

Must be “easy” to derive behavior from

behavior of subsystems

Work of Sifakis, Thiele, Ernst, …

Concurrency

Synchronization and communication

Page 70: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 70 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Structure oriented models : Component-

connectivity diagram

• Models systems structural view • Often used in the later phases of the design process

Processor

Program

memory

Data

memory

I/O

coprocessor

Applicatio

n specific

hardware

System bus

components

Connections :

buses, wires

System block diagram

Page 71: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 71 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

CCD

Register file

LIR RIR

ALU

Left

Bus Right

Bus

RT-level schematic

A B

Gate-level schematic

Page 72: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 72 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Data-Oriented Models: Entity

relationship diagram Generally used in the design of information systems

Availability

Supplier P.O.

instance Product

Order request customer

entity

Relationship : fact

relevant to its

entities

Might be the name

and address

Page 73: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 73 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Requirements for specification techniques (3):

Timing

Timing behavior

Essential for embedded systems!

• Additional information (periods, dependences,

scenarios, use cases) welcome

• Also, the speed of the underlying platform must be

known

• Far-reaching consequences for design processes!

“The lack of timing in the core abstraction (of computer

science) is a flaw, from the perspective of embedded

software” [Lee, 2005]

Page 74: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 74 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Requirements for specification techniques (3):

Timing (2)

4 types of timing specs required, according to Burns, 1990:

t

? execute

1. Measure elapsed time Check, how much time has elapsed since last call

2. Means for delaying processes

t

Page 75: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 75 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Requirements for specification techniques (3)

Timing (3)

3. Possibility to specify timeouts Stay in a certain state a maximum time.

4. Methods for specifying deadlines Not available or in separate control file.

t

execute

Page 76: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 76 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Dependence graph Definition

• Def.: A dependence graph is a directed graph G=(V,E) in

which E V V is a partial order.

• If (v1, v2) E, then v1 is called an immediate predecessor

of v2 and v2 is called an immediate successor of v1.

• Suppose E* is the transitive closure of E.

If (v1, v2) E*, then v1 is called a predecessor of v2 and

v2 is called a successor of v1.

Nodes could be programs

or simple operations

Sequence

constraint

Page 77: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 77 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Dependence graph

Timing information

Dependence graphs may contain additional information,

for example: Timing information

]

Arrival time deadline

Page 78: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 78 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Dependence graph

I/O-information

Page 79: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 79 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Dependence graph

Shared resources

Page 80: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 80 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Dependence graph Periodic schedules

A job is single execution of the dependence graph

Periodic dependence graphs are infinite

Page 81: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 81 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Dependence graph

Hierarchical task graphs

Page 82: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 82 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Models of communication

Shared memory

memory Comp-1 Comp-2

Variables accessible to several tasks.

Model is useful only for local systems.

Page 83: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 83 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Shared memory

Potential race conditions (inconsistent results possible)

Critical sections = sections at which exclusive access

to resource r (e.g. shared memory) must be guaranteed.

process a {

..

P(S) //obtain lock

.. // critical section

V(S) //release lock

}

process b {

..

P(S) //obtain lock

.. // critical section

V(S) //release lock

}

Race-free access

to shared memory

protected by S

possible

This model may be supported by:

mutual exclusion for critical sections

cache coherency protocols

Page 84: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 84 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Non-blocking/asynchronous message passing

Sender does not have to wait until message has arrived;

potential problem: buffer overflow

send ()

receive ()

Page 85: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 85 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Blocking/synchronous message passing

rendez-vous

Sender will wait until receiver has received message

send ()

receive ()

Page 86: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 86 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Extended rendez-vous

send ()

receive ()

ack

Explicit acknowledge from receiver required.

Receiver can do checking before sending

acknowledgement.

Page 87: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 87 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Combined models - languages presented later in this chapter -

SDL FSM+asynchronous message passing

StateCharts FSM+shared memory

CSP, ADA von Neumann execution+synchronous message passing

….

See also Work by Edward A. Lee, UCB

Axel Jantsch: Modeling Embedded Systems and Soc's: Concurrency and

Time in Models of Computation, Morgan-Kaufman, 2004

Page 88: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 88 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Ptolemy

Ptolemy (UC Berkeley) is an environment for simulating

multiple models of computation.

Available examples are restricted to a subset of the

supported models of computation.

http://ptolemy.berkeley.edu/

Ptolemy simulations

Newton‘s craddle

Page 89: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 89 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Facing reality

No language that meets all language requirements

using compromises

Page 90: (Introduction to) Embedded Systems - web.itu.edu.trorssi/dersler/SLD/slides1_2011.pdf · Gunar Schirner, “Embedded System Design: Modeling, Synthesis and Verification”, Springer

- 90 - technische universität

dortmund

fakultät für

informatik

p. marwedel,

informatik 12, 2010

Summary

Search for other models of computation =

• models of components

- finite state machines (FSMs)

- data flow, ….

• models for communication

- Shared memory

- Message passing


Recommended