(57)【特許請求の範囲】
【請求項１】
仮配線領域内での第１および第２の端子群間の仮配線処理を実行するコンピュータを、
前記仮配線領域内で前記仮配線処理によって発生した未配線ネットの検出処理を実行する検出手段、
前記検出手段によって前記未配線ネットが検出された場合、前記未配線ネットの数に応じて前記仮配線領域を拡大させる更新処理を実行する更新手段、
前記更新手段によって更新されたときの仮配線領域内で前記仮配線処理および当該仮配線処理後における前記検出処理を実行させる制御手段、
前記検出手段によって前記未配線ネットが検出されなかったときの仮配線領域を配線領域に決定する決定手段、
として機能させることを特徴とする設計支援プログラム。
【請求項２】
前記制御手段は、
すでに前記決定手段によって決定された他の配線領域を回避するように前記仮配線処理を実行させることを特徴とする請求項１に記載の設計支援プログラム。
【請求項３】
前記コンピュータを、
前記仮配線処理を実行している階層において、前記更新処理を実行した場合に、未配線ネット数が減少するか否かを判断する判断手段、
前記判断手段によって、前記未配線ネット数が減少しないと判断された場合、前記仮配線領域が存在する階層とは異なる他の階層に、前記仮配線領域と前記第１および第２の端子群を設定する階層設定手段として機能させ、
前記制御手段は、
前記階層設定手段による設定後における前記他の階層での前記仮配線領域内で前記仮配線処理および当該仮配線処理後における前記検出処理を実行させることを特徴とする請求項１または２に記載の設計支援プログラム。
【請求項４】
前記コンピュータを、
対象回路内の素子の接続情報を取得する取得手段、
前記取得手段によって取得された接続情報の中から配線すべき素子の組み合わせを抽出する抽出手段、
前記抽出手段によって抽出された組み合わせごとに、一方の素子の端子群を前記第１の端子群、他方の素子の端子群を前記第２の端子群に設定する端子群設定手段として機能させ、
前記検出手段は、
前記仮配線領域内で前記端子群設定手段によって設定された前記第１および第２の端子群間の前記仮配線処理によって発生した未配線ネットの検出処理を実行することを特徴とする請求項１〜３のいずれか一つに記載の設計支援プログラム。
【請求項５】
前記抽出手段は、
前記取得手段によって取得された接続情報の中から異なる階層間に接続される素子の組み合わせを抽出し、
前記端子群設定手段は、
前記抽出手段によって抽出された異なる階層の切り替え箇所にビアを設定し、当該ビア端子群と前記第１の端子群、その他の端子群を前記第２の端子群に設定することを特徴とする請求項４に記載の設計支援プログラム。
【請求項６】
仮配線領域内での第１および第２の端子群間の仮配線処理を実行する設計支援装置であって、
前記仮配線領域内で前記仮配線処理によって発生した未配線ネットの検出処理を実行する検出手段と、
前記検出手段によって前記未配線ネットが検出された場合、前記未配線ネットの数に応じて前記仮配線領域を拡大させる更新処理を実行する更新手段と、
前記更新手段によって更新されたときの仮配線領域内で前記仮配線処理および当該仮配線処理後における前記検出処理を実行させる制御手段と、
前記検出手段によって前記未配線ネットが検出されなかったときの仮配線領域を配線領域に決定する決定手段と、
を備えることを特徴とする設計支援装置。
【請求項７】
検出手段と更新手段と制御手段と決定手段とを備え、仮配線領域内での第１および第２の端子群間の仮配線処理を実行するコンピュータが、
前記検出手段により、前記仮配線領域内で前記仮配線処理によって発生した未配線ネットの検出処理を実行する検出工程と、
前記更新手段により、前記検出工程によって前記未配線ネットが検出された場合、前記未配線ネットの数に応じて前記仮配線領域を拡大させる更新処理を実行する更新工程と、
前記制御手段により、前記更新工程によって更新されたときの仮配線領域内で前記仮配線処理および当該仮配線処理後における前記検出処理を実行させる実行工程と、
前記決定手段により、前記検出工程によって前記未配線ネットが検出されなかったときの仮配線領域を配線領域に決定する決定工程と、
を実行することを特徴とする設計支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示技術は、各種基板への自動配線を支援する設計支援プログラム、設計支援装置および設計支援方法に関する。
【背景技術】
【０００２】
従来より、各種基板上へ効率的な配線を目的とした様々な配線技術が提供されている。また、近年では、高速信号用プリント基板の需要増から、複数の信号線（ネット）からなるバスを形成して束線として配線する配線設計を支援する技術の開発が求められている。具体的には、プリント基板用の設計ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）において、バスを指定して自動配線を可能にする自動配線技術が数多く提供されている。
【０００３】
さらに、設計者には、配線作業におけるコスト削減が求められる。コスト削減への対策としては、プリント基板全体を高密度に配線し、配線層数が少なくて済むかについての検討が有効である。具体的には、各バスに含まれるネット数や線幅、間隙値に基づいて、障害物や他のバスの経路を邪魔しないかなどを考慮する。そして、配線に最低限必要な領域（配線領域）をどの配線層でどこに確保するかという適切な配線領域の決定処理が重要となる。
【０００４】
たとえば、プリント基板上に配線するバスに対して、設計者あるいはシステムがあらかじめ設定した経路および各ネット情報に着目して配線領域を決定する技術が提供されている。この技術では、さらに、決定された対象バスの配線領域と隣接バスとの配線領域の重なりを決定した配線領域が適切であるか否かの判断材料とする機能も備えられている（たとえば、下記特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−１１６８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来技術の場合、バスが密集するようなプリント基板では、配線を実行するバスの順番次第でプリント基板の混雑度が異なり、決定された配線領域が不適切なものとなる可能性がある。したがって、上述の技術によって決定された配線領域を利用して実際に対象バスの配線を実行した場合に、未配線となる信号線（未配線ネット）が発生してしまう可能性がある。
【０００７】
一般的に、プリント基板上の混雑度は、配線が指示されたときのプリント基板に配置された配線や素子の状況に応じて異なる。したがって、バスに所属するすべてのネットに未配線ネットが生じることのないように最低限必要な配線領域を決定するのは困難であった。また、配線領域が決定した後に、実際の配線実行時に未配線ネットが生じると配線領域のレイアウト設計での手戻りが発生してしまい、設計時間や設計負担が増し、結果としてコスト増を招くという問題があった。
【０００８】
本開示技術は、上述した従来技術による問題点を解消するため、自動的に未配線ネットのない高効率的な配線処理を実現する設計支援プログラム、設計支援装置および設計支援方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するため、本開示技術は、仮配線領域内での第１および第２の端子群間の仮配線処理を実行するコンピュータにおいて、前記仮配線領域内で前記仮配線処理によって発生した未配線ネットの検出処理を実行する処理と、前記未配線ネットが検出された場合、前記未配線ネットの数に応じて前記仮配線領域を拡大させる更新処理を実行する処理と、更新されたときの仮配線領域内で前記仮配線処理および当該仮配線処理後における前記検出処理を実行させる処理と、前記未配線ネットが検出されなかったときの仮配線領域を配線領域に決定する処理と、を含むことを要件とする。
【発明の効果】
【００１０】
本設計支援プログラム、設計支援装置および設計支援方法によれば、自動的に未配線ネットのない高効率的な配線処理を実現することができるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】本実施の形態にかかる設計支援処理の一例を示す説明図である。
【図２】概略経路の一例を示す説明図である。
【図３】仮配線領域の設定例を示す説明図である。
【図４】設計支援装置のハードウェア構成を示すブロック図である。
【図５】設計支援装置の機能的構成を示すブロック図である。
【図６】設計支援装置による設計支援処理の手順を示すフローチャートである。
【図７】配線経路作成支援装置の機能的構成を示すブロック図である。
【図８】ＢＧＡに設けられたボトルネックのモデル化の一例を示す説明図である。
【図９】概略経路作成処理の手順を示すフローチャートである。
【図１０】有向グラフの作成例を示す説明図である。
【図１１】経路の検索例を示す説明図である。
【図１２】概略経路の確定例を示す説明図である。
【図１３】実施例１における配線領域決定処理の手順を示すフローチャートである。
【図１４】実施例１における仮配線領域の設定例を示す説明図である。
【図１５】実施例１における配線エンジン実行例を示す説明図である。
【図１６】実施例１における未配線ネットの発生例を示す説明図である。
【図１７】実施例１における仮配線領域の拡大例を示す説明図である。
【図１８】実施例１における仮配線領域拡大後の配線エンジン実行例を示す説明図である。
【図１９】実施例１における仮配線領域拡大後の未配線ネットの発生例を示す説明図である。
【図２０】実施例１における仮配線領域の２度目の拡大例を示す説明図である。
【図２１】実施例１における２度目の仮配線領域拡大後の配線エンジン実行例を示す説明図である。
【図２２】実施例１における未配線ネットの解消例を示す説明図である。
【図２３】実施例１における配線領域の決定例を示す説明図である。
【図２４】実施例２における配線領域決定処理の手順を示すフローチャートである。
【図２５】実施例２における各バスの仮配線領域の設定例を示す説明図である。
【図２６】実施例２における他のバスの配線領域の決定例を示す説明図である。
【図２７】実施例２における配線エンジン実行例を示す説明図である。
【図２８】実施例２における未配線ネットの発生例を示す説明図である。
【図２９】実施例２における仮配線領域の拡大例を示す説明図である。
【図３０】実施例２における仮配線領域拡大後の配線エンジン実行例を示す説明図である。
【図３１】実施例２における仮配線領域拡大後の未配線ネットの発生例を示す説明図である。
【図３２】実施例２における仮配線領域の２度目の拡大例を示す説明図である。
【図３３】実施例２における２度目の仮配線領域拡大後の配線エンジン実行例を示す説明図である。
【図３４】実施例２における未配線ネットの解消例を示す説明図である。
【図３５】実施例２における配線領域の決定例を示す説明図である。
【図３６】実施例３における配線領域決定処理の手順を示すフローチャートである。
【図３７】実施例３における各バスの仮配線領域の設定例を示す説明図である。
【図３８】実施例３における他のバスの配線領域の決定例を示す説明図である。
【図３９】実施例３における第１層の配線収容性の検証例を示す説明図である。
【図４０】実施例３における第１層の配線領域の設定例を示す説明図である。
【図４１】実施例３における第２層の配線領域の設定例を示す説明図である。
【図４２】実施例４における配線領域決定処理の手順を示すフローチャートである。
【図４３】実施例４における仮配線領域の設定例を示す説明図である。
【図４４】実施例４における接続区間ごとの配線収容性の検証例を示す説明図である。
【図４５】実施例４におけるダンピング抵抗〜レシーバ間の配線収容性の検証例を示す説明図である。
【図４６】実施例４におけるダンピング抵抗〜レシーバ間の配線領域の決定例を示す説明図である。
【図４７】実施例４における残りの各素子抗間の配線収容性の検証例を示す説明図である。
【図４８】実施例４における残りの各素子間の配線領域の決定例を示す説明図である。
【図４９】実施例５における配線領域決定処理の手順を示すフローチャートである。
【図５０】実施例５における仮配線領域と切り替え点の設定例を示す説明図である。
【図５１】実施例５における各層の仮配線領域の設定例を示す説明図である。
【図５２】実施例５における各層の配線収容性の検証例を示す説明図である。
【図５３】実施例５における各層の仮配線領域の拡大例を示す説明図である。
【図５４】実施例５における各層の配線領域の決定例を示す説明図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照して、この発明にかかる設計支援プログラム、設計支援装置および設計支援方法の好適な実施の形態を詳細に説明する。
【００１３】
（実施の形態）
図１は、本実施の形態にかかる設計支援処理の一例を示す説明図である。図１のように、本実施の形態にかかる設計支援処理では、設計支援装置１００によって、プリント基板１１０の設計情報１２０から対象バスについての配線領域を決定する。設計支援装置１００によって決定された配線領域は、未配線ネットが発生しないように検証されているため、レイアウト設計への手戻りのない効率的な配線設計を支援することができる。
【００１４】
設計支援装置１００では、設計情報１２０によって設定された概略経路と、概略経路に基づいて生成された仮配線領域を利用して、適切な配線領域が決定される。したがって、まず、概略経路と仮配線領域について図２および図３を利用して説明する。
【００１５】
図２は、概略経路の一例を示す説明図である。設計情報１２０には、図２のように、プリント基板１１０上の端子群２０１，２０２にバスの配線を施したい場合の概略経路２０３が設定されている。概略経路とは、バスに所属する複数の信号線（ネット）をまとまった束線として配線するために、設計者や上位システムによってあらかじめ指定された経路である。設計支援装置１００では、概略経路２０３付近に配線領域を決定する。
【００１６】
図３は、仮配線領域の設定例を示す説明図である。配線領域を決定するには、事前に概略経路２０３に基づいて、仮の配線領域（以下、「仮配線領域」とよぶ）３００が必要になる。仮配線領域３００は、設計情報１２０から対象となるバスに所属するネット数、各ネットの線幅、線同士の間隔、端子位置などの情報を参照して設定される（なお、仮配線領域の設定手法については、公知の技術であるため詳細な説明は省略する）。仮配線領域３００の設定の際、プリント基板１１０上の障害物については考慮されない。
【００１７】
図１の説明に戻り、設計支援装置１００は、上述のように設定された仮配線領域３００に対して配線検証を行う（ステップＳ１０１）。配線検証とは、仮配線領域３００に対象となるバスの各ネットを配線した場合に、どのような配線がなされるかを検証する処理である。本実施の形態では、特に未配線ネットの有無を特定するため、配線検証として、配線収容性の検証が実行される（詳しくは後述する）。
【００１８】
ステップＳ１０１によって実行された配線検証の結果、未配線ネットがあれば、設計支援装置１００は、仮配線領域３００を拡大して、あらたな仮配線領域３１０を設定する（ステップＳ１０２）。その後、設計支援装置１００は、未配線ネットが解消した時点での仮配線領域（たとえば、仮配線領域３００，３１０）を配線領域に決定して（ステップＳ１０３）、一連の処理を終了する。すなわち、設計支援装置１００は、設計情報１２０を参照して、最初に設定した仮配線領域３００に未配線ネットがないと判断すれば、仮配線領域３００を配線領域と決定し、仮配線領域３１０の拡大処理後に未配線ネットがないと判断すれば、仮配線領域３１０を配線領域と決定する。
【００１９】
以上説明したように、本実施の形態にかかる設計支援装置１００は、設計情報１２０から設定された仮配線領域を検証し、検証結果に応じて未配線ネットが発生しないような配線領域を自動的に決定することができる。上述のように、本実施の形態にかかる設計支援装置１００は、対象とするバスについての適切な配線領域を決定する機能によってプリント基板１１０へのレイアウト設計を支援する。したがって、図１に例示したように、配線領域を決定する装置として単独の構成をとってもよいし、レイアウト設計を行う設計装置の機能の一部として搭載されてもよい。単独の構成の場合には、配線設計が決定された後、他のレイアウト設計装置によってプリント基板１１０のレイアウト設計を実行すればよい。
【００２０】
つぎに、図１にて説明した設計支援処理を実現する設計支援装置１００の具体的な構成例について説明する。
【００２１】
（設計支援装置のハードウェア構成）
図４は、設計支援装置のハードウェア構成を示すブロック図である。図４において、設計支援装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）４０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）４０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）４０３と、磁気ディスクドライブ４０４と、磁気ディスク４０５と、光ディスクドライブ４０６と、光ディスク４０７と、ディスプレイ４０８と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）４０９と、キーボード４１０と、マウス４１１と、スキャナ４１２と、プリンタ４１３と、を備えている。また、各構成部はバス４００によってそれぞれ接続されている。
【００２２】
ここで、ＣＰＵ４０１は、設計支援装置１００の全体の制御を司る。ＲＯＭ４０２は、ブートプログラムや、設計支援プログラムなどの各種プログラムを記憶している。ＲＡＭ４０３は、ＣＰＵ４０１のワークエリアとして使用される。磁気ディスクドライブ４０４は、ＣＰＵ４０１の制御にしたがって磁気ディスク４０５に対するデータのリード／ライトを制御する。磁気ディスク４０５は、磁気ディスクドライブ４０４の制御で書き込まれたデータを記憶する。
【００２３】
光ディスクドライブ４０６は、ＣＰＵ４０１の制御にしたがって光ディスク４０７に対するデータのリード／ライトを制御する。光ディスク４０７は、光ディスクドライブ４０６の制御で書き込まれたデータを記憶したり、光ディスク４０７に記憶されたデータをコンピュータに読み取らせたりする。
【００２４】
ディスプレイ４０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。ディスプレイ４０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００２５】
インターフェース（以下、「Ｉ／Ｆ」と略する。）４０９は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク４１４に接続され、ネットワーク４１４を介して他の装置に接続される。そして、Ｉ／Ｆ４０９は、ネットワーク４１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ４０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００２６】
キーボード４１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス４１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００２７】
スキャナ４１２は、画像を光学的に読み取り、設計支援装置１００内に画像データを取り込む。なお、スキャナ４１２は、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を持たせてもよい。また、プリンタ♯１３は、画像データや文書データを印刷する。プリンタ４１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００２８】
（設計支援装置の機能的構成）
図５は、設計支援装置の機能的構成を示すブロック図である。設計支援装置１００は、検出部５０１と、更新部５０２と、制御部５０３と、決定部５０４と、判断部５０５と、階層設定部５０６と、取得部５０７と、抽出部５０８と、端子群設定部５０９と、判定部５１０と、を含む構成である。これら制御部となる機能（検出部５０１〜判定部５１０）は、具体的には、たとえば、図４に示したＲＯＭ４０２、ＲＡＭ４０３、磁気ディスク４０５、光ディスク４０７などの記憶装置に記憶された設計支援プログラムをＣＰＵ４０１に実行させることにより、または、Ｉ／Ｆ４０９により、その機能を実現する。
【００２９】
設計支援装置１００は、設計情報１２０から設定された仮配線領域内の指定された端子群間（ここでは、一例として第１の端子群と、第２の端子群との間）について仮配線処理（各種配線エンジンを搭載）を実行する機能を備えている。
【００３０】
検出部５０１は、仮配線領域内で仮配線処理によって発生した未配線ネットの検出処理を実行する機能を有する。具体的には、検出部５０１によって、対象となるバスに所属する信号線（ネット）のうち、第１の端子群から第２の端子群への結線が完了しない信号線の本数が検出される。なお、未配線ネットの検出結果は、ＲＡＭ４０３、磁気ディスク４０５、光ディスク４０７などの記憶領域に記憶される。
【００３１】
更新部５０２は、検出された未配線ネット数に応じて仮配線領域を拡大させる更新処理を実行する機能を有する。具体的には、更新部５０２は、検出部５０１によって未配線ネットが検出された場合、未配線ネットの数に応じて仮配線領域を拡大させる。したがって、未配線ネットが検出されなかった場合、更新部５０２にて上述したような更新処理は実行されない。更新処理によって拡大された仮配線領域は、ＲＡＭ４０３、磁気ディスク４０５、光ディスク４０７などの記憶領域に記憶される。
【００３２】
制御部５０３は、更新処理の実行状況に応じて検出部５０１による検出処理の実行を制御する機能を有する。具体的には、制御部５０３は、更新部５０２によって更新処理が実行された場合に、検出部５０１を制御し、拡大後の仮配線領域内について仮配線処理を行うと共に、仮配線処理によって発生した未配線ネットの検出処理を実行させる。再度実行された検出処理による未配線ネットの検出結果も、ＲＡＭ４０３、磁気ディスク４０５、光ディスク４０７などの記憶領域に記憶される。
【００３３】
決定部５０４は、未配線ネットの検出結果に応じて、仮配線領域を配線領域に決定する機能を有する。具体的には、決定部５０４は、検出部５０１によって未配線ネットが検出されなかったときの仮配線領域を配線領域に決定する。したがって、更新処理によって拡大された仮配線領域に対する仮配線処理の結果、未配線ネットが検出されなかった場合には、更新後の仮配線領域が配線領域に決定される。なお、決定された配線領域の設計情報である配線領域情報１３０は、任意の記録媒体に所定の形式のデータとして出力される他に、ＲＡＭ４０３、磁気ディスク４０５、光ディスク４０７などの記憶領域に記憶される。
【００３４】
また、設計支援装置１００において、複数のバスを対象として配線領域を決定するような処理が要求されることがある。複数のバスを扱う場合、制御部５０３は、すでに決定部５０４によって他のバスについての配線領域が決定されていれば、決定済みの配線領域を回避するように仮配線処理を実行させることによって、複数のバスについても、適切な配線領域を決定することができる。
【００３５】
上述のように、複数のバスについての配線領域を決定する場合、プリント基板１１０上のレイアウトによっては、単層では未配線ネットの発生が解決できない場合ある。すなわち複数のバスについても配線が要求され、さらに、各種素子などが障害物として配線を阻害するような配置の場合、プリント基板上の空き領域が不足して、すべての信号線を配線できないことがある。
【００３６】
そこで、プリント基板１１０が複数の階層によって構成されている場合には、他の階層を利用した配線領域に決定することによって未配線ネットを解消する。設計支援装置１００の判断部５０５〜判定部５１０は、プリント基板１１０が複数の階層をもつ構造（多層プリント基板）であり、かつ、他の階層への配線が可能な場合に、他の階層を利用した配線領域を決定する際の機能である。
【００３７】
判断部５０５は、仮配線処理を実行している階層（たとえば第１層）において、更新処理を実行した場合に、未配線ネット数が減少するか否かを判断する機能を有する。判断部５０５によって、配線領域を他の階層（たとえば第２層）へ拡大するか否かの判断を下すことができる。なお、判断結果は、ＲＡＭ４０３、磁気ディスク４０５、光ディスク４０７などの記憶領域に記憶される。
【００３８】
階層設定部５０６は、判断部５０５の判断結果に応じて配線領域を決定する階層を設定する機能を有する。具体的には、階層設定部５０６は、判断部５０５によって、現在の階層（たとえば第１層）では未配線ネット数が減少しないと判断された場合、仮配線領域が存在する第１層とは異なる他の階層（たとえば第２層）に、仮配線領域と第１および第２の端子群と配線済みネットとを設定する。階層設定部５０６によって第２層に仮配線領域が設定された場合、制御部５０３は、検出部５０１を制御して、第２層での仮配線領域内で仮配線処理および未配線ネットの検出処理を実行させる。なお、階層設定結果は、ＲＡＭ４０３、磁気ディスク４０５、光ディスク４０７などの記憶領域に記憶される。
【００３９】
取得部５０７は、対象回路内の素子の接続情報を取得する機能を有する。また、抽出部５０８は、取得部５０７によって取得された接続情報の中から配線すべき素子の組み合わせを抽出する機能を有する。たとえば、プリント基板１１０上に構成する回路が受動部品によって構成される場合がある。
【００４０】
設計情報１２０によって指示された受動部品は、実装時には付随する抵抗が存在するため、受動部品ごとに接続区間を分けて、各区間について配線領域を決定する必要がある。したがって、取得部５０７によって、設計情報１２０から対象回路内の素子の接続情報を取得した後、抽出部５０８によって素子の受動部品を構成する受動素子を抽出することができる。
【００４１】
端子群設定部５０９は、抽出部５０８によって抽出された素子を、接続区間を構成する端子群に設定する機能を有する。具体的には、端子群設定部５０９は、抽出部５０８によって抽出された素子の組み合わせごとに、一方の素子の端子群を第１の端子群、他方の素子の端子群を第２の端子群に設定して接続区間を構成する。なお、設定結果は、ＲＡＭ４０３、磁気ディスク４０５、光ディスク４０７などの記憶領域に記憶される。
【００４２】
端子群設定部５０９によってあらたに第１の端子群および第２の端子群が設定されると、検出部５０１は、設定された端子間について仮配線領域を設定すると共に、仮配線処理を実行して未配線ネットを検出する。
【００４３】
判定部５１０は、同一の端子を含む配線領域が同じ階層に決定されているか否かを判定する機能を有している。具体的には、判定部５１０は、現在処理対象となっている第１および第２の端子群を有するいずれか一方の素子が、決定部５０４による決定済みの配線領域に含まれているか否かを判定する。そして、判定部５１０によって、処理対象となっている端子群のいずれかが、決定済みの配線領域に含まれていると判定された場合、階層設定部５０６は、他の階層に第１および第２の端子群の仮配線領域を設定する。
【００４４】
たとえば、判定部５１０によって、第１層を対象に第１の端子群と第２の端子群のいずれかの端子群を利用した配線領域が設定されていると判断された場合、階層設定部５０６は第２層を、第１の端子群と第２の端子群との仮配線領域の設定先とする。そして、検出部５０１は、第２層に配置された第１の端子群と第２の端子群との仮配線領域に対して未発生ネットの検出処理を実行する。
【００４５】
（設計支援処理の手順）
図６は、設計支援装置による設計支援処理の手順を示すフローチャートである。図６のフローチャートは、指定された端子群間に指定されたバスの配線を行うための配線領域を決定するまでの手順を示す。図６の各処理を実行することによって未配線ネットの発生の心配のない配線領域を自動的に決定することができる。
【００４６】
図６において、設計支援装置１００の検出部５０１は、まず、設計情報１２０を取得したか否かを判断する（ステップＳ６０１）。検出部５０１は、ステップＳ６０１において、設計情報１２０を取得するまで待ち（ステップＳ６０１：Ｎｏのループ）、設計情報１２０を取得すると（ステップＳ６０１：Ｙｅｓ）、検出部５０１は、検証ツールを利用して、仮配線領域を設定する（ステップＳ６０２）。その後、検出部５０１は仮配線領域を対象に未配線ネットを検出する（ステップＳ６０３）。
【００４７】
更新部５０２は、ステップＳ６０３によって、未配線ネットが検出されたか否かを判断し（ステップＳ６０４）、未配線ネットが検出されなかった場合（ステップＳ６０４：Ｎｏ）、決定部５０４は、現在設定されている仮配線領域を配線領域に決定し（ステップＳ６０５）、一連の処理を終了する。
【００４８】
一方、ステップＳ６０４において、未配線ネットが検出された場合（ステップＳ６０４：Ｙｅｓ）、現状の仮配線領域を採用して配線を実行すると、未配線ネットが生じてしまう。そこで、更新部５０２は、未配線ネットの本数に応じて、仮配線領域を拡大する（ステップＳ６０６）。制御部５０３は、更新部５０２による仮配線領域の拡大をトリガに、再度、検出部５０１による未配線ネットの検出を実行させる（ステップＳ６０３）。
【００４９】
ステップＳ６０３によって未配線ネットの検出が実行されると、未配線ネットの有無に応じた処理が実行される。すなわち、未配線ネットが検出されると、更新部５０２による仮配線領域の拡大処理が繰り返される。その後、未配線ネットが検出されないと判断されると、決定部５０４は、現状の仮配線領域を配線領域に決定して（ステップＳ６０５）、一連の処理を終了する。
【００５０】
（配線収容性の検証）
上述したように、検証支援装置１００は、仮配線領域について、未配線ネットの有無を検出し、未配線ネットが検出されなかった場合（すべての結線が配線される場合）、仮配線領域を配線領域に決定する。したがって、図６のステップＳ６０３では、仮配線処理を実行して、バスに所属する各信号線が仮配線領域において、それぞれどのような配線がなされるかを検証する必要がある。
【００５１】
仮配線領域内の未配線ネット発生の有無を配線収容性として検証するために、本実施の形態では、一例として、最大フローアルゴリズムによって指定された端子群間の配線経路を作成するシミュレータ（配線経路作成支援装置）を利用する。そして、配線経路作成支援装置による作成経路のうち、配線が不完全なものを未配線ネットとして検出する。したがって、以下に配線経路作成支援装置の一例について説明する。
【００５２】
図７は、配線経路作成支援装置の機能的構成を示すブロック図である。図７に示したように、経路作成支援装置７００は、有向グラフ生成部７１０と、経路探索部７２０と、概略経路確定部７３０と、ネットリスト７４１と、ピンリスト７４２と、配線ルール７４３と、出口情報７４４と、を含む構成である。これら制御部となる機能（有向グラフ生成部７１０〜概略経路確定部７３０）やデータベース（ネットリスト７４１〜出口情報７４４）は、図４に示したような設計支援装置１００のハードウェア資源を利用してもよいし、独立した汎用コンピュータを用いてもよい。
【００５３】
有向グラフ生成部７１０は、セル生成部７１１、セル容量算出部７１２、ノード生成部７１３および有向枝生成部７１４を有しており、配線経路の作成を実施するためのネットワークフローモデル化された有向グラフを生成する。すなわち、経路作成支援装置７００は、端子群の構成例としてＢＧＡ（Ｂａｌｌ  Ｇｒｉｄ  Ａｒｒａｙ）の配線問題に対しネットワークフローモデルを適用することにより配線経路の作成処理を実現する。
【００５４】
ＢＧＡの配線問題にネットワークフローモデルを適用するにあたり、有向グラフ生成部７１０は、少なくとも配線対象とされたＢＧＡのピン（端子）について、水平ピン間、垂直ピン間および対角ピン間に配線通過数を規制するボトルネック（配線数の制限）を設ける。なお、水平ピン間とは、空きピンも含めて水平方向に隣接する二つのピンに挟まれた領域を意味する。また、垂直ピン間とは、空きピンも含めて垂直方向に隣接する二つのピンに挟まれた領域を意味する。そして、対角ピン間とは、空きピンも含めて４つのピンに囲まれた領域を意味する。また、空きピン（ピンが配置されていない部分）がある場合は空きピンにもボトルネックが設けられる。
【００５５】
図８は、ＢＧＡに設けられたボトルネックのモデル化の一例を示す説明図である。図８には、ＢＧＡの一部分が示されている。また、図８における円ｃ１〜ｃ４は、ＢＧＡモデルの各ピンを示す。各ピンに配置された矩形（ｒ１〜ｒ４）、水平ピン間に設けられた矩形（ｒ５およびｒ６）、垂直ピン間に設けられた矩形（ｒ７およびｒ８）、および対角ピン間に設けられた矩形（ｒ９）は、ボトルネック箇所を表現するためのものである。また、本実施の形態では、各矩形を「セル」という。各セルには容量（配線通過許容数）が与えられる。図８において、各セル内における数値は、該当するセルに付与された容量を示す。
【００５６】
また、各セルは、対角線上に二つのノードを有する。左上のノードは入り口ノードであり、右下のノードは出口ノードである。有向グラフ生成部７１０は、所定の規則に従って各ノードを接続する有向枝を生成する。そして、図８においてノード間を接続する矢印が有向枝を示す。有向枝が生成されることによって、配線経路作成を実施するための有向グラフが生成される。
【００５７】
経路探索部７２０は、最短経路探索部７２１およびバックトレース部７２２を有しており、有向グラフ生成部７１０によって生成された有向グラフにおいて、すべての引き出し対象の配線ごとに最短経路を探索する。
【００５８】
概略経路確定部７３０は、経路探索部７２０によって探索された各経路を各配線に分配することにより、概略配線の引き出し経路（概略経路）を確定する。そして、ネットリスト７４１、ピンリスト７４２、配線ルール７４３および出口情報７４４は、配線経路作成に利用する入力情報である。ネットリスト７４１は、引き出し対象のピンの識別子の一覧情報を含む。また、ピンリスト７４２は、配線対象のＢＧＡに配置されているすべてのピンに関する情報を含む。そして、配線ルール７４３は、配線可能領域を規定する各種のパラメータを含み、出口情報７４４は、配線対象のＢＧＡにおいて配線の出口位置を識別するための情報を含んでいる。
【００５９】
図９は、概略経路作成処理の手順を示すフローチャートである。図９のフローチャートにおいて、経路作成支援装置７００は、まず、有向グラフ生成部７１０によって、概略配線を実施するためのネットワークフローモデル化された有向グラフを生成する（ステップＳ９０１）。
【００６０】
図１０は、有向グラフの作成例を示す説明図である。すなわち、図１０は、図９におけるステップＳ９０１の処理結果を示している。図１０において、実線による円はピンを示す。また、グレーに塗りつぶされた円は、配線の引き出し対象（引き出し元）となるピン（以下、「引き出し対象ピン」とよぶ）を示す。さらに、破線による円は空きピンを示す。そして、各矩形はセルを示す。
【００６１】
図１０では、配線の出口位置を破線で囲まれた出口位置Ｏに限定した場合の有向グラフの生成状態を示す。出口位置Ｏに含まれるセルを以下「出口セル」という。上述のように、セル内の入り口ノードから出口ノードへの方向を有する有向枝および出口ノードから隣接する他のセルの入り口ノードへの方向を有する有向枝が生成されることにより有向グラフが生成される。また、湧き出しノードＳは、有向グラフの始点として設けられたノードである。そして、流入ノードＴは、有向グラフの終点として設けられたノードである。なお、各有向枝は、当該有向枝が接続するノードが属するセルの容量に応じた容量を有する。
【００６２】
図９の処理に戻り、ステップＳ９０１の処理が完了すると、経路作成支援装置７００は、続いて経路探索部７２０によって、有向グラフ生成部７１０によって生成された有向グラフにおいて、すべての引き出し対象の配線ごとに最短経路を探索する（ステップＳ９０２）。
【００６３】
図１１は、経路の検索例を示す説明図である。すなわち、図１１は、図９のステップＳ９０２の処理結果を示している。図１１において、太い実線が、経路探索部７２０によって探索された経路を示す。また、本実施の形態では、６本の配線が要求されている場合について説明しているため、図１１に示される経路は、６配線分の経路を示している。
【００６４】
図１１に示した各経路は、湧き出しノードＳから引き出し対象ピンの入り口ノードを経由し、更に、出口セルの出口ノードを経由して流入ノードＴまで至る。なお、ステップＳ９０２の処理の終了時点では、各経路に属する各有向枝がいずれの配線の持ち物になるかは決定されていない。
【００６５】
ステップＳ９０２の処理が完了すると、経路作成支援装置７００は、概略経路確定部７３０によって、経路探索部７２０によって探索された各経路を各配線に分配し、概略配線の引き出し経路（概略経路）を確定する（ステップＳ９０３）。ステップＳ９０３によって確定された概略経路が配線経路の作成結果となる。
【００６６】
図１２は、概略経路の確定例を示す説明図である。すなわち、図１２は、ステップＳ９０３の処理結果を示している。図１２において、符号ｅｎ（ｎは整数）が付されている有向枝は、確定された概略経路が通過する有向枝である。なお、図１２では、便宜上、３本の概略経路が確定した状態を示している。以上説明した処理手順によって、経路作成支援装置７００は、ＢＧＡの概略配線を自動的に実行することができる。
【００６７】
以上説明したように、経路作成支援装置７００を利用することによって、指定された２つの端子群の配線収容性を検証することができる。すなわち、設計支援装置１００の検出部５０１は、経路作成支援装置７００による作成結果として提供された配線経路のうち、正しく配線できなかった信号線を未配線ネットとして検出する。以下には、本実施の形態にかかる検証支援処理の具体的な実施例として、実施例１〜５について説明する。なお、以下の実施例１〜５では、配線収容性を検証するための配線エンジンとして最大フローアルゴリズムを利用した経路作成支援装置７００を採用するが、他のツールを用いてもよい。
【００６８】
（実施例１）
図１３は、実施例１における配線領域決定処理の手順を示すフローチャートである。図１３のフローチャートが表す実施例１は、設計支援装置１００を用いた最も基本的な配線領域決定処理であり、単層プリント基板１１０に所定のバス（たとえばバスＡの）配線領域を決定する。図１３の各処理を実行することによって、所定のバスについて未配線ネットの生じることの無い必要最低限の広さの配線領域を決定することができる。
【００６９】
図１３において設計支援装置１００は、まず、配線対象となるバスの仮配線領域を設定する（ステップＳ１３０１）。続いて、設計支援装置１００は、設定した仮配線領域について、配線収容性の検証を実行する（ステップＳ１３０２）。その後、設計支援装置１００は、ステップＳ１３０２の検証結果から、未配線ネットがゼロか否かを判断し（ステップＳ１３０３）、未配線ネットがゼロと判断された場合（ステップＳ１３０３：Ｙｅｓ）、現時点で設定されている既仮配線領域を配線領域に決定し（ステップＳ１３０４）、一連の処理を終了する。
【００７０】
一方、ステップＳ１３０３において、未配線ネットがゼロではないと判断された場合（ステップＳ１３０３：Ｎｏ）、設計支援装置１００は、現時点で設定されている既仮配線領域において未配線ネットと判断されたネット数分、仮配線領域を拡大修正する（ステップＳ１３０５）。設計支援装置１００は、ステップＳ１３０５において拡大修正された仮配線領域に対して配線収容性の検証を実行する（ステップＳ１３０２）。
【００７１】
設計支援装置１００は、あらたに設定された仮配線領域の配線収容性の検証を実行すると、検証結果から、未配線ネットの有無を判断する（ステップＳ１３０３）。上述したように、未配線ネットがゼロと判断された場合には（ステップＳ１３０３：Ｙｅｓ）、現時点での既仮配線領域を配線領域に決定して（ステップＳ１３０４）、一連の処理を終了する。すなわち、ステップＳ１３０５において拡大修正された仮配線領域が配線領域として決定される。つぎに、上述した手順による配線領域の決定例を図１４〜図２３を用いて説明する。
【００７２】
図１４は、実施例１における仮配線領域の設定例を示す説明図である。実施例１では、図１４のように、プリント基板１１０において、端子群２０１，２０２間を接続する概略経路１４００に基づいて設定された仮配線領域３００から適切な配線領域を決定するまでの手順について説明する。なお、プリント基板１１０上には、対象となるバスへの関係の有無を問わずに各種の素子が配置されている。したがって、プリント基板１１０上の素子の配置場所によっては、仮配線領域３００の障害物３０１となってしまうことがある。しかしながら、経路作成支援装置７００では、障害物３０１を考慮した上で配線収容性が検証されるため、障害物３０１対策を講じる必要はない（後述する実施例２〜５も同様）。
【００７３】
図１５は、実施例１における配線エンジン実行例を示す説明図である。設計支援装置１００は、仮配線領域３００が設定されると、配線エンジンによって各端子群２０１，２０２からバスに所属する各信号線についての配線経路作成をシミュレートして、配線収容性を検証する。
【００７４】
図１６は、実施例１における未配線ネットの発生例を示す説明図である。図１６のように、配線エンジンの実行によって、仮配線領域３００について配線経路がシミュレートされた結果、端子群２０１，２０２間には４本の未配線ネットが生じている。したがって、設計支援装置１００は、現在の仮配線領域３００の更新処理へ移行する。
【００７５】
図１７は、実施例１における仮配線領域の拡大例を示す説明図である。設計支援装置１００は、配線収容性の検証によって検出された未配線ネットの本数に応じて仮配線領域３００を拡大してあらたな仮配線領域３１０を設定する。図１６にて説明したように、仮配線領域３００からは、４本の未配線ネットが検出されている。したがって、設計支援装置１００は、４本分の信号線を配線するために必要な幅分、仮配線領域３００を拡大して仮配線領域３１０を設定する。なお、未配線ネットの１本あたりについての仮配線領域３００の拡大の幅は、信号線の線幅や、線間隔によって異なる。したがって、設計支援装置１００は、設計情報１２０を参照して、仮配線領域３００の拡大幅を特定する。
【００７６】
図１８は、実施例１における仮配線領域拡大後の配線エンジン実行例を示す説明図である。設計支援装置１００は、あらたに仮配線領域３１０が設定されると、配線エンジンによって各端子群２０１，２０２からバスに所属する各信号線についての配線経路作成をシミュレートして、配線収容性を検証する。
【００７７】
図１９は、実施例１における仮配線領域拡大後の未配線ネットの発生例を示す説明図である。図１９のように、配線エンジンの実行によって、仮配線領域３１０について配線経路がシミュレートされた結果、端子群２０１，２０２間には未だ３本の未配線ネットが生じている。したがって、設計支援装置１００は、再度、仮配線領域３１０の更新処理へ移行する。
【００７８】
図２０は、実施例１における仮配線領域の２度目の拡大例を示す説明図である。設計支援装置１００は、仮配線領域３１０についても、仮配線領域３００と同様に、配線収容性の検証によって検出された未配線ネットの本数に応じた更新処理を実行する。図１９にて説明したように、仮配線領域３１０からは、３本の未配線ネットが検出されている。したがって、設計支援装置１００は、３本分の信号線を配線するために必要な幅分、仮配線領域３１０を拡大して仮配線領域３２０を設定する（２度目の拡大）。
【００７９】
図２１は、実施例１における２度目の仮配線領域拡大後の配線エンジン実行例を示す説明図である。設計支援装置１００は、あらたに仮配線領域３２０が設定されると、前回の更新処理後と同様に、配線エンジンによって各端子群２０１，２０２からバスに所属する各信号線についての配線経路作成をシミュレートして、配線収容性を検証する。
【００８０】
図２２は、実施例１における未配線ネットの解消例を示す説明図である。また、図２３は、実施例１における配線領域の決定例を示す説明図である。図２２のように、配線エンジンの実行によって、仮配線領域３２０について配線経路がシミュレートされた結果、端子群２０１，２０２間の未配線ネットは解消され、すべての信号線が接続されている。したがって、設計支援装置１００は、図２３のように未配線ネットが解消された仮配線領域３２０を配線領域に決定して一連の処理を終了する。
【００８１】
以上説明したように、実施例１では、設計支援装置１００は、設計情報１２０を取得すると、指定されたバスを構成する各信号線を漏れなく配線する配線領域を自動的に決定することができる。設計支援装置１００は、設計情報１２０から設定された仮配線領域での配線収容性の検証により、未配線ネットの発生状況を特定することによって、未配線ネットの本数に基づいた拡大処理を実行する。
【００８２】
その後、設計支援装置１００は、未配線ネットが解消した時点での仮配線領域を配線領域として決定するため、不要に配線領域を拡大することなく、必要最低限の配線領域にとどめることができる。結果として、プリント基板１１０への効率的な配線設計を支援することができる。
【００８３】
（実施例２）
図２４は、実施例２における配線領域決定処理の手順を示すフローチャートである。図２４のフローチャートが示す実施例２は、指定された複数のバスの配線領域を順次決定する。図２４の各処理を実行することによって、複数のバスの配線領域を決定することができる。
【００８４】
図２４において設計支援装置１００は、まず、設計情報１２０の中から未処理バスを選択する（ステップＳ２４０１）。その後、設計支援装置１００は、ステップＳ２４０１によって選択されたバスの仮配線領域を設定する（ステップＳ２４０２）。続いて、設計支援装置１００は、設定した仮配線領域について、配線収容性の検証を実行する（ステップＳ２４０３）。
【００８５】
その後、設計支援装置１００は、ステップＳ２４０３の検証結果から、未配線ネットがゼロか否かを判断し（ステップＳ２４０４）、未配線ネットがゼロと判断された場合（ステップＳ２４０４：Ｙｅｓ）、現時点で設定されている既仮配線領域を配線領域に決定する（ステップＳ２４０５）。
【００８６】
一方、ステップＳ２４０４において、未配線ネットがゼロではないと判断された場合（ステップＳ２４０４：Ｎｏ）、設計支援装置１００は、現時点で設定されている既仮配線領域において未配線ネットと判断されたネット数分、仮配線領域を拡大修正する（ステップＳ２４０６）。設計支援装置１００は、ステップＳ２４０６において拡大修正された仮配線領域に対して配線収容性の検証を実行する（ステップＳ２４０３）。
【００８７】
設計支援装置１００は、あらたに設定された仮配線領域の配線収容性の検証を実行すると、検証結果から、未配線ネットの有無を判断する（ステップＳ２４０４）。上述したように、未配線ネットがゼロと判断された場合（ステップＳ２４０４：Ｙｅｓ）、設計支援装置１００は、現時点での既仮配線領域を配線領域に決定する（ステップＳ２４０５）。
【００８８】
その後、設計支援装置１００は、未処理のバスがあるか否かを判断し（ステップＳ２４０７）、未処理バスがあると判断された場合には（ステップＳ２４０７：Ｙｅｓ）、ステップＳ２４０１に移行して、未処理バスの処理に移行する。そして、未処理バスがないと判断された場合（ステップＳ２４０７：Ｎｏ）、設計支援装置１００は、一連の処理を終了する。すなわち、ステップＳ２４０６において拡大修正された仮配線領域が配線領域として決定される。つぎに、上述した手順による配線領域の決定例を図２５〜図３５を用いて説明する。
【００８９】
図２５は、実施例２における各バスの仮配線領域の設定例を示す説明図である。実施例２では、図２５のように、プリント基板１１０において、端子群２５０１〜２５０４間のバスＡ，Ｂ，Ｃについてそれぞれ適切な配線領域を決定するまでの手順について説明する。なお、バスＡは端子群２５０１，２５０３間を接続し、バスＢは端子群２５０２，２５０３間を接続し、バスＣは端子群２５０２，２５０４間を接続する。
【００９０】
図２６は、実施例２における他のバスの配線領域の決定例を示す説明図である。図２６のように、まず、バスＡ，Ｂについて配線した場合、バスＡ，Ｂは、ぞれぞれの仮配線領域が重複しないため、実施例１にて説明した手順をそのまま利用して配線領域を決定できる。したがって、以下の図２７〜図３５では、バスＢの配線領域と仮配線領域が重複してしまうバスＣについて適切な配線領域を決定するまでの手順について説明する。
【００９１】
図２７は、実施例２における配線エンジン実行例を示す説明図である。設計支援装置１００は、仮配線領域２７００が設定されると、配線エンジンによって各端子群２５０２，２５０４からバスＣに所属する各信号線についての配線経路作成をシミュレートして、配線収容性を検証する。なお、配線収容性検証の際に、仮配線領域２７００と重複しているバスＢの配線領域は障害物として扱われる。
【００９２】
図２８は、実施例２における未配線ネットの発生例を示す説明図である。図２８のように、配線エンジンの実行によって、仮配線領域２７００について配線経路がシミュレートされた結果、端子群２５０２，２５０４間には４本の未配線ネットが生じている。したがって、設計支援装置１００は、現在の仮配線領域２７００の更新処理へ移行する。
【００９３】
図２９は、実施例２における仮配線領域の拡大例を示す説明図である。設計支援装置１００は、配線収容性の検証によって検出された未配線ネットの本数に応じて仮配線領域２７００を拡大してあらたな仮配線領域２７１０を設定する。図２８にて説明したように、仮配線領域２７００からは、４本の未配線ネットが検出されている。したがって、設計支援装置１００は、４本分の信号線を配線するために必要な幅分、仮配線領域２７００を拡大して仮配線領域２７１０を設定する。なお、実施例１と同様に未配線ネットの１本あたりについての仮配線領域２７００の拡大の幅は、信号線の線幅や、線間隔によって決定される。
【００９４】
図３０は、実施例２における仮配線領域拡大後の配線エンジン実行例を示す説明図である。設計支援装置１００は、あらたに仮配線領域２７１０が設定されると、配線エンジンによって各端子群２５０２，２５０４からバスに所属する各信号線についての配線経路作成をシミュレートして、配線収容性を検証する。
【００９５】
図３１は、実施例２における仮配線領域拡大後の未配線ネットの発生例を示す説明図である。図３１のように、配線エンジンの実行によって、仮配線領域２７１０について配線経路がシミュレートされた結果、端子群２５０２，２５０４間には未だ２本の未配線ネットが生じている。したがって、設計支援装置１００は、再度、仮配線領域２７１０の更新処理へ移行する。
【００９６】
図３２は、実施例２における仮配線領域の２度目の拡大例を示す説明図である。設計支援装置１００は、仮配線領域２７１０についても、仮配線領域２７００と同様に、配線収容性の検証によって検出された未配線ネットの本数に応じた更新処理を実行する。図３１にて説明したように、仮配線領域２７１０からは、２本の未配線ネットが検出されている。したがって、設計支援装置１００は、２本分の信号線を配線するために必要な幅分、仮配線領域２７１０を拡大して仮配線領域２７２０を設定する（２度目の拡大）。
【００９７】
図３３は、実施例２における２度目の仮配線領域拡大後の配線エンジン実行例を示す説明図である。設計支援装置１００は、あらたに仮配線領域２７２０が設定されると、前回の更新処理後と同様に、配線エンジンによって各端子群２５０２，２５０４からバスに所属する各信号線についての配線経路作成をシミュレートして、配線収容性を検証する。
【００９８】
図３４は、実施例２における未配線ネットの解消例を示す説明図である。また、図３５は、実施例２における配線領域の決定例を示す説明図である。図３４のように、配線エンジンの実行によって、仮配線領域２７２０について配線経路がシミュレートされた結果、端子群２５０２，２５０４間の未配線ネットは解消され、すべての信号線が接続されている。したがって、設計支援装置１００は、図３５のように未配線ネットが解消された仮配線領域２７２０を配線領域に決定して一連の処理を終了する。
【００９９】
以上説明したように、実施例２では、プリント基板１１０上に複数のバスが隣接する場合であっても、順次バスの配線領域を決定する。また、先に実行されたバスの配線領域が隣接するバスの仮配線領域内に大きく侵入して重複するような配線結果となっても、設計支援装置１００は、重複部分の領域を障害物として扱って配線収容性を検証する。同様に、設計支援装置１００は、仮配線領域の拡大処理を行う際にも、上述の重複部分を障害物として扱い拡大領域から排除する。実施例１と同様に、未配線ネットの発生のない適切な配線領域を効率的に決定することができる。
【０１００】
（実施例３）
図３６は、実施例３における配線領域決定処理の手順を示すフローチャートである。図３６のフローチャートが示す実施例では、配線の階層が指定されたバスの配線領域を決定する。したがって、実施例３は、多層構造のプリント基板１１０における配線領域の決定の際に利用される。図３６の各処理を実行することによって、指定された階層に適切な配線領域を決定することができる。
【０１０１】
図３６において設計支援装置１００は、まず、配線対象となるバスの仮配線領域を設定する（ステップＳ３６０１）。続いて、設計支援装置１００は、設定した仮配線領域について、配線収容性の検証を実行する（ステップＳ３６０２）。その後、設計支援装置１００は、ステップＳ３６０２の検証結果から、未配線ネットがゼロか否かを判断し（ステップＳ３６０３）、未配線ネットがゼロと判断された場合（ステップＳ３６０３：Ｙｅｓ）、現時点で設定されている既仮配線領域を配線領域に決定し（ステップＳ３６０４）、一連の処理を終了する。
【０１０２】
一方、ステップＳ３６０３において、未配線ネットがゼロではないと判断された場合（ステップＳ３６０３：Ｎｏ）、設計支援装置１００は、前回の配線収容性と、直前に実行された配線収容性とを比較する（ステップＳ３６０５）。そして、設計支援装置１００は、ステップＳ３６０５の比較結果から未配線ネットが前回と比較して減少したか否かを判断する（ステップＳ３６０６）。なお、配線収容性の検証が１回しか行われていない場合には、自動的に未配線ネットが減少したものとして処理を進める。
【０１０３】
ステップＳ３６０６において、未配線ネットが減少したと判断された場合（ステップＳ３６０６：Ｙｅｓ）、設計支援装置１００は、既仮配線領域を未配線ネット分拡大修正し（ステップＳ３６０８）、ステップＳ３６０２に移行して、拡大後の仮配線領域について配線収容性の検証を実行する。
【０１０４】
一方、ステップＳ３６０６において、未配線ネットが減少していないと判断された場合（ステップＳ３６０６：Ｎｏ）、設計支援装置１００は、現在配線対象としている階層（たとえば第１層）では適切な配線領域を確保できないと判断する。したがって、設計支援装置１００は、異なる階層（たとえば第２層）で、残りの未配線ネットの仮配線領域を設定する（ステップＳ３６０７）。
【０１０５】
ステップＳ３６０７によって異なる階層に仮配線領域を設定した場合、設計支援装置１０は、ステップＳ３６０２の処理に移行し、他の階層を含めて配線収容性の検証を行う。以降は、実施例１，２の処理と同様に、未配線ネットが解消するまで拡大処理を繰り返し、未配線ネットが解消すると（ステップＳ３６０３：Ｙｅｓ）、現時点で設定されている既仮配線領域を配線領域に決定し（ステップＳ３６０４）、一連の処理を終了する。つぎに、上述した手順による配線領域の決定例を図３７〜図４１を用いて説明する。
【０１０６】
図３７は、実施例３における各バスの仮配線領域の設定例を示す説明図である。実施例３では、図３７のように、プリント基板１１０（第１層１１０−１、第２層１１０−２）において、端子群２５０１〜２５０４間のバスＡ，Ｂ，Ｃについてそれぞれ適切な配線領域を決定するまでの手順について説明する。なお、バスＡは端子群２５０１，２５０３間を接続し、バスＢは端子群２５０２，２５０３間を接続し、バスＣは端子群２５０２，２５０４間を接続する。
【０１０７】
図３８は、実施例３における他のバスの配線領域の決定例を示す説明図である。図３８ように、まず、バスＡ，Ｃについて配線した場合、バスＡ，Ｃは、ぞれぞれの仮配線領域が重複しないため、実施例１にて説明した手順をそのまま利用して第１層１１０−１上に配線領域を決定できる。したがって、以下の図３９〜図４１では、バスＣの配線領域と仮配線領域が重複してしまうバスＢについて適切な配線領域を決定するまでの手順について説明する。
【０１０８】
図３９は、実施例３における第１層の配線収容性の検証例を示す説明図である。また、図４０は、実施例３における第１層の配線領域の設定例を示す説明図である。設計支援装置１００は、バスＢについてまず、第１層１１０−１を対象に配線収容性の検証を実行する。しかしながら、図４０のように、第１層１１０−１上は、既にバスＡ，Ｃの配線領域の密集度が高く、たとえ拡大処理を実行したとしても、信号線２本分を配線できる仮配線領域４０００を設定することしかできない。そこで、設計支援装置１００は、第１層１１０−１については、現時点での仮配線領域を配線領域に決定し、未配線ネットの配線領域を第２層１１０−２上で検証する処理に移行する。
【０１０９】
図４１は、実施例３における第２層の配線領域の設定例を示す説明図である。図４１のように、第２層１１０−２は、バスＡ，Ｃの配線領域が関与していない。したがって、設計支援装置１００は、端子群２５０２，２５０３間を接続する未配線ネット７本について、あらたに仮配線領域４１００を設定して配線収容性の検証を行う。検証の結果、未配線ネットが解消されていると判断されると、設計支援装置１００は、現時点での仮配線領域４１００を配線領域に決定して一連の処理を終了する。
【０１１０】
以上説明したように、実施例３では、設計者または上位システムからの配線層指定があるバスについては、まず、指定された階層において優先的に配線検証を行う。配線収容性検証の結果、一定の範囲までの拡大修正を行っても未配線ネット数がゼロにならない場合、設計支援装置１００は、現在形成中の仮配線領域を指定された階層に作成する。そして、設計支援装置１００は、既仮配線領域には収容しきれず未配線になるネット数分の配線領域を他の階層に決定する。結果として、指定された階層の配線の密集度が高い場合であっても、指定階層への配線領域を最大限活かし生かしつつ、未配線ネットのない配線領域を決定することができる。
【０１１１】
（実施例４）
図４２は、実施例４における配線領域決定処理の手順を示すフローチャートである。図４２のフローチャートが示す実施例４は、１つのバス内に複数の接続区間が設定されている場合に、各接続区間を考慮して配線領域を決定する。図４２の各処理を実行することによって、バスを接続する素子の機能に応じた適切な配線領域を決定することができる。
【０１１２】
図４２において、設計支援装置１００は、まず、配線対象となるバスの仮配線領域を接続区間ごとに設定する（ステップＳ４２０１）。続いて、設計支援装置１００は、設定した各仮配線領域について、配線収容性の検証を実行する（ステップＳ４２０２）。その後、設計支援装置１００は、ステップＳ４２０２の検証結果から、未配線ネットがゼロか否かを判断し（ステップＳ４２０３）、未配線ネットがゼロと判断された場合（ステップＳ４２０３：Ｙｅｓ）、現時点で設定されている既仮配線領域を配線領域に決定し（ステップＳ４２０４）、一連の処理を終了する。
【０１１３】
一方、ステップＳ４２０３において、未配線ネットがゼロではないと判断された場合（ステップＳ４２０３：Ｎｏ）、設計支援装置１００は、前回の配線収容性と、直前に実行された配線収容性とを比較する（ステップＳ４２０５）。そして、設計支援装置１００は、ステップＳ４２０５の比較結果から未配線ネットが前回と比較して減少したか否かを判断する（ステップＳ４２０６）。なお、配線収容性の検証が１回しか行われていない場合には、自動的に未配線ネットが減少したものとして処理を進める。
【０１１４】
ステップＳ４２０６において、未配線ネットが減少したと判断された場合（ステップＳ４２０６：Ｙｅｓ）、設計支援装置１００は、既仮配線領域を未配線ネット数分拡大修正し（ステップＳ４２０８）、ステップＳ４２０２に移行して、拡大後の仮配線領域について配線収容性の検証を実行する。
【０１１５】
一方、ステップＳ４２０６において、未配線ネットが減少していないと判断された場合（ステップＳ４２０６：Ｎｏ）、設計支援装置１００は、現在配線対象としている階層（たとえば第１層）では適切な配線領域を確保できないと判断する。したがって、設計支援装置１００は、異なる階層（たとえば第２層）で、残りの未配線ネットの仮配線領域を設定する（ステップＳ４２０７）。
【０１１６】
ステップＳ４２０７によって異なる階層に仮配線領域を設定した場合、設計支援装置１０は、ステップＳ４２０２の処理に移行し、他の階層を含めて配線収容性の検証を行う。以降は、実施例１，２の処理と同様に、未配線ネットが解消するまで拡大処理を繰り返し、未配線ネットが解消すると（ステップＳ４２０３：Ｙｅｓ）、現時点で設定されている既仮配線領域を配線領域に決定し（ステップＳ４２０４）、一連の処理を終了する。つぎに、上述した手順による配線領域の決定例を図４３〜図４９を用いて説明する。
【０１１７】
図４３は、実施例４における仮配線領域の設定例を示す説明図である。図４３のように、実施例４では、プリント基板１１０上の端子群４３０１，４３０２をバスＤによって接続する。バスＤには、回路図４３００に示すような素子（ドライバＤ、レシーバＲなど）が含まれている。各素子には各種抵抗（ダンピング抵抗、終端抵抗）が付随しており、バスＤを機能させるには、各種抵抗との配線が必要になる。なお、図４３に例示した回路図４３００は便宜上プリント基板１１０に表示したものであって、実際のプリント基板１１０上の構成を表したものではない。
【０１１８】
図４４は、実施例４における接続区間ごとの配線収容性の検証例を示す説明図である。上述したように、バスＤでは、回路図４３００に示した各素子を接続する。したがって、図４４のように、３つの仮配線領域４４００，４４１０，４４２０についての配線収容性の検証が必要になる。
【０１１９】
図４５は、実施例４におけるダンピング抵抗〜レシーバ間の配線収容性の検証例を示す説明図である。また、図４６は、実施例４におけるダンピング抵抗〜レシーバ間の配線領域の決定例を示す説明図である。設計支援装置１００は、まず、回路図４３００の各素子の接続区間ごとに順番に配線収容性の検証を行う。図４５に示すように、設計支援装置１００は、まず、ダンピング抵抗〜レシーバ間４５０１を接続する仮配線領域４５００の配線収容性の検証を行う。その後、設計支援装置１００は、未配線ネットの検出結果に応じて適宜拡大処理を実行した結果として図４６に示したような配線領域４６００を決定する。
【０１２０】
図４７は、実施例４における残りの各素子間の配線収容性の検証例を示す説明図である。また、図４８は、実施例４における残りの各素子間の配線領域の決定例を示す説明図である。引き続き、設計支援装置１００は、回路図４３００の残りの素子として、ドライバ〜ダンピング抵抗間４７１１を接続する仮配線領域４７０１と、レシーバ〜終端抵抗間４７１２を接続する仮配線領域４７０２とについて、配線収容性の検証を行う。そして、配線収容性の検証の結果、設計支援装置１００は、ドライバ〜ダンピング抵抗間４７１１を接続する配線領域４８０１と、レシーバ〜終端抵抗間４７１２を接続する配線領域４８０２とを決定する。したがって、先に決定した配線領域４６００と共に、バスＤに必要な各信号線を漏れなく接続する配線領域が決定される。
【０１２１】
以上説明したように、実施例４では、バス内に複数の接続区間が発生する場合であっても各接続区間についてそれぞれ適切な配線領域を決定することができる。複数の接続区間が発生する場合とは、具体的には、図４３に例示したように、設計情報１２０では、バスの配線経路が能動部品同士の接続のみを考慮して形成されている場合が挙げられる。すなわち、実際に能動部品を機能させる際に付随する抵抗などの受動素子が考慮されていない。ところが、実装時には、能動部品と受動部品とを接続する接続区間が追加される。したがって、実施例４を利用することによって、上述のように追加された接続区間を加えた複数の接続区間についての配線領域の決定が可能になる。
【０１２２】
（実施例５）
図４９は、実施例５における配線領域決定処理の手順を示すフローチャートである。図４９のフローチャートが表す実施例５は、概略経路の途中でビアを経由して他の階層に配線するように設定されたバスの配線領域を決定する。図４９の各処理を実行することによって、指定したビアを経由して階層ごとに適切な配線領域を決定することができる。
【０１２３】
図４９において設計支援装置１００は、指定された階層ごとに独立して配線領域を決定する。まず、配線対象となるバスの仮配線領域を設定する（ステップＳ４９０１）。続いて、設計支援装置１００は、設定した仮配線領域について、配線収容性の検証を実行する（ステップＳ４９０２）。そして、設計支援装置１０００は、指定された階層ごとに独立して配線領域を決定する。
【０１２４】
図５０は、実施例５における仮配線領域と切り替え点の設定例を示す説明図である。図５０のように、たとえばプリント基板１１０に対して、端子群５００１〜（第１層）〜切り替え点５００３〜（第２層）〜端子群５００２という階層設定がなされている場合、設計支援装置１００は、まず、端子群５００１〜切り替え点５００３について、第１層を対象に配線領域を決定する。したがって、設計支援装置１００は、ステップＳ４９０２の検証結果から、未配線ネットがゼロか否かを判断し（ステップＳ４９０３）、未配線ネットがゼロと判断された場合（ステップＳ４９０３：Ｙｅｓ）、現時点で設定されている既仮配線領域を配線領域に決定し（ステップＳ４９０４）、一連の処理を終了する。
【０１２５】
一方、ステップＳ４９０３において、未配線ネットがゼロではないと判断された場合（ステップＳ４９０３：Ｎｏ）、設計支援装置１００は、現時点で設定されている既仮配線領域において未配線ネットと判断されたネット数分、仮配線領域を拡大修正する（ステップＳ４９０５）。設計支援装置１００は、ステップＳ４９０５において拡大修正された仮配線領域に対して配線収容性の検証を実行する（ステップＳ４９０２）。
【０１２６】
設計支援装置１００は、あらたに設定された仮配線領域の配線収容性の検証を実行すると、検証結果から、未配線ネットの有無を判断する（ステップＳ４９０３）。上述したように、未配線ネットがゼロと判断された場合には（ステップＳ４９０３：Ｙｅｓ）、設計支援装置１００は、現時点での既仮配線領域を配線領域に決定する（ステップＳ４９０４）。以上説明した処理を、第２層を対象に切り替え点５００３〜端子群５００２間でも実行した後、一連の処理を終了する。つぎに、上述した手順による配線領域の決定例を図５１〜図５４を用いて説明する。
【０１２７】
図５１は、実施例５における各層の仮配線領域の設定例を示す説明図である。また、図５２は、実施例５における各層の配線収容性の検証例を示す説明図である。図５１のように、第１層では、端子群５００１〜切り替え点５００３間について、仮配線領域５１０１が設定され、第２層では、ビア５００３〜端子群５００２間について、仮配線領域５１０２が設定される。設計支援装置１００は、図５２のように、仮配線領域５１０１，５１０２についてそれぞれ、配線収容性の検証を行う。なお、設計支援装置１００は、設計情報１２０から、各層の切り替え点５００３にビア５１００を設計する。
【０１２８】
図５３は、実施例５における各層の仮配線領域の拡大例を示す説明図である。また、図５４は、実施例５における各層の配線領域の決定例を示す説明図である。図５３のように設計支援装置１００は、設定された各仮配線領域５１０１，５１０２について、それぞれ対応する階層上で、配線収容性の検証を行う。そして、検証結果に応じて適宜拡大処理を行うことによって、第１層では、仮配線領域５３０１を設定し、第２層では仮配線領域５３０２を設定する。設計支援装置１００は、仮配線領域５３０１，５３０２設定後、配線収容性の検証を行い、未配線ネットが検出されなければ、そのまま仮配線領域５３０１，５３０２を配線領域として決定する。
【０１２９】
以上説明したように、実施例５では、多層構造のプリント基板１１０において、バスの概略経路の途中に階層の切り替え点が設定されている場合であっても、ビアを基点として、各階層に適切な配線領域を決定することができる。
【０１３０】
以上説明したように、設計支援プログラム、設計支援装置および設計支援方法によれば、仮配線領域から検出された未配線ネット数に応じて、仮配線領域の拡大処理を未配線ネットが解消されるまで自動的に繰り返して実行する。したがって、不要な拡大処理を防ぎ、適切な配線領域が決定されるため、未配線ネットの発生による手戻りを防ぎ、効率的な配線設計を支援することができる。
【０１３１】
また、上記技術は、配線収容性の検証の際に、他のバスの配線領域を回避するような検証を行う機能を備えている。したがって、複数のバスが設定され、混雑度が高いプリント基板上であっても、未配線ネットの発生を防ぐことができる。
【０１３２】
また、上記技術は、配線処理対象となっている階層において、これ以上の仮配線領域の拡大処理による未配線ネットの解消が見込めない場合に、他の階層を配線対象に設定する機能を備えている。したがって、多層プリント基板であれば、他の階層に配線領域を拡大して、配線不能となるような事態を回避することができる。
【０１３３】
また、上記技術は、バス内に複数の接続区間が存在する場合に、各接続区間について配線領域を決定する機能を備えている。したがって、受動部品など、設計時点で考慮されていない素子についても、実装時に未配線ネットが発生しないよう適切な配線領域を設定することができる。
【０１３４】
また、上記技術は、一つのバスが異なる階層に渡って接続されるような設計指示を受けた場合に、階層の切り替え点にビアを設計して各階層の端子群との接続の基点とする機能を備えることもできる。切り替え点にビアを設計して各階層の端子群について配線収容性の検証を行うことによって、各階層に適切な配線領域を設定できる。
【０１３５】
なお、本実施の形態で説明した設計支援方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。本設計支援プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本設計支援プログラムは、インターネットなどのネットワークを介して配布してもよい。
【０１３６】
また、本実施の形態で説明した設計支援装置１００は、スタンダードセルやストラクチャードＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などの特定用途向けＩＣ（以下、単に「ＡＳＩＣ」と称す。）やＦＰＧＡなどのＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）によっても実現することができる。具体的には、たとえば、上述した設計支援装置１００の機能（検出部５０１〜判定部５１０）をＨＤＬ記述によって機能定義し、そのＨＤＬ記述を論理合成してＡＳＩＣやＰＬＤに与えることにより、設計支援装置１００を製造することができる。
【０１３７】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１３８】
（付記１）仮配線領域内での第１および第２の端子群間の仮配線処理を実行するコンピュータを、
前記仮配線領域内で前記仮配線処理によって発生した未配線ネットの検出処理を実行する検出手段、
前記検出手段によって前記未配線ネットが検出された場合、前記未配線ネットの数に応じて前記仮配線領域を拡大させる更新処理を実行する更新手段、
前記更新手段によって更新されたときの仮配線領域内で前記仮配線処理および当該仮配線処理後における前記検出処理を実行させる制御手段、
前記検出手段によって前記未配線ネットが検出されなかったときの仮配線領域を配線領域に決定する決定手段、
として機能させることを特徴とする設計支援プログラム。
【０１３９】
（付記２）前記制御手段は、
すでに前記決定手段によって決定された他の配線領域を回避するように前記仮配線処理を実行させることを特徴とする付記１に記載の設計支援プログラム。
【０１４０】
（付記３）前記コンピュータを、
前記仮配線処理を実行している階層において、前記更新処理を実行した場合に、未配線ネット数が減少するか否かを判断する判断手段、
前記判断手段によって、前記未配線ネット数が減少しないと判断された場合、前記仮配線領域が存在する階層とは異なる他の階層に、前記仮配線領域と前記第１および第２の端子群を設定する階層設定手段として機能させ、
前記制御手段は、
前記階層設定手段による設定後における前記他の階層での前記仮配線領域内で前記仮配線処理および当該仮配線処理後における前記検出処理を実行させることを特徴とする付記１または２に記載の設計支援プログラム。
【０１４１】
（付記４）前記コンピュータを、
対象回路内の素子の接続情報を取得する取得手段、
前記取得手段によって取得された接続情報の中から配線すべき素子の組み合わせを抽出する抽出手段、
前記抽出手段によって抽出された組み合わせごとに、一方の素子の端子群を前記第１の端子群、他方の素子の端子群を前記第２の端子群に設定する端子群設定手段として機能させ、
前記検出手段は、
前記仮配線領域内で前記端子群設定手段によって設定された前記第１および第２の端子群間の前記仮配線処理によって発生した未配線ネットの検出処理を実行することを特徴とする付記１〜３のいずれか一つに記載の設計支援プログラム。
【０１４２】
（付記５）前記コンピュータを、
現在対象となっている組み合わせにおける前記第１および第２の端子群を有するいずれか一方の素子が、前記決定手段による決定済みの配線領域に含まれているか否かを判定する判定手段として機能させ、
前記階層設定手段は、
前記判定手段によって前記決定済みの配線領域に含まれていると判定された場合、前記決定手段によってすでに決定された配線領域が存在する階層とは異なる階層に、現在対象となっている組み合わせにおける前記第１および第２の端子群の仮配線領域を設定し、
前記検出手段は、
前記階層設定手段によって設定された仮配線領域内での現在対象となっている組み合わせにおける前記第１および第２の端子群間の前記仮配線処理によって発生した未配線ネットの検出処理を実行することを特徴とする付記４に記載の設計支援プログラム。
【０１４３】
（付記６）前記抽出手段は、
前記取得手段によって取得された接続情報の中から異なる階層間に接続される素子の組み合わせを抽出し、
前記端子群設定手段は、
前記抽出手段によって抽出された異なる階層の切り替え箇所にビアを設定し、当該ビア端子群と前記第１の端子群、その他の端子群を前記第２の端子群に設定することを特徴とする付記４に記載の設計支援プログラム。
【０１４４】
（付記７）前記検出手段は、
前記仮配線領域内において、前記仮配線処理として最大フローアルゴリズムを行って発生した未配線ネットを検出することを特徴とする付記１〜６のいずれか一つに記載の設計支援プログラム。
【０１４５】
（付記８）仮配線領域内での第１および第２の端子群間の仮配線処理を実行する設計支援装置であって、
前記仮配線領域内で前記仮配線処理によって発生した未配線ネットの検出処理を実行する検出手段と、
前記検出手段によって前記未配線ネットが検出された場合、前記未配線ネットの数に応じて前記仮配線領域を拡大させる更新処理を実行する更新手段と、
前記更新手段によって更新されたときの仮配線領域内で前記仮配線処理および当該仮配線処理後における前記検出処理を実行させる制御手段と、
前記検出手段によって前記未配線ネットが検出されなかったときの仮配線領域を配線領域に決定する決定手段と、
を備えることを特徴とする設計支援装置。
【０１４６】
（付記９）検出手段と更新手段と制御手段と決定手段とを備え、仮配線領域内での第１および第２の端子群間の仮配線処理を実行するコンピュータが、
前記検出手段により、前記仮配線領域内で前記仮配線処理によって発生した未配線ネットの検出処理を実行する検出工程と、
前記更新手段により、前記検出工程によって前記未配線ネットが検出された場合、前記未配線ネットの数に応じて前記仮配線領域を拡大させる更新処理を実行する更新工程と、
前記制御手段により、前記更新工程によって更新されたときの仮配線領域内で前記仮配線処理および当該仮配線処理後における前記検出処理を実行させる実行工程と、
前記決定手段により、前記検出工程によって前記未配線ネットが検出されなかったときの仮配線領域を配線領域に決定する決定工程と、
を実行することを特徴とする設計支援方法。
【符号の説明】
【０１４７】
１００  設計支援装置
１１０  プリント基板
１２０  設計情報
１３０  配線領域情報
２０１，２０２  端子群
２０３  概略経路
３００  仮配線領域
５０１  検出部
５０２  更新部
５０３  制御部
５０４  決定部
５０５  判断部
５０６  階層設定部
５０７  取得部
５０８  抽出部
５０９  端子群設定部
５１０  判定部
【図１】
0005418341.tif 000002
【図２】
0005418341.tif 000003
【図３】
0005418341.tif 000004
【図４】
0005418341.tif 000005
【図５】
0005418341.tif 000006
【図６】
0005418341.tif 000007
【図７】
0005418341.tif 000008
【図８】
0005418341.tif 000009
【図９】
0005418341.tif 000010
【図１０】
0005418341.tif 000011
【図１１】
0005418341.tif 000012
【図１２】
0005418341.tif 000013
【図１３】
0005418341.tif 000014
【図１４】
0005418341.tif 000015
【図１５】
0005418341.tif 000016
【図１６】
0005418341.tif 000017
【図１７】
0005418341.tif 000018
【図１８】
0005418341.tif 000019
【図１９】
0005418341.tif 000020
【図２０】
0005418341.tif 000021
【図２１】
0005418341.tif 000022
【図２２】
0005418341.tif 000023
【図２３】
0005418341.tif 000024
【図２４】
0005418341.tif 000025
【図２５】
0005418341.tif 000026
【図２６】
0005418341.tif 000027
【図２７】
0005418341.tif 000028
【図２８】
0005418341.tif 000029
【図２９】
0005418341.tif 000030
【図３０】
0005418341.tif 000031
【図３１】
0005418341.tif 000032
【図３２】
0005418341.tif 000033
【図３３】
0005418341.tif 000034
【図３４】
0005418341.tif 000035
【図３５】
0005418341.tif 000036
【図３６】
0005418341.tif 000037
【図３７】
0005418341.tif 000038
【図３８】
0005418341.tif 000039
【図３９】
0005418341.tif 000040
【図４０】
0005418341.tif 000041
【図４１】
0005418341.tif 000042
【図４２】
0005418341.tif 000043
【図４３】
0005418341.tif 000044
【図４４】
0005418341.tif 000045
【図４５】
0005418341.tif 000046
【図４６】
0005418341.tif 000047
【図４７】
0005418341.tif 000048
【図４８】
0005418341.tif 000049
【図４９】
0005418341.tif 000050
【図５０】
0005418341.tif 000051
【図５１】
0005418341.tif 000052
【図５２】
0005418341.tif 000053
【図５３】
0005418341.tif 000054
【図５４】
0005418341.tif 000055