打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
十八般武艺-安全机制系列之概述
01
好的安全机制?
什么样的安全机制算是一个好的安全机制?
大家可能有各自的看法,我们认为,一个好的安全机制应该满足以下几点:
高诊断覆盖率
低误报率
实现简单,资源消耗少
对原有架构的改动小
安全机制和功能的共因点少
02
诊断覆盖率
我们重点讲讲怎么评估诊断覆盖率。诊断覆盖率的定义是:硬件要素失效率中,由实施的安全机制探测或控制的失效率所占的比例。由该定义直接评估诊断覆盖率,需要基于大量的硬件随机失效事件考察安全机制的有效性,实际操作中很难实现。一般情况下对诊断覆盖率分为三个等级:Low(60%), Medium(90%), High(99%)。基于ISO 26262标准,提供了两种可用的较为简单的确定诊断覆盖率的方法:
2.1 基于能够探测的失效模式
一个典型的系统(包含传感器、控制器、执行器)硬件要素如下图1所示。
图1 常见系统硬件
对于硬件要素来说,其失效模式分布呈一定的统计规律。基于硬件要素的失效模式分布,能够诊断某些失效模式或失效模式的组合,得出相应的诊断覆盖率。以图1系统所含硬件要素传感器为例,Low/ Medium / High三种不同的诊断覆盖率与其所需要能够覆盖的失效模式对应如下表1所示:
表1 传感器失效模式分析
要素
60%、90%、99%诊断覆盖率对应的、所需分析的失效模式
低(60%)
中(90%)
高(99%)
传感器
无通用的故障模型,需要细节分析。应覆盖的典型失效模式包括:
超出范围;
在范围之内卡滞
无通用的故障模型,需要细节分析。应覆盖的典型失效模式包括:
超出范围;
偏移;
在范围之内卡滞
无通用的故障模型,需要细节分析。应覆盖的典型失效模式包括:
超出范围;
偏移;
在范围之内卡滞;
振荡
注1: 上表所列诊断覆盖率所应包含的失效模式是针对硬件要素所有失效的。实际上,要素失效模式并非在所有场景下均是影响安全的,如果某失效模式并不影响安全,即使所采用的安全机制并不能探测该失效模式,并不降低该安全机制的有效性。例如,如果振荡不影响安全,那么振荡即是安全故障,即使安全机制只能探测超出范围、偏移、卡滞,就安全目标而言,对传感器的诊断覆盖率也达到了99%
注2: 上表是失效模式与诊断覆盖率的Mapping,其背后假设是失效模式分布。在本表中,即认为在传感器失效模式中,超出范围和在范围之内卡滞占比为60%,加上偏移占比为90%,再加上振荡占比为99%。如果有数据表明,对特定类型传感器失效模式超出范围占比为90%,即使只针对超出范围设计了安全机制,对传感器的诊断覆盖率也能够声明为Medium。
2.2 基于采用的安全机制
根据对硬件要素采用的安全机制,ISO26262同样给出了可供参考的诊断覆盖率。
例:针对传感器,若只采用短电源、短地诊断(即下表2中传感器有效范围),诊断覆盖率为Low;若采用双冗余传感器做相互校验(即下表2中传感器相关性),诊断覆盖率为high。
表2 ISO 26262 Part5 Table D.9传感器安全机制与诊断覆盖率
安全机制/措施
可实现的典型诊断覆盖率
备注
通过在线监控进行失效探测
取决于失效探测的诊断覆盖率。
测试模式
输入比对/表决(1oo2、2oo3或者更好的冗余)
仅当数据流的改变出现在诊断测试间隔内。
传感器有效范围
探测对地或电源短路、及部分开路。
传感器相关性
探测有效范围内失效。
传感器合理性检查
注1:根据能够覆盖的失效模式与根据采用的安全机制评估诊断覆盖率,双方并无本质的不同。表2安全机制与诊断覆盖率的关联,其背后逻辑依然是安全机制-能够覆盖的失效模式-失效模式分布。如传感器有效范围,能够诊断表1传感器失效模式中的超出范围、在范围之内卡滞,诊断覆盖率为Low。而对于输入对比/表决和传感器相关性,则能够诊断超出范围、在范围之内卡滞、偏移、振荡,诊断覆盖率为High。
注2:ISO 26262提供的两种诊断覆盖率评估,都是针对硬件要素而言,针对具体的失效模式,可以有更细致的评估。例如传感器有效范围,针对失效模式超出范围,诊断覆盖率可以评估为100%,针对偏移、振荡,可以评估为0
两种诊断覆盖率的评估方法各自的适用场景如下表3所示。
表3诊断覆盖率的评估方法适用场景
场景
建议方法
针对器件失效仅采用单个安全机制
安全机制有诊断覆盖率参考
基于采用的安全机制
针对器件失效仅采用单个安全机制
安全机制无诊断覆盖率参考
基于能够探测的失效模式
针对器件失效仅采用多个安全机制
基于能够探测的失效模式
以上我们讲了怎样快速评估安全机制的诊断覆盖率。安全机制的诊断覆盖率根本上取决于失效模式的特征区域和安全机制的特征区域两者之间的重叠情况。什么意思呢?我们同样以传感器为例
图2 传感器A_Master的安全运行边界
说明:
1——传感器A_Master的安全相关下边界µSafRel,A,min
2——带有0偏差的理想传感器返回值(作为参考)
3——具有违背安全目标潜在可能的故障
图2中,x轴是需要测量的真实物理值v,y轴是传感器A_Master的返回值mA,Master。虚线表示作为参考的理想传感器(即:具有0偏差的传感器)返回值。实线表示µSafRel,A,min。如果传感器A_Master的返回值mA,Master在实线上或高于实线,可能发生安全目标的违背。
当我们采用安全机制1, 传感器合理性时,能够诊断的情况如图中绿色区域所示:
图3 传感器合理性诊断覆盖率
很明显,还有很大场景下的失效没有覆盖到。
当我们采用安全机制2-传感器相关性,即cross-check进行校验。增加传感器A_Checker,输出采用A_Master的值。当A_Master  A_Checker间的阈值超出阈值时,报出故障。
定义ΔA=mA, Master – mA,Checker
如果ΔA≥ΔMax,那么传感器发生故障。
考虑到为了防止误报,
ΔMax≥cA, Master+cA, Checker+cA,other
cA, Master——代表传感器A_Master偏差的常值。
cA, Checker——代表传感器A_Checker偏差的常值。
a) 传感器精度较差, 值较大
b) 传感器精度较高, 值较小
图4 cross-check诊断覆盖率
从图中可以看出,诊断覆盖率受影响。当然,如果传感器的精度高,可以定的更小,理论上诊断覆盖率可以达到100%,如图4 b)
我们再进一步考虑,是否只能通过选用高精度传感器来提高诊断覆盖率呢?在如上的案例中,我们可以看出,测量值偏大有风险而测量值偏小是安全的。我们可以改变安全机制的设计:传感器输出值取A_Master  A_Checker中的较小值,这样,传感器输出值上限如下图所示,虽然有部分情况下未报出故障,但有效避免了危险输出,提高了单点失效的诊断覆盖率(这部分变为潜伏故障)
图5 cross-check且输出较小值条件下的诊断覆盖率
2.3 万变不离其宗——安全机制的套路
ISO 26262提供了多种安全机制供参考。但工作中总会遇到新的系统,如果没有可参考的安全机制怎么办呢?总结起来,制定安全机制可以从以下三方面考虑:
1)    特征提取,包括合理范围、斜率范围等。
示例:Sensor valid。
示例2:电机3霍尔传感器,不会出现以下patten: 0/0/0, 1/1/1,也不会出现诸如如下的序列跳转“1/0/0” ->“0/1/0”。
图6 霍尔传感器的有效pattern
2)   冗余比较。冗余比较对各失效模式都能够达到High的诊断覆盖率。需要注意的是避免共因失效的影响。
示例1:对被诊断要素进行完全冗余,如双核锁步。
示例2:对被诊断要素进行一定的算法压缩,以减小资源消耗,主要应用于信息交换的场景(内存数据读取、通信等),典型的有错误和检查纠正码(ECC,ErrorCorrecting Code)、循环冗余校验(CRC,Cyclic Redundancy Check)、校验和(Checksum)等。
3)  通过给定特定输入,观察是否能够有预期输出。
示例1:ADC诊断。
示例2:绝大部分安全机制的自检,通过注入故障,观察能否被安全机制检测,如ECC自检。
03
常见问题
问:针对软件失效的安全机制有没有诊断覆盖率?
答:由诊断覆盖率的定义我们知道,它是针对随机硬件失效的。软件失效是系统性失效,它没有“失效率”这个概念,也就不存在对它的诊断覆盖率
作者简介
青梅佐酒
3年国内OEM VCU系统功能安全,2年Tier 1 自动驾驶感知系统功能安全开发经验。熟悉功能安全/ASPICE流程,具有多个项目的实战开发经历。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
基于功能安全的车载计算平台开发:硬件层面
功能安全-ISO26262硬件设计案例(ASIL等级计算)
EPB功能安全笔记(13):FTA定量分析之FMEDA和FTA的交互
汽车SoC功能安全最佳实践与挑战
日产天籁轿车发动机加速不良
带不带功能安全(IS26262)的区别,功能安全要做啥?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服