杨莉 王强 隋建鹏 吴丽娜
(1.中国第一汽车集团有限公司智能网联开发院,长春 130011;2.汽车振动噪声与安全控制综合技术国家重点实验室,长春 130013;3.中共吉林省委党校,长春 130012)
主题词:ISO 26262 功能安全 失效模式和诊断策略分析 准确度 惯性传感系统
ISO 26262《道路车辆功能安全》[1]于2011 年诞生,我国于2017 年发布了GB/T 34590《道路车辆 功能安全》[2]。2011 年以来,汽车行业内对功能安全标准的理解和应用不断深入[3-7]。在系统功能安全设计中,汽车安全完整性等级(Automotive Safety Integration Level,ASIL)评估的重要手段为失效模式和诊断策略分析(Failure Mode Effect and Diagnostic Analysis,FMEDA)。
在汽车电子硬件设计领域,FMEDA 是验证硬件架构的有效手段,然而ISO 26262 和GB/T 34590 对该方法的阐述并不足以支持实际硬件设计工作中FMEDA分析的开展,行业内也并未公开FMEDA 分析的具体实施细则和实施方法。为此,本文分析FMEDA 的流程及其关键因素,提出FMEDA三维准确度验证方法,并以惯性传感系统为例阐述其应用过程。
依据ISO 26262的规定,ASIL的评估方法为计算系统的硬件架构度量,并用其评估整个系统硬件架构对元器件随机硬件失效的处理能力。这些度量针对的随机硬件失效限于系统中安全相关的电子电气硬件/元器件,即对安全目标的违背或实现有显著影响的元器件,并限于这些元器件的单点/残余失效和潜伏失效。硬件架构度量取决于系统整体硬件设计。系统涉及的每个安全目标都应符合规定的硬件架构度量目标值。定义这些硬件架构度量可以实现下列目标:
a.客观上可评估,即度量可核实且足够精确。
b.基于详细的硬件设计完成精确计算,支持最终设计的评估。
c.为硬件架构提供ASIL的合格/不合格准则。
d.显示用于防止硬件架构中单点/残余失效和潜伏失效风险的安全机制诊断覆盖率是否足够。
FMEDA 是计算硬件架构度量值的有效手段。FMEDA 针对每一个安全目标,考虑系统物料清单(Bill of Material,BOM)中所有元器件的所有失效模式,依据元器件在系统工作环境下整个生命周期内的失效率,根据系统软件的诊断方式和诊断覆盖率,利用Excel工具,按照ISO 26262 及GB/T 34590.10《道路车辆 功能安全第10部分:指南》中规定的单点或残余失效度量计算公式、潜在多点失效度量计算公式及随机硬件失效率计算公式,计算出系统的单点故障度量(Single Point Fault Metric,SPFM)、潜在故障度量(Latent Fault Metric,LFM)和随机硬件失效概率度量(Probabilistic Metric for random Hardware Failures,PMHF)值,将计算结果与ISO 26262中规定的安全等级评估指标进行对比,即可得到系统对于每一个安全目标的安全等级,进而得到系统的安全等级。系统所有功能安全目标的最高安全等级即为系统的安全等级。安全等级评估指标如表1所示。
表1 ISO 26262功能安全等级评估指标
评估指标中,单点失效度量计算公式为:
潜在失效度量计算公式为:
随机硬件失效计算公式为[8]:
式中,∑safetyrelated,HW为安全相关元器件有关参数的和;λ为元器件在整车工作环境下的硬件随机失效率;λSPF为单点失效率;λRF为残余失效率;λMPF,Latent为潜在多点失效率;MPMHF为随机硬件失效率度量指标;λsm,DPFLatent为安全机制(Safety Mechanism,SM)的潜在双点失效率;TLifetime为产品生命周期。
当不考虑安全机制的失效率时,随机硬件失效率的计算公式为:
依据ISO 26262-5 中示例的分析方法,对安全等级分析页的格式进行了改进,如图1所示。
改进点包括:明确安全目标、安全状态和安全等级需求;明确度量指标目标结果;删除对计算结果没有影响的总失效率和非安全相关总失效率;明确每个单元格计算公式及填充准则。
FMEDA的具体分析过程为:
图1 改进的安全等级分析页示意
a.根据整车生命周期定义系统的生命周期及每年工作时间、工作环境。例如:生命周期为12 a,每年工作时间为8 750 h,环境温度为-40~85 ℃。
b.计算元器件BOM 中每个元器件的失效时间(Failure in Time,FIT),生命周期、每年工作时间、工作环境直接影响元器件的FIT。FIT的定义很大程度上决定功能安全等级的评估结果能否满足需求。
c.定义每个元器件的失效模式及失效百分比,其中电阻、电容、电感等的失效模式包括引脚开路和引脚短路。
d.分析每个元器件是否为安全相关器件,并填充在“是否为安全相关”列中,其依据是元器件失效是否会导致安全目标的违背或者使系统不能进入安全状态。在考虑不同的安全目标时,同一元器件失效的影响可能不同。
e.分析每个元器件的每种失效模式是否对安全目标有影响,并填充在“失效是否有影响”列中。
f.针对影响安全目标的失效,分析其失效种类属于单点/残余失效或者潜在失效,并分析系统对该失效的诊断方式,填充诊断覆盖率。依据ISO 26262 中对各种失效的定义,单点/残余失效中未被诊断方式覆盖的部分会产生潜在多点失效。
g.根据式(1)~式(4),计算系统的SPFM、LFM、PMHF,并与表1中的评估指标进行对比,得到系统的功能安全等级。需要说明的是,目前对于PMHF的计算,通常选择故障树分析法(Fault Tree Analysis,FTA),并采用专业的可靠性分析软件,例如isograph,FMEDA 表格中的计算结果仅作为参考。
由以上分析流程可见,FMEDA 的关键因素包括:FIT;器件失效百分比分布;诊断覆盖率;器件是否为安全相关器件的判断;单点失效及潜在失效的判断;失效诊断方式的设计。
为了保证FMEDA 结果的准确性和可靠性,从3 个维度进行验证。
依据SN 29500[9]标准及生命周期、工作时间、工作环境的定义计算BOM 中每个元器件的FIT。复杂芯片的FIT有3个来源:利用供应商提供的芯片级FMEDA结果;参考芯片历史失效率信息,即返回品百万分之一(Part Per Million,PPM)值;参考同系列芯片的FIT。
失效百分比来自于可靠性分析经典书籍《可靠性工程:理论与实践》[10]。复杂芯片的失效模式包括功能性失效和引脚失效。功能性失效的失效模式来源于供应商提供的芯片级FMEDA结果;引脚失效包括引脚开路、钳位在高电平、钳位在低电平及与相邻引脚短路。
诊断覆盖率的定义依据ISO 26262-5[1]附录D 中的规定。
分析过程应尽量自动化[11],采用专业分析软件是最佳的途径,例如基于模型的功能安全管理软件MA(Medini Analyze)。如果使用Excel,推荐利用VBA(Visual Basic for Applications)编辑宏代码,不仅能提高工作效率,而且可以有效避免人为错误,分析过程为:
a.利用VBA 将原理图绘制工具软件生成的BOM直接导入,根据SN 29500进行对照检查,并对相同元器件种类的FIT进行横向对比;在进行安全等级分析计算时,利用VBA 在FIT 计算页查找元器件位号,并将对应的FIT值自动填入安全等级分析页的“FIT值”列。
b.为了保证失效百分比的可靠性,对相同元器件种类的失效百分比分布进行横向对比。同时利用VBA检查每个元器件的失效百分比分布总和是否等于100%。
c.单独建立诊断覆盖率页,定义每种诊断方式的诊断覆盖率。根据ISO 26262对诊断覆盖率的定义进行检查,并利用VLOOKUP函数使得安全等级分析页在填入诊断方式时可自动查找诊断覆盖率的定义值并自动填充。
d.利用VBA 可以对每个安全目标的分析页分别运行自动检查。
安全分析页自动检查流程为:
a.“FIT值”列是否有空值。
b.同一个器件所有行的“FIT值”列是否相同。
c.“是否为单点失效或残余失效”列设置为“×”时,“是否为安全相关”列是否为空。
d.“是否为潜在多点失效”列设置为“×”时,“是否为安全相关”列是否为空。
e.安全相关元器件“是否为单点失效或残余失效”列和“是否为潜在多点失效”列是否同时为空。
f.每一个失效模式的单点失效率或残余失效率的计算公式是否正确。
g.每一个失效模式的潜在多点失效率的计算公式是否正确。
对器件是否为安全器件的判断直接影响安全相关器件总FIT 值的计算。其判断依据为器件的某种失效模式是否会导致违背安全目标,是否能够使系统进入安全状态。对于失效种类的判断,严格按照ISO 26262-5[1]中对于失效的定义进行。为了便于校对和评审,每一条与安全相关的失效模式应附加对分析理由的解释说明。
为了得到最坏情况下的度量指标值,单点失效/残余失效中未被诊断机制检测到的部分,应计入多点失效部分。也就是说,诊断覆盖率为非100%的与安全相关的单点失效,必定会产生多点失效。同时,基于上述考虑,分析过程中采用单点失效与多点失效的诊断机制应不同。
经过危害与风险分析(Hazard Analysis and Risk Assessment,HARA)[12],惯性测量单元(Inertial Measurement Unit,IMU)的安全目标为避免发送错误的加速度或角速度信息,安全状态为设置信号标志位为无效,或停止CAN总线发送,或复位系统。ASIL等级要求为ASIL D。
目前,行业内尚没有能够达到ASIL D 等级的惯性传感器芯片,因此,基于ASIL 等级分解[13]的理念,系统采用双路冗余的ASIL B惯性传感器芯片实现。为了实现信号的多样性,采用2片型号完全一致的惯性传感器芯片,并在印制电路板(Printed Circuit Board,PCB)中采用不同的方向放置:一片为U/V方向,另一片为X/Y方向。其中Y轴平行于地面指向整车行驶方向,X轴指向驾驶员左侧,U、V轴平行于地面,由Y轴分别向驾驶员右侧和左侧旋转45°得到。
IMU 的主要电路设计原理图如图2 所示。IMU 主要包括惯性传感器芯片、CAN 收发器芯片、电源管理及产生芯片、主控单片机芯片、辅控单片机芯片、连接器等。
惯性传感器芯片、电源管理及产生芯片、主控制芯片的FIT 来自于供应商提供的芯片级FMEDA 结果;其他器件的FIT 依据SN 29500 计算。主要器件的FIT 如表2所示。
定义诊断覆盖率需要与软件开发工程师充分沟通,以确认有条件开展的诊断种类。IMU 主要器件的失效百分比如表3和表4所示,诊断覆盖率如表5所示。
根据安全目标对应的安全状态可以推断电源失效、主控制功能失效(包括时钟失效、复位失效、终端失效、CAN 收发失效等)、惯性传感器芯片失效、CAN 通信相关器件失效等均为安全相关失效。
图2 IMU电路原理
表2 IMU系统主要器件FIT
最终计算结果为:SPFM=99.80%,LFM=96.72%,PMHF=0.378 8 h-1,满足ASIL D等级对硬件架构度量指标的要求。
表3 IMU主要器件失效百分比 %
表4 IMU连接器失效百分比 %
表5 IMU诊断覆盖率定义 %
本文在总结FMEDA 分析流程和关键因素的基础上,提出了FMEDA分析结果的三维准确度验证方法,并以惯性传感器系统为例,阐述了该方法的应用过程。所提出的三维准确度验证方法从数据来源、分析过程、失效判断3个维度验证了FMEDA定量分析的准确性。