JPH0594497A - Arrangement processing system - Google Patents
Arrangement processing systemInfo
- Publication number
- JPH0594497A JPH0594497A JP3256149A JP25614991A JPH0594497A JP H0594497 A JPH0594497 A JP H0594497A JP 3256149 A JP3256149 A JP 3256149A JP 25614991 A JP25614991 A JP 25614991A JP H0594497 A JPH0594497 A JP H0594497A
- Authority
- JP
- Japan
- Prior art keywords
- net
- length
- wiring
- virtual wiring
- virtual
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 claims description 11
- 239000000758 substrate Substances 0.000 abstract 1
- 238000000034 method Methods 0.000 description 9
- 239000000470 constituent Substances 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は配置処理方式に関し、特
にゲートアレイLSIでネットの配線長制限の条件があ
る場合のレイアウト設計時の配置処理方式に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a layout processing method, and more particularly to a layout processing method at the time of layout design when there is a condition of a net wiring length limitation in a gate array LSI.
【0002】[0002]
【従来の技術】従来の配置処理方式は、ゲートアレイL
SIでネットの配線長制限の条件がある場合のレイアウ
ト設計では、いくつかの近くに配置したブロックの組を
ひとつのグループとして、LSI全体をいくつかのブロ
ックから成るグループに分割し、グループ領域内に当該
グループに割り当てられたブロックを配置している。ま
た、全ネットの仮想配線長の総和を最小となるように配
置している。2. Description of the Related Art A conventional layout processing method is a gate array L.
In the layout design when there is a condition of limiting the wiring length of the net in SI, a set of blocks arranged in the vicinity is divided into one group, and the entire LSI is divided into a group consisting of several blocks. The blocks assigned to the group are placed in. Also, they are arranged so that the total sum of the virtual wiring lengths of all nets is minimized.
【0003】[0003]
【発明が解決しようとする課題】上述した従来の配置処
理方式は、ゲートアレイLSIでネットの配線長制限の
条件がある場合のレイアウト設計では、LSI全体をい
くつかのブロックから成るグループに分割し、グループ
の領域を決定して配置する場合、グループの分割方法に
よっては、ネットに接続するブロックが異なるグループ
に割り当てられたり、設定されたグループの領域のサイ
ズが大きいことにより、配線長制限のあるネットを構成
するブロックが離されて配置され、配線長制限を違反す
る可能性があり、又、全ネットの仮想配線長の総和を最
小となるように配置した場合にも、個々のネットの仮想
配線長が、配線長制限以下であるという保証は無く、配
線長制限のあるネットを構成するブロックが離されて配
置され、配線長制限を違反する可能性があるという問題
点がある。このため配線制限長を違反するネットが生じ
た場合は、再度配置処理を行う必要があるので工数が増
大するという問題点もある。According to the conventional layout processing method described above, in the layout design when there is a condition for limiting the wiring length of the net in the gate array LSI, the entire LSI is divided into groups consisting of several blocks. , When deciding and arranging the area of a group, there is a wiring length limitation because the blocks connected to the net are assigned to different groups or the size of the set group area is large depending on the division method of the group. If the blocks that make up a net are placed separately, it is possible to violate the wiring length limitation.Also, even if the nets are placed so that the total sum of the virtual wiring lengths of all nets is minimized, the virtual There is no guarantee that the wiring length will be less than or equal to the wiring length limit. There is a problem that is likely to violate the. Therefore, when a net violating the wiring limit length occurs, it is necessary to perform the placement process again, which causes a problem that the man-hour increases.
【0004】本発明の目的は、配置処理の段階にて配線
制限を違反するネットを無くすための修正が可能な、レ
イアウト設計に要する工数を削減することができる配置
処理方式を提供することにある。An object of the present invention is to provide a layout processing method capable of reducing the number of man-hours required for layout design, which can be corrected at the stage of layout processing to eliminate nets that violate wiring restrictions. ..
【0005】[0005]
【課題を解決するための手段】本発明の配置処理方式
は、ゲートアレイLSIのレイアウト設計の配置処理方
式において、論理接続情報と下地情報とを入力し記憶
し、配線の混雑度を最小とするように全ブロックを初期
配置し、前記全ブロック相互間に複数個存在する論理的
に結線すべき複数の端子とこの端子間を結線する配線パ
ターンとの組を1つ1つのネットとし、前記ネットごと
に予め定める基準に従って前記端子間を結線する配線パ
ターンの長さに与える制限である配線制限長を入力し、
この入力した各ネットの配線制限長から前記ネットごと
に算出する仮想配線長との比較対象とする仮の配線制限
長である仮想配線制限長を予め定める基準に従って算出
し記憶し、前記ネットごとに前記仮想配線長を計算し記
憶し、前記ネットごとの仮想配線長が対応する仮想配線
制限長より長い制限を違反したネットである違反ネット
を選別して記憶し、前記違反ネットごとにこのネットを
構成する端子の属するブロックの少くとも1つを移動さ
せる移動位置を決定し、前記違反ネットを構成する端子
の属するブロックと移動先のブロックとの位置を交換
し、移動配置した後の仮想配線長を再計算し、記憶を更
新し、再度違反ネットを選別し、違反ネットがなくなる
まで改良配置する構成である。According to the layout processing method of the present invention, in the layout processing method of the layout design of the gate array LSI, the logical connection information and the background information are inputted and stored to minimize the congestion degree of the wiring. As described above, all the blocks are initially arranged, and a set of a plurality of terminals to be logically connected between the all blocks and a wiring pattern for connecting the terminals are set as one net. Enter the wiring limit length, which is the limit given to the length of the wiring pattern that connects the terminals according to a predetermined standard for each
The virtual wiring limit length, which is a temporary wiring limit length to be compared with the virtual wiring length calculated for each net from the input wiring limit length of each net, is calculated and stored according to a predetermined criterion, and for each net. The virtual wiring length is calculated and stored, and a violating net that is a net violating a limit in which the virtual wiring length of each net is longer than the corresponding virtual wiring limit length is selected and stored, and this net is stored for each violating net. A virtual wiring length after moving and deciding a moving position for moving at least one of the blocks to which the constituent terminals belong and exchanging the positions of the blocks to which the terminals constituting the violating net belong and the blocks to which the terminals belong Is recalculated, the memory is updated, the violating net is selected again, and the improved arrangement is performed until there is no violating net.
【0006】本発明の配置処理方式は、仮想配線制限長
として仮想配線長に“1”より小さい係数を乗じて算定
してもよい。In the placement processing method of the present invention, the virtual wiring length may be calculated by multiplying the virtual wiring length by a coefficient smaller than "1".
【0007】[0007]
【実施例】次に、本発明の実施例について図面を参照し
て説明する。Embodiments of the present invention will now be described with reference to the drawings.
【0008】図1は本発明の一実施例の処理手順の流れ
図である。FIG. 1 is a flow chart of a processing procedure according to an embodiment of the present invention.
【0009】最初に、ステップ(以下Sと記す)1でL
SIのレイアウト設計の配置処理を行うために、論理接
続情報と下地情報を入力し、記憶する。次に、S2でM
IN−CUT手法等を用いた処理によって配線混雑度を
最小とするように全ブロックを初期配置し、S3ブロッ
ク相互間に複数個存在する論理的に結線すべき複数の端
子とこの端子間を結線する配線パターンとの組を1つ1
つのネットとし、このネットごとに予め定める基準に従
って端子間を結線する配線パターンの長さに与える制限
である配線制限長を入力し、S4でこの入力した各ネッ
トの配線制限長からネットごとに算出する仮想配線長と
の比較対象とする仮の配線制限長である仮想配線制限長
を予め定める基準に従って算出し記憶し、S5で全ブロ
ックを配置した結果から全ネットに対してスタイナー木
を求めて仮想配線長を計算し、S6で先に記憶した各ネ
ットの仮想配線長を同様に先に記憶した各ネットの仮想
配線制限長と比較し、仮想配線長が仮想配線制限長をオ
ーバーしている違反ネットを記憶する。以下、S7で違
反ネットがあるか否かを判別し、違反ネットがなければ
このまま処理を終了するが、違反ネットがある場合は、
S8で先に記憶した違反ネットを1ネットずつ取り出
し、この取り出した違反ネットを構成する端子が属する
ブロック同士を、ネットの仮想配線長が該当する仮想配
線制限長以内になるまで移動させる移動先位置を決定
し、S9で違反ネットを構成する端子を含むブロックと
先に求めた移動先位置に置かれているブロックとを交換
する。このとき、移動先位置にブロックが置かれていな
い場合は、違反ネットを構成するブロックを移動先位置
に置く。次に、S10で先に配置位置を移動した全ブロ
ックに接続する全ネットの仮想配線長を、スタイナー木
を用いて再計算し、先に記憶した仮想配線長を更新す
る。さらに、S11で再計算したネットの仮想配線長
が、仮想配線制限長をオーバーするか否かを調べ、記憶
した違反ネットの情報を更新しS7に戻る。以下違反ネ
ットがなくなるまで上述の動作を繰返す。First, in step (hereinafter referred to as S) 1, L
The logical connection information and the background information are input and stored in order to perform the layout process of the SI layout design. Next, in S2, M
All blocks are initially placed by processing using the IN-CUT method or the like so as to minimize the degree of wiring congestion, and a plurality of logically connected terminals that exist between S3 blocks are connected to these terminals. One pair with the wiring pattern
One net is input, and a wiring limit length, which is a limit given to the length of the wiring pattern for connecting terminals according to a predetermined standard for each net, is input, and is calculated for each net from the input wiring limit length of each net in S4. The virtual wiring limit length, which is a temporary wiring limit length to be compared with the virtual wiring length, is calculated and stored according to a predetermined criterion, and the Steiner tree is obtained for all nets from the result of arranging all blocks in S5. The virtual wiring length is calculated, and the virtual wiring length of each net previously stored in S6 is compared with the virtual wiring limit length of each net also previously stored, and the virtual wiring length exceeds the virtual wiring limit length. Memorize the violation net. Hereinafter, in S7, it is determined whether or not there is a violating net. If there is no violating net, the process is terminated as it is.
The moving destination position where the violating nets previously stored in S8 are taken out one by one, and the blocks to which the terminals constituting the taken violating net belong are moved until the virtual wiring length of the net is within the corresponding virtual wiring limit length. Then, in step S9, the block including the terminal forming the violation net is exchanged with the block placed at the previously determined destination position. At this time, if the block is not placed at the movement destination position, the blocks forming the violation net are placed at the movement destination position. Next, in S10, the virtual wiring lengths of all the nets connected to all the blocks whose layout positions have been moved earlier are recalculated using the Steiner tree, and the previously stored virtual wiring lengths are updated. Further, it is checked whether or not the virtual wiring length of the net recalculated in S11 exceeds the virtual wiring limit length, the stored information of the violating net is updated, and the process returns to S7. The above operation is repeated until the violation net disappears.
【0010】図2は図1のS8で示す仮想配線長が仮想
配線制限長をオーバーする違反ネットに対して違反ネッ
トを構成する端子を含むブロックの配置位置を仮想配線
制限長以内に移動した場合の配置位置を示すイメージ図
である。FIG. 2 shows a case where the virtual wiring length indicated by S8 in FIG. 1 is moved within the virtual wiring length limit for a violation net whose virtual wiring length limit exceeds the virtual wiring length limit. It is an image diagram showing the arrangement position of.
【0011】ブロック1,2,3,4は、それぞれ端子
5,6,7,8,9を有し、配線パターン9を介して相
互に接続して1つのネット10を構成している。The blocks 1, 2, 3, 4 have terminals 5, 6, 7, 8, 9 respectively, and are connected to each other via a wiring pattern 9 to form one net 10.
【0012】図2分図(A)は、最初のブロック1,
2,3,4の配置結果ではネット10の仮想配線長が仮
想配線制限長をオーバーしている状態を示し、図2分図
(B)は、ブロック3,4を移動させ仮想配線長を仮想
配線制限長以内としたことを示している。FIG. 2 (A) shows the first block 1,
The placement results of 2, 3, and 4 show that the virtual wiring length of the net 10 exceeds the virtual wiring limit length. In FIG. 2B, the blocks 3 and 4 are moved to make the virtual wiring length virtual. This indicates that the wiring length is within the limit.
【0013】なお、仮想配線制限長の算出には、ブロッ
クの配置処理後の各ネットの仮想配線長が、端子間の配
線経路を最短経路としたときの配線長であり、この仮想
配線長より実際の配線パターンの配線長の方が、迂回等
で長くなることが多いため、余裕を見て“1”より小さ
い係数を乗じて算定する。このとき、仮想配線長の長短
で係数を変えておくことも可能である。To calculate the virtual wiring limit length, the virtual wiring length of each net after the block placement processing is the wiring length when the wiring route between terminals is the shortest route. Since the actual wiring length of the wiring pattern is often longer due to detours and the like, it is calculated by multiplying by a coefficient smaller than "1" while allowing for a margin. At this time, it is possible to change the coefficient depending on the length of the virtual wiring.
【0014】[0014]
【発明の効果】以上説明したように、本発明は、論理接
続情報と下地情報を入力し、配線の混雑度を最小とする
ように全ブロックを初期配置し、各ネットの配線制限長
を入力し、その入力した各ネットの配線制限長より各ネ
ットの仮想配線制限長を算出し、記憶し、ネットの仮想
配線長を計算し、各ネットの仮想配線長が各ネットの仮
想配線制限長より長い、違反ネットを構成するブロック
のみに着目し、違反ネットの仮想配線長を、仮想配線長
制限値以下になるように違反ネットを構成するブロック
と他のブロックの配置位置を交換し、違反ネットがなく
なるまで改良配置することにより、配置処理後の各ネッ
トの仮想配線長は各ネットの配線制限長以下であり、配
置処理の段階では配線長制限を違反するネットは存在せ
ず、迂回配線を防ぐように配線することにより、配置処
理の段階にて配線制限を違反するネットを無くすための
修正が可能となるととにレイアウト設計に要する工数を
削減することができるという効果が有る。As described above, according to the present invention, the logical connection information and the background information are input, all blocks are initially arranged so as to minimize the congestion degree of the wiring, and the wiring limit length of each net is input. Then, the virtual wiring limit length of each net is calculated from the input wiring limit length of each net, stored, the virtual wiring length of the net is calculated, and the virtual wiring length of each net is calculated from the virtual wiring limit length of each net. Focusing only on the blocks that make up the long violation net, swap the positions of the blocks that make up the violation net and other blocks so that the virtual wire length of the violation net is less than or equal to the virtual wire length limit value. By performing the improved placement until there is no longer, the virtual wiring length of each net after placement processing is less than the wiring limit length of each net, and there is no net that violates the wiring length limitation at the stage of placement processing, and bypass wiring is performed. Prevention By wiring so, advantageous effect is attained that it is possible to reduce the number of steps modifications required can become the bets on the layout design to eliminate the net that violates the routing restrictions at the stage of the placement process.
【図1】本発明の一実施例の処理手順の流れ図である。FIG. 1 is a flowchart of a processing procedure according to an embodiment of the present invention.
【図2】図1のS8で示す仮想配線長が仮想配線制限長
をオーバーする違反ネットに対して違反ネットを構成す
る端子を含むブロックの配置位置を仮想配線制限長以内
に移動した場合の配置位置を示すイメージ図である。FIG. 2 is a layout in which a virtual wiring length shown in S8 of FIG. 1 exceeds a virtual wiring limit length, and an arrangement position of a block including a terminal forming a violation net is moved within the virtual wiring limit length with respect to the violation net. It is an image figure which shows a position.
1,2,3,4 ブロック 5,6,7,8, 端子 9 配線パターン 10 ネット 1,2,3,4 block 5,6,7,8, terminal 9 wiring pattern 10 net
Claims (2)
配置処理方式において、論理接続情報と下地情報とを入
力し記憶し、配線の混雑度を最小とするように全ブロッ
クを初期配置し、前記全ブロック相互間に複数個存在す
る論理的に結線すべき複数の端子とこの端子間を結線す
る配線パターンとの組を1つ1つのネットとし、前記ネ
ットごとに予め定める基準に従って前記端子間を結線す
る配線パターンの長さに与える制限である配線制限長を
入力し、この入力した各ネットの配線制限長から前記ネ
ットごとに算出する仮想配線長との比較対象とする仮の
配線制限長である仮想配線制限長を予め定める基準に従
って算出し記憶し、前記ネットごとに前記仮想配線長を
計算し記憶し、前記ネットごとの仮想配線長が対応する
仮想配線制限長より長い制限を違反したネットである違
反ネットを選別して記憶し、前記違反ネットごとにこの
ネットを構成する端子の属するブロックの少くとも1つ
を移動させる移動位置を決定し、前記違反ネットを構成
する端子の属するブロックと移動先のブロックとの位置
を交換し、移動配置した後の仮想配線長を再計算し、記
憶を更新し、再度違反ネットを選別し、違反ネットがな
くなるまで改良配置することを特徴とする配置処理方
式。1. A layout processing method for layout design of a gate array LSI, wherein logical connection information and ground information are input and stored, and all blocks are initially arranged so as to minimize wiring congestion. Each net is made up of a set of a plurality of terminals which are logically connected to each other and a wiring pattern which connects between the terminals, and the terminals are connected according to a predetermined standard for each net. A virtual wiring length, which is a virtual wiring length to be compared with a virtual wiring length calculated for each net from the input wiring restriction length of the input net, is input. The wiring limit length is calculated and stored according to a predetermined standard, the virtual wiring length is calculated and stored for each net, and the virtual wiring length for each net is calculated from the corresponding virtual wiring length. A violating net that violates a long restriction is selected and stored, and a moving position for moving at least one of the blocks to which the terminals configuring the net belong is determined for each violating net to configure the violating net. Replace the position of the block to which the terminal belongs and the block of the move destination, recalculate the virtual wiring length after moving and arranging, update the memory, select the violating net again, and arrange again until the violating net disappears. An arrangement processing method characterized in that
り小さい係数を乗じて算定することを特徴とする請求項
1記載の配置処理方式。2. The placement processing method according to claim 1, wherein the virtual wiring limit length is calculated by multiplying the virtual wiring length by a coefficient smaller than “1”.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3256149A JPH0594497A (en) | 1991-10-03 | 1991-10-03 | Arrangement processing system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3256149A JPH0594497A (en) | 1991-10-03 | 1991-10-03 | Arrangement processing system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0594497A true JPH0594497A (en) | 1993-04-16 |
Family
ID=17288589
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3256149A Pending JPH0594497A (en) | 1991-10-03 | 1991-10-03 | Arrangement processing system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0594497A (en) |
-
1991
- 1991-10-03 JP JP3256149A patent/JPH0594497A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5225991A (en) | Optimized automated macro embedding for standard cell blocks | |
| JPH03173471A (en) | Wiring structure of master slice system lsi | |
| JP3529563B2 (en) | Semiconductor integrated circuit re-layout method and medium recording semiconductor integrated circuit re-layout program | |
| JPH07321211A (en) | Wiring method for semiconductor integrated circuit | |
| JPH05259287A (en) | Power wiring method for integrated circuits | |
| JP3256597B2 (en) | Automatic placement design method and automatic placement design apparatus | |
| JP3102365B2 (en) | Placement and wiring method | |
| JPH0594497A (en) | Arrangement processing system | |
| JPH04307672A (en) | Schematic wiring processing system | |
| JP4400428B2 (en) | Semiconductor integrated circuit design method, design apparatus and program | |
| JP2004039933A (en) | Mask design system, mask design method, and program for causing computer to execute mask design processing or layout design processing | |
| JPH1167923A (en) | Semiconductor integrated circuit, wiring arrangement method thereof, and recording medium recording the method | |
| JP3530025B2 (en) | Schematic wiring determination method and storage medium | |
| JPH04251961A (en) | Placement design system for circuit block by cad | |
| JP3368859B2 (en) | Scan path connection device | |
| JP2734180B2 (en) | Integrated circuit design method | |
| JPH05159025A (en) | Area division wiring method | |
| JP2580982B2 (en) | LSI power supply wiring layout system | |
| JP2848097B2 (en) | Layout design method | |
| JPH0964190A (en) | Automatic wiring method for macro circuitry of lsi of embedded array system | |
| JP4071546B2 (en) | Circuit design support apparatus and layout change method for semiconductor device | |
| JP2000322462A (en) | Automatic layout apparatus and semiconductor integrated circuit design method | |
| JP2786017B2 (en) | Method for manufacturing semiconductor integrated circuit | |
| JP2002151594A (en) | Semiconductor integrated circuit design method and semiconductor integrated circuit design support apparatus | |
| JP3165217B2 (en) | Layout design method and apparatus in semiconductor logic integrated circuit |