Efficient distribution of Triggered Synchronous Block Diagrams on asynchronous platforms

As the complexity of embedded systems rapidly increases in terms of both scale and functionality, there has been a strong interest in design languages and methodologies that facilitate the use of formal methods. These languages and methodologies are mostly based on a synchronous paradigm that, while satisfies the need for formalization, often results in an inefficient implementation requiring substantial overhead when compared to approaches that do not enforce synchronicity on the execution platform. Therefore, the interest is high for techniques that on one hand, maintain the formal properties of synchronous models, and on the other hand, enable the use of asynchronous and distributed execution platforms with little overhead. In this paper, we propose an approach for efficient distribution of Triggered Synchronous Block Diagrams (SBDs) on asynchronous platforms while preserving the correct semantics. Compared to previous work that utilizes trigger elimination, our approach aims to reduce the unnecessary communication overhead and thus improve the efficiency of the implementation. We consider both general Triggered SBDs where the values of triggers are dynamically computed, as well as Timed SBDs where triggers are statically known and usually specified by (period, initial phase) pairs.

[1]  Stephen A. Edwards,et al.  The semantics and execution of a synchronous block-diagram language , 2003, Sci. Comput. Program..

[2]  Paul Le Guernic,et al.  Code generation in the SACRES project , 1999 .

[3]  Yang Yang,et al.  Efficient Distribution of Triggered Synchronous Block Diagrams , 2011 .

[4]  Alberto L. Sangiovanni-Vincentelli,et al.  Implementing Synchronous Models on Loosely Time Triggered Architectures , 2008, IEEE Transactions on Computers.

[5]  Petru Eles,et al.  Scheduling and mapping in an incremental design methodology for distributed real-time embedded systems , 2004, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

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

[7]  Alberto L. Sangiovanni-Vincentelli,et al.  Optimized implementation of synchronous models on industrial LTTA systems , 2014, J. Syst. Archit..

[8]  Hermann Kopetz,et al.  The time-triggered architecture , 1998, Proceedings First International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC '98).

[9]  Stavros Tripakis,et al.  From simulink to SCADE/lustre to TTA: a layered approach for distributed embedded applications , 2003 .

[10]  Martin Törngren,et al.  Fundamentals of Implementing Real-Time Control Applications in Distributed Computer Systems , 1998, Real-Time Systems.

[11]  Alberto L. Sangiovanni-Vincentelli,et al.  Theory of latency-insensitive design , 2001, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[12]  Nicolas Halbwachs,et al.  LUSTRE: A declarative language for programming synchronous systems* , 1987 .

[13]  Bruno Sinopoli,et al.  Distributed control applications within sensor networks , 2003, Proc. IEEE.

[14]  Gilles Kahn,et al.  The Semantics of a Simple Language for Parallel Programming , 1974, IFIP Congress.

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

[16]  Jan Romberg,et al.  Loose synchronization of event-triggered networks for distribution of synchronous programs , 2004, EMSOFT '04.

[17]  Josep Carmona,et al.  Elastic Circuits , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[18]  J. Taylor,et al.  Switching and finite automata theory, 2nd ed. , 1980, Proceedings of the IEEE.