JPH1091673A - 配線混雑見積方法及びそれを利用した半導体集積回路設計システム - Google Patents

配線混雑見積方法及びそれを利用した半導体集積回路設計システム

Info

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
Application number
JP8247399A
Other languages
English (en)
Inventor
Masahiro Mitsuyasu
政浩 光安
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 JP8247399A priority Critical patent/JPH1091673A/ja
Publication of JPH1091673A publication Critical patent/JPH1091673A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Internal Circuitry In Semiconductor Integrated Circuit Devices (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 【課題】 本発明は、配線工程へ進む前に配置工程への
バックアノテーションを可能にする事を目的とする。 【解決手段】 本発明は、チップ上の配線領域を概略配
線格子に分割する為の分割し、それらの概略配線格子の
それぞれに対して配線コスト計算し、複数の既配置素子
の内で配線が予定されている二つの既配置素子の組を選
択し、前記選択された既配置素子どおしを結線するため
の領域を決定し、この決定された配線領域で、前記二つ
の既配置素子どうしを確率的に仮想配線をし、配線コス
ト等を再度計算する事を特徴とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、半導体集積回路、
プリント基板等の配線方法にかかり、特に、配置工程後
において、配線混雑度の見積方法に関する。
【0002】
【従来の技術】チップ上の半導体素子をチップ上に配置
し、それらを配線する従来の設計工程の一例について図
を用いて簡単に説明する。ここでは、一例であってこの
工程に限られるわけではない。
【0003】図8のに示すように、初めに用意した所定
のデータを計算機に入力する(ステップ1)。次に、そ
の入力したデータの基づいて、所定のプログラムを搭載
した計算機が自動的にチップ上に半導体素子を仮想的に
配置する(ステップ2)。
【0004】次に、チップ上に仮想配置された半導体素
子に対して配線をした場合、配線がどれくらい混雑する
かを見積もる(ステップ3)。その配線混雑度見積方法
に関しては後述する。
【0005】次いで、ステップ3において見積もった配
線混雑度等を考慮して、チップ上に仮想的に配置された
半導体素子間を仮想配線する(ステップ4)。次に、こ
の仮想配線データを出力結果として得る(ステップ
5)。
【0006】この出力結果に基づいて露光用マスクを作
成される。以上の様にして一連の設計工程が終了する。
次に、従来の配線混雑度の見積方法の一例について説明
する。図9に示すように、チップ上に半導体素子501
〜503が配置されていると仮定する。今、半導体素子
501〜503を同一配線で接続したい場合、図9
(1)〜(3)に示されるように、種々の経路が考えら
れるが、どの経路が選択されるかは、所定のプログラム
を搭載した計算機が確率的に決定する。
【0007】次に、図10に示すように、チップ100
上に半導体素子201〜211を仮想的に配置する。例
えば、半導体素子201〜203、204〜205、〜
206〜207、208〜211のそれぞれを同一の配
線で接続したい場合を考える。今、半導体素子201〜
203を含む最小矩形300を形成する。同様に、最小
矩形301〜303を形成する。これらの最上矩形30
0〜303の重なりあう場所を配線混雑部分と定義し、
重なりあいが少ない場所を配線が混雑していない部分と
定義する。
【0008】しかし、図9で既に説明したように、それ
ぞれの最小矩形にふくまれる半導体素子がどのように配
線されるかは確率的に決定されるので、必ずしも重なり
合う部分600で配線が混雑するとは限らない。従っ
て、混雑度の見積は、配線が混雑する可能性が高い事を
示すにすぎない。しかし、計算方法が容易、かつ、高速
である事などの理由により、実際の設計ではこの混雑度
の見積は多用されている。
【0009】
【発明が解決しようとする課題】しかし、上記混雑度見
積方法では、配線リソース(配線が通れる量)が配線領
域に対して均一であると仮定されているので、配線リソ
ースが不均一な大規模半導体集積回路装置の設計に上記
方法を適用した場合、正確な混雑度の見積が計算できな
い。
【0010】例えば、図10で示した配線が混雑すると
予想される領域600と、他の場所の配線リソース(配
線が通れる量)が、例えば、4本/エリアで均一である
とすると、既知配線、既知配置素子、及び現在仮想配線
している影響を考慮していない為に、領域600には配
線し、配線ソース以上の仮想配線(例えば、5本の配
線)が割り当てられてしまうことがある。すなわち、配
線不可能となってしまう。
【0011】この様な事態は、仮想配置(図8のステッ
プ2参照)、混雑度の見積(ステップ3)、仮想配線
(ステップ4)を実配線可能となるまで繰り返す事によ
り回避できる。
【0012】しかし、図8に示したステップ4の仮想配
線工程は、何千、何万の配線の経路等を決定するため、
多大な計算時間を必要とする。この為、ステップ2〜ス
テップ4を繰り返すのは、計算時間の大幅な増大を招い
てしまう。本発明は、以上のような問題を鑑みたもの
で、配線工程へ進む前に配置工程へのバックアノテーシ
ョンを可能にする事を目的とする。
【0013】
【課題を解決するための手段】本発明は、チップ上の配
線領域を概略配線格子に分割する為の分割し、それらの
概略配線格子のそれぞれに対して、既に配置されている
複数の既配置素子及び既に配線されている既配線に基づ
いて、配線コストを計算し、更に、複数の既配置素子の
内で配線が予定されている二つの既配置素子の組を選択
する。次いで、この配線コストと配線グリッドに基づい
て、前記選択された既配置素子どおしを結線するための
領域を決定し、この決定された配線領域で、前記二つの
既配置素子どうしを確率的に仮想配線をし、前記仮想配
線及び既配線及び既配置に基づいて、配線コストを再度
計算する事を特徴とする。
【0014】以上の様に、本発明は仮想配線をする前
に、配線不可能と判断された配線領域を拡大し迂回経路
を確保するので、配線領域を確保した後に行う仮想配線
工程において配線不可能となる事がない。従って、従来
の様に、実配線が可能となるまで、仮想配置、混雑度見
積、仮想配線工程を繰り返す必要がないので、大幅に設
計時間を短縮する事ができる。
【0015】
【発明の実施の形態】次に、本発明の実施形態を図を用
いて詳細に説明する。図1に、本発明にかかる設計方法
の一例を示した。図1のに示すように、初めに用意した
所定のデータを計算機に入力する(ステップ1)。
【0016】次に、その入力したデータの基づいて、所
定のプログラムを搭載した計算機が自動的にチップ上に
半導体素子を仮想的に配置する(ステップ2)。次に、
所定のプログラムを搭載した計算機が自動的に配線領域
を決定し、配線混雑度を見積もる(ステップ3)。
【0017】次に、前ステップで見積もられた配線混雑
度等を考慮して半導体素子の再配置が必要ならばステッ
プ2へバックアノテーションし、その必要が無ければ次
にステップへ進む(ステップ4)次に、配線が予定され
る前記半導体素子間を仮想配線する(ステップ5)。
【0018】次に、仮想配線データより出力データを得
る(ステップ6)。この出力結果に基づいて露光用マス
クを作成される。以上の様にして一連の設計工程が終了
する。
【0019】次に、上述の配線混雑度見積工程(ステッ
プ3)について図を用いて詳細に説明する。この配線混
雑度見積工程は、(1)配線領域を概略配線格子に分割
する為の分割工程、(2)概略配線格子への配線コスト
を割り当てる配線コスト計算工程、(3)既知配置素子
の組を選択する為の選択工程、(4)それぞれの概略配
線格子に割り当てられた配線コスト等に基づいて配線領
域を決定する為の配線領域決定工程、(5)概略配線格
子の配線コスト及び概略配線格子に割り当てられる配線
本数を計算する為のデータ更新工程、から構成される
(図2参照)。以下に、上述の工程のそれぞれについて
説明する。
【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)に位置している。
【0021】次に、(2)概略配線格子への配線コスト
を割り当てる配線コスト計算工程について説明する。上
記の概略配線格子のそれぞれに配線コストを割り当てる
が、その配線コストの計算方法の概念を以下に示す。
【0022】図4は、図3に示した概略配線格子の一つ
を拡大したものである。図4に示した様に、この概略配
線格子G(X、Y)において、X方向のグリッド(配線
できる本数)は5、X方向のグリッドは4とし、概略配
線格子G(X,Y)の中に障害物Z(例えば、既配置素
子等)が存在するとすると、使用可能な配線は、概略配
線格子G(X、Y)のX方向には1本、Y方向には2本
である。
【0023】この場合、概略配線格子G(X、Y)にお
けるX方向の配線のしやすさを1、Y方向の配線のしや
すさを2と仮定し、概略配線格子G(X,Y)の配線コ
ストをC(1、2)と見積もる。即ち、X方向の配線コ
ストは1、Y方向の配線コストは2となる。
【0024】以上の様にして、配線コストを計算する
が、上述の配線コストの計算方法は説明を簡単にするた
めに取り上げた例で、他にも種々の計算方法が存在す
る。次に、(3)既知配置素子の組を選択する為の選択
工程について説明する。
【0025】図5に示すように、チップ上に配置された
既配置素子D1〜D4のそれぞれを結ぶ線分Nij(iは
1〜3、j は1〜3、i ≠j)考える。いま、この線分が
短い順に仮想配線するとする。この場合、半導体素子D
3とD4の仮想配線が最初に行われることになる。即
ち、最初に選択される。
【0026】次に、(4)それぞれの概略配線格子に割
り当てられた配線コスト等に基づいて配線領域を決定す
る為の配線領域決定工程について説明する。いま、半導
体素子DlとDmを配線する場合、配線は概略配線格子
列を必ず横切る事になる。しかし、既に、概略配線格子
列の全てが既に配線されている場合には、半導体素子D
lとDmは配線不可能となってしまう。
【0027】そこで、配線不可能の場合配線領域を図6
に示したようにX、Y方向に配線領域を拡大する。次
に、この配線領域の拡大方法を詳細に説明する。今、概
略配列格子列(G(p、j)〜G(p、m))のエッジ
を横切るグリッド数(配線の数)の合計をNtotal 本と
し、概略配列格子列(G(p、j)〜G(p、m))の
それぞれのX方向の配線コストの合計をCtotal と仮定
すと、Ntotal −Ctotal >0のとき、まだ配線可能と
判断できる。その理由は、配線の総和(Ntotal )が、
障害物により使用できない配線の本数(Ctotal )より
も多いからである。
【0028】Ntotal −Ctotal <0のとき、配線不可
能と判断できる。その理由は、配線の総和(Ntotal )
が、障害物により使用できない配線の本数(Ctotal )
よりも少ないからである。この場合、図6に示した様
に、配線領域を拡大し、迂回経路を確保する。即ち、配
線可能な状態となる。
【0029】次に、上記で拡大した領域において、上記
手順と同様にして、他の全ての概略配線格子列について
行い、更に、Y方向の概略配線格子列についても、必要
なら配線領域を拡大する。
【0030】上記によって決定された配線領域内におい
て、配線コスト等に基づいて確率的配線を行う。次に確
率的配線について詳細に説明する。図7に、図3に示さ
れる半導体素子D1周辺の概略配線格子の拡大図を示し
た。
【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)と仮定する。
【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まで仮想配線を
行う。
【0033】以上の様にして、配線領域を決定し確率的
配線を行う。次に、(5)概略配線格子の配線コスト及
び概略配線格子に割り当てられ配線数を計算する為のデ
ータ更新工程について説明する。
【0034】上記の様にして、配線領域を決定し、確率
的配線を行うと配線がされた事となるので、仮想配線が
施された概略配線格子の配線コスト及び使用可能なグリ
ッド数が変化する。従って、再度、配線コストを更新
し、概略配線格子に割り当てられる配線数を計算する。
任意のエッジ上の概略配線格子に割り当てられる配線本
数は以下の式で計算される。 配線本数=C/Ctotal ここで、Cは任意の概略配線格子の配線コスト、Ctota
l はエッジ上の全ての概略配線格子の配線コストの合計
を表す。
【0035】以上の工程は、配線が予定される一組の既
配置素子について行われ、配線が予定される他の組につ
いても上記の動作を繰り返す。以上の様にして、配線本
数を計算し、配線の混雑度を見積もる。その場合、必要
ならば、配置工程までバックアノテーションをして、半
導体素子の再配置を行う。
【0036】また、以上の計算を実現するプログラムを
計算機に搭載し、キーボード、フロッピーデスク等の入
力手段により所定のデータを入力し、CRT、プリンタ
ー等の手段によりデータを出力する。
【0037】以上の様にして、本発明は、従来は仮想配
線を行わなければ正確に見積もる事が出来なかった配線
混雑度を仮想配線を行わずに正確、かつ、高速に見積も
る事が出来る。従って、従来の様に、実配線が可能とな
るまで、仮想配置、混雑度見積、仮想配線工程を繰り返
す必要がないので、大幅に設計時間を短縮する事ができ
る。
【0038】
【発明の効果】本発明は、従来は仮想配線を行わなけれ
ば正確に見積もる事が出来なかった配線混雑度を仮想配
線を行わずに正確、かつ、高速に見積もる事が出来、従
来の様に、実配線が可能となるまで、仮想配置、混雑度
見積、仮想配線工程を繰り返す必要がないので、大幅に
設計時間を短縮する事ができる。また、経路を確率的に
求めるために配線のアルゴリズムによる配線経路の癖も
吸収する事が出来る。
【図面の簡単な説明】
【図1】本発明にかかる配置、配線工程のフローチャー
トを示した図。
【図2】配線混雑度見積工程の詳細フローチャートを示
した図。
【図3】配線領域を概略配線格子に分割して様子を示し
た図。
【図4】配線コストを説明するための図。
【図5】ピンペアの選択を説明するための図。
【図6】配線領域を拡大する様子を示した図。
【図7】確率的配線を説明する為の図。
【図8】従来の配置、配線フローチャートを示した図。
【図9】配線の様子を示した図。
【図10】従来の配線混雑度見積方法を示した図。
【符号の説明】
G(X、Y) 概略配線格子 D1〜D4 半導体素子 Nij グラフ

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 チップ上の配線領域を概略配線格子に分
    割する為の分割工程と、 前記概略配線格子のそれぞれに対して、配線コストを計
    算する為の配線コスト計算工程と、 前記複数の既配置素子の内で配線が予定されている既配
    置素子の組を選択する為の選択工程と、 前記選択された既配置素子どおしを結線するための領域
    を決定する為の配線領域決定工程と、 前記概略配線格子の配線コスト及び前記概略配線格子に
    割り当てられる配線本数を計算するデータ更新工程と、
    を有する事を特徴とする配線混雑見積方法。
  2. 【請求項2】 チップ上の配線領域を概略配線格子に分
    割する為の分割工程と、 前記概略配線格子のそれぞれに対して、既に配置されて
    いる複数の既配置素子及び既に配線されている既配線に
    基づいて、配線コストを計算する為の配線コスト計算工
    程と、 前記複数の既配置素子の内で配線が予定されている既配
    置素子の組を選択する為の選択工程と、 前記配線コストと配線グリッドに基づいて、前記選択さ
    れた既配置素子どおしを結線するための領域を決定する
    為の配線領域決定工程と、 前記概略配線格子に割り当てられる配線本数を計算する
    為のデータ更新工程と、を有する事を特徴とする配線混
    雑見積方法。
  3. 【請求項3】 前記配線領域決定工程が、 前記配線コスト計算工程において、仮想配線可能か否か
    を判定する為の判定手段により配線不可能と判定された
    場合、前記選択された二つの既配置素子を対角とする配
    線領域を拡大し、その拡大した領域を配線領域とする、
    工程である事を特徴とする請求項1又は2記載の配線混
    雑見積方法。
  4. 【請求項4】 前記配線領域決定工程が、 前記配線コスト計算工程において、それぞれの概略配線
    格子対して割り当てされた配線コストと配線グリッドに
    基づいて、仮想配線可能か否かを判定する為の判定手段
    により、 配線可能と判定された場合、前記選択された二つの既配
    置素子を対角とする領域を配線領域とし、 配線不可能と判定された場合、前記選択された二つの既
    配置素子を対角とする配線領域を拡大し、その拡大した
    領域を配線領域とする、工程である事を特徴とする請求
    項1又は2記載の配線混雑見積方法。
  5. 【請求項5】 前記選択工程において、選択される既配
    置素子が複数である事を特徴とする請求項1又は2記載
    の配線混雑見積方法。
  6. 【請求項6】 前記データ更新工程の後、前記選択工程
    及び前記配線領域決定工程及び前記データ更新工程を、 配線が予定される全ての既配置素子の組を選択するまで
    繰り返す事を特徴とする請求項1又は2記載の配線混雑
    見積方法。
  7. 【請求項7】 素子の配線及び配置に必要な所定の入力
    データを入力する為の入力手段と、 前記入力データに基づいて素子をチップ上に仮想的に配
    置し、請求項1乃至5記載の配線混雑度見積方法を使用
    し、更に配線が予定される半導体素子同士を仮想配線を
    行う為のプログラムを搭載した計算機と、 前記計算機により計算された所定の出力データを出力す
    るための出力手段とを有する事を特徴とする半導体集積
    回路設計システム。
JP8247399A 1996-09-19 1996-09-19 配線混雑見積方法及びそれを利用した半導体集積回路設計システム Pending JPH1091673A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8247399A JPH1091673A (ja) 1996-09-19 1996-09-19 配線混雑見積方法及びそれを利用した半導体集積回路設計システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8247399A JPH1091673A (ja) 1996-09-19 1996-09-19 配線混雑見積方法及びそれを利用した半導体集積回路設計システム

Publications (1)

Publication Number Publication Date
JPH1091673A true JPH1091673A (ja) 1998-04-10

Family

ID=17162859

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8247399A Pending JPH1091673A (ja) 1996-09-19 1996-09-19 配線混雑見積方法及びそれを利用した半導体集積回路設計システム

Country Status (1)

Country Link
JP (1) JPH1091673A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001274254A (ja) * 2000-03-28 2001-10-05 Mitsubishi Electric Corp 半導体集積回路の自動配置配線方法
JP2009140495A (ja) * 2007-12-03 2009-06-25 Toshiba Corp 確率的相互接続構造設計のためのシステムおよび方法
JP2010033493A (ja) * 2008-07-31 2010-02-12 Sony Corp レイアウト配線混雑予測装置およびその方法、並びにプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001274254A (ja) * 2000-03-28 2001-10-05 Mitsubishi Electric Corp 半導体集積回路の自動配置配線方法
JP4587520B2 (ja) * 2000-03-28 2010-11-24 ルネサスエレクトロニクス株式会社 半導体集積回路の自動配置配線方法
JP2009140495A (ja) * 2007-12-03 2009-06-25 Toshiba Corp 確率的相互接続構造設計のためのシステムおよび方法
US8370783B2 (en) 2007-12-03 2013-02-05 Kabushiki Kaisha Toshiba Systems and methods for probabilistic interconnect planning
JP2010033493A (ja) * 2008-07-31 2010-02-12 Sony Corp レイアウト配線混雑予測装置およびその方法、並びにプログラム

Similar Documents

Publication Publication Date Title
US7707536B2 (en) V-shaped multilevel full-chip gridless routing
JP3063828B2 (ja) 集積回路の自動概略配線方法
US6480991B1 (en) Timing-driven global placement based on geometry-aware timing budgets
US7065729B1 (en) Approach for routing an integrated circuit
JP4719265B2 (ja) 確率的相互接続構造設計のためのシステムおよび方法
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
US6598206B2 (en) Method and system of modifying integrated circuit power rails
US5666289A (en) Flexible design system
JPS60130843A (ja) 接続路を設定する方法
JP2009054172A (ja) 配線処理方法及び配線処理装置並びに配線処理プログラム用記録媒体
JP3042761B2 (ja) 論理エミュレーションシステムにおけるプログラマブルデバイスのプログラムデータ生成方法およびプログラマブルデバイスのプログラムデータ生成装置
US6519745B1 (en) System and method for estimating capacitance of wires based on congestion information
CN112149378A (zh) 一种基于拥塞协商的拆线重布方法、设备及可读存储介质
US7966597B2 (en) Method and system for routing of integrated circuit design
JP5418341B2 (ja) 設計支援プログラム、設計支援装置および設計支援方法
CA2345443C (en) Approach for routing an integrated circuit
US6487697B1 (en) Distribution dependent clustering in buffer insertion of high fanout nets
JPH1091673A (ja) 配線混雑見積方法及びそれを利用した半導体集積回路設計システム
US6260184B1 (en) Design of an integrated circuit by selectively reducing or maintaining power lines of the device
US6615401B1 (en) Blocked net buffer insertion
JP2006155119A (ja) Lsi物理設計方法、プログラム及び装置
Chen et al. A novel framework for multilevel full-chip gridless routing
Wu et al. A topology-based eco routing methodology for mask cost minimization
JP3548398B2 (ja) 概略経路決定方法および概略経路決定方式

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040120