摘自:The Synchronous Langages 12 Years Later
简介
1991年,《IEEE论文集》专门对同步语言[1]、[2]进行了专门的讨论。其中包括描述三种法国同步语言Esterel[3]、Lustre[4]和Signal[5]的论文,这也是本文的主题。当时,这三种语言已经有了很好的定义,并在工业上得到了一些应用,但仍处于开发阶段。在此期间,这些语言得到了改进,获得了更大的用户社区,并成功地实现了商业化。现在,同步语言已经成为建模、指定、验证和实现实时嵌入式应用程序的首选技术。同步模式已经成为一种基于数学工具的工程友好的设计方法。
A.同步基础
安全关键型嵌入式系统的设计者的主要目标是使他或她自己、客户和认证机构相信设计和实现是正确的。与此同时,他或她必须控制开发和维护成本,并满足系统设计的非功能约束,如成本、功率、重量或系统架构本身(例如,由智能传感器和执行器组成的物理分布式系统,由中央计算机监控)。满足这些目标需要设计方法和工具与现有的设计流无缝集成,并建立在坚实的数学基础上。
使用坚实的数学基础的主要优点是能够对系统的运行进行形式化的推理。这有助于认证,因为它减少了不确定性,并使其有可能构建有关系统运行的证明。这还改进了实现过程,因为它支持自动构造不同实现所需的程序操作,例如,对于满足非功能约束非常有用。
在20世纪80年代,这些观察导致了对同步语言的以下决定。
- 1)并发性——这