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
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
Dissertation

Assistance au raffinement dans la conception des systèmes embarqués

TL;DR: La methode proposee permet de raisonner sur les differents niveaux de description d'un systeme en exploitant des techniques de preuve de proprietes associees aux raffinement formel.

Model-Based Development of Software-intensive Automotive Systems

Stefan Kugele
TL;DR: This thesis proposes the "COLA automotive approach", which enables seamless model-based development of software-intensive automotive systems along different levels of abstraction and takes the principle of "separation of concerns" into account.

A Service-Oriented Development Process for Distributed Reactive Systems

TL;DR: A service-oriented development process for multifunctional, software-intensive, distributed reactive systems, focusing on the iterative design of system architectures and model-based system design specifications is introduced.
Journal ArticleDOI

Automatic generation of safe handlers for multi-task systems

TL;DR: A model of tasks in terms of transition systems, designed especially with the purpose of applying existing discrete controller synthesis techniques, is proposed, which provides a systematic methodology for the automatic generation of safe task handlers.
Dissertation

Commutations sûres de mode pour les systèmes à événements discrets

TL;DR: Un travail presente dans ce memoire concerne une demarche de conception appliquee a une gestion modale pour les systemes a evenements discrets (SED), which proposee possede plusieurs etapes separant ainsi les differentes etudes de conception.
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)