Netlist Reduction for Memory Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current model checking technologies face difficulties in verifying complex hardware designs with large memories and wide datapaths, as they require time-consuming designer annotations and computationally hard abstractions, and are limited in analyzing sequential systems and properties.

Innovation Solution

A netlist reduction method that abstracts circuit designs with memories into smaller representations, using a directed acyclic graph to reduce memory slots and implement substitute nodes for verification, allowing for efficient checking of properties through a counter-example guided refinement process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional model checking is applied to verify hardware designs with large memories, then verification completeness is improved, but computational complexity and verification time increase significantly

Engineering Contradiction:
Improveverification completenessVSAvoidcomputational complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the memory verification problem by introducing word-level abstraction that groups bit-level signals into meaningful data entities. This allows the verification tool to reason about memory at a higher level (words rather than individual bits), reducing the computational complexity while maintaining verification completeness for properties expressed at the word level.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts only the necessary memory information required for verification by using abstraction to identify and focus on specific memory words that are relevant to the property being verified. This extraction approach eliminates unnecessary detail from the verification process, reducing computational complexity while preserving verification completeness for the target properties.

Inventive Principle:
Principle #2Taking out (Extraction)

2Measurement precision

If designer annotations are used to guide model checking, then verification accuracy is improved, but time consumption increases

Engineering Contradiction:
Improveverification accuracyVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent enables the verification system to automatically generate and refine abstractions without requiring manual annotations from designers. The system self-adjusts by using counter-example guided abstraction refinement, where the tool automatically identifies which memory words need to be tracked based on the verification properties, eliminating the time-consuming manual annotation process while maintaining verification accuracy.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent implements counter-example guided abstraction refinement where the verification system uses feedback from counter-examples to automatically refine the abstraction. This feedback mechanism allows the system to learn which memory words are critical for verification and automatically adjust the abstraction level, achieving verification accuracy without manual designer annotations.

Inventive Principle:
Principle #23Feedback

3Productivity

If abstractions are computed to simplify verification, then verification speed is improved, but computational difficulty increases

Engineering Contradiction:
Improveverification speedVSAvoidcomputation hardness
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies partial abstraction by tracking only the specific memory words that are necessary for verifying the given properties, rather than creating a complete abstraction of all memory contents. This partial action approach maintains verification speed by focusing computation only on relevant portions of the memory, avoiding the computational hardness of fully abstracting entire large memory structures.

Inventive Principle:
Principle #16Partial or excessive action

4Reliability

If word-level analysis is performed on designs with large memories, then verification effectiveness is improved, but tool capability requirements increase

Engineering Contradiction:
Improveverification effectivenessVSAvoidtool capability requirements
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent makes the verification tool universally applicable to different memory sizes and configurations by using a general abstraction framework that can handle any memory structure. The word-level abstraction mechanism works consistently across different designs, making the tool versatile without requiring specialized capabilities for each specific memory configuration.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS8001498B2Method and apparatus for memory abstraction and verification using same
Publication Date: 2011.08.16 SYNOPSYS INC
  • US8001498B2 patent drawing
  • US8001498B2 patent drawing
  • US8001498B2 patent drawing

AI summary

A computer implemented representation of a circuit design including memory is abstracted to a smaller netlist, which can be analyzed by standard verification tools and by other tools that operate on netlists. The correctness of such systems can require reasoning about a much smaller number of memory entries than exist in the circuit design, and by abstracting such memories to a smaller number of entries, the computational complexity of the verification problem is substantially reduced.