Hi all. Today will see one of the interesting topic of UVM which is report catcher.
when we want to change the uvm info mesages into uvm error or in simple terms when we want to change the severity, verbosity, message, id this feature of UVM can be used. Application can be found during error injection in which we may mask error messages to Info's and message can be altered.
Now we will see how it can be done. first we need to extend the base class known as uvm_report_catcher and catch method shall be overriden. It must return CATCH or THROW.
methods defined in report catcher class are given below:
get_severity(): this will return the severity. like UVM ERROR, UVM FATAL.
when we want to change the uvm info mesages into uvm error or in simple terms when we want to change the severity, verbosity, message, id this feature of UVM can be used. Application can be found during error injection in which we may mask error messages to Info's and message can be altered.
Now we will see how it can be done. first we need to extend the base class known as uvm_report_catcher and catch method shall be overriden. It must return CATCH or THROW.
methods defined in report catcher class are given below:
get_severity(): this will return the severity. like UVM ERROR, UVM FATAL.
set_severity(severity): this will set or change the severity of message.
set_id/ get_id(): set id is used to change the id of message and get id will return the id of messages.
get_message/ set_message(): get_message will return the string and set message will change the message which we provide.
below example shows how to use catcher. Always function catch shall return THROW. if you want to suppress that message just return CAUGHT for that particular message.

Along with it, catcher shall be created in base test and added to report call back as shown below example.
With this UVM feature we can alter any reports from UVM. I will come up with interesting post again soon..
below example shows how to use catcher. Always function catch shall return THROW. if you want to suppress that message just return CAUGHT for that particular message.
Along with it, catcher shall be created in base test and added to report call back as shown below example.
With this UVM feature we can alter any reports from UVM. I will come up with interesting post again soon..
No comments:
Post a Comment