Test Subset Selection for Circuit Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for testing circuit designs are resource-intensive and time-consuming, often requiring tens of thousands of tests, with conventional techniques taking weeks or months to rank tests effectively, and producing poor results due to their high time complexity and redundancy.
Innovation Solution
A method and apparatus that determine a subset of tests by iteratively selecting tests based on various criteria, such as coverage, cost, and time, while limiting the number of tests per object and terminating the loop when a pre-determined coverage score or time threshold is reached, to reduce the number of tests needed for thorough verification.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If tens of thousands of tests are performed to ensure thorough coverage, then test coverage quality is improved, but testing time and computational resources are excessively consumed
Solution Approach 1:
The patent extracts and identifies a small subset of critical tests from the full test suite that provide the majority of test coverage. By selecting only the most valuable tests based on coverage metrics, the system removes unnecessary tests while maintaining verification quality, thus reducing testing time from weeks/months to hours.
Solution Approach 2:
The patent changes the parameter of test selection from exhaustive (all tests) to optimized (subset based on coverage analysis). By analyzing test coverage parameters and selecting tests that maximize coverage per unit time, the system achieves the same verification quality with significantly reduced testing time and resources.
2Ease of operation
If conventional test ranking methods are used to organize tests, then test organization is achieved, but the process takes weeks or months due to high time complexity
Solution Approach 1:
The patent performs preliminary coverage analysis and test evaluation before the actual testing process. By pre-computing coverage metrics and ranking tests based on their value, the system prepares an optimized test sequence in advance, eliminating the need for time-consuming conventional ranking during execution and reducing overall testing time.
Solution Approach 2:
Instead of performing complete and exhaustive test ranking on all tests, the patent applies partial action by ranking and selecting only the most critical subset of tests. This partial ranking approach achieves sufficient test organization for effective verification while avoiding the excessive time complexity of comprehensive ranking methods.
3Reliability
If a large number of tests are executed to achieve comprehensive coverage, then verification completeness is improved, but computational resources and processing power are excessively consumed
Solution Approach 1:
The patent extracts the essential subset of tests that provide the majority of verification coverage. By identifying and executing only these critical tests rather than the full test suite, the system maintains verification completeness while dramatically reducing computational resource consumption and processing requirements.
Solution Approach 2:
The patent applies partial action by executing a carefully selected subset of tests rather than the complete test suite. This approach achieves sufficient verification completeness for practical purposes while avoiding the excessive computational resources and processing power required for exhaustive testing of all tests.
Data Source
AI summary
Methods and apparatuses are described for determining a small subset of tests that provides substantially the same coverage as the set of tests. During operation, a system (e.g., a computer system) can determine a set of tests by, for each object in a set of objects, selecting up to a pre-determined number of tests that provide test coverage for the object. Next, the system can determine a subset of tests by iteratively performing a loop, which can comprise: selecting a test in the set of tests; removing, from the set of objects, one or more objects that are covered by the selected test; and optionally removing, from the set of tests, one or more tests that do not cover any objects in the remaining set of objects. The system can terminate the loop after a termination condition is met and report the selected tests as the subset of tests.


