JPH08287117A - Compaction method for layout having multiple grid restriction - Google Patents

Compaction method for layout having multiple grid restriction

Info

Publication number
JPH08287117A
JPH08287117A JP7115133A JP11513395A JPH08287117A JP H08287117 A JPH08287117 A JP H08287117A JP 7115133 A JP7115133 A JP 7115133A JP 11513395 A JP11513395 A JP 11513395A JP H08287117 A JPH08287117 A JP H08287117A
Authority
JP
Japan
Prior art keywords
constraint
leaf
cell
graph
layout
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP7115133A
Other languages
Japanese (ja)
Inventor
Hiroshi Miyashita
弘 宮下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP7115133A priority Critical patent/JPH08287117A/en
Publication of JPH08287117A publication Critical patent/JPH08287117A/en
Withdrawn legal-status Critical Current

Links

Abstract

PURPOSE: To provide a compaction method for constituting a macrocell from plural leaf cells as to layout design with multiple grid restrictions. CONSTITUTION: A restriction graph between layout elements of plural leaf cells constituting a macrocell is generated (22) and restrictions between ports connected between the respective leaf cells are generated in each leaf cell on the basis of the multiple grid restrictions (23); and restrictions between the ports in each leaf cell are coupled to generate restrictions of the whole macrocell (25), coordinates of the respective ports which satisfy the restrictions of the whole macrocell are found on the basis of the multiple grid restrictions (26), and the coordinates of the layout elements of each leaf cell are determined by using the coordinate values (28). Consequently, the pattern of the whole macrocell is generated.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、LSIのレイアウト設
計において、ラフなレイアウトパタンを指定されたデザ
インルールに従った詰まったレイアウトパタンに変換す
るコンパクション方法に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a compaction method for converting a rough layout pattern into a tight layout pattern according to a designated design rule in the layout design of an LSI.

【0002】特に本発明のコンパクション方法は、リー
フセル(比較的小規模のセル)を組み合せてマクロセル
(高密度のセル)を設計するとき、各リーフセルの対応
するポートが接続され、かつ多重格子制約を満足する面
積最小のレイアウトパタンを生成できるコンパクション
方法に関するものである。
In particular, the compaction method of the present invention, when designing a macro cell (high-density cell) by combining leaf cells (relatively small cells), the corresponding ports of each leaf cell are connected, and the multi-grid constraint is imposed. The present invention relates to a compaction method that can generate a layout pattern that satisfies a minimum area.

【0003】[0003]

【従来の技術】LSIのレイアウトのコンパクション技
術は、プロセス技術の進展によるデザインルール(LS
Iの製造プロセスから定められた幾何学的規則等)の変
更に応じて、レイアウトパタンを自動変換する技術とし
て重要な位置を占めており、各種の手法が提案されてき
た。各種のコンパクション技術は、以下の文献に記述さ
れている。
2. Description of the Related Art Compaction technology for the layout of LSIs uses design rules (LS
In accordance with changes in the geometrical rules determined from the manufacturing process of I), it occupies an important position as a technique for automatically converting layout patterns, and various methods have been proposed. Various compaction techniques are described in the following documents:

【0004】Cho,Y.E., " A subjective review of com
paction," in Proc.22nd Design Automation Conf.,pp.
396-404,June 1985.
Cho, YE, "A subjective review of com
paction, "in Proc.22nd Design Automation Conf., pp.
396-404, June 1985.

【0005】各種コンパクション方法のうち、多様なデ
ザインルールの変更に適用できること、レイアウトパタ
ンに対して設計者が特に設定した各種の制約を取り扱え
ることなどから、「最長路法」に基づく一次元コンパク
ション手法が他の方法より優れており、実用的にも広く
使用されている。このようなアルゴリズムの改良された
一つは、以下の文献に述べられている。
Among the various compaction methods, the one-dimensional compaction method based on the "longest path method" is applicable because it can be applied to change various design rules, and various constraints set by the designer for layout patterns can be handled. Is superior to other methods and is widely used in practice. An improved one of such algorithms is described in the following documents:

【0006】Liao,Y.Z.and Wong,C.K., "An algorithm
to compact a VLSI symbolic layout wiht mixd const
raints," IEEE Trans. on Computer-Aid Design & Syst
ems,vol.2,no.2,pp.62-69,April 1983.
Liao, YZand Wong, CK, "An algorithm
to compact a VLSI symbolic layout wiht mixd const
raints, "IEEE Trans. on Computer-Aid Design & Syst
ems, vol.2, no.2, pp.62-69, April 1983.

【0007】この最長路法によるコンパクション手法
を、レイアウトを下向きに詰める−y方向コンパクショ
ンを例に、図5、図6、図7、図8を参照して、簡単に
その考え方を説明する。
The concept of the compaction method based on the longest path method will be briefly described with reference to FIGS. 5, 6, 7, and 8 by taking the -y direction compaction in which the layout is packed downward.

【0008】図5はコンパクション前のセルパタンの模
式図である。図5において、1はセル外枠、2は配線、
3はブロック3A、3B、3Cを表す。ブロック3はト
ランジスタなどの回路素子となることもあるが、以下の
考え方は基本的に同じであり、これらの図は何等この手
法の適用範囲を制限するものではない。100はセル外
枠の下辺、101はブロック3Bの左辺のポート、10
2、103はブロック3Aの左辺のポート、104は配
線2の一部の横ライン、105、106はブロック3A
の右辺のポート、107はセル外枠の上辺である。
FIG. 5 is a schematic diagram of a cell pattern before compaction. In FIG. 5, 1 is a cell outer frame, 2 is wiring,
3 represents blocks 3A, 3B, 3C. The block 3 may be a circuit element such as a transistor, but the following ideas are basically the same, and these figures do not limit the application range of this method. 100 is the lower side of the cell outer frame, 101 is the port on the left side of the block 3B, 10
2, 103 are ports on the left side of the block 3A, 104 is a partial horizontal line of the wiring 2, and 105 and 106 are blocks 3A.
The port on the right side of, and 107 is the upper side of the cell outer frame.

【0009】図6はこのセル内のレイアウト要素の座標
間の関係を示す有向グラフを示すものであり、これを制
約グラフと呼ぶ。このグラフの頂点4(丸印で表す)が
レイアウト要素を表現し、頂点間の有向枝5(実線の矢
印で表す)が対応するレイアウト要素間の制約を表現す
る。この制約は、これらのレイアウト要素間のデザイン
ルールまたはレイアウト要素の物理的な接続を維持する
ために課せられる。
FIG. 6 shows a directed graph showing the relationship between the coordinates of the layout elements in this cell, which is called a constraint graph. The vertices 4 of this graph (represented by circles) represent layout elements, and the directed branches 5 between vertices (represented by solid arrows) represent constraints between corresponding layout elements. This constraint is imposed to maintain design rules or layout element physical connections between these layout elements.

【0010】すなわち、有向枝(制約枝)5には正また
は負の重みが与えられており、頂点iから頂点jへ向か
う枝(i,j)の重みw(i,j)は、頂点i,jに対
応するレイアウト要素のy−座標[y(i),y
(j)]の間の制約「y(j)≧y(i)+w(i,
j)」を表す。ここでは、座標値[y(・])は整数値
に制限される。実際のレイアウトでは、ある最小単位の
寸法、例えば、0.05μmを決めて、座標値はこれの
整数倍で表現されるからである。
That is, a positive or negative weight is given to the directed branch (constrained branch) 5, and the weight w (i, j) of the branch (i, j) from the vertex i to the vertex j is the vertex. y-coordinates [y (i), y of the layout element corresponding to i, j
(J)] constraint “y (j) ≧ y (i) + w (i,
j) ". Here, the coordinate value [y (•]) is limited to an integer value. This is because, in an actual layout, the size of a certain minimum unit, for example, 0.05 μm is determined, and the coordinate value is expressed by an integral multiple of this.

【0011】図6において、頂点4で示す丸内の数字
は、図5の数字で表した辺、ポート、またはライン等に
対応している。例えば、頂点107は、セル外枠1の上
辺107に対応しており、頂点100はセル外枠1の下
辺100に対応している。
In FIG. 6, the numbers in the circles indicated by the vertices 4 correspond to the sides, ports, lines, etc. represented by the numbers in FIG. For example, the vertex 107 corresponds to the upper side 107 of the cell outer frame 1, and the vertex 100 corresponds to the lower side 100 of the cell outer frame 1.

【0012】ここで、全ての頂点のy−座標は、これら
のセル外枠1の下辺100、上辺107に対応する頂点
100、頂点107のy座標を下限、上限とし、セル外
枠1の下辺100に対応する頂点100から任意の頂点
への経路が存在し、また任意の頂点からセル外枠1の上
辺107に対応する頂点107への経路も存在するもの
とする。
Here, the y-coordinates of all the vertices have the lower and upper limits of the y-coordinates of the vertices 100 and 107 corresponding to the lower side 100 and the upper side 107 of the cell outer frame 1, respectively. It is assumed that there is a path from the vertex 100 corresponding to 100 to any vertex, and a path from any vertex to the vertex 107 corresponding to the upper side 107 of the cell outer frame 1.

【0013】また、ブロック3A〜3Cの形状およびブ
ロック3A〜3Cに接続されるポート101〜103、
105、106の位置は固定である。図6において、頂
点au、alはブロック3Aの上辺、下辺に対応してお
り、その頂点auから頂点alへの有向枝5は(=6)
で表される重みをもつ。他のブロック3B、3Cについ
ても同様である。
Further, the shapes of the blocks 3A to 3C and the ports 101 to 103 connected to the blocks 3A to 3C,
The positions of 105 and 106 are fixed. In FIG. 6, vertices au and al correspond to the upper and lower sides of the block 3A, and the directional branch 5 from the vertex au to the vertex al is (= 6).
Has a weight represented by. The same applies to the other blocks 3B and 3C.

【0014】上記した(=6)で表される重みをもつ有
向枝5は、図7で示すように、その向きが互い反対で、
その重みの絶対値は同じで符号が異なる二つの有向枝5
1、52のペアと等価であり、これの簡略化した表現で
ある。このペアの有向枝51、52は制約「y(au)
≧y(al)+6」と制約「y(al)≧y(al)−
6」、すわなち、制約「y(au)=y(al)+6」
と等価であり、ブロック3Cの高さ(距離)を「6」の
値に固定する固定制約である。例えば、最小単位の寸法
が上記した0.05μmであれば、「0.05μm×6
=0.3μm」を表す。他の「1」で表される重みを持
つ有向枝は、「1」が最低値であることを示す。
As shown in FIG. 7, the directional branches 5 having the weights represented by (= 6) have their directions opposite to each other.
Two directional branches 5 with the same absolute value of weight but different signs
It is equivalent to a pair of 1,52 and is a simplified representation of this. The directed branches 51 and 52 of this pair are the constraint "y (au)
≧ y (al) +6 ”and the constraint“ y (al) ≧ y (al) −
6 ", that is, the constraint" y (au) = y (al) +6 "
Is a fixed constraint that fixes the height (distance) of the block 3C to a value of "6". For example, if the minimum unit size is 0.05 μm, then “0.05 μm × 6
= 0.3 μm ”. The other directional branch having the weight represented by "1" indicates that "1" is the lowest value.

【0015】上記した図6の制約グラフ上で「最長路
法」を適用してレイアウト要素のコンパクション後の座
標を決定する。この方法では、まず、最下位のレイアウ
ト要素であるセル外枠1の下辺100に対応する頂点1
00に対してy(100)←0、その他の頂点iに対し
てy(i)←−∞として、y−座標を初期化する。
The "longest path method" is applied on the constraint graph of FIG. 6 to determine the coordinates after layout element compaction. In this method, first, the vertex 1 corresponding to the lower side 100 of the outer cell frame 1 which is the lowest layout element is selected.
The y-coordinate is initialized by setting y (100) ← 0 for 00 and y (i) ← −∞ for the other vertices i.

【0016】次に、頂点iと頂点jに関して、「全ての
有向枝e=(i,j)に対して、もし、y(j)<y
(i)+w(i,j)ならば、y(j)←y(i)+w
(i,j)と座標を更新する。」という処理を、座標値
の更新がなくなるまで、繰り返す。
Next, regarding vertices i and j, "for all directional branches e = (i, j), if y (j) <y
If (i) + w (i, j), y (j) ← y (i) + w
Update the coordinates with (i, j). Is repeated until the coordinate value is not updated.

【0017】上記のようにして図5に示したセルパタン
をコンパクションした後のレイアウトを図8に示す。例
えば、頂点105の座標値は、頂点100から頂点10
5に至る最長路の長さ「8」になる。この有向グラフ
は、x−方向、y−方向の各方向に対して別々に作成さ
れ、コンパクションもこれに対応して、x−方向、y−
方向に交互に独立に実行される。
FIG. 8 shows a layout after compacting the cell pattern shown in FIG. 5 as described above. For example, the coordinate values of the vertex 105 are from the vertex 100 to the vertex 10
The length of the longest road to 5 is "8". This directed graph is created separately for each of the x-direction and the y-direction, and the compaction correspondingly is also created for the x-direction and the y-direction.
Alternating directionally and independently.

【0018】以上に説明したコンパクション方法を使用
して、複数のリーフセルから構成されるマクロセルのコ
ンパクションは、従来図9、図10、図11に示すフロ
ーで行われていた。ここでは、リーフセルA、Bを横方
向に並べることにより、マクロセルを構成するものとし
て説明する。
The compaction of a macro cell composed of a plurality of leaf cells using the compaction method described above has conventionally been performed by the flow shown in FIGS. 9, 10 and 11. Here, it is assumed that the macro cells are formed by arranging the leaf cells A and B in the horizontal direction.

【0019】まず、図9で示すように、リーフセルA、
Bの制約グラフを作成する。それらのグラフ内で外枠の
上(下)辺に対応する頂点、および両リーフセルA、B
間でy−座標を一致させ接続しなければならないポート
に対応する頂点の集合をVpとする。この集合Vpは図
9において破線で囲んだ頂点のペア6、7、8、9、1
0を集めたものである。ただし、リーフセルAの外枠の
左辺にあるポート、リーフセルBの外枠の右辺にあるポ
ートも集合Vpに属するものとし、この集合Vpの頂点
を改めてポートと呼ぶ。
First, as shown in FIG. 9, the leaf cell A,
Create a constraint graph for B. In those graphs, the vertices corresponding to the upper (lower) side of the outer frame, and both leaf cells A and B
Let Vp be the set of vertices corresponding to the ports that must be connected by matching the y-coordinates between them. This set Vp is a pair of vertices surrounded by broken lines in FIG.
It is a collection of 0s. However, the port on the left side of the outer frame of the leaf cell A and the port on the right side of the outer frame of the leaf cell B also belong to the set Vp, and the vertices of this set Vp are called ports again.

【0020】各リーフセルA、B毎にポートに対応する
頂点間の最長路長を計算する。そして、各リーフセル
A、B毎にポートを頂点とし、ポート間に有向枝をその
方向にたどる経路があるとき、そのときに限り、それら
の経路の中の最長路長を重みとする有向枝があるグラフ
を作成する。これを「ポート・アブストラクション・グ
ラフ」と呼ぶ。図10に示したリーフセルA、B内の有
向グラフは、リーフセルA、Bに対応するポート・アブ
ストラクション・グラフである。
For each leaf cell A, B, the longest path length between the vertices corresponding to the port is calculated. Then, when there is a path that has a port as a vertex for each leaf cell A and B and a directional branch is traced between the ports in that direction, only when that is the directional path with the longest path length among those paths as the weight. Create a graph with branches. This is called a "port abstraction graph". The directed graph in the leaf cells A and B shown in FIG. 10 is a port abstraction graph corresponding to the leaf cells A and B.

【0021】次に、Vpの頂点に対して、リーフセル
A、B間でy座標を一致させる頂点間に、有向枝11、
12、13、14、15をつける。これらの有向枝は重
みが(=0)で固定あり、図7ですでに説明したよう
に、ペアのポートのy座標を一致させる。
Next, with respect to the vertex of Vp, the directional branch 11,
Attach 12, 13, 14, and 15. These directed edges have a fixed weight (= 0), and the y-coordinates of the ports of the pair are made to coincide with each other, as already described in FIG.

【0022】このようにして作成したマクロセル全体の
制約グラフを最長路法を使って解くことにより、全ての
ポートのy−座標[y(・)]が求まる。この求まった
ポートの座標を使って、各リーフセルA、B毎に各パタ
ンの座標を求める。これは、上記のようにして求まった
ポートの座標値を、各リーフセルA、Bの制約グラフに
固定制約として付加した制約グラフを解くことよって求
まる。
The y-coordinates [y (.)] Of all the ports can be obtained by solving the constraint graph of the entire macro cell created in this way using the longest path method. Using the obtained port coordinates, the coordinates of each pattern for each leaf cell A and B are obtained. This can be obtained by solving the constraint graph in which the coordinate values of the ports obtained as described above are added as fixed constraints to the constraint graph of each leaf cell A, B.

【0023】例えば、図10の制約グラフを解いて得ら
れたリーフセルAのポート300、303、304、3
05、301、302、306のy座標値が各々a,
b,c,d,e,f,gであれば、図11のように、リ
ーフセルAの制約グラフにポートの座標を固定するため
の制約(有向枝5)が付加される。すなわち、ポート3
00とポート303、304、305、301、30
2、306との間に、「=b」、「=c」、「=d」、
「=e」、「=f」、「=g」の重みの有向枝5が付加
される。
For example, ports 300, 303, 304, 3 of leaf cell A obtained by solving the constraint graph of FIG.
The y coordinate values of 05, 301, 302, and 306 are a,
For b, c, d, e, f, and g, as shown in FIG. 11, a constraint (directed branch 5) for fixing the coordinates of the port is added to the constraint graph of the leaf cell A. That is, port 3
00 and ports 303, 304, 305, 301, 30
2, 306, “= b”, “= c”, “= d”,
Directed branches 5 having weights of “= e”, “= f”, and “= g” are added.

【0024】最後に、この固定制約が付加された各リー
フセルA、Bの制約グラフを最長路法で解くことによ
り、リーフセルA、B内の全てのパタンの座標が決定さ
れる。これで、リーフセルA、B間でポートの座標が一
致するような当該リーフセルA、Bのパタンが得られ
る。このような過程を、以下では「ピッチマッチング」
と呼ぶ。
Finally, by solving the constraint graph of each leaf cell A, B to which this fixed constraint is added by the longest path method, the coordinates of all patterns in the leaf cells A, B are determined. As a result, the pattern of the leaf cells A and B is obtained such that the port coordinates of the leaf cells A and B are the same. This process will be referred to as “pitch matching” below.
Call.

【0025】[0025]

【発明が解決しようとする課題】ところで、実際のLS
Iレイアウト設計においては、レイアウト要素の座標値
は、指定された定数a,bに対して、ある整数nを使っ
て、「a・n+b」の形に制限される格子制約が課せら
れることが多い。さらに、この種の制約では、これらの
定数a,bが多種類指定されることが多い。例えば、あ
る配線については「5×n」が、またある配線について
は「10×n+5」がある整数nに対して成り立つこと
が要請される。このように実際のレイアウトでは、一般
に何種類からの格子制約が指定される。このような複数
種の格子制約を「多重格子制約」と呼ぶ。このような多
重格子制約が存在する場合も扱えるコンパクション方法
は、以下の文献に見られる。
By the way, the actual LS
In the I-layout design, the coordinate values of layout elements are often subject to a lattice constraint that is limited to the form of “a · n + b” using a certain integer n with respect to designated constants a and b. . Further, in this kind of constraint, many types of these constants a and b are often designated. For example, “5 × n” is required for a certain wiring and “10 × n + 5” is required for a certain wiring with respect to an integer n. As described above, in the actual layout, generally, lattice constraints from several types are designated. Such multiple types of lattice constraints are called “multi-lattice constraints”. A compaction method that can be used even when such a multi-grid constraint exists is found in the following documents.

【0026】Lee,J-F.,"A Layout compaction algorith
m with multiple grid cnostraints," in Internationa
l Conference on Computer Design,pp.30-33,1991.
Lee, JF., "A Layout compaction algorith
m with multiple grid cnostraints, "in Internationa
l Conference on Computer Design, pp.30-33, 1991.

【0027】この多重格子制約は、自動配線プログラム
を使用して配線を行うときに必須の制約である。自動配
線プログラムは、予め決めた配線格子を使用して配線経
路を探索する。そのため、自動配線プログラムを使っ
て、コンパクションによって作成したマクロセル間の配
線を、あるいはマクロセル上の空き領域を利用した配線
を行う場合、配線領域を有効に利用するためには、指定
した配線やポートの座標をある格子制約を満足する位置
に制限することが必要である。また、自動配線を前提に
しなくても、格子制限なしに自由に配線すると、大局的
に見て、配線領域の有効利用ができない。
This multi-grid constraint is an essential constraint when wiring is performed using an automatic wiring program. The automatic wiring program searches a wiring route using a predetermined wiring grid. Therefore, when using the automatic routing program to route between macro cells created by compaction, or when using the empty area on the macro cell, in order to effectively use the wiring area, the specified wiring and port It is necessary to limit the coordinates to locations that satisfy some grid constraint. Further, even if the automatic wiring is not premised, if the wiring is freely performed without the grid restriction, the wiring area cannot be effectively used in a global perspective.

【0028】ところが、このような多重格子制約がある
場合に、ラフに設計されたリーフセルパタンからポート
のピッチマッピングが保証されマクロセルが構成できる
ようなリーフセルのパタンを生成するコンパクション方
法は確立されていない。
However, in the case of such a multi-grid constraint, a compaction method for generating a leaf cell pattern in which a pitch cell mapping is guaranteed from a roughly designed leaf cell pattern and a macro cell can be constructed has been established. Absent.

【0029】本発明の目的は、このような多重格子制約
のある実際的なレイアウト設計において、リーフセルか
らマクロセルを構成するためのコンパクション方法を提
供することにある。
It is an object of the present invention to provide a compaction method for constructing a macro cell from leaf cells in such a practical layout design having a multi-grid constraint.

【0030】[0030]

【課題を解決するための手段】このために本発明は、リ
ーフセルを組み合せてマクロセルを設計する際に、各リ
ーフセルの対応するポートが接続され、かつデザインル
ールを満足し、多重格子制約を満足する最小のレイアウ
トパタンを生成するコンパクション方法であって、マク
ロセルを構成する各々のリーフセルのレイアウト要素間
の制約グラフを生成するステップ、上記各リーフセル間
で接続するポート間の制約を多重格子制約に基づいて各
リーフセル内で生成するステップ、上記各リーフセル内
のポート間の制約を結合して、マクロセル全体の制約を
生成するステップ、上記マクロセル全体の制約を満たす
各ポートの座標を多重格子制約に基づいて求めるステッ
プ、この座標値を使って各リーフセルのレイアウト要素
の座標を決定しマクロセル全体のパタンを生成するステ
ップを具備するよう構成した。
Therefore, according to the present invention, when designing a macro cell by combining leaf cells, the corresponding ports of each leaf cell are connected, and the design rule is satisfied, and the multi-grid constraint is satisfied. A compaction method for generating a minimum layout pattern, the step of generating a constraint graph between layout elements of each leaf cell forming a macro cell, the constraint between the ports connected between each leaf cell based on a multi-grid constraint. The step of generating in each leaf cell, the step of combining the constraints between the ports in each leaf cell to generate the constraint of the entire macro cell, the coordinate of each port satisfying the constraint of the entire macro cell is obtained based on the multi-grid constraint Step, use this coordinate value to determine the coordinates of the layout element for each leaf cell. And configured to include a step of generating a Roseru overall pattern.

【0031】[0031]

【作用】本発明においては、パタンとピッチマッピング
すべきポートが指定され、かつ多重格子制約が課せられ
た複数のリーフセルに対して、マクロセル内の全てのパ
タンを対象に一括してコンパクションするのではなく、
各リーフセルのポート・アブストラクション・グラフを
作成し、これを結合したマクロセルのポート・アブスト
ラクション・グラフを対象にコンパクションを行うの
で、全体を一括してコンパクションするのと等価な結果
が得られる。この全体のポート・アブストラクション・
グラフの規模は、全体の制約グラフより小さい。この解
を各リーフセルの制約グラフに固定制約として付加し、
多重格子制約を考慮した最長路法を適用することによ
り、リーフセル内のパタンの座標値が決定される。
In the present invention, it is not possible to compact all the patterns in a macro cell collectively for a plurality of leaf cells for which patterns and ports to be pitch-mapped are specified and multi-grid constraints are imposed. Without
Since the port abstraction graph of each leaf cell is created and the compaction is performed on the port abstraction graph of the macrocell which is combined with this, the result equivalent to performing the entire compaction can be obtained. This whole port abstraction
The size of the graph is smaller than the overall constraint graph. Add this solution to the constraint graph of each leaf cell as a fixed constraint,
By applying the longest path method considering the multi-grid constraint, the coordinate value of the pattern in the leaf cell is determined.

【0032】[0032]

【実施例】以下に、本発明を実施例に従って説明する。
まず、概略を説明すると、隣接リーフセル間でピッチマ
ッピングを行うポートに対応する制約グラフ内の頂点だ
けでなく、リーフセル内で格子制約を課せられたパタン
に対応する頂点もポートと同様に扱い、それらの頂点間
の最長路長を計算し、ポート・アブストラクション・グ
ラフを作成する。次に、このようにして作成された各リ
ーフセルのポート・アブストラクション・グラフを、ピ
ッチマッピングを行うポートの座標を同じにするための
制約を付加して結合し、マクロセル全体のポート・アブ
ストラクション・グラフを生成する。これを多重格子制
約を考慮した最長路法で解く。この結果求まったポート
および格子制約のある頂点の座標値を座標を固定する制
約として、各リーフセルの制約グラフに付加して、各リ
ーフセルの制約グラフを再び多重格子制約を考慮した最
長路法で解き、各リーフセル内のパタンの座標値を決定
することにより、マクロセルを構成するリーフセルのパ
タンが生成される。
EXAMPLES The present invention will be described below with reference to examples.
First, a brief description will be given. Not only the vertices in the constraint graph corresponding to the ports that perform pitch mapping between adjacent leaf cells, but also the vertices corresponding to the lattice-constrained patterns in the leaf cells are treated like ports. Calculate the longest path length between the vertices of and create a port abstraction graph. Next, the port abstraction graphs of each leaf cell created in this way are combined by adding a constraint to make the coordinates of the ports for pitch mapping the same, and the port abstraction graph of the entire macrocell is combined. To generate. This is solved by the longest path method considering the multi-grid constraint. As a constraint to fix the coordinates, the coordinate values of the ports and vertices with grid constraints obtained as a result are added to the constraint graph of each leaf cell, and the constraint graph of each leaf cell is solved again by the longest path method considering the multi-grid constraint. , By determining the coordinate value of the pattern in each leaf cell, the pattern of the leaf cells forming the macro cell is generated.

【0033】図1は本発明の基本構成を示す説明図で、
多重格子制約をもつマクロセルのコンパクション方法を
示すフローチャートである。21はマクロセルを構成す
るのに必要なリーフセルパタンである。22は各リーフ
セルの制約グラフ生成ステップ、23はリーフセルのポ
ート・アブストラクション・グラフ生成ステップ、24
は各リーフセルのポート・アブストラクション・グラフ
が格納されるファイル、25はマクロセルのポート・ア
ブストラクション・グラフ生成ステップ、26はマクロ
セルのポート・アブストラクション・グラフ解法ステッ
プ、27はポートの座標値が格納されるファイル、28
はリーフセルの制約グラフ解法ステップ、29は生成さ
れたリーフセルパタンであり、マクロセルを構成できる
ようにピッチマッチングされている。
FIG. 1 is an explanatory diagram showing the basic structure of the present invention.
6 is a flowchart showing a compaction method of a macro cell having a multi-grid constraint. Reference numeral 21 is a leaf cell pattern required to form a macro cell. 22 is a constraint graph generation step of each leaf cell, 23 is a leaf cell port abstraction graph generation step, 24
Is a file storing the port abstraction graph of each leaf cell, 25 is a macrocell port abstraction graph generating step, 26 is a macrocell port abstraction graph solving step, and 27 is a file storing port coordinate values. , 28
Is a leaf cell constraint graph solving step, and 29 is a generated leaf cell pattern, which is pitch-matched so that a macro cell can be constructed.

【0034】[各リーフセルの制約グラフ生成ステップ
22]ここでは、マクロセルを構成するものとして取り
込んだ各リーフセル毎にレイアウトパタンを解析して、
リーフセルの制約グラフを作成する。制約グラフ内には
指定されたデザインルールを満足し、パタンの物理的接
続関係が維持されるように制約が付加される。
[Constraint Graph Generation Step 22 for Each Leaf Cell] Here, the layout pattern is analyzed for each leaf cell taken in as a constituent of the macro cell,
Create a leaf cell constraint graph. Constraints are added in the constraint graph so that the specified design rules are satisfied and the physical connection relationships of the patterns are maintained.

【0035】[リーフセルのポート・アブストラクショ
ン・グラフ生成ステプップ23]ここでは、各リーフセ
ル毎にポート・アブストラクション・グラフを生成す
る。このポート・アブストラクション・グラフの頂点は
リーフセルの外枠上にあり、隣接するリーフセルと接続
されるポートだけでなく、このリーフセル内の格子制約
を持つ全ての頂点も加えられる。
[Leaf Cell Port Abstraction Graph Generation Step 23] Here, a port abstraction graph is generated for each leaf cell. The vertices of this port abstraction graph are on the outer frame of the leaf cell, and not only the ports connected to the adjacent leaf cells but all vertices with lattice constraints in this leaf cell are added.

【0036】次に、これらの頂点間の有向経路の最長路
長を計算する。しかし、格子制約のある場合は、格子制
約のない場合と異なり、最長路長はその経路の出発点の
初期座標値に依存する。例えば、図2の頂点401から
頂点405までの最長経路長を考える。頂点404は格
子制約<3,0>を持つとする。ここの「3」は前述し
た定数「a」の値を、また「0」は前述した定数「b」
の値を示す。よって、これは、頂点404の座標値[y
(404)]がある整数nに対して「3×n」に制限さ
れることを意味する。
Next, the longest path length of the directed path between these vertices is calculated. However, when there is a lattice constraint, unlike the case where there is no lattice constraint, the longest path length depends on the initial coordinate value of the starting point of the route. For example, consider the longest path length from vertex 401 to vertex 405 of FIG. It is assumed that the vertex 404 has a lattice constraint <3,0>. Here, “3” is the value of the above-mentioned constant “a”, and “0” is the above-mentioned constant “b”.
Indicates the value of. Therefore, this is the coordinate value [y
(404)] is limited to “3 × n” for some integer n.

【0037】このとき、図3の表に示すように、頂点4
01の座標の初期値δを変化させると、頂点405の
[座標y(405)]、頂点405と頂点401の距離
[y(405)−δ]が変化する。
At this time, as shown in the table of FIG.
When the initial value δ of the coordinate 01 is changed, the [coordinate y (405)] of the vertex 405 and the distance [y (405) −δ] between the vertex 405 and the vertex 401 change.

【0038】リーフセルのポート・アブストラクション
・グラフの頂点sと頂点tとの間の有向枝は、この間に
経路があるとき、そのときに限ってsからtへの有向枝
を加え、その重みは、後述する図5に示す手続きに従っ
て求めたLs,t (δ)と初期値δとの差の における最小値 とする。
The directional branch between the vertices s and t of the leaf cell port abstraction graph of the leaf cell is added to the directional branch from s to t only when there is a path between them, and its weight is added. Is the difference between Ls, t (δ) obtained according to the procedure shown in FIG. Minimum value in And

【0039】Dはリーフセル内に定義されている格子制
約<Cgrid(i),Cdelta (i)>について、格子制
約{Cgrid(i)}の最小公倍数であり、この例ではD
=3である。なお、Cgrid(i)は頂点iの前述した制
約「a・n+b」の内の定数「a」であり、Cdelta
(i)は頂点iの定数「b」である。
D is the least common multiple of the lattice constraint {Cgrid (i)} for the lattice constraints <Cgrid (i), Cdelta (i)> defined in the leaf cell. In this example, D
= 3. It should be noted that Cgrid (i) is a constant “a” within the above-mentioned constraint “a · n + b” of the vertex i, and Cdelta
(I) is the constant “b” of the vertex i.

【0040】したがって、図2に示した例では、頂点4
01から頂点405への有向枝の重みは、 となる。
Therefore, in the example shown in FIG.
The weight of the directed edge from 01 to the vertex 405 is Becomes

【0041】図4は与えられた制約グラフG=(V,
E)、頂点s、tに対して、 (Ls,t (δ)−δ);(0≦δ≦D) を計算する手続きのフローチャートである。Vは制約グ
ラフgの頂点の集合、Eは有向枝の集合である。出発点
(ソース頂点)に対応する頂点sの座標の初期値をδと
した場合の最長路に沿った頂点tの座標がLs,t (δ)
である。ステップ31でδの初期化を行っている。
FIG. 4 shows a given constraint graph G = (V,
E) is a flowchart of a procedure for calculating (Ls, t (δ) -δ); (0 ≦ δ ≦ D) for vertices s and t. V is a set of vertices of the constraint graph g, and E is a set of directed edges. When the initial value of the coordinate of the vertex s corresponding to the starting point (source vertex) is δ, the coordinate of the vertex t along the longest path is Ls, t (δ)
Is. In step 31, δ is initialized.

【0042】ステップ32では、頂点sの座標を整数値
に丸める関数 round(δ,s)で初期化し、頂点s以外
の他の頂点の座標は−∞とする。各頂点tに対してこの
手続きを実行することにより、ステップ34にくる度
に、Ls,t (δ)(δ=0,δ+1,・・・・・,D)
が求まる。関数 round(x,i)は図4の下部分に示し
た式で処理されるる。xは頂点iの座標値である。
In step 32, the coordinates of the vertex s are initialized by a function round (δ, s) that rounds the coordinates to an integer, and the coordinates of other vertices other than the vertex s are set to −∞. By executing this procedure for each vertex t, Ls, t (δ) (δ = 0, δ + 1, ..., D) is obtained each time step 34 is reached.
Is found. The function round (x, i) is processed by the formula shown in the lower part of FIG. x is the coordinate value of the vertex i.

【0043】破線で囲まれたステップ33は、この制約
グラフ内で指定された格子制約の格子定数{grid (・)
}の最小公倍数Dに対して、高々次の式で定義される
N回だけ繰り返さられる。 ただし、Vgは格子制約を持った頂点の集合である。ま
た、|V−Vg|は集合V−Vgの要素数を表す。この
ようにして、各リーフセルのポート・アブストラクショ
ン・グラフが作成される。なお、このステップ33の
「id」は処理した頂点の数を表す変数である。
The step 33 enclosed by a broken line is the lattice constant {grid (•) of the lattice constraint specified in this constraint graph.
} Is repeated N times at most, defined by the following equation. However, Vg is a set of vertices having a lattice constraint. Also, | V-Vg | represents the number of elements of the set V-Vg. In this way, the port abstraction graph of each leaf cell is created. The "id" in step 33 is a variable indicating the number of processed vertices.

【0044】[マクロセルのポート・アブストラクショ
ン・グラフの生成ステップ26]ここでは、上記のよう
にして生成された各リーフセルのポート・アブストラク
ション・グラフを結合してマクロセル全体のポート・ア
ブストラクション・グラフを作成する。この結合は、隣
接するリーフセル間で座標を等しくして接続させるポー
トに対応する頂点間に、重み0で互いに向きが反対の二
つの有向枝を加えることにより行う。
[Generation step 26 of macro cell port abstraction graph] In this step, the port abstraction graphs of the leaf cells generated as described above are combined to create a macro cell port abstraction graph. . This connection is performed by adding two directional branches whose weights are 0 and whose directions are opposite to each other between the vertices corresponding to the ports to which the adjacent leaf cells have the same coordinates and are connected.

【0045】[マクロセルのポート・アブストラクショ
ン・グラフの解法ステップ27]ここでは、マクロセル
のポート・アブストラクション・グラフに図4の手続き
を適用して各頂点の座標を求める。ただし、最小公倍数
D=0とおき、頂点sをマクロセルの最下位のレイアウ
ト要素に対応する頂点とする。この手続きにより、全て
の頂点のy−座標が決定される。
[Solution Step 27 of Macro Cell Port Abstraction Graph] Here, the procedure of FIG. 4 is applied to the macro cell port abstraction graph to obtain the coordinates of each vertex. However, the least common multiple D = 0 is set, and the vertex s is the vertex corresponding to the lowest layout element of the macro cell. This procedure determines the y-coordinates of all vertices.

【0046】図4のステップ34では、最下位のレイア
ウト要素(頂点)sに対して全ての頂点の座標値y
(i)(=Ls,t (δ))が決定される。ここで、マク
ロセルのポート・アブストラクション・グラフの頂点は
すべてのポートと格子制約をもつ頂点から構成されてい
る。
In step 34 of FIG. 4, the coordinate values y of all the vertices with respect to the lowest layout element (vertex) s.
(I) (= Ls, t (δ)) is determined. Here, the vertices of the macro cell port abstraction graph are composed of all ports and vertices with lattice constraints.

【0047】[各リーフセルの制約グラフの解法ステッ
プ28]最後に、ここでは、各リーフセルの制約グラフ
を解く。ここで、リーフセルの制約グラフには、前処理
で求まったマクロセルのポート・アブストラクション・
グラフに含まれる頂点について、その座標値が固定制約
として付加されているものとする。
[Solution Step 28 of Constraint Graph of Each Leaf Cell] Finally, here, the constraint graph of each leaf cell is solved. Here, in the leaf cell constraint graph, the macro cell port abstraction
It is assumed that the coordinate values of the vertices included in the graph are added as fixed constraints.

【0048】各リーフセルの制約グラフは、再び図4の
手続きを適用して解かれる。ここで、最小公倍数D=0
とし、頂点sは各リーフセルの最下位のレイアウト要素
に対応する頂点とする。この手続きにより、制約グラフ
内の頂点が決定され、従って各リーフセルのパタンが生
成される。
The constraint graph of each leaf cell can be solved by applying the procedure of FIG. 4 again. Here, the least common multiple D = 0
And the vertex s is the vertex corresponding to the lowest layout element of each leaf cell. This procedure determines the vertices in the constraint graph and thus produces the pattern for each leaf cell.

【0049】[0049]

【発明の効果】以上述べたように、本発明によるコンパ
クション方法によれば、多重格子制約をもつマクロセル
のレイアウト設計を、隣接するリーフセルのポートの座
標を一致させ、隣接リーフセル間でポートの接続がなさ
れるように、マクロセルの構成要素となるリーフセルパ
タンを生成することができる。
As described above, according to the compaction method of the present invention, the layout design of a macro cell having a multi-grid constraint is performed so that the coordinates of the ports of adjacent leaf cells are made to coincide with each other and the connection of ports between adjacent leaf cells is made. As is done, it is possible to generate a leaf cell pattern that is a constituent of a macro cell.

【図面の簡単な説明】[Brief description of drawings]

【図1】 多重格子制約を持つマクロセルのコンパクシ
ョン方法を示すフローチャートである。
FIG. 1 is a flowchart showing a compaction method of a macro cell having a multi-grid constraint.

【図2】 多重格子制約を持つレイアウトでのポート・
アブストラクション・グラフの有向枝の重みの計算法を
説明するための図てある。
Figure 2 Ports in a layout with multiple grid constraints
It is a figure for demonstrating the calculation method of the weight of the directed edge of an abstract graph.

【図3】 図2の頂点401から頂点405までの経路
に対応する有向枝の重みを計算するために必要な値を示
す図である。
FIG. 3 is a diagram showing values necessary for calculating a weight of a directional branch corresponding to a route from a vertex 401 to a vertex 405 in FIG.

【図4】 多重格子制約を持つレイアウトのポート・ア
ブストラクション・グラフで有向枝の重みを計算するの
に必要な値を求めるためのフローチャートである。
FIG. 4 is a flowchart for obtaining a value necessary for calculating a weight of a directional branch in a port abstraction graph having a layout having a multi-grid constraint.

【図5】 コンパクション前のセルのパタンの模式図で
ある。
FIG. 5 is a schematic diagram of cell patterns before compaction.

【図6】 図5に示すパタンに対応する制約グラフを示
す図である。
6 is a diagram showing a constraint graph corresponding to the pattern shown in FIG.

【図7】 固定制約と呼ぶ距離を固定するための制約の
ペアを示す図である。
FIG. 7 is a diagram showing a pair of constraints for fixing a distance called fixed constraints.

【図8】 コンパクション後のパタンの模式図である。FIG. 8 is a schematic diagram of a pattern after compaction.

【図9】 隣接するリーフセルの制約グラフを示す図で
ある。
FIG. 9 is a diagram showing a constraint graph of adjacent leaf cells.

【図10】 リーフセルのポート・アブストラクション
・グラフとポートの座標を一致させるために付加する有
向枝を示す図である。
FIG. 10 is a diagram illustrating a port abstraction graph of a leaf cell and a directional branch added to match the coordinates of ports.

【図11】 ポートの座標値を固定するために固定制約
を付加したリーフセルの制約グラフを示す図である。
FIG. 11 is a diagram showing a constraint graph of leaf cells to which fixed constraints are added to fix the coordinate values of ports.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】複数のリーフセルを組み合せてマクロセル
を設計する際に、各リーフセルの対応するポートが接続
され、かつデザインルールを満足し、多重格子制約を満
足する最小のレイアウトパタンを生成するコンパクショ
ン方法であって、 マクロセルを構成する各々のリーフセルのレイアウト要
素間の制約グラフを生成するステップ、 上記各リーフセル間で接続するポート間の制約を多重格
子制約に基づいて各リーフセル内で生成するステップ、 上記各リーフセル内のポート間の制約を結合して、マク
ロセル全体の制約を生成するステップ、 上記マクロセル全体の制約を満たす各ポートの座標を多
重格子制約に基づいて求めるステップ、 この座標値を使って各リーフセルのレイアウト要素の座
標を決定しマクロセル全体のパタンを生成するステッ
プ、 を具備することを特徴とするコンパクション方法。
1. A compaction method for generating a minimum layout pattern in which a corresponding port of each leaf cell is connected, a design rule is satisfied, and a multi-grid constraint is satisfied when a macro cell is designed by combining a plurality of leaf cells. And a step of generating a constraint graph between layout elements of each leaf cell forming a macrocell, a step of generating a constraint between ports connecting between the leaf cells in each leaf cell based on a multi-grid constraint, Combining constraints between ports in each leaf cell to generate constraints for the entire macro cell, determining coordinates of each port satisfying the constraints for the entire macro cell based on the multi-grid constraint, and using these coordinate values Determines the coordinates of the leaf cell layout elements and generates a pattern for the entire macro cell Compaction method characterized by comprising that step.
JP7115133A 1995-04-17 1995-04-17 Compaction method for layout having multiple grid restriction Withdrawn JPH08287117A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7115133A JPH08287117A (en) 1995-04-17 1995-04-17 Compaction method for layout having multiple grid restriction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7115133A JPH08287117A (en) 1995-04-17 1995-04-17 Compaction method for layout having multiple grid restriction

Publications (1)

Publication Number Publication Date
JPH08287117A true JPH08287117A (en) 1996-11-01

Family

ID=14655102

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7115133A Withdrawn JPH08287117A (en) 1995-04-17 1995-04-17 Compaction method for layout having multiple grid restriction

Country Status (1)

Country Link
JP (1) JPH08287117A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002027484A3 (en) * 2000-09-28 2003-01-16 Curl Corp Method for processing grid and table layout using elastic properties
US7711208B2 (en) 2003-11-06 2010-05-04 Socoto Gmbh & Co. Kg Method for changing the dimensions of an electronically stored image

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002027484A3 (en) * 2000-09-28 2003-01-16 Curl Corp Method for processing grid and table layout using elastic properties
US6919890B2 (en) 2000-09-28 2005-07-19 Curl Corporation Grid and table layout using elastics
US7711208B2 (en) 2003-11-06 2010-05-04 Socoto Gmbh & Co. Kg Method for changing the dimensions of an electronically stored image
US7978935B2 (en) 2003-11-06 2011-07-12 Socoto Gmbh & Co. Kg Method for changing the dimensions of an electronically stored image

Similar Documents

Publication Publication Date Title
US4933889A (en) Method for fine decomposition in finite element mesh generation
Chan et al. mPL6: Enhanced multilevel mixed-size placement
US5587923A (en) Method for estimating routability and congestion in a cell placement for integrated circuit chip
Cong et al. Large-scale circuit placement
JP2954894B2 (en) Integrated circuit design method, database device for integrated circuit design, and integrated circuit design support device
US20030005398A1 (en) Timing-driven global placement based on geometry-aware timing budgets
Dai Hierarchical placement and floorplanning in BEAR
WO2012026383A1 (en) Apparatus for generating computational data, method for generating computational data, and program for generating computational data
JPH11272732A (en) Graphic layout change system and method therefor
Hutton et al. Characterization and parameterized generation of synthetic combinational benchmark circuits
Shojaei et al. Planning for local net congestion in global routing
CN114556352A (en) Method and system for performing automatic wiring
Sarrafzadeh et al. Single-layer global routing
Luo et al. Computational geometry based placement migration
Chatterjee et al. A new simultaneous circuit partitioning and chip placement approach based on simulated annealing
JPH08287117A (en) Compaction method for layout having multiple grid restriction
Ying et al. An analytical approach to floorplanning for hierarchical building blocks layout (VLSI)
Couplet et al. Generation of high-order coarse quad meshes on CAD models via integer linear programming
US7584445B2 (en) Sequence-pair creating apparatus and sequence-pair creating method
KR100373456B1 (en) System and method of topography simulation for numerical semiconductor process analysis
Pereverdieva et al. The Prism-Net Search Space Representation for Multi-objective Building Spatial Design
Torabi et al. A fast hierarchical adaptive analog routing algorithm based on integer linear programming
JP3433025B2 (en) Module placement method
JP4262660B2 (en) Sequence pair creation device and sequence pair creation method
Mani et al. Using genetic algorithm for slicing floorplan area optimization in circuit design

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020702