uvm_hdl.svh和uvm_hdl.c UVM源代码实现的后门访问HDL路径的函数基本都包含在uvm_hdl文件中,我们可以在uvm中实现HDL的后门访问,具体包括的function有uvm_hdl_check_path,uvm_hdl_deposit, uvm_hdl_force,uvm_hdl_release,uvm_hdl_read, task 有uvm_hdl_force_time。 下面分别介绍下这些函数/任务的作用和使用示...
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...
1 otherwise.//import"DPI-C"contextfunctionintuvm_hdl_check_path(stringpath);//Function: uvm_hdl_deposit///Sets the given HDL ~path~ to the specified ~value~.//Returns 1 if the call succeeded, 0 otherwise.//import"DPI-C"contextfunctionintuvm_hdl...
Checks that the given HDL path exists. Returns 0 if NOT found, 1 otherwise. uvm_hdl_deposit(string path, uvm_hdl_data_t value) Sets the given HDL path to the specified value. Returns 1 if the call succeeded, 0 otherwise. uvm_hdl_data_t的定义在uvm源码中如下: dpi/uvm_hdl.svh文件中...
uvm_hdl_read( { "tb.xa.xxb.",$sfomatf(xxxc%0d,id),".xxxxd"} , value ) ; 5.uvm_hdl_release_and_read("tb.aa.bb.c", value ); value为读回的值。函数返回值1成功,否则失败。 6.uvm_hdl_check_path("tb.aa.bb.c");检查是否存在该路径,返回1存在,否则不存在 ...
import "DPI-C" context function intuvm_hdl_check_path(string path); 检查hdl路径是否存在 import "DPI-C" context function intuvm_hdl_deposit(string path, uvm_hdl_data_t value); 给hld路径信号赋值 import "DPI-C" context function intuvm_hdl_force(string path, uvm_hdl_data_t value); ...
import "DPI-C" context function int uvm_hdl_check_path(string path);// Function: uvm_hdl_deposit // // Sets the given HDL ~path~ to the specified ~value~.// Returns 1 if the call succeeded, 0 otherwise.// import "DPI-C" context function int uvm_hdl_deposit(string path, uvm_hdl...
uvm_reg中还有一些hdl_path的function,add_hdl_path_slice,添加到field的path路径。这些路径,之后在map中会被集成起来。 形成一个full_name。 uvm_reg_frontdoor,从uvm_reg_sequence继承而来,本身是一个sequence。 uvm_reg_backdoor,从uvm_object继承而来,本身就是一个object,其中定义了read、write的原型函数。
· uvm_reg_file regfile_parent=null,一个用于处理hdl_path的类,这里不指定,默认 · string hdl_path=“”,用于指定hdl_path,后门的一种,这里不指定,默认 当然,reg_block中的add_reg关联操作也会在reg的configure中被调用。至此,一个完整的reg_block创建完成,可以直接在test,env或者其他component中进行例化。
uvm_hdl——DPI在UVM中的实现(四) 2017-12-19 16:39 −我们可以在uvm中实现HDL的后门访问,具体包括的function有uvm_hdl_check_path,uvm_hdl_deposit, uvm_hdl_force,uvm_hdl_release,uvm_hdl_read, task 有uvm_hdl_force_time。 这么做与... ...