Dealing with AADL Endtoend Flow Latency in UML

  • Slides: 21
Download presentation
Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I 3 S Sophia

Dealing with AADL End-to-end Flow Latency in UML MARTE AOSTE INRIA/I 3 S 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

Introduction AADL MARTE for AADL Conclusion Motivation Allocation of heterogeneous applications on to heterogeneous execution platforms Early analysis (end-to-end flow latency) requires The execution platform may be speculative (Y-chart) May explore several platforms for a single application 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 2

Introduction AADL MARTE for AADL Conclusion AADL Architecture Analysis & Design Language Avionics/Automotive standard

Introduction AADL MARTE for AADL Conclusion AADL Architecture Analysis & Design Language Avionics/Automotive standard from Society of Automotive Engineers. Design & Analysis of performance-critical RT systems Application/Software Components Execution Platform Components Thread, Thread Group, Process, Subprogram Bus, Device, Processor, Memory Binding Bind Application onto Execution Platform 3

Introduction AADL MARTE for AADL Conclusion MARTE OMG UML 2 Profile for Modeling and

Introduction AADL MARTE for AADL Conclusion MARTE OMG UML 2 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 Mo. CC) Allocation sub-profiles Describe various possible allocations (and their costs) Time analysis needs to cope with communication costs 4 and context switching costs, etc.

Introduction AADL MARTE for AADL Conclusion MARTE OMG UML 2 Profile for Modeling and

Introduction AADL MARTE for AADL Conclusion MARTE OMG UML 2 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 Mo. CC) Allocation sub-profiles Describe various possible allocations (and their costs) Time analysis needs to cope with communication costs 5 and context switching costs, etc.

Introduction AADL MARTE for AADL Conclusion Our contribution How to represent, in MARTE, AADL

Introduction AADL MARTE for AADL Conclusion Our contribution How to represent, in MARTE, AADL constructs amenable to end-to-end flow latency analysis ? Address examples from Feiler & Hansson Previous contribution on immediate/delayed data communications (Embedded Systems Specification and Design Languages, (Technical Note CMU/SEI-2007 -TN-010, June 2007) 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 Flex. Ray 6

Introduction AADL MARTE for AADL Conclusion An example in AADL Execution. Platform Device (sensor)

Introduction AADL MARTE for AADL Conclusion An example in AADL Execution. Platform Device (sensor) Software Thread Execution. Platform Device (actuator) Event-data port (message-passing, queues) Event port (queues) Mix of Execution Platform and Software Case-based definition of the underlying Model of Computation and Communication (Mo. CC) Delayed communication immediate Data port (no queue) Software Periodic Thread 7

Introduction AADL MARTE for AADL Conclusion Delayed Communications f 1=q 1*f f 2=q 2*f

Introduction AADL MARTE for AADL Conclusion Delayed Communications f 1=q 1*f f 2=q 2*f T 1 T 2 Latched communication: classical in EDA 8

Introduction AADL MARTE for AADL Conclusion Immediate Communications f 1=q 1*f f 2=q 2*f

Introduction AADL MARTE for AADL Conclusion Immediate Communications f 1=q 1*f f 2=q 2*f T 1 T 2 Instantaneous communications 9

Introduction AADL MARTE for AADL Conclusion Causality problems To be deterministic, one must Ø

Introduction AADL MARTE for AADL Conclusion 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 ! 10

Introduction AADL MARTE for AADL Conclusion A simple sketch hides a complex model Most

Introduction AADL MARTE for AADL Conclusion A simple sketch hides a complex model Most of the model is hidden as text in AADL 11

Introduction AADL MARTE for AADL Conclusion Summary of Issues (and solutions) Mix of Execution

Introduction AADL MARTE for AADL Conclusion Summary of Issues (and solutions) Mix of Execution Platform and Software Case-based definition of the underlying Model of Computation and Communication (Mo. CC) Make It Explicit Do not deal with the causality problems Separate them, use Allocation to associate costs Use well-known solutions … from synchronous languages Most of the model is hidden as text Make the time a first-class citizen 12

Introduction AADL MARTE for AADL Conclusion UML and MARTE Application (pure causal/untimed relations) UML

Introduction AADL MARTE for AADL Conclusion 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) 13

Introduction AADL MARTE for AADL Conclusion UML and MARTE Software Resources (OS, middleware, …)

Introduction AADL MARTE for AADL Conclusion UML and MARTE Software Resources (OS, middleware, …) UML Composite Structure Diagrams MARTE Library for AADL 14

Introduction AADL MARTE for AADL Conclusion UML and MARTE Execution platform Composite Structure Diagrams

Introduction AADL MARTE for AADL Conclusion UML and MARTE Execution platform Composite Structure Diagrams MARTE Library for AADL 15

Introduction AADL MARTE for AADL Conclusion Allocation in MARTE 16

Introduction AADL MARTE for AADL Conclusion Allocation in MARTE 16

Introduction AADL MARTE for AADL Conclusion Mo. CCs with MARTE Overall only two different

Introduction AADL MARTE for AADL Conclusion Mo. CCs with MARTE Overall only two different kinds of communications in AADL Dataflow Event-data ports + Aperiodic threads Data ports + immediate periodic threads T 1 t 1. finish alternates. With t 2. start T 2 17

Introduction AADL MARTE for AADL Conclusion Mo. CCs with MARTE Overall only two different

Introduction AADL MARTE for AADL Conclusion Mo. CCs with MARTE Overall only two different kinds of communications in AADL Sampled Data ports + Delayed + Periodic threads Data ports + immediate Periodic (oversampling) threads T 1 T 2 t 2. start = t 1. finish sampled. To ^t 2 18

Introduction AADL MARTE for AADL Conclusion Clock Constraint Specification Language 19

Introduction AADL MARTE for AADL Conclusion Clock Constraint Specification Language 19

Introduction AADL MARTE for AADL Conclusion Timing analysis results UML Timing Diagrams 20

Introduction AADL MARTE for AADL Conclusion Timing analysis results UML Timing Diagrams 20

Introduction AADL MARTE for AADL Conclusion MARTE is under finalization by FTF MARTE annex

Introduction AADL MARTE for AADL Conclusion MARTE is under finalization by FTF MARTE annex A MARTE as a language to support Mo. CC definition Guidelines about AADL and East-ADL 2 (Auto. SAR) Give a Timed Causality Model to UML AADL may benefit from using MARTE as a frontend Reuse all existing UML tools with support teams MARTE may require some adaptations to ease the work of designers used to AADL 21