当前位置: 首页 > news >正文

汽车功能安全--TC3xx MBIST设计要点

英飞凌针对硬件潜伏故障的自测,提供了四种机制:PBIST、LBIST、MONBIST和MBIST。

LBIST和MONBIST我们已经聊过了,今天就快速介绍下MBIST。

MBIST,全程Memory Built-in Self Test,用于检测SRAM数据单元的完整性。

在26262中,SRAM cell出现错误被认为是潜伏故障,而潜伏故障要求至少一个上电周期要完成一次检测,因此MBIST的使用时机就完全取决于使用者,可以是上电检测、也可以是下电检测、甚至可以在程序运行时检测。

虽然时机随心所欲,但是做MBIST的时候还需要考虑两个前置条件:(1)测试前SRAM需要完成初始化,有正确的ECC;(2)SRAM在测试时不允许被访问。

因此,这就引出了今天的话题,如何测试内核相关的memory。

1. 单核和多核

根据芯片手册,TC3xx CPU有如下几类SRAM可供使用:

  • P\DSPR:Program\Data Scratch Pad SRAM,类比ARM内核的TCM;
  • P\DCACHE:Progaram\Data Cache
  • P\DTAG:Cache相关的Tag SRAM

为了提升效率,我们用到的最多肯定就是PSPR、DSPR等,常规用法:PSPR存放性能要求或者是特定场景的函数,DSPR用于堆栈、CSA或者其他自定义等数据存放;但做mbist的时候被测memory又不能被访问,这就要求相关memory的CPU需要停下来。

因此,我们需要分多核和单核情况。

多核相对好解决一点,cpu0最先启动,在它释放其他core时让cpu0去测试其他core的memory,如下:

 其他core去测cpu0时,让cpu0进入ilde即可。代码如下:

单核的情况说起来也简单,就是让CPU在执行测试期间不访问DSPR和PSPR,在英飞凌的MTU设计中,当我们使能了SRAM的SSH后该SRAM就不能访问了,

(代码示例MTU_MEMTEST0.B.CPU0_DMEM_EN = 1;)

这就需要我们在设计链接文件的时候要了解DSPR和PSPR具体包含了啥内容,并且在执行上述代码后就不调用PSPR的函数,也不要使用stack、csa,只用cpu相关寄存器,参考代码如下:

此外,为防止cache访问,P\D Cache在被测试的时候都需要关闭,参考CPU寄存器PMAxx。

2.MTU中PMEM的特殊处理

在手册里,有一点我没有特别想明白,但也是比较关键的地方,就是关于PMEM的特殊处理,原文如下:

要完整测试PMEM,就需要执行两次NDT测试,由寄存器TCCS.TC_TWR_SEL进行管理,如下:

 那代码中处理也比较方便,伪代码如下:

if(E_OK == CheckPmem(SramInstanceID))
{MTU_MCx.ECCS.TC_TWR_SEL = 0;triggerTest(SramInstanceID);MTU_MCx.ECCS.TC_TWR_SEL = 1;triggerTest(SramInstanceID);
}

 但有一点一直没想明白,PMEM包含了PCache和PSPR,DMEM同样也包含了DCache和DSPR,为啥PEME要特殊对待,DSPR就不用呢?

从MTUTEST寄存器看没有什么差别呀:

神奇,属实神奇。 

差不多就到这,拜拜。

相关文章:

  • 2025高质量数据集实践指南
  • 22.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--增加公共代码
  • 裸金属服务器 VS 传统物理机
  • c++STL-list的使用和迭代器
  • 基于Session实现短信登录全流程详解
  • Windows下安装mysql8.0
  • 【Tauri2】044 移动端Android的初步配置
  • React Native告别图标体积大手动更换慢的噩梦:让图标更新像修改文字一样简单
  • STM32 HAL驱动程序 内部Flash
  • 基于深度学习的工业OCR数字识别系统架构解析
  • Linux的文件查找与压缩
  • BGP实验练习2
  • spring中的@Async注解详解
  • 2025年PMP 学习十 -第8章 项目质量管理(8.1,8.2)
  • 内存泄漏与OOM崩溃根治方案:JVM与原生内存池差异化排查手册
  • 【登录认证】JWT令牌
  • D-Pointer(Pimpl)设计模式(指向实现的指针)
  • 【氮化镓】电子辐照下温度对GaN位移阈能的影响
  • 青少年编程与数学 02-019 Rust 编程基础 09课题、流程控制
  • 【js中数据类型及区别】
  • 七旬男子驾“老头乐”酒驾被查,曾有两次酒驾两次肇事记录
  • 广东省原省长卢瑞华逝世,享年88岁
  • “一码难求”的Manus开放注册但价格不菲,智能体距离“实用”还有多远
  • 硅料收储挺价“小作文”发酵光伏板块罕见大涨,知情人士:确实在谈
  • 习近平同巴西总统卢拉共同会见记者
  • 法治课|争议中的“行人安全距离”于法无据,考量“注意义务”才更合理