Scalable Generative AI Testbench Generation for Formal Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Verification of digital circuits is a time-consuming and expensive process that requires expert knowledge, and existing methods like formal verification are cumbersome and inefficient.
Innovation Solution
A scalable generative AI-based tool infrastructure that generates formal verification testbenches, including property modules, bind modules, design configuration parameters, and test input files, leveraging a large language model (LLM) to automate and streamline the verification process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If formal verification methods are used to verify digital circuits, then verification accuracy is improved, but verification time and complexity increase significantly
Solution Approach 1:
The verification process is divided into multiple independent components including property modules, bind modules, design configuration parameters, and test input files. Each component can be generated and verified separately, allowing parallel processing and reducing overall verification time while maintaining comprehensive coverage through systematic segmentation of the verification task
Solution Approach 2:
The system performs preliminary actions by automatically generating all necessary verification components (property modules, bind modules, configuration parameters, test inputs) before the actual verification execution. This pre-generation phase uses AI models to create ready-to-use verification artifacts, eliminating manual preparation time and enabling immediate verification runtime
2Reliability
If expert knowledge is applied to build verification systems, then verification quality is improved, but development cost and complexity increase
Solution Approach 1:
The verification system performs self-service through AI-driven automatic generation of verification components. The system uses large language models to autonomously create property modules, bind modules, configuration parameters, and test input files without requiring expert manual intervention. This self-service capability maintains high verification quality through AI expertise while eliminating the complexity burden from end users
Solution Approach 2:
An AI-based intermediary layer is introduced between the user and the complex verification system. This intermediary automatically translates high-level user requirements into detailed verification components, shielding users from system complexity while ensuring professional-quality verification through the AI's expert knowledge and systematic processing
3Manufacturing precision
If manual verification testbench generation is performed, then code quality control is improved, but productivity decreases
Solution Approach 1:
The manual mechanical process of writing verification code is replaced with an AI-based generative system. Large language models automatically generate property modules, bind modules, configuration parameters, and test input files, transforming the manual coding process into an automated intelligent generation process that maintains code quality through AI training and validation while dramatically increasing development speed
Solution Approach 2:
The system changes the fundamental parameter of code generation from manual character-by-character writing to automated template-based generation with parameter customization. By using predefined templates for verification components and allowing users to specify only key parameters, the system ensures consistent code quality through template validation while achieving rapid generation through automated parameter instantiation
Data Source
AI summary
Embodiments of the present disclosure include a formal verification method comprising a plurality of custom generative AI-based tools configured in a bottoms up methodology to generate formal verification code using an LLM. In another embodiment, the present disclosure includes a generative AI-based tool architecture comprising an index of code examples. A query from a user is used to retrieve code examples, and the query and code examples are sent to an LLM to generate code corresponding to the query.


