Trace Core Clustering for Formal Verification Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Formal verification in electronic design debugging is hindered by the complexity of constraints and the difficulty in identifying the root cause of contradictions, leading to inefficient debugging processes, especially for inexperienced users and complex systems.

Innovation Solution

A computer-implemented method that uses unsupervised machine learning to generate trace cores for counter-examples and cover-traces, clustering similar trace cores to identify common root causes, such as missing constraints, and displaying these clusters to users for guided debugging.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If formal verification is performed on complex electronic designs with multiple constraints, then verification completeness is improved, but debugging difficulty increases

Engineering Contradiction:
Improveverification completenessVSAvoiddebugging difficulty
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the complex verification problem by dividing counter-examples into clusters based on similarity metrics. Each cluster represents a group of counter-examples with common root causes, allowing the debugging process to be broken down into manageable segments rather than analyzing each counter-example individually.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary clustering mechanism that acts as a mediator between the formal verification engine and the user. This intermediary automatically analyzes counter-examples, identifies similarities, and presents clustered results, reducing the direct complexity burden on the user while maintaining verification completeness.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If manual analysis of each counter-example is performed to identify root causes, then debugging precision is improved, but productivity decreases

Engineering Contradiction:
Improvedebugging precisionVSAvoiddebugging speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

Instead of requiring complete manual analysis of every counter-example, the patent applies partial automation by clustering counter-examples based on key features. This partial action approach maintains sufficient debugging precision by grouping similar cases while significantly improving productivity by reducing the number of individual analyses required.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent creates simplified copies or representations of counter-examples in the form of clustered groups. Each cluster serves as a representative copy that captures the essential characteristics and root causes of multiple individual counter-examples, allowing users to analyze one cluster instead of numerous individual cases while maintaining debugging precision.

Inventive Principle:
Principle #26Copying

3Productivity

If clustering is applied to group similar counter-examples, then productivity is improved, but analysis complexity increases

Engineering Contradiction:
Improvedebugging efficiencyVSAvoidanalysis complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The clustering process segments the analysis complexity by organizing counter-examples into distinct groups with clear boundaries. Each cluster represents a segmented portion of the overall problem space, making the analysis more manageable while improving productivity through reduced repetition.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The clustering mechanism serves multiple functions simultaneously: it groups counter-examples by similarity, identifies common root causes, reduces the number of individual analyses needed, and provides a structured overview of verification failures. This multi-functionality improves productivity without proportionally increasing analysis complexity.

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

Data Source

PatentUS10289798B1System, method, and computer program product for property clustering associated with formal verification of an electronic circuit design
Publication Date: 2019.05.14 CADENCE DESIGN SYST INC
  • US10289798B1 patent drawing
  • US10289798B1 patent drawing
  • US10289798B1 patent drawing

AI summary

The present disclosure relates to a method for debugging associated with formal verification of an electronic design. Embodiments may include performing, using a processor, an initial formal verification of an electronic design. Embodiments may further include identifying one or more counter-examples associated with one or more assertion properties of the electronic design or identifying one or more cover-traces associated with one or more cover properties of the electronic design. Embodiments may further include generating a trace core for each of the one or more counter-examples or cover-traces, wherein each trace core includes a minimal representation of the counter-example or cover-trace. Embodiments may further include identifying a similarity between a plurality of the trace cores and clustering the plurality of trace cores having the similarity.