(uvm验证学习1) apb watchdog 标准阅读和测试点记录

在这里插入图片描述

工作原理

由软件读写看门狗中的LOADVALUE寄存器,打开看门狗并设置计数时间,定时器计数计满,由软件清零(INT clear),以表明系统状态正常。这时,定时器计数重新开始。否则,看门狗认为 系统异常或有其它特定事件发生,触发系统复位信号,或提供中断,系统正常后通过配置看门狗,重新开始计数器计数。

这样只要软件正常运行吗,就不会出现看门狗的复位情况。当死机或者软件运行出错时,由看门狗对系统进行复位或触发中断。

在这里使用的看门狗,主要有两个功能:

  1. 通用的产生中断的定时器,可配置中断产生时间
  2. 当中断没有被清除,计数器又一次(产生中断信号后)减到0时,产生复位信号

原文翻译

apb watchdog本身是基于一个递减的计数器,计数器的初始值是从WDOGLOAD寄存器读取的。在一些条件满足时,当计数器的值递减到0,输出接口的WDOGINT会拉高。只有当WDOGCLKEN为高时,才允许wdog在输入时钟WDOGCLK的上升沿将计数器的值减1.

当wdog发现interrupt信号已经拉高后,若是内置的计数器又一次递减到0,会拉高WDOGRES信号,随后计数器会停下。在下一个时钟上升沿,计数器会从WDOGLOAD加载初始值,重新开始新一轮的递减计数。如果这种情况下(WDOGINT拉高,WDOGRES拉高)计数器又一次递减到0,则会又一次拉高WDOGRES信号(?)

测试点记录

  1. WDOGRES信号拉高后,计数器是否停止计数?(模块功能理解,设置测试情境看波形,测试2,6给出情境
  2. 如果WDOGINT,WDOGRES都拉高之后,计数器第三次递减到0(前两次递减分别造成了WDOGINT的拉高和WDOGRES的拉高),WDOGINT和WDOGRES会怎样表现,WDOGRES的reassert是什么意思?(测试8

流图

在这里插入图片描述

图中只记录了WDOGINT和WDOGRES被拉高的两次计数器递减到0的过程,需要注意的是这两个信号能够被拉高的前提是对应的enable位被设置

测试点记录

  1. 没有设置enable位情况下,这两个信号即时满足计数器递减至0等其他条件,也不能被拉高

寄存器列表

在这里插入图片描述

测试点记录

读取WDOGPERIPHID01234567和WDOGPCELLID0123确定读出数据合理(测试1给出

功能寄存器作用

  1. WDOGLOAD:用来保存计数器初始值,当该寄存器被写入时,计数器会立刻从该寄存器加载新的初始值,可写入的最小值为1
  2. WDOGVALUE: 用来保存计数器当前数值,可能是0到初始
  • 9
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值