JPH0737985A - Automatic wiring method - Google Patents

Automatic wiring method

Info

Publication number
JPH0737985A
JPH0737985A JP5157590A JP15759093A JPH0737985A JP H0737985 A JPH0737985 A JP H0737985A JP 5157590 A JP5157590 A JP 5157590A JP 15759093 A JP15759093 A JP 15759093A JP H0737985 A JPH0737985 A JP H0737985A
Authority
JP
Japan
Prior art keywords
wiring
rewiring
route
net
area
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
Application number
JP5157590A
Other languages
Japanese (ja)
Inventor
Takashi Mihashi
隆 三橋
Masaaki Yamada
正昭 山田
Mototaka Kuribayashi
元隆 栗林
Harunori Kadowaki
春則 門脇
Takaaki Aoki
孝哲 青木
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP5157590A priority Critical patent/JPH0737985A/en
Publication of JPH0737985A publication Critical patent/JPH0737985A/en
Pending legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

PURPOSE:To achieve a general not-yet-wiring solution means which can cope with a complex situation and a somewhat larger number of disabled wiring states by correcting and modifying a wiring path generally through two stages of approximate wiring and detailed wiring for wiring failure and a related net. CONSTITUTION:Wiring is performed in two steps of approximate wiring 11 and detailed wiring 12 according to wiring request. Disabled wiring allows not-yet-wiring 13 to be detected and treatment to be distributed with a function for controlling the treatment. Without disabled wiring, wiring treatment is completed and treatment is completed. When disabled wiring conditions such as not-yet-wiring or short-circuiting occur, a function 14 for making invalid the wiring deletes or changes the related wiring data from a data structure. Further, other wiring states are also changed as needed. In an approximate re-wiring 15, a general path of signals whose wiring is disabled is reviewed to find a new path. A detailed wiring 16 for the newly found path is performed.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、半導体集積回路やプリ
ント基板などの配線結線率を向上するための自動配線方
法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an automatic wiring method for improving the wiring connection rate of semiconductor integrated circuits, printed circuit boards and the like.

【0002】[0002]

【従来の技術】従来よりLSIの自動配線方法に関して
は数多くの方法が提案されている。いわゆるスタンダー
ドセル方法のレイアウトにおいてはチャネル配線プログ
ラムが活用されている。一方プリント基板やゲートアレ
イ方法のLSIにおいては迷路法や線分探索法が多用さ
れている。特にゲートアレイ方法のLSIにおいては限
られた配線領域を使って配線を行うため配線不可能な場
合が起こった。そのような場合の未配線の解決手段とし
ては配線不能に関与した配線を部分的に引きはがして再
度配線を行う手法が利用されている。ゲートアレイにお
いては経済的理由および回路性能向上のために一つのチ
ップにできる限り多数の論理回路素子を搭載する必要が
ある。
2. Description of the Related Art Conventionally, many methods have been proposed for an automatic wiring method for an LSI. A channel wiring program is utilized in the layout of the so-called standard cell method. On the other hand, the maze method and the line segment search method are often used in printed circuit boards and LSIs of the gate array method. In particular, in the LSI of the gate array method, since wiring is performed using a limited wiring area, there are cases where wiring is impossible. In such a case, as a means for solving the unwiring, a method of partially peeling the wiring involved in the unwiring and rewiring is used. In a gate array, it is necessary to mount as many logic circuit elements as possible on one chip for economical reasons and improvement of circuit performance.

【0003】このように多数の素子を搭載しようとする
場合は配線不能が起こる可能性が大きく従来はこのよう
な場合にはゲートアレイの母体、つまり予めトランジス
タを作り込んだあと配線だけを行えば良い状態としたチ
ップ、をもう一つ上の寸法のものに切り替えたりする必
要があった。場合によっては対話型CAD装置を利用し
て設計者が自ら多量の時間を用いてレイアウトを修正を
する場合もあった。しかし設計者がこのような配線不能
状況を多数処理する事は設計者に長大な時間と苦難を強
いる物であり事実上不可能であった。そのためこのよう
な配線不可能な状況を上手に解決する手段が望まれてい
た。
When a large number of elements are to be mounted in this way, there is a high possibility that wiring will be impossible. In such a case, conventionally, in such a case, only the wiring is carried out after the gate array matrix, that is, the transistors have been formed in advance. It was necessary to replace the chip in good condition with another size up. In some cases, the designer may use an interactive CAD device to modify the layout by spending a large amount of time himself. However, it has been virtually impossible for the designer to deal with such a situation in which the wiring is impossible, because the designer has to spend a lot of time and trouble. Therefore, there has been a demand for a means for successfully solving such a situation in which wiring is impossible.

【0004】一方、大規模集積回路(LSI)の自動配
線方法として、これまで多数のアルゴリズムが提案され
てきた。その代表的なものは、迷路法・ラインサーチア
ルゴリズム・チャネルアルゴリズム・階層アルゴリズム
である。これらの配線方法は、ゲートアレイ、スタンダ
ードセルなどのセミカスタムLSIの自動配線に広く使
用されている。
On the other hand, many algorithms have been proposed so far as an automatic wiring method for a large scale integrated circuit (LSI). Typical examples are the maze method, line search algorithm, channel algorithm, and hierarchical algorithm. These wiring methods are widely used for automatic wiring of semi-custom LSI such as gate arrays and standard cells.

【0005】これらのアルゴリズムの中で、Leeの迷
路法(C.Y.Lee,“An Algorithm forPath Connections a
nd Its Applications, ”IRE Transactions on Electro
nicComputers, Vol EC-10,pp 346-365,1961 )は最も歴
史の古く、そのオリジナルな方法を高速化したものが多
数提案されている。この方法はもし配線経路が存在すれ
ば必ず見つけることが可能であるという探索能力に優れ
ている点により広く使われてきた。それはまた探索領域
を限定しなければ、求められる経路は最短であるという
特長を持っている。
Among these algorithms, Lee's maze method (CYLee, "An Algorithm for Path Connections a
nd Its Applications, ”IRE Transactions on Electro
nicComputers, Vol EC-10, pp 346-365,1961) has the oldest history, and many speedups of the original method have been proposed. This method has been widely used due to its excellent search ability that it can always find a wiring route if it exists. It also has the feature that the required route is the shortest if the search area is not limited.

【0006】しかし、迷路法は処理時間が掛かるという
欠点を持っている。例えばチップ全面にその端子が分布
している端子ネットを配線しようとすると、探索領域が
全面に広がるために多大な時間を要する。このように迷
路法は処理に時間が掛かり、広い配線領域を対象として
経路を探索することには向いていない。さらに、迷路法
はネットを1本づつ処理するために、複数本のネットの
中からどのネットから順に選択するかによって配線が不
可能になったり配線の質が低下するなどの配線結果が配
線順序にによって大きく影響される性質も持っている。
However, the maze method has a drawback that it takes a long processing time. For example, if it is attempted to wire a terminal net whose terminals are distributed over the entire surface of the chip, it takes a lot of time to spread the search area over the entire surface. As described above, the maze method takes time to process and is not suitable for searching a route for a wide wiring area. Further, since the maze method processes the nets one by one, depending on which net is selected from a plurality of nets in order, wiring becomes impossible or the quality of the wiring deteriorates. It also has the property of being greatly influenced by.

【0007】ラインサーチアルゴリズムは、迷路法より
高速であるが配線が混雑してくるにつれて探索線が多数
発生され迷路法並に時間が掛かる。また迷路法と同様に
配線順序に結果が依存する欠点を持っている。
The line search algorithm is faster than the maze method, but as the wiring becomes crowded, many search lines are generated and it takes as long as the maze method. Also, it has a drawback that the result depends on the wiring order as in the maze method.

【0008】チャネル配線アルゴリズムは高速であり、
ネットの選択順の問題はないが、配線領域内に障害物等
が存在する場合に扱いが困難であったり、配線領域をチ
ャネルと呼ばれる領域に分割する必要があり限られたレ
イアウトモデルにその利用が制限される。
The channel wiring algorithm is fast,
Although there is no problem in the order of selecting nets, it is difficult to handle when there are obstacles in the wiring area, or the wiring area needs to be divided into areas called channels. Is limited.

【0009】階層アルゴリズムは、元の問題を複数の部
分問題に分割しながら解くという分割統治法(“divide
-and-conquer”)に基づいている。この手法に基づく配
線アルゴリズムの代表例は、M.Burstein and R.Pelavi
n, “Hierarchical Wiring Routing,”IEEE Teans.CAD,
vol.CAD-2, No.4,pp.223-234,(1983)やU.P.Lauther,“T
op Down Hierarchical Global Routing for Channelles
s Gate Arrays Based on Linear Assignment,”Proc.VL
SI87,pp.100-120(1987)などである。階層的アルゴリズ
ムは前述の逐次的なアルゴリズムに比べて処理が高速で
あり、多端子のネットの配線も不得手としない。またネ
ットを選択する順序の問題はなく、複数個のネットを同
時に扱えるという特長を持っている。
A hierarchical algorithm is a divide-and-conquer method (“divide-and-conquer”) in which an original problem is divided into a plurality of subproblems and solved.
-and-conquer ”). A typical example of a wiring algorithm based on this method is M. Burstein and R. Pelavi.
n, “Hierarchical Wiring Routing,” IEEE Teans.CAD,
vol.CAD-2, No.4, pp.223-234, (1983) and UPLauther, "T
op Down Hierarchical Global Routing for Channelles
s Gate Arrays Based on Linear Assignment, ”Proc.VL
SI87, pp.100-120 (1987), etc. The hierarchical algorithm is faster in processing than the sequential algorithm described above, and is not disadvantageous in wiring a multi-terminal net. In addition, there is no problem with the order in which the nets are selected, and the feature is that multiple nets can be handled simultaneously.

【0010】Lauther の配線方法の概略を説明する。図
14は、2分割処理を繰り返して概略配線を完了させる
Lauther の方法を説明するための図である。(a)は、
階層のトップレベルでカットラインLによって配線領域
が分割され、このカットラインを横切るネットの通過位
置を決定する様子を示したものでる。(b)は、階層処
理のレベルが1つ下がり、(a)の左右の領域がさらに
カットラインてそれぞれ分割された様子を示す。(c)
はさらに階層レベルが1つ下がった様子を示す。このよ
うに領域分割を繰り返して、全ての領域が最小サイズに
なるまで処理を進めることによって(d)のように全ネ
ットの経路を決定できるというものである。
An outline of the Lauther wiring method will be described. In FIG. 14, the dividing process is repeated to complete the rough wiring.
It is a figure for demonstrating the method of Lauther. (A) is
The wiring area is divided by the cut line L at the top level of the hierarchy, and the passing position of the net crossing this cut line is determined. (B) shows a state in which the level of hierarchical processing is lowered by one and the left and right regions of (a) are further divided by cut lines. (C)
Indicates that the hierarchy level is further lowered by one. By repeating the region division in this way and advancing the processing until all the regions have the minimum size, the route of all nets can be determined as shown in (d).

【0011】さらに階層アルゴリズムは、つぎの2つの
点で魅力的である。一つは、そのアルゴリズムの高速性
である。LSIの機能設計などの上流設計工程のさらな
る自動設計が進歩し、またプロセスの微細化技術が進歩
するにつれて、自動配線プログラムの扱うデータ規模が
ますます大きくなり、それにつれて処理時間が増すの
で、実用的な時間で配線結果を得られるような高速なア
ルゴリズムがますます求められる。もう一つは、階層配
線が並列処理向きであることである。近年、並列計算機
の利用が可能になり配線処理を並列処理させることが可
能になってきている。階層配線方法はその分割統治手法
の性質から並列処理向きである。なぜなら、元の問題は
独立な部分問題に分割されるので、それぞれの問題の処
理を別の処理装置に割り当てることが可能であるからで
ある。
Further, the hierarchical algorithm is attractive in the following two points. One is the speed of the algorithm. As the automatic design of the upstream design process such as the functional design of LSI progresses and the process miniaturization technology progresses, the data scale handled by the automatic wiring program becomes larger and larger, and the processing time increases accordingly. There is an increasing demand for a fast algorithm that can obtain the wiring result in a short time. Another is that hierarchical wiring is suitable for parallel processing. In recent years, the use of parallel computers has become possible, and wiring processing can be performed in parallel. The hierarchical wiring method is suitable for parallel processing due to the nature of the division and conquer method. Because the original problem is divided into independent sub-problems, it is possible to allocate the processing of each problem to another processing device.

【0012】しかしながら、このような階層アルゴリズ
ムは以下の欠点を持つ。階層処理は配線領域全体のグロ
ーバルな混雑情報を元に、トップダウンにおし進められ
る。したがって、配線領域が配線のリソースに関し不均
一なばらつきもを持つ場合にはそのローカルな混雑を上
位の階層で考慮することは難しい。よって、階層処理が
進んで最終的なレベルに近づくにつれて配線出来ない状
況に陥る場合が発生する可能性がある。
However, such a hierarchical algorithm has the following drawbacks. Hierarchical processing is performed top-down based on global congestion information of the entire wiring area. Therefore, when the wiring region also has uneven variations in wiring resources, it is difficult to consider the local congestion in the upper layer. Therefore, there is a possibility that wiring may not be possible as the hierarchical processing progresses and approaches the final level.

【0013】このような階層配線の欠点を克服するため
に、階層アルゴリズムと迷路法などの逐次配線アルゴリ
ズムを組み合わせて用いる方法も考えられる。すなわ
ち、階層配線後に領域内に混雑領域が存在すれば、その
領域を通過する配線を引き剥し、逐次的なアルゴリズム
によって再度配線し直す方法である。
In order to overcome such a drawback of the hierarchical wiring, a method of using a combination of a hierarchical algorithm and a sequential wiring algorithm such as a maze method may be considered. That is, if a congested area exists in the area after hierarchical wiring, the wiring that passes through the area is stripped off and the wiring is re-wired by a sequential algorithm.

【0014】このように初期配線を階層アルゴリズムを
用いて求め、引き剥し再配線を逐次アルゴリズムを用い
て行う方法はそれぞれの欠点を補い合って効果的であ
る。しかし、処理時間の観点で問題になることがある。
すなわち、初期配線は高速な階層アルゴリズムで配線す
る。多端子のネットや配線長の長いネットなどが引き剥
された場合には、再配線に多大の時間が掛かることにな
り場合によって初期配線に要した時間を越えることにも
なりかねない。このようなことが起こると階層配線の高
速性のメリットが十分活かされたことにならない。
As described above, the method of obtaining the initial wiring by using the hierarchical algorithm and performing the peeling rewiring by using the sequential algorithm is effective by compensating for the respective drawbacks. However, this may cause a problem in terms of processing time.
That is, the initial wiring is performed by a high speed hierarchical algorithm. When a multi-terminal net or a net with a long wiring length is peeled off, rewiring may take a lot of time, and in some cases, the time required for initial wiring may be exceeded. When this happens, the advantage of high speed of hierarchical wiring cannot be fully utilized.

【0015】また、配線の質の点からも問題がある。再
配線処理は、1ネット毎に行われるので、ネットの選択
順によっては後で配線されるネットの経路に悪い影響を
与える可能性もある。従って、ネットの引き剥し処理を
何回も繰り返してネットの混雑が解消されない場合が発
生する。
There is also a problem in terms of wiring quality. Since the rewiring process is performed for each net, there is a possibility that the route of the net to be routed later may be adversely affected depending on the selection order of the nets. Therefore, there is a case where the congestion of the net cannot be eliminated by repeating the net stripping process many times.

【0016】さて、並列処理の配線手法が大規模回路を
配線するのに要する処理時間を削減する目的で研究され
ている。これは一台の処理装置の処理性能は年々向上し
ているが、それにもましてLSIの大規模化による処理
時間の増加に追い付かないためである。また複数個の処
理装置(processor )を備えた計算機の出現や、図15
に示すような複数のワークステーションをネットワーク
で接続した分散環境が利用可能になり、高速化を目的と
して配線を並列処理する方法が幾つか提案されてきた。
A parallel processing wiring method has been studied for the purpose of reducing the processing time required to wire a large-scale circuit. This is because the processing performance of one processing device is improving year by year, but it cannot catch up with the increase in processing time due to the large scale of the LSI. In addition, with the advent of a computer equipped with a plurality of processors,
A distributed environment in which a plurality of workstations are connected via a network has become available, and several methods for parallel processing of wiring have been proposed for the purpose of speeding up.

【0017】これらの並列配線アルゴリズムは以下の3
つに分類できる。
These parallel wiring algorithms are described in the following 3
It can be classified into two.

【0018】 ・迷路的な2次元的なハードウェア上にマッピングした
もの ・逐次アルゴリズムを並列化したもの ・分割統治法に基づくアルゴリズムを並列化したもの 第一のLee の迷路アルゴリズムは、2次元的に並べたマ
イクロプロセッサー(microprocessors )のアレイ(ar
ray )に実現されたものである。(例えば、M.A Breue
r, K.Shamsa, “A Hardware Rouger,”Journal of Digi
tal Systems, Vol 4,1981,pp.393-408.やT.Watanabe,
H.Kitazawa, and Y,Sugiyama, ”A Parallel Adaptable
Routing Algorithm and its Implementation on a Two
-Dimensional Array Processor, ”IEEE Transactions
Computer-Aided Design,vol.CAD-6,No2,pp.241-250,(19
87) など)。これらは特別な目的を持ったハードウエア
配線マシンである。この特別なハードウエア化の欠点の
一つは、ソフトウエアーの特別なデータ構造を用いると
非常に効率的に単一プロセッサー(uniprocessor)上に
実現出来るのに、固定されたハードウエア上にはそのデ
ータ構造は容易に実現出来ない点である。
・ Mapping on a maze-like two-dimensional hardware ・ Paralleling a serial algorithm ・ Paralleling an algorithm based on the divide-and-conquer method The first Lee maze algorithm is two-dimensional An array of microprocessors arranged in (ar
ray) was realized. (For example, MA Breue
r, K. Shamsa, “A Hardware Rouger,” Journal of Digi
tal Systems, Vol 4,1981, pp.393-408. and T. Watanabe,
H.Kitazawa, and Y, Sugiyama, ”A Parallel Adaptable
Routing Algorithm and its Implementation on a Two
-Dimensional Array Processor, ”IEEE Transactions
Computer-Aided Design, vol.CAD-6, No2, pp.241-250, (19
87)). These are special purpose hardware wiring machines. One of the drawbacks of this special hardwareization is that it can be implemented very efficiently on a single processor (uniprocessor) using special data structures of the software, but on fixed hardware The data structure cannot be easily realized.

【0019】第二の逐次アルゴリズムを並列化したもの
としてはJonathan Rose,“LocusRoute:A Parallel Glob
al Router for Standard Cells, ”Proc.25th Design A
utomation Conference,pp.189-195,June 1988.やTsukas
a Yamauche et, al.“PROTON:A Parallel Detailed Rou
ter on an MIMD Rarallel Machine,”Proc.Int. Conf.
Computer-Aided Design,pp.340-343(1991). などがあ
る。この種の並列配線の方法は、1ネットを1つのプロ
セッサーに割当る方法、多端子ネットを2端子ネットに
分解して、各2端子ネットを別々のプロセッサーに割り
当てる方法、一つの探索線を求め仕事を1つのプロセッ
サーに割当る方法などである。
A parallelized version of the second sequential algorithm is Jonathan Rose, “LocusRoute: A Parallel Glob.
al Router for Standard Cells, ”Proc. 25th Design A
utomation Conference, pp.189-195, June 1988. and Tsukas
a Yamauche et, al. “PROTON: A Parallel Detailed Rou
ter on an MIMD Rarallel Machine, ”Proc.Int. Conf.
Computer-Aided Design, pp.340-343 (1991). This kind of parallel wiring method is to allocate one net to one processor, decompose a multi-terminal net into two-terminal nets and allocate each two-terminal net to a different processor, and find one search line. For example, how to allocate work to one processor.

【0020】しかし、このような並列配線は単一プロセ
ッサー上で逐次配線を行う場合と異なり、配線の質の低
下を招く。なぜなら、単一プロセッサー上では1ネット
を配線したあとでその完全な経路の情報を得た後につぎ
のネットの配線をするが、並列処理されるネットは独立
に処理されるため互いに相手のネットの存在を考慮でき
ない。従って、異なるプロセッサーで求められた経路が
互いに重なりあったり込み合ったりすることがさけられ
ない。この問題を解消するには、互いに空間的に独立な
ネットのみ扱うようにすればよいが、ネットの選択方法
や探索線の発生領域に制限を付けることになり配線性能
の低下を招く。
However, such parallel wiring causes a deterioration in the quality of the wiring, unlike the case where the serial wiring is performed on a single processor. This is because on a single processor, one net is routed and then the next net is routed after the complete route information is obtained. However, parallel processed nets are processed independently of each other. I can't consider the existence. Therefore, it is inevitable that the routes required by different processors will overlap or be crowded with each other. To solve this problem, only nets spatially independent of each other should be handled, but the selection method of the nets and the area where the search line is generated are limited, and the wiring performance is deteriorated.

【0021】第三の分割統治法に基づくアルゴリズを並
列化したものには、R.J. Brouwer and P.Baner-jee, PH
UGURE:Hierarchical Global Router, “Proc.27th Desi
gn Automation Conference,pp.650-653(1990).がある。
これは、前述したBurstein and Pelavinの方法を並列化
したものである。各分割された領域の処理を異なるプロ
セッサーに割り当てることにより並列化したものであ
る。この方法は階層処理に基づいているので並列化に際
しては配線の質の低下は起こらないメリットがある。し
かし、先に述べたように階層的配線の「配線のリソース
に不均一なばらつきがある場合に、そのローカルな混雑
を上位の階層で考慮することは難しい」という欠点を解
消する引き剥し処理は含まれていない。
RJ Brouwer and P. Baner-jee, PH are the parallelized algorithms based on the third divisional rule.
UGURE: Hierarchical Global Router, “Proc.27th Desi
gn Automation Conference, pp.650-653 (1990).
This is a parallelization of the Burstein and Pelavin method described above. The processing of each divided area is parallelized by assigning it to different processors. Since this method is based on hierarchical processing, there is an advantage that the quality of wiring does not deteriorate when parallelized. However, as described above, the peeling process that eliminates the disadvantage of hierarchical wiring that "it is difficult to consider local congestion in higher layers when there are uneven variations in wiring resources" is Not included.

【0022】[0022]

【発明が解決しようとする課題】上記したように、従来
提案されている未配線解決手段は、ほとんど配線が終了
しほんの一部残った配線不能を解決する事に主眼が置か
れていた。そのため未結線など配線不可能の数が多少増
えたり、複雑になったりすると解決出来なくなる問題が
あった。これは大局的な配線経路の修正が現在提案され
ている手法では不可能なためである。
As described above, the conventionally proposed means for solving unwiring has been focused on solving the problem that the wiring is almost completed and only part of the unwiring remains. Therefore, there is a problem that the problem cannot be solved if the number of unwiring such as unconnected wires increases a little or becomes complicated. This is because global wiring route modification is not possible with the currently proposed method.

【0023】一方、従来の自動配線方法にあっては、再
配線の際に、逐次配線アルゴリズムを用いていたので、
高速性な階層配線で初期配線結果を得ているにも関わら
ず、再配線の段階で多大の時間が掛かることにより総処
理時間を増大させていた。さらに、従来の自動配線にお
っては、再配線処理は逐次アルゴリズムにより行われる
ため、ネットの選択順の問題があり、何度く繰り返して
も局所的な配線混雑が解消されない状態に陥るなどの問
題があった。
On the other hand, in the conventional automatic wiring method, since the sequential wiring algorithm is used at the time of rewiring,
Although the initial wiring result was obtained by the high-speed hierarchical wiring, the total processing time was increased due to the large amount of time required in the rewiring stage. Further, in the conventional automatic routing, since the rerouting process is performed by a sequential algorithm, there is a problem in the order of selecting the nets, and even if it is repeated many times, the local routing congestion cannot be solved. There was a problem.

【0024】また、複数台の処理装置が与えられ場合で
も処理を並列化するのが困難か、あるいは並列化により
配線の質の低下を招くという問題があった。さらに、並
列配線処理によって質の低下を招かないにしても階層配
線の欠点をカバーする後処理が付加されていなかった。
Further, even when a plurality of processing devices are provided, it is difficult to parallelize the processing, or there is a problem that the parallelization causes deterioration of wiring quality. Further, even if the parallel wiring process does not deteriorate the quality, no post-processing is added to cover the drawbacks of the hierarchical wiring.

【0025】そこで、本発明は、この様な従来の事情に
鑑みて成されたものであり、第1の発明の目的は、複雑
な状況に対応でき多少数の多くなった配線不可能状態に
も対応できる大局的な未配線解決手段を実現する事がで
きる自動配線方法を提供することにある。
Therefore, the present invention has been made in view of such a conventional situation, and an object of the first invention is to cope with a complicated situation and to provide a slightly unwiring state. Another object of the present invention is to provide an automatic wiring method capable of realizing a global unwired solving means that can also be dealt with.

【0026】また、第2の発明の目的とするところは、
引き剥し再配線を高速に、かつ配線混雑の解消が大域的
に行われる自動配線方法、及び並列処理が可能である際
に、配線の質を低下させずに高速に自動配線する方法を
提供することにある。
The object of the second invention is to:
(EN) Provided are an automatic wiring method in which stripping rewiring is performed at high speed and wiring congestion is globally eliminated, and a method for performing automatic wiring at high speed without degrading the quality of wiring when parallel processing is possible. Especially.

【0027】[0027]

【課題を解決するための手段】第1の発明における配線
方法においては、まず配線不能が起きた事を検出する配
線不能検出機能が必要である。配線不能状態は利用して
いる自動配線プログラムの仕様によって異なるが、接続
されなければならない配線が未結線である、相互に接触
してはならない信号が接続された短絡回路状態にされて
しまう、などの状態として表現される。この様な状況は
自動配線プログラム自身が識別して状態の信号を出力す
る事が可能である。また配線プログラムの処理終了後に
自動配線プログラムに対する配線要求と実現された回路
と比較する事によって未結線や短絡回路を検出する機能
をプログラムによって実現する事も可能である。
In the wiring method according to the first aspect of the invention, first, a wiring failure detection function for detecting the occurrence of wiring failure is required. The unwiring state depends on the specifications of the automatic wiring program used, but the wiring that must be connected is unconnected, the signals that should not touch each other are short-circuited, etc. Is expressed as the state of. In such a situation, the automatic wiring program itself can identify and output a status signal. Further, after the processing of the wiring program is completed, it is possible to realize the function of detecting an unconnected or short circuit by the program by comparing the wiring request for the automatic wiring program with the realized circuit.

【0028】配線不能に関与する配線を無効化する配線
無効化機能は利用している詳細および概略配線プログラ
ムのデータ表現の方法によって各種の実現法が可能とな
る。各個別信号に対応する配線の状況を示す状態フラグ
のごときものをそれぞれの配線が持っている方法におい
ては状態フラグを修正する事と実際の配線データをデー
タ構造から削除する事によって機能が実現される。また
別のデータ表現を持っているのであればそれに対応した
データ構造上の修正および削除を実行すればよい。
The wiring invalidation function for invalidating the wiring related to the inability to perform wiring can be realized in various ways depending on the details used and the data expression method of the general wiring program. In the method in which each wiring has a status flag indicating the status of the wiring corresponding to each individual signal, the function is realized by correcting the status flag and deleting the actual wiring data from the data structure. It If it has another data expression, the modification and deletion in the data structure corresponding to it may be executed.

【0029】配線不能は上記のように自動配線プログラ
ムがそのような不能状態が起こった時にフラグを立てる
などの方法によって通知するようにしてもいいし、個別
の配線不能検出機能を持って調べてその結果によって制
御を変更する事もできる。再びこの再配線制御機能によ
り概略再配線を行う機能を呼び出す事によって大局的な
経路を最適化する事が可能となる。
As described above, the wiring failure may be notified by the automatic wiring program by setting a flag or the like when such a disabled state occurs. The control can be changed depending on the result. It is possible to optimize the global route by calling the function for performing the approximate rewiring again by this rewiring control function.

【0030】大局的な概略配線を最適化する機能は基本
的に一般の配線プログラムにおける概略配線と同じ機能
でもよく、対象チップ上の配線禁止領域、配線可能領域
などのマクロなモデルを作成しそれをグラフまたはネッ
トワークとして表現するなどの処理をし、その上でネッ
トワークフロウの最適化や迷路法により配線するなどの
手法を用いて配線を行っていく。
The function of optimizing the global rough wiring may be basically the same as that of the general wiring in a general wiring program, and a macro model such as a wiring prohibited area or a wirable area on the target chip is created. Is expressed as a graph or a network, and then wiring is performed using a method such as optimization of the network flow or wiring by the maze method.

【0031】詳細配線は公知の手法、たとえば迷路法、
ラインサーチ法などを利用して実現する事ができる。
The detailed wiring is a known method, for example, a maze method,
It can be realized by using the line search method.

【0032】本自動配線方法は以上のような機能から構
成され通常の配線終了時に配線不能が発生したときに当
該配線不良および関連するネットを概略配線および詳細
配線の二段階を経て大局的に配線経路の修正・改良を行
い配線不能の問題を解決する。
This automatic wiring method is constituted by the above-mentioned functions, and when a wiring failure occurs at the end of normal wiring, the wiring failure and the related net are globally wired through two steps of rough wiring and detailed wiring. Correct and improve the route to solve the problem of unwiring.

【0033】大局的な配線回路の改良においては直接的
に配線不能状態に関与していない配線についても概略記
配線および詳細配線を改良可能にするように各配線ごと
の状態を記憶する記憶語またはフラグを修正できる。
In the global improvement of the wiring circuit, a memory word for storing the state of each wiring so that the outline wiring and the detailed wiring can be improved even for the wiring not directly involved in the non-wiring state or You can modify the flags.

【0034】さらにこの様な状態を記憶する記憶語に配
線不能解決のための概略配線を行う再配線段階において
配線が修正されたかまたは当該配線の修正が必要になっ
たかどうかを記憶する欄を作り修正された場合は記憶を
しておく。この記憶欄を利用して変化の起きなかった概
略配線に対応する詳細配線は再度詳細配線を行う必要を
なくす。
Further, a column for storing whether or not the wiring is corrected or the wiring needs to be corrected in the rewiring step of performing the rough wiring for solving the wiring failure in the memory word for storing such a state is created. If it is modified, remember it. By using this storage field, detailed wiring corresponding to the general wiring that has not changed does not require detailed wiring again.

【0035】また、第2の発明は、同電位端子間を結ぶ
ネットが複数個与えられた領域内で全ネットの経路を求
める際に、まず前記ネットの初期配線経路を求め、当該
領域内の配線混雑を調べ、配線混雑箇所が存在する場
合、再配線する領域を決定し、前記再配線領域を複数個
の領域に分割し、前記分割領域の境界上で配線が混雑し
ている位置からネットを引き剥し、引き剥したネットに
対応する混雑情報データを更新し、分割領域境界におい
て引き剥したネットの通過位置を再決定する処理を再帰
的に繰り返すことによって引き剥し再配線を行うことを
要旨とする。
Further, in the second invention, when the routes of all the nets are obtained in the region where a plurality of nets connecting the same potential terminals are given, first, the initial wiring route of the nets is obtained, Check the wiring congestion, and if there is a wiring congestion location, determine the area to be rewired, divide the rewiring area into a plurality of areas, and select the net from the position where the wiring is congested on the boundary of the divided area. Peeling off, renewing the congestion information data corresponding to the peeled net, and recursively repeating the processing to redetermine the passing position of the peeled net at the boundary of the division area. And

【0036】さらに、第2の発明は、前記配線方法にお
いて、初期配線も領域分割処理を繰り返す階層的配線処
理に基づき、初期配線部および前記階層的引き剥し再配
線部は、分割された個々の部分領域における処理を別々
の処理装置に割り当てる並列処理配線を特徴とする。
Furthermore, in a second aspect of the present invention, in the wiring method, the initial wiring part and the hierarchical peeling-off rewiring part are also divided based on a hierarchical wiring process in which the area dividing process is repeated for the initial wiring. It features parallel processing wiring that allocates processing in the partial areas to different processing devices.

【0037】[0037]

【作用】上記の手段により、第1の発明は、配線不能検
出機能によって検出された自動配線で配線しきれなかっ
た配線部分は配線無効化機能によって一度配線が引きは
がされる。このデータは再配線制御機能によって再び概
略配線が行われる、ここで概略配線は一般にグローバル
な混雑度を考慮して配線を行うので大局的に見て混雑し
た領域を避けて経路を再設定できるという有利な点があ
る。またここでは経路を変更する対象は配線不能になっ
た信号の配線だけでなくその他の一般的な配線、つまり
電源配線、クロック配線などであらかじめ経路が決定さ
れている配線以外についても必要な場合は経路の変更を
許す事によりさらに自由度が多くなり配線改良の可能性
を高くする。一方すべての信号について再び詳細配線を
実施するのでは時間がかかる。その問題を回避するため
に再概略配線時に変更しなかった配線は詳細配線時にも
との配線をそのまま使用できるようにする。これによっ
てかなりの配線時間を節約できる。
With the above means, in the first aspect of the present invention, the wiring portion which cannot be completely wired by the automatic wiring detected by the wiring failure detection function is once stripped by the wiring invalidation function. This data is roughly routed again by the rerouting control function. Here, since the rough routing is generally performed in consideration of the global congestion degree, it is possible to reconfigure the route by avoiding the crowded area from a global perspective. There are advantages. If you want to change the route here, you need not only the wiring of the signal that cannot be routed, but also other general wiring, that is, wiring other than the wiring for which the route has been determined in advance such as power supply wiring and clock wiring. By allowing the route to be changed, the degree of freedom is further increased and the possibility of wiring improvement is increased. On the other hand, it takes time to perform detailed wiring again for all signals. In order to avoid this problem, the wiring that has not been changed during the re-routing wiring can be used as it is during the detailed wiring. This can save considerable wiring time.

【0038】また、第2の発明による自動配線方法は、
引き剥し再配線を分割統治法に基づく階層的処理で行う
ために高速に行うことが出来、かつ配線混雑の解消が大
域的に行われるため質の良い配線結果を得ることができ
る。さらに、並列処理が可能である際に、並列処理する
ことによる配線の質の低下を招かないで、かつ高速に自
動配線することが出来る。
The automatic wiring method according to the second invention is
The stripping rewiring can be performed at high speed because it is performed hierarchically based on the division and conquer method, and the wiring congestion can be eliminated globally, so that a good wiring result can be obtained. Further, when the parallel processing is possible, the automatic wiring can be performed at high speed without causing the deterioration of the quality of the wiring due to the parallel processing.

【0039】[0039]

【実施例】以下に本発明の実施例を説明する。EXAMPLES Examples of the present invention will be described below.

【0040】第1の発明 多くのレイアウトプログラムは図3に示したように自動
配置の後に配線をおこなう。さらに多くの場合配線の内
部では概略配線と詳細配線の二段階の処理を行ってい
る。
First Invention Many layout programs perform wiring after automatic placement as shown in FIG. Further, in many cases, a two-step process of rough wiring and detailed wiring is performed inside the wiring.

【0041】概略配線においては全体的に見てチップ上
の配線の混雑が均等になるように配線経路、利用する配
線層などを決定する。ただし配線を行う領域は実際のチ
ッブのように配線禁止領域や端子位置・形状を持つもの
よりも抽象化した表現をしている。このため大規模なチ
ップ領域全体を考慮して効率よく配線できる。
In the rough wiring, the wiring route, the wiring layer to be used, etc. are determined so that the congestion of the wiring on the chip becomes uniform as a whole. However, the area in which wiring is performed is expressed in an abstracted manner as compared with the actual chip, which has a wiring prohibited area and terminal positions / shapes. Therefore, the wiring can be efficiently performed in consideration of the entire large-scale chip area.

【0042】詳細配線は概略配線で決定した概略の配線
経路に従ってセル上の配線禁止領域や具体的端子位置な
どを考慮して配線の経路などを決定していく。詳細配線
のステップで配線の位置座標が決定される。
In the detailed wiring, the wiring route and the like are determined in consideration of the wiring prohibited area on the cell and the specific terminal position in accordance with the rough wiring route determined by the rough wiring. The position coordinates of the wiring are determined in the step of detailed wiring.

【0043】本実施例は配線の結果残った配線不能を解
決し配線を行う。以下、図1のフローチャートに従って
説明をする。配線を行う時にはすでに配置は決定されて
いる。多くの配線プログラムにおいては配置結果を受
け、配線要求に従って図1のごとく概略配線(11)、
詳細配線(12)の二段階で配線を実行する。ゲートア
レイ方法のLSIのように配線リソースに上限が有る場
合は配線不能な状況が起こる。そのような状況が起こっ
た時の処理は詳細配線プログラムによって各々異なる。
一つの方法は不可能な配線はそのまま結線せずに残す、
他の方法は強引にショートを起こしても結線してしまう
やり方である。いずれにしても詳細配線プログラムは配
線不能状態が起きたことを認知して信号やレポートを出
すことができる。また必要な場合は配線結果と配線要求
を突き合わせることで比較チェックを行うことが可能で
ある。この様に配線不能が起こった事を検知する機能は
比較的容易に実現できる。
In the present embodiment, wiring is carried out by solving the problem that wiring remains unwiring. Hereinafter, description will be given according to the flowchart of FIG. The placement has already been determined when wiring is performed. In many wiring programs, the layout result is received, and the general wiring (11) as shown in FIG.
Wiring is performed in two stages of detailed wiring (12). When the wiring resource has an upper limit like the LSI of the gate array method, a situation in which wiring is impossible occurs. The processing when such a situation occurs differs depending on the detailed wiring program.
One method is impossible, leave the wiring as it is,
The other method is to connect even if a short circuit is forced. In any case, the detailed wiring program can recognize that the unwireable state has occurred and can issue a signal or report. If necessary, a comparison check can be performed by matching the wiring result with the wiring request. The function of detecting the occurrence of the wiring failure can be realized relatively easily.

【0044】図1の13に示された配線不能、ここで
は、未結線を検知し処理の流れを制御する機能で処理を
振り分ける。もし配線不能がなければ配線処理を完了し
処理を終了する。もし未結線またはショートなどの配線
不能な状況が発生した場合は図1の14に示された配線
を無効化する機能が関連する配線のデータをデータ構造
から削除したり変更したりする。さらに必要な場合はそ
の他の各配線の状態も変更する。図1の15の概略再配
線においては配線不能となっている信号の大局的な経路
を見直して新しい経路を発見する。
The wiring cannot be performed, which is shown in 13 of FIG. 1, here, the processing is distributed by the function of detecting the unconnected and controlling the flow of the processing. If there is no wiring failure, the wiring process is completed and the process ends. If an unwiring situation such as unconnected or short circuit occurs, the data of the wiring related to the wiring invalidation function shown by 14 in FIG. 1 is deleted or changed from the data structure. Further, if necessary, the state of each other wiring is also changed. In the general rewiring 15 of FIG. 1, the global route of the signal that cannot be routed is reviewed and a new route is discovered.

【0045】図4に示されたようにもともとの端子対4
4を結ぶ配線経路45が混雑した領域43を通過してい
た。この場合概略経路レベルで見直し46の経路を発見
すれば結べる可能性が高くなる。しかし詳細配線レベル
だけの改良では経路45を大きく変更する事はむずかし
い。ここで図4では41がチップを42が混雑を評価す
るチップ上の格子を、43は特に混雑した格子を、45
は混雑した領域を通過する経路を、46は概略再配線が
見つけた新しい経路を示している。図1の16は新しく
発見した経路に対する詳細配線を行う。
Original terminal pair 4 as shown in FIG.
The wiring route 45 connecting the four passes through the congested area 43. In this case, if the route of the review 46 is found at the rough route level, there is a high possibility that it can be connected. However, it is difficult to greatly change the route 45 by improving only the detailed wiring level. In FIG. 4, 41 is a chip, 42 is a grid on the chip for evaluating congestion, 43 is a particularly crowded grid, and 45 is a grid.
Indicates a route passing through the congested area, and 46 indicates a new route found by the rough rewiring. Reference numeral 16 in FIG. 1 performs detailed wiring for the newly discovered route.

【0046】別の実施例としては図2のように配線不能
が発生したときに配線の無効化などの処理をしたあとに
制御を前に戻して初期的な概略配線、詳細配線を再び行
う方法も可能である。この方法においては概略配線、詳
細配線と概略再配線、詳細再配線の機能を共通化できる
特徴がある。
As another embodiment, as shown in FIG. 2, after performing processing such as invalidation of wiring when a wiring failure occurs, control is returned to the previous step to perform initial rough wiring and detailed wiring again. Is also possible. This method is characterized in that the functions of rough wiring, detailed wiring, rough rewiring, and fine rewiring can be shared.

【0047】図1、および2の14、24の配線を無効
化する機能において配線不能に関与しない配線の属性を
変更する事が可能である。このような配線不能に直接的
に関与しない配線も、直接的に配線不能に関与した配
線、たとえばオープン、ショートを起こした配線を修正
する時に修正したほうが良い結果を得られる場合が多い
ことは実験により明らかである。従って各信号配線ごと
に配線の状態を記録しておくテーブルやフラグを用意す
る実現手法を用いた時にはこれらのテーブルやフラグな
どを概略再配線に備えてあらかじめ変更しておく必要が
ある。ただし電源・グランド配線やクロック配線などは
大局的に配線経路を変更するとLSIの性能に大きく影
響を与えるために変更を禁止しておく事が望ましい場合
が多い。
In the function of invalidating the wirings 14 and 24 in FIGS. 1 and 2, it is possible to change the attributes of the wirings which are not involved in the wiring failure. Experiments have shown that it is often possible to obtain better results even for such wiring that is not directly involved in unwiring, when correcting wiring that is directly involved in unwiring, for example, wiring that causes an open or short circuit. Is more obvious. Therefore, when using a realization method that prepares a table or flag for recording the wiring state for each signal wiring, it is necessary to change these tables, flags, etc. in advance for the general rewiring. However, it is often desirable to prohibit the change of the power supply / ground wiring, the clock wiring, and the like, because the performance of the LSI is greatly affected if the wiring path is changed in a large scale.

【0048】図4に示したようにチップ上の各矩形領域
ごとに配線混雑度を評価する概略配線モデルを使用する
場合もあるし、これと双対な配線グラフを作成しその枝
に混雑度を対応させる事も可能である。ここで詳細配線
の結果から得られた混雑度情報は概略配線時に得られる
情報より精度も高く有効である。これは概略配線では考
慮できないような詳細な情報も詳細配線では考慮されて
いるためである。そこで概略配線のモデルにそのような
情報を戻してやる事により、より精度の高い確実な概略
配線が可能となる。さらに意図的な概略配線に戻す情報
を制御する事によって概略配線の結果を制御する事も可
能となる。
As shown in FIG. 4, a schematic wiring model for evaluating the wiring congestion degree for each rectangular area on the chip may be used, or a wiring graph dual to this may be created and the congestion degree is assigned to the branch. It is also possible to correspond. Here, the congestion degree information obtained from the result of the detailed wiring is more accurate and effective than the information obtained at the time of the rough wiring. This is because detailed information, which cannot be considered in rough wiring, is also taken into consideration in detailed wiring. Therefore, by returning such information to the model of rough wiring, more accurate and reliable rough wiring becomes possible. Further, it is possible to control the result of the rough wiring by controlling the information to be returned to the intentional rough wiring.

【0049】第2の発明 実施例1 以下の実施例1では、配線は概略配線を例に上げて説明
する。一般にLSIの配線は概略配線と詳細配線の2つ
のステップに分けて行われることが多い。概略配線は、
チップ上に粗い縦横の概略格子を設定してこの格子を単
位として経路を決定し、詳細配線はチップを複数の領域
に分けて実際のレイアウトルールに基づく格子上で経路
の決定を行うものである。概略配線は、異なる概略格子
のセルに属するネットの経路を決定する。その際、概略
配線の目的は、各概略セルの境界毎に配線が何本通過す
ることができるかを表す配線リソースを計算して、全ネ
ットの経路を各概略セルの配線リソースをオーバーフロ
ーしないようにすることである。
Second Invention Example 1 In Example 1 below, the wiring will be described by taking a schematic wiring as an example. Generally, the wiring of the LSI is often divided into two steps, that is, a rough wiring and a detailed wiring. The general wiring is
The rough vertical and horizontal rough grids are set on the chip to determine the route using this grid as a unit, and the detailed wiring divides the chip into multiple areas and determines the route on the grid based on the actual layout rules. . The rough wiring determines the routes of nets belonging to cells of different rough grids. At that time, the purpose of the rough wiring is to calculate a wiring resource that indicates how many wirings can pass at each boundary of each rough cell so that the route of all nets does not overflow the wiring resource of each rough cell. Is to

【0050】図5は、第2の発明における実施例1の自
動配線方法を示すフローチャートである。
FIG. 5 is a flow chart showing an automatic wiring method according to the first embodiment of the second invention.

【0051】第2の発明の中心部分はステップS2から
S12の部分である。これらのステップに先立ち、ステ
ップS1で全対象ネットに対してその初期配線結果を作
成する。初期配線は、階層的なアルゴリムによって求め
ても良いし逐次的な配線アルゴリズムで求めても良い
し、あるいはまた他のネットの存在を考慮することなく
独立に配線した結果でもよい。ステップS2からS12
はその初期配線結果に対して配線経路を改善するもので
ある。本発明は、階層的なアルゴリズムに基き、ステッ
プS2からS12の処理は再帰的に行われる。
The central part of the second invention is the part of steps S2 to S12. Prior to these steps, the initial wiring result is created for all target nets in step S1. The initial wiring may be obtained by a hierarchical algorithm, a sequential wiring algorithm, or may be the result of wiring independently without considering the existence of other nets. Steps S2 to S12
Improves the wiring route with respect to the initial wiring result. The present invention is based on a hierarchical algorithm, and the processes of steps S2 to S12 are recursively performed.

【0052】当該部分領域の処理が終了するのは、その
領域のサイズが最小サイズ、すなわち概略格子のサイズ
になったときか(ステップS12)、その領域を内に混
雑箇所が存在しなく(ステップS3)しかも未結線とな
っているネットが存在しない場合(ステップS5)であ
る。
The processing of the partial area ends when the size of the area reaches the minimum size, that is, the size of the rough grid (step S12), or when there is no congestion point in the area (step S12). S3) In addition, there is no unconnected net (step S5).

【0053】以下、ステップS2からS12までの処理
を図面を用いて具体的な説明をする。
The processing from steps S2 to S12 will be specifically described below with reference to the drawings.

【0054】まず、ステッフS2は当該領域の配線混雑
を調べる処理である。ここで当該配線領域とは、階層の
トップの場合はチップに対応するが、以下の階層レベル
の場合には分割されたチップ上の一部の領域になる。図
6は、配線混雑を説明するための図である。いま、同図
に示す数値は、初期は配線後の概略格子の各境界の配線
リソースの残りの値を示す。値「0」はその境界のリソ
ースは何本かの配線で完全に消費され、他のネットがこ
こを通過することが出来ないこと示す。値「1」は経路
決定後その境界のリソースには1残量があること、すな
わち、その境界を後1本ネットが通過できることを示
す。以下、値「2」,値「3」についても同様に残量が
2,3あることを示す。
First, the step S2 is a process for checking the wiring congestion in the area. Here, the wiring area corresponds to the chip in the case of the top of the hierarchy, but becomes a partial area on the divided chip in the case of the following hierarchy levels. FIG. 6 is a diagram for explaining wiring congestion. Now, the numerical values shown in the figure initially show the remaining values of the wiring resources at each boundary of the schematic lattice after wiring. A value of "0" indicates that the resource at that boundary is completely consumed by some of the wires and no other net can pass through it. The value "1" indicates that the resource at the boundary has one remaining amount after the route is determined, that is, one net after the boundary can pass through. Hereinafter, similarly for the value "2" and the value "3", it is shown that the remaining amount is a few.

【0055】値「−1」はその境界を本来通過できる本
数より1本多くネットが通過していること、すなわちオ
ーバーフローが1起こっていることを示す。以下、値
「−2」についても同様である。図6には、オーバーフ
ローの発生した境界は太字の矢印で示す(この例では7
箇所存在する)。ステップS2はこのような箇所が存在
するか調べて、ステップS3はその結果に応じて、つぎ
のステップとしてステップS4に移るかステップS5に
移るかを判定する。
The value "-1" indicates that the net has passed by one more than the number of lines that can originally pass through the boundary, that is, that one overflow has occurred. Hereinafter, the same applies to the value "-2". In FIG. 6, the boundary where overflow has occurred is indicated by a bold arrow (7 in this example).
There exist places). Step S2 checks whether such a place exists, and step S3 determines whether to move to step S4 or step S5 as the next step according to the result.

【0056】ステップS4では、再配線する領域を決定
する。この領域の決定に際しては、(1)配線混雑箇所
を包含すること、(2)領域内に存在する未配線の端子
を包含することを考慮する必要がある。配線混雑箇所を
包含する際には、図7(a),(b)に示すような方法
が考えられる。(a)の方法は、配線混雑箇所を全て含
む最小の領域を再配線領域とするものであり、(b)の
方法は、(a)の領域よりも広めに再配線領域を設定す
るものである。(a)の方法は、対象となるデータが少
なく高速に処理することができるが、(b)の方法は、
配線混雑の解消を広い範囲で、グローバルに混雑の分散
化を行うことが可能である。
In step S4, the area for rewiring is determined. In deciding this area, it is necessary to consider (1) inclusion of a wiring congestion area and (2) inclusion of unwired terminals existing in the area. When including a wiring congestion portion, a method as shown in FIGS. 7A and 7B can be considered. In the method (a), the minimum area including all the wiring congestion points is set as the rewiring area, and in the method (b), the rewiring area is set wider than the area (a). is there. The method of (a) has a small amount of target data and can be processed at high speed, but the method of (b) is
It is possible to globally resolve congestion of wiring over a wide range.

【0057】つぎに、ステップS6は、再配線領域を分
割する位置を決定する。領域分割の方法の一例を図8に
示す。(a)は、領域を一直線(カットライン)で2分
割する例を示す。カットラインを選択する方法は、再配
線対象領域内で混雑箇所を最も多く含むカットラインを
選択する。またこのとき、分割面積をほぼ均一に進める
ことにより分割統治による処理の高速性のメリットが得
られるので、分割してできる両領域の面積のバランスを
考慮したカットラインの選択を行なえば良い。その他考
慮した方が良い点については、特願平3−347436
号を参照。
Next, in step S6, the position where the rewiring region is divided is determined. FIG. 8 shows an example of the area division method. (A) shows an example in which the area is divided into two by a straight line (cut line). The method of selecting the cut line is to select the cut line that includes the most congestion points in the rewiring target area. Further, at this time, since the division area can be made substantially uniform to obtain the advantage of high speed processing by division and confinement, it is only necessary to select the cut line in consideration of the balance of the areas of the two areas that can be divided. Regarding other points that should be considered, Japanese Patent Application No. 3-347436.
See issue.

【0058】一方(b)は、領域を複数の連結した直線
で2分割する例を示す。このような分割をする際には、
混雑箇所を最もたくさんカバーする分割方法を選択する
ようにすればよい。また、(b)のような分割では、分
割された下位レベルの部分問題の規模をほぼ同じく易い
のでより好ましい場合がある。
On the other hand, (b) shows an example in which the area is divided into two by a plurality of connected straight lines. When making such a division,
You should choose a partitioning method that covers the most crowded areas. In addition, the division as shown in (b) may be preferable because the divided lower-level subproblems are almost the same in scale.

【0059】ステップS7は、分割境界ライン上で混雑
している領域からネットを引き剥す。図9は分割ライン
上で混雑箇所を通過している引き剥しネットの一例を示
したものである。カットラインL上で配線リソースのオ
ーバーフローの値が「−2」と「−1」の境界からネッ
トが引き剥される。値が「−2」の境界からは2本のネ
ット(ネットT1、ネットT3)が、値が「−1」の境
界からは1本のネット(ネットT2)が引き剥される。
それぞれの境界を通過するネットはこの図に示した以外
にも存在するかもしれないが、複数候補が存在する場合
には配線経路の自由度の多いものを最優先させるなどの
戦略を取れば再配線が効率的に行える。再配線の量を少
なくするために端子数の少ないものを優先させて選択す
る工夫も可能である。
In step S7, the net is stripped from the crowded area on the division boundary line. FIG. 9 shows an example of a tear-off net passing through a congested portion on a dividing line. On the cut line L, the net is torn off from the boundary between the wiring resource overflow values of "-2" and "-1". Two nets (net T1 and net T3) are separated from the boundary of the value "-2", and one net (net T2) is separated from the boundary of the value "-1".
There may be other nets that pass through each boundary than those shown in this figure, but if there are multiple candidates, it can be re-created if a strategy such as giving the highest degree of freedom to the wiring route the highest priority is taken. Wiring can be done efficiently. In order to reduce the amount of rewiring, it is possible to prioritize the selection with a smaller number of terminals.

【0060】ステップS8では、引き剥されたネットが
通過していた境界の配線リソースの情報を更新する。図
10は、配線リソースの更新の様子を示す図である。同
図は、図9に対して3本のネット(図中波線で示した経
路)が引き剥されたあとの配線リソースの値を示す。カ
ットラインL上の2箇所境界の配線リソースは、「−
2」から「0」、および「−1」から「0」に更新され
る。また、カットライン上だけでなく、引き剥しネット
の通過していた全ての境界の配線リソースの値の更新も
行われる。これにともない、ネットT1の経路が引き剥
されたのにともない、混雑境界の一つが「−1」から
「0」になり、。ネットT2が通過していた混雑境界の
一つも「−2」から「−1」に更新されている。
In step S8, the information on the wiring resource at the boundary through which the stripped net has passed is updated. FIG. 10 is a diagram showing how the wiring resource is updated. This figure shows the value of the wiring resource after the three nets (paths shown by the wavy lines in the figure) are peeled off with respect to FIG. The wiring resource at the boundary between the two locations on the cut line L is "-
2 "to" 0 "and" -1 "to" 0 ". Further, not only on the cut line but also on the boundaries of the wiring resources that have passed through the peeling net, the values of the wiring resources are updated. Along with this, one of the congestion boundaries changes from "-1" to "0" as the route of the net T1 is stripped off. One of the congestion boundaries through which the net T2 has passed is also updated from "-2" to "-1".

【0061】ステップS9では、つぎの2種類のネット
の分割ライン上での位置決定を行う。一つは、ステップ
S8で引き剥されたネットであり、もう一つは、上位の
階層で引き剥されたネットでありかつこの分割ラインの
左右に端子を持つネット(いわゆるカットネット)であ
る。位置決定の方法は、従来技術の項で言及したLauthe
r の方法を適用することができる。すなわち、ネットフ
ローアルゴリズムとしてよく知られた線形割当アルゴリ
ズムに帰着して対象となる全ネットの位置決めを同時に
行うことができる。この際、各境界には配線リソースの
制約があるのでオーバーフローしないように、かつ配線
長ができるだけ短くなるように割当位置を決定する。具
体的には以下の通りである。
In step S9, the positions of the following two types of nets on the division line are determined. One is a net that was torn off in step S8, and the other was a net that was torn off in the upper layer and that had terminals on the left and right of this division line (so-called cut net). The method of position determination is based on the Lauthe mentioned in the prior art section.
The method of r can be applied. That is, it is possible to reduce the linear allocation algorithm well known as a net flow algorithm and perform positioning of all target nets at the same time. At this time, since the wiring resource is restricted at each boundary, the allocation position is determined so as not to overflow and the wiring length is as short as possible. Specifically, it is as follows.

【0062】対象となるネットの集合を{N1 ,…,N
N }、分割ライン上の境界を{S1,…,SM }、それ
らの配線要領{CAP1 ,…,CAPM }とし、ネット
iを境界Sj に割当たときの配線長を反映させたコス
トをCijで定義すると、以下の最小化問題として定式化
できる。
Let the set of target nets be {N 1 , ..., N
N }, the boundaries on the division lines are {S 1 , ..., S M }, and their wiring points are {CAP 1 , ..., CAP M }, and the wiring length when the net N i is assigned to the boundary S j is reflected. If the cost is defined by C ij , it can be formulated as the following minimization problem.

【0063】[0063]

【数1】 Subject to[Equation 1] Subject to

【数2】 ここで、Xi,j はネットNi が境界Sj に割り当てられ
たとき1、ネットNiが境界Sj に割り当てられなかっ
たとき0であるとする。
[Equation 2] Here, X i, j is assumed to be 0 when 1, the net N i is not assigned to the boundary S j when the net N i is assigned to the boundary S j.

【0064】配線長を反映させたコストCijは、たとえ
ばつぎのようにすればよい。ネットiの端子の存在する
領域内の境界Sj に対しては最小コスト(例えば0)
を、この領域からはずれる境界はその領域からはなれる
距離に比例して増加されるなどというコストの設定が可
能である。
The cost C ij reflecting the wiring length may be set as follows, for example. Minimum cost (for example, 0) for the boundary S j in the area where the terminals of the net i exist
It is possible to set the cost such that the boundary deviating from this area is increased in proportion to the distance deviating from the area.

【0065】以上の一般的な定式を具体的に図11の例
に当てはめて説明する。対象となるネット数Nは3であ
り、その集合は{T1,T2,T3}である。分割ライ
ン上の境界の数Mは6であり、その集合は{S1,S
2,S3,S4,S5,S6}である。各境界の配線要
領はそれぞれ、{1,0,2,0,2,0}である。コ
スト行列Cijはたとえば、
The above general formula will be concretely applied to the example of FIG. The number of target nets N is 3, and the set is {T1, T2, T3}. The number of boundaries M on the dividing line is 6, and the set is {S1, S
2, S3, S4, S5, S6}. The wiring procedure of each boundary is {1,0,2,0,2,0}. The cost matrix C ij is, for example,

【数3】 図11は、再配線の一例を示す。ネットT1は境界S3
に、ネットT2は境界S1に、ネットT3は境界S5に
割り当てられる。割当後の各境界の配線リソースは、
{0,0,1,0,1,0}となりオーバーフローは解
消されている。
[Equation 3] FIG. 11 shows an example of rewiring. Net T1 is boundary S3
The net T2 is assigned to the boundary S1 and the net T3 is assigned to the boundary S5. The wiring resources at each boundary after allocation are
It becomes {0,0,1,0,1,0}, and the overflow is eliminated.

【0066】次のステップS10は、新たに割当られた
位置を仮想的な端子として登録して下位の階層処理のた
めの準備をする。ステップS11は分割されたそれぞれ
の部部分領域の配線問題を再帰処理として解くものであ
る。図12は、再起処理の様子を分かりやすく説明した
図である。(a)は、第一階層の処理を、(b)は第二
階層の処理(このレベルには2つの部分領域がある)、
(c)は第三階層の処理(このレベルには43つの部分
領域がある)を示している。それぞれ、現在処理されて
いる領域が網掛し、現在分割されている位置が太いライ
ンLで示している。
In the next step S10, the newly assigned position is registered as a virtual terminal to prepare for lower layer processing. In step S11, the wiring problem of each divided partial area is solved as a recursive process. FIG. 12 is a diagram for explaining the state of the restart process in an easy-to-understand manner. (A) is the processing of the first layer, (b) is the processing of the second layer (there are two partial areas at this level),
(C) shows the processing of the third layer (there are 43 partial areas at this level). In each of these, the area currently being processed is shaded, and the position of the current division is indicated by a thick line L.

【0067】以上説明した処理の際、ステップS5は、
部分領域内で上位階層で引き剥されて未結線となってい
るものが存在するか否かを判定する部分である。領域内
に配線混雑箇所がなくかつ未結線ネットがない場合には
この領域の処理は完了していると判断できるので、さら
に分割処理を進める必要はない。逆に配線混雑はないが
領域内に引き剥されたネットがある場合にはステップS
4以降の処理に移行する。
In the process described above, step S5 is
This is a portion for determining whether or not there is an unconnected wire that has been torn off in the upper layer in the partial area. If there is no wiring congestion part in the area and there is no unconnected net, it can be judged that the processing of this area has been completed, and therefore it is not necessary to proceed with the division processing. On the contrary, if there is no wiring congestion but there is a torn net in the area, step S
The processing shifts to 4 and thereafter.

【0068】以上の実施例の中で、配線混雑の解消が大
域的に行われる点を説明する。ステップS9は、引き剥
されたネットの再配線処理であるが、この処理では分割
ライン上の全ての境界が同時に考慮されている。したが
って、その上の配線混雑の解消はそのライン上でグロー
バルに行われる。また、この分割ラインの挿入が2次元
的に順次挿入されていくので、混雑の改良はグローバル
に行われる。さらに、ステップS2からS11までの繰
り返し処理をチップの領域に対して何度か繰り返すこと
により、配線混雑の分散化を図ることができる。
In the above embodiments, the point that the wiring congestion is eliminated globally will be described. Step S9 is a rewiring process for the stripped net. In this process, all the boundaries on the division line are considered at the same time. Therefore, the relieving of wiring congestion on the line is globally performed on the line. Further, since the division lines are sequentially inserted two-dimensionally, congestion can be improved globally. Furthermore, by repeating the repeating processing from steps S2 to S11 for the chip area several times, the wiring congestion can be dispersed.

【0069】また、従来技術では、1ネット毎の配線処
理でするためにネットの選択順によっては処理にループ
が発生して配線混雑の解消が不可能な状況に陥る欠点が
あったが、本実施例ではカットライン上で引き剥された
複数のネットの再配線が同時に行われるので、このよう
な問題を緩和することができる。
Further, in the prior art, since the wiring process is performed for each net, there is a drawback that a loop occurs in the process depending on the selection order of the nets and the wiring congestion cannot be eliminated. In the embodiment, since the rewiring of a plurality of nets peeled off on the cut line is performed at the same time, such a problem can be alleviated.

【0070】実施例2 実施例2では、配線処理する処理装置が複数個存在する
場合を仮定している。たとえば、マルチCPU計算機や
ネットワークで接続されたワークステーションなどを対
象とする。
Embodiment 2 In Embodiment 2, it is assumed that there are a plurality of processing devices for wiring processing. For example, a multi-CPU computer or a workstation connected by a network is targeted.

【0071】第2の発明における実施例2を図13に示
す。図13(a)は、実施例1で述べた各レベルの問題
(ステップS2からS10までの仕事)を示す。(L
1)は第一階層の仕事を、(L2−1),(L2−2)
は第二階層の仕事を、(L3−1),…,(L3−4)
は第三階層の仕事を示す。図13(b)は、与えられた
プロセッサー(P1,P2,P3)の時間的な処理の様
子を示す。この例では3台のプロセッサーが利用できる
例を示した。時間的な流れは上から下に示した。処理中
のプロセッサーの状態を太い両向き矢印線で示した。図
13は、実施例2における並列配線方式を示すものであ
り、(a)の各仕事を(b)の各プロセッサーに図の矢
印のように割り当てるものである。
The second embodiment of the second invention is shown in FIG. FIG. 13A shows the problem (work from steps S2 to S10) of each level described in the first embodiment. (L
1) is the job of the first layer, (L2-1), (L2-2)
Does the work of the second layer, (L3-1), ..., (L3-4)
Indicates third-tier work. FIG. 13B shows a state of temporal processing of the given processors (P1, P2, P3). In this example, three processors can be used. The temporal flow is shown from top to bottom. The state of the processor being processed is indicated by a thick double-headed arrow line. FIG. 13 shows a parallel wiring system in the second embodiment, in which each job in (a) is assigned to each processor in (b) as indicated by an arrow in the figure.

【0072】具体的に説明する。各プロセッサーへの仕
事の割当はつぎのように行われる。第一階層の仕事(L
1)は、まずプロセッサーP1に割当てられる。つぎ
に、その結果生成される2つの部分領域の仕事(L2−
1),(L2−2)はその境界線上のネットの通過位置
が全て決定されているので、互いに独立した問題であ
り、2つのプロセッサーに独立に割り当てることができ
る。同図は仕事(L2−1)がプロセッサーP2に割り
当てられ、仕事(L2−2)がプロセッサーP3に割り
当てられた図を示す。
A specific description will be given. The assignment of work to each processor is performed as follows. First level work (L
1) is first assigned to the processor P1. Next, the work (L2-
In 1) and (L2-2), since all the passing positions of the net on the boundary line are determined, they are problems independent of each other and can be independently assigned to two processors. The figure shows a diagram in which the work (L2-1) is assigned to the processor P2 and the work (L2-2) is assigned to the processor P3.

【0073】つぎに、プロセッサーP2の処理の完了を
待って、仕事(L3−1),(L3−2)に取り掛かる
ことが出来る。その際両仕事は独立しているので2つの
プロセッサーに独立に割り当てることが可能である。こ
の例では仕事(L3−1)が持ち状態になっているプロ
セッサーP1に、仕事(L3−2)が仕事(L2−1)
を終えたばかりのプロセッサーP2に割当てられた様子
を示す。以下このような割当処理を階層処理の階層構造
に基づいて順次実行される。
Next, the jobs (L3-1) and (L3-2) can be started after the completion of the processing of the processor P2. Since both jobs are independent, it is possible to assign them to two processors independently. In this example, the work (L3-1) is assigned to the processor P1 in which the work (L3-1) is in the holding state.
Shows the state of being assigned to the processor P2 which has just finished. Hereinafter, such allocation processing is sequentially executed based on the hierarchical structure of the hierarchical processing.

【0074】並列処理を行う際、考慮すべき点は、互い
に独立した仕事をプロセッサーに効率良く割り当てるこ
とである。本発明は、初期配線と引き剥し再配線の両処
理を分割統治法に基づいて行うため、問題は完全に独立
性をもち、従って各プロセッサーは互いに他のプロセッ
サーとのやりとりを行う必要がなく効率的な処理が可能
である。また、従来技術でみられたような並列化によっ
て配線の質が低下するようなことは起こらない。
When performing parallel processing, a point to be considered is to efficiently allocate independent jobs to the processors. Since the present invention uses both divide-and-conquer methods for both initial wiring and tear-off rewiring, the problem is completely independent, so that each processor does not need to interact with each other to be efficient. Processing is possible. Also, the parallelization that is seen in the prior art does not deteriorate the quality of the wiring.

【0075】また、並列配線処理を行う際に、並列性を
十分出すためには各プロセッサーがアイドリング(仕事
がなくて仕事待ちの状態)を起こさないようにする必要
がある。実施例2では、第一階層の仕事に際しプロセッ
サーP2,P3がアイドリング状態であるが、上位階層
では配線混雑箇所から引き剥されたネットのみ再配線の
対象となるのに対して、下位の階層ではその領域内部の
混雑箇所からの引き剥しネットの処理に加えて上位階層
で引き剥されたネットも対象となる可能性があり、第一
階層の処理が他の階層の処理に比べて多大な時間を要す
ることはない。また、並列性をさらにあげるために、比
較的時間のかかるネットの境界へ割当処理を並列化する
こともできる。たとえば、カットラインに割り当てるN
本のネットを2つのグループに分けて各グループ内での
割当をプロセッサーP2,P3に割当ることも可能であ
る。このようにすればアイドリング状態にあるプロセッ
サーを効率的に使用できる。
Further, when performing the parallel wiring processing, it is necessary to prevent each processor from idling (state of waiting for work without work) in order to obtain sufficient parallelism. In the second embodiment, the processors P2 and P3 are in the idling state during the work of the first layer, but in the upper layer, only the nets separated from the wiring congestion points are subject to rewiring, whereas in the lower layer, the nets are rerouted. In addition to the processing of stripped nets from the congestion area inside that area, nets stripped off in the upper layer may also be the target, and the processing of the first layer takes a lot of time compared to the processing of other layers. There is no need. Further, in order to further increase the parallelism, the allocation processing can be parallelized to the boundary of the net, which takes a relatively long time. For example, N assigned to the cut line
It is also possible to divide the book net into two groups and allocate the processors in each group to the processors P2 and P3. In this way, the idle processor can be used efficiently.

【0076】以上実施例1,2を述べたが、第2の発明
はこれらの実施例に限定されるものではない。以下、こ
の点について説明する。
Although the first and second embodiments have been described above, the second invention is not limited to these embodiments. Hereinafter, this point will be described.

【0077】実施例1で述べた配線処理では、再帰的な
引き剥し処理のステップS2からS12は1回の繰り返
し処理として記述したが、1回の処理で配線混雑が所望
の値以下に下がっていない場合には、再度繰り返すこと
ができる。再度繰り返された場合には、配線混雑の分布
に変化が起こるので領域の分割の仕方が異なる可能性が
ある。このことは、配線の混雑をを別の状況で解消する
ことになり、処理がループに陥ることを回避することが
できる。
In the wiring process described in the first embodiment, steps S2 to S12 of the recursive peeling process are described as one repetitive process, but the wiring congestion is reduced to a desired value or less in one process. If not, it can be repeated again. If it is repeated again, the distribution of wiring congestion will change, and thus the way of dividing the region may be different. This eliminates the congestion of the wiring in another situation, and it is possible to prevent the processing from falling into a loop.

【0078】また、以上の実施例では、本発明を概略配
線に適用した場合について述べたが、詳細配線にも適用
可能である。たとえば、前述の概略格子の大きさを詳細
配線で使用する格子(グリッド)と同じに設定して、各
概略配線格子毎に与える配線リソースを対応するグリッ
ドが通過できるか否かという情報(例えば、1,0)を
持たせることにより、同様に扱える。その際、前述の配
線混雑という用語を配線ショートなどという用語に置き
換えて扱えば良い。
Further, in the above embodiments, the case where the present invention is applied to the general wiring is described, but it is also applicable to the detailed wiring. For example, the size of the above-mentioned rough grid is set to be the same as the grid (grid) used in the detailed wiring, and information indicating whether or not the corresponding grid can pass the wiring resource given to each rough wiring grid (for example, It can be handled in the same way by adding (1, 0). At that time, the term “wiring congestion” may be replaced with a term such as “wiring short”.

【0079】また、以上の実施例では、領域の分割数は
2として説明してきたが、2つ以上でもよい。例えば、
2×2とか3×3のように分割する方法にも適用可能で
ある。
In the above embodiments, the number of divisions of the area has been described as two, but it may be two or more. For example,
It is also applicable to a method of dividing like 2 × 2 or 3 × 3.

【0080】[0080]

【発明の効果】以上、説明したように第1の発明によれ
ば、通常の自動配線処理の後に残った配線不能状態の解
決を容易にする。ショート、未配線などの配線不能が発
生した場合に詳細配線レベルの配線経路だけでなくさら
に大局的な配線経路の変更が可能となる。
As described above, according to the first aspect of the present invention, it is possible to easily solve the unwiring state remaining after the normal automatic wiring process. When a wiring failure such as a short circuit or non-wiring occurs, it is possible to change not only the detailed wiring level wiring path but also the global wiring path.

【0081】また、第2の発明による自動配線方法は、
引き剥し再配線を分割統治法に基づく階層的処理で行う
ために高速に行うことが出来、かつ配線混雑の解消が大
域的に行われるため質の良い配線結果を得ることができ
る。さらに、複数のプロセッサーが使用可能である際
に、並列処理することによる配線の質を低下を招かない
で、かつ高速に自動配線することが出来る。
The automatic wiring method according to the second invention is
The stripping rewiring can be performed at high speed because it is performed hierarchically based on the division and conquer method, and the wiring congestion can be eliminated globally, so that a good wiring result can be obtained. Further, when a plurality of processors can be used, automatic wiring can be performed at high speed without degrading the quality of wiring due to parallel processing.

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

【図1】第1の発明に係わる配線不能状態解決のための
配線処理フローチャート図。
FIG. 1 is a wiring process flowchart for solving a wiring disabled state according to the first invention.

【図2】第1の発明に係わる再配線処理に通常の配線処
理を利用するフローチャート図。
FIG. 2 is a flow chart diagram in which normal wiring processing is used for the rewiring processing according to the first invention.

【図3】第1の発明に対する一般的なLSIレイアウト
のフローチャート図。
FIG. 3 is a flowchart of a general LSI layout for the first invention.

【図4】第1の発明に係わるLSIチップ上の配線混雑
と配線経路の関係を示す図。
FIG. 4 is a diagram showing a relationship between wiring congestion and wiring paths on an LSI chip according to the first invention.

【図5】第2の発明の自動配線方法の手順を表したフロ
ーチャートである。
FIG. 5 is a flowchart showing the procedure of the automatic wiring method of the second invention.

【図6】初期配線後の配線混雑を示す図。FIG. 6 is a diagram showing wiring congestion after initial wiring.

【図7】再配線領域の決定の一例を示す図。FIG. 7 is a diagram showing an example of determination of a rewiring region.

【図8】分割位置を選択する方法を説明する図。FIG. 8 is a diagram illustrating a method of selecting a division position.

【図9】引き剥すネットを選別する方法を説明する図。FIG. 9 is a diagram illustrating a method of selecting a net to be peeled off.

【図10】引き剥し後に行う配線混雑情報を更新する方
法を説明する図。
FIG. 10 is a diagram illustrating a method of updating wiring congestion information performed after peeling.

【図11】引き剥されたネットを再配線する方法を説明
する図。
FIG. 11 is a diagram illustrating a method of rewiring a stripped net.

【図12】再帰処理の様子を分かり易すく説明するため
に、各レベルで分割された仕事を説明する図。
FIG. 12 is a diagram illustrating jobs divided at each level in order to easily understand how recursive processing is performed.

【図13】第2の発明における実施例2を説明するため
の、図12の各処理を複数の処理装置に割り当てる方法
を説明するための図。
FIG. 13 is a diagram for explaining a method of assigning each process of FIG. 12 to a plurality of processing devices for explaining the second embodiment of the second invention.

【図14】2分割処理によって配線経路が決定される様
子を示す図。
FIG. 14 is a diagram showing how the wiring route is determined by the two-division processing.

【図15】並列処理可能な計算機構成を示す図。FIG. 15 is a diagram showing a computer configuration capable of parallel processing.

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

11 配線処理に概略の経路を決定する機能 12 決定された概略経路に従って詳細配線を決定する
機能 13 配線不能の状況が起きていないかをチェックしそ
の結果により制御を変更する機能 14 配線状態を変更し配線し直すものは無効化する。 15 無効となった配線の大局的な経路を再び決定する
概略再配線 16 配線不能に関与した配線の詳細配線を再びおこな
う詳細配線 21 配線処理時に概略の経路を決定する機能 22 決定された概略経路に従って詳細配線を決定する
機能 23 配線不能の状況が起きていないかをチェックしそ
の結果により制御を変更する機能 24 配線状態を変更し配線し直すものは無効化する。 41 チップ 42 チップを分割して概略配線の対象とする矩形要素 43 配線が混雑している矩形要素 44 配線で結ぶべき端子 45 混雑領域を通る配線経路 46 混雑領域を避けた配線経路 D 配線領域 A 再配線領域 G 概略配線用の格子 OB 配線のオーバーフローが発生した概略配線用の格
子境界 L カットラインまたは領域分割の境界線 T,T1,T2,T3 ネットの端子 S1,…,S6 概略配線用の格子境界 D1,D11,…,D122 部分配線領域 P1,P2,P3,P4 プロセッサー
11 Function for determining a rough route for wiring processing 12 Function for determining a detailed wiring according to the determined rough route 13 Function for checking whether a situation where wiring is impossible has occurred and changing control according to the result 14 Changing the wiring state Then invalidate the one to be rewired. 15 General rewiring for re-determining global route of invalid wiring 16 Detailed wiring for re-performing detailed wiring of wiring involved in unwiring 21 Function for determining general route during wiring processing 22 Determined general route Function for deciding detailed wiring in accordance with 23. Function for checking whether a situation in which wiring is not possible has occurred and changing control according to the result. 24. Changing wiring status and rewiring is invalidated. 41 chips 42 rectangular elements that are the targets of general wiring by dividing a chip 43 rectangular elements that are congested with wiring 44 terminals that should be connected by wiring 45 wiring paths that pass through congested areas 46 wiring paths that avoid congested areas D wiring areas A Re-wiring region G Lattice OB for rough wiring Lattice boundary for rough wiring in which wiring overflow has occurred L Cut line or boundary line for region division T, T1, T2, T3 Net terminals S1, ..., S6 For rough wiring Lattice boundary D1, D11, ..., D122 Partial wiring area P1, P2, P3, P4 Processor

───────────────────────────────────────────────────── フロントページの続き (72)発明者 門脇 春則 神奈川県川崎市幸区堀川町580番1号 株 式会社東芝半導体システム技術センター内 (72)発明者 青木 孝哲 神奈川県川崎市幸区小向東芝町1 株式会 社東芝研究開発センター内 ─────────────────────────────────────────────────── ─── Continued Front Page (72) Inventor Harunori Kadowaki 580-1, Horikawa-cho, Kawasaki-shi, Kanagawa Kanagawa Prefecture, Semiconductor System Technology Center (72) Inventor Takanori Aoki Small, Sachi-ku, Kawasaki-shi, Kanagawa Mukai Toshiba Town 1 Stock Company Toshiba Research and Development Center

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 集積回路の自動配線方法を行う際に、 配線の結果において配線不能が起きた事を検出する機能
と、当該配線不能に関与する配線を無効化する機能と、
配線不能を検出すると、およその配線経路を決定する概
略再配線とより詳細な配線経路を決定する詳細再配線と
からなる再配線機能と、この再配線機能に制御をわたす
制御機能とを備えたことを特徴とする自動配線方法。
1. When performing an automatic wiring method for an integrated circuit, a function of detecting that wiring failure has occurred in the result of wiring, and a function of invalidating wiring related to the wiring failure.
When a wiring failure is detected, a rewiring function including a rough rewiring for determining an approximate wiring route and a detailed rewiring for determining a more detailed wiring route, and a control function for giving control to this rewiring function are provided. An automatic wiring method characterized by the above.
【請求項2】 各配線ごとに配線プログラムの動作が制
御できる請求項1の自動配線方法に関し、特に未配線、
配線固定、配線経路改良可などの個別の配線状態に従っ
て自動配線処理を行う自動配線方法に関する、配線不能
状態に関与した配線を未配線とし、他の動かす事が許さ
れる配線を選択して配線経路改良可とする機能と、概略
再配線時に配線経路の改良が必要ない事が明かになった
配線に関しては配線変更なしの識別を与え詳細配線時点
で配線経路改良以前の詳細配線経路をそのまま利用する
事を可能にする機能と、配線状態に従って概略再配線・
詳細再配線を行う機能とを備えたことを特徴とする請求
項1記載の自動配線方法。
2. The automatic wiring method according to claim 1, wherein the operation of a wiring program can be controlled for each wiring.
Regarding the automatic wiring method that performs automatic wiring processing according to individual wiring states such as fixed wiring and improvement of wiring route, the wiring related to the inoperable state is set as unwired and other wiring that can be moved is selected For functions that can be improved, and for wiring that has revealed that it is not necessary to improve the wiring route during rough rewiring, the identification without wiring change is given and the detailed wiring route before the wiring route improvement is used as it is at the time of detailed wiring. The function that enables things and the general rewiring according to the wiring condition
The automatic wiring method according to claim 1, further comprising a function of performing detailed rewiring.
【請求項3】 同電位端子間を結ぶネッドが複数個与え
られた領域内で全ネットの経路を求める際に、まず前記
ネットの初期配線経路を求め、配線混雑箇所が存在する
場合、再配線する領域を決定し、前記再配線領域を複数
個の領域に分割し、前記分割領域の境界上で配線が混雑
している位置からネットを引き剥し、引き剥したネット
に対応する混雑情報データを更新し、分割領域において
引き剥したネットの通過位置を再決定する処理を再起的
に繰り返すことによって引き剥し再配線を行うことを特
徴とする自動配線方法。
3. When obtaining the routes of all nets in a region where a plurality of nets connecting the same potential terminals are given, the initial route of the nets is first obtained, and if there is a congestion site, rerouting is performed. Area is determined, the rewiring area is divided into a plurality of areas, the net is peeled from a position where wiring is congested on the boundary of the divided area, and congestion information data corresponding to the peeled net is obtained. An automatic wiring method characterized by performing peeling rewiring by recursively repeating a process of re-determining a passing position of a net that is updated and peeled in a divided area.
JP5157590A 1993-06-28 1993-06-28 Automatic wiring method Pending JPH0737985A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5157590A JPH0737985A (en) 1993-06-28 1993-06-28 Automatic wiring method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5157590A JPH0737985A (en) 1993-06-28 1993-06-28 Automatic wiring method

Publications (1)

Publication Number Publication Date
JPH0737985A true JPH0737985A (en) 1995-02-07

Family

ID=15653038

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5157590A Pending JPH0737985A (en) 1993-06-28 1993-06-28 Automatic wiring method

Country Status (1)

Country Link
JP (1) JPH0737985A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8006205B2 (en) 2003-07-23 2011-08-23 Ricoh Company, Ltd. Semiconductor device layout method, a computer program, and a semiconductor device manufacture method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8006205B2 (en) 2003-07-23 2011-08-23 Ricoh Company, Ltd. Semiconductor device layout method, a computer program, and a semiconductor device manufacture method

Similar Documents

Publication Publication Date Title
Kleinhans et al. GORDIAN: VLSI placement by quadratic programming and slicing optimization
Huang et al. Partitioning-based standard-cell global placement with an exact objective
JP2886481B2 (en) How to place objects
US6480991B1 (en) Timing-driven global placement based on geometry-aware timing budgets
US6370673B1 (en) Method and system for high speed detailed placement of cells within an integrated circuit design
US6182272B1 (en) Metal layer assignment
US6298468B1 (en) Placement-based pin optimization method and apparatus for computer-aided circuit design
JP3219500B2 (en) Automatic wiring method
US20140068542A1 (en) Systems and Methods for Designing and Making Integrated Circuits with Consideration of Wiring Demand Ratio
JP2001505716A (en) Net routing method for electronic devices
Chen et al. Full-chip routing considering double-via insertion
US10229239B2 (en) Capacity model for global routing
US20090089722A1 (en) Method and System for Mapping Source Elements to Destination Elements as Interconnect Routing Assignments
US20060064653A1 (en) Automatic layout yield improvement tool for replacing vias with redundant vias through novel geotopological layout in post-layout optimization
US6484302B1 (en) Auto-contactor system and method for generating variable size contacts
Wu et al. Coupling aware timing optimization and antenna avoidance in layer assignment
US6671867B2 (en) Analytical constraint generation for cut-based global placement
US7966597B2 (en) Method and system for routing of integrated circuit design
JP2001338006A (en) Method for supporting logic automatic design and device for the same
JP5380969B2 (en) Layout design method and apparatus
JPH0737985A (en) Automatic wiring method
Kao et al. Cross point assignment with global rerouting for general-architecture designs
Wu et al. Antenna avoidance in layer assignment
JP5900540B2 (en) Layout design method and layout design support program
US6243850B1 (en) Allocation apparatus and method for determining cell allocation of semiconductor circuit

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees