uvm_reg_sequence | |
Methods | |
atomic_lock | Establishes an exclusive atomic lock for the current process. |
atomic_unlock | Releases the lock acquired via atomic_lock. |
start | Starts the frontdoor sequence. |
virtual task atomic_lock()
Establishes an exclusive atomic lock for the current process.
Calls to start by processes other than the process that has established the atomic lock will be blocked until the atomic lock has been released.
The lock can be released via atomic_unlock.
@uvm-contrib This API is being considered for potential contribution to 1800.2
virtual function void atomic_unlock()
Releases the lock acquired via atomic_lock.
A warning shall be generated if atomic_unlock is called without a corresponding atomic_lock.
@uvm-contrib This API is being considered for potential contribution to 1800.2
virtual task start( uvm_sequencer_base sequencer, uvm_sequence_base parent_sequence = null, int this_priority = -1, bit call_pre_post = 1 )
Starts the frontdoor sequence.
If the calling process has not already acquired an atomic lock via atomic_lock, then start will call atomic_lock automatically to establish a lock.
When the calling process has established a lock, either in advance of the call to start or by start itself, then super.start() is called, and passed the corresponding arguments from frontdoor.start().
@uvm-contrib This API is being considered for potential contribution to 1800.2
Establishes an exclusive atomic lock for the current process.
virtual task atomic_lock()
Releases the lock acquired via atomic_lock.
virtual function void atomic_unlock()
Starts the frontdoor sequence.
virtual task start( uvm_sequencer_base sequencer, uvm_sequence_base parent_sequence = null, int this_priority = -1, bit call_pre_post = 1 )