Which is the Best Way to Know Whenever the UVM Register model gets updated?

Hello Folks,

a. I have a register model and also the required setup to update the register model.
b. So whenever any transaction happens over the bus the register gets updated.
c. BUT, is there any API or better method to know whenever a corresponding register gets updated in the UVM Reg Model?
or
d. Do I need to keep poling the respective register inside the register model to know if it got updated ?

Share in your comments!

Thanks

In reply to desperadorocks:
You should formulate your question a little bot more specific.
There are different ways to update a register. I guess your question is related to the registers in the design whch gets updated by the design internally and not through a bus access.
In my eys the most simple solution is to observe these registers with an assertion.

In reply to desperadorocks:

There are callbacks you can add and will get called at the relevant points in time. Look for the uvm_reg_cbs class in the documentation. You’ll want to use the post_predict(…) callback function to either take a certain action, trigger an event or something along the lines.