Method of improving a placement in layout design
First Claim
Patent Images
1. A layout placement method for a wiring grid with a plurality of cell rows, separated by wiring regions, each cell row having a plurality of cells, the method comprising the steps of:
- (a) for each cell row inputting to a logic connection information file a number and type of variable size blocks, each block containing an integral number of cells and reading from a preprogrammed library a required number of cells for each block type input for a row,(b) inputting to the logic connection information file a number of block terminals for each block,(c) counting a number of empty cells of each cell row,(d) calculating a number of required empty cells for each row from the number of blocks, the number of block terminals and the number of empty cells, by;
(i) determining an average cell row terminal density equal to the total number of terminals in the cell row divided by the total number of cells in the cell row, and(ii) determining the number of required empty cells for a block by finding the difference between the number of block terminals in the cell row divided by the average terminal density of the cell row and the number of cells in the block,(e) calculating for each row one of an excess and deficiency of the required empty cells from the difference between the number of empty cells and the number of required empty cells,(f) distributing blocks on the wiring grid to compensate for the calculated one of the excess and deficiency, and(g) locating the distributed blocks on a base structure of the wiring grid.
1 Assignment
0 Petitions
Accused Products
Abstract
A location method in a layout design improves the efficiency of wiring connections among elements. For each row of cell units, the number of cells in variable length blocks and the number of terminals in each block are identified. After counting the available empty cells, the number of empty cells required by each block is calculated based on the number of cells and terminals in the block. For ech row of cells the empty cells are distributed to the blocks. The blocks are then located accordingly on the base structure.
-
Citations
11 Claims
-
1. A layout placement method for a wiring grid with a plurality of cell rows, separated by wiring regions, each cell row having a plurality of cells, the method comprising the steps of:
-
(a) for each cell row inputting to a logic connection information file a number and type of variable size blocks, each block containing an integral number of cells and reading from a preprogrammed library a required number of cells for each block type input for a row, (b) inputting to the logic connection information file a number of block terminals for each block, (c) counting a number of empty cells of each cell row, (d) calculating a number of required empty cells for each row from the number of blocks, the number of block terminals and the number of empty cells, by; (i) determining an average cell row terminal density equal to the total number of terminals in the cell row divided by the total number of cells in the cell row, and (ii) determining the number of required empty cells for a block by finding the difference between the number of block terminals in the cell row divided by the average terminal density of the cell row and the number of cells in the block, (e) calculating for each row one of an excess and deficiency of the required empty cells from the difference between the number of empty cells and the number of required empty cells, (f) distributing blocks on the wiring grid to compensate for the calculated one of the excess and deficiency, and (g) locating the distributed blocks on a base structure of the wiring grid. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A layout placement method for a wiring grid with a plurality of cell rows, separated by wiring regions, each cell row having a plurality of cells, the method comprising the steps of:
-
(a) for each cell row inputting to a logic connection information file a number and type of variable size blocks, each block containing an integral number of cells and reading from a preprogrammed library a required number of cells for each block type input for a row, wherein each block begins with a non-empty cell and includes an integral number of adjacent cells to the beginning of the next block, (b) inputting to the logic connection information file a number of block terminals for each block, (c) counting a number of empty cells of each cell row, (d) calculating a number of required empty cells for each row from the number of blocks, the number of block terminals and the number of empty cells, by; (i) determining an average cell row terminal density equal to the total number of terminals in the cell row divided by the total number of cells in the cell row, and (ii) determining the number of required empty cells for a block by finding the difference between the number of block terminals in the cell row divided by the average terminal density of the cell row and the number of cells in the block, (e) calculating for each row one of an excess and deficiency of the required empty cells from the difference between the number of empty cells and the number of required empty cells, (f) distributing blocks on the wiring grid to compensate for the calculated one of the excess and deficiency, and (g) locating the distributed blocks on a base structure of the wiring grid, (h) maintaining a record containing for each block in a cell row the number of empty cells, the number of required empty cells, the excess and deficiency of empty cells, and further containing a number of empty cells located at a first end of the cell row before the first cell in the first block, and (i) distributing empty cells at the first end of the cell row to each block having a deficiency of empty cells. - View Dependent Claims (9, 10, 11)
-
Specification