SCADE 6: A formal language for embedded critical software development (invited paper)

Jean-Louis Colaço, B. Pagano, Marc Pouzet
{"title":"SCADE 6: A formal language for embedded critical software development (invited paper)","authors":"Jean-Louis Colaço, B. Pagano, Marc Pouzet","doi":"10.1109/TASE.2017.8285623","DOIUrl":null,"url":null,"abstract":"SCADE is a high-level language and environment for developing safety-critical embedded control software. It has been used for more than twenty years in various application domains like avionics, nuclear plants, transportation, and automotive. SCADE was founded on the synchronous data-flow language Lustre invented by Caspi and Halbwachs. In the early years, it was mainly seen as a graphical notation for Lustre but with the unique and key addition of a code generator qualified to the highest standards for safety-critical applications. In 2008, a major revision based on the new language ‘Scade 6’ was released. This language is an original combination of the Lustre data-flow style with control structures borrowed from Esterel and SyncCharts, and compilation and static analyses from Lucid Synchrone for ensuring safety properties. This increase in expressiveness together with the qualified code generator have dramatically widened SCADE scope of applications. While previous publications have described some of its language constructs and compiler algorithms, no reference publication on ‘Scade 6’ exists to date. In this paper, we recall the decisions made in its design, illustrate the main language features and static analyses, and describe the compiler organization developed to satisfy the qualification process.","PeriodicalId":221968,"journal":{"name":"2017 International Symposium on Theoretical Aspects of Software Engineering (TASE)","volume":"52 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"64","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 International Symposium on Theoretical Aspects of Software Engineering (TASE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/TASE.2017.8285623","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 64

Abstract

SCADE is a high-level language and environment for developing safety-critical embedded control software. It has been used for more than twenty years in various application domains like avionics, nuclear plants, transportation, and automotive. SCADE was founded on the synchronous data-flow language Lustre invented by Caspi and Halbwachs. In the early years, it was mainly seen as a graphical notation for Lustre but with the unique and key addition of a code generator qualified to the highest standards for safety-critical applications. In 2008, a major revision based on the new language ‘Scade 6’ was released. This language is an original combination of the Lustre data-flow style with control structures borrowed from Esterel and SyncCharts, and compilation and static analyses from Lucid Synchrone for ensuring safety properties. This increase in expressiveness together with the qualified code generator have dramatically widened SCADE scope of applications. While previous publications have described some of its language constructs and compiler algorithms, no reference publication on ‘Scade 6’ exists to date. In this paper, we recall the decisions made in its design, illustrate the main language features and static analyses, and describe the compiler organization developed to satisfy the qualification process.
SCADE 6:用于嵌入式关键软件开发的正式语言(特邀论文)
SCADE是用于开发安全关键嵌入式控制软件的高级语言和环境。它已经在航空电子、核电站、运输和汽车等各种应用领域使用了二十多年。SCADE是建立在Caspi和Halbwachs发明的同步数据流语言Lustre之上的。在早期,它主要被视为Lustre的图形符号,但具有独特和关键的代码生成器,符合安全关键应用的最高标准。2008年,基于新语言Scade 6的主要修订版发布了。该语言是Lustre数据流风格与借鉴Esterel和SyncCharts的控制结构的原始组合,以及Lucid Synchrone的编译和静态分析,以确保安全属性。这种表现力的增强与合格的代码生成器一起极大地扩大了SCADE的应用范围。虽然以前的出版物描述了它的一些语言结构和编译器算法,但迄今为止还没有关于“Scade 6”的参考出版物。在本文中,我们回顾了在其设计过程中所做的决定,说明了主要的语言特性和静态分析,并描述了为满足鉴定过程而开发的编译器组织。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信