Dynamic Slack Threshold Adjustment for VLSI Netlist Timing Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing VLSI chip design methods face inefficiencies in eliminating negative timing slack due to constant slack thresholds and targets, leading to wasted time and effort, as they apply uniform transformations to all circuit paths without assessing their potential for improvement, and fail to dynamically adjust optimization strategies based on actual design constraints.

Innovation Solution

A method that dynamically adjusts slack targets and thresholds during the placement and synthesis phases, using contrived timing environments to identify and report unfixable issues, and applies transformations only where they can effectively improve timing, thereby optimizing the design by focusing on achievable goals and reducing unnecessary iterations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If uniform transformations are applied to all circuit paths with constant slack thresholds and targets, then comprehensive coverage of timing issues is achieved, but design time and computational resources are wasted on unfixable paths

Engineering Contradiction:
Improvetiming constraint satisfactionVSAvoiddesign process time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary timing analysis using a timer to calculate slack values for all circuit paths before applying transformations. This preliminary assessment identifies which paths have negative slack and are candidates for optimization, allowing the system to focus subsequent transformation efforts only on fixable paths rather than uniformly processing all paths.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent dynamically adjusts slack thresholds and targets during the transformation process based on actual design constraints and observed improvements. Rather than using constant thresholds, the system adapts the optimization criteria to reflect the actual state of the design, eliminating waste on paths that cannot be improved while maintaining focus on paths that can benefit from transformations.

Inventive Principle:
Principle #15Dynamics

Solution Approach 3:

The patent applies different transformation strategies and slack thresholds to different circuit paths based on their specific characteristics and slack values. Each path receives customized optimization treatment rather than uniform processing, with transformations applied only where they can effectively improve timing without wasting resources on unfixable paths.

Inventive Principle:
Principle #3Local quality

2Reliability

If transformations are applied without assessing their potential for improvement, then all possible optimization opportunities are explored, but computational resources are wasted on ineffective transformations

Engineering Contradiction:
Improvetiming closure achievementVSAvoidoptimization efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary timing analysis using a timer to calculate slack values for all circuit paths before applying transformations. This preliminary assessment identifies which paths have negative slack and are candidates for optimization, allowing the system to focus subsequent transformation efforts only on fixable paths rather than uniformly processing all paths.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent incorporates feedback mechanisms where the timer continuously monitors timing performance and slack values during the transformation process. This feedback information is used to dynamically adjust transformation strategies, slack thresholds, and targets, ensuring that computational resources are directed toward transformations with actual improvement potential rather than being wasted on ineffective operations.

Inventive Principle:
Principle #23Feedback

3Ease of operation

If constant slack thresholds and targets are used throughout the design process, then simplicity in optimization control is maintained, but adaptability to actual design constraints is lost

Engineering Contradiction:
Improveoptimization control simplicityVSAvoidresponse to design constraints
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent dynamically adjusts slack thresholds and targets during the transformation process based on actual design constraints and observed improvements. Rather than using constant thresholds, the system adapts the optimization criteria to reflect the actual state of the design, eliminating waste on paths that cannot be improved while maintaining focus on paths that can benefit from transformations.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the slack threshold and target parameters during the optimization process based on the actual state of the design and the effectiveness of applied transformations. This parameter adaptation allows the system to respond to actual design constraints while maintaining a systematic approach to optimization, balancing simplicity with adaptability.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7810062B2Method for eliminating negative slack in a netlist via transformation and slack categorization
Publication Date: 2010.10.05 SIEMENS INDUSTRY SOFTWARE INC
  • US7810062B2 patent drawing
  • US7810062B2 patent drawing
  • US7810062B2 patent drawing

AI summary

A method for eliminating negative slack in a netlist representing a chip design uses a contrived timing environment to overlay information onto the design environment during logic and physical synthesis phase. The overlaid timing information determines which netlist transformation provides a maximum leverage for the negative slack elimination and a way for creating a dynamic transformation recipe tuned for each design. The method further provides upper bounds on the negative slack elimination to prevent the netlist transforms from being applied to situations exceeding the capabilities for improving the design.