IC Timing Optimization via Pre-stored Gate Configurations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current timing optimization processes for integrated circuit designs are iterative, time-consuming, and resource-intensive, requiring numerous iterations to achieve optimal gate delay and rise/fall times, especially as the scale of integrated circuits increases.

Innovation Solution

A method utilizing a delay characterization database to pre-store near-optimum gate configurations and delay values, allowing for incremental static timing analysis to optimize gate configurations with reduced iterations by using pre-characterized delay, rise, and fall time data, thereby minimizing the need for new net-list generation and resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If iterative timing optimization processes are used to achieve optimal gate delay and rise/fall times, then timing performance is improved, but the time and computational resources required increase significantly

Engineering Contradiction:
Improvetiming optimization precisionVSAvoidoptimization time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent pre-calculates and stores timing parameters (delay, rise time, fall time) for various gate configurations in a lookup table before the actual timing optimization process. This preliminary action allows the iterative optimization to start from pre-computed values rather than requiring full recalculation in each iteration, significantly reducing the time spent per iteration while maintaining optimization precision.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a lookup table that copies pre-characterized timing data for different gate configurations (with and without buffering, different sizing). Instead of recalculating timing parameters from scratch in each iteration, the system copies and retrieves relevant pre-stored values, reducing computational overhead while preserving the ability to achieve optimal timing performance.

Inventive Principle:
Principle #26Copying

2Reliability

If multiple iterations of buffering and sizing transforms are performed to converge to optimal delay values, then timing closure is achieved, but computational resources and iteration count increase

Engineering Contradiction:
Improvetiming closureVSAvoidoptimization throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary characterization of gate timing parameters for various configurations and stores them in a lookup table. This pre-computation enables the iterative optimization process to retrieve pre-analyzed data instead of performing full timing analysis in each iteration, reducing the number of iterations needed to achieve timing closure while maintaining reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a lookup table as an intermediary data structure that stores pre-computed timing parameters. This intermediary allows the optimization algorithm to efficiently query and compare timing values without directly performing complex timing analysis calculations in each iteration, thereby reducing computational resource consumption while achieving the same timing closure results.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Manufacturing precision

If gate configurations are modeled with buffering and multiple levels of inverters to achieve optimum rise and fall times, then timing performance is improved, but the complexity of analysis and net-list generation increases

Engineering Contradiction:
Improverise and fall time optimizationVSAvoidgate configuration complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent pre-characterizes various gate configurations including different buffering arrangements and inverter levels, storing their timing parameters in advance. This allows the optimization process to evaluate complex configurations by retrieving pre-computed data rather than analyzing them from scratch, managing the complexity of buffered gate models while achieving precise rise and fall time optimization.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent stores pre-analyzed timing data for complex gate configurations (with buffering, multiple inverters) in a lookup table. When optimizing, the system copies and retrieves these pre-characterized values rather than performing new complex analyses, reducing the computational burden of handling sophisticated gate models while maintaining optimization accuracy.

Inventive Principle:
Principle #26Copying

4Measurement precision

If incremental static timing analysis is performed for each gate configuration change, then accurate delay values are obtained, but the number of net-list extractions and STA runs increases

Engineering Contradiction:
Improvedelay value accuracyVSAvoidnet-list extraction time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent pre-calculates and stores timing parameters for various gate configurations in a lookup table before the incremental STA process. This allows the incremental analysis to use pre-computed baseline values, reducing the need for repeated net-list extractions and full STA runs while maintaining accurate delay value measurement through the incremental updates.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8863058B2Characterization based buffering and sizing for system performance optimization
Publication Date: 2014.10.14 SYNOPSYS INC
  • US8863058B2 patent drawing
  • US8863058B2 patent drawing
  • US8863058B2 patent drawing

AI summary

A method for timing optimization of an integrated circuit design using a timing optimization system comprising loading an original delay value and an original gate configuration net-list for an original gate from a results database. A near optimum gate configuration is identified using near optimum gate configuration information stored in a delay characterization database for the original gate. A near optimum delay value and a near optimum gate configuration net-list of a near optimum gate configuration are loaded. A timing optimized gate configuration is provided from running an incremental static timing analysis of the near optimum gate configuration.