Robust and extensible task implementations of synchronous finite state machines

Model-based design using synchronous reactive (SR) models is widespread for the development of embedded control software. SR models ease verification and validation, and enable the automatic generation of implementations. In SR models, synchronous finite state machines (FSMs) are commonly used to capture changes of the system state under trigger events. The implementation of a synchronous FSM may be improved by using multiple software tasks instead of the traditional single-task solution. In this work, we propose methods to quantitatively analyze task implementations with respect to a breakdown factor that measures the timing robustness, and an action extensibility metric that measures the capability to accommodate upgrades. We propose an algorithm to generate a correct and efficient task implementation of synchronous FSMs for these two metrics, while guaranteeing the schedulability constraints.

[1]  Haibo Zeng,et al.  Schedulability Analysis of Periodic Tasks Implementing Synchronous Finite State Machines , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[2]  John P. Lehoczky,et al.  Fixed priority scheduling of periodic task sets with arbitrary deadlines , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[3]  Wayne H. Wolf,et al.  TGFF: task graphs for free , 1998, Proceedings of the Sixth International Workshop on Hardware/Software Codesign. (CODES/CASHE'98).

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

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

[6]  Stavros Tripakis,et al.  Defining and translating a "safe" subset of simulink/stateflow into lustre , 2004, EMSOFT '04.

[7]  Marco Di Natale,et al.  Buffer optimization in multitask implementations of Simulink models , 2008, TECS.

[8]  Sanjoy K. Baruah,et al.  Dynamic- and Static-priority Scheduling of Recurring Real-time Tasks , 2004, Real-Time Systems.

[9]  Stephen A. Edwards,et al.  An Esterel compiler for large control-dominated systems , 2002, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[10]  Alberto L. Sangiovanni-Vincentelli,et al.  Optimizing the Software Architecture for Extensibility in Hard Real-Time Distributed Systems , 2010, IEEE Transactions on Industrial Informatics.

[11]  Valérie Bertin,et al.  Efficient compilation of ESTEREL for real-time embedded systems , 2000, CASES '00.

[12]  John P. Lehoczky,et al.  The rate monotonic scheduling algorithm: exact characterization and average case behavior , 1989, [1989] Proceedings. Real-Time Systems Symposium.

[13]  Stavros Tripakis,et al.  Semantics-preserving and memory-efficient implementation of inter-task communication on static-priority or EDF schedulers , 2005, EMSOFT.

[14]  Haibo Zeng,et al.  Task Implementation and Schedulability Analysis of Synchronous Finite State Machines , 2011 .

[15]  Alberto L. Sangiovanni-Vincentelli,et al.  Synthesis of Multitask Implementations of Simulink Models With Minimum Delays , 2010, IEEE Transactions on Industrial Informatics.

[16]  Edward A. Lee,et al.  Structure and interpretation of signals and systems , 2002 .

[17]  Gérard Berry,et al.  The Esterel Synchronous Programming Language: Design, Semantics, Implementation , 1992, Sci. Comput. Program..