原文:6.小白学uvm验证 - 寄存器模型

写过 verilog 硬件代码的同学应该都知道 DUT 会包含很多寄存器,它们是模块间交互的接口,其用途大致可以分为两类: a. 通过读出寄存器当前的值获取 DUT 当前的状态,该类寄存器称为状态寄存器 b. 通过对寄存器进行配置,可以使得 DUT 工作在一定模式下,该类寄存器称为配置寄存器。 在验证过程中,寄存器的验证是最新开始的,只有保证寄存器的配置正确,才能使得硬件之间的 交互 正确。在验 ...

2019-10-29 09:29 0 543 推荐指数:

查看详情

数字验证--uvm寄存器模型常用函数介绍

DUT中寄存器的值可能是实时变更的, 寄存器模型并不能实时地知道这种变更, 因此, 寄存器模型中的寄存器的值有时与DUT中相关寄存器的值并不一致。 对于任意一个寄存器寄存器模型中都会有一个专门的变量用于最大可能地与DUT保持同步, 这个变量在寄存器模型中称为DUT的镜像值 ...

Sat May 29 02:12:00 CST 2021 0 2876
UVM——寄存器模型相关的一些函数

0. 引言   在UVM支持的寄存器操作中,有get、update、mirror、write等等一些方法,在这里整理一下他们的用法。   寄存器模型中的寄存器值应该与DUT保持同步,但是由于DUT的值是实时更新的,所以寄存器模型并不能实时知道这种更新,在寄存器模型中专门有个值来尽可能与 ...

Wed Sep 25 22:22:00 CST 2019 1 888
uvm_reg_predictor——寄存器模型(十七)

这是寄存器模型类中唯一派生自uvm_component的类,我们的寄存器模式需要实时,以最接近的方式知道DUT中寄存器的变化,uvm_reg_predictor就是为这个而生的。 ...

Tue Dec 12 22:34:00 CST 2017 0 1010
uvm_reg_model——寄存器模型(一)

  对于一个复杂设计,寄存器模型要能够模拟任意数量的寄存器域操作。UVM提供标准的基类库,UVM寄存器模型来自于继承自VMM的RAL(Register Abstract Layer),现在可以先将寄存器模型进行XML建模,再通过脚本工具直接生产寄存器模型。首先来看看uvm ...

Tue Dec 12 04:31:00 CST 2017 0 1667
5.小白uvm验证 - squence机制

  在第一节中我们提过,为什么不把 transaction 实例化、随机和驱动全部放入 driver 中完成,我们验证的主要工作量,除了搭建验证环境之外,还有一大工作-拼凑场景case,其中不同场景中 transaction 的发送给数量和组织形式各有差异,我们如果把 transaction 放入 ...

Tue Oct 29 17:07:00 CST 2019 0 418
7.小白验证 - uvm环境工作流程

  uvm环境工作流程主要包含以下几个步骤: module test_top module test 模板   uvm 环境是在 module 中通过调用 run_test()<UVM 全局 task>,创建 uvm_root uvm ...

Fri Nov 22 03:34:00 CST 2019 0 260
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM