Hierarchical Verification for Data Transformation Hardware
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Formal verification tools face difficulties in verifying hardware designs for data transformation components, particularly those involving complex sequences of data transformations, due to the unmanageable number of simulation test signals and the inability to solve certain mathematical problems within a reasonable time.
Innovation Solution
A hierarchical verification method is employed, where the hardware design for a main data transformation component is represented as a set of leaf and parent data transformation components. Leaf components are verified individually, and parent components are verified using abstracted designs that replace child components with symbolic representations, allowing formal verification tools to select input and output transactions dynamically.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If formal verification is used to verify hardware design for complex data transformation components, then verification completeness is improved, but verification time and computational resources become unmanageable
Solution Approach 1:
The patent divides the complex data transformation component into multiple hierarchical levels of sub-components. Each sub-component is verified separately at its own level, breaking down the overwhelming verification task into manageable segments. This hierarchical segmentation allows formal verification to be applied to smaller, more tractable units rather than attempting to verify the entire complex system at once.
Solution Approach 2:
The patent introduces an intermediary verification layer that sits between the detailed hardware design and the formal verification process. This intermediary layer abstracts the complex data transformations into intermediate representations that are more amenable to formal verification, acting as a mediator that translates the complex system into a form that verification tools can handle efficiently.
2Reliability
If the number of simulation test signals is increased to cover all transformation cases, then verification coverage is improved, but test signal management becomes unmanageable
Solution Approach 1:
The patent segments the verification coverage requirement into hierarchical levels, where each level handles a specific subset of transformation cases. Instead of managing a single large set of test signals for all cases, the verification process is divided into multiple levels, each with its own manageable set of test signals focused on specific transformation scenarios.
Solution Approach 2:
The patent adds a hierarchical dimension to the verification process, organizing test signals and transformation cases across multiple levels rather than in a single flat structure. This dimensional organization allows test signals to be grouped and managed at different hierarchical levels, reducing the complexity of managing all test signals simultaneously while maintaining comprehensive coverage.
Data Source
AI summary
A hardware design for a main component is verified, the main component being representable as a hierarchical set of components comprising parent components which each comprise leaf components in the hierarchical set. For each of the parent components it is verified that an instantiation of an abstracted hardware design for the parent component generates an expected output transaction in response to each of a plurality of test input transactions. The abstracted hardware design comprises, for each leaf component of the parent component, a corresponding abstracted component that is configured to, for a specific input transaction to the leaf component, produce a specific output transaction with a causal deterministic relationship to the specific input transaction, wherein a formal verification tool is configured to select the specific input transaction and the specific output transaction pair to be each possible valid input transaction and valid output transaction pair for the leaf component.


