FSM State Coverage via SAT Solver Constrained Random Simulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Constrained random simulation methods face challenges in ensuring comprehensive coverage of finite state machine (FSM) states, often missing scarce states and leading to incomplete design verification due to procedural and enumerative testbench approaches.
Innovation Solution
The method employs a generalized next-state-directed constrained random simulation by unrolling a finite state machine, where each step except the final is constrained by a first Boolean random circuit defining generalized cycles, and the final step by a second Boolean random circuit, using a SAT solver to obtain and generalize initial states and check property satisfaction, thereby increasing the probability of hitting scarce states.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If procedural and enumerative testbench approaches are used for constrained random simulation, then the simulation process is simple to implement, but the coverage of FSM states is incomplete and scarce states are missed
Solution Approach 1:
The patent introduces a SAT solver as an intermediary component between the testbench and the DUT. The SAT solver receives constraints from the testbench and generates random stimuli that satisfy these constraints, thereby achieving comprehensive FSM state coverage without requiring complex procedural enumeration. This intermediary resolves the contradiction by providing automated constraint-based randomization that improves reliability while managing complexity through modular architecture.
Solution Approach 2:
The patent changes the parameter space by using Boolean random circuits to generate diverse random seeds and control stimulus generation. Instead of fixed procedural sequences, the system varies parameters such as random seed values, constraint configurations, and stimulus patterns to systematically explore the FSM state space. This parameter-based approach ensures complete state coverage including scarce states while maintaining simulation simplicity through automated parameter management.
2Reliability
If random seed values are used for reproduction of failures, then the same failure can be reproduced consistently, but different seed values may lead to different results reducing verification coverage
Solution Approach 1:
The patent implements dynamic seed selection where the random seed is not fixed but adaptively chosen based on constraint satisfaction requirements. The SAT solver dynamically adjusts seed values during simulation to explore different FSM states while maintaining the ability to reproduce specific failures when needed. This dynamic approach resolves the contradiction by allowing both consistent failure reproduction (when a specific seed is identified) and broad verification coverage (through systematic exploration with multiple seeds).
Solution Approach 2:
The system incorporates feedback mechanisms where simulation results feed back into the SAT solver to refine constraint formulations and seed selections. When a failure is detected, the feedback loop enables targeted reproduction by identifying the specific seed and constraint configuration that led to the failure. Simultaneously, the feedback drives exploration of unvisited states by adjusting parameters for subsequent simulation runs, thereby achieving both reproduction consistency and comprehensive coverage.
3Reliability
If comprehensive FSM state coverage is achieved through systematic exploration, then all states including scarce states are visited, but the simulation time and computational resources increase significantly
Solution Approach 1:
The patent performs preliminary analysis of the FSM structure to identify state coverage requirements and critical paths before actual simulation begins. The SAT solver is pre-configured with constraints that target hard-to-reach states based on static analysis of the state transition graph. This preliminary preparation enables the simulation to efficiently visit all necessary states including scarce ones without requiring exhaustive exploration of every possible state transition, thereby reducing simulation time while maintaining complete coverage.
Solution Approach 2:
The system implements partial unrolling of the FSM where only the necessary number of time steps are simulated to achieve coverage of all reachable states. Instead of simulating excessive iterations that would waste computational resources, the SAT solver determines the minimal simulation depth required based on the FSM structure and constraint analysis. This partial action approach achieves complete state coverage with optimal simulation time by avoiding redundant explorations beyond what is necessary.
Data Source
AI summary
A system and method for generalized next-state-directed constrained random simulation may include obtaining an initial state for a finite state machine (FSM) constrained by a first Boolean random circuit; and unrolling the FSM, wherein each step of steps of the unrolling, except for a final step, is constrained by the first Boolean random circuit that defines a set of generalized cycles, and wherein the final step is constrained by a second Boolean random circuit.


