一种基于功能安全的测试方法与流程

文档序号:27057056发布日期:2021-10-24 08:27阅读:407来源:国知局
一种基于功能安全的测试方法与流程

1.本发明属于汽车功能安全asil等级测试领域,尤其涉及基于功能安全芯片实现的应用软件的测试流程方法。


背景技术:

2.随着智能网联汽车和自动驾驶汽车的快速发展,设计高可靠性和安全性的汽车电子系统日益受到各方关注,为保证汽车电子系统的安全性,应用软件实现的安全机制至关重要。在面向汽车的功能安全标准gbt 34590中,针对不同的功能安全asil等级,安全机制的诊断覆盖率要求不同,对于分配功能安全asilc或asild等级的要素要求诊断覆盖率高的安全机制来覆盖失效模式。当要素发生失效时,控制芯片检测到失效,但应用软件未执行相应的安全行为,失效将会影响整车的安全行驶,甚至危害人身安全。因此,为验证应用软件的正确配置和实现,对应用软件的测试是十分必要的。本发明主要针对应用软件的测试流程方法,应用虚拟原型测试设备,通过故障注入测试脚本形成失效来检测应用软件行为的功能安全测试流程,以及确定安全机制诊断覆盖率的方法。本发明引入了功能安全测试理念,为汽车电子应用软件的可靠性和安全性提供了必不可少的支持。


技术实现要素:

3.有鉴于此,本发明旨在提出一种基于功能安全的测试方法,以解决上述问题中的不足之处。
4.为达到上述目的,本发明的技术方案是这样实现的:
5.一种基于功能安全的测试方法,包括以下步骤:
6.s1、输入待测安全模块;
7.s2、搜索芯片安全机制库和功能安全测试用例库;
8.s3、选定待测安全模块全部安全机制和测试用例表;
9.s4、确定全部待测安全机制对应的故障模型和失效模式;
10.s5、利用所述安全机制对应的故障模型和测试脚本模板文件,生成选定待测安全模块的所有故障注入测试脚本;
11.s6、将待测应用软件和故障注入测试脚本导入虚拟原型测试平台进行测试;
12.s7、故障注入后捕捉应用软件行为,记录测试通过和不通过的安全机制及其对应失效模式;
13.s8、测试结果分析,将测试通过的安全机制对应的失效模式与失效模式库进行比对,确定安全机制诊断覆盖率;
14.s9、生成测试报告,包括测试通过/不通过情况、安全机制诊断覆盖率和故障响应时间间隔。
15.进一步的,步骤s1中所述的待测安全模块包括应用软件根据确定后的asil等级实现相关安全机制对应的全部安全模块,对待测安全模块进行测试验证是否满足功能安全要
求。
16.进一步的,步骤s2中所述的芯片安全机制库为选定芯片实现的全部安全机制的总和,由芯片安全手册导出;
17.所述功能安全测试用例库,为选定芯片实现的全部安全机制对应的功能安全测试用例表的总和。
18.进一步的,步骤s3中所述的测试用例表包括安全机制编号、所属功能模块、测试目的、功能描述、失效模式、用例编号、测试项、操作步骤/测试数据、预期结果、软件实现安全机制行为和判定结果。
19.进一步的,步骤s4中所述的故障模型,由故障导致的失效模式的表现,为创建故障注入测试脚本,确定全部待测安全机制对应的故障模型,故障模型包括开路故障、卡滞故障、桥接故障、单事件翻转、单位反转;
20.步骤s4中所述的失效模式,为要素或相关项失效的方式,要素或相关项的失效模式参考功能安全标准gbt 34590。
21.进一步的,步骤s5中所述的故障注入测试脚本,使用python语言编写,测试脚本涵盖所有待测安全模块的安全机制对应的故障模型。
22.进一步的,步骤s6中所述的待测应用软件,根据功能安全asila、asilb、asilc、asild的等级不同选择相应安全模块的安全机制进行软件代码实现的。
23.进一步的,步骤s7中所述的应用软件行为,应用软件在检测到故障发生后所做的动作,当在故障注入点处应用软件有预期的动作行为,表示测试通过,否则测试未通过,并记录测试结果,应用软件行为包括复位、中断和报警。
24.进一步的,在步骤s8中,安全机制对应的失效模式,可以是一个安全机制对应多个失效模式,也可以是多个安全机制覆盖一个要素的全部失效模式;
25.所述安全机制覆盖率为安全机制对失效模式的覆盖程度的评价方式。
26.进一步的,安全机制覆盖率的评价方法如下:
27.a1、针对测试通过的故障类型进行判断是否属于失效模式库,对于不属于失效模式库的故障类型进行记录,若测试通过的故障类型属于失效模式库,则对该失效模式进行分类,类型包括低覆盖率失效模式、中覆盖率失效模式和高覆盖率失效模式,并记录对应类型的每个失效模式;
28.a2、评价安全机制诊断覆盖率,其中高覆盖率失效模式包含低覆盖率失效模式和中覆盖率失效模式,中覆盖率失效模式包含低覆盖率失效模式,若记录的失效模式等于高覆盖率失效模式,则该安全机制覆盖率能达到99%;若记录的失效模式等于中覆盖率失效模式,则该安全机制覆盖率能达到90%;若记录的失效模式等于低覆盖率失效模式,则该安全机制覆盖率能达到60%;若记录的失效模式不在该三个范围内,则为其他覆盖率;
29.a3、对于其他覆盖率的判断方法如下:若记录的失效模式多于低覆盖率失效模式,但少于中覆盖率失效模式,则该安全机制覆盖率定为60%;若记录的失效模式多于中覆盖率失效模式,但少于高覆盖率失效模式,则该安全机制覆盖率定为90%。
30.相对于现有技术,本发明所述的一种基于功能安全的测试方法具有以下有益效果:
31.本发明是基于功能安全测试流程的要求,提出了一种基于功能安全的测试方法及
装置。通过对芯片安全机制库、功能安全测试用例库、故障注入测试脚本库和失效模式库的建立,大大缩短了同类型芯片功能安全测试的时间,考虑了功能安全测试过程中应用的方法,给出了安全机制诊断覆盖率导出方法。本发明为解决ecu级功能安全测试提供了必不可少的支持,包括测试流程和技术方法的指导,还为功能安全硬件开发阶段的失效率计算和功能安全asil等级的评定提供了参考依据。
附图说明
32.构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
33.图1是本发明实施例中pms模块安全机制库示意图;
34.图2是本发明实施例中pms模块测试用例表示意图;
35.图3是本发明的一种基于功能安全的测试方法;
36.图4是本发明的安全机制诊断覆盖率评价策略。
具体实施方式
37.需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
38.下面将参考附图并结合实施例来详细说明本发明。
39.在本实施例中,pms模块安全机制库包括22条安全机制,如图1所示。针对安全机制sm8和sm18对应的失效模式进行测试,即失效模式为输出电压高于规定范围的高阈值(过压)和输出电压低于规定范围的低阈值(欠压)。该pms模块功能安全测试用例表示例如图2所示。测试内容包括vext过压测试和vext欠压测试,在发生故障后,产生报警信息,应用软件将重置core0并启动处于掉电状态的core1

core5。
40.下面为具体过程:
41.步骤1、输入pms模块;
42.步骤2、搜索pms模块安全机制库和功能安全测试用例库;
43.步骤3、选定pms模块全部安全机制和测试用例表;
44.步骤4、确定pms模块全部待测安全机制对应的故障模型和失效模式,本实施例确定pms模块待测安全机制为vext电源安全监控机制,安全机制编号为sm[hw]:pms:vext_monitor和smc[sw]:pms:vx_monitor_cfg。注入的故障模型为给定vext大于5v和给定vext小于2.97v,或者通过给定sm flag alm9[3]和sm flag alm9[5]注入故障。失效模式为vext输出电压高于规定范围的高阈值(过压)和vext输出电压低于规定范围的低阈值(欠压)。
[0045]
步骤5、生成pms模块故障注入测试脚本,根据步骤4)的故障模型和测试脚本模板文件,使用python语言生成故障注入测试脚本。
[0046]
步骤6、将实现vext电源安全监控机制的应用软件和故障注入测试脚本导入虚拟原型测试平台进行测试;
[0047]
步骤7、故障注入后捕捉应用软件行为,本示例应用软件将重置core0并启动处于掉电状态的core1

core5,若故障注入点应用软件发生预期的行为动作,则判断测试通过,否则判断测试未通过,并记录测试结果。
[0048]
步骤8、测试通过后,记录测试项对应的失效模式,若注入故障类型属于pms失效模式库,则将失效模式进行失效模式库分类;若注入故障类型不属于pms失效模式库,则记录故障类型。本实施例中pms模块失效模式包括输出电压高于规定范围的高阈值(过压)、输出电压低于规定范围的低阈值(欠压)、输出电压受尖峰影响(电源尖峰)、输出电压精度太低(漂移)、输出电压在规定的范围内振荡(振荡)。其中低覆盖率失效模式包括过压和欠压;中覆盖率失效模式包括过压、欠压和漂移;高覆盖率失效模式包括过压、欠压、漂移、振荡和电源尖峰。将本实施例中的vext过压测试项和vext欠压测试项的失效模式进行失效模式库分类,sc_pms_001和sc_pms_002同时属于低覆盖率失效模式、中覆盖率失效模式和高覆盖率失效模式,并记录失效模式。将本实施例中记录的失效模式进行比对,确定记录的失效模式等于低覆盖率失效模式,则该实施例中vext电源安全监控机制覆盖率能达到60%。
[0049]
步骤9、pms模块生成测试报告,本实施例vext过压测试项和vext欠压测试项测试通过,vext电源安全监控机制诊断覆盖率为60%。
[0050]
综上,本发明基于功能安全测试流程的要求,提出了一种基于功能安全的测试方法及装置。在保证功能安全测试流程完整性的基础上,同时考虑了功能安全测试过程中应用的方法,给出了安全机制诊断覆盖率导出方法,本发明大大缩短了芯片功能安全测试的时间,为功能安全硬件开发阶段的失效率计算和功能安全asil等级的评定提供了参考依据。
[0051]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0052]
在本技术所提供的几个实施例中,应该理解到,所揭露的方法和系统,可以通过其它的方式实现。例如,以上所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。上述单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
[0053]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
[0054]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1