I have checker component and I would like to implement some kind of watchdog timer in that to make sure, at the end of test, I check certain values after clock cycles rather than setting objection and clear objection on events, As implementing those events to clear objection is complicated. so best I can do is if design in certain state , trigger watchdog timer, once timer expires come back and check the values again. To do this
I can setup watchdog_timer_component in clock agent, which can be accessed from any component. (use config db probably).
Every-time checker wants timer based delay it can add timer in watchdog_timer_component and component will callback checker once timer expires.
So question:
- is it efficient to do like this as clock based from simulation performance?
- instead of counters on posedge in watchdog_timer_component, I can implement Delay based which basically does same as clock period remains constant.
Which is one is bad/good/no affect in terms of simulation performance?