JP4964685B2 - 半導体集積回路の電源変動検証装置及び方法並びにそのプログラム - Google Patents

半導体集積回路の電源変動検証装置及び方法並びにそのプログラム Download PDF

Info

Publication number
JP4964685B2
JP4964685B2 JP2007163332A JP2007163332A JP4964685B2 JP 4964685 B2 JP4964685 B2 JP 4964685B2 JP 2007163332 A JP2007163332 A JP 2007163332A JP 2007163332 A JP2007163332 A JP 2007163332A JP 4964685 B2 JP4964685 B2 JP 4964685B2
Authority
JP
Japan
Prior art keywords
power supply
supply voltage
voltage fluctuation
circuit
delay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007163332A
Other languages
English (en)
Other versions
JP2009003669A (ja
Inventor
英斉 中島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2007163332A priority Critical patent/JP4964685B2/ja
Priority to US12/213,557 priority patent/US8056033B2/en
Publication of JP2009003669A publication Critical patent/JP2009003669A/ja
Application granted granted Critical
Publication of JP4964685B2 publication Critical patent/JP4964685B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/12Timing analysis or timing optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

本発明は、半導体集積回路の設計検証装置及び方法並びにそのコンピュータプログラムに関し、特に電源電圧変動を解析し、変動量の大きさによって最適な遅延検証の方法を選択したり、再設計を行う半導体集積回路の電源変動設計検証装置及び方法並びにそのコンピュータプログラムに関する。
近年、半導体集積回路の低電源電圧化、高速化による技術の進歩には目覚しいものがある。一方、その低電源電圧化、高速化や、配線パターンの微細化による相対的な配線抵抗の増加等によって、電源電圧の変動は半導体集積回路の安定した動作に対し無視できないようになってきている。
この半導体集積回路の電源変動に対して、電源電圧変動検証の技術が注目されている。電源電圧変動検証とは、半導体集積回路が動作することで、電源とグランドの電圧が変動する、電源ノイズを検証するものである。電源電圧変動検証では半導体集積回路に含まれる全インスタンスのうちいずれかのインスタンスの動作に対して、それぞれ電源とグランドの電圧の変動を計算する技術が用いられている。
この電源電圧変動検証のモデルについて、図5を用いて説明する。図5において、インスタンスA、Bはそれぞれ電源電圧変動検証の対象とする回路に含まれるインスタンスである。それぞれ入力信号が変化するとそれに応答して出力が動作するが、出力の動作に伴って電源電流が流れ、電源、グランド配線の抵抗はゼロではないので、その電源電流によってインスタンスの電源、グランド配線の電位は影響を受ける。このとき、電源、グランド配線の抵抗が低いインスタンスAより抵抗の高いインスタンスBの方が電源の変動は大きくなる。電源変動の大きさは、電源の抵抗値のほか、解析対象とするバッファーの駆動能力、出力負荷容量値、入力信号の変化速度、電源、グランド配線間の容量値などによっても影響を受ける。電源電圧変動検証においては、これらの様々な要素を考慮して検証を行わなければならない。
しかし、集積回路が大規模になるにつれて、LSIに含まれる全インスタンスの変動に対してそれぞれ電源電圧の変動を検証するのでは、検証時間も長くなる。
また、電源変動を抑えるために、LSIの内のデカップリング容量(容量セル)を最適に挿入する手法が提案されているが、この手法を実行するのにも集積回路の大規模化につれて、どのような容量値をどこに挿入すればよいのか計算で求める実行時間は大きくなる。
従来の電源電圧変動検証方法およびこれに用いられる電源電圧変動検証装置が、特許文献1に記載されている。この特許文献1に記載された電源電圧変動検証方法およびこれに用いられる電源電圧変動検証装置を図24、図25を用いて以下に説明する。
図24は、特許文献1記載の電源電圧検証方法を示す図面である。特許文献1では入力信号Vinが変化してから出力信号Voutが変化するまでの時間を電圧計算範囲としてこの範囲を何回かに分割して電圧を平均化・抽象化することにより電源電圧変動検証の高速化を図っている。
次に、特許文献1記載の電源電圧変動検証装置の構成について図面を参照して説明する。図25は従来の電源変動解析装置のブロック図である。配置配線部1−1で配置配線を実施した後のLSIのレイアウトデータから抽出した回路接続情報を電源電圧変動解析部1−2へ入力する。電源電圧変動解析部1−2で電源電圧変動を解析し、電源電圧変動情報を電源電圧変動レポートデータ1−3として出力する。その電源電圧変動レポートデータ1−3を遅延計算部9−7へ入力し、後で行われるSTA(静的タイミング解析)で必要となる回路ブロックについてその回路遅延データをSDFデータ(基準遅延フォーマット)として出力させる。SDFデータはSTA部(静的タイミング解析部)9−13へ入力され、タイミングレポートデータ9−16を出力する。出力したタイミングレポートデータ9−16を最適化部9−6へ入力し、回路の最適化を実施する。
また、電源電圧変動検証に用いる遅延ライブラリの例が特許文献2に記載されている。この遅延ライブラリには、入力信号の傾き値、出力付加容量及び電源電圧値の3つのパラメータを用いてバツファの遅延時間を表現することが記載されている(特許文献2段落番号0105)。
また、特許文献2には、電源配線の配線位置に起因する論理ブロック毎の動作電圧分布を求め、複数の論理ブロックの初期概略配置後、上記遅延ライブラリを用いて論理ブロック毎の遅延時間を算出し、算出した遅延時間が短縮されるように論理ブロックを再概略配置することにより複数の論理ブロックの動作タイミングを改善し、しかる後に詳細配置する設計方法が記載されている。
特開2005−4268号公報(図1) 特開2000−99554号公報(図10) 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つのアスペクト(側面)に係る半導体集積回路の電源電圧変動検証装置は、半導体集積回路の回路接続情報と回路動作パターンとから前記回路接続情報に含まれる各インスタンスの電源電圧変動量を求める電源電圧変動解析部と、
前記各インスタンス毎の電源電圧変動量の大きさを第1の基準値及び前記第1の基準値より小さい第2の基準値と比較し判定する判定部と、
前記判定部が前記電源電圧変動量を前記第1の基準値より大きいと判定した場合に対象とする半導体集積回路の設計変更を行う再設計部と、
前記判定部が前記電源電圧変動量を前記第1の基準値未満でかつ第2の基準値以上であると判定した場合に、前記電源電圧変動量に基づいて回路遅延データを補正する遅延変動計算部と、
前記判定部が前記電源電圧変動量を前記第2の基準値未満であると判定した場合に、前記電源電圧変動に基づく回路遅延データの補正を行わずに前記回路遅延データに一定のマージンを加えるマージン作成部と、
前記遅延変動計算部が補正するか、前記マージン作成部がマージンを加えた回路遅延データに基づいて遅延解析を行う遅延解析部と、
を備えている。
また、本発明に係る電源電圧変動検証装置は、上記判定部が、半導体集積回路の各機能部位によって異なった値を上記第2の基準値として判定を行うものであってもよい。
さらに、本発明の電源電圧変動検証装置は、上記電源電圧変動解析部が、遅延解析部の解析対象となる各回路素子がそれぞれ少なくとも1回は動作する回路動作パターンを用いて電源電圧変動を求めるものであってもよい。
さらに、本発明に係る電源電圧変動検証装置は、各回路毎に当該回路の各入力端子が変化したときの電源電圧変動量と遅延変動量とが関数化された遅延ライブラリを備え、前記遅延変動計算部が、前記遅延ライブラリを用いて回路遅延データを補正するものであってもよい。
さらに、本発明に係る電源電圧変動検証装置は、上記電源電圧変動解析部が、電源電流変動データを求め、上記遅延変動計算部が、上記電源電圧変動量に加え、上記電源電流変動データを用いて回路遅延データを補正するものであってもよい。
さらに、本発明の別なアスペクトに係るプログラムは、コンピュータを上記電源電圧変動検証装置として機能させるものである。
さらに、本発明のまた別なアスペクトに係る電源電圧変動設計検証方法は、半導体集積回路の回路接続情報と回路動作パターンとから半導体集積回路の各インスタンスの電源電圧変動を求めるステップと、前記各インスタンス毎の電源電圧変動量の大きさを第1の基準値及び前記第1の基準値より小さい第2の基準値と比較する判定するステップと、前記判定するステップで前記電源電圧変動量を前記第1の基準値より大きいと判定した場合に対象となる半導体集積回路の設計変更を行うステップと、前記判定するステップで前記電源電圧変動量を前記第1の基準値未満でかつ第2の基準値以上であると判定した場合に前記電源電圧変動に基づいて回路遅延データを補正するステップと、前記判定するステップで前記電源電圧変動量を前記第2の基準値未満であると判定した場合に、前記電源電圧変動量に基づく回路遅延データの補正を行わずに前記回路遅延データに一定のマージンを加えるステップと、前記補正するか、前記マージンを加えた回路遅延データに基づいて遅延解析を行うステップと、を有する。
本発明の電源電圧変動検証装置に、各インスタンス毎の電源電圧変動量の大きさを第1の基準値と比較し判定する判定部と、上記判定部が前記電源電圧変動量を前記第1の基準値より大きいと判定した場合に対象とする半導体集積回路の設計変更を行う再設計部とを設ければ、電源電圧変動量が第1の基準値より大きい場合には、遅延解析を行うまでもなく、デカップリング容量の付加、インスタンスの移動などの設計変更を行うことができるので、無駄な遅延解析に時間を浪費することがない。
さらに、本発明の電源電圧変動検証装置に、各インスタンス毎の電源電圧変動量の大きさを第2の基準値と比較し判定する判定部と、上記判定部が電源電圧変動量を第2の基準値未満であると判定した場合に、前記電源電圧変動に基づく回路遅延データの補正を行わずに前記回路遅延データに一定のマージンを加えるマージン作成部とを設ければ、電源電圧変動が小さく遅延変動に与える影響が小さい場合には、電源電圧変動量に基づく回路遅延データの補正を省略できるので、高速な電源変動設計検証を行うことができる。
さらに、判定部が、半導体集積回路の各機能部位によって異なった値を上記第2の基準値として判定を行うようにすれば、たとえば、ロジック部とアナログ部や、コア部と周辺回路部で、電源電圧変動量に基づく回路遅延データの補正を行うかどうか、各機能部位により異なった基準値により判定を行うことができるので、各機能部位により、電源変動を正確に反映した高精度の遅延検証や、精度よりも検証の高速性を重視した遅延検証を選択的に行うことができる。
本発明を実施するための最良の形態について、具体的な適用をいくつかの実施例を用いて説明する。
図1は、本発明の一実施例である電源電圧変動検証装置の全体構成を説明するための図である。図1の構成において、図24に記載した従来の電源電圧変動検証装置と同一構成の部分は、同一番号を用い、重複した説明は省略する。図1記載の電源電圧変動検証装置は、配置配線部1−1と、配置配線部1−1のレイアウト結果に基づいて電源電圧変動解析を行い電源電圧変動レポートデータ1−3を出力する電源電圧変動解析部1−2と、電源電圧変動レポートデータ1−3に基づいて、電源電圧変動量について判定を行う判定部1−5と、判定部1−5に判断基準となる判定データを与える基準電圧データ1−4と、判定部1−5の判定結果に基づいて、電源電圧変動量とは無関係に一率のマージンを遅延時間に付加するマージン作成部1−11と、マージン作成部1−11で作成したマージンデータを格納するマージンデータ1−12と、判定部1−5の判定結果に基づいて、動的ノイズに起因する遅延変動量を計算する動的ノイズ起因遅延変動計算部1−7と、動的ノイズに起因するジッタを解析する動的ノイズ起因ジッタ解析部1−8と、動的ノイズ起因遅延変動計算部1−7が計算した遅延変動量を反映させたSDF(Standard Delay Format)形式のデータであるSDFデータ1−9と、動的ノイズ起因ジッタ解析部1−8が計算したジッタマージンデータ1−10と、判定部1−5の判定結果に基づいて、電源変動が少なくなるようにデカップリング容量の最適化などの再設計を行う再設計部1−6と、動的ノイズ起因遅延変動計算部1−7が、遅延変動計算を行うにあたって参照する遅延データが格納されたライブリラデータ1−15と、ライブラリデータ1−15を作成する遅延変動ライブラリ作成部1−14と、STA部1−13が出力するタイミングレポートデータ1−16が収束したか否かを判定する収束判定部1−17を有している。なお、電源データ変動レポートデータ1−3、基準電圧データ1−4、SDFデータ1−9、ジッタマージンデータ1−10、マージンデータ1−12、ライブラリデータ1−15、タイミングレポートデータ1−16は、それぞれ、電源電圧変動検証装置内にディスク装置やメモリ装置として設けられた記憶部にそれぞれデータとして格納される。
なお、図1記載の電源電圧変動検証装置は、EWS等のコンピュータに電源電圧変動設計検証用のコンピュータプログラムをインストールし、コンピュータを電源電圧変動検証装置として機能させるものであってもよい。
次に、図1記載の電源電圧変動検証装置全体の動作について、その動作フローチャートである図2も参照して説明する。図2のステップS−1−1で、配置配線部1−1は、LSIのインスタンス及びマクロ等の配置配線処理を実施する。次に、ステップS−1−2で、電源電圧変動解析部1−2は配置配線部1−1の出力データであるLSIの配置配線データを用いて、インスタンスの電源電圧変動解析を実施する。次に、ステップS−1−3で、電源電圧変動解析部1−2が出力した電源電圧変動レポートデータ1−3を判定部1−5へ入力する。次に、ステップS−1−4で、判定部1−5は、電源電圧変動解析部1−2が出力した電源電圧変動レポートデータ1−3が基準電圧データ1−4の基準電圧Vaより大きいか否かを判定する。大きくない場合は、ステップS−1−17で、電源電圧変動分の影響をマージンとして、STA部1−13へ出力する。一方、基準電圧Vaより大きい場合は、ステップS−1−8へ進む。
なお、ここで、基準電圧Vaが以下に示すように複数の判断基準を持っている場合が考えられる。たとえば、CPUコア内部の電源電圧変動の基準電圧V1、ジッタの電源電圧変動の基準電圧V2、アナログ回路部の電源電圧変動の基準電圧V3のように、それぞれ基準電圧Vaの電圧が違う場合である。その様な場合は、最小の電圧値を選択する。最も電源電圧の変動による影響を受けやすい部分に合わせるためである。
次に、ステップS−1−8では、電源電圧変動解析部1−2が出力した電源電圧変動レポートデータ1−3が基準電圧データ1−4の基準電圧Vbより大きいか否かを判定する。大きくない場合は、ステップS−1−12、ステップS−1−13による動的ノイズ起因の遅延変動計算を行うとともに、ステップS−1−14、ステップS−1−15で、動的ノイズ起因のジッタマージンを計算する。
上記の動的ノイズ起因の遅延変動計算結果及び動的ノイズ起因のジッタマージンは、次のステップS−1−16で、STA部1−13による遅延解析に用いられる。次にステップS−1−18で、STA部は、タイミング解析レポートを出力し、ステップS−1−19で、タイミングが収束しているか否かを判定する。タイミングが収束している場合には、そこで、問題なしとして解析は終了となるが、もし、タイミングが収束しておらず、タイミングエラーが存在する場合は、ステップS−1−1へ戻り、配置配線からやり直す。なお、この場合、次に配置配線をやり直すときに配置配線の変更によりタイミングエラーが収束するようにデカップリング容量を増やす等、配置配線部1−1に対して制約条件を与えても良い。
また、ステップS−1−8で、電源電圧変動レポートデータ1−3が基準値Vbより大きい場合は、タイミング解析を行うまでもなく、タイミングエラーとなる可能性が高いことがわかるので、ステップS−1−9で、電源電圧変動レポートデータ1−3を最適化部1−6に入力し、ステップS−1−10で、デカップリング容量を最適化する等の設計変更を行い、実施結果を配置配線部1−1に入力する。すなわち、電源電圧変動が大きい場合は、タイミング解析を省略して、直接設計変更に進むことにより、無駄なタイミング解析に時間を取られることがない。
[電源電圧変動解析部の構成と動作]
次に、実施例1の主要部の構成、動作についてより詳しく説明する。図3は、本発明の一実施例の電源電圧変動解析部1−2について、詳しい内部構成を示すブロック図である。図3の電源電圧変動解析部は、回路動作パターン作成部2−5と、電源電圧変動解析実行部2−8と、全インスタンスが動作したか否かを判定する判定部2−7を有している。
回路動作パターン作成部2−5は電源電圧変動解析部2−8で用いる回路動作パターンを作成するブロックである。回路動作パターン作成部2−5は、ネットリストデータ2−1、各ノードの初期状態を示す初期状態データ2−2を入力し、回路動作パターンデータ2−6を出力する。さらに、後述するように、回路動作パターン作成部2−5は、動作率データ2−3または、消費電力データ2−4を入力してもよい。判定部2−7は、回路動作パターン作成部2−5が回路動作パターンデータ2−6を作成する際に、全インスタンスが動作した否かを判定する。回路動作パターン作成部2−5は、全インスタンスが動作するパターンの作成が終了するまで、テストパターンデータの作成を繰り返す。電源電圧変動解析実行部2−8は、回路動作パターンデータ2−6と、RLCネットワークデータ2−10、インスタンスの電流波形データ2−11、インスタンスの静止容量データ2−12に基づいて電源電圧変動解析を実行し、電源電圧変動レポートデータ1−3を出力する。
[電源電圧変動解析部の変形例]
さらに、回路動作パターン作成部2−5は、図9に示すような回路動作パターンの結合部3−3を備えてもよい。この回路動作パターンの結合部3−3は、複数の回路動作パターンデータ3−1、3−2+・・・を結合して、一つの回路動作パターンデータ3−4にまとめて出力する。図9において、電源電圧変動解析実行部3−5の構成は、図3の電源電圧変動解析実行部2ー8と同一である。
回路動作パターンの結合部3−3を設けることにより、別々に作成した回路動作パターンを一つにまとめることができる。たとえば、図6に示すように、回路パターン1個目の作成で、選択したインスタンスを動作させる回路動作パターンを作成し、次に回路パターン2個目の作成により1個目の回路動作パターンでは動作しなかったインスタンスを動作させ、このようにN個の回路動作パターンを作成し、これらすべての回路動作パターンを結合させることにより、全インスタンスを動作させる回路動作パターンデータを作成することができる。
[回路動作パターンの作成]
さらに、動作率データ2−3、消費電力データ2−4を考慮に入れて、回路動作パターンを作成する必要がある場合がある。たとえば、検証対象とする回路がスキャンパステスト回路を有する順序回路から構成されているような場合には、すべての順序回路が同時に動作するような回路動作パターンもスキャンパスを使用して設定することが可能である。しかし、実際の使用状態では、全部の順序回路が同時に動作することはなく、全部の順序回路が同時に動作することまで考慮に入れて、電源電圧変動を解析すると、電源変動が大きくなりすぎ、このような場合まで考慮して設計するとオーバーマージンになる場合がある。このような場合においては、同時に動作する順序回路の数を動作率データ2−3や消費電力データ2−4により指定することにより、実際の使用状態より極端に動作率や消費電力が大きくなる回路動作パターンとなることを避け、電源電圧変動解析がオーバーマージンになることを防ぐことができる。図7は、動作率データ2−3により、同時に動作する順序回路の数を制限する回路動作パターンデータを示す。図7において、スキャンパステスト回路を使用して、全部の順序回路が同時に動作する回路動作パターンの作成も可能であるが、全部の順序回路が同時に動作することまで想定すると、電源電圧変動が大きくなりすぎ、オーバーマージンとなってしまうことを避けている。すなわち、動作率データに基づいて、同時に動作する順序回路の数を制限した回路動作パターンを作成し、複数の回路動作パターンを後で結合することにより全ての順序回路が動作する回路動作パターンを作成している。図7において、黒く塗りつぶした順序回路は、その回路動作パターンで動作する順序回路を示し、”U”はまだ回路動作パターンを作成していない順序回路を、白抜きの順序回路は、回路動作パターンを作成済みの順序回路を示している。
また、図8では、動作率データに代えて、消費電力データにより、同時に動作する順序回路の数を指定して複数の回路動作パターンを作成し、後でこれらの複数の回路動作パターンを一つの回路動作パターンに結合している。
次に、複数の回路動作パターンを一つに結合した回路動作パターンについて図11を用いてさらに詳しく説明する。図11では、インスタンス1〜12の12個のインスタンスのうち、インスタンス1〜4を動作させる回路動作パターン1と、インスタンス5〜8を動作させる回路動作パターン2と、インスタンス9〜12を動作させる回路動作パターン3とを結合して一つの回路動作パターンを作成している。結合させた回路動作パターンにおいて、1サイクル目ではインスタンス1〜4のみを動作させインスタンス5〜12は動作を停止させている。同様に2サイクル目ではインスタンス5〜8のみを動作させ、3サイクル目では、インスタンス9〜12のみを動作させている。この様に、結合した後のテストパターンでも、同時に動作するインスタンスの数を、動作率データまたは、消費電流データに基づいて、所定の数になるように制御している。この例では、同時に動作するインスタンスの数は4である。なお、長い解析時間の電源電圧変動解析が必要な場合は、図12に示す様に、回路動作パターンを反復するように複数の回路動作パターンを結合することにより、所望の回路動作パターンを作成することができる。
このように、回路動作パターン結合部3−3は、結合した1つの回路動作パターンデータ3−4を出力し、電源電圧変動解析部3−5は結合した回路動作パターンデータに基づいて、電源電圧変動を解析することができる。
なお、ここで動作率とは、1クロック時間あたりのインスタンスの動作率である。すなわち、1クロックが入力される間にそのインスタンスが何回動作(状態遷移)を行うかの確率をいう。たとえば、2クロツク時間で1回状態遷移を行うインスタンスの動作率は0.5になる。また、動作率または消費電力は、実使用状態での動作率、消費電力を想定してあらかじろ設定しておくことができる。
[電源電圧変動解析部の動作]
次に、電源電圧変動解析部1−2の動作について電源電圧変動解析部1−2の動作フローチャートである図4も参照して説明する。
まず、ステップS−2−1で全インスタンスについて1クロック時間の動作率または消費電力を外部入力する。次に、ステップS−2−2では、回路動作パターン作成部2−5が、ステップS−2−1で指定された動作率または消費電力を元に、1クロック時間で動作するインスタンス数を決定し、そのインスタンス数を基準として回路動作パターンを作成する。ここで、回路動作パターン作成部2−5は、1クロック時間で動作するインスタンス数に応じて、どのインスタンスがどのタイミングで動作するかの情報の回路動作パターンも決定する。
次に、ステップS−2−3ではステップS−2−2で作成した回路動作パターンが全てのインスタンスが動作するパターンかを判定する。全てのインスタンスが動作していないと判定された場合は、ステップS−2−4で、その作成した新たな動作パターンを従来のパターンにマージし、ステップS−2−2に戻り新たな回路動作パターンを作成する。なお、ステップS-2-2に戻り新たな回路動作パターンを作成する際は、すでに作成済みのパターンで動作しているインスタンスは除き、全インスタンスの中で、まだ動作していないインスタンスについて動作する回路動作パターンを作成する。このようにしてステップS−2−2、S−2−3、S−2−4を全てのインスタンスが動作するパターンが作成されるまで繰り返す。すべてのインスタンスが動作するパターンが完成した場合には、回路動作パターン作成を終了する。
次に、ステップS−2−5で、作成した回路動作パターンを電源電圧変動解析実行部2−8に入力するとともに、ステップS−2−7でRLCネットワークデータ2−10、インスタンスの電流波形データ2−11、インスタンスの静止容量データ2−12を入力する。次に、ステップS−2−6で、電源電圧変動解析実行部2−8が電源電圧変動解析を行い、電源電圧変動レポートデータ1−3を出力する。
なお、図4では、ステップS−2−4で回路動作パターンを結合した後の一つの回路動作パターンについて、ステップS−2−3で判定を行っているが、統合する前の複数の回路動作パターンについて全インスタンスが動作しているか否かの判定を行い、全インスタンスが動作する回路動作パターンが作成されるまで、ステップS−2−2と、S−2−3を繰り返し、全インスタンスが動作する複数の回路動作パターンが作成されてからその複数の回路動作パターンをマージするステップS−2−4を実行してもよい。この場合の処理フローを図10に示す。図10では、図4のステップS−2−4を省略し、ステップS−2−3でYESと判定された場合のフローを示す。図10のフローにおいて、ステップS−3−2は図4のステップS−2−5に、ステップS−3−5はステッブS−2−7に、ステップS−3−3とステップS−3−4は、ステップS−2−6にそれぞれ相当する。
[遅延変動ライブラリ作成部の構成と動作]
次に、図1の遅延変動ライブラリ作成部1−14の構成と動作について詳細に説明する。
図13は、遅延変動ライブラリ作成部1−14の構成を示すブロック図である。遅延変動ライブラリ作成部1−14は、遅延変動検証装置1の記憶部に含まれる入力信号の波形の傾きデータ5−1、出力負荷容量値データ5−2、電源電圧値データ5−3、ピンの状態データ5−4を入力し、遅延変動ライブラリデータ1−15を出力する。遅延変動ライブラリ作成部1−14は、入力される波形の傾きデータ5−1、出力負荷容量値データ5−2、電源電圧値データ5−3、ピンの状態データ5−4の4つの値に基づいて、ライブラリの遅延変動を検証し、遅延変動ライブラリ5−6を作成する。特に、この実施例では、ピンの状態データ5−4を入力し、ピンの状態を考慮して遅延変動ライブラリ5−6を作成する点が特徴である。
次に遅延変動ライブラリ作成部1−14の動作について、図14のフローチャートを用いて説明する。遅延変動ライブラリ作成部1−14は、ステップS−5−1で、入力信号の波形の傾きを遅延変動ライブラリ作成部1−14へ入力する。また、ステップS−5−2で、出力負荷容量値を遅延変動ライブラリ作成部1−14へ入力する。さらに、ステップS−5−3で、電源変動値を遅延変動ライブラリ作成部1−14へ入力する。さらに、ステップS−5−4で、ピンの状態を遅延変動ライブラリ作成部1−14へ入力する。ステップS−5−5で入力データの入力信号の波形の傾き、出力負荷容量、電源電圧値とピンの状態を変化させ遅延変動時間を計算し、ライブラリ化する処理をする。
[遅延変動ライブラリデータの作成]
次に、遅延変動ライブラリデータ5−6の詳細を示す図15を参照して、遅延変動ライブラリ作成部1−14が遅延変動ライブラリデータ5−6を作成する動作についてさらに詳しく説明する。図15は、入力ピンとして、ピンA、B、Cの3端子を有しており、出力ピンYからデータを出力する組み合わせ回路を対象とする遅延変動ライブラリデータを示す。
(1−1)遅延変動ライブラリ作成部1−14は、入力される波形の傾きデータ5−1、出力負荷容量値データ5−2、電源電圧値データ5−3、ピンの状態データ5−4に基づいて、信号遷移を行なう全てのタイミングアークの入出力パターンを作成する。ここで、タイミングアークとはインスタンスの入力ピンの信号遷移に応じた、出力ピンの信号遷移のことである。
(1−2)各入力ピンの状態毎に電源電圧とグランド電圧を変化させ、電源電圧とグランド電圧の変化による出力ピンYが変化するまでの遅延時間の変動量を計算する。図15の電圧変動値毎の遅延変動値に相当する。
(1−3)各入力ピンの状態毎に、この遅延変動量について電源電圧変動量を変数として関数化する。関数化する手法は、最小2乗法を用いる。この遅延変動量を関数化したものをDF(遅延変動関数)と呼ぶ。図15の遅延変動係数に相当する。
(1−4)上記(1−1)から(1−3)のステップをすべての入力ピンの組み合わせについて、電源電圧とグランド電圧との電位差を変化させて計算し、図15の遅延変動ライブラリデータを完成させる。
動的ノイズ起因遅延変動計算部1−7では、この遅延変動ライブラリ1−15を用いて、インスタンス毎に電源電圧変動解析部1−2で求めた電源電圧変動量1−3を、遅延変動ライブラリの遅延変動関数に当てはめ、インスタンス毎の遅延変動量を求めることができる。
以上、電源電圧変動を考慮して遅延変動計算を行う実施例1の電源電圧変動検証装置について説明した。これに対して、電源電圧変動だけでなく、電源電流Ivddとグランド電流Igndをも用いて遅延変動計算を行なう実施例2について説明する。
図16は、実施例2の電源電圧変動検証装置の要部を示すブロック図である。図16に要部を示した実施例2の電源電圧変動検証装置は、図1、図3に示す実施例1の電源電圧変動検証装置と、電源電圧変動解析部1−2、電源電圧変動レポートデータ1−3、動的ノイズ起因遅延変動計算部1−7、ライブラリデータ1−15を除く構成については、構成、動作が同一である。図16では、図1、図3の対応する構成とその構成、動作が同一である部分は、冗長を避けるため、記載を省略しており、その説明も省略する。図16の実施例2の電源電圧変動検証装置において、配置配線部1−1は、図1の実施例1の配置配線部1−1と構成、動作は同一である。電源電圧変動解析部6−2は、配置配線部1−1の出力するレイアウト結果に基づいて、RLCネットワークデータ2−10、インスタンスの電流波形データ2−11、インスタンスの静電容量データ2−12、回路動作パターン2−6を入力して電源電圧変動解析を行い、インスタンス毎のVDD電源電圧レポートデータ6−6、GND電圧変動レポートデータ6−5を出力する。さらに、電源電圧変動解析部6−2は、インスタンス毎のVDD電流変動レポートデータ6−4、GND電流変動レポートデータ6−3についても出力する。電源電流マージ処理部6−7は、VDD電流変動レポートデータ6−4からGND電流変動レポートデータ6−3を単位時間毎に加算し、Ivdd+Igndの電流レポートデータ6−9を出力する。電源電圧変動マージ処理部6−8は、VDD電圧変動レポートデータ6−6からGND電圧変動レポートデータ6−5を単位時間毎に減算し、VDD−GNDの電圧変動レポートデータ6−10を出力する。遅延変動計算部6−11は、Ivdd+Igndの電流レポートデータ6−9と、VDD−GNDの電圧変動レポートデータ6−10と、ライブラリデータ1−15とを入力し、遅延変動計算を行い、その結果を実施例1と同様にSDFデータ1−9として出力する。
次に、実施例2の遅延変動計算の処理フローについて、図17のフローチャートを使用して説明する。ステップS−6−1では、配置配線部1−1が出力する配置配線データを電源電圧解析部6−2に入力する。次に、ステップS−6−2では、電源電圧変動解析部6−2が、回路動作パターンが変化したときに流れる電流の解析も行い、Ivddの電流レポートデータ6−4とIgndの電流レポートデータ6−3を出力する。次に、ステップS−6−3では、電源電流のマージ処理部6−7は、Ivddの電流(電源電流)データ6−4からIgnd(グランド電流)の電流データ6−3を足し算した値(Ivdd+Ignd)を計算し、遅延変動計算部1−7へ入力する。ステップS−6−5では、電源電圧変動解析部6−2が、電圧変動解析を行い、ステップS−6−2と並行してVDDの電源電圧レポートデータ6−6、GNDの電圧変動レポートデータ6−5を出力する。ステップS−6−6では、電源電圧変動のマージ処理部6−8が、VDDの電源電圧レポートデータ6−6からGNDの電圧変動レポートデータ6−5を引いたVDD−GNDの電位差を求め、VDD−GNDの電圧変動レポートデータ6−10として遅延変動計算部1−7へ入力する。ステップS−6−7では、ライブラリデータ1−15を遅延変動計算部1−7へ入力する。
次に、遅延変動計算部1−7が、電源電圧と電源電流から行う遅延変動計算の方法について、詳細に説明する。図18、図19は、この遅延変動計算の詳細を示す電圧、電流波形図である。
まず、最初に以下に述べるステツプ(2−1)から(2−3)で、遅延変動計算を行う際に用いる計算の開始時間と終了時間をインスタンスに流れる電流値より求める。
(2−1)負荷容量の情報の取得(電源電圧変動解析部6−2での前処理)
配置配線部1−1が出力する電源配線と信号配線のRLCネットワークの情報から各インスタンスの負荷容量の情報Coutを取得する。または、電流値から負荷容量の情報Coutを算出する。電流値から負荷容量を求める方法の詳細については、後述する。
(2−2)電圧計算の開始時間TOの決定
図18の電流波形図に示すように、vdd+Igndの電流レポートデータ6−9の電流値が予め指定した基準電流値(Istart)を超える時間をT0とする。
(2−3)電圧計算の終了時間T1の決定
負荷容量Coutの計算方法により終了時間T1の算出方法は異なり、以下の2つの方法がある。1.負荷容量Coutを電源配線と信号配線のRLCネットワークの情報より取得する。
2.負荷容量Coutを電流値より取得する。
各方法を以下で説明する。
(2−3−1)負荷容量Coutを電源配線と信号配線のRLCネットワークの情報より取得し、T1を決定する方法
電源電圧端子へ流れる電流Ivddまたはグランド端子へ流れる電流Igndを時間領域で積分する。ここで、i(t)=Ivddまたは、i(t)=Igndとする。積分の開始時間はT0、終了時間はT1とする。積分した値をCoutで割った値を出力電位Voutとする。図18に示すように出力電位Voutがスレッシュホールド電圧Vthまたは予め外部より指定した電圧を超える時間をT1とする。
Figure 0004964685
(2−3−2)負荷容量Coutを電流値より取得し、T1を決定する方法
Coutが確定していない場合は、以下の関係式を用いることで電圧変動の無い電源電圧Vddと負荷容量の値を関係付けることが可能になる。
Figure 0004964685
(2)式を用いることで、(1)式のVoutを規格化する。
(1)式を以下の式に変換し、以下の式がVth/Vddとなる時間を計算範囲の終了時間のT1とする。
Figure 0004964685
上記(3)式を用いることで、出力負荷容量の情報が無い場合でも、計算範囲の終了時刻のT1を得ることが可能である。
次に、以下に述べるステップ(2−4)と(2−5)で電源電圧変動と電源電流を用いた遅延変動計算を行う。
(2−4)インスタンスへ流れる電流の規格化
インスタンスへ流れる電流の規格化を以下の処理で行う。電源端子電流(i(t)=Ivdd)またはグランド端子電流(i(t)=Ignd)のレポート6−3または6−4を用いて以下の計算をする。開始時間T0と終了時間T1は上記ステップ(2−3)で求めた値を用いる。
Figure 0004964685
(2−5)遅延変動量の算出
電源電圧変化量ΔVDD(t)-ΔGND(t)6−10へ上記で計算した電流を規格化した値をかけ、ステップ(2−3)で求めた開始時間と終了時間の範囲内で積分する。ΔVDD(t)= VDD(理想)-VDD(t)、ΔGND(t)= GND(理想)-GND(t)とする。ここで、VDD(理想)とGND(理想)は電圧変動のないVDDとGNDの電圧である。また、VDD(t)とGND(t)は電源電圧変動解析部から出力される電源電圧値とグランドの電圧値である。
さらに、遅延変動関数(DF)をかけることで、電源電圧変動に伴う遅延変動Δdelayを計算する。計算式は以下の式になる。
Figure 0004964685
ここで、遅延変動関数DFは実施例1ですでに述べたように電源電圧変動と遅延変動の関係を示す関数であり、ライブラリデータ1−15から求める。(5)式を用いることで遅延変動量を算出できる。
上述した実施例2では、電源電流は電源電圧変動の影響を受けないものとして遅延変動計算を行った。しかし、現実の半導体集積回路に流れる電源電流が、電源電圧変動の影響を受け変動し、この電源電流の変動が遅延変動計算において無視できない場合もある。そこで、遅延変動計算で電源電流の変動をも考慮して、さらに高精度の電源電圧変動検証をおこなう実施例3について説明する。
図20は、この実施例3の電源電圧変動検証装置のブロック図である。図20において、図1、図3、図16と同一部分については、記載を省略し、説明も省略する。なお、電源電流(電圧変動なし)7−3は、GND電流変動レポートデータ6−3及びVDD電流変動レポートデータ6−4と同一であり、電源電圧データ(電源変動あり)7−4は、VDD電圧変動レポートデータ6−6及びGND電圧変動レポートデータと同一である。
この実施例3では、実施例1、実施例2にはない補正部7−5を備えている。補正部7−5では、電源電圧の変動に伴う電源電流を計算し、電圧変動を考慮した電源電流値7−7として出力するとともに、電圧変動を考慮した電源電流値7−7を考慮して、電圧変動量を見直し、補正後の電源電圧を求め、補正後の電源電圧7−6として出力する。また、電圧変動のマージ処理部6−8は、各タイミングの電源電圧VDDとグランド電圧GNDを引いた値のVDD−GNDの電圧変動データ7−10を出力する。さらに、電源電流のマージ処理部6−7は、各タイミングの電源電流Ivddとグランド電圧Igndを足した値のIvdd+Igndの電流データを出力する。
図21は、この実施例3の電源電圧変動検証装置の処理手順を示すフローチャートである。すなわち、配置配線データ等から抽出したRLCネットワークデータ2−10、インスタンスの電流波形データ2−11、インスタンスの静電容量データ2−12、回路動作パターン2−6を電源変動解析部7−2へ入力する(ステツプS−7−1)。続いて、電源電圧変動解析部7−2で、電源電圧変動解析と、電圧変動がないときの電流波形を求め、電源電圧データ7−4、電源電流データ7−3として出力する(ステップS−7−2)。補正部7−5に電源電圧データ7−4、電源電流データ7−3を入力する(ステップS−7−3)。次に、補正部7−5で、電源電圧データ7−4に基づいて、電圧変動がないときの電源電流7−3を補正し、電圧変動を考慮した電源電流7−7を求める(ステップS−7−4)。次に、補正部7−5で、電圧変動を考慮した電源電流データ7−7に基づいて、電流変動を考慮しない電源電圧データ7−4を補正し、電流変動を考慮した電源電圧データ7−6を求める(ステップS−7−5)。次に、電源電圧変動のマージ処理部7−8により、電源電圧(VDD)からグランド電圧(GND)を引いた値(VDD-GND)を計算し、VDD-GNDの電圧変動データ7−10として出力し(ステップS−7−6)、電源電流(Ivdd)からグランド電流(Ignd)を足した値(Ivdd+Ignd)を計算し、Ivdd+Igndの電流データ7−11として出力する(ステップS−7−7)。
次に、実施例3における補正部7−5による電圧変動による電流変動の計算方法について、さらに詳しく説明する。
以下の処理では、電圧変動解析部の出力データの電源電圧変動ΔV(t)と電圧変動が無いときの電流i(t)を用いて以下の処理をする。電流i(t)は実施例2と同様の値を用いる。ここで、電源電圧変動ΔV(t)はVDD(t)-GND(t)であり、VDDとGNDのレポート結果から変換する。
電源電圧変動が起きたときの電流の変化を以下の(6)式を用いて計算する。i変化なし(t)は電源電圧が変化しない場合の電流、i変化あり(t)は電源電圧変動の影響を考慮した電流である。αは変換係数であり外部指定する。
Figure 0004964685
次に、実施例3の補正部7−5において、上記電源電圧変動を考慮した電源電流値に基づいて、さらに電源電圧変動を正確に計算する方法について、説明する。
電流変動が起きたときの電圧の変化は以下の(7)式を用いて計算することができる。V電流変化なし(t)は電源電流の変化を考慮しない場合の電圧、V電流変化あり(t)は電源電流の影響を考慮した電圧である。ここでは、式(6)で求めた、i変化ありを用いる。βは変換係数であり外部指定する。
Figure 0004964685
上述した実施例3では、電源電圧変動計算結果に基づいて、1回電源電流を補正し、その補正された電源電流に基づいて、1回電源電圧変動を補正した。しかし、より遅延変動計算の精度を上げるには、それぞれ1回ずつ補正するだけではなく、補正した値が一定の範囲に収まるまで複数回補正を行った方が良い場合がある。この複数回補正を繰り返して精度を上げる実施例について実施例4として説明する。図22は、この実施例4の電源変動設計検証装置の要部を示すブロック図である。図22では、実施例3の電源変動設計検証装置と構成、動作が同一で特に説明を要しない部分は、記載を省略している。また、図22に記載した部分においても、実施例2や3と構成、動作が基本的に同一である部分は、同一符号を付している。図22において、「電圧変動ΔV(t)が起きたときの電流i(t)計算部8−4」および「電流i(t)'に対する電圧変動ΔV(t)'計算部8−6」は、図20の補正部7−5と構成、機能が同一である。図22では、「i(t)'の変化量がi(判定)より大きいか、小さいかの判定部8−9」を備えていることが特徴である。「i(t)'の変化量がi(判定)より大きいか、小さいかの判定部8−9」は、「電圧変動ΔV(t)が起きたときの電流i(t)計算部8−4」で計算した電流値i(t)'と計算する前の電流値i(t)との変化量を求め、変化量が予め決めた判定値(「判定にも用いる電流変化量:i(判定)」以下であるか否かを判定し、判定値以下である場合には、「電圧変動を考慮した電流値i(t)'8−1」「電圧変動を考慮した電圧値ΔV(t)'8−11」を出力し、電源電圧変動解析を終了する。一方、上記変化量が上記判定値を超えていたら、判定値以下になるまで、補正を繰り返す。
次に、この実施例4の処理フローについて、処理フローチャート図23も参照して説明する。
予め、補正前の電流値i(t)と補正後の電流値i(t)'の変化量を判定する判定電流値i(判定)をあらかじめ、電源電圧変動検証装置の記憶部に格納する(ステップS−8−6)。
次に、実施例2や3と同様に、電源電圧変動解析部6−2は、電源電圧変動:ΔV(t)および電源変動がないときの電源電流値i(t)を計算する(ステップS−8−1)。次に、実施例3と同様に電圧変動ΔV(t)が起きたときの電流i(t)'を計算する(ステップS−8−2)。
次に、実施例3と同様に電源電流値がi(t)'であるときの電源電圧変動計算を行い、電源電圧変動値ΔV(t)'を求める(ステップS−8−3)。次に、電源変動がないときの電源電流値i(t)と電圧変動ΔV(t)が起きたときの電流i(t)'の差を求め、これが、(ステップS−8−6)で記憶部に記憶された判定電流値i(判定)以下であるか、否か判定する(ステップS−8−4、ステップS−8−5、ステップS−8−7)。判定値を超えている場合は、i(t)'をi(t)へ、ΔV(t)'をΔV(t)として、記憶部に格納し、ステップS−8−2へ戻る。
一方、判定値以下の場合は、「電圧変動を考慮した電流値i(t)'」「電圧変動を考慮した電圧値ΔV(t)'」を出力し、電源電圧変動解析を終了する(ステップS−8−8)。
なお、ステップS−8−7で判定に用いたのは電源変動により電流値を補正した場合と補正しない場合の電流変化量であるが、補正による電圧変動値の変化量について、判定に用いることもできる。さらに、どちらかが判定値を超えている限りループ処理を繰り返し、電流変化量と、電位変化量の両者を判定に用い、電流変化量と、電位変化量のどちらかが判定値を超えている限りループ処理を繰り返し、電流変化量と、電位変化量の両方が判定値以下になって初めて電源電圧変動解析を終了させるようにすることもできる。
以上本発明を上記実施例に即して説明したが、本発明は上記実施例の構成にのみ限定されるものでなく、本発明の範囲内で当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
また、実施例2〜4において、判定部1−5を設けずに、電源電圧変動結果から得られたVDD-GND電圧変動レポートデータ解析部6−10、7−10、8−11やIvdd+Ignd電流レポートデータ6−9、7−11、8−1から遅延変動計算を行うことができることも言うまでもない。
本発明の一実施例の全体構成を示すブロック図である。 本発明の一実施例の動作を示すフローチャートである。 本発明の一実施例の電源変動解析部の構成を示すブロック図である。 本発明の一実施例の電源変動解析部での動作を示すフローチャートである。 電源電圧変動検証のモデルを示す図面である。 本発明の一実施例の変形例における複数の回路動作パターンを合成する方法についての説明図である。 本発明の一実施例の別の変形例における動作率を考慮した回路動作パターンの作成について説明する図面である。 本発明の一実施例のさらに別の変形例における消費電力を考慮した回路動作パターンの作成について説明する図面である。 本発明の一実施例における電源変動解析部の別な構成を示すブロック図である。 本発明の一実施例における別な構成の電源変動解析部の動作を示すフローチャートである。 本発明の一実施例の変形例における回路動作パターンを示す図面である。 本発明の一実施例の変形例における別の回路動作パターンを示す図面である。 本発明の一実施例における遅延変動ライブラリ作成部の構成を示すブロック図である。 本発明の一実施例における遅延変動ライブラリ作成部の動作を示すフローチャートである。 本発明の一実施例における遅延変動ライブラリの内容を示す図面である。 本発明の実施例2の電源電圧変動検証装置の構成の要部を示す図面である。 本発明の実施例2の電源電圧変動検証装置の動作について示すフローチャートである。 本発明の実施例2の電源電圧変動検証方法の説明図である。 本発明の実施例2の電源電圧変動検証方法の説明図の続きである。 本発明の実施例3の電源電圧変動検証装置の構成の要部を示す図面である。 本発明の実施例3の電源電圧変動検証装置の動作について示すフローチャートである。 本発明の実施例4の電源電圧変動検証装置の構成の要部を示す図面である。 本発明の実施例4の電源電圧変動検証方法の説明図である。 従来の電源電圧変動検証の方法について説明する図面である。 従来の電源電圧変動検証装置のブロック図である。
符号の説明
1− 1 配置配線部
1− 2、6−2 電源電圧変動解析部
1− 3 電源電圧変動レポートデータ
1− 4 基準電圧データ
1− 5 判定部
1− 6、9−6 デカップリング容量最適化部
1− 7 動的ノイズ起因遅延変動計算部
1− 8 動的ノイズ起因ジッタ解析部
1− 9 SDFデータ
1−10 ジッタマージンデータ
1−11 配置配線部
1−12 マージンデータ
1−13、9−13 STA部
1−14 遅延変動ライブラリ作成部
1−15 遅延変動ライブラリ
1−16、9−16 タイミングレポートデータ
1−17 収束判定部
2− 1 ネットリストデータ
2− 2 初期状態データ
2− 3 動作率データ
2− 4 消費電力データ
2− 5 回路動作パターン作成部
2− 6、3−1、3−2、3−4、3−9 回路動作パターンデータ
2− 6 回路動作パターンデータ
2− 7 判定部
2− 8 電源電圧変動検証解析実行部
2−10 RLCネットワークデータ
2−11 インスタンスの電流波形データ
2−12 インスタンスの電流波形データ
3− 3 回路動作パターンの結合部
5− 1 入力信号の波形傾きデータ
5− 2 出力負荷容量値データ
5− 3 電源電圧値データ
5− 4 ピンの状態データ
6− 3 グランド電流レポートデータ
6− 4 電源電流レポートデータ
6− 5 グランド電圧変動レポートデータ
6− 6 電源電圧変動レポートデータ
6− 7 電源電流マージ処理部
6− 8 電源電圧変動マージ処理部
6− 9、7−11 電源グランド電流レポートデータ
6−10、7−10 電源グランド電圧変動レポートデータ
6−11 遅延変動計算部
7− 3 補正前電源電流レポートデータ
7− 4 補正前電源電圧レポートデータ
7− 5 補正部
7− 6、8−7 補正済み電源電圧レポートデータ
7− 7、8−5 補正済み電源電流レポートデータ
8− 4 電流補正部
8− 6 電圧変動補正部
8− 8 電流変化量判定データ
8− 9 電流変化量判定部
8−10 電源電流最終レポートデータ
8−11 電源電圧最終レポートデータ

Claims (10)

  1. 半導体集積回路の回路接続情報と回路動作パターンとから前記回路接続情報に含まれる各インスタンスの電源電圧変動量を求める電源電圧変動解析部と、
    前記各インスタンス毎の電源電圧変動量の大きさを第1の基準値及び前記第1の基準値より小さい第2の基準値と比較し判定する判定部と、
    前記判定部が前記電源電圧変動量を前記第1の基準値より大きいと判定した場合に対象とする半導体集積回路の設計変更を行う再設計部と、
    前記判定部が前記電源電圧変動量を前記第1の基準値未満でかつ第2の基準値以上であると判定した場合に、前記電源電圧変動量に基づいて回路遅延データを補正する遅延変動計算部と、
    前記判定部が前記電源電圧変動量を前記第2の基準値未満であると判定した場合に、前記電源電圧変動量に基づく回路遅延データの補正を行わずに前記回路遅延データに一定のマージンを加えるマージン作成部と、
    前記遅延変動計算部が補正するか、または前記マージン作成部がマージンを加えた回路遅延データに基づいて遅延解析を行う遅延解析部と、
    を有することを特徴とする半導体集積回路の電源電圧変動検証装置。
  2. 前記判定部が、半導体集積回路の各機能部位によって異なった値を前記第2の基準値として判定を行うことを特徴とする請求項1記載の電源電圧変動検証装置。
  3. 前記判定部が前記電源電圧変動量を前記第1の基準値未満でかつ第2の基準値以上であると判定した場合に、前記電源電圧変動量に基づいて回路遅延データに動的ノイズ起因ジッタマージンを付加することを特徴とする請求項1または請求項2記載の電源電圧変動検証装置。
  4. 前記電源電圧変動解析部が、遅延解析部の解析対象となる各回路素子についてそれぞれ少なくとも1回は動作する回路動作パターンを用いて電源電圧変動を求めることを特徴とする請求項1乃至3いずれか1項記載の電源電圧変動検証装置。
  5. 前記回路動作パターンは、あらかじめ検証対象となる半導体集積回路の平均消費電力から求めた1クロック内の動作率に基づいて作成された回路動作パターンであることを特徴とする請求項1乃至4いずれか1項記載の電源電圧変動検証装置。
  6. 各回路毎に当該回路の各入力端子が変化したときの電源電圧変動量と遅延変動量とが関数化された遅延ライブラリを備え、前記遅延変動計算部が、前記遅延ライブラリを用いて回路遅延データを補正することを特徴とする請求項1乃至4いずれか1項記載の電源電圧変動検証装置。
  7. 各回路毎に当該回路の各入力端子が変化したときの電源電圧変動量と遅延変動量を回路シミュレーションより求め、前記電源電圧変動量と遅延変動量を関数化させて遅延ライブラリを作成する遅延ライブラリ作成部をさらに有することを特徴とする請求項6記載の電源電圧変動検証装置。
  8. 前記電源電圧変動解析部が、電源電流変動データを求め、
    前記遅延変動計算部が、前記電源電圧変動量に加え、前記電源電流変動データを用いて回路遅延データを補正することを特徴とする請求項1乃至7いずれか1項記載の電源電圧変動検証装置。
  9. コンピュータを請求項1乃至8いずれかの1項記載の電源電圧変動検証装置として機能させるためのプログラム。
  10. 電源電圧変動解析部が半導体集積回路の回路接続情報と回路動作パターンとから前記回路接続情報の各インスタンスの電源電圧変動量を求めるステップと、
    判定部が前記各インスタンス毎の電源電圧変動量の大きさを第1の基準値及び前記第1の基準値より小さい第2の基準値と比較判定するステップと、
    前記判定するステップで前記判定部が前記電源電圧変動量を前記第1の基準値より大きいと判定した場合に、再設計部が対象となる半導体集積回路の設計変更を行うステップと、
    前記判定するステップで前記判定部が前記電源電圧変動量を前記第1の基準値未満でかつ第2の基準値以上であると判定した場合に、遅延変動計算部が前記電源電圧変動量に基づいて回路遅延データを補正するステップと、
    前記判定するステップで前記判定部が前記電源電圧変動量を前記第2の基準値未満であると判定した場合に、マージン作成部が前記電源電圧変動量に基づく回路遅延データの補正を行わずに前記回路遅延データに一定のマージンを加えるステップと、
    前記遅延変動計算部が補正するか、または前記マージン作成部が前記マージンを加えた回路遅延データに基づいて遅延解析部が遅延解析を行うステップと、
    を有することを特徴とする半導体集積回路の電源電圧変動検証方法。
JP2007163332A 2007-06-21 2007-06-21 半導体集積回路の電源変動検証装置及び方法並びにそのプログラム Expired - Fee Related JP4964685B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007163332A JP4964685B2 (ja) 2007-06-21 2007-06-21 半導体集積回路の電源変動検証装置及び方法並びにそのプログラム
US12/213,557 US8056033B2 (en) 2007-06-21 2008-06-20 Apparatus and method for integrated circuit design with improved delay variation calculation based on power supply variations

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007163332A JP4964685B2 (ja) 2007-06-21 2007-06-21 半導体集積回路の電源変動検証装置及び方法並びにそのプログラム

Publications (2)

Publication Number Publication Date
JP2009003669A JP2009003669A (ja) 2009-01-08
JP4964685B2 true JP4964685B2 (ja) 2012-07-04

Family

ID=40137822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007163332A Expired - Fee Related JP4964685B2 (ja) 2007-06-21 2007-06-21 半導体集積回路の電源変動検証装置及び方法並びにそのプログラム

Country Status (2)

Country Link
US (1) US8056033B2 (ja)
JP (1) JP4964685B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5630870B2 (ja) * 2011-02-18 2014-11-26 ルネサスエレクトロニクス株式会社 半導体集積回路のレイアウト方法及びプログラム
CN103034759B (zh) * 2012-12-10 2015-10-21 同济大学 基于参数模块化加工中心刚度计算的机床配置方法
JP2014135033A (ja) * 2013-01-11 2014-07-24 Fujitsu Semiconductor Ltd 回路モデル生成装置および回路モデル生成方法
US9633733B2 (en) * 2014-02-26 2017-04-25 Infineon Technologies Ag Method, apparatus and device for data processing for determining a predetermined state of a memory
US9805771B2 (en) 2014-02-26 2017-10-31 Infineon Technologies Ag Determining a state of a cell structure
US9823298B2 (en) * 2015-08-12 2017-11-21 Arm Limited Critical path architect
US10387595B1 (en) * 2017-05-09 2019-08-20 Cadence Design Systems, Inc. Systems and methods for modeling integrated clock gates activity for transient vectorless power analysis of an integrated circuit
KR20210108546A (ko) * 2020-02-25 2021-09-03 삼성전자주식회사 반도체 설계 시뮬레이션을 위한 명령들을 실행하는 컴퓨터 시스템으로 구현된 방법
US11816412B2 (en) * 2021-04-16 2023-11-14 Taiwan Semiconductor Manufacturing Company Ltd. Logic cell structures and related methods
JP2023000028A (ja) * 2021-06-17 2023-01-04 富士通株式会社 タイミングライブラリ作成プログラム、タイミングライブラリ作成方法及びタイミング解析装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10124563A (ja) * 1996-08-27 1998-05-15 Matsushita Electric Ind Co Ltd 論理回路の遅延計算方法、その遅延計算装置及び遅延ライブラリの遅延データ計算方法
JP2000099554A (ja) 1998-09-21 2000-04-07 Matsushita Electric Ind Co Ltd 論理ブロック配置方法、遅延ライブラリ及び遅延時間算出方法
JP4095396B2 (ja) * 2002-09-30 2008-06-04 富士通株式会社 タイミング検証方法、タイミング検証装置、プログラム、及び記録媒体
JP2005004268A (ja) 2003-06-09 2005-01-06 Matsushita Electric Ind Co Ltd 半導体集積回路装置の動作解析方法、これに用いられる解析装置およびこれを用いた最適化設計方法
US7428716B2 (en) * 2003-09-19 2008-09-23 International Business Machines Corporation System and method for statistical timing analysis of digital circuits
JP2006059894A (ja) * 2004-08-18 2006-03-02 Fujitsu Ltd 半導体集積回路のレイアウト方法及びレイアウト・プログラム
JP2006154951A (ja) * 2004-11-25 2006-06-15 Fujitsu Ltd 検証方法及び検証装置
JP4619172B2 (ja) * 2005-03-29 2011-01-26 富士通セミコンダクター株式会社 タイミング解析方法、タイミング解析プログラム、およびタイミング解析装置
US7882471B1 (en) * 2005-11-15 2011-02-01 Cadence Design Systems, Inc. Timing and signal integrity analysis of integrated circuits with semiconductor process variations
JP5260837B2 (ja) * 2006-03-24 2013-08-14 富士通セミコンダクター株式会社 半導体集積回路の設計方法及び半導体集積回路の設計装置
US7814448B2 (en) * 2007-04-09 2010-10-12 International Business Machines Corporation Representing and propagating a variational voltage waveform in statistical static timing analysis of digital circuits
US8028195B2 (en) * 2007-12-18 2011-09-27 International Business Machines Corporation Structure for indicating status of an on-chip power supply system
US8069432B2 (en) * 2008-09-30 2011-11-29 Cadence Design Systems, Inc. Method and system for performing statistical leakage characterization, analysis, and modeling

Also Published As

Publication number Publication date
JP2009003669A (ja) 2009-01-08
US20080320427A1 (en) 2008-12-25
US8056033B2 (en) 2011-11-08

Similar Documents

Publication Publication Date Title
JP4964685B2 (ja) 半導体集積回路の電源変動検証装置及び方法並びにそのプログラム
US7937256B2 (en) Systems and methods of efficient library characterization for integrated circuit cell libraries
US6721924B2 (en) Noise and power optimization in high performance circuits
US9020797B2 (en) Integrated circuit simulation using analog power domain in analog block mixed signal
Lourenço et al. AIDA: Layout-aware analog circuit-level sizing with in-loop layout generation
US8713506B2 (en) System and method for employing signoff-quality timing analysis information concurrently in multiple scenarios to reduce dynamic power in an electronic circuit and an apparatus incorporating the same
US20100153897A1 (en) System and method for employing signoff-quality timing analysis information concurrently in multiple scenarios to reduce leakage power in an electronic circuit and electronic design automation tool incorporating the same
US8205177B2 (en) Non-linear receiver model for gate-level delay calculation
JP4540540B2 (ja) 遅延計算装置
Han et al. A global-local optimization framework for simultaneous multi-mode multi-corner clock skew variation reduction
KR101690378B1 (ko) 상이한 회로 토폴로지를 고려하는 입력 파형 발생을 이용한 셀의 특성화
US11003821B1 (en) Deterministic loop breaking in multi-mode multi-corner static timing analysis of integrated circuits
US20090210204A1 (en) Segmentation And Interpolation Of Current Waveforms
CN216122381U (zh) 电子电路和接收器电路
Cherivirala et al. An open source compatible framework to fully autonomous digital ldo generation
US20200285791A1 (en) Circuit design method and associated computer program product
US20090037860A1 (en) Apparatus, system and method for simulating operation of circuit
US8302055B2 (en) Semiconductor device design support apparatus and semiconductor device design support method
US8745558B1 (en) Deployment of transmission gate logic cells in application specific integrated circuits
CN217445335U (zh) 输入缓冲器电路
CN113688587B (zh) 一种电路布图的生成方法、装置、计算机设备及存储介质
CN111695321B (zh) 电路设计方法及相关的电脑程序产品
US20240143878A1 (en) Delay calculation with pattern matching for static timing analysis
US7376541B2 (en) Accurate pin-based memory power model using arc-based characterization
Cherivirala Circuits and Techniques for Cell-based Analog Design Automation of Low Dropout Regulators

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20100426

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100513

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111222

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120118

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120305

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120328

R150 Certificate of patent or registration of utility model

Ref document number: 4964685

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150406

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees