Class uvm_event_base
Name |
Type |
Description |
---|---|---|
type_name |
string |
Constructors
Functions
- virtual function void do_print ( uvm_printer printer ) [source]
- virtual function void do_copy ( uvm_object rhs ) [source]
Tasks
- virtual function wait_on ( bit delta ) [source]
Waits for the event to be activated for the first time.
If the event has already been triggered, this task returns immediately. If delta is set, the caller will be forced to wait a single delta #0 before returning. This prevents the caller from returning before previously waiting processes have had a chance to resume.
Once an event has been triggered, it will be remain "on" until the event is reset.
- virtual function wait_off ( bit delta ) [source]
If the event has already triggered and is "on", this task waits for the event to be turned "off" via a call to reset.
If the event has not already been triggered, this task returns immediately. If delta is set, the caller will be forced to wait a single delta #0 before returning. This prevents the caller from returning before previously waiting processes have had a chance to resume.
- virtual function wait_trigger ( ) [source]
Waits for the event to be triggered.
If one process calls wait_trigger in the same delta as another process calls <uvm_event#(T)::trigger>, a race condition occurs. If the call to wait occurs before the trigger, this method will return in this delta. If the wait occurs after the trigger, this method will not return until the next trigger, which may never occur and thus cause deadlock.
- virtual function wait_ptrigger ( ) [source]
Waits for a persistent trigger of the event. Unlike wait_trigger, this views the trigger as persistent within a given time-slice and thus avoids certain race conditions. If this method is called after the trigger but within the same time-slice, the caller returns immediately.
The uvm_event_base class is an abstract wrapper class around the SystemVerilog event construct. It provides some additional services such as setting callbacks and maintaining the number of waiters.