MIM-Aware Pin Assignment via Aggregate Cost Function
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing electronic design automation (EDA) tools face challenges in achieving optimal and consistent pin assignment across multiple instances of the same module in circuit design, particularly due to varying orientations and constraints such as congestion, blockages, and abutting blocks, which affects the electrical connectivity and manufacturability of integrated circuits.
Innovation Solution
The implementation of a MIM-aware pin assignment technique that determines an aggregate cost function across all instances of a module to optimize pin placement, considering boundary-wire-length costs, congestion, blockages, and pin-alignment constraints, allowing for valid and optimal pin assignment across multiple instances while propagating constraints through the circuit design layout.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If traditional pin assignment is performed independently for each module instance, then individual optimization for each instance can be achieved, but consistency across multiple instances is lost
Solution Approach 1:
The patent combines multiple individual pin assignment problems into a single aggregate optimization problem by summing cost functions across all module instances. This merging approach ensures consistent pin assignment patterns across instances while still accounting for instance-specific variations in congestion and blockages, thereby resolving the contradiction between consistency and individual optimization.
Solution Approach 2:
The patent creates a universal pin assignment strategy that can be applied across multiple module instances through the aggregate cost function. This universal approach maintains consistency while adapting to different local conditions (congestion, blockages) in each instance, achieving both universality and adaptability simultaneously.
2Length of moving object
If pin assignment optimizes for minimal wire length, then electrical connectivity is improved, but congestion and blockages may be violated
Solution Approach 1:
The patent transforms the pin assignment problem into a cost minimization problem where multiple parameters (wire length, congestion, blockages) are combined into a single aggregate cost function. By changing the optimization parameter from simple wire length to a composite cost function, the system simultaneously considers multiple competing objectives and finds balanced solutions that satisfy all constraints.
Solution Approach 2:
The patent performs preliminary analysis of congestion and blockage conditions across all module instances before performing pin assignment. This preliminary action allows the aggregate cost function to pre-account for potential constraint violations, enabling the optimization process to avoid infeasible solutions from the outset rather than correcting them afterward.
3Ease of manufacture
If pin assignment considers all constraints (congestion, blockages, abutting blocks), then manufacturability is improved, but computational complexity increases
Solution Approach 1:
The patent segments the complex pin assignment problem into manageable components by defining a standardized cost function template that can be independently evaluated for each module instance. This segmentation allows the system to handle multiple instances efficiently through aggregation, reducing overall computational complexity while maintaining comprehensive constraint consideration.
Solution Approach 2:
The patent uses a standardized cost function template that can be copied and applied uniformly across all module instances. This copying approach ensures consistent treatment of constraints (congestion, blockages, abutting blocks) across instances while avoiding the need to develop separate complex optimization models for each instance, thereby reducing computational complexity.
Data Source
AI summary
Systems and techniques for multiple-instantiated-module (MIM)-aware pin assignment are described. An aggregate cost function can be determined, wherein the aggregate cost function is aggregated across all instances of an MIM for placing a pin at a particular location on the boundary of the MIM. The aggregate cost function can then be used by a pin assignment engine to place the pin in the MIM. A pin assignment engine can place one pin at a time, or place multiple pins at a time by trying to optimize the aggregate cost over multiple pins. Some embodiments can propagate pin-alignment constraints through one or more instances of one or more MIMs in the circuit design layout, and then perform pin assignment while observing the pin-alignment constraints. In some embodiments, pin assignment can be performed on MIMs in decreasing order of the number of pin-alignment constraints that are imposed on the MIMs.


