(57)【要約】【課題】プリント基板のレイアウト設計において、ＩＣのパッケージ内の配線を考慮したより正確なパスコン配置を実現する。【解決手段】本発明に係る情報処理装置は、プリント基板の設計情報からダイの電源端子及びグラウンド端子を特定するダイ端子特定手段と、前記設計情報からプリント基板上に配置されたバイパスコンデンサを特定するパスコン特定手段と、前記設計情報、特定された前記ダイの電源端子及びグラウンド端子の情報、及び特定された前記バイパスコンデンサの情報に基づいて、特定された前記バイパスコンデンサの配置を評価するための評価値を導出する手段と、を備えたことを特徴とする。【選択図】図３
2015228078.tif 000002
【特許請求の範囲】
【請求項１】
プリント基板の設計情報からダイの電源端子及びグラウンド端子を特定するダイ端子特定手段と、
前記設計情報からプリント基板上に配置されたバイパスコンデンサを特定するバイパスコンデンサ特定手段と、
前記設計情報、特定された前記ダイの電源端子及びグラウンド端子の情報、及び特定された前記バイパスコンデンサの情報に基づいて  特定された前記バイパスコンデンサの配置を評価するための評価値を導出する手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記評価値を検証するための条件を設定する手段と、
導出された前記評価値が、設定された前記条件に合致するかどうかを判定する判定手段と、
をさらに備えたことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記評価値は、特定された前記ダイの電源端子から、特定された前記パスコンを経由し、特定された前記ダイのグラウンド端子と至る経路の長さであることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記評価値は、特定された前記ダイの電源端子から、特定された前記パスコンを経由し、特定された前記ダイのグラウンド端子と至る経路のインダクタンスであることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記ダイ端子特定手段は、前記設計情報から仮想的なダイの電源端子及びグラウンド端子を特定することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記判定手段における判定結果を出力する出力手段をさらに備えたことを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記出力の態様は、表示装置に前記判定結果を表示すること、プリンタで前記判定結果を印刷すること、前記判定結果を記述したファイルを送信或いは記憶手段に格納すること、のうち少なくとも１つを含むことを特徴とする請求項６に記載の情報処理装置。
【請求項８】
プリント基板の設計情報からダイの電源端子を特定するダイ端子特定手段と、
前記設計情報から前記プリント基板上のＩＣのパッケージの電源端子を特定するパッケージ端子特定手段と、
前記設計情報、特定された前記ダイの電源端子の情報、特定された前記パッケージの電源端子の情報に基づいて、前記プリント基板上に配置されるバイパスコンデンサの配置を評価するための評価値を導出する手段と、
を備えたことを特徴とする情報処理装置。
【請求項９】
特定された前記パッケージの電源端子について、導出された前記評価値に基づいて、前記バイパスコンデンサを接続する場合における優先順位を設定する優先順位設定手段をさらに備えたことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記評価値は、特定された前記ダイの電源端子から、特定された前記パッケージの電源端子までの経路長であり、
前記優先順位設定手段は、特定された前記パッケージの電源端子について、前記経路長が短いものほど高い優先順位を設定する
ことを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
前記評価値は、特定された前記ダイの電源端子から、特定された前記パッケージの電源端子までの経路のインダクタンスであり、
前記優先順位設定手段は、特定された前記パッケージの電源端子について、前記経路のインダクタンスが小さいものほど高い優先順位を設定する
ことを特徴とする請求項９に記載の情報処理装置。
【請求項１２】
前記優先順位設定手段は、他のパッケージの電源端子よりも高い優先順位が設定された複数のパッケージの電源端子が所定範囲内に密集している場合に、密集状態が解消するように優先順位を変更することを特徴とする請求項９乃至１１のいずれか１項に記載の情報処理装置。
【請求項１３】
前記優先順位を出力する出力手段をさらに備えたことを特徴とする請求項９乃至１２のいずれか１項に記載の情報処理装置。
【請求項１４】
前記出力の態様は、表示装置に前記優先順位を表示すること、プリンタで前記優先順位を印刷すること、前記優先順位を記述したファイルを送信或いは記憶手段に格納すること、のうち少なくとも１つを含むことを特徴とする請求項１３に記載の情報処理装置。
【請求項１５】
前記バイパスコンデンサが接続されるパッケージの電源端子が既に特定されている場合において、前記優先順位に従って前記バイパスコンデンサを配置する手段をさらに備えたことを特徴とする請求項９乃至１４のいずれか１項に記載の情報処理装置。
【請求項１６】
ダイ端子特定手段が、プリント基板の設計情報からダイの電源端子及びグラウンド端子を特定するステップと、
バイパスコンデンサ特定手段が、前記設計情報からプリント基板上に配置されたバイパスコンデンサを特定するステップと、
評価値導出手段が、前記設計情報、特定された前記ダイの電源端子及びグラウンド端子の情報、及び特定された前記バイパスコンデンサの情報に基づいて  特定された前記バイパスコンデンサの配置を評価するための評価値を導出するステップと、
を含むことを特徴とする、バイパスコンデンサの配置を検証する方法。
【請求項１７】
ダイ端子特定手段が、プリント基板の設計情報からダイの電源端子を特定するステップと、
パッケージ端子特定手段が、前記設計情報から前記プリント基板上のＩＣのパッケージの電源端子を特定するステップと、
評価値導出手段が、前記設計情報、特定された前記ダイの電源端子の情報、特定された前記パッケージの電源端子の情報に基づいて、前記プリント基板上に配されるバイパスコンデンサの配置を評価するための評価値を導出するステップと、
を含むことを特徴とする、バイパスコンデンサの配置を検証する方法。
【請求項１８】
コンピュータを、請求項１乃至１５のいずれか１項に記載の情報処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣの電源端子から発生するノイズをＩＣのパッケージを考慮しプリント基板内で抑止するためのバイパスコンデンサの配置を検証する技術に関する。
【背景技術】
【０００２】
集積回路（Integrated Circuit：ＩＣ）や大規模集積回路（Large-Scale Integration：ＬＳＩ）の信号の高速化に伴い、同時スイッチングノイズが大きくなっている。同時スイッチングノイズが大きくなると、電源電圧が変動し、集積回路や大規模集積回路の誤動作や信号伝送不良が発生し、同時スイッチングノイズを基板外に伝搬させると放射ノイズ特性が悪化する。これら問題を回避する目的で、集積回路の電源端子近傍にバイパスコンデンサ（パスコン）を配置することが行なわれている。
【０００３】
そして、パスコンを適切に配置するための技術として、特許文献１には、プリント基板の設計情報を基に、ＩＣの電源端子からパスコンの電源端子までの配線距離が所定の配線長以上で配線されている場合、対策指示を表示するという技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−１６３３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の技術では、ＩＣのパッケージ内配線が考慮されておらず、バイパスコンデンサの配置を精度良く検証することができなかった。
【０００６】
そこで、本発明は、プリント基板における適切なバイパスコンデンサの配置を精度良く把握することができるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る情報処理装置は、プリント基板の設計情報からダイの電源端子及びグラウンド端子を特定するダイ端子特定手段と、前記設計情報からプリント基板上に配置されたバイパスコンデンサを特定するバイパスコンデンサ特定手段と、前記設計情報、特定された前記ダイの電源端子及びグラウンド端子の情報、及び特定された前記バイパスコンデンサの情報に基づいて  特定された前記バイパスコンデンサの配置を評価するための評価値を導出する手段と、を備えたことを特徴とする情報処理装置。
【発明の効果】
【０００８】
本発明によれば、プリント基板における適切なバイパスコンデンサの配置を精度良く把握することができる。
【図面の簡単な説明】
【０００９】
【図１】パスコン配置を検証する装置としてのＰＣ等の情報処理装置の概略的構成を示す図である。
【図２】実施例１に係る、パスコン配置を検証する装置としての情報処理装置のソフトウェア構成を示す機能ブロック図である。
【図３】実施例１に係る、パスコン配置検証処理の流れを示すフローチャートである。
【図４】レイアウト設計完了段階における、プリント基板のレイアウトを示す模式図である。
【図５】実施例１における検証結果出力の一例を示す図である。
【図６】仮想的なダイＶＴ及びダイＧＴを特定する方法を説明する図である。
【図７】実施例２に係る、パスコン配置を検証する装置としての情報処理装置のソフトウェア構成を示す機能ブロック図である。
【図８】シミュレーションモデルを示す図である。
【図９】シミュレーションモデルにおけるインピーダンスの計測結果を示すグラフである。
【図１０】実施例２に係る、パスコン配置検証処理の流れを示すフローチャートである。
【図１１】レイアウト設計段階におけるＩＣのレイアウトを示す模式図である。
【図１２】実施例２における検証結果出力の一例を示す図である。
【図１３】実施例２の変形例に係る検証結果出力の一例を示す図である。
【図１４】実施例３に係る、パスコン配置を検証する装置としての情報処理装置のソフトウェア構成を示す機能ブロック図である。
【図１５】シミュレーションモデルを示す図である。
【図１６】シミュレーションモデルにおけるインピーダンスの計測結果を示すグラフである。
【図１７】実施例３に係る、パスコン配置検証処理の流れを示すフローチャートである。
【図１８】同電位にある複数のパッケージＶＴが一定距離を保って離れているかどうかの判定手法の一例を説明する図である。
【図１９】パスコンが再配置される様子を説明する図である。
【発明を実施するための形態】
【００１０】
以下、添付の図面を参照して、本発明を好適な実施例に基づいて詳細に説明する。なお、以下の実施例において示す構成は一例にすぎず、本発明は図示された構成に限定されるものではない。
【実施例１】
【００１１】
図１は、本実施例に係る、バイパスコンデンサ（以下、パスコン）の配置を検証する装置としてのＰＣ等の情報処理装置の概略的構成を示す図である。情報処理装置１００は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、システムバス１０４、入力Ｉ／Ｆ１０５、ＨＤＤ  Ｉ／Ｆ１０６、出力Ｉ／Ｆ１０７で構成される。
【００１２】
ＣＰＵ１０１は、ＲＡＭ１０３をワークメモリとして、ＲＯＭ１０２及びハードディスクドライブ（ＨＤＤ）１２０に格納されたプログラムを実行し、システムバス１０４を介して後述する各部を制御する。入力インタフェイス（Ｉ／Ｆ）１０５は、キーボードやマウスなどの入力デバイス１１０を接続する、例えばＵＳＢやＩＥＥＥ１３９４等のシリアルバスインタフェイスである。ＣＰＵ１０１は、入力Ｉ／Ｆ１０５を介して入力デバイス１１０から各種データを読み込むことが可能である。ＨＤＤインタフェイス（Ｉ／Ｆ）１０６は、ＨＤＤ１２０や光ディスクドライブなどの外部記憶装置を接続する、例えばシリアルＡＴＡ（ＳＡＴＡ）等のインタフェイスである。ＣＰＵ１０１は、ＨＤＤＩ／Ｆ１０６を介して、ＨＤＤ１２０からのデータ読み出し、およびＨＤＤ１２０へのデータ書き込みが可能である。さらにＣＰＵ１０１は、ＨＤＤ１２０に格納されたデータをＲＡＭ１０３に展開し、同様に、ＲＡＭ１０３に展開されたデータをＨＤＤ１２０に保存することが可能である。そしてＣＰＵ１０１は、ＲＡＭ１０３に展開したデータをプログラムとみなし、実行することができる。出力インタフェイス（Ｉ／Ｆ）１０７は、液晶モニタ等の表示装置やプリンタといった出力デバイス１３０を接続する、例えばＵＳＢやＩＥＥＥ１３９４等のシリアルバスインタフェイスである。ＣＰＵ１０１は、出力インタフェイス１０７を介して液晶モニタ等の表示装置に各種情報の表示を実行させ、或いは表示装置に出力された計算結果等の印刷をプリンタに実行させる。
【００１３】
ＨＤＤ１２０内には、本発明を実施するためのプログラムや、プリント基板のレイアウトに関する設計情報（以下、設計情報）といった各種データが格納される。ここで、設計情報には、部品情報、配線情報、ドリル情報、層情報、パッケージ情報といった情報が含まれる。各情報の内容は以下のとおりである。
【００１４】
＜部品情報＞
・プリント基板上の部品の回路記号、位置座標、形状に関する情報
・部品の端子が接続される導電体部分の形状や信号名の情報
【００１５】
＜配線情報＞
・部品間配線の信号名の情報
・配線図形を構成する各点の位置座標の情報
・回路記号、端子番号、信号名を用いて特定される、回路上の論理的な接続関係を表現するネットリストの情報
【００１６】
＜ドリル情報＞
・ドリル孔の位置座標や形状等の情報
【００１７】
＜層情報＞  
・プリント基板の層構成に関する情報
【００１８】
＜パッケージ情報＞
・ダイの端子やパッケージの端子の位置座標の情報
・ダイやパッケージの端子間配線の信号名の情報
・配線図形を構成する各点の位置座標の情報
・ダイやパッケージの端子の論理的な接続関係を表現するネットリストの情報
【００１９】
図２は、本実施例に係る、パスコン配置を検証する装置としての情報処理装置１００のソフトウェア構成を示す機能ブロック図である。本実施例に係る情報処理装置１００は、設計情報管理部２１０、条件設定部２２０、検証部２３０及び検証結果出力部２４０で構成される。
【００２０】
設計情報管理部２１０は、ユーザが入力デバイス１１０を用いて入力した設計情報を管理する。設計情報管理部２１０は、ユーザからの検証実行の指示を受けて、設計情報を検証部２３０へ送る。
【００２１】
条件設定部２２０は、入力デバイス１１０を介したユーザ入力に従って、パスコン配置の検証処理を実行する際の検証条件を設定する。設定された検証条件は、検証部２３０へ送られる。
【００２２】
検証部２３０は、設計情報管理部２１０から受け取った設計情報を用いて、条件設定部２２０で設定された検証条件に従って、パスコン配置が適切かどうかを検証する処理を行う。本実施例における検証部２３０は、ダイ端子特定部２３１、パスコン特定部２３２、評価値導出部２３３、条件違反判定部２３４で構成される。
【００２３】
ダイ端子特定部２３１は、入力された設計情報に基づいて、ダイに関する電源とグラウンドの端子を特定する。特定されたダイの電源端子及びグラウンド端子の情報はＲＡＭ１０３に記憶される。なお、ユーザが入力デバイス１１０を用いて直接入力したダイの電源端子及びグラウンド端子の情報に基づいて、特定してもよい。
【００２４】
バイパスコンデンサ特定部（パスコン特定部）２３２は、入力された設計情報とダイ端子特定部２３１で特定したダイの電源端子及びグラウンド端子の情報に基づいて、プリント基板上のパスコンを特定する。特定されたパスコンの情報はＲＡＭ１０３に記憶される。
【００２５】
評価値導出部２３３は、入力された設計情報、特定されたダイの電源端子とグラウンド端子の情報、特定されたパスコンの情報に基づいて、パスコンの配置を評価するための評価値を導出する。本実施例では、ダイの電源端子からパスコンを経由してダイのグラウンド端子に至る経路の長さを評価値として導出する。
【００２６】
条件違反判定部２３４は、評価値導出部２３３で導出された評価値が検証条件に合致しているかどうかを判定する。判定の結果（検証結果）は、ＲＡＭ１０３に記憶される。
【００２７】
検証結果出力部２４０は、検証結果に基づいて表示装置上に警告を表示したり、プリンタから検証結果をプリント出力したり、或いは不図示のネットワークＩ／Ｆを介して検証結果のデータを送信するなどして、検出結果をユーザに報知する。
【００２８】
図３は、本実施例に係る、パスコン配置検証処理の流れを示すフローチャートである。この一連の処理は、ＣＰＵ１０１が、ＲＯＭ１０２に格納されているプログラムをＲＡＭ１０３にロードし、実行することで実現される。また、以下の説明においては、プリント基板及びＩＣのパッケージの概略図である図４を適宜参照するものとする。なお、実際のプリント基板およびＩＣのパッケージは、配線が高密度化・複雑化しているが以下の概略的説明はそれを排除するものではない。
【００２９】
図３のフローの説明に入る前に、図４に示すプリント基板とＩＣのパッケージについて説明する。図４（ａ）は、レイアウト設計完了段階における、パスコン４０１ａ及び４０１ｂが接続されたＩＣ４００を含むプリント基板のレイアウトを示す模式図である。図４（ｂ）は、図４（ａ）内の破線で示す領域４０２の拡大図である。図４（ｂ）において、４０３はプリント基板上の電源配線であり、４０４はプリント基板上のグラウンド配線である。４０５はパッケージ内の電源配線であり、４０６はパッケージ内のグラウンド配線である。４０７ａ〜４０７ｄはダイの電源端子であり、４０８ａ〜４０８ｄはダイのグラウンド端子である。４０９はパッケージ内の電源リングであり、４１０はパッケージ内のグラウンドリングである。
【００３０】
続いて、図３のフローチャートについて詳しく説明する。
【００３１】
ステップ３０１において、設計情報管理部２１０は、検証処理の対象となる、レイアウト設計完了段階の設計情報を検証部２３０へ送る。
【００３２】
ステップ３０２において  検証条件設定部２２０は、入力デバイス１１０を介して入力された内容に従って検証条件を設定する。ここで検証条件とは、上記設計情報で特定されるパスコンの配置が適切かどうかを判定するための条件である。本実施例では、ダイの電源端子からパスコンを経由してダイのグラウンド端子に至る経路の長さを評価値とした場合における、許容される経路長を表す閾値（以下、許容値）を指す。
【００３３】
ステップ３０３において、検証部２３０内のダイ端子特定部２３１は、取得した設計情報を用いてダイの電源端子（以下、ダイＶＴ又はピン）を１つ特定する。最初のルーチンで例えば、設計情報内のパッケージ情報に含まれる、ダイの端子を表す情報と電源を表す信号名とによって、ダイＶＴ４０７ａが特定される。そして、２回目以降のルーチンにおいて、他のダイＶＴ４０７ｂ〜４０７ｄも順次特定されることになる（図４を参照）。特定されたダイＶＴの情報は、ＲＡＭ１０３に記憶される。
【００３４】
ステップ３０４において、検証部２３０内のダイ端子特定部２３１は、取得した設計情報を用いてダイのグラウンド端子（以下、ダイＧＴ）をすべて特定する。例えば、設計情報内のパッケージ情報に含まれる、ダイの端子を表す情報とグラウンドを表す信号名とによって、ダイＧＴ４０８ａ〜４０８ｄが特定される（図４を参照）。特定されたすべてのダイＧＴの情報は、ＲＡＭ１０３に記憶される。
【００３５】
ステップ３０５において、検証部２３０内のパスコン特定部２３２は、ステップ３０３で特定されたダイＶＴとステップ３０４で特定されたダイＧＴとに接続するプリント基板上のコンデンサをパスコンとして特定する。図４の例では、ダイＶＴ４０７ａと同電位の電源配線４０３と、ダイＧＴ４０８ａ〜４０８ｂと同電位のグラウンド配線４０４とに接続するコンデンサ４０１ａ及び４０１ｂが、パスコンとして特定されることになる。特定されたコンデンサ（パスコン）の情報は、ＲＡＭ１０３に記憶される。
【００３６】
ステップ３０６において、検証部２３０内の評価値導出部２３３は、ステップ３０３で特定されたダイＶＴから、ステップ３０５で特定されたパスコンを経由し、ステップ３０４で特定された各ダイＧＴへと至る経路の長さを評価値として導出する。特定されたパスコンが複数存在する場合にはそれぞれのパスコンについて、この評価値導出処理がなされる。例えば、図４におけるパスコン４０１ａの場合、始点をダイＶＴ４０７ａ、終点をパスコン４０１ａの電源側端子とした、面図形による最短経路探索をまず実施する。さらに、パスコン４０１ａのグラウンド側端子を始点とし、ダイＧＴ４０８ａ〜４０８ｄをそれぞれ終点として最短経路探索を実施する。そして、上記２種類の最短経路探索によって得られた経路を足した長さ（以下、ループ距離）を求める。パスコン４０１ａについては、以下の４パターンのループ距離が求められることになる。
【００３７】
１）「ダイＶＴ４０７ａ〜パスコン４０１ａの電源側端子」＋「パスコン４０１ａのグラウンド側端子〜ダイＧＴ４０８ａ」
２）「ダイＶＴ４０７ａ〜パスコン４０１ａの電源側端子」＋「パスコン４０１ａのグラウンド側端子〜ダイＧＴ４０８ｂ」
３）「ダイＶＴ４０７ａ〜パスコン４０１ａの電源側端子」＋「パスコン４０１ａのグラウンド側端子〜ダイＧＴ４０８ｃ」
４）「ダイＶＴ４０７ａ〜パスコン４０１ａの電源側端子」＋「パスコン４０１ａのグラウンド側端子〜ダイＧＴ４０８ｄ」
導出されたループ距離は、評価値としてＲＡＭ１０３に記憶される。
【００３８】
ステップ３０７において、検証部２３０内の条件違反判定部２３４は、導出された評価値（ループ距離）と、ステップ３０２で設定された検証条件（許容値としてのループ距離）とを比較し、評価値が検証条件に合致するかどうかをパスコン毎に判定する。この場合において、各パスコンについて導出された全評価値のうち、最も評価が高いもの（ここではループ距離が最も短いもの）についてこの判定がなされる。導出された評価値（ループ距離）が、許容値として設定されたループ距離（例えば13mm）よりも長い場合は、検証条件に違反すると判定し、ステップ３０８へ進む。一方、導出された評価値（ループ距離）が許容値として設定されたループ距離以下の場合は、検証条件に合致すると判定し、ステップ３０９へ進む。
【００３９】
ステップ３０８において、検証部２３０内の条件違反判定部２３４は、検証条件に違反していることを示す情報（以下、違反情報）をＲＡＭ１０３に記憶する。この違反情報は、例えば、ＩＣの回路記号及び端子名、パスコンの回路記号や座標、電源配線及びグラウンド配線の信号名などで構成される。
【００４０】
ステップ３０９において、検証部２３０は、すべてのダイＶＴが特定されたかどうかを判定する。未特定のダイＶＴがある場合はステップ３０３に戻って次のダイＶＴを１つ特定して、ステップ３０４〜３０８の各処理を繰り返す。一方、全てのダイＶＴが特定されている場合は、ステップ３１０へ進む。
【００４１】
ステップ３１０において、検証結果出力部２４０は、出力デバイス１３０に検証結果を出力する。具体的には、表示装置に検証結果を表示したり、プリンタで検証結果を印刷したりする。或いは、検証結果を記述したファイルをＨＤＤ１２０に格納したり、不図示のネットワークを介して他のＰＣ等に送信してもよい。図５は、本実施例における検証結果出力の一例を示す図である。図５（ａ）は、パスコン４０１ａ及び４０１ｂのうち、パスコン４０１ｂの評価値が検証条件に合致しないと判定された場合の結果を視覚的に示した場合の一例である。ここでは、設定された検証条件（許容値）が13mmであったのに対し、導出されたループ距離が例えば15mmであったため、レイアウト画面上に違反であったことを表す×印の記号５００が示されている。また、図５（ｂ）は、同様の検証結果を以下の項目からなる表形式で示した一例である。
【００４２】
・ＩＣの回路記号、端子名、信号名
・パスコンの回路記号、座標、実装面
・導出された評価値（ループ距離）とそれに対する判定結果
図５（ｂ）の場合において、例えば表示装置に表示された表上のパスコンの回路記号等をユーザが入力デバイス１１０を用いて選択すると、選択したパスコンがレイアウト画面上でハイライトやズーム、ポップアップ画面等によって強調表示されるようにしてもよい。なお、表形式で検証結果を出力する場合にあっては、上記ステップ３０３及び３０４で特定されたダイＶＴやダイＧＴの端子名に対応するパッケージ側の端子名を、ダイＶＴやダイＧＴの端子名に代えて用いてもよいし、或いはこれを併記してもよい。
【００４３】
以上が、本実施例に係る、パスコンの配置を検証する処理の内容である。
【００４４】
上述のステップ３０３及び３０４では、取得した設計情報からダイＶＴ及びダイＧＴの実際の位置を特定したが、設計情報に基づいてダイＶＴ及びダイＧＴの仮想的な位置を特定してもよい。図６は、仮想的なダイＶＴ及びダイＧＴを特定する方法を説明する図である。図６において、例えば、パッケージの電源配線４０５と電源リング４０９とが接続する接続点６００を仮想的なダイＶＴとして特定することが考えられる。さらに、ＩＣ４００の中心座標６０２を仮想的なダイＶＴとして特定してもよい。仮想的なダイＧＴも、仮想的なダイＶＴの特定と同様、パッケージの電源配線４０６とグラウンドリング４１０とが接続する接続点６０１やＩＣ４００の中心座標６０２を仮想的なダイＧＴとして特定してもよい。このように仮想的に電源端子やグラウンド端子を特定することで、処理全体を簡略化することができる。
【００４５】
また、本実施例では、評価値としてのループ距離を一度の処理で導出している。しかし、パッケージの設計情報とプリント基板の設計情報が同一のＣＡＤに存在しない場合も考えられる。このような場合は、それぞれ別に経路を計算してから評価値としてのループ距離を導出すればよい。
【００４６】
さらに、ループ距離の代わりにインダクタンスを求めて、これを評価値としてもよい。この場合、検証条件としては、所定のインダクタンスを表す値が許容値として設定されることになる。
【００４７】
また、本実施例では、評価値としてループ距離を算出しているが、経路が存在しない場合も考えられる。このような場合は、経路が算出されないといった違反情報を検証結果として表示することでユーザに報知すればよい。
【００４８】
以上のとおり本実施によれば、ＩＣのパッケージ内の配線を考慮してパスコン配置が適切なものであるかどうかを検証することができる。その結果、精度よくパスコンの配置を決定することが可能となる。
【実施例２】
【００４９】
実施例１は、レイアウト設計の完了後に、ＩＣのパッケージ内の配線を考慮してパスコンの配置を検証する態様であった。次に、レイアウト設計段階でパスコン配置を検証する態様について、実施例２として説明する。なお、実施例１と共通する部分については説明を省略ないしは簡略化し、以下では差異点を中心に説明するものとする。
【００５０】
図７は、本実施例に係る、パスコン配置を検証する装置としての情報処理装置１００のソフトウェア構成を示す機能ブロック図である。本実施例に係る情報処理装置１００は、設計情報管理部２１０、検証部７００及び検証結果出力部２４０で構成される。
【００５１】
設計情報管理部２１０及び検証結果出力部２４０は、実施例１と同じである。以下、本実施例の特徴である検証部７００について説明する。
【００５２】
検証部７００は、ダイ端子特定部７０１、パッケージ端子特定部７０２、評価値導出部７０３、優先順位設定部７０４で構成される。
【００５３】
ダイ端子特定部７０１は、入力された設計情報に基づいて、ダイの電源端子（ダイＶＴ）を特定する。特定されたダイＶＴの情報はＲＡＭ１０３に記憶される。
【００５４】
パッケージ端子特定部７０２は、入力された設計情報に基づいて、パッケージの電源端子（以下、パッケージＶＴ）を特定する。特定されたパッケージＶＴの情報はＲＡＭ１０３に記憶される。なお、ユーザが入力デバイス１１０を用いて入力した、パッケージの電源端子を指定する情報に基づいて、特定してもよい。
【００５５】
評価値導出部７０３は、入力された設計情報、特定されたダイＶＴの情報、特定されたパッケージＶＴの情報に基づいて、パスコンの配置を評価するための評価値を導出する。本実施例では、パッケージ内の経路長（ダイＶＴからパッケージＶＴまでの経路の長さ）を評価値として導出する。
【００５６】
優先順位設定部７０４は、評価値導出部７０３で導出した評価値に基づいて、特定されたパッケージＶＴについて優先順位を設定する。ここで優先順位とは、同電位のパッケージＶＴの中での、パスコンを接続することが望ましい優先度を示す順位であり、パッケージ内の経路が短いほど高い優先順位とする。パッケージ内の経路が短いパッケージＶＴの優先順位を高くする理由を、シミュレーション結果を用いて説明する。図８は、シミュレーションモデルを示す図であり、（ａ）はパッケージ内の経路が短いモデル、（ｂ）はパッケージ内の経路が長いモデルである。図８（ａ）は、電源リング８００と、それに接続するパッケージ内配線８０１、プリント基板上の配線８０２及びパスコン８０３で構成されている。図８（ｂ）も同様に、電源リング８１０と、それに接続するパッケージ内配線８１１、プリント基板上の配線８１２及びパスコン８１３で構成されている。そして、図８（ａ）におけるパッケージ内配線８０１の長さは、同（ｂ）におけるパッケージ内配線８１１に比べ短くなっている。この２つのモデルにおいて、点８０４及び８１４で示される計測点におけるインピーダンスをそれぞれ計測する。図９（ａ）は、両モデルにおけるインピーダンスの計測結果を示すグラフであり、実線はパッケージ内の経路が短いモデルに対応し、破線はパッケージ内の経路が長いモデルに対応している。そして、図９（ｂ）は、１ＧＨｚ（１０００ＭＨｚ）以下の周波数部分を拡大したものである。１ＧＨｚ（１０００ＭＨｚ）以下の周波数に着目すると、パッケージ内の配線長が短いモデルの方がインピーダンスが低くなっているのが分かる（図９（ｂ））。ＩＣに安定的に電源を供給するには、電源リングからパスコンまでのインピーダンスを低くすることが重要であることが分かっている。そこで、電源リングからのインピーダンスがより低いパッケージＶＴにパスコンが接続されるように、パッケージ内の経路が短いパッケージＶＴに対し、高い優先順位を設定している。設定された優先順位は、検証結果としてＲＡＭ１０３に記憶される。
【００５７】
検証結果出力部２４０は、優先順位設定部７０４で設定された優先順位を、表示装置上に表示したり、プリンタからプリント出力したり、或いは不図示のネットワークＩ／Ｆを介して検証結果のデータを送信するなどして、検出結果としてユーザに報知する。
【００５８】
図１０は、本実施例に係る、パスコン配置検証処理の流れを示すフローチャートである。この一連の処理は、ＣＰＵ１０１が、ＲＯＭ１０２に格納されているプログラムをＲＡＭ１０３にロードし、実行することで実現される。
【００５９】
ステップ１００１において、設計情報管理部２１０は、検証処理の対象となるレイアウト設計段階の設計情報を検証部７００へ送る。
【００６０】
ステップ１００２において、検証部７００内のパッケージ端子特定部７０２は、取得した設計情報を用いてパッケージＶＴを１つ特定する。図１１は、レイアウト設計段階におけるＩＣ４００のレイアウトを示す模式図である。この場合、最初のルーチンで例えば、パッケージ内電源配線４０５に接続するパッケージＶＴ１１０１ａが特定される。そして、２回目以降のルーチンにおいて、他のパッケージＶＴ１１０１ｂ〜１１０１ｄも順次特定されることになる。或いは、設計情報内のプリント基板のレイアウトに関する情報から、プリント基板上の電源配線に接続されているＩＣのパッケージＶＴを特定してもよい。特定されたパッケージＶＴの情報は、ＲＡＭ１０３に記憶される。
【００６１】
ステップ１００３において、検証部７００内のダイ端子特定部７０１は、取得した設計情報を用いてダイＶＴをすべて特定する。例えば、設計情報内のＩＣのパッケージ情報に含まれる、ダイの端子を表す情報と電源を表す信号名とによって、ダイＶＴ４０７ａ〜４０７ｄが特定される（図１１を参照）。特定されたダイＶＴの情報は、ＲＡＭ１０３に記憶される。
【００６２】
ステップ１００４において、検証部７００内の評価値導出部７０３は、ステップ１００２で特定されたパッケージＶＴから、ステップ１００３で特定された各ダイＶＴに至る経路の長さを導出する。導出された経路長は、評価値としてＲＡＭ１０３に記憶される。
【００６３】
ステップ１００５において、検証部７００は、未だ特定されていないパッケージＶＴがあるかどうかを判定する。未だ特定されていないパッケージＶＴがある場合はステップ１００２に戻って次のパッケージＶＴを特定して、ステップ１００３〜１００５の処理を繰り返す。一方、全てのパッケージＶＴが特定されている場合は、ステップ１００６へ進む。
【００６４】
ステップ１００６において、検証部７００内の優先順位設定部７０４は、特定されたすべてのパッケージＶＴについて、パスコンに接続する場合の優先順位を設定する。具体的には、まず信号名（プリント基板の電源の種類を表す信号名）が同じ電源配線に接続されているパッケージＶＴをグループ化する。図１１の例では、４つのパッケージＶＴ１１０１ａ〜１１０１ｄがグループ化される。そして、グループ化されたパッケージＶＴの中から、ステップ１００４で導出したパッケージ内経路長が短い順に、高い優先順位を設定する。図１１の場合、導出される経路長は短い順に以下のようになる。
【００６５】
・パッケージＶＴ１１０１ａ〜ダイＶＴ４０７ａの経路
・パッケージＶＴ１１０１ｂ〜ダイＶＴ４０７ｃの経路
・パッケージＶＴ１１０１ｃ〜ダイＶＴ４０７ｄの経路
・パッケージＶＴ１１０１ｄ〜ダイＶＴ４０７ｂの経路
したがって、優先順位が高い方から順に、１１０１ａ、１１０１ｂ、１１０１ｃ、１１０１ｄとなる。このようにして決定された優先順位の情報は、ＲＡＭ１０３に記憶される。
【００６６】
ステップ１００７において、検証結果出力部２４０は、出力デバイス１３０に検証結果としての優先順位を出力する。具体的には、表示装置に検証結果を表示したり、プリンタで検証結果を印刷したりする。或いは、検証結果を記述したファイルをＨＤＤ１２０に格納したり、不図示のネットワークを介して他のＰＣ等に送信してもよい。図１２は、本実施例における検証結果出力の一例を示す図である。図１２（ａ）は、パッケージＶＴ１１０１ａ〜１１０１ｄに対して設定された優先順位を視覚的に示した場合の一例であり、レイアウト画面上に優先順位が数字で表示されている。さらに、色分け等を組み合わせる等して、優先順位に応じた強調表示を行ってもよい。また、図１２（ｂ）は、ＩＣの回路記号や端子名や信号名と共に、対応する優先順位を表形式で示した一例を示している。この場合において、例えば表示装置に表示された表上のパスコンの回路記号等をユーザが入力デバイス１１０を用いて選択すると、選択したパスコンがレイアウト画面上でハイライトやズーム、ポップアップ画面等によって強調表示されるようにしてもよい。
【００６７】
以上が、本実施例に係る、パスコンの配置を検証する処理の内容である。
【００６８】
なお、優先順位の他の決定方法として、接続可能な全てのダイＶＴまでの経路長を導出して合算し、合算結果（総経路長）が短いパッケージＶＴから順に高い優先順位を設定するようにしてもよい。
【００６９】
また、本実施例では、最短経路の長さを評価値としたが、例えば、最短経路の長さの代わりにインダクタンスを求めて、これを評価値としてもよい。この場合、経路のインダクタンスが小さいほど高い優先順位を設定するようにすればよい。
【００７０】
＜実施例２の変形例＞
さらに、レイアウト完了段階（パスコンが既に配置されている状態）において、上述のようにして設定された優先順位を用いて、配置の妥当性を判定し、その判定結果を出力してもよい。具体的には、ステップ１００６で優先順位を設定した後、設計情報に基づいてパスコンを特定し、特定されたパスコンが接続しているパッケージＶＴの優先順位が高いかどうかを判定して、その判定結果も含め検証結果として出力する。図１３は、この変形例に係る検証結果出力の一例を示す図である。図１３においてパスコン４０１ｂは、優先順位が一番低いパッケージＶＴ１１０１ｄに接続されている。図１３（ａ）では、パスコン４０１ｂの配置が不適切であることを示す×印マーク１３００に加え、より優先順位の高い他の電源端子（パッケージＶＴ１１０１ｂ）への接続を促すメッセージ１３０１がレイアウト画面上に表示された様子が示されている。また、表形式の出力例である図１３（ｂ）では、ＩＣの回路記号や端子名や信号名、パスコンの回路記号、設定された優先順位に加えて、備考欄に上記メッセージ１３０１と同内容のコメントが表示されている。
【００７１】
また、レイアウト設計の部品配置段階において、上述のようにして設定された優先順位を用いて、パスコンを自動配置してもよい。具体的には、ステップ１００６で優先順位を設定した後、設計情報に基づいてパスコンを特定し、特定されたパスコンが接続している優先順位が高いパッケージＶＴの近傍へパスコンを配置する。
【００７２】
本実施例によれば、レイアウト設計段階で（或いはレイアウト完了後に）、パスコンを配置するのに適したパッケージの電源端子を容易に把握でき、効率よくパスコンを配置することが可能となる。
【実施例３】
【００７３】
次に、複数のパスコンが密集しないよう分散配置を可能にする態様について、実施例３として説明する。なお、実施例１及び２と共通する部分については説明を省略ないしは簡略化し、以下では差異点を中心に説明するものとする。
【００７４】
図１４は、本実施例に係る、パスコン配置を検証する装置としての情報処理装置１００のソフトウェア構成を示す機能ブロック図である。本実施例に係る情報処理装置１００は、設計情報管理部２１０、検証部１４００及び検証結果出力部２４０で構成される。
【００７５】
設計情報管理部２１０及び検証結果出力部２４０は実施例１及び２と同じであるため、説明を省く。
【００７６】
検証部１４００は、ダイ端子特定部７０１、パッケージ端子特定部７０２、評価値導出部７０３、優先順位設定部１４０１及び再配置部１４０２で構成される。なお、再配置部１４０２が破線で示されているのは、入力された設計情報がレイアウト設計の完了段階であった場合にのみ機能するためである。
【００７７】
ダイ端子特定部７０１、パッケージ端子特定部７０２及び評価値導出部７０３は、実施例２と同じである。
【００７８】
優先順位設定部１４０１は、実施例２に係る優先順位設定部７０４と同様、評価値導出部７０３で導出した評価値に基づいてパッケージＶＴについての優先順位を設定する。これに加え、本実施例に係る優先順位設定部１４０１は、高い優先順位が設定されたパッケージＶＴが所定範囲内に密集している場合に、密集状態が解消するように優先順位を変更する処理も行なう。ここで、密集状態が解消するようにパッケージＶＴの優先順位を変更する理由を、シミュレーション結果を用いて説明する。図１５は、シミュレーションモデルを示す図であり、（ａ）はパスコンが密集しているモデル、（ｂ）はパスコンが分散しているモデルである。図１５（ａ）は、電源リング１５００と、それに接続するパッケージ内配線１５０１、プリント基板上の配線１５０２及び互いに近接して配置された２つのパスコン１５０３で構成されている。図１５（ｂ）も同様に、電源リング１５１０と、それに接続するパッケージ内配線１５１１、プリント基板上の配線１５１２及び一定距離を保って配置されている２つのパスコン１５１３で構成されている。図１５（ａ）と図１５（ｂ）とでパッケージ内配線長やプリント基板上の配線長等の条件は同じであり、２つのパスコンの位置関係のみが異なっているものとする。この２つのモデルにおいて、点１５０４及び１５１４で示される計測点におけるインピーダンスをそれぞれ計測する。図１６（ａ）は、両モデルにおけるインピーダンスの計測結果を示すグラフであり、実線はパスコンが密集しているモデルに対応し、破線はパスコンが分散しているモデルに対応している。そして、図１６ｂ）は、１ＧＨｚ（１０００ＭＨｚ）以下の周波数部分を拡大したものである。１ＧＨｚ（１０００ＭＨｚ）以下の周波数に着目すると、パスコンが分散しているモデルの方が、インピーダンスが低くなっているのが分かる（図１６（ｂ））。前述のとおり、ＩＣへの電源の安定供給には、電源リングからパスコンまでのインピーダンスが低い方がよいので、電源リングに対してパスコンができるだけ分散して配置されるように優先順位を変更している。設定（変更）された優先順位は、検証結果としてＲＡＭ１０３に記憶される。
【００７９】
再配置部１４０２は、レイアウト設計の完了段階において、パッケージ端子特定部７０２で特定されたパッケージＶＴが互いに近接し過ぎていた場合に、変更後の優先順位に従って、パッケージＶＴが分散するようにパスコンを再配置する。
【００８０】
図１７は、本実施例に係る、パスコン配置検証処理の流れを示すフローチャートである。この一連の処理は、ＣＰＵ１０１が、ＲＯＭ１０２に格納されているプログラムをＲＡＭ１０３にロードし、実行することで実現される。
【００８１】
ステップ１７０１〜１７０６は、実施例２の図１０のフローチャートにおけるステップ１００１〜１００６にそれぞれ対応するため、以下では、ステップ１７０７以降について詳しく説明する。
【００８２】
ステップ１７０６で優先順位が設定されると、ステップ１７０７において、優先順位設定部１４０１は、設計情報内のパッケージ情報に基づいて、特定された同電位のパッケージＶＴが一定距離を保って互いに離れているかどうかを判定する。図１８は、同電位にある複数のパッケージＶＴが一定距離を保って離れているかどうかの判定手法の一例を説明する図である。図１８の例では、同電位のパッケージ電源端子として４つのパッケージＶＴ１８０１ａ〜１８０１ｄが特定され、それぞれの優先順位は高い順に、１８０１ａ、１８０１ｂ、１８０１ｃ、１８０１ｄとなっている。この場合において、まず、パッケージＶＴ１８０１ａ〜１８０１ｄのそれぞれについて、パッケージ内の電源配線と電源リング４０９との接続点を中心とした両矢印で示される所定の範囲１８０２ａ〜１８０２ｄを特定する。そして、各パッケージＶＴに対する所定範囲１８０２ａ〜１８０２ｄが重なっている箇所がないかどうかを判定し、重なっている箇所があれば、当該箇所を密集箇所として特定する。図１８の例では、優先順位が１位のパッケージＶＴ１８０１ａについての所定範囲１８０２ａと優先順位が２位のパッケージＶＴ１８０１ｂについての所定範囲１８０２ｂとの間で重なりがある（破線の丸で囲まれた部分）。そのため、パッケージＶＴ１８０１ａ及びパッケージＶＴ１８０１ｂの配置されている箇所が、密集箇所として特定されることになる。また、より簡易的な判定方法として、特定されたパッケージＶＴ同士の間を結ぶ直線距離を求め、求めた直線距離が所定の距離より短い場合に当該パッケージＶＴ同士は密集していると判定してもよい。さらには、ＩＣのパッケージの中心と特定された２つのパッケージＶＴとを結んだ２本の直線のなす角度が所定の角度より小さい場合に当該パッケージＶＴ同士は密集していると判定してもよい。判定の結果、上述のような密集箇所があると判定された場合は、ステップ１７０８に進む。一方、密集箇所がない（特定された同電位のパッケージＶＴが一定距離を保って互いに離れている）と判定された場合は、ステップ１７０９に進む。
【００８３】
ステップ１７０８において、優先順位設定部１４０１は、密集していると判定された箇所のパッケージＶＴが分散するように優先順位を変更する。例えば、上述の図１８の例では、優先順位が一番高いパッケージＶＴ１８０１ａと、優先順位が二番目に高いパッケージＶＴ１８０１ｂとが密集していると判定されている。この場合、優先順位が低い方のパッケージＶＴ１８０１ｂの優先順位を、所定範囲が重なっていない他のパッケージＶＴ１８０１ｃ及び１８０１ｄの優先順位よりも低い優先順位となるように変更する。すなわち、図１８の例では、優先順位が高い方から順に１８０１ａ、１８０１ｃ、１８０１ｄ、１８０１ｂのように変更される。
【００８４】
ステップ１７０９において、検証結果出力部２４０は、出力デバイス１３０に検証結果としての優先順位（変更後）を出力する。具体的には、表示装置に検証結果を表示したり、プリンタで検証結果を印刷したりする。或いは、検証結果を記述したファイルをＨＤＤ１２０に格納したり、不図示のネットワークを介して他のＰＣ等に送信してもよい。
【００８５】
以上が、本実施例に係る、パスコンの配置を検証する処理の内容である。
【００８６】
本実施例ではレイアウトの設計段階を念頭に、変更後の優先順位を検証結果として出力しているが、レイアウト設計完了段階であれば、変更後の優先順位に従ってパスコンが分散するよう再配置されたレイアウト図を検証結果として出力するようにしてもよい。図１９は、パスコンが再配置される様子を説明する図である。図１９の（ａ）は再配置される前の状態を示す図であり、パスコン４０１ａ（パッケージＶＴ１８０１ａ）とパスコン４０１ｂ（パッケージＶＴ１８０１ｂ）とが近接し過ぎている状態である。図１９（ｂ）は再配置された後の状態を示す図であり、優先順位が２位に変更されたパッケージＶＴ１８０１ｃと接続されるように、パスコン４０１ｂが移動しているのが分かる。
【００８７】
本実施例によれば、パスコンの分散配置を容易に実現することが可能となる。
【００８８】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015228078.tif 000003
【図２】
2015228078.tif 000004
【図３】
2015228078.tif 000005
【図４】
2015228078.tif 000006
【図５】
2015228078.tif 000007
【図６】
2015228078.tif 000008
【図７】
2015228078.tif 000009
【図８】
2015228078.tif 000010
【図９】
2015228078.tif 000011
【図１０】
2015228078.tif 000012
【図１１】
2015228078.tif 000013
【図１２】
2015228078.tif 000014
【図１３】
2015228078.tif 000015
【図１４】
2015228078.tif 000016
【図１５】
2015228078.tif 000017
【図１６】
2015228078.tif 000018
【図１７】
2015228078.tif 000019
【図１８】
2015228078.tif 000020
【図１９】
2015228078.tif 000021