Scalable Formal Coverage Analysis for Testbench Gates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Formal coverage analysis tools for testbenches require customized verification algorithms, leading to scalability limitations and increased runtime, making them inefficient for testbenches with formally proven property sets.

Innovation Solution

Applying scalable formal coverage analysis by selecting and mutating gates in the testbench, introducing mutation properties to determine coverage without requiring customized algorithms, using mutation selection logic and random value mutations to assess gate coverage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If formal coverage analysis tools are used to determine gate coverage in testbenches, then coverage evaluation capability is improved, but runtime increases and scalability is limited

Engineering Contradiction:
Improvecoverage evaluation capabilityVSAvoidruntime
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent creates a copy of the original testbench and modifies it by introducing mutations at selected gates. This copied and mutated testbench is then used for coverage evaluation instead of analyzing the original testbench directly, enabling efficient coverage determination without exhaustive formal analysis of the complete original design.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent segments the coverage evaluation process by selecting specific gates for mutation and creating separate mutation properties for each mutated gate. This segmentation allows the verification tool to focus on evaluating coverage for individual gates independently, rather than performing a single comprehensive analysis of all gates simultaneously.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If formal coverage analysis tools are used to determine gate coverage in testbenches, then coverage evaluation capability is improved, but device complexity increases due to customized verification algorithms

Engineering Contradiction:
Improvecoverage evaluation capabilityVSAvoidverification algorithm complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies universal mutation operations that can be used across different gates and testbench configurations. The same mutation framework and property evaluation approach works for any gate in the design, eliminating the need for customized verification algorithms for each specific gate or design type.

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

Solution Approach 2:

The patent changes the state of selected gates by introducing mutations (parameter change) and uses this transformation to infer coverage information. By modifying gate behavior through mutation and observing property hittability, the system determines coverage without requiring complex specialized verification algorithms.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If gate mutation and property introduction are used to determine coverage, then scalability is improved, but testbench complexity increases

Engineering Contradiction:
ImprovescalabilityVSAvoidtestbench complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs preliminary gate selection and mutation before the actual coverage evaluation process. By pre-selecting gates and introducing mutations in advance, the system prepares the testbench for efficient coverage analysis, reducing the computational burden during the actual verification phase and improving overall scalability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces mutation properties as intermediary elements between the mutated gates and the coverage evaluation process. These mutation properties serve as mediators that capture the effect of gate mutations and enable the verification tool to assess coverage without directly analyzing the complex interactions of the original testbench logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240419880A1Scalable-logic coverage evaluation of verification testbenches
Publication Date: 2024.12.19 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20240419880A1 patent drawing
  • US20240419880A1 patent drawing
  • US20240419880A1 patent drawing

AI summary

A computer-implemented method, system, and computer program product for applying scalable formal coverage analysis to a testbench. A set of properties proven unhittable in an original testbench is selected to be considered for coverage analysis. A gate (e.g., latch) of a device under test is selected and mutated, where the mutation includes utilizing a random value and where a mutation property for the set of selected properties proven unhittable is associated with the mutated gate of the device under test. It is then determined whether the mutation property is hittable or unhittable while the gate is mutated in order to determine whether the gate is covered by the selected properties. A gate is covered by the selected properties if the mutation property is hittable while the gate is mutated. Furthermore, a gate is uncovered by the selected properties if the mutation property is unhittable while the gate is mutated.