(57)【特許請求の範囲】
【請求項１】
半導体集積回路の回路接続情報と回路動作パターンとから前記回路接続情報に含まれる各インスタンスの電源電圧変動量を求める電源電圧変動解析部と、
前記各インスタンス毎の電源電圧変動量の大きさを第１の基準値及び前記第１の基準値より小さい第２の基準値と比較し判定する判定部と、
前記判定部が前記電源電圧変動量を前記第１の基準値より大きいと判定した場合に対象とする半導体集積回路の設計変更を行う再設計部と、
前記判定部が前記電源電圧変動量を前記第１の基準値未満でかつ第２の基準値以上であると判定した場合に、前記電源電圧変動量に基づいて回路遅延データを補正する遅延変動計算部と、
前記判定部が前記電源電圧変動量を前記第２の基準値未満であると判定した場合に、前記電源電圧変動量に基づく回路遅延データの補正を行わずに前記回路遅延データに一定のマージンを加えるマージン作成部と、
前記遅延変動計算部が補正するか、または前記マージン作成部がマージンを加えた回路遅延データに基づいて遅延解析を行う遅延解析部と、
を有することを特徴とする半導体集積回路の電源電圧変動検証装置。
【請求項２】
前記判定部が、半導体集積回路の各機能部位によって異なった値を前記第２の基準値として判定を行うことを特徴とする請求項１記載の電源電圧変動検証装置。
【請求項３】
前記判定部が前記電源電圧変動量を前記第１の基準値未満でかつ第２の基準値以上であると判定した場合に、前記電源電圧変動量に基づいて回路遅延データに動的ノイズ起因ジッタマージンを付加することを特徴とする請求項１または請求項２記載の電源電圧変動検証装置。
【請求項４】
前記電源電圧変動解析部が、遅延解析部の解析対象となる各回路素子についてそれぞれ少なくとも１回は動作する回路動作パターンを用いて電源電圧変動を求めることを特徴とする請求項１乃至３いずれか１項記載の電源電圧変動検証装置。
【請求項５】
前記回路動作パターンは、あらかじめ検証対象となる半導体集積回路の平均消費電力から求めた１クロック内の動作率に基づいて作成された回路動作パターンであることを特徴とする請求項１乃至４いずれか１項記載の電源電圧変動検証装置。
【請求項６】
各回路毎に当該回路の各入力端子が変化したときの電源電圧変動量と遅延変動量とが関数化された遅延ライブラリを備え、前記遅延変動計算部が、前記遅延ライブラリを用いて回路遅延データを補正することを特徴とする請求項１乃至４いずれか１項記載の電源電圧変動検証装置。
【請求項７】
各回路毎に当該回路の各入力端子が変化したときの電源電圧変動量と遅延変動量を回路シミュレーションより求め、前記電源電圧変動量と遅延変動量を関数化させて遅延ライブラリを作成する遅延ライブラリ作成部をさらに有することを特徴とする請求項６記載の電源電圧変動検証装置。
【請求項８】
前記電源電圧変動解析部が、電源電流変動データを求め、
前記遅延変動計算部が、前記電源電圧変動量に加え、前記電源電流変動データを用いて回路遅延データを補正することを特徴とする請求項１乃至７いずれか１項記載の電源電圧変動検証装置。
【請求項９】
コンピュータを請求項１乃至８いずれかの１項記載の電源電圧変動検証装置として機能させるためのプログラム。
【請求項１０】
電源電圧変動解析部が半導体集積回路の回路接続情報と回路動作パターンとから前記回路接続情報の各インスタンスの電源電圧変動量を求めるステップと、
判定部が前記各インスタンス毎の電源電圧変動量の大きさを第１の基準値及び前記第１の基準値より小さい第２の基準値と比較し判定するステップと、
前記判定するステップで前記判定部が前記電源電圧変動量を前記第１の基準値より大きいと判定した場合に、再設計部が対象となる半導体集積回路の設計変更を行うステップと、
前記判定するステップで前記判定部が前記電源電圧変動量を前記第１の基準値未満でかつ第２の基準値以上であると判定した場合に、遅延変動計算部が前記電源電圧変動量に基づいて回路遅延データを補正するステップと、
前記判定するステップで前記判定部が前記電源電圧変動量を前記第２の基準値未満であると判定した場合に、マージン作成部が前記電源電圧変動量に基づく回路遅延データの補正を行わずに前記回路遅延データに一定のマージンを加えるステップと、
前記遅延変動計算部が補正するか、または前記マージン作成部が前記マージンを加えた回路遅延データに基づいて遅延解析部が遅延解析を行うステップと、
を有することを特徴とする半導体集積回路の電源電圧変動検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の設計検証装置及び方法並びにそのコンピュータプログラムに関し、特に電源電圧変動を解析し、変動量の大きさによって最適な遅延検証の方法を選択したり、再設計を行う半導体集積回路の電源変動設計検証装置及び方法並びにそのコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、半導体集積回路の低電源電圧化、高速化による技術の進歩には目覚しいものがある。一方、その低電源電圧化、高速化や、配線パターンの微細化による相対的な配線抵抗の増加等によって、電源電圧の変動は半導体集積回路の安定した動作に対し無視できないようになってきている。
【０００３】
この半導体集積回路の電源変動に対して、電源電圧変動検証の技術が注目されている。電源電圧変動検証とは、半導体集積回路が動作することで、電源とグランドの電圧が変動する、電源ノイズを検証するものである。電源電圧変動検証では半導体集積回路に含まれる全インスタンスのうちいずれかのインスタンスの動作に対して、それぞれ電源とグランドの電圧の変動を計算する技術が用いられている。
【０００４】
この電源電圧変動検証のモデルについて、図５を用いて説明する。図５において、インスタンスＡ、Ｂはそれぞれ電源電圧変動検証の対象とする回路に含まれるインスタンスである。それぞれ入力信号が変化するとそれに応答して出力が動作するが、出力の動作に伴って電源電流が流れ、電源、グランド配線の抵抗はゼロではないので、その電源電流によってインスタンスの電源、グランド配線の電位は影響を受ける。このとき、電源、グランド配線の抵抗が低いインスタンスＡより抵抗の高いインスタンスＢの方が電源の変動は大きくなる。電源変動の大きさは、電源の抵抗値のほか、解析対象とするバッファーの駆動能力、出力負荷容量値、入力信号の変化速度、電源、グランド配線間の容量値などによっても影響を受ける。電源電圧変動検証においては、これらの様々な要素を考慮して検証を行わなければならない。
【０００５】
しかし、集積回路が大規模になるにつれて、ＬＳＩに含まれる全インスタンスの変動に対してそれぞれ電源電圧の変動を検証するのでは、検証時間も長くなる。
【０００６】
また、電源変動を抑えるために、ＬＳＩの内のデカップリング容量（容量セル）を最適に挿入する手法が提案されているが、この手法を実行するのにも集積回路の大規模化につれて、どのような容量値をどこに挿入すればよいのか計算で求める実行時間は大きくなる。
【０００７】
従来の電源電圧変動検証方法およびこれに用いられる電源電圧変動検証装置が、特許文献１に記載されている。この特許文献１に記載された電源電圧変動検証方法およびこれに用いられる電源電圧変動検証装置を図２４、図２５を用いて以下に説明する。
【０００８】
図２４は、特許文献１記載の電源電圧検証方法を示す図面である。特許文献１では入力信号Vinが変化してから出力信号Voutが変化するまでの時間を電圧計算範囲としてこの範囲を何回かに分割して電圧を平均化・抽象化することにより電源電圧変動検証の高速化を図っている。
【０００９】
次に、特許文献１記載の電源電圧変動検証装置の構成について図面を参照して説明する。図２５は従来の電源変動解析装置のブロック図である。配置配線部１−１で配置配線を実施した後のＬＳＩのレイアウトデータから抽出した回路接続情報を電源電圧変動解析部１−２へ入力する。電源電圧変動解析部１−２で電源電圧変動を解析し、電源電圧変動情報を電源電圧変動レポートデータ１−３として出力する。その電源電圧変動レポートデータ１−３を遅延計算部９−７へ入力し、後で行われるＳＴＡ（静的タイミング解析)で必要となる回路ブロックについてその回路遅延データをＳＤＦデータ（基準遅延フォーマット）として出力させる。ＳＤＦデータはＳＴＡ部（静的タイミング解析部）９−１３へ入力され、タイミングレポートデータ９−１６を出力する。出力したタイミングレポートデータ９−１６を最適化部９−６へ入力し、回路の最適化を実施する。
【００１０】
また、電源電圧変動検証に用いる遅延ライブラリの例が特許文献２に記載されている。この遅延ライブラリには、入力信号の傾き値、出力付加容量及び電源電圧値の３つのパラメータを用いてバツファの遅延時間を表現することが記載されている(特許文献２段落番号０１０５)。
【００１１】
また、特許文献２には、電源配線の配線位置に起因する論理ブロック毎の動作電圧分布を求め、複数の論理ブロックの初期概略配置後、上記遅延ライブラリを用いて論理ブロック毎の遅延時間を算出し、算出した遅延時間が短縮されるように論理ブロックを再概略配置することにより複数の論理ブロックの動作タイミングを改善し、しかる後に詳細配置する設計方法が記載されている。
【００１２】
【特許文献１】特開２００５−４２６８号公報（図１）
【特許文献２】特開２０００−９９５５４号公報(図１０)
【非特許文献１】Shen Lin; Nagata, M.; Shimazake, K.; Satoh, K.; Sumita, M.; Tsujikawa, H.; Yang, A.T.;“Full-chip vectorless dynamic power integrity analysis and verification against 100uV/100ps-resolution measurement”; Custom Integrated Circuits Conference, 2004. Proceedings of the IEEE 2004 3-6 Oct. 2004 Page(s):509 - 512
【発明の開示】
【発明が解決しようとする課題】
【００１３】
上記従来技術(たとえば、特許文献１)では、遅延検証の後、この結果に基づいてタイミング解析を行い、そのタイミング検証結果に基づいて、問題がある場合は、容量セルの挿入や、インスタンスの移動など最適化が行われていた。従って、容量セルの挿入やインスタンスの移動を行った後、容量セルの挿入やインスタンスの移動による設計変更により、問題が解消できたか否か、再度の電源電圧変動検証、タイミング解析が必要になり、結果が収束するまで時間がかかった。
【００１４】
さらに、電源電圧変動が所定の電圧以上あると、回路の動作自体が誤動作を生ずる場合があるが、この誤動作は通常の静的なタイミング検証では、発見できない場合が多い。上述した従来技術文献では、このような場合に対する考慮が示されていない。
【００１５】
また、本発明者らの考察によれば、電源電圧変動検証の結果、電源電圧の変動が所定の値以下であれば、電源電圧の変動による遅延値への影響は少なく、電源電圧以外の製造ばらつき等による遅延値のばらつきに比べ、電源電圧の変動による遅延値のばらつきへの影響が少なければ、電源電圧の変動の影響を遅延値のばらつきに考慮することは実質的に必要がないことがわかった。
【００１６】
このような場合でも、一律に電源電圧変動検証の結果を取りこんで、遅延検証を行おうとすると、遅延検証の計算時間が多くかかるという問題があった。
【課題を解決するための手段】
【００１７】
本願で開示される発明は、概略以下の構成とされる。
【００１８】
本発明の１つのアスペクト（側面）に係る半導体集積回路の電源電圧変動検証装置は、半導体集積回路の回路接続情報と回路動作パターンとから前記回路接続情報に含まれる各インスタンスの電源電圧変動量を求める電源電圧変動解析部と、
前記各インスタンス毎の電源電圧変動量の大きさを第１の基準値及び前記第1の基準値より小さい第２の基準値と比較し判定する判定部と、
前記判定部が前記電源電圧変動量を前記第１の基準値より大きいと判定した場合に対象とする半導体集積回路の設計変更を行う再設計部と、
前記判定部が前記電源電圧変動量を前記第１の基準値未満でかつ第２の基準値以上であると判定した場合に、前記電源電圧変動量に基づいて回路遅延データを補正する遅延変動計算部と、
前記判定部が前記電源電圧変動量を前記第２の基準値未満であると判定した場合に、前記電源電圧変動に基づく回路遅延データの補正を行わずに前記回路遅延データに一定のマージンを加えるマージン作成部と、
前記遅延変動計算部が補正するか、前記マージン作成部がマージンを加えた回路遅延データに基づいて遅延解析を行う遅延解析部と、
を備えている。
【００１９】
また、本発明に係る電源電圧変動検証装置は、上記判定部が、半導体集積回路の各機能部位によって異なった値を上記第２の基準値として判定を行うものであってもよい。
【００２０】
さらに、本発明の電源電圧変動検証装置は、上記電源電圧変動解析部が、遅延解析部の解析対象となる各回路素子がそれぞれ少なくとも１回は動作する回路動作パターンを用いて電源電圧変動を求めるものであってもよい。
【００２１】
さらに、本発明に係る電源電圧変動検証装置は、各回路毎に当該回路の各入力端子が変化したときの電源電圧変動量と遅延変動量とが関数化された遅延ライブラリを備え、前記遅延変動計算部が、前記遅延ライブラリを用いて回路遅延データを補正するものであってもよい。
【００２２】
さらに、本発明に係る電源電圧変動検証装置は、上記電源電圧変動解析部が、電源電流変動データを求め、上記遅延変動計算部が、上記電源電圧変動量に加え、上記電源電流変動データを用いて回路遅延データを補正するものであってもよい。
【００２３】
さらに、本発明の別なアスペクトに係るプログラムは、コンピュータを上記電源電圧変動検証装置として機能させるものである。
【００２４】
さらに、本発明のまた別なアスペクトに係る電源電圧変動設計検証方法は、半導体集積回路の回路接続情報と回路動作パターンとから半導体集積回路の各インスタンスの電源電圧変動を求めるステップと、前記各インスタンス毎の電源電圧変動量の大きさを第１の基準値及び前記第1の基準値より小さい第２の基準値と比較する判定するステップと、前記判定するステップで前記電源電圧変動量を前記第１の基準値より大きいと判定した場合に対象となる半導体集積回路の設計変更を行うステップと、前記判定するステップで前記電源電圧変動量を前記第１の基準値未満でかつ第２の基準値以上であると判定した場合に前記電源電圧変動に基づいて回路遅延データを補正するステップと、前記判定するステップで前記電源電圧変動量を前記第２の基準値未満であると判定した場合に、前記電源電圧変動量に基づく回路遅延データの補正を行わずに前記回路遅延データに一定のマージンを加えるステップと、前記補正するか、前記マージンを加えた回路遅延データに基づいて遅延解析を行うステップと、を有する。
【発明の効果】
【００２５】
本発明の電源電圧変動検証装置に、各インスタンス毎の電源電圧変動量の大きさを第１の基準値と比較し判定する判定部と、上記判定部が前記電源電圧変動量を前記第１の基準値より大きいと判定した場合に対象とする半導体集積回路の設計変更を行う再設計部とを設ければ、電源電圧変動量が第１の基準値より大きい場合には、遅延解析を行うまでもなく、デカップリング容量の付加、インスタンスの移動などの設計変更を行うことができるので、無駄な遅延解析に時間を浪費することがない。
【００２６】
さらに、本発明の電源電圧変動検証装置に、各インスタンス毎の電源電圧変動量の大きさを第２の基準値と比較し判定する判定部と、上記判定部が電源電圧変動量を第２の基準値未満であると判定した場合に、前記電源電圧変動に基づく回路遅延データの補正を行わずに前記回路遅延データに一定のマージンを加えるマージン作成部とを設ければ、電源電圧変動が小さく遅延変動に与える影響が小さい場合には、電源電圧変動量に基づく回路遅延データの補正を省略できるので、高速な電源変動設計検証を行うことができる。
【００２７】
さらに、判定部が、半導体集積回路の各機能部位によって異なった値を上記第２の基準値として判定を行うようにすれば、たとえば、ロジック部とアナログ部や、コア部と周辺回路部で、電源電圧変動量に基づく回路遅延データの補正を行うかどうか、各機能部位により異なった基準値により判定を行うことができるので、各機能部位により、電源変動を正確に反映した高精度の遅延検証や、精度よりも検証の高速性を重視した遅延検証を選択的に行うことができる。
【発明を実施するための最良の形態】
【００２８】
本発明を実施するための最良の形態について、具体的な適用をいくつかの実施例を用いて説明する。
【実施例１】
【００２９】
図１は、本発明の一実施例である電源電圧変動検証装置の全体構成を説明するための図である。図１の構成において、図２４に記載した従来の電源電圧変動検証装置と同一構成の部分は、同一番号を用い、重複した説明は省略する。図１記載の電源電圧変動検証装置は、配置配線部１−１と、配置配線部１−１のレイアウト結果に基づいて電源電圧変動解析を行い電源電圧変動レポートデータ１−３を出力する電源電圧変動解析部１−２と、電源電圧変動レポートデータ１−３に基づいて、電源電圧変動量について判定を行う判定部１−５と、判定部１−５に判断基準となる判定データを与える基準電圧データ１−４と、判定部１−５の判定結果に基づいて、電源電圧変動量とは無関係に一率のマージンを遅延時間に付加するマージン作成部１−１１と、マージン作成部１−１１で作成したマージンデータを格納するマージンデータ１−１２と、判定部１−５の判定結果に基づいて、動的ノイズに起因する遅延変動量を計算する動的ノイズ起因遅延変動計算部１−７と、動的ノイズに起因するジッタを解析する動的ノイズ起因ジッタ解析部１−８と、動的ノイズ起因遅延変動計算部１−７が計算した遅延変動量を反映させたＳＤＦ（Standard Delay Format)形式のデータであるＳＤＦデータ１−９と、動的ノイズ起因ジッタ解析部１−８が計算したジッタマージンデータ１−１０と、判定部１−５の判定結果に基づいて、電源変動が少なくなるようにデカップリング容量の最適化などの再設計を行う再設計部１−６と、動的ノイズ起因遅延変動計算部１−７が、遅延変動計算を行うにあたって参照する遅延データが格納されたライブリラデータ１−１５と、ライブラリデータ１−１５を作成する遅延変動ライブラリ作成部１−１４と、ＳＴＡ部１−１３が出力するタイミングレポートデータ１−１６が収束したか否かを判定する収束判定部１−１７を有している。なお、電源データ変動レポートデータ１−３、基準電圧データ１−４、ＳＤＦデータ１−９、ジッタマージンデータ１−１０、マージンデータ１−１２、ライブラリデータ１−１５、タイミングレポートデータ１−１６は、それぞれ、電源電圧変動検証装置内にディスク装置やメモリ装置として設けられた記憶部にそれぞれデータとして格納される。
【００３０】
なお、図１記載の電源電圧変動検証装置は、ＥＷＳ等のコンピュータに電源電圧変動設計検証用のコンピュータプログラムをインストールし、コンピュータを電源電圧変動検証装置として機能させるものであってもよい。
【００３１】
次に、図１記載の電源電圧変動検証装置全体の動作について、その動作フローチャートである図２も参照して説明する。図２のステップＳ−１−１で、配置配線部１−１は、ＬＳＩのインスタンス及びマクロ等の配置配線処理を実施する。次に、ステップＳ−１−２で、電源電圧変動解析部１−２は配置配線部１−１の出力データであるＬＳＩの配置配線データを用いて、インスタンスの電源電圧変動解析を実施する。次に、ステップＳ−１−３で、電源電圧変動解析部１−２が出力した電源電圧変動レポートデータ１−３を判定部１−５へ入力する。次に、ステップＳ−１−４で、判定部１−５は、電源電圧変動解析部１−２が出力した電源電圧変動レポートデータ１−３が基準電圧データ１−４の基準電圧Ｖａより大きいか否かを判定する。大きくない場合は、ステップＳ−１−１７で、電源電圧変動分の影響をマージンとして、ＳＴＡ部１−１３へ出力する。一方、基準電圧Ｖａより大きい場合は、ステップＳ−１−８へ進む。
【００３２】
なお、ここで、基準電圧Ｖａが以下に示すように複数の判断基準を持っている場合が考えられる。たとえば、ＣＰＵコア内部の電源電圧変動の基準電圧Ｖ１、ジッタの電源電圧変動の基準電圧Ｖ２、アナログ回路部の電源電圧変動の基準電圧Ｖ３のように、それぞれ基準電圧Ｖａの電圧が違う場合である。その様な場合は、最小の電圧値を選択する。最も電源電圧の変動による影響を受けやすい部分に合わせるためである。
【００３３】
次に、ステップＳ−１−８では、電源電圧変動解析部１−２が出力した電源電圧変動レポートデータ１−３が基準電圧データ１−４の基準電圧Ｖｂより大きいか否かを判定する。大きくない場合は、ステップＳ−１−１２、ステップＳ−１−１３による動的ノイズ起因の遅延変動計算を行うとともに、ステップＳ−１−１４、ステップＳ−１−１５で、動的ノイズ起因のジッタマージンを計算する。
【００３４】
上記の動的ノイズ起因の遅延変動計算結果及び動的ノイズ起因のジッタマージンは、次のステップＳ−１−１６で、ＳＴＡ部１−１３による遅延解析に用いられる。次にステップＳ−１−１８で、ＳＴＡ部は、タイミング解析レポートを出力し、ステップＳ−１−１９で、タイミングが収束しているか否かを判定する。タイミングが収束している場合には、そこで、問題なしとして解析は終了となるが、もし、タイミングが収束しておらず、タイミングエラーが存在する場合は、ステップＳ−１−１へ戻り、配置配線からやり直す。なお、この場合、次に配置配線をやり直すときに配置配線の変更によりタイミングエラーが収束するようにデカップリング容量を増やす等、配置配線部１−１に対して制約条件を与えても良い。
【００３５】
また、ステップＳ−１−８で、電源電圧変動レポートデータ１−３が基準値Ｖｂより大きい場合は、タイミング解析を行うまでもなく、タイミングエラーとなる可能性が高いことがわかるので、ステップＳ−１−９で、電源電圧変動レポートデータ１−３を最適化部１−６に入力し、ステップＳ−１−１０で、デカップリング容量を最適化する等の設計変更を行い、実施結果を配置配線部１−１に入力する。すなわち、電源電圧変動が大きい場合は、タイミング解析を省略して、直接設計変更に進むことにより、無駄なタイミング解析に時間を取られることがない。
[電源電圧変動解析部の構成と動作]
次に、実施例１の主要部の構成、動作についてより詳しく説明する。図３は、本発明の一実施例の電源電圧変動解析部１−２について、詳しい内部構成を示すブロック図である。図３の電源電圧変動解析部は、回路動作パターン作成部２−５と、電源電圧変動解析実行部２−８と、全インスタンスが動作したか否かを判定する判定部２−７を有している。
【００３６】
回路動作パターン作成部２−５は電源電圧変動解析部２−８で用いる回路動作パターンを作成するブロックである。回路動作パターン作成部２−５は、ネットリストデータ２−１、各ノードの初期状態を示す初期状態データ２−２を入力し、回路動作パターンデータ２−６を出力する。さらに、後述するように、回路動作パターン作成部２−５は、動作率データ２−３または、消費電力データ２−４を入力してもよい。判定部２−７は、回路動作パターン作成部２−５が回路動作パターンデータ２−６を作成する際に、全インスタンスが動作した否かを判定する。回路動作パターン作成部２−５は、全インスタンスが動作するパターンの作成が終了するまで、テストパターンデータの作成を繰り返す。電源電圧変動解析実行部２−８は、回路動作パターンデータ２−６と、ＲＬＣネットワークデータ２−１０、インスタンスの電流波形データ２−１１、インスタンスの静止容量データ２−１２に基づいて電源電圧変動解析を実行し、電源電圧変動レポートデータ１−３を出力する。
[電源電圧変動解析部の変形例]
さらに、回路動作パターン作成部２−５は、図９に示すような回路動作パターンの結合部３−３を備えてもよい。この回路動作パターンの結合部３−３は、複数の回路動作パターンデータ３−１、３−２＋・・・を結合して、一つの回路動作パターンデータ３−４にまとめて出力する。図９において、電源電圧変動解析実行部３−５の構成は、図３の電源電圧変動解析実行部２ー８と同一である。
【００３７】
回路動作パターンの結合部３−３を設けることにより、別々に作成した回路動作パターンを一つにまとめることができる。たとえば、図６に示すように、回路パターン１個目の作成で、選択したインスタンスを動作させる回路動作パターンを作成し、次に回路パターン２個目の作成により１個目の回路動作パターンでは動作しなかったインスタンスを動作させ、このようにＮ個の回路動作パターンを作成し、これらすべての回路動作パターンを結合させることにより、全インスタンスを動作させる回路動作パターンデータを作成することができる。
[回路動作パターンの作成]
さらに、動作率データ２−３、消費電力データ２−４を考慮に入れて、回路動作パターンを作成する必要がある場合がある。たとえば、検証対象とする回路がスキャンパステスト回路を有する順序回路から構成されているような場合には、すべての順序回路が同時に動作するような回路動作パターンもスキャンパスを使用して設定することが可能である。しかし、実際の使用状態では、全部の順序回路が同時に動作することはなく、全部の順序回路が同時に動作することまで考慮に入れて、電源電圧変動を解析すると、電源変動が大きくなりすぎ、このような場合まで考慮して設計するとオーバーマージンになる場合がある。このような場合においては、同時に動作する順序回路の数を動作率データ２−３や消費電力データ２−４により指定することにより、実際の使用状態より極端に動作率や消費電力が大きくなる回路動作パターンとなることを避け、電源電圧変動解析がオーバーマージンになることを防ぐことができる。図７は、動作率データ２−３により、同時に動作する順序回路の数を制限する回路動作パターンデータを示す。図７において、スキャンパステスト回路を使用して、全部の順序回路が同時に動作する回路動作パターンの作成も可能であるが、全部の順序回路が同時に動作することまで想定すると、電源電圧変動が大きくなりすぎ、オーバーマージンとなってしまうことを避けている。すなわち、動作率データに基づいて、同時に動作する順序回路の数を制限した回路動作パターンを作成し、複数の回路動作パターンを後で結合することにより全ての順序回路が動作する回路動作パターンを作成している。図７において、黒く塗りつぶした順序回路は、その回路動作パターンで動作する順序回路を示し、”Ｕ”はまだ回路動作パターンを作成していない順序回路を、白抜きの順序回路は、回路動作パターンを作成済みの順序回路を示している。
【００３８】
また、図８では、動作率データに代えて、消費電力データにより、同時に動作する順序回路の数を指定して複数の回路動作パターンを作成し、後でこれらの複数の回路動作パターンを一つの回路動作パターンに結合している。
【００３９】
次に、複数の回路動作パターンを一つに結合した回路動作パターンについて図１１を用いてさらに詳しく説明する。図１１では、インスタンス１〜１２の１２個のインスタンスのうち、インスタンス１〜４を動作させる回路動作パターン１と、インスタンス５〜８を動作させる回路動作パターン２と、インスタンス９〜１２を動作させる回路動作パターン３とを結合して一つの回路動作パターンを作成している。結合させた回路動作パターンにおいて、１サイクル目ではインスタンス1〜４のみを動作させインスタンス５〜１２は動作を停止させている。同様に２サイクル目ではインスタンス５〜８のみを動作させ、３サイクル目では、インスタンス９〜１２のみを動作させている。この様に、結合した後のテストパターンでも、同時に動作するインスタンスの数を、動作率データまたは、消費電流データに基づいて、所定の数になるように制御している。この例では、同時に動作するインスタンスの数は４である。なお、長い解析時間の電源電圧変動解析が必要な場合は、図１２に示す様に、回路動作パターンを反復するように複数の回路動作パターンを結合することにより、所望の回路動作パターンを作成することができる。
【００４０】
このように、回路動作パターン結合部３−３は、結合した１つの回路動作パターンデータ３−４を出力し、電源電圧変動解析部３−５は結合した回路動作パターンデータに基づいて、電源電圧変動を解析することができる。
【００４１】
なお、ここで動作率とは、１クロック時間あたりのインスタンスの動作率である。すなわち、１クロックが入力される間にそのインスタンスが何回動作(状態遷移)を行うかの確率をいう。たとえば、２クロツク時間で1回状態遷移を行うインスタンスの動作率は０．５になる。また、動作率または消費電力は、実使用状態での動作率、消費電力を想定してあらかじろ設定しておくことができる。
[電源電圧変動解析部の動作]
次に、電源電圧変動解析部１−２の動作について電源電圧変動解析部１−２の動作フローチャートである図４も参照して説明する。
【００４２】
まず、ステップＳ−２−１で全インスタンスについて１クロック時間の動作率または消費電力を外部入力する。次に、ステップＳ−２−２では、回路動作パターン作成部２−５が、ステップＳ−２−１で指定された動作率または消費電力を元に、1クロック時間で動作するインスタンス数を決定し、そのインスタンス数を基準として回路動作パターンを作成する。ここで、回路動作パターン作成部２−５は、1クロック時間で動作するインスタンス数に応じて、どのインスタンスがどのタイミングで動作するかの情報の回路動作パターンも決定する。
【００４３】
次に、ステップＳ−２−３ではステップＳ−２−２で作成した回路動作パターンが全てのインスタンスが動作するパターンかを判定する。全てのインスタンスが動作していないと判定された場合は、ステップＳ−２−４で、その作成した新たな動作パターンを従来のパターンにマージし、ステップＳ−２−２に戻り新たな回路動作パターンを作成する。なお、ステップS-2-2に戻り新たな回路動作パターンを作成する際は、すでに作成済みのパターンで動作しているインスタンスは除き、全インスタンスの中で、まだ動作していないインスタンスについて動作する回路動作パターンを作成する。このようにしてステップＳ−２−２、Ｓ−２−３、Ｓ−２−４を全てのインスタンスが動作するパターンが作成されるまで繰り返す。すべてのインスタンスが動作するパターンが完成した場合には、回路動作パターン作成を終了する。
【００４４】
次に、ステップＳ−２−５で、作成した回路動作パターンを電源電圧変動解析実行部２−８に入力するとともに、ステップＳ−２−７でＲＬＣネットワークデータ２−１０、インスタンスの電流波形データ２−１１、インスタンスの静止容量データ２−１２を入力する。次に、ステップＳ−２−６で、電源電圧変動解析実行部２−８が電源電圧変動解析を行い、電源電圧変動レポートデータ１−３を出力する。
【００４５】
なお、図４では、ステップＳ−２−４で回路動作パターンを結合した後の一つの回路動作パターンについて、ステップＳ−２−３で判定を行っているが、統合する前の複数の回路動作パターンについて全インスタンスが動作しているか否かの判定を行い、全インスタンスが動作する回路動作パターンが作成されるまで、ステップＳ−２−２と、Ｓ−２−３を繰り返し、全インスタンスが動作する複数の回路動作パターンが作成されてからその複数の回路動作パターンをマージするステップＳ−２−４を実行してもよい。この場合の処理フローを図１０に示す。図１０では、図４のステップＳ−２−４を省略し、ステップＳ−２−３でＹＥＳと判定された場合のフローを示す。図１０のフローにおいて、ステップＳ−３−２は図４のステップＳ−２−５に、ステップＳ−３−５はステッブＳ−２−７に、ステップＳ−３−３とステップＳ−３−４は、ステップＳ−２−６にそれぞれ相当する。
[遅延変動ライブラリ作成部の構成と動作]
次に、図１の遅延変動ライブラリ作成部１−１４の構成と動作について詳細に説明する。
図１３は、遅延変動ライブラリ作成部１−１４の構成を示すブロック図である。遅延変動ライブラリ作成部１−１４は、遅延変動検証装置１の記憶部に含まれる入力信号の波形の傾きデータ５−１、出力負荷容量値データ５−２、電源電圧値データ５−３、ピンの状態データ５−４を入力し、遅延変動ライブラリデータ１−１５を出力する。遅延変動ライブラリ作成部１−１４は、入力される波形の傾きデータ５−１、出力負荷容量値データ５−２、電源電圧値データ５−３、ピンの状態データ５−４の４つの値に基づいて、ライブラリの遅延変動を検証し、遅延変動ライブラリ５−６を作成する。特に、この実施例では、ピンの状態データ５−４を入力し、ピンの状態を考慮して遅延変動ライブラリ５−６を作成する点が特徴である。
【００４６】
次に遅延変動ライブラリ作成部１−１４の動作について、図１４のフローチャートを用いて説明する。遅延変動ライブラリ作成部１−１４は、ステップＳ−５−１で、入力信号の波形の傾きを遅延変動ライブラリ作成部１−１４へ入力する。また、ステップＳ−５−２で、出力負荷容量値を遅延変動ライブラリ作成部１−１４へ入力する。さらに、ステップＳ−５−３で、電源変動値を遅延変動ライブラリ作成部１−１４へ入力する。さらに、ステップＳ−５−４で、ピンの状態を遅延変動ライブラリ作成部１−１４へ入力する。ステップＳ−５−５で入力データの入力信号の波形の傾き、出力負荷容量、電源電圧値とピンの状態を変化させ遅延変動時間を計算し、ライブラリ化する処理をする。
[遅延変動ライブラリデータの作成]
次に、遅延変動ライブラリデータ５−６の詳細を示す図１５を参照して、遅延変動ライブラリ作成部１−１４が遅延変動ライブラリデータ５−６を作成する動作についてさらに詳しく説明する。図１５は、入力ピンとして、ピンＡ、Ｂ、Ｃの３端子を有しており、出力ピンＹからデータを出力する組み合わせ回路を対象とする遅延変動ライブラリデータを示す。
（１−１）遅延変動ライブラリ作成部１−１４は、入力される波形の傾きデータ５−１、出力負荷容量値データ５−２、電源電圧値データ５−３、ピンの状態データ５−４に基づいて、信号遷移を行なう全てのタイミングアークの入出力パターンを作成する。ここで、タイミングアークとはインスタンスの入力ピンの信号遷移に応じた、出力ピンの信号遷移のことである。
（１−２）各入力ピンの状態毎に電源電圧とグランド電圧を変化させ、電源電圧とグランド電圧の変化による出力ピンＹが変化するまでの遅延時間の変動量を計算する。図１５の電圧変動値毎の遅延変動値に相当する。
（１−３）各入力ピンの状態毎に、この遅延変動量について電源電圧変動量を変数として関数化する。関数化する手法は、最小２乗法を用いる。この遅延変動量を関数化したものをＤＦ（遅延変動関数）と呼ぶ。図１５の遅延変動係数に相当する。
（１−４）上記（１−１）から（１−３）のステップをすべての入力ピンの組み合わせについて、電源電圧とグランド電圧との電位差を変化させて計算し、図１５の遅延変動ライブラリデータを完成させる。
【００４７】
動的ノイズ起因遅延変動計算部１−７では、この遅延変動ライブラリ１−１５を用いて、インスタンス毎に電源電圧変動解析部１−２で求めた電源電圧変動量１−３を、遅延変動ライブラリの遅延変動関数に当てはめ、インスタンス毎の遅延変動量を求めることができる。
【実施例２】
【００４８】
以上、電源電圧変動を考慮して遅延変動計算を行う実施例１の電源電圧変動検証装置について説明した。これに対して、電源電圧変動だけでなく、電源電流Ivddとグランド電流Igndをも用いて遅延変動計算を行なう実施例２について説明する。
【００４９】
図１６は、実施例２の電源電圧変動検証装置の要部を示すブロック図である。図１６に要部を示した実施例２の電源電圧変動検証装置は、図１、図３に示す実施例１の電源電圧変動検証装置と、電源電圧変動解析部１−２、電源電圧変動レポートデータ１−３、動的ノイズ起因遅延変動計算部１−７、ライブラリデータ１−１５を除く構成については、構成、動作が同一である。図１６では、図１、図３の対応する構成とその構成、動作が同一である部分は、冗長を避けるため、記載を省略しており、その説明も省略する。図１６の実施例２の電源電圧変動検証装置において、配置配線部１−１は、図１の実施例１の配置配線部１−１と構成、動作は同一である。電源電圧変動解析部６−２は、配置配線部１−１の出力するレイアウト結果に基づいて、ＲＬＣネットワークデータ２−１０、インスタンスの電流波形データ２−１１、インスタンスの静電容量データ２−１２、回路動作パターン２−６を入力して電源電圧変動解析を行い、インスタンス毎のＶＤＤ電源電圧レポートデータ６−６、ＧＮＤ電圧変動レポートデータ６−５を出力する。さらに、電源電圧変動解析部６−２は、インスタンス毎のＶＤＤ電流変動レポートデータ６−４、ＧＮＤ電流変動レポートデータ６−３についても出力する。電源電流マージ処理部６−７は、ＶＤＤ電流変動レポートデータ６−４からＧＮＤ電流変動レポートデータ６−３を単位時間毎に加算し、Ivdd+Igndの電流レポートデータ６−９を出力する。電源電圧変動マージ処理部６−８は、ＶＤＤ電圧変動レポートデータ６−６からＧＮＤ電圧変動レポートデータ６−５を単位時間毎に減算し、ＶＤＤ−ＧＮＤの電圧変動レポートデータ６−１０を出力する。遅延変動計算部６−１１は、Ivdd+Igndの電流レポートデータ６−９と、ＶＤＤ−ＧＮＤの電圧変動レポートデータ６−１０と、ライブラリデータ１−１５とを入力し、遅延変動計算を行い、その結果を実施例１と同様にＳＤＦデータ１−９として出力する。
【００５０】
次に、実施例２の遅延変動計算の処理フローについて、図１７のフローチャートを使用して説明する。ステップＳ−６−１では、配置配線部１−１が出力する配置配線データを電源電圧解析部６−２に入力する。次に、ステップＳ−６−２では、電源電圧変動解析部６−２が、回路動作パターンが変化したときに流れる電流の解析も行い、Ivddの電流レポートデータ６−４とIgndの電流レポートデータ６−３を出力する。次に、ステップＳ−６−３では、電源電流のマージ処理部６−７は、Ivddの電流(電源電流)データ６−４からIgnd(グランド電流)の電流データ６−３を足し算した値(Ivdd+Ignd)を計算し、遅延変動計算部１−７へ入力する。ステップＳ−６−５では、電源電圧変動解析部６−２が、電圧変動解析を行い、ステップＳ−６−２と並行してＶＤＤの電源電圧レポートデータ６−６、ＧＮＤの電圧変動レポートデータ６−５を出力する。ステップＳ−６−６では、電源電圧変動のマージ処理部６−８が、ＶＤＤの電源電圧レポートデータ６−６からＧＮＤの電圧変動レポートデータ６−５を引いたＶＤＤ−ＧＮＤの電位差を求め、ＶＤＤ−ＧＮＤの電圧変動レポートデータ６−１０として遅延変動計算部１−７へ入力する。ステップＳ−６−７では、ライブラリデータ１−１５を遅延変動計算部１−７へ入力する。
【００５１】
次に、遅延変動計算部１−７が、電源電圧と電源電流から行う遅延変動計算の方法について、詳細に説明する。図１８、図１９は、この遅延変動計算の詳細を示す電圧、電流波形図である。
【００５２】
まず、最初に以下に述べるステツプ（２−１）から（２−３）で、遅延変動計算を行う際に用いる計算の開始時間と終了時間をインスタンスに流れる電流値より求める。
（２−１）負荷容量の情報の取得(電源電圧変動解析部６−２での前処理)
配置配線部１−１が出力する電源配線と信号配線のRLCネットワークの情報から各インスタンスの負荷容量の情報Coutを取得する。または、電流値から負荷容量の情報Coutを算出する。電流値から負荷容量を求める方法の詳細については、後述する。
（２−２）電圧計算の開始時間TOの決定
図１８の電流波形図に示すように、vdd+Igndの電流レポートデータ６−９の電流値が予め指定した基準電流値(Istart)を超える時間をT0とする。
（２−３）電圧計算の終了時間T1の決定
負荷容量Coutの計算方法により終了時間T1の算出方法は異なり、以下の2つの方法がある。１．負荷容量Coutを電源配線と信号配線のRLCネットワークの情報より取得する。
２．負荷容量Coutを電流値より取得する。
各方法を以下で説明する。
（２−３−１）負荷容量Coutを電源配線と信号配線のRLCネットワークの情報より取得し、T1を決定する方法
電源電圧端子へ流れる電流Ivddまたはグランド端子へ流れる電流Igndを時間領域で積分する。ここで、i(t)=Ivddまたは、i(t)=Igndとする。積分の開始時間はT0、終了時間はT1とする。積分した値をCoutで割った値を出力電位Voutとする。図１８に示すように出力電位Ｖoutがスレッシュホールド電圧Vthまたは予め外部より指定した電圧を超える時間をT1とする。
【００５３】
【数１】
0004964685.tif 000002
（２−３−２）負荷容量Coutを電流値より取得し、T1を決定する方法
Coutが確定していない場合は、以下の関係式を用いることで電圧変動の無い電源電圧Vddと負荷容量の値を関係付けることが可能になる。
【００５４】
【数２】
0004964685.tif 000003
（２）式を用いることで、（１）式のVoutを規格化する。
（１）式を以下の式に変換し、以下の式がVth/Vddとなる時間を計算範囲の終了時間のT1とする。
【００５５】
【数３】
0004964685.tif 000004
上記（３）式を用いることで、出力負荷容量の情報が無い場合でも、計算範囲の終了時刻のT1を得ることが可能である。
【００５６】
次に、以下に述べるステップ（２−４）と（２−５）で電源電圧変動と電源電流を用いた遅延変動計算を行う。
（２−４）インスタンスへ流れる電流の規格化
インスタンスへ流れる電流の規格化を以下の処理で行う。電源端子電流（i(t)=Ivdd）またはグランド端子電流（i(t)=Ignd）のレポート６−３または６−４を用いて以下の計算をする。開始時間Ｔ０と終了時間Ｔ１は上記ステップ（２−３）で求めた値を用いる。
【００５７】
【数４】
0004964685.tif 000005
（２−５）遅延変動量の算出
電源電圧変化量ΔVDD(t)-ΔGND(t)６−１０へ上記で計算した電流を規格化した値をかけ、ステップ（２−３）で求めた開始時間と終了時間の範囲内で積分する。ΔVDD(t)= VDD(理想)-VDD(t)、ΔGND(t)= GND(理想)-GND(t)とする。ここで、VDD(理想)とGND(理想)は電圧変動のないVDDとGNDの電圧である。また、VDD(t)とGND(t)は電源電圧変動解析部から出力される電源電圧値とグランドの電圧値である。
【００５８】
さらに、遅延変動関数（DF）をかけることで、電源電圧変動に伴う遅延変動Δdelayを計算する。計算式は以下の式になる。
【００５９】
【数５】
0004964685.tif 000006
ここで、遅延変動関数ＤＦは実施例１ですでに述べたように電源電圧変動と遅延変動の関係を示す関数であり、ライブラリデータ１−１５から求める。（５）式を用いることで遅延変動量を算出できる。
【実施例３】
【００６０】
上述した実施例２では、電源電流は電源電圧変動の影響を受けないものとして遅延変動計算を行った。しかし、現実の半導体集積回路に流れる電源電流が、電源電圧変動の影響を受け変動し、この電源電流の変動が遅延変動計算において無視できない場合もある。そこで、遅延変動計算で電源電流の変動をも考慮して、さらに高精度の電源電圧変動検証をおこなう実施例３について説明する。
【００６１】
図２０は、この実施例３の電源電圧変動検証装置のブロック図である。図２０において、図１、図３、図１６と同一部分については、記載を省略し、説明も省略する。なお、電源電流（電圧変動なし）７−３は、ＧＮＤ電流変動レポートデータ６−３及びＶＤＤ電流変動レポートデータ６−４と同一であり、電源電圧データ（電源変動あり）７−４は、ＶＤＤ電圧変動レポートデータ６−６及びＧＮＤ電圧変動レポートデータと同一である。
【００６２】
この実施例３では、実施例１、実施例２にはない補正部７−５を備えている。補正部７−５では、電源電圧の変動に伴う電源電流を計算し、電圧変動を考慮した電源電流値７−７として出力するとともに、電圧変動を考慮した電源電流値７−７を考慮して、電圧変動量を見直し、補正後の電源電圧を求め、補正後の電源電圧７−６として出力する。また、電圧変動のマージ処理部６−８は、各タイミングの電源電圧ＶＤＤとグランド電圧ＧＮＤを引いた値のＶＤＤ−ＧＮＤの電圧変動データ７−１０を出力する。さらに、電源電流のマージ処理部６−７は、各タイミングの電源電流Ivddとグランド電圧Igndを足した値のIvdd+Igndの電流データを出力する。
【００６３】
図２１は、この実施例３の電源電圧変動検証装置の処理手順を示すフローチャートである。すなわち、配置配線データ等から抽出したＲＬＣネットワークデータ２−１０、インスタンスの電流波形データ２−１１、インスタンスの静電容量データ２−１２、回路動作パターン２−６を電源変動解析部７−２へ入力する（ステツプＳ−７−１）。続いて、電源電圧変動解析部７−２で、電源電圧変動解析と、電圧変動がないときの電流波形を求め、電源電圧データ７−４、電源電流データ７−３として出力する（ステップＳ−７−２）。補正部７−５に電源電圧データ７−４、電源電流データ７−３を入力する（ステップＳ−７−３）。次に、補正部７−５で、電源電圧データ７−４に基づいて、電圧変動がないときの電源電流７−３を補正し、電圧変動を考慮した電源電流７−７を求める（ステップＳ−７−４）。次に、補正部７−５で、電圧変動を考慮した電源電流データ７−７に基づいて、電流変動を考慮しない電源電圧データ７−４を補正し、電流変動を考慮した電源電圧データ７−６を求める（ステップＳ−７−５）。次に、電源電圧変動のマージ処理部７−８により、電源電圧（VDD）からグランド電圧（GND）を引いた値（VDD-GND）を計算し、VDD-GNDの電圧変動データ７−１０として出力し（ステップＳ−７−６）、電源電流（Ivdd）からグランド電流（Ignd）を足した値（Ivdd+Ignd）を計算し、Ivdd+Igndの電流データ７−１１として出力する（ステップＳ−７−７）。
【００６４】
次に、実施例３における補正部７−５による電圧変動による電流変動の計算方法について、さらに詳しく説明する。
【００６５】
以下の処理では、電圧変動解析部の出力データの電源電圧変動ΔV(t)と電圧変動が無いときの電流i(t)を用いて以下の処理をする。電流i(t)は実施例２と同様の値を用いる。ここで、電源電圧変動ΔV(t)はVDD（ｔ）-GND（ｔ）であり、VDDとＧＮＤのレポート結果から変換する。
【００６６】
電源電圧変動が起きたときの電流の変化を以下の（６）式を用いて計算する。i変化なし(t)は電源電圧が変化しない場合の電流、i変化あり(t)は電源電圧変動の影響を考慮した電流である。αは変換係数であり外部指定する。
【００６７】
【数６】
0004964685.tif 000007
次に、実施例３の補正部７−５において、上記電源電圧変動を考慮した電源電流値に基づいて、さらに電源電圧変動を正確に計算する方法について、説明する。
【００６８】
電流変動が起きたときの電圧の変化は以下の（７）式を用いて計算することができる。Ｖ電流変化なし(t)は電源電流の変化を考慮しない場合の電圧、Ｖ電流変化あり(t)は電源電流の影響を考慮した電圧である。ここでは、式（６）で求めた、i変化ありを用いる。βは変換係数であり外部指定する。
【００６９】
【数７】
0004964685.tif 000008
【実施例４】
【００７０】
上述した実施例３では、電源電圧変動計算結果に基づいて、１回電源電流を補正し、その補正された電源電流に基づいて、１回電源電圧変動を補正した。しかし、より遅延変動計算の精度を上げるには、それぞれ１回ずつ補正するだけではなく、補正した値が一定の範囲に収まるまで複数回補正を行った方が良い場合がある。この複数回補正を繰り返して精度を上げる実施例について実施例４として説明する。図２２は、この実施例４の電源変動設計検証装置の要部を示すブロック図である。図２２では、実施例３の電源変動設計検証装置と構成、動作が同一で特に説明を要しない部分は、記載を省略している。また、図２２に記載した部分においても、実施例２や３と構成、動作が基本的に同一である部分は、同一符号を付している。図２２において、「電圧変動ΔV(t)が起きたときの電流i(t)計算部８−４」および「電流i(t)'に対する電圧変動ΔV(t)'計算部８−６」は、図２０の補正部７−５と構成、機能が同一である。図２２では、「i(t)'の変化量がi(判定)より大きいか、小さいかの判定部８−９」を備えていることが特徴である。「i(t)'の変化量がi(判定)より大きいか、小さいかの判定部８−９」は、「電圧変動ΔV(t)が起きたときの電流i(t)計算部８−４」で計算した電流値i(t)'と計算する前の電流値i(t)との変化量を求め、変化量が予め決めた判定値(「判定にも用いる電流変化量:i(判定)」以下であるか否かを判定し、判定値以下である場合には、「電圧変動を考慮した電流値i(t)'８−１」「電圧変動を考慮した電圧値ΔV(t)'８−１１」を出力し、電源電圧変動解析を終了する。一方、上記変化量が上記判定値を超えていたら、判定値以下になるまで、補正を繰り返す。
【００７１】
次に、この実施例４の処理フローについて、処理フローチャート図２３も参照して説明する。
【００７２】
予め、補正前の電流値i(t)と補正後の電流値i(t)'の変化量を判定する判定電流値i(判定)をあらかじめ、電源電圧変動検証装置の記憶部に格納する(ステップＳ−８−６）。
次に、実施例２や３と同様に、電源電圧変動解析部６−２は、電源電圧変動:ΔV(t)および電源変動がないときの電源電流値i(t)を計算する（ステップＳ−８−１）。次に、実施例３と同様に電圧変動ΔV(t)が起きたときの電流i(t)'を計算する（ステップＳ−８−２）。
次に、実施例３と同様に電源電流値がi(t)'であるときの電源電圧変動計算を行い、電源電圧変動値ΔV(t)'を求める（ステップＳ−８−３）。次に、電源変動がないときの電源電流値i(t)と電圧変動ΔV(t)が起きたときの電流i(t)'の差を求め、これが、(ステップＳ−８−６）で記憶部に記憶された判定電流値i(判定)以下であるか、否か判定する（ステップＳ−８−４、ステップＳ−８−５、ステップＳ−８−７）。判定値を超えている場合は、i(t)'をi(t)へ、ΔV(t)'をΔV(t)として、記憶部に格納し、ステップＳ−８−２へ戻る。
一方、判定値以下の場合は、「電圧変動を考慮した電流値i(t)'」「電圧変動を考慮した電圧値ΔV(t)'」を出力し、電源電圧変動解析を終了する（ステップＳ−８−８）。
【００７３】
なお、ステップＳ−８−７で判定に用いたのは電源変動により電流値を補正した場合と補正しない場合の電流変化量であるが、補正による電圧変動値の変化量について、判定に用いることもできる。さらに、どちらかが判定値を超えている限りループ処理を繰り返し、電流変化量と、電位変化量の両者を判定に用い、電流変化量と、電位変化量のどちらかが判定値を超えている限りループ処理を繰り返し、電流変化量と、電位変化量の両方が判定値以下になって初めて電源電圧変動解析を終了させるようにすることもできる。
【００７４】
以上本発明を上記実施例に即して説明したが、本発明は上記実施例の構成にのみ限定されるものでなく、本発明の範囲内で当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【００７５】
また、実施例２〜４において、判定部１−５を設けずに、電源電圧変動結果から得られたVDD-GND電圧変動レポートデータ解析部６−１０、７−１０、８−１１やIvdd+Ignd電流レポートデータ６−９、７−１１、８−１から遅延変動計算を行うことができることも言うまでもない。
【図面の簡単な説明】
【００７６】
【図１】本発明の一実施例の全体構成を示すブロック図である。
【図２】本発明の一実施例の動作を示すフローチャートである。
【図３】本発明の一実施例の電源変動解析部の構成を示すブロック図である。
【図４】本発明の一実施例の電源変動解析部での動作を示すフローチャートである。
【図５】電源電圧変動検証のモデルを示す図面である。
【図６】本発明の一実施例の変形例における複数の回路動作パターンを合成する方法についての説明図である。
【図７】本発明の一実施例の別の変形例における動作率を考慮した回路動作パターンの作成について説明する図面である。
【図８】本発明の一実施例のさらに別の変形例における消費電力を考慮した回路動作パターンの作成について説明する図面である。
【図９】本発明の一実施例における電源変動解析部の別な構成を示すブロック図である。
【図１０】本発明の一実施例における別な構成の電源変動解析部の動作を示すフローチャートである。
【図１１】本発明の一実施例の変形例における回路動作パターンを示す図面である。
【図１２】本発明の一実施例の変形例における別の回路動作パターンを示す図面である。
【図１３】本発明の一実施例における遅延変動ライブラリ作成部の構成を示すブロック図である。
【図１４】本発明の一実施例における遅延変動ライブラリ作成部の動作を示すフローチャートである。
【図１５】本発明の一実施例における遅延変動ライブラリの内容を示す図面である。
【図１６】本発明の実施例２の電源電圧変動検証装置の構成の要部を示す図面である。
【図１７】本発明の実施例２の電源電圧変動検証装置の動作について示すフローチャートである。
【図１８】本発明の実施例２の電源電圧変動検証方法の説明図である。
【図１９】本発明の実施例２の電源電圧変動検証方法の説明図の続きである。
【図２０】本発明の実施例３の電源電圧変動検証装置の構成の要部を示す図面である。
【図２１】本発明の実施例３の電源電圧変動検証装置の動作について示すフローチャートである。
【図２２】本発明の実施例４の電源電圧変動検証装置の構成の要部を示す図面である。
【図２３】本発明の実施例４の電源電圧変動検証方法の説明図である。
【図２４】従来の電源電圧変動検証の方法について説明する図面である。
【図２５】従来の電源電圧変動検証装置のブロック図である。
【符号の説明】
【００７７】
１−  １  配置配線部
１−  ２、６−２  電源電圧変動解析部
１−  ３  電源電圧変動レポートデータ
１−  ４  基準電圧データ
１−  ５  判定部
１−  ６、９−６  デカップリング容量最適化部
１−  ７  動的ノイズ起因遅延変動計算部
１−  ８  動的ノイズ起因ジッタ解析部
１−  ９  ＳＤＦデータ
１−１０  ジッタマージンデータ
１−１１  配置配線部
１−１２  マージンデータ
１−１３、９−１３  ＳＴＡ部
１−１４  遅延変動ライブラリ作成部
１−１５  遅延変動ライブラリ
１−１６、９−１６  タイミングレポートデータ
１−１７  収束判定部
２−  １  ネットリストデータ
２−  ２  初期状態データ
２−  ３  動作率データ
２−  ４  消費電力データ
２−  ５  回路動作パターン作成部
２−  ６、３−１、３−２、３−４、３−９  回路動作パターンデータ
２−  ６  回路動作パターンデータ
２−  ７  判定部
２−  ８  電源電圧変動検証解析実行部
２−１０  ＲＬＣネットワークデータ
２−１１  インスタンスの電流波形データ
２−１２  インスタンスの電流波形データ
３−  ３  回路動作パターンの結合部
５−  １  入力信号の波形傾きデータ
５−  ２  出力負荷容量値データ
５−  ３  電源電圧値データ
５−  ４  ピンの状態データ
６−  ３  グランド電流レポートデータ
６−  ４  電源電流レポートデータ
６−  ５  グランド電圧変動レポートデータ
６−  ６  電源電圧変動レポートデータ
６−  ７  電源電流マージ処理部
６−  ８  電源電圧変動マージ処理部
６−  ９、７−１１  電源グランド電流レポートデータ
６−１０、７−１０  電源グランド電圧変動レポートデータ
６−１１  遅延変動計算部
７−  ３  補正前電源電流レポートデータ
７−  ４  補正前電源電圧レポートデータ
７−  ５  補正部
７−  ６、８−７  補正済み電源電圧レポートデータ
７−  ７、８−５  補正済み電源電流レポートデータ
８−  ４  電流補正部
８−  ６  電圧変動補正部
８−  ８  電流変化量判定データ
８−  ９  電流変化量判定部
８−１０  電源電流最終レポートデータ
８−１１  電源電圧最終レポートデータ
【図１】
0004964685.tif 000009
【図２】
0004964685.tif 000010
【図３】
0004964685.tif 000011
【図４】
0004964685.tif 000012
【図５】
0004964685.tif 000013
【図６】
0004964685.tif 000014
【図７】
0004964685.tif 000015
【図８】
0004964685.tif 000016
【図９】
0004964685.tif 000017
【図１０】
0004964685.tif 000018
【図１１】
0004964685.tif 000019
【図１２】
0004964685.tif 000020
【図１３】
0004964685.tif 000021
【図１４】
0004964685.tif 000022
【図１５】
0004964685.tif 000023
【図１６】
0004964685.tif 000024
【図１７】
0004964685.tif 000025
【図１８】
0004964685.tif 000026
【図１９】
0004964685.tif 000027
【図２０】
0004964685.tif 000028
【図２１】
0004964685.tif 000029
【図２２】
0004964685.tif 000030
【図２３】
0004964685.tif 000031
【図２４】
0004964685.tif 000032
【図２５】
0004964685.tif 000033