scispace - formally typeset
Open AccessJournal ArticleDOI

Mode-automata: a new domain-specific construct for the development of safe critical systems

Florence Maraninchi, +1 more
- Vol. 46, Iss: 3, pp 219-254
Reads0
Chats0
TLDR
This paper defines the language of mode-automata and its semantics, gives some ideas on the compilation process, illustrates the approach with the example of the production cell, and comment on the benefits of the approach, in general.
Abstract
Over the past ten years, the family of synchronous languages (Special Section of the Proc. IEEE 79 (9) (1991)) has been very successful in offering domain-specific, formally defined languages and programming environments for safety-critical systems. Among them, Lustre is well-suited for the development of regulation systems, which are first designed by control engineers, and can then be programmed as block-diagrams. Automatic generation of C code provides the embedded software.The success of Lustre showed that it is a good idea to offer domain-specific languages and constructs to reduce the gap between the first design of a system (for instance a control law) and the program written for it. When the structure of the first design has to be encoded into the available constructs of a general-purpose programming language, the interesting information is likely to be lost somewhere on the way from the original design to the actual implementation. This may have consequences on the efficiency of the code produced, or even on the correctness of the design.Working with the systems Lustre is well-suited for, we observed that they are often specified informally using the notion of running modes. However, there seemed to exist no language in which the mode-structure of a complex system could be expressed directly. Following the approach of domain-specific languages, we proposed to extend Lustre with a new construct, called mode-automaton, devoted to the description of these running modes of regulation systems.In this paper, we define the language of mode-automata and its semantics, give some ideas on the compilation process, illustrate the approach with the example of the production cell, and comment on the benefits of the approach, in general.

read more

Citations
More filters
Proceedings ArticleDOI

A supervisor implementation approach in Discrete Controller Synthesis

TL;DR: The implementation technique proposed is able to solve both control non-determinism and the structural incompatibility introduced by symbolic DCS.
Proceedings ArticleDOI

Modeling and Formal Control of Partial Dynamic Reconfiguration

TL;DR: An approach for the safe design and modeling of dynamically reconfigurable FPGA based Systems-on-Chip using the OMG standard profile UML/MARTE to synthesize a controller using a formal technique which significantly simplifies the correct design of reconfiguration control.
Journal ArticleDOI

Modeling Embedded Systems: From SystemC and Esterel to DFCharts

TL;DR: The authors create a new model of computation and a graphical language to gain the direct expressivity they need for their model, mainly standard SystemC and Esterel.
Proceedings ArticleDOI

The Sigali Tool Box Environment

TL;DR: Sigali is a tool that offers functionalities for verification of reactive systems and discrete controller synthesis that manipulates ILTS: Implicit Labeled Transition Systems, an equational and symbolic representation of automata.
Journal ArticleDOI

Clock-directed modular code generation for synchronous data-flow languages

TL;DR: The compilation of synchronous block diagrams into sequential imperative code has been addressed in the early eighties and can now be considered as folklore.
References
More filters
Journal ArticleDOI

Statecharts: A visual formalism for complex systems

TL;DR: It is intended to demonstrate here that statecharts counter many of the objections raised against conventional state diagrams, and thus appear to render specification by diagrams an attractive and plausible approach.
Journal ArticleDOI

The ESTEREL synchronous programming language: design, semantics, implementation

TL;DR: This paper presents the imperative primitives of E esterel and the temporal manipulations they permit, and shows how the E Esterel v2 and V3 compilers efficiently translate concurrent E esteretl programs into efficient equivalent sequential automata that can be implemented in conventional sequential languages.

LUSTRE: A declarative language for programming synchronous systems*

TL;DR: This paper presents the language LUSTRE, whose main application field is the programming of automatic control and signal processing systems, and uses it as a basis for designing and programming these systems.
Proceedings ArticleDOI

LUSTRE: a declarative language for real-time programming

TL;DR: This work describes its semantics by means of structural inference rules and shows how to use this semantics in order to generate efficient sequential code, namely, a finite state automaton which represents the control of the program.
Related Papers (5)