JPH09246386A - 配線経路探索方法及び装置、並びに検査不要クリティカルカット検出方法及び装置 - Google Patents

配線経路探索方法及び装置、並びに検査不要クリティカルカット検出方法及び装置

Info

Publication number
JPH09246386A
JPH09246386A JP8045764A JP4576496A JPH09246386A JP H09246386 A JPH09246386 A JP H09246386A JP 8045764 A JP8045764 A JP 8045764A JP 4576496 A JP4576496 A JP 4576496A JP H09246386 A JPH09246386 A JP H09246386A
Authority
JP
Japan
Prior art keywords
critical cut
critical
wiring
cut
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.)
Granted
Application number
JP8045764A
Other languages
English (en)
Other versions
JP3352583B2 (ja
Inventor
Toshiyuki Hama
利行 濱
Hiroaki Eto
博明 江藤
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP04576496A priority Critical patent/JP3352583B2/ja
Priority to US08/757,718 priority patent/US5880969A/en
Publication of JPH09246386A publication Critical patent/JPH09246386A/ja
Priority to US09/012,765 priority patent/US6226560B1/en
Application granted granted Critical
Publication of JP3352583B2 publication Critical patent/JP3352583B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

(57)【要約】 (修正有) 【課題】探索処理をしつつ、クリティカルカットの容量
検査を実施する。 【解決手段】端子を含む点を頂点とする複数の領域に平
面を分割し、当該複数の領域の接続関係を表現する経路
探索グラフを作成し、端子を含む、2つの物体間を最短
距離で結ぶ線分をクリティカルカットとして、その可能
配線幅と共に記録し、経路探索グラフを探索する際に、
探索経路上の端子又は辺が記録している位置情報を用い
てある領域への進入を検出した場合、当該領域に関連す
るクリティカルカットに、進入を検出する際に用いた位
置情報を参照して進入方向を記録し、退出を検出する際
に用いた位置情報から、前索経路が関連するクリティカ
ルカットと交差するかどうか判断し、クリティカルカッ
トと交差すると判断された場合には、当該クリティカル
カットの可能配線幅を参照して、交差可能かどうかを判
断する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プリント基板など
の端子間の配線経路を自動的に探索する方法に関し、よ
り詳しくは、配線の太さや配線間の最低限の隙間の確保
等を考慮して、配線経路容量の制限を満たしていること
を確認しつつ経路探索を行う自動配線経路探索方法に関
する。
【0002】
【従来の技術】通り得る配線の最大幅である配線経路容
量に制限があるような、プリント基板等の端子間の配線
経路を求める場合、問題となるのは既に配線された信号
線である既配線を含む容量検査の方法である。現在の商
用自動配線システムは、既配線は物理的に配置された状
態で経路探索を行っているので、隣り合った既配線ある
いは障害物との距離が経路探索の対象となっている信号
線の幅にとって十分であるかどうかを検証しながら経路
探索を行っている。このシステムでは、もし十分な幅が
得られない場合、押しのけ操作により既配線の物理的位
置を再配置することで経路を確保する。90度、45度
単位で信号線を配置するような場合には、経路探索操作
中に動的に再配置を行うことも可能であったが、自由角
度での配線になると再配置のための計算が膨大になり現
実的ではない。現在のシステムでは、配線経路容量を正
確に満たし且つ自由角度の自動配線を行う処理は、実用
的な処理速度で実現されていない。
【0003】一方、ある論文では、上述の既配線の問題
に対処するために、ラバーバンド・モデルを用いるもの
がある。このラバーバンドは、位相的に等しい経路の代
表元のようなものであり、2端子間の経路をピンと張っ
た線分で表現される。また、全てのクリティカルカット
が配線容量を満たせば、全体として配線容量を満たした
物理的配置が可能であることが同時に示された(参考文
献1;E.Leiserson and F.M.Maley:"Algorithms for Ro
uting and Testing Routability of Planar VLSI layou
ts," Proc.STOC,pp.69-78(1985))。このクリティカル
カットとは、2つの物体間を最短距離で結ぶ線分を言
う。このため、ラバーバンドモデルでは、経路探索中は
既配線の物理的配置は決定されず、全ての経路探索が終
了した後に、詳細配線処理により物理的配線可能性を検
証し、物理的な配線を決定するという手順を用いる。
【0004】ラバーバンドを直接の経路表現として探索
するには、可視グラフ上での経路探索が必要となる。一
般に、可視グラフは領域分割によるメッシュ構造よりも
かなり複雑になる傾向があり、現実に使用することは少
ない。しかし、他の経路表現をラバーバンド表現に変換
するのは線形時間で可能であるので、経路探索終了後
に、その経路をラバーバンドに変換し、正確な経路容量
の検証を行うのが普通である。しかし、経路探索中は、
近似的に経路容量を見積もっているだけで、正確に全て
のクリティカルカットの容量を検証しているわけではな
い。
【0005】
【発明が解決しようとする課題】配線領域に十分な余裕
のある場合には、近似的な容量の検査でも正しい経路が
求められるが、近年のようにプリント基板の実装密度が
高くなると、容量ぎりぎりの配線が要求される。経路が
決まった後、詳細配線処理で正確な容量の検証を行う方
法では、経路の再探索が頻繁に起こる可能性が高くな
る。よって、従来のような手順にて高密度なプリント基
板の自由角度での自動配線を現実的な処理時間内で終了
させるのは難しい。
【0006】よって、本発明の目的は、配線容量の制限
がある配線経路において、経路探索中にクリティカルカ
ットの容量検査を行い、正確に経路容量を満たした配線
経路探索を実行可能とすることが目的である。
【0007】また、無駄な経路の再計算を除去し、自動
配線処理の高速化を図ることも目的である。
【0008】さらに、自由角度での自動配線を可能とす
るシステムを提供することも目的である。
【0009】また、クリティカルカットの配線容量検査
を行う訳であるが、この検査を行うクリティカルカット
の数を減少させることも目的である。
【0010】これにより経路探索処理全体の処理の高速
化を図ることも目的とする。
【0011】
【課題を解決するための手段】以上述べたような目的を
達成するために、本発明は大きく2つの部分に分けられ
る。すなわち、経路探索中にクリティカルカットの容量
検査を正確に行って、配線経路探索を行う部分と、検査
すべきクリティカルカットの数を減少させるための処理
である。
【0012】まず前者の部分については、以下のような
ステップにて実現される。 (a)端子を含む点を頂点とする複数の領域に平面を分
割し、当該複数の領域の接続関係を表現する経路探索グ
ラフを作成するステップ。 (b)端子を含む、2つの物体間を最短距離で結ぶ線分
をクリティカルカットとして、その可能配線幅と共に記
録するステップ。 (c)クリティカルカットが関連する領域の辺と必要な
端子とに、当該クリティカルカットとの対応と必要な場
合には当該クリティカルカットに対する位置情報とを記
録するステップ。 (d)経路探索グラフを探索する際に、 (d1)探索経路上の端子又は辺が記録している位置情
報を用いてある領域への進入を検出した場合、当該領域
に関連するクリティカルカットに、進入を検出する際に
用いた位置情報を参照して進入方向を記録するステッ
プ。 (d2)探索経路となる端子又は辺が記録している位置
情報から前記領域からの退出を検出した場合、関連する
クリティカルカットに記録された進入方向を参照して、
退出を検出する際に用いた位置情報から、前索経路が関
連するクリティカルカットと交差するかどうか判断する
ステップ。 (d3)クリティカルカットと交差すると判断された場
合には、当該クリティカルカットの可能配線幅を参照し
て、配線可能かどうかを判断するステップ。
【0013】このようなステップを含むことにより、各
クリティカルカットの交差が確実に検出でき、正確な容
量検査を行えるので、後に経路変更などの処理を行わな
くとも済む。
【0014】また、先のステップ(c)に、(c1)ク
リティカルカットが複数の領域の辺と同位相である場合
には、当該辺に当該クリティカルカットとの対応を記録
するステップ、(c2)クリティカルカットが領域と交
差する場合には、交差する領域の和領域を求め、当該和
領域の境界の辺に当該クリティカルカットとの対応及び
位置情報を記録し、当該和領域に端子が含まれる場合に
は、当該端子に当該クリティカルカットとの対応及び位
置情報を記録するステップ、を含むようにすることも考
えられる。このようにすると、より少ないデータにて処
理を行うことができる。
【0015】また、ステップ(d1)が、(d11)探索
経路上の端子又は辺が記録している位置情報を用いてあ
る領域への進入を検出するステップと、(d12)進入す
る領域と交差するクリティカルカットに、進入を検出す
る際に用いた位置情報に基づき、当該クリティカルカッ
トに対する進入方向を記録するステップとを含むように
することも考えられる。
【0016】同様に、ステップ(d2)が、(d21)探
索経路となる端子又は辺が記録している位置情報を用い
て進入した領域からの退出を検出するステップと、(d
22)クリティカルカットに記憶された進入方向を参照し
て、退出を検出する際に用いた位置情報に基づく退出方
向との関係から、当該クリティカルカットを当該探索経
路が交差するかを判断するステップとを含むようにする
ことも考えられる。
【0017】先のステップに加え、(d4)領域の進入
及び退出の際に、当該領域の境界となる辺と対応を有す
るクリティカルカットが存在することを検出した場合に
は、当該クリティカルカットの可能配線幅を参照して配
線可能かを判断するステップとをさらに含むようにする
ことも考えられる。
【0018】先の位置情報を、クリティカルカットとの
位置関係と、当該位置情報を有する端子又は辺が属する
領域への進入を検出するための情報とすることも考えら
れる。このようにすると、クリティカルカットへの進入
方向の記録や、退出時に交差したか否か、ある領域に進
入したかどうかを簡単に把握できるようになる。
【0019】また、(d5)探索経路が前記クリティカ
ルカットを交差しないと判断された場合には、当該クリ
ティカルカットに記憶された進入方向をクリアするステ
ップをさらに含むようにする。進行方向を記録したまま
であると、処理を誤る場合があるからである。
【0020】また、(d6)クリティカルカットを探索
経路が交差可能である場合には、当該クリティカルカッ
トの進入方法をクリアし、探索経路の通過を記録するス
テップをさらに含むようにする。通過を記録し、他の経
路探索の際に用いるためである。
【0021】さらに、(d7)クリティカルカットの可
能配線幅を参照して、交差不可能と判断された場合に
は、当該探索枝をカットし、当該クリティカルカットの
進行方向をクリアするステップをさらに含むようにす
る。交差できないので、後戻りしなければならない。
【0022】以上の分割された領域は、例えば台形でも
よいわけであるが、三角形にすると、以下に述べるよう
な利点が生ずる。
【0023】三角形領域の辺を方向が異なる有向枝と
し、一方向で領域を囲み、クリティカルカットは向きを
有しており、先のステップ(c)が、各有向枝に対し、
存在する場合には、当該有向枝が右境界となっているク
リティカルカットと、当該有向枝が左境界となっている
クリティカルカットと、当該有向枝の対頂点が右境界上
にあるクリティカルカットと、当該有向枝の対頂点が左
境界上にあるクリティカルカットと、当該有向枝と一致
するクリティカルカットとを記録するステップを含むよ
うにすることもできる。このようにすると、ある領域
(領域の塊を含む)を指しているのか、他の領域を指し
ているのか明瞭で、且つ記憶するデータも少なくなる。
【0024】三角形領域を用いる場合、先のステップ
(d1)は、(dd11)端子から経路探索を行う場合に
は、退出しようとする領域の境界となっている有向枝で
ある内側有向枝に該当し且つ当該端子を対頂点とした有
向枝に対応するクリティカルカットに、進入方向を記録
するステップと、(dd12)進入しようとする領域の境界
となっている有向枝である外側有向枝に記録されたクリ
ティカルカットに、進入方向を記憶するステップとを含
むようにすることもできる。
【0025】同様に、先のステップ(d2)は、(dd2
1)内側有向枝に記録されたクリティカルカットの進入
方向を参照し、当該内側有向枝の位置に基づき探索経路
がクリティカルカットを交差しているかを判定するステ
ップと、(dd22)端子への経路探索を行う場合には、当
該端子を対頂点とした、直前に通過した外側有向枝に対
応するクリティカルカットの進行方向を参照し、当該端
子の位置に基づき探索経路が当該クリティカルカットを
交差したかを判定するステップとを含むようにすること
もできる。
【0026】(dd4)三角形領域の辺に一致するクリテ
ィカルカットが存在する場合には、当該クリティカルカ
ットとの交差が、その配線可能幅を参照して可能かどう
かを判定するステップをさらに含むようにすることもで
きる。
【0027】以上のようにクリティカルカットの容量検
査を正確にする構成を示したが、クリティカルカットの
数は端子の数nの時n2に比例するだけあり、全体の処
理を高速化するには、検査の必要なクリティカルカット
の数を減少する必要がある。そこで、以下のようなステ
ップを実行する。
【0028】すなわち、1のクリティカルカットについ
て配線容量を求めるステップと、1のクリティカルカッ
トと交差する領域の和領域において、当該クリティカル
カットの片側に位置し且つ和領域の境界を構成する辺の
配線容量又は通過する可能性のある最大配線幅である最
大フローの和を求めるステップと、1のクリティカルカ
ットの配線容量と、配線容量又は最大フローの和を比較
するステップと、比較結果により、1のクリティカルカ
ットの配線容量の方が大きい場合には、当該1のクリテ
ィカルカットを検査不要なクリティカルカットとして出
力するステップとを含むものである。
【0029】また、上記の領域を三角形領域とすると、
平面及び端子の大きさ及び配置による制限を参照して、
複数の三角形領域の各辺を通過する可能性のある最大配
線幅である最大フローを計算するステップと、1のクリ
ティカルカットについて配線容量を求めるステップと、
1のクリティカルカットと交差する領域の和領域におい
て、当該クリティカルカットの片側に位置し且つ和領域
の境界を構成する辺の最大フローの和を求めるステップ
と、1のクリティカルカットの配線容量と、最大フロー
の和を比較するステップと、比較結果により、1のクリ
ティカルカットの配線容量の方が大きい場合には、当該
1のクリティカルカットを検査不要なクリティカルカッ
トとして出力するステップとを含むようにすることもで
きる。この最大フローを用いると、さらに要処理である
クリティカルカットの数を減らすことができる。
【0030】そして、先の最大フローを計算するステッ
プは、三角形領域の辺が、平面の境界及び配線不能領域
の境界を含む障害物との境界である場合には、当該辺の
前記最大フローを0に設定するステップや、三角形領域
の内部に、当該三角形領域の頂点からの障害物との境界
へのクリティカルカットを含む場合、障害物との境界で
ある辺以外の辺の最大フローを当該クリティカルカット
の配線容量と同一にするステップを含むようにすると、
より効果的である。
【0031】特に三角形領域の場合、先の最大フローの
和を計算するステップが、ある三角形領域の一の辺の最
大フローが、他のニ辺の最大フローの和より小さい場
合、当該一の辺の最大フローを他のニ辺の最大フローの
和に更新するステップを含むようにすることの考えられ
る、このようにすれば、各辺の最大フローがより小さく
なる。
【0032】本検査不要なクリティカルカットを検出す
る方法の他の態様には、平面及び端子の大きさ及び配置
による制限を参照して、複数の三角形の各辺を通過する
可能性のある最大配線幅である最大フローを計算するス
テップと、1の三角形領域の外側にあり且つ辺を共有す
る第2の三角形領域において、当該共有する辺が、前記
1の三角形領域の1の端子から可視であるか判断する第
1判断ステップと、辺が可視であると判断された場合、
前記共有する辺の対頂点である端子と前記1の端子との
クリティカルカットが前記1の端子から可視であるか判
断する第2判断ステップと、クリティカルカットが可視
であると判断された場合には、当該クリティカルカット
が交差する三角形領域の和領域において、クリティカル
カットの片側に位置する境界の辺の最大フローの和を計
算するステップと、クリティカルカットの配線容量と、
最大フローの和を比較するステップと、比較結果によ
り、クリティカルカットの配線容量の方が大きい場合に
は、当該クリティカルカットを検査不要なクリティカル
カットとして出力するステップとを含むようにするもの
もある。
【0033】この場合、最大フローの和とクリティカル
カットの配線容量のどちらか小さい方を、クリティカル
カットの最大フローとして記録するステップと、前記共
有する辺を、前記和領域に加える新たな三角形領域と前
記和領域とが共有する辺とし、前記クリティカルカット
の片側に位置する境界の辺を、新たなクリティカルカッ
トの片側に位置する境界の辺又は前記クリティカルカッ
ト及び前記新たな三角形領域の1の辺とし、先の第1判
断ステップ以降を実行するステップとをさらに含むよう
にすることも考えられる。これにて、連続的にクリティ
カルカットが検査要か否か判断できる。
【0034】以上のような検査不要クリティカルカット
検出方法は、先に述べた処理のステップ(b)に含ませ
るとよい。これにより記録されるクリティカルカットの
数が減り、経路探索は高速化される。
【0035】なお、上記のようなステップを実行するシ
ステムを作成すること、上記のようなステップを実行す
るためのプログラムを用意し、そのプログラムの周知の
記憶装置、記憶媒体に記憶することは、当業者には周知
の事項であるので、詳細は省略する。
【0036】
【発明の実施の形態】
A.配線経路探索処理 (1)配線領域の分割 配線経路探索処理は、まず配線領域を複数の領域に分割
することから開始する。配線領域とは、プリント基板等
の形状から配線禁止領域を除いた複数の閉領域である。
この閉領域は端子を内部又は周辺に含むようにすること
もできるが、端子を1つの点とみなし(実際の端子は大
きさを有している。)、すべての端子が分割領域の境界
上にあるように分割する。例えば、W.L.Shiele, et a
l,"A Gridless Router for Industrial Design Rules,"
pp626-631, 27th ACM/IEEE DesignAutomation Confere
nce, 1990 といった方法で分割すると、複数の台形領域
に分割することができるし、Y.Lu and W.Dai:"A numeri
cal stable algorithm forconstructing constrained d
alaunay triangulation and application to multichip
module layout," Proc. International Conference on
Circuits and Systems, 1991に記載された方法を用い
れば、複数の三角形領域に分割することができる。但
し、本願発明は、これらの方法に限定されるものではな
い。分割領域の境界上で次のように頂点を定義してお
く。(1)端子はすべて頂点とする。(2)同時に3つ
以上の領域(配線領域の外部の領域も含める)の境界と
なっている点は全て頂点とする。(3)その他の境界上
の任意の点は頂点となり得る。同時に、分割領域の境界
で上述のように定義された頂点間の部分を分割領域の辺
と呼ぶ。ここまでの処理が終わった状態を図1に示す。
【0037】(2)探索グラフの作成 上述のように分割された複数の領域の接続関係を表現し
たデータ構造を、経路探索グラフという。例えば、経路
探索グラフは、分割領域を節とし、隣接する領域の間に
ある辺に対応して節間に枝を張ったグラフ(例えば図
2)、又はその双対グラフ(例えば図3)である。配線
経路は、この探索グラフ上の経路として表現される。
【0038】(3)クリティカルカットの登録処理 探索グラフ上での探索時に、探索途中の経路と交差する
クリティカルカットを即座に同定することができるよう
に準備するための処理をここで行う。探索グラフは分割
された領域の位置関係を表現しているので、当該領域の
辺や頂点は探索中に容易に参照可能である。そこで、各
領域の辺、頂点に、次のようなクリティカルカットと付
加情報を登録する。
【0039】この登録処理は、クリティカルカットを中
心にして、図4を用いて説明する。ステップ100にて
開始された処理は、まずクリティカルカットを1つ取り
出す(ステップ110)。そして、そのクリティカルカ
ットの分類を行う(ステップ120)。すなわち、TY
PE1として、クリティカルカットと分割された領域の
連続する辺が位相的に同じ経路(位相的に一致する)場
合と、TYPE2として、クリティカルカットが分割さ
れた領域と交差する場合とを定義する。図5の例では端
子Aから基板の境界へ向かうクリティカルカット200
0が、TYPE1のクリティカルカットであり、位相的
に一致する辺は辺1000である。また、端子Bから同
じく基板の境界へ向かうクリティカルカット2100
は、領域3000と交差しているので、TYPE2のク
リティカルカットである。
【0040】ステップ120において取り出したクリテ
ィカルカットがTYPE1であれば、辺に対応情報を記
録する(ステップ130)。この対応情報とは、その辺
とクリティカルカットが対応関係にあるように示すポイ
ンタを置くということである。先のクリティカルカット
2000の場合には、辺1000との対応関係を記録す
る。また、取り出したクリティカルカットがTYPE2
であれば、そのクリティカルカットと交差する領域を同
定し、それらの和領域の他の領域との境界となる辺(基
板の周囲、禁止領域の周囲を除く)について、次のよう
な登録を行う(ステップ140)。1.対応情報。これ
は先に示したTYPE1と同様である。2.クリティカ
ルカットとの位置関係。これは、クリティカルカットに
適当な向きを設定し、先の和領域の右側に位置するのか
又は左側に位置するのかを記録する。これは、クリティ
カルカットをどの方向からどの方向へ交差していったか
を後に知る必要があるので、その時に用いる。3.和領
域への進入方向。辺のどちら向きに経路が通過する時に
当該和領域への進入となるかを記録する。和領域への進
入も、後に検知する必要がある。
【0041】例えば、クリティカルカット2100を考
える。このクリティカルカット2100が交差する領域
は領域3000のみである。この領域3000には、辺
1000、辺1100、辺1200、辺1300があ
る。残りの辺は、基板の周囲か禁止領域の周囲である。
そして、クリティカルカット2100には、図5に示す
ように左から右への向きをもたせる。よって、辺100
0には、1.クリティカルカット2100への(から
の)ポインタ、2.位置関係である「右」という指標、
3.進入方向である、「下から上」を意味する指標、を
登録する。また、他の辺1100,辺1200,辺13
00にも同様に記録する。
【0042】クリティカルカット2200の場合を考え
る。この場合、クリティカルカット2200が交差する
領域は領域3000及び領域3100である。よって、
和領域の周囲の辺は、辺1000,辺1100.辺12
00,辺1400,辺1500,辺1600,辺170
0である。クリティカルカット2200の向きは、図5
のとおりとする。よって、辺1200には、1.クリテ
ィカルカット2200への(からの)ポインタ、2.位
置関係である「左」という指標、3.進入方向である、
「左から右」を意味する指標、を登録する。
【0043】また、先に示した端子は和領域の頂点たり
得る。よって、端子には次のような事項を登録する。
1.対応情報。これはクリティカルカットへの(から
の)ポインタでよい。2.クリティカルカットに対する
位置関係。これも、クリティカルカットに向きを設ける
ので、その左側か右側かということを記録する。3.経
路がどの方向に進むと、頂点である端子を共有する領域
の中のどの領域に進入することになるかを示す進入範
囲。この進入範囲は、例えば角度を記録する。これは、
経路探索は、端子から始まる場合も考えられ、その場合
には、最初にどの領域に進入するのかを認識できるよう
にしておく必要があるからである。
【0044】先のクリティカルカット2100の例の場
合、端子Aには以下のような情報を記録する。1.クリ
ティカルカット2100への(からの)ポインタ。2.
位置関係である、「右」という指標。3.この場合、領
域3000には、0度から180度の範囲で進入となる
ので、その意味を示す指標。
【0045】なお、クリティカルカット2100が交差
する領域である領域3000には端子Bも含まれるが、
この端子Bはクリティカルカット2100の起点となっ
ており、このような点には、上述の情報を記録しない。
位置関係で「右」又は「左」と記録できないような点
は、記録する意味がないからである。当然、クリティカ
ルカットの終点となるような端子にも、情報の登録はし
ない。
【0046】以上のような登録処理を、すべてのクリテ
ィカルカットについて行う。よって、未処理のクリティ
カルカットがあれば、ステップ110に戻り(ステップ
160)、未処理のクリティカルカットがなければ、処
理を終了する(ステップ170)。
【0047】(4)交差するクリティカルカットの同定
処理 配線経路は、先に求めた探索グラフ上での経路探索によ
って見つける。経路探索アルゴリズムとしては、周知の
縦型探索、横型探索等の端子から始めて1つの部分経路
を成長させていく探索方法を対象としている。ここで
は、成長中の部分経路がクリティカルカットと交差する
と判断した時点で、配線経路の容量を検証し、不適切な
部分経路の成長を早期に枝刈りする。
【0048】以上の目的のもとに、次のような処理を行
う(図6)。ステップ200から開始された処理は、ス
テップ210にて3つの場合に分類される。すなわち、
(1)端子からの第1ステップであるか、(2)領域間
の移動であるのか、(3)端子への最終ステップである
のか、という場合分けである。ここで、(1)であると
判断された場合には、進路の向きから進入した領域が分
かる。これは、先に述べたように、端子には進入範囲と
して情報を記録しておいたので、それを用いる。進入し
た領域が認識されれば、その領域に関連するクリティカ
ルカットを活性化する。関連するクリティカルカットと
は、その進入した領域を交差するようなクリティカルカ
ットを言い、辺と同位相のクリティカルカットを除く。
また、この活性化は、後にクリティカルカットを交差し
たか否かを判断するために判断する対象を特定するため
である。そして、クリティカルカットに進入方向を記録
する(ステップ220)。これも、先に述べたように、
端子にはクリティカルカットに対する位置関係を記録し
てあるので、それを用いればどの方向から進入したか分
かる。すなわち、端子がクリティカルカットの右にあれ
ば、そのクリティカルカットには「右」を示す識別子を
記録する。この(1)の場合には、この処理を終われ
ば、ステップ210に戻る。
【0049】(2)の場合には、単なる領域間の移動の
場合であるので、必ずある辺を通過する。通過した辺に
は、その領域又は和領域への進入方向が登録されている
ので、その逆方向であれば、退出したというように判断
できる。そして、退出した領域も認識することができる
(ステップ230)。退出した領域が分かれば、その領
域の活性化されたクリティカルカットを不活性化する。
不活性化するとは、交差検査のために進入方向を取り出
した後に、その記録された進入方向の記録をクリアする
ことも含む。その際に、交差検査を行う。交差検査と
は、クリティカルカットに登録された経路の進入方向を
参照することで、当該辺のそのクリティカルカットとの
位置関係から、交差したか否かを判定するものである。
すなわち、進入方向として記録されている方向が「右」
であれば、その通過する辺の位置関係が「右」を示す
時、通過なし、であり、同様に位置関係が「左」を示す
時、通過あり、を判定することができる。ここで、交差
していると分かった場合には、交差できるか否かを判断
しなければならない。これが交差時処理であり、既配線
と探索中の配線幅との合計が当該クリティカルカットの
配線容量を超過したか否かを検査する。当然、超過した
場合には、この部分経路の探索は無意味であるから、探
索打切りを行い、超過していない場合には、このクリテ
ィカルカットに配線経路通過を記録する。
【0050】そして、通過する辺と位相的に一致するク
リティカルカットが存在することを、その辺の対応情報
が示している場合には、当然このクリティカルカットと
交差することとなるので、上述した交差時処理を行う
(ステップ250)。そして、辺を通過したということ
は、新たな領域への進入を意味するため、その辺の登録
された進入方向の情報から、進入する領域を認識し、そ
の領域に関連するクリティカルカットを活性化する。同
時に、進入方向もそのクリティカルカットに登録する。
関連するクリティカルカットは、先に説明したのと同様
である。ここまでの処理が終了すると、次の領域への退
出・進入の処理のため、ステップ210に戻る。
【0051】最後の(3)の場合には、経路の向きか
ら、記録された進入範囲の逆を用いて退出する領域が認
識できる。その退出する領域の活性化されているクリテ
ィカルカットを不活性化するのと同時に、交差検査を実
施する。この交差検査にて交差したと判断された場合に
は、交差時処理を実施する(ステップ270)。この処
理を終了すれば、ある端子から、ある端子までの経路が
探索されたこととなる。
【0052】なお、先に述べた縦型探索の場合、クリテ
ィカルカットの容量検査にて後戻りしなければならない
ことを認識した際には、クリティカルカットに記録され
た交差記録を元に戻す処理をしてから、他の経路を探索
する。また、横型探索の場合には、複数の部分経路が並
行して成長していくので、上述のような不都合が衝突す
る場合もある。よって、部分経路の識別子をキーとした
連想配列等をクリティカルカットに設けて情報を記録す
るとよい。
【0053】このような処理を繰り返すこととにより、
配線容量を正確に満たすことを実証しつつ、経路探索を
実行することができる。
【0054】以下に、簡単な処理例である、図5の端子
Aから端子Cを接続するような経路探索を行う場合を示
す。端子Aには図7のような情報が記憶されている。図
7の情報は、先に示したクリティカルカットの登録処理
の項で説明したものと同様であり、本例に関連するもの
のみを示している。すなわち、端子Aの場合、端子Dと
端子Eの間を結ぶクリティカルカットについても情報を
保持する必要があるが、ここでは示さない。端子Aから
経路探索を行う場合、まず、端子Aから探索グラフの節
Xに移動する。この場合、端子Aからの進入範囲を参照
すると、進入領域は当然領域3000である。図7の進
入範囲の部分(300)を参照すると、クリティカルカ
ット2100,クリティカルカット2200,クリティ
カルカット2300,クリティカルカット2500が、
端子Aから領域3000に進入した場合に関連すること
がわかる。よって、これらのクリティカルカットを活性
化し、端子Aの各クリティカルカットとの位置関係(3
30)を参照して、クリティカルカット2100には右
から進入したことを、クリティカルカット2200にも
右から進入したことを、クリティカルカット2300に
も右から進入したことを、同様にクリティカルカット2
500に右から進入したことを記録する。
【0055】今探索グラフの節Xにいるが、XからYに
移動する場合を考える。そうすると、辺1100を通過
する。辺1100の登録情報を図8に示す。先に述べた
ように、この情報は本例に関連するもののみを示してい
る。この登録情報に含まれるクリティカルカットのうち
クリティカルカット2100,2200,2300に
は、進入方向が「左から右」となっている。よって、こ
のXからYへの移動はその逆となっているので、これら
のクリティカルカットについては辺1100の属してい
る領域又は和領域の退出であることを認識できる。退出
であることを認識すると、活性化されていたクリティカ
ルカットを不活性化すると共に、それらについて交差検
査を行う。すなわち、クリティカルカット2100には
「右」が記録されているので、辺1100のクリティカ
ルカット2100との位置関係を見ると、「左」となっ
ているので、交差していることが分かる。交差していれ
ば、交差時処理を行う。ここでは、この処理の説明は省
略する。但し、配線(交差)可能であると判断されたと
する。また、クリティカルカット2200及び2300
には「右」と記録され、辺1100の位置関係の欄を見
ると、どちらも「右」となっているので、交差していな
いことがわかる。また、この辺1100の表にはクリテ
ィカルカット2500については、登録されていない。
よって、クリティカルカット2500については活性化
されたままである。
【0056】次に、辺1100と対応情報のみを記録し
ているクリティカルカットを検索すると、クリティカル
カット2400が見つかる。このクリティカルカット2
400と探索している経路は、必ず交差するので交差時
処理を行う。
【0057】そして、探索グラフの節Yから端子Cを結
ぶ段階になると、図9に示す端子Cに記憶されたデータ
を参照することとなる。この図にも、当該処理に関連す
るもののみを記載してある。退出する領域のクリティカ
ルカットは、進入範囲の欄360と、探索グラフの節Y
から領域3400から退出するということから、クリテ
ィカルカット2500のみであることが分かる。このク
リティカルカットを不活性化し、交差検査する。この交
差検査では、クリティカルカット2500には端子Aの
処理にて「右」からの進入を記録されているので、端子
Cの位置関係の欄350を参照して「左」の記録を得
て、交差したと判断することができる。よって、交差時
処理を実施し、交差可能であれば、端子Cまで到達する
ことができる。
【0058】以上述べたように、多数のクリティカルカ
ットを検査することにより、正確な配線容量検査を実施
しつつ、経路探索をも実施することができる。
【0059】B.三角形分割した場合の処理 以上の例は、一般的に、何らかの方法で任意の形状の領
域分割がなされた場合を念頭に説明してきた。しかし、
領域分割を三角形に制限すると、より簡単な登録処理及
び探索処理が行える。以下、この三角形分割がなされた
場合について説明する。
【0060】(1)三角形分割及び探索グラフ作成処理 三角形分割及び探索グラフ作成処理については、従来技
術の欄にて述べた参考文献1に詳しく述べられているの
で詳細は省略する。このような処理が、図1に対して実
施された結果を、図10に示す。
【0061】(2)クリティカルカットの登録処理 この処理を行う際には、先に述べたのと同様にクリティ
カルカットに適当な向きを設定する。また、領域を三角
形に分割したことにより、クリティカルカットは、三角
形の頂点同士を結ぶ線分か、三角形の頂点から他の三角
形の辺への垂線となっているので、そのカットが交差す
る三角形からなる和領域を考える。そして、その三角形
領域の和領域への進入方向を識別するために、三角形の
辺は図11のように両方向の有向枝2本で表現すること
とする。また、その和領域を左回り又は右回りに取り囲
む有向枝を、その領域の境界とする。このようにする
と、左回りで取り囲む有向枝を用いる場合には、右から
左にその辺を交差すると当該和領域に進入したこととな
り、左から右にその辺を交差すると当該和領域から退出
したことになるので、先の例では明示的に記録していた
「進入方向」を記録する必要がなくなる。右回りで取り
囲む有向枝については、上述の反対となる。
【0062】また、和領域に端子が含まれる場合につい
ても、有向枝のみの登録で済む。すなわち、図12に示
すように、クリティカルカットを取り囲む和領域に含ま
れる有向枝a,b,cに、そのクリティカルカットと左
右情報を登録する。これは、図10に示したように、辺
上に探索グラフの節を設けたので、ある端子からある節
への移動は、図12のようなクリティカルカットを囲む
和領域内への移動を仮定すると、その頂点(端子)を取
り囲む和領域の境界上の節(a,b,c)に必ずなる。
他の節、例えばd,eへの移動は、d,eの次に移動す
る節が節a,b,c,f,gとなるため、意味をなさな
いからである。よって、図12のような例では有向枝
a,b,cに、そのクリティカルカットと左右情報を記
録することにより、どの方向へ経路が成長した時にどの
三角形領域に経路が進入することになるのかがわかるよ
うになる。但し、注意しなければならないのは、端子か
ら有向枝a,b,cに向かうベクトルは、クリティカル
カットを囲む有向枝の方向が右回りであろうが左回りで
あろうが、有向枝a,b,cからすると和領域から退出
する方向となる、ということである。図12を参照する
と、有向枝a,b,cは左回りであるから、右から左が
進入方向となるが、端子から出てくる枝は、必ず左から
右となり退出方向に対応する。
【0063】以上をまとめると、各有向枝には、存在す
れば、(1)当該有向枝が、右境界となっているクリテ
ィカルカット、(2)当該有向枝が、左境界となってい
るクリティカルカット、(3)当該有向枝の対頂点が右
境界上にあるクリティカルカット、(4)当該有向枝の
対頂点が左境界にあるクリティカルカット、及び(5)
当該有向枝と一致しているクリティカルカットが登録さ
れることとなる。
【0064】以上の処理をまとめて、図4を上述の5種
類のクリティカルカットに対応するように変更すると図
13のようになる。ここで、TYPE2の場合には、和
領域を一定方向で囲む有向枝に登録をする。すなわち、
左回りか右回りかを決めておく。(3)(4)に対応す
るクリティカルカットについても同様である。
【0065】(3)交差するクリティカルカットの同定
処理 一般的な例で示したように、経路探索で最短経路を求め
つつ、クリティカルカットの容量検査を行う。この経路
探索には、IDA*(Iterative Deepning A*)を用いる
とよい。このIDA*は、基本的に縦型探索であるの
で、始点からの部分経路を保持しており、部分経路にか
かってくる容量制約を検証することができる。IDA*
は、A*と同じで、最良優先探索の評価値としての始点
からの距離と、終点までの距離の予測値(ヒューリステ
ィクス値)の和を用いる。この予測値が実際の残りの距
離よりも過小に評価されている時、最短経路が得られる
ことが保証されている。また、過小評価でも、実際の距
離との差が小さければ小さいほど、探索する範囲は少な
くて済み、高速に解が得られる。経路探索では、一般に
終点までの最短距離(ユークリッド距離)を用いること
が多いが、障害物の配置によっては最短距離と実際の距
離の誤差が大きくなり、探索範囲が絞り切れない。実施
例では、終点から各点までの最短距離をダイクストラ方
を逆方向に適用することにより求め、残りの距離を予測
値としている。但し、三角形分割辺と一致するクリティ
カルカット、1つの三角形の内部に含まれるクリティカ
ルカットについては、ダイクストラ法の1ステップに容
量検査を含めることが可能である。そこで、これらに関
しては容量を満たした最短経路を求めている。実際、配
線がかなり込み合ってくるまでは、この程度の容量検査
を満たした最短経路が全ての経路容量を満たしている場
合が多く、IDA*はかなり短時間で探索を終了するこ
とができる。本発明は、この経路探索を主題とするもの
ではないので、これ以上の説明は省略する。但し、L.Bo
lc and J.Cytowski,"Serach methods for Artificial I
ntelligence," Academic Press, 1992 を参照するとよ
い。
【0066】このように、探索グラフの枝を成長させる
ために、以下の処理を実行する(図14)。なお、三角
形領域の辺には、両方向の有向枝が対応しているが、経
路が進入しようとする領域の境界となっている有向枝を
外側有向枝、もう一方を内側有向枝と呼んで区別するこ
ととする。外側有向枝は進入する領域を、内側有向枝は
退出する領域を示している。例えば、左回りに和領域を
囲ませる場合、進入方向をこの左回りの有向枝で表すの
で、左回りに対応する有向枝を外側有向枝とする。反対
に、退出方向の場合には、右回りに対応する有向枝を内
側有向枝とする。
【0067】まず、ステップ400にて処理を開始し、
ステップ410にて3つの場合に分類される。(α)端
子からの第1ステップの場合、先に述べたように、端子
からある節に移動する際には、その移動先の節の有向枝
からすると、この移動は退出方向に対応する。よって、
内側有向枝の(3)及び(4)に対応するクリティカル
カットを活性化する。この(3)及び(4)は、先に示
した5種類のクリティカルカットのうちの3番目及び4
番目に該当するクリティカルカットのことを意味する。
そして、右境界であるか左境界であるかは、(3)
(4)の区別にてできるので、各クリティカルカットに
進入方向を記憶する(ステップ420)。また、(β)
領域間の移動である場合、内側有向枝に登録されたクリ
ティカルカットを不活性化する。そして、その内側有向
枝のクリティカルカットが、先の分類のうち(1)であ
るか(2)であるかにより、交差したか否かを判断する
ことができる。交差している場合には、先に述べた交差
時処理を実施する(ステップ430)。そして、三角形
分割辺に一致する、先の分類で(5)に該当するような
クリティカルカットが存在すれば、交差時処理を実施す
る(ステップ440)。さらに、外側有向枝に登録され
たクリティカルカット(1)及び(2)を活性化し、進
入方向を(1)(2)の別によりクリティカルカットに
記録する(ステップ450)。
【0068】(γ)端子への最終ステップの場合、直線
のステップで通過した外側有向枝に登録された、先の分
類の(3)及び(4)に対応するクリティカルカットを
不活性化する。これは、端子からの第1ステップと反対
の関係にある。そして、交差検査を実施する。交差して
いる場合には、交差時処理を実施する(ステップ46
0)。これで、端子間の探索を終了する(ステップ47
0)。
【0069】交差した場合の交差時処理は先に述べたの
と同様であり、交差できないと判断された場合も同様に
処理することができる。
【0070】このようすれば、経路探索をしつつ、クリ
ティカルカットの容量を検査する処理を実行できる。以
上を大きくまとめると、図15のようになる。
【0071】C.容量検査の不要なクリティカルカット
の検出処理 このように、辺(有向枝)は多くのクリティカルカット
を記録する必要があり、多くのクリティカルカットにつ
いて交差検査及び交差時処理を行う必要がある。よっ
て、容量検査の必要のないクリティカルカットを見い出
し、それらクリティカルカットを上述のクリティカルカ
ットの登録処理(図15)にて、登録しないようにすれ
ばよい。以下、この処理について説明する。
【0072】(1)本発明の原理 まず、図16を参照する。本図において、C,L1,L
2,L3,R1,R2は、すべてクリティカルカットで
ある。ここで、Cに注目する。このCは、左側をL1,
L2,L3に、右側をR1,R2に囲まれているので、
以下のような関係があることがわかる。(クリティカル
カットXを通過する総配線幅をFlow(X)とす
る。) Flow(C)≦Flow(L1)+Flow(L2)
+Flow(L3) Flow(C)≦Flow(R1)+Flow(R2)
【0073】また、クリティカルカットXの容量をCa
p(X)、総配線幅の上限をMaxFlow(X)とすると、 Cap(C)≧MaxFlow(L1)+MaxFlow(L2)+Ma
xFlow(L3) Cap(C)≧MaxFlow(R1)+MaxFlow(R2) となれば、常にCap(C)≧MaxFlow(C)となり、
容量検査を行うまでもなく、このクリティカルカットは
容量を満たすことが分かる。
【0074】この図16のように、特別な条件がない場
合には、周囲のクリティカルカットが容量を満たしてい
るとすると、 Cap(Li)≧MaxFlow(Li)(i=1,2,3) Cap(Ri)≧MaxFlow(Ri)(i=1,2) であるから、 Cap(C)≧Cap(L1)+Cap(L2)+Ca
p(L3) 又はCap(C)≧Cap(R1)+Ca
p(R2) の場合に、クリティカルカットCは、容量検査が不要と
なる。
【0075】よって、次の処理を行えばよい。図17の
処理は、ステップ500から開始され、まず、あるクリ
ティカルカットの容量(Cap(C))を調べる(ステ
ップ510)。そして、このクリティカルカットが交差
する領域の和領域を考え、この和領域の境界を構成する
辺の容量の和(ここでは、SCap(L)又はSCap
(R))を求める(ステップ520)。ここで、Cap
(C)≧SCap(R)又はSCap(L)であるなら
ば(ステップ530)、そのクリティカルカットの容量
検査は不要である(ステップ540)。これに対し、C
ap(C)<SCap(R)及びSCap(L)であれ
ば、そのクリティカルカットの容量検査は省略できない
(ステップ550)。ステップ510は最初に行う必要
はなく、比較をする直前に行ってもよい。
【0076】ここでは、和領域の境界を構成する辺の容
量の和を用いたが、周囲の条件により、R,Lが配線で
一杯になるほど、つまりCap(R)又はCap(L)
近くまでは、配線されない場合もある。よって、このよ
うな場合には、この容量の和は"実質的"容量の和とな
る。(以下では、通過する可能性のある最大配線幅であ
る最大フローの和となる場合がある。)
【0077】(2)三角形分割された場合の要検査クリ
ティカルカットの削減処理 次に、より検査の必要なクリティカルカットを削減する
ための処理を説明する。この削減には、先に述べたよう
に、基板周辺の条件を用いて、その条件により、SCa
p(R)やSCap(L)を減少させることにより、先
に示した式を充足させる場合を増加させることを目標と
する。なお、三角形領域に分割する処理については、先
に述べたのでここでは説明を省略する。
【0078】特別な条件がなければ、三角形領域の各辺
の容量は、端子が三角形の頂点となっているのでその端
子間の最短距離となり、同様に最大のフロー(MaxFlo
w)となる。しかし、図18のような例では、最大フロ
ーは容量より少なくなる。図18(a)は、三角形領域
の2辺が禁止領域又は基板の周辺となっている場合を示
す。このような禁止領域又は基板周辺となっている辺の
フローは0である。図18(a)では、2辺がフロー0
であるから、残りの辺のフローも0となる。また、図1
8(b)の場合、1辺が禁止領域又は基板周辺であり、
その対頂点からクリティカルカットが存在するような場
合である。このような場合、矢印のフローは、クリティ
カルカットの容量に制限される。当然左右の辺よりも、
フローは少なくなる。
【0079】また、三角形ABCの3辺a,b,cの間
では、 MaxFlow(a)≦MaxFlow(b)+MaxFlow(c) という関係が成立している(但し、頂点Aが端子の場
合、配線1本分のフローを右辺に加える。)。3辺の最
大フローが辺の容量と等しい場合には、三角不等式を考
えると右辺はCap(a)より大きいので自明である
が、上述の図18の場合のように最大フローが辺の容量
を下回る場合には、この関係を用いて残りの2辺のどち
らかのフローの上限を抑えることができる。そこで、上
述の特別な辺以外のすべての三角形の辺の最大フローの
初期値をその辺の容量とする。そして、最大フローが辺
の容量以下である辺から始めて、 MaxFlow(a)←Min{MaxFlow(a),MaxFlow
(b)+MaxFlow(c)} のルールを用いて隣接する三角形の最大フローを更新し
て、それを伝搬し、すべての三角形の辺の最大フローの
最小値を見積もる。
【0080】(3)要検査クリティカルカットの同定処
理 以上述べた処理を勘案し、まとめると図19及び図20
のようになる。まず、ステップ600にて開始された処
理は、上述した領域を三角形に分割する処理から行われ
る(ステップ610)。そして、基板及び端子の大き
さ、配置等による制限を参照して、各辺の最大フローの
最小のものを記録しておく(ステップ620)。これ
は、先に述べた。その後、ある三角形領域の端子である
頂点から隣接する頂点とのクリティカルカットを求め
る。また、それらの端子を障害物とし、先の頂点(端
子)から見える範囲(可視範囲)を求める(ステップ6
30)。
【0081】そして、先の頂点(端子)を対頂点とする
辺を共有する三角形領域の反対の対頂点とのクリティカ
ルカットを求める(ステップ640)。図21の例で
は、端子Aと端子Dのクリティカルカットを求めること
になる。そこで、端子Aが含まれる三角形と、端子Dが
含まれる三角形と共有する辺(図21では辺a)が、端
子Aの可視範囲に含まれるか判断する(ステップ65
0)。図21では、当然可視であるから、ステップ66
0に移行する。ここでは、対頂点とのクリティカルカッ
トは可視であるか判断する(ステップ660)。図21
の例では、端子Aと端子Dのクリティカルカットは、可
視範囲に含まれるので、Xを介して図20に移行する。
【0082】そして、Cap(C)≧MaxFlow(R)+M
axFlow(r)又はCap(C)≧MaxFlow(L)+MaxFl
ow(l)であるかを検査する(ステップ700,図2
0)。このR,r,L,lは、図22に示したような位
置関係になる。すなわち、端子Aと端子Cの間のクリテ
ィカルカットがLであり、端子Aと端子Bの間のクリテ
ィカルカットがRであり、これらはステップ630にて
求められた。また、lは、ステップ620にて求められ
た辺bの最大フローであり、rは同様に辺cの最大フロ
ーである。
【0083】先の式が成立すれば、このクリティカルカ
ットCは検査不要となる。成立しなければ、検査は必要
である。そして、次の処理のため、最大フローの更新を
行う(ステップ740)。図21の辺bに処理を進める
場合には、 MaxFlow(R')=Min{MaxFlow(R)+MaxFlow
(r),Cap(C)} MaxFlow(L')=MaxFlow(L) とする。
【0084】また、図21の辺cに処理を進める場合に
は、 MaxFlow(R')=MaxFlow(R) MaxFlow(L')=Min{MaxFlow(L)+MaxFlow
(l),Cap(C)} とする。
【0085】これは、図22に示したが、新たな点Eが
設けられ、端子Aと端子Dと点Eを考える時には、端子
Aと端子Dの間を通る配線量は、MaxFlow(R)+MaxFl
ow(r)とCap(C)の小さい方に依存する。これが
図21の辺bに処理を進める場合に必要となる。同様
に、図22に示す新たな点Fが設けられ、端子Aと端子
Dと点Fを考える時に、端子Aと端子Dの間を通る配線
量は、MaxFlow(L)+MaxFlow(l)とCap(C)の
いずれか小さい方に依存する。これが、図21の辺cに
処理を進める場合に必要となる。
【0086】また、上で議論された"共有する辺"の外側
の対頂点を加えて、可視範囲を更新する(ステップ74
0)。図21の場合には、端子Dも障害物として、これ
に隠れるものは探索の対象からはずす。
【0087】この処理がなされた後に、端子Aを対頂点
とする"共有する辺"の外側の三角形の"共有する辺"以外
の残りの2辺を、ステップ650における"共有する辺"
とし、その残りの2辺の対頂点と端子Aとのクリティカ
ルカットを求める(ステップ750)。また、処理はY
を介してステップ650に戻る。図21の例では、端子
Aを対頂点とするaを共有する三角形abcの残りの辺
b,cを"共有する辺"とし、今後は、この2辺をそれぞ
れ根とする2分木を考えていく。すなわち、辺bから辺
d,eへ、また辺cから辺f,gに移行していくことを
考える。そして、端子Aから、ここでは上の基板境界、
又は端子Gへの、クリティカルカットを求める。
【0088】辺b,cを取り出し、辺b,cが端子Aか
ら可視であるかを判断する(ステップ650)。ここ
で、この辺b,cの場合には可視であると判断される。
しかし、辺bを介する、基板上側境界のクリティカルカ
ットは存在せず、不可視とされ、クリティカルカットは
存在しないので検査不要となる。存在しても不可視であ
れば、検査不要とされる(ステップ680)。そして、
ステップ750にZを介して飛ぶ。処理が終了するの
は、ステップ650にて辺が不可視であるとされた場合
である(ステップ670)。辺bについては、これ以上
先に進んでも、可視の辺は存在しない。
【0089】図21の例では、辺cへの処理は続く。辺
cを"共有する辺"として、その外側の対頂点である端子
Gと端子Aとのクリティカルカットを求める。当然、こ
の辺cは端子Aから可視であり、端子Aと端子Gのクリ
ティカルカットも可視である。よって、ステップ700
に述べた処理を行い、そのクリティカルカットが処理要
であるか、不要であるかを判断する。いずれにしても、
先のステップ730及び740の更新処理を実施する。
辺gに処理が移行すると、そのクリティカルカットは存
在しない。これ以上探索を進めると、辺が不可視とな
る。一方、辺fについては、辺fは可視であるが、端子
Aと端子Hとのクリティカルカットが不可視であり、辺
iは可視であるので、この処理を進める。辺hは不可視
であるので、処理は終了する。
【0090】以上の処理にて、検査不要なクリティカル
カットと検査の必要なクリティカルカットが選別され
る。このような処理は、先に述べた経路探索処理のクリ
ティカルカット登録の処理の前に実施すると、大幅に登
録されるクリティカルカットが減少し、それにより、容
量検査処理は軽減される。
【0091】以上の経路探索処理及び検査不要なクリテ
ィカルカット検出処理は、処理プログラムとしてコンピ
ュータ・プログラムによって実現し、実行することも考
えられる。例えば、図23のような通常のコンピュータ
・システムにおいて実行できるようなプログラムにする
こともできる。処理プログラムは、HDD1050に格
納され、実行時にはメインメモリ1020にロードさ
れ、CPU1010によって処理される。また、HDD
1050は基板についてのデータ、例えば端子の位置
等、クリティカルカット、探索グラフ等をも含んでお
り、処理プログラムはこの基板についてのデータに対す
るアクセスを行う。最終的に求められた経路は、表示装
置1060によってユーザに提示される。ユーザは、入
力装置1070にて経路探索のための端子を選択した
り、データ出力の命令を入力する。このような入力装置
には、キーボードやマウス、ポインティング・デバイス
等を含む。さらに、出力結果を補助記憶装置であるFD
D1030のフロッピー・ディスクに記憶したり、また
新たなデータをFDD1030から入力することもでき
る。さらに、CD−ROMドライブ1040を用いて、
データを入力することもできる。
【0092】さらに、本発明の処理プロセスを実現した
コンピュータ・プログラムは、フロッピー・ディスクや
CD−ROMといった記憶媒体に記憶して、持ち運ぶこ
とができる。この場合、表示装置1060に表示するだ
けの処理等を行うプログラムは、すでにHDD1050
に記憶されている場合もある。よって、それ以外の部分
が、上記のような記憶媒体にて流通することは通常行わ
れる事項である。
【0093】また、上記処理プロセスを専用の装置にて
行うことも可能である(図24)。この場合には、先に
示した基板についてのデータを記録した基板データ記憶
部800は、領域分割部810、探索グラフ作成部82
0及び探索部830とに接続されている。この基板デー
タ記憶部800には、端子の位置データや、大きさ等が
記憶されており、領域分割部810にて分割された各領
域に関するデータもここに記憶される。また、探索グラ
フ作成部820にて、探索グラフが作成されれば、その
データも同様に記憶される。そして、領域分割部810
及び探索グラフ作成部820の処理の後に、探索部83
0が処理を実施する。この探索部830は、クリティカ
ルカット選択部832、クリティカルカット登録部83
4、交差判定交差処理部836に分けられる。なお、こ
のほかに、実際の経路を決定する部分を含む。クリティ
カルカット選択部832は、後半部分で述べた検査不要
のクリティカルカットを検出する処理を行う部分であ
り、この部分はオプションである。また、クリティカル
カット登録部834は、基板データ記憶部800から得
られたクリティカルカットのデータを辺などに登録する
処理を行い、もしクリティカルカット選択部832が存
在する場合には、この処理にて検査が必要であるとされ
たクリティカルカットのみについて処理を行う。そし
て、この登録処理が終了すれば、交差判定交差処理部8
36にて、個々のクリティカルカットを経路が交差した
か否か、交差していればクリティカルカットの容量を満
たしているかの判断処理等を実施する。
【0094】以上本発明を説明したが、これらはさまざ
まな変更が可能であり、特に図24は、このような形態
に限定されず、各機能ブロックの分け方は一例に過ぎな
い。
【0095】
【効果】配線容量の制限がある配線経路において、経路
探索中にクリティカルカットの容量検査を行い、正確に
経路容量を満たした配線経路探索を実行可能とすること
ができた。
【0096】また、無駄な経路の再計算を除去し、自動
配線処理の高速化を図ることもできた。
【0097】さらに、自由角度での自動配線を可能とす
るシステムを提供することもできた。
【0098】また、クリティカルカットの配線容量検査
を行う訳であるが、この検査を行うクリティカルカット
の数を減少させることもできた。上述の三角形分割の場
合、およそ1/5になるような実例もある。
【0099】よって、経路探索処理全体の処理の高速化
を図ることもできた。
【図面の簡単な説明】
【図1】基板の領域分割の例を示す図である。
【図2】探索グラフの例を示す図である。
【図3】図2の探索グラフの双対グラフを示す図であ
る。
【図4】クリティカルカットの登録方法を説明するため
の処理フローを示す図である。
【図5】経路探索の例を説明するための図である。
【図6】交差検査及び交差時処理の実施を説明するため
の処理フローを示す図である。
【図7】図5の例で、端子Aが含むデータを示す図であ
る。
【図8】図5の例で、辺1100が含むデータを示す図
である。
【図9】図5の例で、端子Cが含むデータを示す図であ
る。
【図10】領域を三角形分割し、三角形領域の辺に探索
グラフの節を設けた場合の例を示す図である。
【図11】有向枝を説明するための図である。
【図12】和領域が端子を含む場合の記録の方法を説明
するための図である。
【図13】有向枝を用いた場合のクリティカルカットの
登録を説明するための処理フローを示す図である。
【図14】有向枝を用いた場合のクリティカルカットの
交差検査及び交差時処理の実施を説明するための処理フ
ローを示す図である。
【図15】経路探索処理の全体の処理フローを示す図で
ある。
【図16】検査不要クリティカルカットの検出の原理を
説明するための図である。
【図17】検査不要クリティカルカットの検出の処理フ
ローを示す図である。
【図18】辺の最大フローが制限される例を説明するた
めの図である。
【図19】三角形分割された場合に、検査不要クリティ
カルカットを検出するための処理フローの一部を示す図
である。
【図20】三角形分割された場合に、検査不要クリティ
カルカットを検出するための処理フローの一部を示す図
である。
【図21】図20及び図21の処理フローの実施例を説
明するための図である。
【図22】図20及び図21の処理フローの一部を説明
するための図である。
【図23】本発明をコンピュータにて実施した場合の一
例を示した図である。
【図24】本発明を専用装置にて実施した場合の一例を
示した図である。
【符号の説明】
1010 CPU 1020 メインメモリ 1030 FDD 1040 CD−ROMドライブ 1050 HDD 1060 表示装置 1070 入力装置 800 基板データ記憶部 810 領域分割部 820 探索グラフ作成部 830 探索部 832 クリティカルカット選択部 834 クリティカルカット登録部 836 交差判定交差処理部
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成8年9月13日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】請求項8
【補正方法】変更
【補正内容】
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】請求項9
【補正方法】変更
【補正内容】
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】請求項15
【補正方法】変更
【補正内容】
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】請求項22
【補正方法】変更
【補正内容】
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】請求項27
【補正方法】変更
【補正内容】
【手続補正6】
【補正対象書類名】明細書
【補正対象項目名】請求項29
【補正方法】変更
【補正内容】
【手続補正7】
【補正対象書類名】明細書
【補正対象項目名】0020
【補正方法】変更
【補正内容】
【0020】また、(d6)クリティカルカットを探索
経路が交差可能である場合には、当該クリティカルカッ
トの進入方をクリアし、探索経路の通過を記録するス
テップをさらに含むようにする。通過を記録し、他の経
路探索の際に用いるためである。
【手続補正8】
【補正対象書類名】明細書
【補正対象項目名】0021
【補正方法】変更
【補正内容】
【0021】さらに、(d7)クリティカルカットの可
能配線幅を参照して、交差不可能と判断された場合に
は、当該探索枝をカットし、当該クリティカルカット
の進方向をクリアするステップをさらに含むようにす
る。交差できないので、後戻りしなければならない。
【手続補正9】
【補正対象書類名】明細書
【補正対象項目名】0028
【補正方法】変更
【補正内容】
【0028】すなわち、1のクリティカルカットについ
て配線容量を求めるステップと、1のクリティカルカッ
トと交差する領域の和領域において、当該クリティカル
カットの片側に位置し且つ和領域の境界を構成する辺
配線容量又は通過する可能性のある最大配線幅であ
る最大フローの和を求めるステップと、1のクリティカ
ルカットの配線容量と、配線容量又は最大フローの和を
比較するステップと、比較結果により、1のクリティカ
ルカットの配線容量の方が大きい場合には、当該1のク
リティカルカットを検査不要なクリティカルカットとし
て出力するステップとを含むものである。
【手続補正10】
【補正対象書類名】明細書
【補正対象項目名】0039
【補正方法】変更
【補正内容】
【0039】この登録処理は、クリティカルカットを中
心にして、図4を用いて説明する。ステップ100にて
開始された処理は、まずクリティカルカットを1つ取り
出す(ステップ110)。そして、そのクリティカルカ
ットの分類を行う(ステップ120)。すなわち、TY
PE1として、クリティカルカットと分割された領域の
連続する辺が位相的に同じ経路(位相的に一致する)
場合と、TYPE2として、クリティカルカットが分割
された領域と交差する場合とを定義する。図5の例では
端子Aから基板の境界へ向かうクリティカルカット20
00が、TYPE1のクリティカルカットであり、位相
的に一致する辺は辺1000である。また、端子Bから
同じく基板の境界へ向かうクリティカルカット2100
は、領域3000と交差しているので、TYPE2のク
リティカルカットである。
【手続補正11】
【補正対象書類名】明細書
【補正対象項目名】0065
【補正方法】変更
【補正内容】
【0065】(3)交差するクリティカルカットの同定
処理 一般的な例で示したように、経路探索で最短経路を求め
つつ、クリティカルカットの容量検査を行う。この経路
探索には、IDA*(Iterative Deepening A*)を用い
るとよい。このIDA*は、基本的に縦型探索であるの
で、始点からの部分経路を保持しており、部分経路にか
かってくる容量制約を検証することができる。IDA*
は、A*と同じで、最良優先探索の評価値としての始点
からの距離と、終点までの距離の予測値(ヒューリステ
ィクス値)の和を用いる。この予測値が実際の残りの距
離よりも過小に評価されている時、最短経路が得られる
ことが保証されている。また、過小評価でも、実際の距
離との差が小さければ小さいほど、探索する範囲は少な
くて済み、高速に解が得られる。経路探索では、一般に
終点までの最短距離(ユークリッド距離)を用いること
が多いが、障害物の配置によっては最短距離と実際の距
離の誤差が大きくなり、探索範囲が絞り切れない。実施
例では、終点から各点までの最短距離をダイクストラ方
を逆方向に適用することにより求め、残りの距離を予測
値としている。但し、三角形分割辺と一致するクリティ
カルカット、1つの三角形の内部に含まれるクリティカ
ルカットについては、ダイクストラ法の1ステップに容
量検査を含めることが可能である。そこで、これらに関
しては容量を満たした最短経路を求めている。実際、配
線がかなり込み合ってくるまでは、この程度の容量検査
を満たした最短経路が全ての経路容量を満たしている場
合が多く、IDA*はかなり短時間で探索を終了するこ
とができる。本発明は、この経路探索を主題とするもの
ではないので、これ以上の説明は省略する。但し、L.Bo
lc and J.Cytowski,"Serach methods for Artificial I
ntelligence," Academic Press, 1992 を参照するとよ
い。
【手続補正12】
【補正対象書類名】明細書
【補正対象項目名】0068
【補正方法】変更
【補正内容】
【0068】(γ)端子への最終ステップの場合、直
のステップで通過した外側有向枝に登録された、先の分
類の(3)及び(4)に対応するクリティカルカットを
不活性化する。これは、端子からの第1ステップと反対
の関係にある。そして、交差検査を実施する。交差して
いる場合には、交差時処理を実施する(ステップ46
0)。これで、端子間の探索を終了する(ステップ47
0)。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 江藤 博明 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 東京基礎研究所 内

Claims (32)

    【特許請求の範囲】
  1. 【請求項1】平面上の端子間の配線経路探索を行う方法
    であって、 (a)前記端子を含む点を頂点とする複数の領域に前記
    平面を分割し、当該複数の領域の接続関係を表現する経
    路探索グラフを作成するステップと、 (b)前記端子を含む、2つの物体間を最短距離で結ぶ
    線分をクリティカルカットとして、その可能配線幅と共
    に記録するステップと、 (c)前記クリティカルカットが関連する前記領域の辺
    と必要な端子とに、当該クリティカルカットとの対応と
    必要な場合には当該クリティカルカットに対する位置情
    報とを記録するステップと、 (d)前記経路探索グラフを探索する際に、(d1)探
    索経路上の端子又は辺が記録している前記位置情報を用
    いてある領域への進入を検出した場合、当該領域に関連
    するクリティカルカットに、前記進入を検出する際に用
    いた位置情報を参照して進入方向を記録するステップ
    と、(d2)探索経路となる端子又は辺が記録している
    前記位置情報から前記領域からの退出を検出した場合、
    前記関連するクリティカルカットに記録された進入方向
    を参照して、前記退出を検出する際に用いた位置情報か
    ら、前記探索経路が前記関連するクリティカルカットと
    交差するかどうか判断するステップと、(d3)前記ク
    リティカルカットと交差すると判断された場合には、当
    該クリティカルカットの可能配線幅を参照して、配線可
    能かどうかを判断するステップとを含む配線経路探索方
    法。
  2. 【請求項2】前記ステップ(c)が、(c1)前記クリ
    ティカルカットが前記複数の領域の辺と同位相である場
    合には、当該辺に当該クリティカルカットとの対応を記
    録するステップと、(c2)前記クリティカルカットが
    前記領域と交差する場合には、交差する前記領域の和領
    域を求め、当該和領域の境界の辺に当該クリティカルカ
    ットとの対応及び位置情報を記録し、当該和領域に端子
    が含まれる場合には、当該端子に当該クリティカルカッ
    トとの対応及び位置情報を記録するステップとを含む請
    求項1記載の配線経路探索方法。
  3. 【請求項3】前記ステップ(d1)が、(d11)探索経
    路上の端子又は辺が記録している前記位置情報を用いて
    ある領域への進入を検出するステップと、(d12)進入
    する領域と交差するクリティカルカットに、前記進入を
    検出する際に用いた位置情報に基づき、当該クリティカ
    ルカットに対する進入方向を記録するステップとを含む
    請求項2記載の配線経路探索方法。
  4. 【請求項4】前記ステップ(d2)が、(d21)探索経
    路となる端子又は辺が記録している前記位置情報を用い
    て前記進入した領域からの退出を検出するステップと、
    (d22)前記クリティカルカットに記憶された進入方向
    を参照して、前記退出を検出する際に用いた位置情報に
    基づく退出方向との関係から、当該クリティカルカット
    を当該探索経路が交差するかを判断するステップとを含
    む請求項3記載の配線経路探索方法。
  5. 【請求項5】(d4)前記領域の進入及び退出の際に、
    当該領域の境界となる辺と対応を有するクリティカルカ
    ットが存在することを検出した場合には、当該クリティ
    カルカットの可能配線幅を参照して交差可能かを判断す
    るステップとをさらに含む請求項4記載の配線経路探索
    方法。
  6. 【請求項6】前記位置情報が、前記クリティカルカット
    との位置関係と、当該位置情報を有する端子又は辺が属
    する領域への進入を検出するための情報であることを特
    徴とする請求項1記載の配線経路探索方法。
  7. 【請求項7】(d5)前記探索経路が前記クリティカル
    カットを交差しないと判断された場合には、当該クリテ
    ィカルカットに記憶された進入方向をクリアするステッ
    プをさらに含む請求項1記載の配線経路探索方法。
  8. 【請求項8】(d6)前記クリティカルカットを前記探
    索経路が交差可能である場合には、当該クリティカルカ
    ットの進入方法をクリアし、探索経路の通過を記録する
    ステップをさらに含む請求項1記載の配線経路探索方
    法。
  9. 【請求項9】(d7)前記クリティカルカットの可能配
    線幅を参照して、配線不可能と判断された場合には、当
    該探索枝をカットし、当該クリティカルカットの進行方
    向をクリアするステップをさらに含む請求項1記載の配
    線経路探索方法。
  10. 【請求項10】前記領域が三角形であることを特徴とす
    る請求項1記載の配線経路探索方法。
  11. 【請求項11】前記領域の辺を方向が異なる有向枝と
    し、一方向で領域を囲み、前記クリティカルカットは1
    の向きを有しており、 前記ステップ(c)が、 各前記有向枝に対し、存在すれば、 当該有向枝が右境界となっているクリティカルカット
    と、 当該有向枝が左境界となっているクリティカルカット
    と、 当該有向枝の対頂点が右境界上にあるクリティカルカッ
    トと、 当該有向枝の対頂点が左境界上にあるクリティカルカッ
    トと、 当該有向枝と一致するクリティカルカットとを記録する
    ステップを含む請求項10記載の配線経路探索方法。
  12. 【請求項12】前記ステップ(d1)が、(dd11)前記
    端子から経路探索を行う場合には、退出しようとする領
    域の境界となっている有向枝である内側有向枝に該当し
    且つ当該端子を対頂点とした有向枝に対応するクリティ
    カルカットに、進入方向を記録するステップと、(dd1
    2)進入しようとする領域の境界となっている有向枝で
    ある外側有向枝に記録されたクリティカルカットに、進
    入方向を記憶するステップと、を含む請求項11記載の
    配線経路探索方法。
  13. 【請求項13】前記ステップ(d2)が、(dd21)前記
    内側有向枝に記録されたクリティカルカットの進入方向
    を参照し、当該内側有向枝の位置に基づき探索経路が前
    記クリティカルカットを交差しているかを判定するステ
    ップと、(dd22)前記端子への経路探索を行う場合に
    は、当該端子を対頂点とした、直前に通過した前記外側
    有向枝に対応するクリティカルカットの進入方向を参照
    し、当該端子の位置に基づき探索経路が当該クリティカ
    ルカットを交差したかを判定するステップとを含む請求
    項12記載の配線経路探索方法。
  14. 【請求項14】(dd4)前記三角形領域の辺に一致する
    クリティカルカットが存在する場合には、当該クリティ
    カルカットとの交差が、その配線可能幅を参照して可能
    かどうかを判定するステップをさらに含む請求項13記
    載の配線経路探索方法。
  15. 【請求項15】複数の領域に分割された平面上に配置さ
    れた端子を含む、2つの物体間を最短距離で結ぶ線分で
    あるクリティカルカットを用いて配線容量を検査する場
    合に、検査不要なクリティカルカットを検出する方法で
    あって、 1のクリティカルカットについて配線容量を求めるステ
    ップと、 前記1のクリティカルカットと交差する領域の和領域に
    おいて、当該クリティカルカットの片側に位置し且つ前
    記和領域の境界を構成する辺の配線容量又は通過する可
    能性のある最大配線幅である最大フロー、の和を求める
    ステップと、 前記1のクリティカルカットの配線容量と、前記配線容
    量又は前記最大フローの和を比較するステップと、 比較結果により、前記1のクリティカルカットの配線容
    量の方が大きい場合には、当該1のクリティカルカット
    を検査不要なクリティカルカットとして出力するステッ
    プとを含む検査不要クリティカルカット検出方法。
  16. 【請求項16】複数の三角形領域に分割された平面上に
    配置された端子を含む、2つの物体間を最短距離で結ぶ
    線分であるクリティカルカットを用いて配線容量を検査
    する場合に、検査不要なクリティカルカットを検出する
    方法であって、 前記平面及び端子の大きさ及び配置による制限を参照し
    て、前記複数の三角形領域の各辺を通過する可能性のあ
    る最大配線幅である最大フローを計算するステップと、 1のクリティカルカットについて配線容量を求めるステ
    ップと、 前記1のクリティカルカットと交差する領域の和領域に
    おいて、当該クリティカルカットの片側に位置し且つ前
    記和領域の境界を構成する辺の最大フローの和を求める
    ステップと、 前記1のクリティカルカットの配線容量と、前記最大フ
    ローの和を比較するステップと、 比較結果により、前記1のクリティカルカットの配線容
    量の方が大きい場合には、当該1のクリティカルカット
    を検査不要なクリティカルカットとして出力するステッ
    プとを含む検査不要クリティカルカット検出方法。
  17. 【請求項17】前記最大フローを計算するステップが、 前記三角形領域の辺が、前記平面の境界及び配線不能領
    域の境界を含む障害物との境界である場合には、当該辺
    の前記最大フローを0に設定するステップを含む請求項
    16記載の検査不要クリティカルカット検出方法。
  18. 【請求項18】前記最大フローを計算するステップが、 前記三角形領域の内部に、当該三角形領域の頂点からの
    前記障害物との境界へのクリティカルカットを含む場
    合、前記障害物との境界である辺以外の辺の最大フロー
    を当該クリティカルカットの配線容量と同一にするステ
    ップを含む請求項17記載の検査不要クリティカルカッ
    ト検出方法。
  19. 【請求項19】前記最大フローの和を計算するステップ
    が、 ある三角形領域の一の辺の前記最大フローが、他のニ辺
    の最大フローの和より小さい場合、当該一の辺の最大フ
    ローを前記他のニ辺の最大フローの和に更新するステッ
    プを含む請求項16記載の検査不要クリティカルカット
    検出方法。
  20. 【請求項20】複数の三角形に分割された平面上に配置
    された端子を含む、2つの物体間を最短距離で結ぶ線分
    であるクリティカルカットを用いて配線容量を検査する
    場合に、検査不要なクリティカルカットを検出する方法
    であって、 前記平面及び端子の大きさ及び配置による制限を参照し
    て、前記複数の三角形の各辺を通過する可能性のある最
    大配線幅である最大フローを計算するステップと、 1の三角形領域の外側にあり且つ辺を共有する第2の三
    角形領域において、当該共有する辺が、前記1の三角形
    領域の1の端子から可視であるか判断する第1判断ステ
    ップと、 前記辺が可視であると判断された場合、前記共有する辺
    の対頂点である端子と前記1の端子とのクリティカルカ
    ットが前記1の端子から可視であるか判断する第2判断
    ステップと、 前記クリティカルカットが可視であると判断された場合
    には、当該クリティカルカットが交差する三角形領域の
    和領域において、前記クリティカルカットの片側に位置
    する境界の辺の前記最大フローの和を計算するステップ
    と、 前記クリティカルカットの配線容量と、前記最大フロー
    の和を比較するステップと、 比較結果により、前記クリティカルカットの配線容量の
    方が大きい場合には、当該クリティカルカットを検査不
    要なクリティカルカットとして出力するステップとを含
    む検査不要クリティカルカット検出方法。
  21. 【請求項21】前記最大フローの和と前記クリティカル
    カットの配線容量のどちらか小さい方を、前記クリティ
    カルカットの最大フローとして記録するステップと、 前記共有する辺を、前記和領域に加える新たな三角形領
    域と前記和領域とが共有する辺とし、前記クリティカル
    カットの片側に位置する境界の辺を、新たなクリティカ
    ルカットの片側に位置する境界の辺、又は前記クリティ
    カルカット及び前記新たな三角形領域の1の辺とし、前
    記第1判断ステップ以降を実行するステップとを含む請
    求項20記載の検査不要クリティカルカット検出方法。
  22. 【請求項22】前記ステップ(b)が、 1のクリティカルカットについて配線容量を求めるステ
    ップと、 前記1のクリティカルカットと交差する領域の和領域に
    おいて、当該クリティカルカットの片側に位置し且つ前
    記和領域の境界を構成する辺の配線容量又は通過する可
    能性のある最大配線幅である最大フロー、の和を求める
    ステップと、 前記1のクリティカルカットの配線容量と、前記配線容
    量又は前記最大フローの和を比較するステップと、 比較結果により、前記1のクリティカルカットの配線容
    量の方が小さい場合には、当該1のクリティカルカット
    を記録するステップと請求項1記載の配線経路探索方
    法。
  23. 【請求項23】前記ステップ(b)が、 前記平面及び端子の大きさ及び配置による制限を参照し
    て、前記複数の三角形領域の各辺を通過する可能性のあ
    る最大配線幅である最大フローを計算するステップと、 1のクリティカルカットについて配線容量を求めるステ
    ップと、 前記1のクリティカルカットと交差する領域の和領域に
    おいて、当該クリティカルカットの片側に位置し且つ前
    記和領域の境界を構成する辺の最大フローの和を求める
    ステップと、 前記1のクリティカルカットの配線容量と、前記最大フ
    ローの和を比較するステップと、 比較結果により、前記1のクリティカルカットの配線容
    量の方が小さい場合には、当該1のクリティカルカット
    を記録するステップとを含む請求項10記載の配線経路
    探索方法。
  24. 【請求項24】複数の三角形に分割された平面上に配置
    された端子間の経路探索を、前記端子を含む、2つの物
    体間を最短距離で結ぶ線分であるクリティカルカットを
    用いて配線容量を検査しつつ実行する場合に、検査不要
    なクリティカルカットを検出する方法であって、 前記平面及び端子の大きさ及び配置による制限を参照し
    て、前記複数の三角形の各辺を通過する可能性のある最
    大配線幅である最大フローを計算するステップと、 1の三角形領域の外側にあり且つ辺を共有する第2の三
    角形領域において、当該共有する辺が、前記1の三角形
    領域の1の端子から可視であるか判断する第1判断ステ
    ップと、 前記辺が可視であると判断された場合、前記共有する辺
    の対頂点である端子と前記1の端子とのクリティカルカ
    ットが前記1の端子から可視であるか判断する第2判断
    ステップと、 前記クリティカルカットが可視であると判断された場合
    には、当該クリティカルカットが交差する三角形領域の
    和領域において、前記クリティカルカットの片側に位置
    する境界の辺の前記最大フローの和を計算するステップ
    と、 前記クリティカルカットの配線容量と、前記最大フロー
    の和を比較するステップと、 比較結果により、前記クリティカルカットの配線容量の
    方が大きい場合には、当該クリティカルカットを検査不
    要なクリティカルカットとして出力するステップと、 前記最大フローの和と前記クリティカルカットの配線容
    量のどちらか小さい方を、前記クリティカルカットの最
    大フローとして記録するステップと、 前記共有する辺を、前記和領域に加える新たな三角形領
    域と前記和領域とが共有する辺とし、前記クリティカル
    カットの片側に位置する境界の辺を、新たなクリティカ
    ルカットの片側に位置する境界の辺又は前記クリティカ
    ルカット及び前記新たな三角形領域の1の辺とし、前記
    第1判断ステップ以降を実行するステップとを含む検査
    不要クリティカルカット検出方法。
  25. 【請求項25】平面上の端子間の配線経路探索を行う装
    置であって、 (a)前記端子を含む点を頂点とする複数の領域に前記
    平面を分割し、当該複数の領域の接続関係を表現する経
    路探索グラフを作成する手段と、 (b)前記端子を含む、2つの物体間を最短距離で結ぶ
    線分をクリティカルカットとして、その可能配線幅と共
    に記録する手段と、 (c)前記クリティカルカットが関連する前記領域の辺
    と必要な端子とに、当該クリティカルカットとの対応と
    必要な場合には当該クリティカルカットに対する位置情
    報とを記録する手段と、 (d)前記経路探索グラフを探索する際に、(d1)探
    索経路上の端子又は辺が記録している前記位置情報を用
    いてある領域への進入を検出した場合、当該領域に関連
    するクリティカルカットに、前記進入を検出する際に用
    いた位置情報を参照して進入方向を記録し、探索経路と
    なる端子又は辺が記録している前記位置情報から前記領
    域からの退出を検出した場合、前記関連するクリティカ
    ルカットに記録された進入方向を参照して、前記退出を
    検出する際に用いた位置情報から、前記探索経路が前記
    関連するクリティカルカットと交差するかどうか判断す
    る手段と、(d2)前記クリティカルカットと交差する
    と判断された場合には、当該クリティカルカットの可能
    配線幅を参照して、配線可能かどうかを判断する手段と
    を有する配線経路探索装置。
  26. 【請求項26】平面上の端子間の配線経路探索を行う装
    置であって、 (a)前記端子を含む点を頂点とする複数の三角形領域
    に前記平面を分割し、当該複数の三角形領域の接続関係
    を表現する経路探索グラフを作成する手段と、 (b)前記端子を含む、2つの物体間を最短距離で結ぶ
    線分をクリティカルカットとして、その可能配線幅と共
    に記録する手段と、 (c)前記領域の辺を方向が異なる有向枝とし、一方向
    にて領域を囲み、前記クリティカルカットは一の方向を
    有しており、各前記有向枝に対し、存在すれば、 当該有向枝が右境界となっているクリティカルカット
    と、 当該有向枝が左境界となっているクリティカルカット
    と、 当該有向枝の対頂点が右境界上にあるクリティカルカッ
    トと、 当該有向枝の対頂点が左境界上にあるクリティカルカッ
    トと、 当該有向枝と一致するクリティカルカットとを記録する
    手段と、 (d)前記経路探索グラフを探索する際に、(d1)前
    記端子から経路探索を行う場合には退出しようとする領
    域の境界となっている有向枝である内側有向枝に該当し
    且つ当該端子を対頂点とした有向枝に対応するクリティ
    カルカットに進入方向を記録し、又は進入しようとする
    三角形領域の境界となっている有向枝である外側有向枝
    に記録されたクリティカルカットに、進行方向を記憶す
    る手段と、(d2)前記内側有向枝に記録されたクリテ
    ィカルカットの進入方向を参照し、当該内側有効枝の位
    置に基づき探索経路が前記クリティカルカットを交差し
    ているかを判断し、前記端子への経路探索を行う場合に
    は、当該端子を対頂点とした、直前に通過した前記外側
    有向枝に対応するクリティカルカットの進行方向を参照
    し、当該端子の位置に基づき探索経路が当該クリティカ
    ルカットを交差したかを判断する判断手段と(d3)前
    記三角形領域の辺に一致するクリティカルカットが存在
    する場合には、当該クリティカルカットとの交差が、そ
    の配線可能幅を参照して可能かどうかを判断し、前記判
    断手段により前記クリティカルカットと交差すると判断
    された場合には、当該クリティカルカットの可能配線幅
    を参照して、配線可能かどうかを判断する手段とを有す
    る配線経路探索装置。
  27. 【請求項27】複数の領域に分割された平面上に配置さ
    れた端子を含む、2つの物体間を最短距離で結ぶ線分で
    あるクリティカルカットを用いて配線容量を検査する場
    合に、検査不要なクリティカルカットを検出する装置で
    あって、 1のクリティカルカットについて配線容量を求める手段
    と、 前記1のクリティカルカットと交差する領域の和領域に
    おいて、当該クリティカルカットの片側に位置し且つ前
    記和領域の境界を構成する辺の配線容量又は通過する可
    能性のある最大配線幅である最大フロー、の和を求める
    手段と、 前記1のクリティカルカットの配線容量と、前記配線容
    量又は前記最大フローの和を比較する手段と、 比較結果により、前記1のクリティカルカットの配線容
    量の方が大きい場合には、当該1のクリティカルカット
    を検査不要なクリティカルカットとして出力する手段と
    を有する検査不要クリティカルカット検出装置。
  28. 【請求項28】複数の三角形に分割された平面上に配置
    された端子を含む、2つの物体間を最短距離で結ぶ線分
    であるクリティカルカットを用いて配線容量を検査する
    場合に、検査不要なクリティカルカットを検出する装置
    であって、 前記平面及び端子の大きさ及び配置による制限を参照し
    て、前記複数の三角形の各辺を通過する可能性のある最
    大配線幅である最大フローを計算する手段と、 1の三角形領域の外側にあり且つ辺を共有する第2の三
    角形領域において、当該共有する辺が、前記1の三角形
    領域の1の端子から可視であるか判断し、当該辺が可視
    であると判断した場合、前記共有する辺の対頂点である
    端子と前記1の端子とのクリティカルカットが前記1の
    端子から可視であるか判断する判断手段と、 前記クリティカルカットが可視であると判断された場合
    には、当該クリティカルカットが交差する三角形領域の
    和領域において、前記クリティカルカットの片側に位置
    する境界の辺の前記最大フローの和を計算する手段と、 前記クリティカルカットの配線容量と、前記最大フロー
    の和を比較する手段と、 比較結果により、前記クリティカルカットの配線容量の
    方が大きい場合には、当該クリティカルカットを検査不
    要なクリティカルカットとして出力する手段とを有する
    検査不要クリティカルカット検出装置。
  29. 【請求項29】前記手段(b)が、 1のクリティカルカットについて配線容量を求める手段
    と、 前記1のクリティカルカットと交差する領域の和領域に
    おいて、当該クリティカルカットの片側に位置し且つ前
    記和領域の境界を構成する辺の配線容量又は通過する可
    能性のある最大配線幅である最大フローの和を求める手
    段と、 前記1のクリティカルカットの配線容量と、前記配線容
    量又は前記最大フローの和を比較する手段と、 比較結果により、前記1のクリティカルカットの配線容
    量の方が小さい場合には、当該1のクリティカルカット
    を記録する手段と請求項25記載の配線経路探索装置。
  30. 【請求項30】前記手段(b)が、 前記平面及び端子の大きさ及び配置による制限を参照し
    て、前記複数の三角形領域の各辺を通過する可能性のあ
    る最大配線幅である最大フローを計算する手段と、 1のクリティカルカットについて配線容量を求める手段
    と、 前記1のクリティカルカットと交差する領域の和領域に
    おいて、当該クリティカルカットの片側に位置し且つ前
    記和領域の境界を構成する辺の最大フローの和を求める
    手段と、 前記1のクリティカルカットの配線容量と、前記最大フ
    ローの和を比較する手段と、 比較結果により、前記1のクリティカルカットの配線容
    量の方が小さい場合には、当該1のクリティカルカット
    を記録する手段とを含む請求項26記載の配線経路探索
    装置。
  31. 【請求項31】コンピュータに平面上の端子間の配線経
    路探索を行わせるプログラムコード手段を記憶した記憶
    装置であって、前記プログラムコード手段が、 (a)コンピュータに、前記端子を含む点を頂点とする
    複数の領域に前記平面を分割させ、当該複数の領域の接
    続関係を表現する経路探索グラフを作成させるプログラ
    ムコード手段と、 (b)コンピュータに、前記端子を含む、2つの物体間
    を最短距離で結ぶ線分をクリティカルカットとして、そ
    の可能配線幅と共に記録させるプログラムコード手段
    と、 (c)コンピュータに、前記クリティカルカットが前記
    複数の領域の辺と同位相である場合には、当該辺に当該
    クリティカルカットとの対応を記録させ、前記クリティ
    カルカットが前記領域と交差する場合には、交差する前
    記領域の和領域を求させ、当該和領域の境界の辺に当該
    クリティカルカットとの対応及び位置情報を記録させ、
    当該和領域に端子が含まれる場合には、当該端子に当該
    クリティカルカットとの対応及び位置情報を記録させる
    プログラムコード手段と、 (d)前記経路探索グラフを探索する際に、(d1)コ
    ンピュータに、探索経路上の端子又は辺が記録している
    前記位置情報を用いてある領域への進入を検出させ、進
    入する領域と交差するクリティカルカットに、前記進入
    を検出する際に用いた位置情報に基づき、当該クリティ
    カルカットに対する進入方向を記録させるプログラムコ
    ード手段と、(d2)コンピュータに、探索経路となる
    端子又は辺が記録している前記位置情報を用いて前記進
    入した領域からの退出を検出させ、前記クリティカルカ
    ットに記憶された進入方向を参照して、前記退出を検出
    する際に用いた位置情報に基づく退出方向との関係か
    ら、当該クリティカルカットを当該探索経路が交差する
    かを判断させるプログラムコード手段と、(d3)コン
    ピュータに、前記クリティカルカットと交差すると判断
    された場合には、当該クリティカルカットの可能配線幅
    を参照して、交差可能かどうかを判断させ、前記領域の
    進入及び退出の際に当該領域の境界となる辺と対応を有
    するクリティカルカットが存在することを検出した場合
    には、当該クリティカルカットの可能配線幅を参照して
    配線可能かを判断させるプログラムコード手段とを含む
    記憶装置。
  32. 【請求項32】複数の三角形領域に分割された平面上に
    配置された端子を含む、2つの物体間を最短距離で結ぶ
    線分であるクリティカルカットを用いて配線容量を検査
    する場合に、コンピュータに検査不要なクリティカルカ
    ットを検出させるプログラムコード手段を記憶した記憶
    装置であって、前記プログラムコード手段が、 コンピュータに、前記平面及び端子の大きさ及び配置に
    よる制限を参照して、前記複数の三角形領域の各辺を通
    過する可能性のある最大配線幅である最大フローを計算
    させるプログラムコード手段と、 コンピュータに、1のクリティカルカットについて配線
    容量を求めさせるプログラムコード手段と、 コンピュータに、前記1のクリティカルカットと交差す
    る領域の和領域において、当該クリティカルカットの片
    側に位置し且つ前記和領域の境界を構成する辺の最大フ
    ローの和を求めさせるプログラムコード手段と、 コンピュータに、前記1のクリティカルカットの配線容
    量と、前記最大フローの和を比較させるプログラムコー
    ド手段と、 コンピュータに、比較結果により、前記1のクリティカ
    ルカットの配線容量の方が大きい場合には、当該1のク
    リティカルカットを検査不要なクリティカルカットとし
    て出力させるプログラムコード手段とを含む記憶装置。
JP04576496A 1996-03-04 1996-03-04 配線経路探索方法及び装置、並びに検査不要クリティカルカット検出方法及び装置 Expired - Fee Related JP3352583B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP04576496A JP3352583B2 (ja) 1996-03-04 1996-03-04 配線経路探索方法及び装置、並びに検査不要クリティカルカット検出方法及び装置
US08/757,718 US5880969A (en) 1996-03-04 1996-11-26 Method and apparatus for deciding a wiring route and for detecting a critical cut
US09/012,765 US6226560B1 (en) 1996-03-04 1998-01-23 Method and apparatus for optimizing the path of a physical wire

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04576496A JP3352583B2 (ja) 1996-03-04 1996-03-04 配線経路探索方法及び装置、並びに検査不要クリティカルカット検出方法及び装置

Publications (2)

Publication Number Publication Date
JPH09246386A true JPH09246386A (ja) 1997-09-19
JP3352583B2 JP3352583B2 (ja) 2002-12-03

Family

ID=12728368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04576496A Expired - Fee Related JP3352583B2 (ja) 1996-03-04 1996-03-04 配線経路探索方法及び装置、並びに検査不要クリティカルカット検出方法及び装置

Country Status (2)

Country Link
US (1) US5880969A (ja)
JP (1) JP3352583B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012198695A (ja) * 2011-03-18 2012-10-18 Fujitsu Ltd 配線設計支援装置、配線設計支援方法、及びプログラム

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6226560B1 (en) * 1996-03-04 2001-05-01 International Business Machines Corporation Method and apparatus for optimizing the path of a physical wire
US6230306B1 (en) * 1998-04-17 2001-05-08 Lsi Logic Corporation Method and apparatus for minimization of process defects while routing
US6366279B1 (en) * 1998-12-29 2002-04-02 Intel Corporation Triangle mesh compression
US6275974B1 (en) * 1998-12-30 2001-08-14 International Business Machines Corporation Efficient tracing of shorts in very large nets in hierarchical designs using breadth-first search with optimal pruning
US6446247B1 (en) 1999-11-29 2002-09-03 International Business Machines Corporation Optimization of printed wire circuitry on a single surface using a circle diameter
JP3548070B2 (ja) * 2000-01-26 2004-07-28 インターナショナル・ビジネス・マシーンズ・コーポレーション 多端子ネットを自動的に発生する方法及び装置並びに多端子ネット自動発生方法を実行するためのプログラムを記憶したプログラム記憶媒体
US6898773B1 (en) * 2002-01-22 2005-05-24 Cadence Design Systems, Inc. Method and apparatus for producing multi-layer topological routes
US6858935B1 (en) 2000-12-07 2005-02-22 Cadence Design Systems, Inc. Simulating euclidean wiring directions using manhattan and diagonal directional wires
US7441220B2 (en) * 2000-12-07 2008-10-21 Cadence Design Systems, Inc. Local preferred direction architecture, tools, and apparatus
US6858928B1 (en) 2000-12-07 2005-02-22 Cadence Design Systems, Inc. Multi-directional wiring on a single metal layer
US6769105B1 (en) 2001-06-03 2004-07-27 Cadence Design Systems, Inc. Method and arrangement for layout and manufacture of gridded non manhattan semiconductor integrated circuits
US6957408B1 (en) * 2002-01-22 2005-10-18 Cadence Design Systems, Inc. Method and apparatus for routing nets in an integrated circuit layout
US7107564B1 (en) 2001-06-03 2006-09-12 Cadence Design Systems, Inc. Method and apparatus for routing a set of nets
US6957411B1 (en) 2001-06-03 2005-10-18 Cadence Design Systems, Inc. Gridless IC layout and method and apparatus for generating such a layout
US7069530B1 (en) 2001-06-03 2006-06-27 Cadence Design Systems, Inc. Method and apparatus for routing groups of paths
US6973634B1 (en) 2002-01-22 2005-12-06 Cadence Design Systems, Inc. IC layouts with at least one layer that has more than one preferred interconnect direction, and method and apparatus for generating such a layout
US6938234B1 (en) 2002-01-22 2005-08-30 Cadence Design Systems, Inc. Method and apparatus for defining vias
US7089524B1 (en) 2002-01-22 2006-08-08 Cadence Design Systems, Inc. Topological vias route wherein the topological via does not have a coordinate within the region
US7013451B1 (en) 2002-01-22 2006-03-14 Cadence Design Systems, Inc. Method and apparatus for performing routability checking
US7117468B1 (en) 2002-01-22 2006-10-03 Cadence Design Systems, Inc. Layouts with routes with different spacings in different directions on the same layer, and method and apparatus for generating such layouts
US7096449B1 (en) 2002-01-22 2006-08-22 Cadence Design Systems, Inc. Layouts with routes with different widths in different directions on the same layer, and method and apparatus for generating such layouts
US7080329B1 (en) 2002-01-22 2006-07-18 Cadence Design Systems, Inc. Method and apparatus for identifying optimized via locations
US6986117B1 (en) 2002-06-04 2006-01-10 Cadence Design Systems, Inc. Method and apparatus for identifying a path between source and target states
US7069531B1 (en) 2002-07-15 2006-06-27 Cadence Design Systems, Inc. Method and apparatus for identifying a path between source and target states in a space with more than two dimensions
US7073151B1 (en) 2002-06-04 2006-07-04 Cadence Design Systems, Inc. Method and apparatus for identifying a path between a set of source states and a set of target states in a triangulated space
US7047512B1 (en) 2002-06-04 2006-05-16 Cadence Design Systems, Inc. Method and apparatus for specifying a cost function that represents the estimated distance between an external state and a set of states in a space
US7216308B2 (en) * 2002-11-18 2007-05-08 Cadence Design Systems, Inc. Method and apparatus for solving an optimization problem in an integrated circuit layout
US7093221B2 (en) * 2002-11-18 2006-08-15 Cadence Design Systems, Inc. Method and apparatus for identifying a group of routes for a set of nets
US6892369B2 (en) * 2002-11-18 2005-05-10 Cadence Design Systems, Inc. Method and apparatus for costing routes of nets
US20050097489A1 (en) * 2003-11-03 2005-05-05 Seward Robert Y. Method and system for producing a reduced bounding box
JP4549094B2 (ja) * 2004-04-16 2010-09-22 新光電気工業株式会社 クリアランス検査装置および方法
US7131096B1 (en) 2004-06-01 2006-10-31 Pulsic Limited Method of automatically routing nets according to current density rules
US8095903B2 (en) * 2004-06-01 2012-01-10 Pulsic Limited Automatically routing nets with variable spacing
US7784010B1 (en) 2004-06-01 2010-08-24 Pulsic Limited Automatic routing system with variable width interconnect
US7373628B1 (en) 2004-06-01 2008-05-13 Pulsic Limited Method of automatically routing nets using a Steiner tree
US7707537B2 (en) * 2004-06-04 2010-04-27 Cadence Design Systems, Inc. Method and apparatus for generating layout regions with local preferred directions
US7257797B1 (en) 2004-06-07 2007-08-14 Pulsic Limited Method of automatic shape-based routing of interconnects in spines for integrated circuit design
US9245082B2 (en) * 2005-06-21 2016-01-26 Pulsic Limited High-speed shape-based router
US7603644B2 (en) * 2005-06-24 2009-10-13 Pulsic Limited Integrated circuit routing and compaction
US7363607B2 (en) 2005-11-08 2008-04-22 Pulsic Limited Method of automatically routing nets according to parasitic constraint rules
US8201128B2 (en) 2006-06-16 2012-06-12 Cadence Design Systems, Inc. Method and apparatus for approximating diagonal lines in placement
US8250514B1 (en) 2006-07-13 2012-08-21 Cadence Design Systems, Inc. Localized routing direction
US7774734B2 (en) * 2006-11-06 2010-08-10 Microsoft Corporation Enhanced reach-based graph processing using shortcuts
US20100023914A1 (en) * 2008-02-20 2010-01-28 Sahouria Emile Y Use Of Graphs To Decompose Layout Design Data
KR101210273B1 (ko) * 2008-12-18 2012-12-10 한국전자통신연구원 온칩 네트워크 토폴로지 합성 방법
US8458636B1 (en) 2009-03-18 2013-06-04 Pulsic Limited Filling vacant areas of an integrated circuit design

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2663680B2 (ja) * 1990-05-24 1997-10-15 松下電器産業株式会社 チャネル配線方法
US5361214A (en) * 1990-07-09 1994-11-01 Kabushiki Kaisha Toshiba Method for automatically determining wiring routes
JP3219500B2 (ja) * 1991-12-27 2001-10-15 株式会社東芝 自動配線方法
US5506788A (en) * 1994-01-13 1996-04-09 Lsi Logic Corporation Similarity-extraction force-oriented floor planner

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012198695A (ja) * 2011-03-18 2012-10-18 Fujitsu Ltd 配線設計支援装置、配線設計支援方法、及びプログラム

Also Published As

Publication number Publication date
JP3352583B2 (ja) 2002-12-03
US5880969A (en) 1999-03-09

Similar Documents

Publication Publication Date Title
JP3352583B2 (ja) 配線経路探索方法及び装置、並びに検査不要クリティカルカット検出方法及び装置
US6219823B1 (en) Method and apparatus for deciding a wiring route and for detecting a critical cut
US6671864B2 (en) Method and apparatus for using a diagonal line to measure an attribute of a bounding box of a net
US6516455B1 (en) Partitioning placement method using diagonal cutlines
US5550748A (en) Region search for delay routing and signal net matching
US6802049B2 (en) Method and apparatus for computing placement costs by calculating bend values of connection graphs that model interconnect line topologies
US7073155B1 (en) Method for computing and using future costing data in signal routing
CN1529864B (zh) 在布局中考虑到斜布线的方法和装置
US20020157075A1 (en) Method and apparatus for computing placement costs
US20020069397A1 (en) Method and apparatus for placing circuit modules
US6598211B2 (en) Scaleable approach to extracting bridges from a hierarchically described VLSI layout
JP2004529402A5 (ja)
US20040123261A1 (en) Buffer insertion with adaptive blockage avoidance
US20100205570A1 (en) Method For Reading Polygon Data Into An Integrated Circuit Router
CN116738925A (zh) 一种fpga详细布局方法及系统
US20060041852A1 (en) Targeted optimization of buffer-tree logic
CN112560386B (zh) 一种大规模复杂版图电阻提取加速方法
JP3229235B2 (ja) 配線整形方法及び装置、禁止領域半径決定方法及び装置
US7120829B2 (en) Failure propagation path estimate system
CN108763660B (zh) 组合电路瞬态脉冲重汇聚现象可满足性分析方法及系统
JP4778339B2 (ja) 自動配置方法、装置、及びプログラム
JP2619007B2 (ja) 遅延時間解析装置
JPH118308A (ja) 遅延時間計算方法
JP2674054B2 (ja) イベントドリブン配線処理方式
US6519499B1 (en) Method and apparatus for extracting bridges from an integrated circuit layout

Legal Events

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