DV Handbook / β€”
Chapter 01 / 11
Chapter 01 Β· Foundations

πŸ—οΈComputer Architecture

How processors really work β€” pipelines, caches, coherence, and the ideas interviewers keep coming back to.

⏱️12 min read πŸ“ŠIntermediate πŸ”’563 practice questions β˜†Bookmark

Why it matters

Computer architecture questions test your fundamental understanding of how processors work β€” a must for any DV role at chip companies. Expect questions on pipelines, caches, and memory ordering in nearly every loop.

Core concepts

  • Pipelining β€” 5-stage pipeline, hazards (data, control, structural), forwarding, stalling
  • Cache memory β€” Direct-mapped, set-associative, fully-associative, replacement policies, write-back vs write-through
  • Memory hierarchy β€” SRAM, DRAM, virtual memory, TLB, page tables
  • Branch prediction β€” Static vs dynamic, BHT, BTB, 2-bit predictors
  • Out-of-order execution β€” Tomasulo's algorithm, reorder buffer, reservation stations
  • Instruction set architecture β€” RISC vs CISC, instruction formats, addressing modes
  • Multi-core & coherence β€” MESI protocol, snooping, directory-based coherence

Recommended resources

πŸŽ₯ Computer Architecture YouTube Playlist Video series Β· Highly recommended β†’
🏫 NCSU ECE 563 β€” Dr. Eric Rotenberg Best PPTs for computer architecture (reach out for access)
πŸ“š Patterson & Hennessy β€” Computer Organization & Design The textbook. Still the gold standard.
Interview focus Pipeline hazards + cache coherence come up in ~70% of mid-level DV interviews. Be able to draw a 5-stage pipeline and walk through a read/write on MESI.
Chapter 02 Β· Language

πŸ’ŽSystemVerilog

The backbone of modern verification. Every DV interview will have SV questions β€” data types, processes, interfaces, randomization, coverage, OOP.

⏱️15 min read πŸ“ŠCore β˜†Bookmark

Why it matters

SystemVerilog is the language of verification. If you can't reason about fork-join, clocking blocks, and constraint solving on the spot, you will struggle.

Core concepts

  • Data types β€” logic, reg, wire, bit, byte, int, shortint, longint, enum, struct, union, typedef
  • Arrays β€” Dynamic arrays, associative arrays, queues, packed vs unpacked
  • Processes β€” fork-join, fork-join_any, fork-join_none, wait fork, disable fork
  • Interfaces β€” Modports, clocking blocks, virtual interfaces
  • Randomization β€” rand, randc, constraint blocks, pre/post_randomize()
  • Coverage β€” Covergroups, coverpoints, cross coverage, bins
  • Classes & OOP β€” Constructors, inheritance, virtual methods, parameterized classes
  • Interprocess communication β€” Mailboxes, semaphores, events

Recommended resources

Practice tip Practice directly in your browser on EDA Playground β€” free SV/UVM compilers, no installation.
Chapter 03 Β· Methodology

πŸ”§UVM

The industry-standard verification methodology. Master the testbench architecture, phases, sequences, TLM, factory, and RAL.

⏱️18 min read πŸ“ŠAdvanced β˜†Bookmark

Why it matters

UVM is the industry-standard verification methodology. Understanding the testbench architecture is crucial β€” interviewers will ask you to draw it from scratch.

Core concepts

  • Testbench architecture β€” Environment, agent, driver, monitor, sequencer, scoreboard
  • UVM phases β€” Build, connect, run, extract, check, report
  • Sequences β€” uvm_sequence, uvm_sequence_item, body(), start()
  • TLM ports β€” Analysis ports, FIFOs, put/get ports, exports
  • Factory β€” Type overrides, instance overrides, create()
  • Configuration DB β€” uvm_config_db set/get, resource database
  • RAL model β€” Register abstraction layer, front-door/back-door access
  • Virtual sequences β€” Multi-agent coordination, virtual sequencer
  • Callbacks & objections β€” Phase objections, drain time, callbacks

Recommended resources

Practice tip Build a full UVM project on EDA Playground β€” free Aldec Riviera-Pro and Synopsys VCS compilers.
Interview focus Be able to whiteboard a complete UVM TB (env β†’ agent β†’ driver/monitor/sequencer β†’ scoreboard), name the phases in order, and explain how a sequence reaches the driver.
Chapter 04 Β· Timing

⏱️STA & CDC

Timing and clock-domain bugs are silicon killers. Interviewers love these topics β€” metastability, setup/hold, async FIFOs.

⏱️10 min read πŸ“ŠIntermediate β˜†Bookmark

Why it matters

Timing and CDC bugs rarely show up in simulation but hit you in silicon. Interviewers use these topics to separate candidates who understand digital fundamentals from those who don't.

Static Timing Analysis (STA)

  • Setup & hold time β€” Definitions, violations, fixing strategies
  • Clock skew & jitter β€” Impact on timing, positive vs negative skew
  • Slack β€” Setup slack, hold slack, worst negative slack (WNS)
  • Multi-cycle paths β€” False paths, multi-cycle path constraints
  • Clock trees β€” CTS, clock gating, clock dividers

Clock Domain Crossing (CDC)

  • Metastability β€” What causes it, MTBF calculation
  • Synchronizers β€” 2-FF synchronizer, pulse synchronizer
  • Gray code β€” Why used for CDC, FIFO pointer crossing
  • Async FIFO β€” Design, verification, depth calculation
  • Handshake CDC β€” Req-ack mechanism

Recommended resources

Common mistake Saying a 2-FF synchronizer "eliminates" metastability. It reduces probability β€” MTBF is never infinite.
Chapter 05 Β· Interfaces

πŸ”ŒProtocols

SPI, UART, IΒ²C, AHB, AXI β€” knowing these shows you can verify real-world interfaces. AXI is everywhere in SoC verification.

⏱️14 min read πŸ“ŠIntermediate β˜†Bookmark

Why it matters

Protocol knowledge shows you can verify real-world interfaces. AXI and AHB are very common in SoC verification β€” you'll almost certainly be asked to explain a VALID/READY handshake.

SPI β€” Serial Peripheral Interface

  • Master-slave architecture, MOSI/MISO/SCLK/SS signals
  • Clock polarity (CPOL) and phase (CPHA) modes
  • Full-duplex communication

UART

  • Asynchronous, start/stop bits, baud rate
  • Parity bit, frame format, flow control

IΒ²C

  • Two-wire (SDA, SCL), multi-master, addressing
  • Start/stop conditions, ACK/NACK, clock stretching

AXI β€” Advanced eXtensible Interface

  • 5 channels: AW, W, B, AR, R
  • Burst types (FIXED, INCR, WRAP), handshake (VALID/READY)
  • Outstanding transactions, out-of-order responses

AHB β€” Advanced High-performance Bus

  • Single-master pipeline, HTRANS, HSIZE, HBURST
  • HREADY, HRESP, split/retry

Recommended resources

Chapter 06 Β· Practice

🎯Constraints

Constraint-writing questions are guaranteed in DV interviews. You will be asked to write constraints on the whiteboard.

⏱️12 min read πŸ“ŠCore β˜†Bookmark

Why it matters

Constraint-writing shows up on every interview β€” from simple ranges to tricky solve before ordering. Practicing these until they are second nature pays off.

Core concepts

  • Constraint blocks β€” Inside vs outside class, constraint_mode()
  • Inline constraints β€” randomize() with { ... }
  • Distributions β€” :/ and := operators
  • Solve before β€” Ordering constraint solving
  • Unique constraints β€” Generating unique values
  • Conditional constraints β€” if-else, implication (->)
  • Array constraints β€” size, sum, foreach
  • Soft constraints β€” Overridable defaults

Practice problems

  • Write a constraint to generate a unique array of 10 elements between 1 and 100.
  • Constrain a packet to have a valid CRC.
  • Generate an address aligned to a 4-byte boundary.
  • Write a constraint where if mode == READ, data should be 0.

Recommended resources

Practice tip Drop every problem into EDA Playground and actually run it. Reading constraints β‰  writing them.
Chapter 07 Β· Practice

βœ…Assertions

SVA is critical for formal verification and catching protocol bugs. Expect whiteboard assertion questions.

⏱️10 min read πŸ“ŠCore β˜†Bookmark

Why it matters

A well-written assertion catches a bug that a scoreboard would miss. Interviewers use SVA to test whether you think temporally.

Core concepts

  • Immediate assertions β€” assert, assume, cover
  • Concurrent assertions β€” property, sequence, @(posedge clk)
  • Temporal operators β€” ##N, |-> (overlapping), |=> (non-overlapping)
  • Repetition β€” [*N], [*M:N], [->N] (goto), [=N] (non-consecutive)
  • System functions β€” $rose, $fell, $stable, $past, $countones
  • Disable iff β€” Reset handling in assertions

Practice problems

  • Write an assertion: if req goes high, ack must come within 1–5 cycles.
  • Assert that data remains stable while valid is high.
  • Write a cover property for back-to-back transactions.

Recommended resources

Practice tip Build up from sequences β†’ properties β†’ assertions. Don't try to write a 6-line SVA in one go.
Chapter 08 Β· Fundamentals

🧬OOP Concepts

SystemVerilog and UVM are built on OOP. Understanding these ideas is the difference between using UVM and understanding it.

⏱️9 min read πŸ“ŠCore β˜†Bookmark

Why it matters

SV and UVM are built on OOP. Understanding OOP is foundational β€” without it, UVM will feel like magic instead of engineering.

Core concepts

  • Encapsulation β€” public, protected, local access modifiers
  • Inheritance β€” extends, super, constructor chaining
  • Polymorphism β€” Virtual methods, dynamic dispatch, $cast
  • Abstract classes β€” Pure virtual methods
  • Parameterized classes β€” Type parameters, #(type T = int)
  • Shallow vs deep copy β€” Copy semantics, custom copy()
  • Handle vs object β€” Reference semantics in SV

Recommended resources

Practice tip Build a small class hierarchy on EDA Playground and try every override β€” it's the fastest way to internalize polymorphism.
Chapter 09 Β· Tooling

🐍Python

Scripting is increasingly important for log parsing, regressions, and automation. You don't need to be a Python engineer β€” but you do need fluency.

⏱️8 min read πŸ“ŠSupporting β˜†Bookmark

Why it matters

Python is the scripting language of modern verification flows β€” log parsing, regression management, result crunching, infrastructure glue.

Core concepts

  • Data structures β€” Lists, dictionaries, sets, tuples
  • String manipulation β€” Regex, split, join, formatting
  • File I/O β€” Reading/writing files, CSV, JSON parsing
  • List comprehensions β€” Filtering, mapping in one line
  • Functions β€” *args, **kwargs, lambda, decorators
  • OOP in Python β€” Classes, inheritance, dunder methods
  • Scripting β€” os, subprocess, argparse, sys modules
  • Regular expressions β€” re module, pattern matching for log parsing

Recommended resources

Chapter 10 Β· Fundamentals

πŸ”„FSM Design

FSMs are the building block of digital design. You'll be asked to design and verify one on the spot.

⏱️7 min read πŸ“ŠFoundational β˜†Bookmark

Why it matters

FSMs are everywhere in digital design. Expect to design a sequence detector or a traffic-light controller live.

Core concepts

  • Mealy vs Moore β€” Output depends on state+input vs state only
  • State encoding β€” Binary, one-hot, gray code β€” pros & cons
  • FSM coding styles β€” 1-block, 2-block, 3-block
  • Common FSMs β€” Traffic light controller, vending machine, sequence detector
  • FSM verification β€” Coverage of states & transitions, corner cases
  • Deadlock and livelock β€” Detection and prevention
Interview focus Practice writing a 3-block FSM (state register, next-state logic, output logic) cleanly. Interviewers read your coding style, not just correctness.
Chapter 11 Β· Reference

πŸ“˜The Ramdas Book

"Cracking Digital VLSI Verification Interview" by Ramdas M & Robin Garg β€” the gold-standard reference with 500+ questions.

⏱️5 min read πŸ“ŠReference β˜†Bookmark

Why it matters

This book covers Digital Logic, Computer Architecture, Programming, SystemVerilog, UVM, Assertions, Coverage, and Behavioral questions β€” 500+ of them with detailed solutions.

Suggested focus areas

  • Verification planning and coverage-driven methodology
  • Constrained random verification approach
  • Testbench architecture patterns
  • Advanced SV/UVM concepts
  • Debug techniques and strategies
  • Non-technical and behavioral interview questions

Where to get it

πŸ“˜ Cracking Digital VLSI Verification Interview Available on Amazon and other bookstores