Skip to main navigation Skip to search Skip to main content

Divide and recycle: Types and compilation for a hybrid synchronous language

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Hybrid modelers such as SIMULINK have become corner stones of embedded systems development. They allow both discrete controllers and their continuous environments to be expressed in a single language. Despite the availability of such tools, there remain a number of issues related to the lack of reproducibility of simulations and to the separation of the continuous part, which has to be exercised by a numerical solver, from the discrete part, which must be guaranteed not to evolve during a step. Starting from a minimal, yet full-featured, LUSTRE-like synchronous language, this paper presents a conservative extension where data-flow equations can be mixed with ordinary differential equations (ODEs) with possible reset. A type system is proposed to statically distinguish discrete computations from continuous ones and to ensure that signals are used in their proper domains. We propose a semantics based on non-standard analysis which gives a synchronous interpretation to the whole language, clarifies the discrete/continuous interaction and the treatment of zero-crossings, and also allows the correctness of the type system to be established. The extended data-flow language is realized through a sourceto-source transformation into a synchronous subset, which can then be compiled using existing tools into routines that are both efficient and bounded in their use of memory. These routines are orchestrated with a single off-the-shelf numerical solver using a simple but precise algorithm which treats causally-related cascades of zero-crossings. We have validated the viability of the approach through experiments with the SUNDIALS library.

Original languageEnglish
Title of host publicationLCTES'11 - Proceedings of the ACM SIGPLAN/SIGBED 2011 Conference on Languages, Compilers, Tools and Theory for Embedded Systems
Pages61-70
Number of pages10
DOIs
Publication statusPublished - 10 May 2011
EventACM SIGPLAN/SIGBED Conference on Languages Compilers, Tools, and Theory for Embedded Systems, LCTES 2011 - Chicago, IL, United States
Duration: 11 Apr 201114 Apr 2011

Publication series

NameProceedings of the ACM SIGPLAN Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES)

Conference

ConferenceACM SIGPLAN/SIGBED Conference on Languages Compilers, Tools, and Theory for Embedded Systems, LCTES 2011
Country/TerritoryUnited States
CityChicago, IL
Period11/04/1114/04/11

Keywords

  • Block diagrams
  • Compilation
  • Hybrid systems
  • Real-time systems
  • Semantics
  • Synchronous languages
  • Type systems

Fingerprint

Dive into the research topics of 'Divide and recycle: Types and compilation for a hybrid synchronous language'. Together they form a unique fingerprint.

Cite this