heterogeneous systems and multi-paradigm...

24
ModHel'X Heterogeneous Systems and Multi-Paradigm Modeling E3S Supelec Systems Science Cécile Hardebolle , Frédéric Boulanger, Christophe Jacquet

Upload: others

Post on 14-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

ModHel'X

Heterogeneous Systems and Multi-Paradigm Modeling

E3S Supelec Systems Science

Cécile Hardebolle, Frédéric Boulanger, Christophe Jacquet

Page 2: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Who are we?

1-mai-12 Heterogeneous Systems and Multi-Paradigm Modeling 2

}  Supélec = leading engineering school (“Grande Ecole”) in information sciences and energy

}  Degree courses: 460 students graduating each year (engineering diploma) }  Continuing education }  Research & development: Supélec Systems Science (E3S)

(automatic control, signal processing, radio communications, electromagnetism, power systems, computer science)

}  Department of Computer Science = research & education department

}  Personalization: adaptive hypermedia, guided web queries (4 + 4 PhD students) }  Optimization of high-performance networks (2 + 2 PhD students) }  Modeling techniques for heterogeneous systems (6 + 4 PhD students)

Recruiting now!

Page 3: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Questions

1-mai-12 Heterogeneous Systems and Multi-Paradigm Modeling 3

①  What is heterogeneity?

Page 4: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Heterogeneity at the system level

1-mai-12 Heterogeneous Systems and Multi-Paradigm Modeling 4

Control systems

Mechanics, aerodynamics

Sensors/actuators

Software platforms

Hardware platforms

Networks

Electronics

Energy

Physical world

Page 5: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

}  Combination of components of different natures (signal processing, electronics, control...) }  Composition of models

}  Several abstraction levels }  Refinement of models

}  Orthogonal points of view }  Models of functional and

extra-functional properties/behavior

}  Different activities and goals during a project }  Models for different kind of analysis

spécification

conception

implémentation

vérification & tests

validation spécification

conception

implémentation

vérification & tests

validation

≠ « domains »

Heterogeneity at the model level

1-mai-12 5

specification

design

implementation

verification & tests

validation

≠ activities

Heterogeneous Systems and Multi-Paradigm Modeling

specification

design

implementation

verification & tests

validation

≠ abstraction levels

≠ views

Page 6: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Heterogeneity in ModHel'X

1-mai-12 6

}  Focus on the heterogeneity of the components of a system: }  Heterogeneous components ➡ heterogeneous design paradigms }  Interaction among components + environment ➡ model composition

}  The problem we try to address =

}  Experimental platform = ModHel'X

Heterogeneous Systems and Multi-Paradigm Modeling

How to compose models that are written using different modeling languages in order to be able to reason globally

on a system under design?

Page 7: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

The power window example

1-mai-12 7

Controller

AUTO

Switch

Window

Bus

Discrete Events (DE) model

Timed FSM (TFSM) model

Synchronous Dataflow

(SDF) model

Heterogeneous Systems and Multi-Paradigm Modeling

Or Continuous Time (CT) model

Page 8: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Questions

1-mai-12 Heterogeneous Systems and Multi-Paradigm Modeling 8

①  What is heterogeneity? ②  How to represent a modeling paradigm in a form

that is “composable”?

Page 9: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Model of Computation

1-mai-12

}  Represents the semantics of a modeling language }  Provides the rules for interpreting a model

u

v A B

u

v

A B

9

CSP FSM

Heterogeneous Systems and Multi-Paradigm Modeling

?

u

v

A B

Page 10: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Model = structure + MoC

1-mai-12 10

}  The structure of a model is a set of interconnected blocks (black boxes)

}  A MoC is used to provide an interpretation (semantics) of that structure

Heterogeneous Systems and Multi-Paradigm Modeling

DE

AUTO

WCmd

Controller Switch Window

WEnd ctrlWCmd

ctrlWEnd

UCmd ctrlUCmd

Page 11: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

MoCs currently available in ModHel'X

1-mai-12

}  Discrete Events (DE) }  Exchange of events⟨value, date⟩ }  ≈ Network messages

}  Synchronous Data Flow (SDF) }  Flows of sampled data }  Multi sample rate }  ≈ Simulink block diagrams

}  Timed Finite State Machines (TFSM) [+ FSM + *Charts] }  Timed transitions: “after(T)” }  ≈ very simplified UML's Stateflow

}  Petrinets

11 Heterogeneous Systems and Multi-Paradigm Modeling

Page 12: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

The power window example (again)

1-mai-12 12

Controller

AUTO

Switch

Window

Bus

Discrete Events (DE) model

Timed FSM (TFSM) model

Synchronous Dataflow

(SDF) model

Composition? Composition?

Heterogeneous Systems and Multi-Paradigm Modeling

Or Continuous Time (CT) model

Page 13: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Questions

1-mai-12 Heterogeneous Systems and Multi-Paradigm Modeling 13

①  What is heterogeneity? ②  How to represent a modeling paradigm in a form

that is “composable”? ③  How to compose models that use different

modeling paradigms?

Page 14: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Composition of heterogeneous models

1-mai-12 14 Heterogeneous Systems and Multi-Paradigm Modeling

DE

AUTO

WCmd

Controller Switch Window

WEnd ctrlWCmd

ctrlWEnd

UCmd ctrlUCmd

Extract of the model of the window: up mode with up endstop detection

SDF

> height

EndStop

Position

× torque

Torque

Composition?

Page 15: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

}  “Interface blocks” are used to embed a model into a block ➡ Support for heterogeneity through hierarchy

Composition of heterogeneous models

1-mai-12 15 Heterogeneous Systems and Multi-Paradigm Modeling

WCmd

Window (InterfaceBlock)

SDF

> height

EndStop

Position

× torque

Torque

AUTO

Controller Switch

ctrlWEnd

UCmd ctrlUCmd

DE

WEnd ctrlWCmd

Adaptation

Extract of the model of the window: up mode with up endstop detection

Page 16: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

inputs

What is adaptation?

1-mai-12 16

}  Adaptation of data }  Forms }  Values

}  Adaptation of control flow }  “Moments” at which

“things” happen

}  Adaptation of time notions }  Time scales }  Time forms (seconds,

revolutions, centimeters…)

Heterogeneous Systems and Multi-Paradigm Modeling

DE Control

SDF Control

WCmd

Window (InterfaceBlock)

WEnd

T T T

valueX

dateX

T

DE Events

SDF data flows

valueY

dateY

outputs

Page 17: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Outline

1-mai-12 Heterogeneous Systems and Multi-Paradigm Modeling 17

①  What is heterogeneity? ②  How to represent a modeling paradigm in a form

that is “composable”? ③  How to compose models that use different

modeling paradigms? ④  What is the benefit of modeling the adaptation explicitly

and apart from the models?

Page 18: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

The window model in PtolemyII

1-mai-12 Heterogeneous Systems and Multi-Paradigm Modeling 18

DE

WCmd

Window (InterfaceBlock)

WEnd

SDF

> height

EndStop

Position

× torque

Torque

Model of the window in “open loop”: up mode with

up endstop detection

Page 19: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

The window model in PtolemyII

1-mai-12 Heterogeneous Systems and Multi-Paradigm Modeling 19

}  Default adaptation: }  The SDF model reacts only when events are processed in DE }  DE events are produced in the DE model each time the SDF model reacts

}  Changing the adaptation means modifying one of the two models

Events in DE Flows in SDF SDF model not regularly sampled…

Redundant events in DE…

Page 20: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Adapted model in PtolemyII

1-mai-12 Heterogeneous Systems and Multi-Paradigm Modeling 20

Events in DE Flows in SDF

Works but the original model has been modified…

Page 21: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Questions

1-mai-12 Heterogeneous Systems and Multi-Paradigm Modeling 21

①  What is heterogeneity? ②  How to represent a modeling paradigm in a form

that is “composable”? ③  How to compose models that use different

modeling paradigms? ④  What is the benefit of modeling the adaptation explicitly

and apart from the models?

Page 22: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Key points

1-mai-12

}  Our approach: }  Models of Computation (MoCs) for representing the semantics

of design paradigms }  Semantic adaptation for composing heterogeneous models

using hierarchy

}  Goals of ModHel'X: }  Extensible set of MoCs }  Explicit, customizable and modular semantic adaptation between

hierarchical models

22 Heterogeneous Systems and Multi-Paradigm Modeling

Page 23: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm

Current research directions

1-mai-12 23

}  Modeling MoCs }  Imperative form ➡ execution }  Declarative form ➡ verification & validation }  Variants of a MoC? Reusability of (parts of) a model of a MoC?

}  Modeling Semantic Adaptation }  Clock calculus to describe adaptation of time and control

(extension of CCSL) }  Language to describe adaptation of data }  Patterns of adaptation

}  Multi-view modeling

}  Beyond heterogeneous model simulation: test, code generation, model checking…

Heterogeneous Systems and Multi-Paradigm Modeling

Page 24: Heterogeneous Systems and Multi-Paradigm …wdi.supelec.fr/software/downloads/ModHelX/HetSysMPM2012.pdfHeterogeneity at the system level 4 Heterogeneous Systems and Multi-Paradigm