【TC3xx芯片】TC3xx芯片SMU模块详解

目录

前言

正文

1.SMU功能概述

1.1 SMU架构

1.2 SMU_core

1.3 SMU_stdby

2. SMU功能详述

2.1 SMU_core

2.1.1 Reset类型

2.1.2 接口(Interfaces)概述

2.1.2.1 SMU_core到SCU的接口

2.1.2.2 SMU_core到IR的接口

2.1.2.3 SMU_core到Ports(ErrorPin)的接口

2.1.2.4 SMU_core到寄存器监控的接口

2.1.2.5 SMU_core到SMU_stdby的接口

2.1.3 SMU_core集成指导

2.1.4 报警映射(Alarm Mapping)

2.1.4.1 SMU_core内部Alarms

2.1.5 Alarm处理

2.1.5.1 Alarm协议

2.1.5.2 Alarm配置

2.1.5.3 Alarm操作

2.1.5.4 Alarm状态寄存器

2.1.5.5 Alarm诊断寄存器

2.1.5.6 Port紧急停止

2.1.5.7 Recovery Timer

2.1.5.8 看门狗Alarms

2.1.6 SMU_core控制接口

2.1.7 SMU_core 状态机

2.1.8 故障信号协议 (Fault Signaling Protocol, FSP)

2.1.8.1 简介

2.1.8.2 Bi-stable fault signaling protocol

2.1.8.3 Timed dual rail

2.1.8.4 Time switching protocol

2.1.8.5 FSP Fault State

2.1.8.6 FSP and SMU_core START State

2.2 SMU_stdby

3.SMU配置

3.1 SMU General配置

3.2 SmuConfigSet配置

3.2.1 General

3.2.2 SmuCoreRT0Alarm

3.2.2 SmuCoreRT1Alarm

3.2.3 SmuCoreAlarmGroup

3.2.4 SmuStdbyAlarmGroup

4. 总结


前言

SMU模块是Aurix芯片自带的一个功能安全硬件模块,它能够收集其他模块(PMS, MTU, SCU, CCU, e.g.)由于硬件功能安全机制产生的报警(Alarm),然后,SMU模块通过用户配置能够产生内部或者外部的动作/响应,也可以不产生任何动作。本文将详细介绍SMU模块

缩略词

简写

全称

SMU

Safety Management Unit

FSP

Fault Signaling Protocol

SCU

System Control Unit

IR

Interrupt Router


注:本文章引用了一些第三方工具和文档,若有侵权,请联系作者删除!

正文

1.SMU功能概述

SMU 是安全架构的核心组件,提供通用接口,用于管理存在故障的微控制器的行为。SMU 集中所有与不同的硬件和软件安全机制相关的警报信号。每个警报都可以单独配置为触发内部操作和 / 或通过故障信号协议(FSP, Fault Signaling Protocol)向外部通知存在故障。 每一报警的严重程度应根据安全应用的需要进行配置:默认情况下,除看门狗超时报警外,每一报警反应都被禁用。 为了进行调试和诊断,报警信号设置了一个粘滞位(sticky bit),该粘滞位可适应应用程序或系统重置。 SMU 还实施了一些与专用安全机制的管理和测试相关的内务管理(housekeeping functions)功能。 可以使用特殊测试模式测试 SMU 本身,以检测潜在故障。除了寄存器访问保护外, SMU 还实施了配置锁定机制(configuration locking mechanism)。 此外,为了缓解(mitigate)潜在的常见原因故障, SMU 分为两部分:

. SMU_core: 位于core domain.

. SMU_stdby: 位于stand-by domain.

SMU_CORE 和 SMU_Stdby 的设计方式和时间安排各不相同。SMU 的两个部分之间存在物理隔离。它们位于不同的时钟和电源域中。这允许 SMU 处理任何传入的报警,而不管用于生成此报警的时钟频率如何。此外,在 fSPB (或衍生产品) 上生成的报警事件将由 SMU_CORE 处理,而在 fBACK 上生成的报警事件将由 SMU_Stdby 处理。这样,所有时钟活动监视器警报都将在生成时钟域中处理。此外,与功率和温度有关的报警也以不同的方式处理,因为它们由 SMU_CORE 和 SMU_Stdby 处理。可以在 SMU_CORE 或 SMU_Stdby 中配置对这些报警的一个或多个反应(Actions)。

此外,为了检测 SMU_CORE 中的错误,将从 SMU_core 向 SMU_Stdby 发送警报 SMU_core_alive。对这些警报的反应(Actions)可在两个域中配置。 但是,对于 SMU_Stdby ,只有无反应(no reaction)或将 Errorpins 配置为高阻抗状态作为报警反应。

SMU 与嵌入式安全机制相结合,可以在容错时间间隔内检测并报告超过 99% 的微控制器严重故障模式。可在 SMU 中配置容错时间间隔的计时特性。

1.1 SMU架构

1.2 SMU_core

核心域 SMU (也称为 SMU_core) 从安全概念定义的硬件监视器(hardware monitors)的安全机制收集大多数警报信号。 报警映射(Alarm Mapping)部分(后面的章节)指定报警接口(alarm interface)并将其分类为报警组(alarm group)。 报警组定义逻辑映射,用于将报警信号映射到内部状态寄存器。 “报警处理”部分描述了配置选项。配置选项指定检测到报警事件时 SMU_core的行为。警报事件可以触发内部操作和 / 或激活错误针脚,以指示外部环境存在故障。SMU_CORE Control Interface 部分指定了软件如何控制 SMU_CORE 以及硬件操作的相关性。故障信号协议 (FSP) 部分描述了外部故障信号协议的属性,这些属性定义了错误针脚(ErrorPin)的计时和逻辑属性。

1.3 SMU_stdby

备用域 SMU (也称为 SMU_Stdby) 从检测时钟 (无时钟) ,电源 (电压过低 / 过高) 和温度故障 (温度过低 / 过高) 的模块收集警报。SMU_Stdby 还会收集 SMU_Alive 报警信号,当 SMU_CORE 在报警升高后未触发反应时,该信号会发出通知。此外, SMU_Stdby 实现了内置自检功能,允许用户测试 SMU_Stdby 对报警信号的反应以及从次级电压监视器到 SMU_Stdby 的完整报警路径。有关辅助监视器和 SMU_Stdby 内置自检的详细信息,请参阅电源管理系统一章。

“报警映射”部分指定报警接口,并将它们分为两个报警组。“报警处理”部分描述了可以指定的配置选项。配置选项指定检测到报警事件时 SMU_Stdby 的行为。警报事件可以触发启动 ErrorPins (错误针脚) ,该 ErrorPins (错误针脚) 表示外部环境存在故障。

2. SMU功能详述

2.1 SMU_core

2.1.1 Reset类型

SMU_CORE 需要多种Reset类型。 Reset类型在系统控制单元中完全指定。 SMU_CORE 要求的重置类型为:

. Power-on Reset

. System Reset

. Debug Reset

. Application Reset

下表指定了每个重置(Reset)类型的范围,这些重置类型的配置和逻辑是SMU_core 控的。

2.1.2 接口(Interfaces)概述

这一章描述SMU_core和其他模块之间的接口信号。

2.1.2.1 SMU_core到SCU的接口

与系统控制单元连接的警报事件所导致的内部操作。 接口信号为:

. Emergency Stop Request

. Reset Request

. NMI Request

. CPU Reset Request

2.1.2.2 SMU_core到IR的接口

与中断路由模块相连的报警事件导致的内部操作。 接口信号为:

. SMU Interrupt Service Request 0

. SMU Interrupt Service Request 1

. SMU Interrupt Service Request 2

SMU 中断服务请求到中断路由 (IR) 中断节点的映射可在中断路由器一章 (SRC_SMUy, y=0.2) 中找到。

AGC.IGCSx , x= { 0 , 1 , 2 } 寄存器字段提供了软件接口来控制 SMU 如何触发中断路由器的中断请求。

每个AGC.IGCSx是一个3-bits的位域信号:

AGC.IGCSx[0] shall be set to ‘1’ to trigger SMU Interrupt Service Request 0

AGC.IGCSx[1] shall be set to ‘1’ to trigger SMU Interrupt Service Request 1

AGC.IGCSx[2] shall be set to ‘1’ to trigger SMU Interrupt Service Request 2

AGC.IGCSx的使用在Alarm Configuration章节描述。

2.1.2.3 SMU_core到Ports(ErrorPin)的接口

通用端口结构如下图所示。

端口引脚(Port Pin)可以通过 ALTx 输出线路连接到外围设备。这是开机重置后端口的默认状态 。SMU_CORE 使用 HW_DIR , AlTIN , HW_EN , HW_OUT 信号连接到端口。当 HW_EN 端口输入由 SMU_CORE 驱动时, SMU_CORE 将完全控制该端口,绕过与 ALTx 输入使用相关的任何其他软件配置。

下图 提供了端口结构的更详细概述,并突出显示了 SMU_CORE 连接中涉及的信号。

SMU_FSP0(也就是上图中的FSP [0]) 由硬件控制。FSP_DIR和FSP_EN由软件控制,控制寄存器如下:

. PCTL.HWDIR直接驱动FSP_DIR输出。

. PCTL.HWEN直

TC3xx SMU&WDT是指TC3xx芯片中的System Management Unit和Watchdog Timer。System Management Unit (SMU)是TC3xx芯片的一个模块,负责管理芯片的电源、时钟和复位等功能。Watchdog Timer (WDT)是用于监控系统运行状况的计时器。TC3xx芯片中包含多个Watchdog Timers,其中包括一个Safety Watchdog Timer和每个CPU对应的Watchdog Timer。 关于TC3xx SMU&WDT的更多详细信息,可以查阅TC3XX User Manual的9.4节。在该文档中,Watchdog Timers被归属为System Control Units (SCU)的六大模块之一。 在使用TC3xx SMU&WDT时,可以使用相关的函数进行配置和操作。例如,可以使用IfxScuWdt_enableCpuWatchdog函数启用CPU Watchdog Timer,并使用IfxScuWdt_changeCpuWatchdogReload函数设置CPU Watchdog Timer的计数值。类似地,可以使用IfxScuWdt_enableSafetyWatchdog函数启用Safety Watchdog Timer,并使用IfxScuWdt_changeSafetyWatchdogReload函数设置Safety Watchdog Timer的计数值。最后,使用IfxScuWdt_serviceCpuWatchdog和IfxScuWdt_serviceSafetyWatchdog函数分别对CPU Watchdog Timer和Safety Watchdog Timer进行服务操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Safety WDT && CPU WDT](https://blog.csdn.net/lm393485/article/details/127118815)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [AURIX TC397 SCU 之 Watchdog 看门狗](https://blog.csdn.net/weifengdq/article/details/109597048)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汽车电子嵌入式

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值