In my top-level env, there are multiple blocks developed by different engineers. Some of them used UVM_NONE verbosity.
I tried to override the verbosity based on ID and increase it to UVM_HIGH. But, it didnt work. I am still seeing those messages.
I understand that only macro checks the verbosity and sends it to handler. Handler doesnt check the verbosity again and prints it.
But,is there a way ,I can override the verbosity and not see the messages.
class verb_none_catcher extends uvm_report_catcher;
function new(string name="verb_none_catcher");
super.new(name);
endfunction
function action_e catch();
if( (get_verbosity() == UVM_NONE)) begin
set_verbosity(UVM_HIGH);
return THROW;//CAUGHT here works. But,when I run with UVM_HIGH, these will not be displayed
end
if((get_fname() == "data_driver.sv") & (get_id() == "cellQ"))
set_verbosity(UVM_HIGH);
if((get_id() == "backdoor_write")|(get_id() == "backdoor_read"))
set_verbosity(UVM_HIGH);
if(get_id() == "map_imp")
set_verbosity(UVM_HIGH);
return THROW;
endfunction
endclass