UVM中使用的层次名称

先看代码片段如下:

function new(string name,uvm_component parent=null);
	super.new(name,parent);
endfunction

function void build_phase(uvm_phase phase);
	super.build_phase(phase);
	env1 = enviroment::type_id::create("env",this);
endfunction

function void connect_phase(uvm_phase phase);
	super.connect_phase(phase);
	uvm_config_db(uvm_object_wrapper)::set(this,"env1.iagt.seqr.main_phase","default_sequence",tran_sequence::get_type());
endfunction

task main_phase(uvm_phase phase);
	uvm_callbacks#(driver,driver_callback)::add(env1.iagt.drv,drv_hw_cb);
endtask

env1在进行create时,传入的名称为“env”,如此情况下使用uvm_config_db进行路径查找是应该使用env1还是env呢?

  • 在UVM的路径查找中,应该使用的name中传入的字符串,即env;
  • 在例化层次上,如上述callback语句中,应使用其instance的名称即env1;
  • 对于该问题,一般使用上推荐instance名称与传入字符串名称保持一致。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值