JP3137178B2 - 集積回路の配線設計方法および装置 - Google Patents

集積回路の配線設計方法および装置

Info

Publication number
JP3137178B2
JP3137178B2 JP08214506A JP21450696A JP3137178B2 JP 3137178 B2 JP3137178 B2 JP 3137178B2 JP 08214506 A JP08214506 A JP 08214506A JP 21450696 A JP21450696 A JP 21450696A JP 3137178 B2 JP3137178 B2 JP 3137178B2
Authority
JP
Japan
Prior art keywords
wiring
prohibition
subnet
track
net
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.)
Expired - Fee Related
Application number
JP08214506A
Other languages
English (en)
Other versions
JPH1065008A (ja
Inventor
隆志 藤井
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP08214506A priority Critical patent/JP3137178B2/ja
Priority to US08/911,042 priority patent/US6014507A/en
Publication of JPH1065008A publication Critical patent/JPH1065008A/ja
Application granted granted Critical
Publication of JP3137178B2 publication Critical patent/JP3137178B2/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)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、集積回路の配線設
計に利用する。
【0002】本発明は、特に、レイアウト設計における
詳細配線処理におけるチャネル配線において、既配線又
は既配置の回路部品によって構成される配線禁止図形が
存在するチャネル配線領域に対して用いる配線設計方式
に関する。
【0003】
【従来の技術】集積回路のレイアウト設計において、電
源配線に対するテーパリング処理による配線占有面積の
最小化及びクロック配線に対するクロックスキューの低
減などを行うために、通常、これらの特殊配線は一般の
信号線の配線処理よりも先立って行われる。この場合、
前もって配線される特殊線は既配線としてチャネル配線
領域内に存在し、一般の信号線の配線処理時には配線禁
止図形(障害物)として扱わなければならない。チャネ
ル配線領域内に一般の信号線ネットの幹線(水平方向の
配線)を割り当てる際に、配線禁止図形を避けて割付を
行う必要がある。
【0004】従来のチャネル配線法は、対象の配線領域
の内部に障害物が存在しないという配線モデルを仮定し
た場合にのみ適用可能な配線法である。従って、従来の
チャネル配線法を配線禁止図形が存在するチャネル配線
領域に適用することは不可能である。
【0005】特開平4−167073号公報に開示され
ている自動配線方式では、配線領域内に配線禁止図形が
存在する場合にも適用できるように改良されている。図
62に示す配線処理フローに従って、チャネル配線領域
にネットの幹線が割当てられる。この配線方法では、配
線禁止図形の範囲内(図形の左端と右端の間)に上側セ
ル列と下側セル列の両方に端子を持つネットに対して、
幹線の割当てが不可能である。これを例を用いて説明す
る。
【0006】図63に示すチャネル配線領域において、
チャネル配線領域の上側セル列の端子t1と下側セル列
の端子t2を結線するネットnについて考える。端子t
1とt2は共に配線禁止図形(チャネル内障害物)Rの
範囲内に位置している。チャネル配線領域の上側の境界
11とチャネル配線領域の下側の境界12の範囲に、4
つの配線用のトラックT1〜T4が配置されている。
【0007】先ず、ステップS101とステップS10
2において、幹線間の上下制約関係を表す位置制約グラ
フを作成する。ここで、節点はネットの幹線又は障害物
に対応している。有向枝(a、b)は、幹線a(又は障
害物a)が幹線b(又は障害物b)よりも上方の配線ト
ラックに割り当てられなければならないという制約を表
している。図63のチャネル配線領域に対する位置制約
グラフは、図64に示すように、チャネル内障害物Rに
対応する節点Rとネットnの幹線に対応する節点nの間
にサイクルが生じてしまう。
【0008】次にステップS103で、各節点に重みを
付加する。ネットの幹線を表す節点nには重み1を付加
する。障害物を表す節点Rの重みは障害物によって幹線
を割り付けることができなくなるトラックの数とする。
この場合、節点Rの重みは2である。
【0009】ステップS104では、位置制約グラフ内
の各節点uに対して、どの有向枝も入ってこない節点を
始点として考え、その始点から矢印をたどって節点uに
至る経路に含まれる全ての節点の重みを累積した値を、
節点uの順位とする。図64の位置制約グラフにおいて
は、サイクルとなっているので、節点nの順位を決める
ことが出来ない。従って、チャネル配線領域の上下制約
を表す位置制約グラフにおいて、障害物とネットの幹線
との間にサイクルが存在する場合には、上記チャネル配
線方法を適用することが不可能である。
【0010】また、図65に示すチャネル内の配線禁止
図形(障害物)Vが、幹線(水平方向の配線)を配線す
るのに使用する配線層M1に対する障害物であり、幹線
と端子との間を結ぶ支線(垂直方向の配線)を配線する
のに使用する配線層M2に対する障害物でない場合を考
える。障害物Rは幹線及び支線に使用する両方の配線層
に対する障害物である。障害物Vによって幹線の割付が
不可能になっているトラックの数は2である。2つのネ
ットn1={t1、t3}とn2={t2、t4}にお
いて、ネットn1の端子t1が障害物Vの上側に位置
し、ネットn2の端子t4が障害物Rの下側に位置す
る。ネットn1とn2の幹線の間には上下制約は存在し
ない。このとき、ステップS101とS102で構成さ
れる位置制約グラフは図66に示すような有向グラフに
なる。ここで、障害物VとR、ネットn1とn2に対応
する節点をそれぞれVとR、n1とn2で表す。ステッ
プS103で付加される各節点の重みはVが2、他の3
つの節点は共に1である。ステップS104で計算され
る節点n1、n2の順位は、節点Rから節点n2へ向か
う有向枝が存在するので、節点n2の順位は2となる。
一方、節点n1の順位は1である。従って、ステップS
106において、最下のトラックT3には節点n2に対
応するネットn2の幹線が割当てられる。節点n1に対
応するネットn1の幹線については割り付けるトラック
が存在しないまま処理を終了してしまうことになる。図
67に示すように、ネットn1の配線が不可能な状態と
なってしまう。
【0011】特願平7−75716号では、図63に示
すチャネル配線領域および図65に示すチャネル配線領
域に対しても配線できる配線方式が述べられている。図
68に示す配線処理フローに従って、チャネル配線領域
にネットの幹線が割り当てられる。この配線方式では、
チャネル配線領域内に配線禁止図形によって妨害されな
いような部分チャネル領域を設定する。配線処理の進行
に伴い、既に割り当てられた幹線および配線禁止図形を
除く領域を対象にして、部分チャネル領域を更新して行
き、幹線を領域内のトラックに割り当てる方法である。
本配線方式においては、チャネル配線領域内に存在する
配線禁止図形の位置および割り当てられたネットの幹線
によって配線処理中に構成される部分チャネル領域の形
状が決まって来る。よって、配線可能なチャネル配線領
域に対してネットの幹線の割り当てが不可能になる場合
がある。これを例を用いて説明する。
【0012】図69(a)に示すチャネル配線領域にお
いて、端子t1、t2がチャネル配線領域の上側セル列
に位置し、端子t3、t4が下側セル列に位置する。
今、配線に用いる配線層はM1とM2の2層とし、水平
方向にはM1層、垂直方向にはM2層を用いると仮定す
る。端子t1は配線禁止図形V1の上側に、端子t2は
配線禁止図形V3の上側に、端子t4は配線禁止図形V
5の下側に存在する。端子t3は、配線禁止図形が存在
していないカラムに位置している。配線領域内に存在す
る配線禁止図形V1〜V5はいずれも配線層M1(水平
方向の配線に用いられる配線層)に関する配線禁止図形
である。端子t1とt4を結ぶネットn1と端子t2と
t3を結ぶネットn2について考える。
【0013】先ず、ステップS201とS202で、水
平方向の配線に用いる配線層M1に対する部分チャネル
が図69(a)に示すように設定される。
【0014】次に、ステップS203において、ネット
n1、n2に属する各端子に対して部分チャネルの境界
線上に仮端子を設ける(図69(b)参照)。
【0015】ステップS204で、部分チャネル内にお
いて配線するネットの候補の集合はS={n1、n2}
である。
【0016】続いて、ステップS205において、ネッ
トn2の端子t2がネットn1の端子t4の上方に位置
するため、上下制約により、ネットn2の幹線はネット
n1の幹線よりも上側のトラックに割り当てられなけれ
ばならない。従って、ネットn2の幹線がトラックT2
に割り当てられる。
【0017】ステップS206およびステップS207
では、ステップS205で幹線が割り当てられたネット
の配線に基づき配線禁止図形の更新が行われ、割り当て
の完了したネットをネットリストから削除する。
【0018】ステップS208で、ネットリストにはネ
ットn1のみが属し、空集合ではないので、ステップS
202から繰り返し処理を行う。
【0019】ステップS202〜S208の2回目のル
ープでは、図69(c)に示すように、部分チャネルが
設定され、ネットn1の仮端子が設けられる。ネットn
1の幹線はトラックT4に割り当て可能である。しか
し、トラックT4は、端子t1を左端とし端子t4を右
端とする区間を含まなくなってしまう。従って、ネット
n1の幹線をトラックT4に割り当てることが不可能に
なり、ネットn1が未配線となる。
【0020】
【発明が解決しようとする課題】従来のチャネル配線方
法では、チャネル配線領域内に配線禁止図形が存在する
場合に、幹線のトラックへの割付に関して考慮すること
が不可能である。
【0021】また、特開平4−167073号公報にお
いて開示されているチャネル配線方法では、チャネル配
線領域内に存在する配線禁止図形が、どのような配線に
関する障害になるかというような幹線及び支線に使用さ
れる配線層に対する障害の形態を考慮していないため、
トラックの使用効率が低く、トラックへの割当てが不可
能な状態となる幹線が増大し、配線が出来ないネットが
多く存在する、あるいは、未配線を解消するために多く
の余分なトラックが必要になるなどの問題がある。
【0022】更に、特願平7−75716号において開
示されているチャネル配線方法では、配線処理を行う上
で設定している部分チャネル領域の更新処理において、
チャネル配線領域内に存在する配線禁止図形の形状及び
配置位置と配線に利用可能なトラックの位置関係を考慮
していないため、トラックの使用効率が低く、トラック
への割当てが不可能な状態となる幹線が増大し、配線が
出来ないネットが多く存在する、あるいは、未配線を解
消するために多くの余分なトラックが必要になるなどの
問題がある。
【0023】本発明の課題は、配線禁止図形が内部に存
在するようなチャネル配線領域に対するチャネル配線手
法及び配線設計装置を提供することにある。
【0024】
【課題を解決するための手段】本発明の第1の集積回路
の配線設計方法は、集積回路の配線設計における配線領
域において、既に配線層、配線通過位置、形状などの詳
細な配線経路又は回路部品の配置位置が設定してあるよ
うな場合に、配線領域に隣接するセルに属する端子情報
及びセルに属する配線禁止情報、並びに、端子間の接続
情報に基づき、チャネル配線領域を設定する第1のステ
ップ(図2のS301)と、第1のステップで設定され
たチャネル配線領域内に存在する端子の位置情報及び端
子間の接続情報に基づき、ネットをサブネットに分割
し、サブネットの集合をネットリストNとする第2のス
テップ(図2のS302)と、第1のステップで設定さ
れたチャネル配線領域内に存在する配線禁止図形の情報
および第2のステップで求めたネットリストNに対し
て、各端子tの到達可能トラックの集合RT(t)、ネ
ットリストN内の各サブネットnの割り当て可能トラッ
クの集合AT(n)、各カラムcの通過可能トラックの
集合PT(c)、配線密度D(c)、スルーホール設定
可能トラックの集合TH(c)を計算する第3のステッ
プ(図2のS303)と、第2のステップで求めたネッ
トリストNにおいて、第3のステップで計算した割り当
て可能トラックの集合AT(n)が空集合となるサブネ
ットnに対して、第1のステップで設定されたチャネル
配線領域内に存在する配線禁止図形の中で、サブネット
nの配線を妨害している垂直方向通過禁止図形を回避す
るための処理を行う第4のステップ(図2のS304)
と、第1のステップで設定されたチャネル配線領域内に
存在する配線禁止図形、端子の位置、第2のステップで
求めたネットリストN、第4のステップで求めた垂直方
向通過禁止図形を回避する処理の結果に基づき、垂直方
向通過禁止図形と端子に関連する制約を表す禁止制約グ
ラフGを作成する第5のステップ(図2のS305)
と、第5のステップにおいて作成した禁止制約グラフG
に対して、節点及び枝の削除処理を適用し、Gの部分グ
ラフである部分禁止制約グラフG*を構成する第6のス
テップ(図2、図3のS306)と、第6のステップに
おいて構成した部分禁止制約グラフG*の節点集合V*
において、節点集合V*に含まれる節点に対応するネッ
トから成る集合を、幹線割り当て処理の対象となるサブ
ネットの集合N*とする第7のステップ(図2のS30
7)と、第6のステップにおいて構成した部分禁止制約
グラフG*を第7のステップにおいて求めた幹線割り当
て処理の対象となるサブネットの集合N*に関する上下
制約関係を表す有向グラフと見なし、サブネットの集合
N*に属するサブネットに対して、第1のステップで設
定されたチャネル配線領域内に存在する配線禁止図形及
び端子の情報に基づいて、サブネットの幹線をトラック
に割り当てる第8のステップ(図2のS308)と、ネ
ットリストNを(N−N*)に更新し、禁止制約グラフ
Gから部分禁止制約グラフG*を削除したグラフを禁止
制約グラフGとする第9のステップ(図2のS309)
と、第8のステップにおいてサブネットの集合N*のす
べてのサブネットがトラックに割り当てられたか否かを
判定し、割り当てられなかったサブネットが存在する場
合にはエラーを出力し、割り当てに成功した場合には、
第9のステップで更新したネットリストNが空集合か否
かを判定し、空集合であれば、チャネル配線領域の境界
線並びに配線禁止図形の形状及び位置が垂直方向に可変
であり且つ幹線が割り当てられていないトラック(空き
トラック)が存在する場合に、空きトラックを削除し、
チャネル配線領域の境界線の位置の変更と配線禁止図形
の形状の変更と配線禁止図形の移動を行い、チャネル配
線領域の高さを縮め、配線処理を終了する第10のステ
ップ(図2のS310)とを含むことを特徴とするもの
である。
【0025】本発明の第2の集積回路の配線設計方法
は、上記の第1の集積回路の配線設計方法において、第
4のステップの代わりに、垂直方向通過禁止図形を回避
するために、禁止図形の範囲内に位置する端子から禁止
図形を回避できる位置まで配線を引き出し新たな端子を
設定する端子引き出しステップ(図5のS304A)を
含むことを特徴とするものである。
【0026】本発明の第3の集積回路の配線設計方法
は、上記の第1の集積回路の配線設計方法において、第
4のステップの代わりに、垂直方向通過禁止図形を回避
するため、禁止図形範囲内に位置する端子を有するサブ
ネットの配線を行い、元のネットに属する他の端子と接
続するために新たな端子を設定するサブネットの前配線
ステップ(図7のS304B)を含むことを特徴とする
ものである。
【0027】本発明の第4の集積回路の配線設計方法
は、上記の第1の集積回路の配線設計方法において、第
4のステップの代わりに、垂直方向通過禁止図形を回避
するため、禁止図形範囲内に位置する端子を有するサブ
ネットに対して、元のネットの配線を行うネットの前配
線ステップ(図9のS304C)を含むことを特徴とす
るものである。
【0028】本発明の第5の集積回路の配線設計方法
は、上記の第1、2、3または4の集積回路の配線設計
方法において、第5のステップの代わりに、チャネル配
線領域内に存在する配線禁止図形、端子の位置、ネット
リストN、垂直方向通過禁止図形を回避する処理の結果
に基づき、垂直方向通過禁止図形と端子に関連する制約
を表す禁止制約グラフGを作成する禁止制約グラフ構築
ステップ(図11のS3051)と、禁止制約グラフ構
築ステップで作成された禁止制約グラフG内に存在する
制約サイクルを検出する制約サイクル検出ステップ(図
11のS3052)と、制約サイクル検出ステップで検
出された制約サイクルを解消するために、制約サイクル
に含まれるネットを分断するネットの分断ステップ(図
11のS3053)とから成る禁止制約グラフGの作成
およびネットの分断ステップ(図11のS305A)を
含むことを特徴とするものである。
【0029】本発明の第6の集積回路の配線設計方法
は、上記の第1、2、3または4の集積回路の配線設計
方法において、第5のステップの代わりに、チャネル配
線領域内に存在する配線禁止図形、端子の位置、ネット
リストN、垂直方向通過禁止図形を回避する処理の結果
に基づき、垂直方向通過禁止図形と端子に関連する制約
を表す禁止制約グラフGを作成する禁止制約グラフ構築
ステップ(図11、13のS3051)と、禁止制約グ
ラフ構築ステップで作成された禁止制約グラフG内に存
在する制約サイクルを検出する制約サイクル検出ステッ
プ(図11、13のS3052)と、制約サイクル検出
ステップで検出された制約サイクルを解消するために、
制約サイクルに含まれるネットを分断するネットの分断
ステップ(図11、13のS3053)と、制約サイク
ル検出ステップで検出された制約サイクルの中で、ネッ
トの分断ステップにおいて解消できなかった制約サイク
ルに対して、制約サイクルに含まれる節点に対応するサ
ブネットにジョグを挿入することにより制約サイクルを
解消するサブネットへのジョグ挿入ステップ(図13の
S3054)とから成る禁止制約グラフGの作成および
サブネットへのジョグ挿入ステップ(図13のS305
B)を含むことを特徴とするものである。
【0030】本発明の第7の集積回路の配線設計方法
は、上記の第5、または6の集積回路の配線設計方法に
おいて、上記第5の集積回路の配線設計方法の禁止制約
グラフGの作成およびネットの分断ステップ(図11の
S305A)、または上記第6の集積回路の配線設計方
法の禁止制約グラフGの作成およびサブネットへのジョ
グ挿入ステップ(図13のS305B)に加えて、配線
禁止図形が障害となり1本の幹線では配線不可能なサブ
ネットを検出し、検出されたサブネットにジョグを挿入
することにより禁止制約グラフG内のパスを切断するパ
スの切断ステップ(図15のS3055)とから成る禁
止制約グラフGの作成およびパスの切断ステップ(図1
5のS305C)を含むことを特徴とするものである。
【0031】本発明の第8の集積回路の配線設計方法
は、上記の第7の集積回路の配線設計方法において、禁
止制約グラフGの作成およびパスの切断ステップ(図1
5のS305C)に加えて、幹線の割り当てが可能なト
ラック数と幹線をトラックに割り当てなければならない
サブネット数の関係から、ジョグを挿入しなければなら
ないサブネットの候補を選択し、ジョグを挿入する位置
を決定するサブネットへのジョグ追加挿入ステップ(図
17のS3056)とから成る禁止制約グラフGの作成
およびサブネットへのジョグ追加挿入ステップ(図17
のS305D)を含むことを特徴とするものである。
【0032】本発明の第9の集積回路の配線設計方法
は、上記の第1、2、3、4、5、6、7、または8の
集積回路の配線設計方法において、第10のステップの
代わりに、第8のステップにおいて幹線をトラックに割
り当てることができなかったサブネットの集合Rnot
に含まれるサブネットに対して、未配線処理を適用する
配線可能性判定および未配線処理および終了判定ステッ
プ(図19のS310A)を含むことを特徴とするもの
である。
【0033】本発明の第10の集積回路の配線設計方法
は、上記の第1、2、3、4、5、6、7、または8の
集積回路の配線設計方法において、第10のステップの
代わりに、第8のステップにおいて幹線をトラックに割
り当てることができなかったサブネットの集合Rnot
に含まれるサブネットに対して、幹線をトラックに割り
当てるために必要となるトラックをチャネル配線領域に
新たに設定する不足トラック数の計算および終了判定ス
テップ(図21のS310B)を含むことを特徴とする
ものである。
【0034】本発明の第11の集積回路の配線設計方法
は、上記の第1、2、3、4、5、6、7、または8の
集積回路の配線設計方法において、第1のステップの代
わりに、ネットリストNに属するネットに接続する端子
の位置並びにチャネルの上下に位置するセルの内部に存
在する配線禁止図形より、チャネル配線領域の境界を定
め、カウンタを0に初期化するチャネル配線領域の設定
およびカウンタの初期化ステップ(図23のS301
A)と、第10のステップの代わりに、第8のステップ
においてトラックに割り当てることができなかったサブ
ネットの集合Rnotに含まれるサブネットの幹線をト
ラックに割り当てるために必要となるトラックを、配線
禁止図形の位置を変更せずにチャネル配線領域に設定
し、配線処理を続行することにより必要なトラック数を
求めた後に、求めた本数分のトラックを新たに設定した
後、移動可能な配線禁止図形を移動し、全てのネットに
対して再配線を行うことにより、未配線のサブネットを
配線する不足トラックの挿入および再配線および終了判
定ステップ(図23のS310C)を含むことを特徴と
するものである。
【0035】本発明の第12の集積回路の配線設計方法
は、上記の第11の集積回路の配線設計方法において、
不足トラックの挿入および再配線および終了判定ステッ
プの代わりに、チャネル配線領域にトラックを新たに設
定し、移動可能な配線禁止図形の位置を変更した後、配
線処理を続行することにより、第8のステップにおいて
幹線をトラックに割り当てることができなかったサブネ
ットの集合Rnotに含まれるサブネットの幹線をトラ
ックに割り当てる不足トラック線分の挿入および終了判
定ステップ(図25のS310D)を含むことを特徴と
するものである。
【0036】本発明の第13の集積回路の配線設計方法
は、上記の第11の集積回路の配線設計方法において、
不足トラックの挿入および再配線および終了判定ステッ
プの代わりに、先ず、第8のステップにおいて幹線をト
ラックに割り当てることができなかったサブネットの集
合Rnotに含まれるサブネットの幹線をトラックに割
り当てるために必要となるトラックをチャネル配線領域
に設定し、移動可能な配線禁止図形の位置を変更した
後、配線処理を続行することにより必要なトラック数を
求めた後に、求めた本数分のトラックを新たに設定した
後、移動可能な配線禁止図形を移動し、全てのネットに
対して再配線を行うことにより、未配線のサブネットを
配線する不足トラック線分の挿入および再配線および終
了判定ステップ(図27のS310E)を含むことを特
徴とするものである。
【0037】本発明の第1の集積回路の配線設計装置
は、集積回路の配線設計における配線領域において、既
に配線層、配線通過位置、形状などの詳細な配線経路又
は回路部品の配置位置が設定してあるような場合に、配
線領域に隣接するセルに属する端子情報及びセルに属す
る配線禁止情報、並びに、端子間の接続情報に基づき、
チャネル配線領域を設定するチャネル配線領域の設定部
(図1の1)と、チャネル配線領域の設定部で設定され
たチャネル配線領域内に存在する端子の位置情報及び端
子間の接続情報に基づき、ネットをサブネットに分割
し、サブネットの集合をネットリストNとするサブネッ
トへの分割部(図1の2)と、チャネル配線領域の設定
部で設定されたチャネル配線領域内に存在する配線禁止
図形の情報およびサブネットへの分割部で求めたネット
リストNに対して、各端子tの到達可能トラックの集合
RT(t)、ネットリストN内の各サブネットnの割り
当て可能トラックの集合AT(n)、各カラムcの通過
可能トラックの集合PT(c)、配線密度D(c)、ス
ルーホール設定可能トラックの集合TH(c)を計算す
るRT,AT,PT,D,THの計算部(図1の3)
と、サブネットへの分割部で求めたネットリストNにお
いて、RT,AT,PT,D,THの計算部で計算した
割り当て可能トラックの集合AT(n)が空集合となる
サブネットnに対して、チャネル配線領域の設定部で設
定されたチャネル配線領域内に存在する配線禁止図形の
中で、サブネットnの配線を妨害している垂直方向通過
禁止図形を回避するための処理を行う垂直方向通過禁止
図形の回避部(図1の4)と、チャネル配線領域の設定
部で設定されたチャネル配線領域内に存在する配線禁止
図形、端子の位置、サブネットへの分割部で求めたネッ
トリストN、垂直方向通過禁止図形の回避部で求めた垂
直方向通過禁止図形を回避する処理の結果に基づき、垂
直方向通過禁止図形と端子に関連する制約を表す禁止制
約グラフGを作成する禁止制約グラフGの作成部(図1
の5)と、禁止制約グラフGの作成部において作成した
禁止制約グラフGに対して、節点及び枝の削除処理を適
用し、Gの部分グラフである部分禁止制約グラフG*を
構成する部分禁止制約グラフG*の構成部(図1の6)
と、部分禁止制約グラフG*の構成部において構成した
部分禁止制約グラフG*の節点重合V*において、節点
集合V*に含まれる節点に対応するネットから成る集合
を、幹線割り当て処理の対象となるサブネットの集合N
*とする幹線割り当て処理の対象となるサブネットの集
合N*の選択部(図1の7)と、部分禁止制約グラフG
*の構成部において構成した部分禁止制約グラフG*を
幹線割り当て処理の対象となるサブネットの集合N*の
選択部において求めたサブネットの集合N*に関する上
下制約関係を表す有向グラフと見なし、サブネットの集
合N*に属するサブネットに対して、チャネル配線領域
の設定部で設定されたチャネル配線領域内に存在する配
線禁止図形及び端子の情報に基づいて、サブネットの幹
線をトラックに割り当てる幹線の割り当て部(図1の
8)と、ネットリストNを(N−N*)に更新し、禁止
制約グラフGから部分禁止制約グラフG*を削除したグ
ラフを禁止制約グラフGとするネットリストNの更新部
(図1の9)と、幹線割り当て部においてN*のすべて
のサブネットがトラックに割り当てられたか否かを判定
し、割り当てられなかったサブネットが存在する場合に
はエラーを出力し、割り当てに成功した場合には、ネッ
トリストNの更新部で更新したネットリストNが空集合
か否かを判定し、空集合であれば、チャネル配線領域の
境界線並びに配線禁止図形の形状及び位置が垂直方向に
可変であり且つ幹線が割り当てられていないトラック
(空きトラック)が存在する場合に、空きトラックを削
除し、チャネル配線領域の境界線の位置の変更と配線禁
止図形の形状の変更と配線禁止図形の移動を行い、チャ
ネル配線領域の高さを縮め、配線処理を終了する配線可
能性判定および終了判定部(図1の10)とを備えて構
成される。
【0038】本発明の第2の集積回路の配線設計装置
は、上記第1の集積回路の配線設計装置において、垂直
方向通過禁止図形の回避部の代わりに、垂直方向通過禁
止図形を回避するために、禁止図形の範囲内に位置する
端子から禁止図形を回避できる位置まで配線を引き出し
新たな端子を設定する端子引き出し配線部(図4の4
A)を含むことを特徴とするものである。
【0039】本発明の第3の集積回路の配線設計装置
は、上記第1の集積回路の配線設計装置において、垂直
方向通過禁止図形の回避部の代わりに、垂直方向通過禁
止図形を回避するため、禁止図形範囲内に位置する端子
を有するサブネットの配線を行い、元のネットに属する
他の端子と接続するために新たな端子を設定するサブネ
ットの前配線部(図6の4B)を含むことを特徴とする
ものである。
【0040】本発明の第4の集積回路の配線設計装置
は、上記第1の集積回路の配線設計装置において、垂直
方向通過禁止図形の回避部の代わりに、垂直方向通過禁
止図形を回避するため、禁止図形範囲内に位置する端子
を有するサブネットに対して、元のネットの配線を行う
ネットの前配線部(図8の4C)を含むことを特徴とす
るものである。
【0041】本発明の第5の集積回路の配線設計装置
は、上記第1、2、3、または4の集積回路の配線設計
装置において、禁止制約グラフGの作成部の代わりに、
チャネル配線領域内に存在する配線禁止図形、端子の位
置、ネットリストN、垂直方向通過禁止図形を回避する
処理の結果に基づき、垂直方向通過禁止図形と端子に関
連する制約を表す禁止制約グラフGを作成する禁止制約
グラフ構築部(図10の51)と、禁止制約グラフ構築
部で作成された禁止制約グラフG内に存在する制約サイ
クルを検出する制約サイクル検出部(図10の52)
と、制約サイクル検出部で検出された制約サイクルを解
消するために、制約サイクルに含まれるネットを分断す
るネットの分断部(図10の53)とを含む禁止制約グ
ラフGの作成およびネットの分断部(図10の5A)を
備えたことを特徴とするものである。
【0042】本発明の第6の集積回路の配線設計装置
は、上記第1、2、3、または4の集積回路の配線設計
装置において、禁止制約グラフGの作成部の代わりに、
チャネル配線領域内に存在する配線禁止図形、端子の位
置、ネットリストN、垂直方向通過禁止図形を回避する
処理の結果に基づき、垂直方向通過禁止図形と端子に関
連する制約を表す禁止制約グラフGを作成する禁止制約
グラフ構築部(図10、12の51)と、禁止制約グラ
フ構築部で作成された禁止制約グラフG内に存在する制
約サイクルを検出する制約サイクル検出部(図10、1
2の52)と、制約サイクル検出部で検出された制約サ
イクルを解消するために、制約サイクルに含まれるネッ
トを分断するネットの分断部(図10、12の53)
と、制約サイクル検出部で検出された制約サイクルの中
で、ネットの分断部において解消できなかった制約サイ
クルに対して、制約サイクルに含まれる節点に対応する
サブネットにジョグを挿入することにより制約サイクル
を解消するサブネットへのジョグ挿入部(図12の5
4)とを含む禁止制約グラフGの作成およびサブネット
へのジョグ挿入部(図12の5B)を備えたことを特徴
とするものである。
【0043】本発明の第7の集積回路の配線設計装置
は、上記第5、または6の集積回路の配線設計装置にお
いて、上記第5の集積回路の配線設計装置の禁止制約グ
ラフGの作成およびネットの分断部(図10の5A)ま
たは上記第6の集積回路の配線設計装置の禁止制約グラ
フGの作成およびサブネットへのジョグ挿入部(図12
の5B)に加えて、配線禁止図形が障害となり1本の幹
線では配線不可能なサブネットを検出し、検出されたサ
ブネットにジョグを挿入することにより禁止制約グラフ
G内のパスを切断するパスの切断部(図14の55)を
含む禁止制約グラフGの作成およびパスの切断部(図1
4の5C)を備えたことを特徴とするものである。
【0044】本発明の第8の集積回路の配線設計装置
は、上記第7の集積回路の配線設計装置において、禁止
制約グラフGの作成およびパスの切断部(図14の5
C)に加えて、幹線の割り当てが可能なトラック数と幹
線をトラックに割り当てなければならないサブネット数
の関係から、ジョグを挿入しなければならないサブネッ
トの候補を選択し、ジョグを挿入する位置を決定するサ
ブネットへのジョグ追加挿入部(図16の56)を含む
禁止制約グラフGの作成およびサブネットへのジョグ追
加挿入部(図16の5D)を備えたことを特徴とするも
のである。
【0045】本発明の第9の集積回路の配線設計装置
は、上記第1、2、3、4、5、6、7、または8の集
積回路の配線設計装置において、配線可能性判定および
終了判定部の代わりに、幹線割り当て部において幹線を
トラックに割り当てることができなかったサブネットの
集合Rnotに含まれるサブネットに対して、未配線処
理を適用する配線可能性判定および未配線処理および終
了判定部(図18の10A)を含むことを特徴とするも
のである。
【0046】本発明の第10の集積回路の配線設計装置
は、上記第1、2、3、4、5、6、7、または8の集
積回路の配線設計装置において、配線可能性判定および
終了判定部の代わりに、幹線割り当て部において幹線を
トラックに割り当てることができなかったサブネットの
集合Rnotに含まれるサブネットに対して、幹線をト
ラックに割り当てるために必要となるトラックをチャネ
ル配線領域に新たに設定する不足トラック数の計算およ
び終了判定部(図20の10B)を含むことを特徴とす
るものである。
【0047】本発明の第11の集積回路の配線設計装置
は、上記第1、2、3、4、5、6、7、または8の集
積回路の配線設計装置において、チャネル配線領域の設
定部の代わりに、ネットリストNに属するネットに接続
する端子の位置並びにチャネルの上下に位置するセルの
内部に存在する配線禁止図形より、チャネル配線領域の
境界を定め、カウンタを0に初期化するチャネル配線領
域の設定およびカウンタの初期化部(図22の1A)を
備え、配線可能性判定および終了判定部の代わりに、幹
線の割り当て部において割り当てることができなかった
サブネットの集合Rnotに含まれるサブネットの幹線
をトラックに割り当てるために必要となるトラックを、
配線禁止図形の位置を変更せずにチャネル配線領域に設
定し、配線処理を続行することにより必要なトラック数
を求めた後に、求めた本数分のトラックを新たに設定し
た後、移動可能な配線禁止図形を移動し、全てのネット
に対して再配線を行うことにより、未配線のサブネット
を配線する不足トラックの挿入および再配線および終了
判定部(図22の10C)とを含むことを特徴とするも
のである。
【0048】本発明の第12の集積回路の配線設計装置
は、上記第11の集積回路の配線設計装置において、不
足トラックの挿入および再配線および終了判定部の代わ
りに、チャネル配線領域にトラックを新たに設定し、移
動可能な配線禁止図形の位置を変更した後、配線処理を
続行することにより、幹線の割り当て部において割り当
てることができなかったサブネットの集合Rnotに含
まれるサブネットの幹線をトラックに割り当てる不足ト
ラック線分の挿入および終了判定部(図24の10D)
を含むことを特徴とするものである。
【0049】本発明の第13の集積回路の配線設計装置
は、上記第11の集積回路の配線設計装置において、不
足トラックの挿入および再配線および終了判定部の代わ
りに、まず、幹線の割り当て部において割り当てること
ができなかったサブネットの集合Rnotに含まれるサ
ブネットの幹線をトラックに割り当てるために必要とな
るトラックをチャネル配線領域に設定し、移動可能な配
線禁止図形の位置を変更した後、配線処理を続行するこ
とにより必要なトラック数を求めた後に、求めた本数分
のトラックを新たに設定した後、移動可能な配線禁止図
形を移動し、全てのネットに対して再配線を行うことに
より、未配線のサブネットを配線する不足トラック線分
の挿入および再配線および終了判定部(図26の10
E)を含むことを特徴とするものである。
【0050】
【作用】本発明の第1の集積回路の配線設計方法では、
第2のステップのサブネットへの分割処理においてネッ
トを2つの端子の集合から成るサブネットへ分割し、サ
ブネットに対する制約を扱うので、1つのサブネットに
対して他のサブネットと関連する制約の数を2つ以下に
抑えることができる。このため、第5のステップで作成
する禁止制約グラフにおいて、サブネットに対応する節
点に接続する枝の内、他のサブネットに対応する節点と
接続する枝の個数は2個以下になる。節点につながる枝
の個数を制限できるため、第6のステップにおいて禁止
制約グラフに適用する探索、削除などの処理を効率良く
行うことが可能である。また、第4のステップの垂直方
向通過禁止図形を回避する処理により、配線禁止図形を
迂回する配線を行うことができる。更に、第10のステ
ップにおいて、配線に不要な空きトラックを削除し、チ
ャネル配線領域の高さを縮めることにより、チャネル配
線領域を最小にすることが可能である。
【0051】本発明の第2の集積回路の配線設計方法で
は、端子引き出しステップにおいて垂直方向通過禁止図
形を回避するために禁止図形の範囲内に位置する端子か
ら引き出し配線を予め行うため、配線禁止図形の配置位
置の状況などにより配線経路が求めるのが困難な場合で
も、後に続く配線処理を複雑にすることなく容易に対処
することが可能である。
【0052】本発明の第3の集積回路の配線設計方法で
は、サブネットの前配線ステップにおいて、垂直方向通
過禁止図形を回避するために禁止図形の範囲内に位置す
る端子に接続するサブネットを予め配線するため、この
ようなサブネットを後に続く配線処理の対象から除外す
ることができる。よって、配線禁止図形の配置位置の状
況などにより配線経路が求めるのが困難なサブネットが
存在する場合でも、配線処理を複雑にすることなく容易
に対処することが可能である。また、サブネットの前配
線ステップで、禁止図形の範囲内に位置する端子に接続
するサブネットの配線処理を他のネットの配線よりも前
に行うことから、サブネットに含まれる端子間の経路が
タイミングに関する制約を満足するような経路を、他の
ネットの経路よりも優先して設定することが可能であ
る。
【0053】本発明の第4の集積回路の配線設計方法で
は、ネットの前配線ステップにおいて、垂直方向通過禁
止図形を回避するために禁止図形の範囲内に位置する端
子に接続するサブネットの元のネット全体を予め配線す
るため、このようなネットのサブネットを後に続く配線
処理の対象から除外することができる。よって、配線禁
止図形の配置位置の状況などにより配線経路が求めるの
が困難なネットが存在する場合でも、配線処理を複雑に
することなく容易に対処することが可能である。また、
ネットの前配線ステップで禁止図形の範囲内に位置する
端子に接続するネットの配線処理を他のネットの配線よ
りも前に行うことから、ネットに含まれる端子間の経路
がタイミングに関する制約を満足するような経路を、他
のネットの経路よりも優先して設定することが可能であ
る。
【0054】本発明の第5の集積回路の配線設計方法で
は、制約サイクル検出ステップで禁止制約グラフに存在
する制約サイクルを検出し、ネットを分断することによ
って制約サイクルを解消しているので、第8のステップ
において、1つのネットの幹線全体を1つのトラックに
割り当てるのではなく、サブネット単位で異なるトラッ
クに割り当てることが可能である。ネットの分断ステッ
プにおいて、ネットに対して、そのネットに含まれる端
子が位置するカラムにおいてのみジョグを挿入してい
る。従って、制約サイクルの解除のために設定しなけれ
ばならないジョグによって増加するスルーホールの個数
を、少なくすることができる。
【0055】本発明の第6の集積回路の配線設計方法で
は、制約サイクル検出ステップで禁止制約グラフに存在
する制約サイクルを検出し、先ずネットの分断ステップ
でネットを分断することによって制約サイクルを解消し
ている。次に、サブネットへのジョグ挿入ステップにお
いて、ネットの分断では解消できなかった制約サイクル
に対してのみサブネットへジョグを挿入して解消する。
ネットに含まれる端子が位置するカラムに対して優先し
てジョグを挿入し、解消できなかった制約サイクルに対
して端子位置以外のカラムでジョグ挿入を行っている。
従って、制約サイクルの解除のために設定しなければな
らないジョグによって増加するスルーホールの個数を、
少なくすることができる。また、ネットの幹線をサブネ
ット単位で異なるトラックに割り当てる方法によっては
解消できなかった制約サイクルが存在する場合でも、第
8のステップにおいてサブネットの幹線を分断して異な
るトラックに割り当てることにより制約サイクルを解消
し、配線処理を行うことが可能である。
【0056】本発明の第7の集積回路の配線設計方法で
は、禁止制約グラフ内に存在するパスにおいて、パスに
含まれる節点に対応するサブネットの幹線をトラックに
割り当てるとき、サブネットに対応する節点の個数分の
トラックが必要であることから、禁止制約グラフに存在
するパスにおいて、パス上の節点に対応するサブネット
の幹線をトラックに割り当てる際に、配線禁止図形のた
めに各サブネットの幹線全体を割り当てる十分なトラッ
クが存在しない場合に、パスの切断ステップにおいてサ
ブネットの幹線を分断し、第8のステップにおいて異な
るトラックに割り当てることによって、存在するだけの
トラック内で配線を完了することができる。また、パス
の切断ステップにおいて、ジョグの挿入が必要なサブネ
ットを、割り当て可能有効トラックの集合の計算によ
り、効率良く求めることが可能である。
【0057】本発明の第8の集積回路の配線設計方法で
は、禁止制約グラフにパスが存在しない場合にも配線禁
止図形によってトラックが分断されているようなチャネ
ル配線領域ではサブネットの幹線をトラックに割り当て
ることが不可能な場合が生ずることから、サブネットへ
のジョグ追加挿入ステップで、各カラムにおいて割り当
て可能なトラックの集合、および、幹線を割り当てなけ
ればならないネットの集合を求め、個数を比較すること
により、ジョグを挿入しなければならないサブネットを
効率良く求めることができる。また、サブネットへのジ
ョグ追加挿入ステップにおいて、禁止制約グラフによっ
て表すことができないような配線禁止図形に関連するト
ラック割り当ての制約を発見し、サブネットにジョグを
挿入することにより、対処することが可能になる。
【0058】本発明の第9の集積回路の配線設計方法で
は、配線可能性判定および未配線処理および終了判定ス
テップにおいて、トラック割り当てができなかったネッ
トに対して未配線処理を適用するため、チャネル配線領
域が固定の場合に、高い配線率を保証することができ
る。
【0059】本発明の第10の集積回路の配線設計方法
では、不足トラック数の計算および終了判定ステップに
おいて、トラック割り当てができなかったネットに対し
て、チャネル配線領域に新たなトラックを必要な本数だ
け挿入することにより、トラック割り当てを可能にする
ため、チャネル配線領域に位置する配線禁止図形の位置
が固定でチャネル配線領域の下辺または上辺の位置が可
変の場合に、高い配線率を保証することができる。ま
た、不足トラック数の計算及び終了判定ステップにおい
て、チャネル配線領域を変更した後では、トラック割り
当て処理が終わっているネットの配線経路の情報をその
まま利用し、割り当てができなかったネットのみを対象
とするため、高速に処理することができる。
【0060】本発明の第11の集積回路の配線設計方法
では、不足トラックの挿入および再配線および終了判定
ステップにおいて、トラック割り当てができなかったネ
ットに対して、チャネル配線領域に新たなトラックを必
要な本数だけ挿入し、チャネル配線領域内の配線禁止図
形の位置を移動した後、最初から配線処理を行うので、
チャネル配線領域に位置する配線禁止図形の位置が可変
でチャネル配線領域の下辺または上辺の位置が可変の場
合に、高い配線率を保証することができる。また、不足
トラックの挿入および再配線および終了判定ステップに
おいて、新たなトラックが設定されたチャネル配線領域
では必要なトラック数が確保できており、最初から再配
線することにより、挿入されるジョグの個数を削減する
ことができる。更に、不足トラックの挿入および再配線
および終了判定ステップにおいて、チャネル配線領域内
に位置する配線禁止図形の位置を固定し、これまで求め
た配線結果の情報をそのまま利用しながら、トラック割
り当てができなかったネットに対して、必要なトラック
の本数を求めているので、高速に不足トラックの本数を
計算できる。
【0061】本発明の第12の集積回路の配線設計方法
では、不足トラック線分の計算および終了判定ステップ
において、トラック割り当てができなかったネットに対
して、チャネル配線領域に新たなトラックを必要な本数
だけ挿入し、チャネル配線領域内の配線禁止図形の位置
を移動した後、最初から配線処理を行うので、チャネル
配線領域に位置する配線禁止図形の位置が可変でチャネ
ル配線領域の下辺または上辺の位置が可変の場合に、高
い配線率を保証することができる。また、不足トラック
線分の挿入および終了判定ステップにおいて、トラック
割り当てができないネットが生じたときに、新たなトラ
ックを挿入した後でチャネル配線領域内に位置する配線
禁止図形の位置を移動しながら必要なトラックの本数を
求めているので、不足トラックの本数を正確に計算でき
る。更に、不足トラック線分の計算および終了判定ステ
ップにおいて、チャネル配線領域を変更した後では、ト
ラック割り当て処理が終わっているネットの配線経路の
情報をそのまま利用し、割り当てができなかったネット
のみを対象とするため、高速に処理することができる。
【0062】本発明の第13の集積回路の配線設計方法
では、不足トラック線分の挿入および再配線および終了
判定ステップにおいて、トラック割り当てができなかっ
たネットに対して、チャネル配線領域に新たなトラック
を必要な本数だけ挿入し、チャネル配線領域内の配線禁
止図形の位置を移動した後、最初から配線処理を行うの
で、チャネル配線領域に位置する配線禁止図形の位置が
可変でチャネル配線領域の下辺または上辺の位置が可変
の場合に、高い配線率を保証することができる。また、
不足トラック線分の挿入および再配線および終了判定ス
テップにおいて、新たなトラックが設定されたチャネル
配線領域では必要なトラック数が確保できており、最初
から再配線することにより、挿入されるジョグの個数を
削減することができる。更に、不足トラック線分の挿入
および再配線および終了判定ステップにおいて、トラッ
ク割り当てができないネットが生じたときに、新たなト
ラックを挿入した後でチャネル配線領域内に位置する配
線禁止図形の位置を移動しながら必要なトラックの本数
を求めているので、不足トラックの本数を正確に計算で
きる。
【0063】本発明の第1の集積回路の配線設計装置で
は、サブネットへの分割部におけるサブネットへの分割
処理においてネットを2つの端子の集合から成るサブネ
ットへ分割し、サブネットに対する制約を扱うので、1
つのサブネットに対して他のサブネットと関連する制約
の数を2つ以下に抑えることができる。このため、禁止
制約グラフGの作成部で作成する禁止制約グラフにおい
て、サブネットに対応する節点に接続する枝の内、他の
サブネットに対応する節点と接続する枝の個数は2個以
下になる。節点につながる枝の個数を制限できるため、
部分禁止制約グラフG*の構築部において禁止制約グラ
フに適用する探索、削除などの処理を効率良く行うこと
が可能である。また、垂直方向通過禁止図形の回避部に
おける垂直方向通過禁止図形を回避する処理により、配
線禁止図形を迂回する配線を行うことができる。更に、
配線可能性判定および終了判定部において、配線に不要
な空きトラックを削除し、チャネル配線領域の高さを縮
めることにより、チャネル配線領域を最小にすることが
可能である。
【0064】本発明の第2の集積回路の配線設計装置で
は、端子引き出し配線部において垂直方向通過禁止図形
を回避するために禁止図形の範囲内に位置する端子から
引き出し配線を予め行うため、配線禁止図形の配置位置
の状況などにより配線経路が求めるのが困難な場合で
も、後に続く配線処理を複雑にすることなく容易に対処
することが可能である。
【0065】本発明の第3の集積回路の配線設計装置で
は、サブネットの前配線部において、垂直方向通過禁止
図形を回避するために禁止図形の範囲内に位置する端子
に接続するサブネットを予め配線するため、このような
サブネットを後に続く配線処理の対象から除外すること
ができる。よって、配線禁止図形の配置位置の状況など
により配線経路が求めるのが困難なサブネットが存在す
る場合でも、配線処理を複雑にすることなく容易に対処
することが可能である。また、サブネットの前配線部に
おいて、禁止図形の範囲内に位置する端子に接続するサ
ブネットの配線処理を他のネットの配線よりも前に行う
ことから、サブネットに含まれる端子間の経路がタイミ
ングに関する制約を満足するような経路を、他のネット
の経路よりも優先して設定することが可能である。
【0066】本発明の第4の集積回路の配線設計装置で
は、ネットの前配線部において、垂直方向通過禁止図形
を回避するために禁止図形の範囲内に位置する端子に接
続するサブネットの元のネット全体を予め配線するた
め、このようなネットのサブネットを後に続く配線処理
の対象から除外することができる。よって、配線禁止図
形の配置位置の状況などにより配線経路が求めるのが困
難なネットが存在する場合でも、配線処理を複雑にする
ことなく容易に対処することが可能である。また、ネッ
トの前配線部において、禁止図形の範囲内に位置する端
子に接続するネットの配線処理を他のネットの配線より
も前に行うことから、ネットに含まれる端子間の経路が
タイミングに関する制約を満足するような経路を、他の
ネットの経路よりも優先して設定することが可能であ
る。
【0067】本発明の第5の集積回路の配線設計装置で
は、制約サイクル検出部で禁止制約グラフに存在する制
約サイクルを検出し、ネットを分断することによって制
約サイクルを解消しているので、幹線の割り当て部にお
いて、1つのネットの幹線全体を1つのトラックに割り
当てるのではなく、サブネット単位で異なるトラックに
割り当てることが可能である。ネットの分断部におい
て、ネットに対して、そのネットに含まれる端子が位置
するカラムにおいてのみジョグを挿入している。従っ
て、制約サイクルの解除のために設定しなければならな
いジョグによって増加するスルーホールの個数を、少な
くすることができる。
【0068】本発明の第6の集積回路の配線設計装置で
は、制約サイクル検出部で禁止制約グラフに存在する制
約サイクルを検出し、先ずネットの分断部でネットを分
断することによって制約サイクルを解消している。次
に、サブネットへのジョグ挿入部において、ネットの分
断部では解消できなかった制約サイクルに対してのみサ
ブネットへジョグを挿入して解消する。ネットに含まれ
る端子が位置するカラムに対して優先してジョグを挿入
し、解消できなかった制約サイクルに対して端子位置以
外のカラムでジョグ挿入を行っている。従って、制約サ
イクルの解除のために設定しなければならないジョグに
よって増加するスルーホールの個数を、少なくすること
ができる。また、ネットの幹線をサブネット単位で異な
るトラックに割り当てる方法によっては解消できなかっ
た制約サイクルが存在する場合でも、サブネットへのジ
ョグ挿入部でサブネットの幹線を分断した後に幹線の割
り当て部において異なるトラックに割り当てることによ
り制約サイクルを解消し、配線処理を行うことが可能で
ある。
【0069】本発明の第7の集積回路の配線設計装置で
は、禁止制約グラフ内に存在するパスにおいて、パスに
含まれる節点に対応するサブネットの幹線をトラックに
割り当てるとき、サブネットに対応する節点の個数分の
トラックが必要であることから、禁止制約グラフに存在
するパスにおいて、パス上の節点に対応するサブネット
の幹線をトラックに割り当てる際に、配線禁止図形のた
めに各サブネットの幹線全体を割り当てる十分なトラッ
クが存在しない場合に、パスの切断部においてサブネッ
トの幹線を分断し、幹線の割り当て部において異なるト
ラックに割り当てることによって、存在するだけのトラ
ック内で配線を完了することができる。また、パスの切
断部において、ジョグの挿入が必要なサブネットを、割
り当て可能有効トラックの集合の計算により、効率良く
求めることが可能である。
【0070】本発明の第8の集積回路の配線設計装置で
は、禁止制約グラフにパスが存在しない場合にも配線禁
止図形によってトラックが分断されているようなチャネ
ル配線領域ではサブネットの幹線をトラックに割り当て
ることが不可能な場合が生ずることから、サブネットへ
のジョグ追加挿入部で、各カラムにおいて割り当て可能
なトラックの集合、および、幹線を割り当てなければな
らないネットの集合を求め、個数を比較することによ
り、ジョグを挿入しなければならないサブネットを効率
良く求めることができる。また、サブネットへのジョグ
追加挿入部において、禁止制約グラフによって表すこと
ができないような配線禁止図形に関連するトラック割り
当ての制約を発見し、サブネットにジョグを挿入するこ
とにより、対処することが可能になる。
【0071】本発明の第9の集積回路の配線設計装置で
は、配線可能性判定および未配線処理および終了判定部
において、トラック割り当てができなかったネットに対
して未配線処理を適用するため、チャネル配線領域が固
定の場合に、高い配線率を保証することができる。
【0072】本発明の第10の集積回路の配線設計装置
では、不足トラック数の計算および終了判定部におい
て、トラック割り当てができなかったネットに対して、
チャネル配線領域に新たなトラックを必要な本数だけ挿
入することにより、トラック割り当てを可能にするた
め、チャネル配線領域に位置する配線禁止図形の位置が
固定でチャネル配線領域の下辺または上辺の位置が可変
の場合に、高い配線率を保証することができる。また、
不足トラック数の計算及び終了判定部において、チャネ
ル配線領域を変更した後では、トラック割り当て処理が
終わっているネットの配線経路の情報をそのまま利用
し、割り当てができなかったネットのみを対象とするた
め、高速に処理することができる。
【0073】本発明の第11の集積回路の配線設計装置
では、不足トラックの挿入および再配線および終了判定
部において、トラック割り当てができなかったネットに
対して、チャネル配線領域に新たなトラックを必要な本
数だけ挿入し、チャネル配線領域内の配線禁止図形の位
置を移動した後、最初から配線処理を行うので、チャネ
ル配線領域に位置する配線禁止図形の位置が可変でチャ
ネル配線領域の下辺または上辺の位置が可変の場合に、
高い配線率を保証することができる。また、不足トラッ
クの挿入および再配線および終了判定部において、新た
なトラックが設定されたチャネル配線領域では必要なト
ラック数が確保できており、最初から再配線することに
より、挿入されるジョグの個数を削減することができ
る。更に、不足トラックの挿入および再配線および終了
判定部において、チャネル配線領域内に位置する配線禁
止図形の位置を固定し、これまで求めた配線結果の情報
をそのまま利用しながら、トラック割り当てができなか
ったネットに対して、必要なトラックの本数を求めてい
るので、高速に不足トラックの本数を計算できる。
【0074】本発明の第12の集積回路の配線設計装置
では、不足トラック線分の計算および終了判定部におい
て、トラック割り当てができなかったネットに対して、
チャネル配線領域に新たなトラックを必要な本数だけ挿
入し、チャネル配線領域内の配線禁止図形の位置を移動
した後、最初から配線処理を行うので、チャネル配線領
域に位置する配線禁止図形の位置が可変でチャネル配線
領域の下辺または上辺の位置が可変の場合に、高い配線
率を保証することができる。また、不足トラック線分の
計算および終了判定部において、トラック割り当てがで
きないネットが生じたときに、新たなトラックを挿入し
た後でチャネル配線領域内に位置する配線禁止図形の位
置を移動しながら必要なトラックの本数を求めているの
で、不足トラックの本数を正確に計算できる。更に、不
足トラック線分の挿入および終了判定部において、チャ
ネル配線領域を変更した後では、トラック割り当て処理
が終わっているネットの配線経路の情報をそのまま利用
し、割り当てができなかったネットのみを対象とするた
め、高速に処理することができる。
【0075】本発明の第13の集積回路の配線設計装置
では、不足トラック線分の挿入および再配線および終了
判定部において、トラック割り当てができなかったネッ
トに対して、チャネル配線領域に新たなトラックを必要
な本数だけ挿入し、チャネル配線領域内の配線禁止図形
の位置を移動した後、最初から配線処理を行うので、チ
ャネル配線領域に位置する配線禁止図形の位置が可変で
チャネル配線領域の下辺または上辺の位置が可変の場合
に、高い配線率を保証することができる。また、不足ト
ラック線分の挿入および再配線および終了判定部におい
て、新たなトラックが設定されたチャネル配線領域では
必要なトラック数が確保できており、最初から再配線す
ることにより、挿入されるジョグの個数を削減すること
ができる。更に、不足トラック線分の挿入および再配線
および終了判定部において、トラック割り当てができな
いネットが生じたときに、新たなトラックを挿入した後
でチャネル配線領域内に位置する配線禁止図形の位置を
移動しながら必要なトラックの本数を求めているので、
不足トラックの本数を正確に計算できる。
【0076】
【発明の実施の形態】先ず、本発明の実施の形態を説明
するために必要な用語を定義する。
【0077】以降では、説明の簡略化のため、2層の配
線層M1、M2を仮定する。配線層M1、M2はそれぞ
れ水平方向、垂直方向の配線に用いる。M1層の配線と
M2層の配線は、配線の交点にスルーホールを設けるこ
とにより結線可能である。3層以上の配線層を用いるチ
ャネル配線処理に対しては、以下で定義するトラックの
集合などを各配線層ごとに計算し、この結果を配線処理
の各ステップで用いることにより本発明の配線方式を適
用できる。
【0078】チャネル配線領域内に存在する配線禁止図
形は配線層M1あるいは配線層M2より成る。各禁止図
形の形状は矩形とする。一般のXY多角形(水平線と垂
直線のみを境界に持つ多角形)はチャネル配線処理前に
予め矩形に分割されているものとする。配線処理では分
割された結果の矩形状の配線禁止図形を扱う。配線層M
1、M2の配線禁止図形をそれぞれ水平方向通過禁止図
形、垂直方向通過禁止図形と呼ぶ。
【0079】チャネル配線領域内部において、水平方向
の配線が通過することを想定した水平線の位置をトラッ
クと呼ぶ。トラックは配線層ごとに設定される。隣接す
るトラックの間隔は半導体プロセス技術に基づくデザイ
ンルールを考慮して定められる。チャネル配線領域の上
下辺(領域の上側と下側の境界線)を構成するセル列ま
たはマクロセルの配置位置が固定されている場合には、
配線処理中にトラックの位置並びにトラックの本数が変
化することはない。セル列またはマクロセルの配置位置
が可変の場合には、チャネル配線領域に対する配線処理
過程において、トラックの位置の移動並びにトラックの
挿入あるいは削除を行うことが可能である。トラックが
挿入されるときは上下に位置するセルが離れる方向に移
動し、逆にトラックが削除されるときにはセルが近づく
方向に移動する。以降では、説明の便宜上、ネットの幹
線をトラックへ割り当てる際にチャネル配線領域の上側
のトラックから下方向へ処理して行く場合を考える。こ
こで述べる処理は下側のトラックから上方向へ処理する
場合にも同様に適用可能である。
【0080】垂直方向の配線が通過することを想定した
垂直線の位置をカラムと呼ぶ。チャネル配線領域に面し
ている端子はカラム上に位置している。カラム上にない
端子が存在する場合には、チャネル配線処理前に、端子
の近くのカラムまで配線を行い、その位置を新たな端子
として考える。
【0081】カラムの上方と下方に位置する端子が属す
るネットの間には、幹線をトラックに割り当てる際に上
下の位置関係に関する制約が生じる。今、カラムcの上
方と下方に位置する端子が属するネットをそれぞれn、
n′とする。カラムc上において、ネットnの配線とネ
ットn′の配線を短絡させないために、ネットnの幹線
はネットn′の幹線よりも上側のトラックに割り当てら
れなければならない。このようなネットの幹線をトラッ
クへ割り当てる際に要請される位置に関する制約を上下
制約と呼ぶ。
【0082】端子tから垂直線によって、配線禁止図形
によって妨害されることなく、到達できるトラックを端
子tの到達可能トラックと呼ぶ。これは、端子tが位置
するカラムにおいて、端子tからチャネル中央に向う方
向に垂直方向通過禁止図形に到達するまで垂直線を引く
とき、垂直線と交差するトラックである。但し、水平方
向通過禁止図形内で交差するトラックを除く。端子tの
到達可能トラックの集合をRT(t)で表す。図28
(a)に到達可能トラックの例を示す。
【0083】ネットnの幹線をトラックに割り当てる際
に、ジョグを挿入することなく(幹線を途中で折り曲げ
ることなく1本の水平線の幹線で配線可能)且つ配線禁
止図形による障害を受けることなく幹線を割り当て可能
なトラックを、ネットnの割り当て可能トラックと呼
ぶ。ネットnの割り当て可能トラックの集合をAT
(n)で表す。AT(n)が空集合ならば、ネットnを
サブネットに分割し配線禁止図形を迂回する必要があ
る。図28(b)にネットn={t1、t2}の割り当
て可能トラックの例を示す。
【0084】カラムcと交差するトラックにおいて、交
点が水平方向禁止図形に含まれていないトラックをカラ
ムcの通過可能トラックと呼び、カラムcの通過可能ト
ラックの集合をPT(c)で表す。図28(a)に例を
示す。
【0085】カラムc上に端子を持つネット及びカラム
cをまたいで配線しなければならないネットの数をカラ
ムcの配線密度と呼ぶ。これは、カラムcにおける配線
に必要なトラック数の下限に対応する。カラムcの配線
密度をD(c)で表す。
【0086】カラムcと交差するトラックにおいて、交
点にスルーホールを設定できるトラックをカラムcのス
ルーホール設定可能トラックと呼ぶ。但し、カラムcに
端子tが位置する場合、端子tからの配線を可能にする
ために、RT(t)に属するトラックの中で端子tに最
も近いトラックを除く。交点が水平方向通過禁止図形お
よび垂直方向通過禁止図形のいずれにも含まれていない
トラックに対応するカラムcのスルーホール設定可能ト
ラックの集合をTH(c)で表す。図28(a)に例を
示す。
【0087】ネットを端子の順序に基づいて部分集合に
分割することを考える。各部分集合をサブネットと呼
ぶ。ネットnに含まれる端子をt(1)、t(2)、
…、t(i)、t(i+1)、…、t(|n|)とす
る。端子tのx座標をx(t)で表すとき、x(t
(1))≦x(t(2))≦…≦x(t(i))≦x
(t(i+1))≦…≦x(t(|n|))であるとす
る。このとき、ネットnを(|n|−1)個のサブネッ
トsn (i)={t(i)、t(i+1)}(i=
1、2、…、|n|−1)に分割する。端子t(i)の
x座標x(t(i))と端子t(i+1)のx座標x
(t(i+1))の範囲をサブネットsn (i)の区
間と呼ぶ。サブネットsn (i)の幹線とサブネット
sn (i+1)の幹線が異なるトラックに割り当てら
れるとき、ネットnは位置x(t(i+1))で分断さ
れると言う。
【0088】カラムcの上下に端子を持つネットにおい
て、カラムc上に垂直方向通過禁止図形が存在しない場
合には垂直線状の配線を用いて容易にカラムcの上下の
端子を結線することが可能である。よって、配線処理の
前処理等により、このような端子対は配線済みであると
仮定し、ネットから削除されているとする。これに伴
い、カラムcはチャネル配線問題を考える上で無視でき
る。但し、このようなネットをサブネットへ分割する場
合にはカラムcの上下に位置する端子を考慮する。ま
た、3層以上の配線層を用いる場合に、垂直方向の配線
に2層以上の配線層が使用できる。このような場合、カ
ラムcにおいては垂直線状の配線に使用した配線層のみ
を無視する。
【0089】以降では、特に明記しない限り、配線する
場合の単位をサブネットとする。上で定義した用語に関
しても、サブネットに対して定義するものとする。
【0090】サブネット及び垂直方向通過禁止図形に節
点を対応させ、サブネットの端子同士並びに端子と垂直
方向通過禁止図形の位置関係から導かれる上下制約を有
向枝によって表す禁止制約グラフG=(V、E U
F)を導入する。禁止制約グラフGの節点v∈Vはチャ
ネル配線領域内に存在する垂直方向通過禁止図形並びに
サブネットに対応する。図面上では、垂直方向通過禁止
図形に対応する節点を矩形によって表す。有向枝の集合
Fはサブネット間の関係を表す。節点uに対応するサブ
ネットと節点vに対応するサブネットが同一のネットか
ら分割されたものであり且つ隣接している場合、有向枝
e=(u、v)∈Fを設ける。この枝を2重枝と呼び、
図面上は2重線によって表す。有向枝e∈Eは上下制約
関係を表す。次の条件a)〜c)のいづれかの場合に有
向枝e=(u、v)を設ける。
【0091】a)カラムにおいて、節点uに対応するサ
ブネットの端子が上側、節点vに対応するサブネットの
端子が下側に位置し、カラム上には垂直方向通過禁止図
形が存在しない。
【0092】b)垂直方向通過禁止図形uの下側にサブ
ネットvの端子が位置する。ここで図形の範囲(図形の
左辺と右辺によって定義される区間)内に端子が含まれ
ている。
【0093】c)垂直方向通過禁止図形vの上側にサブ
ネットuの端子が位置する。ここで図形の範囲内に端子
が含まれている。
【0094】禁止制約グラフ内に2重枝(u、v)が存
在する場合、幹線のトラック割り当て処理において、節
点u、vに対応するサブネットの幹線が必ず同一のトラ
ックに割り当てられることを表している。但し、2重枝
が存在しない場合でも、他のサブネットの幹線が割り当
てられるトラックの状況により、同一のトラックに割り
当てられる可能性はある。以降では、特に明記しない限
り、サブネット及び配線禁止図形とそれに対応する禁止
制約グラフの節点とは同じ記号で表すものとする。
【0095】図29(a)のチャネル配線領域に関する
禁止制約グラフを図29(b)に示す。ここで、ネット
リストN={n1、n2、n3、n4}、各ネットはn
1={t2、t3、t6}、n2={t1、t4}、n
3={t5、t7}、n4={t8、t9、t10}で
ある。ネットn1、n4はそれぞれサブネットsn1
={t6、t2}とsn1 2={t2、t3}、sn
1={t8、t9}とsn4 2={t9、t1
0}に分割される。sn1 1に対応する節点とsn1
2に対応する節点の間、及び、sn4 1に対応する
節点とsn4 2に対応する節点の間には2重枝が存在す
る。上下制約に関する有向枝は、条件a)より、ネット
n2に対応する節点からサブネットsn1 1に対応す
る節点へ、ネットn3に対応する節点からサブネットs
n4 2に対応する節点へ有向枝を設ける。条件b)よ
り、垂直方向通過禁止図形Hに対応する節点からネット
n3、サブネットsn4 1、sn4 2に対応するそ
れぞれの節点へ有向枝を設ける。同様に、条件c)よ
り、サブネットsn1 1、sn1 2、ネットn2に
対応するそれぞれの節点から垂直方向通過禁止図形Hに
対応する節点へ有向枝を設ける。
【0096】なお、図29(a)において、11はチャ
ネル配線領域の上側の境界、12はチャネル配線領域の
下側の境界を示す。
【0097】(1)本発明の第1の実施の形態の説明 (1−1)構成の説明 本発明の第1の実施の形態の構成について図面を参照し
て詳細に説明する。
【0098】図1を参照すると、本発明の第1の実施の
形態の構成は、集積回路の配線設計における配線領域に
おいて、既に配線層、配線通過位置、形状などの詳細な
配線経路又は回路部品の配置位置が設定してあるような
場合に、配線領域に隣接するセルに属する端子情報及び
セルに属する配線禁止情報、並びに、端子間の接続情報
に基づき、チャネル配線領域を設定するチャネル配線領
域の設定部1と、チャネル配線領域の設定部1で設定さ
れたチャネル配線領域内に存在する端子の位置情報及び
端子間の接続情報に基づき、ネットをサブネットに分割
し、サブネットの集合をネットリストNとするサブネッ
トへの分割部2と、チャネル配線領域の設定部1で設定
されたチャネル配線領域内に存在する配線禁止図形の情
報およびサブネットへの分割部2で求めたネットリスト
Nに対して、各端子tの到達可能トラックの集合RT
(t)、ネットリストN内の各サブネットnの割り当て
可能トラックの集合AT(n)、各カラムcの通過可能
トラックの集合PT(c)、配線密度D(c)、スルー
ホール設定可能トラックの集合TH(c)を計算するR
T、AT、PT、D、THの計算部3と、サブネットへ
の分割部2で求めたネットリストNにおいて、RT、A
T、PT、D、THの計算部3で計算した割り当て可能
トラックの集合AT(n)が空集合となるサブネットn
に対して、チャネル配線領域の設定部1で設定されたチ
ャネル配線領域内に存在する配線禁止図形の中で、サブ
ネットnの配線を妨害している垂直方向通過禁止図形を
回避するための処理を行う垂直方向通過禁止図形の回避
部4と、チャネル配線領域の設定部1で設定されたチャ
ネル配線領域内に存在する配線禁止図形、端子の位置、
サブネットへの分割部2で求めたネットリストN、垂直
方向通過禁止図形の回避部4で求めた垂直方向通過禁止
図形を回避する処理の結果に基づき、垂直方向通過禁止
図形と端子に関連する制約を表す禁止制約グラフGを作
成する禁止制約グラフGの作成部5と、禁止制約グラフ
Gの作成部5において作成した禁止制約グラフGに対し
て、節点及び枝の削除処理を適用し、Gの部分グラフで
ある部分禁止制約グラフG*=(V*、E*)を構成す
る部分禁止制約グラフG*の構成部6と、部分禁止制約
グラフG*の構成部6において構成した部分禁止制約グ
ラフG*の節点集合V*において、節点集合V*に含ま
れる節点に対応するネットから成る集合を、幹線割り当
て処理の対象となるネット集合N*とする幹線割り当て
処理の対象となるサブネットの集合N*の選択部7と、
部分禁止制約グラフG*の構成部6において構成した部
分禁止制約グラフG*を幹線割り当て処理の対象となる
サブネットの集合N*の選択部7において求めたサブネ
ット集合N*に関する上下制約関係を表す有向グラフと
見なし、集合N*に属するサブネットに対して、チャネ
ル配線領域の設定部1で設定されたチャネル配線領域内
に存在する配線禁止図形及び端子の情報に基づいて、サ
ブネットの幹線をトラックに割り当てる幹線の割り当て
部8と、ネットリストNを(N−N*)に更新し、禁止
制約グラフGから部分禁止制約グラフG*を削除したグ
ラフを禁止制約グラフGとするネットリストNの更新部
9と、幹線の割り当て部8においてN*のすべてのサブ
ネットがトラックに割り当てられたか否かを判定し、割
り当てられなかったサブネットが存在する場合にはエラ
ーを出力し、割り当てに成功した場合には、ネットリス
トNの更新部9で更新したネットリストNが空集合か否
かを判定し、空集合であれば、チャネル配線領域の境界
線並びに配線禁止図形の形状及び位置が垂直方向に可変
であり且つ幹線が割り当てられていないトラック(空き
トラック)が存在する場合に、空きトラックを削除し、
チャネル配線領域の境界線の位置の変更と配線禁止図形
の形状の変更と配線禁止図形の移動を行い、チャネル配
線領域の高さを縮め、配線処理を終了する配線可能性判
定および終了判定部10とを備える。
【0099】(1−2)動作の説明 本発明の第1の実施の形態の動作について図面を参照し
て説明する。
【0100】図2は本発明の第1の実施の形態を表した
処理の概要を示すフロー図である。次のステップS30
1〜S310で配線処理を行う。
【0101】S301(チャネル配線領域の設定):ネ
ットリストNに属するネットに接続する端子の位置並び
にチャネルの上下に位置するセルの内部に存在する配線
禁止図形より、チャネル配線領域の境界を定める。
【0102】S302(サブネットへの分割):ネット
をサブネットに分割し、サブネットの集合をネットリス
トNとする。分割されなかったネットも1つのサブネッ
トと見なす。
【0103】S303(RT、AT、PT、D、THの
計算):各端子tの到達可能トラックの集合RT
(t)、各サブネットnの割り当て可能トラックの集合
AT(n)、各カラムcの通過可能トラックの集合PT
(c)、配線密度D(c)、スルーホール設定可能トラ
ックの集合TH(c)を計算する。
【0104】S304(垂直方向通過禁止図形の回
避):割り当て可能トラックの集合AT(n)が空集合
となるサブネットnに対して、配線を妨害している垂直
方向通過禁止図形を回避するための処理を行う。
【0105】S305(禁止制約グラフGの作成):禁
止制約グラフGを作成する。
【0106】S306(部分禁止制約グラフG*の構
成):禁止制約グラフGに対して、節点及び枝の削除処
理を適用し、部分グラフG*=(V*、E*)を構成す
る。この部分グラフを部分禁止制約グラフG*とする。
【0107】S307(幹線割り当て処理対象となるサ
ブネットの集合N*の選択):部分禁止制約グラフG*
の節点集合V*において、節点集合V*に含まれる節点
に対応するサブネットから成る集合を、幹線割り当て処
理の対象となるサブネット集合N*とする。
【0108】S308(幹線の割り当て):部分禁止制
約グラフG*をサブネット集合N*に関する上下制約関
係を表す有向グラフとする。集合Rnotを空集合に設
定する。集合N*に属するサブネットに対して、部分禁
止制約グラフG*に基づいて、幹線をトラックに割り当
てる。
【0109】集合N*のすべてのサブネットの幹線をト
ラックへ割り当てることができなかった場合、割り当て
ができなかったサブネットの集合をRnotとし、S3
09へ。
【0110】S309(ネットリストNの更新):ネッ
トリストNを(N−N*)とする。禁止制約グラフGか
ら部分禁止制約グラフG*を削除したグラフを禁止制約
グラフGとする。
【0111】S310(配線可能性判定および終了判
定):では、Rnotが空集合でなければ、チャネル配
線領域に対する配線が不可能であることを出力し、終了
する。Rnotが空集合ならば、ネットリストNが空集
合か否かを判定し、空集合でなければS305へ、空集
合であれば、チャネル配線領域の境界線並びに配線禁止
図形の形状及び位置が垂直方向に可変であり且つ幹線が
割り当てられていないトラック(空きトラック)が存在
する場合に、空きトラックを削除し、チャネル配線領域
の境界線の位置の変更と配線禁止図形の形状の変更と配
線禁止図形の移動を行い、チャネル配線領域の高さを縮
め、配線処理を終了する。
【0112】ステップS304とS306について詳細
を説明する。
【0113】S304で、割り当て可能トラックの集合
AT(n)が空集合となるサブネットnに対して、妨害
している禁止図形を迂回するような配線を可能にするた
めに、ネットnをサブネットに再分割する。ネットn=
{t1、t2}に対して、配線を妨害している禁止図形
の位置や個数に伴い、図30に示すような迂回配線の形
態の候補(a)〜(c)が考えられる。候補(a)及び
(c)に関してはネットnを2つのサブネットに分割す
ることによって、迂回配線を可能にできる。また、候補
(b)に関しては、3つのサブネットに分割することに
よって、迂回配線が可能になる。同様に、ネットnの区
間内に配線禁止図形が多数存在する場合には、考えられ
る配線形態の候補に基づき、ネットnを複数のサブネッ
トに分割することにより、配線禁止図形を迂回する配線
が可能となる。ここでは、説明の簡単化のため、配線禁
止図形をまとめて1つの塊として捉え、その左側または
右側を迂回するような配線の形態のみ(候補(a)及び
(c))について考える。
【0114】ネットnの配線が配線禁止図形Rを迂回す
る方向および迂回する配線に用いる垂直線分を配置する
カラムcは、評価関数F0に基づいて選択する。評価関
数F0は次の〜の値を考慮して関数の値を決める。
【0115】迂回する配線の長さLenD カラムcに位置するネットnの端子数NumN カラムcに位置する他のネットの端子数NumO TH(c)の値 関数F0を、 F0=−α・LenD+β・NumN−γ・NumO+
δ・TH(c) とする。ここで、α、β、γ、δはいずれも非負定数で
ある。α、β、γ、δの値の大小により、上の〜の
項目に優先順位を設定することが可能である。例えば、
α>β>γ>δとし、それぞれの差を十分に大きな値に
なるように設定すれば、を最優先とし、以下から
へ優先順序を付けた評価関数にすることができる。
【0116】垂直方向通過禁止図形(又は、禁止図形の
塊)Rの範囲内のカラムにおいて、禁止図形の上側と下
側に端子を持つネットnに関しては、次のようなサブネ
ットへの分割を行う。ネットnをn={t(i)|i=
1、2、…、|n|}とし、x(t(i))≦x(t
(i+1))、1≦i≦|n|−1とする。垂直方向通
過禁止図形Rの範囲内に位置し且つチャネル配線領域の
上辺に位置する端子の列を、t(a(1))、t(a
(2))、…、t(a(p))とする。垂直方向通過禁
止図形Rの範囲内に位置し且つチャネル配線領域の下辺
に位置する端子の列を、t(b(1))、t(b
(2))、…、t(b(q))とする。ここで、 x(t(a(i)))≦x(t(a(i+1)))、1
≦i≦p−1 および、 x(t(b(i)))≦x(t(b(i+1)))、1
≦i≦q−1 である。また、垂直方向通過禁止図形Rの左側に位置す
るネットnの端子の中で最右に位置する端子をt(L)
とし、垂直方向通過禁止図形Rの右側に位置する端子ネ
ットnの端子の中で最左に位置する端子をt(R)とす
る。
【0117】いま、評価関数F0により、x(t
(L))<x(c)<min{x(t(a(1)))、
x(t(b(1)))}を満たすカラムcが選択された
場合に、ネットnをサブネットに分割することについて
考える。他のカラムが選択された場合も同様に考えるこ
とができる。このとき、ネットnを次の(1)〜(7)
のようにサブネットに分割する(図31参照)。
【0118】 (1) sn (k)={t(k)、t(k+1)}、 1≦k≦L−1 (2) x(t(a(1)))≦x(t(b(1)))
のとき、 sn (L)={t(L)、t(a(1))} そうでないとき、sn (L)={t(L)、t(b
(1))} (3) sn (L)* 1={t*、t(a
(1))} sn (L)* 2={t*、t(b(1))} (4) sn (i) a={t(a(i))、t(a
(i+1))}、 1≦k≦p−1 (5) sn (i) b={t(b(i))、t(b
(i+1))}、 1≦k≦q−1 (6) x(t(a(p)))≦x(t(b(q)))
のとき、 sn (R)={t(b(q))、t(R)} そうでないとき、sn (R)={t(a(p))、t
(R)} (7) sn (i+1)={t(i)、t(i+
1)}、 R≦i≦|n|−1 端子t*は、迂回配線で用いられる垂直線分を表すため
に導入した仮想端子である。
【0119】再分割した各サブネットに関して、割り当
て可能なトラックの集合ATを再計算する。
【0120】迂回配線を表すために行ったサブネット分
割において、同一のネットから分割されたサブネットの
幹線が同一のトラックに割り当て可能な場合には、ステ
ップS308の幹線の割り当て処理によって、同一のト
ラックに割り当てられる。
【0121】また、一部の既配線を含むサブネットに対
して、配線禁止図形を迂回する配線を行う場合には、仮
想端子t*の位置によって、冗長な配線経路を生じるこ
とが考えられる。このような場合には、仮想端子t*を
設定するときに、冗長な配線経路およびそれに対応する
配線禁止図形を削除する。
【0122】ステップS306での部分禁止制約グラフ
の構成の処理フロー図を図3に示す。次のステップS3
061〜S3064により行う。
【0123】S3061(仮想節点TOPの導入):禁
止制約グラフG=(V、E)に仮想節点TOPを設け
る。節点集合Vの中で、入る方向の有向枝を持たない節
点の集合をVoとする。Voにサブネットに対応する節
点が存在しないとき、VをV−Voとし、Vo内の各節
点から出る有向枝をEから削除する。これをVoがサブ
ネットに対応する節点が含まれるまで繰り返す。Vo内
にサブネットに対応する節点が含まれるとき、Vo内の
各節点へ仮想節点TOPから有向枝を設ける。節点の集
合Vrを空集合に初期化する。
【0124】S3062(Vrの計算):仮想節点TO
Pを始点する幅優先探索を適用する。探索する各節点v
において、節点vが配線禁止図形に対応する節点なら
ば、節点vから出る方向の有向枝をすべて削除する。削
除した有向枝の終点の集合をVrに加える。
【0125】S3063(Grの構成):Vrに含まれ
る各節点を始点とする幅優先探索を適用し、探索した節
点及び枝をGより削除する。削除後のグラフをGrとす
る。
【0126】S3064(部分グラフG*の構成):G
rにおいて仮想節点TOPより幅優先探索を適用する。
探索する節点の集合をV′とする。V′から配線禁止図
形に対応する節点の集合と仮想節点TOPを除いた集合
をV*とする。V*によって導出されるGの部分グラフ
をG*=(V*、E*)とする。ここで、V*に含まれ
る節点はいずれもネットまたはサブネットに対応する節
点であり、配線禁止図形に対応する節点は存在しない。
E*は禁止制約グラフGの枝集合の部分集合である。枝
eが集合E*に属するとき且つそのときに限り枝eの両
端の節点が共に集合V*に含まれる。
【0127】(1−3)効果の説明 本発明の第1の実施の形態の効果について説明する。
【0128】本発明の第1の実施の形態は、サブネット
への分割処理においてネットを2つの端子の集合から成
るサブネットへ分割し、サブネットに対する制約を扱う
ので、1つのサブネットに対して他のサブネットと関連
する制約の数を2つ以下に抑えることができる。このた
め、禁止制約グラフにおいて、サブネットに対応する節
点に接続する枝の内、他のサブネットに対応する節点と
接続する枝の個数は2個以下になる。節点につながる枝
の個数を制限できるため、禁止制約グラフに適用する探
索、削除などの処理を効率良く行うことが可能である。
また、垂直方向通過禁止図形を回避する処理により、従
来の方法では配線不可能であったチャネル配線領域に対
して、配線を行うことができる。更に、チャネル配線領
域の境界線並びに配線禁止図形の形状及び位置が垂直方
向に可変であり且つ幹線が割り当てられていないトラッ
ク(空きトラック)が存在する場合に、不要な空きトラ
ックを削除し、チャネル配線領域の高さを縮めることに
より、チャネル配線領域を最小にすることが可能であ
る。
【0129】(2)本発明の第2の実施の形態の説明 (2−1)構成の説明 本発明の第2の実施の形態の構成について図面を参照し
て詳細に説明する。
【0130】図4を参照すると、本発明の第2の実施の
形態の構成は、図1に示された第1の実施の形態におけ
る垂直方向通過禁止図形の回避部4を、端子引き出し配
線部4Aに変更した点で異なる。
【0131】端子引き出し配線部4Aは、垂直方向通過
禁止図形を回避するために、禁止図形の範囲内に位置す
る端子から禁止図形を回避できる位置まで配線を引き出
し新たな端子を設定する。
【0132】(2−2)動作の説明 本発明の第2の実施の形態の動作を図面を参照して詳細
に説明する。
【0133】図5で示される第2の実施の形態の動作の
ステップS301〜S303、S305〜S310は、
第1の実施の形態の各ステップと同一のため、説明は省
略する。
【0134】S304A(端子引き出し配線):割り当
て可能トラックの集合AT(n)が空集合となるサブネ
ットnに対して、他のネットの配線処理に先立ち、障害
となっていた禁止図形の範囲内に位置する端子tから禁
止図形の範囲外の点pまで、迷路法、線分探索法などの
未配線処理を用いて配線を行う。配線した経路は、使用
している配線層に基づき、水平方向通過禁止図形並びに
垂直方向通過禁止図形として登録する。点pに新たに端
子t*を設ける。例えば、禁止図形に最も近いカラムと
配線経路との交点をpとする。サブネットnの端子tを
削除し新端子t*を加えたものをサブネットnとする。
各サブネットに対して割り当て可能トラックの集合AT
を再計算する。
【0135】また、一部の既配線を含むサブネットに対
して、配線禁止図形を迂回する配線を行う場合には、仮
想端子t*の位置によって、冗長な配線経路を生じるこ
とが考えられる。このような場合には、仮想端子t*を
設定するときに、冗長な配線経路およびそれに対応する
配線禁止図形を削除する。
【0136】(2−3)効果の説明 本発明の第2の実施の形態の効果について説明する。
【0137】本発明の第2の実施の形態は、垂直方向通
過禁止図形を回避するために禁止図形の範囲内に位置す
る端子から引き出し配線を予め行うため、配線禁止図形
の配置位置の状況などにより配線経路が求めるのが困難
な場合でも、後に続く配線処理を複雑にすることなく容
易に対処することが可能である。
【0138】(3)本発明の第3の実施の形態の説明 (3−1)構成の説明 本発明の第3の実施の形態の構成について図面を参照し
て詳細に説明する。
【0139】図6を参照すると、本発明の第3の実施の
形態は、図1に示された第1の実施の形態における垂直
方向通過禁止図形の回避部4を、サブネットの前配線部
4Bに変更した点で異なる。
【0140】サブネットの前配線部4Bは、垂直方向通
過禁止図形を回避するため、禁止図形範囲内に位置する
端子を有するサブネットの配線を行い、元のネットに属
する他の端子と接続するために新たな端子を設定する。
【0141】(3−2)動作の説明 本発明の第3の実施の形態の動作を図面を参照して詳細
に説明する。
【0142】図7で示される第3の実施の形態の動作の
各ステップS301〜S303、S305〜S310
は、第1の実施の形態の各ステップまたは第2の実施の
形態の各ステップと同一のため、説明は省略する。
【0143】S304B(サブネットの前配線):割り
当て可能トラックの集合AT(n)が空集合となるサブ
ネットnに対して、他のネットの配線処理に先立ち、迷
路法、線分探索法などの未配線処理を用いてサブネット
nの配線を行う。配線した経路は、使用している配線層
に基づき、水平方向通過禁止図形並びに垂直方向通過禁
止図形として登録する。なお、サブネットnが3個以上
の端子を持つネット(これをnetで表す)を分割した
サブネットである場合、元のネットnetに属する他の
端子との接続を行うために端子を設定する必要がある。
サブネットnの配線経路において、障害となっていた禁
止図形の範囲外の点pを選び、その点に新たに端子t*
を設ける。例えば、禁止図形に最も近いカラムと配線経
路との交点をpとする。元のネットnetからサブネッ
トnの端子を削除し新端子t*を加えたものをネットn
etとし、サブネットへの分割を行う。各サブネットに
対して割り当て可能トラックの集合ATを再計算する。
【0144】また、一部の既配線を含むサブネットに対
して、配線禁止図形を迂回する配線を行う場合には、新
端子t*の位置によって、冗長な配線経路を生じること
が考えられる。このような場合には、新端子t*を設定
するときに、冗長な配線経路およびそれに対応する配線
禁止図形を削除する。
【0145】(3−3)効果の説明 本発明の第3の実施の形態の効果について説明する。
【0146】本発明の第3の実施の形態は、垂直方向通
過禁止図形を回避するために禁止図形の範囲内に位置す
る端子に接続するサブネットを予め配線するため、この
ようなサブネットを後に続く配線処理の対象から除外す
ることができる。よって、配線禁止図形の配置位置の状
況などにより配線経路が求めるのが困難なサブネットが
存在する場合でも、配線処理を複雑にすることなく容易
に対処することが可能である。また、禁止図形の範囲内
に位置する端子に接続するサブネットを他のネットの配
線よりも前に行うことから、サブネットに含まれる端子
間の経路がタイミングに関する制約を満足するような経
路を、他のネットの経路よりも優先して設定することが
可能である。
【0147】(4)本発明の第4の実施の形態の説明 (4−1)構成の説明 本発明の第4の実施の形態の構成について図面を参照し
て詳細に説明する。
【0148】図8を参照すると、本発明の第4の実施の
形態は、図1に示された第1の実施の形態における垂直
方向通過禁止図形の回避部4を、ネットの前配線部4C
に変更した点で異なる。
【0149】ネットの前配線部4Cは、垂直方向通過禁
止図形を回避するため、禁止図形範囲内に位置する端子
を有するサブネットに対して、元のネットの配線を行
う。
【0150】(4−2)動作の説明 本発明の第4の実施の形態の動作を図面を参照して詳細
に説明する。
【0151】図9で示される第4の実施の形態の動作の
各ステップS301〜S303、S305〜S310
は、第1〜第3の実施の形態の各ステップと同一のた
め、説明は省略する。
【0152】S304C(ネットの前配線):割り当て
可能トラックの集合AT(n)が空集合となるサブネッ
トnに対して、元のネットに属するすべての端子間を、
他のネットの配線処理に先立ち、迷路法並びに線分探索
法などの未配線処理を適用して配線を行う。配線した経
路は、使用している配線層に基づき、水平方向通過禁止
図形並びに垂直方向通過禁止図形として登録する。ネッ
トリストNから、元のネットをサブネット分割したサブ
ネットを削除する。各サブネットに対して割り当て可能
トラックの集合ATを再計算する。
【0153】また、一部の既配線を含むネットに対し
て、配線禁止図形を迂回する配線を行う場合には、冗長
な配線経路を生じることが考えられる。このような場合
には、ネットの配線経路を求めるときに冗長な配線経路
およびそれに対応する配線禁止図形を削除する。
【0154】(4−3)効果の説明 本発明の第4の実施の形態の効果について説明する。
【0155】本発明の第4の実施の形態は、垂直方向通
過禁止図形を回避するために禁止図形の範囲内に位置す
る端子に接続するサブネットの元のネット全体を予め配
線するため、このようなネットのサブネットを後に続く
配線処理の対象から除外することができる。よって、配
線禁止図形の配置位置の状況などにより配線経路が求め
るのが困難なネットが存在する場合でも、配線処理を複
雑にすることなく容易に対処することが可能である。ま
た、禁止図形の範囲内に位置する端子に接続するネット
を他のネットの配線よりも前に行うことから、ネットに
含まれる端子間の経路がタイミングに関する制約を満足
するような経路を、他のネットの経路よりも優先して設
定することが可能である。
【0156】(5)本発明の第5の実施の形態の説明 (5−1)構成の説明 本発明の第5の実施の形態の構成について図面を参照し
て詳細に説明する。
【0157】本発明の第5の実施の形態は、図10に示
された禁止制約グラフGの作成及びネットの分断部5A
が、図1、図4、図6、図8に示された第1〜第4の実
施の形態における禁止制約グラフGの作成部5の構成に
おいて、禁止制約グラフ構築部51と制約サイクル検出
部52とネットの分断部53を有する点で異なる。
【0158】禁止制約グラフ構築部51は、禁止制約グ
ラフGを作成する。これは第1〜第4の実施の形態にお
ける禁止制約グラフGの作成部5に対応している。
【0159】制約サイクル検出部52は、禁止制約グラ
フ構築部51で作成された禁止制約グラフG内に存在す
る制約サイクルを検出する。
【0160】ネットの分断部53は、制約サイクル検出
部52で検出された制約サイクルを解消するために、制
約サイクルに含まれるネットを分断する。
【0161】(5−2)動作の説明 本発明の第5の実施の形態の動作を図面を参照して詳細
に説明する。
【0162】第5の実施の形態の動作の各ステップS3
01〜S304、S306〜S310は、第1〜第4の
実施の形態の各ステップと同一のため、説明は省略す
る。
【0163】S305A(禁止制約グラフGの作成及び
ネットの分断):図11に示すように、次のS3051
〜S3053で禁止制約グラフの構築、制約サイクルの
検出、制約サイクル解消のためのネットの分断を行う。
【0164】S3051(禁止制約グラフ構築):禁止
制約グラフGを作成する。
【0165】S3052(制約サイクル検出):禁止制
約グラフG内の2重枝を両方向の有向枝とみなし、禁止
制約グラフGに存在するサイクル(制約サイクルと呼
ぶ)を検出する。但し、1つの2重枝のみから成るサイ
クルは除く。
【0166】S3053(ネットの分断):ステップS
3052で検出された制約サイクルの中で、少なくとも
1つの2重枝を含むサイクルCに注目する。サブネット
に対応する2つの節点niとnkの間に2重枝のみを通
過するようなパスが存在し、且つ、niからnkに少な
くとも1つの有向枝を通過するパスが存在する場合を考
える。niとnkを結ぶ2重枝のパスにおいてniに隣
接している節点をnjとする(ネットnが2つのサブネ
ットに分割された場合にはnj=nkである)。このと
き、niとnjの2重枝を削除することによってサイク
ルCを解消することができる。次の条件1)と2)を満
足する2重枝eを削除する候補にする。
【0167】1)枝eはサイクルに含まれる。
【0168】2)2重枝によって接続されるサブネット
において、共有する端子が位置するカラムcが|TH
(c)|>0且つ|PT(c)|>D(c)を満たす。
【0169】禁止制約グラフG内に複数のサイクルが存
在する場合、評価関数F1に基づいて選択する2重枝e
を削除することによりサイクルを解消する。評価関数F
1は、次の〜の値を考慮して、関数の値を決める。
【0170】2重枝eを含むサイクル数NumC 2重枝eを含むサイクルの中で最長のサイクルの長さ
LenC 2重枝eを含むサイクルCにおいて、サイクルの枝の
向きに沿ってサイクルを辿るとき、入って来る枝をもつ
節点uと出て行く枝を持つ節点vの間に枝eが位置する
とき、節点uから枝eまでのサイクルCに沿った長さと
枝eから節点vまでのサイクルCに沿った長さの内、長
い方の長さLenL TH(c)の値 関数F1を、 F1=α′・NumC+β′・LenC+γ′・Len
L+δ′・TH(c) とする。ここで、α′、β′、γ′、δ′はいずれも非
負定数である。α、β、γ、δの値の大小により、上の
〜の項目に優先順位を設定することが可能である。
例えば、α>β>γ>δとなり、それぞれの差を十分に
大きな値になるように設定すれば、を最優先とし、以
下からへ優先順序を付けた評価関数とすることがで
きる。
【0171】(5−3)効果の説明 本発明の第5の実施の形態の効果について説明する。
【0172】本発明の第5の実施の形態は、禁止制約グ
ラフに存在する制約サイクルを検出し、ネットを分断す
ることによって制約サイクルを解消しているので、1つ
のネットの幹線全体を1つのトラックに割り当てるので
はなく、サブネット単位で異なるトラックに割り当てる
ことが可能である。ネットに対して、そのネットに含ま
れる端子が位置するカラムにおいてのみジョグを挿入し
ている。従って、制約サイクルの解除のために設定しな
ければならないジョグによって増加するスルーホールの
個数を、少なくすることができる。
【0173】(6)本発明の第6の実施の形態の説明 (6−1)構成の説明 本発明の第6の実施の形態の構成について図面を参照し
て詳細に説明する。
【0174】本発明の第6の実施の形態は、図12に示
された禁止制約グラフGの作成およびサブネットへのジ
ョグ挿入部5Bが、図10に示された第5の実施の形態
における禁止制約グラフGの作成およびネットの分断部
5Aの構成に加え、サブネットへのジョグ挿入部54を
有する点で異なる。
【0175】サブネットへのジョグ挿入部54は、制約
サイクル検出部52で検出された制約サイクルの中で、
ネットの分断部53において解消できなかった制約サイ
クルに対して、制約サイクルに含まれる節点に対応する
サブネットにジョグを挿入することにより制約サイクル
を解消する。
【0176】(6−2)動作の説明 本発明の第6の実施の形態の動作を図面を参照して詳細
に説明する。
【0177】第6の実施の形態の動作の各ステップS3
01〜S304、S306〜S310は、第1〜第5の
実施の形態の各ステップと同一のため、説明は省略す
る。
【0178】S305B(禁止制約グラフGの作成およ
びサブネットへのジョグ挿入):図13に示すように、
第5の実施の形態のステップS305のステップS30
53の後に、次のステップS3054を適用する。
【0179】S3054(サブネットへのジョグ挿
入):サイクルに含まれるサブネットsn(i)に対し
てジョグを挿入することによって、サブネットに対応す
る節点を2つの節点sn(i) 1、sn(i) 2に
分割し、サイクルを解消する。第5の実施の形態の動作
で説明したステップS3053で2重枝を含む制約サイ
クルは全て解消されるので、本ステップで解消の対象と
する制約サイクルには2重枝を含んだものは存在しな
い。サイクル:a(0)→a(1)→…→sn(i)→
a(j)→a(j+1)→…→a(C−1)→a(C)
(=a(0))において、節点sn(i)を2つの節点
sn(i) 1、sn(i) 2に分割し、サイクルを
パス:sn(i) 1→a(j)→a(j+1)→…→
a(C−1)→a(C)(=a(0))→a(1)→…
→sn(i) 2に変換する。
【0180】禁止制約グラフG内に複数のサイクルが存
在する場合、ジョグを挿入するサブネットを評価関数F
2に基づいて選択する。評価関数F2は、次の〜の
値を考慮して、関数の値を決める。
【0181】サブネットsnに対応する節点sを含む
サイクル数NumC サブネットsnに対応する節点sを含むサイクルの中
で最長のサイクルの長さLenC サブネットsnに対応する節点sを含むサイクルCに
おいて、サイクルの枝の向きに沿ってサイクルを辿ると
き、入って来る枝をもつ節点uと出て行く枝を持つ節点
vの間に枝eが位置するとき、節点uから節点sまでの
サイクルCに沿った長さと節点sから節点vまでのサイ
クルCに沿った長さの内、長い方の長さLenL 関数F2を、 F2=α″・NumC+β″・LenC+γ″・Len
L とする。ここで、α″、β″、γ″はいずれも非負定数
である。α″、β″、γ″の値の大小により、上の〜
の項目に優先順位を設定することが可能である。例え
ば、α″>β″>γ″となるように、それぞれの差を十
分に大きな値になるように設定すれば、を最優先と
し、、の順に優先順序を付けた評価関数とすること
ができる。
【0182】ジョグを挿入する位置に関しては評価関数
F3に基づいて決定する。評価関数F3では、 |TH(c)|>0且つ|PT(c)|>D(c) を満足するカラムから、次のa)〜e)のいずれかのカ
ラムをジョグ挿入位置として求める。
【0183】a)サブネットの区間(左端の端子と右端
の端子との間)内で、新たに上下制約を発生しないカラ
ム b)サブネットの区間外で、新たに上下制約を発生しな
いカラム c)サブネットの区間内で、上下どちらか一方の上下制
約を受けるカラム d)サブネットの区間外で、上下どちらか一方の上下制
約を受けるカラム e)チャネル配線領域外のカラム このときに次の〜の値を考慮して関数の値を決め
る。
【0184】カラムcに位置するネットnの端子数N
umN カラムcに位置する他のネットの端子数NumO TH(c)の値 カラムcがサブネットの区間外の場合のペナルティV
aluel カラムcがチャネル配線領域外の場合のペナルティV
alueC 関数F3として、例えば、〜の値にそれぞれ係数を
乗算した値の総和を採用するとき、各係数の値を調整す
ることにより、次のような選択方法を実現できる。a)
を最優先とし、b)からe)の順に設定した優先順位に
従ってジョグ挿入するカラムを求めることが可能であ
る。
【0185】(6−3)効果の説明 本発明の第6の実施の形態の効果について説明する。
【0186】本発明の第6の実施の形態は、禁止制約グ
ラフに存在する制約サイクルを検出し、先ずネットを分
断することによって制約サイクルを解消している。次
に、ネットの分断では解消できなかった制約サイクルに
対してのみサブネットへジョグを挿入して解消する。ネ
ットに含まれる端子が位置するカラムに対して優先して
ジョグを挿入し、解消できなかった制約サイクルに対し
て端子位置以外のカラムでジョグ挿入を行っている。従
って、制約サイクルの解除のために設定しなければなら
ないジョグによって増加するスルーホールの個数を、少
なくすることができる。また、ネットの幹線をサブネッ
ト単位で異なるトラックに割り当てる方法によっては解
消できなかった制約サイクルが存在する場合でも、サブ
ネットの幹線を分断して異なるトラックに割り当てるこ
とにより制約サイクルを解消し、配線処理を行うことが
可能である。
【0187】(7)本発明の第7の実施の形態の説明 (7−1)構成の説明 本発明の第7の実施の形態の構成について図面を参照し
て詳細に説明する。
【0188】本発明の第7の実施の形態は、図14
(a)と(b)に示された禁止制約グラフGの作成およ
びパスの切断部5Cが、図10に示された第5の実施の
形態における禁止制約グラフGの作成およびネットの分
断部5Aおよび図12に示された第6の実施の形態にお
ける禁止制約グラフGの作成およびサブネットへのジョ
グ挿入部5Bの構成に加え、パスの切断部55を有する
点で異なる。
【0189】パスの切断部55は、配線禁止図形が障害
となり1本の幹線では配線不可能なサブネットを検出
し、検出されたサブネットにジョグを挿入することによ
り禁止制約グラフG内のパスを切断する。
【0190】(7−2)動作の説明 本発明の第7の実施の形態の動作を図面を参照して詳細
に説明する。
【0191】第7の実施の形態の動作の各ステップS3
01〜S304、S306〜S310は、第1〜第6の
実施の形態の各ステップと同一のため、説明は省略す
る。
【0192】S305C(禁止制約グラフGの作成およ
びパスの切断):図15(a)または(b)に示すよう
に、第5の実施の形態のステップS305のステップS
3053の後、または、第6の実施の形態のステップS
3054の後に、次のステップS3055を適用する。
【0193】S3055(パスの切断):次のステップ
S5C1〜S5C3により、配線不可能なサブネットに
対してジョグを挿入し、禁止制約グラフ内のパスを切断
する。
【0194】S5C1:ネットnに対して、トラックの
集合AT*(n)をAT(n)にする。AT*(n)を
ネットnの割り当て可能有効トラックの集合と呼ぶ。
【0195】S5C2:禁止制約グラフGにおいて、仮
想節点BOTTOMを設け、出る向きの枝を持たない節
点から節点BOTTOMへ向かう有向枝を設ける。
【0196】S5C3:節点BOTTOMを始点とし、
有向枝の向きを逆に辿るような幅優先探索を適用する。
このとき、探索する各枝e=(u、v)において、次の
ステップS5C31〜S5C38を適用する。ジョグ挿
入された場合、禁止制約グラフG、ネットリストNを更
新する。節点uまたはvに対応するサブネット、及び、
分割されたサブネットに関する割り当て可能トラックの
集合ATおよび割り当て可能有効トラックの集合AT*
を再計算する。
【0197】S5C31:節点uまたはvが禁止図形に
対応する節点ならば、次の探索へ進む。
【0198】S5C32:AT*(u)に含まれるトラ
ックの中で、最上のトラックをHighest uとす
る。
【0199】S5C33:AT*(v)を{tr|tr
<Highest u且つtr∈AT*(v)}に更新
する。節点uから節点vへ有向枝が存在しているので、
節点uに対応するネットuと節点vに対応するネットv
の間には、ネットuの幹線はネットvの幹線よりも上側
のトラックに割り当てなければならない制約が存在す
る。ネットvの幹線を割り当てることが可能なトラック
の候補が最も多くなるのは、ネットuの幹線が割り当て
可能な有効トラックの集合AT*(u)の中で最も上側
のトラックHighest uに割り当てられた場合で
ある。このとき、ネットvの幹線が割り当て可能なトラ
ックはHighest uよりも下側に位置するトラッ
クである。
【0200】S5C34:AT*(v)が空集合なら
ば、節点vに対応するネットをジョグ挿入の候補とし、
S5C38へ。
【0201】S5C35:AT*(v)に含まれるトラ
ックの中で、最下トラックをLowest vとする。
【0202】S5C36:AT*(u)を{tr|tr
>Lowest v且つtr∈AT*(u)}に更新す
る。ステップS5C33で述べた説明と同様にして、ネ
ットuの幹線を割り当てることが可能なトラックの候補
が最も多くなるのは、ネットvの幹線が割り当て可能な
有効トラックの集合AT*(v)の中で最も下側のトラ
ックLowest vに割り当てられた場合である。こ
のとき、ネットuの幹線が割り当て可能なトラックはL
owest vよりも上側に位置するトラックである。
【0203】S5C37:AT*(u)が空集合なら
ば、節点uに対応するネットをジョグ挿入の候補とす
る。
【0204】S5C38:ジョグ挿入の候補のネットn
に対して、上述の評価関数F3に基づいてジョグの挿入
を行う。これにより、ネットnに対応する節点を通過す
るパスを切断することができる。
【0205】(7−3)効果の説明 本発明の第7の実施の形態の効果について説明する。
【0206】禁止制約グラフ内に存在するパスにおい
て、パスに含まれる節点に対応するサブネットの幹線を
トラックに割り当てるとき、サブネットに対応する節点
の個数分のトラックが必要である。本発明の第7の実施
の形態は、禁止制約グラフに存在するパスにおいて、パ
ス上の節点に対応するサブネットの幹線をトラックに割
り当てる際に、配線禁止図形のために各サブネットの幹
線全体を割り当てる十分なトラックが存在しない場合
に、サブネットの幹線を分断し異なるトラックに割り当
てることによって、存在するだけのトラック内で配線を
完了することができる。また、ジョグの挿入が必要なサ
ブネットを、割り当て可能有効トラックの集合の計算に
より、効率良く求めることが可能である。
【0207】(8)本発明の第8の実施の形態の説明 (8−1)構成の説明 本発明の第8の実施の形態の構成について図面を参照し
て詳細に説明する。
【0208】本発明の第8の実施の形態は、図16
(a)と(b)に示された禁止制約グラフGの作成およ
びサブネットへのジョグ追加挿入部5Dが、図14
(a)と(b)に示された第7の実施の形態における禁
止制約グラフGの作成およびパスの切断部5Cの構成に
加え、サブネットへのジョグ追加挿入部56を有する点
で異なる。
【0209】サブネットへのジョグ追加挿入部56は、
幹線の割り当てが可能なトラック数とサブネット数の関
係から、ジョグを挿入しなければならないサブネットの
候補を選択し、ジョグを挿入する位置を決定する。
【0210】(8−2)動作の説明 本発明の第8の実施の形態の動作を図面を参照して詳細
に説明する。
【0211】第8の実施の形態の動作の各ステップS3
01〜S304、S306〜S310は、第1〜第7の
実施の形態の各ステップと同一のため、説明は省略す
る。
【0212】S305D(禁止制約グラフGの作成およ
びサブネットへのジョグ追加挿入):図17(a)また
は(b)に示すように、第7の実施の形態のステップS
305CのステップS3054の後に、次のステップS
3056を適用する。
【0213】S3056(サブネットへのジョグ追加挿
入):次のS5D1〜S5D9により、配線不可能なサ
ブネットが存在するか否かを判定し、存在する場合には
ジョグを挿入するサブネットの候補を求め、ジョグ挿入
を行う。ここで、ネットの集合Netの要素数|Net
|を計算する際に、Netに属するサブネットの中で、
禁止制約グラフGにおいて対応する節点が2重枝によっ
て結ばれているサブネットは1つとして計算する。
【0214】S5D1:トラックの集合RT all
(0)とネットの集合Net(0)およびJogを空集
合に初期化する。
【0215】S5D2:カラムcを1(チャネル配線領
域の左端のカラム)とする。
【0216】S5D3:トラックの集合RT all
(c)をRT all(c−1)にする。ネット集合N
et(c)をNet(c−1)にする。カラムcにおい
て配線不可能なサブネットが存在するか否かの判定結果
Flag(c)を“OK”にする。
【0217】S5D4:カラムcの上下両側に端子が存
在しないか又は上側の端子と下側の端子が同じネットに
属する場合ステップS5D8へ。
【0218】S5D5:上側の端子をp、下側の端子を
qとする。端子p、qのネットをそれぞれnp、nqと
する。
【0219】RT all(c)を(RT all
(c)∪AT*(np)∪AT*(nq))∩PT
(c)に更新する。端子pがネットnpの右端に位置す
る端子でない場合Net(c)をNet(c)∪{n
p}に更新する。同様に、端子qがネットnqの右端に
位置する端子でない場合Net(c)をNet(c)∪
{nq}に更新する。
【0220】S5D6:|RT all(c)|<|N
et(c)|ならば、判定結果Flag(c)を“N
G”にする。ここで、RT all(c)はカラムcに
おいて割り当て可能なトラックの集合を表している。N
et(c)はカラムcにおいて幹線を割り当てなければ
ならないネットの集合である。
【0221】集合Jogが空集合のとき、割り当て可能
なトラック数(RT all(c)の要素数)が割り当
てなければならない幹線数(Net(c)の要素数)よ
りも少ない場合には割り当て可能なトラックが足りない
本数分(|Net(c)|−|RT all(c)|)
のネットにジョグを挿入し、トラックの不足を解消しな
ければならない。集合Jogが空集合でないとき、|N
et(c)−Jog|>|RT all(c)|の場合
に集合(Net(c)−Jog)の中から(|Net
(c)−Jog|−|RT all(c)|)個のネッ
トにジョグを挿入する。
【0222】次の評価関数F4に基づいて、集合Net
(c)−Jogの中から(|Net(c)−Jog|−
|RT all(c)|)個のサブネットを選択する。
選択したサブネットを集合Jogに追加する。
【0223】評価関数F4は、次の〜の値を考慮し
て、各サブネットに対する関数の値を決める。
【0224】元のネットにおいて、これまでの処理で
挿入されているジョグの個数NumJ 元のネットの区間の長さLenN 元のネットの端子数NumT 関数F4を、 F4=α''' ・NumJ+β''' ・LenN+γ''' ・
NumT とする。ここで、α''' 、β''' 、γ''' はいずれも非
負定数である。α''' 、β''' 、γ''' の値の大小によ
り、上の〜の項目に優先順位を設定することが可能
である。例えば、α''' >β''' >γ''' となり、それ
ぞれの差を十分に大きな値になるように設定すれば、
を最優先とし、、の順に優先順序を付けた評価関数
とすることができる。
【0225】S5D7:端子pがネットnpの右端に位
置する端子である場合Netからnpを削除する。同様
に、端子qがネットnqの右端に位置する端子である場
合Netからnqを削除する。
【0226】S5D8:カラムcがチャネル配線領域の
右端のカラムでなければ、cをc+1に更新し、ステッ
プS5D4へ。
【0227】S5D9:ジョグ挿入方法について説明す
る。本ステップにおいて、ネットにジョグ挿入が必要に
なる原因は配線禁止図形によってトラックが分断されて
いるためである。従って、ここでジョグを導入して配線
を折り曲げる場合には分断されているトラックを有効に
利用して配線を完結させるようにしなければならない。
折り曲げ配線が必要となるサブネットに対しては、禁止
図形の存在のためにサブネットの区間に連続したトラッ
クが存在せず、幹線を割り当てるトラックが存在しな
い。よって、上の判定で連続してNGとなるカラムの範
囲において、カラムの通過可能トラックの集合PTの関
係から、いくつかの区間に分けることを考える。
【0228】範囲内のカラムを、例えば、左から右に見
て行くとき、これまで属していなかったトラックが追加
され、PTの要素が増加する。更に進むと、増加する前
に要素であったトラックが除かれ(また同時に)新たな
トラックが加わってくる。このような要素の追加/削除
が見られる。これは、禁止図形によってトラックが分断
されているためである。
【0229】ここでは、トラックが増加するカラムc′
と、一度増加したPTから増加する前に属していたトラ
ックが削除されるカラムc″に注目する。このようなカ
ラムc′、c″によって区切られる区間[c′、c″]
内のカラムがジョグを挿入する位置の候補となる。判定
NGの範囲内にこのようにして設定される区間が複数存
在する可能性がある。候補の中から挿入位置を決めるの
は、区間[c′、c″]からはみ出さないことを除け
ば、上述した評価関数F3に基づいて求める。ここで求
めたジョグ挿入に基づき、配線禁止制約グラフGとネッ
トリストNを更新する。
【0230】(8−3)効果の説明 本発明の第8の実施の形態の効果について説明する。
【0231】禁止制約グラフにパスが存在しない場合に
も配線禁止図形によってトラックが分断されているよう
なチャネル配線領域ではサブネットの幹線をトラックに
割り当てることが不可能な場合が生ずる。本発明の第8
の実施の形態は、各カラムcにおいて割り当て可能なト
ラックの集合RT all(c)、および、幹線を割り
当てなければならないネットの集合Net(c)を求
め、個数を比較することにより、ジョグを挿入しなけれ
ばならないサブネットを効率良く求めることができる。
また、禁止制約グラフによって表すことができないよう
な配線禁止図形に関連するトラック割り当ての制約を発
見し、サブネットにジョグを挿入することにより、対処
することが可能になる。
【0232】(9)本発明の第9の実施の形態の説明 (9−1)構成の説明 本発明の第9の実施の形態の構成について図面を参照し
て詳細に説明する。
【0233】図18を参照すると、本発明の第9の実施
の形態は、第1〜第8の実施の形態における配線可能性
判定及び終了判定部10を配線可能性判定および未配線
処理および終了判定部10Aに変更した点で異なる。
【0234】配線可能性判定および未配線処理および終
了判定部10Aは、幹線の割り当て部8において幹線を
トラックへ割り当てることができなかったサブネットの
集合Rnotに含まれるサブネットに対して、未配線処
理を適用する。
【0235】(9−2)動作の説明 本発明の第9の実施の形態の動作を図面を参照して詳細
に説明する。
【0236】図19で示される第9の実施の形態の動作
の各ステップS301〜S309は、第1〜第8の実施
の形態の各ステップと同一のため、説明は省略する。
【0237】S310A(配線可能性判定および未配線
処理および終了判定):Rnotが空集合でなければ、
ネットリストNを(N−N*)∪Rnotとする。ネッ
トリストN内の各ネットに対して、未配線処理(迷路法
並びに線分探索法に基づく引き剥がし再配線法など)を
適用する。
【0238】Rnotが空集合ならば、ネットリストN
が空集合か否かを判定し、空集合でなければS305
へ、空集合であれば配線処理を終了する。
【0239】(9−3)効果の説明 本発明の第9の実施の形態の効果について説明する。
【0240】本発明の第9の実施の形態は、トラック割
り当てができなかったネットに対して未配線処理を適用
するため、チャネル配線領域が固定の場合に、高い配線
率を保証することができる。
【0241】(10)本発明の第10の実施の形態の説
明 (10−1)構成の説明 本発明の第10の実施の形態の構成について図面を参照
して詳細に説明する。
【0242】図20を参照すると、本発明の第10の実
施の形態は、第1〜第8の実施の形態における配線可能
性判定及び終了判定部10を不足トラック数の計算およ
び終了判定部10Bに変更した点で異なる。
【0243】不足トラック数の計算および終了判定部1
0Bは、幹線の割り当て部8において幹線をトラックへ
割り当てることができなかったサブネットの集合Rno
tに含まれるサブネットに対して、幹線をトラックに割
り当てるために必要となるトラックをチャネル配線領域
に設定する。
【0244】(10−2)動作の説明 本発明の第10の実施の形態の動作を図面を参照して詳
細に説明する。
【0245】図21で示される第10の実施の形態の動
作の各ステップS301〜S309は、第1〜第8の実
施の形態の各ステップと同一のため、説明は省略する。
【0246】S310B(不足トラック数の計算および
終了判定):Rnotが空集合でなければ、チャネル配
線領域の下辺を正整数j本(例えば1)のトラック分の
距離を下方向に移動し、新たなトラックを設定する。こ
れまで求めた配線経路を配線層に基づいて配線禁止図形
として登録する。ステップS302へ。
【0247】Rnotが空集合ならば、ネットリストN
が空集合か否かを判定し、空集合でなければステップS
305へ、空集合であれば配線処理を終了する。
【0248】(10−3)効果の説明 本発明の第10の実施の形態の効果について説明する。
【0249】本発明の第10の実施の形態は、トラック
割り当てができなかったネットに対して、チャネル配線
領域に新たなトラックを必要な本数だけ挿入することに
より、トラック割り当てを可能にするため、チャネル配
線領域に位置する配線禁止図形の位置が固定でチャネル
配線領域の下辺または上辺の位置が可変の場合に、高い
配線率を保証することができる。また、チャネル配線領
域を変更した後では、トラック割り当て処理が終わって
いるネットの配線経路の情報をそのまま利用し、割り当
てができなかったネットのみを対象とするため、高速に
処理することができる。
【0250】(11)本発明の第11の実施の形態の説
明 (11−1)構成の説明 本発明の第11の実施の形態の構成について図面を参照
して詳細に説明する。
【0251】図22を参照すると、本発明の第11の実
施の形態は、第1〜第8の実施の形態におけるチャネル
配線領域の設定部1をチャネル配線領域の設定およびカ
ウンタの初期化部1Aに変更し、配線可能性判定及び終
了判定部10を不足トラックの挿入および再配線および
終了判定部10Cに変更した点で異なる。
【0252】チャネル配線領域の設定およびカウンタの
初期化部1Aは、ネットリストNに属するネットに接続
する端子の位置並びにチャネルの上下に位置するセルの
内部に存在する配線禁止図形より、チャネル配線領域の
境界を定め、カウンタNewTrackを0に初期化す
る。
【0253】不足トラックの挿入および再配線および終
了判定部10Cは、先ず、Rnotに含まれるサブネッ
トの幹線をトラックに割り当てるために必要となるトラ
ックを、配線禁止図形の位置を変更せずにチャネル配線
領域に設定し、配線処理を続行することにより求める。
次に、求めた本数分のトラックを新たに設定した後、移
動可能な配線禁止図形を移動し、全てのネットに対して
再配線を行うことにより、未配線のサブネットを配線す
る。
【0254】(11−2)動作の説明 本発明の第11の実施の形態の動作を図面を参照して詳
細に説明する。
【0255】図23で示される第11の実施の形態の動
作の各ステップS302〜S309は、第1〜第8の実
施の形態の各ステップと同一のため、説明は省略する。
【0256】第11の実施の形態のステップS301A
は、次の処理を行う。
【0257】S301A(チャネル配線領域の設定およ
びカウンタの初期化):ネットリストNに属するネット
に接続する端子の位置並びにチャネルの上下に位置する
セルの内部に存在する配線禁止図形より、チャネル配線
領域の境界を定める。カウンタNewTrackを0に
初期化する。
【0258】第11の実施の形態のステップS310C
は、次の処理を行う。
【0259】S310C(不足トラックの挿入および再
配線および終了判定):Rnotが空集合でなければ、
チャネル配線領域の下辺を正整数j本(例えば1)のト
ラック分の距離を下方向に移動し、新たなトラックを設
定する。カウンタNewTrackをNewTrack
+jにする。これまで求めた配線経路を配線層に基づい
て配線禁止図形として登録する。S302へ。
【0260】Rnotが空集合ならば、ネットリストN
が空集合か否かを判定し、空集合でなければS305
へ、空集合であれば次に示す処理「再配線」を行う。
【0261】処理「再配線」 S1:これまでに求めた配線経路を削除し、最初に与え
られたネットリストをNとする。
【0262】S2:ステップS1で配線経路が初期化さ
れたチャネル配線領域に対して再配線を実行する場合
(配線禁止図形を移動させない場合)には、ステップS
301Aへ。
【0263】S3:最初に入力として与えられたチャネ
ル配線領域の下辺をNewTrack本のトラック分の
距離を下方向に移動する。
【0264】S4:処理「配線禁止図形の移動および形
状の変更」を行う。
【0265】S5:ステップS2で設定したチャネル配
線領域を新たなチャネル配線領域とし、ステップS30
1Aへ。
【0266】処理「禁止図形の移動および形状変更」 与えられた配線禁止図形の中で、下方向に移動可能な図
形が存在する場合には、許される範囲内で移動する。こ
のとき、電源配線やクロック配線の垂直線分に対応する
禁止図形に対しては、可能ならば、垂直方向の長さを変
更する。
【0267】(11−3)効果の説明 本発明の第11の実施の形態の効果について説明する。
【0268】本発明の第11の実施の形態は、トラック
割り当てができなかったネットに対して、チャネル配線
領域に新たなトラックを必要な本数だけ挿入し、チャネ
ル配線領域内の配線禁止図形の位置を移動した後、最初
から配線処理を行うので、チャネル配線領域に位置する
配線禁止図形の位置が可変でチャネル配線領域の下辺ま
たは上辺の位置が可変の場合に、高い配線率を保証する
ことができる。また、新たなトラックが設定されたチャ
ネル配線領域では必要なトラック数が確保できており、
最初から再配線することにより、挿入されるジョグの個
数を削減することができる。更に、チャネル配線領域内
に位置する配線禁止図形の位置を固定し、これまで求め
た配線結果の情報をそのまま利用しながら、トラック割
り当てができなかったネットに対して、必要なトラック
の本数を求めているので、高速に不足トラックの本数を
計算できる。
【0269】(12)本発明の第12の実施の形態の説
明 (12−1)構成の説明 本発明の第12の実施の形態の構成について図面を参照
して詳細に説明する。
【0270】図24を参照すると、本発明の第12の実
施の形態は、図22に示された第11の実施の形態にお
ける不足トラックの挿入および再配線および終了判定部
10Cを不足トラック線分の挿入および終了判定部10
Dに変更した点で異なる。
【0271】不足トラック線分の挿入および終了判定部
10Dは、チャネル配線領域にトラックを新たに設定
し、移動可能な配線禁止図形の位置を変更した後、配線
処理を続行することにより、Rnotに含まれるサブネ
ットの幹線をトラックに割り当てる。
【0272】(12−2)動作の説明 本発明の第12の実施の形態の動作を図面を参照して詳
細に説明する。
【0273】図25で示される第12の実施の形態の動
作の各ステップS302〜S309は、第1〜第8の実
施の形態の各ステップと同一のため、また、第12の実
施の形態の動作のステップS301Aは第11の実施の
形態のステップと同一のため、説明を省略する。
【0274】S310D(不足トラック線分の挿入およ
び終了判定):Rnotが空集合でなければ、チャネル
配線領域の下辺を正整数j本(例えば1)のトラック分
の距離を下方向に移動し、新たなトラックを設定する。
カウンタNewTrackをNewTrack+jにす
る。これまで求めた配線経路を配線層に基づいて配線禁
止図形として登録する。第11の実施の形態の動作の説
明で述べた処理「配線禁止図形の移動および形状の変
更」を行い、S302へ。
【0275】Rnotが空集合ならば、ネットリストN
が空集合か否かを判定し、空集合でなければS305
へ、空集合であれば配線処理を終了する。
【0276】第10の実施の形態の動作におけるステッ
プS310Bでは、チャネル配線領域の下辺(すなわ
ち、領域の下辺の境界を構成しているセル列またはマク
ロセル)をjトラック分の距離だけ下方向に移動し、空
いた領域に新たにj本のトラックを設定する。ここで設
定されるトラックはチャネル配線領域の左端から右端ま
で達する直線状のトラックである。一方、第12の実施
の形態の動作におけるステップS310Dでは、チャネ
ル配線領域の下辺(すなわち、領域の下辺の境界を構成
しているセル列またはマクロセル)をjトラック分の距
離だけ下方向に移動した後、チャネル配線領域内の配線
禁止図形の移動並びに形状変更を行う。これは、チャネ
ル配線領域の左端から右端まで達する直線状のトラック
を設定するのではなく、細切れのトラック線分を挿入す
ることに対応している。従って、設定される状況が最終
的な配線結果に近いため、第12の実施の形態の動作に
おけるステップS310Dにおいて計算する必要トラッ
ク本数(すなわちカウンタNewTrackの値)の方
が、第10の実施の形態の動作におけるステップS31
0Bにおいて求める必要トラック本数よりも、最適な値
であることが期待できる。
【0277】(12−3)効果の説明 本発明の第12の実施の形態の効果について説明する。
【0278】本発明の第12の実施の形態は、トラック
割り当てができなかったネットに対して、チャネル配線
領域に新たなトラックを必要な本数だけ挿入し、チャネ
ル配線領域内の配線禁止図形の位置を移動した後、最初
から配線処理を行うので、チャネル配線領域に位置する
配線禁止図形の位置が可変でチャネル配線領域の下辺ま
たは上辺の位置が可変の場合に、高い配線率を保証する
ことができる。また、トラック割り当てができないネッ
トが生じたときに、新たなトラックを挿入した後でチャ
ネル配線領域内に位置する配線禁止図形の位置を移動し
ながら必要なトラックの本数を求めているので、不足ト
ラックの本数を正確に計算できる。更に、チャネル配線
領域を変更した後では、トラック割り当て処理が終わっ
ているネットの配線経路の情報をそのまま利用し、割り
当てができなかったネットのみを対象とするため、高速
に処理することができる。
【0279】(13)本発明の第13の実施の形態の説
明 (13−1)構成の説明 本発明の第13の実施の形態の構成について図面を参照
して詳細に説明する。
【0280】図26を参照すると、本発明の第13の実
施の形態は、図24に示された第12の実施の形態にお
ける不足トラック線分の挿入および終了判定部10Dを
不足トラック線分の挿入および再配線および終了判定部
10Eに変更した点で異なる。
【0281】不足トラック線分の挿入および再配線およ
び終了判定部10Eは、先ず、Rnotに含まれるサブ
ネットの幹線をトラックに割り当てるために必要となる
トラックをチャネル配線領域に設定し、移動可能な配線
禁止図形の位置を変更した後、配線処理を続行すること
により求める。次に、求めた本数分のトラックを新たに
設定した後、移動可能な配線禁止図形を移動し、全ての
ネットに対して再配線を行うことにより、未配線のサブ
ネットを配線する。
【0282】(13−2)動作の説明 本発明の第13の実施の形態の動作を図面を参照して詳
細に説明する。
【0283】図27で示される第13の実施の形態の動
作の各ステップS301A〜S309は、第12の実施
の形態の各ステップと同一のため、説明は省略する。
【0284】S310E(不足トラック線分の挿入およ
び再配線および終了判定):Rnotが空集合でなけれ
ば、チャネル配線領域の下辺を正整数j本(例えば1)
のトラック分の距離を下方向に移動し、新たなトラック
を設定する。カウンタNewTrackをNewTra
ck+jにする。これまで求めた配線経路を配線層に基
づいて配線禁止図形として登録する。第11の実施の形
態の動作の説明で述べた処理「配線禁止図形の移動およ
び形状の変更」を行い、S302へ。
【0285】Rnotが空集合ならば、ネットリストN
が空集合か否かを判定し、空集合でなければS305
へ、空集合であれば第11の実施の形態の動作の説明で
述べた処理「再配線」を行う。
【0286】(13−3)効果の説明 本発明の第13の実施の形態の効果について説明する。
【0287】本発明の第13の実施の形態は、トラック
割り当てができなかったネットに対して、チャネル配線
領域に新たなトラックを必要な本数だけ挿入し、チャネ
ル配線領域内の配線禁止図形の位置を移動した後、最初
から配線処理を行うので、チャネル配線領域に位置する
配線禁止図形の位置が可変でチャネル配線領域の下辺ま
たは上辺の位置が可変の場合に、高い配線率を保証する
ことができる。また、新たなトラックが設定されたチャ
ネル配線領域では必要なトラック数が確保できており、
最初から再配線することにより、挿入されるジョグの個
数を削減することができる。更に、トラック割り当てが
できないネットが生じたときに、新たなトラックを挿入
した後でチャネル配線領域内に位置する配線禁止図形の
位置を移動しながら必要なトラックの本数を求めている
ので、不足トラックの本数を正確に計算できる。
【0288】
【実施例】本発明の第1〜第13の各実施の形態の各実
施例について順次説明する。
【0289】(本発明の第1の実施の形態の実施例1)
本発明の第1の実施の形態の実施例1の動作を詳細に説
明する。
【0290】図63に示すチャネル配線領域について考
える。これは特開平4−167073号公報に開示され
ている配線方法では配線できなかったチャネル配線領域
である。ネットリストNは、N={n1}、n1={t
1、t2}。Rは垂直方向および水平方向の通過禁止図
形である。トラックはチャネル配線領域の上方から下方
向に順にT1、T2、T3、T4と表す。カラムはチャ
ネル配線領域の左端から右方向に順にC1、C2、…、
C5と表す。
【0291】先ず、ステップS301で上述のようなチ
ャネル配線領域が設定される。次に、ステップS302
において、ネットがサブネットに分割される。ネットn
1は2端子のみから成るネットなので、それ自身がサブ
ネットsn1となる。
【0292】ステップS303で、各端子tの到達可能
トラックの集合RT(t)、各サブネットsnの割り当
て可能トラックの集合AT(sn)、各カラムcの通過
可能トラックの集合PT(c)、配線密度D(c)、ス
ルーホール設定可能トラックの集合TH(c)を計算す
る。RT(t1)={T1}、RT(t2)={T
4}、AT(sn1)=φ、PT(C1)={T1、T
2、T3、T4}、PT(C2)=PT(C3)=PT
(C4)={T1、T4}、PT(C5)={T1、T
2、T3、T4}、D(C1)=D(C2)=0、D
(C3)=D(C4)=1、D(C5)=0、TH(C
1)={T1、T2、T3、T4}、TH(C2)=
{T1、T4}、TH(C3)={T1}、TH(C
4)={T4}、TH(C5)={T1、T2、T3、
T4}。
【0293】ステップS304では、AT(sn1)=
φなので、サブネットsn1の元のネットn1に対し
て、配線禁止図形の塊を迂回するために、次の2つのサ
ブネットに再分割する。sn1* a={t*、t
1}、sn1* b={t*、t2}。ここでは、評価
関数F0の係数α、β、γ、δの値をα=10、β=γ
=δ=1に設定し、F0の値が最大となるカラムC5を
選択する場合について考える。
【0294】サブネットsn1* a、sn1* bの
ATはAT(sn1* a)={T1}、AT(sn1
b)={T4}となる。
【0295】ステップS305で図32(a)に示す禁
止制約グラフGを作成する。S306において、部分禁
止制約グラフG*を求める。部分禁止制約グラフG*は
図32(a)中の太線部分である。
【0296】ステップS307では、割り当て処理の対
象となるサブネットの集合N*はN*={sn1*
a}となる。
【0297】ステップS308において、N*内のサブ
ネットの幹線をトラックT1へ割り当てる。トラック割
り当ての結果を図32(b)に示す。
【0298】ステップS305〜S310の2回目のル
ープにおける禁止制約グラフGを図32(c)で示す。
部分禁止制約グラフG*を太線部分で示す。サブネット
sn1* bの幹線がトラックT4に割り当てられる。
このループのステップS309で、Nは空集合になり、
ステップS310で空きトラックが存在しないので終了
する。配線の結果を図32(d)に示す。
【0299】(本発明の第1の実施の形態の実施例2)
本発明の第1の実施の形態の実施例2の動作を詳細に説
明する。
【0300】図65に示すチャネル配線領域について考
える。これは特開平4−167073号公報に開示され
ている配線方法では配線できなかったチャネル配線領域
である。ネットリストNは、N={n1、n2}、n1
={t1、t3}、n2={t2、t4}。Vは水平方
向通過禁止図形、Rは垂直方向および水平方向の通過禁
止図形である。トラックはチャネル配線領域の上方から
下方向に順にT1、T2、T3と表す。カラムはチャネ
ル配線領域の左端から右方向に順にC1、C2、…、C
6と表す。
【0301】先ず、ステップS301で上述のようなチ
ャネル配線領域が設定される。次に、ステップS302
において、ネットがサブネットに分割される。ネットn
1、n2はいずれも2端子のみから成るネットなので、
それ自身がサブネットsn1、sn2となる。
【0302】ステップS303で、各端子tの到達可能
トラックの集合RT(t)、各サブネットsnの割り当
て可能トラックの集合AT(sn)、各カラムcの通過
可能トラックの集合PT(c)、配線密度D(c)、ス
ルーホール設定可能トラックの集合TH(c)を計算す
る。RT(t1)={T3}、RT(t2)=RT(t
3)={T1、T2、T3}、RT(t4)={T2、
T3}、AT(sn1)={T3}、AT(sn2)=
{T2、T3}、PT(C1)=PT(C2)={T
3}、PT(C3)=PT(C4)={T1、T2、T
3}、PT(C5)=PT(C6)={T2、T3}、
D(C1)=D(C2)=1、D(C3)=D(C4)
=2、D(C5)=D(C6)=1、TH(C1)=
φ、TH(C2)={T3}、TH(C3)=TH(C
4)={T1、T2}、TH(C5)={T2、T
3}、TH(C6)={T2}。
【0303】ステップS304では、ATが空集合とな
るサブネットが存在しないため、処理は行わず、ステッ
プS305で図33(a)に示す禁止制約グラフGを作
成する。ステップS306において、部分禁止制約グラ
フG*を求める。部分禁止制約グラフG*は図33
(a)の中の太線部分である。
【0304】ステップS307では、割り当て処理の対
象となるサブネットの集合N*はN*={sn1}とな
る。
【0305】ステップS308において、N*内のサブ
ネットの幹線をトラックT3へ割り当てる。トラック割
り当ての結果を図33(b)に示す。
【0306】ステップS305〜S310の2回目のル
ープで、サブネットsn2の幹線がトラックT2に割り
当てられる。このループのステップS309で、Nは空
集合になり、ステップS310で空きトラックが無いの
で終了する。配線の結果を図33(c)に示す。
【0307】(本発明の第1の実施の形態の実施例3)
本発明の第1の実施の形態の実施例3の動作を詳細に説
明する。
【0308】図69(a)に示すチャネル配線領域につ
いて考える。これは特願平7−75716号に開示され
ている配線方法では配線できなかったチャネル配線領域
である。ネットリストNは、N={n1、n2}、n1
={t1、t4}、n2={t2、t3}。V1〜V5
は水平方向通過禁止図形である。トラックはチャネル配
線領域の上方から下方向に順にT1、T2、…、T5と
表す。カラムはチャネル配線領域の左端から右方向に順
にC1、C2、C3と表す。
【0309】先ず、ステップS301で上述のようなチ
ャネル配線領域が設定される。次に、ステップS302
において、ネットがサブネットに分割される。ネットn
1、n2はいずれも2端子のみから成るネットなので、
それ自身がサブネットsn1、sn2となる。
【0310】ステップS303で、各端子tの到達可能
トラックの集合RT(t)、各サブネットsnの割り当
て可能トラックの集合AT(sn)、各カラムcの通過
可能トラックの集合PT(c)、配線密度D(c)、ス
ルーホール設定可能トラックの集合TH(c)を計算す
る。RT(t1)={T4}、RT(t2)={T2、
T4}、RT(t3)={T1、T2、T3、T4、T
5}、RT(t4)={T2、T4}、AT(sn1)
={T4}、AT(sn2)={T2、T4}、PT
(C1)={T4}、PT(C2)={T1、T2、T
3、T4、T5}、PT(C3)={T2、T4}、D
(C1)=1、D(C2)=D(C3)=2、TH(C
1)=φ、TH(C2)={T1、T2、T3、T
4}、TH(C3)=φ。
【0311】ステップS304では、ATが空集合とな
るサブネットが存在しないため、処理は行わず、ステッ
プS305で図34(a)に示す禁止制約グラフGを作
成する。ステップS306において、部分禁止制約グラ
フG*を求める。部分禁止制約グラフG*は図34
(a)の禁止制約グラフGと同じである。
【0312】ステップS307では、割り当て処理の対
象となるサブネットの集合N*はN*={sn1、sn
2}となる。
【0313】ステップS308において、N*内のサブ
ネットsn1、sn2の幹線をそれぞれトラックT4、
T2へ割り当てる。トラック割り当ての結果を図34
(b)に示す。ステップS309で、Nは空集合にな
り、ステップS310で空きトラックが無いので終了す
る。
【0314】(本発明の第1の実施の形態の実施例4)
本発明の第1の実施の形態の実施例4の動作を詳細に説
明する。
【0315】図35(a)に示すチャネル配線領域につ
いて考える。ネットリストNは、N={n1、n2、
…、n9}、n1={t7、t9}、n2={t3、t
17、t18}、n3={t11、t13}、n4=
{t2、t4、t10}、n5={t14、t15}、
n6={t5、t6}、n7={t8、t16}、n8
={t12、t19}、n9={t1、t20、r
1}。端子r1はチャネル配線領域の右端から領域の外
へ出るような接続を表している。H1〜H5は垂直方向
通過禁止図形、V1〜V4は水平方向通過禁止図形であ
る。トラックはチャネル配線領域の上方から下方向に順
にT1、T2、…、T9と表す。カラムはチャネル配線
領域の左端から右方向に順にC1、C2、…、C15と
表す。
【0316】先ず、ステップS301で上述のようなチ
ャネル配線領域が設定される。次に、ステップS302
において、各ネットを以下のようにサブネットに分割す
る。ネットn1、n3、n5〜n8は2端子のみから成
るネットなので、それ自身がサブネットsn1、sn
3、sn5〜sn8になる。ネットn2はsn2 1=
{t3、t17}とsn2 2={t17、t18}
に、ネットn4はsn4 1={t10、t2}とsn4
2={t2、t4}に、ネットn9はsn9 1={t
1、t20}とsn9 2={t20、r1}に、それ
ぞれ分割する。よって、ネットリストNは、N={sn
1、sn2 1、sn2 2、sn3、sn4 1、s
n4 2、sn5、sn6、sn7、sn8、sn9
1、sn9 2}となる。
【0317】ステップS303で、下記の表1に示す各
端子tの到達可能トラックの集合RT(t)、下記の表
2に示す各サブネットsnの割り当て可能トラックの集
合AT(sn)、下記の表3に示す各カラムcの通過可
能トラックの集合PT(c)、配線密度D(c)、スル
ーホール設定可能トラックの集合TH(c)を計算す
る。
【0318】
【表1】
【0319】
【表2】
【0320】
【表3】
【0321】ステップS304では、ATが空集合とな
るサブネットが存在しないため、処理は行わず、ステッ
プS305で図35(b)に示す禁止制約グラフGを作
成する。
【0322】ステップS306において、部分禁止制約
グラフG*を求める。部分禁止制約グラフG*は図35
(b)中の太線部分である。
【0323】ステップS307では割り当て処理の対象
となるサブネットの集合N*はN*={sn1、sn
6、sn9 1、sn9 2}となる。
【0324】ステップS308において、N*内のサブ
ネットの幹線をトラックへ割り当てる。トラック割り当
ての結果を図36(a)に示す。ここで、N*内の全て
のサブネットに対して、幹線が割り当てられたので、R
notは空集合である。
【0325】ステップS309で、ネットリストNをN
={sn2 1、sn2 2、sn3、sn4 1、s
n4 2、sn5、sn7、sn8}に更新する。
【0326】ステップS310で、Rnotが空集合で
あり且つNが空集合でないので、ステップS305〜S
310の処理を繰り返す。
【0327】ステップS305〜S310の2回目、3
回目、4回目のループにおける禁止制約グラフGをそれ
ぞれ図36(b)、図37(b)、図38(b)に示
す。部分禁止制約グラフG*を太線で示す。トラック割
り当ての結果を図37(a)、図38(a)、図39に
示す。4回目のループのステップS309で、Nは空集
合となり、ステップS310で空きトラックが無いので
配線処理を終了する。
【0328】(本発明の第1の実施の形態の実施例5)
本発明の第1の実施の形態の実施例5の動作を詳細に説
明する。
【0329】図40(a)に示すチャネル配線領域につ
いて考える。ネットリストNは、N={n1、n2、n
3}、n1={t1、t3、t5}、n2={t2、t
7}、n3={t4、t6}。H1は垂直方向通過禁止
図形、V1とV2は水平方向通過禁止図形である。トラ
ックは上方から下方向に順にT1、T2、…、T6とす
る。カラムはチャネル配線領域の左端から右方向に順に
C1、C2、…、C12と表す。
【0330】先ず、ステップS301で上述のようなチ
ャネル配線領域が設定され、ステップS302でネット
を次に示すようにサブネットへ分割する。ネットn1は
サブネットsn1 1={t5、t1}とサブネットs
n1 2={t1、t3}に分割される。ネットn2と
n3はそれ自身がサブネットsn2、sn3になる。よ
って、ネットリストN={sn1 1、sn1 2、s
n2、sn3}となる。
【0331】ステップS303で、各端子tの到達可能
トラックの集合RT(t)、各サブネットsnの割り当
て可能トラックの集合AT(sn)、各カラムcの通過
可能トラックの集合PT(c)、配線密度D(c)、ス
ルーホール設定可能トラックの集合TH(c)を計算す
る。各サブネットsnの割り当て可能トラックの集合A
T(sn)は、AT(sn1 1)=φ、AT(sn1
2)={T1、T2}、AT(sn2)={T1、T
2、T3、T4、T5、T6}、AT(sn3)={T
5、T6}となる。
【0332】ステップS304では、AT(sn1
1)=φなので、サブネットsn1 1の元のネットn1
に対して、配線禁止図形の塊を迂回するために、次の3
つのサブネットに再分割する。sn1 1={t1、t
3}、sn1* a={t*、t1}、sn1* b=
{t*、t5}。ここでは、評価関数F0の係数α、
β、γ、δの値をα=1、β=γ=δ=0に設定し、F
0の値が最大となるカラムC10を選択する場合につい
て考える。
【0333】サブネットsn1 1、sn1* a、s
n1* bのATはAT(sn1 1)={T1、T
2}、AT(sn1* a)={T1、T2}、AT
(sn1* b)={T5、T6}となる。
【0334】ステップS305で図40(b)に示す禁
止制約グラフGを作成する。S306において、部分禁
止制約グラフG*を求める。部分禁止制約グラフG*は
図40(b)中の太線部分である。
【0335】ステップS307では、割り当て処理の対
象となるサブネットの集合N*はN*={sn1 1、
sn1* a、sn2}となる。
【0336】ステップS308において、N*内のサブ
ネットの幹線をトラックへ割り当てる。トラック割り当
ての結果を図41(a)に示す。ここで、サブネットs
n1 1の幹線とsn1* aの幹線は同一のトラックT
2に割り当てられる。
【0337】ステップS305〜S310の2回目のル
ープにおける禁止制約グラフGを図41(b)に示す。
部分禁止制約グラフG*は図中の太線部分である。トラ
ック割り当ての結果を図41(c)に示す。このループ
のステップS309で、Nは空集合になり、ステップS
310で空きトラックが無いので終了する。
【0338】(本発明の第2の実施の形態の実施例1)
本発明の第2の実施の形態の実施例1の動作を詳細に説
明する。特に、第1の実施の形態の動作と異なるステッ
プS304Aについて述べる。
【0339】図41(a)に示すチャネル配線領域につ
いて考える。第1の実施の形態の実施例より、サブネッ
トsn1 1={t5、t1}のAT(sn1 1)が
空集合となる。ここでは、図42(a)に示すように、
妨害している配線禁止図形の端までの距離が短い端子t
1からカラムC10まで配線を引き出す。引き出し配線
の端点に新たに端子t*を設定する。引き出し配線に用
いた配線は配線禁止図形として登録する。サブネットs
n1 1とsn1 2をそれぞれsn1 1={t5、
t*}とsn1 2={t*、t3}に変更し、割り当
て可能なトラックの集合ATを再計算する。ATは、A
T(sn1 1)={T5、T6}、AT(sn1
2)={T1、T2、T3、T4、T5、T6}、AT
(sn2)={T1}、AT(sn3)={T5、T
6}となる。
【0340】ステップS305で、図42(b)に示す
禁止制約グラフGが求まる。ステップS306で部分禁
止制約グラフG*を求める。部分禁止制約グラフG*は
図42(b)中の太線部分になる。
【0341】ステップS307でのトラック割り当て候
補の集合N*はN*={sn1 2、sn2}となり、
ステップS308において、図43(a)に示すよう
に、N*内のサブネットの幹線をトラックへ割り当て
る。
【0342】ステップS305〜S310の2回目のル
ープにおける禁止制約グラフGを図43(b)に示す。
部分禁止制約グラフG*は図中の太線部分である。トラ
ック割り当ての結果は図41(c)のようになる。この
ループのステップS309で、Nは空集合になり、ステ
ップS310で空きトラックが無いので終了する。
【0343】(本発明の第3の実施の形態の実施例1)
本発明の第3の実施の形態の実施例1の動作を詳細に説
明する。特に、第1の実施の形態の動作と異なるステッ
プS304Bについて述べる。
【0344】図41(a)に示すチャネル配線領域につ
いて考える。第1の実施の形態の実施例より、サブネッ
トsn1 1={t5、t1}のAT(sn1 1)が
空集合となる。
【0345】ステップS304Bにおいて、図44
(a)に示すように、サブネットsn1 1の端子t1と
t5を接続する配線を行う。ここでは、妨害している配
線禁止図形に最も近いトラックおよびカラムを用いた配
線経路を求めた場合について考える。また、禁止図形の
端までの距離が短い端子t1側に、禁止図形の範囲外
で、禁止図形に最も近いカラムC10と配線経路との交
点に新たに端子t*を設定する。サブネットsn1
の配線経路は配線禁止図形として登録する。サブネット
sn1 1はネットリストから削除され、サブネットs
n1 2はsn1 2={t*、t3}に変更する。再計
算した割り当て可能なトラックの集合ATは、AT(s
n1 2)={T1、T2、T3、T4、T5、T
6}、AT(sn2)={T1}、AT(sn3)=
{T6}となる。
【0346】ステップS305で、図44(b)に示す
禁止制約グラフGが求まる。ここで、サブネットsn1
1とsn1 2は同じネットn1を分割したサブネッ
トなので、サブネットsn1 2に関する制約を考える
場合には、サブネットsn1 1の配線経路に対応する配
線禁止図形(図44(a)のH2〜H8およびV3〜V
8)を無視して考える。
【0347】図44(b)中の太線で示している部分
が、ステップS306で求まる部分禁止制約グラフG*
である。
【0348】ステップS307でのトラック割り当て候
補の集合N*はN*={sn1 2、sn2}となり、
ステップS308において図45(a)に示すようにト
ラックへ割り当てられる。
【0349】ステップS305〜S310の2回目のル
ープで、図45(b)に示す禁止制約グラフにおいて太
線で示した部分禁止制約グラフが求まる。よって、トラ
ック割り当て候補の集合N*={sn3}となる。ステ
ップS308で、サブネットsn3の幹線がトラックT
6に割り当てられ、配線処理が終了する。配線結果を図
41(c)に示す。
【0350】(本発明の第3の実施の形態の実施例2)
本発明の第3の実施の形態の実施例2の動作を詳細に説
明する。特に、第1の実施の形態の動作と異なるステッ
プS304Bについて述べる。
【0351】図46(a)に示すチャネル配線領域につ
いて考える。ネットリストNはN={n1、n2}、n
1={t1、t3、t4}、n2={t2、t5}であ
る。ネットn1はサブネットsn1 1={t1、t
4}とsn1 2={t4、t3}に分割される。ネッ
トn2はそれ自身でサブネットsn2={t2、t5}
となる。サブネットsn1 1は配線禁止図形の塊によ
って配線が妨害されるため、AT(sn1 1)は空集
合となる。
【0352】ステップS304Bにおいて、図46
(b)に示すように、サブネットsn1 1の端子t1と
t4を接続する配線を行う。本例では配線禁止図形が複
雑に配置している。そのため、迂回配線を表すためのサ
ブネット分割によって配線禁止図形を迂回する処理は、
煩雑なものになることが予想される。本ステップで行う
ように、他のサブネットの配線に先立ち、迷路配線法な
どを適用して迂回配線を求めておくことにより、後の処
理の効率化を図ることができる。
【0353】求まったサブネットsn1 1の配線経路
において、禁止図形の端までの距離が短い端子t4側
で、端子t3に最も近いカラムC4と配線経路との交点
に新たに端子t*を設定する。サブネットsn1 1の
配線経路は配線禁止図形として登録する。サブネットs
n1 1はネットリストから削除され、サブネットsn
2はsn1 2={p、t3}に変更する。再計算
した割り当て可能なトラックの集合ATは、AT(sn
2)={T1、T2}、AT(sn2)={T3、
T6}となる。
【0354】ステップS305で、図47(a)に示す
禁止制約グラフGが求まる。ここで、サブネットsn1
2に関する制約を考える場合には、サブネットsn1
1の配線経路に対応する配線禁止図形(図46(b)
のH4〜H16およびV4〜V15)を無視して考え
る。図47(a)中の太線で示している部分が、ステッ
プS306で求まる部分禁止制約グラフG*である。
【0355】ステップS307でのトラック割り当て候
補の集合N*はN*={sn1 2、sn2}となり、
ステップS308において図47(b)に示すようにト
ラックへ割り当てられる。ネットリストNは空集合とな
るので、配線処理が終了する。
【0356】(本発明の第4の実施の形態の実施例1)
本発明の第4の実施の形態の実施例1の動作を詳細に説
明する。特に、第1の実施の形態の動作と異なるステッ
プS304Cについて述べる。
【0357】図40(a)に示すチャネル配線領域につ
いて考える。第1の実施の形態の実施例より、サブネッ
トsn1 1={t5、t1}のAT(sn1 1)が
空集合となる。
【0358】ステップS304Cにおいて、図48
(a)に示すように、サブネットsn1 1の元のネット
n1={t1、t3、t5}に関する配線を行う。ネッ
トn1の配線経路は配線禁止図形として登録する。サブ
ネットsn1 1とsn1 2はネットリストから削除
される。再計算した割り当て可能なトラックの集合AT
は、AT(sn2)={T1}、AT(sn3)={T
6}となる。
【0359】ステップS305で、図48(b)に示す
禁止制約グラフGが求まる。
【0360】図48(b)中の太線で示している部分
が、ステップS306で求まる部分禁止制約グラフG*
である。
【0361】ステップS307でのトラック割り当て候
補の集合N*はN*={sn2}となり、ステップS3
08において、サブネットsn2の幹線はトラックT1
へ割り当てられる。
【0362】ステップS305〜S310の2回目のル
ープで、トラック割り当て候補の集合N*={sn3}
となる。ステップS308で、サブネットsn3の幹線
がトラックT6に割り当てられ、配線処理が終了する。
配線結果を図41(c)に示す。
【0363】(本発明の第4の実施の形態の実施例2)
本発明の第4の実施の形態の実施例2の動作を詳細に説
明する。特に、第1の実施の形態の動作と異なるステッ
プS304Cについて述べる。
【0364】図49(a)に示すチャネル配線領域につ
いて考える。ネットリストNはN={n1、n2}、n
1={t1、t2、t4}、n2={t3、t5}であ
る。ネットn1はサブネットsn1 1={t1、t
4}とsn1 2={t4、t2}に分割される。ネッ
トn2はそれ自身でサブネットsn2={t3、t5}
となる。サブネットsn1 1は配線禁止図形の塊によ
って配線が妨害されるため、AT(sn1 1)は空集
合となる。
【0365】ステップS304Cにおいて、図49
(b)に示すように、サブネットsn1 1の元のネット
n1={t1、t2、t4}を接続する配線を行う。ネ
ットsn1の配線経路は配線禁止図形として登録する
(図49(b)のH8〜H28及びV8〜V27であ
る)。サブネットsn1 1とsn1 2はネットリス
トから削除される。再計算した割り当て可能なトラック
の集合ATは、AT(sn2)={T3}となる。
【0366】ステップS305で、図50(a)に示す
禁止制約グラフGが求まる。
【0367】ステップS307でのトラック割り当て候
補の集合N*はN*={sn2}となり、ステップS3
08において図50(b)に示すようにトラックへ割り
当てられる。ネットリストNは空集合となるので、配線
処理が終了する。
【0368】本例では配線禁止図形が複雑に配置してい
る。そのため、迂回配線を表すためのサブネット分割に
よって配線禁止図形を迂回する処理は、煩雑なものにな
ることが予想される。本ステップで行うように、他のサ
ブネットの配線に先立ち、迷路配線法などを適用して迂
回配線を求めておくことにより、後の処理の効率化を図
ることができる。
【0369】(本発明の第5の実施の形態の実施例1)
本発明の第5の実施の形態の実施例1の動作を詳細に説
明する。
【0370】図51(a)に示すチャネル配線領域につ
いて考える。ネットリストNはN={n1、n2}、n
1={t1、t4、t5}、n2={t2、t3}。H
1、H2は垂直方向通過禁止図形、V1は水平方向通過
禁止図形である。トラックは上方から下方向に順にT
1、T2、…、T5とする。カラムはチャネル配線領域
の左端から右方向に順にC1、C2、…、C5と表す。
【0371】先ず、ステップS301で上述のようなチ
ャネル配線領域が設定され、ステップS302でネット
を次に示すようにサブネットへ分割する。ネットn1は
サブネットsn1 1={t1、t4}とサブネットs
n1 2={t4、t5}に分割される。ネットn2は
それ自身がサブネットsn2になる。よって、ネットリ
ストN={sn1 1、sn1 2、sn2}となる。
【0372】ステップS303で、各端子tの到達可能
トラックの集合RT(t)、各サブネットsnの割り当
て可能トラックの集合AT(sn)、各カラムcの通過
可能トラックの集合PT(c)、配線密度D(c)、ス
ルーホール設定可能トラックの集合TH(c)を計算す
る。各サブネットsnの割り当て可能トラックの集合A
T(sn)は、AT(sn1 1)={T1、T3、T
4、T5}、AT(sn1 2)={T1、T3、T
4、T5}、AT(sn2)={T1、T3、T4、T
5}となる。
【0373】ステップS304では、割り当て可能トラ
ックの集合ATが空集合となるサブネットが無いため、
処理は行われない。
【0374】ステップS305AのステップS3051
において、図51(b)に示す禁止制約グラフGを作成
する。次のステップS3052で、禁止制約グラフG内
に存在する制約サイクル、sn1 1→sn2→sn1
2→sn1 1、が検出される。
【0375】ステップS3053では、ステップS30
52で検出された制約サイクルを解消するために、ルー
プ内に含まれる2重枝を削除する。ここでは、検出され
る制約サイクルは1つであり、それに含まれる2重枝は
(sn1 1、sn1 2)のみである。よって、2重
枝(sn1 1、sn1 2)が選択される。制約サイ
クルに含まれる2重枝が複数個存在する場合には、関数
F1の係数の値を、例えば、α′=1000、β′=1
00、γ′=10、δ′=1に設定し、関数F1の値が
最大となる2重枝を選択する。制約サイクルを解消した
後の禁止制約グラフを図51(c)に示す。
【0376】S306において、部分禁止制約グラフG
*を求める。ここでは、部分禁止制約グラフG*は図5
1(c)と同じになる。
【0377】ステップS307では、割り当て処理の対
象となるサブネットの集合N*はN*={sn1 1、
sn1 2、sn2}となる。
【0378】ステップS308において、N*内のサブ
ネットの幹線をトラックへ割り当てる。トラック割り当
ての結果を図51(d)に示す。
【0379】ステップS309で、Nは空集合になり、
ステップS310で終了する。
【0380】(本発明の第6の実施の形態の実施例1)
本発明の第6の実施の形態の実施例1の動作を詳細に説
明する。
【0381】図52(a)に示すチャネル配線領域につ
いて考える。ネットリストNはN={n1、n2}、n
1={t1、t3、t5、t6}、n2={t2、t
4、t7}。H、Vはそれぞれ垂直方向通過禁止図形、
水平方向通過禁止図形である。トラックは上方から下方
向に順にT1、T2、…、T5とする。カラムはチャネ
ル配線領域の左端から右方向に順にC1、C2、…、C
6と表す。
【0382】先ず、ステップS301で上述のようなチ
ャネル配線領域が設定され、ステップS302でネット
を次に示すようにサブネットへ分割する。ネットn1は
サブネットsn1 1={t1、t5}、sn1 2=
{t5、t6}、sn1 3={t6、t3}に分割さ
れる。ネットn2はサブネットsn2 1={t4、t
2}、sn2 2={t2、t7}に分割される。よっ
て、ネットリストN={sn1 1、sn1 2、sn
3、sn2 1、sn2 2}となる。
【0383】ステップS303で、各端子tの到達可能
トラックの集合RT(t)、各サブネットsnの割り当
て可能トラックの集合AT(sn)、各カラムcの通過
可能トラックの集合PT(c)、配線密度D(c)、ス
ルーホール設定可能トラックの集合TH(c)を計算す
る。各サブネットsnの割り当て可能トラックの集合A
T(sn)は、AT(sn1 1)=AT(sn1
2)=AT(sn1 3)=AT(sn2 1)=AT
(sn2 2)={T1、T2、T5}となる。
【0384】ステップS304では、割り当て可能トラ
ックの集合ATが空集合となるサブネットが無いため、
処理は行われない。
【0385】ステップS305BのステップS3051
において、図52(b)に示す禁止制約グラフGを作成
する。次のステップS3052で、禁止制約グラフG内
に存在する制約サイクルを検出する。制約サイクル解消
のために削除する2重枝の候補は(sn1 1、sn1
2)、(sn1 2、sn1 3)、(sn2 1、
sn2 2)である。
【0386】ここでは、評価関数F1の係数の値をα′
=1000、β′=100、γ′=10、δ′=1に設
定する。上述の2重枝の候補の中で、関数F1の値が最
大となる2重枝(sn1 1、sn1 2)を選択す
る。図52(c)に示すように、この削除後の禁止制約
グラフに2重枝を含む制約サイクルが存在するため、残
りの候補の中から評価関数F1の値が最大となる2重枝
(sn1 2、sn1 3)を選択し、削除する。更に、
残った2重枝(sn2 1、sn2 2)を含む制約サ
イクルが存在するため、この2重枝も削除する。2重枝
を含む制約サイクルを解消した後の禁止制約グラフは図
34(b)のようになる。
【0387】次に、ステップS3054で、2重枝を含
まない制約サイクルを解消する。図52(d)に示すス
テップS3053後の禁止制約グラフにおいて、制約ル
ープ:sn1 3→sn2 2→sn1 3が存在す
る。この制約サイクルに含まれるサブネットの中から、
ジョグ挿入を行うサブネットを評価関数F2に基づき選
択する。ここでは、1つの制約サイクルに含まれる2つ
のサブネットの中から、ジョグ挿入を行うサブネットを
選択するため、評価関数F2の項の内、第3項の値が重
要である。よって、関数F2の係数の値をα″=β″=
0、γ″=1に設定する。サブネットsn1 3とsn
2に対する関数F2の値は、それぞれ、2と3にな
る。従って、関数F2の値が最小となるサブネットsn
3に対してジョグ挿入を行う。
【0388】次に、評価関数F3に基づいて、サブネッ
トsn1 3のジョグ挿入位置を決める。関数F3の第
1項を優先項目とし、ジョグを挿入することによって新
たな上下制約を生じないカラムC5を選択する。カラム
C5には端子が存在しないので、新たな上下制約が発生
することはない。サブネットsn1 3にジョグを挿入
し、サブネットsn1 1とsn1 2に分割
する。制約サイクルを解消した後の禁止制約グラフを図
52(e)に示す。ネットリストN={sn1 1、sn
2、sn1 1、sn1 2、sn2
1、sn2 2}となる。
【0389】S306において、部分禁止制約グラフG
*を求める。ここでは、禁止制約グラフ全体が部分禁止
制約グラフG*になる。
【0390】ステップS307では、割り当て処理の対
象となるサブネットの集合N*はN*={sn1 1、
sn1 2、sn1 1、sn1 2、sn2
1、sn2 2}となる。
【0391】ステップS308において、N*内のサブ
ネットの幹線をトラックへ割り当てる。トラック割り当
ての結果を図52(f)に示す。
【0392】ステップS309で、Nは空集合になり、
ステップS310で終了する。
【0393】(本発明の第7の実施の形態の実施例1)
本発明の第7の実施の形態の実施例1の動作を詳細に説
明する。
【0394】図53(a)に示すチャネル配線領域につ
いて考える。ネットリストNはN={n1、n2、n
3}、n1={t1、t3、t6}、n2={t2、t
7}、n3={t4、t5}。H1とH2は垂直方向通
過禁止図形、V1は水平方向通過禁止図形である。トラ
ックは上方から下方向に順にT1、T2、T3、T4と
する。カラムはチャネル配線領域の左端から右方向に順
にC1、C2、…、C7と表す。
【0395】先ず、ステップS301で上述のようなチ
ャネル配線領域が設定され、ステップS302でネット
を次に示すようにサブネットへ分割する。ネットn1は
サブネットsn1 1={t6、t1}、sn1 2=
{t1、t3}に分割される。ネットn2とn3はそれ
自身でサブネットsn2、sn3になる。よって、ネッ
トリストN={sn1 1、sn1 2、sn2、sn
3}となる。
【0396】ステップS303で、各端子tの到達可能
トラックの集合RT(t)、各サブネットsnの割り当
て可能トラックの集合AT(sn)、各カラムcの通過
可能トラックの集合PT(c)、配線密度D(c)、ス
ルーホール設定可能トラックの集合TH(c)を計算す
る。各サブネットsnの割り当て可能トラックの集合A
T(sn)は、AT(sn1 1)=AT(sn1
2)={T2、T3、T4}、AT(sn2)={T
1、T2}、AT(sn3)={T2、T3、T4}と
なる。
【0397】ステップS304では、割り当て可能トラ
ックの集合ATが空集合となるサブネットが無いため、
処理は行われない。
【0398】ステップS305CのステップS3051
において、図53(b)に示す禁止制約グラフGを作成
する。次のステップS3052で、禁止制約グラフG内
に存在する制約サイクルを検出する。ここでは禁止制約
グラフに制約サイクルが存在しないため、ステップS3
053およびS3054の処理は行われない。
【0399】ステップS3055において、禁止制約グ
ラフの有向枝(sn1 2、sn2)が探索される場合
を考える。ステップS5C32で、AT*(sn1
2)={T2、T3、T4}なのでHighest
=T2である。また、AT*(sn2)={T1、T
2}である。次のステップS5C33では、AT*(s
n2)が空集合に更新される。よってステップS5C3
4でサブネットsn2をジョグ挿入の候補とする。
【0400】ステップS5C38において、サブネット
sn2に対して、評価関数F3に基づいてジョグの挿入
が行われる。評価関数F3の第1項を最優先の評価項目
に設定し、新たな上下制約を生じないカラムC4でサブ
ネットsn2にジョグを挿入する。サブネットsn2は
サブネットsn2 1={t7、t*}とsn2 2=
{t*、t2}に分割される。端子t*はカラムC4で
のジョグを表すために導入した仮想の端子である。更新
した禁止制約グラフを図53(c)に示す。ネットリス
トNはN={sn1 1、sn1 2、sn2 1、s
n2 2、sn3}となる。各サブネットの割り当て可
能トラックの集合は、AT(sn1 1)={T2、T
3、T4}、AT(sn1 2)={T2、T3、T
4}、AT(sn2 1)={T1、T2、T3、T
4}、AT(sn2 2)={T1、T2}である。ま
た、割り当て可能有効トラックの集合AT*は、AT*
(sn1 1)={T2、T3}、AT*(sn1
2)={T2、T3}、AT*(sn2 1)={T
3、T4}、AT*(sn2 2)={T1、T2}と
なる。従って、AT*が空集合になるサブネットは存在
しなくなる。
【0401】S306において、部分禁止制約グラフG
*を求める。図53(c)の太線で示す部分が部分禁止
制約グラフである。
【0402】ステップS307では、割り当て処理の対
象となるサブネットの集合N*はN*={sn2 2、
sn3}となる。
【0403】ステップS308において、N*内のサブ
ネットの幹線をトラックへ割り当てる。サブネットsn
2の幹線はトラックT1に、sn3の幹線はトラッ
クT2に割り当てられる。
【0404】ステップS309で、N={sn1 1、
sn1 2、sn2 1}となる。
【0405】ステップS305〜S310の2回目のル
ープで、サブネットsn1 1とsn1 2の幹線がト
ラックT3に、sn2 1の幹線がトラックT4に割り
当てられる。ステップS309でネットリストNが空集
合となり、配線処理が終了する。配線結果を図53
(d)に示す。
【0406】(本発明の第8の実施の形態の実施例1)
本発明の第8の実施の形態の実施例1の動作を詳細に説
明する。
【0407】図54(a)に示すチャネル配線領域につ
いて考える。ネットリストNはN={n1、n2}、n
1={t1、t4}、n2={t2、t3}。R1とR
2は共に垂直方向および水平方向の両方に関しての通過
禁止図形である。トラックは上方から下方向に順にT
1、T2、T3とする。カラムはチャネル配線領域の左
端から右方向に順にC1、C2、…、C7と表す。
【0408】先ず、ステップS301で上述のようなチ
ャネル配線領域が設定され、ステップS302でネット
を次に示すようにサブネットへ分割する。ネットn1、
n2は共に2端子のみを接続するネットなので、それ自
身でサブネットsn1、sn2になる。よって、ネット
リストN={sn1、sn2}となる。
【0409】ステップS303で、各端子tの到達可能
トラックの集合RT(t)、各サブネットsnの割り当
て可能トラックの集合AT(sn)、各カラムcの通過
可能トラックの集合PT(c)、配線密度D(c)、ス
ルーホール設定可能トラックの集合TH(c)を計算す
る。各サブネットsnの割り当て可能トラックの集合A
T(sn)は、AT(sn1)={T2}、AT(sn
2)={T2}となる。
【0410】ステップS304では、割り当て可能トラ
ックの集合ATが空集合となるサブネットが無いため、
処理は行われない。
【0411】ステップS305DのステップS3051
において、図54(b)に示す禁止制約グラフGを作成
する。禁止制約グラフは、サブネットsn1、sn2に
対応する2つの孤立節点から成る。次のステップS30
52で、禁止制約グラフG内に存在する制約サイクルを
検出する。ここでは禁止制約グラフに制約サイクルが存
在しないため、ステップS3053およびS3054の
処理は行われない。更に、禁止制約グラフ内に有向枝が
存在しないため、ステップS3055での探索処理は行
われず、サブネットsn1、sn2のAT*は、AT*
(sn1)={T2}、AT*(sn2)={T2}と
なる。
【0412】ステップS5D1〜S5D8において、各
カラムcにおけるトラックの集合RT all(c)と
サブネットの集合Net(c)を計算し、配線不可能な
サブネットに関する判定結果Flag(c)を求める。
カラムC1では、RT all(C1)={T2}、N
et(C1)={sn2}である。よって、|RT al
l(C1)|≧|Net(C1)|なので、Flag
(C1)は“OK”である。次のカラムC2において、
RT all(C2)={T2}、Net(C2)=
{sn1、sn2}となり、|RT all(C2)|
<|Net(C2)|である。従って、Flag(C
2)は“NG”になる。ステップS5D6において、|
Net(C2)|−|RT all(C2)|=1個の
サブネットに対して、ジョグの挿入が必要になる。ここ
では、評価関数F4の係数をα''' =0、β''' =1、
γ''' =0に設定する。関数F4の値は、sn1の区間
の方がsn2の区間よりも短いので、sn2の値が最大
となる。よって、ジョグを挿入するサブネットとして、
sn2が選択される。以下同様に、カラムC3〜C7に
おけるトラックの集合RT all(c)とサブネット
の集合Net(c)を計算し、配線不可能なサブネット
に関する判定結果Flag(c)を求める。計算結果は
下記の表4のようになる。
【0413】
【表4】
【0414】ステップS5D9で、集合Jogに含まれ
るサブネットに対して、ジョグを挿入する位置を決定す
る。サブネットsn2に対してジョグを挿入する位置を
考える。表4より、Flagが“NG”となっているの
はカラムC2〜C6である。カラムC2から順に右方向
にカラムの通過可能トラックの集合PTを見て行くと
き、カラムC4においてトラックT1が追加されてい
る。カラムC5において、C4でトラックが追加される
前にPTの要素であったトラックT3が削除される。従
って、カラムC4〜C5の範囲内で、評価関数F3に基
づいて、サブネットsn2へのジョグ挿入位置を決め
る。関数の第3項以外の項目に関して、カラムC4とカ
ラムC5は同等である。ここでは第3項のTH(c)の
値を参照し、カラムC4の関数F3の値が最大となる。
よって、サブネットsn2のジョグ挿入位置をカラムC
4に決める。禁止制約グラフは図54(c)のように更
新される。
【0415】S306において、部分禁止制約グラフG
*を求める。部分禁止制約グラフは図54(c)と同じ
である。
【0416】ステップS307では、割り当て処理の対
象となるサブネットの集合N*はN*={sn1、sn
1、sn2 2}となる。
【0417】ステップS308において、N*内のサブ
ネットの幹線をトラックへ割り当てる。トラック割り当
ての結果を図54(d)に示す。
【0418】ステップS309で、Nは空集合になり、
ステップS310で終了する。
【0419】(本発明の第9の実施の形態の実施例1)
本発明の第9の実施の形態の実施例1の動作を詳細に説
明する。
【0420】図55(a)に示すチャネル配線領域につ
いて考える。ネットリストNはN={n1、n2}、n
1={t1、t4、t5、t6}、n2={t2、t
3}。R1とR2は共に垂直方向および水平方向の両方
に関しての通過禁止図形である。V1は水平方向通過禁
止図形である。トラックは上方から下方向に順にT1、
T2、T3とする。カラムはチャネル配線領域の左端か
ら右方向に順にC1、C2、…、C7と表す。ここで、
カラムC4の上下に位置する端子t5とt6は予め配線
されているものとする。ネットn1をサブネットに分割
する際に、端子t5とt6の代わりに、仮想の端子t5
6を導入して考える。
【0421】先ず、ステップS301で上述のようなチ
ャネル配線領域が設定され、ステップS302でネット
を次に示すようにサブネットへ分割する。ネットn1は
sn1 1={t1、t5 6}、sn1 2={t5
6、t4}に分割される。ネットn2は2端子のみを
接続するネットなので、それ自身でサブネットsn2に
なる。よって、ネットリストN={sn1 1、sn1
2、sn2}となる。
【0422】ステップS303で、各端子tの到達可能
トラックの集合RT(t)、各サブネットsnの割り当
て可能トラックの集合AT(sn)、各カラムcの通過
可能トラックの集合PT(c)、配線密度D(c)、ス
ルーホール設定可能トラックの集合TH(c)を計算す
る。各サブネットsnの割り当て可能トラックの集合A
T(sn)は、AT(sn1 1)={T2、T3}、
AT(sn1 2)={T2}、AT(sn2)={T
2}となる。
【0423】ステップS304では、割り当て可能トラ
ックの集合ATが空集合となるサブネットが無いため、
処理は行われない。
【0424】ステップS305DのステップS3051
において、図55(b)に示す禁止制約グラフGを作成
する。次のステップS3052で、禁止制約グラフG内
に存在する制約サイクルを検出する。ここでは禁止制約
グラフに制約サイクルが存在しないため、ステップS3
053およびS3054の処理は行われない。更に、禁
止制約グラフ内に有向枝が存在しないため、ステップS
3055での探索処理は行われず、サブネットsn1、
sn2のAT*は、AT*(sn1 1)={T2、T
3}、AT*(sn1 2)={T2}、AT*(sn
2)={T2}となる。
【0425】ステップS5D1〜S5D8において、各
カラムcにおけるトラックの集合RT all(c)と
サブネットの集合Net(c)を計算し、配線不可能な
サブネットに関する判定結果Flag(c)を求める。
カラムC1では、RT all(C1)={T2}、N
et(C1)={sn2}である。よって、|RT al
l(C1)|≧|Net(C1)|なので、Flag
(C1)は“OK”である。次のカラムC2において、
RT all(C2)={T2、T3}、Net(C
2)={sn1 1、sn2}となり、|RT all
(C2)|≧|Net(C2)|なので、Flag(C
2)は“OK”である。同様に、Flag(C3)も
“OK”である。次のカラムC4において、RT al
l(C4)={T2}、Net(C4)={sn1
1、sn1 2、sn2}となり、|RT all(C
4)|<|Net(C4)|である。従って、Flag
(C4)は“NG”になる。ステップS5D6におい
て、|Net(C4)|−|RT all(C4)|=1
個のサブネットに対して、ジョグの挿入が必要になる。
ここでは、評価関数F4の係数をα''' =0、β''' =
1、γ''' =0に設定する。関数F4の値は、sn1
2の区間の方がsn2の区間よりも短いので、sn2の
値が最大となる。よって、ジョグを挿入するサブネット
として、sn2が選択される。以下同様に、カラムC5
〜C7のトラックの集合RT all(c)とサブネッ
トの集合Net(c)を計算し、配線不可能なサブネッ
トに関する判定結果Flag(c)を求める。計算結果
は下記の表5のようになる。
【0426】
【表5】
【0427】ステップS5D9で、集合Jogに含まれ
るサブネットに対して、ジョグを挿入する位置を決定す
る。サブネットsn2に対してジョグを挿入する位置を
考える。表5より、Flagが“NG”となっているの
はカラムC4〜C6である。カラムC4から順に右方向
にカラムの通過可能トラックの集合PTを見て行くと
き、カラムC4においてトラックT1が追加されてい
る。カラムC5において、C4でトラックが追加される
前にPTの要素であったトラックT3が削除される。従
って、カラムC4〜C5の範囲内で、評価関数F3に基
づいて、サブネットsn2へのジョグ挿入位置を決め
る。ここでは第3項のTH(c)の値を参照し、カラム
C4の関数F3の値が最大となる。よって、サブネット
sn2のジョグ挿入位置をカラムC4に決める。禁止制
約グラフは図55(c)のように更新される。
【0428】S306において、部分禁止制約グラフG
*を求める。部分禁止制約グラフは図55(c)と同じ
である。
【0429】ステップS307では、割り当て処理の対
象となるサブネットの集合N*はN*={sn1 1、
sn1 2、sn2 1、sn2 2}となる。
【0430】ステップS308において、N*内のサブ
ネットの幹線をトラックへ割り当てる。しかし、配線禁
止図形のために、サブネットsn2 1の幹線をトラッ
クT3に割り当てることは不可能である。よって、Rn
ot={sn2 1}に設定する。このときの配線状態
を図56(a)に示す。
【0431】ステップS310Aで、Nは{sn2
1}になる。サブネットsn2 1に対して未配線処理
を適用し、図56(b)に示すような配線結果を求め、
終了する。本例では、ネットn1の配線に対して、引き
剥がし再配線処理が行われる。
【0432】(本発明の第10の実施の形態の実施例
1)本発明の第10の実施の形態の実施例1の動作を詳
細に説明する。
【0433】第9の実施の形態の実施例1で説明した図
55(a)に示すチャネル配線領域について考える。ス
テップS308までは第9の実施の形態の実施例1で説
明した処理と同様である。
【0434】ステップS310Bで、チャネル配線領域
の下辺を1本のトラック分だけ下方向に移動する。これ
により、トラックT4が新たに設定される。図55
(b)に示したように、これまでに求まっているサブネ
ットsn1 1、sn1 2およびsn2 2の配線経
路を配線禁止図形として登録する。このようにして設定
したチャネルを図57(a)に示す。
【0435】続いて、ステップS302より処理を行
う。サブネットsn1へのジョグ挿入の際に導入した端
子t*を、サブネットsn2 2の配線経路の左端に設
定する。ネットリストNはN={sn2 1}、sn2
1={t*、t3}である。H1〜H8、V1〜V7
はそれぞれ垂直方向通過禁止図形、水平方向通過禁止図
形である。
【0436】ステップS303において、サブネットs
n2 1の割り当て可能トラックの集合AT(sn2
1)は空集合になる。よって、次のステップS303に
おいて、垂直方向通過禁止図形を回避するために、端子
t*の位置をカラムC4からカラムC7に移動させる。
それに伴い、不必要になる既配線経路を削除する。ここ
では、配線禁止図形H7、V4、V5を削除する。
【0437】ステップS308において、図57(b)
に示す配線が求まる。
【0438】(本発明の第11の実施の形態の実施例
1)本発明の第11の実施の形態の実施例1の動作を詳
細に説明する。
【0439】第10の実施の形態の実施例1で説明した
図55(a)に示すチャネル配線領域について考える。
サブネットsn2 1を配線するために必要となる不足
トラック本数を求めるまでは、第10の実施の形態の実
施例1で説明した処理と同様である。すなわち、図57
(b)に示す配線が求まった後、ステップS310Cに
おいて、処理「再配線」が適用される。
【0440】先ず、ステップS1で、図57(b)に示
す配線経路が削除され、ネットリストNはN={n1、
n2}、n1={t1、t4、t5、t6}、n2=
{t2、t3}になる。このときのチャネル配線領域を
図58(a)に示す。
【0441】次に、ステップS2において、先ず、配線
禁止図形を移動することなく、図58(a)のチャネル
配線領域に対して配線処理を最初から適用する場合につ
いて考える。ネットn1は第9の実施の形態の実施例1
と同様にして、sn1 1={t1、t5 6}、sn
2={t5 6、t4}に分割される。ネットn2
はそれ自身でサブネットsn2となる。以降の処理は、
第1の実施の形態の実施例1で説明した内容と同様の処
理により、図58(b)に示す配線結果が求まり、配線
処理を終了する。
【0442】次に、ステップS3で、処理「配線禁止図
形の移動および形状の変更」を行う場合について考え
る。今、禁止図形R2がチャネル配線領域の下辺の移動
に追従して移動可能であるとする。チャネル配線領域
は、図59(a)のようになる。以降の処理内容は、上
述した場合と同様である。図59(b)に示す配線結果
が求まり、終了する。
【0443】(本発明の第12の実施の形態の実施例
1)本発明の第12の実施の形態の実施例1の動作を詳
細に説明する。
【0444】第10の実施の形態の実施例1で説明した
図55(a)に示すチャネル配線領域について考える。
ステップS308までは第9の実施の形態の実施例1で
説明した処理と同様である。
【0445】ステップS310Dで、チャネル配線領域
の下辺を1本のトラック分だけ下方向に移動する。これ
により、トラックT4が新たに設定される。図55
(b)に示したように、これまでに求まっているサブネ
ットsn1 1、sn1 2およびsn2 2の配線経
路を配線禁止図形として登録する。
【0446】次に、処理「配線禁止図形の移動および形
状の変更」を行う。今、禁止図形R2がチャネル配線領
域の下辺の移動に追従して移動可能であるとする。チャ
ネル配線領域は、図60(a)のようになる。ネットリ
ストNはN={sn2 1}、sn2 1={t*、t
3}である。ステップS308で、サブネットsn2
の幹線はトラックT3に割り当てられ、図60(b)に
示す配線結果が求まり、終了する。
【0447】(本発明の第13の実施の形態の実施例
1)本発明の第13の実施の形態の実施例1の動作を詳
細に説明する。
【0448】第10の実施の形態の実施例1で説明した
図55(a)に示すチャネル配線領域について考える。
サブネットsn2 1を配線するために必要となる不足
トラック本数を求めるまでは、第12の実施の形態の実
施例1で説明した処理と同様である。すなわち、図60
(b)に示す配線が求まった後、ステップS310Eに
おいて、処理「再配線」が適用される。
【0449】先ず、ステップS1で、図60(b)に示
す配線経路が削除され、ネットリストNはN={n1、
n2}、n1={t1、t4、t5、t6}、n2=
{t2、t3}になる。このときのチャネル配線領域を
図59(a)と同様である。
【0450】次に、ステップS2において、先ず、配線
禁止図形を移動することなく、図59(a)のチャネル
配線領域に対して配線処理を最初から適用する場合につ
いて考える。これは、第11の実施の形態の実施例1の
説明において、ステップS3で処理「配線禁止図形の移
動および形状の変更」を行う場合と同様である。図59
(b)に示す配線結果が求まり、終了する。
【0451】次に、ステップS3で、処理「配線禁止図
形の移動および形状の変更」を行う場合について考え
る。今、禁止図形R1がチャネル配線領域の下辺の移動
に追従して移動可能であるとする。チャネル配線領域
は、図61(a)のようになる。以降の処理内容は、上
述した場合と同様である。図61(b)に示す配線結果
が求まり、終了する。
【0452】
【発明の効果】以上説明したように、本発明は、以下の
(1)〜(5)の効果を奏する。
【0453】(1)従来の配線方法では配線を完了する
ことが不可能であった配線禁止図形を内部に含むチャネ
ル配線領域に対して、与えられたネットリストを満たす
配線を行うことが可能になる。
【0454】(2)チャネル配線領域の境界が垂直方向
に移動可能な場合には、最小の面積でチャネル配線領域
を配線することが可能である。
【0455】(3)チャネル配線領域内に存在する配線
禁止図形の形状及び位置と端子の位置との関係から生ず
る制約を満足するように、ネットリストに含まれる各ネ
ットの配線経路を効率良く求めることができる。
【0456】(4)チャネル配線領域内に存在する配線
禁止図形に妨害され、配線経路を求めることが困難なネ
ットに関して、タイミング制約などの配線長に関する制
限が加えられている場合に、それを満足する配線経路を
求めることができる。
【0457】(5)チャネル配線領域内に存在する配線
禁止図形によってトラックが分断されているため、ネッ
トの幹線全体を1つのトラックに割り当てることができ
ない場合がある。このとき必要となるジョグ挿入によっ
て増加するスルーホールの個数を最小にすることができ
る。
【0458】発明の効果(1)の理由を次の1−a)〜
1−e)に述べる。
【0459】1−a)垂直方向通過禁止図形を回避する
処理により、配線禁止図形を迂回する配線を行うためで
ある[第1の実施の形態]。
【0460】1−b)ネットの幹線をサブネット単位で
異なるトラックに割り当てる方法によっては解消できな
かった制約サイクルが存在する場合でも、サブネットの
幹線を分断して異なるトラックに割り当てることにより
制約サイクルを解消するためである[第6の実施の形
態]。
【0461】1−c)禁止制約グラフ内に存在するパス
において、パスに含まれる節点に対応するサブネットの
幹線をトラックに割り当てるとき、サブネットに対応す
る節点の個数分のトラックが必要である。本発明の第7
の実施の形態は、禁止制約グラフに存在するパスにおい
て、パス上の節点に対応するサブネットの幹線をトラッ
クに割り当てる際に、配線禁止図形のために各サブネッ
トの幹線全体を割り当てるのに十分なトラックが存在し
ない場合に、サブネットの幹線を分断し異なるトラック
に割り当てるためである[第7の実施の形態]。
【0462】1−d)禁止制約グラフによって表すこと
ができないような配線禁止図形に関連するトラック割り
当ての制約を発見し、サブネットにジョグを挿入するた
めである[第8の実施の形態]。
【0463】1−e)チャネル配線領域が固定の場合
に、トラック割り当てができなかったネットに対して未
配線処理を適用するためである[第9の実施の形態]。
【0464】発明の効果(2)の理由を次の2−a)〜
2−d)に述べる。
【0465】2−a)チャネル配線領域の境界線並びに
配線禁止図形の形状及び位置が垂直方向に可変であり且
つ幹線が割り当てられていないトラック(空きトラッ
ク)が存在する場合に、空きトラックを削除し、チャネ
ル配線領域の高さを縮めるためである[第1の実施の形
態]。
【0466】2−b)チャネル配線領域に位置する配線
禁止図形の位置が固定でチャネル配線領域の下辺または
上辺の位置が可変の場合に、トラック割り当てができな
かったネットに対して、チャネル配線領域に新たなトラ
ックを必要な本数だけ挿入するためである[第10の実
施の形態]。
【0467】2−c)チャネル配線領域に位置する配線
禁止図形の位置が可変でチャネル配線領域の下辺または
上辺の位置が可変の場合に、トラック割り当てができな
かったネットに対して、チャネル配線領域に新たなトラ
ックを必要な本数だけ挿入し、チャネル配線領域内の配
線禁止図形の位置を移動した後、最初から配線処理を行
うためである[第11、12、13の実施の形態]。
【0468】2−d)トラック割り当てができないネッ
トが生じたときに、新たなトラックを挿入した後でチャ
ネル配線領域内に位置する配線禁止図形の位置を移動し
ながら必要なトラックの本数を求め、不足トラックの本
数を正確に計算しているためである[第12、13の実
施の形態]。
【0469】発明の効果(3)の理由を次の3−a)〜
3−h)に述べる。
【0470】3−a)サブネットへの分割処理において
ネットを2つの端子の集合から成るサブネットへ分割
し、サブネットに対する制約を扱うので、1つのサブネ
ットに対して他のサブネットと関連する制約の数を2つ
以下に抑えることができる。このため、禁止制約グラフ
において、サブネットに対応する節点に接続する枝の
内、他のサブネットに対応する節点と接続する枝の個数
は2個以下になる。節点につながる枝の個数を制限でき
るため、禁止制約グラフに適用する探索、削除などの処
理を効率良く実行できるためである[第1の実施の形
態]。
【0471】3−b)垂直方向通過禁止図形を回避する
ために禁止図形の範囲内に位置する端子から引き出し配
線を予め行うため、配線禁止図形の配置位置の状況など
により配線経路が求めるのが困難な場合でも、後に続く
配線処理を複雑にすることなく容易に対処することがで
きるためである[第2の実施の形態]。
【0472】3−c)垂直方向通過禁止図形を回避する
ために禁止図形の範囲内に位置する端子に接続するサブ
ネットを予め配線するため、このようなサブネットを後
に続く配線処理の対象から除外することができる。よっ
て、配線禁止図形の配置位置の状況などにより配線経路
が求めるのが困難なサブネットが存在する場合でも、配
線処理を複雑にすることなく容易に対処することができ
るためである[第3の実施の形態]。
【0473】3−d)垂直方向通過禁止図形を回避する
ために禁止図形の範囲内に位置する端子に接続するサブ
ネットの元のネット全体を予め配線するため、このよう
なネットのサブネットを後に続く配線処理の対象から除
外することができる。よって、配線禁止図形の配置位置
の状況などにより配線経路が求めるのが困難なネットが
存在する場合でも、配線処理を複雑にすることなく容易
に対処することができるためである[第4の実施の形
態]。
【0474】3−e)ジョグの挿入が必要なサブネット
を、割り当て可能有効トラックの集合の計算により、効
率良く求めているためである[第7の実施の形態]。
【0475】3−f)禁止制約グラフにパスが存在しな
い場合にも配線禁止図形によってトラックが分断されて
いるようなチャネル配線領域ではサブネットの幹線をト
ラックに割り当てることが不可能な場合が生ずる。各カ
ラムcにおいて割り当て可能なトラックの集合RT
ll(c)、および、幹線を割り当てなければならない
ネットの集合Net(c)を求め、個数を比較すること
により、ジョグを挿入しなければならないサブネットを
効率良く求めているためである[第8の実施の形態]。
【0476】3−g)チャネル配線領域を変更した後で
は、トラック割り当て処理が終わっているネットの配線
経路の情報をそのまま利用し、割り当てができなかった
ネットのみを対象とするためである[第10、12の実
施の形態]。
【0477】3−h)チャネル配線領域内に位置する配
線禁止図形の位置を固定し、これまで求めた配線結果の
情報をそのまま利用しながら、トラック割り当てができ
なかったネットに対して、必要なトラックの本数を求め
ているので、高速に不足トラックの本数を計算できるた
めである[第11の実施の形態]。
【0478】発明の効果(4)の理由を次の4−a)、
4−b)に述べる。
【0479】4−a)禁止図形の範囲内に位置する端子
に接続するサブネットを他のネットの配線よりも前に行
うことから、サブネットに含まれる端子間の経路がタイ
ミングに関する制約を満足するような経路を、他のネッ
トの経路よりも優先して設定しているためである[第3
の実施の形態]。
【0480】4−b)禁止図形の範囲内に位置する端子
に接続するネットを他のネットの配線よりも前に行うこ
とから、ネットに含まれる端子間の経路がタイミングに
関する制約を満足するような経路を、他のネットの経路
よりも優先して設定しているためである[第4の実施の
形態]。
【0481】発明の効果(5)の理由を次の5−a)〜
5−c)に述べる。
【0482】5−a)禁止制約グラフに存在する制約サ
イクルを検出し、ネットを分断することによって制約サ
イクルを解消しているので、1つのネットの幹線全体を
1つのトラックに割り当てるのではなく、サブネット単
位で異なるトラックに割り当てることが可能である。ネ
ットに対して、そのネットに含まれる端子が位置するカ
ラムにおいてのみジョグを挿入しているためである[第
5の実施の形態]。
【0483】5−b)禁止制約グラフに存在する制約サ
イクルを検出し、先ずネットを分断することによって制
約サイクルを解消している。次に、ネットの分断では解
消できなかった制約サイクルに対してのみサブネットへ
ジョグを挿入して解消する。ネットに含まれる端子が位
置するカラムに対して優先してジョグを挿入し、解消で
きなかった制約サイクルに対して端子位置以外のカラム
でジョグ挿入を行っているためである[第6の実施の形
態]。
【0484】5−c)新たなトラックが設定されたチャ
ネル配線領域では必要なトラック数が確保できており、
最初から再配線することにより、挿入されるジョグの個
数を削減することができるためである[第11、13の
実施の形態]。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態の構成を表すブロッ
ク図。
【図2】本発明の第1の実施の形態の動作を表すフロー
図。
【図3】本発明の第1の実施の形態におけるステップS
306(部分禁止制約グラフG*の構成)の動作を表す
フロー図。
【図4】本発明の第2の実施の形態の構成を表すブロッ
ク図。
【図5】本発明の第2の実施の形態の動作を表すフロー
図。
【図6】本発明の第3の実施の形態の構成を表すブロッ
ク図。
【図7】本発明の第3の実施の形態の動作を表すフロー
図。
【図8】本発明の第4の実施の形態の構成を表すブロッ
ク図。
【図9】本発明の第4の実施の形態の動作を表すフロー
図。
【図10】本発明の第5の実施の形態における禁止制約
グラフGの作成およびネットの分断部の構成を表すブロ
ック図。
【図11】本発明の第5の実施の形態におけるステップ
S305A(禁止制約グラフGの作成およびネットの分
断)の動作を表すフロー図。
【図12】本発明の第6の実施の形態における禁止制約
グラフGの作成およびサブネットへのジョグ挿入部の構
成を表すブロック図。
【図13】本発明の第6の実施の形態におけるステップ
S305B(禁止制約グラフGの作成およびサブネット
へのジョグ挿入)の動作を表すフロー図。
【図14】本発明の第7の実施の形態における禁止制約
グラフGの作成およびパスの切断部の構成を表すブロッ
ク図。 (a)本発明の第5の実施の形態における禁止制約グラ
フGの作成およびネットの分断部5Aにパスの切断部5
5を加えた構成を表すブロック図。 (b)本発明の第6の実施の形態における禁止制約グラ
フGの作成およびサブネットへのジョグ挿入部5Bにパ
スの切断部55を加えた構成を表すブロック図。
【図15】本発明の第7の実施の形態におけるステップ
S305C(禁止制約グラフGの作成およびパスの切
断)の動作を表すフロー図。 (a)本発明の第5の実施の形態におけるステップS3
05A(禁止制約グラフGの作成およびネットの分断)
にパスの切断ステップを加えた動作を表すフロー図。 (b)本発明の第6の実施の形態におけるステップS3
05B(禁止制約グラフGの作成およびサブネットへの
ジョグ挿入)にパスの切断ステップを加えた動作を表す
フロー図。
【図16】本発明の第8の実施の形態における禁止制約
グラフGの作成およびサブネットへのジョグ追加挿入部
の構成を表すブロック図。 (a)図14(a)に示す本発明の第7の実施の形態に
おける禁止制約グラフGの作成およびパスの切断部5C
にサブネットへのジョグ追加挿入部56を加えた構成を
表すブロック図。 (b)図14(b)に示す本発明の第7の実施の形態に
おける禁止制約グラフGの作成およびパスの切断部5C
にサブネットへのジョグ追加挿入部56を加えた構成を
表すブロック図。
【図17】本発明の第8の実施の形態におけるステップ
S305D(禁止制約グラフGの作成およびサブネット
へのジョグ追加挿入)の動作を表すフロー図。 (a)図15(a)に示す本発明の第7の実施の形態に
おけるステップS305C(禁止制約グラフGの作成お
よびパスの切断)にサブネットへのジョグ追加挿入ステ
ップを加えた動作を表すフロー図。 (b)図15(b)に示す本発明の第7の実施の形態に
おけるステップS305C(禁止制約グラフGの作成お
よびパスの切断)にサブネットへのジョグ追加挿入ステ
ップを加えた動作を表すフロー図。
【図18】本発明の第9の実施の形態の構成を表すブロ
ック図。
【図19】本発明の第9の実施の形態の動作を表すフロ
ー図。
【図20】本発明の第10の実施の形態の構成を表すブ
ロック図。
【図21】本発明の第10の実施の形態の動作を表すフ
ロー図。
【図22】本発明の第11の実施の形態の構成を表すブ
ロック図。
【図23】本発明の第11の実施の形態の動作を表すフ
ロー図。
【図24】本発明の第12の実施の形態の構成を表すブ
ロック図。
【図25】本発明の第12の実施の形態の動作を表すフ
ロー図。
【図26】本発明の第13の実施の形態の構成を表すブ
ロック図。
【図27】本発明の第13の実施の形態の動作を表すフ
ロー図。
【図28】本発明の実施の形態の説明で用いる用語の説
明図。 (a)到達可能トラック、通過可能トラック、スルーホ
ール設定可能トラックの説明図。 (b)割り当て可能トラックの説明図。
【図29】禁止制約グラフの説明図。 (a)チャネル配線領域図。 (b)禁止制約グラフ図。
【図30】迂回配線の形態の説明図。
【図31】迂回配線を表すために用いるサブネットの説
明図。
【図32】本発明の第1の実施の形態の実施例1の説明
図。 (a)禁止制約グラフ図。 (b)トラック割り当ての配線結果図。 (c)2回目の処理ループでの禁止制約グラフ図。 (d)配線結果図。
【図33】本発明の第1の実施の形態の実施例2の説明
図。 (a)禁止制約グラフ図。 (b)トラック割り当ての配線結果図。 (c)配線結果図。
【図34】本発明の第1の実施の形態の実施例3の説明
図。 (a)禁止制約グラフ図。 (b)トラック割り当ての配線結果図。
【図35】本発明の第1の実施の形態の実施例4の説明
図。 (a)チャネル配線領域図。 (b)禁止制約グラフ図。
【図36】本発明の第1の実施の形態の実施例4の説明
図。 (a)トラック割り当ての配線結果図。 (b)2回目の処理ループでの禁止制約グラフ図。
【図37】本発明の第1の実施の形態の実施例4の説明
図。 (a)2回目の処理ループでのトラック割り当ての結果
図。 (b)3回目の処理ループでの禁止制約グラフ図。
【図38】本発明の第1の実施の形態の実施例4の説明
図。 (a)3回目の処理ループでのトラック割り当ての結果
図。 (b)4回目の処理ループでの禁止制約グラフ図。
【図39】本発明の第1の実施の形態の実施例4の説明
図。4回目の処理ループでのトラック割り当ての結果
図。
【図40】本発明の第1の実施の形態の実施例5の説明
図。 (a)チャネル配線領域図。 (b)禁止制約グラフ図。
【図41】本発明の第1の実施の形態の実施例5の説明
図。 (a)トラック割り当ての配線結果図。 (b)2回目の処理ループでの禁止制約グラフ図。 (c)2回目の処理ループでのトラック割り当ての結果
図。
【図42】本発明の第2の実施の形態の実施例1の説明
図。 (a)引き出し配線の説明図。 (b)禁止制約グラフ図。
【図43】本発明の第2の実施の形態の実施例1の説明
図。 (a)トラック割り当ての配線結果図。 (b)2回目の処理ループでの禁止制約グラフ図。
【図44】本発明の第3の実施の形態の実施例1の説明
図。 (a)サブネットの配線の説明図。 (b)禁止制約グラフ図。
【図45】本発明の第3の実施の形態の実施例1の説明
図。 (a)トラック割り当ての配線結果図。 (b)2回目の処理ループでの禁止制約グラフ図。
【図46】本発明の第3の実施の形態の実施例2の説明
図。 (a)チャネル配線領域図。 (b)サブネットの配線の説明図。
【図47】本発明の第3の実施の形態の実施例2の説明
図。 (a)禁止制約グラフ図。 (b)トラック割り当ての配線結果図。
【図48】本発明の第4の実施の形態の実施例1の説明
図。 (a)ネットの配線の説明図。 (b)禁止制約グラフ図。
【図49】本発明の第4の実施の形態の実施例2の説明
図。 (a)チャネル配線領域図。 (b)ネットの配線の説明図。
【図50】本発明の第4の実施の形態の実施例2の説明
図。 (a)禁止制約グラフ図。 (b)トラック割り当ての配線結果図。
【図51】本発明の第5の実施の形態の実施例1の説明
図。 (a)チャネル配線領域図。 (b)禁止制約グラフ図。 (c)制約サイクル解消後の禁止制約グラフ図。 (d)トラック割り当ての配線結果図。
【図52】本発明の第6の実施の形態の実施例1の説明
図。 (a)チャネル配線領域図。 (b)禁止制約グラフ図。 (c)1つの2重枝の削除による制約サイクル解消後の
禁止制約グラフ図。 (d)2重枝の削除による制約サイクル解消後の禁止制
約グラフ図。 (e)ジョグ挿入による制約サイクル解消後の禁止制約
グラフ図。 (f)トラック割り当ての配線結果図。
【図53】本発明の第7の実施の形態の実施例1の説明
図。 (a)チャネル配線領域図。 (b)禁止制約グラフ図。 (c)パスの切断後の禁止制約グラフ図。 (d)トラック割り当ての配線結果図。
【図54】本発明の第8の実施の形態の実施例1の説明
図。 (a)チャネル配線領域図。 (b)禁止制約グラフ図。 (c)ジョグの追加挿入後の禁止制約グラフ図。 (d)トラック割り当ての配線結果図。
【図55】本発明の第9の実施の形態の実施例1の説明
図。 (a)チャネル配線領域図。 (b)禁止制約グラフ図。 (c)ジョグ追加挿入後の禁止制約グラフ図。
【図56】本発明の第9の実施の形態の実施例1の説明
図。 (a)ステップS308後の配線結果図。 (b)未配線処理後の配線結果図。
【図57】本発明の第10の実施の形態の実施例1の説
明図。 (a)ステップS310B後のチャネル配線領域図。 (b)配線結果図。
【図58】本発明の第11の実施の形態の実施例1の説
明図。 (a)処理「再配線」のステップS1後のチャネル配線
領域図。 (b)処理「再配線」のステップS2後のチャネル配線
領域図。
【図59】本発明の第11の実施の形態の実施例1の説
明図。 (a)処理「配線禁止図形の移動および形状の変更」後
のチャネル配線領域図。 (b)配線結果図。
【図60】本発明の第12の実施の形態の実施例1の説
明図。 (a)処理「配線禁止図形の移動および形状の変更」後
のチャネル配線領域図。 (b)配線結果図。
【図61】本発明の第13の実施の形態の実施例1の説
明図。 (a)処理「配線禁止図形の移動および形状の変更」後
のチャネル配線領域図。 (b)配線結果図。
【図62】従来の配線処理(1)を表すフロー図。
【図63】従来の配線処理(1)を説明するための例
(1)のチャネル配線領域図。
【図64】従来の配線処理(1)を説明するための例
(1)の位置制約グラフ図。
【図65】従来の配線処理(1)を説明するための例
(2)のチャネル配線領域図。
【図66】従来の配線処理(1)を説明するための例
(2)の位置制約グラフ図。
【図67】従来の配線処理(1)を説明するための例
(2)の配線結果図。
【図68】従来の配線処理(2)を表すフロー図。
【図69】従来の配線処理(2)の説明図。 (a)チャネル配線領域図。 (b)仮端子の説明図。 (c)部分チャネルの配線結果図。
【符号の説明】
1 チャネル配線領域の設定部 2 サブネットへの分割部 3 RT、AT、PT、D、THの計算部 4 垂直方向通過禁止図形の回避部 5 禁止制約グラフGの作成部 6 部分禁止制約グラフG*の構成部 7 幹線割り当て処理の対象となるサブネットの集合
N*の選択部 8 幹線の割り当て部 9 ネットリストNの更新部 10 配線可能性判定および終了判定部 11 チャネル配線領域の上側の境界 12 チャネル配線領域の下側の境界 AT ネットの割り当て可能トラックの集合 D カラムの配線密度 PT カラムの通過可能トラックの集合 RT 端子の到達可能トラックの集合 TH カラムのスルーホール設定可能トラックの集合

Claims (26)

    (57)【特許請求の範囲】
  1. 【請求項1】 集積回路の配線設計における配線領域に
    おいて、既に配線層、配線通過位置、形状などの詳細な
    配線経路又は回路部品の配置位置が設定してあるような
    場合に、 配線領域に隣接するセルに属する端子情報及びセルに属
    する配線禁止情報、並びに、端子間の接続情報に基づ
    き、チャネル配線領域を設定する第1のステップと、 第1のステップで設定されたチャネル配線領域内に存在
    する端子の位置情報及び端子間の接続情報に基づき、ネ
    ットをサブネットに分割し、サブネットの集合をネット
    リストNとする第2のステップと、 第1のステップで設定されたチャネル配線領域内に存在
    する配線禁止図形の情報および第2のステップで求めた
    ネットリストNに対して、各端子tの到達可能トラック
    の集合RT(t)、ネットリストN内の各サブネットn
    の割り当て可能トラックの集合AT(n)、各カラムc
    の通過可能トラックの集合PT(c)、配線密度D
    (c)、スルーホール設定可能トラックの集合TH
    (c)を計算する第3のステップと、 第2のステップで求めたネットリストNにおいて、第3
    のステップで計算した割り当て可能トラックの集合AT
    (n)が空集合となるサブネットnに対して、第1のス
    テップで設定されたチャネル配線領域内に存在する配線
    禁止図形の中で、サブネットnの配線を妨害している垂
    直方向通過禁止図形を回避するための処理を行う第4の
    ステップと、 第1のステップで設定されたチャネル配線領域内に存在
    する配線禁止図形、端子の位置、第2のステップで求め
    たネットリストN、第4のステップで求めた垂直方向通
    過禁止図形を回避する処理の結果に基づき、垂直方向通
    過禁止図形と端子に関連する制約を表す禁止制約グラフ
    Gを作成する第5のステップと、 第5のステップにおいて作成した禁止制約グラフGに対
    して、節点及び枝の削除処理を適用し、禁止制約グラフ
    Gの部分グラフである部分禁止制約グラフG*を構成す
    る第6のステップと、 第6のステップにおいて構成した部分禁止制約グラフG
    *の節点集合V*において、節点集合V*に含まれる節
    点に対応するネットから成る集合を、幹線割り当て処理
    の対象となるサブネットの集合N*とする第7のステッ
    プと、 第6のステップにおいて構成した部分禁止制約グラフG
    *を第7のステップにおいて求めた幹線割り当て処理の
    対象となるサブネットの集合N*に関する上下制約関係
    を表す有向グラフと見なし、サブネットの集合N*に属
    するサブネットに対して、第1のステップで設定された
    チャネル配線領域内に存在する配線禁止図形及び端子の
    情報に基づいて、サブネットの幹線をトラックに割り当
    てる第8のステップと、 ネットリストNを(N−N*)に更新し、禁止制約グラ
    フGから部分禁止制約グラフG*を削除したグラフを禁
    止制約グラフGとする第9のステップと、 第8のステップにおいてサブネットの集合N*のすべて
    のサブネットがトラックに割り当てられたか否かを判定
    し、割り当てられなかったサブネットが存在する場合に
    はエラーを出力し、割り当てに成功した場合には、第9
    のステップで更新したネットリストNが空集合か否かを
    判定し、空集合であれば、チャネル配線領域の境界線並
    びに配線禁止図形の形状及び位置が垂直方向に可変であ
    り且つ幹線が割り当てられていないトラック(空きトラ
    ック)が存在する場合に、空きトラックを削除し、チャ
    ネル配線領域の境界線の位置の変更と配線禁止図形の形
    状の変更と配線禁止図形の移動を行い、チャネル配線領
    域の高さを縮め、配線処理を終了する第10のステップ
    とを含むことを特徴とする集積回路の配線設計方法。
  2. 【請求項2】 請求項1に記載の集積回路の配線設計方
    法において、第4のステップの代わりに、 垂直方向通過禁止図形を回避するために、禁止図形の範
    囲内に位置する端子から禁止図形を回避できる位置まで
    配線を引き出し新たな端子を設定する端子引き出しステ
    ップを含むことを特徴とする集積回路の配線設計方法。
  3. 【請求項3】 請求項1に記載の集積回路の配線設計方
    法において、第4のステップの代わりに、 垂直方向通過禁止図形を回避するため、禁止図形範囲内
    に位置する端子を有するサブネットの配線を行い、元の
    ネットに属する他の端子と接続するために新たな端子を
    設定するサブネットの前配線ステップを含むことを特徴
    とする集積回路の配線設計方法。
  4. 【請求項4】 請求項1に記載の集積回路の配線設計方
    法において、第4のステップの代わりに、 垂直方向通過禁止図形を回避するため、禁止図形範囲内
    に位置する端子を有するサブネットに対して、元のネッ
    トの配線を行うネットの前配線ステップを含むことを特
    徴とする集積回路の配線設計方法。
  5. 【請求項5】 請求項1、2、3、または4に記載の集
    積回路の配線設計方法において、第5のステップの代わ
    りに、 チャネル配線領域内に存在する配線禁止図形、端子の位
    置、ネットリストN、垂直方向通過禁止図形を回避する
    処理の結果に基づき、垂直方向通過禁止図形と端子に関
    連する制約を表す禁止制約グラフGを作成する禁止制約
    グラフ構築ステップと、 禁止制約グラフ構築ステップで作成された禁止制約グラ
    フG内に存在する制約サイクルを検出する制約サイクル
    検出ステップと、 制約サイクル検出ステップで検出された制約サイクルを
    解消するために、制約サイクルに含まれるネットを分断
    するネットの分断ステップとから成る禁止制約グラフG
    の作成およびネットの分断ステップを含むことを特徴と
    する集積回路の配線設計方法。
  6. 【請求項6】 請求項1、2、3、または4に記載の集
    積回路の配線設計方法において、第5のステップの代わ
    りに、 チャネル配線領域内に存在する配線禁止図形、端子の位
    置、ネットリストN、垂直方向通過禁止図形を回避する
    処理の結果に基づき、垂直方向通過禁止図形と端子に関
    連する制約を表す禁止制約グラフGを作成する禁止制約
    グラフ構築ステップと、 禁止制約グラフ構築ステップで作成された禁止制約グラ
    フG内に存在する制約サイクルを検出する制約サイクル
    検出ステップと、 制約サイクル検出ステップで検出された制約サイクルを
    解消するために、制約サイクルに含まれるネットを分断
    するネットの分断ステップと、 制約サイクル検出ステップで検出された制約サイクルの
    中で、ネットの分断ステップにおいて解消できなかった
    制約サイクルに対して、制約サイクルに含まれる節点に
    対応するサブネットにジョグを挿入することにより制約
    サイクルを解消するサブネットへのジョグ挿入ステップ
    とから成る禁止制約グラフGの作成およびサブネットへ
    のジョグ挿入ステップを含むことを特徴とする集積回路
    の配線設計方法。
  7. 【請求項7】 請求項5または6に記載の集積回路の配
    線設計方法において、禁止制約グラフGの作成ステップ
    に加えて、 配線禁止図形が障害となり1本の幹線では配線不可能な
    サブネットを検出し、検出されたサブネットにジョグを
    挿入することにより禁止制約グラフG内のパスを切断す
    るパスの切断ステップとから成る禁止制約グラフGの作
    成およびパスの切断ステップを含むことを特徴とする集
    積回路の配線設計方法。
  8. 【請求項8】 請求項7に記載の集積回路の配線設計方
    法において、禁止制約グラフGの作成ステップに加え
    て、 幹線の割り当てが可能なトラック数と幹線をトラックに
    割り当てなければならないサブネット数の関係から、ジ
    ョグを挿入しなければならないサブネットの候補を選択
    し、ジョグを挿入する位置を決定するサブネットへのジ
    ョグ追加挿入ステップとから成る禁止制約グラフGの作
    成およびサブネットへのジョグ挿入ステップを含むこと
    を特徴とする集積回路の配線設計方法。
  9. 【請求項9】 請求項1、2、3、4、5、6、7、ま
    たは8に記載の集積回路の配線設計方法において、第1
    0のステップの代わりに、 第8のステップにおいて幹線をトラックに割り当てるこ
    とができなかったサブネットの集合Rnotに含まれる
    サブネットに対して、未配線処理を適用する配線可能性
    判定および未配線処理および終了判定ステップを含むこ
    とを特徴とする集積回路の配線設計方法。
  10. 【請求項10】 請求項1、2、3、4、5、6、7、
    または8に記載の集積回路の配線設計方法において、第
    10のステップの代わりに、 第8のステップにおいて幹線をトラックに割り当てるこ
    とができなかったサブネットの集合Rnotに含まれる
    サブネットに対して、幹線をトラックに割り当てるため
    に必要となるトラックをチャネル配線領域に新たに設定
    する不足トラック数の計算および終了判定ステップを含
    むことを特徴とする集積回路の配線設計方法。
  11. 【請求項11】 請求項1、2、3、4、5、6、7、
    または8に記載の集積回路の配線設計方法において、第
    1のステップの代わりに、 ネットリストNに属するネットに接続する端子の位置並
    びにチャネルの上下に位置するセルの内部に存在する配
    線禁止図形より、チャネル配線領域の境界を定め、カウ
    ンタを0に初期化するチャネル配線領域の設定およびカ
    ウンタの初期化ステップと、 第10のステップの代わりに、 第8のステップにおいてトラックに割り当てることがで
    きなかったサブネットの集合Rnotに含まれるサブネ
    ットの幹線をトラックに割り当てるために必要となるト
    ラックを、配線禁止図形の位置を変更せずにチャネル配
    線領域に設定し、配線処理を続行することにより必要な
    トラック数を求めた後に、求めた本数分のトラックを新
    たに設定した後、移動可能な配線禁止図形を移動し、全
    てのネットに対して再配線を行うことにより、未配線の
    サブネットを配線する不足トラックの挿入および再配線
    および終了判定ステップを含むことを特徴とする集積回
    路の配線設計方法。
  12. 【請求項12】 請求項11に記載の集積回路の配線設
    計方法において、不足トラックの挿入および再配線およ
    び終了判定ステップの代わりに、 チャネル配線領域にトラックを新たに設定し、移動可能
    な配線禁止図形の位置を変更した後、配線処理を続行す
    ることにより、第8のステップにおいて幹線をトラック
    に割り当てることができなかったサブネットの集合Rn
    otに含まれるサブネットの幹線をトラックに割り当て
    る不足トラック線分の挿入および終了判定ステップを含
    むことを特徴とする集積回路の配線設計方法。
  13. 【請求項13】 請求項11に記載の集積回路の配線設
    計方法において、不足トラックの挿入および再配線およ
    び終了判定ステップの代わりに、 先ず、第8のステップにおいて幹線をトラックに割り当
    てることができなかったサブネットの集合Rnotに含
    まれるサブネットの幹線をトラックに割り当てるために
    必要となるトラックをチャネル配線領域に設定し、移動
    可能な配線禁止図形の位置を変更した後、配線処理を続
    行することにより必要なトラック数を求めた後に、求め
    た本数分のトラックを新たに設定した後、移動可能な配
    線禁止図形を移動し、全てのネットに対して再配線を行
    うことにより、未配線のサブネットを配線する不足トラ
    ック線分の挿入および再配線および終了判定ステップを
    含むことを特徴とする集積回路の配線設計方法。
  14. 【請求項14】 集積回路の配線設計における配線領域
    において、既に配線層、配線通過位置、形状などの詳細
    な配線経路又は回路部品の配置位置が設定してあるよう
    な場合に、 配線領域に隣接するセルに属する端子情報及びセルに属
    する配線禁止情報、並びに、端子間の接続情報に基づ
    き、チャネル配線領域を設定するチャネル配線領域の設
    定部と、 チャネル配線領域の設定部で設定されたチャネル配線領
    域内に存在する端子の位置情報及び端子間の接続情報に
    基づき、ネットをサブネットに分割し、サブネットの集
    合をネットリストNとするサブネットへの分割部と、 チャネル配線領域の設定部で設定されたチャネル配線領
    域内に存在する配線禁止図形の情報およびサブネットへ
    の分割部で求めたネットリストNに対して、各端子tの
    到達可能トラックの集合RT(t)、ネットリストN内
    の各サブネットnの割り当て可能トラックの集合AT
    (n)、各カラムcの通過可能トラックの集合PT
    (c)、配線密度D(c)、スルーホール設定可能トラ
    ックの集合TH(c)を計算するRT,AT,PT,
    D,THの計算部と、 サブネットへの分割部で求めたネットリストNにおい
    て、RT,AT,PT,D,THの計算部で計算した割
    り当て可能トラックの集合AT(n)が空集合となるサ
    ブネットnに対して、チャネル配線領域の設定部で設定
    されたチャネル配線領域内に存在する配線禁止図形の中
    で、サブネットnの配線を妨害している垂直方向通過禁
    止図形を回避するための処理を行う垂直方向通過禁止図
    形の回避部と、 チャネル配線領域の設定部で設定されたチャネル配線領
    域内に存在する配線禁止図形、端子の位置、サブネット
    への分割部で求めたネットリストN、垂直方向通過禁止
    図形の回避部で求めた垂直方向通過禁止図形を回避する
    処理の結果に基づき、垂直方向通過禁止図形と端子に関
    連する制約を表す禁止制約グラフGを作成する禁止制約
    グラフGの作成部と、 禁止制約グラフGの作成部において作成した禁止制約グ
    ラフGに対して、節点及び枝の削除処理を適用し、禁止
    制約グラフGの部分グラフである部分禁止制約グラフG
    *を構成する部分禁止制約グラフG*の構成部と、 部分禁止制約グラフG*の構成部において構成した部分
    禁止制約グラフG*の節点集合V*において、節点集合
    V*に含まれる節点に対応するネットから成る集合を、
    幹線割り当て処理の対象となるサブネットの集合N*と
    する幹線割り当て処理の対象となるサブネットの集合N
    *の選択部と、 部分禁止制約グラフG*の構成部において構成した部分
    禁止制約グラフG*を幹線割り当て処理の対象となるサ
    ブネットの集合N*の選択部において求めたサブネット
    の集合N*に関する上下制約関係を表す有向グラフと見
    なし、サブネットの集合N*に属するサブネットに対し
    て、チャネル配線領域の設定部で設定されたチャネル配
    線領域内に存在する配線禁止図形及び端子の情報に基づ
    いて、サブネットの幹線をトラックに割り当てる幹線の
    割り当て部と、 ネットリストNを(N−N*)に更新し、禁止制約グラ
    フGから部分禁止制約グラフG*を削除したグラフを禁
    止制約グラフGとするネットリストNの更新部と、 幹線割り当て部においてN*のすべてのサブネットがト
    ラックに割り当てられたか否かを判定し、割り当てられ
    なかったサブネットが存在する場合にはエラーを出力
    し、割り当てに成功した場合には、ネットリストNの更
    新部で更新したネットリストNが空集合か否かを判定
    し、空集合であれば、チャネル配線領域の境界線並びに
    配線禁止図形の形状及び位置が垂直方向に可変であり且
    つ幹線が割り当てられていないトラック(空きトラッ
    ク)が存在する場合に、空きトラックを削除し、チャネ
    ル配線領域の境界線の位置の変更と配線禁止図形の形状
    の変更と配線禁止図形の移動を行い、チャネル配線領域
    の高さを縮め、配線処理を終了する配線可能性判定およ
    び終了判定部とを備えたことを特徴とする集積回路の配
    線設計装置。
  15. 【請求項15】 請求項14に記載の集積回路の配線設
    計装置において、垂直方向通過禁止図形の回避部の代わ
    りに、 垂直方向通過禁止図形を回避するために、禁止図形の範
    囲内に位置する端子から禁止図形を回避できる位置まで
    配線を引き出し新たな端子を設定する端子引き出し配線
    部を含むことを特徴とする集積回路の配線設計装置。
  16. 【請求項16】 請求項14に記載の集積回路の配線設
    計装置において、垂直方向通過禁止図形の回避部の代わ
    りに、 垂直方向通過禁止図形を回避するため、禁止図形範囲内
    に位置する端子を有するサブネットの配線を行い、元の
    ネットに属する他の端子と接続するために新たな端子を
    設定するサブネットの前配線部を含むことを特徴とする
    集積回路の配線設計装置。
  17. 【請求項17】 請求項14に記載の集積回路の配線設
    計装置において、垂直方向通過禁止図形の回避部の代わ
    りに、 垂直方向通過禁止図形を回避するため、禁止図形範囲内
    に位置する端子を有するサブネットに対して、元のネッ
    トの配線を行うネットの前配線部を含むことを特徴とす
    る集積回路の配線設計装置。
  18. 【請求項18】 請求項14、15、16、または17
    に記載の集積回路の配線設計装置において、禁止制約グ
    ラフGの作成部の代わりに、 チャネル配線領域内に存在する配線禁止図形、端子の位
    置、ネットリストN、垂直方向通過禁止図形を回避する
    処理の結果に基づき、垂直方向通過禁止図形と端子に関
    連する制約を表す禁止制約グラフGを作成する禁止制約
    グラフ構築部と、 禁止制約グラフ構築部で作成された禁止制約グラフG内
    に存在する制約サイクルを検出する制約サイクル検出部
    と、 制約サイクル検出部で検出された制約サイクルを解消す
    るために、制約サイクルに含まれるネットを分断するネ
    ットの分断部とを含む禁止制約グラフGの作成およびネ
    ットの分断部を備えたことを特徴とする集積回路の配線
    設計装置。
  19. 【請求項19】 請求項14、15、16、または17
    に記載の集積回路の配線設計装置において、禁止制約グ
    ラフGの作成部の代わりに、 チャネル配線領域内に存在する配線禁止図形、端子の位
    置、ネットリストN、垂直方向通過禁止図形を回避する
    処理の結果に基づき、垂直方向通過禁止図形と端子に関
    連する制約を表す禁止制約グラフGを作成する禁止制約
    グラフ構築部と、 禁止制約グラフ構築部で作成された禁止制約グラフG内
    に存在する制約サイクルを検出する制約サイクル検出部
    と、 制約サイクル検出部で検出された制約サイクルを解消す
    るために、制約サイクルに含まれるネットを分断するネ
    ットの分断部と、 制約サイクル検出部で検出された制約サイクルの中で、
    ネットの分断部において解消できなかった制約サイクル
    に対して、制約サイクルに含まれる節点に対応するサブ
    ネットにジョグを挿入することにより制約サイクルを解
    消するサブネットへのジョグ挿入部とを含む禁止制約グ
    ラフGの作成およびサブネットへのジョグ挿入部を備え
    たことを特徴とする集積回路の配線設計装置。
  20. 【請求項20】 請求項18、または19に記載の集積
    回路の配線設計装置において、禁止制約グラフGの作成
    部に加えて、 配線禁止図形が障害となり1本の幹線では配線不可能な
    サブネットを検出し、検出されたサブネットにジョグを
    挿入することにより禁止制約グラフG内のパスを切断す
    るパスの切断部を含む禁止制約グラフGの作成およびパ
    スの切断部を備えたことを特徴とする集積回路の配線設
    計装置。
  21. 【請求項21】 請求項20に記載の集積回路の配線設
    計装置において、禁止制約グラフGの作成部に加えて、 幹線の割り当てが可能なトラック数と幹線をトラックに
    割り当てなければならないサブネット数の関係から、ジ
    ョグを挿入しなければならないサブネットの候補を選択
    し、ジョグを挿入する位置を決定するサブネットへのジ
    ョグ追加挿入部を含む禁止制約グラフGの作成およびサ
    ブネットへのジョグ追加挿入部を備えたことを特徴とす
    る集積回路の配線設計装置。
  22. 【請求項22】 請求項14、15、16、17、1
    8、19、20、または21に記載の集積回路の配線設
    計装置において、配線可能性判定および終了判定部の代
    わりに、 幹線割り当て部において幹線をトラックに割り当てるこ
    とができなかったサブネットの集合Rnotに含まれる
    サブネットに対して、未配線処理を適用する配線可能性
    判定および未配線処理および終了判定部を含むことを特
    徴とする集積回路の配線設計装置。
  23. 【請求項23】 請求項14、15、16、17、1
    8、19、20、または21に記載の集積回路の配線設
    計装置において、配線可能性判定および終了判定部の代
    わりに、 幹線割り当て部において幹線をトラックに割り当てるこ
    とができなかったサブネットの集合Rnotに含まれる
    サブネットに対して、幹線をトラックに割り当てるため
    に必要となるトラックをチャネル配線領域に新たに設定
    する不足トラック数の計算および終了判定部を含むこと
    を特徴とする集積回路の配線設計装置。
  24. 【請求項24】 請求項14、15、16、17、1
    8、19、20、または21に記載の集積回路の配線設
    計装置において、チャネル配線領域の設定部の代わり
    に、 ネットリストNに属するネットに接続する端子の位置並
    びにチャネルの上下に位置するセルの内部に存在する配
    線禁止図形より、チャネル配線領域の境界を定め、カウ
    ンタを0に初期化するチャネル配線領域の設定およびカ
    ウンタの初期化部を備え、 配線可能性判定および終了判定部の代わりに、 幹線の割り当て部において割り当てることができなかっ
    たサブネットの集合Rnotに含まれるサブネットの幹
    線をトラックに割り当てるために必要となるトラック
    を、配線禁止図形の位置を変更せずにチャネル配線領域
    に設定し、配線処理を続行することにより必要なトラッ
    ク数を求めた後に、求めた本数分のトラックを新たに設
    定した後、移動可能な配線禁止図形を移動し、全てのネ
    ットに対して再配線を行うことにより、未配線のサブネ
    ットを配線する不足トラックの挿入および再配線および
    終了判定部とを含むことを特徴とする集積回路の配線設
    計装置。
  25. 【請求項25】 請求項24に記載の集積回路の配線設
    計装置において、不足トラックの挿入および再配線およ
    び終了判定部の代わりに、 チャネル配線領域にトラックを新たに設定し、移動可能
    な配線禁止図形の位置を変更した後、配線処理を続行す
    ることにより、幹線の割り当て部において割り当てるこ
    とができなかったサブネットの集合Rnotに含まれる
    サブネットの幹線をトラックに割り当てる不足トラック
    線分の挿入および終了判定部を含むことを特徴とする集
    積回路の配線設計装置。
  26. 【請求項26】 請求項24に記載の集積回路の配線設
    計装置において、不足トラックの挿入および再配線およ
    び終了判定部の代わりに、 まず、幹線の割り当て部において割り当てることができ
    なかったサブネットの集合Rnotに含まれるサブネッ
    トの幹線をトラックに割り当てるために必要となるトラ
    ックをチャネル配線領域に設定し、移動可能な配線禁止
    図形の位置を変更した後、配線処理を続行することによ
    り必要なトラック数を求めた後に、求めた本数分のトラ
    ックを新たに設定した後、移動可能な配線禁止図形を移
    動し、全てのネットに対して再配線を行うことにより、
    未配線のサブネットを配線する不足トラック線分の挿入
    および再配線および終了判定部を含むことを特徴とする
    集積回路の配線設計装置。
JP08214506A 1996-08-14 1996-08-14 集積回路の配線設計方法および装置 Expired - Fee Related JP3137178B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP08214506A JP3137178B2 (ja) 1996-08-14 1996-08-14 集積回路の配線設計方法および装置
US08/911,042 US6014507A (en) 1996-08-14 1997-08-14 Integrated circuit routes designing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP08214506A JP3137178B2 (ja) 1996-08-14 1996-08-14 集積回路の配線設計方法および装置

Publications (2)

Publication Number Publication Date
JPH1065008A JPH1065008A (ja) 1998-03-06
JP3137178B2 true JP3137178B2 (ja) 2001-02-19

Family

ID=16656851

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08214506A Expired - Fee Related JP3137178B2 (ja) 1996-08-14 1996-08-14 集積回路の配線設計方法および装置

Country Status (2)

Country Link
US (1) US6014507A (ja)
JP (1) JP3137178B2 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6505331B1 (en) * 1996-10-15 2003-01-07 Motorola, Inc. Method for routing of nets in an electronic device
US6330707B1 (en) * 1997-09-29 2001-12-11 Matsushita Electric Industrial Co., Ltd. Automatic routing method
JP3186667B2 (ja) * 1997-10-07 2001-07-11 日本電気株式会社 検査用端子位置決定装置、検査用端子位置決定方法および検査用端子位置決定用プログラムを記録した記録媒体
JP2002527830A (ja) * 1998-10-13 2002-08-27 モトローラ・インコーポレイテッド チャネル中継の方法および装置
US7065729B1 (en) * 1998-10-19 2006-06-20 Chapman David C Approach for routing an integrated circuit
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
JP3453535B2 (ja) * 1999-08-03 2003-10-06 松下電器産業株式会社 自動配線設計における配線経路探索方法及び配線経路探索プログラムを記録した記録媒体
US6397375B1 (en) * 2000-02-18 2002-05-28 Hewlett-Packard Company Method for managing metal resources for over-the-block routing in integrated circuits
US7069646B2 (en) * 2000-06-19 2006-07-04 Nortel Networks Limited Techniques for reducing the number of layers in a multilayer signal routing device
US7441220B2 (en) * 2000-12-07 2008-10-21 Cadence Design Systems, Inc. Local preferred direction architecture, tools, and apparatus
JP2003031662A (ja) * 2001-07-16 2003-01-31 Mitsubishi Electric Corp 半導体集積回路の配線方法、半導体集積回路、及び配線方法をコンピュータに実行させるプログラム
US6862727B2 (en) * 2001-08-24 2005-03-01 Formfactor, Inc. Process and apparatus for adjusting traces
US6678876B2 (en) * 2001-08-24 2004-01-13 Formfactor, Inc. Process and apparatus for finding paths through a routing space
US6886152B1 (en) * 2002-08-09 2005-04-26 Xilinx, Inc. Delay optimization in signal routing
US7237214B1 (en) * 2003-03-04 2007-06-26 Synplicity, Inc. Method and apparatus for circuit partitioning and trace assignment in circuit design
US7707537B2 (en) * 2004-06-04 2010-04-27 Cadence Design Systems, Inc. Method and apparatus for generating layout regions with local preferred directions
JP4410088B2 (ja) * 2004-11-29 2010-02-03 富士通株式会社 半導体装置の設計支援方法、プログラム及び装置
US8250514B1 (en) * 2006-07-13 2012-08-21 Cadence Design Systems, Inc. Localized routing direction
US7851298B2 (en) * 2007-10-29 2010-12-14 Hynix Semiconductor Inc. Method for fabricating transistor in a semiconductor device utilizing an etch stop layer pattern as a dummy pattern for the gate electrode formation
GB0906004D0 (en) * 2009-04-07 2009-05-20 Omnifone Ltd MusicStation desktop
CN101877014B (zh) * 2009-04-30 2012-07-25 国际商业机器公司 一种检测时序约束冲突的方法和装置
JP2011186625A (ja) * 2010-03-05 2011-09-22 Renesas Electronics Corp 半導体集積回路のレイアウト装置及びレイアウト方法
US8683417B2 (en) * 2010-11-29 2014-03-25 Synopsys Taiwan Co., Ltd Multiple level spine routing
TWI643082B (zh) 2013-09-03 2018-12-01 美商新思科技股份有限公司 一種佈線出一解決路徑之方法及系統
US10192019B2 (en) 2013-09-25 2019-01-29 Synopsys, Inc. Separation and minimum wire length constrained maze routing method and system
US9372952B1 (en) * 2014-03-07 2016-06-21 Cadence Design Systems, Inc. Methods, systems, and articles of manufacture for enhancing metrics of electronic designs using design rule driven physical design implementation techniques
CN110750954B (zh) * 2019-10-29 2020-12-25 上海安路信息科技有限公司 电路原理图生成方法及生成系统
CN116127902B (zh) * 2023-01-28 2024-02-09 上海合见工业软件集团有限公司 基于二分图匹配的电路示意图垂直轨道分配系统
CN116011389B (zh) * 2023-01-28 2023-06-06 上海合见工业软件集团有限公司 基于空间约束的电路原理图路由规划系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5295082A (en) * 1989-02-22 1994-03-15 The Boeing Company Efficient method for multichip module interconnect
JPH04167073A (ja) * 1990-10-30 1992-06-15 Mitsubishi Electric Corp チャネル配線処理方法
JP3006824B2 (ja) * 1995-03-31 2000-02-07 日本電気株式会社 配線設計方法および配線設計装置

Also Published As

Publication number Publication date
JPH1065008A (ja) 1998-03-06
US6014507A (en) 2000-01-11

Similar Documents

Publication Publication Date Title
JP3137178B2 (ja) 集積回路の配線設計方法および装置
US4593363A (en) Simultaneous placement and wiring for VLSI chips
Cong et al. Multilevel approach to full-chip gridless routing
Dai et al. Topological routing in SURF: Generating a rubber-band sketch
US8255857B2 (en) Routing methods for integrated circuit designs
KR0153392B1 (ko) Lsi용 상호접속 배선 설계 방법
Tseng et al. Timing and crosstalk driven area routing
JP2724317B2 (ja) 階層的フロアープラニング方法及びそのシステム
WO2000038228A1 (fr) Appareil et procede de cablage brute et support d'enregistrement conservant un programme de cablage brute
US20030121018A1 (en) Subgrid detailed routing
Lin et al. A novel framework for multilevel routing considering routability and performance
CN110795908A (zh) 偏差驱动的总线感知总体布线方法
Cong et al. MARS-A multilevel full-chip gridless routing system
US7725863B2 (en) Reverse routing methods for integrated circuits having a hierarchical interconnect architecture
Hsu et al. Multi-layer global routing considering via and wire capacities
US6766502B1 (en) Method and apparatus for routing using deferred merging
US5770481A (en) Wiring designing apparatus for automatically designing layout of integrated circuit and wiring designing method therefor
Patyal et al. Pole-aware analog layout synthesis considering monotonic current flows and wire crossings
CN112989749A (zh) 一种集成电路版图布线中引脚访问方法及装置
Kao et al. Cross point assignment with global rerouting for general-architecture designs
Katsadas et al. A multi-layer router utilizing over-cell areas
Chen et al. A novel framework for multilevel full-chip gridless routing
JP2993458B2 (ja) 集積回路の概略配線設計方法および概略配線設計装置
CN112784521A (zh) 先进制程下时延驱动的层分配方法
Guruswamy et al. Echelon: A multilayer detailed area router

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20001108

LAPS Cancellation because of no payment of annual fees