ASIC Verification & UVM Interview Questions

SystemVerilog and UVM interview questions with expert answers — components, phases, factory, config_db, assertions, constrained-random and more.

Master Verification

Verification engineers are in the highest demand in the chip industry. These questions cover the SystemVerilog and UVM fundamentals interviewers at top companies ask most.

Interview Questions & Answers

What is UVM and why is it used?

UVM is a standardized SystemVerilog class library for reusable, scalable verification environments. It provides agents, scoreboards, factory, and config_db, and is vendor-independent across VCS, Questa, and Xcelium.

Explain the UVM testbench components.

sequence_item (transaction), sequence (generates items), sequencer (arbitrates), driver (drives DUT), monitor (samples DUT), agent (bundles them), scoreboard (checks), env (container), and test (configures/runs).

What is the difference between a function and a task?

A function executes in zero time, cannot block, and returns a value. A task can consume time and contain delays. Use functions for computation, tasks for timed stimulus.

What is the difference between == and === ?

== is logical equality, returning X if any bit is X/Z. === is case equality, comparing X/Z literally and always returning 0 or 1 — used to check exact 4-state values.

What is functional vs code coverage?

Code coverage measures which RTL lines/branches ran (automatic). Functional coverage measures whether intended features/scenarios were tested (manual covergroups). Both are needed for confidence.

What is the UVM factory and why is it useful?

The factory creates objects by type/instance with override capability, letting you swap base components with derived ones (e.g., error injection) at runtime without editing the testbench — central to reuse.

What are the UVM phases?

build (top-down), connect (bottom-up), end_of_elaboration, start_of_simulation, run (time-consuming, with reset/configure/main/shutdown sub-phases), then extract/check/report/final.

What is a virtual sequence?

A virtual sequence has no driver; it coordinates multiple sequencers to orchestrate complex multi-interface scenarios, e.g., synchronizing traffic across agents in an SoC testbench.

What is the difference between uvm_object and uvm_component?

uvm_component is quasi-static, exists for the whole simulation, has phases and a hierarchy position (driver, monitor, env). uvm_object is transient data (transactions, sequences) created/destroyed dynamically.

What is the config_db and how is it used?

config_db is a hierarchical database to pass configuration (virtual interfaces, settings) from test/env down to components using set()/get() with string paths — decoupling configuration from construction.

What is the difference between active and passive agents?

An active agent drives stimulus (has sequencer+driver+monitor). A passive agent only monitors (monitor only) — used to observe interfaces without driving, e.g., on the DUT output side.

What are assertions (SVA) and the two types?

SystemVerilog Assertions check design properties. Immediate assertions are procedural, checked like an if-statement. Concurrent assertions are clocked, checking temporal properties over time (e.g., req must be followed by ack within 3 cycles).

What is the difference between fork-join, fork-join_any, and fork-join_none?

fork-join waits for all spawned threads; join_any waits for the first to finish; join_none does not wait and continues immediately. Used to model concurrent stimulus.

What is a scoreboard and how does it check correctness?

A scoreboard receives transactions from monitors (often via analysis ports/FIFOs), computes or stores expected results (reference model), and compares against actual DUT output to flag mismatches.

What is constrained-random verification?

Instead of writing directed tests, you define random variables with constraints (rand + constraint blocks) so the solver generates legal, diverse stimulus automatically — covering corner cases directed tests miss.

What is the difference between bit and logic types?

bit is 2-state (0,1) — faster simulation, used for testbench counters. logic is 4-state (0,1,X,Z) — models real hardware including unknowns and high-Z, used for DUT-facing signals.

Get Job-Ready

Our course includes hands-on labs, real projects, and mock interview sessions.

Master Verification

Key Facts at a Glance

TopicASIC Verification & UVM Interview Questions (2026)
PlatformCourseTron — India's #1 Electronics & Semiconductor Learning Platform
CoverageVLSI, FPGA, Embedded Systems, PCB Design, Analog IC, AI Hardware, Nano Fab, Post-Silicon, Quantum Computing
Courses135+ industry-led courses with hands-on labs
Engineers Trained300,000+ across India and worldwide
Top Hiring CompaniesIntel, NVIDIA, TSMC, Qualcomm, AMD, Apple, Samsung, Broadcom, MediaTek, ARM
YearUpdated 2026
Chat with us