Embedded Control: From Asynchrony to Synchrony and Back

  • Paul Caspi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2211)


We propose in this paper a historical perspective of programming issues found in the implementation of control systems, based on the author’s observations for more than fifteen years, but especially during the Crisys Esprit project. We show that in contrast with the asynchronous tradition of computer scientists, control engineers were naturally led to a synchronous practice that was later formalised and generalised by computer people. But, we also show that, for the sake of robustness and distribution those practitioners had to incorporate some degree of asynchrony in this synchronous approach and we try to comment the resulting programming style.


Logical Time Continuous Signal Message Sequence Chart Programming Style Synchronous Language 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    C. André. Representation and analysis of reactive behaviors: a synchronous approach. In Proc. CESA’96, Lille, July 1996.Google Scholar
  2. 2.
    A. Benveniste, P. LeGuernic, and Ch. Jacquemot. Synchronous programming with events and relations: the SIGNAL language and its semantics. Science of Computer Programming, 16:103–149, 1991.CrossRefMathSciNetGoogle Scholar
  3. 3.
    J. L. Bergerand and E. Pilaud. SAGA; a software development environment for dependability in automatic control. In SAFECOMP’88. Pergamon Press, 1988.Google Scholar
  4. 4.
    G. Berry and G. Gonthier. The esterel synchronous programming language, design, semantics, implementation. Science of Computer Programming, 19(2):87–152, 1992.CrossRefGoogle Scholar
  5. 5.
    G. Boudol, V. Roy, R. de Simone, and D. Vergamini. Process algebras and systems of communicating processes. In Automatic Verification For Finite States Systems, volume 407 of Lecture Notes in Computer Science. Springer Verlag, 1990.Google Scholar
  6. 6.
    D. Briére, D. Ribot, D. Pilaud, and J.L. Camus. Methods and specification tools for Airbus on-board systems. In Avionics Conference and Exhibition, London, December 1994. ERA Technology.Google Scholar
  7. 7.
    J. A. Brzozowski and C-J. H. Seger. Asynchronous Circuits. Springer-Verlag, 1995.Google Scholar
  8. 8.
    P. Caspi and R. Salem. Threshold and bounded-delay voting in critical control systems. In Mathai Joseph, editor, Formal Techniques in Real-Time and Fault-Tolerant Systems, volume 1926 of Lecture Notes in Computer Science, pages 68–81, September 2000.Google Scholar
  9. 9.
    A. Chatha. Fieldbus: The foundation for field control systems. Control Engineering, pages 47–50, May 1994.Google Scholar
  10. 10.
    N. Halbwachs, P. Caspi, P. Raymond, and D. Pilaud. The synchronous dataflow programming language lustre. Proceedings of the IEEE, 79(9):1305–1320, September 1991.CrossRefGoogle Scholar
  11. 11.
    N. Halbwachs, F. Lagnier, and C. Ratel. Programming and verifying real-time systems by means of the synchronous data-flow language lustre. IEEE Transactions on Software Engineering, 18(9):785–793, september 1992.CrossRefGoogle Scholar
  12. 12.
    D. Harel. Statecharts: a visual approach to complex systems. Science of Computer Programming, 8(3), 1987.Google Scholar
  13. 13.
    C. A. R. Hoare. Communicating sequential processes. Communication of the ACM, 21(8):666–676, 1978.zbMATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    K.J.A? strÖm and B. Wittenmark. Computer Controlled Systems. Prentice-Hall, 1984.Google Scholar
  15. 15.
    H. Kopetz, A. Damm, Ch. Koza, M. Mulazzani, W. Schwabl, Ch. Senft, and R. Zainlinger. Distributed fault-tolerant real-time systems: the MARS approach. IEEE Micro, 9(1):25–40, 1989.CrossRefGoogle Scholar
  16. 16.
    G. LeGoff. Using synchronous languages for interlocking. In First International Conference on Computer Application in Transportation Systems, 1996.Google Scholar
  17. 17.
    F. Maraninchi. Operational and compositional semantics of synchronous automaton compositions. In Proc. of CONCUR’92, volume 630 of Lecture Notes in Computer Science. Springer Verlag, August 1992.Google Scholar
  18. 18.
    S. Mauw. The formalization of message sequence charts. Computer Networks and ISDNSystems, 28:1643–1657, 1996.CrossRefGoogle Scholar
  19. 19.
    R. Milner. Calculi for synchrony and asynchrony. Theoretical Computer Science, 25:267–310, 1983.CrossRefMathSciNetGoogle Scholar
  20. 20.
    P. Caspi. What can we learn from synchronous data-flow languages. In O. Maler, editor, Hybrid and Real-Time Systems, volume 1201 of Lecture Notes in Computer Science, pages 255–258. Springer, 1997. invited conference.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Paul Caspi
    • 1
  1. 1.Verimag-CNRSFrance

Personalised recommendations