Advanced modular cell placement system with minimizing maximal cut driven affinity system
First Claim
1. A method for providing a propensity value for relocating elements located in regions on a surface, wherein the regions are formed by dividing lines and wherein some of said elements may be associated in groups, comprising the steps of:
- (a) calculating a line capacity representing the capacity of the regions bordering a dividing line;
(b) calculate an average capacity for all lines dividing regions on said surface;
(c) determining a relative cut by dividing said line capacity by said average capacity;
(d) calculating a midcut, representing the number of times each group of elements intersects individual dividing lines;
(e) calculating penalties representing relative costs of a halfperimeter relocation of elements within each region based on the midcut, relative cut, and capacities for each region; and
(f) computing the propensity for element movement based on changes in number of cuts resulting from a proposed movement.
10 Assignments
0 Petitions
Accused Products
Abstract
A system for computing an affinity for relocating a cell from a location on a surface of a semiconductor chip is disclosed herein. Each cell may be associated with a net connecting a plurality of cells. The system first partitions the surface into a number of regions and computes capacities of lines dividing the regions and number of nets crossing the lines. The system then calculates penalties based on the number of net crossings and the capacities of lines and determines the total affinity based on relative improvements for lines crossed by the nets.
78 Citations
23 Claims
-
1. A method for providing a propensity value for relocating elements located in regions on a surface, wherein the regions are formed by dividing lines and wherein some of said elements may be associated in groups, comprising the steps of:
-
(a) calculating a line capacity representing the capacity of the regions bordering a dividing line; (b) calculate an average capacity for all lines dividing regions on said surface; (c) determining a relative cut by dividing said line capacity by said average capacity; (d) calculating a midcut, representing the number of times each group of elements intersects individual dividing lines; (e) calculating penalties representing relative costs of a halfperimeter relocation of elements within each region based on the midcut, relative cut, and capacities for each region; and (f) computing the propensity for element movement based on changes in number of cuts resulting from a proposed movement. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for computing an affinity for relocating a cell from a location on a surface of a semiconductor chip, wherein said cell may be associated with a net connecting a plurality of cells, comprising the steps of:
-
(a) partitioning the surface into a number of regions; (b) computing capacities of lines dividing said regions and number of nets crossing said lines; (c) calculating penalties based on the number of net crossings and the capacities of lines; and (d) determining the affinity based on changes in said penalties as the cells are moved. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method for computing an affinity for relocating a cell from a location on a surface of a semiconductor chip, wherein said cell may be associated with a net connecting a plurality of cells, comprising the steps of:
-
(a) partitioning the surface into a number of regions; (b) computing capacities of lines dividing said regions and number of nets crossing said lines; (c) calculating penalties based on the number of net crossings and the capacities of lines; and (d) determining the affinity based on changes in said penalties resulting from proposed cell movement. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
-
23. A system for determining a propensity for relocating of elements on a surface divided into a plurality of regions, wherein said elements nay be associated in groups, said system comprising:
-
(a) means for calculating a line capacity representing the capacity of all subregions bordering each line dividing the regions; means for calculate an average capacity for all lines dividing regions on said surface; (c) means for determining a relative cut by dividing said line capacity by said average capacity; (d) means for calculating a midcut, representing the number of times each group of elements intersects individual dividing lines; (e) means for calculating penalties representing relative costs of a halfperimeter relocation of elements within each region based on the midcut, relative cut, and capacities for each region; and (f) means for computing the propensity for element movement based on changes in number of cuts resulting from a proposed movement.
-
Specification