寄存器模型基本概念

文章介绍了寄存器的基本概念,包括寄存器域、保留域和寄存器块,并详细阐述了寄存器模型的构建和应用,如声明、实例化和配置。同时,讨论了前门和后门访问方式,以及混合应用策略。此外,还提到了寄存器模型的预测方法,包括自动预测和显式预测,并介绍了相关的访问方法和复位、更新功能。
摘要由CSDN通过智能技术生成

寄存器的概述

introduction

• 寄存器:一般为32bit, 可以分为多个reg_filed, 每个field一般代表着独立的功能
• 寄存器域:一般分为RW, RO,WO以及一些特殊的行为
• 保留域:暂时保留以作日后功能的扩展使用,对保留域的读写不起任何作用
• 寄存器块:按照地址排列的寄存器列表

寄存器模型

作用:做预测,做激励
内容:验证环境中的寄存器模型与DUT的寄存器模块的寄存器信息高度一致
应用:
1.对寄存器域进行声明  (保留域也要进行声明)
uvm_reg_field reserved;
rand uvm_reg_field pkt_len;

2.build() 阶段对寄存器域进行例化、配置
Pkt_len = uvm_reg_field::type_id::create("pkt_len");
Pkt_len.configure(this, 3,  3, "RW", 0, 3'h0, 1, 1, 0);

3.定义寄存器块(uvm_reg_block)
在build()阶段对寄存器的句柄进行例化,配置,调用寄存器所在class的build()函数
用uvm_reg_map 来表示寄存器和存储对应的偏移地址,只需要在build阶段例化系统已经定义好的defualt map
(一个block至少对应一个map)

Adapter

功能:桥接功能,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值