Model-Based Implementation of Parallel Real-Time Systems

One of the main challenges in the design of real-time systems is how to derive correct and efficient implementations from platform-independent specifications. We present a general implementation method in which the application is represented by an abstract model consisting of a set of interacting components. The abstract model executes sequentially components interactions atomically and instantaneously. We transform abstract models into physical models representing their execution on a platform. Physical models take into account execution times of interactions and allow their parallel execution. They are obtained by breaking atomicity of interactions using a notion of partial state. We provide safety conditions guaranteeing that the semantics of abstract models is preserved by physical models. These provide bases for implementing a parallel execution engine coordinating the execution of the components. The implementation has been validated on a real robotic application. Benchmarks show net improvement of its performance compared to a sequential implementation.

[1]  Thomas A. Henzinger,et al.  Event-Driven Programming with Logical Execution Times , 2004, HSCC.

[2]  Joseph Sifakis,et al.  Distributed Semantics and Implementation for Systems with Interaction and Priority , 2008, FORTE.

[3]  Joseph Sifakis,et al.  On the Construction of Live Timed Systems , 2000, TACAS.

[4]  Vincent David,et al.  A method and a technique to model and ensure timeliness in safety critical real-time systems , 1998, Proceedings. Fourth IEEE International Conference on Engineering of Complex Computer Systems (Cat. No.98EX193).

[5]  Joseph Sifakis,et al.  Model-based implementation of real-time applications , 2010, EMSOFT '10.

[6]  Sebastian Altmeyer,et al.  Static Timing Analysis for Hard Real-Time Systems , 2010, VMCAI.

[7]  Joseph Sifakis,et al.  Modeling Heterogeneous Real-time Components in BIP , 2006, Fourth IEEE International Conference on Software Engineering and Formal Methods (SEFM'06).

[8]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[9]  Kousha Etessami,et al.  Analysis of Recursive Game Graphs Using Data Flow Equations , 2004, VMCAI.

[10]  Thomas A. Henzinger,et al.  Hybrid Systems: Computation and Control , 1998, Lecture Notes in Computer Science.

[11]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[12]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[13]  Stéphane Magnenat,et al.  Software integration in mobile robotics, a science to scale up machine intelligence , 2010 .

[14]  Carlo Rossi,et al.  Giotto a time-triggered language for embedded programming , 2011 .

[15]  Teruo Higashino,et al.  Formal Techniques for Networked and Distributed Systems - FORTE 2008, 28th IFIP WG 6.1 International Conference, Tokyo, Japan, June 10-13, 2008, Proceedings , 2008, FORTE.