(57)【特許請求の範囲】
【請求項１】
検証対象回路モデルが備えるハイインピーダンス状態の検出対象の検出対象ノードに、周期的に変動する電圧を発生する電圧源モデルを含むハイインピーダンス検出用回路モデルを接続する接続部と、
前記電圧源モデルが電圧を発生した状態で前記検証対象回路モデルを動作させて前記検出対象ノードの出力波形を計測する計測部と、
前記計測部が計測した前記出力波形に前記電圧源モデルが発生する電圧の周波数成分が含まれているか否かを判定する判定部と、
を有することを特徴とする情報処理装置。
【請求項２】
前記計測部は、前記電圧源モデルが印加する電圧の振幅を、自由に設定できることを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記計測部は、前記電圧源モデルが印加する電圧の周波数を、前記電圧源モデルが印加する電圧以外に前記検出対象ノードに印加される電圧の周波数とは異なる周波数に設定することを特徴とする請求項１記載の情報処理装置。
【請求項４】
コンピュータが、
検証対象回路モデルが備えるハイインピーダンス状態の検出対象の検出対象ノードに、周期的に変動する電圧を発生する電圧源モデルを含むハイインピーダンス検出用回路モデルを接続し、
前記電圧源モデルが電圧を発生した状態で前記検証対象回路モデルを動作させて前記検出対象ノードの出力波形を計測し、
計測した前記出力波形に前記電圧源モデルが発生する電圧の周波数成分が含まれているか否かを判定する、
ことを特徴とするハイインピーダンス状態検出方法。
【請求項５】
コンピュータに、
検証対象回路モデルが備えるハイインピーダンス状態の検出対象の検出対象ノードに、周期的に変動する電圧を発生する電圧源モデルを含むハイインピーダンス検出用回路モデルを接続し、
前記電圧源モデルが電圧を発生した状態で前記検証対象回路モデルを動作させて前記検出対象ノードの出力波形を計測し、
計測した前記出力波形に前記電圧源モデルが発生する電圧の周波数成分が含まれているか否かを判定する、
処理を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置、ハイインピーダンス状態検出方法およびプログラムに関する。
【背景技術】
【０００２】
回路シミュレータを用いて設計対象回路の動作検証を行う技術が知られている。回路シミュレータで使用される素子の特性は実際の特性よりも理想状態に近いため、シミュレーション上では、ハイインピーダンスが発生しても回路が正常に動作することがある。
【０００３】
ところが、実際の回路でハイインピーダンスが発生すると、そのハイインピーダンスが発生したノードに接続するトランジスタ素子に貫通電流が流れたり、回路動作が不安定になったりする。そのため、ハイインピーダンスが発生するノードを回路の設計段階で検出技術が知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１７１９１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＤＣ電圧源の電圧値と、ハイインピーダンス状態時の電圧値が同じになってしまうような状況を考える。この状況では、ＤＣ電圧源の電圧値を変えたハイインピーダンス検出モデルが複数必要になる。このため、シミュレーション回数が増加し、大規模な回路への適用が難しいという問題がある。
【０００６】
１つの側面では、本発明は、少ないシミュレーション回数でハイインピーダンス状態のノードを検出することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、開示の情報処理装置が提供される。この情報処理装置は、接続部と、計測部と、判定部とを有している。接続部は、検証対象回路モデルが備えるハイインピーダンス状態の検出対象の検出対象ノードに、周期的に変動する電圧を発生する電圧源モデルを含むハイインピーダンス検出用回路モデルを接続する。計測部は、電圧源モデルが電圧を発生した状態で検証対象回路モデルを動作させて検出対象ノードの出力波形を計測する。判定部は、計測部が計測した出力波形に電圧源モデルが発生する電圧の周波数成分が含まれているか否かを判定する。
【発明の効果】
【０００８】
１態様では、少ないシミュレーション回数でハイインピーダンス状態のノードを検出することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態の情報処理装置を示す図である。
【図２】検出対象ノードの一例を示す図である。
【図３】ハイインピーダンス状態の判定処理の一例を示す図である。
【図４】実施の形態の情報処理装置の処理を示すフローチャートである。
【図５】実施の形態の情報処理装置のハードウェア構成を示す図である。
【図６】変形例の検証対象回路モデルを示す図である。
【図７】計測部の計測結果を示す図である。
【発明を実施するための形態】
【００１０】
以下、実施の形態の情報処理装置を、図面を参照して詳細に説明する。
図１は、実施の形態の情報処理装置を示す図である。
実施の形態の情報処理装置（コンピュータ）１は、回路モデル記憶部１ａと、検出用回路接続部１ｂと、計測部１ｃと、判定部１ｄとを有している。
【００１１】
回路モデル記憶部１ａには、検証対象となる半導体集積回路モデル（検証対象回路モデル）が記憶されている。
設計者は、後述するキーボードやマウスを用いて情報処理装置１を操作し、回路モデル記憶部１ａに記憶されている検証対象回路モデルの中から、ハイインピーダンス状態の検出対象ノードを含む検証対象回路モデルを１つまたは複数選択することができる。なお、検出対象ノードは、１つの検証対象回路モデル内に複数含まれていてもよい。
【００１２】
検出用回路接続部１ｂは、検証対象回路モデルが選択されると、選択された検証対象モデルの検出対象ノードとグランド（ＧＮＤ）との間に検出対象ノードのハイインピーダンス状態を検出するために用いる検出用回路モデルを接続する。
【００１３】
図２は、検出対象ノードの一例を示す図である。
図２には、検出対象ノードＮ１を含む検証対象回路モデル２を図示している。図２に示す検証対象回路モデル２は、増幅器の一部である。増幅器２ａは、トランジスタＴｒ１、Ｔｒ２と、コンデンサＣ１とを有している。コンデンサＣ１の容量は、例えば１２ｐＦである。増幅器２ａに印加する駆動電圧は、２．８Ｖである。この増幅器２ａの出力段に検出対象ノードＮ１が設定されている。
【００１４】
検出用回路接続部１ｂは、受け付けた検出対象ノードＮ１とＧＮＤ間に、ハイインピーダンス状態を検出する検出用回路モデル３を接続する。検出用回路モデル３は、周期的に変動する電圧を出力する電圧源Ｖ１と抵抗Ｒ１とを有する。
【００１５】
抵抗Ｒ１の抵抗値は、検出対象ノードＮ１がハイインピーダンス状態になれば抵抗Ｒ１にはほとんど電流が流れないが、検出対象ノードＮ１がハイインピーダンス状態にならなければ抵抗Ｒ１には電位差に応じた電流が流れるように設計者が設定する。また、抵抗値Ｒ１は、トランジスタＴｒ１、Ｔｒ２のオフ抵抗よりも低くオン抵抗よりも高い値であるのが好ましい。本実施の形態では、抵抗Ｒ１の抵抗値は、一例として１０ＭΩに設定されている。
【００１６】
電圧源Ｖ１は、周波数ｆＶ１、振幅Ａ１の正弦波を出力する。振幅Ａ１は自由に設定できるが、検証対象回路モデル２の駆動電圧の１％〜２％に設定されるのが好ましい。本実施の形態では、振幅Ａ１は、一例として駆動電圧の１％の３３ｍＶに設定されている。また、電圧源Ｖ１が出力する電圧パターンは、図２に示す正弦波の他にも、三角波および矩形波を例示することができる。挿入する電圧源Ｖ１の種別は、設計者が設定することができる。
【００１７】
なお、電圧源Ｖ１が出力する電圧の周波数ｆＶ１は、検証対象回路モデル２が使用しない周波数帯であるのが好ましい。これにより、判定部１ｄが、検証対象回路モデル２がハイインピーダンス状態か否かを判定する際に、より確実に判定することができる。
【００１８】
計測部１ｃは、電圧源Ｖ１に周波数ｆＶ１、振幅Ａ１の正弦波を発生させた状態で検証対象回路モデル２を動作させて回路シミュレーションを実行し、検出対象ノードＮ１の電圧を計測する。
【００１９】
判定部１ｄは、計測部１ｃが実行した回路シミュレーションの計測結果を取得する。判定部１ｄは、計測結果に電圧源の周波数成分が観測できる区間が含まれていれば、その区間をハイインピーダンス状態であると判定する。判定部１ｄは、計測結果に電圧源の周波数成分が観測できる区間が含まれていなければ、ハイインピーダンス状態ではない（通常状態である）と判定する。
【００２０】
図３は、ハイインピーダンス状態の判定処理の一例を示す図である。
図３に示す波形は、上から、増幅器２ａのトランジスタＴｒ２に入力するゲート電圧、電圧源Ｖ１が出力する電圧、および検出対象ノードＮ１の出力電圧を示している。
【００２１】
検出対象ノードＮ１に駆動電圧が印加されていれば、抵抗Ｒ１の影響により、電圧源Ｖ１が出力する電圧の影響は見られない。しかしながら、図３に示すように、検出対象ノードＮ１がハイインピーダンス状態になり、駆動電圧から検出対象ノードＮ１に印加される電圧がなくなると、代わりに電圧源Ｖ１が出力する電圧が検出対象ノードＮ１に印加される。この場合、検出対象ノードＮ１の出力電圧の振幅は、駆動電圧の振幅２．８Ｖの１％である２８ｍＶとなる。このため、出力電圧に、振幅２８ｍＶ、周波数ｆｖ１の周波数成分を検出した場合、判定部１ｄは、検出対象ノードＮ１は、ハイインピーダンス状態であると判定する。
【００２２】
この情報処理装置１によれば、１つの検出対象ノードＮ１に対し１度のシミュレーションを実行することによりハイインピーダンス状態を検出することができる。従って、少ないシミュレーション回数でハイインピーダンス状態のノードを検出することができる。
【００２３】
また、電圧源Ｖ１が印加する電圧の振幅を駆動電圧の１％程度の周期関数にすることにより、検証対象回路モデル２の後段の回路に与える影響を低減することができる。
次に、情報処理装置１の処理を、フローチャートを用いて説明する。
【００２４】
図４は、実施の形態の情報処理装置の処理を示すフローチャートである。
［ステップＳ１］  検出用回路接続部１ｂは、設計対象回路の中から検出対象ノードの指定を受け付ける。その後、ステップＳ２に遷移する。
【００２５】
［ステップＳ２］  検出用回路接続部１ｂは、ステップＳ１にて受け付けた検出対象ノードを１つ選択する。その後、ステップＳ３に遷移する。
［ステップＳ３］  検出用回路接続部１ｂは、検出用回路モデルの電圧源に、発生する電圧の種類と周波数を設定する。その後、ステップＳ４に遷移する。
【００２６】
［ステップＳ４］  検出用回路接続部１ｂは、ステップＳ２にて選択した検出対象ノードの出力端子−ＧＮＤ間に検出用回路モデルを接続する。その後、ステップＳ５に遷移する。
【００２７】
［ステップＳ５］  検出用回路接続部１ｂは、全ての検出対象ノードに検出用回路モデルの接続が完了したか否かを判断する。全ての検出対象ノードに検出用回路モデルの接続が完了した場合（ステップＳ５のＹｅｓ）、ステップＳ６に遷移する。全ての検出対象ノードに検出用回路モデルの接続が完了していない場合（ステップＳ５のＮｏ）、ステップＳ２に遷移する。
【００２８】
［ステップＳ６］  計測部１ｃは、検出用回路モデルの電圧源にステップＳ３にて設定した種類および周波数の電圧を発生させた状態で検証対象回路モデル２を動作させて回路シミュレーションを実行し、検出対象ノードの電圧を計測する。その後、ステップＳ７に遷移する。
【００２９】
［ステップＳ７］  判定部１ｄは、検出対象ノードを１つ選択し、選択した検出対象ノードの出力波形を１つ取得する。その後、ステップＳ８に遷移する。
［ステップＳ８］  判定部１ｄは、ステップＳ７にて取得した出力波形の周波数成分を分析する。その後、ステップＳ９に遷移する。
【００３０】
［ステップＳ９］  判定部１ｄは、ステップＳ８の分析により、出力波形に検出用回路モデルが有する電圧源の周波数成分が存在するか否かを判断する。出力波形に検出用回路モデルが有する電圧源の周波数成分が存在する場合（ステップＳ９のＹｅｓ）、ステップＳ１０に遷移する。出力波形に検出用回路モデルが有する電圧源の周波数成分が存在しない場合（ステップＳ９のＮｏ）、ステップＳ１１に遷移する。
【００３１】
［ステップＳ１０］  判定部１ｄは、検出用回路モデルが有する電圧源の周波数成分が存在する区間をハイインピーダンス状態であると判定する。その後、ステップＳ１１に遷移する。
【００３２】
［ステップＳ１１］  判定部１ｄは、全ての検出対象ノードについてステップＳ８〜Ｓ１０の処理が終了したか否かを判断する。全ての検出対象ノードについてステップＳ８〜Ｓ１０の処理が終了した場合（ステップＳ１１のＹｅｓ）、図４の処理を終了する。全ての検出対象ノードについてステップＳ８〜Ｓ１０の処理が終了していない場合（ステップＳ１１のＮｏ）、ステップＳ７に遷移し、ステップＳ７以降の処理を引き続き実行する。
【００３３】
次に、情報処理装置１のハードウェア構成を説明する。
図５は、実施の形態の情報処理装置のハードウェア構成を示す図である。
情報処理装置１は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０８を介してＲＡＭ（Random Access Memory）１０２と複数の周辺機器が接続されている。
【００３４】
ＲＡＭ１０２は、情報処理装置１の主記憶装置として使用される。ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に使用する各種データが格納される。
【００３５】
バス１０８には、ハードディスクドライブ（ＨＤＤ:Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、ドライブ装置１０６、および通信インタフェース１０７が接続されている。
【００３６】
ハードディスクドライブ１０３は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ハードディスクドライブ１０３は、情報処理装置１の二次記憶装置として使用される。ハードディスクドライブ１０３には、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。なお、二次記憶装置としては、フラッシュメモリ等の半導体記憶装置を使用することもできる。
【００３７】
グラフィック処理装置１０４には、モニタ１０４ａが接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ１０４ａの画面に表示させる。モニタ１０４ａとしては、ＣＲＴ（Cathode Ray Tube）を用いた表示装置や、液晶表示装置等が挙げられる。
【００３８】
入力インタフェース１０５には、キーボード１０５ａとマウス１０５ｂとが接続されている。入力インタフェース１０５は、キーボード１０５ａやマウス１０５ｂから送られてくる信号をＣＰＵ１０１に送信する。なお、マウス１０５ｂは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、例えばタッチパネル、タブレット、タッチパッド、トラックボール等が挙げられる。
【００３９】
ドライブ装置１０６は、例えば、光の反射によって読み取り可能なようにデータが記録された光ディスクや、ＵＳＢ（Universal Serial Bus）メモリ等の持ち運び可能な記録媒体に記録されたデータの読み取りを行う。例えば、ドライブ装置１０６が光学ドライブ装置である場合、レーザ光等を利用して、光ディスク２００に記録されたデータの読み取りを行う。光ディスク２００には、Ｂｌｕ−ｒａｙ（登録商標）、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等が挙げられる。
【００４０】
通信インタフェース１０７は、ネットワーク５０に接続されている。通信インタフェース１０７は、ネットワーク５０を介して、他のコンピュータまたは通信機器との間でデータを送受信する。
【００４１】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
＜変形例＞
以下、検証対象回路モデルおよび検出用回路モデルの変形例を説明する。
【００４２】
図６は、変形例の検証対象回路モデルを示す図である。
図６に示す検証対象回路モデル４は、トランスミッションゲートである。トランスミッションゲート４ａは、トランジスタＴｒ３、Ｔｒ４を有している。このトランスミッションゲート４ａの出力段に検出対象ノードＮ２が設定されている。
【００４３】
計測部１ｃは、検証対象回路モデル４のシミュレーションに際し、入力端子４ｂにＤＣ電圧を入力する。電圧源Ｖ２が出力する電圧の波形は、三角波または矩形波のいずれかが選択可能である。
【００４４】
図７は、計測部の計測結果を示す図である。
図７（ａ）に示す波形は、上から、検証対象回路モデル４のトランジスタＴｒ３に入力するゲート電圧、電圧源Ｖ２が出力する三角波、および検出対象ノードＮ２の出力電圧Ｘを示している。また、図７（ｂ）に示す波形は、上から、検証対象回路モデル４のトランジスタＴｒ３に入力するゲート電圧、電圧源Ｖ２が出力する矩形波、および検出対象ノードＮ２の出力電圧を示している。
【００４５】
図３に示す計測結果と同様に、検出対象ノードＮ２に駆動電圧が印加されていれば、抵抗Ｒ１の影響により、電圧源Ｖ２が出力する電圧の影響は見られない。しかしながら、図７に示すように、検出対象ノードＮ２がハイインピーダンス状態になり、駆動電圧から検出対象ノードＮ２に印加される電圧がなくなると、代わりに電圧源Ｖ２の電圧が検出対象ノードＮ２に印加される。なお、ハイインピーダンス状態の検出に三角波を使用した場合、正弦波に比べ周波数成分はやや複雑になるが、信号の変化が正弦波よりも単純であるため、シミュレーションの時間を、正弦波を用いる場合に比べ短くすることができる。また、ハイインピーダンス状態の検出に矩形波を使用した場合、三角波に比べ周波数成分はやや複雑になるが、信号の変化点が三角波よりも少なくなるため、シミュレーションの時間を、三角波を用いる場合に比べ短くすることができる。
【００４６】
ところで、情報処理装置１が行った処理が、複数の装置によって分散処理されるようにしてもよい。例えば、１つの装置が、シミュレーションまでを行って対象ノードの印加電圧を計測しておき、他の装置が、その計測結果を用いてハイインピーダンス状態か否かを判定するようにしてもよい。
【００４７】
以上、本発明の情報処理装置、ハイインピーダンス状態検出方法およびプログラムを、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
【００４８】
また、本発明は、前述した各実施の形態のうちの、任意の２以上の構成（特徴）を組み合わせたものであってもよい。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、情報処理装置１が有する機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等が挙げられる。磁気記憶装置には、ハードディスクドライブ、フレキシブルディスク（ＦＤ）、磁気テープ等が挙げられる。光ディスクには、ＤＶＤ、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ／ＲＷ等が挙げられる。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）等が挙げられる。
【００４９】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【００５０】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【００５１】
また、上記の処理機能の少なくとも一部を、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＰＬＤ（Programmable Logic Device）等の電子回路で実現することもできる。
【００５２】
以上の実施の形態に関し、さらに以下の付記を開示する。
（付記１）  検証対象回路モデルが備えるハイインピーダンス状態の検出対象の検出対象ノードに、周期的に変動する電圧を発生する電圧源モデルを含むハイインピーダンス検出用回路モデルを接続する接続部と、
前記電圧源モデルが電圧を発生した状態で前記検証対象回路モデルを動作させて前記検出対象ノードの出力波形を計測する計測部と、
前記計測部が計測した前記出力波形に前記電圧源モデルが発生する電圧の周波数成分が含まれているか否かを判定する判定部と、
を有することを特徴とする情報処理装置。
【００５３】
（付記２）  前記計測部は、前記電圧源モデルが印加する電圧の振幅を、自由に設定できることを特徴とする付記１記載の情報処理装置。
（付記３）  前記計測部は、前記電圧源モデルが印加する電圧の周波数を、前記電圧源モデルが印加する電圧以外に前記検出対象ノードに印加される電圧の周波数とは異なる周波数に設定することを特徴とする付記１記載の情報処理装置。
【００５４】
（付記４）  前記接続部は、前記ハイインピーダンス検出用回路モデルを、前記検出対象ノードとグランドとの間に接続することを特徴とする付記１記載の情報処理装置。
（付記５）  コンピュータが、
検証対象回路モデルが備えるハイインピーダンス状態の検出対象の検出対象ノードに、周期的に変動する電圧を発生する電圧源モデルを含むハイインピーダンス検出用回路モデルを接続し、
前記電圧源モデルが電圧を発生した状態で前記検証対象回路モデルを動作させて前記検出対象ノードの出力波形を計測し、
計測した前記出力波形に前記電圧源モデルが発生する電圧の周波数成分が含まれているか否かを判定する、
ことを特徴とするハイインピーダンス状態検出方法。
【００５５】
（付記６）  コンピュータに、
検証対象回路モデルが備えるハイインピーダンス状態の検出対象の検出対象ノードに、周期的に変動する電圧を発生する電圧源モデルを含むハイインピーダンス検出用回路モデルを接続し、
前記電圧源モデルが電圧を発生した状態で前記検証対象回路モデルを動作させて前記検出対象ノードの出力波形を計測し、
計測した前記出力波形に前記電圧源モデルが発生する電圧の周波数成分が含まれているか否かを判定する、
処理を実行させることを特徴とするプログラム。
【符号の説明】
【００５６】
１  情報処理装置
１ａ  回路モデル記憶部
１ｂ  検出用回路接続部
１ｃ  計測部
１ｄ  判定部
２、４  検証対象回路モデル
３  検出用回路モデル
Ｎ１、Ｎ２  検出対象ノード
【図１】
0005895647.tif 000002
【図２】
0005895647.tif 000003
【図３】
0005895647.tif 000004
【図４】
0005895647.tif 000005
【図５】
0005895647.tif 000006
【図６】
0005895647.tif 000007
【図７】
0005895647.tif 000008