Jump to content
Sign in to follow this  
mrforever

problem about debug_all and debug_pp of vcs

Recommended Posts

Hi, all

 

Does anybody know the differences between debug_all and debug_pp. When i use -debug_all option, vcs runs my test successfully, it will failed if i change -debug_all to -debug_pp.

 

This is the error message and corresponding code:

 

Error-[NOA] Null object access
/EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_pool.svh, 307
  The object is being used before it was constructed/allocated.
  Please make sure that the object is newed before using it.
 
  #0 in \uvm_object_string_pool#(uvm_event)::get  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_pool.svh:307
  #1 in \uvm_transaction::new  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_transaction.svh:494
  #2 in \uvm_sequence_item::new  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/seq/uvm_sequence_item.svh:53
  #3 in \my_tr::new  at ../sv/common/my_tr.sv:495
  #4 in \uvm_object_registry#(my_tr,"my_tr")::create_object
  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_registry.svh:197
  #5 in \uvm_factory::create_object_by_type  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_factory.svh:1104
  #6 in \uvm_object_registry#(my_tr,"my_tr")::create  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_registry.svh:248
  #7 in \my_monitor::run_phase  at
  ../sv/master/my_monitor.sv:91
  #8 in \uvm_run_phase::exec_task  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_common_phases.svh:245
  #9 in \uvm_task_phase::execute  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_task_phase.svh:150
  #10 in \uvm_task_phase::m_traverse  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_task_phase.svh:112
  #11 in \uvm_task_phase::m_traverse  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_task_phase.svh:92
  #12 in \uvm_task_phase::m_traverse  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_task_phase.svh:92
  #13 in \uvm_task_phase::m_traverse  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_task_phase.svh:92
  #14 in \uvm_task_phase::m_traverse  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_task_phase.svh:92
  #15 in \uvm_task_phase::m_traverse  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_task_phase.svh:92
  #16 in \uvm_task_phase::traverse  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_task_phase.svh:80
  #17 in \uvm_phase::execute_phase  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_phase.svh:1171
  #18 in \uvm_phase::m_run_phases  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_phase.svh:1847
  #19 in \uvm_root::run_test  at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_root.svh:417
  #20 in run_test at
  /EDA_Tools/synopsys/vcs_vE-2011.03/etc/uvm-1.1/uvm-1.1d/src/base/uvm_globals.svh:40
  #21 in unnamed$$_15 at ../sv/top/my_top.sv:470
  #22 in my_tb_top
 
Pieces code of my_monitor.sv:
  virtual task run_phase(uvm_phase phase);

    my_tr axi_item;
    @(negedge clkmg_vif.rst);
    forever begin
      @(this.clkmg_vif.wait_one_clk);
      axi_item = my_tr::type_id::create("axi_item");
      collect_pkt(axi_item);
      scb_port.write(axi_item);
    end 
  endtask : run_phase

By the way, class my_tr has using the field and factory mechanism. Anybody met the same problem?

 

Regards

Share this post


Link to post
Share on other sites

Hi Mr Forever,

 

  you probably need to contact Synopsys support.

 

debug_all and debug_pp are described in the VCS manuals,

 

regards

Alan

 

P.S. Of course the first thing Synopsys will probably ask is why you're using such an old version :-)

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  

×