UVM / design verification

UVM Scoreboard Guide

A scoreboard answers the core end-to-end verification question: did the DUT produce the result the specification predicts? Good scoreboards are intentionally separate from drivers and timing details. They consume observed transactions, model expected behavior and report useful mismatches without becoming another copy of the RTL.

Implementation-first: use this guide to review the design rules, then solve the linked HDLForge problems without looking at a solution first.

Core design rules

Implementation path

Verification checklist

Useful RTL / verification pattern

function void write(txn t);
  expected = predict(t);
  // Compare later against the observed output transaction.
endfunction

Practice with executable problems

UVM · HardReference Model Scoreboard

Create a scoreboard that compares observed DUT output against a reference model.

UVM · MediumBuild a UVM Driver

Implement the core run phase of a UVM driver for a simple transaction.

SystemVerilog · MediumSystemVerilog Interface

Create an interface for a simple ready/valid transaction channel.

SVA · MediumValid Must Eventually Handshake

Write an assertion for a ready/valid interface.

Turn it into a project

ProjectUVM Verification Environment for an AXI4-Lite PeripheralProjectRISC-V Core Verification