c. andré, j. boucaron, a. coadou, j. deantoni , b. ferrero, f. mallet, r. de simone

28
MARTE/CCSL, TimeSquare & K-Passa A design platform using MoCCs for embedded model-based engineering C. André, J. Boucaron, A. Coadou, J. DeAntoni , B. Ferrero, F. Mallet, R. de Simone AOSTE Project INRIA/I3S Sophia Antipolis, France

Upload: damisi

Post on 15-Jan-2016

25 views

Category:

Documents


0 download

DESCRIPTION

MARTE/CCSL, TimeSquare & K-Passa A design platform using MoCCs for embedded model-based engineering. C. André, J. Boucaron, A. Coadou, J. DeAntoni , B. Ferrero, F. Mallet, R. de Simone AOSTE Project INRIA/I3S Sophia Antipolis, France. Context. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

MARTE/CCSL,TimeSquare & K-PassaA design platform using MoCCs for

embedded model-based engineering

C. André, J. Boucaron, A. Coadou, J. DeAntoni, B. Ferrero, F. Mallet, R. de Simone

AOSTE Project INRIA/I3SSophia Antipolis, France

Page 2: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

2

Context

Modeling environments for real-time embedded and distributed systems

Page 3: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

3

Context

Modeling environments for real-time embedded and distributed systems

Conceptual diagrammatic representations Structural

Components / interactions Dynamics/Behavior

Page 4: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

4

Context

Modeling environments for real-time embedded and distributed systems

Conceptual diagrammatic representations Structural

Components / interactions Dynamics/Behavior of individual

components State-based control flow Activity-based data flow Constrained programs with “same”

expressivity

Page 5: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

5

Context

Modeling environments for real-time embedded and distributed systems

Conceptual diagrammatic representations Structural

Components / interactions Dynamics/Behavior of individual components

State-based control flow Activity-based data flow Constrained programs with “same” expressivity

Dynamics/Behavior of system results from combining component behaviors

according to structure

Page 6: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

6

Example of architecture modeling

Platform-Based Software Design Flow for Heterogeneous MPSoCK. POPOVICI, X. GUERIN, F. ROUSSEAU, P. S. PAOLUCCI, A. JERRAYAACM Transactions on Embedded Computing Systems, Vol. 7, No. 4, Article 39, Publication date: July 2008.

Structure

Behavior

Page 7: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

7

Example of architecture modeling

Platform-Based Software Design Flow for Heterogeneous MPSoCK. POPOVICI, X. GUERIN, F. ROUSSEAU, P. S. PAOLUCCI, A. JERRAYAACM Transactions on Embedded Computing Systems, Vol. 7, No. 4, Article 39, Publication date: July 2008.

Structure

Behavior

Page 8: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

8

Example of architecture modeling

Platform-Based Software Design Flow for Heterogeneous MPSoCK. POPOVICI, X. GUERIN, F. ROUSSEAU, P. S. PAOLUCCI, A. JERRAYAACM Transactions on Embedded Computing Systems, Vol. 7, No. 4, Article 39, Publication date: July 2008.

Structure

Behavior

Elaboration phase (SystemC)

Simulation

Page 9: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

9

Traditional component approach

Structure Black-box + Interfaces (Ports, Data Types)

Behavioral abstraction Messages + possibly period and

performance requirements

What we find missing: Detailed definition of timing and

synchronization properties Communication protocol requirements

This missing information is often deported elsewhere

Page 10: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

10

Traditional component approach

Structure Black-box + Interfaces (Ports, Data Types)

Behavioral abstraction Messages + possibly period and performance

requirements

What we find missing: Detailed definition of timing and

synchronization properties Communication protocol requirements

This missing information is often deported elsewhere

Page 11: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

11

Time & Semantics

Logical functional time Functional: sequence of

reaction steps Multiple times (local /

global) Synchronization

primitives → constraints between local activation times

Synthesis / Compilation

Process networks (SDF), synchronous reactive formalisms, statecharts

“physical” time Extra functional

Single time (total order)

Timing constraints to be satisfied at execution

Simulation semantics possibly different from synthesis

UML, SystemC

Page 12: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

12

Time & Semantics

Logical functional time Functional: sequence of

reaction steps Multiple times (local /

global) Synchronization

primitives → constraints between local activation times

Synthesis / Compilation

Process networks (SDF), synchronous reactive formalisms, statecharts

“physical” time Extra functional

Single time (total order)

Timing constraints to be satisfied at execution

Simulation semantics possibly different from synthesis

UML, SystemCHDLs

Page 13: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

13

Semantics

Logical functional time Functional: sequence of

reaction steps Multiple times (local /

global) Synchronization

primitives → constraints between local activation times

Synthesis / Compilation

Process networks (SDF), synchronous reactive formalisms, statecharts

“physical” time Extra functional

Single time (total order)

Timing constraints to be satisfied at execution

Simulation semantics possibly different from synthesis

UML, SystemC

Our choice

Page 14: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

14

MARTE: Time model and CCSL

MARTE = Modeling and Analysis of Real-Time and Embedded systems OMG UML profile (adopted June 2009) Time subprofile (defined by us)

Rich but well-defined variety of time notions (logical/physical, discrete/dense, …)

Clocks can be explicitly attached to most UML model elements → timed semantics

Clock Constraint Specification Language (CCSL)

Various constraints on clocks (synchronous, asynchronous, mixed)

Precise formal semantics

Page 15: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

15

Why CCSL?

Polychronous system modeling Specification of sophisticated

synchronizations Notation to describe semantic relations

between timed behaviors (illustrated below)

Means to define formally timed Models of Computations and Communications (MoCCs)

Akin to Tagged Systems (Lee & Sangiovanni-Vincentelli)

Page 16: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

16

Why CCSL?

Means to define formally timed Models of Computations and Communications (MoCCs) In the sequel, we translate a MoCC as UML

models + CCSL specifications The chosen MoCC is SDF (weighted event

graphs) models

Page 17: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

17

Synchronous DataFlow

Nodes are called actors Input/Output have a weight

(Number of data samples consumed/produced)

Arcs have a delay

SDF Meta-model

incoming

dest

src

Page 18: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

18

Synchronous DataFlow

Actor enabling = each incoming arc carries at least weight tokens

Actor execution = atomic consumption/production of tokens by an enabled actor i.e., consume weight tokens on each

incoming arcs and produce weight tokens on each outgoing arc

Delay is an initial token load on an arc.

SDF firing rules:

How can CCSL express this semantics?

Page 19: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

19

SDF Example

A A BA AC C

BStatic schedule:

Evolutions of the model

Page 20: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

20

How to model SDF graphs in UML ?

Is that compatible with the UML semantics ?

CCSL makes the semantics explicit … … within the model

Page 21: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

21

SDF semantics with CCSL (1/2)

SDF Actor A

Token T

Input i

Output o

CCSL Clock A;

Clock write, read; Var delay:int;

Var weight:int;

Var weight:int;

Page 22: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

22

SDF semantics with CCSL (2/2)

SDF

CCSL

Page 23: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

23

Example

Page 24: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

24

TimeSquare

Page 25: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

25

AOSTE’s Tools

TimeSquare Software environment dedicated to the

Specification of CCSL constraints Resolution of CCSL constraints Simulation and generation of trace model Animation of UML models Exploration of augmented timing diagrams

K-Passa Computation of static schedules for specific MoCCs

Marked Graphs, Synchronous DataFlow, Latency-Insensitive Designs, K-periodical Routed Graphs

Analysis (deadlock freeness, safety) Optimization (latency, throughput, interconnect buffer size) Code generation (stand-alone simulator)

Page 26: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

26

K-Passa

Page 27: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

27

Tool download

http://www-sop.inria.fr/aoste/

Page 28: C. André, J. Boucaron, A. Coadou,  J. DeAntoni ,  B. Ferrero, F. Mallet, R. de Simone

Thank you All