逻辑数字部分的自检功能之LBIST

描述

英飞凌的TC3xx系列是符合ASIL D的MCU,自身带有很多自检功能,今天我们来分享下LBIST,逻辑数字部分的自检功能。代码使用AURIX Development studio V1.8版本

TC334平台LBIST简介

英飞凌Aurix TC3xx作为满足ASIL D的32位高性能MCU,提供了大量安全机制来覆盖MCU不同的失效模式。针对潜在失效部分,TC3xx有PBIST(电源自检),LBIST (逻辑自检), MBIST(内存自检),MONBIST(二级电压监控自检)等特性来满足客户系统级的功能安全需求。

LBIST是一种片上硬件机制,可用于检测MCU潜在故障。AURIX TC3xx平台的LBIST实现允许对MCU逻辑执行定期自检。LBIST在MCU应用模式下的执行基于为生产测试而实施的DFT结构,因此可重复使用MCU中已有的扫描链、控制和状态机制。启动LBIST有两种可配置的方式:作为启动序列的一部分或由MCU功能模式下的应用软件启动。LBIST的执行结果在LBIST结果和状态寄存器中提供,应用软件可利用这些结果在检测到潜在故障时达到 MCU安全状态。

LBIST功能开启

LBIST执行函数存放于Ifx_Cfg_Ssw.c文件,根据函数定义只需将Ifx_Cfg_Ssw.h文件中的IFX_CFG_SSW_ENABLE_LBIST定义改为1,程序就会在SSW执行过程中进行逻辑自检。

英飞凌

英飞凌

LBIST功能执行函数

默认值为0,写1打开LBIST

结果验证

英飞凌

英飞凌

期望签名

英飞凌

LBISTDONE位显示为1,表明自上电复位以来,至少有一次LBIST过程成功执行。且SCU_LBISTCTRL3.SIGNATURE为0x740ef25a,与期望配置中的签名一致,代表逻辑自检成功。

如若逻辑自检不成功,则用户在此处可以进行相关处理。

英飞凌

通过查看以上寄存器的的值,表明LBIST功能成功执行。

审核编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分