Jump to content
Sign in to follow this  
mrforever

uvm_config_db multiple instances

Recommended Posts

In the env, there is such uvm_config_db::set():

    for (int i = 0; i < host_num; i++) begin
      inst_name = $sformatf("*.v_seq.slv_seq[%0d]", i); 
      uvm_config_db#(uvm_event)::set(uvm_root::get(), inst_name, "evt", env.subenv[i].slv_agt.slv_mon.evt);
    end

 

in the slv_seq, there is such uvm_config_db::get():

if(!uvm_config_db#(uvm_event)::get(null, this.get_full_name(), "evt", evt))
    `uvm_fatal("NOEVT",{"evt must be set for: ",get_full_name(),".evt"});

 

When I use +UVM_CONFIG_DB_TRACE, I found such message:

UVM_INFO /EDA_Tools/synopsys/vcs1209/etc/uvm-1.1/uvm-1.1d/src/base/uvm_resource_db.svh(121) @ 2580000: reporter [CFGDB/GET] Configuration 'uvm_test_top.env.v_sqr.v_seq.slv_seq[k]evt' (type class uvm_pkg::uvm_event) read by  = null (failed lookup)

 

If I uvm_config_db::set() in slv_mon like this:

uvm_config_db#(uvm_event)::set(uvm_root::get(), "*", "evt",evt);

there isn't such message, I think it configures successfully. there are multiple slv_mon and slv_seq instances, when there is only one valid slv_mon and slv_seq, the evt cann't pass successfully when it triggered. So I want to config evt of slv_mon to slv_seq using the bijective way. It isn't success at the moment, can anybody tell me the graceful way?

 

Thanks in advance

mrforever

Share this post


Link to post
Share on other sites

hi,

 

the lookup name

 

.v_seq.slv_seq[k]evt

 

looks strange. it looks like that the get_full_name() inside the sequence is not really what you assume with "*.v_seq.slv_seq[%0d]"

 

/uwe

Share this post


Link to post
Share on other sites

hi,

 

the lookup name

 

.v_seq.slv_seq[k]evt

 

looks strange. it looks like that the get_full_name() inside the sequence is not really what you assume with "*.v_seq.slv_seq[%0d]"

 

/uwe

 

Hi uwe,

there should be a dot between slv_seq[k] and evt,aI am sorry that I left out it.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×