Hardware Emulation Refinement Rule Validation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing hardware emulation methods face challenges in validating refinement rules, particularly when applied to unnamed entities, as changes in code configurations can render these rules invalid without clear identification, leading to incorrect exclusion of entities from testing.
Innovation Solution
A method using a processor to calculate and compare characteristic values across a hierarchy of elements, employing hash functions to determine changes and adapt refinement rules, ensuring valid application by comparing current and previous values to identify and address changes that invalidate rules.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If refinement rules are applied to unnamed entities in hardware emulation, then test coverage can be improved by excluding certain entities from testing, but the validity of these rules cannot be verified leading to potential incorrect exclusions
Solution Approach 1:
The patent creates a copy of the hierarchical structure and characteristic values at a previous point in time. By storing snapshots of the hierarchy and comparing current states against stored snapshots, the system can verify refinement rule validity without reprocessing entire test suites, thus maintaining reliability while preserving productivity gains.
Solution Approach 2:
The patent performs preliminary actions by calculating and storing characteristic values for all hierarchical elements before refinement rules are applied. This preliminary calculation creates a baseline state that can be used to verify rule validity, ensuring that exclusions are made only for entities that should be excluded, thereby maintaining reliability.
2Adaptability or versatility
If code configurations are changed to adapt to hardware modifications, then the hardware emulation can be updated, but existing refinement rules may become invalid without clear identification
Solution Approach 1:
The patent implements a feedback mechanism that automatically compares current hierarchical characteristic values against stored previous values. When changes are detected, the system provides feedback about which refinement rules may be affected, allowing users to identify and update invalid rules while preserving valid ones, thus preventing loss of validity information.
Solution Approach 2:
The patent introduces characteristic values as an intermediary between code configurations and refinement rules. These intermediate values serve as a bridge that captures the state of hierarchical elements, allowing the system to detect changes and determine rule validity without directly analyzing the complex relationship between code changes and rule applicability.
3Reliability
If manual verification of refinement rules is performed after code changes, then rule validity can be checked, but this process is time-consuming and error-prone
Solution Approach 1:
The patent enables the system to perform self-service verification by automatically comparing current hierarchical states against stored previous states. The system independently identifies changes and determines which refinement rules are affected, eliminating the need for manual verification while maintaining high reliability in rule validity assessment.
Solution Approach 2:
The patent replaces the mechanical manual verification process with an automated computational system. By using processors to calculate characteristic values and compare states, the system substitutes human verification with machine-based automatic validation, dramatically reducing verification time while maintaining or improving accuracy.
Data Source
AI summary
A method for automatically verifying validity of application of a refinement rule includes calculating a set of values that characterize a hierarchy of elements of the emulation. A currently calculated value for a first element at a first level of the hierarchy is compared with a previously calculated value that characterized the first element at a previous time. If the currently calculated value is the same as the previously calculated value, application of the refinement rule is determined to be valid for unnamed entities of the first element. If the currently calculated value is different from the previously calculated value, each currently calculated value that characterizes a lower level element at a lower level of the hierarchy is compared with a corresponding previously calculated value to identify a change and it is determined whether the change invalidates application of the refinement rule to an unnamed entity of the emulation.


