(57)【要約】【課題】確実に検証を行うことが可能な機能モデルを生成でき機能性の等価性検証を短時間で行うことを可能にする。【解決手段】入力ポート判定部２ｂは、ポート型が予め定義された機能モデルについてポートのアナログ／デジタル種別をポート型の記述に基づいて判定する。入力ベクタ生成部２は、アナログ／デジタル種別の判定結果、および、予めベクタライブラリ２ａに記憶されたベクタデータに基づいて入力ベクタデータを生成する。また、入力ベクタ生成部２は、ベクタデータに一意に設けられた入力制約データ、および、入力ベクタデータに基づいて機能モデルＡ２のポートに対する入力制約記述を生成する。入力制約付き機能モデル生成部３は、機能モデルのポート型の記述に前記生成された入力制約記述を合成することで検証用機能モデルを生成する。【選択図】図１
2009193513.tif 000002
【特許請求の範囲】
【請求項１】
ポート型が予め定義された機能モデルについてポートのアナログ／デジタル種別を当該機能モデルのポート型の記述に基づいて判定する入力ポート判定過程と、
前記入力ポート判定過程によるアナログ／デジタル種別の判定結果、および、予めベクタライブラリに記憶されたベクタデータに基づいて入力ベクタデータを生成する入力ベクタデータ生成過程と、
前記ベクタデータに一意に設けられた入力制約データ、および、前記入力ベクタデータに基づいて前記機能モデルのポートに対する入力制約記述を生成する入力制約記述作成過程と、
前記機能モデルのポート型の記述に前記生成された入力制約記述を合成することで検証用機能モデルを生成する検証用モデル生成過程を備えたことを特徴とする検証用モデル生成方法。
【請求項２】
請求項１記載の検証用モデル生成方法を用いて生成された検証用機能モデルを用いてアナログ／デジタル混在回路をシミュレーションすることを特徴とする電子回路の検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル回路およびアナログ回路の混在回路をシミュレーションするために用いられる検証用モデル生成方法、およびこの生成方法により生成された検証用機能モデルを用いてアナログ／デジタル混在回路を検証する電子回路の検証方法に関する。
【背景技術】
【０００２】
従来、アナログ回路とその機能モデル単体での等価性検証をする技術が開発されている（例えば、特許文献１参照）。この特許文献１記載の技術思想においては、回路が入力されると、その回路に含まれる機能を抽出し、抽出された回路機能に応じた検証ベクタを生成し、テスト回路を生成した後、検証を実行するようになっている。等価性を検証したい場合には、上記作成したテスト回路の比較対象回路のみ置き換えて同様の検証を行い、結果を得た後、上記に得た結果と差を比較し、差が許容範囲内であれば等価であると判断している。
【０００３】
また、別の技術として、トップダウンフローにより回路全体の機能モデルシミュレーション結果から単体検証ベクタを抽出して単体回路にて等価性検証を行う技術も開発されている（例えば、特許文献２参照）。
【特許文献１】特開２００６−３１２７７号公報
【特許文献２】特開２０００−２１５２２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１記載の技術思想では、回路が入力されたとしても回路に含まれる特徴を抽出できない場合には検証ベクタ（機能モデル）を生成できない場合もあり、検証動作が正常に行われない虞がある。また、特許文献２記載の技術思想を適用しても、単体回路の動作確認を十分に行うには長時間の波形を確認しなければならず機能的な等価性検証を十分に行うことができない虞がある。
【０００５】
本発明は、上記事情に鑑みてなされたもので、その目的は、確実に検証を行うことが可能な機能モデルを生成できるようにすることで機能性の等価性検証を短時間で行うことを可能にした検証用モデル生成方法および電子回路の検証方法を提供することを目的としている。
【課題を解決するための手段】
【０００６】
請求項１記載の発明によれば、ポート型が予め定義された機能モデルについてポートのアナログ／デジタル種別を当該機能モデルのポート型の記述に基づいて判定し、アナログ／デジタル種別の判定結果、および、予めベクタライブラリに記憶されたベクタデータに基づいて入力ベクタデータを生成し、ベクタデータに一意に設けられた入力制約データ、および、入力ベクタデータに基づいて機能モデルのポートに対する入力制約記述を生成し、機能モデルのポート型の記述に前記生成された入力制約記述を合成することで検証用機能モデルを生成する。このため、アナログ／デジタルの混在回路が存在したとしても機能モデルのポートのアナログ／デジタル種別が予め規定されるため確実に機能モデルを短時間で検証できるようになる。
【発明を実施するための最良の形態】
【０００７】
以下、本発明の一実施形態について図面を参照しながら説明する。図１は、シミュレーション実行部の概要を機能的に表すブロック図である。
この図１に示すように、シミュレーション実行部１は、入力ベクタ生成部２と、入力制約付き機能モデル生成部３とを備えており、各種の入力データおよび機能モデルを入力することに基づいて当該データおよび機能モデルを再生成し、入力された回路の機能の等価性検証を行いシミュレーションを実行するＶＨＤＬ−ＡＭＳなどのアナログ−デジタル混在シミュレータである。これらの各機能部分はコンピュータ内のシミュレーション機能によって実現される。
【０００８】
入力ベクタ生成部２は、ベクタライブラリ２ａとこのベクタライブラリ２ａに記憶されたライブラリデータを入力する入力ポート判定部２ｂとを具備しており、機能モデルを入力することに基づいて入力ベクタデータ、入力制約データを生成するように構成されている。入力制約付き機能モデル生成部３は、機能モデルおよび入力制約データを入力することによって入力制約付き機能モデルを生成するように構成されている。シミュレーション実行部１は、これらの機能モデル、データに基づいてシミュレーションを実行する。
【０００９】
図２（ａ）および図２（ｂ）は、機能モデルの一例を示している。この図２に示すように、これらの機能モデルＡ１、Ａ２は、それぞれボルテージフォロワ回路、ブラックボックス化された機能モデルを示している。この機能モデルＡ１は、入力ポートＩＮ１、入力ポートＩＮ２、出力ポートＯＵＴを備えた３ポート以上の型の機能モデルを示している。機能モデルＡ２は、イネーブルポートＥＮＡＢＬＥ、アナログ電源ポートＡＶＤＤ、アナロググランドポートＡＧＮＤ、出力ポートＯＵＴ１による４ポートまたはそれ以上の型の機能モデルを示している。
【００１０】
図３は、図２（ｂ）に示す機能モデルのポートの定義を示している。この図３に示すように、アナログ電源ポートＡＶＤＤはelectrical型、アナロググランドポートＡＧＮＤはelectrical型、イネーブルポートＥＮＡＢＬＥはstd_logic型、出力ポートＯＵＴ１はelectrical型であることを示している。尚、その他のポート型も用意されている。
【００１１】
図４は、ベクタライブラリに用意されているベクタデータの一例を示している。この図４に示すように、アナログ用のベクタデータとしては、（ａ）時間変化に応じて正の勾配をもって線形的に変化するベクタデータ、（ｂ）時間変化に応じて負の勾配をもって線形的に変化するベクタデータ、（ｃ）、（ｄ）時間変化に応じて三角関数的に変動するベクタデータを表している。デジタル用のベクタデータとしては、（ｅ）「１」→「０」にデジタル的に変化するベクタデータ、（ｆ）「０」→「１」にデジタル的に変化するベクタデータが用意されている。ベクタライブラリ２ａには、これらのアナログ用、デジタル用のベクタデータが記憶されている。
【００１２】
尚、ポート型の種類は限定されているため、ベクタライブラリ２ａに記憶されるベクタデータは、ポート型の種類に応じて用意されている。これにより、入力ベクタ生成部２が入力ベクタデータを生成するときにもポート型に応じた入力ベクタデータを生成することができ、検証ベクタを生成できないという不具合を生じることはない。入力制約データは、入力ベクタデータの上限、下限を定義しているデータであり入力ベクタデータに対して一意に設定されるものである。
【００１３】
上記構成の作用（動作）について図５ないし図８をも参照しながら説明する。
図５は、シミュレーション実行部が実行するシミュレーションの一連の流れをフローチャートによって示している。
【００１４】
この図５に示すように、まず、シミュレーション実行部１の入力ベクタ生成部２は、機能モデルに基づいて入力ベクタデータを生成する（Ｓ１）。具体的には、入力ベクタ生成部２は、入力ポート判定部２ｂにより機能モデルが備えるポートがアナログ／デジタルの何れの型であるかを判定し、この判定結果に応じて入力ベクタデータを生成する。例えば、入力ポート判定部２ｂは、機能モデルのポートの定義（図３参照）に含まれるポート型（"electrical" or "std_logic"）を判定し、ベクタライブラリ２ａからポート型に合ったベクタデータを抽出することで入力ベクタデータを生成する。
【００１５】
次に、入力ベクタ生成部２は、生成された入力ベクタデータに基づいて入力制約データを生成する（Ｓ２）。この入力制約データは、入力ベクタデータの上限、下限を定義したデータであり入力ベクタデータに対して一意に決定されるデータである。
【００１６】
例えば、入力ベクタ生成部２が、ポートに合う入力ベクタデータを図６に示すように生成した場合には、その上限、下限はそれぞれ６Ｖ、０Ｖであり、この場合、入力ベクタ生成部２は、図７に示すような記述を入力制約データとして自動的に生成する。この図７に示す記述の意味は、アナログ電源ポートＡＶＤＤの入力が６．０Ｖ以下の場合にはレポートし６．０Ｖを超える場合には失敗である、ことをハードウェア記述言語によって示す記述である。
【００１７】
入力ベクタ生成部２は、このような記述を入力制約データとして自動的に作成し、その後に、シミュレーション実行部１は、まずアナログ機能モデルの単体シミュレーションを行い（Ｓ３）、ＳＰＩＣＥ（Simulation Program with Integrated Circuit Emphasis）による回路の単体のシミュレーションを行う（Ｓ４）。ここで、ＳＰＩＣＥによるシミュレーションは、デバイスの物理的な特性を厳密にモデル化し、トランジスタ素子の動作をシミュレートすることでアナログ回路の解析を行うものである。次に、シミュレーション実行部１は、単体シミュレーションが終了した後、これらの単体回路のシミュレーション結果を比較することによってアナログ回路の機能の等価性の検証を行う（Ｓ５）。
【００１８】
シミュレーション実行部１は、等価性の検証を行った後、入力制約付き機能モデル生成部３によって入力制約付き機能モデルを生成する（Ｓ６）。この入力制約付き機能モデル生成部３は、機能モデル、入力制約データに基づいて入力制約付き機能モデルを生成するものであり、具体的には、入力制約付き機能モデル生成部３は、図３に一例を示す入力ベクタデータ（記述）と、図７に一例を示す入力制約データ（記述）とを合成し図８に一例を示すような記述を検証用機能モデルとして生成する。この機能的記述文法は言語の仕様としてＶＨＤＬ−ＡＭＳなどのアナログ−デジタル混在シミュレータに用意されており、入力制約付き機能モデル生成部３がこのハードウェア記述を自動的に生成することで、シミュレーション実行部１は当該記述を認識することができる。
【００１９】
シミュレーション実行部１は、入力制約付き機能モデルを生成すると、アナログ／デジタル混在回路の全体についてシミュレーションを行う（Ｓ７）。つまり、入力制約付きの機能モデルを用いてシミュレーションが行われることになる。すると、例えば、ポートに入力制約範囲外のデータが入力された場合には、単体モデルの入力で違反があればシミュレーション中に即座にメッセージが出力されることになり、即座にシミュレーションを停止する。このようにして単体シミュレーションで検証した動作範囲以外の動作が全体シミュレーションで使用されていないことを監視することができ、等価性検証抜けを防止することができる。
【００２０】
本実施形態によれば、次に示す特徴的な作用効果を奏する。入力ポート判定部２ｂは、ポート型が予め定義された機能モデルについてポートのアナログ／デジタル種別をポート型の記述に基づいて判定する。入力ベクタ生成部２は、アナログ／デジタル種別の判定結果、および、予めベクタライブラリ２ａに記憶されたベクタデータに基づいて入力ベクタデータを生成する。また、入力ベクタ生成部２は、ベクタデータに一意に設けられた入力制約データ、および、入力ベクタデータに基づいて機能モデルＡ２のポートに対する入力制約記述を生成する。入力制約付き機能モデル生成部３は、機能モデルのポート型の記述に前記生成された入力制約記述を合成することで検証用機能モデルを生成する。このため、機能モデルＡ１、Ａ２のポートのアナログ／デジタル種別が予め規定されるため、アナログ／デジタルの混在回路が存在したとしても確実に機能モデルを短時間で検証できるようになる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態について機能的に示すブロック図
【図２】機能モデル例を示す図
【図３】ポート型の記述を示す図
【図４】ベクタデータの一例を示す図
【図５】シミュレーション動作を概略的に示すフローチャート
【図６】アナログ用入力ベクタデータの一例を示す図
【図７】入力制約記述を示す図
【図８】入力制約付きの検証用機能モデルの一例を示す図
【符号の説明】
【００２２】
図面中、１はシミュレーション実行部、２は入力ベクタ生成部、２ｂは入力ポート判定部、２ａはベクタライブラリ、３は入力制約付き機能モデル生成部、Ａ１、Ａ２は機能モデルを示す。
【図１】
2009193513.tif 000003
【図２】
2009193513.tif 000004
【図３】
2009193513.tif 000005
【図４】
2009193513.tif 000006
【図５】
2009193513.tif 000007
【図６】
2009193513.tif 000008
【図７】
2009193513.tif 000009
【図８】
2009193513.tif 000010