|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
刚接触UVM,在看代码时遇到一些疑惑:
function void my_driver::build_phase(uvm_phase phase);
super.build_phase(phase);
if(!uvm_config_db#(virtual my_if)::get(this, "", "my_if", vif))
`uvm_fatal("my_driver", "Error in Getting interface");
ap = new("ap", this);
endfunction
问题如下:
1、在上面代码中if(!uvm_config_db#(virtual my_if)::get(this, "", "my_if", vif))的作用是什么?是不是判断在当下components中是否存在my_if么?
2、class reference中说uvm_config_db#()::get(cntxt,inst_name,field_name,value)
功能是从cntxt下寻找inst_name路径下名叫fild_name的变量并得到他的值,那参数中的最后一个value是什么作用呢?
3、在上例中,get的返回值应该是my_if的值,那这个值又是什么呢?
谢谢各位前辈 |
|