Skip to content

UVM · Topic

UVM Transactions — Sequence Items, Copy & Compare

Modelling a protocol transfer as a sequence item — fields, constraints, do_copy, do_compare, do_print and the field macros.

A transaction is the unit every other part of the testbench agrees on, which makes its correctness structural rather than local. If `do_compare` short-circuits, a scoreboard silently stops comparing the remaining fields. If `do_copy` is shallow, two transactions share a handle and a later mutation rewrites history. Both bugs present as a scoreboard that passes, which is why transaction methods deserve more scrutiny than their size suggests.

Lessons in this topic(7)

Start hereTransaction ObjectsUVM Transaction Objects
  1. 2Sequence Items
  2. 3Transaction Lifecycle
  3. 4Field Macros — `uvm_field_*
  4. 5do_copy, do_compare, do_print, do_pack
  5. 6Object Cloning
  6. 7Transaction Recording