嵌入式系统的可靠性与测试策略
1. 嵌入式系统的可靠性规划
1.1 可靠性目标设定
可靠性目标并非只是一个简单的数字,它必须与系统和客户的实际需求相关。在设定可靠性目标时,首先要思考“对于我们的系统而言,可靠意味着什么”。常见的答案包括系统不崩溃、不给出错误答案、保持稳定控制、不遗漏预定数据样本、不丢失已获取的数据、在特定时间内响应用户输入、在出现问题前向用户发出警告等。
然而,一个系统很少需要在所有方面都具备可靠性。而且,构建可靠系统成本高昂,因此需要仔细考虑哪些可靠性特征是重要的,哪些不是。经过思考后,列出真正关心的可靠性属性。
可靠性目标的设定还需要考虑接近完美的程度。“永不失败”是不现实的目标,因为设计者可能会忽略一些系统失败的方式,而且“永不”是一个极长的时间概念。确定一个合理的时间范围,使其接近“永不失败”的效果。同时,还需要找到一种方法来衡量系统是否达到了目标,这个衡量指标必须既有用又易于测量。以下是一些不同程度的可靠性目标示例:
| 目标类型 | 具体目标 | 评价 |
| — | — | — |
| 不现实目标 | “系统永远不会崩溃” | “永远”时间太长,不切实际 |
| 表述不佳目标 | “系统应可靠” | 未明确可靠的具体程度 |
| 不现实目标 | “软件应无缺陷” | 几乎不可能实现,且难以确认是否有遗漏的错误 |
| 不完整目标 | “硬件平均无故障时间(MTBF)至少为 10,000 小时” | 未考虑软件因素 |
| 较好目标 | “所有来源导致的系统故障平均间隔时间至少为 2000 运行小时” | 综合考虑多种因素 |
| 较好目标 | “