【UVM-26.6】UVM HDL后门访问支持例程

26.6 UVM HDL Backdoor Access support routines

这些例程为寄存器使用的DPI/PLI后门访问提供接口。
如果你不想使用DPI HDL API,那么使用vlog开关编译SystemVerilog代码。
vlog ... +define+UVM_HDL_NO_DPI ...
概要
UVM HDL后门访问支持例程。
这些例程为寄存器使用的DPI/PLI后门访问提供接口
变量
UVM_HDL_MAX_WIDTH 设置后门访问的位向量的最大大小。
方法
uvm_hdl_check_path 检查给定的HDL路径是否存在。
uvm_hdl_deposit 将给定的HDL路径设置为指定的值。
uvm_hdl_force 强制给定路径上的值。
uvm_hdl_force_time 强制给定路径上的值为指定数量的force_time。
uvm_hdl_release_and_read 释放先前使用uvm_hdl_force设置的值。
uvm_hdl_release 释放先前使用uvm_hdl_force设置的值。
uvm_hdl_read() 获取给定路径处的值。

UVM_HDL_MAX_WIDTH
parameter int UVM_HDL_MAX_WIDTH =UVM_HDL_MAX_WIDTH`
设置后门访问的位向量的最大大小。该参数将由DPI-C代码使用:vpi_handle_by_name( “uvm_pkg::UVM_HDL_MAX_WIDTH”, 0);

方法

1.uvm_hdl_check_path

import "DPI-C" context function int uvm_hdl_check_path(
string path
)

检查给定的HDL路径是否存在。如果没有找到则返回0,否则返回1。

2.uvm_hdl_deposit

import "DPI-C" context function int uvm_hdl_deposit(
string path,
uvm_hdl_data_t value
)

将给定的HDL路径设置为指定的值。如果调用成功返回1,否则返回0。

3.uvm_hdl_force

import "DPI-C" context function int uvm_hdl_force(
string path,
uvm_hdl_data_t value
)

强制给定路径上的值。如果调用成功返回1,否则返回0。

4.uvm_hdl_force_time

task uvm_hdl_force_time(
string path,
uvm_hdl_data_t value,
time force_time = 0
)

强制给定路径上的值为指定数量的force_time。如果force_time为0,则调用uvm_hdl_deposit。如果调用成功返回1,否则返回0。

5.uvm_hdl_release_and_read

import "DPI-C" context function int uvm_hdl_release_and_read(
string path,
inout uvm_hdl_data_t value
)

释放先前使用uvm_hdl_force设置的值。如果调用成功返回1,否则返回0。值在释放后被设置为HDL值。对于’ reg ‘,该值将仍然是强制值,直到它被过程地重新分配。对于’ wire ',该值将立即更改为它的连续驱动程序的解析值(如果有的话)。如果没有,它的值将保持强制值,直到下一次直接赋值。

6.uvm_hdl_release

import "DPI-C" context function int uvm_hdl_release(
string path
)

释放先前使用uvm_hdl_force设置的值。如果调用成功返回1,否则返回0。

7.uvm_hdl_read()

import "DPI-C" context function int uvm_hdl_read(
string path,
output uvm_hdl_data_t value
)

获取给定路径处的值。如果调用成功返回1,否则返回0。

  • 7
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值