(57)【要約】【課題】命令仕様として演算結果が確定値で無いためにリファレンスモデルと検証対象回路モデルから得られる該演算命令の実行結果が一致しない場合も、各種機械語命令の遷移を網羅的に検証することが可能な検証装置および検証方法を得ること。【解決手段】命令仕様として演算結果が確定値で無いためにリファレンスモデルと検証対象回路モデルから得られる該演算命令の実行結果が一致しない場合も、両モデルから独立して定義した不確定値発生条件に基づき、検証対象回路モデルに対する論理シミュレーションの実行結果を真として、リファレンスモデルに対する命令レベルシミュレーションに於ける命令レベルシミュレータ内部の各種レジスタやアキュムレータの不確定（bit）値を該論理シミュレーションの実行結果で上書きする。【選択図】        図１−１
2006202137.tif 000002
【特許請求の範囲】
【請求項１】
検証対象回路の論理回路の検証を行う検証装置であって、
前記検証対象回路の仕様に基づいた制約条件を格納する制約付与部と、
前記検証対象回路の仕様に基づいたリファレンスモデルを格納するリファレンスモデル格納部と、
前記検証対象回路の論理シミュレーション用モデルを格納する検証対象回路モデル格納部と、
前記検証対象回路の仕様に定義されている演算命令において命令仕様として演算結果が確定できない演算命令と、その演算命令によって生じる不確定値に関する情報を格納する不確定値発生条件格納部と、
前記制約条件に基づいて所定の規則性を有する機械語命令テストパターンを生成するテストパターン生成部と、
前記論理シミュレーション用モデルと前記機械語命令テストパターンとを入力として論理シミュレーションを実行する論理シミュレーション実行部と、
前記リファレンスモデルと前記機械語命令テストパターンとを入力として命令レベルシミュレーションを実行して期待値を得ると共に、該期待値が疑似エラーであると判断された場合に前記論理シミュレーションの実行結果で命令レベルシミュレータ内部の不確定値を上書きする命令レベルシミュレーション実行部と、
前記論理シミュレーションの実行結果と前記期待値とが一致するか否かを比較検証する期待値比較部と、
前記論理シミュレーションの実行結果と前記期待値とが一致しない場合に、前記機械語命令テストパターンが前記不確定値発生条件格納部に格納された不確定値発生条件に該当するか否かを比較検証し、該当する場合に前記期待値が疑似エラーであると判断して前記論理シミュレーションの実行結果を真の値として前記命令レベルシミュレーション実行部に出力する比較エラー解析部と、
前記比較エラー解析部における比較検証において前記不確定値発生条件に該当しない場合に前記期待値が真のエラーであると判断してエラー表示する比較エラー表示部と、
を備えることを特徴とする検証装置。
【請求項２】
前記リファレンスモデル格納部の代わりに、命令動作の基準と成るＬＳＩを有するリファレンスＬＳＩ部を備え、
前記命令レベルシミュレーション実行部の代わりに、前記機械語命令テストパターンを前記リファレンスＬＳＩ部に入力して該機械語命令テストパターンを実行して期待値を得ると共に該期待値が疑似エラーであると判断された場合に前記論理シミュレーションの実行結果で前記リファレンスＬＳＩ内部の不確定値を上書きするリファレンスＬＳＩ制御部を備えること
を特徴とする請求項１に記載の検証装置。
【請求項３】
前記検証対象回路モデル格納部および論理シミュレーション実行部の代わりに、検証対象となるＬＳＩを有する検証対象ＬＳＩ部を備えること
を特徴とする請求項１に記載の検証装置。
【請求項４】
検証対象回路の論理回路の検証を行う検証装置であって、
前記検証対象回路の仕様に基づいた制約条件を格納する制約付与部と、
前記検証対象回路の仕様に基づいたリファレンスモデルを格納するリファレンスモデル格納部と、
前記検証対象回路の論理シミュレーション用モデルを格納する検証対象回路モデル格納部と、
前記検証対象回路の仕様に定義されている演算命令において命令仕様として演算結果が確定できない演算命令と、その演算命令によって生じる不確定値に関する情報を格納する不確定値発生条件格納部と、
前記制約条件に基づいて所定の規則性を有する機械語命令テストパターンを生成する機械語命令生成部と、
前記論理シミュレーション用モデルと前記機械語命令テストパターンとを入力として論理シミュレーションを実行する論理シミュレーション実行部と、
前記リファレンスモデルと前記機械語命令テストパターンを入力として命令レベルシミュレーションを実行して期待値を得ると共に、機械語命令テストパターンが前記不確定値発生条件に該当すると判断された場合、前記論理シミュレーションの実行結果で命令レベルシミュレータ内部の不確定値を上書きする命令レベルシミュレーション実行部と、
前記期待値と前記機械語命令テストパターンと不確定値発生条件とを入力とし、前記機械語命令テストパターンが不確定値発生条件に該当するか否かを判断し、該当する場合は前記機械語命令テストパターンを前記論理シミュレーション実行部に印加し、該論理シミュレーション実行部での論理シミュレーションの実行結果を読み出して前記命令レベルシミュレーション実行部に出力すると共に、前記期待値中の不確定値を前記論理シミュレーションの実行結果で上書きした値を新たな期待値として該新たな期待値と前記機械語命令テストパターンの演算結果とが一致しているか否かを比較検証する新たな機械語命令テストパターンを生成し、前記機械語命令テストパターンが不確定値発生条件に該当しない場合は、前記機械語命令テストパターンの演算結果と前記期待値が一致しているか否かを比較検証する新たな機械語命令テストパターンを生成する期待値比較用機械語命令生成部と、
前記機械語命令生成部と前記期待値比較用機械語命令生成部とにおいて生成した機械語命令テストパターンを格納する機械語命令格納部と、
前記新たな機械語命令テストパターンの実行時に前記新たな期待値と前記機械語命令テストパターンの演算結果との不一致、または前記機械語命令テストパターンの演算結果と前記期待値との不一致である期待値比較エラーが発生していないか監視して検出する比較結果監視部と、
比較結果監視部で検出した期待値比較エラーを表示する比較エラー表示部と、
を備えることを特徴とする検証装置。
【請求項５】
前記リファレンスモデル格納部の代わりに、命令動作の基準と成るＬＳＩを有するリファレンスＬＳＩ部を備え、
前記命令レベルシミュレーション実行部の代わりに、前記機械語命令テストパターンをリファレンスＬＳＩ部に入力して該機械語命令テストパターンを実行して期待値を得て該期待値と該機械語命令テストパターンとを前記期待値比較用機械語命令生成部に出力すると共に、機械語命令テストパターンが該不確定値発生条件に該当すると判断された場合に、前記期待値比較用機械語命令生成部が出力する前記論理シミュレーションの実行結果で前記リファレンスＬＳＩ内部の不確定値を上書きするリファレンスＬＳＩ制御部を備えること
を特徴とする請求項４に記載の検証装置。
【請求項６】
前記検証対象回路モデル格納部および論理シミュレーション実行部の代わりに、検証対象となるＬＳＩを有する検証対象ＬＳＩ部を備えること
を特徴とする請求項４に記載の検証装置。
【請求項７】
検証対象回路の論理回路の検証を行う検証方法であって、
前記検証対象回路の仕様に基づいた制約条件を格納する制約格納工程と、
前記検証対象回路の仕様に基づいたリファレンスモデルを格納するリファレンスモデル格納工程と、
前記検証対象回路の論理シミュレーション用モデルを格納する検証対象回路モデル格納工程と、
前記検証対象回路の仕様に定義されている演算命令において命令仕様として演算結果が確定できない演算命令と、その演算命令によって生じる不確定値に関する情報を格納する不確定値発生条件格納工程と、
前記制約条件に基づいて所定の規則性を有する機械語命令テストパターンを生成するテストパターン生成工程と、
前記前記論理シミュレーション用モデルと前記機械語命令テストパターンとを入力として論理シミュレーションを実行する論理シミュレーション実行工程と、
前記リファレンスモデルと前記機械語命令テストパターンとを入力として命令レベルシミュレーションを実行して期待値を得ると共に、該期待値が疑似エラーであると判断された場合に前記論理シミュレーションの実行結果で命令レベルシミュレータ内部の不確定値を上書きする命令レベルシミュレーション実行工程と、
前記論理シミュレーションの実行結果と前記期待値とが一致するか否かを比較検証する期待値比較工程と、
前記論理シミュレーションの実行結果と前記期待値とが一致しない場合に、前記機械語命令テストパターンが前記不確定値発生条件に該当するか否かを比較検証し、該当する場合に前記期待値が疑似エラーであると判断して前記論理シミュレーションの実行結果を真の値として出力する比較エラー解析工程と、
前記比較エラー解析工程における比較検証において前記不確定値発生条件に該当しない場合に前記期待値が真のエラーであると判断してエラー表示する比較エラー表示工程と、
を含むことを特徴とする検証方法。
【請求項８】
検証対象回路の論理回路の検証を行う検証方法であって、
前記検証対象回路の仕様に基づいた制約条件を格納する制約格納工程と、
前記検証対象回路の仕様に基づいたリファレンスモデルを格納するリファレンスモデル格納工程と、
前記検証対象回路の論理シミュレーション用モデルを格納する検証対象回路モデル格納工程と、
前記検証対象回路の仕様に定義されている演算命令において命令仕様として演算結果が確定できない演算命令と、その演算命令によって生じる不確定値に関する情報を格納する不確定値発生条件格納工程と、
前記制約条件に基づいて所定の規則性を有する機械語命令テストパターンを生成する機械語命令生成工程と、
前記論理シミュレーション用モデルと前記機械語命令テストパターンとを入力として論理シミュレーションを実行する論理シミュレーション実行工程と、
前記リファレンスモデルと前記機械語命令テストパターンを入力として命令レベルシミュレーションを実行して期待値を得ると共に、機械語命令テストパターンが前記不確定値発生条件に該当すると判断された場合、前記論理シミュレーションの実行結果で命令レベルシミュレータ内部の不確定値を上書きする命令レベルシミュレーション実行工程と、
前記期待値と前記機械語命令テストパターンと不確定値発生条件とを入力とし、前記機械語命令テストパターンが不確定値発生条件に該当するか否かを判断し、該当する場合は前記機械語命令テストパターンにより前記論理シミュレーションを実行させてその実行結果を読み出して出力すると共に、前記期待値中の不確定値を前記論理シミュレーションの実行結果で上書きした値を新たな期待値として該新たな期待値と前記機械語命令テストパターンの演算結果とが一致しているか否かを比較検証する新たな機械語命令テストパターンを生成し、前記機械語命令テストパターンが不確定値発生条件に該当しない場合は、前記機械語命令テストパターンの演算結果と前記期待値が一致しているか否かを比較検証する新たな機械語命令テストパターンを生成する期待値比較用機械語命令生成工程と、
前記機械語命令生成工程と前記期待値比較用機械語命令生成工程とにおいて生成した機械語命令テストパターンを格納する機械語命令格納工程と、
前記新たな機械語命令テストパターンの実行時に前記新たな期待値と前記機械語命令テストパターンの演算結果との不一致、または前記機械語命令テストパターンの演算結果と前記期待値との不一致である期待値比較エラーが発生していないか監視して検出する比較結果監視工程と、
比較結果監視工程で検出した期待値比較エラーを表示する比較エラー表示工程と、
を備えることを特徴とする検証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステム等における検証対象回路の論理回路の検証を行う検証装置および検証方法に関するものである。
【背景技術】
【０００２】
従来、コンピュータシステムに対する検証方法として、仕様に基づいた制約条件を付与し、規則性を持たせたランダムな機械語命令テストパターンを生成し、つぎにリファレンスモデルから得られる期待値を用いて任意の確率で比較検証する機械語命令テストパターンを生成し、これらの機械語命令テストパターンと検証対象回路モデルを入力として論理シミュレーションを行い、該テストパターンとリファレンスモデルを入力として命令レベルシミュレーション（Instruction Set Simulation）を行い、両シミュレーション結果を比較し、期待値比較エラー発生時に発生アドレス（各機械語命令が格納されているアドレス）を表示させることにより論理検証する方法が行われている。
【０００３】
また、論理回路のシミュレーション技術としては、検証を容易化するために命令レベルシミュレータによりテストプログラムを実行してその複数ステップの各命令コードの実行結果を取得し、該実行結果と、該実行結果が得られる第１時点に対応した論理回路シミュレータによる論理回路の動作の第２時点での動作結果とを比較して、該論理回路の検証を行うコンピュータを備えた論理回路シミュレーション装置において、該第１時点における、該命令コードの実行により書き替えられる記憶部の内容と、該第２時点における、該書き替えられる記憶部に対応した該論理回路の記憶部の内容との比較のみ行うような技術が開示されている（たとえば、特許文献１参照）。
【０００４】
【特許文献１】特開２００４−７０５２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来の技術によれば、通常、リファレンスモデルと検証対象回路モデルは同一の仕様書から作成されるが、「該仕様書に定義されている演算命令の演算結果に不確定値（Don’t care  ビット）や、その演算命令の処理に於いて一時的に使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定値で無いために、リファレンスモデルと検証対象回路モデルから得られる該演算命令の実行結果が異なる。また、「汎用コンピュータのように命令の遷移を網羅的に検証する必要がある」場合、従来方法では、該不確定値（Don’t care  ビット）が書き込まれたり、破壊されたレジスタやアキュムレータを以降の命令でソースレジスタとしてオペランドに指定できない（指定した場合には、不確定値が伝播して期待値比較時に擬以エラーが多発し、コレクトエラーが埋もれてしまう）。このため、当該レジスタやアキュムレータに確定値を設定する機械語命令を挿入する必要が有り、命令の遷移を網羅的に検証することを阻害するとともに、テスト効率が下がるという問題があった。
【０００６】
以下に上述の「命令の遷移を網羅的に検証する必要がある場合に、当該レジスタやアキュムレータに確定値を設定する機械語命令を挿入する必要が有る」ことの理由を説明する。以下は命令の遷移を網羅的に検証するため、連続してランダム生成された機械語命令テストパターン例の一部である。
【０００７】
FCMP RlO，Rl，R６  //比較結果がRl＜R６の場合RlOの最上位ビット（bO）が１になり
//bl〜b31の３１ビットの値は任意の値になる命令仕様
FDIV Rl，R７，RlO  //RlOをソースレジスタとしてオペランドに指定
//ISS上で不確定値をRlに伝播してしまう
【０００８】
上記の機械語命令テストパターン例では、機械語命令ＦＣＭＰの命令仕様として演算結果の内、ｂ１〜ｂ３１の３１ビットの値が確定値で無いためにリファレンスモデルと検証対象回路モデルから得られる該演算命令の実行結果が一致せず、従来手法ではＦＣＭＰの論理シミュレーション実行時に期待値比較エラーとなる。また、これだけではなく、RlOをソースレジスタとしてオペランドに指定する後続の命令でも期待値比較エラーが発生し、RlOレジスタに確定値を書き込む命令を実行しない限り、命令レベルシミュレーション（ISS）上で不確定値（Don’t care  ビット）が伝播して擬似エラーが多発し、コレクトエラーが埋もれてしまうため、各種命令の遷移を網羅的に検証することが困難である。
【０００９】
本発明は、上記に鑑みてなされたものであって、命令仕様として演算結果が確定値で無いためにリファレンスモデルと検証対象回路モデルから得られる該演算命令の実行結果が一致しない場合も、各種機械語命令の遷移を網羅的に検証することが可能な検証装置および検証方法を得ることを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明にかかる検証装置は、検証対象回路の論理回路の検証を行う検証装置であって、検証対象回路の仕様に基づいた制約条件を格納する制約付与部と、検証対象回路の仕様に基づいたリファレンスモデルを格納するリファレンスモデル格納部と、検証対象回路の論理シミュレーション用モデルを格納する検証対象回路モデル格納部と、検証対象回路の仕様に定義されている演算命令において命令仕様として演算結果が確定できない演算命令と、その演算命令によって生じる不確定値に関する情報を格納する不確定値発生条件格納部と、制約条件に基づいて所定の規則性を有する機械語命令テストパターンを生成するテストパターン生成部と、前記論理シミュレーション用モデルと機械語命令テストパターンとを入力として論理シミュレーションを実行する論理シミュレーション実行部と、リファレンスモデルと機械語命令テストパターンとを入力として命令レベルシミュレーションを実行して期待値を得ると共に、該期待値が疑似エラーであると判断された場合に論理シミュレーションの実行結果で命令レベルシミュレータ内部の不確定値を上書きする命令レベルシミュレーション実行部と、論理シミュレーションの実行結果と期待値とが一致するか否かを比較検証する期待値比較部と、論理シミュレーションの実行結果と期待値とが一致しない場合に、機械語命令テストパターンが不確定値発生条件格納部に格納された不確定値発生条件に該当するか否かを比較検証し、該当する場合に期待値が疑似エラーであると判断して論理シミュレーションの実行結果を真の値として命令レベルシミュレーション実行部に出力する比較エラー解析部と、比較エラー解析部における比較検証において不確定値発生条件に該当しない場合に期待値が真のエラーであると判断してエラー表示する比較エラー表示部と、を備えることを特徴とする。
【００１１】
この発明によれば、命令仕様として演算結果が確定値で無いためにリファレンスモデルと検証対象回路モデルから得られる該演算命令の実行結果が一致しない場合も、両モデルから独立して定義した不確定値発生条件に基づき、検証対象回路モデルに対する論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）を真として、リファレンスモデルに対する命令レベルシミュレーションに於ける命令レベルシミュレータ内部の各種レジスタやアキュムレータの不確定（bit）値を該論理シミュレーションの実行結果で上書きする。
【発明の効果】
【００１２】
この発明によれば、命令仕様として演算結果が確定値で無いためにリファレンスモデルと検証対象回路モデルから得られる該演算命令の実行結果が一致しない場合も、両モデルから独立して定義した不確定値発生条件に基づき、検証対象回路モデルに対する論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）を真として、リファレンスモデルに対する命令レベルシミュレーションに於ける命令レベルシミュレータ内部の各種レジスタやアキュムレータの不確定（bit）値を該論理シミュレーションの実行結果で上書きする。これにより、当該レジスタやアキュムレータを以降の命令でソースレジスタとしてオペランドに指定するために不確定値が書き込まれたレジスタやアキュムレータに確定値を再設定する機械語命令テストパターンを挿入することなく、当該レジスタやアキュムレータをソースレジスタとしてオペランドに指定する機械語命令を連続してランダム生成することが可能になり、各種機械語命令の遷移を網羅的に検証することが可能になる、という効果を奏する。
【発明を実施するための最良の形態】
【００１３】
以下に、本発明にかかる検証装置および検証方法の実施の形態を図面に基づいて詳細に説明する。なお、本発明は以下の記述に限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【００１４】
本発明は、少なくともＣＰＵを有するコンピュータシステムであり、当該システムの仕様書に定義されている演算命令の演算結果に不確定値（Don’t care  ビット）や、その演算命令の処理に於いて一時的に使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定値で無いために、リファレンスモデルと検証対象回路モデルから得られる該演算命令の実行結果が異なってしまい、且つ、汎用コンピュータのように命令の遷移を網羅的に検証する必要があるシステムを対象とする。
【００１５】
実施の形態１．
図１−１は、本発明の実施の形態１にかかるコンピュータシステムの検証装置の主要な機能構成を示す機能ブロック図である。図１−１に於いて、本実施の形態にかかる検証装置は、テスト制約付与部１０１と、テストパターン生成部１０２と、リファレンスモデル格納部１０３と、検証対象回路モデル格納部１０４と、論理シミュレーション実行部１０５と、命令レベルシミュレーション実行部１０６と、期待値比較部１０７と、不確定値発生条件付与部１０８と、比較エラー解析部１０９と、比較エラー表示部１１０と、を備えて構成される。
【００１６】
テスト制約付与部１０１は、検証対象回路の仕様に基づいた制約条件を付与する。テストパターン生成部１０２は、該制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）をランダムに生成する。リファレンスモデル格納部１０３は、該検証対象回路の仕様書に基づき作成されたリファレンスモデルを格納する。検証対象回路モデル格納部１０４は、検証対象回路のモデル（論理シミュレーション用モデル）を格納する。論理シミュレーション実行部１０５は、該検証対象回路モデルと該機械語命令テストパターンを入力として論理シミュレーションを実行する。
【００１７】
命令レベルシミュレーション実行部１０６は、リファレンスモデルと該機械語命令を入力として命令レベルシミュレーション（Instruction Set Simulation）を実行して期待値を得ると共に、後述する比較エラー解析部１０９で擬似エラーと判断された場合、該論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）で命令レベルシミュレータ内部の各種レジスタやアキュムレータの不確定（bit）値を上書きする。期待値比較部１０７は、該論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）と該期待値とを比較検証する。
【００１８】
不確定値発生条件付与部１０８は、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を付与する。比較エラー解析部１０９は、該期待値比較部１０７に於いて期待値比較エラー発生時に該不確定値発生条件に該当する場合、擬似エラーであると判断し、該論理シミュレーションの実行結果を真として、命令レベルシミュレーション実行部１０６に出力する。比較エラー表示部１１０は、比較エラー解析部１０９で不確定値発生条件に該当しないエラーをユーザにレポートする。
【００１９】
つぎに、上述した本実施の形態にかかる検証装置における動作を図１−２に示すフローチャートに従って説明する。まず、検証対象回路の仕様に基づいた制約条件をテスト制約付与部１０１に付与する（ステップＳ１０１）。つぎに、該検証対象回路の仕様書に基づき作成されたリファレンスモデルをリファレンスモデル格納部１０３に格納する（ステップＳ１０２）。つぎに、検証対象回路のモデル（論理シミュレーション用モデル）を検証対象回路モデル格納部１０４（ステップＳ１０３）に格納する。
【００２０】
つぎに、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を不確定値発生条件付与部１０８に付与する（ステップＳ１０４）。
【００２１】
つぎに、テストパターン生成部１０２は、テスト制約付与部１０１に付与された制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）を１命令分ランダムに生成する（ステップＳ１０５）。そして、論理シミュレーション実行部１０５は、上記の検証対象回路モデルと機械語命令テストパターンとを入力として１命令分の論理シミュレーションを実行する（ステップＳ１０６）。
【００２２】
つぎに、命令レベルシミュレーション実行部１０６は、リファレンスモデル格納部１０３に格納したリファレンスモデルとテストパターン生成部１０２で生成した機械語命令テストパターンとを入力として命令レベルシミュレーション（Instruction Set Simulation）を１命令分実行して期待値を得る（ステップＳ１０７）。
【００２３】
つぎに、期待値比較部１０７は、論理シミュレーション実行部１０５における論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）と、命令レベルシミュレーション実行部１０６で得た期待値と、を比較検証し、一致しているか否かを判断する（ステップＳ１０８）。ここで、一致の場合は（ステップＳ１０８肯定）、テストパターン生成部１０２の処理（ステップＳ１０５）に戻り、次の機械語命令テストパターンをランダム生成する。
【００２４】
また、不一致の場合は（ステップＳ１０８否定）、比較エラー解析部１０９に機械語命令テストパターンを出力する。比較エラー解析部１０９は、不確定値発生条件付与部１０８の有する情報を基に、期待値比較部１０７から出力された機械語命令テストパターンが不確定値発生条件に該当する命令か否かを判断する（ステップＳ１０９）。
【００２５】
比較エラー解析部１０９は、期待値比較部１０７から出力された機械語命令テストパターンが不確定値発生条件に該当する場合には（ステップＳ１０９肯定）、擬似エラーであると判断し、論理シミュレーション実行部１０５における論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）を真として、該論理シミュレーションの実行結果を命令レベルシミュレーション実行部１０６に出力する。命令レベルシミュレーション実行部１０６は、該論理シミュレーションの実行結果で命令レベルシミュレーション内部の各種レジスタやアキュムレータの不確定（bit）値を上書きする（ステップＳ１１０）。
【００２６】
一方、比較エラー解析部１０９は、期待値比較部１０７から出力された機械語命令テストパターンが不確定値発生条件に該当しない場合には（ステップＳ１０９否定）、真のエラーとして、エラーが発生するまでに実行された機械語命令列を比較エラー表示部１１０に出力して（ステップＳ１１１）、シミュレーションを終了する。そして、比較エラー表示部１１０は、該不確定値発生条件に該当しないエラーが発生するまでに実行された機械語命令列を表示して一連の処理が終了する。
【００２７】
上述したように、本実施の形態にかかる検証装置においては、命令仕様として演算結果が確定値で無いためにリファレンスモデルと検証対象回路モデルから得られる該演算命令の実行結果が一致しない場合も、不確定値が書き込まれたレジスタやアキュムレータに確定値を再設定する機械語命令を挿入する必要が無くなり、ランダムに連続して生成することができるため、各種機械語命令の遷移を網羅的に効率良く検証することが可能になるという効果がある。
【００２８】
また、リファレンスモデルと検証対象回路モデルは、同一の仕様書に基づき、互いに情報交換することなくクリーンルームで開発されることが理想であるが、仕様上、Don’t care（不確定値）が含まれる場合、この情報を両モデルから独立した不確定値発生条件付与部１０８に設定することにより、両モデル間の独立性を確保することができる。これにより、検証対象回路モデルのバグがリファレンスモデルに入る危険性を最小限にし、ランダムテストの検証精度を向上させる効果がある。
【００２９】
実施の形態２．
上述した実施の形態１では、検証対象回路の仕様書に基づき作成されたリファレンスモデルを基準として検証する場合について説明したが、既に命令動作の基準と成り得るＬＳＩの実チップが存在する場合には、実施の形態１に於けるリファレンスモデル格納部１０３に代えて該実チップを使用するリファレンスＬＳＩ部を備え、実施の形態１に於ける命令レベルシミュレーション実行部１０６に代えて、機械語命令をリファレンスＬＳＩ部に入力して該機械語命令を実行し、実行結果（各種レジスタやアキュムレータの値）を読み出して（STORE命令発行）期待値を得ると共に、比較エラー解析部で擬似エラーと判断された場合に論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）で該リファレンスＬＳＩ内部の各種レジスタやアキュムレータの不確定（bit）値を上書き（LOAD命令発行）するリファレンスＬＳＩ制御部と、を備えた構成としても良い。
【００３０】
図２−１は、本発明の実施の形態２にかかるコンピュータシステムの検証装置の主要な機能構成を示す機能ブロック図である。図２−１に於いて、本実施の形態にかかる検証装置は、テスト制約付与部１０１と、テストパターン生成部１０２と、検証対象回路モデル格納部１０４と、論理シミュレーション実行部１０５と、期待値比較部１０７と、不確定値発生条件付与部１０８と、比較エラー解析部１０９と、比較エラー表示部１１０と、リファレンスＬＳＩ部２１１と、リファレンスＬＳＩ制御部２１２と、を備えて構成される。
【００３１】
テスト制約付与部１０１は、検証対象回路の仕様に基づいた制約条件を付与する。テストパターン生成部１０２は、該制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）をランダムに生成する。検証対象回路モデル格納部１０４は、検証対象回路のモデル（論理シミュレーション用モデル）を格納する。論理シミュレーション実行部１０５は、該検証対象回路モデルと該機械語命令テストパターンを入力として論理シミュレーションを実行する。期待値比較部１０７は、該論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）と該期待値とを比較検証する。
【００３２】
不確定値発生条件付与部１０８は、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を付与する。比較エラー解析部１０９は、該期待値比較部１０７に於いて期待値比較エラー発生時に該不確定値発生条件に該当する場合、擬似エラーであると判断し、該論理シミュレーションの実行結果を真として、命令レベルシミュレーション実行部１０６に出力する。比較エラー表示部１１０は、比較エラー解析部１０９で不確定値発生条件に該当しないエラーをユーザにレポートする。
【００３３】
リファレンスＬＳＩ部２１１は、命令動作の基準と成り得るＬＳＩの実チップを使用する。リファレンスＬＳＩ制御部２１２は、機械語命令をリファレンスＬＳＩ部２１１に入力して該機械語命令を実行し、実行結果（各種レジスタやアキュムレータの値）を読み出して（STORE命令発行）期待値を得ると共に、比較エラー解析部１０９で擬似エラーと判断された場合に、論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）で該リファレンスＬＳＩ２１１内部の各種レジスタやアキュムレータの不確定（bit）値を上書き（LOAD命令発行）する。
【００３４】
つぎに、上述した本実施の形態にかかる検証装置における動作を図２−２に示すフローチャートに従って説明する。まず、検証対象回路の仕様に基づいた制約条件をテスト制約付与部１０１に付与する（ステップＳ２０１）。つぎに、検証対象回路のモデル（論理シミュレーション用モデル）を検証対象回路モデル格納部１０４（ステップＳ２０２）に格納する。
【００３５】
つぎに、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を不確定値発生条件付与部１０８に付与する（ステップＳ２０３）。
【００３６】
つぎに、テストパターン生成部１０２は、テスト制約付与部１０１に付与された制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）を１命令分ランダムに生成し（ステップＳ２０４）、論理シミュレーション実行部１０５とリファレンスＬＳＩ制御部２１２とに出力する。そして、論理シミュレーション実行部１０５は、上記の検証対象回路モデルと機械語命令テストパターンとを入力として１命令分の論理シミュレーションを実行する（ステップＳ２０５）。
【００３７】
つぎに、リファレンスＬＳＩ制御部２１２は、機械語命令テストパターンをリファレンスＬＳＩ部２１１に入力して該機械語命令テストパターンを実行し、実行結果（各種レジスタやアキュムレータの値）を読み出して（STORE命令発行）、期待値を得る（ステップＳ２０６）。
【００３８】
つぎに、期待値比較部１０７は、論理シミュレーション実行部１０５における論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）と、リファレンスＬＳＩ制御部２１２で得た期待値と、を比較検証し、一致しているか否かを判断する（ステップＳ２０７）。ここで、一致の場合は（ステップＳ２０７肯定）、テストパターン生成部１０２の処理（ステップＳ２０４）に戻り、次の機械語命令テストパターンをランダム生成する。
【００３９】
また、不一致の場合は（ステップＳ２０７否定）、比較エラー解析部１０９に機械語命令テストパターンを出力する。比較エラー解析部１０９は、不確定値発生条件付与部１０８の有する情報を基に、期待値比較部１０７から出力された機械語命令テストパターンが不確定値発生条件に該当する命令か否かを判断する（ステップＳ２０８）。
【００４０】
比較エラー解析部１０９は、期待値比較部１０７から出力された機械語命令テストパターンが不確定値発生条件に該当する場合には（ステップＳ２０８肯定）、擬似エラーであると判断し、論理シミュレーション実行部１０５における論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）を真として、該論理シミュレーションの実行結果をリファレンスＬＳＩ制御部２１２に出力する。リファレンスＬＳＩ制御部２１２は、該論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）で該リファレンスＬＳＩ２１１内部の各種レジスタやアキュムレータの不確定（bit）値を上書き（LOAD命令発行）する（ステップＳ２０９）。
【００４１】
一方、比較エラー解析部１０９は、期待値比較部１０７から出力された機械語命令テストパターンが不確定値発生条件に該当しない場合には（ステップＳ２０８否定）、真のエラーとして、エラーが発生するまでに実行された機械語命令列を比較エラー表示部１１０に出力して（ステップＳ２１０）、シミュレーションを終了する。そして、比較エラー表示部１１０は、該不確定借発生条件に該当しないエラーが発生するまでに実行された機械語命令列を表示して一連の処理が終了する。
【００４２】
上述したように、実施の形態２にかかる検証装置においては、検証対象回路の仕様書に基づき作成されたリファレンスモデルの代わりに、既に命令動作の基準と成り得るＬＳＩの実チップが存在するため、上記の構成及び処理動作により実施の形態１と同様の効果を得ることができる。
【００４３】
実施の形態３．
上述した実施の形態１では、検証対象回路の論理シミュレーション用モデルを検証する場合について説明したが、既に試作したＦＰＧＡ等のＬＳＩの実チップが存在する場合には、実施の形態１に於ける検証対象回路モデル格納部１０４および論理シミュレーション実行部１０５に代えて、該実チップを検証対象とする検証対象ＬＳＩ部を備えた構成としても良い。
【００４４】
図３−１は、本発明の実施の形態２にかかるコンピュータシステムの検証装置の主要な機能構成を示す機能ブロック図である。図３−１に於いて、本実施の形態にかかる検証装置は、テスト制約付与部１０１と、テストパターン生成部１０２と、リファレンスモデル格納部１０３と、命令レベルシミュレーション実行部１０６と、期待値比較部１０７と、不確定値発生条件付与部１０８と、比較エラー解析部１０９と、比較エラー表示部１１０と、検証対象ＬＳＩ部３１３と、を備えて構成される。
【００４５】
テスト制約付与部１０１は、検証対象回路の仕様に基づいた制約条件を付与する。テストパターン生成部１０２は、該制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）をランダムに生成する。リファレンスモデル格納部１０３は、該検証対象回路の仕様書に基づき作成されたリファレンスモデルを格納する。
【００４６】
命令レベルシミュレーション実行部１０６は、リファレンスモデルと該機械語命令テストパターンとを入力として命令レベルシミュレーション（Instruction Set Simulation）を実行して期待値を得ると共に、後述する比較エラー解析部１０９で擬似エラーと判断された場合、検証対象ＬＳＩ部３１３の命令実行結果（各種レジスタやアキュムレータの値）で命令レベルシミュレーション内部の各種レジスタやアキュムレータの不確定（bit）値を上書きする。期待値比較部１０７は、検証対象ＬＳＩ部３１３の命令実行結果（各種レジスタやアキュムレータの値）と該期待値とを比較検証する。
【００４７】
不確定値発生条件付与部１０８は、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を付与する。比較エラー解析部１０９は、該期待値比較部１０７に於いて期待値比較エラー発生時に該不確定値発生条件に該当する場合、擬似エラーであると判断し、検証対象ＬＳＩ部３１３の命令実行結果を真として、命令レベルシミュレーション実行部１０６に出力する比較エラー表示部１１０は、比較エラー解析部１０９で不確定値発生条件に該当しないエラーをユーザにレポートする。
【００４８】
検証対象ＬＳＩ部３１３は、試作したＦＰＧＡ等のＬＳＩの実チップ（検証対象ＬＳＩ）であり、ＬＳＩ内部の各種レジスタやアキュムレータの値が直接観測可能な評価用端子を持つ検証対象ＬＳＩ部である。
【００４９】
つぎに、上述した本実施の形態にかかる検証装置における動作を図３−２に示すフローチャートに従って説明する。まず、検証対象回路の仕様に基づいた制約条件をテスト制約付与部１０１に付与する（ステップＳ３０１）。つぎに、該検証対象回路の仕様書に基づき作成されたリファレンスモデルをリファレンスモデル格納部１０３に格納する（ステップＳ３０２）。
【００５０】
つぎに、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を不確定値発生条件付与部１０８に付与する（ステップＳ３０３）。
【００５１】
つぎに、テストパターン生成部１０２は、テスト制約付与部１０１に付与された制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）を１命令分ランダムに生成する（ステップＳ３０４）。そして、テストパターン生成部１０２は、該機械語命令テストパターンを検証対象ＬＳＩ部３１３に入力し（ステップＳ３０５）、検証対象ＬＳＩ部３１３該機械語命令テストパターンを実行する。
【００５２】
つぎに、命令レベルシミュレーション実行部１０６は、リファレンスモデル格納部１０３に格納したリファレンスモデルとテストパターン生成部１０２で生成した機械語命令テストパターンとを入力として命令レベルシミュレーション（Instruction Set Simulation）を１命令分実行して期待値を得る（ステップＳ３０６）。
【００５３】
つぎに、期待値比較部１０７は、検証対象ＬＳＩ部３１３の命令実行結果（各種レジスタやアキュムレータの値）と、命令レベルシミュレーション実行部１０６で得た期待値と、を比較検証し、一致しているか否かを判断する（ステップＳ３０７）。ここで、一致の場合は（ステップＳ３０７肯定）、テストパターン生成部１０２の処理（ステップＳ３０４）に戻り、次の機械語命令テストパターンをランダム生成する。
【００５４】
また、不一致の場合は（ステップＳ３０７否定）、比較エラー解析部１０９に機械語命令テストパターンを出力する。比較エラー解析部１０９は、不確定値発生条件付与部１０８の有する情報を基に、期待値比較部１０７から出力された機械語命令テストパターンが不確定値発生条件に該当する命令か否かを判断する（ステップＳ３０８）。
【００５５】
比較エラー解析部１０９は、期待値比較部１０７から出力された機械語命令テストパターンが不確定値発生条件に該当する場合には（ステップＳ３０８肯定）、擬似エラーであると判断し、検証対象ＬＳＩ部３１３の命令実行結果（各種レジスタやアキュムレータの値）を真として、該検証対象ＬＳＩ部３１３の命令実行結果を命令レベルシミュレーション実行部１０６に出力する。命令レベルシミュレーション実行部１０６は、該検証対象ＬＳＩ部３１３の命令実行結果で命令レベルシミュレーション内部の各種レジスタやアキュムレータの不確定（bit）値を上書きする（ステップＳ３０９）。
【００５６】
一方、比較エラー解析部１０９は、期待値比較部１０７から出力された機械語命令テストパターンが不確定値発生条件に該当しない場合には（ステップＳ３０８否定）、真のエラーとして、エラーが発生するまでに実行された機械語命令列を比較エラー表示部１１０に出力して（ステップＳ３１０）、シミュレーションを終了する。そして、比較エラー表示部１１０は、該不確定借発生条件に該当しないエラーが発生するまでに実行された機械語命令列を表示して一連の処理が終了する。
【００５７】
上述したように、実施の形態１および実施の形態２では検証対象回路の論理シミュレーション用モデルを検証したが、実施の形態３にかかる検証装置においては、検証対象回路の論理シミュレーション用モデルの代わりに、既に試作したＦＰＧＡ等のＬＳＩの実チップが存在するため、上記の構成及び処理動作により実施の形態１と同様の効果を得ることができる。
【００５８】
実施の形態４．
図４−１は、本発明の実施の形態４にかかるコンピュータシステムの検証装置の主要機能構成を示す機能ブロック図である。図４−１に於いて、本実施の形態にかかる検証装置は、テスト制約付与部１０１と、リファレンスモデル格納部１０３と、検証対象回路モデル格納部１０４と、論理シミュレーション実行部１０５と、命令レベルシミュレーション実行部１０６と、不確定値発生条件付与部１０８と、比較エラー表示部１１０と、機械語命令生成部４１４と、期待値比較用機械語命令生成部４１５と、機械語命令格納部４１６と、比較結果監視部４１７と、を備えて構成される。
【００５９】
テスト制約付与部１０１は、検証対象回路の仕様に基づいた制約条件を付与する。機械語命令生成部４１４は、該制約条件に基づき規則性を持ったランダムな機械語命令テストパターン（オペコードとオペランド）をランダムに生成する。リファレンスモデル格納部１０３は、該検証対象回路の仕様書に基づき作成されたリファレンスモデルを格納する。
【００６０】
不確定値発生条件付与部１０８は、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を付与する。
【００６１】
命令レベルシミュレーション実行部１０６は、リファレンスモデルと該機械語命令を入力として命令レベルシミュレーション（Instruction Set Simulation）を実行して期待値を得て、該期待値と機械語命令テストパターンを後述する期待値比較用機械語命令生成部４１５に出力すると共に、後述する期待値比較用機械語命令生成部４１５で該機械語命令テストパターンが不確定値発生条件に該当すると判断された場合、後述する期待値比較用機械語命令生成部４１５が出力する論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）で命令レベルシミュレーション内部の各種レジスタやアキュムレータの不確定（bit）値を上書きする。
【００６２】
検証対象回路モデル格納部１０４は、検証対象回路のモデル（論理シミュレーション用モデル）を格納する。論理シミュレーション実行部１０５は、該検証対象回路モデルと該機械語命令テストパターンを入力として論理シミュレーションを実行する。
【００６３】
期待値比較用機械語命令生成部４１５は、前述の期待値と機械語命令テストパターンと不確定値発生条件とを入力とし、機械語命令テストパターンが不確定値発生条件に該当しない場合は機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と期待値が一致しているか比較検証する機械語命令テストパターンを生成して機械語命令格納部４１６に出力し、また該条件に該当する場合は該機械語命令テストパターンを論理シミュレーション実行部１０５に印加し、論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）を命令レベルシミュレーション実行部１０６に出力するとともに、期待値中の不確定（bit）値を該結果で上書きした値を期待値として、機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と該期待値が一致しているか比較検証する機械語命令テストパターンを生成して機械語命令格納部４１６に出力する。
【００６４】
機械語命令格納部４１６は、機械語命令生成部４１４と期待値比較用機械語命令生成部４１５とから出力された各機械語命令テストパターンを格納する。比較結果監視部４１７は、論理シミュレーション実行部１０５において機械語命令テストパターンと検証対象回路モデルを入力として論理シミュレーションの実行中、期待値比較エラーが発生していないか逐次監視し、検出する。比較エラー表示部１１０は、該比較結果監視部４１７で検出した期待値比較エラーをユーザにレポートする。
【００６５】
つぎに、上述した本実施の形態にかかる検証装置における動作を図４−２および図４−３に示すフローチャートに従って説明する。まず、検証対象回路の仕様に基づいた制約条件をテスト制約付与部１０１に付与する（ステップＳ４０１）。つぎに、該検証対象回路の仕様書に基づき作成されたリファレンスモデルをリファレンスモデル格納部１０３に格納する（ステップＳ４０２）。つぎに、検証対象回路のモデル（論理シミュレーション用モデル）を検証対象回路モデル格納部１０４（ステップＳ４０３）に格納する。
【００６６】
つぎに、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を不確定値発生条件付与部１０８に付与する（ステップＳ４０４）。
【００６７】
つぎに、機械語命令生成部４１４は、テスト制約付与部１０１に付与された制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）を１命令分ランダムに生成し、機械語命令格納部４１６に格納する（ステップＳ４０５）。
【００６８】
つぎに、命令レベルシミュレーション実行部１０６は、リファレンスモデル格納部１０３に格納したリファレンスモデルと機械語命令生成部４１４で生成した機械語命令テストパターンとを入力として命令レベルシミュレーション（Instruction Set Simulation）を１命令分実行して期待値を得て（ステップＳ４０６）、該期待値と機械語命令テストパターンを期待値比較用機械語命令生成部４１５に出力する。
【００６９】
つぎに、期待値比較用機械語命令生成部４１５は、前述の期待値と機械語命令テストパターンと不確定値発生条件とを入力として、機械語命令テストパターンが不確定値発生条件に該当する命令か否かを判断する（ステップＳ４０７）。
【００７０】
期待値比較用機械語命令生成部４１５は、機械語命令テストパターンが不確定値発生条件に該当する場合には（ステップＳ４０７肯定）、該機械語命令テストパターンを論理シミュレーション実行部１０５に印加して論理シミュレーションを実行させる。そして、期待値比較用機械語命令生成部４１５は、論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）を論理シミュレーション実行部１０５から読み出して命令レベルシミュレーション実行部１０６に出力し、命令レベルシミュレータにリファレンスモデル内部の各種レジスタやアキュムレータの不確定（bit）値を上書きさせる（ステップＳ４０８）。
【００７１】
また、それとともに、期待値中の不確定（bit）値を該結果で上書きした値を期待値として、機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と期待値が一致しているか比較検証する新たな機械語命令テストパターンを５０％の確率で生成して機械語命令格納部４１６に出力する（ステップＳ４０９）。ここで、必ずしも５０％の確率である必要はないが、１００％では命令の遷移を網羅的に検証することができず、また、０％では期待値比較エラーを自動的に検出することができない。
【００７２】
そして、期待値比較用機械語命令生成部４１５は、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たしたか否かを判断する（ステップＳ４１０）。ここで、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たしていない場合には（ステップＳ４１０否定）、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たすまで該機械語命令生成部４１４の処理（ステップＳ４０５）に戻り、次の機械語命令テストパターンをランダム生成する。
【００７３】
一方、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たした場合には（ステップＳ４１０肯定）、つぎに、論理シミュレーション実行部１０５は検証対象回路モデルと機械語命令格納部４１６に格納された機械語命令テストパターンを入力として論理シミュレーションを実行する（ステップＳ４１１）。
【００７４】
つぎに、比較結果監視部４１７は、機械語命令テストパターンと検証対象回路モデルを入力とした論理シミュレーション実行部１０５における論理シミュレーションの実行時、機械語命令テストパターンの実行時に新たな期待値と機械語命令テストパターンの演算結果との不一致、または機械語命令テストパターンの演算結果と期待値との不一致である期待値比較エラーが発生していないか逐次監視し、検出する（ステップＳ４１２）。ここで、期待値比較エラーが発生していない場合には（ステップＳ４１２否定）、論理シミュレーション実行部１０５における論理シミュレーションの終了により一連の処理が終了する。
【００７５】
一方、期待値比較エラーが発生している場合には（ステップＳ４１２肯定）、比較エラー表示部１１０は該比較結果監視部４１７で検出した期待値比較エラーをユーザにレポートするため、エラーが発生したアドレスやエラーが発生するまでに実行された機械語命令列を表示して（ステップＳ４１３）一連の処理が終了する。
【００７６】
また、ステップＳ４０７において、機械語命令テストパターンが不確定値発生条件に該当する命令か否かを判断した結果、機械語命令テストパターンが不確定値発生条件に該当しない場合は（ステップＳ４０７否定）、該機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と期待値が一致しているか比較検証する新たな機械語命令テストパターンを５０％の確率で生成して機械語命令格納部４１６に出力する。ここで、必ずしも５０％である必要はないが、１００％では命令の遷移を網羅的に検証することができず、また、０％では期待値比較エラーを自動的に検出することができない。そして、その後はステップＳ４１０に進み、上記と同様の処理が進められる。
【００７７】
本実施の形態によれば、検証対象回路の仕様がOut Of Order Completion（各命令の実行時間の違いにより、完了順が変わる）のため、実施の形態１〜実施の形態３のOn The Fly Testが困難である場合でも、上記の構成及び処理動作により実施の形態１と同様の効果を得ることができる。
【００７８】
実施の形態５．
上述した実施の形態４では、検証対象回路の仕様書に基づき作成されたリファレンスモデルを基準として検証する場合について説明したが、既に命令動作の基準と成り得るＬＳＩの実チップが存在する場合には、実施の形態４に於けるリファレンスモデル格納部１０３に代えて該実チップを使用するリファレンスＬＳＩ部を備え、実施の形態４に於ける命令レベルシミュレーション実行部１０６に代えて、機械語命令をリファレンスＬＳＩ部に入力して該機械語命令を実行し、実行結果（各種レジスタやアキュムレータの値）を読み出して（STORE命令発行）期待値を得て、該期待値と機械語命令を期待値比較用機械語命令生成部４１５に出力すると共に、該期待値比較用機械語命令生成部４１５で該機械語命令が不確定値発生条件に該当すると判断された場合、該期待値比較用機械語命令生成部４１５が出力する論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）でリファレンスＬＳＩ内部の各種レジスタやアキュムレータの不確定（bit）値を上書き（LOAD命令発行）するリファレンスＬＳＩ制御部とを備えても良い。
【００７９】
図５−１は、本発明の実施の形態５にかかるコンピュータシステムの検証装置の主要機能構成を示す機能ブロック図である。図５−１に於いて、本実施の形態にかかる検証装置は、テスト制約付与部１０１と、検証対象回路モデル格納部１０４と、論理シミュレーション実行部１０５と、不確定値発生条件付与部１０８と、比較エラー表示部１１０と、機械語命令生成部４１４と、期待値比較用機械語命令生成部４１５と、機械語命令格納部４１６と、比較結果監視部４１７と、リファレンスＬＳＩ部５１１と、リファレンスＬＳＩ制御部５１２と、を備えて構成される。
【００８０】
テスト制約付与部１０１は、検証対象回路の仕様に基づいた制約条件を付与する。機械語命令生成部４１４は、該制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）をランダムに生成する。リファレンスＬＳＩ部５１１は、命令動作の基準と成り得るＬＳＩの実チップを使用する。
【００８１】
不確定値発生条件付与部１０８は、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を付与する。
【００８２】
リファレンスＬＳＩ制御部５１２は、機械語命令をリファレンスＬＳＩ部５１１に入力して該機械語命令を実行し、実行結果（各種レジスタやアキュムレータの値）を読み出して（STORE命令発行）期待値を得て、該期待値と機械語命令を期待値比較用機械語命令生成部４１５に出力すると共に、該期待値比較用機械語命令生成部４１５で該機械語命令が不確定値発生条件に該当すると判断された場合、該期待値比較用機械語命令生成部４１５が出力する論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）でリファレンスＬＳＩ５１１内部の各種レジスタやアキュムレータの不確定（bit）値を上書き（ＬＯＡＤ命令発行）する。
【００８３】
検証対象回路モデル格納部１０４は、検証対象回路のモデル（論理シミュレーション用モデル）を格納する。論理シミュレーション実行部１０５は、該検証対象回路モデルと該機械語命令テストパターンとを入力として論理シミュレーションを実行する。
【００８４】
期待値比較用機械語命令生成部４１５は、前述の期待値と機械語命令テストパターンと不確定値発生条件とを入力とし、機械語命令テストパターンが不確定値発生条件に該当しない場合は機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と期待値が一致しているか比較検証する機械語命令テストパターンを生成して機械語命令格納部４１６に出力し、また該条件に該当する場合は該機械語命令テストパターンを論理シミュレーション実行部１０５に印加し、論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）を命令レベルシミュレーション実行部１０６に出力するとともに、期待値中の不確定（bit）値を該結果で上書きした値を期待値として、機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と該期待値が一致しているか比較検証する機械語命令テストパターンを生成して機械語命令格納部４１６に出力する。
【００８５】
機械語命令格納部４１６は、機械語命令生成部４１４と期待値比較用機械語命令生成部４１５とから出力された各機械語命令テストパターンを格納する。比較結果監視部４１７は、論理シミュレーション実行部１０５において機械語命令テストパターンと検証対象回路モデルを入力として論理シミュレーションの実行中、期待値比較エラーが発生していないか逐次監視し、検出する。比較エラー表示部１１０は、該比較結果監視部４１７で検出した期待値比較エラーをユーザにレポートする。
【００８６】
つぎに、上述した本実施の形態にかかる検証装置における動作を図５−２および図５−３に示すフローチャートに従って説明する。まず、検証対象回路の仕様に基づいた制約条件をテスト制約付与部１０１に付与する（ステップＳ５０１）。つぎに、検証対象回路のモデル（論理シミュレーション用モデル）を検証対象回路モデル格納部１０４（ステップＳ５０２）に格納する。
【００８７】
つぎに、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を不確定値発生条件付与部１０８に付与する（ステップＳ５０３）。
【００８８】
つぎに、機械語命令生成部４１４は、テスト制約付与部１０１に付与された制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）を１命令分ランダムに生成し、機械語命令格納部４１６に格納する（ステップＳ５０４）。
【００８９】
つぎに、リファレンスＬＳＩ制御部５１２は、機械語命令テストパターンをリファレンスＬＳＩ部２１１に入力して該機械語命令テストパターンを実行し、実行結果（各種レジスタやアキュムレータの値）を読み出して（STORE命令発行）期待値を得て（ステップＳ５０５）、該期待値と機械語命令テストパターンを期待値比較用機械語命令生成部４１５に出力する。
【００９０】
つぎに、期待値比較用機械語命令生成部４１５は、前述の期待値と機械語命令テストパターンと不確定値発生条件とを入力として、機械語命令テストパターンが不確定値発生条件に該当する命令か否かを判断する（ステップＳ５０６）。
【００９１】
期待値比較用機械語命令生成部４１５は、機械語命令テストパターンが不確定値発生条件に該当する場合には（ステップＳ５０６肯定）、該機械語命令テストパターンを論理シミュレーション実行部１０５に印加して論理シミュレーションを実行させる。そして、期待値比較用機械語命令生成部４１５は、論理シミュレーションの実行結果（各種レジスタやアキュムレータの値）を論理シミュレーション実行部１０５から読み出してリファレンスＬＳＩ制御部５１２に出力し、リファレンスＬＳＩ制御部５１２にリファレンスＬＳＩ５１１内部の各種レジスタやアキュムレータの不確定（bit）値を上書き（ＬＯＡＤ命令発行）させる（ステップＳ５０７）。
【００９２】
また、それとともに、期待値中の不確定（bit）値を該結果で上書きした値を期待値として、機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と期待値が一致しているか比較検証する新たな機械語命令テストパターンを５０％の確率で生成して機械語命令格納部４１６に出力する（ステップＳ５０８）。ここで、必ずしも５０％の確率である必要はないが、１００％では命令の遷移を網羅的に検証することができず、また、０％では期待値比較エラーを自動的に検出することができない。
【００９３】
そして、期待値比較用機械語命令生成部４１５は、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たしたか否かを判断する（ステップＳ５０９）。ここで、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たしていない場合には（ステップＳ５０９否定）、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たすまで該機械語命令生成部４１４の処理（ステップＳ５０４）に戻り、次の機械語命令テストパターンをランダム生成する。
【００９４】
一方、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たした場合には（ステップＳ５０９肯定）、つぎに、論理シミュレーション実行部１０５は検証対象回路モデルと機械語命令格納部４１６に格納された機械語命令テストパターンを入力として論理シミュレーションを実行する（ステップＳ５１０）。
【００９５】
つぎに、比較結果監視部４１７は、機械語命令テストパターンと検証対象回路モデルを入力とした論理シミュレーション実行部１０５における論理シミュレーションの実行時、、機械語命令テストパターンの実行時に新たな期待値と機械語命令テストパターンの演算結果との不一致、または機械語命令テストパターンの演算結果と期待値との不一致である期待値比較エラーが発生していないか逐次監視し、検出する（ステップＳ５１１）。ここで、期待値比較エラーが発生していない場合には（ステップＳ５１１否定）、論理シミュレーション実行部１０５における論理シミュレーションの終了により一連の処理が終了する。
【００９６】
一方、期待値比較エラーが発生している場合には（ステップＳ５１１肯定）、比較エラー表示部１１０は該比較結果監視部４１７で検出した期待値比較エラーをユーザにレポートするため、エラーが発生したアドレスやエラーが発生するまでに実行された機械語命令列を表示して（ステップＳ５１２）一連の処理が終了する。
【００９７】
また、ステップＳ５０６において、機械語命令テストパターンが不確定値発生条件に該当する命令か否かを判断した結果、機械語命令テストパターンが不確定値発生条件に該当しない場合は（ステップＳ５０６否定）、該機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と期待値が一致しているか比較検証する新たな機械語命令テストパターンを５０％の確率で生成して機械語命令格納部４１６に出力する。ここで、必ずしも５０％である必要はないが、１００％では命令の遷移を網羅的に検証することができず、また、０％では期待値比較エラーを自動的に検出することができない。そして、その後はステップＳ４１０に進み、上記と同様の処理が進められる。
【００９８】
上述したように、実施の形態５にかかる検証装置においては、検証対象回路の仕様書に基づき作成されたリファレンスモデルの代わりに、既に命令動作の基準と成り得るＬＳＩの実チップが存在するため、上記の構成及び処理動作により実施の形態１と同様の効果を得ることができる。
【００９９】
本実施の形態によれば、検証対象回路の仕様がOut Of Order Completion（各命令の実行時間の違いにより、完了順が変わる）のため、実施の形態１〜実施の形態３のOn The Fly Testが困難である場合でも、上記の構成及び処理動作により実施の形態１と同様の効果を得ることができる。また、上述したように、実施の形態５にかかる検証装置においては、検証対象回路の仕様書に基づき作成されたリファレンスモデルの代わりに、既に命令動作の基準と成り得るＬＳＩの実チップが存在するため、上記の構成及び処理動作により実施の形態１と同様の効果を得ることができる。
【０１００】
実施の形態６．
上述した実施の形態４では、検証対象回路の論理シミュレーション用モデルを検証する場合について説明したが、既に試作したＦＰＧＡ等のＬＳＩの実チップが存在する場合には、実施の形態４に於ける検証対象回路モデル格納部１０４および論理シミュレーション実行部１０５に代えて、該実チップを検証対象とする検証対象ＬＳＩ部を備えた構成としても良い。
【０１０１】
図６−１は、本発明の実施の形態６にかかるコンピュータシステムの検証装置の主要機能構成を示す機能ブロック図である。図６−１に於いて、本実施の形態にかかる検証装置は、テスト制約付与部１０１と、リファレンスモデル格納部１０３と、命令レベルシミュレーション実行部１０６と、不確定値発生条件付与部１０８と、比較エラー表示部１１０と、機械語命令生成部４１４と、期待値比較用機械語命令生成部４１５と、機械語命令格納部４１６と、比較結果監視部４１７と、検証対象ＬＳＩ部６１３と、を備えて構成される。
【０１０２】
テスト制約付与部１０１は、検証対象回路の仕様に基づいた制約条件を付与する。機械語命令生成部４１４は、該制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）をランダムに生成する。リファレンスモデル格納部１０３は、該検証対象回路の仕様書に基づき作成されたリファレンスモデルを格納する。
【０１０３】
不確定値発生条件付与部１０８は、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を付与する。
【０１０４】
命令レベルシミュレーション実行部１０６は、リファレンスモデルと該機械語命令を入力として命令レベルシミュレーション（Instruction Set Simulation）を実行して期待値を得て、該期待値と機械語命令テストパターンを後述する期待値比較用機械語命令生成部４１５に出力すると共に、後述する期待値比較用機械語命令生成部４１５で該機械語命令テストパターンが不確定値発生条件に該当すると判断された場合、後述する期待値比較用機械語命令生成部４１５が出力する検証対象ＬＳＩの命令実行結果（各種レジスタやアキュムレータの値）で命令レベルシミュレーション内部の各種レジスタやアキュムレータの不確定（bit）値を上書きする。
【０１０５】
検証対象ＬＳＩ部６１３は、試作したＦＰＧＡ等のＬＳＩの実チップ（検証対象ＬＳＩ）であり、ＬＳＩ内部の各種レジスタやアキュムレータの値が直接観測可能な評価用端子を持つ検証対象ＬＳＩ部である。
【０１０６】
期待値比較用機械語命令生成部４１５は、前述の期待値と機械語命令テストパターンと不確定値発生条件とを入力とし、機械語命令テストパターンが不確定値発生条件に該当しない場合は機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と期待値が一致しているか比較検証する機械語命令テストパターンを生成して機械語命令格納部４１６に出力し、また該条件に該当する場合は該機械語命令テストパターンを検証対象ＬＳＩ部６１３に印加し、該検証対象ＬＳＩ部６１３の命令実行結果（各種レジスタやアキュムレータの値）を命令レベルシミュレーション実行部１０６に出力するとともに、期待値中の不確定（bit）値を該結果で上書きした値を期待値として、機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と該期待値が一致しているか比較検証する機械語命令テストパターンを生成して機械語命令格納部４１６に出力する。
【０１０７】
機械語命令格納部４１６は、機械語命令生成部４１４と期待値比較用機械語命令生成部４１５とから出力された各機械語命令テストパターンを格納する。比較結果監視部４１７は、論理シミュレーション実行部１０５において機械語命令テストパターンと検証対象回路モデルを入力として論理シミュレーションの実行中、期待値比較エラーが発生していないか逐次監視し、検出する。比較エラー表示部１１０は、該比較結果監視部４１７で検出した期待値比較エラーをユーザにレポートする。
【０１０８】
つぎに、上述した本実施の形態にかかる検証装置における動作を図６−２および図６−３に示すフローチャートに従って説明する。まず、検証対象回路の仕様に基づいた制約条件をテスト制約付与部１０１に付与する（ステップＳ６０１）。つぎに、該検証対象回路の仕様書に基づき作成されたリファレンスモデルをリファレンスモデル格納部１０３に格納する（ステップＳ６０２）。
【０１０９】
つぎに、該仕様に定義されている演算命令の演算結果にDon’t care（不確定値）ビットが含まれたり、該演算命令の処理に於いて使用されるレジスタやアキュムレータの値を破壊する仕様が含まれ、命令仕様として演算結果が確定できない命令と、その命令によって不確定値になるレジスタやアキュムレータ、あるいは、その構成ビットの情報を不確定値発生条件付与部１０８に付与する（ステップＳ６０３）。
【０１１０】
つぎに、機械語命令生成部４１４は、テスト制約付与部１０１に付与された制約条件に基づき規則性を持った機械語命令テストパターン（オペコードとオペランド）を１命令分ランダムに生成し、機械語命令格納部４１６に格納する（ステップＳ６０４）。
【０１１１】
つぎに、命令レベルシミュレーション実行部１０６は、リファレンスモデル格納部１０３に格納したリファレンスモデルと機械語命令生成部４１４で生成した機械語命令テストパターンとを入力として命令レベルシミュレーション（Instruction Set Simulation）を１命令分実行して期待値を得て（ステップＳ６０５）、該期待値と機械語命令テストパターンを期待値比較用機械語命令生成部４１５に出力する。
【０１１２】
つぎに、期待値比較用機械語命令生成部４１５は、前述の期待値と機械語命令テストパターンと不確定値発生条件とを入力として、機械語命令テストパターンが不確定値発生条件に該当する命令か否かを判断する（ステップＳ６０６）。
【０１１３】
期待値比較用機械語命令生成部４１５は、機械語命令テストパターンが不確定値発生条件に該当する場合には（ステップＳ６０６肯定）、該機械語命令テストパターンを該検証対象ＬＳＩ部６１３に印加して機械語命令テストパターンを実行させる。そして、期待値比較用機械語命令生成部４１５は、機械語命令テストパターンの実行結果（各種レジスタやアキュムレータの値）を検証対象ＬＳＩ部６１３から読み出して命令レベルシミュレーション実行部１０６に出力し、命令レベルシミュレータにリファレンスモデル内部の各種レジスタやアキュムレータの不確定（bit）値を上書きさせる（ステップＳ６０７）。
【０１１４】
また、それとともに、期待値中の不確定（bit）値を該結果で上書きした値を期待値として、機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と期待値が一致しているか比較検証する新たな機械語命令テストパターンを５０％の確率で生成して機械語命令格納部４１６に出力する（ステップＳ６０８）。ここで、必ずしも５０％の確率である必要はないが、１００％では命令の遷移を網羅的に検証することができず、また、０％では期待値比較エラーを自動的に検出することができない。
【０１１５】
そして、期待値比較用機械語命令生成部４１５は、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たしたか否かを判断する（ステップＳ６０９）。ここで、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たしていない場合には（ステップＳ６０９否定）、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たすまで該機械語命令生成部４１４の処理（ステップＳ４０５）に戻り、次の機械語命令テストパターンをランダム生成する。
【０１１６】
一方、機械語命令格納部４１６に格納される命令が検証対象回路のメモリ空間を満たした場合には（ステップＳ６０９肯定）、つぎに、期待値比較用機械語命令生成部４１５は検証対象ＬＳＩ部６１３に機械語命令テストパターンを入力し、検証対象ＬＳＩ部６１３は該機械語命令テストパターンを実行する（ステップＳ６１０）。
【０１１７】
つぎに、比較結果監視部４１７は、検証対象ＬＳＩ部６１３における該機械語命令テストパターンの実行時、機械語命令テストパターンの実行時に新たな期待値と機械語命令テストパターンの演算結果との不一致、または機械語命令テストパターンの演算結果と期待値との不一致である期待値比較エラーが発生していないか逐次監視し、検出する（ステップＳ６１１）。ここで、期待値比較エラーが発生していない場合には（ステップＳ６１１否定）、検証対象ＬＳＩ部６１３における該機械語命令テストパターンの実行終了により一連の処理が終了する。
【０１１８】
一方、期待値比較エラーが発生している場合には（ステップＳ６１１肯定）、比較エラー表示部１１０は該比較結果監視部４１７で検出した期待値比較エラーをユーザにレポートするため、エラーが発生したアドレスやエラーが発生するまでに実行された機械語命令列を表示して（ステップＳ６１２）一連の処理が終了する。
【０１１９】
また、ステップＳ６０６において、機械語命令テストパターンが不確定値発生条件に該当する命令か否かを判断した結果、機械語命令テストパターンが不確定値発生条件に該当しない場合は（ステップＳ６０６否定）、該機械語命令テストパターンが演算結果を出力するレジスタ（あるいはアキュムレータ）に格納されている値と期待値が一致しているか比較検証する新たな機械語命令テストパターンを５０％の確率で生成して機械語命令格納部４１６に出力する。ここで、必ずしも５０％である必要はないが、１００％では命令の遷移を網羅的に検証することができず、また、０％では期待値比較エラーを自動的に検出することができない。そして、その後はステップＳ４１０に進み、上記と同様の処理が進められる。
【０１２０】
上述したように、実施の形態４および実施の形態５では検証対象回路の論理シミュレーション用モデルを検証したが、実施の形態６にかかる検証装置においては、検証対象回路の論理シミュレーション用モデルの代わりに、既に試作したＦＰＧＡ等のＬＳＩの実チップが存在するため、上記の構成及び処理動作により実施の形態１と同様の効果を得ることができる。また、本実施の形態によれば、検証対象回路の仕様がOut Of Order Completion（各命令の実行時間の違いにより、完了順が変わる）のため、実施の形態３のOn The Fly Testが困難である場合でも、上記の構成及び処理動作により実施の形態１と同様の効果を得ることができる。
【産業上の利用可能性】
【０１２１】
以上のように、本発明にかかる検証装置は、汎用コンピュータのように命令の遷移を網羅的に検証する必要があるコンピュータシステム等に有用である。
【図面の簡単な説明】
【０１２２】
【図１−１】本発明の実施の形態１にかかる検証装置の主要な機能構成を示す機能ブロック図である。
【図１−２】本実施の形態の形態１にかかる検証装置における処理を説明するフローチャートである。
【図２−１】本発明の実施の形態２にかかる検証装置の主要な機能構成を示す機能ブロック図である。
【図２−２】本実施の形態の形態２にかかる検証装置における処理を説明するフローチャートである。
【図３−１】本発明の実施の形態３にかかる検証装置の主要な機能構成を示す機能ブロック図である。
【図３−２】本実施の形態の形態３にかかる検証装置における処理を説明するフローチャートである。
【図４−１】本発明の実施の形態４にかかる検証装置の主要な機能構成を示す機能ブロック図である。
【図４−２】本実施の形態の形態４にかかる検証装置における処理を説明するフローチャートである。
【図４−３】本実施の形態の形態４にかかる検証装置における処理を説明するフローチャートである。
【図５−１】本発明の実施の形態５にかかる検証装置の主要な機能構成を示す機能ブロック図である。
【図５−２】本実施の形態の形態５にかかる検証装置における処理を説明するフローチャートである。
【図５−３】本実施の形態の形態５にかかる検証装置における処理を説明するフローチャートである。
【図６−１】本発明の実施の形態６にかかる検証装置の主要な機能構成を示す機能ブロック図である。
【図６−２】本実施の形態の形態６にかかる検証装置における処理を説明するフローチャートである。
【図６−３】本実施の形態の形態６にかかる検証装置における処理を説明するフローチャートである。
【符号の説明】
【０１２３】
１０１  テスト制約付与部
１０２  テストパターン生成部
１０３  リファレンスモデル格納部
１０４  検証対象回路モデル格納部
１０５  論理シミュレーション実行部
１０６  命令レベルシミュレーション実行部
１０７  期待値比較部
１０８  不確定値発生条件付与部
１０９  比較エラー解析部
１１０  比較エラー表示部
２１１  リファレンスＬＳＩ部
２１２  リファレンスＬＳＩ制御部
３１３  検証対象ＬＳＩ部
４１４  機械語命令生成部
４１５  期待値比較用機械語命令生成部
４１６  機械語命令格納部
４１７  比較結果監視部
５１１  リファレンスＬＳＩ部
５１２  リファレンスＬＳＩ制御部
６１３  検証対象ＬＳＩ部
【図１−１】
2006202137.tif 000003
【図１−２】
2006202137.tif 000004
【図２−１】
2006202137.tif 000005
【図２−２】
2006202137.tif 000006
【図３−１】
2006202137.tif 000007
【図３−２】
2006202137.tif 000008
【図４−１】
2006202137.tif 000009
【図４−２】
2006202137.tif 000010
【図４−３】
2006202137.tif 000011
【図５−１】
2006202137.tif 000012
【図５−２】
2006202137.tif 000013
【図５−３】
2006202137.tif 000014
【図６−１】
2006202137.tif 000015
【図６−２】
2006202137.tif 000016
【図６−３】
2006202137.tif 000017