Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

21
Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France S-Y. Lee, F. Mallet , R. de Simone

description

Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France S-Y. Lee, F. Mallet , R. de Simone. Introduction. AADL. MARTE for AADL. Conclusion. Motivation. Allocation of heterogeneous applications on to heterogeneous execution platforms - PowerPoint PPT Presentation

Transcript of Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

Page 1: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

Dealing with AADL End-to-end Flow Latency in UML MARTE

AOSTE INRIA/I3SSophia Antipolis, France

S-Y. Lee, F. Mallet, R. de Simone

Page 2: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

2

Motivation Allocation of heterogeneous applications on to

heterogeneous execution platforms The execution platform may be speculative (Y-chart) May explore several platforms for a single application

Early analysis (end-to-end flow latency) requires Combined models of the applications, execution

platforms AND of the allocation AADL and MARTE have this ability

MARTE is more general Some specific AADL constructs require a special

attention to find equivalences in MARTE

IntroductionIntroduction AADL MARTE for AADL Conclusion

Page 3: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

3

AADL Architecture Analysis & Design Language

Avionics/Automotive standard from Society of Automotive Engineers.

Design & Analysis of performance-critical RT systems Application/Software Components

Thread, Thread Group, Process, Subprogram Execution Platform Components

Bus, Device, Processor, Memory Binding

Bind Application onto Execution Platform

IntroductionIntroduction AADL MARTE for AADL Conclusion

Page 4: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

4

MARTE OMG UML2 Profile for Modeling and Analysis of

Real-Time and Embedded systems OMG Adopted Specification (ptc/07-08-04) => FTF

Time Define a Timed Causality Model for UML Broad enough to cover several Models of Computation

(exercise: Model AADL MoCC) Allocation sub-profiles

Describe various possible allocations (and their costs) Time analysis needs to cope with communication costs

and context switching costs, etc.

IntroductionIntroduction AADL MARTE for AADL Conclusion

Page 5: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

5

MARTE OMG UML2 Profile for Modeling and Analysis of

Real-Time and Embedded systems OMG Adopted Specification (ptc/07-08-04) => FTF

Time Define a Timed Causality Model for UML Broad enough to cover several Models of Computation

(exercise: Model AADL MoCC) Allocation sub-profiles

Describe various possible allocations (and their costs) Time analysis needs to cope with communication costs

and context switching costs, etc.

IntroductionIntroduction AADL MARTE for AADL Conclusion

Page 6: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

6

Our contribution How to represent, in MARTE, AADL constructs

amenable to end-to-end flow latency analysis ? Address examples from Feiler & Hansson

(Technical Note CMU/SEI-2007-TN-010, June 2007)

Previous contribution on immediate/delayed data communications (Embedded Systems Specification and Design Languages, chapter 11, Springer, March 2008)

Today, focus on How to mix data-driven and event-based communications Lots of applications in automotive with protocols like

FlexRay

IntroductionIntroduction AADL MARTE for AADL Conclusion

Page 7: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

7

An example in AADLExecutionPlatform

Device (sensor)ExecutionPlatformDevice (actuator)

SoftwareThread

Event-data port (message-passing, queues)

Event port (queues)

Data port (no queue)

SoftwarePeriodic Thread

Delayed communication immediate

Mix of Execution Platform and Software Case-based definition of the underlying Model of Computation and Communication (MoCC)

Introduction AADLAADL MARTE for AADL Conclusion

Page 8: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

8

Delayed Communications

Latched communication: classical in EDA

T1

T2

f1=q1*ff2=q2*f

Introduction AADLAADL MARTE for AADL Conclusion

Page 9: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

9

Immediate Communications

Instantaneous communications

T1

T2

f1=q1*ff2=q2*f

Introduction AADLAADL MARTE for AADL Conclusion

Page 10: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

10

Causality problems

To be deterministic, one must Perform clock computations Define a schedule Compute a Fix-point

How to deal with the causality problems ? Synchronous languages !

Introduction AADLAADL MARTE for AADL Conclusion

Page 11: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

11

A simple sketch hides a complex model

Most of the model is hidden as text in AADL

Introduction AADLAADL MARTE for AADL Conclusion

Page 12: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

12

Summary of Issues (and solutions) Mix of Execution Platform and Software

Separate them, use Allocation to associate costs Case-based definition of the underlying Model of

Computation and Communication (MoCC) Make It Explicit

Do not deal with the causality problems Use well-known solutions … from synchronous languages

Most of the model is hidden as text Make the time a first-class citizen

Introduction AADLAADL MARTE for AADL Conclusion

Page 13: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

13

UML and MARTE Application (pure causal/untimed relations)

UML Activity Diagrams

Different queuing policies (event, event-data, data) ?

With queues (event or event-data)and selection policy if needed (All Items?)

Without queues (data)

Introduction AADL MARTE for AADLMARTE for AADL Conclusion

Page 14: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

14

UML and MARTE Software Resources (OS, middleware, …)

UML Composite Structure Diagrams

MARTE Library for AADL

Introduction AADL MARTE for AADLMARTE for AADL Conclusion

Page 15: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

15

UML and MARTE Execution platform

Composite Structure Diagrams

MARTE Library for AADL

Introduction AADL MARTE for AADLMARTE for AADL Conclusion

Page 16: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

16

Allocation in MARTEIntroduction AADL MARTE for AADLMARTE for AADL Conclusion

Page 17: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

17

MoCCs with MARTE Overall only two different kinds of communications

in AADL Dataflow

Event-data ports + Aperiodic threads Data ports + immediateperiodic threads

t1.finish alternatesWith t2.start

Introduction AADL MARTE for AADLMARTE for AADL Conclusion

T1

T2

Page 18: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

18

MoCCs with MARTE Overall only two different kinds of communications

in AADL Sampled

Data ports + Delayed + Periodic threads Data ports + immediatePeriodic (oversampling) threads

Introduction AADL MARTE for AADLMARTE for AADL Conclusion

T1

T2t2.start = t1.finish sampledTo ^t2

Page 19: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

19

Clock Constraint Specification LanguageIntroduction AADL MARTE for AADLMARTE for AADL Conclusion

Page 20: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

20

Timing analysis resultsUML Timing Diagrams

Introduction AADL MARTE for AADLMARTE for AADL Conclusion

Page 21: Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I3S Sophia Antipolis, France

21

Conclusion MARTE is under finalization by FTF MARTE annex A

Guidelines about AADL and East-ADL2 (AutoSAR) MARTE as a language to support MoCC definition

Give a Timed Causality Model to UML AADL may benefit from using MARTE as a front-

end Reuse all existing UML tools with support teams MARTE may require some adaptations to ease the

work of designers used to AADL

Introduction AADL MARTE for AADL ConclusionConclusion