Skip to content
STIMSMITH

Stimulus Generation

Technique WIKI v2 · 9/24/2026

Stimulus generation is the production of inputs applied to a design under verification in simulation-based verification, including directed patterns, random inputs, and constrained-random stimuli governed by satisfaction problems. Evidence describes coverage-guided and constraint-satisfaction-based techniques that use feedback from simulation—such as functional coverage metrics—to drive generation, and highlights modern LLM-based approaches that optimize coverage via preference optimization.

Overview

In simulation-based hardware verification, stimulus generation refers to producing inputs that are applied to a design under test (DUT) so that the resulting behavior can be observed and checked against expectations. The cited evidence describes the prevailing approach as generating stimuli, applying those stimuli to the design, and using simulation-derived metrics to assess verification progress. In directed simulation, explicitly specified stimulus patterns written by verification engineers stimulate specific scenarios; random simulation instead generates random stimuli such as random addresses or data for bus communication. [C1][C2]

Forms of stimuli

Stimuli may take several forms depending on the design under test. The evidence identifies bit vectors applied to design input ports, programs loaded into program memory, and, more generally, random addresses, data, and other inputs needed to exercise bus communication and other interfaces. In modern LLM-based hardware verification, stimuli are represented as testbenches (e.g., Verilog testbenches) that drive the DUT. [C2][C3]

Constraint-based random simulation

The evidence describes constrained-random simulation as a paradigm in which stimuli are generated subject to a set of declarative constraints. Generators used in this paradigm include the SystemC Verification (SCV) library and constraint solvers embedded in commercial and research flows. Constraint solvers in this setting include ATPG-based solvers for smart random simulation and word-level constraint engines that combine Boolean SAT techniques with decision diagrams. Stimulus generation in this regime is closely related to constraint satisfaction problems (CSP): a generator solves a CSP whose solution is the input vector or sequence applied to the design. [C4]

Graph-based CSP for stimulus generation

When verifying complex mechanisms such as the hardware address translation path in modern microprocessors, the constraint structure is naturally directed and acyclic, since the translation process passes through a sequence of dependent steps. The cited evidence describes a framework called graph-based constraint satisfaction problems (GCSP) that combines a directed graph with a CSP, where each variable and constraint of the CSP is linked to a particular node or edge of the graph. A solution to the problem is a path in the graph such that all constraints defined along that path are satisfied. The algorithm for solving GCSPs is based on conditional CSP, and the technology was used to verify the memory management units of several industrial microprocessors. [C5]

Coverage-driven stimulus generation

The evidence describes coverage-driven stimulus generation in which the generator adapts its behavior using coverage feedback. In classical coverage-guided flows, coverage feedback from simulation of the design under verification is used to alter the generator's parameters—e.g., dynamically altering constraints of a pseudorandom generator using a recurrent neural network that receives the coverage signal. In the LLM setting, the evidence introduces Coverage-Driven Direct Preference Optimization (CD-DPO), a fine-tuning method that integrates quantitative coverage feedback directly into the optimization objective, guiding the model toward generating stimuli that maximize verification coverage. The training data, called PairaNet, pairs high- and low-quality testbenches labeled using simulation-derived coverage metrics. [C6][C7]

Constraint contradictions in random simulation

A recurring practical obstacle in constrained-random stimulus generation is that the constraint set can be over-constrained, yielding no solutions and stalling the generator. The cited evidence describes an automatic technique for analyzing such contradictions: after reformulating the overall constraint and building an abstraction, self-contradictory constraints and non-relevant constraints are identified, and then for the remaining small set, all minimal reasons for the contradiction are computed and presented to the verification engineer. Industrial experiments at the AMD Dresden Design Center demonstrated significant reductions in constraint contradiction debug time using this analysis. [C8]

Demonstrated uses and reported effects

Reported experimental results across the cited evidence indicate several outcomes:

  • Coverage closure was reached much sooner and a small set of high-coverage stimuli could be isolated for use in regression tests on processor designs from Codasip. [C9]
  • Graph-based CSP stimulus generation was used to verify the memory management units of several industrial microprocessors. [C5]
  • An LLM-based framework trained with CD-DPO outperformed open-source and commercial baselines on the CVDP CID12 benchmark, achieving up to 77.27% improvement in code coverage. [C7]
  • Automatic contradiction analysis significantly reduced debug time in a real-life SystemC-based verification environment at AMD Dresden Design Center. [C8]

Related techniques and tooling

The cited evidence explicitly connects stimulus generation to constraint satisfaction problems (CSP), including graph-based and conditional variants, and to address translation as a representative target for which sophisticated stimulus generation tools are required. Test generation tools implement stimulus generation across these flows. [C4][C5]

CITATIONS

9 sources
9 citations
[1] Directed simulation applies explicitly specified stimulus patterns, while random simulation generates random stimuli such as random addresses or data, and over-constrained constraint sets can stall random stimulus generation. Automatic Analysis of Constraint Contradictions in Constrained Random Simulation (FDL 2008)
[2] Stimuli may be represented as bit vectors applied to design input ports, programs loaded into program memory, random addresses/data for bus verification, or as testbenches (e.g., Verilog testbenches) in LLM-based flows. Automatic Analysis of Constraint Contradictions in Constrained Random Simulation (FDL 2008)
[3] LLM-based stimulus generation represents stimuli as testbenches (e.g., Verilog testbenches) that drive the design under test. TB or Not TB: Coverage-Driven Direct Preference Optimization for Verilog Stimulus Generation
[4] Stimulus generation in constrained-random simulation relies on solving constraint satisfaction problems, including ATPG-based and word-level Boolean/decision-diagram constraint solvers and the SystemC Verification (SCV) library. Automatic Analysis of Constraint Contradictions in Constrained Random Simulation (FDL 2008)
[5] A graph-based CSP (GCSP) framework was developed for stimulus generation in verifying hardware address translation; the translation process is modeled as a directed acyclic graph, each variable/constraint is linked to a node or edge, and the algorithm is based on conditional CSP. The technology was used to verify memory management units of several industrial microprocessors. Using Graph-Based CSP to Solve the Address Translation Problem (IBM Research, CP 2016)
[6] Coverage-driven stimulus generation alters the generator using coverage feedback; in a PRG-based approach, a recurrent neural network receives coverage feedback and dynamically alters the pseudorandom generator's constraints. Automatic Analysis of Constraint Contradictions in Constrained Random Simulation (FDL 2008)
[7] Coverage-Driven Direct Preference Optimization (CD-DPO) integrates quantitative coverage feedback directly into the optimization objective, using the PairaNet dataset (derived from PyraNet) of paired high- and low-quality testbenches labeled with simulation-derived coverage metrics. On the CVDP CID12 benchmark the framework achieved up to 77.27% improvement in code coverage over open-source and commercial baselines. TB or Not TB: Coverage-Driven Direct Preference Optimization for Verilog Stimulus Generation
[8] An automatic contradiction-analysis technique reformulates the overall constraint, builds an abstraction, identifies self-contradictory and non-relevant constraints, and computes all minimal reasons for contradictions among remaining constraints; industrial experiments at the AMD Dresden Design Center demonstrated significant reduction in constraint contradiction debug time. Automatic Analysis of Constraint Contradictions in Constrained Random Simulation (FDL 2008)
[9] On Codasip processors, coverage-guided stimulus generation reached coverage closure much sooner and enabled isolation of a small set of high-coverage stimuli for regression tests; the cited source states the techniques are widely applicable. Automatic Analysis of Constraint Contradictions in Constrained Random Simulation (FDL 2008)

VERSION HISTORY

v2 · 9/24/2026 · minimax/minimax-m3 (current)
v1 · 5/26/2026 · gpt-5.5