JPH1091673A - Wiring congestion estimation method and semiconductor integrated circuit design system using the same - Google Patents
Wiring congestion estimation method and semiconductor integrated circuit design system using the sameInfo
- Publication number
- JPH1091673A JPH1091673A JP8247399A JP24739996A JPH1091673A JP H1091673 A JPH1091673 A JP H1091673A JP 8247399 A JP8247399 A JP 8247399A JP 24739996 A JP24739996 A JP 24739996A JP H1091673 A JPH1091673 A JP H1091673A
- Authority
- JP
- Japan
- Prior art keywords
- wiring
- elements
- area
- already
- grid
- 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
- Internal Circuitry In Semiconductor Integrated Circuit Devices (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、半導体集積回路、
プリント基板等の配線方法にかかり、特に、配置工程後
において、配線混雑度の見積方法に関する。[0001] The present invention relates to a semiconductor integrated circuit,
The present invention relates to a wiring method for a printed circuit board or the like, and particularly to a method for estimating a wiring congestion degree after an arrangement step.
【0002】[0002]
【従来の技術】チップ上の半導体素子をチップ上に配置
し、それらを配線する従来の設計工程の一例について図
を用いて簡単に説明する。ここでは、一例であってこの
工程に限られるわけではない。2. Description of the Related Art An example of a conventional design process for arranging semiconductor elements on a chip on a chip and wiring them will be briefly described with reference to the drawings. Here, this is an example, and the present invention is not limited to this step.
【0003】図8のに示すように、初めに用意した所定
のデータを計算機に入力する(ステップ1)。次に、そ
の入力したデータの基づいて、所定のプログラムを搭載
した計算機が自動的にチップ上に半導体素子を仮想的に
配置する(ステップ2)。As shown in FIG. 8, predetermined data prepared first is input to a computer (step 1). Next, based on the input data, a computer equipped with a predetermined program automatically arranges a semiconductor element virtually on a chip (step 2).
【0004】次に、チップ上に仮想配置された半導体素
子に対して配線をした場合、配線がどれくらい混雑する
かを見積もる(ステップ3)。その配線混雑度見積方法
に関しては後述する。Next, when wiring is performed for a semiconductor element virtually arranged on a chip, how much the wiring is congested is estimated (step 3). The method of estimating the wiring congestion degree will be described later.
【0005】次いで、ステップ3において見積もった配
線混雑度等を考慮して、チップ上に仮想的に配置された
半導体素子間を仮想配線する(ステップ4)。次に、こ
の仮想配線データを出力結果として得る(ステップ
5)。Next, virtual wiring is performed between the semiconductor elements virtually arranged on the chip in consideration of the wiring congestion degree and the like estimated in step 3 (step 4). Next, the virtual wiring data is obtained as an output result (step 5).
【0006】この出力結果に基づいて露光用マスクを作
成される。以上の様にして一連の設計工程が終了する。
次に、従来の配線混雑度の見積方法の一例について説明
する。図9に示すように、チップ上に半導体素子501
〜503が配置されていると仮定する。今、半導体素子
501〜503を同一配線で接続したい場合、図9
(1)〜(3)に示されるように、種々の経路が考えら
れるが、どの経路が選択されるかは、所定のプログラム
を搭載した計算機が確率的に決定する。An exposure mask is created based on the output result. A series of design steps is completed as described above.
Next, an example of a conventional method of estimating the degree of wiring congestion will be described. As shown in FIG. 9, a semiconductor element 501 is mounted on a chip.
Suppose ~ 503 is located. Now, when it is desired to connect the semiconductor elements 501 to 503 with the same wiring, FIG.
As shown in (1) to (3), various routes are conceivable, and a computer loaded with a predetermined program stochastically determines which route is selected.
【0007】次に、図10に示すように、チップ100
上に半導体素子201〜211を仮想的に配置する。例
えば、半導体素子201〜203、204〜205、〜
206〜207、208〜211のそれぞれを同一の配
線で接続したい場合を考える。今、半導体素子201〜
203を含む最小矩形300を形成する。同様に、最小
矩形301〜303を形成する。これらの最上矩形30
0〜303の重なりあう場所を配線混雑部分と定義し、
重なりあいが少ない場所を配線が混雑していない部分と
定義する。Next, as shown in FIG.
The semiconductor elements 201 to 211 are virtually arranged thereon. For example, the semiconductor elements 201 to 203, 204 to 205, to
Let us consider a case where it is desired to connect each of 206 to 207 and 208 to 211 with the same wiring. Now, the semiconductor elements 201 to 201
A minimum rectangle 300 including 203 is formed. Similarly, the minimum rectangles 301 to 303 are formed. These top rectangles 30
A place where 0 to 303 overlap is defined as a wiring congestion part,
A place where there is little overlap is defined as a part where wiring is not congested.
【0008】しかし、図9で既に説明したように、それ
ぞれの最小矩形にふくまれる半導体素子がどのように配
線されるかは確率的に決定されるので、必ずしも重なり
合う部分600で配線が混雑するとは限らない。従っ
て、混雑度の見積は、配線が混雑する可能性が高い事を
示すにすぎない。しかし、計算方法が容易、かつ、高速
である事などの理由により、実際の設計ではこの混雑度
の見積は多用されている。However, as already described with reference to FIG. 9, how the semiconductor elements included in each of the minimum rectangles are wired is determined stochastically, so that the wiring is not necessarily congested at the overlapping portion 600. Not exclusively. Therefore, the estimation of the congestion degree only indicates that there is a high possibility that the wiring is congested. However, the estimation of the degree of congestion is often used in actual designs because of a simple calculation method and high speed.
【0009】[0009]
【発明が解決しようとする課題】しかし、上記混雑度見
積方法では、配線リソース(配線が通れる量)が配線領
域に対して均一であると仮定されているので、配線リソ
ースが不均一な大規模半導体集積回路装置の設計に上記
方法を適用した場合、正確な混雑度の見積が計算できな
い。However, in the above congestion degree estimating method, it is assumed that the wiring resources (the amount through which the wiring can pass) are uniform in the wiring area, so that a large-scale When the above method is applied to the design of a semiconductor integrated circuit device, an accurate estimation of the congestion degree cannot be calculated.
【0010】例えば、図10で示した配線が混雑すると
予想される領域600と、他の場所の配線リソース(配
線が通れる量)が、例えば、4本/エリアで均一である
とすると、既知配線、既知配置素子、及び現在仮想配線
している影響を考慮していない為に、領域600には配
線し、配線ソース以上の仮想配線(例えば、5本の配
線)が割り当てられてしまうことがある。すなわち、配
線不可能となってしまう。[0010] For example, assuming that the area 600 shown in FIG. 10 where the wiring is expected to be congested and the wiring resources (amount of wiring that can be passed) in other places are uniform at, for example, 4 lines / area, the known wiring Because the known placement elements and the effect of the current virtual wiring are not taken into account, wiring may be performed in the region 600, and virtual wiring (for example, five wirings) may be assigned to a wiring source or more. . That is, wiring becomes impossible.
【0011】この様な事態は、仮想配置(図8のステッ
プ2参照)、混雑度の見積(ステップ3)、仮想配線
(ステップ4)を実配線可能となるまで繰り返す事によ
り回避できる。Such a situation can be avoided by repeating virtual arrangement (see step 2 in FIG. 8), estimation of congestion degree (step 3), and virtual wiring (step 4) until real wiring becomes possible.
【0012】しかし、図8に示したステップ4の仮想配
線工程は、何千、何万の配線の経路等を決定するため、
多大な計算時間を必要とする。この為、ステップ2〜ス
テップ4を繰り返すのは、計算時間の大幅な増大を招い
てしまう。本発明は、以上のような問題を鑑みたもの
で、配線工程へ進む前に配置工程へのバックアノテーシ
ョンを可能にする事を目的とする。However, the virtual wiring process in step 4 shown in FIG. 8 determines thousands or tens of thousands of wiring routes and the like.
Requires a great deal of computation time. For this reason, repeating steps 2 to 4 causes a significant increase in calculation time. The present invention has been made in view of the above-described problem, and has as its object to enable back annotation to an arrangement step before proceeding to a wiring step.
【0013】[0013]
【課題を解決するための手段】本発明は、チップ上の配
線領域を概略配線格子に分割する為の分割し、それらの
概略配線格子のそれぞれに対して、既に配置されている
複数の既配置素子及び既に配線されている既配線に基づ
いて、配線コストを計算し、更に、複数の既配置素子の
内で配線が予定されている二つの既配置素子の組を選択
する。次いで、この配線コストと配線グリッドに基づい
て、前記選択された既配置素子どおしを結線するための
領域を決定し、この決定された配線領域で、前記二つの
既配置素子どうしを確率的に仮想配線をし、前記仮想配
線及び既配線及び既配置に基づいて、配線コストを再度
計算する事を特徴とする。SUMMARY OF THE INVENTION The present invention divides a wiring area on a chip into schematic wiring grids, and arranges a plurality of already arranged wirings for each of the general wiring grids. The wiring cost is calculated based on the elements and the already-wired wiring, and further, a set of two already-arranged elements to be wired among a plurality of already-arranged elements is selected. Next, based on the wiring cost and the wiring grid, a region for connecting the selected placed devices is determined, and in the determined wiring region, the two placed devices are stochastically determined. A virtual wiring is performed, and the wiring cost is calculated again based on the virtual wiring, the existing wiring and the existing arrangement.
【0014】以上の様に、本発明は仮想配線をする前
に、配線不可能と判断された配線領域を拡大し迂回経路
を確保するので、配線領域を確保した後に行う仮想配線
工程において配線不可能となる事がない。従って、従来
の様に、実配線が可能となるまで、仮想配置、混雑度見
積、仮想配線工程を繰り返す必要がないので、大幅に設
計時間を短縮する事ができる。As described above, according to the present invention, before the virtual wiring is performed, the wiring area determined to be unroutable is enlarged and the detour path is secured, so that the virtual wiring step performed after the securing of the wiring area is performed. Nothing is possible. Therefore, it is not necessary to repeat the virtual arrangement, the congestion degree estimation, and the virtual wiring process until the actual wiring becomes possible as in the related art, so that the design time can be greatly reduced.
【0015】[0015]
【発明の実施の形態】次に、本発明の実施形態を図を用
いて詳細に説明する。図1に、本発明にかかる設計方法
の一例を示した。図1のに示すように、初めに用意した
所定のデータを計算機に入力する(ステップ1)。Next, an embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 shows an example of a design method according to the present invention. As shown in FIG. 1, predetermined data prepared first is input to a computer (step 1).
【0016】次に、その入力したデータの基づいて、所
定のプログラムを搭載した計算機が自動的にチップ上に
半導体素子を仮想的に配置する(ステップ2)。次に、
所定のプログラムを搭載した計算機が自動的に配線領域
を決定し、配線混雑度を見積もる(ステップ3)。Next, based on the input data, a computer having a predetermined program automatically arranges a semiconductor element virtually on a chip (step 2). next,
A computer equipped with a predetermined program automatically determines a wiring area and estimates a wiring congestion degree (step 3).
【0017】次に、前ステップで見積もられた配線混雑
度等を考慮して半導体素子の再配置が必要ならばステッ
プ2へバックアノテーションし、その必要が無ければ次
にステップへ進む(ステップ4)次に、配線が予定され
る前記半導体素子間を仮想配線する(ステップ5)。Next, if the semiconductor elements need to be rearranged in consideration of the wiring congestion degree estimated in the previous step, back-annotation is made to step 2; otherwise, the processing proceeds to the next step (step 4). Next, virtual wiring is performed between the semiconductor elements to be wired (step 5).
【0018】次に、仮想配線データより出力データを得
る(ステップ6)。この出力結果に基づいて露光用マス
クを作成される。以上の様にして一連の設計工程が終了
する。Next, output data is obtained from the virtual wiring data (step 6). An exposure mask is created based on this output result. A series of design steps is completed as described above.
【0019】次に、上述の配線混雑度見積工程(ステッ
プ3)について図を用いて詳細に説明する。この配線混
雑度見積工程は、(1)配線領域を概略配線格子に分割
する為の分割工程、(2)概略配線格子への配線コスト
を割り当てる配線コスト計算工程、(3)既知配置素子
の組を選択する為の選択工程、(4)それぞれの概略配
線格子に割り当てられた配線コスト等に基づいて配線領
域を決定する為の配線領域決定工程、(5)概略配線格
子の配線コスト及び概略配線格子に割り当てられる配線
本数を計算する為のデータ更新工程、から構成される
(図2参照)。以下に、上述の工程のそれぞれについて
説明する。Next, the above-mentioned wiring congestion degree estimation step (step 3) will be described in detail with reference to the drawings. The wiring congestion degree estimation step includes (1) a division step for dividing a wiring area into a rough wiring grid, (2) a wiring cost calculation step of allocating a wiring cost to the rough wiring grid, and (3) a set of known arrangement elements. (4) a wiring area determining step for determining a wiring area based on the wiring cost and the like assigned to each schematic wiring grid, and (5) a wiring cost and a schematic wiring of the general wiring grid. And a data updating step for calculating the number of wirings allocated to the grid (see FIG. 2). Hereinafter, each of the above-described steps will be described.
【0020】まず初めに、(1)配線領域を概略配線格
子に分割する為の分割工程について説明する。図3に示
すように、D1〜D4は、配置工程において配置された
既配置半導体素子を示している。また、半導体チップ上
の配線領域1を概略配線格子G(1、1)〜G(14、
13)に分割する。ここでは、半導体素子D1は概略配
線格子G(3、11)に、半導体素子D2は概略配線格
子G(5、3)に、半導体素子D3は概略配線格子G
(10、1)に、半導体素子D4は概略配線格子G(1
2、4)に位置している。First, (1) a dividing step for dividing a wiring region into a general wiring grid will be described. As shown in FIG. 3, D1 to D4 indicate the already-arranged semiconductor elements arranged in the arrangement step. Further, the wiring area 1 on the semiconductor chip is roughly divided into wiring grids G (1, 1) to G (14,
13). Here, the semiconductor element D1 is in the general wiring grid G (3, 11), the semiconductor element D2 is in the general wiring grid G (5, 3), and the semiconductor element D3 is in the general wiring grid G (3, 11).
In (10, 1), the semiconductor element D4 has a rough wiring grid G (1
2, 4).
【0021】次に、(2)概略配線格子への配線コスト
を割り当てる配線コスト計算工程について説明する。上
記の概略配線格子のそれぞれに配線コストを割り当てる
が、その配線コストの計算方法の概念を以下に示す。Next, a description will be given of (2) a wiring cost calculation step of allocating a wiring cost to a schematic wiring grid. A wiring cost is assigned to each of the above-described general wiring grids. The concept of a method of calculating the wiring cost is described below.
【0022】図4は、図3に示した概略配線格子の一つ
を拡大したものである。図4に示した様に、この概略配
線格子G(X、Y)において、X方向のグリッド(配線
できる本数)は5、X方向のグリッドは4とし、概略配
線格子G(X,Y)の中に障害物Z(例えば、既配置素
子等)が存在するとすると、使用可能な配線は、概略配
線格子G(X、Y)のX方向には1本、Y方向には2本
である。FIG. 4 is an enlarged view of one of the schematic wiring grids shown in FIG. As shown in FIG. 4, in this schematic wiring grid G (X, Y), the grid in the X direction (the number of wires that can be wired) is 5, and the grid in the X direction is 4, and the general wiring grid G (X, Y) Assuming that there is an obstacle Z (for example, an already-arranged element or the like) inside, there are one usable wiring in the general wiring grid G (X, Y) in the X direction and two wirings in the Y direction.
【0023】この場合、概略配線格子G(X、Y)にお
けるX方向の配線のしやすさを1、Y方向の配線のしや
すさを2と仮定し、概略配線格子G(X,Y)の配線コ
ストをC(1、2)と見積もる。即ち、X方向の配線コ
ストは1、Y方向の配線コストは2となる。In this case, it is assumed that the ease of wiring in the X direction in the schematic wiring grid G (X, Y) is 1 and the ease of wiring in the Y direction is 2, and the general wiring grid G (X, Y) Is estimated as C (1, 2). That is, the wiring cost in the X direction is 1 and the wiring cost in the Y direction is 2.
【0024】以上の様にして、配線コストを計算する
が、上述の配線コストの計算方法は説明を簡単にするた
めに取り上げた例で、他にも種々の計算方法が存在す
る。次に、(3)既知配置素子の組を選択する為の選択
工程について説明する。The wiring cost is calculated as described above. The above-described method of calculating the wiring cost is an example taken for simplicity of description, and there are various other calculating methods. Next, (3) a selection step for selecting a set of known arrangement elements will be described.
【0025】図5に示すように、チップ上に配置された
既配置素子D1〜D4のそれぞれを結ぶ線分Nij(iは
1〜3、j は1〜3、i ≠j)考える。いま、この線分が
短い順に仮想配線するとする。この場合、半導体素子D
3とD4の仮想配線が最初に行われることになる。即
ち、最初に選択される。As shown in FIG. 5, a line segment Nij (i is 1 to 3, j is 1 to 3, i 、 j) connecting each of the already arranged elements D1 to D4 arranged on the chip is considered. Now, assume that virtual wiring is performed in ascending order of these line segments. In this case, the semiconductor element D
The virtual wiring of 3 and D4 will be performed first. That is, it is selected first.
【0026】次に、(4)それぞれの概略配線格子に割
り当てられた配線コスト等に基づいて配線領域を決定す
る為の配線領域決定工程について説明する。いま、半導
体素子DlとDmを配線する場合、配線は概略配線格子
列を必ず横切る事になる。しかし、既に、概略配線格子
列の全てが既に配線されている場合には、半導体素子D
lとDmは配線不可能となってしまう。Next, a description will be given of (4) a wiring area determining step for determining a wiring area based on a wiring cost or the like assigned to each schematic wiring grid. Now, when wiring the semiconductor elements Dl and Dm, the wiring always crosses the general wiring grid row. However, if all of the schematic wiring grid columns have already been wired, the semiconductor element D
1 and Dm cannot be wired.
【0027】そこで、配線不可能の場合配線領域を図6
に示したようにX、Y方向に配線領域を拡大する。次
に、この配線領域の拡大方法を詳細に説明する。今、概
略配列格子列(G(p、j)〜G(p、m))のエッジ
を横切るグリッド数(配線の数)の合計をNtotal 本と
し、概略配列格子列(G(p、j)〜G(p、m))の
それぞれのX方向の配線コストの合計をCtotal と仮定
すと、Ntotal −Ctotal >0のとき、まだ配線可能と
判断できる。その理由は、配線の総和(Ntotal )が、
障害物により使用できない配線の本数(Ctotal )より
も多いからである。Therefore, in the case where the wiring is impossible, the wiring area is shown in FIG.
The wiring area is enlarged in the X and Y directions as shown in FIG. Next, a method for enlarging the wiring area will be described in detail. Now, let the total number of grids (the number of wirings) crossing the edges of the rough array grid rows (G (p, j) to G (p, m)) be Ntotal, and the rough array grid rows (G (p, j)) GG (p, m)) assuming that the total wiring cost in the X direction is Ctotal, it can be determined that wiring is still possible when Ntotal−Ctotal> 0. The reason is that the sum of wiring (Ntotal) is
This is because it is larger than the number of wirings that cannot be used due to obstacles (Ctotal).
【0028】Ntotal −Ctotal <0のとき、配線不可
能と判断できる。その理由は、配線の総和(Ntotal )
が、障害物により使用できない配線の本数(Ctotal )
よりも少ないからである。この場合、図6に示した様
に、配線領域を拡大し、迂回経路を確保する。即ち、配
線可能な状態となる。When Ntotal-Ctotal <0, it can be determined that wiring is impossible. The reason is the sum of wiring (Ntotal)
However, the number of wires that cannot be used due to obstacles (Ctotal)
Because it is less. In this case, as shown in FIG. 6, the wiring area is enlarged and a detour path is secured. That is, a state in which wiring is possible is achieved.
【0029】次に、上記で拡大した領域において、上記
手順と同様にして、他の全ての概略配線格子列について
行い、更に、Y方向の概略配線格子列についても、必要
なら配線領域を拡大する。Next, in the area enlarged as described above, the same procedure is performed for all other schematic wiring grid arrays, and further, for the general wiring grid array in the Y direction, the wiring area is expanded if necessary. .
【0030】上記によって決定された配線領域内におい
て、配線コスト等に基づいて確率的配線を行う。次に確
率的配線について詳細に説明する。図7に、図3に示さ
れる半導体素子D1周辺の概略配線格子の拡大図を示し
た。In the wiring area determined as described above, stochastic wiring is performed based on wiring cost and the like. Next, the stochastic wiring will be described in detail. FIG. 7 is an enlarged view of a schematic wiring grid around the semiconductor element D1 shown in FIG.
【0031】今、配線コストをC(X、Y)と定義し、
XはX方向の配線コスト、YはY方向の配線コストを意
味するものとする。また、概略配線格子G(2、8)、
G(3、9)、G(4、8)の配線コストはそれぞれC
(5、2)、C(2、1)、C(3、4)と仮定する。Now, the wiring cost is defined as C (X, Y),
X means the wiring cost in the X direction, and Y means the wiring cost in the Y direction. Also, a schematic wiring grid G (2, 8),
The wiring costs of G (3, 9) and G (4, 8) are C
Assume (5,2), C (2,1), C (3,4).
【0032】今、仮想配線が概略配線格子G(3、8)
まで終了しており、そこから半導体素子D1まで仮想配
線をする場合を考える。また、仮想配線は斜めに配線さ
れないとすると、概略配線格子G(3、8)からは、
左、上、右に配線可能である。即ち、概略配線格子G
(2、8)、G(3、9)、G(4、8)に仮想配線可
能である。ここで、G(3、8)から左(G(2、
8))への配線コストは5、G(3、8)から上(G
(3、9))への配線コストは1、G(3、8)から右
(G(4、8))への配線コストは3、である。左、
上、右のどこへ配線されるかは、それぞれの配線コスト
を考慮して確率的に決定される。例えば、 左へ配線する確率は、 3/23 上へ配線する確率は、15/23 左へ配線する確率は、 5/23 となる。上記の様に、概略配線格子G(3、8)から仮
想配線される可能性が最も高いのは、その上の概略配線
格子G(3、9)である。これは、G(3、8)から上
(G(3、9))への配線コストが他の二つに比べて最
も小さい、即ち、配線し易い事を考慮すれば当然であ
る。以上の様にして、目的地であるD1まで仮想配線を
行う。Now, the virtual wiring is a general wiring grid G (3, 8).
It is assumed that virtual wiring is performed from there to the semiconductor element D1. Further, assuming that the virtual wiring is not wired obliquely, from the general wiring grid G (3, 8),
It can be wired left, top, right. That is, the schematic wiring grid G
Virtual wiring is possible at (2, 8), G (3, 9), and G (4, 8). Here, G (3, 8) to the left (G (2,
8)) wiring cost is 5, G (3, 8) to higher (G
The wiring cost to (3, 9)) is 1, and the wiring cost from G (3, 8) to the right (G (4, 8)) is 3. left,
The location of the wiring on the upper and right sides is determined stochastically in consideration of the respective wiring costs. For example, the probability of wiring to the left is 3/23, the probability of wiring to the top is 15/23, and the probability of wiring to the left is 5/23. As described above, the most likely to be virtually wired from the schematic wiring grid G (3, 8) is the schematic wiring grid G (3, 9) thereabove. This is obvious considering that the wiring cost from G (3, 8) to the upper side (G (3, 9)) is the smallest compared to the other two, that is, that wiring is easy. As described above, virtual wiring is performed up to the destination D1.
【0033】以上の様にして、配線領域を決定し確率的
配線を行う。次に、(5)概略配線格子の配線コスト及
び概略配線格子に割り当てられ配線数を計算する為のデ
ータ更新工程について説明する。As described above, a wiring area is determined and stochastic wiring is performed. Next, (5) a data updating process for calculating the wiring cost of the schematic wiring grid and the number of wirings allocated to the general wiring grid will be described.
【0034】上記の様にして、配線領域を決定し、確率
的配線を行うと配線がされた事となるので、仮想配線が
施された概略配線格子の配線コスト及び使用可能なグリ
ッド数が変化する。従って、再度、配線コストを更新
し、概略配線格子に割り当てられる配線数を計算する。
任意のエッジ上の概略配線格子に割り当てられる配線本
数は以下の式で計算される。 配線本数=C/Ctotal ここで、Cは任意の概略配線格子の配線コスト、Ctota
l はエッジ上の全ての概略配線格子の配線コストの合計
を表す。As described above, when the wiring area is determined and stochastic wiring is performed, wiring is performed, so that the wiring cost and the number of usable grids of the rough wiring grid on which virtual wiring is performed are changed. I do. Therefore, the wiring cost is updated again, and the number of wirings allocated to the general wiring grid is calculated.
The number of wires assigned to the rough wiring grid on an arbitrary edge is calculated by the following equation. The number of wirings = C / Ctotal where C is the wiring cost of an arbitrary schematic wiring grid, Ctota
l represents the sum of the wiring costs of all the schematic wiring grids on the edge.
【0035】以上の工程は、配線が予定される一組の既
配置素子について行われ、配線が予定される他の組につ
いても上記の動作を繰り返す。以上の様にして、配線本
数を計算し、配線の混雑度を見積もる。その場合、必要
ならば、配置工程までバックアノテーションをして、半
導体素子の再配置を行う。The above-described steps are performed for one set of already-arranged elements to which wiring is to be performed, and the above operation is repeated for another set to which wiring is to be planned. As described above, the number of wirings is calculated, and the congestion degree of the wiring is estimated. In that case, if necessary, back annotation is performed until the arrangement step, and the semiconductor element is rearranged.
【0036】また、以上の計算を実現するプログラムを
計算機に搭載し、キーボード、フロッピーデスク等の入
力手段により所定のデータを入力し、CRT、プリンタ
ー等の手段によりデータを出力する。Further, a program for realizing the above calculations is installed in a computer, predetermined data is input by input means such as a keyboard and a floppy desk, and data is output by means such as a CRT and a printer.
【0037】以上の様にして、本発明は、従来は仮想配
線を行わなければ正確に見積もる事が出来なかった配線
混雑度を仮想配線を行わずに正確、かつ、高速に見積も
る事が出来る。従って、従来の様に、実配線が可能とな
るまで、仮想配置、混雑度見積、仮想配線工程を繰り返
す必要がないので、大幅に設計時間を短縮する事ができ
る。As described above, according to the present invention, it is possible to accurately and quickly estimate the degree of wiring congestion without performing virtual wiring, which could not be estimated accurately without virtual wiring. Therefore, it is not necessary to repeat the virtual arrangement, the congestion degree estimation, and the virtual wiring process until the actual wiring becomes possible as in the related art, so that the design time can be greatly reduced.
【0038】[0038]
【発明の効果】本発明は、従来は仮想配線を行わなけれ
ば正確に見積もる事が出来なかった配線混雑度を仮想配
線を行わずに正確、かつ、高速に見積もる事が出来、従
来の様に、実配線が可能となるまで、仮想配置、混雑度
見積、仮想配線工程を繰り返す必要がないので、大幅に
設計時間を短縮する事ができる。また、経路を確率的に
求めるために配線のアルゴリズムによる配線経路の癖も
吸収する事が出来る。According to the present invention, it is possible to accurately and quickly estimate the degree of wiring congestion without performing virtual wiring, which could not be accurately estimated without performing virtual wiring in the past. Since it is not necessary to repeat the virtual arrangement, the congestion degree estimation, and the virtual wiring process until the actual wiring becomes possible, the design time can be greatly reduced. In addition, in order to obtain a route stochastically, it is possible to absorb a habit of a wiring route by a wiring algorithm.
【図1】本発明にかかる配置、配線工程のフローチャー
トを示した図。FIG. 1 is a view showing a flow chart of an arrangement and wiring process according to the present invention.
【図2】配線混雑度見積工程の詳細フローチャートを示
した図。FIG. 2 is a diagram showing a detailed flowchart of a wiring congestion degree estimation step.
【図3】配線領域を概略配線格子に分割して様子を示し
た図。FIG. 3 is a diagram showing a state in which a wiring region is divided into schematic wiring grids.
【図4】配線コストを説明するための図。FIG. 4 is a diagram for explaining wiring costs.
【図5】ピンペアの選択を説明するための図。FIG. 5 is a diagram for explaining selection of a pin pair.
【図6】配線領域を拡大する様子を示した図。FIG. 6 is a diagram illustrating a state where a wiring region is enlarged.
【図7】確率的配線を説明する為の図。FIG. 7 is a diagram for explaining stochastic wiring.
【図8】従来の配置、配線フローチャートを示した図。FIG. 8 is a view showing a conventional arrangement and wiring flowchart.
【図9】配線の様子を示した図。FIG. 9 is a diagram showing a state of wiring.
【図10】従来の配線混雑度見積方法を示した図。FIG. 10 is a diagram showing a conventional wiring congestion estimation method.
G(X、Y) 概略配線格子 D1〜D4 半導体素子 Nij グラフ G (X, Y) Schematic wiring grid D1 to D4 Semiconductor element Nij Graph
Claims (7)
割する為の分割工程と、 前記概略配線格子のそれぞれに対して、配線コストを計
算する為の配線コスト計算工程と、 前記複数の既配置素子の内で配線が予定されている既配
置素子の組を選択する為の選択工程と、 前記選択された既配置素子どおしを結線するための領域
を決定する為の配線領域決定工程と、 前記概略配線格子の配線コスト及び前記概略配線格子に
割り当てられる配線本数を計算するデータ更新工程と、
を有する事を特徴とする配線混雑見積方法。A dividing step of dividing a wiring region on a chip into a general wiring grid; a wiring cost calculating step of calculating a wiring cost for each of the general wiring grids; A selecting step for selecting a set of already-arranged elements for which wiring is scheduled among the arranged elements; and a wiring-area determining step for determining an area for connecting the selected already-arranged elements. And a data update step of calculating the wiring cost of the schematic wiring grid and the number of wirings allocated to the schematic wiring grid,
A wiring congestion estimation method characterized by having:
割する為の分割工程と、 前記概略配線格子のそれぞれに対して、既に配置されて
いる複数の既配置素子及び既に配線されている既配線に
基づいて、配線コストを計算する為の配線コスト計算工
程と、 前記複数の既配置素子の内で配線が予定されている既配
置素子の組を選択する為の選択工程と、 前記配線コストと配線グリッドに基づいて、前記選択さ
れた既配置素子どおしを結線するための領域を決定する
為の配線領域決定工程と、 前記概略配線格子に割り当てられる配線本数を計算する
為のデータ更新工程と、を有する事を特徴とする配線混
雑見積方法。2. A dividing step for dividing a wiring region on a chip into a rough wiring grid, and a plurality of already-arranged elements already placed and a wiring already wired for each of the rough wiring grids. A wiring cost calculating step for calculating a wiring cost based on the wiring; a selecting step for selecting a set of already arranged elements to which the wiring is scheduled from among the plurality of already arranged elements; A wiring area determining step for determining an area for connecting the selected placed elements based on the wiring grid and updating the data for calculating the number of wirings allocated to the general wiring grid And a wiring congestion estimating method, comprising:
を判定する為の判定手段により配線不可能と判定された
場合、前記選択された二つの既配置素子を対角とする配
線領域を拡大し、その拡大した領域を配線領域とする、
工程である事を特徴とする請求項1又は2記載の配線混
雑見積方法。3. The wiring area determination step, wherein in the wiring cost calculation step, when it is determined that the wiring is impossible by the determination means for determining whether or not the virtual wiring is possible, the selected two existing arrangements are performed. Enlarging a wiring area having a diagonal element, and using the enlarged area as a wiring area,
The wiring congestion estimation method according to claim 1 or 2, wherein the method is a step.
格子対して割り当てされた配線コストと配線グリッドに
基づいて、仮想配線可能か否かを判定する為の判定手段
により、 配線可能と判定された場合、前記選択された二つの既配
置素子を対角とする領域を配線領域とし、 配線不可能と判定された場合、前記選択された二つの既
配置素子を対角とする配線領域を拡大し、その拡大した
領域を配線領域とする、工程である事を特徴とする請求
項1又は2記載の配線混雑見積方法。4. A determination for determining whether or not virtual wiring is possible based on a wiring cost and a wiring grid assigned to each of the schematic wiring grids in the wiring cost calculating step. By means, when it is determined that wiring is possible, a region having the selected two already-placed elements as a diagonal is defined as a wiring region, and when it is determined that wiring is impossible, the two selected already-placed elements are replaced with each other. 3. The wiring congestion estimation method according to claim 1, wherein the diagonal wiring area is enlarged, and the enlarged area is used as a wiring area.
置素子が複数である事を特徴とする請求項1又は2記載
の配線混雑見積方法。5. The wiring congestion estimating method according to claim 1, wherein in said selecting step, a plurality of already placed elements are selected.
及び前記配線領域決定工程及び前記データ更新工程を、 配線が予定される全ての既配置素子の組を選択するまで
繰り返す事を特徴とする請求項1又は2記載の配線混雑
見積方法。6. The method according to claim 1, wherein, after the data updating step, the selecting step, the wiring area determining step, and the data updating step are repeated until all sets of the already-arranged elements for which wiring is scheduled are selected. The wiring congestion estimation method according to claim 1 or 2.
データを入力する為の入力手段と、 前記入力データに基づいて素子をチップ上に仮想的に配
置し、請求項1乃至5記載の配線混雑度見積方法を使用
し、更に配線が予定される半導体素子同士を仮想配線を
行う為のプログラムを搭載した計算機と、 前記計算機により計算された所定の出力データを出力す
るための出力手段とを有する事を特徴とする半導体集積
回路設計システム。7. An input means for inputting predetermined input data necessary for wiring and arrangement of elements, and the elements are virtually arranged on a chip based on the input data. A computer equipped with a program for performing virtual wiring between semiconductor elements to be further wired using a wiring congestion degree estimation method, and output means for outputting predetermined output data calculated by the computer A semiconductor integrated circuit design system characterized by having:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8247399A JPH1091673A (en) | 1996-09-19 | 1996-09-19 | Wiring congestion estimation method and semiconductor integrated circuit design system using the same |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8247399A JPH1091673A (en) | 1996-09-19 | 1996-09-19 | Wiring congestion estimation method and semiconductor integrated circuit design system using the same |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1091673A true JPH1091673A (en) | 1998-04-10 |
Family
ID=17162859
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8247399A Pending JPH1091673A (en) | 1996-09-19 | 1996-09-19 | Wiring congestion estimation method and semiconductor integrated circuit design system using the same |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH1091673A (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001274254A (en) * | 2000-03-28 | 2001-10-05 | Mitsubishi Electric Corp | Automatic placement and routing of semiconductor integrated circuits |
| JP2009140495A (en) * | 2007-12-03 | 2009-06-25 | Toshiba Corp | System and method for probabilistic interconnect structure design |
| JP2010033493A (en) * | 2008-07-31 | 2010-02-12 | Sony Corp | Apparatus, method, and program for predicting layout wiring congestion |
-
1996
- 1996-09-19 JP JP8247399A patent/JPH1091673A/en active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001274254A (en) * | 2000-03-28 | 2001-10-05 | Mitsubishi Electric Corp | Automatic placement and routing of semiconductor integrated circuits |
| JP2009140495A (en) * | 2007-12-03 | 2009-06-25 | Toshiba Corp | System and method for probabilistic interconnect structure design |
| US8370783B2 (en) | 2007-12-03 | 2013-02-05 | Kabushiki Kaisha Toshiba | Systems and methods for probabilistic interconnect planning |
| JP2010033493A (en) * | 2008-07-31 | 2010-02-12 | Sony Corp | Apparatus, method, and program for predicting layout wiring congestion |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7707536B2 (en) | V-shaped multilevel full-chip gridless routing | |
| US7065729B1 (en) | Approach for routing an integrated circuit | |
| JP4719265B2 (en) | System and method for probabilistic interconnect structure design | |
| US5790841A (en) | Method for placement of clock buffers in a clock distribution system | |
| US6415422B1 (en) | Method and system for performing capacitance estimations on an integrated circuit design routed by a global routing tool | |
| CN100442297C (en) | Method and system for technology migration of integrated circuits with fundamental design constraints | |
| US5666289A (en) | Flexible design system | |
| JPS60130843A (en) | Method of setting connecting path | |
| JP2009054172A (en) | Wiring processing method, wiring processing apparatus, and recording medium for wiring processing program | |
| JPH0554100A (en) | Method for distributing clock signal | |
| US6519745B1 (en) | System and method for estimating capacitance of wires based on congestion information | |
| US7966597B2 (en) | Method and system for routing of integrated circuit design | |
| JP5418341B2 (en) | Design support program, design support apparatus, and design support method | |
| CA2345443C (en) | Approach for routing an integrated circuit | |
| US6487697B1 (en) | Distribution dependent clustering in buffer insertion of high fanout nets | |
| US6260184B1 (en) | Design of an integrated circuit by selectively reducing or maintaining power lines of the device | |
| JP2004039933A (en) | Mask design system, mask design method, and program for causing computer to execute mask design processing or layout design processing | |
| Wu et al. | A topology-based eco routing methodology for mask cost minimization | |
| JP3548398B2 (en) | Schematic route determination method and schematic route determination method | |
| EP1010108B1 (en) | Method and apparatus for channel-routing of an electronic device | |
| JP2003242190A (en) | Floor plan method for semiconductor integrated circuit | |
| JPH06349947A (en) | Method and apparatus for designing mask pattern of semiconductor integrated circuit device | |
| US6845346B1 (en) | Iterative method of parasitics estimation for integrated circuit designs | |
| JP3457480B2 (en) | Automatic placement method | |
| JP3420680B2 (en) | Semiconductor integrated circuit design method and apparatus, and recording medium storing semiconductor integrated circuit design program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040120 |