汽车功能安全的“独立性“要求:为什么两个系统“都好“不等于“一起好“

汽车功能安全的“独立性“要求:为什么两个系统“都好“不等于“一起好“
一个看似悖论的工程问题有一道功能安全领域经典的思考题假设你有两个检测传感器每个传感器单独的可靠性都是99%你用它们做冗余方案任一个检测到故障就触发保护。那么这个冗余系统的整体可靠性是多少很多人的第一反应是比99%更高接近99.99%两者同时失效的概率是0.01%×0.01%0.0001%。但这个答案的前提是两个传感器的失效彼此独立。如果两个传感器安装在同一个位置、使用同一电源、经历同一环境当某个环境因素导致一个传感器失效时大概率同一因素也会导致另一个传感器失效。在这种情况下冗余提供的保护可能远比你想象的少。这就是ISO 26262在功能安全分析中重点关注的独立性Independence问题具体体现为“相关失效分析DFADependent Failure Analysis”的要求。相关失效的两种类型ISO 26262将相关失效分为两大类共因失效CCFCommon Cause Failure多个系统因为同一个根本原因同时失效。上面例子中的两个传感器共享电源就是一种典型的共因失效场景。在车规MCU的应用中共因失效的典型来源共享电源两个冗余控制器使用同一路电源电源故障导致两者同时失效共享时钟锁步双核的两个核心共享一个时钟树时钟故障影响两个核心共享冷却多个ECU安装在同一个散热器上散热失效导致所有ECU同时过温级联失效Cascading Failure一个组件的失效导致了另一个组件的失效。比如电源电压失调→控制器重置→控制输出错误→执行器损坏→机械故障。每一步失效都是前一步的直接结果形成一个因果链。DFA在车规MCU开发中的具体要求ISO 26262 Part 9专门定义了相关失效分析DFA的方法和要求。对于ASIL-C和ASIL-D的系统DFA是必须执行的安全分析活动。DFA的分析目标识别所有可能导致相关失效的共因评估其对安全目标的影响并确保对于ASIL-D系统每个单点故障都有覆盖措施、对于ASIL分解方案两个独立通道之间不存在未被覆盖的共因失效所有潜伏故障都能在MFTTI内被检测到MCU层面的DFA考量当一颗MCU通过ASIL分解支持两个独立的ASIL-B通道时DFA需要分析芯片内部的独立性两个ASIL-B通道在MCU内部是否有共享的硬件资源这些共享资源是否是相关失效的来源封装级别的共因同一封装内的两颗Die如MCUSafety Companion它们之间是否有共用的封装内部连接热应力是否会同时影响两颗Die外部故障注入路径通过I/O引脚注入的电磁干扰ESD、Burst是否可以同时影响两个独立通道独立性的量化ISO 26262的要求ISO 26262对独立性有定性要求但也提供了一些量化指导。对于ASIL-D的ASIL分解D→BBISO 26262要求证明两个B通道之间的相关失效率足够低以至于相关失效不会显著降低分解方案达到D级的等效安全性。这个足够低在实践中通常通过以下方式证明设计措施的有效性论证列举所有可能的共因说明采取了哪些设计措施来削减共因影响并论证这些措施的有效性。残余共因失效率估计对于无法完全消除的共因估计该共因导致两个通道同时失效的概率并论证这个概率在可接受范围内。独立性评估矩阵有些安全认证机构要求提交结构化的独立性评估矩阵逐项列举所有可能的共享资源和外部影响及其独立性证明。一个需要特别关注的场景ASIL分解与芯片复用在实际项目中有一个常见的设计模式值得特别讨论使用同一型号MCU的两颗芯片实现ASIL-D→ASIL-BASIL-B的分解。表面上看两颗物理上独立的MCU似乎可以实现充分的独立性。但DFA分析可能揭示系统设计缺陷Systematic Fault如果两颗MCU运行的是同一份软件代码这份代码中的一个系统性bug会同时影响两颗MCU——因为系统性缺陷的来源是相同的设计而不是随机的制造缺陷。ISO 26262对此有明确规定ASIL分解只能有效降低随机硬件失效Random Hardware Failure的影响对于系统性失效Systematic Failure不能仅靠硬件冗余来实现ASIL分解。要实现有效的软件层面ASIL分解两个通道必须使用不同设计Diverse Design——不同算法实现、不同团队开发甚至不同编程语言以保证两者不共享系统性失效的根因。这个要求在工程上代价很高这也是为什么高ASIL等级系统的开发成本居高不下的原因之一。对MCU设计的启示对于RISC-V车规MCU的设计者来说上述分析给出了一些值得深思的设计方向在片上实现真正独立的安全岛Safety Island安全岛有独立的电源域、独立的时钟域、独立的内存与主处理器子系统在物理上具有最大程度的独立性。这使得Safety Island可以在主处理器发生系统性故障时仍然独立地检测故障并切换到安全状态。透明度支持DFA文档化芯片供应商在安全手册中应明确列出芯片内部的共享资源以及已采取的隔离措施为系统集成商的DFA提供可靠的输入。这种文档透明度是专业车规芯片供应商与普通消费级芯片供应商的重要差别之一。结语独立性分析是功能安全系统设计中最考验系统思维的工作之一。它要求工程师打破模块思维——不能只看单个组件好不好而要审视整个系统的失效相关性。两个各自ASIL-B的组件如果共享了关键资源加在一起不一定能等效于ASIL-D。这个道理看起来简单但在复杂的多组件系统中认真执行需要系统性的分析方法和丰富的工程经验。理解DFA的要求是汽车电子工程师从会做功能安全分析到真正理解功能安全思维的重要跨越。