20、基于模型的错误检查代码和属性监视器设计

基于模型的错误检查代码和属性监视器设计

在复杂嵌入式系统的设计中,确保系统的正确性,包括功能和非功能方面,是至关重要的。本文将介绍一种基于模型的设计流程,用于处理断言和假设,以保障系统的正确性。

1. 设计要求与流程

设计要求可采用自底向上和自顶向下两种方式使用。
- 自底向上 :明确规定实现者针对组件用户承诺遵守的契约。只要满足假设条件,断言就能得到保证。例如,用 C 语言编写的一段软件,若“int”变量至少有 32 位,就能以 1%的精度计算响应。
- 自顶向下 :规定实现者必须遵守的要求,并说明其对组件用户可做出的假设。

自底向上设计流程的一个关键方面是对各个组件的断言进行组合,同时检查所使用的组件能否相互保证对方的假设。虽然全面的组合证明方法需要定理证明,但在实际中,可使用监视器在组件的整个生命周期内跟踪这些要求。在安全关键的嵌入式软件中,如汽车行业,这已是常见做法。

在设计流程中,使用相同的断言或假设描述用于各个设计阶段是一项创新。这不仅能确保系统设计流程中各方之间的精确契约义务,还能显著简化团队或公司之间的交接点,加速最终代码的实现。

而在自顶向下设计中,系统的全局输入输出要求会被分解为设计中每个组件必须满足的子属性。

2. 属性规范语言

逻辑约束(Logic Of Constraints,LOC)是一种用于推理执行轨迹的形式化方法。它由基本的关系、布尔和蕴含运算符组成,能在不影响分析便利性的前提下,指定系统级的定量功能和性能约束。

LOC 公式的基本组件包括:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值