Simulation and Verification of Asynchronous Systems by means of a Synchronous Model

Synchrony and asynchrony are commonly opposed to each other. Now, in embedded applications, actual solutions are often situated in between, with synchronous processes composed in a partially asynchronous way. Examples of such intermediate solutions are GALS, quasi-synchronous periodic processes, deadline-driven task scheduling. . . In this paper, we illustrate the use of the synchronous paradigm to model and validate such partially asynchronous applications. We show that, through the use of sporadic activation of processes and simulation of nondeterminism by the way of auxiliary inputs, the synchronous paradigm allows a precise control of asynchrony. The approach is illustrated on a real case study, proposed in the framework of the European Integrated project "Assert".

[1]  Abdoulaye Gamatié,et al.  Synchronous modeling of avionics applications using the SIGNAL language , 2003, The 9th IEEE Real-Time and Embedded Technology and Applications Symposium, 2003. Proceedings..

[2]  Robin Milner,et al.  On relating synchrony and asynchrony , 1980 .

[3]  Benoît Caillaud,et al.  Correct-by-construction asynchronous implementation of modular synchronous specifications , 2005, Fifth International Conference on Application of Concurrency to System Design (ACSD'05).

[4]  Albert Benveniste,et al.  The synchronous approach to reactive and real-time systems , 1991 .

[5]  Paul Caspi,et al.  Threshold and Bounded-Delay Voting in Critical Control Systems , 2000, FTRTFT.

[6]  Robin Milner,et al.  Calculi for Synchrony and Asynchrony , 1983, Theor. Comput. Sci..

[7]  Ingolf Krüger,et al.  A Verification Approach for GALS Integration of Synchronous Components , 2005, FMGALS@MEMOCODE.

[8]  Paul Caspi,et al.  About the Design of Distributed Control Systems: The Quasi-Synchronous Approach , 2001, SAFECOMP.

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

[10]  Alberto L. Sangiovanni-Vincentelli,et al.  Tag machines , 2005, EMSOFT.

[11]  Alberto L. Sangiovanni-Vincentelli,et al.  Heterogeneous reactive systems modeling: capturing causality and the correctness of loosely time-triggered architectures (LTTA) , 2004, EMSOFT '04.

[12]  Nicolas Halbwachs,et al.  Programming and Verifying Real-Time Systems by Means of the Synchronous Data-Flow Language LUSTRE , 1992, IEEE Trans. Software Eng..

[13]  Ellen Sentovich,et al.  Multiclock Esterel , 2001, CHARME.

[14]  Paul Caspi,et al.  Automatic Distribution of Reactive Systems for Asynchronous Networks of Processors , 1999, IEEE Trans. Software Eng..

[15]  Luciano Lavagno,et al.  Metropolis: An Integrated Electronic System Design Environment , 2003, Computer.

[16]  Abdoulaye Gamatié,et al.  The SIGNAL approach to the design of system architectures , 2003, 10th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2003. Proceedings..

[17]  Nicolas Halbwachs,et al.  Synchronous Programming of Reactive Systems , 1992, CAV.

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

[19]  Jean-Christophe Le Lann,et al.  POLYCHRONY for System Design , 2003, J. Circuits Syst. Comput..

[20]  S. Ramesh,et al.  Communicating reactive processes , 1993, POPL '93.

[21]  Norman Scaife,et al.  Integrating model-based design and preemptive scheduling in mixed time- and event-triggered systems , 2004, Proceedings. 16th Euromicro Conference on Real-Time Systems, 2004. ECRTS 2004..

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