(57)【特許請求の範囲】
【請求項１】
入力に対して一意に出力が定まる回路のモデルを生成する方法であって、
コンピュータが、
回路のシミュレーション波形を受け付け、
前記シミュレーション波形の複数の入力パターンの各入力値に対する出力のＤＣレベルと、前記複数の入力パターンの各入力値による出力の変化時から該出力のＤＣレベルの安定状態の開始時までの遷移時間とを取得し、
取得した前記複数の各入力値と前記出力のＤＣレベルとの組をもとに、入力と出力との関係を表す第１の数式を生成し、前記第１の数式と取得した前記遷移時間とをもとに、取得した前記出力のＤＣレベルの変化に前記遷移時間の情報を対応させた第２の数式を生成し、前記第１の数式と前記第２の数式を含む数式モデルを生成する、処理を実行する
ことを特徴とする回路モデル生成方法。
【請求項２】
前記第１の数式を生成する処理において、予め設定された関数補間手法を使用する
ことを特徴とする請求項１に記載の回路モデル生成方法。
【請求項３】
前記第２の数式の前記遷移時間の情報として、前記入力パターンの各入力値について一の入力値から他の入力値への遷移時間をもとに前記一の入力値に対する出力値から前記他の入力値に対する出力値への各傾きを算出し、前記入力パターンの遷移の始点から終点への出力値の傾きに最も近似する１つの算出した傾きを用いる
ことを特徴とする請求項１または請求項２に記載の回路モデル生成方法。
【請求項４】
前記コンピュータが、
前記数式モデルをハードウェア記述言語により示す回路モデルを生成する処理を実行する
ことを特徴とする請求項１ないし請求項３のいずれか一項に記載の回路モデル生成方法。
【請求項５】
入力に対して一意に出力が定まる回路のモデルを生成する装置であって、
回路のシミュレーション波形を受け付ける処理部と、
前記シミュレーション波形の複数の入力パターンの各入力値に対する出力のＤＣレベルと、前記複数の入力パターンの各入力値による出力の変化時から該出力のＤＣレベルの安定状態の開始時までの遷移時間とを取得する処理部と、
取得した前記複数の各入力値と前記出力のＤＣレベルとの組をもとに、入力と出力との関係を表す第１の数式を生成し、前記第１の数式と取得した前記遷移時間とをもとに、取得した前記出力のＤＣレベルの変化に前記遷移時間の情報を対応させた第２の数式を生成し、前記第１の数式と前記第２の数式を含む数式モデルを生成する処理部とを備える
ことを特徴とする回路モデル生成装置。
【請求項６】
入力に対して一意に出力が定まる回路のモデルを生成するために、
コンピュータに、
回路のシミュレーション波形を受け付け、
前記シミュレーション波形の複数の入力パターンの各入力値に対する出力のＤＣレベルと、前記複数の入力パターンの各入力値による出力の変化時から該出力のＤＣレベルの安定状態の開始時までの遷移時間とを取得し、
取得した前記複数の各入力値と前記出力のＤＣレベルとの組をもとに、入力と出力との関係を表す第１の数式を生成し、前記第１の数式と取得した前記遷移時間とをもとに、取得した前記出力のＤＣレベルの変化に前記遷移時間の情報を対応させた第２の数式を生成し、前記第１の数式と前記第２の数式を含む数式モデルを生成する、処理を実行させる
ことを特徴とする回路モデル生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路シミュレーション分野における、アナログ回路モデルの生成技術に関する。
【背景技術】
【０００２】
近年、集積回路規模がますます増大しており、アナログとデジタルを１チップに搭載した回路が多くなっている。チップ全体で機能検証を行う場合に、デジタル回路はＲＴＬ（Ｒｅｓｉｓｔｅｒ  Ｔｒａｎｓｆｅｒ  Ｌｅｖｅｌ）のようなハードウェア記述言語を用いて高速なシミュレーションが可能である。しかし、アナログ回路のシミュレーションが非常に低速であるため、チップ全系での機能検証が困難になっている。
【０００３】
そこで、アナログＨＤＬ（Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）と呼ばれる言語で回路をモデル化してシミュレーションを高速に行う手法が近年盛んに用いられている。
【０００４】
ところで、回路モデルによる回路シミュレーションの利用として、従来、いくつかの手法が知られている。
【０００５】
例えば、素子接続情報から下位階層セルの解析用モデルを生成し、下位階層セルに対する回路シミュレーションの結果を参照して上位階層セルの解析用モデルを生成し、その解析モデルを用いて上位階層セルに対する回路シミュレーションを実行する手法が知られている。
【０００６】
また、回路シミュレーションを実施して、モデル化対象のモジュールに対する入出力信号の値および時刻から、所定のアルゴリズムによって、モデル化対象のモデルに対する入出力信号についての隠れマルコフモデルを生成する手法が知られている。
【０００７】
さらに、入力信号の変化開始時から出力信号の変化開始時までの第１の遅延時間と、入力信号の変化開始時から出力信号の変化開始時までの第２の遅延時間とをそれぞれ遅延モデル式によって表現する手法が知られている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００３−５８５９５号公報
【特許文献２】特開２０１０−２８６９４８号公報
【特許文献３】特開平９−３１９７７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
アナログＨＤＬによってアナログ回路をモデル化する場合に、従来は、仕様書やシミュレーション結果から、目視や手計算によって人手でモデルを構築していた。
【００１０】
図１２は、従来の人手によるアナログ回路のモデル構築の作業例を示す図である。
【００１１】
作業者は、まず、表示されたシミュレーション波形を目視して、入力に対する出力のＤＣレベルを特定し、入力が変化してからＤＣレベルが安定するまでの遷移時間を求める（作業ＯＰ１）。そして、作業者は、特定した入力に対する出力のＤＣレベルと遷移時間とをもとにモデル式を手計算し、計算したモデル式を表すアナログＨＤＬをコーディングして回路モデルを生成する（作業ＯＰ２）。
【００１２】
したがって、波形目視（作業ＯＰ１）では、数値の読み間違いや見落とし等のミスが入り込みやすいという問題があった。また、シミュレーション波形に見るべきポイントが多くなると、作業工数が増大するという問題があった。さらに、モデル式の手計算、コーディング（作業ＯＰ２）では、手計算によるミスが入り込みやすいという問題があった。また、作業者の手計算の経験や練度によって、モデル式の精度にばらつきが生じるという問題があった。また、作業者のアナログＨＤＬコーディングの経験が少なかったり練度が不足していたりした場合には、作業工数に増大するという問題があった。
【００１３】
以上の問題から、アナログ回路モデルの自動生成が強く所望されている。本発明の目的は、アナログ回路のシミュレーション波形から回路モデルを自動的に生成できる処理を実現する方法、装置およびプログラムを提供することである。
【課題を解決するための手段】
【００１４】
本発明の一態様として開示する回路モデル生成方法は、入力に対して一意に出力が定まる回路のモデルを生成する方法であって、コンピュータが、回路のシミュレーション波形を受け付け、前記シミュレーション波形の複数の入力パターンの各入力値に対する出力のＤＣレベルと、前記複数の入力パターンの各入力値による出力の変化時から該出力のＤＣレベルの安定状態の開始時までの遷移時間とを取得し、取得した前記複数の各入力値と前記出力のＤＣレベルとの組をもとに、入力と出力との関係を表す第１の数式を生成し、前記第１の数式と取得した前記遷移時間とをもとに、取得した前記出力のＤＣレベルの変化に前記遷移時間の情報を対応させた第２の数式を生成し、前記第１の数式と前記第２の数式を含む数式モデルを生成する、処理を実行するものである。
【発明の効果】
【００１５】
上記開示した回路モデル生成方法によれば、アナログ回路モデルを自動生成することができ、回路シミュレーション処理を高速化することができる。
【図面の簡単な説明】
【００１６】
【図１】一実施の形態における回路モデル生成装置のブロック構成例を示す図である。
【図２】一実施の形態における回路モデル生成装置の処理フロー例を示す図である。
【図３】一実施の形態における処理フローのステップＳ２およびＳ３の処理により取得される出力値ｙｊおよび遷移時間ｔｊの例を示す図である。
【図４】一実施の形態において得られた数式モデルの例を示す図である。
【図５】一実施の形態における遷移時間の情報とする傾きの例を示す図である。
【図６】一実施の形態において処理フローのステップＳ４の処理で得られる数式モデルと、ステップＳ５の処理で得られる数式モデルとの相違を説明するための図である。
【図７】一実施例において、回路モデル生成の対象となるアナログ回路の構成例を示す図である。
【図８】一実施例において、シミュレーション波形の入力波形の入力パターン例を示す図である。
【図９】一実施例において、回路モデル生成装置により出力される、アナログＨＤＬによる回路モデルの例を示す図である。
【図１０】回路シミュレーションにおける、各ゲインのゲイン制御ビットの入力と、回路モデル生成装置が出力した回路モデルの出力波形例と、従来手法により作成した回路モデルの出力波形例とを示す図である。
【図１１】回路モデル生成装置を実施する装置のハードウェア構成を示す図である。
【図１２】従来の人手によるアナログ回路のモデル構築の作業例を示す図である。
【発明を実施するための形態】
【００１７】
以下、本発明の一態様として開示する回路モデル生成装置について説明する。
【００１８】
図１は、一実施の形態における回路モデル生成装置のブロック構成例を示す図である。
【００１９】
回路モデル生成装置１は、入力に対して一意に出力が決定するアナログ回路のモデルを自動生成する装置である。回路モデル生成装置１の処理対象は、入力に対して一意に出力が決定する回路に限定される。例えば、可変ゲインアンプ、デジタル・アナログ・コンバータ（ＤＡＣ）等の回路は処理対象となるが、例えば、位相同期回路（ＰＬＬ）のように、内部にフリップフロップ（ＦＦ）を備えて状態を保持するような回路は、処理対象とはならない。
【００２０】
回路モデル生成装置１は、データ受け付け部１１、出力・遷移時間取得部１３、数式モデル構築部１５、回路モデル生成部１７を備える。
【００２１】
データ受け付け部１１は、処理対象となる回路のシミュレーション波形２を、入力として受け付ける。
【００２２】
出力・遷移時間取得部１３は、受け付けたシミュレーション波形２の入出力関係の波形から、各入力値に対する出力のＤＣレベルとそのＤＣレベルとなるまでの遷移時間を取得する。遷移時間は、その入力値による出力の変化時から出力の安定状態の開始時までの時間とし、前の入力値に対する出力の影響を排除するため、傾きを使用する。出力のＤＣレベルは、安定状態での値であり、電圧レベルまたは電流レベルの値とする。
【００２３】
数式モデル構築部１５は、各入力値と、取得した出力のＤＣレベルとの組をもとに、入力と出力との関係を示す数式モデルを生成する。数式モデル構築部１５は、関数補間手法を用いて、未知の入力値に対する出力のＤＣレベルを得る関数を得る。
【００２４】
さらに、数式モデル構築部１５は、出力・遷移時間取得部１３が取得した遷移時間をもとに、数式モデルに遷移時間の情報を設定する。
【００２５】
回路モデル生成部１７は、数式モデルをハードウェア記述言語により記述した回路モデル情報を生成する。
【００２６】
次に、回路モデル生成装置１の動作を説明する。
【００２７】
図２は、回路モデル生成装置１の処理フロー例を示す図である。
【００２８】
ステップＳ１：  データ受け付け部１１は、処理対象のシミュレーション波形２を受け付ける。
【００２９】
ステップＳ２：  出力・遷移時間取得部１３は、受け付けられたシミュレーション波形２について、与えられた全ｉ通りの入力パターン（入力値の組み合わせ）について、入力値ｘｊ（１≦ｊ≦ｉ）に対する出力のＤＣレベル、すなわちＤＣレベルが安定状態となる電圧レベルまたは電流レベルを、出力値ｙｊとして取得する。
【００３０】
ステップＳ３：  出力・遷移時間取得部１３は、シミュレーション波形２について、入力値ｘｊを変えてからＤＣレベルが安定するまで（入力値の変化時からＤＣレベルの安定状態の開始時）までの遷移時間ｔｊを取得する。出力・遷移時間取得部１３は、前の出力値ｙj−１の影響を取り除くため、遷移時間ｔｊとして、傾きａｊを用い、以下の式で取得する。
【００３１】
ａｊ＝｜ｙｊ−ｙj−１｜／ｔｊ
図３は、ステップＳ２およびＳ３の処理により取得される出力値ｙｊおよび遷移時間ｔｊの例を示す図である。図３に示すように、出力・遷移時間取得部１３により、ｘ０の初期値から、ｘ１、ｘ２、ｘ３、…、ｘｉの各入力値について、安定状態となったＤＣレベルの出力値ｙ０、ｙ１、ｙ２、ｙ３、…、ｙｉと、遷移時間ｔ１、ｔ２、ｔ３、…、ｔｉ（ａ１、ａ２、ａ３、…、ａｉ）とが得られる。
【００３２】
なお、ステップＳ２およびＳ３は、入力値ｘｊ毎に実行されてもよい。
【００３３】
ステップＳ４：  数式モデル構築部１５は、入力値ｘｊと出力値ｙｊとの組（ｘｊ，ｙｊ）から、既知の関数補間手法を用いて、未知の入力ｘ’に対する出力値（ＤＣレベル）ｙ’の関数、ｙ’＝ｆ（ｘ’）を得て、数式モデルとする。なお、ここで、入力値ｘｊと出力値ｙｊは、多次元であってもよい。
【００３４】
図４は、得られた数式モデルの例を示す図である。
【００３５】
ステップＳ５：  図４に示すように、ステップＳ４で得られた、入力値ｘ’と出力値ｙ’との関係を示す数式モデルには時間遷移の情報が含まれていないので、数式モデル構築部１５は、数式モデルに遷移時間情報を組み込む。数式モデル構築部１５は、遷移時間情報として、入力が時間ｔｋで入力値ｘ’ｋに変化したときに、出力値ｙ’ｋ−１から出力値ｙ’ｋへと遷移する傾きａ’ｋを算出する。
【００３６】
図５は、遷移時間の情報とする傾きの例を示す図である。
【００３７】
数式モデル構築部１５は、出力値ｙ’ｋ−１から出力値ｙ’ｋへの遷移で、遷移の始点と終点との傾きに最も近い傾きａｊを使用する。数式モデル構築部１５は、
｜｜ｙｊ−ｙ’ｋ｜｜＋｜｜ｙｊ−１−ｙ’ｋ−１｜｜（１≦ｊ≦ｉ）が最少となるｊを求め、ａ’ｋ＝ａｊとする。
【００３８】
そして、数式モデル構築部１５は、入力値ｘ’、出力値ｙ’、遷移時間ｔ’の関係を示す数式モデルとして、以下の数式（式１、式２）を出力する。
【００３９】
式１：  ｙ’＝ｆ（ｘ’k）
（ｔ−ｔk≧｜（ｙ’k−ｙ’k-1）．／ａ’k｜）
式２：  ｙ’＝ｙ’k-1＋ａ’k（ｔ-ｔk）
（ｔ−ｔk＜｜（ｙ’k−ｙ’k-1）．／ａ’k｜）
図６は、ステップＳ４の処理で得られる数式モデルと、ステップＳ５の処理で得られる数式モデルとの相違を説明するための図である。
【００４０】
図６に示すように、ステップＳ５の処理により、数式モデルにおいて、入力の変化に伴って出力（ＤＣレベル）が変化する際に、安定した出力値となるまでの時間情報（遷移時間）が表現されることが分かる。
【００４１】
ステップＳ６：  回路モデル生成部１７は、ステップＳ５の処理で得た数式モデルを、ハードウェア記述言語の１つである、アナログＨＤＬを用いて記述する回路モデル３を生成し、出力する。
【００４２】
以下、回路モデル生成装置１の一実施例を説明する。
【００４３】
一実施例において、回路モデル生成装置１は、可変ゲインアンプ回路について回路モデルを生成するものとする。
【００４４】
図７は、回路モデル生成の対象となるアナログ回路の構成例を示す図である。図７に示す回路は、ＩＮから信号波形の入力があり、ＯＵＴから信号波形の出力がある、５つの可変ゲイン（ＧＡ４〜０）設定を有する可変ゲインアンプ回路である。
【００４５】
図８は、シミュレーション波形の入力波形の入力パターン例を示す図である。図８の入力パターンは、ゲイン制御ビットの全通りの設定における入力（ＩＮ）と出力のＤＣレベル（ＯＵＴ）との関係を示すデータテーブルで示されている。
【００４６】
回路モデル生成装置１は、上述した処理により、図８に示すデータテーブルの値をもとに、可変ゲインアンプ回路の数式モデルを構築し、構築した数式モデルを記述する回路モデルを生成する。
【００４７】
図９は、回路モデル生成装置１により出力される、アナログＨＤＬにより記述された回路モデルの例を示す図である。
【００４８】
図１０は、回路シミュレーションにおける、各ゲインのゲイン制御ビットの入力と、回路モデル生成装置１が出力した回路モデルの出力波形例と、従来手法により作成した回路モデルの出力波形例とを示す図である。
【００４９】
図１０に示されるように、回路モデル生成装置１が出力した回路モデルによる出力波形は、従来手法により生成された回路モデルの出力波形とは、ほぼ同じである。
【００５０】
一方、回路モデル生成装置１の処理時間は、従来手法に比較して非常に短くなったため、回路モデル生成装置１を適用した回路シミュレーションにおいて、回路シミュレーション時間を約１／１００程度に短縮することができる。
【００５１】
以上説明した回路モデル生成装置１は、図１に示す処理部を備える専用ハードウェアまたは、図１１に示すような、ＣＰＵ１０１、メモリ１０２、記憶装置（ハードディスク）１０３、入力装置（キーボード）１０４、出力装置（ディスプレイ）１０５が内部のネットワーク等で接続されたコンピュータ１００により実施することができる。
【００５２】
さらに、回路モデル生成装置１は、コンピュータ１００で実行可能なプログラムとして実施することができる。この場合に、図１に示す回路モデル生成装置１の処理部の機能を実現するプログラムをコンピュータ１００上で実行することにより、実施する。すなわち、図１に示したデータ受け付け部１１、出力・遷移時間取得部１３、数式モデル構築部１５、回路モデル生成部１７の機能をコンピュータに実行させる実行プログラムをコンピュータ１００に読み込ませ、実行させることによって，回路モデル生成装置１を実現することができる。
【００５３】
この場合に、コンピュータ１００のＣＰＵ１０１が、例えば、
・  上記の実行プログラムおよび入力となる情報（シミュレーション波形２）をファイルとしてハードディスク１０３に格納する、
・  キーボード１０４から実行プログラムを起動し、起動された実行プログラムが、メモリ１０２にロードされ、必要に応じてシミュレーション波形２をハードディスク１０３からメモリ１０２に読み出しながら処理を進める、
・  最後に出力結果である回路モデル３をディスプレイ１０５に表示し、ファイル形式で出力する、
といった方法で処理を実行する。
【００５４】
なお、実行プログラムは、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ等やフレキシブルディスク等の記録媒体だけでなく、通信回線の先に備えられた他の記憶装置やコンピュータのハードディスク等に記憶されるものであってもよい。
【００５５】
なお、回路モデル生成装置１を構成する要素は、任意の組合せで実現されてもよい。複数の構成要素が１つの部材として実現されてもよく、１つの構成要素が複数の部材から構成されてもよい。また、回路モデル生成装置１は、上述した実施形態に限定されず、本発明の要旨を逸脱しない範囲において各種の改良および変更を行ってもよいことは当然である。
【００５６】
以上説明したように、開示した回路モデル生成装置１によれば、入力により一意に出力が定まるアナログ回路だけではあるが、シミュレーション波形２を入力するだけで自動的に回路モデル３が生成されるため、人手作業により生じるミスをなくすことができ、かつ、作業工数を大幅に削減することができる。よって、例えば、ＳＰＩＣＥ（Ｓｉｍｕｌａｔｉｏｎ  Ｐｒｏｇｒａｍ  ｗｉｔｈ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ  Ｅｍｐｈａｓｉｓ）等による回路シミュレーションの高速化を実現することができる。
【符号の説明】
【００５７】
１  回路モデル生成装置
１１  データ受け付け部
１３  出力・遷移時間取得部
１５  数式モデル構築部
１７  回路モデル生成部
２  シミュレーション波形
３  回路モデル
【図１】
0006010971.tif 000002
【図２】
0006010971.tif 000003
【図３】
0006010971.tif 000004
【図４】
0006010971.tif 000005
【図５】
0006010971.tif 000006
【図６】
0006010971.tif 000007
【図７】
0006010971.tif 000008
【図８】
0006010971.tif 000009
【図９】
0006010971.tif 000010
【図１０】
0006010971.tif 000011
【図１１】
0006010971.tif 000012
【図１２】
0006010971.tif 000013