Skip to content

UVM · Topic

UVM Sequences — body(), start() and the Driver Handshake

Writing sequences, starting them on a sequencer, and the start_item/finish_item handshake that paces stimulus against the driver.

A sequence generates transactions; a driver turns them into pin activity. The handshake between them is what makes stimulus flow-controlled rather than free-running: `start_item` blocks until the driver is ready, and `finish_item` blocks until the driver has taken the item. Sequences that ignore this — by generating into a queue, or by racing ahead — produce testbenches whose behaviour depends on simulation speed, and whose bugs disappear when tracing is enabled.

Lessons in this topic(7)

Start hereSequence BasicsUVM Sequence Basics
  1. 2Sequencer Interaction
  2. 3start_item()
  3. 4finish_item()
  4. 5Sequence Control
  5. 6Random Traffic Generation
  6. 7Sequence Design Patterns