IC Placement Routing Incremental Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing placement and routing tools for integrated circuits face challenges in achieving accurate optimization due to changes in the placement and routing environment after the first violation cell is optimized, leading to inaccurate optimization of subsequent cells and potential timing issues.

Innovation Solution

A method for whole-process placement and routing incremental optimization that identifies independent target violation cells based on logical and spatial connections, optimizes these cells in parallel, updates the placement and routing environment, and repeats the process until all constraints are satisfied.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If batch mode optimization is used to optimize all violation cells based on the same default placement and routing environment, then the optimization process is simple and uniform, but the timing after optimization has large jumps and convergence is slow or difficult

Engineering Contradiction:
Improveoptimization process simplicityVSAvoidtiming convergence
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent segments the violation cells into different groups based on their spatial locations and routing relationships. Instead of treating all violation cells uniformly, the method divides them into multiple batches, where each batch contains cells that can be optimized independently without affecting each other's routing environment. This segmentation allows the optimization to proceed in a controlled manner that maintains timing stability while improving convergence.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a dynamic optimization approach where the placement and routing environment is updated incrementally after each violation cell is optimized, rather than maintaining a static default environment throughout. The method dynamically adjusts the routing environment to reflect the actual changes made during optimization, ensuring that subsequent violations are evaluated in the context of the updated environment. This dynamic adaptation prevents timing jumps and improves convergence reliability.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If each subsequent violation cell is optimized in a changed placement and routing environment, then the optimization reflects real environment changes, but the actual violation state becomes uncertain and timing jumps occur

Engineering Contradiction:
Improveenvironmental adaptabilityVSAvoidviolation state accuracy
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The patent performs preliminary actions by pre-calculating and storing the routing environment state before each optimization batch. Before optimizing a group of violation cells, the method captures the current routing environment as a reference state. This preliminary action allows the system to evaluate whether subsequent violations are genuine or artifacts of environmental changes, thereby maintaining measurement precision while still adapting to real environment changes.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism where the timing analysis results and violation states are continuously monitored and fed back into the optimization process. After each optimization step, the method re-evaluates the placement and routing environment to determine if new violations have occurred or if existing violations have been resolved. This feedback loop ensures that the optimization adapts to real environment changes while maintaining accurate knowledge of the violation state, preventing timing jumps through iterative refinement.

Inventive Principle:
Principle #23Feedback

3Productivity

If multiple violation cells are optimized simultaneously, then the optimization efficiency is improved, but the placement and routing environment changes make subsequent optimizations inaccurate

Engineering Contradiction:
Improveoptimization efficiencyVSAvoidoptimization accuracy
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

The patent segments violation cells into multiple independent batches based on spatial and routing relationship analysis. Cells that are spatially close or share routing resources are grouped together and optimized in the same batch, while cells that are far apart or have independent routing paths are placed in separate batches. This segmentation enables parallel optimization of independent cells (maintaining productivity) while ensuring that cells affecting the same routing environment are optimized sequentially (maintaining accuracy).

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial optimization by focusing on optimizing only the necessary number of violation cells in each batch, rather than attempting to optimize all violation cells simultaneously. The method determines the optimal batch size based on the complexity of the routing environment and the number of violations, performing partial optimization iterations until convergence. This approach balances productivity (by optimizing multiple cells) with accuracy (by limiting batch size to maintain environment stability).

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20250053723A1Method and apparatus for whole-process placement and routing incremental optimization, and computer device
Publication Date: 2025.02.13 ZHENGXINYUAN TECH (HANGZHOU) CO LTD
  • US20250053723A1 patent drawing
  • US20250053723A1 patent drawing
  • US20250053723A1 patent drawing

AI summary

The present disclosure provides a method and apparatus for whole-process placement and routing incremental optimization, and a computer device. The method includes: acquiring, based on a comprehensive timing analysis result after placement and routing, all violation cells that do not satisfy core constraints; determining, among all the violation cells, one or a plurality of independent target violation cells to be optimized; adjusting a position or area of each of the target violation cells and synchronously adjusting routing of a neighboring cell connected to the target violation cell to satisfy the core constraints; updating a placement and routing environment after optimization of the one or more independent target violation cells and outputting an updated comprehensive timing analysis result; judging, based on the updated comprehensive timing analysis result, whether violation cells are present; and if violation cells are present, reacquiring, in the new placement and routing environment, all violation cells that do not satisfy the core constraints, determining target violation cells to be optimized, and repeatedly performing the above optimization steps.