Translating Discrete-Time Simulink to Lustre

  • Paul Caspi
  • Adrian Curic
  • Aude Maignan
  • Christos Sofronis
  • Stavros Tripakis
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2855)


We present a method of translating discrete-time Simulink models to Lustre programs. Our method consists of three steps: type inference, clock inference and hierarchical bottom-up translation. In the process, we formalise typing and timing mechanisms of Simulink. The method has been implemented in a prototype tool called S2L. The tool has been used to translate part of an industrial automotive controller provided by Audi.


Sample Time Type Inference Hybrid Automaton Unit Delay 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.
    Asarin, E., Dang, T., Esteban, J.: Simulation of hybrid automata using Matlab/Simulink. Technical report, Verimag (2003)Google Scholar
  2. 2.
    Åström, K.J., Wittenmark, B.: Computer Controlled Systems. Prentice-Hall, Englewood Cliffs (1984)Google Scholar
  3. 3.
    Caspi, P., Curic, A., Maignan, A., Sofronis, C., Tripakis, S.: Translating Discrete-Time Simulink to Lustre. Verimag Research Report (July 2003)Google Scholar
  4. 4.
    Caspi, P., Curic, A., Maignan, A., Sofronis, C., Tripakis, S., Niebert, P.: From Simulink to SCADE/Lustre to TTA: a layered approach for distributed embedded applications. In: Languages, Compilers, and Tools for Embedded Systems (LCTES 2003), ACM, New York (2003)Google Scholar
  5. 5.
    Caspi, P., Pouzet, M.: Synchronous Kahn networks. In: ACM SIGPLAN International Conference on Functional Programming, pp. 226–238 (1996)Google Scholar
  6. 6.
    Cervin, A., Henriksson, D., Lincoln, B., Årzén, K.-E.: Jitterbug and Truetime: Analysis tools for real-time control systems. In: Proceedings of the 2nd Workshop on Real-Time Tools, Copenhagen, Denmark (August 2002)Google Scholar
  7. 7.
    Chutinan, A., Krogh, B.H.: Computational techniques for hybrid system verification. IEEE Trans. Automatic Control 48(1) (2003)Google Scholar
  8. 8.
    Le Guernic, P., Gautier, T., Le Borgne, M., Le Maire, C.: Programming real-time applications with signal. Proc. of the IEEE 79(9), 1321–1336 (1991)CrossRefGoogle Scholar
  9. 9.
    Halbwachs, N., Caspi, P., Raymond, P., Pilaud, D.: The synchronous dataflow programming language Lustre. Proceedings of the IEEE 79(9) (September 1991)Google Scholar
  10. 10.
    Jersak, M., Ziegenbein, D., Wolf, F., Richter, K., Ernst, R., Cieslog, F., Teich, J., Strehl, K., Thiele, L.: Embedded system design using the SPI workbench. In: Proc. of the 3rd International Forum on Design Languages (2000)Google Scholar
  11. 11.
    Joisha, P.G., Banerjee, P.: The MAGICA type inference engine for MATLAB. In: Hedin, G. (ed.) CC 2003. LNCS, vol. 2622, pp. 121–125. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  12. 12.
    Kahn, G.: The semantics of a simple language for parallel programming. In: Proc. of the IFIP Congress (1974)Google Scholar
  13. 13.
    Kirsch, C.M., Sanvido, M.A., Henzinger, T.A., Pree, W.: Giotto-based helicopter control system. In: Sangiovanni-Vincentelli, A.L., Sifakis, J. (eds.) EMSOFT 2002. LNCS, vol. 2491, Springer, Heidelberg (2002)Google Scholar
  14. 14.
    Lee, E., Messerschmitt, D.: Synchronous data flow. Proceedings of the IEEE 75 (1987)Google Scholar
  15. 15.
    Lee, E., Parks, T.: Dataflow process networks. Proceedings of the IEEE, 773–799 (May 1995)Google Scholar
  16. 16.
    Neema, S.: Simulink and Stateflow data model. Technical report, ISIS, Vanderbilt University (2001)Google Scholar
  17. 17.
    Ratel, C., Halbwachs, N., Raymond, P.: Programming and verifying critical systems by means of the synchronous data-flow programming language Lustre. In: ACM-SIGSOFT Conference on Software for Critical Systems (1991)Google Scholar
  18. 18.
    Raymond, P., Weber, D., Nicollin, X., Halbwachs, N.: Automatic testing of reactive systems. In: 19th IEEE Real-Time Systems Symposium, Madrid, Spain (December 1998)Google Scholar
  19. 19.
    Silva, B.I., Richeson, K., Krogh, B.H., Chutinan, A.: Modeling and verifying hybrid dynamical systems using CheckMate. In: ADPM (2000)Google Scholar
  20. 20.
    Sims, S., Butts, K., Cleaveland, R., Ranville, S.: Automated validation of software models. In: ASE (2001)Google Scholar
  21. 21.
    Tiwari, A.: Formal semantics and analysis methods for Simulink Stateflow models. Technical report, SRI International (2002)Google Scholar
  22. 22.
    Tudoret, S., Nadjm-Tehrani, S., Benveniste, A., Stromberg, J.-E.: Co-simulation of hybrid systems: Signal-Simulink. In: Joseph, M. (ed.) FTRTFT 2000. LNCS, vol. 1926, p. 134. Springer, Heidelberg (2000)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • Paul Caspi
    • 1
  • Adrian Curic
    • 1
  • Aude Maignan
    • 1
  • Christos Sofronis
    • 1
  • Stavros Tripakis
    • 1
  1. 1.VERIMAG, Centre EquationGièresFrance

Personalised recommendations