Scalable Boolean Logic Optimization for Integrated Circuits

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing Boolean optimization methods for integrated circuits (ICs) are limited by high computational cost, making them less scalable and less applicable in automated IC design, especially at advanced technology nodes where transistor scaling slows down.

Innovation Solution

The implementation of scalable Boolean techniques and systems that select the appropriate optimization engine based on circuit characteristics, using truth-tables, binary decision diagrams (BDDs), or satisfiability (SAT) solvers for efficient logic optimization, along with circuit partitioning and Boolean difference-based resubstitution frameworks to reduce computational overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If Boolean methods are used for logic optimization, then optimization quality is improved, but computational cost increases

Engineering Contradiction:
Improveoptimization qualityVSAvoidcomputational cost
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The logic network is divided into smaller windows or partitions that can be processed independently using Boolean methods. This segmentation allows the expensive Boolean optimization to be applied only to manageable sub-problems rather than the entire circuit, reducing overall computational cost while maintaining optimization quality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different optimization methods are applied to different parts of the logic network based on their characteristics. Boolean methods are used locally in regions where they provide the most benefit, while simpler methods are used elsewhere, optimizing the trade-off between quality and computational cost.

Inventive Principle:
Principle #3Local quality

2Measurement precision

If Boolean methods are used for logic optimization, then optimization quality is improved, but scalability deteriorates

Engineering Contradiction:
Improveoptimization qualityVSAvoidscalability
Core Design Contradiction:
Measurement precisionVSAdaptability or versatility

Solution Approach 1:

By partitioning the logic network into smaller windows, the method enables Boolean optimization to scale to larger circuits. Each window can be processed independently using Boolean methods, and the results are combined to optimize the entire network, thus achieving both high optimization quality and scalability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The optimization process dynamically adjusts the size and number of windows based on circuit characteristics. This dynamic adaptation allows the system to automatically scale the Boolean optimization approach to handle circuits of varying sizes and complexities while maintaining effective optimization quality.

Inventive Principle:
Principle #15Dynamics

3Use of energy by moving object

If partitioning techniques are applied to enable Boolean optimization, then computational cost is reduced, but optimization quality may deteriorate

Engineering Contradiction:
Improvecomputational costVSAvoidoptimization quality
Core Design Contradiction:
Use of energy by moving objectVSMeasurement precision

Solution Approach 1:

The partitioning approach applies Boolean optimization to partial windows of the logic network rather than the entire circuit. This partial action reduces computational cost significantly, and the cumulative effect of optimizing each window contributes to overall optimization quality that approaches the result of optimizing the entire circuit.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The optimization results from multiple partitions or windows are merged to produce the final optimized logic network. By combining the benefits from each partition, the method achieves optimization quality comparable to global optimization while incurring only a fraction of the computational cost.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11010511B2Scalable boolean methods in a modern synthesis flow
Publication Date: 2021.05.18 SYNOPSYS INC
  • US11010511B2 patent drawing
  • US11010511B2 patent drawing
  • US11010511B2 patent drawing

AI summary

Techniques and systems for optimizing a logic network are described. Some embodiments automatically identify scenarios where Boolean methods are best driven by truth tables, binary decision diagrams (BDDs) or satisfiability (SAT). Some embodiments use circuit partitioning techniques that are based on hash-tables and topological sorting, and that are capable of grouping nodes with high simplification likelihood and still are able to efficiently scale to large circuits. Some embodiments feature a generalized resubstitution framework based on computing, and implementing, the Boolean difference between two nodes. Some embodiments include enhancements to (i) gradient-based and-inverter-graph (AIG) optimization, (ii) heterogeneous elimination for kerneling, and (iii) revisitation of maximum set of permissible functions (MSPF) computation with BDDs.