Machine process for routing interconnections from one module to another module and for positioning said two modules after said modules are interconnected
First Claim
1. A machine process for positioning two modules on a planar field by the use of a programmed digital computer having stored therein a program, said program for creating representations of said modules in said computer, said representations are separated by a region defined by a plurality of substantially parallel columns from a representation of one module (hereinafter:
- "one representation") to a representation of the other module (hereinafter;
"other representation") and by a plurality of substantially parallel tracks having variable widths substantially perpendicular to said columns, said representations of the modules are connected by a plurality of interconnections;
a portion of each of said interconnection lies on a column and on a track, said program enabling the computer to perform the following steps;
(a) moving a track, having a first width closest to said one representation to said one representation by moving each point in said track, intersected by a column, to as close to said one representation as possible such that said track moved has a first profile;
(b) establishing a guard frame for said track moved in step (a);
(c) repeating the steps of (a) and (b) by moving the track next furthest away from the last track, having a second width different from said first width moved in the direction of said other representation; and
(d) moving said other representation in a direction to said one representation to as close to the last track moved as possible;
wherein said modules are placed in positions of said representations.
0 Assignments
0 Petitions
Accused Products
Abstract
In the present disclosure, a method of routing interconnections between a semiconductor module and another semiconductor module in a planar field by the use of a digital computer program is disclosed. The method is a variation of the prior art YACR method. The method provides for variable width track routing, as well as cost equation for net assignment and cost equation of net chosen to particular a horizontal track. The present invention also relates to a method for positioning the modules. The method of positioning the two modules or compacting the modules is a method for moving tracks between modules from one module to the other module as close to the opposite module as possible within the design rule constraints. The tracks are then moved in an opposite direction and the straightest segment to minimize jogs is chosen. Each track is then moved in the opposite direction and is moved as close to the straightest previous adjacent track as possible, within the design rule constraint.
104 Citations
9 Claims
-
1. A machine process for positioning two modules on a planar field by the use of a programmed digital computer having stored therein a program, said program for creating representations of said modules in said computer, said representations are separated by a region defined by a plurality of substantially parallel columns from a representation of one module (hereinafter:
- "one representation") to a representation of the other module (hereinafter;
"other representation") and by a plurality of substantially parallel tracks having variable widths substantially perpendicular to said columns, said representations of the modules are connected by a plurality of interconnections;
a portion of each of said interconnection lies on a column and on a track, said program enabling the computer to perform the following steps;(a) moving a track, having a first width closest to said one representation to said one representation by moving each point in said track, intersected by a column, to as close to said one representation as possible such that said track moved has a first profile; (b) establishing a guard frame for said track moved in step (a); (c) repeating the steps of (a) and (b) by moving the track next furthest away from the last track, having a second width different from said first width moved in the direction of said other representation; and (d) moving said other representation in a direction to said one representation to as close to the last track moved as possible; wherein said modules are placed in positions of said representations. - View Dependent Claims (2, 3)
- "one representation") to a representation of the other module (hereinafter;
-
4. An improved method of routing interconnections from one module to another module on a planar field by the use of a programmed digital computer having stored therein a program, said program for creating representations of said modules in said computer, said method of routing including the steps of establishing a plurality of substantially parallel columns from one representation of one module (hereinafter:
- "one representation") to the other representation of other module (hereinafter "other representation");
establishing a plurality of substantially parallel tracks wherein each track has a density and a variable width associated therewith, each track substantially perpendicular to a column;
tracing the beginning column of one net to the end column of that net, for all nets, wherein each net is the symbolic representation of each interconnection;
calculating the density of tracks in each column;
wherein the improvement comprising;(a) calculating a cost associated with the net assignment for each net to a column; (b) assigning the net with the highest cost calculated from step (a) to a horizontal track; (c) routing the net of step (b) to an available horizontal track with the lowest cost; (d) repeating the steps of (b) and (c) for all other nets in accordance with decreasing cost calculated from step (a); (e) connecting the columns of each net to the track of that net routed in accordance with step (c); and (f) routing interconnection from one module to another module in accordance with the routes calculated from the representations.
- "one representation") to the other representation of other module (hereinafter "other representation");
-
5. A method of routing interconnections from one pin in a module to another pin of another module on a planar field by the use of a programmed digital computer having stored therein a program, said program for creating representations of said modules in said computer, each of said interconnection for connecting said one pin having two end points and a center point to said other pin having two end pints and a center point;
- said method comprising the steps of
establishing a plurality of columns from one representation to the other representation, wherein each column originates along the end points and the center point of each pin; tracing from the beginning column of one net to the end column of that net, for all nets, wherein each net is the symbolic representation of each interconnection; calculating the density of each column by adding the track width of all the nets crossing that column; calculating a cost associated with the net assignment for each net; assigning the net with the highest cost calculated to a horizontal track; routing the net assigned to an available track with the lowest cost; repeating the steps of calculating the net assignment and assigning the net to a track for all other nets in accordance with decreasing cost; connecting the columns to the track of each net routed; and routing interconnection from one pin in module to another pin of another module in accordance with the routes calculated for the representations. - View Dependent Claims (6, 7, 8, 9)
- said method comprising the steps of
Specification