uvm_reg_hw_reset_seq 源码分析


有关uvm_reg_bit_bash_seq 的源码请看 : uvm_reg_bit_bash_seq 的源码

uvm_reg_hw_reset_seq用于初期检查DUT中的寄存器硬件值是否与reg_model 中的复位值一致,防止设计在实现时弄错复位值。

1.代码解析

1.先reset reg_modle 。将reg_modle中的镜像值和期望值复位。
在这里插入图片描述
2.判断是否在外部设置了哪些 reg_block 不需要进行 reset 测试 。后面补充知识中会介绍怎么设置reg不测试。
在这里插入图片描述
3.判断是否有哪些 reg 不需要测试。
在这里插入图片描述
4.对所有需要进行测试的 reg 通过前门的方式读回DUT的硬件值,再与 reg_model 的 mirror 值进行对比,如果不一致,证明DUT的硬件复位值与reg_modle 的寄存器复位值不一致。
在这里插入图片描述

2.知识点补充

设置reg不测试

这里要想设置那些 reg 不需要测试,可以通过如下的方式在这里插入图片描述

关于resource_db

uvm_resource_db 的使用类似于 uvm_config_db(uvm_config_db 继承于 uvm_resource_db),也是通过寄信、取信的方,将”信息“存放在uvm_resource_pool 中。uvm_resource_pool 中有个两个联合数组,分别根据 类型(type) 和 名字(name) 排序和查找。如下:
“寄信”在这里插入图片描述
“取信”
在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小小verifier

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

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

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

打赏作者

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

抵扣说明:

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

余额充值