英飞凌TC3xx系列安全管理单元的使用

描述

摘要

本篇文档主要用来介绍英飞凌基于AURIX-2G TriCore 1.6.2架构的 TC3xx系列安全管理单元的使用。

SMU介绍

Safety Management Unit (SMU), SMU是TC3xxx系列MCU的安全体系架构非常重要核心的部件,它可以在MCU出现故障的时候提供一个接口管理MCU的行为。SMU集中收集所有基于不同软硬件安全机制的告警信号,每个告警可以单独配置触发内部操作行为或者通过故障信令协议(FSP)通知外部,MCU存在故障。每一个告警的严重程度可以根据安全应用的需要进行配置,默认情况下除过看门狗超时溢出,其余均是禁止的。为了安全起见,SMU分为两部分,SMU_core和SMU_stdby,相当于有一个备份。这两部分物理是完全隔离的,有不同的时钟和供电。SMU与嵌入式安全机制相结合,在微控制器的容错时间间隔(FTTI)内,能够检测和报告超过99%的风险.

SMU接口

mcu

从图中可以清楚的看出内部的连接关系和信号走向。

SMU架构

mcu

从图中可以看出两部分的电源,时钟都是单独的额,两部分相互隔离。关于更多SMU详细的描述,可以参考数据手册,这里不在赘述。

举例说明

我们来举个例子说明SMU的使用,我们在设计电路的时候,比如TC3xxx通过SMU_FSP[0]也就是P33.8脚连接到了PMIC(可以是TLF35584)部分的ERR引脚上。在MCU故障的时候可以通过这个引脚输出一个低电平信号给到外部的电源管理IC。在无故障的时候输出方波信号,方波的频率可以配置。

mcu

FSP三种状态

上电复位态:上电复位后,SMU从port口断开,并且SMU  FSP输出是故障态。

无故障态:    没有故障状态。

故障态:有故障存在

FSP模式

FSP存在三种模式,使用的时候根据自己的应用配置

mcu

mcu

mcu

我们通过使用第三种模式给PMIC提供一个信号。如果不配置,默认是第一种模式,通过FSP寄存器可以配置

mcu

例程测试

官方提供了4个SMU的例程,大家可以参考学习。

mcu

如果不修改FSP的模式配置,可以用示波器测试,结果类似下面的图

mcu

修改移植

可以参考以上4个例程根据自己的应用进行修改,将FSP模式修改为3,并且修改分频,通过FSP寄存器修改。

mcu

mcu

因为外部PMCI的ERR脚需要一个是10-45k频率的一个方波

mcu

所以我们需要修改FSP的分频,通过PRE2域来进行修改,只有四种选择,PRE1用来选择故障态时钟的分频,PRE2用来选择非故障态的时钟分频,因为SMU使用100M 时钟,我们来计算一下要让SMU在非故障态下输出方波频率为

100 000 000 / 4096 = 24.414 kHz

符合 10-45kHZ的范围要求,故将PRE2设置为3

代码修改

主要是需要修改FSP寄存器的配置部分代码,在初始化SMU函数中修改如下:

mcu

代码的修改可以参考手册给出的指导规则

mcu

测试

用示波器测试P33.8脚即SMU_FSP0 正常情况下输出为评率为24.4Khz的方波, 一旦MCU故障会拉低引脚,PMCI的控制IC会进行电源管理处理。

mcu

总结

MCU有很多故障,又分为很多组,是怎么映射的呢,可能很多人会有这个疑问,其实是有寄存器来映射

mcu

比如我们在代码中 SMU_AG10FSP.B.FE18 = 1; 就是将FSP映射到故障组10的第18个。

mcu

mcu

关于更多SMU的使用详情大家可以参考数据手册或者后台留言。

  审核编辑:汤梓红

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

全部0条评论

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

×
20
完善资料,
赚取积分