Skip to content

Verification

Verification ensures that a design is correct, consistent, and manufacturable. It confirms that the physical layout and electrical behavior match the intended specifications and that the circuit will function reliably in silicon. It bridges the gap between design intent and silicon reality, validating correctness at every stage of the design flow.

Verification spans multiple domains — logical, physical, timing, and statistical — and happens throughout the entire IC design process.

Types of Verification

Functional verification (pre-layout)

Checks whether the design behaves as expected from a functional perspective.

  • Simulate RTL using testbenches.
  • Validate logical operations and state transitions.
  • Identify design bugs early in the flow.
  • May include assertion-based or formal verification to complement simulation.

Typical tools: Icarus Verilog, Verilator, GHDL.

Structural verification (post-synthesis)

Ensures that synthesis did not change the circuit’s logic.

  • Gate-level simulation with real timing data.
  • Equivalence checking between RTL and synthesized netlists.
  • Verifies inserted cells (buffers, tie cells, etc.) behave correctly.
  • Detects missing or mis-optimized logic.

Outputs: gate-level reports, functional equivalence logs.

Physical verification (post-layout)

Confirms that the physical layout adheres to fabrication and connectivity rules.

  • DRC (Design Rule Check): verifies geometry and spacing rules.
  • LVS (Layout vs. Schematic): ensures layout connectivity matches schematic/netlist.
  • ERC (Electrical Rule Check): checks for unconnected pins, shorts, or voltage violations.
  • PEX (Parasitic Extraction): extracts RC elements for post-layout timing or analog simulation.

Outputs: clean DRC/LVS reports and GDS ready for tape-out.

Timing verification (digital)

Guarantees that all timing constraints are satisfied across the chip.

  • STA (Static Timing Analysis): computes signal arrival times and verifies setup/hold margins.
  • Detects critical paths, clock-skew issues, and violations after routing.
  • Uses extracted parasitic data (SPEF/SDF) for accurate post-layout timing closure.

Outputs: timing reports, slack summaries, sign-off timing views.

Corner & Monte Carlo (analog)

Validates circuit performance under process, voltage, and temperature variations.

  • Corner analysis: simulates design at fast/slow device corners and temperature extremes.
  • Monte Carlo analysis: adds random device variations to estimate yield and performance spread.
  • Ensures biasing, gain, and stability remain within spec.

Outputs: performance distributions and yield estimations.

Digital vs. Analog focus

AspectDigital DesignAnalog Design
Primary GoalsFunctional and timing correctnessAccuracy, stability, yield
Verification FlowAutomated STA, DRC/LVS pipelinesManual or semi-automated DRC/LVS + SPICE validation
Key ToolsOpenROAD, OpenRCX, NetgenMagic, KLayout, Ngspice
Common ReportsTiming, area, power, DRC/LVS summaryGain/phase margin, corners, noise analysis

Outputs

  • Clean DRC/LVS/ERC/PEX reports confirming physical correctness.
  • Timing sign-off reports verifying clock and data path performance.
  • Simulation logs and coverage data validating functional behavior.
  • Corner and Monte Carlo results quantifying yield and variation.

Key Verification Domains

Verification occurs continuously across the design flow:

  • Front-end domain: RTL simulation, logic equivalence, and functional correctness.
  • Back-end domain: DRC, LVS, parasitic extraction, and timing sign-off.
  • Statistical domain: process variation and yield estimation.
  • Cross-domain checks: consistency between schematic, layout, and extracted simulation data.

See Also

- {doc}`../digital_flows/openroad/flow_steps`  
- {doc}`../digital_flows/librelane/flow_steps`  
- {doc}`../analog_flows/magic_layout`  
- {doc}`../analog_flows/klayout_drc_lvs`

Further Reading