Unified Coverage Model for Formal and Dynamic Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing formal verification coverage metrics overestimate the coverage of property sets in circuit designs, leading to inadequate test coverage and increased time-to-market and reduced profit margins due to misaligned and incompatible data sets between formal and dynamic verification methods.

Innovation Solution

A computer-implemented method and system that generates aligned coverage models for dynamic and formal verification, consolidating stimuli, cone of influence, and proof coverage statuses using a user-programmable consolidation function to produce a combined formal coverage data set, providing accurate coverage metrics through a graphical user interface.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If existing formal verification coverage metrics are used, then the verification process can be completed, but the coverage metrics overestimate the actual coverage leading to inadequate test coverage

Engineering Contradiction:
Improvecoverage metric accuracyVSAvoidtest coverage adequacy
Core Design Contradiction:
Measurement precisionVSReliability

Solution Approach 1:

The patent introduces an intermediary mapping process that aligns formal verification cover items with dynamic verification cover items through a common coverage model. This intermediary layer translates and reconciles the incompatible data structures between formal and dynamic verification engines, enabling accurate combined coverage assessment without overestimation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent transforms the coverage data representation by changing parameters from multi-dimensional formal coverage status (three status types) to a unified single-status format compatible with dynamic verification. This parameter transformation enables accurate merging of coverage data while maintaining measurement precision.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If manual analysis of formal coverage data is performed to map cover items, then coverage accuracy can be improved, but the verification time and complexity increase significantly

Engineering Contradiction:
Improvecoverage mapping accuracyVSAvoidverification time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent implements self-service automation where the system automatically performs the cover item mapping and consolidation process that previously required manual intervention. The automated engine retrieves coverage data, maps cover items using predefined relationships, and consolidates results without requiring manual analysis, thereby maintaining accuracy while eliminating time loss.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the manual mechanical process of cover item mapping with an automated computational system. The system uses algorithmic processes to retrieve, map, and consolidate coverage data, substituting human manual analysis with automated software engines that achieve the same mapping accuracy much faster.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Reliability

If multiple verification engines are used to improve coverage, then test coverage can be enhanced, but the data sets become incompatible and require manual consolidation

Engineering Contradiction:
Improvetest coverage completenessVSAvoiddata set compatibility
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates a universal coverage model that serves multiple verification engines simultaneously. The system retrieves coverage data from both formal and dynamic verification engines and consolidates them into a unified format, enabling multi-functionality where a single coverage assessment mechanism handles data from diverse sources with different formats and structures.

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

Solution Approach 2:

The patent applies local quality by treating different verification engine data sets with specialized handling appropriate to their characteristics. The system retrieves and processes formal verification coverage data and dynamic verification coverage data with engine-specific parameters and methods, then consolidates them with appropriate local transformations for each data source.

Inventive Principle:
Principle #3Local quality

4Device complexity

If a single verification engine is used to simplify the process, then data set compatibility is maintained, but work is duplicated and coverage efficiency decreases

Engineering Contradiction:
Improveverification process simplicityVSAvoidverification efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent merges the capabilities of multiple verification engines while maintaining process simplicity through automated consolidation. The system combines coverage data from formal and dynamic verification engines into a unified coverage assessment, achieving the benefits of multiple engines without the complexity of manual integration, thereby improving verification efficiency.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10515169B1System, method, and computer program product for computing formal coverage data compatible with dynamic verification
Publication Date: 2019.12.24 CADENCE DESIGN SYST INC
  • US10515169B1 patent drawing
  • US10515169B1 patent drawing
  • US10515169B1 patent drawing

AI summary

The present disclosure is directed towards electronic circuit design and verification. Embodiments may include receiving, using a processor, source code corresponding to at least a portion of an electronic design and generating at least one coverage model for each of a dynamic verification and a formal verification. The method may further include determining a formal data set including stimuli coverage status, cone of influence coverage status, and proof coverage status and consolidating the formal data set using a user-programmable consolidation function to generate a combined formal coverage data set.