瑞萨RH850-P1X ECM和英飞凌TC3xx SMU对比

news/2025/2/14 7:07:18/

1.1 基本结构

        P1X ECM(Error Control Module)收集从不同的错误源和监控电路发来的错误信号,并通过error pin(ERROROUTZ)对外输出、产生中断并发出ECM reset信号。

        P1x-C系列根据产品型号不同,ECM个数也不相同,如下:

        对应寄存器基地址如下:

        其内部结构框图如下:

两个ECM结构

ECM master和checker结构

1.2 功能总览

1.2.1 功能安全处理方式

  1. 设置错误Flag
  2. 生成EI中断
  3. 生成FE中断
  4. 触发内部复位:对每个error均可独立控制生成system reset 2
  5. 通过error pin输出给外部:固定电平/根据计时器输入进行切换

PS:EI\FE等含义

FE level non-maskable interrupt (FENMI)

  1. 即使已生成另一个FE级别中断FEINT,也将应答FENMI中断。
  2. 即使CPU系统寄存器PSW.NP = 1,也会应答FENMI中断。
  3. 无法从FENMI中断返回,也无法恢复

FE level maskable interrupt (FEINT)

  1. 如果CPU系统寄存器PSW.NP = 0,则可以确认FEINT。如果PSW.NP = 1,则将其屏蔽。
    −从FEINT中断返回是可能的,因此恢复也可以。

EI level maskable interrupt (EIINT)

  1. 如果尚未生成FE级中断(FENMI或FEINT),则可以确认EIINT中断。
  2. −如果CPU系统寄存器PSW.NP = 0,则可以确认EIINT。
  3. 如果正在处理PSW.NP = 1,具有更高优先级的EIINT或PSW.ID = 1,则将其屏蔽。
    1. −可以从EIINT中断返回,恢复也可以。
    2. −可以为每个中断通道指定中断屏蔽。
    3. −每个中断通道可以指定16个中断优先级
    4. −在本节中,对应于中断通道n的EIINT用“ INTn”表示,而EIINT表示对应于中断源xxx,用“ INTxxx”表示。

1.2.2 错误状态记录

        ECM集成了错误状态寄存器(3个),可用于从错误标志确认错误状态。

        错误flag只能由软件或者POR进行清除,其余复位错误状态不会被清除。

可以看到,这个寄存器是只读的,那么软件可以在什么地方将这些error态清除呢?

        用于清除状态寄存器的错误状态。

1.2.3 自诊断/Debug功能

·····通过产生伪错误用于自诊断和调试

        伪错误注入时的操作与真实错误发生时的操作相同。掩码到错误引脚输出、中断或错误控制模块复位的所有配置都采用同样的方式。

通过如下寄存器可以输入伪错误

·····ECM内部集成error pin输出的loop-back功能

1.2.4 超时功能

        ECM中的delay timer可以在中断请求发生时同时启动;

        当delay timer的计数(ECMnDTMR)和比较寄存器(ECMnDTMCMP)中的值匹配时产生该超时错误输出或ECM reset,因为中断处理中该timer没有停止,这个错误flag对应SSE229,正常情况应该是在比较寄存器中配置的时间内完成中断处理。

Ps: SSE229--Error Source Status Reg2 的29bit; 具体对应的Error Source Input为(2*32+29)-1。

        与该功能相关的寄存器如下:

        ECMnDTMR结构如下:

ECMnDTMCMP结构如下:

1.2.5 Error Output操作

        ECM中的Error Output有如下两种模式:

复位之后该pin行为如下:

Hi-Z:高阻态

  1. 动态模式配置

        根据timer输入反转电平;使能该模式需要如下步骤:

  • 初始化对应Timer GTMAT0O5
  • 配置ECMECLR.ECMmECT 位为1,将其设置为高电平,no error状态。
  • 配置ECMnEPCFG.ECMSL0位为1,设置为动态模式;
  • 启动GTMAT0O5

1.3 与英飞凌对比

TC3xx

RH850 P1x-C

实例个数

1(SMU core/stdby)

1~2(ECM Master/Checker)

Error reaction

Interrupt

Interrupt

NMI

NMI

CPU Reset

-

Sys Reset

Sys Reset

Error Pin Output(FSP协议)

Error Pin Output(低电平/方波)

寄存器保护

SafetyEndinit

Protected Register(有解保护时序要求)

模块理解难度

寄存器配置

配置一个Error对应的reaction需要同时设置3个寄存器,理解起来比较困难,但可拓展性强

每一个reaction均有独立寄存器配置,配置方法简单

Error Out

FSP协议,较为抽象,但寄存器少,配置方便

描述简单,寄存器多,需要深刻理解Delay timer配置的含义


http://www.ppmy.cn/news/1185941.html

相关文章

为什么我给MaintenanceTool的资料档案馆填上国内的镜像后,依然只显示我安装过的组件?

2023年10月30日,周一下午 我给MaintenanceTool的资料档案馆填上国内的镜像后,依然只显示我安装过的组件 有可能是因为本地缓存出了问题,比如有中文路径 重新更换成全英文的路径,然后让它重新加载缓存试试 我重新更换缓存路径并重新…

QuickFix/J:使用@Handler处理消息

fix接收消息是通过实现quickfix.Application.fromApp(Message message, SessionID sessionID)指定message类型,调用quickfix.MessageCracker.crack(Message message, SessionID sessionID)方法在invokers这个map中找到对应的消息类并处理,invokers在init…

vue中把弹出层.vue文件注册成组件供其他.vue文件调用的写法

背景:因弹出层多个页面的详情都是一样的,因此把弹出层定义成组件,多次调用 定义组件的过程中出现很多问题,因此再次记录最终成功的写法 一、 简单实现页面调用弹出层组件的打开弹出层方法: 1. 弹出层组件 (in…

软考 系统架构设计师系列知识点之软件构件(3)

接前一篇文章:软考 系统架构设计师系列知识点之软件构件(2) 所属章节: 第2章. 计算机系统基础知识 第3节. 计算机软件 2.3.7 软件构件 (2)J2EE(补充知识) J2EE核心组成&#xff1a…

全连接神经网络 - FCN

FCN(全卷积神经网络)图像语义分割的一种框架,是深度学习用于语义分割领域的开山之作。FCN将传统CNN后面的全连接层换成了卷积层,这样网络的输出将是热力图而非类别;同时,为解决卷积和池化导致图像尺寸的变小,使用上采样…

【python】挑选墙纸--CTGU计协编程部月考核

题目: """ 题目描述: 为庆祝三峡大学建校100周年,学校购入多张墙纸以作装饰,每张墙纸为一个 n x m 的小写字母矩阵。其中,学长想挑选出能够从中读出 "ctgu" 字样的墙纸。具体来说,从墙纸的左…

RocketMQ笔记

科普: 把数据放到消息队列叫做生产者从消息队列里边取数据叫做消费者 一、为什么要用消息队列? 消息队列主要有三大用途 :解耦、异步、削峰,是消息队列最主要的三大作用。 二、为什么选择RocketMQ 选择中间件的可以从这些维度来…

一共就五个名额,三个全给一个人?我表示不理解

我对csdn举办的#你写过的最蠢的代码是/这个话题的活动表示质疑!!!! 先来看看评选规则: 再来看看评分标准: 接下来看看获奖选手: 这三人有啥区别?