## Translating Discrete-Time Simulink to Lustre (2003)

Venue: | In: Third International ACM Conference on Embedded Software, Lecture Notes in Computer Science |

Citations: | 27 - 7 self |

### BibTeX

@INPROCEEDINGS{Caspi03translatingdiscrete-time,

author = {Paul Caspi and Adrian Curic and Aude Maignan and Christos Sofronis and Stavros Tripakis},

title = {Translating Discrete-Time Simulink to Lustre},

booktitle = {In: Third International ACM Conference on Embedded Software, Lecture Notes in Computer Science},

year = {2003},

pages = {84--99},

publisher = {Springer}

}

### Years of Citing Articles

### OpenURL

### Abstract

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 formalize 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. 1

### Citations

869 |
The semantics of a simple language for parallel programming
- Kahn
- 1974
(Show Context)
Citation Context ...cause of type errors). However, the behavior of the type checking mechanism of Simulink depends on the simulation method and the “Boolean logic 2 The foundations of data-flow models were laid by Kahn =-=[11]-=-. Various such models are studied in [13, 14, 4]. 3 Thus, in general, it is possible to feed the output of a continuous-time block into the input of a discrete-time block and vice-versa. 4 According t... |

541 | The synchronous data-flow programming language LUSTRE
- Halbwachs, Caspi, et al.
- 1991
(Show Context)
Citation Context ...measure its performance, in closed-loop with a plant, also modeled in Simulink. As the first implementation step, we propose the translation of the Simulink model into the synchronous language Lustre =-=[8]-=-. There are a number of reasons motivating this choice. Lustre has been conceived primarily as a programming language, in particular for critical applications, and has several features desirable in su... |

520 | Synchronous data flow
- Lee, Messerschmitt
- 1987
(Show Context)
Citation Context ...ior of the type checking mechanism of Simulink depends on the simulation method and the “Boolean logic 2 The foundations of data-flow models were laid by Kahn [11]. Various such models are studied in =-=[13, 14, 4]-=-. 3 Thus, in general, it is possible to feed the output of a continuous-time block into the input of a discrete-time block and vice-versa. 4 According to classical text-books [2], there are two main w... |

284 | Dataflow process networks
- Lee, Parks
- 1995
(Show Context)
Citation Context ...ior of the type checking mechanism of Simulink depends on the simulation method and the “Boolean logic 2 The foundations of data-flow models were laid by Kahn [11]. Various such models are studied in =-=[13, 14, 4]-=-. 3 Thus, in general, it is possible to feed the output of a continuous-time block into the input of a discrete-time block and vice-versa. 4 According to classical text-books [2], there are two main w... |

95 |
Programming real-time applications with Signal
- Guernic, Gautier, et al.
- 1991
(Show Context)
Citation Context ...ranslate an industrial Simulink model, provided by Audi, presented in Section 8. Related work [21] report on an approach to co-simulate discrete controllers modeled in the synchronous language Signal =-=[7]-=- along with continuous plants modeled in Simulink. [5] present tools for co-simulation of process dynamics, control task execution and network communication in a distributed real-time control system. ... |

89 |
Computer Controlled Systems
- Astrom, Wittenmark
- 1997
(Show Context)
Citation Context ...re studied in [13, 14, 4]. 3 Thus, in general, it is possible to feed the output of a continuous-time block into the input of a discrete-time block and vice-versa. 4 According to classical text-books =-=[2]-=-, there are two main ways of performing this task: either design a continuous-time controller and sample it or sample the environment and design a sampled controller. 3ssignals” flag (BLS). Thus, apar... |

84 | B.H.; “Computational techniques for hybrid system verification
- Chutinan, Krogh
(Show Context)
Citation Context ... of approaches are based in extending Simulink with libraries of predefined blocks and then using Simulink as a front-end or simulator. The hybrid-system model-checker CheckMate uses such an approach =-=[18, 6]-=-. [12] extend Simulink with the capability of expressing designs in the time-triggered language Giotto. [1] translate hybrid automata into Simulink and use its advanced numerical integration algorithm... |

69 | From simulink to scade/lustre to tta: a layered approach for distributed embedded applications
- Caspi, Curic, et al.
- 2003
(Show Context)
Citation Context ...hesis, code generation, and so on. Automation here is the key: high system complexity and short time-to-market make model reasoning a hopeless task, unless it is largely automatized. In previous work =-=[3]-=- we have proposed a design approach in three layers (Simulink, Lustre, TTA) and sketched how passing from one layer to another can be automatized. In this paper, we focus on the first two layers, Simu... |

62 | Synchronous Kahn networks
- Caspi, Pouzet
- 1996
(Show Context)
Citation Context ...ior of the type checking mechanism of Simulink depends on the simulation method and the “Boolean logic 2 The foundations of data-flow models were laid by Kahn [11]. Various such models are studied in =-=[13, 14, 4]-=-. 3 Thus, in general, it is possible to feed the output of a continuous-time block into the input of a discrete-time block and vice-versa. 4 According to classical text-books [2], there are two main w... |

50 |
Programming and verifying critical systems by means of the synchronous data-flow programming language Lustre
- Ratel, Halbwachs, et al.
- 1991
(Show Context)
Citation Context ... and has several features desirable in such applications, such as formal semantics, strong typing and modularity. A number of formal validation tools exist for Lustre, such as the model-checker Lesar =-=[16]-=-, the tester Lurette [17], plus a number of other tools for simulation, static-analysis and controller synthesis. Regarding implementation, a number of techniques and tools exist for generating C code... |

50 | Automatic testing of reactive systems
- Raymond, Nicollin, et al.
- 1998
(Show Context)
Citation Context ... desirable in such applications, such as formal semantics, strong typing and modularity. A number of formal validation tools exist for Lustre, such as the model-checker Lesar [16], the tester Lurette =-=[17]-=-, plus a number of other tools for simulation, static-analysis and controller synthesis. Regarding implementation, a number of techniques and tools exist for generating C code from Lustre programs. In... |

25 | Formal semantics and analysis methods for Simulink Stateflow models
- Tiwari
- 2002
(Show Context)
Citation Context ...” one. [10] report on MAGICA, a type-inference engine for Matlab. The focus is on deriving information such as whether variables have real or imaginary values, array sizes for non-scalars, and so on. =-=[20]-=- gives a formal semantics to Stateflow models using communicating pushdown automata. [15] presents the data model of Simulink and Stateflow as a UML class diagram. 2 The goals of the translation Simul... |

20 | A giotto-based helicopter control system
- Kirsch, Sanvido, et al.
- 2002
(Show Context)
Citation Context ...aches are based in extending Simulink with libraries of predefined blocks and then using Simulink as a front-end or simulator. The hybrid-system model-checker CheckMate uses such an approach [18, 6]. =-=[12]-=- extend Simulink with the capability of expressing designs in the time-triggered language Giotto. [1] translate hybrid automata into Simulink and use its advanced numerical integration algorithms and ... |

18 | Modeling and Verifying Hybrid dynamic systems using checkmate
- Silva
- 2000
(Show Context)
Citation Context ... of approaches are based in extending Simulink with libraries of predefined blocks and then using Simulink as a front-end or simulator. The hybrid-system model-checker CheckMate uses such an approach =-=[18, 6]-=-. [12] extend Simulink with the capability of expressing designs in the time-triggered language Giotto. [1] translate hybrid automata into Simulink and use its advanced numerical integration algorithm... |

14 | Jitterbug and Truetime: Analysis tools for real-time control systems
- Cervin, Henriksson, et al.
- 2002
(Show Context)
Citation Context ...i, presented in Section 8. Related work [21] report on an approach to co-simulate discrete controllers modeled in the synchronous language Signal [7] along with continuous plants modeled in Simulink. =-=[5]-=- present tools for co-simulation of process dynamics, control task execution and network communication in a distributed real-time control system. [19] use a model-checker to verify a Simulink/Stateflo... |

14 | Automated validation of software models
- Sims, Butts, et al.
- 2001
(Show Context)
Citation Context ... along with continuous plants modeled in Simulink. [5] present tools for co-simulation of process dynamics, control task execution and network communication in a distributed real-time control system. =-=[19]-=- use a model-checker to verify a Simulink/Stateflow model from the automotive domain, however, they translate their model manually to the input language of the model-checker. A number of approaches ar... |

9 | Embedded system design using the SPI workbench
- Jersak, Ziegenbein, et al.
- 2000
(Show Context)
Citation Context ...f expressing designs in the time-triggered language Giotto. [1] translate hybrid automata into Simulink and use its advanced numerical integration algorithms and user interface to perform simulation. =-=[9]-=- report on translating Simulink to the SPI model, a model of concurrent processes communicating with FIFO queues or registers. The focus seems to be the preservation of value over-writing which can oc... |

7 | Co-simulation of Hybrid Systems: Signal-Simulink
- Tudoret, Nadjm-Tehrani, et al.
- 2000
(Show Context)
Citation Context ...e algorithms have been implemented in a prototype tool presented in Section 7. The tool has been used to translate an industrial Simulink model, provided by Audi, presented in Section 8. Related work =-=[21]-=- report on an approach to co-simulate discrete controllers modeled in the synchronous language Signal [7] along with continuous plants modeled in Simulink. [5] present tools for co-simulation of proce... |

2 |
The MAGICA type inference engine for MATLAB
- Joisha, Banerjee
- 2003
(Show Context)
Citation Context ... communicating with FIFO queues or registers. The focus seems to be the preservation of value over-writing which can occur in multi-rate systems when a “slower” node receives input from a “fast” one. =-=[10]-=- report on MAGICA, a type-inference engine for Matlab. The focus is on deriving information such as whether variables have real or imaginary values, array sizes for non-scalars, and so on. [20] gives ... |

2 |
Simulink and Stateflow data model
- Neema
- 2001
(Show Context)
Citation Context ...g information such as whether variables have real or imaginary values, array sizes for non-scalars, and so on. [20] gives a formal semantics to Stateflow models using communicating pushdown automata. =-=[15]-=- presents the data model of Simulink and Stateflow as a UML class diagram. 2 The goals of the translation Simulink and Lustre are models manipulating signals and systems. Signals are functions of time... |

1 |
Simulation of hybrid automata using Matlab/Simulink
- Asarin, Dang, et al.
- 2003
(Show Context)
Citation Context ... front-end or simulator. The hybrid-system model-checker CheckMate uses such an approach [18, 6]. [12] extend Simulink with the capability of expressing designs in the time-triggered language Giotto. =-=[1]-=- translate hybrid automata into Simulink and use its advanced numerical integration algorithms and user interface to perform simulation. [9] report on translating Simulink to the SPI model, a model of... |