Jump to content
Sign in to follow this  
ljepson74

sequence is not running - make sure sequencer name 'correct'

Recommended Posts

//This is not a question, but me storing some debug notes online, lest I run into this problem again.
 
 
//good for debugging this issue, print_topology in particular.  Put them in your test.
      `uvm_info("TEST",$psprintf(" TOPOLOGY..............................."),UVM_HIGH);
      uvm_top.print_topology();
      `uvm_info("TEST",$psprintf(" CONFIG_DB_DUMP..............................."),UVM_HIGH);
      uvm_config_db::dump();
 
 
//When a sequence doesn't run, double-check the following.
 
//in the test (or wherever) where we assign the sequence to run on a sequencer
      uvm_config_db#(uvm_object_wrapper)::set(this,
                                              "*.dpx_xyz_agent_m.dpx_xyz_seq.main_phase",
                                              "default_sequence",
                                              dpx_xyz_simple1_seq::type_id::get());
 

//compare the name of the sequencer with the name that is given to the factory for the sequencer, when it is created

 
//where we create the sequencer (in the agent), what name did we supply to it with the factory?
      m_seq = dpx_xyz_sequencer::type_id::create("dpx_xyz_seq", this);
 
//make sure they match.  This problem has bitten me a few times.

 

 

Share this post


Link to post
Share on other sites

hi,

 

there are more ways to find this issue:

 

1. when enabled (verbosity) you should see a message like this

 

UVM_INFO 

/grid/avs/install/incisiv/10.2/latest/tools/uvm-1.1/uvm_lib/uvm_sv/sv/seq/uvm_sequencer_base.svh(1468) 
@ 0 ns: uvm_test_top.m_env.m_iab_test_sequencer [NODEFSEQ] The 
"default_sequence" has not been set. Since this sequencer has a runtime 
phase schedule, the uvm_random_sequence is not being started for the run 
phase.

 

2. via config db trace you would see that the lookup for a "default_sequence" failed. you would also see the exact lookup parameters.

 

3. when you invoke uvm_component::check_config_usage() you would see some uvm_config_db settings have not been used.

 

/uwe

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  

×