JPH04113473A - Method and device for wiring between elements - Google Patents
Method and device for wiring between elementsInfo
- Publication number
- JPH04113473A JPH04113473A JP2232325A JP23232590A JPH04113473A JP H04113473 A JPH04113473 A JP H04113473A JP 2232325 A JP2232325 A JP 2232325A JP 23232590 A JP23232590 A JP 23232590A JP H04113473 A JPH04113473 A JP H04113473A
- Authority
- JP
- Japan
- Prior art keywords
- wiring
- grid
- lattice
- small
- divided
- 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
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、LSIやプリント基板における相関関係を有
する複数の回路モジュールや回路素子の端子間を配線す
るための素子間配線方法及び装置に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an inter-element wiring method and device for wiring between terminals of a plurality of circuit modules or circuit elements having a correlation in an LSI or a printed circuit board.
従来における素子間の配線方法の中で最も強力なものは
、り一著[パス接続アルゴリズムとその応用J (C,
Y、Lee:、An Algorithm for P
ath Connectionand Its App
lications、IRE Trans、vol、
EC−10,pp。The most powerful conventional wiring method between elements is the one written by Riichi [Path Connection Algorithm and Its Applications J (C,
Y, Lee:, An Algorithm for P
ath Connection and Its App
lications, IRE Trans, vol.
EC-10, pp.
356−365(1961)、)に記述されている迷路
法と呼ばれている方法である。この方法は、1素子毎に
、始点から終点へ経路探索しマーク付けする前進探索、
終点から始点へバックトレースする後退探索、マークク
リアという3段階の4処理からなる。この方法、の特徴
は、対象とする素子間の配線経路が存在すれば必ず求ま
るという点である。しかしこの迷路法の初期のものは逐
次処理を対象にした方法であったため、計算時間がかか
り、大規模な問題に対しては使用するメモリ量が多すぎ
、適用することが困難であった。これらの問題点を克服
するために、(1)始点終点同時に経路探索を行う方法
、(2)配線領域公開による並列化、(3)ピンペアグ
ループ分けによる並列化、(4)前進探索に置けるウェ
ーブフロン1〜」二の経路探索の並列化等の試みがなさ
れてきた。(1)に属する方法としては、J、5ouk
up。356-365 (1961), called the maze method. This method is a forward search that searches and marks a route from the starting point to the ending point for each element.
It consists of four processes in three stages: backward search for backtracing from the end point to the start point, and mark clearing. The feature of this method is that it can always be found if there is a wiring route between the target elements. However, since the early versions of this maze method were designed for sequential processing, they took a lot of calculation time and required too much memory to solve large-scale problems, making them difficult to apply. In order to overcome these problems, we proposed (1) a method to search for routes at the start and end points simultaneously, (2) parallelization by exposing wiring areas, (3) parallelization by grouping pin pairs, and (4) a method for forward search. Attempts have been made to parallelize the route searches for wave flons 1 to 2. As a method belonging to (1), J, 5ouk
up.
”GLOBAL ROUTER” (J、of Di
gj、tal Systems、IV、1゜pp、59
−69.1980.及び浅野哲夫、′並列グローバル・
ルータ” (情処学論、 23,4.pp、443−4
50.1982−07)に示されたものがある。(2)
に属する方法としては、上記J、5oukupの論文に
示されたものがある。“GLOBAL ROUTER” (J, of Di
gj, tal Systems, IV, 1°pp, 59
-69.1980. and Tetsuo Asano, ``Parallel global
Router” (Information Processing Theory, 23, 4.pp, 443-4
50.1982-07). (2)
As a method belonging to this category, there is the method shown in the above-mentioned paper by J. 5oukup.
(3)に属する方法としては、進藤達也他2名、並列配
線法″(昭和60信学会情報・システム部門全天、53
−2.) 、緑用博子他2名、″画像処理システムTI
P−3での配線処理″(昭60信学会情報・システム部
門全天、)、及び緑用博子他2名、“TIP−3におけ
る並列配線” (昭61前情処前大、3Ll−6,)に
示されたものがある。(4)に属する方法としては、橘
昌良他4名、″並列ルーティングプロセッサの試作研究
″(情処学論、27,6+pp。As for the method belonging to (3), Tatsuya Shindo et al.
-2. ), Hiroko Midoriyo and 2 others, ``Image Processing System TI
"Wiring Processing in TIP-3" (1980, IEICE Information and Systems Division, Zenten), and Hiroko Midoriyo and two others, "Parallel Wiring in TIP-3" (1988, Maejo-dokoro Maeda University, 3Ll-6) , ).The methods belonging to (4) include Masayoshi Tachibana and four others, "Prototype Research on Parallel Routing Processors" (Information Processing Theory, 27, 6+pp.
639−647.1986−06)、に、5uzuki
、et al、、”A HardwareMaze
Router with Appl]catj、o
n to Interactj、veRip−Up
and Reroute”(IEEE Trans、
Comput、−Aj、dedDes、Integra
ted Cj、rcuits & 5yst、、CAD
−5,4,pp。639-647.1986-06), 5uzuki
,et al,,”A HardwareMaze
Router with Appl] catj, o
n to Interactj, veRip-Up
and Reroute” (IEEE Trans,
Compute, -Aj, dedDes, Integra
ted Cj, rcuits & 5yst, CAD
-5,4,pp.
466−476.1986−10) +及び特開昭63
−15367号に示されたものがある。これらの中で最
も並列度の高いものは(2)の領域分割による並列配線
方法である。466-476.1986-10) + and JP-A-63
There is one shown in No.-15367. Among these, the one with the highest degree of parallelism is the parallel wiring method using area division (2).
そのほかに、大規模な配線処理を複数のプロセッサを用
いて行うために、配線領域を分割し、分割された各領域
にプロセッサを割り当て個々の領域に関して独立に配線
を行う方法が提案されており、特開昭61−12504
2号、特開昭62−23130号、特開昭62−115
574号に示されたものがある。In addition, in order to perform large-scale wiring processing using multiple processors, a method has been proposed in which the wiring area is divided, a processor is assigned to each divided area, and each area is independently routed. Japanese Patent Publication No. 61-12504
No. 2, JP-A-62-23130, JP-A-62-115
There is one shown in No. 574.
上記の領域分割型配線方法に関する従来技術には、次の
問題点がある。(1)領域を分割して並列に各領域を配
線する場合、配線経路が各領域にまたがるようなものは
求まらない可能性がある。(2)配線経路は、配線する
面上に格子(配線の幅はその辺より小とする)を設定し
、隣接する格子を順次つないで形成されるが、従来技術
ではこの各格子を処理の単位としているので、大規模問
題に適用する場合メモリが不足することがある。The conventional technology related to the area-divided wiring method described above has the following problems. (1) When dividing a region and wiring each region in parallel, it may not be possible to find a wiring route that spans each region. (2) Wiring routes are formed by setting a grid on the surface to be wired (the width of the wiring is smaller than the side) and sequentially connecting adjacent grids, but in conventional technology, each grid is processed. Since it is a unit, there may be a memory shortage when applying it to large-scale problems.
本発明の目的は、配線領域を分割しても素子間の配線経
路が存在すれば必ずそれを見つけることができ、大規模
な問題に対してもメモリの節約ができる素子間配線方法
及びこの方法を用いた素子間配線装置を提供することに
ある。An object of the present invention is to provide an inter-element wiring method that can always find wiring paths between elements if they exist even if the wiring area is divided, and that can save memory even in large-scale problems. An object of the present invention is to provide an inter-element wiring device using the above.
上記の目的は、配線領域を分割し、分割した領域毎に、
他分割領域との境界上にある境界格子で既に配線に用い
られたものあるいは配線が禁止されたちの以外の配線可
能境界格子を取り出し、それらを隣接関係によって配線
可能境界格子群に分割し、さらに当該分割領域内の配線
可能格子で上記配線可能境界格子群に隣接するものを付
加し、さらにその結果得られた各格子群に上記配線可能
格子で隣接するものを付加するという処理を各格子溝同
時に繰り返すことにより当該分割領域を小領域に分割し
、次にこの小領域の各々を節点とし、小領域間に隣接関
係があればその小領域対応の点の間に枝を有するグラフ
を作成する。そして接続すべき2つの素子(各々1つの
格子で代表)が分割された小領域のどれに含まれている
かを判定し、それらの小領域間の経路を上記グラフの接
続関係から探索して概略配線経路とし、最後にこの概略
配線経路上にある各小領域単位に並列に詳細配線を施す
ことによって達成される。The above purpose is to divide the wiring area, and for each divided area,
Extract the routable boundary lattices on the boundary with other divided areas other than those already used for wiring or those for which wiring is prohibited, divide them into groups of routable boundary lattices based on adjacency relationships, and further A process of adding a routable lattice in the divided region adjacent to the routable boundary lattice group, and then adding an adjacent routable lattice to each resulting lattice group is performed for each lattice groove. By repeating the process simultaneously, the divided area is divided into small areas, each of these small areas is then set as a node, and if there is an adjacency relationship between the small areas, a graph with branches between the points corresponding to the small areas is created. . Then, it is determined in which of the divided small regions the two elements to be connected (each represented by one grid) is included, and the path between these small regions is searched from the connection relationship in the graph above and summarized. This is achieved by creating a wiring route and finally performing detailed wiring in parallel in each small area on this general wiring route.
最初に素子間配線装置は、設計データ入力部から配線領
域の概略や禁止領域、配線可能領域などの配線状況情報
、そしてどの素子とどの素子を結線するのかを示した接
続要求情報を格子の状況、接続関係の情報として入力し
ておく。次に予め指定された分割数に配線領域を分割し
、各分割領域毎に並列処理を行えば各処理を行うプロセ
ッサのメモリは小さくてよく、並列化による高速化もは
かれる。続いて各分割領域毎に、前記入力を用いて担当
プロセッサが境界格子を配線可能境界格子群へ分割する
と、その各格子群毎にプロセッサを割り当てて小領域へ
の配線可能格子の分割が行え、またその分割処理に伴っ
て小領域毎の隣接関係が分かるので、それを用いて前述
のグラフを作成できる。このようにして作成されたグラ
フを用いて概略配線経路を求めれば、それは小領域を単
位とする経路探索であって、通常小領域の個数は格子の
数よりもずっと少ないから経路探索は高速に小メモリ容
量を用いて実行できる。こうして得た概略配線経路の各
小領域内での格子単位の経路決定は従来技術で行え、こ
れを各小領域で並列実行すれば、この処理も小容量メモ
リで高速に実行できる。しかも本方法によれば、接続し
ようとする素子間に経路が存在するならば、必ず概略経
路が見つかり、従って必ず配線経路が求められる。First, the inter-element wiring device inputs wiring status information such as the outline of the wiring area, prohibited areas, and possible wiring areas, and connection request information indicating which elements are to be connected to each other from the design data input section. , input as connection-related information. Next, if the wiring area is divided into a predetermined number of divisions and parallel processing is performed for each divided area, the memory of the processor that performs each process may be small, and the speed can be increased by parallelization. Then, for each divided area, the processor in charge uses the input to divide the boundary lattice into a group of routable boundary lattices, and then assigns a processor to each group of lattices to divide the routable lattice into small areas; Furthermore, since the adjacency relationship for each small region can be determined through the division process, the above-mentioned graph can be created using this information. If a rough wiring route is found using the graph created in this way, it is a route search that uses small areas as units, and the number of small areas is usually much smaller than the number of grids, so the route search is faster. Can be executed using small memory capacity. The route determination for each grid within each small area of the thus obtained general wiring route can be performed using conventional techniques, and if this is executed in parallel in each small area, this process can also be executed at high speed with a small capacity memory. Moreover, according to this method, if a path exists between elements to be connected, a rough path is always found, and therefore a wiring path is always found.
以下、本発明の一実施例を図面を用いて説明する。第1
図は、本発明による素子間配線装置の機能構成の一実施
例を示したブロック図、第2図は同装置のハードウェア
構成を示すブロック図である。第2図において、CPU
21は全体の動作を統括する処理装置、プロセッサ(P
E)22a〜22d、23a〜23hは各処理段階で並
列処理を行う処理装置で、これらは階層的に接続され、
各共有メモリ20.24a〜24d、25と接続されて
いる。An embodiment of the present invention will be described below with reference to the drawings. 1st
The figure is a block diagram showing an embodiment of the functional configuration of an inter-element wiring device according to the present invention, and FIG. 2 is a block diagram showing the hardware configuration of the device. In Figure 2, the CPU
21 is a processing unit that controls the entire operation, a processor (P
E) 22a to 22d and 23a to 23h are processing devices that perform parallel processing at each processing stage, and these are connected hierarchically.
Each shared memory 20.24a-24d, 25 is connected.
以下、第1図を中心に各処理部10.12〜16を順次
説明する。まず第1図の設計データ入力部10から配線
領域の既配線領域や禁止領域、配線可能領域などの配線
状況情報、そしてどの素子とどの素子を結線するのかを
示した接続要求情報を本装置11へ入力し、これを配線
状況テーブル及び配線テーブルとして共有メモリ25へ
設定する。ここで配線領域第3図に示すように多数の格
子(小さい四角形)に分けて管理するものとし、既配線
かまたは配線が禁止されている格子は斜線を付したもの
とする。これに対応した、前記の配線状況テーブルは、
第4図(a)に示したように、第3図の各格子に番号を
つけておき、その番号毎に状態フラグを対応させたもの
である。そして状態フラグは、当該格子が配線に既使用
か禁止されているか(第3図斜線のついた格子)、それ
以外の配線可能格子かを示すものとする。また配線要求
テーブルは、第4図(b)に示すように、接続する配線
を信号で表し、その配線の両端の格子番号(ここに素子
が配置される)を対応させたものである。なおこれらテ
ーブルは初期設定時から、配線が決定される毎に使用格
子が既使用へ、当該配線要求がすみ(または削除)の状
態に更新される。Hereinafter, each processing section 10.12 to 16 will be sequentially explained with reference to FIG. First, from the design data input unit 10 shown in FIG. 1, wiring status information such as already wired areas, prohibited areas, and possible wiring areas in the wiring area, and connection request information indicating which elements are to be connected are sent to the device 11. and set it in the shared memory 25 as a wiring status table and a wiring table. Here, as shown in FIG. 3, the wiring area is managed by dividing it into a large number of grids (small squares), and the grids that are already wired or where wiring is prohibited are marked with diagonal lines. The above wiring status table corresponding to this is
As shown in FIG. 4(a), each grid in FIG. 3 is numbered, and a status flag is associated with each number. The status flag indicates whether the grid in question is already used for wiring, is prohibited (hatched grid in FIG. 3), or is a grid in which other wiring is possible. The wiring request table, as shown in FIG. 4(b), represents the wiring to be connected as a signal and associates the grid numbers at both ends of the wiring (where elements are placed). Note that these tables are updated from the time of initial setting to a state where the used grid is changed to already used and the relevant wiring request is completed (or deleted) every time wiring is determined.
以上の各テーブルへの入力が終わると、本装置11の配
線領域分割部12が起動し、第5図に示すように、配線
領域30を分割(こごでは4等分)し、分割領域31a
〜31dとする。この場合、分割領域間は1格子幅の共
通の境界領域32と考え、この境界領域はその境界の両
側の分割領域に含まれるものとする。従って分割領域3
1a〜31dは第6図に示すように隣接領域との共通の
境界領域を持っている。When the input to each of the above tables is completed, the wiring area dividing section 12 of the device 11 is started, and as shown in FIG.
~31d. In this case, the divided regions are considered to be a common boundary region 32 of one grid width, and this boundary region is included in the divided regions on both sides of the boundary. Therefore, divided area 3
1a to 31d have a common boundary area with adjacent areas as shown in FIG.
この分割が終わると、各分割領域31a〜31dに第2
図のプロセッサ22a〜22dを割り付け、かつ各分割
領域に含まれる格子点についての配線状況テーブル及び
配線要求テーブルの内容を、それぞれ共有メモリ24a
〜24dヘロードする。ここで分割領域の数とCPU2
1の下のプロセッサの数は等しく4個としたが、プロセ
ッサ数が小さいと・きはその分を時分割処理し、論理的
に第2図の構成となるようにすればよい。When this division is completed, each divided area 31a to 31d has a second
The processors 22a to 22d shown in the figure are allocated, and the contents of the wiring status table and wiring request table for the grid points included in each divided area are stored in the shared memory 24a, respectively.
Load to ~24d. Here, the number of divided areas and CPU2
Although the number of processors under 1 is equal to 4, if the number of processors is small, time-sharing processing may be performed to logically achieve the configuration shown in FIG. 2.
こうして第1図の領域分割部12の処理が終わると、各
分割領域31a〜31dごとにプロセッサ22a〜22
dが並列に動作して境界上格子統括部13の処理が行わ
れる。第7図(a)は分割領域31aの境界格子の部分
を詳しく示しており、斜線を付していない格子が配線可
能境界格子とする。統括部13の処理は、これらの配線
可能境界格子を隣接関係によって第7図(b)のような
格子群S1からS3、R1−R4に分ける。ここで隣接
関係というのは、直接隣接し、たとき、あるいは間にい
くつかの格子があって順に隣接したものをたどっていく
と行きつくことのできる2つの格子は隣接関係にあるも
のとし、・これは一般に平面の時も同じである。今の場
合は配線可能境界格子は直接上に並んでいて、間に使用
禁止の格子があると隣接関係がなくなり、別の格子群と
なる。When the processing of the region dividing unit 12 in FIG. 1 is completed in this way, the processors 22a to 22
d operate in parallel to perform the processing of the on-boundary lattice control section 13. FIG. 7(a) shows the boundary lattice part of the divided region 31a in detail, and the lattice without diagonal lines is the boundary lattice where wiring is possible. The process of the control unit 13 divides these wireable boundary grids into grid groups S1 to S3 and R1 to R4 as shown in FIG. 7(b) according to the adjacency relationship. Here, the adjacency relationship means that two lattices that are directly adjacent to each other, or that there are several lattices in between and can be reached by following the adjacent ones in sequence, are in an adjacent relationship, This is generally the same for flat surfaces. In this case, the routable boundary grids are arranged directly above each other, and if there is a prohibited grid between them, the adjacency relationship disappears and they become a separate grid group.
境界上で格子群への分割が終わると、各格子群にプロセ
ッサが、例えば第7図(b)の格子群SL。When the division into lattice groups on the boundary is completed, a processor is installed in each lattice group, for example, lattice group SL in FIG. 7(b).
・・・の各々にプロセッサ23a、・・・というように
割り当てられ、次の配線可能領域分割部14による処理
が行われる。この場合も、例えば第7図(a)の格子群
S1〜R4の7個に対して、利用できるプロセッサ23
a〜23hが不足しているときは時分割による。The processors 23a, . . . are assigned to each of the processors 23a, . In this case as well, for example, the available processors 23 for the seven grid groups S1 to R4 in FIG.
When there is a shortage of a to 23h, time division is used.
各プロセッサ23a、・・・では、同時に、迷路法の波
を発生させる方法と同様にして当該分割領域内の各格子
に格子群の番号81〜R4を割り当てていく。At the same time, each processor 23a, . . . assigns grating group numbers 81 to R4 to each grating in the divided area in the same manner as the method of generating waves in the maze method.
そして各格子群から発生した波がぶつかり進行できなく
なった時点で処理を止め、この処理をすべての波が進行
できなくなるまで行う。第8図は本処理の例を示したも
ので、先の分割領域31aの内、配線禁止領域は同図(
a)の斜線部分、配線可能領域は斜線のない部分とする
。このとき、境界上の空き格子群S1〜R4から迷路法
と同様に波を発生させて分割領域31aの配線領域を小
領域に分割したものが第8図(b)に示されている。こ
の小領域への分割の結果は、第4図(a)の配線状況テ
ーブルの各配線可能格子のフラグに、その格子が属する
小領域の番号を記入することで記憶される。ここで各小
領域にはそのもとになった境界上の格子群と同じ番号S
〕〜R4を付けるものとする。この処理において、プロ
セッサ22a〜22dは、プロセッサ23a〜23hの
小領域への分割処理中に、どの波とどの波が衝突したの
かをチエツクしてそれをCPU21に知らせ、CPU2
1はメモリ20上に設けた格子群接続関係テーブルに各
格子群の波がどの格子群の波とぶつかったかという情報
を用いて作成した平面グラフの情報を書き込む。これは
第9図に示すように、各格子群(従って小領域)を節点
とする平面グラフで、ぶつかりのあった格子群間の枝の
番号と、その両側の節点を示す領域番号(小領域の番号
SL、 S2.・・・等)と、その枝に相当する2つの
小領域の間の接続部分にある格子の数(接続格子数)と
が、各校ごとに記録されたテーブルである。このグラフ
の今までの具体例について示したものが第10図及び第
11図に示されている。The process is stopped when the waves generated from each lattice group collide and can no longer travel, and this process is continued until all waves can no longer travel. FIG. 8 shows an example of this process, and the wiring prohibited area in the divided area 31a is shown in the figure (
The shaded area in a), the wiring possible area, is the area without the shaded area. At this time, waves are generated from the vacant grid groups S1 to R4 on the boundary in the same manner as in the maze method, and the wiring area of the divided area 31a is divided into small areas, as shown in FIG. 8(b). The result of this division into small regions is stored by writing the number of the small region to which the grid belongs in the flag of each wireable grid in the wiring status table of FIG. 4(a). Here, each subregion has the same number S as the grid group on the boundary that is its origin.
]~R4 shall be attached. In this processing, the processors 22a to 22d check which wave collided with which wave during the division processing into small regions by the processors 23a to 23h, and notify the CPU 21 of the collision.
1 writes information on a planar graph created using information on which wave of each lattice group collides with a wave of each lattice group into a lattice group connection relationship table provided on the memory 20. As shown in Figure 9, this is a planar graph with each grid group (therefore, a small region) as a node, and the number of the branch between the colliding grid groups, and the region number (small region) indicating the nodes on both sides. This is a table in which the numbers SL, S2, etc.) and the number of grids in the connection part between two small areas corresponding to the branch (number of connected grids) are recorded for each school. . Specific examples of this graph up to now are shown in FIGS. 10 and 11.
各分割領域81.・・・に分割されたとすると、それら
の接続関係は第11図のように平面グラフとなる。Each divided area 81. ..., their connection relationship becomes a planar graph as shown in FIG. 11.
次の配線経路決定部15の処理では、処理15aにより
配線すべき素子が無いと判断されるまで以下の処理を繰
り返す。In the next process of the wiring route determination unit 15, the following process is repeated until it is determined in process 15a that there is no element to be wired.
配線対象素子設定部15bでは、配線要求のある素子(
格子)の1対を第4図(b)の配線要求テーブルから取
り出し、続いてそれらの素子(格子)が属する小領域を
第4図(a)の配線状況テーブルから検索する。The wiring target element setting section 15b selects the element (
A pair of elements (grids) are extracted from the wiring request table of FIG. 4(b), and then the small area to which these elements (grids) belong is searched from the wiring status table of FIG. 4(a).
概略配線経路決定部15cでは、第8図に示すように配
線対象素子設定部1.5bにおいて検索された2つの素
子の属する小領域間を結ぶところの、小領域を単位とし
た概略配線経路を決定する。配線経路決定部15のここ
までの処理はCPU21により実行される。第10図の
例で、接続しようとする素子(格子)が小領域R2とT
1にあったとすると(第11図の二重丸で示した節点)
、この概略配線経路の決定は第11図の平面グラフで、
節点R2とT1を結ぶ最短距離を求める問題として、周
知の方法で解くことができる。この結果、第11図の場
合は節点R2−R1,−8L−82−T2−Ul−TI
が概略配線経路となる。この経路を全体の配線領域30
(第5図参照)上で示したのが第12図である。As shown in FIG. 8, the general wiring route determination unit 15c determines a general wiring route in units of small areas that connects the small areas to which the two elements found in the wiring target element setting unit 1.5b belong. decide. The processing up to this point by the wiring route determination unit 15 is executed by the CPU 21. In the example of Fig. 10, the element (lattice) to be connected is the small area R2 and T.
1 (the node indicated by the double circle in Figure 11)
, the determination of this rough wiring route is shown in the planar graph in Figure 11,
The problem of finding the shortest distance connecting nodes R2 and T1 can be solved using a well-known method. As a result, in the case of FIG. 11, the nodes R2-R1, -8L-82-T2-Ul-TI
is the approximate wiring route. This route covers the entire wiring area 30
(See FIG. 5) What is shown above is FIG. 12.
この図は第10図の分割領域31a〜31dを全部合わ
せて示しており、小領域Tl、R2内の接続すべき素子
はeS、eEで示されている。概略経路はこの素子es
、eEを結ぶ実線である。概略配線経路決定部15cで
は、この経路が小領域の境界を通る位置に中継端子e1
〜e12を設定して処理を終わる。This figure shows all the divided regions 31a to 31d in FIG. 10 together, and the elements to be connected in the small regions Tl and R2 are indicated by eS and eE. The approximate route is this element es
, eE is a solid line connecting them. The general wiring route determination unit 15c sets a relay terminal e1 at a position where this route passes through the boundary of the small area.
~e12 is set and the process ends.
詳細配線経路決定部15dでは、第2図のプロセッサ2
3a〜23hのいくつかが概略配線経路上の各小領域を
割り当てられ、その小領域毎に概略配線経路決定部15
cで設けた中継端子間を並列動作により配線する。配線
方法は従来技術と同じで、例えば第12図の小領域U1
を割り当てられたプロセッサは、端子e2とe2と03
間のUl内の配線を行う。In the detailed wiring route determination unit 15d, the processor 2 of FIG.
3a to 23h are assigned each small area on the general wiring route, and the general wiring route determination unit 15 is assigned to each small area on the general wiring route.
Wire between the relay terminals provided in c by parallel operation. The wiring method is the same as the conventional technology, for example, the small area U1 in FIG.
The processor assigned is terminal e2, e2 and 03.
Perform the wiring within the Ul between the two.
配線可能領域更新部15eでは、詳細配線経路決定部1
.5dにおいて既配線となった格子を使用禁止とする。In the wiring possible area updating unit 15e, the detailed wiring route determining unit 1
.. The use of the lattice that has already been wired in 5d is prohibited.
これは第4図(a)の配線状況テーブルで使用された格
子の状態フラグを更新してその格子を配線禁止とするこ
とにより行われる。また概略経路上の小領域間の境界に
並ぶ格子数も配線により1つ減るから、グラフを表す第
9図の接続関係テーブルの該当する接続枝番号の接続格
子数を1減らすという更新処理を行う。この結果、新し
く配線された配線可能な各小領域は、第13図のように
小さくなる。また、第12図の中継端子e8の部分の縦
方向の幅は1格子の幅とすると、素子eS−eE間の配
線により小領域S1と82間は第13図に示すように隣
接しなくなる。このことは上記第9図の接続関係テーブ
ルの更新処理の結果、小領域S1と82を結ぶ枝の接続
格子数がOとなったことから判定できるから、この枝を
接続関係テーブルから除去して、第11図のグラフのS
L、82間の枝をなくしておく。このようにして次の素
子間の設定へと戻る。This is done by updating the status flag of the lattice used in the wiring status table of FIG. 4(a) and prohibiting wiring in that lattice. Also, since the number of grids lined up at the boundaries between small areas on the rough route is reduced by one due to wiring, an update process is performed to reduce the number of connected grids for the corresponding connection branch number in the connection relationship table in Figure 9 representing the graph by one. . As a result, each small area where new wiring can be done becomes smaller as shown in FIG. 13. Furthermore, if the vertical width of the relay terminal e8 in FIG. 12 is the width of one lattice, the small regions S1 and 82 are no longer adjacent to each other due to the wiring between the elements eS and eE, as shown in FIG. This can be determined from the fact that as a result of the updating process of the connection relationship table shown in FIG. , S in the graph of Figure 11
Remove the branch between L and 82. In this way, the process returns to the setting between the next elements.
本発明によれば、大規模な配線領域における素子間経路
探索を高速に実行でき、必要なメモリ容量も小さくでき
るから、質の高いLSIやプリント基板のレイアウトが
確実にかつ効率よく得られるという効果がある。According to the present invention, it is possible to perform inter-element route searching in a large wiring area at high speed, and the required memory capacity can be reduced, so that high-quality LSI and printed circuit board layouts can be reliably and efficiently obtained. There is.
第1図は本発明による素子間配線装置の機能構成の一実
施例を示すブロック図、第2図は同装置のハードウェア
構成例を示すブロック図、第3図は格子状配線領域の説
明図、第4図は配線状況テーブル及び配線要求テーブル
の説明図、第5図及び第6図は本発明における領域分割
方法の説明図、第7図は本発明における境界上の配線可
能格子の統括方法の説明図、第8図は本発明における配
線可能領域の分割方法の説明図、第9図は配線可能格子
群接続関係テーブルの説明図、第10図及び第11図は
平面グラフの説明図、第12図は概略配線経路決定方法
の説明図、第13図は配線可能領域及び平面グラフ更新
方法の説明図である。
12・・・領域分割部、13・・・境界上格子統括部、
14・・・配線可能領域分割部、15・・・配線経路決
定部、15c・・・概略配線経路決定部、15e・・・
配線可能領域更新部、20 、24a 〜24c 、
25−共有メモリ、21−CP U、22a〜22d、
23a〜23h・・・プロセッサ、30・・・配置線
領域、31a〜31d・・・分割領域、40・・・境界
領域、R1−R4゜81〜83.TL T2.Ul、
U2・;小領域、e1〜e12・・・中継端子。
代理人弁理士 秋 本 正 実
Cて
゛・・11.5.12.、・・FIG. 1 is a block diagram showing an example of the functional configuration of an inter-element wiring device according to the present invention, FIG. 2 is a block diagram showing an example of the hardware configuration of the device, and FIG. 3 is an explanatory diagram of a grid wiring area. , FIG. 4 is an explanatory diagram of the wiring status table and the wiring request table, FIGS. 5 and 6 are explanatory diagrams of the area division method according to the present invention, and FIG. 7 is an explanatory diagram of the method for integrating the wireable grid on the boundary according to the present invention. , FIG. 8 is an explanatory diagram of the method of dividing a wiring possible area in the present invention, FIG. 9 is an explanatory diagram of a wiring possible grid group connection relationship table, FIGS. 10 and 11 are explanatory diagrams of a planar graph, FIG. 12 is an explanatory diagram of a method for determining a general wiring route, and FIG. 13 is an explanatory diagram of a method for updating a wiring possible area and a planar graph. 12... Area division section, 13... Boundary grid control section,
14... Wirable area dividing section, 15... Wiring route determining section, 15c... Schematic wiring route determining section, 15e...
Routable area update unit, 20, 24a to 24c,
25-shared memory, 21-CPU, 22a to 22d,
23a-23h... Processor, 30... Placement line area, 31a-31d... Division area, 40... Boundary area, R1-R4°81-83. TL T2. Ul,
U2: small area, e1 to e12...relay terminal. Representative Patent Attorney Masami Akimoto C...11.5.12. ,...
Claims (5)
た2つの格子の間を縦方向または横方向に隣接した格子
の系列により接続することによって配線経路を定める素
子間配線方法において、上記格子の各々が予め配線用と
して使用禁止に指定されているかあるいは既に配線用に
使用されて使用禁止となっているか否かを示す第1のテ
ーブルと、配線を必要とする2つの素子位置に対応する
格子対を格納した第2テーブルとを設け、上記配線面を
その各々が1格子幅の格子列からなる境界領域で区切ら
れかつ該境界領域は区切られた双方の領域で共有される
ように分割して複数の分割領域とする第1の処理と、該
分割領域の各々において、上記境界領域上の格子で上記
第1テーブルで使用禁止に指定されていない配線可能格
子を取り出し、該格子を隣接関係で到達可能な格子群に
分割する第2の処理と、上記分割領域の各々において、
当該分割領域内の上記配線可能格子を上記格子群の各々
に隣接関係で順次付加することにより上記格子群の個数
に等しい小領域に分割する第3の処理と、上記分割領域
毎に生成された小領域を同一格子群から生成されたもの
は同一小領域として合成し、その後各小領域を節点とし
2つの小領域が隣接する格子をもつとき該当節点間に枝
を有するところの平面グラフを生成する第4の処理と、
上記第2テーブルを参照して配線の必要な1対の格子を
取り出し、該格子の各々が属する上記小領域対応の節点
間を結ぶ経路を上記平面グラフ上で探索して概略配線経
路を求め、さらに該経路が通過する上記小領域間の境界
領域に中継格子を定める第5の処理と、上記配線経路を
形成する小領域の各々において上記中継格子間の詳細配
線を定める第6の処理と、該処理によって配線に使用さ
れた格子を上記第1テーブル上で使用禁止とし、上記配
線により不要となった格子点の対を上記第2テーブルか
ら除去し、かつ上記配線により隣接する上記配線可能格
子を有さない小領域間の枝が上記平面グラフにあればこ
れを除去するところの第7の処理とを行うことを特徴と
する素子間配線方法。1. In an inter-element wiring method in which a wiring path is determined by dividing a wiring surface into grids and connecting two grids designated at the positions of two elements with a series of vertically or horizontally adjacent grids, the above-mentioned grid A first table indicating whether each element is prohibited from being used for wiring in advance or has already been used for wiring and is prohibited from use, and corresponds to two element positions that require wiring. and a second table storing grid pairs, and divides the wiring surface so that each of the wiring planes is divided by boundary regions each consisting of a grid row of one grid width, and the boundary regions are shared by both of the divided regions. In each of the divided areas, a lattice that can be wired and is not prohibited from use in the first table is extracted from the lattice on the boundary area, and the lattice is divided into a plurality of divided areas. In the second process of dividing into lattice groups that can be reached by the relation, and in each of the above divided regions,
A third process of dividing the wireable lattice in the divided area into small areas equal to the number of the lattice groups by sequentially adding the wireable lattice to each of the lattice groups in an adjacent relationship; Small regions generated from the same grid group are combined as the same small region, and then each small region is used as a node, and when two small regions have adjacent grids, a planar graph with branches between the corresponding nodes is generated. a fourth process of
With reference to the second table, a pair of lattices requiring wiring are extracted, and a route connecting nodes corresponding to the small area to which each of the lattices belongs is searched on the planar graph to obtain an approximate wiring route; Further, a fifth process of determining a relay grid in a boundary area between the small areas through which the route passes, and a sixth process of determining detailed wiring between the relay grids in each of the small areas forming the wiring route, Through this processing, the grid used for wiring is prohibited from being used on the first table, the pairs of grid points that are no longer needed due to the wiring are removed from the second table, and the grid points that are adjacent to each other by the wiring are removed from the second table. An inter-element wiring method characterized by performing a seventh process of removing, if there is an edge between small regions in the planar graph that does not have an edge.
記第2テーブルに配線を必要とする格子対がなくなるま
で繰り返し実行することを特徴とする請求項1記載の素
子間配線方法。2. 2. The inter-element wiring method according to claim 1, wherein the fifth process, the sixth process, and the seventh process are repeatedly executed until there are no lattice pairs requiring wiring in the second table.
た2つの格子の間を縦方向または横方向に隣接した格子
の系列により接続することによって配線経路を定める素
子間配線装置において、上記格子の各々が予め配線用と
して使用禁止に指定されているかあるいは既に配線用に
使用されて使用禁止となっているか否かを示す第1のテ
ーブルと、配線を必要とする2つの素子位置に対応する
格子対を格納した第2テーブルと、上記配線面をその各
々が1格子幅の格子列からなる境界領域で区切られかつ
該境界領域は区切られた双方の領域で共有されるように
分割して複数の分割領域とする第1の処理手段と、該分
割領域の各々において、上記境界領域上の格子で上記第
1テーブルで使用禁止に指定されていない配線可能格子
を取り出し、該格子を隣接関係で到達可能な格子群に分
割する第2の処理手段と、上記分割領域の各々において
当該分割領域内の上記配線可能格子を上記格子群の各々
に隣接関係で順次付加することにより上記格子群の個数
に等しい小領域に分割する第3の処理手段と、上記分割
領域毎に生成された小領域を同一格子群から生成された
ものは同一小領域として合成し、その後各小領域を節点
とし2つの小領域が隣接する格子をもつとき該当節点間
に枝を有するところの平面グラフを生成する第4の処理
手段と、上記第2テーブルを参照して配線の必要な1対
の格子を取り出し、該格子の各々が属する上記小領域対
応の節点間を結ぶ経路を上記平面グラフ上で探索して概
略配線経路を求め、さらに該経路が通過する上記小領域
間の境界領域に中継格子を定める第5の処理手段と、上
記配線経路を形成する小領域の各々において上記中継格
子間の詳細配線を定める第6の処理手段と、該第6の処
理手段による処理によって配線に使用された格子を上記
第1テーブル上で使用禁止とし、上記配線により不要と
なった格子点の対を上記第2テーブルから除去し、かつ
上記配線により隣接する上記配線可能格子を有さない小
領域間の枝が上記平面グラフにあればこれを除去すると
ころの第7の処理手段とを備えたことを特徴とする素子
間配線装置。3. In an inter-element wiring device that divides a wiring surface into grids and defines a wiring route by connecting two grids designated at the positions of two elements with a series of vertically or horizontally adjacent grids, the grid is A first table indicating whether each element is prohibited from being used for wiring in advance or has already been used for wiring and is prohibited from use, and corresponds to two element positions that require wiring. A second table storing grid pairs, and dividing the wiring surface so that each of the wiring planes is divided by boundary regions each consisting of a grid row of one grid width, and the boundary regions are shared by both of the divided regions. a first processing means for forming a plurality of divided regions, and in each of the divided regions, extracts a wireable grid on the boundary region that is not designated as prohibited in the first table, and sets the grid in an adjacent relationship; a second processing means for dividing the lattice group into reachable lattice groups, and sequentially adding the routable lattice in the lattice group in each of the lattice groups in an adjacent relationship to each of the lattice groups; A third processing means divides the subregions into equal number of subregions, and synthesizes the subregions generated for each of the divided regions as the same subregion if they are generated from the same grid group, and then sets each subregion as a node. a fourth processing means for generating a planar graph having branches between corresponding nodes when two small regions have adjacent lattices, and extracting a pair of lattices requiring wiring by referring to the second table; Searching the planar graph for a route connecting nodes corresponding to the small area to which each of the grids belongs to obtain a rough wiring route, and further determining a relay grid in the boundary area between the small areas through which the route passes. a sixth processing means for determining detailed wiring between the relay grids in each of the small areas forming the wiring route; Pairs of lattice points that are prohibited to be used on the first table and become unnecessary due to the above wiring are removed from the second table, and the branches between adjacent small areas that do not have the above routable lattice due to the above wiring are An inter-element wiring device characterized by comprising: a seventh processing means for removing any part of the planar graph.
のプロセッサを割り当てて構成されたことを特徴とする
請求項3記載の素子間配線装置。4. 4. The inter-element wiring device according to claim 3, wherein the second processing means is configured by assigning one processor to each of the divided regions.
双方は、前記小領域の各々に1つのプロセッサを割り当
てて構成されたことを特徴とする請求項3記載の素子間
配線装置。5. 4. The inter-element wiring device according to claim 3, wherein one or both of the third processing means and the sixth processing means are configured by allocating one processor to each of the small areas.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2232325A JPH04113473A (en) | 1990-09-04 | 1990-09-04 | Method and device for wiring between elements |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2232325A JPH04113473A (en) | 1990-09-04 | 1990-09-04 | Method and device for wiring between elements |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04113473A true JPH04113473A (en) | 1992-04-14 |
Family
ID=16937431
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2232325A Pending JPH04113473A (en) | 1990-09-04 | 1990-09-04 | Method and device for wiring between elements |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04113473A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010073073A (en) * | 2008-09-22 | 2010-04-02 | Fujitsu Ltd | Layout design method, apparatus and program |
-
1990
- 1990-09-04 JP JP2232325A patent/JPH04113473A/en active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010073073A (en) * | 2008-09-22 | 2010-04-02 | Fujitsu Ltd | Layout design method, apparatus and program |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3033203B2 (en) | Wiring route searching device and wiring route searching method | |
| US5144563A (en) | Method and apparatus for optimizing element placement and method and apparatus for deciding the optimal element placement | |
| JP4227304B2 (en) | Outline wiring method and apparatus, and recording medium storing outline wiring program | |
| JPS63225869A (en) | Wiring path search system | |
| WO1991006061A1 (en) | Improved routing system and method for integrated circuits | |
| US5550714A (en) | Schematic generator and schematic generating method | |
| JP2753263B2 (en) | Automatic wiring method of semiconductor integrated circuit | |
| EP0298275B1 (en) | Pattern splicing system and method for scanning of electron beam system | |
| KR100576987B1 (en) | Design and manufacturing method of electronic device and electronic device | |
| US5825659A (en) | Method for local rip-up and reroute of signal paths in an IC design | |
| JP3755669B2 (en) | A method for designing electronic devices using an automatic layout system that automatically routes a large number of nets. | |
| JP2536640B2 (en) | Wiring method | |
| JP3293640B2 (en) | Circuit data connection tracking system | |
| JPS59189471A (en) | Wiring route searching system | |
| JPS59188772A (en) | Route retrieval and processing system | |
| JP2536119B2 (en) | Wiring method | |
| JP3006140B2 (en) | Automatic wiring method | |
| JPH077424B2 (en) | Automatic wiring method | |
| JPS63155740A (en) | Wiring processing system | |
| JPH04107683A (en) | System and device for searching wiring route | |
| JPH04102177A (en) | Wiring route search method and device | |
| JPH07202000A (en) | LSI wiring method by parallel processing | |
| JPH10256379A (en) | Floor plan method of integrated circuit | |
| JPH03180978A (en) | Wiring processing system of printed circuit board based upon labyrinth method | |
| JPH033349A (en) | Automatic wiring-method for semiconductor integrated circuit |