JPH0447462A - 自動配線処理方法 - Google Patents
自動配線処理方法Info
- Publication number
- JPH0447462A JPH0447462A JP2153881A JP15388190A JPH0447462A JP H0447462 A JPH0447462 A JP H0447462A JP 2153881 A JP2153881 A JP 2153881A JP 15388190 A JP15388190 A JP 15388190A JP H0447462 A JPH0447462 A JP H0447462A
- Authority
- JP
- Japan
- Prior art keywords
- wiring
- route
- short
- change
- circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims description 11
- 238000012545 processing Methods 0.000 claims abstract description 41
- 238000000034 method Methods 0.000 claims description 95
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 238000012937 correction Methods 0.000 abstract description 2
- 238000012958 reprocessing Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 8
- 239000004065 semiconductor Substances 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 4
- 239000010410 layer Substances 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000007257 malfunction Effects 0.000 description 3
- 239000002356 single layer Substances 0.000 description 3
- 101150000419 GPC gene Proteins 0.000 description 2
- 101150026392 N gene Proteins 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 150000002500 ions Chemical class 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
Landscapes
- Internal Circuitry In Semiconductor Integrated Circuit Devices (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的〕
(産業上の利用分野)
この発明は、半導体集積回路あるいはプリント配線基板
等の配線パターンを自動的に設計する自動配線処理方法
に関する。
等の配線パターンを自動的に設計する自動配線処理方法
に関する。
(従来の技術)
半導体集積回路やプリント基板において、同電位の端子
間を結線する配線パターンを求める配線処理の技術を大
別すると、次の2つの処理に分けられる。
間を結線する配線パターンを求める配線処理の技術を大
別すると、次の2つの処理に分けられる。
その一つは同電位の端子間を結ぶ配線パターンの径路を
求める配線処理である。この配線処理には迷路法、線分
探索法という配線手法を用いることが多い。迷路法に関
しては、文献「C,Y、 Lee。
求める配線処理である。この配線処理には迷路法、線分
探索法という配線手法を用いることが多い。迷路法に関
しては、文献「C,Y、 Lee。
An AlgorithIll「or Path Co
nnections and ItsApplfcat
ions、”IRE Trans、 on Elect
ronicComputers、 vol、Ec−10
,pp、346−365.1961.Jに、線分探索法
に関しては、文献r K、Mikami andK、T
abuchi、A Computer Program
for 0ptis+alRouttng of’
Pr1nted C1rcuit Connector
s、−IFIPSProc、、vol、 H47,pp
、1475−1478.1968.Jに、詳しく記述さ
れている。
nnections and ItsApplfcat
ions、”IRE Trans、 on Elect
ronicComputers、 vol、Ec−10
,pp、346−365.1961.Jに、線分探索法
に関しては、文献r K、Mikami andK、T
abuchi、A Computer Program
for 0ptis+alRouttng of’
Pr1nted C1rcuit Connector
s、−IFIPSProc、、vol、 H47,pp
、1475−1478.1968.Jに、詳しく記述さ
れている。
もう一方の処理は、同電位の端子間を配線する順序を求
める配線順序の決定処理である。
める配線順序の決定処理である。
従来では、この2つの処理を組み合わせて配線処理を行
なっていた。この組合せ方には様々な方式があり、最も
初歩的な方式では、先ず配線順序を決定し、その後この
配線順序にしたがって端子間の配線を行う。また、端子
間の配線を行いながら配線順序を少しづつ修正する方式
もある。どちらの方式にしても、基本的には決められた
配線順序に従い、端子間の配線を一つづつ行う方式であ
ることには変わりはない。
なっていた。この組合せ方には様々な方式があり、最も
初歩的な方式では、先ず配線順序を決定し、その後この
配線順序にしたがって端子間の配線を行う。また、端子
間の配線を行いながら配線順序を少しづつ修正する方式
もある。どちらの方式にしても、基本的には決められた
配線順序に従い、端子間の配線を一つづつ行う方式であ
ることには変わりはない。
このような手法には、2つの問題点がある。その一つは
、後に求める配線の径路が、先に求められた配線との重
なり(ショート)を回避するために、これを迂回する径
路になることである。通常、半導体集積回路やプリント
基板の配線に使用できる領域の面積は限られているため
、配線径路の迂回による配線領域の消費は出来る限り抑
制しなければ未結線を生じる恐れがある。
、後に求める配線の径路が、先に求められた配線との重
なり(ショート)を回避するために、これを迂回する径
路になることである。通常、半導体集積回路やプリント
基板の配線に使用できる領域の面積は限られているため
、配線径路の迂回による配線領域の消費は出来る限り抑
制しなければ未結線を生じる恐れがある。
例えば、同電位に結線すべき端子a、b、cd間を配線
する際に、端子a−一端子一端子C−端子dの順序て配
線処理を行った場合番こ番よ、第13図(a)の配線結
果に示すよう1こ、未結線なく配線処理を行なうことが
できる。一方、端子す一端子a一端子C一端子dの順序
で配線処理を行なった場合には、第13図(b)の配線
結果(こ示すよう(こ、端子8間を結線する配線径路に
生じた径路の迂回部分130によって、端子d間の配線
力(できなくなっている。
する際に、端子a−一端子一端子C−端子dの順序て配
線処理を行った場合番こ番よ、第13図(a)の配線結
果に示すよう1こ、未結線なく配線処理を行なうことが
できる。一方、端子す一端子a一端子C一端子dの順序
で配線処理を行なった場合には、第13図(b)の配線
結果(こ示すよう(こ、端子8間を結線する配線径路に
生じた径路の迂回部分130によって、端子d間の配線
力(できなくなっている。
また、配線径路の大幅な迂回による配線長の増大は、電
気信号の伝搬遅延時間の増大や]くう゛ツキを招くこと
になる。これは、半導体集積回路やプリント基板上の回
路の誤動作の原因となる。
気信号の伝搬遅延時間の増大や]くう゛ツキを招くこと
になる。これは、半導体集積回路やプリント基板上の回
路の誤動作の原因となる。
一方、従来の配線処理に含まれているもう一つの問題点
は、同電位の端子間を結線する配線7寸ターンを求める
ときに迷路法や線分探索法を用0ていることである。こ
れらの方法は、ある意力)らある点まで結ぶ径路を探索
することを目的としたものである。このため、得られる
配線径路番よ、ただ−組の同電位の端子間を結べばよい
と言うもの1こなり、その径路により他の端子間の配線
径路にどのような影響を与えるかを考慮したものではな
くなる。したかって、このようにして得られた配線径路
は、他の端子間の配線径路を遮ったものとなる可能性か
ある。また、それらの方法は、基本的には迷路から脱出
する径路を求めるアルゴリズムであるため、迷路の壁や
障害物に沿った径路を求めやすくなる。この障害物とは
、配線領域上では、端子であったり既に求められた配線
パターンであったりする。したがって、配線径路が端子
や既配線にまとわりつき、端子から配線を引き出すこと
か困難になり、未結線を生じる原因となる。例えば、第
14図に示すように、配線径路140,141 142
.143が端子144の周囲にまとわりつくと、端子1
05から配線が引き出せなくなってしまう。
は、同電位の端子間を結線する配線7寸ターンを求める
ときに迷路法や線分探索法を用0ていることである。こ
れらの方法は、ある意力)らある点まで結ぶ径路を探索
することを目的としたものである。このため、得られる
配線径路番よ、ただ−組の同電位の端子間を結べばよい
と言うもの1こなり、その径路により他の端子間の配線
径路にどのような影響を与えるかを考慮したものではな
くなる。したかって、このようにして得られた配線径路
は、他の端子間の配線径路を遮ったものとなる可能性か
ある。また、それらの方法は、基本的には迷路から脱出
する径路を求めるアルゴリズムであるため、迷路の壁や
障害物に沿った径路を求めやすくなる。この障害物とは
、配線領域上では、端子であったり既に求められた配線
パターンであったりする。したがって、配線径路が端子
や既配線にまとわりつき、端子から配線を引き出すこと
か困難になり、未結線を生じる原因となる。例えば、第
14図に示すように、配線径路140,141 142
.143が端子144の周囲にまとわりつくと、端子1
05から配線が引き出せなくなってしまう。
(発明が解決しようとする課題)
以上説明したように、従来の配線処理方法にあっては、
最適な配線順序を求めることの困難性と、径路探索のア
ルゴリズムによる端子への配線径路のまとわりつきによ
って、配線径路の冗長や端子から配線か引き出せなくな
るといった不具合を招くことになる。このため、未結線
が生じたり、回路動作に不具合か生じるおそれがあった
。
最適な配線順序を求めることの困難性と、径路探索のア
ルゴリズムによる端子への配線径路のまとわりつきによ
って、配線径路の冗長や端子から配線か引き出せなくな
るといった不具合を招くことになる。このため、未結線
が生じたり、回路動作に不具合か生じるおそれがあった
。
そこで、この発明は、上記に鑑みてなされたものであり
、その目的とするところは、結線率の向上及び配線径路
の最適化を図った自動配線処理方法を提供することにあ
る。
、その目的とするところは、結線率の向上及び配線径路
の最適化を図った自動配線処理方法を提供することにあ
る。
[発明の構成]
(課題を解決するための手段)
上記目的を達成するために、この発明は、他の配線との
短絡を許可して同電位に結線すべき端子間の配線径路を
決定する初期配線処理をすべての端子に対して行ない、 前記配線処理の後、配線径路を変更する配線セグメント
を抽出し、抽出した配線セグメントを移動し、移動結果
から冗長な配線径路を修正して配線径路を変更し、他の
配線との短絡量を算出して変更前後の短絡量を比較し、
短絡量が増加している場合には変更後の配線径路を登録
せず、短絡量が減少している場合には変更後の配線径路
を登録する第1の配線修正処理を所定の終了条件か満足
されるまで繰り返し行なうことを要旨とする。
短絡を許可して同電位に結線すべき端子間の配線径路を
決定する初期配線処理をすべての端子に対して行ない、 前記配線処理の後、配線径路を変更する配線セグメント
を抽出し、抽出した配線セグメントを移動し、移動結果
から冗長な配線径路を修正して配線径路を変更し、他の
配線との短絡量を算出して変更前後の短絡量を比較し、
短絡量が増加している場合には変更後の配線径路を登録
せず、短絡量が減少している場合には変更後の配線径路
を登録する第1の配線修正処理を所定の終了条件か満足
されるまで繰り返し行なうことを要旨とする。
(作用)
この発明は、他の配線径路に影響されることなく初期配
線処理を実行して配線径路の迂回を抑制し、配線径路の
端子へのまとわりつきを抑制するようにして配線間の短
絡を除去するようにしている。
線処理を実行して配線径路の迂回を抑制し、配線径路の
端子へのまとわりつきを抑制するようにして配線間の短
絡を除去するようにしている。
(実施例)
以下、図面を用いてこの発明の詳細な説明する。
第1図はこの発明の一実施例に係わる自動配線処理方法
の手順を示すフローチャートである。同図に示す実施例
の処理方法は、先ず、初期配線で配線のショート(重な
り)を許して全ての端子間の配線を行う。この時に、ど
のような条件でショートを許し、どのような手法で配線
を行うかは任意である。次に、セグメントを移動させて
配線径路を変更す−ることを繰り返し、ショートを取り
除いていく。最後に、上記の処理で除去しきれなかった
ショートを持つ配線が存在すれば、これを引き剥し、そ
の後、径路探索のアルゴリズムで再配線する。
の手順を示すフローチャートである。同図に示す実施例
の処理方法は、先ず、初期配線で配線のショート(重な
り)を許して全ての端子間の配線を行う。この時に、ど
のような条件でショートを許し、どのような手法で配線
を行うかは任意である。次に、セグメントを移動させて
配線径路を変更す−ることを繰り返し、ショートを取り
除いていく。最後に、上記の処理で除去しきれなかった
ショートを持つ配線が存在すれば、これを引き剥し、そ
の後、径路探索のアルゴリズムで再配線する。
このような処理方法で中心となる処理は、配線セグメン
トを移動させて配線径路を徐々に変更させながらショー
トを取り除いていく処理である。
トを移動させて配線径路を徐々に変更させながらショー
トを取り除いていく処理である。
ここで、人手により配線を行う場合の処理手順を考えて
みる。人間か配線を行う場合、先ず少しぐらいの配線の
ショートを許して全ての配線径路を大まかに決め、次に
、相互の関係を考慮しながら配線径路を少しづつ変更さ
せ、全体のバランスを考えて配線ショートを取り除いて
いくであろう。
みる。人間か配線を行う場合、先ず少しぐらいの配線の
ショートを許して全ての配線径路を大まかに決め、次に
、相互の関係を考慮しながら配線径路を少しづつ変更さ
せ、全体のバランスを考えて配線ショートを取り除いて
いくであろう。
そして、最後にどうしてもショートが除去できなかった
配線に関しては、−度その配線径路を無効にし、ここで
初めて端子間を結ぶ径路を探索することを行うであろう
。このことからも、本発明による配線処理の手順は、極
めて人間の思考に近い自然なものだと言うことができる
。
配線に関しては、−度その配線径路を無効にし、ここで
初めて端子間を結ぶ径路を探索することを行うであろう
。このことからも、本発明による配線処理の手順は、極
めて人間の思考に近い自然なものだと言うことができる
。
次に、この実施例の配線処理手順を、第1図を参照して
説明する。
説明する。
第1図において、この実施例の配線処理は、大別して初
期配線プロセスA1ショート除去プロセスB1再配線プ
ロセスCとからなっている。
期配線プロセスA1ショート除去プロセスB1再配線プ
ロセスCとからなっている。
初期配線プロセスAは、配線のショートを許して同電位
の端子間の初期配線を行う(ステップ1)ここでは、各
同電位の端子組に対し、端子間を結ぶスタイナー木を求
め、このスタイナー木を以て端子間の配線径路とする。
の端子間の初期配線を行う(ステップ1)ここでは、各
同電位の端子組に対し、端子間を結ぶスタイナー木を求
め、このスタイナー木を以て端子間の配線径路とする。
スタイナー木を求めることはNP完全問題であるため、
−船釣には多大な計算処理時間を必要とする。
−船釣には多大な計算処理時間を必要とする。
しかし、通常の半導体集積回路やプリント基板の配線処
理は、同電位の端子の平均的個数は3個〜5個であるた
め、実用的な計算処理時間で配線径路を求めることが可
能である。なお、この初期配線プロセスの目的は大まか
な配線径路を求めることであるため、必ずしも最小なス
タイナー木を求める必要はなく近似解で十分である。し
たがって、スタイナー木の近似解を求めるアルゴリズム
を用いることによって、更に処理を高速化することがで
きる。スタイナー木の近似解を求めるアルゴリズムは、
文献「m、Hanan、on 5teIer’s Pr
oblen with Rectlinear Djs
tance、−9IAM J、Appl、Math、v
ol、I4.I)p、255−265.1968 J
、あるいは文献r Jan−1ng Ho、 Gopa
laklshnan Vijaya and C,KW
ong、ANev Approach to the
Rectjliner 5teinerTree Pr
obleIll、”26th Design Auto
l!1etionConference、 pp、16
1−166.191119.J等が知られている。
理は、同電位の端子の平均的個数は3個〜5個であるた
め、実用的な計算処理時間で配線径路を求めることが可
能である。なお、この初期配線プロセスの目的は大まか
な配線径路を求めることであるため、必ずしも最小なス
タイナー木を求める必要はなく近似解で十分である。し
たがって、スタイナー木の近似解を求めるアルゴリズム
を用いることによって、更に処理を高速化することがで
きる。スタイナー木の近似解を求めるアルゴリズムは、
文献「m、Hanan、on 5teIer’s Pr
oblen with Rectlinear Djs
tance、−9IAM J、Appl、Math、v
ol、I4.I)p、255−265.1968 J
、あるいは文献r Jan−1ng Ho、 Gopa
laklshnan Vijaya and C,KW
ong、ANev Approach to the
Rectjliner 5teinerTree Pr
obleIll、”26th Design Auto
l!1etionConference、 pp、16
1−166.191119.J等が知られている。
ショート除去プロセスBは、配線セグメントの移動によ
る配線径路の変更を繰り返すことで径路のショートを除
去するプロセスである。このショート除去プロセスBは
、どのような径路に変更すればショートが除去できるか
を考慮するのではなく、取りあえず配線径路を変更し、
その後ショートが除去されているか否かを判定するとい
うものである。このプロセスの処理の大まかな手順は、
先ず、移動させる配線セグメントを抽出し、次に、抽出
した配線セグメントの移動方向を決定し、実際に配線セ
グメントを移動させて配線径路を変更する。このとき、
もし冗長な径路が発生したならば、これを修正する。最
後に、配線で径路の変更前後のショートの増減を調べ、
配線セグメントの移動による径路変更による径路のショ
ート箇所の増減を判定し、増大しているならば変更後の
径路をもとに戻す。ショートが減少しているならば変更
後の径路を受は入れる。
る配線径路の変更を繰り返すことで径路のショートを除
去するプロセスである。このショート除去プロセスBは
、どのような径路に変更すればショートが除去できるか
を考慮するのではなく、取りあえず配線径路を変更し、
その後ショートが除去されているか否かを判定するとい
うものである。このプロセスの処理の大まかな手順は、
先ず、移動させる配線セグメントを抽出し、次に、抽出
した配線セグメントの移動方向を決定し、実際に配線セ
グメントを移動させて配線径路を変更する。このとき、
もし冗長な径路が発生したならば、これを修正する。最
後に、配線で径路の変更前後のショートの増減を調べ、
配線セグメントの移動による径路変更による径路のショ
ート箇所の増減を判定し、増大しているならば変更後の
径路をもとに戻す。ショートが減少しているならば変更
後の径路を受は入れる。
次に、ショート除去プロセスBを詳説するが、その前に
、短絡(ショート)の量を客観的に表わす数量(以下「
コスト」と呼ぶ)について説明する。
、短絡(ショート)の量を客観的に表わす数量(以下「
コスト」と呼ぶ)について説明する。
ここで、N本の配線セグメント81〜Sfiがある場合
には、各々の配線セグメントS、のコストをc(sl)
で表わし、配線領域全体のコストをCで表わし、Cを C−Σ c (S l ) −22・ L2 +32
・ L。
には、各々の配線セグメントS、のコストをc(sl)
で表わし、配線領域全体のコストをCで表わし、Cを C−Σ c (S l ) −22・ L2 +32
・ L。
i=1
+42 ・ L4 +・・・
で定義する。ここで、L、は1本の配線セグメントが同
一箇所でショートしている部分の長さである。また、c
(sl)を C(sl)−22・L2 (S + ) / 2+3
2L3 (s、)/3+42 ・L4 (s + ) / 4+・・・ で定義する。ここで、LI(81)は、SIにおいて、
1本の配線セグメントが同一箇所でショートしている部
分の長さである。
一箇所でショートしている部分の長さである。また、c
(sl)を C(sl)−22・L2 (S + ) / 2+3
2L3 (s、)/3+42 ・L4 (s + ) / 4+・・・ で定義する。ここで、LI(81)は、SIにおいて、
1本の配線セグメントが同一箇所でショートしている部
分の長さである。
次に、第2図を参照してc(s、)の定義を説明する。
コストを計算しようとする配線セグメントをSとし、こ
のS、に対して配線セグメントS、。
のS、に対して配線セグメントS、。
SSがショートしているとする。このような場合には、
L2 (sk)−愛、十更。
LI (Sk)−!L2
となり、コストc(s、)は、
c (st )−2・ (1+ ”Us )+3”12
となる。
となる。
次に、第1図を参照して、ショート除去プロセスBを詳
説する。
説する。
まず、初期配線ステップ1によって敷設された配線のう
ち、配線径路を変更しようとする配線を構成する線分と
なり、移動しようとする配線セグメントを抽出する(ス
テップ2)。配線セグメントの移動は、そのことによっ
てショート箇所を減少させることを目的としている。従
って、ショートの多い配線セグメントを優先的に移動さ
せると効率的であると考えられる。そのための処理は、
第3図に示すように、先ず、全ての配線セグメントsI
に対し、c(sI)に比例した重み付けを行なう(ステ
ップ21)。ただし、これらの重みは、総和が“1゛に
なるように正規化しておく。
ち、配線径路を変更しようとする配線を構成する線分と
なり、移動しようとする配線セグメントを抽出する(ス
テップ2)。配線セグメントの移動は、そのことによっ
てショート箇所を減少させることを目的としている。従
って、ショートの多い配線セグメントを優先的に移動さ
せると効率的であると考えられる。そのための処理は、
第3図に示すように、先ず、全ての配線セグメントsI
に対し、c(sI)に比例した重み付けを行なう(ステ
ップ21)。ただし、これらの重みは、総和が“1゛に
なるように正規化しておく。
次に、移動させる配線セグメントを、この正規化された
重みの確率で抽出する。
重みの確率で抽出する。
例えばN本の配線セグメントS、〜sNかある場合には
、各々の配線セグメントの重みW(s、)を次のように
与える。
、各々の配線セグメントの重みW(s、)を次のように
与える。
W (sI ) −(c (sI ) +
1)/ Σ=1 (c(s 1 ) +1) ここでC(S、)に“1″を加えているのは、ショート
部分の長さが“0”の配線セグメントにも移動の対象と
して抽出される確率を持たせるためである。これは、処
理が局所解に陥ることを防ぐことに効果がある。
1)/ Σ=1 (c(s 1 ) +1) ここでC(S、)に“1″を加えているのは、ショート
部分の長さが“0”の配線セグメントにも移動の対象と
して抽出される確率を持たせるためである。これは、処
理が局所解に陥ることを防ぐことに効果がある。
次に、0.0から1.0までの乱数rを発生させる(ス
テップ22)。この後、r < W (s + )とな
る配線セグメントを要素とする集合Sを作成しくステッ
プ23)。この集合Sの中から等確率で移動させる配線
セグメントを一本抽出する(ステップ24)。
テップ22)。この後、r < W (s + )とな
る配線セグメントを要素とする集合Sを作成しくステッ
プ23)。この集合Sの中から等確率で移動させる配線
セグメントを一本抽出する(ステップ24)。
このような方法は、ショートの多い配線セグメントを優
先的に移動させることになり、効果的な移動が期待でき
るが、重みを常に正規化しておくために、コストが変化
する度に重みを再計算しなければならず、この再計算に
より全体の処理時間が増大する恐れがある。
先的に移動させることになり、効果的な移動が期待でき
るが、重みを常に正規化しておくために、コストが変化
する度に重みを再計算しなければならず、この再計算に
より全体の処理時間が増大する恐れがある。
これを防ぐために、重みの計算を簡略化する方法が考え
られる。この方法は、処理の初期の段階においては、配
線セグメントのショート部分が多く、後半で少なくなる
ということに基づいて、処理の初期段階では、全ての配
線セグメントを万遍無く移動させ、処理の後半ではショ
ートの多い配線セグメントを優先させて移動させる方法
である。
られる。この方法は、処理の初期の段階においては、配
線セグメントのショート部分が多く、後半で少なくなる
ということに基づいて、処理の初期段階では、全ての配
線セグメントを万遍無く移動させ、処理の後半ではショ
ートの多い配線セグメントを優先させて移動させる方法
である。
従って、第4図に示すように、処理の前半では重みの計
算をせず、移動させる配線セグメントを全てランダムに
抽出しくステップ25)、コストCが、予め定めておい
た規定値より小さくなった時に(ステップ20)、第3
図に示すように、配線セグメントの重みを計算するよう
にすれば、重みの再計算の手間を省くことができ、さら
には効率的な処理を期待することができる。
算をせず、移動させる配線セグメントを全てランダムに
抽出しくステップ25)、コストCが、予め定めておい
た規定値より小さくなった時に(ステップ20)、第3
図に示すように、配線セグメントの重みを計算するよう
にすれば、重みの再計算の手間を省くことができ、さら
には効率的な処理を期待することができる。
次に、抽出された配線セグメントの移動方向を決定する
(ステップ3)。例えば、配線層が1層の場合には、第
5図に示すように、配線セグメント50は、自身の長さ
方向に対して垂直方向51゜52に移動される。この移
動の自由度は“2”であり、実際の移動方向はこの2つ
の自由度の中からランダムに1つが選択される。
(ステップ3)。例えば、配線層が1層の場合には、第
5図に示すように、配線セグメント50は、自身の長さ
方向に対して垂直方向51゜52に移動される。この移
動の自由度は“2”であり、実際の移動方向はこの2つ
の自由度の中からランダムに1つが選択される。
このようにして移動方向が選択された配線セグメントは
、選択された移動方向へ予め決められた移動量だけ移動
され(ステップ4)、配線径路が変更される。例えば、
第6図(a)に示すように、端子a間を結線する配線の
径路において、配線セグメント60を図中の矢印の方向
へ移動させた場合には、移動後の配線径路は第6図(b
)に示すように変更される。さらに、第6図(b)に示
す配線径路において、配線セグメント61を図中の矢印
の方向へ移動させた場合には、移動後の配線径路は第6
図(C)に示すように変更される。
、選択された移動方向へ予め決められた移動量だけ移動
され(ステップ4)、配線径路が変更される。例えば、
第6図(a)に示すように、端子a間を結線する配線の
径路において、配線セグメント60を図中の矢印の方向
へ移動させた場合には、移動後の配線径路は第6図(b
)に示すように変更される。さらに、第6図(b)に示
す配線径路において、配線セグメント61を図中の矢印
の方向へ移動させた場合には、移動後の配線径路は第6
図(C)に示すように変更される。
このような、配線セグメントの移動において、変更後の
配線径路にループや冗長な径路か発生することがあるの
で、これを判別しくステップ5)変更後に配線径路のル
ープや冗長な径路が発生した場合にはこれを修正する(
ステップ6)、例えば、第7図(a)に示すように、配
線セグメント70を図中の矢印の方向へ移動することに
よって、第7図(b)に示すような冗長な配線径路71
−が生じた場合には、冗長な部分を除去して、第7図(
C)に示すような配線径路に修正される。
配線径路にループや冗長な径路か発生することがあるの
で、これを判別しくステップ5)変更後に配線径路のル
ープや冗長な径路が発生した場合にはこれを修正する(
ステップ6)、例えば、第7図(a)に示すように、配
線セグメント70を図中の矢印の方向へ移動することに
よって、第7図(b)に示すような冗長な配線径路71
−が生じた場合には、冗長な部分を除去して、第7図(
C)に示すような配線径路に修正される。
次に、配線径路の変更前後のコストの差を前述した計算
式に基づいて算出する(ステップ7)。
式に基づいて算出する(ステップ7)。
コストの差か算出されると、その増減が判別され(ステ
ップ8)、変更後のコストが変更前のそれに比して増加
している場合は、変更後の配線径路を登録せず変更前の
配線径路に戻す(ステップ9)一方、変更後のコストが
変更前のそれに比して減少している場合には、変更後の
配線径路を受は入れて登録する(ステップ10)。この
時に、コストの差は、実際に変更した配線径路に係わる
配線セグメントに関するものだけを計算するようにすれ
ば、処理時間を短縮することができる。
ップ8)、変更後のコストが変更前のそれに比して増加
している場合は、変更後の配線径路を登録せず変更前の
配線径路に戻す(ステップ9)一方、変更後のコストが
変更前のそれに比して減少している場合には、変更後の
配線径路を受は入れて登録する(ステップ10)。この
時に、コストの差は、実際に変更した配線径路に係わる
配線セグメントに関するものだけを計算するようにすれ
ば、処理時間を短縮することができる。
次に、ショート除去プロセスにおける終了条件の判別が
行なわれる(ステップ11)。終了条件には、種々のも
のが考えられるが、例えば、ショート除去プロセスB(
ステップ2〜ステツプ11までの処理)の繰り返し回数
を予め設定し、この回数に達した時に終了する方法、あ
るいは予めコストの下限値を設定し、ショート除去プロ
セスBによるコストがこの下限値以下になった時に終了
する方法、あるいは配線径路のショートが減少しない状
態が予め設定された規定回路だけ連続して生じた場合に
は終了する方法等がある。
行なわれる(ステップ11)。終了条件には、種々のも
のが考えられるが、例えば、ショート除去プロセスB(
ステップ2〜ステツプ11までの処理)の繰り返し回数
を予め設定し、この回数に達した時に終了する方法、あ
るいは予めコストの下限値を設定し、ショート除去プロ
セスBによるコストがこの下限値以下になった時に終了
する方法、あるいは配線径路のショートが減少しない状
態が予め設定された規定回路だけ連続して生じた場合に
は終了する方法等がある。
このように、予め設定された終了条件が満足されるまで
、ステップ2〜ステツプ11に示したショート除去プロ
セスが繰り返し実行され、終了条件が満足されて、まだ
ショート箇所が存在する場合には(ステップ12)、再
配線プロセスCが実行される。
、ステップ2〜ステツプ11に示したショート除去プロ
セスが繰り返し実行され、終了条件が満足されて、まだ
ショート箇所が存在する場合には(ステップ12)、再
配線プロセスCが実行される。
この再配線プロセスCは、まず上記ショート除去プロセ
スBて除去できなかったショート箇所を含む配線を引き
剥して無効としくステップ13)、引き剥した配線を例
えば迷路法により再配線する(ステップ14)。
スBて除去できなかったショート箇所を含む配線を引き
剥して無効としくステップ13)、引き剥した配線を例
えば迷路法により再配線する(ステップ14)。
このように、3段階のプロセスが順次実行されて、例え
ば第8図に示すように、配線処理が行なわれる。第8図
は一層配線により配線処理が実施された配線例であり、
初期配線プロセスでは、第8図(a)に示すように、ス
タイナー木をもって初期配線径路が決められ、それぞれ
の端子a、b、c。
ば第8図に示すように、配線処理が行なわれる。第8図
は一層配線により配線処理が実施された配線例であり、
初期配線プロセスでは、第8図(a)に示すように、ス
タイナー木をもって初期配線径路が決められ、それぞれ
の端子a、b、c。
d、e、fは最短距離で配線処理されている。次に、第
8図(a)に示した配線に生じているショート箇所80
が、ショート除去プロセスにより除去され、第8図(b
)に示すような配線結果が得られる。
8図(a)に示した配線に生じているショート箇所80
が、ショート除去プロセスにより除去され、第8図(b
)に示すような配線結果が得られる。
しかしながら、この時点ては、まだショート箇所81が
生じているため、再配線プロセスにより、このショート
箇所81が第8図(C)に示すように除去され、ショー
トがない配線径路が得られる。
生じているため、再配線プロセスにより、このショート
箇所81が第8図(C)に示すように除去され、ショー
トがない配線径路が得られる。
このように上記実施例では、初期配線プロセスにおいて
、配線径路のショートを許した形で全ての配線を行うこ
とで他の配線径路の影響をなくし、径路の迂回を防ぐこ
とができる。また、配線径路内の一線分を微少に移動す
ることを繰り返すことによって配線径路を変更し、径路
のショートを取り除き、その後、この配線径路の変更で
除去できなかったショートを持つ径路を引き剥し、再配
線することで、配線径路の端子へのまとわりつきが抑制
され、配線の完成率か高められている。
、配線径路のショートを許した形で全ての配線を行うこ
とで他の配線径路の影響をなくし、径路の迂回を防ぐこ
とができる。また、配線径路内の一線分を微少に移動す
ることを繰り返すことによって配線径路を変更し、径路
のショートを取り除き、その後、この配線径路の変更で
除去できなかったショートを持つ径路を引き剥し、再配
線することで、配線径路の端子へのまとわりつきが抑制
され、配線の完成率か高められている。
さらに、個々の配線径路を少しづつ変更させながらショ
ートを取り除くことで、一部の配線か極端に迂回した径
路になることを防ぐことができるとともに、配線長が短
かくなり、配線径路が最適化される。このことにより、
径路の極端な迂回のために生じる電気信号の伝搬遅延時
間の増大を防ぐことができ、回路の誤動作の減少に寄与
することができる。
ートを取り除くことで、一部の配線か極端に迂回した径
路になることを防ぐことができるとともに、配線長が短
かくなり、配線径路が最適化される。このことにより、
径路の極端な迂回のために生じる電気信号の伝搬遅延時
間の増大を防ぐことができ、回路の誤動作の減少に寄与
することができる。
本発明による手法は、径路に制約がある配線を含む半導
体集積回路やプリント基板の配線処理に対しても、ショ
ート除去プロセスBの配線セグメントの抽出ステップ2
で制約を持つ配線の配線セグメントを抽出する確率を低
く設定することで対応可能である。これは、できるだけ
同一配線長で配線しなければならないような配線や、で
きるだけ並行な径路で配線しなければならないような配
線、例えばバス配線やクロック配線を含むような場合の
配線処理に有効である。
体集積回路やプリント基板の配線処理に対しても、ショ
ート除去プロセスBの配線セグメントの抽出ステップ2
で制約を持つ配線の配線セグメントを抽出する確率を低
く設定することで対応可能である。これは、できるだけ
同一配線長で配線しなければならないような配線や、で
きるだけ並行な径路で配線しなければならないような配
線、例えばバス配線やクロック配線を含むような場合の
配線処理に有効である。
例えば、並行した径路で配線しなければならないような
配線を含むような配線処理を行う場合には、この配線の
集合をHとして、まず、初期配線プロセスAにおいて、
この集合Hの配線をお互いに並行した径路で配線する。
配線を含むような配線処理を行う場合には、この配線の
集合をHとして、まず、初期配線プロセスAにおいて、
この集合Hの配線をお互いに並行した径路で配線する。
次に、ショート除去プロセスBの配線セグメント抽出ス
テップ2て、集合Hに含まれる配線セグメントが抽出さ
れる確率か低くなるように設定して配線処理を行う。こ
れにより、集合Hの配線径路か変更される確率は低くな
り、径路変更の度合は最小限に抑えられるため初期配線
プロセスAで設定された径路か保たれる状態で全ての配
線を完成させることができる。
テップ2て、集合Hに含まれる配線セグメントが抽出さ
れる確率か低くなるように設定して配線処理を行う。こ
れにより、集合Hの配線径路か変更される確率は低くな
り、径路変更の度合は最小限に抑えられるため初期配線
プロセスAで設定された径路か保たれる状態で全ての配
線を完成させることができる。
なお、本実施例では、1層配線の配線例を示したが、本
発明の手法はこれに限定されるものではなく、多層配線
にも適用可能である。
発明の手法はこれに限定されるものではなく、多層配線
にも適用可能である。
多層配線においては、配線セグメント90の移動方向は
第9図に示すよう、1層配線における移動方向91.9
2に層変換移動の移動方向93゜94か加わり、移動方
向の自由度は、第9図に示すように4つになる。したが
って、配線セグメントの移動方向の決定のステップ3で
は、この4つの自由度の中から決定するようにすれば、
より柔軟な処理を行うことが可能となる。
第9図に示すよう、1層配線における移動方向91.9
2に層変換移動の移動方向93゜94か加わり、移動方
向の自由度は、第9図に示すように4つになる。したが
って、配線セグメントの移動方向の決定のステップ3で
は、この4つの自由度の中から決定するようにすれば、
より柔軟な処理を行うことが可能となる。
また、本実施例では詳細配線の配線例を示したが、本発
明の手法はこれに限定されるものではなく、配線の概略
径路を求める概略配線にも適用可能である。
明の手法はこれに限定されるものではなく、配線の概略
径路を求める概略配線にも適用可能である。
概略配線への適用では、ショート除去プロセスBと同一
の処理フローを用いて、径路の集中を配線領域全面に分
散させることができるため、良好な配線結果を得ること
が期待てきる。したかって、本手法を概略配線と詳細配
線に用いることで、より自然で柔軟性のある配線処理を
実現することかできる。
の処理フローを用いて、径路の集中を配線領域全面に分
散させることができるため、良好な配線結果を得ること
が期待てきる。したかって、本手法を概略配線と詳細配
線に用いることで、より自然で柔軟性のある配線処理を
実現することかできる。
第1−0図は上記した配線処理を実施する処理手順を示
すフローチャートである。
すフローチャートである。
第10図に示す処理手順は、概略配線プロセス]00と
詳細配線プロセス101を有し、概略配線プロセス10
0ては、第11図(a)に示す配線の径路が通過する実
グリッド110をいくつかまとめた第11図(b)に示
すような概略グリッド111上で、初期配線プロセス(
ステップ102)とショート除去プロセス(ステップ1
03)とによって配線径路を大まかに決め、径路の集中
を配線領域全面に分散させた概略配線結果を得る。
詳細配線プロセス101を有し、概略配線プロセス10
0ては、第11図(a)に示す配線の径路が通過する実
グリッド110をいくつかまとめた第11図(b)に示
すような概略グリッド111上で、初期配線プロセス(
ステップ102)とショート除去プロセス(ステップ1
03)とによって配線径路を大まかに決め、径路の集中
を配線領域全面に分散させた概略配線結果を得る。
次に、この概略配線結果を第12図に示すように実グリ
ッド上に写像させる(ステップ104)。
ッド上に写像させる(ステップ104)。
すなわち、第12図において、概略グリッド上の配線径
路120は、実グリッド110上に2つの配線径路12
1,122として写像される。写像された2つの配線径
路121,122にはショートが生じているので、次に
実行される詳細配線プロセス101のショート除去プロ
セス105と再配線プロセス106によって、ショート
が除去されて、配線処理が終了する。
路120は、実グリッド110上に2つの配線径路12
1,122として写像される。写像された2つの配線径
路121,122にはショートが生じているので、次に
実行される詳細配線プロセス101のショート除去プロ
セス105と再配線プロセス106によって、ショート
が除去されて、配線処理が終了する。
[発明の効果コ
以上説明したように、この発明によれば、短絡を許して
初期配線処理を行ない、初期配線処理で発生した短絡に
係わる配線セグメントを移動して配線径路を変更するこ
とにより短絡を除去し、除去しきれなかった短絡を再配
線処理によって除去するようにしたので、自動配線処理
の結線率が向上し、最適な配線径路を得ることができる
。
初期配線処理を行ない、初期配線処理で発生した短絡に
係わる配線セグメントを移動して配線径路を変更するこ
とにより短絡を除去し、除去しきれなかった短絡を再配
線処理によって除去するようにしたので、自動配線処理
の結線率が向上し、最適な配線径路を得ることができる
。
第1図はこの発明の一実施例に係わる自動配線処理方法
の手順を示すフローチャート、第2図はこの発明の一実
施例におけるコストを説明するための図、 第3図及び第4図は第1図に示す処理方法における一部
処理の一方法を示すフローチャート、第5図は配線セグ
メントの移動方向を示す図、第6図は配線セグメントの
移動による配線径路の一変更例を示す図、 第7図は配線径路の変更による冗長な径路の発生及びそ
の修正を示す図、 第8図はこの発明の一実施例による一配線例を示す図、 第9図は多層配線による配線セグメントの移動方向を示
す図、 第10図はこの発明を概略配線処理と詳細配線処理の双
方に適用した配線処理手順を示すフローチャート、 第11図は概略配線における概略グリッドを説明するだ
めの図、 第12図は概略グリッド上の概略配線結果を詳細配線の
実グリッド上に写像する様子を示す図、第13図及び第
14図は従来における配線処理を説明するための図であ
る。 A・・・初期配線プロセス B・・・ショート除去プロセス C・−・再配線プロセス
の手順を示すフローチャート、第2図はこの発明の一実
施例におけるコストを説明するための図、 第3図及び第4図は第1図に示す処理方法における一部
処理の一方法を示すフローチャート、第5図は配線セグ
メントの移動方向を示す図、第6図は配線セグメントの
移動による配線径路の一変更例を示す図、 第7図は配線径路の変更による冗長な径路の発生及びそ
の修正を示す図、 第8図はこの発明の一実施例による一配線例を示す図、 第9図は多層配線による配線セグメントの移動方向を示
す図、 第10図はこの発明を概略配線処理と詳細配線処理の双
方に適用した配線処理手順を示すフローチャート、 第11図は概略配線における概略グリッドを説明するだ
めの図、 第12図は概略グリッド上の概略配線結果を詳細配線の
実グリッド上に写像する様子を示す図、第13図及び第
14図は従来における配線処理を説明するための図であ
る。 A・・・初期配線プロセス B・・・ショート除去プロセス C・−・再配線プロセス
Claims (1)
- 【特許請求の範囲】 他の配線との短絡を許可して同電位に結線すべき端子
間の配線径路を決定する初期配線処理をすべての端子に
対して行ない、 前記配線処理の後、配線径路を変更する配線セグメント
を抽出し、抽出した配線セグメントを移動し、移動結果
から冗長な配線径路を修正して配線径路を変更し、他の
配線との短絡量を算出して変更前後の短絡量を比較し、
短絡量が増加している場合には変更後の配線径路を登録
せず、短絡量が減少している場合には変更後の配線径路
を登録する第1の配線修正処理を所定の終了条件が満足
されるまで繰り返し行なうことを特徴とする自動配線処
理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2153881A JPH0447462A (ja) | 1990-06-14 | 1990-06-14 | 自動配線処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2153881A JPH0447462A (ja) | 1990-06-14 | 1990-06-14 | 自動配線処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0447462A true JPH0447462A (ja) | 1992-02-17 |
Family
ID=15572152
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2153881A Pending JPH0447462A (ja) | 1990-06-14 | 1990-06-14 | 自動配線処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0447462A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011253436A (ja) * | 2010-06-03 | 2011-12-15 | Shinko Electric Ind Co Ltd | 配線設計装置及び配線設計方法 |
-
1990
- 1990-06-14 JP JP2153881A patent/JPH0447462A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011253436A (ja) * | 2010-06-03 | 2011-12-15 | Shinko Electric Ind Co Ltd | 配線設計装置及び配線設計方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5880970A (en) | Towards optimal Steiner tree routing in the presence of rectilinear obstacles | |
JP2687879B2 (ja) | 自動配線方法 | |
JPH07152802A (ja) | 配線設計方法 | |
JPH07321211A (ja) | 半導体集積回路の配線方法 | |
JP2009054172A (ja) | 配線処理方法及び配線処理装置並びに配線処理プログラム用記録媒体 | |
JPH06196563A (ja) | Vlsiの配線設計に対するコンピュータ実施可能な過密領域配線方法 | |
CN103930891A (zh) | 利用已有预布线算法,使用直线斯坦纳最小树(rsmt)确定节点之间的线路长度的方法 | |
CN111027273B (zh) | 一种基于预绕线的版图自动绕线方法、存储设备及系统 | |
JPH0447462A (ja) | 自動配線処理方法 | |
JP6672791B2 (ja) | 半導体設計支援装置、半導体設計支援方法、及び半導体設計支援プログラム | |
JP2574996B2 (ja) | 差動電流スイッチ対のルーティング方法 | |
JPH09293086A (ja) | 自動配線方法 | |
JP3560451B2 (ja) | 半導体集積回路のレイアウト方法 | |
US20230047053A1 (en) | Selective exposure of standard cell output nets for improved routing solutions | |
JPH05159025A (ja) | エリア分割配線方式 | |
US11544438B2 (en) | Superconductive circuit splitter placement | |
JP3178905B2 (ja) | 自動配線方式 | |
JPH06124321A (ja) | 自動配線処理方法 | |
JPH04151853A (ja) | 配線方法 | |
JP2818247B2 (ja) | 半導体装置の自動配線方法 | |
JPH05120380A (ja) | 配線処理方式 | |
JP3014157B2 (ja) | 自動配線方式 | |
JP5035003B2 (ja) | 配線レイアウト装置、配線レイアウト方法及び配線レイアウトプログラム | |
JP2998763B2 (ja) | 電子回路の布線設計装置 | |
TW201530332A (zh) | 使用多個主脊柱的脊柱佈線 |