Quantcast
Channel: UVM Forums RSS Feed
Viewing all articles
Browse latest Browse all 756

problem about debug_all and debug_pp of vcs

$
0
0

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


Viewing all articles
Browse latest Browse all 756

Trending Articles