Hierarchical Test Case Inheritance for Chip Verification Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current UVM-based verification methods lack a method for efficiently mixing and reusing test cases, which hinders comprehensive chip verification and prolongs the chip development cycle.
Innovation Solution
A verification method and device that generate test cases with a tree structure, where each test case inherits another, allowing for the creation of mix test cases to verify functional blocks, leveraging System Verilog's inheritance feature to enhance test case reusability and verification efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional UVM-based verification methods are used, then verification can be performed, but test case reusability is low and verification efficiency is reduced
Solution Approach 1:
The patent segments the verification system into hierarchical test case components (base test cases, mixed test cases, and leaf test cases) that can be independently developed and reused. Each test case is divided into modular units that can be combined through the tree structure, allowing verification components to be reused across multiple test scenarios without rewriting entire test cases.
Solution Approach 2:
The patent implements copying by creating a tree structure where test cases are replicated and inherited across multiple levels. Base test cases are copied and reused as parent nodes, and mixed test cases are generated by copying and combining elements from parent test cases. This eliminates the need to write identical verification logic multiple times.
2Reliability
If more test cases are created to improve verification coverage, then verification comprehensiveness is improved, but test case management complexity increases
Solution Approach 1:
The patent applies nesting by organizing test cases in a hierarchical tree structure where smaller test case units are nested within larger verification scenarios. Base test cases form the innermost layer, mixed test cases nest them in combinations, and complete verification scenarios nest the mixed test cases. This nested organization allows comprehensive coverage while managing complexity through hierarchical abstraction.
Solution Approach 2:
The patent creates universal base test cases that can serve multiple functions across different verification scenarios. A single base test case can be inherited by multiple mixed test cases and used in various verification contexts, making the test case library multi-functional and reducing the total number of unique test cases needed for comprehensive coverage.
3Productivity
If test cases are highly reusable, then verification speed is improved, but adaptability to different functional blocks is reduced
Solution Approach 1:
The patent introduces dynamics by allowing the test case tree structure to be flexibly configured and adapted for different functional blocks. The hierarchy of test cases can be dynamically adjusted, with base test cases remaining reusable while mixed test cases are customized through parameterization and selective combination. This dynamic structure maintains reusability while adapting to specific verification requirements.
Solution Approach 2:
The patent applies local quality by allowing different parts of the test case hierarchy to have different levels of customization. Base test cases maintain high reusability with standardized structures, while mixed test cases and leaf test cases incorporate local adaptations for specific functional blocks. This ensures that reusable components remain generic while specific verification needs are addressed at appropriate levels of the hierarchy.
Data Source
AI summary
A verification method is disclosed. The verification method is applicable for a verification device, and the verification device is configured to verify a device under test. The device under test includes several functional blocks. The verification method includes the following operations: generating several test cases corresponding to the several functional blocks, in which the several test cases include a tree structure, in which every one of the several test cases inherits another one of the several test cases; and verifying the several functional blocks according to the several test cases and the tree structure.


