Skip to content
STIMSMITH

Hybrid Verification Methodology

Concept WIKI v1 · 5/25/2026

Hybrid Verification Methodology is a RISC-V processor verification approach that combines constrained-random stimulus for broad exploration with directed tests for precise closure of known coverage gaps. In the provided evidence, the methodology is described as using STING for portable constrained-random and directed stimulus, directed suites such as ImperasTS for targeted feature and compliance coverage, and coverage/debug infrastructure to accelerate coverage closure across RTL simulation, emulation, prototyping, and silicon.

Definition

Hybrid Verification Methodology is a verification strategy that combines constrained-random testing and directed testing. For RISC-V processor verification, the evidence describes this approach as using constrained-random stimulus for breadth and directed suites for precision, because random testing can explore broad state spaces but may leave gaps, while directed tests provide structure but may miss unexpected interactions. [C1]

Rationale

RISC-V verification is challenging because the ISA is modular and includes many optional extensions, increasing verification complexity. The evidence states that comprehensive coverage typically requires more than one verification or comparison methodology and more than one stimulus technique. [C2]

Random stimulus is useful for uncovering unanticipated behaviors, but it may not fully exercise features such as privilege-mode transitions, page table walks, or memory protection. Directed suites can systematically validate such features, but they cannot anticipate every subtle corner case. The hybrid methodology addresses these complementary weaknesses by using random stimulus to discover unexpected behavior and directed suites to guarantee specification-oriented coverage and compliance. [C3]

Methodology flow

A typical hybrid flow begins with constrained-random sweeps using STING, followed by functional coverage analysis. Coverage gaps are then highlighted and closed using targeted directed tests. The evidence describes an iterative loop in which results are merged in Verdi and failing cases are replayed deterministically in VCS, combining broad random exploration with targeted closure. [C4]

Constrained-random phase

STING is described as a bare-metal, software-driven RISC-V generator that produces C++-based random streams and ASM-style directed tests. It uses a lightweight kernel, libraries, device drivers, and stimulus graphs to give users control over scheduling of generated random and directed tests. The generated programs are portable across simulation, emulation, FPGA prototypes, and silicon, and are architecturally self-checking. [C5]

In practice, STING has exposed issues such as deadlocks in page-table walks, mishandling of the fence.i instruction, floating-point NaN quirks, and cache-coherence conflicts. These examples support its role in the broad-exploration portion of the hybrid methodology. [C6]

Directed-test phase

Directed stimulus is used to address gaps found by coverage analysis. The evidence identifies ImperasTS directed suites such as TS-ISA for architectural validation, TS-VECT for vector extensions, and TS-MMU/PMP/ePMP for virtual memory and protection features. These suites are described as efficiently targeting areas where random stimulus often leaves gaps. [C7]

The evidence gives an example in which coverage analysis revealed weak points in Sv39 and Sv48 page-table walks; adding TS-MMU tests exposed a subtle ordering issue in TLB flush logic. [C8]

Coverage closure and debug

The hybrid approach is explicitly associated with faster coverage closure: random stimulus with STING uncovers unexpected behaviors, while directed suites provide precise tests that accelerate convergence. [C9]

Debug efficiency is improved by combining architecturally self-checking tests with lock-step comparison in ImperasDV, allowing mismatches to be identified immediately and simplifying root-cause analysis. The evidence also states that failing cases can be replayed deterministically in VCS, supporting reproducibility across regression cycles. [C10]

Portability and shift-left use

The methodology supports reuse of tests across simulation, ZeBu emulation, HAPS FPGA prototyping, and silicon. The evidence states that this portability enables a shift-left methodology because tests developed during RTL bring-up remain valuable in later validation stages and even in silicon. Coverage analysis can also begin before RTL using ImperasSC, allowing coverage growth before RTL maturity. [C11]

Benefits

According to the evidence, a hybrid approach provides several benefits for RISC-V verification teams:

  • Faster coverage closure through STING random stimulus and precise directed tests.
  • Improved debug efficiency through self-checking tests and lock-step comparison.
  • Scalability and reproducibility across simple embedded cores and complex multi-hart systems, with logged seeds and directed reruns.
  • Portability and shift-left enablement across simulation, emulation, FPGA prototyping, and silicon.
  • Future-ready compliance for RISC-V profiles and privilege-related specifications, including MMU, PMP, hypervisor, and vector extensions. [C12]

Position in a verification environment

The evidence frames test generation as part of a broader RISC-V verification toolbox that includes simulation, reference models, debug tools, and hardware-assisted platforms. In that environment, constrained-random and directed tests are most effective when integrated with coverage, debug, and comparison infrastructure. [C13]

CITATIONS

13 sources
13 citations
[1] Hybrid Verification Methodology combines constrained-random stimulus for breadth with directed suites for precision. source
[2] RISC-V verification complexity is increased by the ISA's modular design and optional extensions, requiring multiple methodologies and stimulus techniques for comprehensive coverage. source
[3] Random testing may leave gaps in areas such as privilege-mode transitions, page table walks, and memory protection, while directed suites systematically validate such features but may miss subtle corner cases. source
[4] A typical hybrid flow begins with constrained-random sweeps using STING, then uses coverage analysis, targeted closure, merged results in Verdi, and deterministic replay in VCS. source
[5] STING is a bare-metal RISC-V generator that produces C++-based random streams and ASM-style directed tests, uses stimulus graphs, and generates portable self-checking programs. source
[6] STING has exposed issues including page-table-walk deadlocks, fence.i mishandling, floating-point NaN quirks, and cache-coherence conflicts. source
[7] ImperasTS directed suites include TS-ISA, TS-VECT, and TS-MMU/PMP/ePMP, and target areas where random stimulus often leaves gaps. source
[8] Adding TS-MMU tests after coverage analysis of Sv39 and Sv48 page-table walks exposed a subtle ordering issue in TLB flush logic. source
[9] The hybrid approach accelerates coverage closure by combining STING random stimulus with precise directed tests. source
[10] Self-checking tests, lock-step comparison, deterministic replay, logged seeds, and directed reruns improve debug efficiency and reproducibility. source
[11] Tests are portable across simulation, ZeBu emulation, HAPS FPGA prototyping, and silicon, enabling shift-left verification and reuse from RTL bring-up through later validation stages. source
[12] The hybrid approach provides benefits including faster coverage closure, improved debug efficiency, scalability and reproducibility, portability and shift-left enablement, and future-ready compliance. source
[13] Constrained-random and directed tests are most effective when integrated with simulation, reference models, debug tools, and hardware-assisted platforms. source