This is the line in the reg model which is being displayed:
`uvm_info(“RegModel”, $sformatf(“Poked register "%s": 'h%h”,
get_full_name(), value),UVM_HIGH);
Is there any way to prevent the display of this message, even when uvm_high is the severity set from the command line.
Other messages with uvm_high should be displayed, only this backdoor peek should not come in my log.
You have several options.
A. You can use the CLI plusargs to elevate the verbosity of this message to UVM_FULL which will be filtered out if your global verbosity if UVM_HIGH
B. You can use the uvm_report_catcher callback class.
class my_rpt_catcher extends uvm_report_catcher;
`uvm_object_utils (my_rpt_catcher)
function new (string name="my_rpt_catcher");
super.new(name);
endfunction
function action_e catch();
if(get_severity() == UVM_INFO && get_id()=="RegModel" && get_verbosity() == UVM_HIGH) begin
//You can also use get_message() to str compare only for "Peek..."
return CAUGHT;
end
return THROW;
endfunction
endclass
...
function void test::build_phase(uvm_phase phase);
my_catcher = my_rpt_catcher::type_id::create("my_catcher");
uvm_report_cb::add(m_env, my_catcher);
...
endfunction