Skip to guide

Design verification / A field guide

From design intent
to checked behavior.

Send traffic. Break an assumption. See what the checker catches.

01 / Try it yourself

Can you catch a stale response?

RESET / TRANSACTION IDENTITYLIVE FIXTURE · EPOCH 11
STIMULUSRequest AOne ID. Two lifetimes.
A /
DESIGN UNDER TESTEpoch 11Response path ready
A /
SCOREBOARDWaitingNo current expectation
COMPARE CHECKERS

Teaching fixture: epoch-tagged responses; reset cancels outstanding work.

Send a request to begin.

Inspect the evidence Event log & example contract
  1. No traffic yet. Epoch 11 is ready.

This fixture holds one current request and one old response. It carries trustworthy epoch provenance on each response. Real untagged interfaces need an agreed cancellation or drain contract; a checker cannot invent that provenance.

Reset cancels current expectations. Only a response with matching ID and epoch may retire new work. The deliberately broken ID-only mode demonstrates a false match.

Open the full reset lab ↗

The case library

Start with a failure.

Pick a mechanism. Open an experiment.

13 case studies

Mid-test resetDoes old work survive reset?
Failure to investigateState & power

Mid-Test Reset Orchestration

A driver completes a stale handshake or leaves valid asserted across reset.

Enter the lab ↗
Power gatingRelease isolation too early.
Failure to investigateState & power

Power Gating, Isolation, and Retention

An output is not clamped while its source island is off.

Enter the lab ↗
Clock gatingWhich edge accepts the transfer?
Failure to investigateState & power

Clock Gating and Wake-Up Integrity

The gated clock continues toggling after the IP satisfies its idle threshold.

Enter the lab ↗
OrderingA legal interleave or a violation?
Failure to investigateConcurrency & performance

Out-of-Order Ordering and Memory Consistency

A same-ID response returns in the wrong order.

Enter the lab ↗
QoS & fairnessCan a busy requester starve?
Failure to investigateConcurrency & performance

QoS, Fairness, and Backpressure

A low-priority request waits beyond its allowed starvation bound.

Enter the lab ↗
Negative testingReject the packet. Reuse its ID.
Failure to investigateEvents & recovery

Negative Testing and Exception Scoreboarding

An expected CRC or ECC rejection appears as a false data mismatch.

Enter the lab ↗
InterruptsThe tenth event—or the timeout?
Failure to investigateEvents & recovery

IRQ Subsystem Verification

An event is dropped and the expected IRQ never arrives.

Enter the lab ↗
Deadlock & livelockNo progress. What does that prove?
Failure to investigateEvents & recovery

Deadlock, Livelock & Credit Watchdogs

Items remain in flight while the completion counter does not change for the watchdog window.

Enter the lab ↗
Configurable testbenchesCan an override change an instance?
Failure to investigateInfrastructure

Dynamic Reconfiguration & Polymorphic Testbenches

An override is installed after creation and has no effect.

Enter the lab ↗
BroadcastCount recipients, not responses.
Failure to investigateConcurrency & performance

Broadcast Control Plane & Global TB Messaging

One or more agents miss the global event and retain stale state.

Enter the lab ↗
PerformanceWhat did the sample miss?
Failure to investigateInfrastructure

Performance Verification Framework

The design passes functionally but misses sustained bandwidth or latency targets.

Enter the lab ↗
Clock crossingsMove the clocks. Hold the data.
Failure to investigateState & power

CDC & RDC Dynamic Verification

Request changes again before acknowledgement and the destination loses or duplicates an event.

Enter the lab ↗
Firmware ↔ hardwareWhat arrives at the timeout?
Failure to investigateEvents & recovery

Firmware & Hardware-Software Interface Verification

A firmware-equivalent sequence no longer matches the current software driver or header definitions.

Enter the lab ↗
Map the verification path
FOLLOW THE EVIDENCE

One request. Two lifetimes. Six responsibilities.

Define the contract

Contract

EPOCH 11Aaccepted
RESET
EPOCH 12Anew request
↳ A / 11Late response
Old work cannot retire a new request.

Reset defines the lifetime boundary.

01 / Requirement

Start with a falsifiable claim.

A request accepted before reset must either complete in its epoch or be explicitly cancelled by the reset contract. First state what the design promises, and under which conditions.

Define risk and evidence
1 / 6
Requirement: Old work cannot retire a new request.

Five foundations

Choose what to learn next.

FOUNDATION / 01Verification planning
The working method
  1. 01Product risk
  2. 02Observable contract
  3. 03Proof obligation
Explore this foundation

Turn requirements and architectural risks into features, scenarios, assertions, coverage goals, and ownership.

Tools you will use
  • Feature matrix
  • Risk ranking
  • Traceability
FOUNDATION / 02Testbench architecture
The working method
  1. 01Drive the interface
  2. 02Observe the DUT
  3. 03Predict & compare
Explore this foundation

Separate stimulus, protocol driving, observation, prediction, and checking so components can be reused and debugged independently.

Tools you will use
  • UVM agents
  • Monitors
  • Scoreboards and reference models
FOUNDATION / 03Stimulus and constraints
The working method
  1. 01Legal input space
  2. 02Boundary conditions
  3. 03Reproducible stimulus
Explore this foundation

Generate legal, meaningful traffic that reaches boundaries without hiding intent inside opaque randomization.

Tools you will use
  • Constrained random
  • Sequences
  • Scenario control
FOUNDATION / 04Assertions and formal verification
The working method
  1. 01State a property
  2. 02Check each transition
  3. 03Inspect a counterexample
Explore this foundation

State temporal contracts directly and use proofs where simulation would struggle to cover every relevant trace.

Tools you will use
  • SVA
  • Assumptions and properties
  • Bounded and unbounded proofs
FOUNDATION / 05Coverage and regression closure
The working method
  1. 01Measure the gap
  2. 02Explain its cause
  3. 03Close with evidence
Explore this foundation

Measure what was exercised, understand what was checked, triage failures, and close meaningful gaps rather than chasing percentages.

Tools you will use
  • Functional coverage
  • Code coverage
  • Regression triage
About this learning path

Learn ASIC design verification with verification planning, SystemVerilog, UVM, assertions, formal methods, functional coverage, and regression debug.

Plan verification around risk, build reusable checking infrastructure, and know what coverage closure actually means.

Design verification builds evidence that an implementation matches its specification across normal operation, corner cases, and failure conditions. The strongest environments connect every stimulus, checker, assertion, and coverage point to a specific risk.

The engineering practice

Every check needs a reason to exist.

Start with a product risk. Build the experiment that could prove you wrong.

Start with risk and evidence
Graphite and cyan illustration of a verification workspace, waveform display, and engineering notebook.

Explain your decisions

Put the reasoning into practice.

Practice DV interview questions ↗
What you can practice

Prepare for UVM, scoreboards, coverage, assertions, and formal reasoning.

Build evidence, not just test traffic.

Verification from intent to closure

Build evidence, not just test traffic.

Strong design verification ties stimulus, scoreboards, assertions, and coverage to explicit product risk. Reusable UVM infrastructure matters because it makes failures easier to reproduce, localize, and explain.

Review planning, constrained-random stimulus, reference models, formal properties, regression triage, and coverage closure as parts of one evidence system rather than isolated techniques.