Virtual Sequence

In UVM testbenches with multiple agents, where should we define the execution flow - parallel or sequential - for protocol sequences? Should this logic be in the virtual sequence itself, or should the test control how sequences are executed?

To promote re-use, it is recommended to create virtual sequences which co-ordinate the behavior of agent sequences, as a virtual sequence can be reused if you encapsulate the environment within a larger environment (block-to-top reuse).

A test is not reusable in block-to-top reuse as the test will contain configuration information along with other test-specific information that won’t apply to the new environment.

1 Like