AUTOSAR中的硬件诊断技术
2022年6月21日 15:55浏览:2497
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
Core Test是对处理器内核的硬件资源进行测试,与硬件处理器底层相关密切,无法与AUTOSAR其它软件任务和硬件实体共享CPU,或者仅限于共享不共用的测试资源(ALU和CPU寄存器)。由于这种限制,可能Core Test会被限制仅在上电/启动时运行。 -
AUTOSAR对处理器内核各单元无法做到全面的覆盖测试,Core Test对硬件资源进行分时分片进行测试,无法检测soft error,例如当其它软件任务调用ALU或读写寄存器发生了瞬态故障,Core Test检测不到,需要补充其它检测方法。 -
Core Test不能可靠地报告检测到的故障,存在处理器本身就发生了故障,因此不能将故障报给诊断事件管理器(DEM)
-
需要创建如硬件资源访问管理的任务对Core Test任务进行管理。
-
校验和和签名保护
-
使用前检查Core Test Code完整性
-
校验和/签名的冗余存储
-
测试结果的外部决策执行
-
初始化:用于对Core Test软件模块进行初始化
-
无法检测瞬态错误,可以用来检测上电和周期运行时的永久性错误,瞬态错误和间歇性soft error无法检测 -
RAM Test执行过程中,不允许其它软件和硬件修改被测试的RAM区域,RAM测试模块不能保证数据的一致性,运行过程中禁止其它任务访问被测试的RAM地址块 -
由于RAM Test会读写被测RAM区域,将导致被测RAM区域的数据内容被破坏,应考虑在测试前将被测RAM数据搬到其它RAM区域 -
当在多核系统中测试共享RAM时,可能无法通过中断锁定多个内存单元的独占访问,这种情况下,共享内存的测试配置使用仅限于前台测试和特定ECU状态
-
用于测试永久性错误,无法检测soft error; -
具有硬件独占性,需要调度器协调与其它软件任务,避免破坏正常的CPU操作和数据区域; -
周期执行位于后台运行,分段进行测试; -
根据ASIL等级的不同诊断覆盖率要求,选择适合的诊断算法。
-
首先,需要选择一种合适的符合ASIL等级要求的诊断算法,把算法原理搞清楚了,实现层面不是太复杂,但是需要开发工程师懂得所选择硬件平台CPU的底层编程语言,能够对底层的寄存器进行操作; -
其次,完整的RAM测试占用的时间比较长,如果系统对上电时间要求严格,不建议上电进行完整的RAM测试,可以结合标准中推荐其它诊断方法;
-
需要小心协调自检算法与其它软件任务的调度关系,正如AUTOSAR规范中所说,自检算法具有独占特性,处理不好把正常的数据区域破坏了,需要对算法进行全面的测试以保证其实现的正确性。
技术邻APP
工程师必备
工程师必备
- 项目客服
- 培训客服
- 平台客服
TOP




















