UVM Practice & Interview Preparation
Build UVM verification skills with sequence items, drivers, monitors, scoreboards, config_db, factory overrides and objection handling.
What interviewers usually look for
UVM interview problems test transaction flow, ownership, phasing, TLM connections, checking strategy, and whether components remain reusable and debuggable.
How to practise this topic
- Trace one item from sequence creation through driver activity, monitor observation, and scoreboard checking.
- Inject a mismatch or protocol error to confirm the environment can fail for the correct reason.
- Check that handshakes and analysis connections cannot silently drop transactions.
Practice problems
Build a UVM Driver
Implement the core run phase of a UVM driver for a simple transaction.Reference Model Scoreboard
Create a scoreboard that compares observed DUT output against a reference model.UVM Sequence Item
Define and register a simple randomized UVM transaction.UVM Sequence Body
Generate a stream of randomized sequence items.UVM Monitor Analysis Port
Publish observed transactions from a passive UVM monitor.UVM Agent Build and Connect
Assemble a reusable active UVM agent.UVM Config DB Virtual Interface
Retrieve a virtual interface from uvm_config_db.UVM Test Objections
Control UVM test lifetime with phase objections.AXI-Lite Verification Interface
Define the signal-level contract shared by the AXI-Lite DUT and UVM components.AXI-Lite Sequence Item
Represent reads and writes as reusable randomized transactions.AXI-Lite UVM Driver
Translate sequence items into protocol-correct AXI-Lite pin activity.AXI-Lite UVM Monitor
Observe completed bus activity without driving the DUT.AXI-Lite Reference Scoreboard
Check reads against a compact reference register model updated by observed writes.AXI-Lite Functional Coverage
Measure whether verification exercised operation types, address regions, byte strobes and responses.RISC-V Instruction Transaction
Represent an architectural instruction and its expected retirement information as a reusable verification transaction.Constrained RV32I Instruction Sequence
Generate legal randomized RV32I arithmetic instructions for processor regression.AXI Crossbar Sequence Item
Represent one AXI-Lite write request including source master and target address.Constrained Crossbar Traffic Sequence
Generate mapped and unmapped AXI-Lite write traffic from both masters.AXI Crossbar Monitor
Observe accepted AXI-Lite write transactions and publish them for checking.Crossbar Contention Sequence
Create sustained contention so both masters repeatedly target the same slave.
Implement the core run phase of a UVM driver for a simple transaction.Reference Model Scoreboard
Create a scoreboard that compares observed DUT output against a reference model.UVM Sequence Item
Define and register a simple randomized UVM transaction.UVM Sequence Body
Generate a stream of randomized sequence items.UVM Monitor Analysis Port
Publish observed transactions from a passive UVM monitor.UVM Agent Build and Connect
Assemble a reusable active UVM agent.UVM Config DB Virtual Interface
Retrieve a virtual interface from uvm_config_db.UVM Test Objections
Control UVM test lifetime with phase objections.AXI-Lite Verification Interface
Define the signal-level contract shared by the AXI-Lite DUT and UVM components.AXI-Lite Sequence Item
Represent reads and writes as reusable randomized transactions.AXI-Lite UVM Driver
Translate sequence items into protocol-correct AXI-Lite pin activity.AXI-Lite UVM Monitor
Observe completed bus activity without driving the DUT.AXI-Lite Reference Scoreboard
Check reads against a compact reference register model updated by observed writes.AXI-Lite Functional Coverage
Measure whether verification exercised operation types, address regions, byte strobes and responses.RISC-V Instruction Transaction
Represent an architectural instruction and its expected retirement information as a reusable verification transaction.Constrained RV32I Instruction Sequence
Generate legal randomized RV32I arithmetic instructions for processor regression.AXI Crossbar Sequence Item
Represent one AXI-Lite write request including source master and target address.Constrained Crossbar Traffic Sequence
Generate mapped and unmapped AXI-Lite write traffic from both masters.AXI Crossbar Monitor
Observe accepted AXI-Lite write transactions and publish them for checking.Crossbar Contention Sequence
Create sustained contention so both masters repeatedly target the same slave.
How to use this topic
Start with easier problems, implement or reason through the task without looking at a solution, then revisit medium and hard problems. Use the HDLForge roadmap to combine this topic with adjacent skills.
Follow the HDLForge roadmap or browse the complete problem set.
Related implementation guides
- UVM Scoreboard Guide — Build a practical UVM scoreboard with monitor transactions, reference-model prediction, analysis connections, mismatch reporting and coverage-aware verification.
- AXI-Lite Verification Guide — Learn how to verify AXI-Lite RTL with independent channel handshakes, assertions, scoreboards, backpressure tests and executable HDLForge practice.