Top Banner
EECS249Fall12 EE249 Embedded System Design: Models, Validation and Synthesis Methodology and Platform-Based Design Alberto Sangiovanni Vincentelli 1
62

EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Jun 20, 2018

Download

Documents

trinhdien
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

EECS249Fall12

EE249

Embedded System Design: Models,

Validation and Synthesis –

Methodology and Platform-Based Design Alberto Sangiovanni Vincentelli

1

Page 2: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

What is Model-Based Design?

1. Create a mathematical model of all the parts of the embedded system Physical world

Control system

Software environment

Hardware platform

Network

Sensors and actuators

2. Construct the implementation from the model Goal: automate this construction, like a compiler

In practice, only portions are automatically constructed

Page 3: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Model-based design: a quick assessment

• Model-based design is used in industry but not to the extent that is desirable

– algorithms are designed and analyzed using block diagram-based modeling tools

– correctness of the algorithms is validated against models of the plant

– models form the basis for all subsequent development stages

• executable specification (instead of docs)

• automatic code generation

• Advantages

– Time-saving and cost-effective

– Design choices can be explored and evaluated quickly and reliably

– Ideally, an optimized and fully tested system is obtained

Page 4: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Model-based design: Difficulties

• However, today in industry

– model-based design is often limited to control algorithm description

– incomplete plant modeling prevents accurate validation of algorithms

• Experimental validation is still extensively used:

– very expensive, time-consuming, bounded coverage

– due to the high cost, OEM will provide less support to experimentation

in Tier-1 companies

• The partial implementation of model-based design is due to

– insufficient investments in design process innovation

– lack of methodologies, models and tools suitable to address critical

steps in the design flow, which are currently handled relying on the

experience of the designers

Page 5: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

The V design process

system specification

functional deployment

control design

hw/sw design

components implementation

hw/sw testing

control validation

functional integration

system testing

© Alberto Sangiovanni-Vincentelli. All rights reserved.

Page 6: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Automotive V-Models: a ‘Linear’ Development Process

Development of Car System

Development of Mechanical Part (s)

ECU Development

ECU SW Development

ECU HW Development

ECU SW Integration and

Test

ECU HW/SW Integration and

Test

ECU/ Sens./Actrs./Mech. Part(s) Integration, Calibration, and Test

Sub-System(s) Integration, Test,

and Validation Development

of Sub-System

ECU Sign-Off!

Sub-System Sign-Off!

Car System Sign-Off!

ECU HW Sign-Off!

ECU SW Implementation

ECU:

Electrical Control Unit

Page 7: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Specification

Analysis

Develo

pm

en

t P

rocess

Buses Buses

Matlab CPUs Buses Operating

Systems

Behavior Components Virtual Architectural Components

C-Code

IPs

Dymola

ECU-1 ECU-2

ECU-3 Bus

f1 f2

f3

Behavior Platform

Mapping

Performance Analysis

Refinement

Evaluation of Architectural

and Partitioning Alternatives

Implementation

Separation of Concerns: Keep the What Separated from the How (AUTOSAR)

© Alberto Sangiovanni-Vincentelli. All rights reserved.

Page 8: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

8

Platform-based Design

Platform Design-Space

Export

Platform Mapping

Architectural Space

Application Space Application Instance

Platform Instance

System (Software + Hardware) Platform

Page 9: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

9

Outline

• Platforms: a historical perspective

• Platform-based Design

Page 10: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

10

Platform-Based Design Definitions:

Three Perspectives

System

Designers

Industry

Academic

(ASV)

Page 11: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

11

System Definition

Ericsson's Internet Services Platform is a new tool for

helping CDMA operators and service providers deploy

Mobile Internet applications rapidly, efficiently and cost-

effectively

Source: Ericsson press release

Page 12: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Automotive

• An automobile platform is a shared set of common design, engineering,

and production efforts, as well as major components over a number of

outwardly distinct models and even types of automobiles, often from

different, but related marques. It is practiced in the automotive industry to

reduce the costs associated with the development of products by basing

those products on a smaller number of platforms. This further allows

companies to create distinct models from a design perspective on similar

underpinnings.

• Key mechanical components that define an automobile platform include: – Floorpan, the collective pieces of the large sheet metal stamping that serves as the primary

foundation of the monocoque chassis, of most of the structural and mechanical components

– Front and rear axles and the distance between them - wheelbase

– Steering mechanism and type of power steering

– Type of front and rear suspensions

– Placement and choice of engine and other powertrain components

© Alberto Sangiovanni-Vincentelli. All rights reserved. 12

Page 13: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

13

Page 14: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

14 © Alberto Sangiovanni-Vincentelli. All rights reserved.

Page 15: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

15

Platform Architectures: Philips Nexperia

Middleware

JavaTV, TVPAK, OpenTV,

MHP/Java, proprietary ...

Applications

Nexperia Hardware

Streaming and

Platform Software Ke

rne

l: p

SO

S, V

xW

ork

s, W

in-C

E

TM-xxxx D$

I$

TriMedia CPU

DEVICE IP BLOCK

DEVICE IP BLOCK

DEVICE IP BLOCK

.

.

.

DVP SYSTEM SILICON

DEVICE IP BLOCK

PRxxxx D$

I$

MIPS CPU

DEVICE IP BLOCK .

.

.

DEVICE IP BLOCK

PI B

US

SDRAM

MMI

DV

P M

EM

OR

Y B

US

PI B

US

TriMedia™ MIPS™

Source: Philips

Hardware Software

Page 16: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

16

Platform Types

“Communication Centric Platform” – SONIC, Palmchip, Arteris, ARM

– Concentrates on communication

• Delivers communication framework plus peripherals

• Limits the modeling efforts

SiliconBackplane™

(patented) {

SiliconBackplane

Agent™

Open Core

Protocol™

MultiChip

Backplane™

DSP MPEG CPU DMA

C MEM I O

SONICs Architecture

Source: G. Martin

Page 17: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

17

Platform-types:

IBM

PowerPC

7/00 Mindspeed

SkyRail

gigabit serial I/O

9/00

RocketChips

mixed-signal IP

acquisition

10/00

Wind River

O/S

3/01

Virtex-II Pro

production

3/02

“Highly-Programmable Platform (Virtex-II Pro)”

Xilinx

Page 18: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

18

Quote from Tully of Dataquest 2002

“This scenario places a premium on the flexibility and

extensibility of the hardware platform. And it

discourages system architects from locking differential

advantages into hardware. Hence, the industry will

gradually swing away from its tradition of starting a

new SoC design for each new application, instead

adapting platform chips to cover new opportunities.”

Page 19: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Designing Platforms: the Component Manufacturer View

19

Application Space e

Ideal Architectural Platform

Page 20: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Using Platforms: the System Company View

20

Architectural Space

Ideal Application Platform

Application Space

Page 21: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

21

Principles of Platform methodology:

Meet-in-the-Middle

• Top-Down:

– Define a set of abstraction layers

– From specifications at a given level, select a solution

(controls, components) in terms of components (Platforms)

of the following layer and propagate constraints

• Bottom-Up:

– Platform components (e.g., micro-controller, RTOS,

communication primitives) at a given level are abstracted to

a higher level by their functionality and a set of parameters

that help guiding the solution selection process. The

selection process is equivalent to a covering problem if a

common semantic domain is used.

Page 22: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

22

The Platform Concept

• Meet-in-the-Middle Structured

methodology

that limits the space of

exploration, yet achieves

good results in limited time

• A formal mechanism for

identifying the most critical

hand-off points in the

design chain

• A method for design re-use at

all abstraction levels

• An intellectual framework for

the complete electronic

design process!

Texas Instruments

OMAP

Platform

Design-Space

Export

Platform

Mapping

Architectural Space

Application Space

Application Instance

Platform Instance

Semantic PlatformPlatform

Platform

Design-Space

Export

Platform

Mapping

Architectural Space

Application Space

Application Instance

Platform Instance

Semantic PlatformPlatform

Page 23: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Definitions

• A platform is defined to be a library of components that

can be assembled to generate a design at that level of

abstraction.

• Each element of the library has a characterization in

terms of performance parameters together with the

functionality it can support. (Quantities)

Page 24: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Observation

• The platform is a parametrization of the space of

possible solutions.

• Not all elements in the library are pre-existing

components. Some may be “place holders" to indicate

the flexibility of “customizing" a part of the design that is

offered to the designer. For this part, we do not have a

complete characterization of the element since its

performance parameters depend upon a lower level of

abstraction.

24

Page 25: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Platform Instance

• A platform instance is a set of components that are

selected from the library (the platform) and whose

parameters are set. In the case of a virtual component,

the parameters are set by the requirements rather than

by the implementation. In this case, they have to be

considered as constraints for the next level of

refinement.

25

Page 26: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

26

Integrated Solutions Based On The EXREAL

PlatformTM

We provide integrated solutions based on LSI development platform, application platform and partnerships

Integrated Solution Platform

Integrated solutions including applied application (including

collaboration with users)

Deployment to platform for each application

Application Platform

Flexible Scalability

High Portability Heterogeneous Structure

Page 27: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Specification

Analysis

Develo

pm

en

t P

rocess

Buses Buses

Matlab CPUs Buses Operating

Systems

Behavior Components Virtual Architectural Components

C-Code

IPs

Dymola

ECU-1 ECU-2

ECU-3 Bus

f1 f2

f3

Behavior Platform

Mapping

Performance Analysis

Refinement

Evaluation of Architectural and Partitioning Alternatives

Implementation

Separation of Concerns (ca. 1990!)

Page 28: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

28

Platform-Based Design

• Platform: library of resources defining an abstraction layer

– Resources do contain virtual components i.e., place holders that will be customized in the implementation phase to meet constraints

– Very important resources are interconnections and communication protocols

Platform

Design-Space

Export

Platform

Mapping

Architectural Space Application Space

Application Instance

Platform Instance

Page 29: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

29

Fractal Nature of Design

Platform

Instance

Platform Design-

Space Export

Platform

(Architectural) Space

Platform

Instance

Function

Instance

Function

Space Mapped

Platform

(Architectural) Space Function

Space

Platform

Instance

Function

Instance

Mapped

Page 30: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

30

Platform-Based Implementation

•Platforms eliminate large loop iterations for affordable design

•Restrict design space via new forms of regularity and structure that

surrender some design potential for lower cost and first-pass success

•The number and location of intermediate platforms is the essence of

platform-based design

Silicon Implementation

Application

Silicon Implementation

Application

Page 31: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

31

Platform-Based Design Process

• Different situations will employ different intermediate platforms, hence

different layers of regularity and design-space constraints

• Critical step is defining intermediate platforms to support:

– Predictability: abstraction to facilitate higher-level optimization

– Verifiability: ability to ensure correctness

Architecture

Logic Regularity

Component Regularity and Reuse

Regular Fabrics

Geometrical Regularity Silicon Implementation

Page 32: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

32

Implementation Process

• Skipping platforms can potentially produce a superior design by

enlarging design space – if design-time and product volume ($) permits

• However, even for a large-step-across-platform flow there is a benefit to

having a lower-bound on what is achievable from predictable flow

Geometrical Regularity Silicon Implementation

Architecture

Logic Regularity

Component Regularity and Reuse

Regular Fabrics

Page 33: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

33

Tight Lower Bounds

• The larger the step across platforms, the more difficult to: predict

performance, optimize at system level, and provide a tight lower

bound

• Design space may actually be smaller than with smaller steps since

it is more difficult to explore and restriction on search impedes

complete design space exploration

• The predictions/abstractions may be so wrong that design

optimizations are misguided and the lower bounds are incorrect!

Page 34: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

34

Design Flow

• Theory:

– Initial intent captured with declarative notation

– Map into a set of interconnected component:

• Each component can be declarative or operational

• Interconnect is operational: describes how components interact

• Repeat on each component until implementation is reached

– Choice of model of computations for component and interaction is

already a design step!

Page 35: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

35

Consequences

• There is no difference between HW and SW. Decision comes later.

• HW/SW implementation depend on choice of component at the architecture platform level.

• Function/Architecture co-design happens at all levels of abstractions

– Each platform is an “architecture” since it is a library of usable components and interconnects. It can be designed independently of a particular behavior.

– Usable components can be considered as “containers”, i.e., they can support a set of behaviors.

– Mapping chooses one such behavior. A Platform Instance is a mapped behavior onto a platform.

– A fixed architecture with a programmable processor is a platform in this sense. A processor is indeed a collection of possible bahaviours.

– A SW implementation on a fixed architecture is a platform instance.

Page 36: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Platform Models for Model Based Development

Development of Distributed

System

Distributed System

Sign-Off!

Distributed System

Partitioning

Sub-System(s) Sign-Off!

Network Communicatio

n Protocol Sign-Off!

Virtual Integration of

Sub-System(s) w/ Network

Protocol, Test, and Validation

Sub-Systems Requirements

Sub-System(s) Integration, Test,

and Validation

Sub-System(s) Implementation

Models Sign-Off!

Distributed System

Requirements

Network Protocol Requirements

Sub-Systems Model Based Development

Platform

Abstraction

Page 37: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Control Architecture

Final implementation

Building Siting

Network Design

Mechanical and Electrical

Systems Architecture

Control Design

Mechanical and

Electrical Systems

Communication Latency

0

0.0002

0.0004

0.0006

0.0008

0.001

0.0012

0.0014

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Packet #

seco

nds No bitstuffing

Extact bit stuff.

worst-case

specifications

specifications

constraints

constraints

Program Research

Thrusts

• Choice of Layers

• Design

Flow/Methodology

• Co-simulation

Environment

• Pilot Studies

Courtesy UTC

specifications

PBD for Buildings: Systems of Systems Co-Design New design paradigms: Integrated multi-domain models analyzed in multiple levels topology ↔ mechanical/electrical systems ↔ multi-scale controls ↔ sensors + networks

37

Page 38: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Platform-Based Design enables architecture

exploration (tradeoff weight, stability, …)

The Problem: Unprecedented Power Requirements in Future Aircraft

Today

Power sources/sinks

Electric distribution

Control system

Complex, heterogeneous

system with multiple

overlapping time scales

# power sources ~10

# loads ~1000

peak power ~ 4MW

Future

Redesign

Power System

Architecture

Control System

Architecture

Hardware,

Software,

Communications

Incremental conservative design Steady state worst-case power draw 2x overdesign results in weight penalty

Dynamics

problems

identified in

verification

Comms

latency

impacts

stability

# power sources ~1

# loads ~100

peak power ~ 400kW

Courtesy: Hamilton Sundstram (UTC)

38

Dynamics, control, communication latency addressed in all layers

Robust design for distributed control system

Tools enable robust design of complex dynamical systems

Page 39: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

The Biologists Era: Search for workable devices, building substrates, and manufacturing strategies

DNA strands

Enzyme

Plenty of others….

E. coli

Proteins

• Exciting times again… Researchers intensely exploring broad

range of novel components (bio)

Beyond Microelectronics

Page 40: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Synthetic Biology with PBD: Specification, Design, and Assembly: Putting it all together 1. Decide on the general functionality

desired.

2. Specify the composition

of the devices and the

constraints on the system.

3. Design variations of the design,

assign theoretical parts to physical

samples, modify sequence, etc.

4. Send design to liquid handling robot

assembly workflows, capture

successes and failures as constraints

for future designs, and save

created devices.

Rule r4a(rp1 NOTWITH lr);

Note(r4a);

InduciblePromoter ip(“ACTGGT…”);

AntiRepressor ar(“CATGGT…”, “high”);

Terminator t(“GGTAAC…”, 99);

LyticReplicon lr(“CTTACC…”, 110);

40

Page 41: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Platform-based Design Environment for Synthetic Biological Systems Douglas Densmore (EECS), J.Christopher Anderson (Bioengineering), Alberto Sangiovanni-Vincentelli (EECS)

• Clotho is a design environment for the creation of biological systems from standardized biological parts.

• Composed of “views”, “connectors”, “interfaces” and “tools”

• iGEM 2008 and 2009 Winner “Best Software Tool” and Gold Medal.

• Alpha version available at biocad-server.eecs.berkeley.edu/wiki.

BioBricks

GSRC Annual Symposium

Clotho (Greek: Κλωθώ) — the

"spinner" — spun the threads of

life with her distaff to bring a being

into existence.

41

Page 42: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Platform Based Design for the Swarm!

© Alberto Sangiovanni-Vincentelli. All rights reserved. 42

Page 43: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

43

Power Train Design

Page 44: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

44

The Design Problem

Given a set of specifications from a car manufacturer,

– Find a set of algorithm to control the power train

– Implement the algorithms on a mixed mechanical-electrical

architecture (microprocessors, DSPs, ASICs, various sensors

and actuators)

Page 45: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

45

Power-train control system design

• Specifications given at a high level of abstraction

• Control algorithms design

• Mapping to different architectures using performance

estimation techniques and automatic code generation

from models

• Mechanical/Electronic architecture selected among a

set of candidates

Page 46: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

46

HW/SW implementation architecture

• a set of possible hw/sw implementations is given by – M different hw/sw implementation architectures

– for each hw/sw implementation architecture m {1,...,M},

• a set of hw/sw implementation parameters z

– e.g. CPU clock, task priorities, hardware frequency, etc.

• an admissible set XZ of values for z

mControllers Library

OSEK

RTOS

OSEK

COM I/O drivers & handlers

(> 20 configurable modules)

Application Programming Interface

Boot Loader

Sys. Config.

Transport

KWP 2000

CCP

Application

Specific

Software

Speedom

ete

r T

achom

ete

r W

ate

r tem

p.

Speedom

ete

r T

achom

ete

r O

dom

ete

r ---------------

Application Libraries

Customer Libraries

Page 47: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

47

The classical and the ideal design approach

• Classical approach (decoupled design)

– controller structure and parameters (r R, c XC)

• are selected in order to satisfy system specifications

– implementation architecture and parameters (m M, z XZ)

• are selected in order to minimize implementation cost

– if system specifications are not met, the design cycle is repeated

• Ideal approach

– both controller and architecture options (r, c, m, z) are selected at the

same time to

• minimize implementation cost

• satisfy system specifications

– too complex!!

Page 48: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

48

Platform i+1

Platform stack & design refinements

Platform Design-Space

Export

Platform Mapping

Refinement

Implementation Space

Application Space

Platform 4

Platform 3

Platform 2

Platform 1

implementation instance

application instance

plat.3 instance

plat.2 instance

Platform i

platform i instance

platform i+1 instance

Page 49: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

49

DE

SIG

N

Power-train System

Behavior

Power-train System Specifications

Functional

Decomposition

Capture System

Architecture

Electronic

System

Mapping

Operations

and Macro Architecture

Performance Back -

Annotation

HW and SW

Components

Implementation Components Verify Components

Functions

Capture Electronic

Architecture

HW/SW

partitioning

Design Mechanical

Components

Operation

Refinement

Capture

Electrical / Mechanical

Architecture

Partitioning and

Optimization Functional

Network

Operational

Architecture (ES)

Verify

Performance

A2

A

3

A4

A

5

Design Methodology

Page 50: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

50

Implementation abstraction layer • we introduce an implementation abstraction layer

– which exposes ONLY the implementation non-idealities that affect the

performance of the controlled plant, e.g. – control loop delay

– quantization error

– sample and hold error

– computation imprecision

• at the implementation abstraction layer, platform instances are

described by

– S different implementation architectures

– for each implementation architecture s {1,...,S},

• a set of implementation parameters p

– e.g. latency, quantization interval, computation errors, etc.

• an admissible set XP of values for p

Page 51: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

51

Platform Design-Space

Export

Platform Mapping

Platform stack & design refinements

Implementation Space

Application Space

Platform 2

Platform 1

platform 1 instance

Platform n

platform 2 instance

implementation instances

Refinement

functional layer

implementation abstraction layer

hw/sw implementation layer

implem. struc. & par. (s,p)

control struc. & par. (r,c)

(r,c,s,p)

hw/sw implementation struc & par. (m,z)

(r,c)

(s,p)

(r,c,s,p)

Page 52: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

52

Effects of controller implementation in the

controlled plant performance

d

Controller

y

Plant w u

r

w

r

u +

nu

+

+

nr

nw

• modeling of implementation non-idealities:

– u, r, w : time-domain perturbations

• control loop delays, sample & hold , etc.

– nu , nr , nw :value-domain perturbations

• quantization error, computation imprecision, etc.

Page 53: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

53

Output Devices Input devices

Hardware Platform

I O

Hardware

network

DUAL-CORE R

TO

S

BIOS

Device Drivers

Net

work

Com

munic

ati

on

DUAL-CORE

Architectural Space (Performance)

Application Space (Features)

Choosing an Implementation Architecture

Platform Instance

Application Instances

System

Platform

(no ISA)

Platform Design Space

Exploration

Platform

Specification

Platform API

Software Platform

Output Devices Input devices

Hardware Platform

I O

Hardware

network

HITACHI R

TO

S

BIOS

Device Drivers

Net

work

Com

munic

ati

on

HITACHI

RT

OS

BIOS

Device Drivers

Net

work

Com

munic

ati

on

Output Devices Input devices

Hardware Platform

I O

Hardware

network

ST10 R

TO

S

BIOS

Device Drivers

Net

wo

rk C

om

mu

nic

ati

on

ST10

Application Software

Application Software

Page 54: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

54

Application effort

First Application: 10 months Successive Application: 4 months

Application code (lines) Calibrations (Bytes)

Total Modified Total Modified

71,000 1,400 (2%) 28,000 20 Modifications due to compiler change

Device drivers SW(lines) Calibrations (Bytes)

Total Modified Total Modified

6000 1200 (20%) 1000 10 Modifications due to compiler change and new BIOS interface

Page 55: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Aircraft Electrical Power System (EPS) Design Problem

An EPS generates, regulates

and distributes electrical power

throughout the aircraft

An EPS is a complex

cyber-physical system that

needs to satisfy safety and

reliability requirements

Page 56: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Boing 767 Simplified Power System Schematic (Single-Line Drawing)

Power Sources AC Buses

AC Power Handling Switches

DC Buses

TRU DC Tie Bat Bus

BPCU GCU GCU

Page 57: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Challenges

Modeling

Heterogeneity

Mechanical, electrical and cyber components

Requirements represented in different forms

Multi-view (e.g., behavioral, structural, timing, power,

temperature, size and cost) modeling

Simulation

Semantic integration and co-simulation of different

models of computation

Simulation of large, complex systems

Verification

Ensuring the requirements and specifications are

satisfied

Page 58: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Example: Power Quality

• The aircraft electric power system shall provide power

with the following characteristics: 115 +/- 5 VRMS for AC

components and 28 +/- 2 VDC for DC components.

• Arithmetic (interval) inequalities on real numbers

110 120

26 30

LAC

LDC

V

V

Page 59: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Example: Reliability

• The failure probability for a primary load shall be smaller

than 10-9.

• Linear inequalities on probabilistic expressions

9

9

unpowered 10

unpowered 10

LAC

LDC

Page 60: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Example: Safety

• The BPCU shall monitor the status of all power sources: L-

Generators, R-Generators and APUs and actuate the

contactors within the SLD such that the AC buses are

powered according to the specified priorities, essential buses

are not unpowered for more than a specified amount of time

and no power sources are connected in parallel.

• Linear temporal logic

G{(LGEN = ON ∧ RGEN = ON) F (LBTB = OPEN ∨ RBTB =

OPEN)}

G{(LGEN = ON ∧ APU = ON) F (LBTB = OPEN)}

Page 61: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

Example: Priority

• L-AC Panel shall be powered according to the following

priority order: L-Generators, APUs and R-Generators.

• R-AC Panel shall be powered according to the following

priority order: R-Generators, APUs and L-Generators.

• Linear temporal logic

G{(LGEN = OFF ∧ APU = Available) F (LBTB =

CLOSED ∧ APU = ON)}

Page 62: EE249 Embedded System Design: Models, Validation … · Embedded System Design: Models, Validation and Synthesis – Methodology and Platform-Based Design ... “This scenario places

PBD of EPS Topology and Control