avl.Sequence
Sequences provide the mechanism to develop re-usable sequences of transactions that can be used to drive the DUT.
In general the structure of sequences has been preserved from UVM without the unnecessary complexity and hierarchy.
Sequences are stated and follow the same path as UVM. Users can implement callbacks at the Sequence.pre_start and Sequence.post_start stage as well as the Sequence.pre_body and Sequence.post_body stage.
By default all pre and post stages are empty.
As with UVM the Sequence.body method should be overridden to implement the sequence.
Note
Sequences can start other sequences just like any other avl.Object.
Within the sequence items are stated and finished, just as in UVM. Sequence.pre_do and Sequence.post_do callbacks are implemented in the same way as UVM.
Starting an item:
Finishing an item: