JPH0620010A - Method and device for automatic wiring - Google Patents

Method and device for automatic wiring

Info

Publication number
JPH0620010A
JPH0620010A JP4175254A JP17525492A JPH0620010A JP H0620010 A JPH0620010 A JP H0620010A JP 4175254 A JP4175254 A JP 4175254A JP 17525492 A JP17525492 A JP 17525492A JP H0620010 A JPH0620010 A JP H0620010A
Authority
JP
Japan
Prior art keywords
wiring
intersections
layer
layers
path
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
JP4175254A
Other languages
Japanese (ja)
Inventor
Hideki Mito
秀樹 三渡
Kaoru Kawamura
薫 河村
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4175254A priority Critical patent/JPH0620010A/en
Publication of JPH0620010A publication Critical patent/JPH0620010A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Internal Circuitry In Semiconductor Integrated Circuit Devices (AREA)

Abstract

PURPOSE:To attain the automatic wiring at a high speed and with high quality with an automatic wiring device/method which automatically design the wirings on a multi-layer printed board and an integrated circuit like an LSI, etc., with use of a computer. CONSTITUTION:An initializing part 11 sets the initial value of the load coefficient used for calculation of the wiring cost and the prescribed value used for decision of the cross number. A route searching part 12 searches where the cross is recognized between the different wirings of signals. Then a cross number processing part 13 and a load coefficient changing part 16 compares the largest cross number or the sum total of cross numbers with the prescribed value and change the load coefficient respectively. Thus the routes where the cross number is reduced are repetitively searched. Then a layer assigning part 17 assigns the wiring patterns having the crosses to other layers.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は,プリント基板上やLS
I等の集積回路上の配線を計算機を用いて自動設計する
自動配線装置および方法に関する。
BACKGROUND OF THE INVENTION The present invention is applicable to printed circuit boards and LSs.
The present invention relates to an automatic wiring device and method for automatically designing wiring on an integrated circuit such as I using a computer.

【0002】近年のプリント基板やLSI等の実装密度
の高密度化に伴い,DAシステムの高性能化が要求され
ている。レイアウト設計においても,超高密度基板の配
線処理において配線率の低下や処理時間の増大が問題に
なっている。
With the recent increase in the packaging density of printed circuit boards, LSIs, etc., higher performance of DA systems is required. Also in the layout design, the reduction of the wiring rate and the increase of the processing time have become problems in the wiring processing of the ultra high density substrate.

【0003】また,そのような基板を用いたシステムの
速度は速いことが要求されており,基板の配線パターン
上を通過する電気信号の伝搬時間が短くなることが要求
されている。そのため配線長が短いパターンやビア数が
少ないパターン等を効率よく自動配線する技術が要求さ
れている。
Further, a system using such a substrate is required to have a high speed, and a propagation time of an electric signal passing on a wiring pattern of the substrate is required to be shortened. Therefore, there is a demand for a technique for efficiently and automatically wiring a pattern having a short wiring length or a pattern having a small number of vias.

【0004】[0004]

【従来の技術】高い配線率を実現するための方式とし
て,例えば特開平1−137373号公報に示されてい
る「自動配線方式」がある。この方式では,配線途中に
おいて信号の異なるパターン間の交差を認め,次第に交
差数を減少させることにより,高い配線率を達成できる
ようにしている。
2. Description of the Related Art As a method for realizing a high wiring rate, for example, there is an "automatic wiring method" disclosed in JP-A-1-137373. In this method, it is possible to achieve a high wiring rate by recognizing intersections between patterns having different signals in the middle of wiring and gradually reducing the number of intersections.

【0005】すなわち,この方式では,配線パターンの
交差を認めて配線処理を行った後,この交差をなくすよ
うに繰り返し配線処理を行って,全体の配線コストを最
小限にすると共に,自動配線率を向上させることを目的
としている。すなわち,次のような構成を採用してい
る。
That is, in this method, after performing the wiring process by recognizing the crossing of the wiring patterns, the wiring process is repeatedly performed so as to eliminate the crossing, thereby minimizing the total wiring cost and reducing the automatic wiring rate. Is intended to improve. That is, the following configuration is adopted.

【0006】所定の負荷係数に対応する径路の交差を含
めた配線コストを算出し,その配線コストの小さい径路
を探索する。この径路探索によって探索された径路で交
差するネットがある場合,その旨を通知することによ
り,当初指定した負荷係数を変更し,その負荷係数に基
づいて配線コストを小さくする径路を繰り返し探索す
る。
The wiring cost including the intersection of the paths corresponding to the predetermined load coefficient is calculated, and the path with the smaller wiring cost is searched. If there is a net that intersects on the path searched by this path search, the fact that it is notified is changed, the initially specified load coefficient is changed, and a path that reduces the wiring cost is repeatedly searched based on the load coefficient.

【0007】[0007]

【発明が解決しようとする課題】上記「自動配線方式」
では,信号の異なる配線パターン間の交差を記録する必
要がある。そのため,特に多層基板を処理するときに
は,径路探索時に必要とされる一時的なデータ量が非常
に多くなる。したがって,多層基板を処理するときに
は,何層かを1組にして,それぞれの組ごとに処理を行
う方が現実的である。
[Problems to be Solved by the Invention] The above "automatic wiring system"
Then, it is necessary to record the intersection between wiring patterns with different signals. Therefore, especially when processing a multi-layer substrate, the amount of temporary data required during path search becomes very large. Therefore, when processing a multi-layer substrate, it is more realistic to make several layers into one set and perform the processing for each set.

【0008】しかし,このようにそれぞれの組毎に処理
すると,配線パターンの最適化はそれぞれの組にまとめ
た層の間でのみ行われるため,全層で配線パターンの質
を評価した場合,配線長やビア数について必ずしも最適
化が行われるとは限らないといった問題があった。
However, when the processing is performed for each set in this way, the optimization of the wiring pattern is performed only between the layers combined in each set. Therefore, when the quality of the wiring pattern is evaluated in all layers, There is a problem that the length and the number of vias are not always optimized.

【0009】また,上記「自動配線方式」は,他の自動
配線方式に比べて処理時間を要することが多く,特に,
層数が多い場合には処理すべき何層か毎の組が多くなる
ので,全層を処理するために必要となる処理時間も増え
ることになるという問題があった。
Further, the "automatic wiring system" often requires a processing time as compared with other automatic wiring systems, and in particular,
When the number of layers is large, there is a large number of sets for each layer to be processed, and there is a problem that the processing time required to process all layers also increases.

【0010】本発明は上記問題点の解決を図り,上記自
動配線方式をさらに改良することにより,多層基板の配
線に適した自動配線技術を提供することを目的とする。
It is an object of the present invention to solve the above problems and further improve the above automatic wiring system to provide an automatic wiring technique suitable for wiring a multilayer substrate.

【0011】[0011]

【課題を解決するための手段】図1は本発明の原理説明
図である。処理装置10は,CPUおよびメモリなどを
備え,層数および端子座標やネット情報を持つネットリ
ストを基に,配線区間の径路を決定する装置である。
FIG. 1 is a diagram for explaining the principle of the present invention. The processing device 10 is a device that includes a CPU, a memory, and the like, and determines the route of the wiring section based on the number of layers, terminal coordinates, and a netlist having net information.

【0012】初期化部11は,配線処理のための初期化
を行う処理手段であって,特に配線コストの計算に用い
る負荷係数の初期値および交差数の判定処理に用いる所
定値を設定する処理を行うものである。径路探索部12
は,設定された負荷係数に基づき,径路の交差を含む配
線のコストを算出し,この配線コストの小さい径路を探
索する処理手段である。
The initialization unit 11 is a processing means for performing initialization for wiring processing, and in particular, processing for setting an initial value of a load coefficient used for calculation of wiring cost and a predetermined value used for determination processing of the number of intersections. Is to do. Path search unit 12
Is a processing means for calculating the cost of the wiring including the intersection of the paths based on the set load coefficient and searching for the path with the smaller wiring cost.

【0013】交差数処理部13は,交差メッセージ送信
部14と交差数判定部15とからなる。交差メッセージ
送信部14は,径路探索部12によって探索された径路
において,異なるネット間で交差があれば,その交差数
の最大値または各層における交差数の最大値の総和を交
差数判定部15に伝える。交差数判定部15は,交差メ
ッセージ送信部14により伝えられた交差数の最大値ま
たは各層における交差数の最大値の総和が,初期化部1
1により設定された所定値と比較して小さい場合には,
得られた径路を層割付部17に送出する。また,大きい
場合には,負荷係数変更部16に交差数を伝えると共
に,径路探索部12に径路探索を行うように通知する。
The intersection number processing section 13 comprises an intersection message transmission section 14 and an intersection number determination section 15. If there is an intersection between different nets in the route searched by the route search unit 12, the intersection message transmission unit 14 sends the maximum value of the number of intersections or the sum of the maximum values of the number of intersections in each layer to the intersection number determination unit 15. Tell. The intersection number determination unit 15 determines whether the maximum value of the number of intersections transmitted by the intersection message transmission unit 14 or the sum of the maximum values of the number of intersections in each layer is the initialization unit 1
If it is smaller than the predetermined value set by 1,
The obtained path is sent to the layer allocator 17. When it is larger, the load coefficient changing unit 16 is notified of the number of intersections and the route searching unit 12 is notified to perform the route search.

【0014】負荷係数変更部16は,交差数の最大値ま
たは各層における交差数の最大値の総和が所定値より大
きい場合に,負荷係数を変更し,径路探索部12に通知
する処理手段である。
The load coefficient changing unit 16 is a processing means for changing the load coefficient and notifying the route searching unit 12 when the maximum value of the number of intersections or the sum of the maximum values of the number of intersections in each layer is larger than a predetermined value. .

【0015】層割付部17は,交差数の最大値または各
層における交差数の最大値の総和が所定値以下になった
ならば,交差があるネットの径路を他の各層に割り付け
る処理を行う処理手段である。
The layer allocating unit 17 performs a process of allocating a path of a net having an intersection to each of the other layers when the maximum value of the number of intersections or the total value of the maximum values of the number of intersections in each layer becomes equal to or less than a predetermined value. It is a means.

【0016】交差数処理部13の判定により,交差数の
最大値または各層における交差数の最大値の総和が所定
値以下になるまで負荷係数を変更して,径路探索部12
による径路探索を繰り返す。
By the judgment of the number-of-intersections processing unit 13, the load coefficient is changed until the maximum value of the number of intersections or the total of the maximum values of the number of intersections in each layer becomes equal to or less than a predetermined value.
Repeat the path search by.

【0017】これらは以下のように処理する。配線に使
用可能な層数がL(L≧3)であるとき,Lより小さい
nの層に対して,負荷係数変更部16により負荷係数を
変更しながら,信号の異なる配線パターン間の交差を認
めて,配線の径路を探索する。この探索によって得られ
た径路の各層における交差数の最大値をCi (i=1,
2,…,n)とするとき,これらの各最大値Ci が所定
値以下になるまで,径路探索部12による探索を繰り返
す。すなわち,所定値をVとすると,Ci ≦Vになるま
で配線の径路を探索する。
These are processed as follows. When the number of layers that can be used for wiring is L (L ≧ 3), the load coefficient changing unit 16 changes the load coefficient for an n layer smaller than L while crossing wiring patterns having different signals. Accept and search the path of the wiring. The maximum value of the number of intersections in each layer of the path obtained by this search is set to C i (i = 1,
2, ..., N), the search by the path search unit 12 is repeated until each of these maximum values C i becomes equal to or less than a predetermined value. That is, when the predetermined value is V, the wiring path is searched until C i ≤V.

【0018】また,最大値Ci が個別に所定値以下にな
るだけでなく,探索によって得られた径路の各層におけ
る交差数の最大値Ci の総和(C1 +C2 +…+Cn
が所定値以下になったかどうかを判定することにより,
その各層における交差数の最大値Ci の総和が所定値以
下になるまで,配線の径路を探索する処理を繰り返す。
こうして,配線に使用可能な全層数のうちの何層かに
おいて各層における交差数の最大値の総和が全層数以下
の値になるまで交差数を減少させ,その後に,配線に使
用しなかった残りの層に対し,交差のある配線パターン
を割り振ることにより,配線処理を完了する。
Further, not only the maximum values C i individually become equal to or less than a predetermined value, but also the total sum (C 1 + C 2 + ... + C n ) of the maximum values C i of the number of intersections in each layer of the path obtained by the search.
By determining whether is below a predetermined value,
The process of searching the wiring path is repeated until the total sum of the maximum values C i of the number of intersections in each layer becomes equal to or less than a predetermined value.
Thus, in some of the total number of layers that can be used for wiring, the number of intersections is reduced until the sum of the maximum number of intersections in each layer is less than or equal to the total number of layers, and then the wiring is not used. The wiring process is completed by allocating wiring patterns with intersections to the remaining layers.

【0019】[0019]

【作用】一般に,配線処理は配線が実行されるそれぞれ
の層を格子状に区切って行われる。最終的には,この格
子の中に一つの信号線の配線パターンしか置くことがで
きない。上記特開平1−137373号公報に示されて
いる「自動配線方式」では,配線の途中の過程において
異なる信号線の配線パターンの交差を認めている。した
がって,配線の途中の過程においては,ある層の一つの
格子には複数の信号線の配線パターンが存在することが
ある。このように一つの格子に存在する異なる信号線の
数を交差数と呼ぶ。
In general, the wiring process is performed by dividing each layer in which the wiring is executed into a grid pattern. Finally, only one signal line wiring pattern can be placed in this grid. In the "automatic wiring method" disclosed in Japanese Patent Laid-Open No. 1-137373, the intersection of wiring patterns of different signal lines is recognized in the course of wiring. Therefore, in the course of wiring, a wiring pattern of a plurality of signal lines may exist in one lattice of a certain layer. The number of different signal lines existing in one grid is called the number of intersections.

【0020】本発明では,配線すべき問題を全層数より
少ない層数で配線する。この配線処理において,例えば
各層における交差数の最大値の総和が全層数以下になる
まで,上記「自動配線方式」を適用する。そして,配線
処理時に対象としなかった残りの層に,可能な限り交差
のある配線パターンを割り振る。具体的には,以下のと
おりである。
In the present invention, the problem to be wired is wired with the number of layers smaller than the total number of layers. In this wiring process, the above-mentioned "automatic wiring method" is applied until the total sum of the maximum numbers of intersections in each layer becomes equal to or less than the total number of layers. Then, a wiring pattern having intersections as much as possible is assigned to the remaining layers that are not targeted during the wiring processing. Specifically, it is as follows.

【0021】与えられた配線問題に使用可能な層数をL
(L≧3),上記「自動配線方式」を適用する層数をn
(n=1,2,…;n<L)とする。上記「自動配線方
式」を適用する各層における交差数の最大値をCi (i
=1,2,…,n)とし,このCi が所定値V以下とな
るようにする。また,C1 +C2 +…+Cn ≦Lなる条
件を満たすまで,上記「自動配線方式」を実行する。こ
の後,交差の残っている(C1 +C2 +…+Cn −n)
本の配線パターンを,配線パターンが存在しない(L−
n)層に割り振っていき,最終的には全層において交差
のないパターンを得る。
Let L be the number of layers available for a given wiring problem.
(L ≧ 3), the number of layers to which the above “automatic wiring method” is applied is n
(N = 1, 2, ...; N <L). The maximum value of the number of intersections in each layer to which the above “automatic wiring method” is applied is C i (i
= 1, 2, ..., N) so that C i is equal to or less than a predetermined value V. Further, the above "automatic wiring method" is executed until the condition of C 1 + C 2 + ... + C n ≤L is satisfied. After this, the intersection remains (C 1 + C 2 + ... + C n −n)
The wiring pattern of the book does not exist (L-
n) Allocate to layers, and finally obtain a pattern without intersections in all layers.

【0022】以上のように,C1 +C2 +…+Cn ≦L
の条件を満たすまで配線パターンを最適化する。したが
って,単に配線問題を何層かの組に分けて,上記「自動
配線方式」を適用する場合と比較して,配線パターンは
全層にわたり,最適化されることになる。
As described above, C 1 + C 2 + ... + C n ≤L
The wiring pattern is optimized until the condition of is satisfied. Therefore, as compared with the case where the wiring problem is simply divided into several layers and the above-mentioned "automatic wiring method" is applied, the wiring pattern is optimized over all layers.

【0023】上記「自動配線方式」について,配線問題
を何層かの組に分けて適用する場合の処理時間を考え
る。組数をm,各組における層数をli (i=1,2,
…,m;但し,li ≧0,l1 +l2 +…+lm =L)
とする。このとき,ある組iを処理するのに要する時間
をti とすると,全層について配線を終了するのに要す
る時間はt1 +t2 +…+tm となる。一方,本発明に
よる処理時間をTとし,層数li として配線処理を行な
うと,T≦ti となる。したがって,T≦t1 +t2
…+tm となるから,本発明は処理時間の点でも有利で
ある。
Consider the processing time when the wiring problem is divided into several layers and applied to the above-mentioned "automatic wiring method". The number of sets is m, and the number of layers in each set is l i (i = 1, 2,
, M; provided that l i ≧ 0, l 1 + l 2 + ... + l m = L)
And At this time, if the time required to process a certain set i is t i , the time required to complete the wiring for all layers is t 1 + t 2 + ... + t m . On the other hand, when the processing time according to the present invention is T and the wiring process is performed with the number of layers l i , T ≦ t i . Therefore, T ≦ t 1 + t 2 +
.. + t m , the present invention is also advantageous in terms of processing time.

【0024】[0024]

【実施例】図2は,本発明の実施例処理フローチャート
である。以下,図2に示す処理〜に従って,図1に
示す各部の処理の例について説明する。
FIG. 2 is a processing flowchart of an embodiment of the present invention. Hereinafter, an example of the processing of each unit illustrated in FIG. 1 will be described in accordance with the processing illustrated in FIG.

【0025】 前処理では,初期化部11により,与
えられたネットリスト(端子情報やネット情報)を,径
路探索部12が処理する形式に変換したり,径路探索部
12が配線コストを計算するために用いる負荷係数の初
期化を行う。また,交差数判定部15で交差数との比較
に用いる値の設定も行う。
In the pre-processing, the initialization unit 11 converts the given netlist (terminal information or net information) into a format processed by the path search unit 12, or the path search unit 12 calculates the wiring cost. The load coefficient used for this purpose is initialized. Further, the intersection number determination unit 15 also sets a value used for comparison with the intersection number.

【0026】 径路探索部12により,現在設定され
ている負荷係数を用いて配線コストを算出し,この配線
コストが小さくなる径路を探索して生成する。 交差メッセージ送信部14により,径路探索部12
によって生成された径路において異なるネット間で交差
する交差数の最大値を求め,交差数判定部15に通知す
る。
The path searching unit 12 calculates the wiring cost by using the load coefficient currently set, and searches and generates the path in which the wiring cost becomes small. By the crossing message transmission unit 14, the path search unit 12
The maximum value of the number of intersections between different nets in the path generated by is obtained, and the number of intersections determination unit 15 is notified.

【0027】 交差数判定部15により,異なるネッ
ト間で交差する交差数の最大値が,所定の設定値以下で
あるかどうかを判定し,この条件が成立すれば,次の層
割付処理に移る。そうでない場合には,負荷係数変更
部16に交差数を伝え,再び径路探索処理を繰り返
す。
The intersection number determination unit 15 determines whether or not the maximum value of the number of intersections between different nets is less than or equal to a predetermined set value, and if this condition is satisfied, the process proceeds to the next layer allocation process. . If not, the load coefficient changing unit 16 is notified of the number of intersections, and the path search processing is repeated again.

【0028】 負荷係数変更部16により,交差数判
定部15から通知された交差数によって配線コストを算
出する基になる負荷係数(径路探索処理で用いる)を
変更するか否かを判定し,その負荷係数を必要に応じて
変更する。
The load coefficient changing unit 16 determines whether or not to change the load coefficient (used in the route search process) that is the basis for calculating the wiring cost according to the number of intersections notified from the intersection number determining unit 15, and Change the load factor as needed.

【0029】 層割付部17により,交差数判定部1
5から受け取った径路で交差があるネットの径路を各層
に割り付ける。割り付けた後で交差が残っていれば,そ
の層のデータを基に新しいネットリストを作成し,これ
を初期化部11に渡す。また,このとき改変したい層の
配線パターンデータとその層数も渡す。各層に配線パタ
ーンを割り付ける方法として,各層における交差数が均
等になるように割り付ける方法や,交差のない層の数を
最小にするといったような方法が考えられる。全ての層
において交差がなくなれば,次の処理である終了処理
へ移る。
By the layer allocating unit 17, the intersection number determining unit 1
Allocate the paths of the nets that have intersections in the paths received from 5 to each layer. If the intersection remains after the allocation, a new netlist is created based on the data of the layer and is passed to the initialization unit 11. At this time, the wiring pattern data of the layer to be modified and the number of layers are also passed. As a method of allocating a wiring pattern to each layer, a method of allocating so that the number of intersections in each layer is even, or a method of minimizing the number of layers without intersections can be considered. When there is no intersection in all layers, the next process is the ending process.

【0030】 終了処理では,得られた径路の情報を
取り出し,出力する。上記径路探索処理における探索
では,配線途中において信号の異なる配線パターン間の
交差を認める配線を行う。その処理では,例えば上記特
開平1−137373号公報に示されている「自動配線
方式」の技術を用いる。その具体的な処理内容を図3お
よび図4に示す例に従って説明する。
In the termination process, the obtained path information is extracted and output. In the search in the path search process, wiring is performed in the middle of the wiring in which the intersection between wiring patterns having different signals is recognized. In the processing, for example, the technique of "automatic wiring system" disclosed in the above-mentioned Japanese Patent Laid-Open No. 1-137373 is used. The specific processing contents will be described according to the examples shown in FIGS.

【0031】配線パターンの交差には,パターンが十字
状に交わる十字クロスと,径路が平行に重なったオーバ
ラップとがある。十字クロスは,一般には相手の端子を
迂回するなどしなければならないので,回避するのが難
しく,これに対しオーバラップは,いずれかの径路を平
行移動させることにより,容易に回避することができる
場合が多い。
The intersections of the wiring patterns include cross crosses in which the patterns intersect in a cross shape and overlaps in which the paths are overlapped in parallel. Cross cross is generally difficult to avoid because it must bypass the other terminal, while overlap can be easily avoided by translating any of the paths. In many cases.

【0032】図1に示す径路探索部12は,設定された
負荷係数のもとで,指定された端子座標間の配線(ネッ
ト)が最小の配線コストとなる径路を探索して求めるも
のであるが,この配線コストは,例えば次式に示すコス
ト関数fによって算出される。
The path searching unit 12 shown in FIG. 1 searches for a path in which the wiring (net) between designated terminal coordinates has the minimum wiring cost under the set load coefficient. However, this wiring cost is calculated by the cost function f shown in the following expression, for example.

【0033】f=α×配線長+β×ビア数+γ×十字ク
ロス数+δ×オーバラップ数 ここで,α,β,γ,δは,各要素に対する負荷係数を
表し,配線長はネットの総配線長さ(総径路長さ),ビ
ア数は配線層を変えるためのビアホールの数,十字クロ
ス数は径路が十字状に交差する数,オーバラップ数は径
路が平行に重なる数を表す。
F = α × wiring length + β × via number + γ × cross cross number + δ × overlap number where α, β, γ, and δ represent load factors for each element, and the wiring length is the total wiring of the net. The length (total path length), the number of vias is the number of via holes for changing the wiring layer, the number of crosses is the number of paths crossing in a cross, and the number of overlaps is the number of paths overlapping in parallel.

【0034】最初,十字クロスに対する負荷係数γを
0,オーバラップに対する負荷係数δを0に初期化し
て,交差を認めた態様で配線コストを最小とする径路を
探索する。
Initially, the load coefficient γ for the cross cross is initialized to 0 and the load coefficient δ for the overlap is initialized to 0, and a path that minimizes the wiring cost is searched for in a mode in which the cross is recognized.

【0035】例えば,図3の(イ)に示すように,端子
A−A,端子B−B,端子C−Cを結ぶ配線(ネット)
A ,WB ,WC をこの順序で行うものとする。負荷係
数をγ=0,δ=0として径路を探索し,上記コスト関
数fを計算して,配線コストの最小のものを見つける。
これにより,例えば図3の(ロ)に示すような配線パタ
ーンが得られる。ここでは,配線順序のためネットWA
が,ネットWB ,WCと十字クロスしており,ネットW
C が,ネットWB と十字クロスしているとみる。φは空
集合であって,十字クロスまたはオーバラップしている
ネットがないことを表している。
For example, as shown in FIG. 3A, wiring (net) connecting terminals AA, BB, and CC.
W A, W B, the W C shall be performed in this order. A path is searched with load factors γ = 0 and δ = 0, the above cost function f is calculated, and the minimum wiring cost is found.
As a result, for example, a wiring pattern as shown in FIG. 3B can be obtained. Here, because of the wiring order, the net W A
However, it crosses the nets W B and W C , and the net W
It is assumed that C crosses the net W B. φ is an empty set and represents that there are no crosses or overlapping nets.

【0036】この十字クロスをできるだけ回避するた
め,負荷係数γを正の値(例えばγ=1)に変更して,
同様に探索を繰り返す。これにより,図4の(イ)に示
すような配線パターンが得られる。この配線では,十字
クロスがなくなっているが,ネットWB がネットWA
オーバラップしている。
In order to avoid this cross as much as possible, the load coefficient γ is changed to a positive value (for example, γ = 1),
Similarly, the search is repeated. As a result, a wiring pattern as shown in FIG. 4A is obtained. In this wiring, the cross cross is eliminated, but the net W B overlaps with the net W A.

【0037】オーバラップを回避する径路探索を行うた
めに,さらに負荷係数をγ=1,δ=1とし,コスト関
数fに代入して,配線コストの小さい径路を探索する
と,例えば図4の(ロ)に示すような配線パターンが得
られることになる。
In order to perform a path search for avoiding overlap, further load coefficients are set to γ = 1 and δ = 1 and are substituted into the cost function f to search a path with a small wiring cost. A wiring pattern as shown in (b) is obtained.

【0038】図4の(ロ)に示すように,交差がない配
線パターンを求めることができれば問題はないが,一般
には交差が残ることになり,その交差をできるだけ少な
くするための径路探索には非常に長い処理時間を要する
ことになる。
As shown in FIG. 4B, there is no problem if a wiring pattern having no intersection can be obtained. However, in general, an intersection remains, and a path search for minimizing the intersection is possible. It takes a very long processing time.

【0039】本発明では,この処理を,層ごとの交差数
の最大値または各層における交差数の最大値の総和が所
定値より小さくなるまで行い,所定値より小さくなった
ならば,未使用層への割付処理に移るので,特に時間の
かかる探索処理部分の削減が可能になる。
In the present invention, this processing is performed until the maximum value of the number of intersections for each layer or the sum of the maximum values of the number of intersections in each layer becomes smaller than a predetermined value. Since it is shifted to the allocation processing to, it is possible to reduce the particularly time-consuming search processing part.

【0040】図5および図6は,本発明を全層4層の問
題に適用した例を示す配線例説明図である。図中の丸は
端子を表す。まず,全層4層のうち,第1層と第2層に
対して,上記径路探索により,交差を認めた配線を行
う。このとき,配線パターンの最適化ではそれぞれの層
における交差数の最大値の和が4になるまで処理するも
のとする。
FIGS. 5 and 6 are wiring example explanatory diagrams showing an example in which the present invention is applied to the problem of all four layers. Circles in the figure represent terminals. First, among the four layers of all layers, the wiring which has been recognized as intersecting is performed on the first layer and the second layer by the path search. At this time, the optimization of the wiring pattern is performed until the sum of the maximum values of the number of intersections in each layer becomes 4.

【0041】この結果が,図5の(イ)に示す配線パタ
ーンである。なお,同図において,実線の配線パターン
は,第1層における配線パターン,点線の配線パターン
は,第2層における配線パターンを表している。図中の
との箇所に交差が存在する。ここで,例えばP1と
P2の配線パターンを他の2層に割り振ることができれ
ば,配線が未結線なしで完了したことになる。
The result is the wiring pattern shown in FIG. In the figure, the solid line wiring pattern represents the wiring pattern in the first layer, and the dotted line wiring pattern represents the wiring pattern in the second layer. There is an intersection at and in the figure. Here, for example, if the wiring patterns of P1 and P2 can be allocated to the other two layers, it means that the wiring has been completed without any wiring.

【0042】そこで,図5の(イ)に示す配線パターン
P1,P2をそれぞれ第3層,第4層へ移す。これによ
り,第1層および第2層の配線パターンは,図5の
(ロ)に示すように,それぞれ交差がないものになる。
図6の(イ)は,この処理結果による第3層における配
線パターン,図6の(ロ)は,第4層における配線パタ
ーンを示している。
Therefore, the wiring patterns P1 and P2 shown in FIG. 5A are transferred to the third layer and the fourth layer, respectively. As a result, the wiring patterns of the first layer and the second layer have no intersection as shown in FIG. 5B.
FIG. 6A shows the wiring pattern in the third layer resulting from this processing, and FIG. 6B shows the wiring pattern in the fourth layer.

【0043】すなわち,図5の(ロ)および図6の
(イ),(ロ)に示したものが配線が完了した状態を示
している。全層のうちの何層かに配線した後,その各層
において他の残りの層に割り振る配線パターンは,例え
ば次のような手順で選ぶ。
That is, (B) of FIG. 5 and (A) and (B) of FIG. 6 show the state where the wiring is completed. The wiring pattern to be assigned to the other remaining layers in each layer after wiring to some of the layers is selected by the following procedure, for example.

【0044】(1) 配線パターンが交差するネットの中で
端子数が最小のものを選ぶ。 (2) 端子数が最小のものが複数ある場合には,線長が最
小のものを選ぶ。 (3) 線長が最小のものが複数ある場合には,端子の座標
が原点に一番近いものを選ぶ。または,x座標が最小,
y座標が最小のものといった条件を用いて選ぶことが考
えられる。
(1) Select the net having the smallest number of terminals among the nets where the wiring patterns intersect. (2) If there are multiple terminals with the smallest number of terminals, select the one with the smallest wire length. (3) If there are multiple wires with the smallest wire length, select the one with the terminal coordinates closest to the origin. Or the x coordinate is the minimum,
It is conceivable to select using the condition that the y coordinate is the smallest.

【0045】図5の(イ)に示す例では,で交差する
配線パターンについてP1の配線パターンが,上記条件
(1) に該当するので選択される。また,で交差する配
線パターンについては,交差するパターンがともに上記
条件(1) を満たすので,次の条件(2) が調べられ,これ
によりP2の配線パターンが選択される。
In the example shown in FIG. 5A, the wiring pattern of P1 is the above
It is selected because it corresponds to (1). As for the wiring patterns intersecting with each other, since both the intersecting patterns satisfy the above condition (1), the following condition (2) is examined, and the wiring pattern of P2 is selected.

【0046】[0046]

【発明の効果】以上説明したように,本発明によれば,
超高密度多層プリント基板等を自動配線するにあたっ
て,従来方式により数層ずつ処理する場合に比べて,高
速かつ高品質な配線を行うことが可能になる。
As described above, according to the present invention,
When automatically wiring ultra-high-density multilayer printed circuit boards, etc., it is possible to perform high-speed and high-quality wiring compared to the conventional method of processing several layers at a time.

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

【図1】本発明の原理説明図である。FIG. 1 is a diagram illustrating the principle of the present invention.

【図2】本発明の実施例処理フローチャートである。FIG. 2 is a processing flowchart of an embodiment of the present invention.

【図3】本発明の実施例に係る径路探索説明図である。FIG. 3 is an explanatory diagram of a path search according to the embodiment of the present invention.

【図4】本発明の実施例に係る径路探索説明図である。FIG. 4 is an explanatory diagram of a path search according to the embodiment of the present invention.

【図5】本発明の実施例に係る配線例説明図である。FIG. 5 is an explanatory diagram of a wiring example according to the embodiment of the present invention.

【図6】本発明の実施例に係る配線例説明図である。FIG. 6 is an explanatory diagram of a wiring example according to the embodiment of the present invention.

【符号の説明】[Explanation of symbols]

10 処理装置 11 初期化部 12 径路探索部 13 交差数処理部 14 交差メッセージ送信部 15 交差数判定部 16 負荷係数変更部 17 層割付部 DESCRIPTION OF SYMBOLS 10 processor 11 initialization part 12 path search part 13 crossing number processing part 14 crossing message transmitting part 15 crossing number judging part 16 load factor changing part 17 layer allocation part

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 計算機によって配線区間の径路を決定す
る自動配線装置において, 配線コストの計算に用いる負荷係数の初期値および交差
数の判定処理に用いる所定値を設定する初期化部(11)
と, 設定された負荷係数に基づき,径路の交差を含む配線の
コストを算出し,この配線コストの小さい径路を探索す
る径路探索部(12)と, 前記径路探索部によって探索された径路において,異な
るネット間で交差がある場合に,その交差数の最大値ま
たは各層における交差数の最大値の総和と前記初期化部
により設定した交差数の判定処理に用いる所定値とを比
較する交差数処理部(13)と, 交差数の最大値または各層における交差数の最大値の総
和が所定値より大きい場合に,負荷係数を変更し,前記
径路探索部に通知する負荷係数変更部(16)と, 交差数の最大値または各層における交差数の最大値の総
和が所定値以下になったならば,交差があるネットの径
路を他の各層に割り付ける処理を行う層割付部(17)とを
備え, 交差数の最大値または各層における交差数の最大値の総
和が所定値以下になるまで負荷係数を変更して,前記径
路探索部による径路探索を繰り返すようにしたことを特
徴とする自動配線装置。
1. An automatic wiring apparatus for determining a route of a wiring section by a computer, wherein an initialization unit (11) for setting an initial value of a load coefficient used for calculation of a wiring cost and a predetermined value used for determining the number of intersections.
Based on the set load coefficient, the cost of the wiring including the intersection of the routes is calculated, and the route search unit (12) that searches for the route with the smaller wiring cost, and the route searched by the route search unit. When there is an intersection between different nets, the intersection number processing for comparing the maximum value of the number of intersections or the sum of the maximum values of the number of intersections in each layer with a predetermined value used for the determination processing of the number of intersections set by the initialization unit Section (13) and a load coefficient changing section (16) for changing the load coefficient and notifying the path search section when the maximum value of the number of intersections or the sum of the maximum values of the number of intersections in each layer is larger than a predetermined value. A layer allocation unit (17) that performs processing for allocating the path of a net having an intersection to each other layer if the maximum value of the number of intersections or the maximum value of the number of intersections in each layer becomes less than a predetermined value. , Maximum number of intersections or The sum of the maximum value of the number of intersections in the layers by changing the load factor decreased below a predetermined value, an automatic wiring device which is characterized in that so as to repeat the path search by the route search unit.
【請求項2】 3以上の層に対して計算機により配線を
行う自動配線方法において, 配線に使用可能な層数がL(L≧3)であるとき,Lよ
り小さいnの層に対して,信号の異なる配線パターン間
の交差を認めた状態での配線パターンの径路を探索する
処理過程と, 探索によって得られた径路の各層における交差数の最大
値をCi (i=1,2,…,n)とするとき,これらの
各最大値Ci が所定値以下になったかどうかを判定する
処理過程とを有し, 各層における交差数の最大値Ci が所定値以下になるま
で,配線の径路を探索する処理を繰り返すことを特徴と
する自動配線方法。
2. An automatic wiring method in which wiring is carried out by a computer for three or more layers, and when the number of layers usable for wiring is L (L ≧ 3), for n layers smaller than L, The process of searching the path of the wiring pattern in the state where the intersection between the wiring patterns having different signals is recognized, and the maximum value of the number of intersections in each layer of the path obtained by the search is C i (i = 1, 2, ... , N), a process of determining whether or not each of these maximum values C i has become a predetermined value or less, and wiring until the maximum value C i of the number of intersections in each layer becomes a predetermined value or less. An automatic wiring method characterized in that the process of searching the path of is repeated.
【請求項3】 3以上の層に対して計算機により配線を
行う自動配線方法において, 配線に使用可能な層数がL(L≧3)であるとき,Lよ
り小さいnの層に対して,信号の異なる配線パターン間
の交差を認めた状態での配線パターンの径路を探索する
処理過程と, 探索によって得られた径路の各層における交差数の最大
値をCi (i=1,2,…,n)とするとき,これらの
各最大値Ci の総和(C1 +C2 +…+Cn )が所定値
以下になったかどうかを判定する処理過程とを有し, 各層における交差数の最大値Ci の総和が所定値以下に
なるまで,配線の径路を探索する処理を繰り返すことを
特徴とする自動配線方法。
3. An automatic wiring method in which wiring is performed for three or more layers by a computer, and when the number of layers usable for wiring is L (L ≧ 3), for n layers smaller than L, The process of searching the path of the wiring pattern in the state where the intersection between the wiring patterns having different signals is recognized, and the maximum value of the number of intersections in each layer of the path obtained by the search is C i (i = 1, 2, ... , N), a process of determining whether the sum (C 1 + C 2 + ... + C n ) of the respective maximum values C i is less than or equal to a predetermined value, and the maximum number of intersections in each layer. An automatic wiring method, characterized in that the process of searching a wiring path is repeated until the total sum of the values C i becomes a predetermined value or less.
【請求項4】 請求項2または請求項3記載の自動配線
方法において, 配線に使用可能な全層数のうちの何層かにおいて各層に
おける交差数の最大値の総和が全層数以下の値になるま
で交差数を減少させ, その後に,配線に使用しなかった残りの層に対し,交差
のある配線パターンを割り振ることにより,配線処理を
完了することを特徴とする自動配線方法。
4. The automatic wiring method according to claim 2 or 3, wherein the sum of the maximum values of the number of intersections in each layer is less than or equal to the total number of layers in some of the total number of layers that can be used for wiring. The automatic wiring method is characterized in that the wiring process is completed by reducing the number of crossing until the number becomes, and then allocating the wiring pattern having the crossing to the remaining layers not used for wiring.
JP4175254A 1992-07-02 1992-07-02 Method and device for automatic wiring Withdrawn JPH0620010A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4175254A JPH0620010A (en) 1992-07-02 1992-07-02 Method and device for automatic wiring

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4175254A JPH0620010A (en) 1992-07-02 1992-07-02 Method and device for automatic wiring

Publications (1)

Publication Number Publication Date
JPH0620010A true JPH0620010A (en) 1994-01-28

Family

ID=15992952

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4175254A Withdrawn JPH0620010A (en) 1992-07-02 1992-07-02 Method and device for automatic wiring

Country Status (1)

Country Link
JP (1) JPH0620010A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009301351A (en) * 2008-06-13 2009-12-24 Fujitsu Ltd Design support program, design support device, and design support method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009301351A (en) * 2008-06-13 2009-12-24 Fujitsu Ltd Design support program, design support device, and design support method

Similar Documents

Publication Publication Date Title
JP3737104B2 (en) Timing driven method of placing user circuitry in a programmable integrated circuit device
US6792582B1 (en) Concurrent logical and physical construction of voltage islands for mixed supply voltage designs
JP3548070B2 (en) Method and apparatus for automatically generating a multi-terminal net and program storage medium storing a program for executing the method for automatically generating a multi-terminal net
US5880970A (en) Towards optimal Steiner tree routing in the presence of rectilinear obstacles
US4615011A (en) Iterative method for establishing connections and resulting product
EP0067304A2 (en) Processing array and method for the physical design of very large scale integrated circuits
JPH10313058A (en) Semiconductor integrated circuit designing device and method therefor and computer readable recording medium for recording semiconductor integrated circuit design program and manufacture of the same circuit
EP0612023B1 (en) Net diagram routing method
US6480996B1 (en) System and method for transposing wires in a circuit design
JP3424997B2 (en) Circuit design equipment
US5770481A (en) Wiring designing apparatus for automatically designing layout of integrated circuit and wiring designing method therefor
JP2001338006A (en) Method for supporting logic automatic design and device for the same
US6487707B1 (en) Layout design system of semiconductor ic device, layout design method of semiconductor ic device and computer-readable recording medium on which programs for allowing computer to execute respective means in the system or respective steps in the method are recorded
US6615401B1 (en) Blocked net buffer insertion
Kubo et al. Global routing by iterative improvements for two-layer ball grid array packages
JPH0620010A (en) Method and device for automatic wiring
US6266802B1 (en) Detailed grid point layout using a massively parallel logic including an emulator/simulator paradigm
JP3229235B2 (en) Wiring shaping method and apparatus, prohibited area radius determining method and apparatus
Tomioka et al. Routability driven modification method of monotonic via assignment for 2-layer ball grid array packages
JP2001350813A (en) Automatic wiring method and device therefor
US6721931B2 (en) System and method for simplifying clock construction and analysis
JPH0951037A (en) Wiring method for semiconductor integrated circuit and semiconductor integrated circuit
JP3123387B2 (en) Wiring pattern determination method
JPH06349947A (en) Mask pattern designing method and device of semiconductor integrated circuit device
JPH06266801A (en) Logical synthesis method considering floor plan

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: 19991005