kieler ptolemy klepto

23
KIELER Ptolemy KlePto Executing SyncCharts with Ptolemy Christian Motika Real-Time Systems and Embedded Systems Group Department of Computer Science Christian-Albrechts-Universit ¨ at zu Kiel, Germany KIEL ER SYNCHRON Workshop 2010 Frej ´ us, 29.11.2010 Christian Motika Executing SyncCharts with Ptolemy 1 / 23

Upload: others

Post on 01-Oct-2021

23 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Executing SyncCharts with Ptolemy

Christian Motika

Real-Time Systems and Embedded Systems GroupDepartment of Computer Science

Christian-Albrechts-Universitat zu Kiel, Germany

KIELER

SYNCHRON Workshop 2010Frejus, 29.11.2010

Christian Motika Executing SyncCharts with Ptolemy 1 / 23

Page 2: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

KIELER Semiotics

Semiotics Pragmatics DynamicViews

AutomaticLayout

ViewManage-

ment

Semantics

CodeGen/ Sim

Ptolemy(KlePto)

UMLState

Machines

SynchronousC/Java

SCC

CEC

ExecutionManager

Syntax

UML

ActorOriented

Data Flow

SyncCharts

Christian Motika Executing SyncCharts with Ptolemy 2 / 23

Page 3: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Overview

I KIELER

I OverviewI SyncCharts

I Ptolemy

I Heterogenous ModelingI ModalModel and SR Domain

I KIELER leveraging Ptolemy

I Simulation ApproachI TransformationsI Eclipse Integration

I Summary

Christian Motika Executing SyncCharts with Ptolemy 3 / 23

Page 4: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

OverviewSyncCharts

What is KIELER?

I Kiel Integrated Environment for Layout Eclipse Rich Client

I Modeling platform and test bed

I Improve pragmatics

I Open source and Eclipse based (plug-ins)

I General concepts:

I Generic approachesI Symbiosis w/ Eclipse technologies (e.g., EMF, GMF, TMF,

Xpand, Xtend)I Interfaces to other tools (Ptolemy, Papyrus)

Christian Motika Executing SyncCharts with Ptolemy 4 / 23

Page 5: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

OverviewSyncCharts

SyncCharts

I Statechart dialect

I Mealy machine with

I Parallelism,hierarchy, compoundevents, broadcast

I Graphical notation for theEsterel synchronouslanguage

I Synchrony hypothesis

I Discrete ticksI Computations take

no time

Christian Motika Executing SyncCharts with Ptolemy 5 / 23

Page 6: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

OverviewSyncCharts

Abstract Syntax (EMF)

Christian Motika Executing SyncCharts with Ptolemy 6 / 23

Page 7: KIELER Ptolemy KlePto
Page 8: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Overview

I KIELER

I OverviewI SyncCharts

I Ptolemy

I Heterogenous ModelingI ModalModel and SR Domain

I KIELER leveraging Ptolemy

I Simulation ApproachI TransformationsI Eclipse Integration

I Summary

Christian Motika Executing SyncCharts with Ptolemy 8 / 23

Page 9: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Heterogenous ModelingModalModel and SR Domain

Ptolemy

I”The Ptolemy project studies heterogeneous modeling,simulation, and design of concurrent systems.“

Introduction to Ptolemy II, UC Berkeley

I Executable Models to describe behavior of reactive systems

I Ptolemy models are a set of interacting components →Actor-Oriented Design

I Constructed under a model of computation (MoC)

Christian Motika Executing SyncCharts with Ptolemy 9 / 23

Page 10: KIELER Ptolemy KlePto

Ptolemy Actor Example

Introduction to Ptolemy II, UC Berkeley, 2008

Page 11: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Heterogenous ModelingModalModel and SR Domain

Model of Computation

I Defines interaction of system components

I Semantics of a model

I Ptolemy Model can have more than one MoC

I MoC domains/directors:

I Process Networks (PN)I Continuous Time (CT)I Finite State Machines (FSM)I Synchronous Reactive (SR)I ...

Christian Motika Executing SyncCharts with Ptolemy 11 / 23

Page 12: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Heterogenous ModelingModalModel and SR Domain

ModalModel Domain

I Entities not actors but states

I Execution: Strictly orderedsequence of state transitions

I Build-in expression languageto evaluate guards

I Refinements (multiple)

I Reset and preemptivetransitions

Christian Motika Executing SyncCharts with Ptolemy 12 / 23

Page 13: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Heterogenous ModelingModalModel and SR Domain

Synchronous Reactive Domain

I Zero-Delay blocks

I Instantaneouscommunication

I Feedback

I Fixed point ⇔ Stable state

I Values from flat lattice

I Determinism⇔ Unique solution

Christian Motika Executing SyncCharts with Ptolemy 13 / 23

Page 14: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Overview

I KIELER

I OverviewI SyncCharts

I Ptolemy

I Heterogenous ModelingI ModalModel and SR Domain

I KIELER leveraging Ptolemy

I Simulation ApproachI TransformationsI Eclipse Integration

I Summary

Christian Motika Executing SyncCharts with Ptolemy 14 / 23

Page 15: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Simulation ApproachTransformationsEclipse Integration

Ptolemy Simulation Engine

I Mapping SyncCharts to Ptolemy:Mealy machine ↔ ModalModelOrthogonality ↔ Concurrent Actors (inherent)Hierarchy ↔ Compound Actors, state refinementsCompound events ↔ Expression language

I Interesting:

I Implicit broadcast vs. explicit signal representationI Signal coherence (must/cannot analysis)I Transition prioritiesI Normal termination

Christian Motika Executing SyncCharts with Ptolemy 15 / 23

Page 16: KIELER Ptolemy KlePto

Transformation Example: Parallelism and Signals

Page 17: KIELER Ptolemy KlePto

Transformation Example: Hierarchy

Page 18: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Simulation ApproachTransformationsEclipse Integration

Schematic Overview

PtolemyMM

SyncChartsMM SyncChartModel

Xtend M2M

SyncChart 2 PtolemyXtend

PtolemyModel

Execution Manager

M2M description

produce

load & execute

commands,model inputs

simulation data,model outputs

metamodels model to simulate

Ptolemy Simulator

Data Observer

Data Producer

Christian Motika Executing SyncCharts with Ptolemy 18 / 23

Page 19: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Simulation ApproachTransformationsEclipse Integration

Architecture and User Interface

Execution Manager Runtime

Java Simulator

Data Producer/Observer

Generic Simulator

Data Producer/Observer

Ptolemy II

Environment Visualization

Data Observer

Model FeedbackVisualization

Data Observer

RecordedTrace Player

Data Producer

TCP/IP Interface

Data Producer/Observer

External Appl.

Christian Motika Executing SyncCharts with Ptolemy 19 / 23

Page 20: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

Simulation ApproachTransformationsEclipse Integration

KIELER KlePto Simulation Demo

LIVE DEMO

Christian Motika Executing SyncCharts with Ptolemy 20 / 23

Page 21: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

SummaryTo Go FurtherThe End

Summary

I KIELER

I Ptolemy

I KIELER leveraging Ptolemy

I KlePto conceptI Construct runnable Ptolemy models for EMF based models

(Xtend)I Ptolemy integration in EclipseI Infrastructure for interactive model executionI Also: Visualization, stepwise transformation, model

checking, online debugging, regression tests, validation, ...

Christian Motika Executing SyncCharts with Ptolemy 21 / 23

Page 22: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

SummaryTo Go FurtherThe End

To Go FurtherANDRE, C.

Computing SyncCharts reactions.

In SLAP 2003: Synchronous Languages, Applications and Programming, ASatellite Workshop of ECRST 2003 (2004), vol. 88, pp. 3 – 19.

MOTIKA, C., FUHRMANN, H., AND VON HANXLEDEN, R.

Semantics and execution of domain specific models.

In 2nd Workshop Methodische Entwicklung von Modellierungswerkzeugen(MEMWe 2010) at conference INFORMATIK 2010 (Leipzig, Germany, Sept.2010), GI-Edition – Lecture Notes in Informatics (LNI), Bonner Kollen Verlag.

UC BERKELEY, EECS DEPT.

Ptolemy webpage.

http://ptolemy.eecs.berkeley.edu/.

UNI KIEL, REAL-TIME AND EMBEDDED SYSTEMS GROUP.

KIELER webpage.

http://www.informatik.uni-kiel.de/en/rtsys/kieler/.

Christian Motika Executing SyncCharts with Ptolemy 22 / 23

Page 23: KIELER Ptolemy KlePto

KIELERPtolemy

KlePto

SummaryTo Go FurtherThe End

Thank you for your attention andparticipation!

Any questions or suggestions?

[4] [3] [2] [1]

Christian Motika Executing SyncCharts with Ptolemy 23 / 23