(57)【要約】  実デバイスの動作を反映した回路検証を高速で行う。  回路検証装置（１０）の制御部（１１）は、回路シミュレーションにより検証対象回路（１５）の出力の過渡状態における波形データを取得して記憶部（１２）に記憶する。そして制御部（１１）は、検証対象回路（１５）の機能モデル（１５ａ）を用いた機能検証時に、機能モデル（１５ａ）への入力を検出すると、記憶部（１２）に記憶されている波形データを用いて機能モデル（１５ａ）の出力信号を生成する。
2013132642.tif 000002
【特許請求の範囲】
【請求項１】
回路シミュレーションにより検証対象回路の出力の過渡状態における波形データを取得して記憶部に記憶し、
前記検証対象回路の機能モデルを用いた機能検証時に、前記機能モデルへの入力を検出すると、前記記憶部に記憶されている前記波形データを用いて前記機能モデルの出力信号を生成する、回路検証方法。
【請求項２】
前記検証対象回路に対して、複数の動作条件で回路シミュレーションを実行し、基準となる動作条件での回路シミュレーション結果に対する、他の動作条件での回路シミュレーション結果の前記波形データの変化の傾向を示す傾向データを取得し、
機能検証時において、指定される動作条件に対応する前記傾向データをもとに、前記基準となる動作条件で取得された前記波形データを補正して、前記機能モデルの出力信号を生成する、請求の範囲第１項に記載の回路検証方法。
【請求項３】
前記傾向データは、前記基準となる動作条件での回路シミュレーション結果と他の動作条件での回路シミュレーション結果から得られる、前記検証対象回路での遅延時間の比、前記検証対象回路でのセットアップ時間の比、または前記検証対象回路の出力値の比である、請求の範囲第２項に記載の回路検証方法。
【請求項４】
前記傾向データは、回路シミュレーションで得られる前記検証対象回路の出力信号において、変化が極大または極小となる点における情報から取得される、請求の範囲第２項または第３項に記載の回路検証方法。
【請求項５】
機能シミュレーションにより前記機能モデルの出力信号を求め、前記波形データの取得終了タイミングにおける、前記機能モデルの出力信号と前記波形データとの差分値を取得し、
機能検証時に、前記波形データを適用後の前記機能モデルの出力信号を、前記差分値をもとに補正する、請求の範囲第１項乃至第４項の何れか一項に記載の回路検証方法。
【請求項６】
機能検証時において、前記機能モデルへの入力検出時に、前記機能モデルの出力信号が、閾値を超える場合、前記機能モデルの出力信号への前記波形データの適用を制限し、前記差分値を用いた補正を行う、請求の範囲第５項に記載の回路検証方法。
【請求項７】
記憶部と、
回路シミュレーションにより検証対象回路の出力の過渡状態における波形データを取得して前記記憶部に記憶し、前記検証対象回路の機能モデルを用いた機能検証時に、前記機能モデルへの入力を検出すると、前記記憶部に記憶されている前記波形データを用いて前記機能モデルの出力信号を生成する制御部と、
を有する回路検証装置。
【請求項８】
回路シミュレーションにより検証対象回路の出力の過渡状態における波形データを取得して記憶部に記憶し、
前記検証対象回路の機能モデルを用いた機能検証時に、前記機能モデルへの入力を検出すると、前記記憶部に記憶されている前記波形データを用いて前記機能モデルの出力信号を生成する、
処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路検証方法、回路検証装置及びプログラム
【背景技術】
【０００２】
昨今の半導体集積回路の多機能化に伴い、増幅器、発振器などのアナログ回路と、インバータやＮＡＮＤ回路などのデジタル回路が、混在して１チップに多数搭載されるようになってきている。【０００３】
その様な大規模なチップの設定の際、全体機能を簡易的に検討してから、その機能を実現する回路を作り上げていくトップダウン設計が有効である。トップダウン設計では、多数の回路機能を組み合わせて全体の機能を確認するため、はじめに回路の機能を簡易的に表現した「機能モデル」というものが用いられる。機能モデルとは回路の入力と出力の関係を示したもので、たとえば入力Ｘのときに出力Ｙが一意に関係式や真理値表で表される。全体機能検証では入力が動いたときにだけ演算するようなイベンティブな演算処理が行われる。演算を行う箇所を限定することで、高速かつ大規模な回路の機能検証を行うことができる。【０００４】
機能モデルを使用して全体の機能の整合が取れたら機能モデルをもとに、トランジスタレベルの回路の作成が行われる。回路の作成及びレイアウト後には、より実デバイスに近い状態で回路シミュレーションが行われ、その結果で得られた特性を機能モデルにフィードバックして全体的な機能整合の再確認が行われる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平５−３０３６０５号公報
【特許文献２】特開平１０−４９５５５号公報
【特許文献３】特開２００７−１２２５８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、実デバイスの動作は、多数の内部パラメータやレイアウトによる寄生素子などの影響により非線形動作（入力に依存しない状態を含む動作）を含むが、このような非線形動作を考慮した上で高速に回路検証を行うことは難しい。全体機能検証において、非線形動作を高精度に表現するため、一部の機能モデルをトランジスタレベルの回路に置き換えることが考えられるが、機能検証中に回路シミュレーションが発生することになる。回路シミュレーションは多数のパラメータと演算量の多さから高精度に動作を表現できるが、演算量が増えることで機能検証の時間が長期化する。【０００７】
このように、実デバイスの動作を反映した回路検証を高速で行うことは困難であった。
【課題を解決するための手段】
【０００８】
発明の一観点によれば、以下に示すような回路検証方法が提供される。
この回路検証方法は、回路シミュレーションにより検証対象回路の出力の過渡状態における波形データを取得して記憶部に記憶し、検証対象回路の機能モデルを用いた機能検証時に、機能モデルへの入力を検出すると、記憶部に記憶されている波形データを用いて機能モデルの出力信号を生成する。【０００９】
発明の一観点によれば、記憶部と制御部とを備えた回路検証装置が提供される。
制御部は、回路シミュレーションにより検証対象回路の出力の過渡状態における波形データを取得して記憶部に記憶し、検証対象回路の機能モデルを用いた機能検証時に、機能モデルへの入力を検出すると、記憶部に記憶されている波形データを用いて機能モデルの出力信号を生成する。
【発明の効果】
【００１０】
開示の回路検証方法、回路検証装置及びプログラムによれば、実デバイスの動作を反映した回路検証の速度を速められる。
本発明の上記及び他の目的、特徴及び利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
【図面の簡単な説明】
【００１１】
【図１】第１の実施の形態の回路検証方法及び回路検証装置の一例を示す図である。
【図２】第２の実施の形態の回路検証装置のハードウェア例を示す図である。
【図３】第２の実施の形態の回路検証方法の処理の流れを示すフローチャートである。
【図４】回路シミュレーション結果抽出処理の一例を示すフローチャートである。
【図５】機能モデルの一例を示す図である。
【図６】回路シミュレーション結果と機能モデルシミュレーション結果の一例を示すタイミングチャートである。
【図７】取得した波形データ及び出力差分データの格納例とデータベースリストの一例を示す図である。
【図８】機能検証処理の一例を示すフローチャートである。
【図９】機能演算結果の補正例を示すタイミングチャートである。
【図１０】第２の実施の形態の変形例における機能検証処理の一例を示すフローチャートである。
【図１１】機能演算結果の補正の変形例を示すタイミングチャートである。
【図１２】傾向データ抽出処理の一例を示すフローチャートである。
【図１３】検証対象回路の一例を示す図である。
【図１４】回路シミュレーションの実行結果の一例を示すタイミングチャートである。
【図１５】算出される傾向データの一例を示す図である。
【図１６】更新された機能モデルのコードの一例を示す図である。
【図１７】第３の実施の形態の回路検証方法における機能検証処理の一例を示すフローチャートである。
【図１８】複数の動作条件を考慮したパラメータ決定方法の一例を示す図である。
【図１９】波形データ補正処理の一例を示す図である。
【図２０】第３の実施の形態の回路検証方法で得られた補正後の波形データと、回路シミュレーション波形との比較例を示す図である。
【発明を実施するための形態】
【００１２】
以下、発明を実施するための形態を、図面を参照しつつ説明する。
（第１の実施の形態）
図１は、第１の実施の形態の回路検証方法及び回路検証装置の一例を示す図である。
【００１３】
回路検証装置１０は、制御部１１と、記憶部１２を有する。
制御部１１は、回路シミュレーションと機能検証を実行する。回路シミュレーションは、たとえば、ＳＰＩＣＥ（Simulation Program with Integrated Circuit Emphasis）を用いて実行される。回路シミュレーションの際、制御部１１は、検証対象回路１５の出力の過渡状態における波形データを取得して記憶部１２に記憶する。
【００１４】
回路シミュレーションは、たとえば、検証対象回路１５の回路図（スケマと呼ばれることもある）、仕様（入力パターン、セットアップ時間など）に基づいて実行される。検証対象回路１５の出力の過渡状態とは、たとえば、出力の信号レベルが遷移する状態を意味している。図１に示されているタイミングチャートでは、出力の信号レベルが立ち上がる部分を含む波形データを取得する例が示されている。
【００１５】
制御部１１は、過渡状態の波形データを取得するため、たとえば、入力信号が変化したタイミングから、仕様で規定されたセットアップ時間の間における出力信号の値を取得する。図１では、タイミングｔ１〜ｔ２の間の波形データを取得する例が示されている。
【００１６】
機能検証では、検証対象回路１５が機能モデル１５ａとして表現され、仕様で規定された入力パターンに応じて、イベンティブな演算処理が行われる。ただし、本実施の形態の回路検証方法では、機能モデル１５ａへの入力が発生した場合、制御部１１は、記憶部１２に記憶されている波形データを用いて機能モデル１５ａの出力信号を生成する。
【００１７】
たとえば、図１のタイミングチャートに示されているように、入力信号の信号レベルが変化したとき（イベントが発生したとき）に（タイミングｔ３）、制御部１１は、記憶部１２から波形データを読み出す。そして、制御部１１は、タイミングｔ３〜ｔ４の時間の機能検証の波形データ（点線で示されている）の代わりに、読み出した波形データを用いて、機能モデル１５ａの出力信号を生成する。
【００１８】
このように、回路シミュレーションで取得した検証対象回路の出力の過渡状態における波形データを機能検証の際に用いることで、実デバイスの動作を反映した回路検証が可能となる。また、機能検証の際に、記憶した過渡状態の波形データを読み出して出力信号の生成に用いるため、機能モデルをトランジスタレベルの回路に置き換えて回路シミュレーションを行わなくてもよく、回路検証速度を速められる。
【００１９】
このような回路検証方法は、Ｌ（Low）レベル、Ｈ（High）レベルの２段階の電圧レベルで動作するデジタル回路よりも、より正確な電圧値が求められるアナログ回路が含まれる半導体装置の検証などに好適である。
【００２０】
なお、波形データの読み出し時間後の出力信号の値も補正したり、機能検証の際の動作条件（入力電圧など）に応じて波形データを補正することで、さらに実デバイスの動作を精度よく反映した回路検証が可能になる。このような補正処理については、以降の実施の形態で説明する。
【００２１】
また、上記では、取得する過渡状態の波形データの例として、出力の信号レベルの立ち上がり部分を示したが、制御部１１が出力の信号レベルの立ち下がり部分を取得して、機能検証の際に用いるようにしてもよい。
【００２２】
また、制御部１１は、ＣＰＵ（Central Processing Unit）及びＲＡＭ（Random Access Memory）を用いて実行されるプログラムで実現されるようにしてもよい。
（第２の実施の形態）
図２は、第２の実施の形態の回路検証装置のハードウェア例を示す図である。
【００２３】
回路検証装置２０は、ＣＰＵ２１、ＲＡＭ２２、ＨＤＤ（Hard Disk Drive）２３、画像信号処理部２４、入力信号処理部２５、ディスクドライブ２６及び通信部２７を有する。上記ユニットは、回路検証装置２０内でバス２８に接続されている。
【００２４】
ＣＰＵ２１は、回路検証装置２０における情報処理を制御する演算装置である。ＣＰＵ２１は、ＨＤＤ２３に記憶されたプログラムやデータの少なくとも一部を読み出してＲＡＭ２２に展開し、プログラムを実行する。なお、回路検証装置２０は、複数の演算装置を備えて、情報処理を分散して実行してもよい。
【００２５】
ＲＡＭ２２は、ＣＰＵ２１が扱うプログラムやデータを一時的に記憶しておく揮発性メモリである。なお、回路検証装置２０は、ＲＡＭ以外の種類のメモリを備えていてもよく、複数個のメモリを備えてもよい。
【００２６】
ＨＤＤ２３は、ＯＳ（Operating System）プログラムやアプリケーションプログラムなどのプログラム、及び、情報処理に用いられるデータを記憶する不揮発性の記憶装置である。ＨＤＤ２３は、ＣＰＵ２１の命令にしたがって、内蔵の磁気ディスクに対する読み書きを行う。なお、回路検証装置２０は、ＨＤＤ以外の不揮発性の記憶装置（たとえば、ＳＳＤ（Solid State Drive））を備えていてもよく、複数の記憶装置を備えてもよい。
【００２７】
画像信号処理部２４は、ＣＰＵ２１の命令にしたがって、回路検証装置２０に接続されたディスプレイ２４ａに画像を出力する。ディスプレイ２４ａとして、たとえば、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイなどを用いることができる。
【００２８】
入力信号処理部２５は、回路検証装置２０に接続された入力デバイス２５ａから入力信号を取得し、ＣＰＵ２１に出力する。入力デバイス２５ａとして、たとえば、マウスやタッチパネルなどのポインティングデバイスや、キーボードなどを用いることができる。
【００２９】
ディスクドライブ２６は、記録媒体２６ａに記録されたプログラムやデータを読み取る駆動装置である。記録媒体２６ａとして、たとえば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤなどの磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。ディスクドライブ２６は、たとえば、ＣＰＵ２１の命令にしたがって、記録媒体２６ａから読み取ったプログラムやデータをＲＡＭ２２またはＨＤＤ２３に格納する。
【００３０】
通信部２７は、ネットワーク２７ａに接続して通信を行う通信インタフェースである。ネットワーク２７ａへの接続方法は、有線でも無線でもよい。すなわち、通信部２７は、有線通信インタフェースでも無線通信インタフェースでもよい。
【００３１】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
図３は、第２の実施の形態の回路検証方法の処理の流れを示すフローチャートである。
【００３２】
第２の実施の形態の回路検証方法では、検証対象回路の出力の過渡状態の波形データなどを回路シミュレーションで取得する回路シミュレーション結果抽出処理（ステップＳ１）と、機能検証処理（ステップＳ２）が行われる。以下、各ステップＳ１，Ｓ２の詳細を説明する。
【００３３】
図４は、回路シミュレーション結果抽出処理の一例を示すフローチャートである。
ステップＳ１０：回路検証装置２０は、ＣＰＵ２１の制御のもと、シミュレーションを実行する。シミュレーションは、機能シミュレーションと回路シミュレーションに分かれる。
【００３４】
機能シミュレーションは、たとえば、ＨＤＤ２３に予め格納されている検証対象回路の機能モデル、仕様（入力パターン）などを用いて行われる。機能モデルは、たとえば、Ｖｅｒｉｌｏｇなどのハードウェア記述言語で記述されている。
【００３５】
図５は、機能モデルの一例を示す図である。
図５では、入力された値がそのまま出力される回路（たとえば、バッファ回路）３０の機能モデルの記述例が示されている。この記述では、まず、入力端子がＶＩＮ、出力端子がＶＯＵＴであることが宣言されている。“Ｅｌｅｃｔｒｉｃａｌ  ＶＩＮ”はＶＩＮがアナログ電流、電圧値をもつことを示している。“Ａｌｗａｙｓ”以下の記述は、ＶＩＮが変化したときに、ＶＯＵＴ＝ＶＩＮとすることを示している。
【００３６】
このような機能モデルに対して所定の入力パターンが適用され、機能シミュレーションが行われる。
一方、回路シミュレーションは、たとえば、ＨＤＤ２３に予め格納されている検証対象回路の回路図、仕様（入力パターン）などを用いて行われる。回路シミュレーションは、たとえば、ＳＰＩＣＥを用いて行われる。
【００３７】
ステップＳ１１：ＣＰＵ２１は、回路シミュレーション結果から、出力の過渡状態の波形データを取得する。
図６は、回路シミュレーション結果と機能モデルシミュレーション結果の一例を示すタイミングチャートである。
【００３８】
図６では、バッファ回路に対して、タイミングｔ５で立ち上がる入力信号を適用したときに得られる出力信号の、回路シミュレーション結果（実線）と機能モデルシミュレーション結果（点線）が示されている。
【００３９】
ステップＳ１１の処理では、たとえば、入力信号の変化したタイミングから、仕様で規定されたセットアップ時間の間の回路シミュレーション結果の波形データが取得される。図６の例では、タイミングｔ５〜ｔ６の時間の回路シミュレーション結果の出力信号の波形データが取得される。なお、波形データ取得の終了タイミング（タイミングｔ６）では、回路シミュレーション結果と機能モデルシミュレーション結果との間にΔＶの電圧差がある。
【００４０】
なお、波形データを取得する期間は、セットアップ時間に限定されず、入力信号の変化したタイミングから出力信号の変化が収束するまでの時間としてもよい。
たとえば、Ｘ時間（またはＸポイント）前のデータに対して、現在取得したデータの変化幅が所定の閾値よりも小さいとき、または、現在取得したデータが、ある想定出力値（期待値）のＹ％以内に近づいたとき、出力信号の変化が収束したと判定される。
【００４１】
ステップＳ１２：ＣＰＵ２１は、回路シミュレーション結果と機能モデルシミュレーション結果から、波形データの取得終了タイミングにおける両者の差分値である出力差分データを取得する。図６の例では、ΔＶが出力差分データとなる。
【００４２】
ステップＳ１１，Ｓ１２の処理で取得された波形データ及び出力差分データは、たとえば、ＨＤＤ２３に記憶される。
なお、第２の実施の形態の回路検証方法において、波形データと出力差分データの取得は、たとえば、各検証対象回路の動作条件ごとに行われる。たとえば、入力信号の電圧値が複数ある場合には、入力信号の電圧値ごとに、対応する出力の過渡状態の波形データ及び出力差分データの取得が行われる。
【００４３】
ステップＳ１３：ＣＰＵ２１は、データベースリストを作成する。
図７は、取得した波形データ及び出力差分データの格納例とデータベースリストの一例を示す図である。
【００４４】
図７の例では、ＨＤＤ２３に、取得した波形データを管理する波形データベースＤ１、取得した出力差分データを管理する出力差分データベースＤ２が構築されている。これらのデータベースを管理するデータベースリストＬ１も、たとえば、図７のようにＨＤＤ２３に構築される。
【００４５】
データベースリストＬ１には、検証対象回路に入力される電圧値に応じて、どのインデックスで指定される波形データまたは出力差分データを適用するかが示されている。図７の例では、ＶＩＮ＝１．０［Ｖ］の場合には、ｉｎｄｅｘ１の波形データ及び出力差分データが適用され、ＶＩＮ＝２．０［Ｖ］の場合には、ｉｎｄｅｘ２の波形データ及び出力差分データが適用される。
【００４６】
波形データベースＤ１には、取得された波形データが、波形取得開始タイミングからの経過時間に応じて変化する電圧値として示されている。ｉｎｄｅｘ１の波形データは、入力信号の電圧値がＶＩＮ＝１．０［Ｖ］のときのものであり、ｉｎｄｅｘ２の波形データは、入力信号の電圧値がＶＩＮ＝２．０［Ｖ］のときのものである。図７では、５μｓの時間の波形データが取得されている例が示されている。
【００４７】
出力差分データベースＤ２では、ｉｎｄｅｘ１（入力信号の電圧値がＶＩＮ＝１．０［Ｖ］）の出力差分データと、ｉｎｄｅｘ２（入力信号の電圧値がＶＩＮ＝２．０［Ｖ］）の出力差分データとが管理されている。
【００４８】
ＶＩＮ＝ＶＯＵＴとなるような回路では、機能モデルシミュレーションの結果は、ＶＩＮ＝１．０［Ｖ］のとき、ＶＯＵＴ＝１．０［Ｖ］、ＶＩＮ＝２．０［Ｖ］のとき、ＶＯＵＴ＝２．０［Ｖ］となる。また、図７の例では、回路シミュレーション結果から取得された波形データの取得終了タイミングでの電圧値（前述の経過時間が５μｓのときの電圧値）は、ＶＩＮ＝１．０［Ｖ］のときは０．９［Ｖ］、ＶＩＮ＝２．０［Ｖ］のときは２．２［Ｖ］である。
【００４９】
そのため、ＶＩＮ＝１．０［Ｖ］のときの出力差分データは、−０．１［Ｖ］、ＶＩＮ＝２．０［Ｖ］のときの出力差分データは、０．２［Ｖ］となっている。
機能検証処理（図３のステップＳ２）では、上記のような波形データベースＤ１、出力差分データベースＤ２に格納された波形データまたは出力差分データを用いて機能検証が行われる。
【００５０】
図８は、機能検証処理の一例を示すフローチャートである。
機能検証は、ＣＰＵ２１の制御のもと、１または複数の検証対象回路（機能モデル）に対し、所定のパターンの入力信号が与えられることで行われる。各機能モデルに対して、以下のような処理が行われる。
【００５１】
ステップＳ２０：ＣＰＵ２１は、機能モデルに対する入力（イベント）を検出する。
ステップＳ２１：ＣＰＵ２１は、動作条件に応じた出力の過渡状態の波形データを、たとえば、ＨＤＤ２３から読み出す。たとえば、図５に示したＶＩＮ＝ＶＯＵＴとなる回路３０に対するＶＩＮ＝２．０［Ｖ］の入力が検出されると、図７に示したような波形データベースＤ１からはｉｎｄｅｘ２の波形データが読み出される。
【００５２】
ステップＳ２２：ＣＰＵ２１は、読み出した出力の過渡状態の波形データを、機能モデルの出力信号として出力させる。
ステップＳ２３：ＣＰＵ２１は、機能モデル内の機能演算を実施する。たとえば、図５に示した回路３０では、ＶＩＮ＝ＶＯＵＴという機能演算が行われる。波形データ適用期間後は、インベンティブな機能演算が行われることで、高速な機能検証も保証される。
【００５３】
ステップＳ２４：ＣＰＵ２１は、動作条件に応じた出力差分データを、たとえば、ＨＤＤ２３から読み出し、機能演算結果を、読み出した出力差分データを用いて補正する。
図９は、機能演算結果の補正例を示すタイミングチャートである。図５に示したようなＶＩＮ＝ＶＯＵＴの機能演算を行う機能モデルに対する入力信号と、出力信号の様子が示されている。
【００５４】
たとえば、タイミングｔ７〜ｔ８の期間では、波形データベースＤ１から読み出された波形データが機能モデルの出力信号として適用される。読み出された波形データの適用が終わるタイミングｔ８からは、機能モデルでの機能演算結果が出力されるが、このときの波形データの電圧値と機能演算結果の電圧値とは、電圧差（ΔＶ）が生じる場合がある。このΔＶが、ステップＳ２１の処理で読み出された出力差分データと等しい。そこで、ＣＰＵ２１は、機能演算結果の電圧値に出力差分データを加算または減算することで、タイミングｔ８における波形データの電圧値に合わせることができる。
【００５５】
たとえば、機能モデルに対するＶＩＮ＝２．０［Ｖ］の入力が検出されると、図７に示した例では、波形データの取得終了タイミングでは０．２［Ｖ］、波形データの電圧値が、機能演算結果の電圧値（ＶＯＵＴ＝ＶＩＮ＝２．０［Ｖ］）よりも大きくなる。そこで、ＣＰＵ２１は、機能演算結果にｉｎｄｅｘ２の出力差分データである０．２［Ｖ］を加算し、２．２［Ｖ］とすることで、機能演算結果を、回路シミュレーションの波形データの値に補正することができる。
【００５６】
以上のように、第２の実施の形態の回路検証装置２０及び回路検証方法によれば、回路シミュレーションで取得した検証対象回路の出力の過渡状態における波形データを機能検証の際に用いることで、実デバイスの動作を反映した回路検証が可能となる。また、機能検証の際に、記憶した過渡状態の波形データを読み出して出力信号の生成に用いるため、機能モデルをトランジスタレベルの回路に置き換えて回路シミュレーションを行わなくてもよく、回路検証速度を速められる。
【００５７】
さらに、第２の実施の形態の回路検証装置２０及び回路検証方法によれば、波形データ適用後の機能演算結果を出力差分データにより補正するので、より精度よく実デバイスの動作を反映した回路検証が可能となる。
【００５８】
（変形例）
図１０は、第２の実施の形態の変形例における機能検証処理の一例を示すフローチャートである。
【００５９】
ステップＳ３０：ＣＰＵ２１は、機能モデルに対する入力（イベント）を検出する。
ステップＳ３１：ＣＰＵ２１は、機能モデルの出力値を検出する。
ステップＳ３２：ＣＰＵ２１は、機能モデルの出力値が波形データ適用条件を満たすか否かを判定する。図１０には、波形データ適用条件の一例が示されている。図１０に示されている波形データ適用条件の例では、波形データは、出力値が０．５［Ｖ］よりも大きい場合は、機能モデルの出力値として適用されず、０．５［Ｖ］以下では、適用される。このような波形データ適用条件は、たとえば、ＨＤＤ２３に格納されており、ＣＰＵ２１によって読み出される。
【００６０】
機能モデルの出力値が、波形データの適用条件を満たす場合、たとえば、図１０の波形データ適用条件の場合では、出力値が０．５［Ｖ］以下の場合には、ステップＳ３３の処理が行われる。機能モデルの出力値が、波形データの適用条件を満たさない場合、ステップＳ３５の処理が行われる。
【００６１】
ステップＳ３３：ＣＰＵ２１は、検証対象回路の出力の過渡状態の波形データを、たとえば、ＨＤＤ２３から読み出す。
ステップＳ３４：ＣＰＵ２１は、読み出した波形データを、機能モデルの出力信号として出力させる。
【００６２】
ステップＳ３５：ＣＰＵ２１は、機能モデル内の機能演算を実施する。
ステップＳ３６：ＣＰＵ２１は、出力差分データを、たとえば、ＨＤＤ２３から読み出し、機能演算結果を、読み出した出力差分データを用いて補正する。
【００６３】
ステップＳ３７：ＣＰＵ２１は、全てのイベントの検出を終了したか否かを判断する。全てのイベントが検出された場合、機能検証処理は終了し、イベントが残っている場合には、ステップＳ３０からの処理が繰り返される。
【００６４】
図１１は、機能演算結果の補正の変形例を示すタイミングチャートである。図１１では、入力信号の立ち上がりで出力信号があるレベルに立ち上がり、入力信号の立ち下がりでさらに上のレベルに上がる回路における、入力信号、機能モデルの出力信号、補正後の出力信号の例が示されている。
【００６５】
Ｖｔｈは、波形データを適用するか否かの閾値である。たとえば、図１０に示した波形データ適用条件の例では、０．５［Ｖ］である。
タイミングｔ９で、最初のイベント（入力信号の立ち上がり）が検出されると、回路シミュレーションで取得された波形データが、たとえば、ＨＤＤ２３から読み出され、機能モデルの出力信号として適用される。波形データの適用期間が終了すると（タイミングｔ１０）、前述のステップＳ３５，Ｓ３６の処理が行われ、出力差分データにより、点線で示される機能モデルの機能演算結果がΔＶ１増加して、タイミングｔ１０での波形データの値に補正される。
【００６６】
タイミングｔ１１で新たなイベント（入力信号の立ち下がり）が検出されると、そのときの機能モデル出力値が検出され、ステップＳ３２の処理が行われる。図１１の例では、機能モデルの出力値は、Ｖｔｈよりも大きいため、機能モデルの出力信号に対する波形データの適用は制限され、ステップＳ３５，Ｓ３６の処理が行われる。ステップＳ３６の処理では、予め求められている出力差分データにより、点線で示される機能モデルの機能演算結果がΔＶ２減少して、タイミングｔ１１での波形データの値に補正される。
【００６７】
このような機能検証処理によれば、回路シミュレーションで取得された波形データを適用する箇所を限定することができる。これにより、たとえば、Ｖｔｈを上回る領域では検証対象回路の出力信号の変化が、実デバイスの非線形動作を考慮しなくてもよい程度に小さい場合には、回路シミュレーションで取得された波形データを読み込まなくてもよくなり、検証速度を速められる。
【００６８】
（第３の実施の形態）
第２の実施の形態の回路検証方法は、動作条件ごと（たとえば、入力電圧ごと）に、回路シミュレーションを用いて検証対象回路の出力の過渡状態の波形データを取得するものであった。以下に示す第３の実施の形態の回路検証方法では、基準となる動作条件での回路シミュレーション結果に対する、他の動作条件での回路シミュレーション結果の波形データの変化の傾向を示す傾向データが用いられる。そのために、以下のような傾向データ抽出処理が行われる。
【００６９】
傾向データ抽出処理は、ＣＰＵ２１の制御のもと、回路シミュレーション結果抽出処理（図３のステップＳ１）において、基準となる動作条件での出力信号（以下基準の出力信号という）の波形データの取得後に行われる。なお、回路シミュレーションによる波形データの取得の際、波形データのサンプリング時間や、検証対象回路の入力信号の変化開始から出力信号の変化開始までの時間（遅延時間）についても取得される。
【００７０】
図１２は、傾向データ抽出処理の一例を示すフローチャートである。
ステップＳ４０：傾向データ抽出処理を行うにあたって、まずＣＰＵ２１は、検証対象回路の動作条件を１つまたは複数取得する。動作条件としては、たとえば、検証対象回路の入力電圧、電源電圧、温度、負荷の値、プロセスのパラメータなどがある。動作条件は、たとえば、ＨＤＤ２３などに予め記憶されていてもよいし、回路検証装置２０のユーザにより入力デバイス２５ａから入力されてもよい。
【００７１】
ステップＳ４１：ＣＰＵ２１の制御のもと、取得された動作条件で、検証対象回路に対する回路シミュレーションが行われる。ＣＰＵ２１は、回路シミュレーションの実行結果から検証対象回路の出力信号において、変化が極大または極小となる点（以下特異点と呼ぶ）の情報（たとえば、電圧値、時間）を取得する。
【００７２】
変化が極大となる特異点としては、たとえば、出力信号において信号レベルがＬレベルからＨレベル（またはその逆）に変化するときの波形変化の開始点がある。変化が極小となる特異点としては、たとえば、出力信号における波形変化の収束点がある。
【００７３】
なお、ステップＳ４１の処理の際、第２の実施の形態の回路検証方法で説明したような、回路シミュレーション結果と機能モデルシミュレーション結果との間の出力差分データを各動作条件で取得し、たとえば、ＨＤＤ２３などに記憶するようにしてもよい。
【００７４】
ステップＳ４２：ＣＰＵ２１は、基準の出力信号の特異点の情報と、取得した動作条件での出力信号の特異点の情報とから傾向データを算出する。
傾向データとしては、たとえば、以下の３つがある。１つめは、基準の出力信号の波形変化の収束点における出力値（以下の例では、電圧値とする）と、取得した動作条件で得られた出力信号の波形変化の収束点における電圧値の比である。２つめは、入力信号の波形変化の開始点から、基準の出力信号の波形変化の開始点までの時間と、入力信号の波形変化の開始点から、取得した動作条件で得られた出力信号の波形変化の開始点までの時間の比である。つまり、２つめの傾向データは、遅延時間の比である。３つめは基準の出力信号の波形変化の開始点から波形変化の収束点までの時間と、取得した動作条件で得られた出力信号の波形変化の開始点から波形変化の収束点までの時間の比である。つまり、３つめの傾向データは、セットアップ時間の比である。
【００７５】
上記のように、検証対象回路の出力信号において、波形変化の開始点や収束点などの、変化が極大または極小となる特異点における情報から傾向データを算出することができる。このように傾向データを算出するポイントを限定することで、計算量を抑えることができる。
【００７６】
ステップＳ４３：ＣＰＵ２１は、たとえば、ＨＤＤ２３に格納されている（またはユーザにより入力された）全動作条件に対する傾向データの算出処理を終えたか判断する。ＣＰＵ２１は、全動作条件に対する傾向データ算出処理が終了したと判断した場合、傾向データ抽出処理を終了し、全動作条件に対する傾向データ算出処理が終了していないと判断した場合には、ステップＳ４０からの処理を繰り返す。
【００７７】
図１３は、検証対象回路の一例を示す図である。
図１３に示す検証対象回路４０は、たとえば、直列に接続された２段のインバータ４０ａ，４０ｂを有するバッファ回路である。検証対象回路４０には、パルス信号生成部４１から入力信号が供給される。また、インバータ４０ｂの出力端子には、負荷として容量４２が接続されている。
【００７８】
図１４は、回路シミュレーションの実行結果の一例を示すタイミングチャートである。図１３に示したような検証対象回路４０への入力信号と、３種類の動作条件で得られた出力信号の様子が示されている。
【００７９】
入力信号の立ち上がりから、基準となる動作条件で得られた基準の出力信号の変化開始までの時間（遅延時間ｔｄｒ）に対し、動作条件１で得られた出力信号における遅延時間ｔｄ１は短い。また、基準の出力信号における遅延時間ｔｄｒに対し、動作条件２で得られた出力信号における遅延時間ｔｄ２は長い。
【００８０】
また、基準の出力信号のセットアップ時間ｓｔｒに対して、動作条件１で得られた出力信号のセットアップ時間ｓｔ１は短く、動作条件２で得られた出力信号のセットアップ時間ｓｔ２は長い。
【００８１】
また、基準の出力信号の波形変化の収束点における電圧値Ｖｒに対して、動作条件１で得られた出力信号の波形変化の収束点における電圧値Ｖ１は大きく、動作条件２で得られた出力信号の波形変化の収束点における電圧値Ｖ２は小さい。
【００８２】
図１５は、算出される傾向データの一例を示す図である。基準となる動作条件を電源電圧ＶＤＤ＝４［Ｖ］としたときに算出される３種類の傾向データの例が示されている。
１つめが、電源電圧に応じたセットアップ時間比である。ＶＤＤ＝４［Ｖ］のときのセットアップ時間比（ｔ＿ｒａｔｉｏ）を１．００としたとき、ＶＤＤ＝３［Ｖ］の動作条件では、ｔ＿ｒａｔｉｏ＝１．３０、ＶＤＤ＝５［Ｖ］の動作条件では、ｔ＿ｒａｔｉｏ＝０．８５であることが示されている。
【００８３】
２つめが、電源電圧に応じた電圧比、すなわち、ＶＤＤ＝４［Ｖ］で得られた出力信号の波形変化の収束点における電圧値と、他の電源電圧で得られた出力信号の波形変化の収束点における電圧値の比である。ＶＤＤ＝４［Ｖ］のときの電圧比（ｖｒａｔｉｏ）を１．００としたとき、ＶＤＤ＝３［Ｖ］の動作条件では、ｖｒａｔｉｏ＝０．７５、ＶＤＤ＝５［Ｖ］の動作条件では、ｖｒａｔｉｏ＝１．２５であることが示されている。
【００８４】
３つめが、電源電圧に応じた遅延時間比である。ＶＤＤ＝４［Ｖ］のときの遅延時間比（ｄｅｌａｙ）を１．００としたとき、ＶＤＤ＝３［Ｖ］の動作条件では、ｄｅｌａｙ＝１．３４、ＶＤＤ＝５［Ｖ］の動作条件では、ｄｅｌａｙ＝０．８４であることが示されている。
【００８５】
このような傾向データは、たとえば、テキストファイルで、ＨＤＤ２３などに記憶される。図１５に示した例では、電源電圧に応じたセットアップ時間比は“ｔｒａｔｉｏ．ｔｘｔ”というファイル名で記憶される、電源電圧に応じた電圧比は“ｖｒａｔｉｏ．ｔｘｔ”というファイル名で記憶される。電源電圧に応じた遅延時間比は“ｄｅｌａｙ．ｔｘｔ”というファイル名で記憶される。
【００８６】
上記のような傾向データ抽出処理が終わると、ＣＰＵ２１は、検証対象回路の機能モデルを更新する。
図１６は、更新された機能モデルのコードの一例を示す図である。図１３に示したような検証対象回路４０の機能モデルを更新した例が示されている。
【００８７】
コード部Ａでは、基準の出力信号の波形データのファイル（ｗａｖｅｆｏｒｍ＿ｄｅｆａｕｌｔ．ｔｘｔ）や、図１５に示したような傾向データのファイルが指定されている。
コード部Ｂでは、基準の出力信号の波形データのサンプリング時間（ｐ＿ｔｕｎｉｔ）と、基準の出力信号の遅延時間（ｐ＿ｄｅｌａｙ）が指定されている。
【００８８】
コード部Ｃでは、傾向データをもとに基準の出力信号の波形データを変形する際のパラメータ（ｖａｒ＿ｄｒａｔｉｏ，ｖａｒ＿ｖｒａｔｉｏ，ｖａｒ＿ｔｒａｔｉｏ）が算出される。パラメータは、傾向データ抽出の際に適用した電源電圧（図５ではアナログ電源を想定して“ＡＶＤ”と表記されている）以外の値が機能検証の際に指定されたときのために、たとえば、傾向データの値を線形補間して求められる。
【００８９】
コード部Ｄでは、基準の出力信号の遅延量（ｐ＿ｄｅｌａｙ）と、コード部Ｃで求められるパラメータｖａｒ＿ｄｒａｔｉｏとの乗算が行われ、指定された動作条件で新たに生成される波形データの遅延量（ｖａｒ＿ｄｅｌａｙ）が求められる。
【００９０】
コード部Ｅでは、基準の出力信号の波形データのサンプリング時間（ｐ＿ｔｕｎｉｔ）と、コード部Ｃで求められるパラメータｖａｒ＿ｔｒａｔｉｏとの乗算が行われる。これにより、指定された動作条件の出力信号の波形データのサンプリング時間（ｖａｒ＿ｔｉｍｅ）が求められる。
【００９１】
コード部Ｆでは、基準の出力信号の波形データの各データポイント間の電圧の変化値（ｖａｒ＿ｖｏｕｔ＿ｔｍｐ）と、コード部Ｃで求められるパラメータｖａｒ＿ｖｒａｔｉｏとの乗算が行われる。これにより、指定された動作条件の出力信号の波形データの各データポイント間の電圧の変化値（ｖａｒ＿ｖｏｕｔ）が求められる。
【００９２】
更新された機能モデルは、たとえば、ＨＤＤ２３などに記憶される。
機能モデルの更新が終わると、更新した機能モデルを用いた機能検証処理が行われる。
図１７は、第３の実施の形態の回路検証方法における機能検証処理の一例を示すフローチャートである。
【００９３】
ステップＳ５０：ＣＰＵ２１は、たとえば、ＨＤＤ２３などに記憶されている機能モデルを読み出す。
ステップＳ５１：ＣＰＵ２１は、機能モデルに対する入力（イベント）を検出する。
【００９４】
ステップＳ５２：ＣＰＵ２１は、シミュレーションの動作条件と傾向データとから、波形データ変更用のパラメータを決定する。動作条件は、たとえば、ユーザにより指定される。傾向データは、たとえば、ＨＤＤ２３から読み出される。
【００９５】
図１６に示したような機能モデルでは、動作条件として指定された電源電圧ＡＶＤに応じた波形データ変更用のパラメータ（ｖａｒ＿ｄｒａｔｉｏ，ｖａｒ＿ｖｒａｔｉｏ，ｖａｒ＿ｔｒａｔｉｏ）が、コード部Ｃにより決定される。指定された動作条件に対応する傾向データがある場合には、その傾向データがパラメータとなり、指定された動作条件に対応する傾向データがない場合には、たとえば、線形補間または近似式などによりパラメータが求められる。
【００９６】
なお、ＣＰＵ２１は、出力差分データに対しても同様に、線形補間または近似式などで、指定された動作条件に対応する値を求めてもよい。
複数の動作条件を考慮する場合、複数の動作条件に影響を受ける傾向データから求められるパラメータを掛け合わせたものが、波形データ変更用のパラメータとなる。
【００９７】
図１８は、複数の動作条件を考慮したパラメータ決定方法の一例を示す図である。図１８では、温度条件と電源電圧条件の２つの動作条件を考慮したパラメータ決定方法の一例が示されている。
【００９８】
ステップＳ５２ａ：ＣＰＵ２１は、温度条件に応じた傾向データから、前述した線形補間などを用いてパラメータを作成する。温度条件に依存する傾向データは、前述した３つの傾向データの例では、遅延時間の比と、セットアップ時間の比がある。
【００９９】
ステップＳ５２ｂ：ＣＰＵ２１は、電源電圧条件に応じた傾向データから、前述した線形補間などを用いてパラメータを作成する。前述した３つの傾向データは、何れも電源電圧条件に依存する。
【０１００】
ステップＳ５２ｃ：ＣＰＵ２１は、温度条件と電源電圧条件の両方に影響を受ける傾向データから求められたパラメータについては両者を掛け合わせることで、波形データ変更用のパラメータを決定する。前述した３つの傾向データの例では、遅延時間の比と、セットアップ時間の比については、温度条件と電源電圧条件に影響を受けるため、各動作条件で求められたパラメータを掛け合わせて波形データ変更用のパラメータが決定される。
【０１０１】
たとえば、基準の動作条件として、電源電圧が４Ｖ、温度が２０℃である場合、ＣＰＵ２１は、温度を２５℃に変化させたときに得られる遅延時間の比に対して、温度が２０℃のままで電源電圧を５Ｖに変化させたときに得られる遅延時間の比を掛ける。また、ＣＰＵ２１は、温度を２５℃に変化させたときに得られるセットアップ時間の比に対して、温度が２０℃のままで電源電圧を５Ｖに変化させたときに得られるセットアップ時間の比を掛ける。
【０１０２】
これにより、温度が２５℃、電源電圧が５Ｖのときの２つの波形データ変更用のパラメータが求められる。
傾向データの３つめである電圧値との比については、温度条件に依存しないとする。その場合、ステップＳ５２ｂの処理で、電源電圧が５Ｖのときの電圧値の比をもとに求められたパラメータが、温度が２５℃、電源電圧が５Ｖのときの３つめの波形データ変更用パラメータとなる。
【０１０３】
なお、ステップＳ５２ａとステップＳ５２ｂの処理の順序は逆であってもよいし、並列に実行されるようにしてもよい。
図１７のフローチャートの説明に戻る。
【０１０４】
ステップＳ５３：ＣＰＵ２１は、たとえば、ＨＤＤ２３に記憶しておいた基準の出力信号の過渡状態における波形データを読み出す。
ステップＳ５４：ＣＰＵ２１は、ステップＳ５２の処理で決定した波形データ変更用のパラメータを用いて、読み出した基準の出力信号の過渡状態における波形データの補正処理を行い、動作条件に応じた波形データを生成する。
【０１０５】
図１９は、波形データ補正処理の一例を示す図である。横軸は時間、縦軸は電圧である。
基準の出力信号の波形データと、指定された動作条件で生成された波形データの例が示されている。時間ｔａは、基準の出力信号のセットアップ時間を、時間ｔｂは、指定された動作条件での出力信号のセットアップ時間を示している。電圧Ｖａは、基準の出力信号の波形変化の収束点での電圧値、電圧Ｖｂは、指定された動作条件での出力信号の波形変化の収束点での電圧値を示している。
【０１０６】
基準の出力信号の波形データに対して、波形データ変更用のパラメータを適用することで、たとえば、遅延量はΔｔｄだけ短くなる。また、サンプリング時間Δｔ２は、基準の出力信号の波形データのサンプリング時間Δｔ１のｔｂ／ｔａ倍になるように変更される。また、各データポイントの電圧の変化値Δｖ２は、基準の出力信号の波形データのデータポイントの電圧の変化値Δｖ１のＶｂ／Ｖａ倍になるように変更される。
【０１０７】
ステップＳ５５：ＣＰＵ２１は、生成した波形データを、機能モデルの過渡状態の出力信号として出力させる。
ステップＳ５６：ＣＰＵ２１は、機能モデル内の機能演算を実施する。
【０１０８】
ステップＳ５７：ＣＰＵ２１は、機能演算結果を出力する。このとき、動作条件に応じた出力差分データを、たとえば、ＨＤＤ２３から読み出し、機能演算結果を、読み出した出力差分データを用いて補正するようにしてもよい。
【０１０９】
以上のような、第３の実施の形態の回路検証方法によれば、第１及び第２の実施の形態の回路検証方法と同様の効果が得られる。さらに、第３の実施の形態の回路検証方法によれば、動作条件に応じた傾向データを求めて、傾向データをもとに基準の出力信号の波形を補正するため、動作条件を反映した精度のよい回路検証が可能となる。
【０１１０】
また、第３の実施の形態の回路検証方法では、動作条件ごとの波形データが記憶されるのではなく、動作条件ごとの傾向データが記憶される。そのため、記憶するデータ量を抑えることができる。
【０１１１】
図２０は、第３の実施の形態の回路検証方法で得られた補正後の波形データと、回路シミュレーション波形との比較例を示す図である。横軸は時間［ｐｓ］であり、縦軸は電圧［Ｖ］である。
【０１１２】
電源電圧が４Ｖのときの回路シミュレーション（ＳＰＩＣＥ）で得られた出力信号を基準として、電源電圧を３Ｖ、３．５Ｖ、４．５Ｖ、５Ｖに変化させたときに、前述の機能検証により得られた補正後の波形データの例が示されている。補正後の波形データは、各電源電圧について行った回路シミュレーションで得られた波形と比較して、高い精度（誤差±２％）で一致した。
【０１１３】
なお、上記の処理内容は、コンピュータによって実現することができる。その場合、回路検証装置１０，２０が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置にはＨＤＤ、フレキシブルディスク、磁気テープなどがある。光ディスクには、ＤＶＤ、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯなどがある。
【０１１４】
プログラムを流通させる場合には、たとえば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１１５】
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１１６】
上記については単に本発明の原理を示すものである。さらに、多数の変形や変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成及び応用例に限定されるものではなく、対応する全ての変形例及び均等物は、添付の請求項及びその均等物による本発明の範囲とみなされる。
【符号の説明】
【０１１７】
１０  回路検証装置
１１  制御部
１２  記憶部
１５  検証対象回路
１５ａ  検証対象回路（機能モデル）
【図１】
2013132642.tif 000003
【図２】
2013132642.tif 000004
【図３】
2013132642.tif 000005
【図４】
2013132642.tif 000006
【図５】
2013132642.tif 000007
【図６】
2013132642.tif 000008
【図７】
2013132642.tif 000009
【図８】
2013132642.tif 000010
【図９】
2013132642.tif 000011
【図１０】
2013132642.tif 000012
【図１１】
2013132642.tif 000013
【図１２】
2013132642.tif 000014
【図１３】
2013132642.tif 000015
【図１４】
2013132642.tif 000016
【図１５】
2013132642.tif 000017
【図１６】
2013132642.tif 000018
【図１７】
2013132642.tif 000019
【図１８】
2013132642.tif 000020
【図１９】
2013132642.tif 000021
【図２０】
2013132642.tif 000022
【手続補正書】
【提出日】平成26年7月30日(2014.7.30)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、回路検証方法、回路検証装置及びプログラムに関する。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
たとえば、タイミングｔ７〜ｔ８の期間では、波形データベースＤ１から読み出された波形データが機能モデルの出力信号として適用される。読み出された波形データの適用が終わるタイミングｔ８からは、機能モデルでの機能演算結果が出力されるが、このときの波形データの電圧値と機能演算結果の電圧値とは、電圧差（ΔＶ）が生じる場合がある。このΔＶが、ステップＳ２４の処理で読み出された出力差分データと等しい。そこで、ＣＰＵ２１は、機能演算結果の電圧値に出力差分データを加算または減算することで、タイミングｔ８における波形データの電圧値に合わせることができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００８８
【補正方法】変更
【補正の内容】
【００８８】
コード部Ｃでは、傾向データをもとに基準の出力信号の波形データを変形する際のパラメータ（ｖａｒ＿ｄｒａｔｉｏ，ｖａｒ＿ｖｒａｔｉｏ，ｖａｒ＿ｔｒａｔｉｏ）が算出される。パラメータは、傾向データ抽出の際に適用した電源電圧（図１６ではアナログ電源を想定して“ＡＶＤ”と表記されている）以外の値が機能検証の際に指定されたときのために、たとえば、傾向データの値を線形補間して求められる。
【手続補正４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
回路シミュレーションにより検証対象回路の出力の過渡状態における波形データを取得して記憶部に記憶し、
前記検証対象回路の機能モデルを用いた機能検証時に、前記機能モデルへの入力を検出すると、前記記憶部に記憶されている前記波形データを用いて前記機能モデルの出力信号を生成する、回路検証方法。
【請求項２】
前記検証対象回路に対して、複数の動作条件で回路シミュレーションを実行し、基準となる動作条件での回路シミュレーション結果に対する、他の動作条件での回路シミュレーション結果の前記波形データの変化の傾向を示す傾向データを取得し、
機能検証時において、指定される動作条件に対応する前記傾向データをもとに、前記基準となる動作条件で取得された前記波形データを補正して、前記機能モデルの出力信号を生成する、請求項１に記載の回路検証方法。
【請求項３】
前記傾向データは、前記基準となる動作条件での回路シミュレーション結果と他の動作条件での回路シミュレーション結果から得られる、前記検証対象回路での遅延時間の比、前記検証対象回路でのセットアップ時間の比、または前記検証対象回路の出力値の比である、請求項２に記載の回路検証方法。
【請求項４】
前記傾向データは、回路シミュレーションで得られる前記検証対象回路の出力信号において、変化が極大または極小となる点における情報から取得される、請求項２または３に記載の回路検証方法。
【請求項５】
機能シミュレーションにより前記機能モデルの出力信号を求め、前記波形データの取得終了タイミングにおける、前記機能モデルの出力信号と前記波形データとの差分値を取得し、
機能検証時に、前記波形データを適用後の前記機能モデルの出力信号を、前記差分値をもとに補正する、請求項１乃至４の何れか一項に記載の回路検証方法。
【請求項６】
機能検証時において、前記機能モデルへの入力検出時に、前記機能モデルの出力信号が、閾値を超える場合、前記機能モデルの出力信号への前記波形データの適用を制限し、前記差分値を用いた補正を行う、請求項５に記載の回路検証方法。
【請求項７】
記憶部と、
回路シミュレーションにより検証対象回路の出力の過渡状態における波形データを取得して前記記憶部に記憶し、前記検証対象回路の機能モデルを用いた機能検証時に、前記機能モデルへの入力を検出すると、前記記憶部に記憶されている前記波形データを用いて前記機能モデルの出力信号を生成する制御部と、
を有する回路検証装置。
【請求項８】
回路シミュレーションにより検証対象回路の出力の過渡状態における波形データを取得して記憶部に記憶し、
前記検証対象回路の機能モデルを用いた機能検証時に、前記機能モデルへの入力を検出すると、前記記憶部に記憶されている前記波形データを用いて前記機能モデルの出力信号を生成する、
処理をコンピュータに実行させるプログラム。
【手続補正５】
【補正対象書類名】図面
【補正対象項目名】図８
【補正方法】変更
【補正の内容】
【図８】
2013132642.tif 000023
【国際調査報告】
2013132642.tif 000024
2013132642.tif 000025