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 内容整理相关推荐

  1. Google C++ 风格指南内容整理

    之前一直没有全面的看过Google C++风格指南,现在很多公司进行C++开发都要求按照Google C++风格.在这个网站 http://zh-google-styleguide.readthedo ...

  2. 人工智能/云原生/数据科学/计算等方向内容整理志愿者招募了!

    持续招募内容整理志愿者!云原生.数据科学.AI.低代码.计算等方向,有意愿的小伙伴,欢迎识别二维码提前报名哦.我们将持续为爱学习.有时间的小伙伴,提供多重福利! 要求: 1. 你需要具备一定学术背景, ...

  3. CSS核心内容整理 - (中)

    2019独角兽企业重金招聘Python工程师标准>>> 本文是CSS核心内容整理的第二篇,承接上一篇的内容继续对CSS的一些重要内容进行整理,推荐先看完这个系列的上一篇. 四.  页 ...

  4. linux过滤输出内容,Linux内容整理--过滤器、输入输出及管道

    Linux内容整理--过滤器.输入输出及管道1.过滤器 Linux中的应用工具分为三种: 1.交互工具 2.过滤器 3.编辑器 能够接受数据,过滤再输出的工具,称为过滤器. 对过滤器和进程,存在着输入 ...

  5. ACL和NAT内容整理

    目录 一.ACL内容整理 1.1ACL的作用与原理 1.2ACL的种类 1.3ACL应用规则 1.4ACL命令 二.NAT内容整理 1.1什么是NAT 1.2NAT的工作原理: 1.3NAT功能: 1 ...

  6. 【项目管理】Scrum内容整理

    针对Scrum相关内容整理如下:(持续更新补充) 目录 定义 角色 四个会议 实施流程 工具 通用实践 敏捷价值观 (更重视左边) 敏捷原则 相关观点 定义 Scrum是迭代式增量软件开发过程,通常用 ...

  7. 【项目管理】RUP内容整理

    针对RUP相关内容整理如下:(持续更新补充) 目录 定义 核心概念 三大特点 核心工作流 十大要素 相关观点 定义 RUP(Rational Unified Process),统一软件开发过程,统一软 ...

  8. 【项目管理】PMO内容整理

    针对PMO相关内容整理如下:(持续更新补充) 目录 定义 职责 引入作用 工作思路 具体落地建议 相关观点 定义 PMO (Project Management Office)一般称为项目管理办公室. ...

  9. 【项目管理】CMMI内容整理

    相关CMMI 内容整理如下:(持续更新补充) 目录 定义 五大级别 引入原因 认证给企业带来的价值 实施流程  相关观点 定义 CMMI的全称为Capability Maturity Model In ...

最新文章

  1. 拖拽批量上传图片如何保证 顺序_使用 Eagle 探索图片管理新边界
  2. iOS数据库操作之FMDB
  3. Linux C编程--进程间通信(IPC)6--综合应用实例--信号量和共享内存的使用
  4. 性能测试、负载测试以及压力测试
  5. mongodb 1安装,开启
  6. 如何用keras实现deepFM
  7. Silverlight 2.5D RPG游戏技巧与特效处理:(七)动画特写
  8. java中的mod运算_Java中的运算符与控制语句
  9. 盘点数据科学最流行的29个Python库
  10. 大数据平台之初体验 | 网易猛犸 | 数据仓库、调度系统、数据质量、离线与实时计算应有尽有。
  11. sql2017 for linux,Installing SQL Server 2017 for Linux on Ubuntu 18.04 LTS
  12. linkedin领英账号限制被封了怎么办?
  13. csdn的一篇文章的片段 职业初期的解惑
  14. 贝叶斯网络:故障诊断方法研究
  15. Android渐变折线图,自定义View之颜色渐变折线图
  16. MyBatis第N+1种分页方式,全新的MyBatis分页
  17. 怎么更改苹果账户名称_苹果新品快来了,你真的学会如何找回你的Apple ID的密码了吗?...
  18. 我的世界手机有php的开服器下载地址,我的世界手机版怎么联机 PE手机版开服教程...
  19. QT图表chart-饼状图
  20. 全国计算机等级考试(NCRE)

热门文章

  1. ArcGIS二次开发基础教程(03):保存文档和导出地图
  2. 虹科分享|三种主流工业以太网概述及其应用
  3. 计算机组成原理笔记——中央处理器CPU
  4. 武汉往事之治疗微信病
  5. ReferenceError: Error #1056
  6. 用Arduino自制钢琴实现录音和重放,陈老师教你弹
  7. 阻抗分析仪二次开发|LCR数字电桥软件NS-LCR
  8. 拿到阿里云服务器后的基本安全配置
  9. 农村小学使用计算机新闻稿,科技圆梦 生活美好——2017年东边小学科技节活动报道...
  10. 公益是书籍是什么,公益书籍变现模式有哪些