一、功能安全概述:什么是功能安全?

大家好,我是老张。做功能安全这行十几年了,今天咱们聊聊最基础的问题——功能安全到底是什么

很多人一听「安全」,第一反应是「防电、防火、防爆炸」。嗯,这些叫本质安全。但功能安全不一样。它关注的是:系统出故障时,能不能安全地失效

我举个例子你就明白了。你开车时踩刹车,刹车失灵了——这时候系统应该怎么办?是直接让刹车完全失效,还是能自动切换到备用回路?功能安全要解决的,就是这种「万一出事了,怎么不出大事」的问题。

说白了,功能安全不是防止故障发生,而是防止故障导致危害

核心定义:功能安全是系统整体安全的一部分,它依赖于系统对输入的正确响应,以及在出现故障时能够安全地降级或停止。

1.1 为什么我们需要功能安全?

你想想看,现在的汽车、工业设备、医疗仪器,哪个不是电子系统控制的?电子系统会坏,软件会有bug,传感器会漂移。这些故障如果发生在关键时刻,后果可能是灾难性的。

我记得2015年做过一个项目,客户的车载控制器在高温测试时频繁重启。排查到最后,是电源管理芯片的过温保护阈值设得太低了。你说这是不是故障?是。但后果呢?车辆在高速上突然断电,方向盘锁死——这就不只是故障了,这是安全事故

所以,功能安全的核心思想就一句话:允许系统出故障,但不允许出事故

1.2 功能安全的发展历史

功能安全不是凭空冒出来的。它的发展,其实是一部「血的教训史」。

年代 标志性事件 影响
1970s 化工、核电领域多次重大事故 开始提出安全仪表系统(SIS)概念
1980s 英国北海石油平台爆炸 催生了对安全关键系统的系统性研究
1990s IEC 61508 草案发布 第一个通用的功能安全国际标准诞生
2000s 汽车电子快速发展 ISO 26262 从 IEC 61508 衍生出来
2010s至今 自动驾驶、AI 安全 功能安全与预期功能安全(SOTIF)融合

我个人习惯把功能安全的发展分成三个阶段:

  • 第一阶段(1970-1990):靠经验。出了事故再改设计,说白了就是「亡羊补牢」。
  • 第二阶段(1990-2010):靠标准。IEC 61508 出来后,大家有了统一的方法论,知道怎么系统地做安全设计了。
  • 第三阶段(2010至今):靠体系。功能安全不再是某个工程师的事,而是整个开发流程的一部分。

我的经验:很多公司做功能安全,上来就买工具、做文档,结果发现根本推不动。为什么?因为没有理解功能安全是一种「思维方式」,不是一套「模板」。我建议你先从理解标准背后的逻辑开始,而不是急着填表格。

1.3 核心标准:IEC 61508

IEC 61508 是所有功能安全标准的「老祖宗」。它覆盖了电气、电子、可编程电子安全相关系统(E/E/PE)。

这个标准的核心概念有几个:

  • 安全完整性等级(SIL):分 SIL 1 到 SIL 4,数字越大,安全要求越高。
  • 安全生命周期:从概念设计到退役,全流程都要考虑安全。
  • 危险与可操作性分析(HAZOP):识别系统可能出现的危险。

我刚开始接触 IEC 61508 时,觉得它太抽象了。后来做项目多了才发现,它其实是在教你一件事:怎么系统地证明你的系统是安全的

举个例子,你要证明一个刹车系统是安全的。光说「我用了双冗余」不够。你得拿出证据:冗余怎么设计的?诊断覆盖率多少?共因失效怎么避免?这些证据,就是 IEC 61508 要求你提供的。

避坑指南:我曾经见过一个团队,为了达到 SIL 3,堆了四重冗余。结果呢?系统复杂度爆炸,反而引入了更多故障模式。记住:冗余不是越多越好,关键是诊断和独立性。

1.4 汽车行业标准:ISO 26262

ISO 26262 是 IEC 61508 在汽车行业的「定制版」。它把 SIL 改成了 ASIL(汽车安全完整性等级),分 A、B、C、D 四个等级。ASIL D 是最高的,比如刹车、转向这类系统。

ISO 26262 有几个关键变化:

  • 引入了「安全目标」:每个危险事件都要对应一个安全目标,比如「刹车失灵时,必须在 200ms 内激活备用回路」。
  • 细化了硬件度量:单点故障度量(SPFM)、潜伏故障度量(LFM)、随机硬件失效概率(PMHF)。
  • 强调了「安全文化」:不只是技术问题,组织、流程、人员能力都要跟上。

我做过一个 ASIL D 的转向系统项目。说实话,最难的不是技术实现,而是证明你实现了。你设计了一个诊断机制,怎么证明它覆盖了 99% 的故障?你得做 FMEDA(故障模式影响与诊断分析),算覆盖率,然后拿数据说话。

嗯,这里要注意:ISO 26262 第二版(2018年)已经扩展到了商用车、摩托车,甚至半导体。所以现在做芯片的同事也要懂功能安全了。

1.5 功能安全的核心原则

不管哪个标准,功能安全的核心原则就几条:

  1. 故障避免:通过设计、工艺、选型,减少故障发生的可能性。
  2. 故障检测:故障发生了,系统能及时发现。
  3. 故障响应:检测到故障后,系统能安全地降级或停止。
  4. 故障容错:即使有故障,系统仍能维持安全功能。

说白了,就是「防、查、应、容」四个字。我每次给团队培训,都让他们记住这四个字。因为所有功能安全的设计,归根结底都是在做这四件事。

一句话总结:功能安全不是「不出故障」,而是「故障了也不出事」。它需要你从系统层面思考,用标准的方法论,一步步证明你的设计是安全的。

好了,第一章就聊到这儿。下一章我们深入讲讲安全生命周期,看看一个功能安全项目到底该怎么从头做到尾。