(57)【要約】【課題】トランジスタを含むアナログ回路シミュレーションにおいて、シミュレーション回路を変更することなく回路中の貫通電流を検知できるハイインピーダンス検出方法を提供することを目的とする。【解決手段】回路中の全ノードに対し、ハイインピーダンス状態になる条件が存在するかどうかを解析する工程を有する。また回路中の全ノードに対し、ハイインピーダンス状態により貫通電流が生じる条件が存在するかどうか解析する工程を有する。またハイインピーダンス状態になる条件と、ハイインピーダンス状態により貫通電流が生じる条件がシミュレーション実行中に成立するかどうかを検出する工程を有する。【選択図】図１
2007213456.tif 000002
【特許請求の範囲】
【請求項１】
解析対象回路中のノードがハイインピーダンスになることで貫通電流が生じる条件を抽出する貫通電流条件抽出工程を実行し、この貫通電流条件抽出工程によって貫通電流が生じる条件が存在すると判定された特定のノードと貫通電流が生じる条件が存在しないと判定されたその他のノードのうち、前記特定ノードに対してハイインピーダンス状態を検出するハイインピーダンス条件抽出工程を実行する
ハイインピーダンス検出方法。
【請求項２】
解析対象回路中のあるノードにゲート端子が繋がる対象ＭＯＳトランジスタをすべてオンとして扱って、前記対象ＭＯＳトランジスタのソース端子及びドレーン端子を起点として第１の電源電位，第２の電源電位に向けパス探索するパス探索工程と、
前記パス探索工程においてパス中のＭＯＳトランジスタのゲート端子からドレーン端子、或いはドレーン端子からゲート端子へのパスが導通しているとして扱って、前記パス探索した結果から第１の電源電位へのパスが導通しかつ第２の電源電位へのパスが導通するパス中のＭＯＳトランジスタのオン／オフ条件を貫通電流が生じる条件として抽出する工程を有する
ハイインピーダンス検出方法。
【請求項３】
前記パス探索工程では、第１の電源電位，第２の電源電位に向けパス探索するとともに、外部接続端子へのパスを探索し、前記外部接続端子の状態を第１の電源電位，第２の電源電位の状態ごとに場合分けし、
前記外部接続端子の状態も含め、第１の電源電位へのパスが導通しかつ第２の電源電位へのパスが導通するパス中のＭＯＳトランジスタのオン／オフ条件を貫通電流が生じる条件として抽出する
請求項２記載のハイインピーダンス検出方法。
【請求項４】
前記パス探索工程では、同一ＭＯＳトランジスタのゲート端子がソース端子またはドレーン端子に接続しているＭＯＳトランジスタを抵抗素子に置き換えてパス探索する
請求項２記載のハイインピーダンス検出方法。
【請求項５】
前記パス探索工程では、同一ＭＯＳトランジスタのゲート端子がソース端子またはドレーン端子に接続しているＭＯＳトランジスタを抵抗素子に置き換えて、パス中の抵抗素子を開放としてパス探索する
請求項２記載のハイインピーダンス検出方法。
【請求項６】
前記パス探索工程では、同一ＭＯＳトランジスタのゲート端子がソース端子またはドレーン端子に接続しているＭＯＳトランジスタを抵抗素子に置き換えて、パス中の抵抗素子をその抵抗素子の抵抗値によって開放として扱うか、導通として扱うかを判断してパス探索する
請求項２記載のハイインピーダンス検出方法。
【請求項７】
前記パス探索工程では、パス中のコイル素子を導通としてパス探索する
請求項２記載のハイインピーダンス検出方法。
【請求項８】
前記パス探索工程では、パス中のコンデンサ素子を開放としてパス探索する
請求項２記載のハイインピーダンス検出方法。
【請求項９】
前記パス探索工程では、複数のＭＯＳトランジスタのゲート端子が同一ノードに接続している場合、それらのＭＯＳトランジスタをどれか一つのトランジスタで表現してパス探索する
請求項２記載のハイインピーダンス検出方法。
【請求項１０】
前記パス探索工程では、パス中のダイオード素子のオン／オフをパス探索の方向とダイオード素子の接続方向の関係から導通または開放を決定してパス探索する
請求項２記載のハイインピーダンス検出方法。
【請求項１１】
解析対象回路中のノードにゲート端子が繋がるＭＯＳトランジスタが存在しない場合には、そのノードを前記その他のノードと扱ってハイインピーダンス検出処理を行わない
請求項１記載のハイインピーダンス検出方法。
【請求項１２】
解析対象回路中のあるノードを起点として第１の電源電位，第２の電源電位に向けパス探索するパス探索工程と、
前記パス探索工程においてパス中のＭＯＳトランジスタのゲート端子からドレーン端子、或いはドレーン端子からゲート端子へのパスが導通しているとして扱って、前記パス探索した結果から第１の電源電位へのパスが遮断し、かつ第２の電源電位へのパスが遮断するパス中のＭＯＳトランジスタのオン／オフ条件をハイインピーダンスが生じる条件として抽出するハイインピーダンス条件抽出工程と、
前記ハイインピーダンス条件抽出工程により抽出したハイインピーダンスが生じる条件がシミュレーション実行中に成立するかどうか監視し、成立した場合にハイインピーダンスを検知したとして警告を発する回路シミュレーション実行処理工程と
を有する
ハイインピーダンス検出方法。
【請求項１３】
解析対象回路中のあるノードにゲート端子が繋がる対象ＭＯＳトランジスタをすべてオンとして扱って、前記対象ＭＯＳトランジスタのソース端子及びドレーン端子を起点として第１の電源電位，第２の電源電位に向けパス探索するパス探索工程と、
前記パス探索工程においてパス中のＭＯＳトランジスタのゲート端子からドレーン端子、或いはドレーン端子からゲート端子へのパスが導通しているとして扱って、前記パス探索した結果から第１の電源電位へのパスが導通しかつ第２の電源電位へのパスが導通するパス中のＭＯＳトランジスタのオン／オフ条件を貫通電流が生じる条件として抽出する工程を有し、
前記回路シミュレーション実行処理工程では、第１の電源電位へのパスが導通しかつ第２の電源電位へのパスが導通するパス中のＭＯＳトランジスタのオン／オフ条件を貫通電流が生じる前記条件が成立し、かつハイインピーダンスが生じる条件が成立した場合にハイインピーダンスを検知したとして警告を発する
請求項１２に記載のハイインピーダンス検出方法。
【請求項１４】
前記パス探索工程では、第１の電源電位，第２の電源電位に向けパス探索するとともに、外部接続端子へのパスを探索し、前記外部接続端子の状態を浮いているか浮いていないかに場合分けし、
第１の電源電位へのパスが遮断し、かつ第２の電源電位へのパスが遮断するパス中のＭＯＳトランジスタのオン／オフ条件をハイインピーダンスが生じる条件として抽出する
請求項１２記載のハイインピーダンス検出方法。
【請求項１５】
前記パス探索工程では、同一ＭＯＳトランジスタのゲート端子がソース端子またはドレーン端子に接続しているＭＯＳトランジスタを抵抗素子に置き換えてパス探索する
請求項１２に記載のハイインピーダンス検出方法。
【請求項１６】
前記パス探索工程では、同一ＭＯＳトランジスタのゲート端子がソース端子またはドレーン端子に接続しているＭＯＳトランジスタを抵抗素子に置き換えて、パス中の抵抗素子を導通としてパス探索する
請求項１２に記載のハイインピーダンス検出方法。
【請求項１７】
前記パス探索工程では、パス中のコイル素子を導通としてパス探索する
請求項１２に記載のハイインピーダンス検出方法。
【請求項１８】
前記パス探索工程では、パス中のコンデンサ素子を開放としてパス探索する
請求項１２に記載のハイインピーダンス検出方法。
【請求項１９】
前記パス探索工程では、複数のＭＯＳトランジスタのゲート端子が同一ノードに接続している場合、それらのＭＯＳトランジスタをどれか一つのトランジスタで表現してパス探索する
請求項１２に記載のハイインピーダンス検出方法。
【請求項２０】
前記パス探索工程では、パス中のダイオード素子のオン／オフをパス探索の方向とダイオード素子の接続方向の関係から決定してパス探索する
請求項１２に記載のハイインピーダンス検出方法。
【請求項２１】
前記回路シミュレーション実行処理工程を、ハイインピーダンスが生じる条件がシミュレーション実行中に成立するかどうか監視するのに代わって、シミュレーション実行中には前記監視は行わずに各ノードの遷移情報を記録し、シミュレーション終了後に前記ハイインピーダンスが生じる条件と前記各ノードの遷移情報からシミュレーション実行中にハイインピーダンスが生じる条件が成立したかどうかを判断して、ハイインピーダンスが生じる条件が成立していた場合に警告を発する
請求項１２に記載のハイインピーダンス検出方法。
【請求項２２】
解析対象回路中のノードに対して、そのノードがハイインピーダンスになる事で貫通電流が生じる状態が存在するか、またどの様な条件の時に貫通電流が生じるかを抽出する貫通電流条件抽出処理部と、
前記貫通電流条件抽出処理部によって貫通電流が生じる条件が存在すると判定された特定のノードと貫通電流が生じる条件が存在しないと判定されたその他のノードのうち、前記特定ノードに対してハイインピーダンス状態に成る条件を抽出するハイインピーダンス条件抽出処理部と、
前記貫通電流条件抽出処理部により抽出した貫通電流条件と前記ハイインピーダンス条件抽出処理部によって抽出したハイインピーダンス条件とが成立するか否かを監視して貫通電流条件とハイインピーダンス条件が共に成立した場合に貫通電流が発生したとしてハイインピーダンスによる貫通電流を検出する回路シミュレーション実行処理部と
を設けたハイインピーダンス検出処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＭＯＳトランジスタを含む回路のハイインピーダンス検出方法に関する。
【背景技術】
【０００２】
近年、ＬＳＩの集積技術の進歩により、ＭＯＳトランジスタを集積したアナログ回路のＬＳＩが開発されている。このようなＬＳＩを開発する過程において、実際にＬＳＩを製造する前に電算機上で動作を確認する必要がある。そのため、ＳＰＩＣＥ(Simulation Program with Integrated Circuit Emphasis)に代表されるような回路シミュレータにて回路動作をシミュレーションしている。しかしながら、回路シミュレータにはハイインピーダンス状態を正確に扱えないという課題が存在する。その例を図２９のＭＯＳトランジスタで構成されたインバータ回路を例に説明する。
【０００３】
図２９において１，２はＭＯＳトランジスタであり、１はゲート電位がある閾値電位（Ｖｔｌ）より低い場合にオンとなるＰ型ＭＯＳトランジスタであり、２はゲート電位がある閾値電位（Ｖｔｈ）より高い場合にオンとなるＮ型ＭＯＳトランジスタである。インバータへの入力がＶｔｌより低い場合、Ｐ型ＭＯＳトランジスタ１がオン、Ｎ型ＭＯＳトランジスタ２がオフとなり、インバータの出力は“Ｈ”（≒ＶＤＤ）となる。反対にインバータへの入力がＶｔｈより高い場合、Ｎ型ＭＯＳトランジスタ２がオン、Ｐ型ＭＯＳトランジスタ１がオフとなり、インバータの出力は“Ｌ”（≒ＶＳＳ）となる。
【０００４】
インバータへの入力がハイインピーダンスの場合について説明する。ハイインピーダンス状態とは、電圧が印加されていない状態を指す。このような状態では、電荷のリークや外部ノイズの影響により、ハイインピーダンスノードの電位がＶＤＤ−ＶＳＳの中間電位になる事がある。その場合、Ｐ型ＭＯＳトランジスタ１とＮ型ＭＯＳトランジスタ２が共にオンとなり、ＶＤＤからＶＳＳに向かって貫通電流が生じる。このような状態が長時間にわたって続くことは、貫通電流により過剰な消費電力を費やしたり、場合によっては素子を破壊する恐れがあるため、回路を設計する上で注意が必要である。
【０００５】
しかしながら回路シミュレータでは、ハイインピーダンス状態での電荷リークや外部ノイズの影響を考慮できないため、ハイインピーダンスノードの電位は中間電位になるとは限らない。そのためハイインピーダンス状態による貫通電流を表現することができない。
【０００６】
そこで（特許文献１）では、シミュレーション回路に抵抗素子を挿入することで、この貫通電流を検知する方法が提案されている。その概要を図３０に示す。
図３０において１，２は図２９のインバータを構成するＭＯＳトランジスタと同じであり、３はプルアップ抵抗、４はプルダウン抵抗である。３，４は実際の回路への影響を低減させるため、高抵抗に設定されている。インバータの入力がハイインピーダンスの場合、プルアップ抵抗３とプルダウン抵抗４の影響により、ＭＯＳトランジスタ１，２のゲート電位が中間電位に引きずられ、結果としてＭＯＳトランジスタ１，２が共にオンとなり、ＶＤＤからＶＳＳに向かって貫通電流を生じさせることができる。この貫通電流をシミュレーション時に観測することで、ハイインピーダンスによる貫通電流が生じるか否かを検知することができる。
【特許文献１】特開２００３−２９６３８９公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
前記プルアップ−プルダウン抵抗を挿入する方法は、解析対象回路が図３０のＭＯＳトランジスタ１，２のように対称構造の場合には有効な手段ではあるが、アナログＭＯＳ回路のようにその構造が複雑な場合、適用できない場合が存在する。その例として図３１の回路を用いて説明する。
【０００８】
図３１において１〜４は図３０の回路構成と同じである。５はＭＯＳトランジスタであり、現在オンの状態であると仮定する。プルアップ−プルダウン抵抗を挿入する方法では、ＭＯＳトランジスタ１，２のゲート入力がハイインピーダンスの場合、プルアップ抵抗３，４により、ハイインピーダンスノードの電位が１／２（ＶＤＤ−ＶＳＳ）に引きずられる。この際、ＭＯＳトランジスタ１，２が同時にオンになれば貫通電流が流れるのだが、ＭＯＳトランジスタ５の影響によりＭＯＳトランジスタ１，２を同時にオンとするゲート電位は１／２（ＶＤＤ−ＶＳＳ）から幾らかずれる場合が存在する。これらのように回路構造が非対称な場合、貫通電流を生じさせるためのプルアップ−プルダウン抵抗を一様に決定することができない。またアナログＭＯＳ回路では微小な抵抗の変化で回路特性が変化する場合があり、実際の回路動作に影響を与えないような抵抗を挿入することは困難である。また前記プルアップ−プルダウン抵抗を挿入する方法では、ハイインピーダンスの有無を設計者自身がシミュレーション実行時に電流観測する必要があり、問題の箇所がその観測対象から漏れている場合、ハイインピーダンスを検知することができないという課題が存在する。
【０００９】
本発明は上記課題を解決するもので、シミュレーション回路に抵抗を挿入することなく、ハイインピーダンスによるＭＯＳトランジスタの貫通電流が生じるか否かを、より迅速に自動的に検知する方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
前記の目的を達成するために、本発明のハイインピーダンス検出方法は、回路中の全ノードに対し、ハイインピーダンス状態になる条件が存在するかどうかを解析する工程を有する。また回路中の全ノードに対し、ハイインピーダンス状態により貫通電流が生じる条件が存在するかどうか解析する工程を有する。また前記ハイインピーダンス状態になる条件と、ハイインピーダンス状態により貫通電流が生じる条件がシミュレーション実行中に成立するかどうかを検出する工程を有する。
【００１１】
本発明の請求項１記載のハイインピーダンス検出方法は、解析対象回路中のノードがハイインピーダンスになることで貫通電流が生じる条件を抽出する貫通電流条件抽出工程を実行し、この貫通電流条件抽出工程によって貫通電流が生じる条件が存在すると判定された特定のノードと貫通電流が生じる条件が存在しないと判定されたその他のノードのうち、前記特定ノードに対してハイインピーダンス状態を検出するハイインピーダンス条件抽出工程を実行することを特徴とする。
【００１２】
本発明の請求項２記載のハイインピーダンス検出方法は、解析対象回路中のあるノードにゲート端子が繋がる対象ＭＯＳトランジスタをすべてオンとして扱って、前記対象ＭＯＳトランジスタのソース端子及びドレーン端子を起点として第１の電源電位，第２の電源電位に向けパス探索するパス探索工程と、前記パス探索工程においてパス中のＭＯＳトランジスタのゲート端子からドレーン端子、或いはドレーン端子からゲート端子へのパスが導通しているとして扱って、前記パス探索した結果から第１の電源電位へのパスが導通しかつ第２の電源電位へのパスが導通するパス中のＭＯＳトランジスタのオン／オフ条件を貫通電流が生じる条件として抽出する工程を有することを特徴とする。
【００１３】
本発明の請求項３記載のハイインピーダンス検出方法は、請求項２において、前記パス探索工程では、第１の電源電位，第２の電源電位に向けパス探索するとともに、外部接続端子へのパスを探索し、前記外部接続端子の状態を第１の電源電位，第２の電源電位の状態ごとに場合分けし、前記外部接続端子の状態も含め、第１の電源電位へのパスが導通しかつ第２の電源電位へのパスが導通するパス中のＭＯＳトランジスタのオン／オフ条件を貫通電流が生じる条件として抽出することを特徴とする。
【００１４】
本発明の請求項４記載のハイインピーダンス検出方法は、請求項２において、前記パス探索工程では、同一ＭＯＳトランジスタのゲート端子がソース端子またはドレーン端子に接続しているＭＯＳトランジスタを抵抗素子に置き換えてパス探索することを特徴とする。
【００１５】
本発明の請求項５記載のハイインピーダンス検出方法は、請求項２において、前記パス探索工程では、同一ＭＯＳトランジスタのゲート端子がソース端子またはドレーン端子に接続しているＭＯＳトランジスタを抵抗素子に置き換えて、パス中の抵抗素子を開放としてパス探索することを特徴とする。
【００１６】
本発明の請求項６記載のハイインピーダンス検出方法は、請求項２において、前記パス探索工程では、同一ＭＯＳトランジスタのゲート端子がソース端子またはドレーン端子に接続しているＭＯＳトランジスタを抵抗素子に置き換えて、パス中の抵抗素子をその抵抗素子の抵抗値によって開放として扱うか、導通として扱うかを判断してパス探索することを特徴とする。
【００１７】
本発明の請求項７記載のハイインピーダンス検出方法は、請求項２において、前記パス探索工程では、パス中のコイル素子を導通としてパス探索することを特徴とする。
本発明の請求項８記載のハイインピーダンス検出方法は、請求項２において、前記パス探索工程では、パス中のコンデンサ素子を開放としてパス探索することを特徴とする。
【００１８】
本発明の請求項９記載のハイインピーダンス検出方法は、請求項２において、前記パス探索工程では、複数のＭＯＳトランジスタのゲート端子が同一ノードに接続している場合、それらのＭＯＳトランジスタをどれか一つのトランジスタで表現してパス探索することを特徴とする。
【００１９】
本発明の請求項１０記載のハイインピーダンス検出方法は、請求項２において、前記パス探索工程では、パス中のダイオード素子のオン／オフをパス探索の方向とダイオード素子の接続方向の関係から導通または開放を決定してパス探索することを特徴とする。
【００２０】
本発明の請求項１１記載のハイインピーダンス検出方法は、請求項１において、解析対象回路中のノードにゲート端子が繋がるＭＯＳトランジスタが存在しない場合には、そのノードを前記その他のノードと扱ってハイインピーダンス検出処理を行わないことを特徴とする。
【００２１】
本発明の請求項１２記載のハイインピーダンス検出方法は、解析対象回路中のあるノードを起点として第１の電源電位，第２の電源電位に向けパス探索するパス探索工程と、前記パス探索工程においてパス中のＭＯＳトランジスタのゲート端子からドレーン端子、或いはドレーン端子からゲート端子へのパスが導通しているとして扱って、前記パス探索した結果から第１の電源電位へのパスが遮断し、かつ第２の電源電位へのパスが遮断するパス中のＭＯＳトランジスタのオン／オフ条件をハイインピーダンスが生じる条件として抽出するハイインピーダンス条件抽出工程と、前記ハイインピーダンス条件抽出工程により抽出したハイインピーダンスが生じる条件がシミュレーション実行中に成立するかどうか監視し、成立した場合にハイインピーダンスを検知したとして警告を発する回路シミュレーション実行処理工程とを有することを特徴とする。
【００２２】
本発明の請求項１３記載のハイインピーダンス検出方法は、請求項１２において、解析対象回路中のあるノードにゲート端子が繋がる対象ＭＯＳトランジスタをすべてオンとして扱って、前記対象ＭＯＳトランジスタのソース端子及びドレーン端子を起点として第１の電源電位，第２の電源電位に向けパス探索するパス探索工程と、前記パス探索工程においてパス中のＭＯＳトランジスタのゲート端子からドレーン端子、或いはドレーン端子からゲート端子へのパスが導通しているとして扱って、前記パス探索した結果から第１の電源電位へのパスが導通しかつ第２の電源電位へのパスが導通するパス中のＭＯＳトランジスタのオン／オフ条件を貫通電流が生じる条件として抽出する工程を有し、前記回路シミュレーション実行処理工程では、第１の電源電位へのパスが導通しかつ第２の電源電位へのパスが導通するパス中のＭＯＳトランジスタのオン／オフ条件を貫通電流が生じる前記条件が成立し、かつハイインピーダンスが生じる条件が成立した場合にハイインピーダンスを検知したとして警告を発することを特徴とする。
【００２３】
本発明の請求項１４記載のハイインピーダンス検出方法は、請求項１２において、前記パス探索工程では、第１の電源電位，第２の電源電位に向けパス探索するとともに、外部接続端子へのパスを探索し、前記外部接続端子の状態を浮いているか浮いていないかに場合分けし、第１の電源電位へのパスが遮断し、かつ第２の電源電位へのパスが遮断するパス中のＭＯＳトランジスタのオン／オフ条件をハイインピーダンスが生じる条件として抽出することを特徴とする。
【００２４】
本発明の請求項１５記載のハイインピーダンス検出方法は、請求項１２において、パス探索工程では、同一ＭＯＳトランジスタのゲート端子がソース端子またはドレーン端子に接続しているＭＯＳトランジスタを抵抗素子に置き換えてパス探索することを特徴とする。
【００２５】
本発明の請求項１６記載のハイインピーダンス検出方法は、請求項１２において、前記パス探索工程では、同一ＭＯＳトランジスタのゲート端子がソース端子またはドレーン端子に接続しているＭＯＳトランジスタを抵抗素子に置き換えて、パス中の抵抗素子を導通としてパス探索することを特徴とする。
【００２６】
本発明の請求項１７記載のハイインピーダンス検出方法は、請求項１２において、前記パス探索工程では、パス中のコイル素子を導通としてパス探索することを特徴とする。
本発明の請求項１８記載のハイインピーダンス検出方法は、請求項１２において、前記パス探索工程では、パス中のコンデンサ素子を開放としてパス探索することを特徴とする。
【００２７】
本発明の請求項１９記載のハイインピーダンス検出方法は、請求項１２において、前記パス探索工程では、複数のＭＯＳトランジスタのゲート端子が同一ノードに接続している場合、それらのＭＯＳトランジスタをどれか一つのトランジスタで表現してパス探索することを特徴とする。
【００２８】
本発明の請求項２０記載のハイインピーダンス検出方法は、請求項１２において、前記パス探索工程では、パス中のダイオード素子のオン／オフをパス探索の方向とダイオード素子の接続方向の関係から決定してパス探索することを特徴とする。
【００２９】
本発明の請求項２１記載のハイインピーダンス検出方法は、請求項１２において、前記回路シミュレーション実行処理工程を、ハイインピーダンスが生じる条件がシミュレーション実行中に成立するかどうか監視するのに代わって、シミュレーション実行中には前記監視は行わずに各ノードの遷移情報を記録し、シミュレーション終了後に前記ハイインピーダンスが生じる条件と前記各ノードの遷移情報からシミュレーション実行中にハイインピーダンスが生じる条件が成立したかどうかを判断して、ハイインピーダンスが生じる条件が成立していた場合に警告を発することを特徴とする。
【発明の効果】
【００３０】
この構成によると、ＭＯＳトランジスタを含む回路シミュレーションにおいて、ハイインピーダンス状態になる条件が存在するかどうかを解析する工程と、前記工程により得られたハイインピーダンス状態になる条件がシミュレーション実行中に成立するかどうかを検出する工程により、シミュレーションの回路構成を変更することなく、ハイインピーダンス状態を自動的に検知することができる。またハイインピーダンス状態により貫通電流が生じる条件が存在するかどうかを解析する工程と、前記工程により得られた貫通電流が生じる条件が存在するノードに対してのみハイインピーダンス状態を検出することで、擬似エラーの無い、実際に貫通電流を生じさせるハイインピーダンス状態のみを効率的に検出することができ、貫通電流の無い高品質のＬＳＩの開発に寄与できる。
【発明を実施するための最良の形態】
【００３１】
（第１の実施形態）
図１は本発明のハイインピーダンス検出方法を実行するハイインピーダンス検出処理装置を示す。図２はこの具体的な構成を示すフローチャートである。
【００３２】
ハイインピーダンス検出処理装置は、貫通電流条件抽出処理部６と、ハイインピーダンス条件抽出処理部７と、回路シミュレーション実行処理部８とで構成されている。回路シミュレーション実行処理部８には貫通電流検出処理部９も設けられている。このハイインピーダンス検出処理装置は電子計算機を主要部として構成されている。
【００３３】
貫通電流条件抽出処理部６は、集積回路中のあるノードに対して、そのノードがハイインピーダンスになる事で貫通電流が生じる状態が存在するか、またどの様な条件の時に貫通電流が生じるかを抽出する。
【００３４】
ハイインピーダンス条件抽出処理部７は、集積回路中のあるノードに対して、そのノードがハイインピーダンスになる状態が存在するか、またどの様な条件の時にハイインピーダンス状態に成るかを抽出する。
【００３５】
回路シミュレーション実行処理部８は、ＳＰＩＣＥに代表される回路シミュレータを用いてシミュレーションを実行する。貫通電流検出処理部９は、回路シミュレーション実行処理部８と連動して処理を行う処理部で、シミュレーション実行中に貫通電流条件抽出処理部６により抽出した貫通電流条件とハイインピーダンス条件抽出処理部７により抽出したハイインピーダンス条件とが成立するか否かを監視し、貫通電流条件とハイインピーダンス条件が共に成立した場合に貫通電流が発生したとして、ハイインピーダンスによる貫通電流を検出する。
【００３６】
この構成により、ハイインピーダンス条件抽出処理部７により抽出したハイインピーダンス条件を、シミュレーション実行中に貫通電流検出処理部９が監視することで、集積回路中にハイインピーダンス状態が生じた場合、そのハイインピーダンスを自動的に検知できる。
【００３７】
また、貫通電流条件抽出処理部６により抽出した貫通電流条件が成立した場合のみ、ハイインピーダンス検出を行うので、処理対象ノードのハイインピーダンス状態が実際に貫通電量を生じさせる場合にのみ警告を促すことができ、擬似エラーの無い貫通電流検知を行うことができる。なお、貫通電流条件抽出処理部６により貫通電流が生じる条件が無いことが証明されたノードに対しては、ハイインピーダンス条件抽出処理及び貫通電流検出処理を行わないので、同じ計算能力の電子計算機を使用していても処理時間の短縮を実現できる。
【００３８】
このハイインピーダンス検出処理装置は、図２に示すように運転されている。
始めに、ステップＳ１で処理対象のノードを処理対象ノードとして選択する。
次にステップＳ２では、前記処理対象ノードに対して貫通電流条件抽出処理部６により貫通電流条件抽出処理を行う。
【００３９】
ステップＳ３では、ステップＳ２での貫通電流条件抽出処理の結果にもとづいて貫通電流が生じる条件の有無を調べる。このステップＳ３での結果に応じて「貫通電流が生じる条件が存在する」場合には、ステップＳ４でハイインピーダンス条件抽出処理部７によりハイインピーダンス条件抽出処理を行う。そしてステップＳ４に次いでステップＳ５では、集積回路中の全てのノードが処理対象ノードになったかどうか調べる。
【００４０】
なお、このステップＳ３での結果が「貫通電流が生じる条件が無い」場合には、ステップＳ４を飛び越してステップＳ５を実行する。
ステップＳ５において、まだ処理対象ノードになっていないノードが存在する場合には、ステップＳ６で処理対象のノードを変更してステップＳ２に戻ってステップＳ３，ステップＳ４を実行する。ステップＳ５において、全てのノードが処理対象ノードになっていると判定すると、ステップＳ７を実行する。
【００４１】
ステップＳ７では、回路シミュレーション実行処理部８により回路シミュレーションを実行し、貫通電流検出処理部９によりハイインピーダンス条件が存在するノードに対してのみ貫通電流検出処理を行う。
【００４２】
図３を解析対象回路とした場合を例に挙げて、貫通電流条件抽出処理部６の構成を詳細に説明する。
ここでは図３に示した解析対象回路の処理対象ノード１０に対して貫通電流条件抽出処理を行う場合について説明する。
【００４３】
Ｍ１〜Ｍ８はＭＯＳトランジスタである。説明を容易にするため、全てＮ型ＭＯＳトランジスタにて表現しているが、Ｎ型ＭＯＳトランジスタ、Ｐ型ＭＯＳトランジスタが混在する場合も同等である。各ＭＯＳトランジスタにはｓ（ソース），ｇ（ゲート），ｄ（ドレーン）の３端子が存在し、ｇ端子の電圧によりそのＭＯＳトランジスタのオン／オフが決まる。ここでいうオンとは、ｓ端子−ｄ端子間の抵抗が十分小さい事を意味し、オフとは、ｓ端子−ｄ端子間の抵抗が十分大きい事を意味する。
【００４４】
貫通電流条件抽出処理部６では、処理対象ノード１０がｇ端子に繋がるＭＯＳトランジスタを対象ＭＯＳトランジスタとして以下の処理を行う。
図３の解析対象回路では、ＭＯＳトランジスタＭ５，Ｍ７が対象ＭＯＳトランジスタである。前提条件としてトランジスタＭ５，Ｍ７はオン状態として扱う。ここで処理対象ノード１０にｇ端子が繋がるトランジスタが存在しない場合には、その処理対象ノードがハイインピーダンスになっても貫通電流は生じないことを意味し、貫通電流条件は存在しない。また前記ハイインピーダンス検出方法のフローで説明した通り、貫通電流条件が存在しない場合、ハイインピーダンス条件も存在しない。
【００４５】
このように、処理対象ノード１０にｇ端子が繋がるトランジスタＭ５，Ｍ７が存在する場合には、始めに、対象となるトランジスタＭ５，Ｍ７のｓ端子とｄ端子を起点とし、第１の電源電位としてのＶＤＤ，第２の電源電位としてのＶＳＳに向かって回路をパストレースする。ここでの電位は、ＶＤＤ  ＞  ＶＳＳ  である。
【００４６】
回路をパストレースする際、ｓ端子からｄ端子あるいはｄ端子からｓ端子へのパスはパスが通っているとして扱い、ｇ端子に到達した場合はパスが中断しているとして扱う。
なお、パス中にコンデンサ素子が存在する場合には、パスは中断しているものとして扱う。パス中にコイル素子が存在する場合には、パスは通っているものとして扱う。対象となるトランジスタＭ５の場合のパストレース結果を図４に示す。
【００４７】
・  トランジスタＭ５のｄ端子とＶＤＤとのパスについては、トランジスタＭ５のｄ端子がＶＤＤに直接に接続されたパス有り。
・  トランジスタＭ５のｄ端子とＶＳＳとのパスについては、ＶＳＳへのパス無し。
【００４８】
・  トランジスタＭ５のｓ端子とＶＤＤとのパスについては、トランジスタＭ５のｓ端子が、トランジスタＭ６のｓ端子とトランジスタＭ６のｄ端子間を介してＶＤＤに接続されたパス有り。
【００４９】
・  トランジスタＭ５のｓ端子とＶＳＳとのパスについては、トランジスタＭ７のｄ端子とｓ端子間と、トランジスタＭ８のｄ端子とｓ端子間との、直列回路を介してＶＳＳに接続されたパス有り。
【００５０】
この図４に示したパストレース結果から、トランジスタＭ５のｄ端子からＶＤＤへ繋がるパスは、直接にＶＤＤへ接続していることが判り、トランジスタＭ５のｄ端子からＶＳＳへのパスは存在しないことが判る。
【００５１】
また、トランジスタＭ５のｓ端子からＶＤＤへ繋がるパスは、トランジスタＭ６を介してＶＤＤへ接続していることが判り、トランジスタＭ５のｓ端子からＶＳＳへのパスは、トランジスタＭ７，Ｍ８を介してＶＳＳへ接続していることが判る。
【００５２】
この図４のパストレース結果から、次の貫通電流条件を導き出す。
つまり、トランジスタＭ５のｄ端子からｓ端子、或いはｓ端子からｄ端子へ貫通電流が生じる条件は、トランジスタＭ５のｄ端子からＶＤＤへのパスがオンで、かつ、トランジスタＭ５のｓ端子からＶＳＳのパスがオンの場合」か、「トランジスタＭ５のｓ端子からＶＤＤへのパスがオンでかつ、トランジスタＭ５のｄ端子からＶＳＳのパスがオンの場合」である。
【００５３】
この条件を考慮して図４のパストレース結果から図５の貫通電流条件抽出結果を得ることができる。図５では各トランジスタのオン／オフ状態を論理演算子を用いて表現しており、オンを真、オフを偽として扱っている。つまり、Ｍ７＊Ｍ８とは論理演算子のＡＮＤ（＊）を用いてトランジスタＭ７，Ｍ８が共にオンである事を表している。以後、論理演算子として、ＡＮＤ（＊）、ＯＲ（＋）、否定（ ￣ ）、真（１）、偽（０）で表す事とする。
【００５４】
ここで、前提条件によりトランジスタＭ５，Ｍ７はオンなので、Ｍ７＝１として扱い、トランジスタＭ５を対象トランジスタとした場合の貫通電流条件抽出結果はＭ８、つまりトランジスタＭ８がオンになる場合にのみ貫通電流が生じる可能性があるという結果が得られる。
【００５５】
次に対象トランジスタがトランジスタＭ７であった場合のパストレース結果を図６に示す。
・  トランジスタＭ７のｄ端子とＶＤＤとのパスについては、トランジスタＭ７のｄ端子は、トランジスタＭ５のｓ端子とトランジスタＭ５のｄ端子間を介してＶＤＤに接続されたパス有り。かつ、トランジスタＭ７のｄ端子は、トランジスタＭ６のｓ端子とトランジスタＭ６のｄ端子間を介してＶＤＤに接続されたパス有り。
【００５６】
・  トランジスタＭ７のｄ端子とＶＳＳとのパスについては、トランジスタＭ７のｄ端子はＶＳＳへのパス無し。
・  トランジスタＭ７のｓ端子とＶＤＤとのパスについては、ＶＤＤへのパス無し。
【００５７】
・  トランジスタＭ７のｓ端子とＶＳＳとのパスについては、トランジスタＭ７のｓ端子が、トランジスタＭ８のｄ端子とｓ端子間を介してＶＳＳに接続されたパス有り。
この結果から貫通電流条件を導き出すと、トランジスタＭ７のｄ端子からｓ端子、或いはｓ端子からｄ端子へ貫通電流が生じる条件は、「トランジスタＭ７のｄ端子からＶＤＤへのパスがオンで、かつ、トランジスタＭ７のｓ端子からＶＳＳのパスがオンの場合」か、「トランジスタＭ７のｓ端子からＶＤＤへのパスがオンで、かつ、トランジスタＭ７のｄ端子からＶＳＳのパスがオンの場合」である。
【００５８】
この条件を考慮して、図６のパストレース結果から図７の貫通電流条件抽出結果を得ることができる。
図７において（Ｍ５＋Ｍ６）・Ｍ８は、トランジスタＭ５かトランジスタＭ６がオンで、かつ、トランジスタＭ８がオンである事を意味している。
【００５９】
ここで、前提条件によりトランジスタＭ５，Ｍ７はオンなのでＭ５＝１として扱い、トランジスタＭ７を対象トランジスタとした場合の貫通電流条件抽出結果はＭ８、つまりトランジスタＭ８がオンになる場合にのみ貫通電流が生じる可能性があるという結果が得られる。処理対象ノード１０の貫通電流条件は、トランジスタＭ５を対象トランジスタとした場合の貫通電流条件抽出結果とトランジスタＭ７を対象トランジスタとした場合の貫通電流条件抽出結果の論理和なので、トランジスタＭ８がオンということになる。
【００６０】
次に、ハイインピーダンス条件抽出処理部７の構成を詳細に説明する。
図３の解析対象回路において、トランジスタＭ１，Ｍ２，Ｍ３，Ｍ４で構成されている回路に対して、前記処理対象ノード１０を起点として、ＶＤＤ，ＶＳＳに向かって回路をパストレースする。パストレースする方法は貫通電流条件抽出処理にて行った方法と同じである。図８に処理対象ノード１０を起点としたパストレース結果を示す。
【００６１】
・  処理対象ノード１０は、トランジスタＭ３のｓ端子とｄ端子間と、トランジスタＭ１のｓ端子とｄ端子間との直列回路を介してＶＤＤに接続されたパス有り。
・  処理対象ノード１０は、トランジスタＭ４のｓ端子とｄ端子間と、トランジスタＭ１のｓ端子とｄ端子間との直列回路を介してＶＤＤに接続されたパス有り。
【００６２】
・  処理対象ノード１０は、トランジスタＭ３のｓ端子とｄ端子間と、トランジスタＭ２のｄ端子とｓ端子間との直列回路を介してＶＳＳに接続されたパス有り。
・  処理対象ノード１０は、トランジスタＭ４のｓ端子とｄ端子間と、トランジスタＭ２のｄ端子とｓ端子間との直列回路を介してＶＳＳに接続されたパス有り。
【００６３】
次に、この図８のパストレース結果からハイインピーダンス条件を導き出す。処理対象ノード１０がハイインピーダンスになる条件は、「処理対象ノード１０からＶＤＤ，ＶＳＳへのパスが全てオフの場合」である。この条件を考慮して図８のパストレース結果から図９のハイインピーダンス条件抽出結果を得ることができる。
【００６４】
図９のハイインピーダンス条件抽出結果は、トランジスタＭ３がオフかつトランジスタＭ４がオフ、或いはトランジスタＭ１がオフかつトランジスタＭ２がオフである事を意味している。これらの結果から、処理対象ノード１０がハイインピーダンスになる条件は、「トランジスタＭ３，Ｍ４のトランジスタがオフの場合」か、「トランジスタＭ１，Ｍ２のトランジスタがオフの場合」ということになる。
【００６５】
さらに貫通電流検出処理部９では、シミュレーション実行処理と同期して、各トランジスタのオン／オフ状態を監視する。例えばトランジスタのｇ端子の電位がある閾値電位Ｖｔｈより高いか低いかをシミュレーションに同期して監視し続け、ｇ端子の電位がＶｔｈより高い場合はオン、Ｖｔｈより低い場合オフと判断する。このトランジスタのオン／オフの条件はトランジスタの特性等から判断する。図３の処理対象ノード１０においては、前記貫通電流条件抽出処理部６およびハイインピーダンス条件抽出処理部７により、図１０の貫通電流検出条件が導かれている。
【００６６】
この貫通電流検出条件では、シミュレーション実行中にトランジスタＭ８，Ｍ１，Ｍ２，Ｍ３，Ｍ４のゲート端子の電位を監視し続け、ある時刻にトランジスタＭ８のｇ端子の電位がＶｔｈより高く、トランジスタＭ３のｇ端子の電位がＶｔｈより低く、トランジスタＭ４のｇ端子の電位がＶｔｈより低い場合に貫通電流検出の警告をログ等に出力する。または、ある時刻にＭトランジスタ８のｇ端子の電位がＶｔｈより高く、トランジスタＭ１のｇ端子の電位がＶｔｈより低く、トランジスタＭ２のｇ端子の電位がＶｔｈより低い場合に貫通電流検出の警告を貫通電流検出結果としてログ等に出力する。図１１にその貫通電流検出結果を示す。
【００６７】
図１１の例では貫通電流検出結果として、貫通電流が生じた時刻およびその貫通電流を生じさせる原因となった全てのトランジスタの状態を表示している。
具体的には、シミュレーション開始から５００ｍｓのタイミングにハイインピーダンスが発生し、その原因はトランジスタＭ８，Ｍ４がオンで、ＭＯＳトランジスＭ３がオフであった。シミュレーション開始から６００ｍｓのタイミングにハイインピーダンスが発生し、その原因はトランジスタＭ８がオンで、ＭＯＳトランジスＭ１，Ｍ２がオフであった。
【００６８】
（第２の実施形態）
図１２，図１３，図１４，図１５，図１６，図１７は本発明の第２の実施形態を示している。
【００６９】
図１２は第２の実施形態の解析対象回路図、図１３は同実施形態の解析対象回路の仮想回路図、図１４は同実施の形態のトランジスタＭ５を対象トランジスタとした場合のパストレース結果説明図、図１５は同実施の形態のトランジスタＭ５を対象トランジスタとした場合の貫通電流条件抽出結果説明図、図１６は同実施の形態の処理対象ノードを起点としたパストレース結果説明図、図１７は同実施の形態のハイインピーダンス条件抽出結果説明図である。なお、ハイインピーダンス検出装置の構成およびハイインピーダンス検出方法のフローは図１，図２と同じである。
【００７０】
図１２に示すアナログＭＯＳ回路では、トランジスタのｄ端子を同じトランジスタのｇ端子に接続し、フィードバックループを構造している。Ｍ１〜Ｍ８はトランジスタで、トランジスタＭ１，Ｍ７がそのフィードバックループ構造のトランジスタである。
【００７１】
この第２の実施形態では、貫通電流条件抽出処理部６とハイインピーダンス条件抽出処理部７のパストレース処理において、前記フィードバックループ構造になっているトランジスタＭ１，Ｍ７を抵抗素子として扱う。図１３にトランジスタＭ１，Ｍ７を、抵抗素子Ｒ１，Ｒ２の抵抗素子に置き換えた仮想回路を示す。
【００７２】
図１２の処理対象ノード１１に対して貫通電流条件抽出処理とハイインピーダンス条件抽出処理を行う場合の処理方法を説明する。
なお、以下に示す処理方法は、図１２に示したフィードバックループ構造のトランジスタを含む回路だけではなく、初めから図１３の回路図のように抵抗素子を含む回路に対しても同様に適用できる。
【００７３】
貫通電流条件抽出処理部６は、処理対象ノード１１がｇ端子に繋がるトランジスタを対象トランジスタとして以下の処理を行う。この場合、図１３ではトランジスタＭ５のみがそれに相当する。前提条件として、トランジスタＭ５をオン状態として扱う。始めに第１の実施形態の貫通電流条件抽出処理と同様、対象トランジスタＭ５のｄ端子とｓ端子を起点とし、ＶＤＤ，ＶＳＳに向かって回路をパストレースする。なお、回路をパストレースする際、抵抗素子はパスが通っているとして扱う。図１４にトランジスタＭ５を対象トランジスタとしたパストレース結果を示す。
【００７４】
・  トランジスタＭ５のｄ端子とＶＤＤとのパスについては、ＶＤＤに直接に接続されたパス有り。
・  トランジスタＭ５のｄ端子とＶＳＳとのパスについては、ＶＳＳへのパス無し。
【００７５】
・  トランジスタＭ５のｓ端子とＶＤＤとのパスについては、トランジスタＭ５のｓ端子が、トランジスタＭ６のｓ端子とトランジスタＭ６のｄ端子間を介してＶＤＤに接続されたパス有り。
【００７６】
・  トランジスタＭ５のｓ端子とＶＳＳとのパスについては、抵抗素子Ｒ２と、トランジスタＭ８のｄ端子とｓ端子間との、直列回路を介してＶＳＳに接続されたパス有り。
次に図１４のパストレース結果から貫通電流条件を導き出す。図１３の回路のトランジスタＭ５のｄ端子からｓ端子、或いはｓ端子からｄ端子へ貫通電流が生じる条件は、「トランジスタＭ５のｄ端子からＶＤＤへのパスがオンで、かつ、トランジスタＭ５のｓ端子からＶＳＳのパスがオンの場合」か、「トランジスタＭ５のｓ端子からＶＤＤへのパスがオンで、かつ、トランジスタＭ５のｄ端子からＶＳＳのパスがオンの場合」である。この条件を考慮して図１４のパストレース結果から図１５の貫通電流条件抽出結果を得ることができる。
【００７７】
図１５の貫通電流条件抽出結果では貫通電流が生じる条件はＲ２＊Ｍ８である。ここで、パス中に抵抗素子が存在する場合、その抵抗の抵抗値によってその抵抗をオンとして扱うかオフとして扱うかを判断する。例えば、寄生抵抗のように非常に小さい抵抗値の場合にはオンとして扱い、フィードバックループ構造のＭＯＳから変換された抵抗のように大きい抵抗値の場合にはオフとして扱う。図１５の貫通電流条件抽出結果の場合、Ｒ２の抵抗値が十分小さいと判断できる場合はＲ２をオンとして扱い、貫通電流が生じる条件はＭ８となる。つまり、トランジスタＭ８がオンの場合にのみ貫通電流が生じる可能性があることが判る。Ｒ２の抵抗値が十分大きいと判断できる場合はＲ２をオフとして扱い、貫通電流が生じる条件は０となる。つまり貫通電流が生じる可能性がないことが判る。
【００７８】
ハイインピーダンス条件抽出処理部７では、第１の実施形態のハイインピーダンス条件抽出処理と同様、処理対象ノード１１を起点とし、ＶＤＤ，ＶＳＳに向かって回路をパストレースする。パストレースする方法は貫通電流条件抽出処理部６にて行った方法と同じである。図１６に処理対象ノード１１を起点としたパストレース結果を示す。
【００７９】
・  処理対象ノード１１は、トランジスタＭ３のｓ端子とｄ端子の間と、抵抗素子Ｒ１との直列回路を介してＶＤＤに接続されたパス有り。
・  処理対象ノード１１は、トランジスタＭ４のｓ端子とｄ端子の間と、抵抗素子Ｒ１との直列回路を介してＶＤＤに接続されたパス有り。
【００８０】
・  処理対象ノード１１は、抵抗素子Ｒ２とトランジスタＭ５のｓ端子とｄ端子の間と、の直列回路を介してＶＤＤに接続されたパス有り。
・  処理対象ノード１１は、抵抗素子Ｒ２とトランジスタＭ６のｓ端子とｄ端子の間と、の直列回路を介してＶＤＤに接続されたパス有り。
【００８１】
・  処理対象ノード１１は、トランジスタＭ３のｓ端子とｄ端子の間と、トランジスタＭ２のｄ端子とｓ端子の間との直列回路を介してＶＳＳ接続されたパス有り。
・  処理対象ノード１１は、トランジスタＭ４のｓ端子とｄ端子の間と、トランジスタＭ２のｄ端子とｓ端子の間との直列回路を介してＶＳＳ接続されたパス有り。
【００８２】
・  処理対象ノード１１は、トランジスタＭ８のｄ端子とｓ端子の間を介してＶＳＳ接続されたパス有り。
次に図１６のパストレース結果からハイインピーダンス条件を導き出す。
【００８３】
処理対象ノード１１がハイインピーダンスになる条件は、処理対象ノード１１からＶＤＤ，ＶＳＳへのパスが全てオフの場合である。なお、ハイインピーダンス条件抽出処理では全ての抵抗素子をオンとして扱う。この条件を考慮して図１６のパストレース結果から図１７のハイインピーダンス条件抽出結果を得ることができる。
【００８４】
図１７のハイインピーダンス条件抽出結果は、トランジスタＭ３，Ｍ４，Ｍ１，Ｍ２，Ｍ８のトランジスタ全てがオフになった時に、図１２，図１３の回路の処理対象ノード１１がハイインピーダンス状態になることを意味している。
【００８５】
第１の実施形態と同様に、上記処理により得られた貫通電流条件とハイインピーダンス条件を、貫通電流検出処理部９がシミュレーション実行中に監視することで、フィードバック構造を持ったトランジスタを含む回路及び抵抗素子を含む回路の、ハイインピーダンス状態による貫通電流を検知することができる。
【００８６】
なお、フィードバック構造を持ったトランジスタを含む回路をシミュレーションする際は、抵抗素子に置き換えた図１３の回路を用いるのではなく、図１２の元の回路を使用する。
【００８７】
（第３の実施形態）
図１８，図１９，図２０，図２１，図２２は本発明の第３の実施形態を示している。
アナログＭＯＳ回路では、図１８に示すようにトランジスタのｄ端子またはｓ端子を、集積回路を外部回路と接続する外部接続端子に接続した回路が存在する。Ｍ１〜Ｍ４はＭＯＳトランジスタ、Ｐ１，Ｐ２が外部接続端子である。
【００８８】
この図１８の回路に対してハイインピーダンス検出方法を適用する場合について説明する。
ハイインピーダンス検出装置の構成およびハイインピーダンス検出方法のフローは第１の実施形態と同様、図１，図２である。
【００８９】
まず、図１８の処理対象ノード１２に対して貫通電流条件抽出処理とハイインピーダンス条件抽出処理を行う場合の処理方法について説明する。
貫通電流条件抽出処理部６では、処理対象ノード１２がｇ端子に繋がるトランジスタＭ３，Ｍ４を対象トランジスタとして、以下の処理を行う。前提条件として、トランジスタＭ３，Ｍ４をオン状態として扱う。
【００９０】
初めに、第１の実施形態と同様、対象トランジスタのｓ端子とｄ端子を起点とし、ＶＤＤ，ＶＳＳに向かって回路をパストレースする。この際、外部接続端子Ｐ２へのパスもトレースする。図１９にトランジスタＭ３を対象トランジスタとしたパストレース結果を示す。
【００９１】
・  トランジスタＭ３のｄ端子は直接にＶＤＤに接続されたパス有り。
・  トランジスタＭ３のｓ端子はＶＳＳに接続されたパス無し。
・  トランジスタＭ３のｄ端子はＰ２に接続されたパス無し。
【００９２】
・  トランジスタＭ３のｓ端子はＶＤＤに接続されたパス無し。
・  トランジスタＭ３のｓ端子はＶＳＳに接続されたパス無し。
・  トランジスタＭ３のｓ端子はトランジスタＭ４のｄ端子とｓ端子との間を介してＰ２に接続されたパス有り。
【００９３】
次に、この図１９のパストレース結果から貫通電流条件を導き出す。図１８の回路のトランジスタＭ３のｄ端子からｓ端子、或いはｓ端子からｄ端子へ貫通電流が生じる条件は、「トランジスタＭ３のｄ端子からＶＤＤへのパスがオンでかつ、トランジスタＭ３のｓ端子からＶＳＳのパスがオンの場合」か、トランジスタＭ３のｓ端子からＶＤＤへのパスがオンでかつ、トランジスタＭ３のｄ端子からＶＳＳのパスがオンの場合である。
【００９４】
この際、外部接続端子Ｐ２の扱いをＶＤＤ，ＶＳＳの２状態に場合分けする必要がある。これらの条件を考慮して、図１９のパストレース結果から図２０の貫通電流条件抽出結果を得ることができる。
【００９５】
図２０の貫通電流条件抽出結果では、貫通電流が生じる条件はＭ４・（Ｐ２＝ＶＳＳ）である。ここで（Ｐ２＝ＶＳＳ）とは、外部接続端子Ｐ２の電位がＶＳＳである事を意味する。また前提条件によりトランジスタＭ４はオン扱いなので、貫通電流条件は（Ｐ２＝ＶＳＳ）となり、外部接続端子Ｐ２の電位がＶＳＳの場合に貫通電流が生じる可能性があることが判る。トランジスタＭ４を対象トランジスタとした場合についても同様に貫通電流条件を求めることができる。
【００９６】
ハイインピーダンス条件抽出処理部７では、始めに処理対象ノード１２を起点としＶＤＤ，ＶＳＳに向かって回路をパストレースする。この際、貫通電流条件抽出処理部６にて行った方法と同様、この図１８の場合には、外部接続端子Ｐ１へのパスもパストレースの対象に含む。図２１に処理対象ノード１２を起点としたパストレース結果を示す。
【００９７】
・  処理対象ノード１２はＶＤＤに接続されたパス無し。
・  処理対象ノード１２はトランジスタＭ２のｄ端子とｓ端子との間を介してＶＳＳに接続されたパス有り。
【００９８】
・  処理対象ノード１２はトランジスタＭ１のｓ端子とｄ端子との間を介してＰ１に接続されたパス有り。
次に、図２１のパストレース結果からハイインピーダンス条件を導き出す。処理対象ノード１２がハイインピーダンスになる条件は、処理対象ノード１２からＶＤＤ，ＶＳＳ、外部接続端子への全てのパスがオフの場合である。この際、外部接続端子Ｐ１の扱いを“＝ハイインピーダンス（浮いている）”、“≠ハイインピーダンス（浮いていない）”の２状態に場合分けする必要がある。この条件を考慮して、図２１のパストレース結果から図２２のハイインピーダンス条件抽出結果を得ることができる。
【００９９】
図２２のハイインピーダンス条件抽出結果は、トランジスタＭ２がオフでかつ、トランジスタＭ１がオフ或いはトランジスタＭ２がオフで外部接続端子Ｐ１が浮いている（ハイインピーダンス）場合、処理対象ノード１２がハイインピーダンス状態になることを意味している。
【０１００】
第１の実施形態同様、上記処理により得られた貫通電流条件とハイインピーダンス条件を、貫通電流検出処理部９がシミュレーション実行中に監視することで、トランジスタのｓ端子またはｄ端子に外部接続端子が接続されている回路において、ハイインピーダンス状態による貫通電流を検知することができる。
【０１０１】
（第４の実施形態）
図２３，図２４，図２５は本発明の第４の実施形態を示している。
アナログＭＯＳ回路では、図２３に示すようにダイオード素子が存在する場合がある。Ｍ１，Ｍ２はＭＯＳトランジスタであり、Ｄ１，Ｄ２がダイオード素子である。ダイオード素子とは片方向にのみ電流を流す性質を持っており、電流の流れる方向を順方向、流れない方向を逆方向という。以下に図２３の回路に対してハイインピーダンス検出方法を適用する場合について説明する。
【０１０２】
ハイインピーダンス検出装置の構成およびハイインピーダンス検出方法のフローは第１の実施形態と同様、図１，図２である。
図２３の処理対象ノード１３に対してハイインピーダンス条件抽出処理を行う場合の処理方法について説明する。
【０１０３】
始めに、処理対象ノード１３を起点とし、ＶＤＤ，ＶＳＳに向かって回路をパストレースする。この際、ダイオード素子Ｄ１，Ｄ２はパスが通っているとして扱う。図２４に処理対象ノード１３を起点としたパストレース結果を示す。
【０１０４】
・  処理対象ノード１３は、順方向に接続されたダイオードＤ１とトランジスタＭ１のｓ端子とｄ端子の間との直列回路を介してＶＤＤに接続されたパス有り。
・  処理対象ノード１３は、逆方向に接続されたダイオードＤ２とトランジスタＭ１のｓ端子とｄ端子の間との直列回路を介してＶＤＤに接続されたパス有り。
【０１０５】
・  処理対象ノード１３は、逆方向に接続されたダイオードＤ１とトランジスタＭ２のｄ端子とｓ端子の間との直列回路を介してＶＳＳに接続されたパス有り。
・  処理対象ノード１３は、順方向に接続されたダイオードＤ２とトランジスタＭ２のｄ端子とｓ端子の間との直列回路を介してＶＳＳに接続されたパス有り。
【０１０６】
この図２４のパストレース結果から、ハイインピーダンス条件を導き出す。処理対象ノード１３がハイインピーダンスになる条件は、処理対象ノード１３からＶＤＤ，ＶＳＳへのパスが全てオフの場合である。ここでパス中にダイオード素子が存在する場合、そのダイオード素子の接続方向によってオンとして扱うか、オフとして扱うかを判断する。例えば処理対象ノードからＶＳＳへのパスの場合、順方向に接続しているダイオード素子Ｄ２はオンとして扱い、逆方向に接続しているダイオード素子Ｄ１はオフとして扱う。ＶＤＤへのパスの場合はその逆である。この条件を考慮して図２４のパストレース結果から図２５のハイインピーダンス条件抽出結果を得ることができる。
【０１０７】
図２５のハイインピーダンス条件抽出結果は、トランジスタＭ１がオフでかつ、トランジスタＭ２がオフの時、処理対象ノード１３がハイインピーダンス状態になることを意味している。
【０１０８】
貫通電流条件抽出処理においても、第１の実施形態で説明した貫通電流条件抽出処理に、上記ハイインピーダンス条件抽出処理のダイオード素子の扱いを適用することで貫通電流条件を抽出することができる。
【０１０９】
第１の実施形態と同様、上記処理により得られた貫通電流条件とハイインピーダンス条件を貫通電流検出処理部９がシミュレーション実行中に監視することで、回路中にダイオード素子が含まれている回路において、ハイインピーダンス状態による貫通電流を検知することができる。
【０１１０】
（第５の実施形態）
図２６，図２７，図２８は本発明の第５の実施形態を示している。
トランジスタにて構成される回路では、複数のトランジスタのｇ端子が同一のノードに接続している場合が多く存在する。そのような構成の回路を図２６に示す。
【０１１１】
図２６においてＭ１はＰ型ＭＯＳトランジスタ、トランジスタＭ２〜Ｍ４はＮ型ＭＯＳトランジスタである。トランジスタＭ１のｇ端子とトランジスタＭ２のｇ端子が共通のノードに接続されている。以下に図２６の回路に対してハイインピーダンス検出方法を適用する場合について説明する。
【０１１２】
ハイインピーダンス検出装置の構成およびハイインピーダンス検出方法のフローは第１の実施形態と同様、図１，図２である。
図２６の処理対象ノード１４に対してハイインピーダンス条件抽出処理を行う場合の処理方法を説明する。
【０１１３】
始めに、複数のトランジスタのｇ端子が同一のノードに接続しているトランジスタを抽出する。図２６の回路の場合、トランジスタＭ１とトランジスタＭ２がそれに相当する。
次に、それら抽出されたトランジスタのどれか一つに注目し、他のトランジスタをその注目したＭＯＳで表現し以後の処理を行う。例えば、トランジスタＭ１に注目すると、トランジスタ１はＰ型、トランジスタＭ２はＮ型なので、トランジスタＭ２はトランジスタＭ１の否定として扱うことになる。図２６では、トランジスタＭ２をＭ１に（ ￣ ）を付けて表現している。
【０１１４】
次に、処理対象ノード１４を起点とし、ＶＤＤ，ＶＳＳに向かって回路をパストレースする。図２７に処理対象ノード１４を起点としたパストレース結果を示す。
・  処理対象ノード１４は、トランジスタＭ３のｓ端子とｄ端子の間と、トランジスタＭ１のｄ端子とｓ端子の間との直列回路を介してＶＤＤに接続されたパス有り。
【０１１５】
・  処理対象ノード１４は、トランジスタＭ４のｓ端子とｄ端子の間と、トランジスタＭ１のｄ端子とｓ端子の間との直列回路を介してＶＤＤに接続されたパス有り。
・  処理対象ノード１４は、トランジスタＭ３のｓ端子とｄ端子の間と、トランジスタＭ１￣のｄ端子とｓ端子の間との直列回路を介してＶＳＳに接続されたパス有り。
【０１１６】
・  処理対象ノード１４は、トランジスタＭ４のｓ端子とｄ端子の間と、トランジスタＭ１￣のｄ端子とｓ端子の間との直列回路を介してＶＳＳに接続されたパス有り。
次に、図２７のパストレース結果からハイインピーダンス条件を導き出す。処理対象ノード１４がハイインピーダンスになる条件は、処理対象ノード１４からＶＤＤ，ＶＳＳへの全てのパスがオフの場合である。この条件を考慮して図２７のパストレース結果から図２８のハイインピーダンス条件抽出結果を得ることができる。
【０１１７】
図２８のハイインピーダンス条件抽出結果は、トランジスタＭ３がオフでかつ、トランジスタＭ４がオフの時、処理対象ノード１４がハイインピーダンス状態になることを意味している。貫通電流条件抽出処理においても上記ハイインピーダンス条件抽出処理と同様に、ｇ端子が同一のノードに接続しているトランジスタを処理することで、貫通電流条件を抽出することができる。
【０１１８】
第１の実施形態と同様、上記処理により得られた貫通電流条件とハイインピーダンス条件を貫通電流検出処理部９がシミュレーション実行中に監視することで、ハイインピーダンス状態による貫通電流を検知することができる。また、同一ノードにｇ端子が接続する複数のトランジスタをどれか一つのＭＯＳに置き換えて処理することで、ハイインピーダンス条件及び貫通電流条件を簡素化することができ、貫通電流検出処理部９による貫通電流検出処理を効率的に行うことができる。
【０１１９】
なお、上記の各実施の形態では、貫通電流検出処理部６では、貫通電流検出処理をシミュレーション実行処理と同時に行っているが、シミュレーション実行時に各ノードの電位情報を時系列的に出力しておき、シミュレーション実行処理が終わった後にその各ノードの電位情報と、貫通電流検出条件からハイインピーダンスによる貫通電流の有無を解析しても同等の結果が得られる。
【産業上の利用可能性】
【０１２０】
本発明は、ＭＯＳトランジスタを含むアナログ回路のシミュレーション等に有用である。
【図面の簡単な説明】
【０１２１】
【図１】本発明のハイインピーダンス検出方法を実行するハイインピーダンス検出処理装置の構成図
【図２】本発明のハイインピーダンス検出方法のフローチャート図
【図３】第１の実施形態の解析対象回路の回路図
【図４】同実施形態のＭ５を対象トランジスタとしたパストレース結果図
【図５】同実施形態のＭ５を対象トランジスタとした貫通電流条件抽出結果図
【図６】同実施形態のＭ７を対象トランジスタとしたパストレース結果図
【図７】同実施形態のＭ７を対象トランジスタとした貫通電流条件抽出結果図
【図８】同実施形態の処理対象ノードを起点としたパストレース結果図
【図９】同実施形態のハイインピーダンス条件抽出の結果図
【図１０】同実施形態の解析対象回路の処理対象ノードの貫通電流検出条件の説明図
【図１１】同実施形態の貫通電流検出の警告するログのフォーマット説明図
【図１２】第２の実施形態の解析対象回路図
【図１３】同実施形態の解析対象回路の仮想回路図
【図１４】同実施形態のＭ５を対象トランジスタとした場合のパストレース結果図
【図１５】同実施形態のＭ５を対象トランジスタとした貫通電流条件抽出結果図
【図１６】同実施形態の処理対象ノードを起点としたパストレース結果図
【図１７】同実施形態のハイインピーダンス条件抽出結果図
【図１８】第３の実施形態の解析対象回路図
【図１９】同実施形態のＭ３を対象トランジスタとしたパストレース結果図
【図２０】同実施形態のＭ３を対象トランジスタとした貫通電流条件抽出結果図
【図２１】同実施形態の処理対象ノードを起点としたパストレース結果図
【図２２】同実施形態のハイインピーダンス条件抽出結果図
【図２３】第４の実施形態の解析対象回路図
【図２４】同実施形態の処理対象ノードを起点としたパストレース結果図
【図２５】同実施形態のハイインピーダンス条件抽出結果図
【図２６】第５の実施形態の解析対象回路図
【図２７】同実施形態の処理対象ノードを起点としたパストレース結果図
【図２８】同実施形態のハイインピーダンス条件抽出結果図
【図２９】ＭＯＳトランジスタで構成されたインバータ回路図
【図３０】従来のハイインピーダンス検出方法の説明図
【図３１】従来技術が適用できない例の回路図
【符号の説明】
【０１２２】
６  貫通電流条件抽出処理部
７  ハイインピーダンス条件抽出処理部
８  回路シミュレーション実行処理部
９  貫通電流検出処理部
１０  処理対象ノード
１１  処理対象ノード
１２  処理対象ノード
１３  処理対象ノード
１４  処理対象ノード
Ｍ１〜Ｍ８    ＭＯＳトランジスタ
ＶＣＣ    第１の電源電位
ＶＳＳ    第２の電源電位
【図１】
2007213456.tif 000003
【図２】
2007213456.tif 000004
【図３】
2007213456.tif 000005
【図４】
2007213456.tif 000006
【図５】
2007213456.tif 000007
【図６】
2007213456.tif 000008
【図７】
2007213456.tif 000009
【図８】
2007213456.tif 000010
【図９】
2007213456.tif 000011
【図１０】
2007213456.tif 000012
【図１１】
2007213456.tif 000013
【図１２】
2007213456.tif 000014
【図１３】
2007213456.tif 000015
【図１４】
2007213456.tif 000016
【図１５】
2007213456.tif 000017
【図１６】
2007213456.tif 000018
【図１７】
2007213456.tif 000019
【図１８】
2007213456.tif 000020
【図１９】
2007213456.tif 000021
【図２０】
2007213456.tif 000022
【図２１】
2007213456.tif 000023
【図２２】
2007213456.tif 000024
【図２３】
2007213456.tif 000025
【図２４】
2007213456.tif 000026
【図２５】
2007213456.tif 000027
【図２６】
2007213456.tif 000028
【図２７】
2007213456.tif 000029
【図２８】
2007213456.tif 000030
【図２９】
2007213456.tif 000031
【図３０】
2007213456.tif 000032
【図３１】
2007213456.tif 000033