JP2002503850A - 電子デバイスおよび電子装置を製造および設計する方法 - Google Patents
電子デバイスおよび電子装置を製造および設計する方法Info
- Publication number
- JP2002503850A JP2002503850A JP2000531798A JP2000531798A JP2002503850A JP 2002503850 A JP2002503850 A JP 2002503850A JP 2000531798 A JP2000531798 A JP 2000531798A JP 2000531798 A JP2000531798 A JP 2000531798A JP 2002503850 A JP2002503850 A JP 2002503850A
- Authority
- JP
- Japan
- Prior art keywords
- terminals
- edges
- terminal
- nodes
- graph
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H05—ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
- H05K—PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
- H05K1/00—Printed circuits
- H05K1/02—Details
- H05K1/11—Printed elements for providing electric connections to or between printed circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/70—Manufacture or treatment of devices consisting of a plurality of solid state components formed in or on a common substrate or of parts thereof; Manufacture of integrated circuit devices or of parts thereof
- H01L21/77—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate
- H01L21/78—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices
- H01L21/82—Manufacture or treatment of devices consisting of a plurality of solid state components or integrated circuits formed in, or on, a common substrate with subsequent division of the substrate into plural individual devices to produce devices, e.g. integrated circuits, each consisting of a plurality of components
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Manufacturing & Machinery (AREA)
- Power Engineering (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
置の設計および製造の分野に関し、かつより特定的にはチャネルの配線の設計に
おける改善に関する。
ナビード・シャワニによる参考書「VLSI物理設計の自動化のためのアルゴリ
ズム(Algorithms for VLSI Physical Desi
gn Automation)」、第2版、1995年、クルーワ・アカデミッ
ク・パブリッシャーズにおいては、特に頁267〜339において、従来技術の
ルーティング手法の概説が与えられている。
法は垂直制限グラフ(vertical constraint graph)
の手段によるルーティング問題のモデリングまたはモデル化(modeling
)である。垂直制限グラフにおいては、ルーティングされるべき各々のネット(
net)は該グラフにおける一つのノード(node)によって表わされる。も
しあるネットのいずれかの端子と他のネットのいずれかの端子の間に垂直制限(
vertical constraint)が存在すれば、垂直制限グラフにお
ける二つの対応するノードは前記垂直制限を表わすためにダイレクテッド・エッ
ジまたは有向エッジ(directed edge)によって接続される。この
ようにして、始めはルーティングされるべき各々のネットはチャネルにおける一
つだけの水平トランクによってルーティングできるものと仮定される。
らはトランクの実際の割当ての前に「ドッグレッギング(doglegging
)」と称される技術によって除去されなければならない。ドッグレッギング技術
はまた上で述べたナビード・シャワニによる文献の、7.4.2.2章、299
〜301頁に述べられている。ドッグレッギング技術のより詳細な説明はディー
・エヌ・ドイッチ、「ドッグレッグ・チャネル・ルータ(A dogleg c
hannel router)」、Proceeding of 13th A
CM/IEEE Design Automation Conference
、425〜433頁、1976年に、かつプレアス、「ノンターミナル・ドック
レッグによるチャネルルーティング(Channel Routing wit
h Non−Terminal Doglegs)」、Proceedings of the European Design Automation C
onference、1990年3月、グラスゴー、英国、451〜458頁に
与えられている。
レッギングを使用する一般的な従来技術の手法をより詳細に説明する。
terminals)がチャネルにおける一つの単一の仮想のトランク(ima
ginary trunk)に論理的に統合される。ステップ102において、
垂直制限グラフ(VCG)がこの抽象化(abstraction)に従って構
築される。
がサイクル(cycles)を有するか否かが判定される。もし何らのサイクル
も存在しなければ、これは該チャネルが実際にステップ100で規定された仮想
のトランクを使用することにより導くことができることを意味する。この場合、
配線レイアウトを生成するためにステップ106においてトランクが実際にチャ
ネルに割り当てられる。
108に進む。ステップ108において、垂直制限グラフにおけるサイクルがド
ッグレッギングの手段によって除去される。ドッグレッギングによって、ステッ
プ100において定義された仮想のトランクがセグメントに分解されて競合する
垂直制限を除去する。次に、ステップ106において、チャネルに対するトラン
クの割当てが行なわれる。
power of four)増大する計算機的な要求および、長い計算の後で
も、実際に遭遇する全ての種別のチャネルルーティング問題に対してトランクが
チャネルに割り当てられる前にステップ108において全てのサイクルが除去で
きるという保証がないという事実である。したがって、電子装置を設計しかつ製
造するための強化された方法の必要性が存在する。
することにより解決される。好ましい実施形態は従属請求項に与えられている。
からなかった競合する垂直制限を有する集積回路チップまたはプリント回路基板
のような、電子装置を設計および製造できるようにすることにある。
は解決できなった以下の種別を含む。 1.分割(splitting)はサイクルの数を低減する結果とならないた
め垂直制限グラフにおけるノードの分割によって解決できない競合する垂直制限
、および 2.それぞれのノードの分割はサイクルを生成しないため解決できない競合す
る垂直制限。
proach)を使用する点で有利である。始めに、ルーティングされるべきチ
ャネルの全ての端子が個々に端子の垂直制限グラフにおいて表現されかつまた個
々の端子の間に存在する垂直制限が前記端子の垂直制限グラフにおいて表現され
る。このようにして、解決されるべきルーティング問題に関する完全な情報が端
子の垂直制限グラフに含まれる。
いう点で有利である。計算機的な要求はネットの数とともに3の累乗で増大する
のみである。さらに、本発明によれば、解の存在が早い段階で予測できるから不
必要な計算時間が節約できる。
ってチャネルルーティング品質が改善できる。
ン基板スペースおよびより少ない電力消費を要求する強化された電子装置の設計
および製造につながる。本発明の方法から生じるより小型のチャネル配線設計は
また信号伝搬遅延によい影響を与えかつ従って電子デバイスおよび/またはそれ
が集積された、デジタル無線機またはオーディオ装置のような、電子装置の総合
的な動作速度によい影響を与える。
ンピュータプログラムによって容易に実施できる点で有利である。
該電子装置200は、デジタル電話またはオーディオ装置のような、任意の種類
の電子装置とすることができる。前記チャネルは上側または上部境界204およ
び下側または下部境界206を有する。上部境界204に沿って端子1.1,2
.1,3.1および3.2が左から右へとそれぞれコラムまたは列208,21
0,212および214に配置されている。
208,210,212および214に配置されている。端子1.1および1.
2はルーティングされるべき同じネット位置に属する。同様に、端子2.1およ
び2.2はネット2にかつ端子3.1,3.2,3.3および3.4はネット3
に所属する。
構成し、かつ同じネットに所属する端子はこの組の端子の部分集合またはサブセ
ット(sub−sets)を構成する。さらに、チャネル202はビア(via
s)218および220を備えた配線(wiring)216を有する。ビア2
18および220はいずれかの知られた従来技術のルーティングアルゴリズムに
従ってルーティングすることはできず、それは利用できる空の列がないという事
実に鑑みてドッグレッギングが可能ではないからである。対応する解決されない
競合する垂直制限が両側矢印(double−headed arrow)22
2によって示されている。本発明の教示は後により詳細に説明するようにそのよ
うな種類のルーティング問題を解決できるようにする。
ップ300において、ルーティングされるべきチャネルの端子の垂直制限グラフ
が構築される。端子の垂直制限グラフにおいては、ルーティングされるべき各々
のネットの各端子が始めに別個のノードで表わされかつ個々の端子の間の制約ま
たは制限は端子の垂直制限グラフ内の個々の有向エッジによって表わされる。
れこれは許容されない競合を生じることなくチャネルにおける一つの垂直ルーテ
ィングセグメントを表わすことができる。二つの他のノードの併合から生じる結
果として得られる端子の垂直制限グラフにおける対応するノードは始めは個々の
ノードで表わされた端子を表わし、さらに、結果として得られる併合されたノー
ドもまた新しいノードによって表わされる端子の共通の仮想トランクを表わす。
たはドッグレッギング操作によって端子の垂直制限グラフにおいて接続されたか
否かが判定される。もし接続されておれば、トランクは実際にステップ306に
おいてチャネルに割り当てることができ、それによって配線の設計は完了する。
08において、端子の垂直制限グラフの合計のレーティングまたは評点(rat
ing)が所定のしきい値と比較される。ここで考えられている例では、前記し
きい値は4である。もし合計のまたは総合のレーティングが前記しきい値より低
ければ、これはチャネルはルーティングできないことを示し(ステップ310)
、もしそうであれば設計プロセスは停止してさらなる計算機的な努力が節約でき
るようにする。
12に進みドッグレッギングによって接続されないネットの端子を接続する。ド
ッグレッギングの後に、制御はステップ302に戻る。
ましい実施形態においては、処理はルーティングされるべきチャネルの最も左の
列またはコラムからスタートする(ステップ400)。ステップ402において
、全ての列が処理されたか否かが判定される。もし処理されておれば、端子の垂
直制限グラフは完了する。もしそうでなければ、制御はステップ404に進む。
する端子はチャネルの上部および下部境界に位置する端子へとソートされる(s
orted)。
かが判定される。もし存在すれば、ステップ408において、現在の列における
チャネルの上部境界上に位置するステップ406において識別された端子を表わ
す端子の垂直制限グラフにおいて新しいノードが作成される。
かが判定される。もし含んでおれば、ステップ412において、現在のものから
新しいノードへのエッジとともに新しいノードが端子の垂直制限グラフにおいて
作成される。その後、前記新しいノードは現在のノードであると規定される。こ
れはステップ412において行なわれる。
プ410において現在のコラムが前に処理されなかったさらに他の端子を含まな
いことが判定されれば、制御はステップ414に進む。
るか否かが判定される。もし存在しなければ、制御はステップ416に進む。ス
テップ416においては、ステップ414において識別されたチャネルの境界上
の空のまたは空きの(vacant)位置を表わす端子の垂直制限グラフにおい
て空きのノードが作成される。さらに、ステップ416において、現在のものか
ら前記空きのノードへとエッジが作成される。ステップ416が実行された後、
制御はステップ402に移る。
定されれば、制御は直接ステップ402に移る。
判定されれば、制御はステップ418に進む。ステップ418においては、チャ
ネルの上部境界上の空きの位置を表わす空のノードとして端子の垂直制限グラフ
において新しいノードが作成される。新しいノードは現在のノードであると規定
される。ステップ418が実行された後、制御はステップ410に移る。
々の個々の端子は別個のノードによって端子の垂直制限グラフにおいて表わされ
る。さらに、その上に端子が配置されていないが配置することができるチャネル
の境界に沿った空きの位置は前記端子の垂直制限グラフにおける空きのノードま
たは空のノード(vacant nodes)によって表わされる。
ッジによって表わされる。本発明の好ましい実施形態に従って端子の垂直制限グ
ラフが発生される方法から、端子の垂直制限グラフはサイクルを持ち得ないこと
が分かる。その理由は、各エッジは同じコラムに位置する一対の端子の間に存在
する垂直制限を表わすのみであるからである。
ップ500において、ルーティングされるべきネットの内の任意の一つが現在の
ネットとして選択される。主たる手順が開始する前に、ちょうど二つの端子を有
するネットが識別される。もし該二つの端子がチャネルの同じコラムに位置して
おれば、そのような端子を表わす対応するノードがステップ502において併合
される。
を失うことなく、ステップ300において作成される端子の垂直制限グラフはi
の数のエッジE1,E2,E3,…,Eiを有するものと仮定する。
(rating)が計算される。エッジEjの個々のレーティングRj(Ej)
は加算されて総合のまたは合計のレーティングを生じる。次に、エッジがそれら
のレーティングに従って降下順(descending order)でソート
され、これによってリストL1を生じ、この場合L1={E1,E2,E3,…
,Ei}であり、E1が最も高いレーティングR1を有する。
れたリストL1の始めから開始して最小数のエッジが識別される。リストL2は
L1の始めからのそのようなエッジのみを含み、これは予め規定されたしきい値
より上の総合のレーティングを生じ、この場合これは3である。リストL2を発
生するために、以下の条件が満たされるようにkの最小値が見出されなければな
らない。
。もし処理されておれば、図5のプロセスフローは終了し、かつ図3に示される
プロセスフローに戻り、そこではステップ304が次に実行されるステップとな
る。
される。ステップ510においては、まだ処理されていない任意のネットが現在
のネットとして選択される。その現在のネットに対して、ルーティングされるべ
きチャネルの垂直制限グラフおよび端子制限グラフに鑑みて、局所的またはロー
カル垂直制限グラフが発生される。ローカル端子グラフの発生は次のように行な
われる。
る。該垂直制限グラフにおいて、現在のネットを表わすノードが選択される。該
垂直制限グラフにおける選択されたノードは現在のネットに属する端子を表わす
端子の垂直制限グラフのノードによって置き換えられる。該垂直制限グラフの影
響を受けた(アフェクテッド:affected)エッジは前記端子の垂直制限
グラフの対応する置換ノード(substituent nodes)に接続さ
れる。
備えている。さらに、前記ローカル端子グラフのいずれかの対のノードが方向の
ないエッジによって接続されるべきか否かは次の条件によって決定される。もし
前記垂直制限グラフの置換ノードの内の1つから考慮される対の他の置換ノード
への経路またはパスがあれば、前記ローカル端子グラフにおける考慮される対の
ノードの間にエッジがなければならない。
によってペイントされ、それによってエッジによって接続されないローカル端子
グラフのノードのみが同じカラーを持つようにされる。いわゆる色彩数を見つけ
るためにグラフをカラーリングまたは色づけする方法は従来技術から知られてお
り、例えば次の文献に記載されている。すなわち、クロード・バージ、「グラフ
理論および応用(Theorie Des Graphes Et Ses A
pplication)」、デュノド、パリ、1958年、並びにジェイエイ・
ボンディおよびユーエスアール・マーティ、「グラフ理論および応用(Grap
h Theory with Applications)」、エルスビア・ノ
ース・ホランド、ニューヨーク、1980年、第8章「頂点の色付け」、133
頁、およびエヌ・クリストファイズ、「グラフの色彩数のためのアルゴリズム(
An Algorithm for the chromatic numbe
r of a graph)」、コンピュータ・ジャーナル、Vol.14、3
8〜39頁を参照することができる。
られる合計のレーティングがあるしきい値、ここで考慮される例では4、より下
であるか否かが判定される。
ステップ516においては、同じカラーを有するローカル端子グラフにおけるノ
ードが識別される。これらのノードは元の端子の垂直制限グラフからの置換ノー
ドである。もしローカル端子グラフにおいて同じカラーを有するノードによって
表わされる端子が同じ列に位置しておれば、前記端子の垂直制限グラフにおける
これらの端子を表わす対応するノードが併合される。次に、制御はステップ50
4に戻り、変換された端子の垂直制限グラフによって再び前記主たるプロセスを
実行する。
ステップ518に移る。ステップ518においては、再び同じカラーを有するロ
ーカル垂直制限グラフのノードがグループ分けされる。同じカラーを有し、かつ
したがって同じグループにあり、そしてリストL2のエッジに接続されないロー
カル垂直制限グラフのそのようなノードが前記端子の垂直制限グラフに併合され
る。次に、制御はステップ504に戻る。
算の好ましい実施形態をより詳細に説明する。ステップ600において、端子の
垂直制限グラフの全てのエッジが既に処理されたか否かが判定される。もし処理
されておれば、前記端子の垂直制限グラフの合計のレーティングが、ステップ6
02において、前記端子の垂直制限グラフに含まれる全てのエッジのエッジレー
ティングの全てを合計することにより計算される。
ステップ600において処理されていないエッジから任意のエッジが選択される
。該選択されたエッジは現在のまたは現行のエッジ(current edge
)であり、制御はステップ604に移り、そこで前記現在のエッジのレーティン
グが始めに予め規定された値、この例では0、にセットされる。
参照)の結果である端子の垂直制限グラフにおけるノードから発出しているか否
かが判定される。もしこの条件が満たされれば、現在のエッジのレーティングが
予め規定された値、この場合は1、だけ増大される。これはステップ608にお
いて行なわれる。もしステップ606の条件が満たされなければ、ステップ60
8はバイパスされる。
の垂直制限グラフにおけるノードに向けられているか否かが判定される。もしそ
うであれば、ステップ612において、現在のエッジのレーティングが予め規定
された値、この場合は1、だけ増大される。もしそうでなければ、ステップ61
2はバイパスされる。
ける空きのノード(vacant node)に向けられているか否かが判定さ
れる。もしそうであれば、ステップ616において、現在のエッジのレーティン
グが予め定められた値、この場合は2、だけ増大される。もしそうでなければ、
ステップ616はバイパスされる。
るか否かが判定される。もしそうであれば、現在のネットのレーティングが予め
規定された値、この場合は2、だけ増大される。これはステップ620において
行なわれる。そうでない場合は、ステップ620はバイパスされる。次に、制御
はステップ600に戻る。この処理は端子の垂直制限グラフの全てのエッジが処
理されるまで反復される。
に説明する。ステップ700において、前記端子の垂直制限グラフの任意のエッ
ジが現在のエッジとして選択される。ステップ702において、端子の垂直制限
グラフの全てのエッジが既に処理されたか否かが判定される。もし処理されてい
なければ、制御はステップ704に進み、そこで現在のエッジのレーティングが
予め規定された値、この場合は4、に等しいか否かが判定される。もし等しけれ
ば、制御はステップ706に移り、そこで現在のエッジに対してドッグレギング
が可能であるか否かが判定される。もし可能であれば、制御はステップ708に
移り、そこで現在のエッジを使用してドッグレッグが作成される。ドッグレギン
グが行なわれた後に、図7に示されるフローはステップ710で停止し、かつ制
御は図3に戻り、図3のステップ302が次に実行される。
れないことが判定されれば、制御はステップ712に移り、そこで他の任意のエ
ッジが現在のエッジとして選択される。ステップ712から制御はステップ70
2に移る。
の4に等しいことが判定されれば、制御は直接ステップ708に移る。ステップ
702において、全てのエッジが既に処理されたことが判定されれば、ステップ
は直接ステップ710に移る。
ルーティング問題に適用する場合につき説明する。図8を参照すると、図3のス
テップ300を実行したことから生じる端子の垂直制限グラフ800が示されて
いる。
有する。前記端子の垂直制限グラフ800の個々のノードは図2に示されるチャ
ネル202から明らかなように対応する垂直制限を表わすエッジa,b,cおよ
びdによって相互接続される。ステップ302が最初に実行される場合、前記エ
ッジのレーティングが計算される。ここで考えている例では空きのノードも併合
されたノードもないから、全てのエッジの初期レーティングは0である。その結
果、合計のレーティングも0である。
を示している。図2のチャネルルーティング問題の垂直制限グラフにおいて、ノ
ード3はノード3に属する端子を表わす端子の垂直制限グラフのノードによって
置換される。ノード3に対する垂直制限グラフにおいては垂直制限が無いため、
その置換ノードは分離され、したがって図9からも明らかなように任意の対の置
換ノードの間にパスまたは経路が存在しない。
ープへとグループ分けすることができ、それは合計のレーティングが0に等しい
からである。制御はステップ514から516に移り、そこで同じカラーを有し
同じ列を占有しない現在のネットのノードが併合される。これは結果としてネッ
ト3に属する端子を表わす2つの対のノードが、図10に示されるように、併合
されることになる。
8から図10への端子の垂直制限グラフの最初の変換の後に、エッジcおよびd
のレーティングは0から2へと変化する。その結果、リストL2は2つのエッジ
cおよびdを含む。
11は端子の垂直制限グラフのネット1のノードの垂直制限グラフへの置換を示
している。図12はネット1に対するローカル垂直制限グラフを示している。2
つの置換ノードは1つのエッジによって接続され、それは図11におけるネット
1に所属する端子を表わす2つのノードの間にパスまたは経路があるからである
る。このため、前記ローカル垂直制限グラフの2つのノードは同じカラーによっ
てペイントされる必要がなくしたがって併合は生じ得ない。同じ状況はネット2
がその後現在のネットとして選択された場合にも同様に当てはまる。
から、ステップ312が実行される。ドッグレギングの結果が図13に示されて
いる。エッジcは2つのエッジc1およびc2によって置き換えられる。次にス
テップ504において合計のレーティングが再び更新される。その結果はエッジ
a,b,dに対するレーティングが同じにとどまっており、一方新しいエッジc
1およびc2に対するレーティングは1となる。リストL2は{d,c1,c2
}に等しくなる。図14は図13の端子の垂直制限グラフの対応するノードによ
るノードの置換の後の対応する垂直制限グラフを示している。ノード1および3
は前のドッグレギングのためそれぞれノード1′,1″および3′,3″へと分
割される。
において同じカラーによってペイントできる。合計のレーティングが4より下で
ないから、ステップ518が実行される。端子の垂直制限グラフにおいてノード
2が接続されるエッジaおよびbの双方はリストL2に属さないから、それらは
併合できる。結果は図15に示されている。
たレーティングは次の通りである。すなわち、d=2,a=1,b=1,c1=
1およびc2=1である。対応するリストはL2={d,a,b}である。合計
のレーティングは6である。図16は図15の変換された端子の垂直制限グラフ
に基づくチャネルへのトランクの結果としての割当てを示す(図3のステップ3
06を参照)。結果として得られる配線は任意の知られた適切な製造工程によっ
て電子装置200へと実施することができる。
。
式図である。
る。
ローチャートである。
である。
。
説明図である。
Claims (7)
- 【請求項1】 チャネルを有する電子デバイスを製造する方法であって、前
記チャネルはある境界および該境界上に位置する1組の端子を有し、前記チャネ
ルは数多くのネットを配線するためのトラックおよび列を有し、前記ネットの各
々は前記1組の端子の内の部分集合を有し、そのような端子は空きの端子である
前記部分集合の内の1つには含まれておらず、前記チャネルは前記ネットの配線
を有し、前記方法は、 a)以下の段階、 a1)端子の垂直制限グラフを発生する段階であって、該端子の垂直制限グラ
フはノードおよびエッジを備え、前記ノードの各々は前記端子の内の少なくとも
1つを表わし、前記エッジの各々は同じ列に位置する少なくとも一対の前記端子
の間の垂直制限を表わしかつ前記エッジの各々はそこに割り当てられたエッジレ
ーティングを有し、それによって前記1組の端子の内の全ての端子が前記端子の
垂直制限グラフにおいて表現され、かつ前記端子の垂直制限グラフはある合計の
レーティングを有する、前記端子の垂直制限グラフを発生する段階、そして a2)前記ノードの内の2つの併合を行なう段階であって、該併合を行なう段
階は、 a2.1)第1の予め規定された値によって前記エッジの各々に対して前記エ
ッジレーティングを初期化する段階、 a2.2)前記エッジの内の前記1つが併合された前記ノードの内の1つに接
続される場合に第2の予め規定された値によって前記エッジの内の1つの前記エ
ッジレーティングを変更する段階、 a2.3)前記エッジの内の前記1つが空きの端子を表わす前記ノードの内の
1つに接続する場合に第3の予め規定された値によって前記エッジの内の1つの
前記エッジレーティングを変更する段階、 a2.4)前記エッジレーティングを統合することにより前記合計のレーティ
ングを決定する段階、 a2.5)前記合計のレーティングに基づき併合されるべき前記ノードの内の
2つを選択する段階、 を具備する前記併合を行なう段階、 a3)前記結果として得られる端子の垂直制限グラフに従って前記チャネルに
トランクを割り当てる段階、 を具備する前記配線を設計する段階、そして b)前記配線を製造する段階、 を具備することを特徴とする電子デバイスを製造する方法。 - 【請求項2】 前記垂直制限グラフを発生する段階は、 a1.1)前記端子の各々に対する前記端子の垂直制限グラフにおける前記ノ
ードの1つを作成する段階であって、空きの端子を表わす前記ノードのそのよう
な1つは空きのノードとなる前記段階、 a1.2)前記列の内の同じ1つに位置する前記端子の内のそのようなものを
表わす前記ノードの各対の間の端子の垂直制限グラフにおいて前記エッジの1つ
を作成する段階であって、前記エッジの内の前記1つは上部境界上に位置する前
記端子を表わす前記一対のノードの内の1つから発出する前記段階、 を具備することを特徴とする請求項1に記載の電子デバイスを製造する方法。 - 【請求項3】 前記併合を行なう段階はさらに、 前記ネットの内の各々の1つに対して、 a2.6)前記ネットの内の前記1つが前記列の内の同じ1つを占有する前記
端子の内のちょうど2つを有する場合に、前記端子の内の前記ちょうど2つを表
わす前記ノードの内の2つを併合する段階、 a2.7)前記エッジレーティングに従ってソートされた、前記エッジの第1
のリストを発生する段階、 a2.8)前記エッジの第2のリストを発生する段階であって、前記第2のリ
ストに含まれるエッジの前記エッジレーティングの合計は第1の予め規定された
しきい値より高くされる前記段階、 a2.9)垂直制限グラフを発生し、前記ネットの内の前記1つを表わす前記
垂直制限グラフの内の1つのノードを選択し、前記選択された1つのノードを前
記選択された1つのノードと同じネットを表わす前記端子の垂直制限グラフの前
記ノードのそのようなものによって置き換える段階、 a2.10)前記端子の垂直制限グラフの前記置換ノードおよび前記垂直制限
グラフにおいてそれらの間に経路を有するそのような置換ノードの間のエッジを
備えたローカル垂直制限グラフを発生する段階、 a2.11)前記ローカル垂直制限グラフを最小数のカラーで色づけし、同じ
カラーを有する前記ローカル垂直制限グラフの内の前記ノードを別個のグループ
にグループ分けする段階、 a2.12)前記合計のレーティングが第2の予め規定された第2のしきい値
より低くない場合に、前記グループの1つに属する前記ノードが前記第2のリス
トの前記エッジに接続された前記端子の垂直制限グラフのノードに対応しなけれ
ば前記グループの1つに属する前記ノードを併合し、そうでない場合は、前記グ
ループの1つに属する前記ノードが前記同じ列に位置しない端子を表わす前記端
子の垂直制限グラフのノードに対応しない場合に前記グループの1つに属する前
記ノードを併合する段階、 を具備することを特徴とする請求項1に記載の電子デバイスを製造する方法。 - 【請求項4】 さらに、 a4)接続されないネットがある間に、 a4.1)前記接続されないネットから任意のネットを選択する段階、 a4.2)前記合計のレーティングが前記第2の予め定められたしきい値より
高い場合に、 前記第1のリストの前記エッジの内の各々の1つに対して、前記リストの始め
において開始する段階、 前記エッジの内の前記1つの前記エッジレーティングが前記第2のしきい値に
等しい場合に、前記エッジの内の前記1つによって表わされる列を使用して前記
選択されたネットに対するドッグレッグを作成する段階、 そうでない場合に、もし前記エッジの内の前記1つによって表わされる列を使
用してドッグレッグが可能であれば、前記エッジの内の前記1つによって表わさ
れる前記列を使用してドッグレッグを作成する段階、 前記併合する段階a2)を続ける段階、 を具備することを特徴とする請求項1に記載の電子デバイスを製造する方法。 - 【請求項5】 チャネルを有する電子デバイスを設計する方法であって、前
記チャネルはある境界および該境界上に位置する1組の端子を有し、前記チャネ
ルは数多くのネットを配線するためのトラックおよび列を有し、前記ネットの各
々は前記1組の端子の内の部分集合を有し、そのような端子は空きの端子である
前記部分集合の内の1つには含まれず、前記方法は、 a)以下の段階、 a1)端子の垂直制限グラフを発生する段階であって、該端子の垂直制限グラ
フはノードおよびエッジを備え、前記ノードの各々は前記端子の内の少なくとも
1つを表わし、前記エッジの各々は同じ列に位置する少なくとも一対の前記端子
の間の垂直制限を表わしかつ前記エッジの各々はそこに割り当てられたエッジレ
ーティングを有し、それによって前記1組の端子の内の全ての端子が前記端子の
垂直制限グラフにおいて表現され、かつ前記端子の垂直制限グラフはある合計の
レーティングを有する、前記端子の垂直制限グラフを発生する段階、そして a2)前記ノードの内の2つの併合を行なう段階であって、該併合を行なう段
階は、 a2.1)第1の予め規定された値によって前記エッジの各々に対して前記エ
ッジレーティングを初期化する段階、 a2.2)前記エッジの内の前記1つが併合された前記ノードの内の1つに接
続される場合に第2の予め規定された値によって前記エッジの内の1つの前記エ
ッジレーティングを変更する段階、 a2.3)前記エッジの内の前記1つが空きの端子を表わす前記ノードの内の
1つに接続する場合に第3の予め規定された値によって前記エッジの内の1つの
前記エッジレーティングを変更する段階、 a2.4)前記エッジレーティングを統合することにより前記合計のレーティ
ングを決定する段階、 a2.5)前記合計のレーティングに基づき併合されるべき前記ノードの内の
2つを選択する段階、 を具備する前記併合を行なう段階、 a3)前記結果として得られる端子の垂直制限グラフに従って前記チャネルに
トランクを割り当てる段階、 を具備する前記配線を設計する段階、 を具備することを特徴とする電子デバイスを設計する方法。 - 【請求項6】 チャネルを有する電子装置であって、前記チャネルはある境
界および該境界上に位置する1組の端子を有し、前記チャネルは数多くのネット
を配線するためのトラックおよび列を有し、前記ネットの各々は前記1組の端子
の内の部分集合を有し、そのような端子は空きの端子である前記部分集合の内の
1つには含まれておらず、前記チャネルは前記ネットの配線を有し、前記電子装
置は、 a)以下の段階、 a1)端子の垂直制限グラフを発生する段階であって、該端子の垂直制限グラ
フはノードおよびエッジを備え、前記ノードの各々は前記端子の内の少なくとも
1つを表わし、前記エッジの各々は同じ列に位置する少なくとも一対の前記端子
の間の垂直制限を表わしかつ前記エッジの各々はそこに割り当てられたエッジレ
ーティングを有し、それによって前記1組の端子の内の全ての端子が前記端子の
垂直制限グラフにおいて表現され、かつ前記端子の垂直制限グラフはある合計の
レーティングを有する、前記端子の垂直制限グラフを発生する段階、そして a2)前記ノードの内の2つの併合を行なう段階であって、該併合を行なう段
階は、 a2.1)第1の予め規定された値によって前記エッジの各々に対して前記エ
ッジレーティングを初期化する段階、 a2.2)前記エッジの内の前記1つが併合された前記ノードの内の1つに接
続される場合に第2の予め規定された値によって前記エッジの内の1つの前記エ
ッジレーティングを変更する段階、 a2.3)前記エッジの内の前記1つが空きの端子を表わす前記ノードの内の
1つに接続する場合に第3の予め規定された値によって前記エッジの内の1つの
前記エッジレーティングを変更する段階、 a2.4)前記エッジレーティングを統合することにより前記合計のレーティ
ングを決定する段階、 a2.5)前記合計のレーティングに基づき併合されるべき前記ノードの内の
2つを選択する段階、 を具備する前記併合を行なう段階、 a3)前記結果として得られる端子の垂直制限グラフに従って前記チャネルに
トランクを割り当てる段階、 を具備する前記配線を設計する段階、そして b)前記配線を製造する段階、 を具備する方法によって製造されることを特徴とする電子装置。 - 【請求項7】 チャネルを有する電子装置を設計するためにそこに格納され
たコンピュータプログラムを有するコンピュータが読取り可能な媒体であって、
前記チャネルはある境界および該境界上に位置する1組の端子を有し、前記チャ
ネルは数多くのネットを配線するためのトラックおよび列を有し、前記ネットの
各々は前記1組の端子の内の部分集合を有し、そのような端子は空きの端子であ
る前記部分集合の内の1つには含まれておらず、前記チャネルは前記ネットの配
線を有し、前記コンピュータプログラムは、 a)以下の段階、 a1)端子の垂直制限グラフを発生する段階であって、該端子の垂直制限グラ
フはノードおよびエッジを備え、前記ノードの各々は前記端子の内の少なくとも
1つを表わし、前記エッジの各々は同じ列に位置する少なくとも一対の前記端子
の間の垂直制限を表わしかつ前記エッジの各々はそこに割り当てられたエッジレ
ーティングを有し、それによって前記1組の端子の内の全ての端子が前記端子の
垂直制限グラフにおいて表現され、かつ前記端子の垂直制限グラフはある合計の
レーティングを有する、前記端子の垂直制限グラフを発生する段階、そして a2)前記ノードの内の2つの併合を行なう段階であって、該併合を行なう段
階は、 a2.1)第1の予め規定された値によって前記エッジの各々に対して前記エ
ッジレーティングを初期化する段階、 a2.2)前記エッジの内の前記1つが併合された前記ノードの内の1つに接
続される場合に第2の予め規定された値によって前記エッジの内の1つの前記エ
ッジレーティングを変更する段階、 a2.3)前記エッジの内の前記1つが空きの端子を表わす前記ノードの内の
1つに接続する場合に第3の予め規定された値によって前記エッジの内の1つの
前記エッジレーティングを変更する段階、 a2.4)前記エッジレーティングを統合することにより前記合計のレーティ
ングを決定する段階、 a2.5)前記合計のレーティングに基づき併合されるべき前記ノードの内の
2つを選択する段階、 を具備する前記併合を行なう段階、 a3)前記結果として得られる端子の垂直制限グラフに従って前記チャネルに
トランクを割り当てる段階、 を具備する前記配線を設計する段階、 を実行するよう構成されていることを特徴とするコンピュータが読取り可能な
媒体。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/RU1998/000042 WO1999041685A1 (en) | 1998-02-17 | 1998-02-17 | A method for manufacturing and designing an electronic device and electronic apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002503850A true JP2002503850A (ja) | 2002-02-05 |
JP3567134B2 JP3567134B2 (ja) | 2004-09-22 |
Family
ID=20130196
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000531798A Expired - Fee Related JP3567134B2 (ja) | 1998-02-17 | 1998-02-17 | 電子デバイスおよび電子装置を製造および設計する方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6477693B1 (ja) |
JP (1) | JP3567134B2 (ja) |
KR (1) | KR100576987B1 (ja) |
WO (1) | WO1999041685A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116011389A (zh) * | 2023-01-28 | 2023-04-25 | 上海合见工业软件集团有限公司 | 基于空间约束的电路原理图路由规划系统 |
CN116050339A (zh) * | 2023-01-28 | 2023-05-02 | 上海合见工业软件集团有限公司 | 电路原理图路由规划系统 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6820068B1 (en) * | 2000-09-22 | 2004-11-16 | Furtek | System and method for verifying logical, arithmetic and timing dependencies of system behaviors using constraint calculus analysis |
US7437691B2 (en) * | 2006-04-11 | 2008-10-14 | International Business Machines Corporation | VLSI artwork legalization for hierarchical designs with multiple grid constraints |
US7681169B2 (en) | 2007-08-29 | 2010-03-16 | International Business Machines Corporation | Process for managing complex pre-wired net segments in a VLSI design |
US9564394B1 (en) * | 2014-11-18 | 2017-02-07 | Altera Corporation | Methods and apparatus for reducing spatial overlap between routing wires |
KR102621077B1 (ko) * | 2020-12-03 | 2024-01-03 | 주식회사 케이티 | 자동 색상 알고리즘에 기초한 경로 관리 방법 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5841664A (en) | 1996-03-12 | 1998-11-24 | Avant| Corporation | Method for optimizing track assignment in a grid-based channel router |
US5793643A (en) * | 1996-04-30 | 1998-08-11 | Avant| Corporation | Method for handling variable width wires in a grid-based channel router |
-
1998
- 1998-02-17 JP JP2000531798A patent/JP3567134B2/ja not_active Expired - Fee Related
- 1998-02-17 KR KR1020007009031A patent/KR100576987B1/ko not_active IP Right Cessation
- 1998-02-17 US US09/508,006 patent/US6477693B1/en not_active Expired - Fee Related
- 1998-02-17 WO PCT/RU1998/000042 patent/WO1999041685A1/en active IP Right Grant
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116011389A (zh) * | 2023-01-28 | 2023-04-25 | 上海合见工业软件集团有限公司 | 基于空间约束的电路原理图路由规划系统 |
CN116050339A (zh) * | 2023-01-28 | 2023-05-02 | 上海合见工业软件集团有限公司 | 电路原理图路由规划系统 |
Also Published As
Publication number | Publication date |
---|---|
WO1999041685A1 (en) | 1999-08-19 |
JP3567134B2 (ja) | 2004-09-22 |
KR100576987B1 (ko) | 2006-05-10 |
KR20010024944A (ko) | 2001-03-26 |
US6477693B1 (en) | 2002-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5930499A (en) | Method for mixed placement of structured and non-structured circuit elements | |
US4613941A (en) | Routing method in computer aided customization of a two level automated universal array | |
US6505331B1 (en) | Method for routing of nets in an electronic device | |
US7676780B2 (en) | Techniques for super fast buffer insertion | |
Chiang et al. | Global routing based on Steiner min-max trees | |
US5359538A (en) | Method for regular placement of data path components in VLSI circuits | |
US9201999B1 (en) | Integrated circuit floorplan having feedthrough buffers | |
JP3567134B2 (ja) | 電子デバイスおよび電子装置を製造および設計する方法 | |
US7376921B2 (en) | Methods for tiling integrated circuit designs | |
JP2001338006A (ja) | 論理自動設計支援方法および装置 | |
Chen et al. | A novel framework for multilevel full-chip gridless routing | |
Wu et al. | Antenna avoidance in layer assignment | |
Guruswamy et al. | A general multi-layer area router | |
Shirota et al. | A new rip-up and reroute algorithm for very large scale gate arrays | |
Venkataraman et al. | Determination of yield bounds prior to routing | |
Guruswamy et al. | Echelon: A multilayer detailed area router | |
US6412103B1 (en) | Routing method removing cycles in vertical constraint graph | |
JPH0916640A (ja) | 回路シミュレータ及びブロック緩和反復シミュレーション方法 | |
Tien et al. | GALA-an automatic layout system for high density CMOS gate arrays | |
Dutt et al. | A search-based bump-and-refit approach to incremental routing for ECO applications in FPGAs | |
JP2002342401A (ja) | 半導体集積回路の自動配線装置とその配線方法及びコンピュータプログラム | |
JPH04304656A (ja) | 自動マクロ最適順序化方法 | |
Yan et al. | Multilevel timing-constrained full-chip routing in hierarchical quad-grid model | |
Gill et al. | Simulated annealing based delay centric VLSI circuit partitioning | |
Yan | Designing a channel router by hybrid methodology of top routing and bottom routing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040127 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040412 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040525 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040614 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090618 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090618 Year of fee payment: 5 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: R3D03 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100618 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100618 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110618 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120618 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130618 Year of fee payment: 9 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |