Infineon TC297 reset 内容整理
Infineon TC297 reset 内容整理
SCU、RCU、SMU
System Control Unit (SCU)Reset Control Unit (RCU)Safety Management Unit (SMU)
程序复位原因
读取RCU的寄存器RSTSTAT(Reset Status Register), 根据寄存器的值确认产生Reset的原因
例如,我们读到了寄存器的bit3-SMU为1,SMU为1既The last reset was requested by this reset trigger。
进一步查询复位原因
需要关注的几个寄存器
AG0-AG6 : Alarm Group 0 Status - Alarm Group 6 StatusAGnCFx (n=0-6, x=0-2) : Alarm configuration
需要关注的概念
Alarm Signals :Alarm Signals分为group0到group6共7个组,每个组的bit为31-0共32bits, 每个bit对应一个Alarm Signals。每个Alarm Signals的配置寄存器有0、1、2三个,既AGnCFx (n=0-6, x=0-2)中的x,一共有n组,n=0-6.每个Alarm Signals有对应的Alarm Action Configuration Codes,Code = SMU_AG<n>CF2. SMU_AG<n>CF1. SMU_AG<n>CF0, n=0...6。
能直接引起reset的有0x5(SMU_NMI)和 0x6(SMU_RESET).
引起SMU是复位源的原因
这众多Alarm Signals中,哪些或者哪个Signals才是引起reset的原因,首先检查AGnCFx的配置,看一看哪些Alarm Signals的code被配置为0x5或0x6的值。根据SMU寄存器的基地址及寄存器地址偏移,确定AGnCFx的位置,如下图
AG2CF2 - AG2CF1 - AG2CF0 —> 0x20000000 - 0x20000000 - 0x00000000
即Group2 的bit29对应的Alarm Signals的code 为 110,即0x6
group2的bit9对应的Alarm Signals为 SMU-Alarm: Timer time-out (Safety Mechanism: Recovery Timer 0)
AG3CF2 - AG3CF1 - AG3CF0 —> 0x001E0000 - 0x00000000 - 0x001E0000
bit20 code = 101 SCU/WDTCPU2 Alarm: CPU2 watchdog time-out
bit19 code = 101 SCU/WDTCPU1 Alarm: CPU1 watchdog time-out
bit18 code = 101 SCU/WDTCPU0 Alarm: CPU0 watchdog time-out
bit17 code = 101 SCU/WDTS Alarm: Safety Watchdog time-out
其它组的寄存器值都为0
如果程序只使用了CPU0,并且只配置了Safety WD, 那么引起复位的复位原因有Safety Watchdog time-out或Timer0 timeout。最终的原因就是因为没有及时喂狗,导致的程序复位。
至于为什么没能及时喂狗,需要针对程序继续查询。
Infineon TC297 reset 内容整理相关推荐
- Google C++ 风格指南内容整理
之前一直没有全面的看过Google C++风格指南,现在很多公司进行C++开发都要求按照Google C++风格.在这个网站 http://zh-google-styleguide.readthedo ...
- 人工智能/云原生/数据科学/计算等方向内容整理志愿者招募了!
持续招募内容整理志愿者!云原生.数据科学.AI.低代码.计算等方向,有意愿的小伙伴,欢迎识别二维码提前报名哦.我们将持续为爱学习.有时间的小伙伴,提供多重福利! 要求: 1. 你需要具备一定学术背景, ...
- CSS核心内容整理 - (中)
2019独角兽企业重金招聘Python工程师标准>>> 本文是CSS核心内容整理的第二篇,承接上一篇的内容继续对CSS的一些重要内容进行整理,推荐先看完这个系列的上一篇. 四. 页 ...
- linux过滤输出内容,Linux内容整理--过滤器、输入输出及管道
Linux内容整理--过滤器.输入输出及管道1.过滤器 Linux中的应用工具分为三种: 1.交互工具 2.过滤器 3.编辑器 能够接受数据,过滤再输出的工具,称为过滤器. 对过滤器和进程,存在着输入 ...
- ACL和NAT内容整理
目录 一.ACL内容整理 1.1ACL的作用与原理 1.2ACL的种类 1.3ACL应用规则 1.4ACL命令 二.NAT内容整理 1.1什么是NAT 1.2NAT的工作原理: 1.3NAT功能: 1 ...
- 【项目管理】Scrum内容整理
针对Scrum相关内容整理如下:(持续更新补充) 目录 定义 角色 四个会议 实施流程 工具 通用实践 敏捷价值观 (更重视左边) 敏捷原则 相关观点 定义 Scrum是迭代式增量软件开发过程,通常用 ...
- 【项目管理】RUP内容整理
针对RUP相关内容整理如下:(持续更新补充) 目录 定义 核心概念 三大特点 核心工作流 十大要素 相关观点 定义 RUP(Rational Unified Process),统一软件开发过程,统一软 ...
- 【项目管理】PMO内容整理
针对PMO相关内容整理如下:(持续更新补充) 目录 定义 职责 引入作用 工作思路 具体落地建议 相关观点 定义 PMO (Project Management Office)一般称为项目管理办公室. ...
- 【项目管理】CMMI内容整理
相关CMMI 内容整理如下:(持续更新补充) 目录 定义 五大级别 引入原因 认证给企业带来的价值 实施流程 相关观点 定义 CMMI的全称为Capability Maturity Model In ...
最新文章
- 拖拽批量上传图片如何保证 顺序_使用 Eagle 探索图片管理新边界
- iOS数据库操作之FMDB
- Linux C编程--进程间通信(IPC)6--综合应用实例--信号量和共享内存的使用
- 性能测试、负载测试以及压力测试
- mongodb 1安装,开启
- 如何用keras实现deepFM
- Silverlight 2.5D RPG游戏技巧与特效处理:(七)动画特写
- java中的mod运算_Java中的运算符与控制语句
- 盘点数据科学最流行的29个Python库
- 大数据平台之初体验 | 网易猛犸 | 数据仓库、调度系统、数据质量、离线与实时计算应有尽有。
- sql2017 for linux,Installing SQL Server 2017 for Linux on Ubuntu 18.04 LTS
- linkedin领英账号限制被封了怎么办?
- csdn的一篇文章的片段 职业初期的解惑
- 贝叶斯网络:故障诊断方法研究
- Android渐变折线图,自定义View之颜色渐变折线图
- MyBatis第N+1种分页方式,全新的MyBatis分页
- 怎么更改苹果账户名称_苹果新品快来了,你真的学会如何找回你的Apple ID的密码了吗?...
- 我的世界手机有php的开服器下载地址,我的世界手机版怎么联机 PE手机版开服教程...
- QT图表chart-饼状图
- 全国计算机等级考试(NCRE)
热门文章
- ArcGIS二次开发基础教程(03):保存文档和导出地图
- 虹科分享|三种主流工业以太网概述及其应用
- 计算机组成原理笔记——中央处理器CPU
- 武汉往事之治疗微信病
- ReferenceError: Error #1056
- 用Arduino自制钢琴实现录音和重放,陈老师教你弹
- 阻抗分析仪二次开发|LCR数字电桥软件NS-LCR
- 拿到阿里云服务器后的基本安全配置
- 农村小学使用计算机新闻稿,科技圆梦 生活美好——2017年东边小学科技节活动报道...
- 公益是书籍是什么,公益书籍变现模式有哪些