autosar标准测试报告(AUTOSAR中的硬件诊断技术)
以下文章来源于薄说安全 ,作者薄云览 侵删
在《Overview of Functional Safety Measures in AUTOSAR》文档中,提到了AUTOSAR架构中的两种硬件诊断技术,Core Test和RAM Test。本文介绍这两种诊断技术以及它们与ISO26262的联系。
Core Test 内核测试
Core Test用于测试处理器内核组成的各个单元失效,如通用寄存器、ALU、MMU/MPU等。处理器内核测试部分属于AUTOSAR的Basic software module,可以直接访问微控制器内核,没有中间间软件层。
内核测试对芯片内部的不同单元分别测试,测试要求与被测单元对应关系如下:
ID |
处理单元组成 |
内核测试要求 |
001 |
ALU数据路径 |
内核ALU测试 |
002 |
Registers (通用寄存器库,DMA tran-sfer registers…), 内部RAM |
内核寄存器测试 |
003 |
地址计算(加载/存储单元、DMA寻址逻辑、存储器和总线接口)。 |
内核地址生成器 Core Test是对处理器内核的硬件资源进行测试,与硬件处理器底层相关密切,无法与AUTOSAR其它软件任务和硬件实体共享CPU,或者仅限于共享不共用的测试资源(ALU和CPU寄存器)。由于这种限制,可能Core Test会被限制仅在上电/启动时运行。
Core Test任务的周期调度
Core Test任务拆分的子任务需要高优先级,禁止其它中断 此外,Core Test软件模块还要依赖于上层软件架构来保证该软件模块的运行和输出结果的正确性,采用
与Core Test有关的调用逻辑有:
2.取消初始化:取消Core Test模块的初始化
3.1 后台运行测试——Core Test模块在后台运行测试
3.2 后台运行测试——Core Test模块提供给调用实体的签名,可以用于调用方验证Core Test软件模块的完整性
RAM Test RAM测试 RAM Test功能用于测试易失性存储器RAM的永久性失效,RAM测试部分属于AUTOSAR的Basic software module,可以直接访问微控制器内核,没有中间间软件层。 存在不同的软件算法用于RAM测试,不同算法针对的故障模型集不同,实现不同等级的覆盖率,运行时间也不同。AUTOSAR没有指定特定的RAM测试算法,根据ISO26262-11对RAM的推荐诊断方法,有以下诊断技术可选:
RAM测试驱动程序支持被称为"前台测试"的同步测试和被称为"后台测试"的异步测试。在RAM测试算法的执行过程中,不允许其他软件修改被测试的RAM区域。 RAM Test的局限性:
与RAM Test有关的调用逻辑有: 完整的调用过程:初始化、前台运行完整测试请求、错误报告和循环调用后台测试
后台调用过程,增加了挂起和恢复交互
总结 Core Test和RAM Test属于功能安全系统设计中底层的诊断技术,在ISO26262中有专门的技术条款要求,用于处理器内部各单元和RAM测试,参考AUTOSAR功能安全机制中对这两项硬件诊断技术的需求,使我们更易于理解Core Test和RAM Test的基本要求、测试过程和技术局限性,归纳下来有以下几点:
至于具体算法的实现,不在AUTOSAR规定的范围内,就要实现其软件模块的厂商各显神通了,在项目开发,有以下建议方法:
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com 热门推荐
|