🤖 AI Summary
This study addresses the dynamic data-structure-constrained satisfiability problem (D2SCSP), a challenge in functional verification where runtime expansion of data structures causes frequent changes in variables and constraints, leading to substantial overhead from repeated solving. The work presents the first formal definition of D2SCSP and introduces a dependency-guided problem decomposition framework. By integrating incremental SAT/SMT encoding, a constraint activation mechanism, and solver state reuse, the proposed approach significantly enhances solving efficiency in dynamic constraint environments. Experimental results on industrial-scale benchmarks demonstrate an average speedup of 24.80× over baseline methods and a 1.72× improvement compared to state-of-the-art commercial simulators.
📝 Abstract
Functional verification plays a central role in ensuring the correctness of modern integrated circuit designs, where constrained-random verification is widely adopted to generate diverse stimuli under high-level constraints. In industrial verification environments, constraint solving increasingly involves dynamic data structures whose shape and content are determined at runtime, causing the sets of variables and constraint instances to evolve across solver invocations, which in turn leads to substantial overhead when nested and high-dimensional structures repeatedly expand across solves. We formalize this class of problems as the Dynamic Data Structure Constraint Satisfaction Problem (D2SCSP),which captures the interaction between dynamic data structure expansion and constraint evaluation. We propose a dependency-guided problem partitioning framework combined with an incremental encoding and constraint activation mechanism, enabling reuse of solver state and encodings across multiple solves. The framework is integrated into an industrial SystemVerilog verification flow and implemented in the commercial simulator VeriSim. Experimental results on industrial benchmarks demonstrate significant performance improvements, achieving an average speedup of 24.80x over a baseline and 1.72x over a state-of-the-art commercial simulator, highlighting the practicality of the approach for real-world verification workflows.