Optimization for faster execution of Esterel programs

  • Authors:
  • Dumitru Potop-Butucaru;Robert de Simone

  • Affiliations:
  • IRISA, Campus de Beaulieu, Rennes, France;INRIA, rte. des Lucioles, Sophia Antipolis Cedex, France

  • Venue:
  • Formal methods and models for system design
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

The fine-grained parallelism and the need for determinism are traditional issues in the design of real-time embedded software. In addition, the increasing complexity of the specifications requires an increasing use of higher level formalisms. The Esterel language offers natural solutions to all these problems, but its compilation proved challenging, so that efficient compilation techniques have only recently been proposed. Consisting essentially in direct simulation of the reactive primitives of the language, these techniques now need to be accommodated with traditional issues of Esterel: the definition of formal semantics, the constructive causality, and the design of analysis and optimization methods that are both efficient and correct.We address these problems by defining a new intermediate model, called GRC, for the representation of Esterel programs. The GRC representation preserves much of the initial program structure while making the control flow pattern and the hierarchical state structure explicit. It fully complies with the semantics of Esterel, and, most important, it is a good support for efficient analysis, optimization, and code generation algorithms based on static analysis.The use of a GRC-based approach results in significant efficiency and generality gains. The approach could be extended to the hardware compilation of Esterel and to the compilation of other synchronous languages with fine-grained parallelism.