AADL Inspector Tutorial. ACVI Workshop, Valencia September 29th, Pierre Dissaux. Ellidiss. Technologies w w w. e l l i d i s s.

Similar documents
Model Editing & Processing Tools. AADL Committee, San Diego February 4th, Pierre Dissaux. Ellidiss. Technologies w w w. e l l i d i s s.

AADL Tools & Technology. AADL committee 22 April Pierre Dissaux. Ellidiss. T e c h n o l o g i e s. w w w. e l l i d i s s.

Executable AADL. Real Time Simulation of AADL Models. Pierre Dissaux 1, Olivier Marc 2.

HOOD, STOOD and AADL. Ada Europe, Valencia June 2010

Presentation of the AADL: Architecture Analysis and Design Language

UML&AADL 11 An Implementation of the Behavior Annex in the AADL-toolset OSATE2

Presentation of the AADL: Architecture Analysis and Design Language

AADL committee, Valencia October 2 nd, Pierre Dissaux (Ellidiss) Maxime Perrotin (ESA)

AADL performance analysis with Cheddar : a review

Update on AADLInspector and Cheddar : new interface and multiprocessors analysis

Model Verification: Return of experience

AADL resource requirements analysis with Cheddar F. Singhoff, J. Legrand, L. Nana University of Brest, France LYSIC/EA 3883

SAE Architecture Analysis and Design Language. AS-2C ADL Subcommittee Meeting June 6-9, 2011 Paris, France

Institut Supérieur de l Aéronautique et de l Espace Ocarina: update and future directions

AADL Subsets Annex Update

Scheduling analysis of AADL architecture models

Project Report. Using the AADL to support the ASSERT modeling process

Workshop 1: Specification for SystemC-AADL interoperability

ARINC653 toolset: Ocarina, Cheddar and POK

AADS+: AADL Simulation including the Behavioral Annex

AADL : about code generation

AADL to build DRE systems, experiments with Ocarina. Jérôme Hugues, ENST

Using the AADL for mission critical software development paper presented at the ERTS conference, Toulouse, 21 January 2004

ARINC653 and AADL. Julien Delange Laurent Pautet

SAE Architecture Analysis and Design Language. AS-2C AADL Subcommittee Meeting Feb 3-6, 2014 Toulouse, France

The AADL Behavioural annex 1

ADeS presentation. a simulator for AADL v Amélie Schyn Romain Sezestre Jean-François Tilman

Modeling and verification of memory architectures with AADL and REAL

AADL Simulation and Performance Analysis in SystemC

SAE Architecture Analysis and Design Language. AS-2C AADL Subcommittee Meeting Sept 29-Oct 2, 2014 Valencia, Spain

Generating high-integrity systems with AADL and Ocarina. Jérôme Hugues, ISAE/DMIA

An Implementation of the Behavior Annex in the AADL-toolset Osate2

MODELING OF MULTIPROCESSOR HARDWARE PLATFORMS FOR SCHEDULING ANALYSIS

SAE Architecture Analysis and Design Language. AS-2C AADL Subcommittee Meeting Feb 2-5, 2015 San Diego, USA

Query Language for AADLv2, Jérôme Hugues, ISAE Serban Gheorghe, Edgewater

COTRE as an AADL profile

The Montana Toolset: OSATE Plugins for Analysis and Code Generation

From MDD back to basic: Building DRE systems

Update on Behavior Language for Embedded Systems with Software for Proof Based Analysis of Behavior

Automatic Selection of Feasibility Tests With the Use of AADL Design Patterns

An Information Model for High-Integrity Real Time Systems

Monday Jan 30. Tuesday Jan 31. AADL Standards Meeting Jan 30 Feb 1, 2012 Toulouse, France with ERTS Conference N7 INPT University de Toulouse

Rapid Prototyping of Distributed Real-Time Embedded Systems Using the AADL and Ocarina

This is an author-deposited version published in: Eprints ID: 3664

COMPASS GRAPHICAL MODELLER

AADL v2.1 errata AADL meeting Sept 2014

MODELING SHARED- MEMORY MULTIPROCESSOR SYSTEMS WITH AADL

RAMSES. Refinement of AADL Models for the Synthesis of Embedded Systems. Etienne Borde

An implementation of the AADL-BA Behavior Annex front-end: an OSATE2 Eclipse plug-in

Automatically adapt Cheddar to users need

Formal Verification of AADL models with Fiacre and Tina

Investigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models

Plug-in Development for the Open Source AADL Tool Environment Part 3: Generation & External Models

This is an author-deposited version published in: Eprints ID: 9287

AADL Application modeling with MARTE Madeleine Faugère, Timothée Bourdeau THALES Research and Technology Robert de Simone INRIA Sébastien Gérard CEA

The Ocarina Tool Suite. Thomas Vergnaud

From the Prototype to the Final Embedded System Using the Ocarina AADL Tool Suite

Learn AADL concepts in a pleasant way

The TASTE MBE development toolchain - update & case-studies

TOPCASED. Current status

Introduction to AADL 1

Dependability Modeling Based on AADL Description (Architecture Analysis and Design Language)

Model-Based Engineering for the Development of ARINC653 Architectures

Architecture Description Languages. Peter H. Feiler 1, Bruce Lewis 2, Steve Vestal 3 and Ed Colbert 4

AADL Meta Model & XML/XMI

arxiv: v1 [cs.se] 2 Mar 2015

OSATE Analysis Support

Generating Petri Nets from AADL descriptions. Thomas Vergnaud

POK. An ARINC653-compliant operating system released under the BSD licence. Julien Delange, European Space Agency

Involved subjects in this presentation Security and safety in real-time embedded systems Architectural description, AADL Partitioned architectures

Institut Supérieur de l Aéronautique et de l Espace Constraints Annex Implementation Approach

Schedulability Analysis of AADL Models

How to Use the BLESS Plug-in to OSATE

Introduction to AADL analysis and modeling with FACE Units of Conformance

Understanding the Relationship between AADL and Real-Time Embedded Systems Operating Systems

AADL Generative Implementation Annex

SCADE AADL. Thierry Le Sergent, Adnan Bouakaz, Guilherme Goretkin (ANSYS)

Flow Latency Analysis with the Architecture Analysis and Design Language (AADL)

A Case Study for HRT-UML

Architecture Analysis and Design Language (AADL) Part 2

Architecture Modeling and Analysis for Embedded Systems

Prototyping of Distributed Embedded Systems Using AADL

Model-Driven Engineering Approach for Simulating Virtual Devices in the OSATE 2 Environment

To cite this document

Architecture Modeling in embedded systems

Platform modeling and allocation

UML-AADL 09: Towards a Model- Driven Approach for Mapping Requirements on AADL Mathieu DELEHAYE Christophe PONSARD

ADVANCED trouble-shooting of real-time systems. Bernd Hufmann, Ericsson

A DSL for AADL Subsets Specification

Translating AADL into BIP Application to the Verification of Real time Systems

Foundations of a New Software Engineering Method for Real-time Systems

Analysis and Design Language (AADL) for Quantitative System Reliability and Availability Modeling

Lab-STICC : Dominique BLOUIN Skander Turki Eric SENN Saâdia Dhouib 11/06/2009

AADL Graphical Editor Design

Institut Supérieur de l Aéronautique et de l Espace. TASTE Multi-core. ISAE / ONERA Jérôme Hugues / Claire Pagetti December 2016

Developing Dependable Software-Intensive Systems: AADL vs. EAST-ADL

Design Space Exploration of Systems-on-Chip: DIPLODOCUS

Cyber-physical systems design: transition from functional to architectural models

An Extensible Open Source AADL Tool Environment (OSATE)

The PISA Project A Model Driven Development case study

Transcription:

AADL Inspector Tutorial ACVI Workshop, Valencia September 29th, 2014 Pierre Dissaux Ellidiss Technologies w w w. e l l i d i s s. c o m

Independent Technology Provider: Ellidiss Software w w w. e l l i d i s s. c o m UK based company aka.tni Europe Ltd Tools sales office Fr based company New tools development R&D center 20 years support to major industrial projects: HOOD design tools for Ada and C: CP-Hood and Stood Eurofighter Typhoon Airbus A340, A380, A350 Eurocopter Tiger (mission calculator) Rafale (engine control) European Space Agency (Frame Contract for the TASTE toolchain) 10 years investement in AADL technology: Contribution to the AADL standardization committee AADL graphical modeling tools: Stood for AADL, Adele, TASTE, DSMs AADL model processing framework: AADL Inspector

AADL Tools STOOD graphical editors HOOD-AADL-UML ADELE graphical editor TOPCASED/SPICES/QUARTEFT AADL Builder graphical editor UML profiles TASTE graphical editors ASSERT/ESA TOPCASED http://www.topcased.org bridge to other AADL tools OSATE, DSM tools: Domain Specific graphical editors Ex: GLASSES Modelling SCHEDULING ANALYSIS with CHEDDAR SIMULATION With MARZHIN PROOF TOOLS bridge to FIACRE and Polychrony SAFETY ANALYSIS bridge to COMPASS CODE GENERATORS bridge to RAMSES and OCARINA static rules checkers: - AADL Legality rules - AADL Naming rules - AADL Consistency rules - Metrics - Project specific rules Model Processing

STOOD for AADL Commercial AADL graphical editor

AADL Inspector Model Processing Framework Static rules analysis Cheddar Cloud access Wizards MARTE import Instance hierarchy AADL model Marzhin

AADL Inspector Internals.aadl AADL parser UML2AADL Rules Checkers LMP Instance Model HW/SW Deployment Model Transformations Cheddar Feasibility Tests Static Simulator Marzhin Dynamic Simulator report report time-lines XML parser Others time-lines.uml

AADL Models AADL Declarative Model HW Instance Model LMP Root System Selection HW-SW Bindings Deployed Model SW Instance Model Analysis Tools Input Models

Cheddar Schedulability Analysis Industrialization Tool packaging Commercial support (Ellidiss) Ellidiss R&D, collaborative projects, prototyping (UBO + Ellidiss + others) Research activities (UBO)

Marzhin Executable AADL Multi-agent real-time simulator: Based on a pre-existing multi-agent kernel Specialized agents to represent real-time software constructs: Processor and scheduler Process and partition Thread and shared data Ports and connections The agents interact together and exhibit a global behavior Implementation of the AADL run-time The run-time semantic of each agent is defined by the AADL standard Example: an AADL thread: Generates system state changes events Used to display simulation traces for software analysis during design phase Used to animate 3D graphics

Demonstration scenario Overview of AADL Inspector Loading AADL models (single file, project, from github) Loading a UML MARTE model Presentation of the analysis plugins and wizards List of illustrative Test Cases: TC1: sampled dataflow between periodic threads TC2: deadlock detection and avoidance (PCP) TC3: priority inversion and avoidance (PCP) TC4: sporadic activities with user interaction TC5: time and space partitionning (ARINC 653) TC6: distributed system (CAN) For each TC: Open the graphical AADL instance model in Stood Generate the textual declarative model Open it in AADL Inspector Check the root system and real-time properties Run Cheddar and/or Marzhin

Test case 1: dataflow sampling data port connections PROCESS IMPLEMENTATION my_process.others SUBCOMPONENTS T1 : THREAD a_thread { Dispatch_Protocol => Periodic; Compute_Execution_Time => 5ms..5ms; Period => 25ms; Deadline => 25ms; }; T2 : THREAD a_thread { Dispatch_Protocol => Periodic; Compute_Execution_Time => 5ms..5ms; Period => 20ms; Deadline => 20ms; }; T3 : THREAD a_thread { Dispatch_Protocol => Periodic; Compute_Execution_Time => 5ms..5ms; Period => 15 ms; Deadline => 15 ms; }; CONNECTIONS C1 : PORT T1.output -> T2.input; C2 : PORT T2.output -> T3.input; END my_process.others;

Test case 2: deadlock data access connections PROCESS IMPLEMENTATION my_process.others SUBCOMPONENTS T1 : THREAD T.i1; T2 : THREAD T.i2; D1 : DATA D.others { Concurrency_Control_Protocol => PRIORITY_CEILING_PROTOCOL; }; D2 : DATA D.others { Concurrency_Control_Protocol => PRIORITY_CEILING_PROTOCOL; }; CONNECTIONS cnx_0 : DATA ACCESS D1 -> T1.D1; cnx_1 : DATA ACCESS D2 -> T1.D2; cnx_2 : DATA ACCESS D1 -> T2.D1; cnx_3 : DATA ACCESS D2 -> T2.D2; END my_process.others;

Test case 3: priority inversion AADLib/examples/pathfinder_system PROCESS IMPLEMENTATION prs_psc.impl SUBCOMPONENTS meteo_task : THREAD meteo_task {Priority => 1;}; mesure_task : THREAD mesure_task {Priority => 2;}; camera_task : THREAD camera_task {Priority => 3;}; radio_task : THREAD radio_task {Priority => 4;}; control_task : THREAD control_task {Priority => 5;}; data_distribution : THREAD data_distribution {Priority => 6;}; bus_scheduling : THREAD bus_scheduling {Priority => 7;}; data_rw : DATA data_rw {Concurrency_Control_Protocol => Priority_Ceiling_Protocol;}; CONNECTION END prs_psc.impl;

Test case 4: sporadic activities event port connections THREAD IMPLEMENTATION CoffeeMaker.others PROPERTIES Dispatch_Protocol => Sporadic; Deadline => 15s; Period => 15s; ANNEX Behavior_Specification {** STATES s0 : INITIAL COMPLETE FINAL STATE; TRANSITIONS t0 : s0 -[ ON DISPATCH ]-> s0 { AddCoffee!; if (Suggar = 1) AddSugar! end if; if (Milk = 1) AddMilk! end if; AddWater! }; **}; END CoffeeMaker.others;

Test case 5: ARINC653 hierarchical scheduling PROCESSOR IMPLEMENTATION powerpc.impl SUBCOMPONENTS part1 : VIRTUAL PROCESSOR p1.impl; part2 : VIRTUAL PROCESSOR p2.impl; PROPERTIES Scheduling_Protocol => ARINC653; ARINC653::Partition_Slots => (10ms, 10ms); ARINC653::Slots_Allocation => (reference(part1),reference(part2)); ARINC653::Module_Major_Frame => 20ms; END powerpc.impl;

Test case 6: distributed system bus messages

3D simulation Multi-agent simulation Control system: AADL Process Sensors/Actuators: AADL Devices => connected to 3D objects Marzhin can send events to both AADL Inspector and the 3D engine

AADL Inspector 1.1 Paris Air Show AADL Inspector 1.2 STOOD 5.4 AeroTech AADL Inspector 1.3 ERTS 2 AADL Inspector 1.4 MODELS STOOD 5.4.1 AADL Inspector 1.5 End of the SMART project 2013 2014 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Ellidiss Roadmap Q1 Paris Air Show Q2 Q3 2015

Summary: Products: Stood Adele Taste AADL Inspector AADL Builder Services: Tool support and training Custom Tool development (DSM) Technology: frameworks: GMP: for graphical tools LMP: for model processing Projects: ASSERT SPICES GLASSES QUARTEFT PARSEC CHEDDAR SMART RAMSES ADOSATE