Canonical Cell Digests for IC Design Data Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current design data management tools struggle to effectively track and compare cell data within integrated circuit designs, leading to issues with obsolete or unauthorized cell usage, version control, and incorrect file comparisons across different design languages and formats, which can result in production failures and warranty voidance.

Innovation Solution

The development of a tool that generates canonical cell digests and design unit digests, allowing for granular analysis and comparison of design data, enabling the identification of unauthorized or obsolete cells, and ensuring that only the latest approved versions are used in chip designs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If differencing tools are used to compare design files, then file-level comparison can be performed, but they cannot effectively track cell-level changes across different design languages and formats

Engineering Contradiction:
Improvecompatibility across design languagesVSAvoidcell-level comparison accuracy
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The patent introduces an intermediary process that converts cell data from different design languages and formats into a standardized intermediate representation. This mediator layer enables accurate cell-level comparison by normalizing the data structure before analysis, resolving the contradiction between broad language compatibility and precise cell-level measurement.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the design file into individual cell units and processes each cell separately through the conversion and comparison pipeline. This segmentation enables precise cell-level tracking while maintaining the ability to handle various design languages through the standardized intermediate format.

Inventive Principle:
Principle #1Segmentation

2Measurement precision

If manual analysis of design files is performed, then detailed cell-level inspection is possible, but it is extremely time-consuming and impractical for large designs

Engineering Contradiction:
Improvecell-level analysis capabilityVSAvoidanalysis time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent replaces the manual mechanical analysis process with an automated computational system. The tool automatically parses design files, converts cell data to standardized formats, performs comparisons, and generates reports, eliminating the need for time-consuming manual inspection while maintaining cell-level precision.

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

Solution Approach 2:

The patent creates standardized copies of cell data in an intermediate representation format that preserves all necessary information for comparison. These copied representations enable rapid automated analysis without requiring access to the original complex design files, significantly reducing analysis time while maintaining precision.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If design templates are modified to improve performance, then functionality may be enhanced, but unauthorized modifications can void warranties and cause production failures

Engineering Contradiction:
Improvedesign optimization capabilityVSAvoidwarranty validity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements a feedback mechanism that automatically detects modifications to design templates by comparing cell data against the original vendor-provided templates. This feedback system alerts designers to unauthorized changes, allowing them to optimize performance while maintaining warranty validity by reviewing and approving necessary modifications.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary comparison and validation of design template modifications before they are committed to the final design. By checking for unauthorized changes in advance, the system prevents warranty voidance and production failures while still allowing legitimate performance optimizations.

Inventive Principle:
Principle #10Preliminary action

4Productivity

If file-level comparison is used, then overall design changes can be identified, but specific cell-level differences and unauthorized modifications cannot be detected

Engineering Contradiction:
Improvecomparison speedVSAvoidcell-level detection capability
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent segments the design file into individual cell units and processes each cell through the standardized conversion and comparison pipeline. This segmentation enables the system to maintain file-level processing speed while achieving cell-level detection precision, as each cell is handled independently through efficient automated operations.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP2310967B1Method and device for evaluation of similarity of circuit design data and for evualuation of changes to the data
Publication Date: 2021.02.24 OASIS TOOLING INC
  • EP2310967B1 patent drawingFigure 1
  • EP2310967B1 patent drawingFigure 2
  • EP2310967B1 patent drawingFigure 3

AI summary

The technology disclosed relates to granular analysis of design data used to prepare chip designs for manufacturing and to identification of similarities and differences among parts of design data files. In particular, it relates to parsing data and organizing into canonical forms, digesting the canonical forms, and comparing digests of design data from different sources, such as designs and libraries of design templates. Organizing the design data into canonical forms generally reduces the sensitivity of data analysis to variations in data that have no functional impact on the design. The details of the granular analysis vary among design languages used to represent aspects of a design. For various design languages, granular analysis includes partitioning design files by header / cell portions, by separate handling of comments, by functionally significant / non-significant data, by whitespace / non-whitespace, and by layer within a unit of design data. The similarities and differences of interest depend on the purpose of the granular analysis. The comparisons are useful in many ways.