Divide and Recycle: Types and Compilation for a Hybrid Synchronous Language

被引:0
|
作者
Benveniste, Albert [1 ]
Bourke, Timothy [1 ]
Caillaud, Benoit [1 ]
Pouzet, Marc
机构
[1] INRIA Rennes, Rennes, France
关键词
Real-time systems; Hybrid systems; Synchronous languages; Block diagrams; Compilation; Semantics; Type Systems;
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
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 source-to-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.
引用
收藏
页码:61 / 70
页数:10
相关论文
共 50 条
  • [41] DATA LAYOUTS IMPACTS ON THE COMPILATION OF THE COMMUNICATIONS FOR A SYNCHRONOUS MSIMD MACHINE
    DELAPLACE, F
    CAPPELLO, F
    [J]. MICROPROCESSING AND MICROPROGRAMMING, 1992, 35 (1-5): : 469 - 476
  • [42] Troll and divide: the language of online polarization
    Simchon, Almog
    Brady, William J.
    Van Bavel, Jay J.
    [J]. PNAS NEXUS, 2022, 1 (01):
  • [43] Model-Driven Verifying Compilation of Synchronous Distributed Applications
    Chaki, Sagar
    Edmondson, James
    [J]. MODEL-DRIVEN ENGINEERING LANGUAGES AND SYSTEMS, MODELS 2014, 2014, 8767 : 201 - 217
  • [44] Is there a language divide in Pap test use?
    Ponce, Ninez A.
    Chawla, Neetu
    Babey, Susan H.
    Gatchell, Melissa S.
    Etzioni, David A.
    Spencer, Benjamin A.
    Brown, E. Richard
    Breen, Nancy
    [J]. MEDICAL CARE, 2006, 44 (11) : 998 - 1004
  • [45] Language Teaching across the Digital Divide
    Earner, Allyson
    [J]. TECHNOLOGY ENHANCED LEARNING: QUALITY OF TEACHING AND EDUCATIONAL REFORM, 2010, 73 : 36 - 41
  • [46] Injection moulding - The great language divide
    Johannaber, F
    [J]. KUNSTSTOFFE-PLAST EUROPE, 1996, 86 (02): : 1 - 1
  • [47] Digital divide within the context of language and foreign language teaching
    Yaman, Ismail
    [J]. INTERNATIONAL EDUCATIONAL TECHNOLOGY CONFERENCE, IETC 2014, 2015, 176 : 766 - 771
  • [48] Elizabethan and Jacobean Lute Manuscripts: Types, Characteristics and Compilation
    Craig-McFeely, Julia
    [J]. ETUDES ANGLAISES, 2020, 73 (03): : 369 - 381
  • [49] Synchronous Programming with Refinement Types
    Chen, Jiawei
    De Mendonca, Jose Luiz Vargas
    Ayele, Bereket Shimels
    Bekele, Bereket Ngussie
    Jalili, Shayan
    Sharma, Pranjal
    Wohlfeil, Nicholas
    Zhang, Yicheng
    Jeannin, Jean-Baptiste
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2024, 8 (ICFP):
  • [50] Synchronous Multiparty Session Types
    Bejleri, Andi
    Yoshida, Nobuko
    [J]. ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2009, 241 : 3 - 33