The ROSACE case study: From Simulink specification to multi/many-core execution

This paper presents a complete case study - named ROSACE for Research Open-Source Avionics and Control Engineering - that goes from a baseline flight controller, developed in MATLAB/SIMULINK, to a multi-periodic controller executing on a multi/many-core target. The interactions between control and computer engineers are highlighted during the development steps, in particular by investigating several multi-periodic configurations. We deduced ways to improve the discussion between engineers in order to ease the integration on the target. The whole case study is made available to the community under an open-source license.

[1]  Bernhard Thiele,et al.  A Library for Synchronous Control Systems in Modelica , 2012 .

[2]  Olivier Sename,et al.  A LPV approach to control and real-time scheduling codesign: Application to a robot-arm control , 2008, 2008 47th IEEE Conference on Decision and Control.

[3]  Marc Pantel,et al.  Use of formal methods for building qualified code generator for safer automotive systems , 2010, EDCC-CARS.

[4]  Pascal Raymond,et al.  The synchronous data flow programming language LUSTRE , 1991, Proc. IEEE.

[6]  Lothar Thiele,et al.  Mixed-criticality systems: Design and certification challenges , 2013, CASES 2013.

[7]  Jean-Baptiste Chaudron,et al.  Real-Time Distributed Aircraft Simulation through HLA , 2012, 2012 IEEE/ACM 16th International Symposium on Distributed Simulation and Real Time Applications.

[8]  Mathieu Jan,et al.  From Model-Based to Real-Time Execution of Safety-Critical Applications: Coupling SCADE with OASIS , 2012 .

[9]  Stavros Tripakis,et al.  A memory-optimal buffering protocol for preservation of synchronous semantics under preemptive scheduling , 2006, EMSOFT '06.

[10]  Stavros Tripakis,et al.  Modular Code Generation from Triggered and Timed Block Diagrams , 2008, 2008 IEEE Real-Time and Embedded Technology and Applications Symposium.

[11]  Marc Pouzet,et al.  Lucid Synchrone - version 2.0: Tutorial and reference manual , 2001 .

[12]  Alexandre Seuret,et al.  Weakening Real-time Constraints for Embedded Control Systems , 2011 .

[13]  Stavros Tripakis,et al.  Translating discrete-time simulink to lustre , 2003, TECS.

[14]  Frank L. Lewis,et al.  Aircraft Control and Simulation , 1992 .

[15]  Nicolae Marian,et al.  Translation of Simulink Models to Component-based Software Models , 2007 .

[16]  Hugues Cassé,et al.  Deterministic Execution Model on COTS Hardware , 2012, ARCS.

[17]  Anton Cervin,et al.  Integrated Control and Real-Time Scheduling , 2003 .

[18]  Katsuhiko Ogata,et al.  Discrete-time control systems , 1987 .

[19]  Marc Pouzet Lucid Synchrone: tutorial and reference manual , 2001 .

[20]  Adrian Curic Implementing Lustre programs on distributed platforms with real-time constrains , 2005 .

[21]  Ronald Hess,et al.  Review of Aircraft Control and Simulation, 2nd Ed. , 2004 .

[22]  Sanjoy K. Baruah,et al.  Semantics-preserving implementation of multirate mixed-criticality synchronous programs , 2012, RTNS '12.

[23]  Frédéric Boniol,et al.  Multi-task Implementation of Multi-periodic Synchronous Programs , 2011, Discret. Event Dyn. Syst..

[24]  Frédéric Boniol,et al.  Developing critical embedded systems on multicore architectures: the PRELUDE-SCHEDMCORE toolset , 2011, RTNS.

[25]  Jean-Marc Biannic,et al.  Modélisation LFT et commande auto-séquencée. Application au pilotage d'un lanceur , 2012 .

[26]  Haibo Zeng,et al.  Multitask implementation of synchronous reactive models with Earliest Deadline First scheduling , 2013, 2013 8th IEEE International Symposium on Industrial Embedded Systems (SIES).

[27]  Stephen A. Edwards,et al.  The synchronous languages 12 years later , 2003, Proc. IEEE.

[28]  Jean-Pierre Talpin,et al.  Buffer minimization in earliest-deadline first scheduling of dataflow graphs , 2013, LCTES '13.

[29]  Henrik Theiling,et al.  Multicore in Real-Time Systems – Temporal Isolation Challenges due to Shared Resources , 2013, DATE 2013.

[30]  Lui Sha,et al.  Real-Time I/O Management System with COTS Peripherals , 2013, IEEE Transactions on Computers.

[31]  Haibo Zeng,et al.  Task implementation of synchronous finite state machines , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[32]  Katsuhiko Ogata,et al.  Discrete-time control systems (2nd ed.) , 1995 .

[33]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

[34]  Steve Brosky,et al.  Shielded processors: guaranteeing sub-millisecond response in standard Linux , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[35]  Wilson J. Rugh,et al.  Research on gain scheduling , 2000, Autom..

[36]  Jan Reineke,et al.  Impact of resource sharing on performance and performance prediction , 2013, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[37]  Frédéric Boniol,et al.  A Synchronous Language with Partial Delay Specification for Real-Time Systems Programming , 2012, APLAS.

[38]  A. Jean-Louis Camus,et al.  A verifiable architecture for multitask , multi-rate synchronous software , 2007 .

[39]  Ouassima Akhrif,et al.  Gain scheduling with guardian maps for longitudinal flight control , 2011 .

[40]  Claire Pagetti,et al.  Mapping a multi-rate synchronous language to a many-core processor , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[41]  Pascal Sainrat,et al.  OTAWA: An Open Toolbox for Adaptive WCET Analysis , 2010, SEUS.