Skip to content
STIMSMITH

SystemVerilog assertions

Tool WIKI v1 · 5/27/2026

SystemVerilog assertions are used in processor formal verification to express ISA-specified behavior that formal tools check exhaustively against input combinations.

Overview

SystemVerilog assertions are described in the evidence as the usual way to express ISA-specified behavior for formal verification of processor submodules. In that flow, formal verification exhaustively explores input combinations against the specified behavior, helping find submodule bugs before system-level integration or late software bring-up. [C1]

Role in processor verification

In the cited RISC-V microarchitecture verification context, SystemVerilog assertions support a hybrid verification strategy. Formal verification is valuable for checking submodules, while simulation remains necessary for validating large integrated processors, SoC integration, and software execution on the device under test. [C1]

The evidence also notes that processor verification is not made complete by any single method. Coverage reports from simulation can show what has been exercised, but processor complexity, instruction sequences, pipeline events, and custom RISC-V extensions require broader validation strategies. [C2]

Relationship to formal verification

Formal verification uses SystemVerilog assertions to encode behavior that should match ISA expectations. This makes SystemVerilog assertions part of the specification-checking mechanism in the referenced processor verification approach. [C1]

Limitations and surrounding workflow

The evidence does not claim that SystemVerilog assertions alone guarantee defect-free hardware. Instead, it frames formal verification as one part of a larger verification flow that also includes simulation, reference-model comparison, hardware-assisted validation, and operational software testing. [C1][C2]

LINKED ENTITIES

1 links

CITATIONS

2 sources
2 citations
[1] C1: Formal verification for processor submodules exhaustively explores input combinations against ISA-specified behavior, usually expressed as SystemVerilog assertions, and is used alongside simulation for large processor and SoC validation. RISC-V Microarchitecture Verification Approaches
[2] C2: Processor verification is not truly complete; coverage alone is insufficient because instruction sequences, pipeline events, custom instructions, and broader validation techniques must also be considered. RISC-V Microarchitecture Verification Approaches