【手続補正書】
【提出日】平成17年4月21日(2005.4.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
１個以上のプロセッサを含む回路データ部と、シミュレーション装置と、期待値生成装置と、比較装置と、データ情報抽出装置と、実行制御装置とを有し、
前記シミュレーション装置は、前記プロセッサで実行可能な命令のシミュレーション動作を前記回路データ部で実行してシミュレーション結果を生成するものであり、
前記期待値生成装置は、前記命令をシミュレーションする際の期待値を生成するものであり、
前記比較装置は、前記シミュレーション結果と前記期待値とを比較するものであり、
前記データ情報抽出装置は、前記期待値生成装置が前記期待値を生成する際に参照する情報または生成した期待値を抽出するものであり、
前記実行制御装置は、前記データ情報抽出装置が抽出した情報に基づいて、前記命令のシミュレーション動作を実行した場合にそのシミュレーション結果が前記比較装置において擬似エラーとならないことを示すデータ制約条件を満たすか否かを判断し、その判断結果に基づいて前記シミュレーション装置と前記期待値生成装置とにおける前記命令の実行を制御するものである、ことを特徴とする検証装置。
【請求項２】
請求項１に記載の検証装置において、
前記実行制御装置は、前記データ情報抽出装置が抽出した情報を格納しているレジスタ値を観測することで、前記命令がそのデータ制約条件を満たすか否かを判断するものである、ことを特徴とする検証装置。
【請求項３】
請求項１記載の検証装置において、
前記実行制御装置は、前記判断結果に基づいて前記シミュレーション装置と前記期待値生成装置とにおける前記命令の実行を停止するものである、ことを特徴とする検証装置。
【請求項４】
請求項３記載の検証装置において、
前記データ情報抽出装置は、前記期待値生成装置で実行される命令とその命令の実行時に参照される参照データとを抽出するものであり、
前記実行制御装置は、
前記命令がその実行時に参照する参照データの制約条件の有無と、その制約条件の内容とを格納するデータ制約情報格納部と、
前記データ情報抽出装置が抽出する前記命令と前記参照データとを、前記データ制約情報格納部に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析装置と、
前記命令が前記データ制約条件を有する場合、当該命令を前記データ制約情報格納部に照合することで、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析装置と、
前記命令の参照データがそのデータ制約条件を満たさない場合、前記シミュレーション装置と前記期待値生成装置とを停止させる制御装置と、を有することを特徴とする検証装置。
【請求項５】
請求項１記載の検証装置において、
前記シミュレーション装置は、前記実行制御装置からの停止解除通知を受けるまで当該シミュレーション装置のシミュレーション動作を停止させる実行待機装置を有し、
前記期待値生成装置は、当該期待値生成装置を、直前に実行した命令の実行前の状態に遷移させる前状態戻り装置を有し、
前記実行制御装置は、
前記期待値生成装置での前記命令の実行結果である期待値が、実行結果として保証不可能な未定義結果となるか否かを判定する未定義結果判定装置と、
前記判断結果が、前記期待値が未定義結果であることを示す場合、前記実行待機装置によって前記シミュレーション装置の命令実行を停止させるとともに、前記前状態戻り装置によって前記期待値生成装置の状態遷移動作を実施させる制御装置と、を有することを特徴とする検証装置。
【請求項６】
請求項１記載の検証装置において、
前記データ情報抽出装置は、前記期待値生成装置で実行される命令とその命令の実行時に参照される参照データとを抽出するものであり、
前記実行制御装置は、
前記命令がその実行時に参照する参照データの制約条件の有無と、その制約条件の内容とを格納するデータ制約情報格納部と、
前記データ情報抽出装置が抽出する前記命令と前記参照データとを、前記データ制約情報格納部に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析装置と、
前記命令が前記データ制約条件を有する場合、当該命令を前記データ制約情報格納部に照合することで、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析装置と、
前記命令の参照データがそのデータ制約条件を満たさない場合、当該命令を、前記データ制約条件を有さない他の命令に置換したうえで、前記シミュレーション装置と前記期待値生成装置とで実行させる制御装置と、を有することを特徴とする検証装置。
【請求項７】
請求項１記載の検証装置において、
前記データ情報抽出装置は、前記期待値生成装置で実行される命令とその命令の実行時に参照される参照データとを抽出するものであり、
前記実行制御装置は、
前記命令がその実行時に参照する参照データの制約条件の有無と、その制約条件の内容とを格納するデータ制約情報格納部と、
前記データ情報抽出装置が抽出する前記命令と前記参照データとを、前記データ制約情報格納部に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析装置と、
前記命令が前記データ制約条件を有する場合、当該命令を前記データ制約情報格納部に照合することで、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析装置と、
前記命令の参照データがそのデータ制約条件を満たさない場合、前記命令を、その参照データがデータ制約条件を満たす命令に修正したうえで、その修正命令を前記シミュレーション装置と前記期待値生成装置とで実行させる制御装置と、を有することを特徴とする検証装置。
【請求項８】
請求項７に記載の検証装置において、
前記制御装置は、データ制約条件を満たさない参照データを有する命令の当該参照データを、データ制約条件を満たす他の参照データに置換したうえで、その命令を前記シミュレーション装置と前記期待値生成装置とで実行させるものである、ことを特徴とする検証装置。
【請求項９】
請求項８記載の検証装置において、
前記制御装置は、
前記参照データ解析装置によってデータ制約条件を満たさない参照データを有すると判定された命令の他の参照データ候補を探索する参照データ候補探索装置と、
前記参照データ候補探索装置で探索された前記他の参照データ候補が前記データ制約条件を満たすか否かを解析する参照データ候補解析装置と、
前記他の参照データ候補が前記データ制約条件を満たす場合、前記参照データを前記参照データ候補に置換する参照データ置換装置と、を有することを特徴とする検証装置。
【請求項１０】
請求項７に記載の検証装置において、
前記制御装置は、データ制約条件を満たさない参照データを参照する命令の当該参照データを更新する更新命令を作成したうえで、その更新命令を、前記命令より時間的に前において前記シミュレーション装置と前記期待値生成装置とで実行させるものである、ことを特徴とする検証装置。
【請求項１１】
請求項１０記載の検証装置において、
前記制御装置は、
前記参照データ解析装置によってデータ制約条件を満たさない参照データを参照すると判定された命令の当該参照データを、データ制約条件を満たす参照データに更新する更新命令を生成する命令生成装置と、
前記更新命令を、前記命令より時間的に前において前記シミュレーション装置と前記期待値生成装置とで実行可能に配置する命令配置装置と、を有することを特徴とする検証装置。
【請求項１２】
請求項１記載の検証装置において、
前記データ情報抽出装置は、前記期待値生成装置で実行される命令とその命令の実行時に参照される参照データとを抽出するものであり、
前記実行制御装置は、
前記命令がその実行時に参照する参照データの制約条件の有無と、その制約条件の内容とを格納するデータ制約情報格納部と、
前記データ情報抽出装置が抽出する前記命令と前記参照データとを、前記データ制約情報格納部のデータ制約情報に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析装置と、
前記命令が前記データ制約条件を有する場合、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析装置と、
前記命令の参照データがそのデータ制約条件を満たさない場合、前記シミュレーション装置と前記期待値生成装置とにおいて前記命令の参照データを、そのデータ制約条件を満たすように強制的に更新する制御装置と、を有することを特徴とする検証装置。
【請求項１３】
請求項１記載の検証装置において、
前記データ情報抽出装置は、前記期待値生成装置で実行される命令とその命令の実行時に参照される参照データとを抽出するものであり、
前記実行制御装置は、
前記命令がその実行時に参照する参照データの制約条件の有無と、その制約条件の内容とを格納するデータ制約情報格納部と、
前記データ情報抽出装置が抽出する前記命令と前記参照データとを、前記データ制約情報格納部のデータ制約情報に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析装置と、
前記命令が前記データ制約条件を有する場合、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析装置と、
前記命令の参照データがそのデータ制約条件を満たさない場合、前記シミュレーション装置と前記期待値生成装置とにおいて前記命令を実行した結果として得られるシミュレーション結果と期待値とを、互いに同一の値となるように更新する制御装置と、を有することを特徴とする検証装置。
【請求項１４】
請求項１記載の検証装置において、
前記データ情報抽出装置は、前記期待値生成装置で実行される命令とその命令の実行時に参照される参照データとを抽出するものであり、
前記実行制御装置は、
前記命令がその実行時に参照する参照データの制約条件の有無と、その制約条件の内容とを格納するデータ制約情報格納部と、
前記データ情報抽出装置が抽出する前記命令と前記参照データとを、前記データ制約情報格納部に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析装置と、
前記命令が前記データ制約条件を有する場合、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析装置と、
前記命令の参照データがそのデータ制約条件を満たさない場合、前記シミュレーション装置と前記期待値生成装置とにおいて前記命令を実行した結果として得られるシミュレーション結果と期待値とを更新する更新命令を生成したうえで、当該更新命令を、前記シミュレーション装置と前記期待値生成装置で実行させる制御装置と、を有することを特徴とする検証装置。
【請求項１５】
１個以上のプロセッサを含む回路データ部で命令のシミュレーション動作を実施してその命令のシミュレーション結果を求めるとともに、前記命令を用いて当該命令をシミュレーションする際の期待値を求めたうえで、前記シミュレーション結果と前記期待値との比較に基づいて前記回路データ部の検証を行う方法において、
前記期待値を生成する際に参照する情報または生成した期待値を抽出する抽出工程と、
前記抽出工程で抽出した情報に基づいて、前記命令のシミュレーション動作を実行した場合にそのシミュレーション結果が前記比較装置において擬似エラーとならないことを示すデータ制約条件を満たすか否かを判断する判断工程と、
前記判断工程による判断結果に基づいて、前記命令のシミュレーション動作と前記命令の期待値生成動作とを制御する制御工程と、を含むことを特徴とする検証方法。
【請求項１６】
請求項１５に記載の検証方法において、
前記制御工程は、前記抽出工程において抽出した情報を格納しているレジスタ値を観測することで、前記命令がそのデータ制約条件を満たすか否かを判断する工程である、ことを特徴とする検証方法。
【請求項１７】
請求項１５記載の検証方法において、
前記データ制約条件として、前記参照データの値域を制限する条件を含むものを用いる、ことを特徴とする検証方法。
【請求項１８】
請求項１５記載の検証方法において、
前記制御工程は、前記判断工程による判断結果に基づいて前記命令のシミュレーション動作と前記命令の期待値生成動作とを停止させる工程である、ことを特徴とする検証方法。
【請求項１９】
請求項１８記載の検証方法において、
前記抽出工程は、前記期待値生成動作を実行する前記命令と、その命令の期待値生成動作時に参照される参照データとを抽出するステップを含み、
前記制御工程は、
前記抽出工程で抽出する前記命令の前記参照データがデータ制約条件を有するか否かを解析する命令解析ステップと、
前記命令が前記データ制約条件を有する場合、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析ステップと、
前記命令の参照データがそのデータ制約条件を満たさない場合、前記命令のシミュレーション動作と前記命令の期待値生成動作とを停止させる制御ステップと、を含むことを特徴とする検証方法。
【請求項２０】
請求項１９記載の検証方法において、
前記制御ステップは、次の命令として、前記データ制約条件の無い前記命令または前記データ制約条件を満たす前記命令が供給されるまで、前記命令のシミュレーション動作と前記命令の期待値生成動作とを停止させるステップである、ことを特徴とする検証方法。
【請求項２１】
請求項１５記載の検証方法において、
前記制御工程は、前記判断工程による判断結果に基づいて前記命令の次に実行される次命令のシミュレーション動作と当該次命令の期待値生成動作との実行を制御する工程である、ことを特徴とする検証方法。
【請求項２２】
請求項２１記載の検証方法において、
前記制御工程は、前記判断工程による判断結果に基づいて、前記命令のシミュレーション動作を停止させるとともに、当該命令の期待値生成動作を、動作実行前の状態に遷移させる工程である、ことを特徴とする検証方法。
【請求項２３】
請求項２２記載の検証方法において、
前記抽出工程は、前記命令の期待値生成動作によって得られる前記期待値を抽出する工程であり、
前記制御工程は、
前記命令の期待値生成動作によって得られる期待値が、前記命令の実行結果として保証不可能な未定義結果となるか否かを判定する未定義結果判定ステップと、
前記判断結果が、前記期待値が未定義結果であることを示す場合、前記命令のシミュレーション動作を停止させるとともに、当該命令の期待値生成動作を、動作実行前の状態に遷移させる前状態戻りステップと、
を含む、ことを特徴とする検証方法。
【請求項２４】
請求項１５記載の検証方法において、
前記抽出工程は、前記期待値生成動作で実行される命令とその命令の実行時に参照される参照データとを抽出するステップを含み、
前記制御工程は、
前記抽出工程で抽出した前記命令と前記参照データとを、前記命令がその実行時に参照する参照データの制約条件に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析ステップと、
前記命令がデータ制約条件を有する場合、当該命令の参照データを、当該命令がその実行時に参照する参照データの制約条件に照合することで、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析ステップと、
前記命令の参照データがそのデータ制約条件を満たさない場合、当該命令を、前記データ制約条件を有さない他の命令に置換したうえで、当該命令のシミュレーション動作と期待値生成動作とを実行する制御ステップと、を含むことを特徴とする検証方法。
【請求項２５】
請求項１５記載の検証方法において、
前記抽出工程は、前記期待値生成動作で実行される命令とその命令の実行時に参照される参照データとを抽出するステップを含み、
前記制御工程は、
前記抽出工程で抽出した前記命令と前記参照データとを、前記命令がその実行時に参照する参照データの制約条件に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析ステップと、
前記命令が前記データ制約条件を有する場合、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析ステップと、
前記命令の参照データがそのデータ制約条件を満たさない場合、当該命令を、その参照データがデータ制約条件を満たす命令に修正したうえで、その修正命令のシミュレーション動作とその修正命令の期待値生成動作とを実行する制御ステップと、を含むことを特徴とする検証方法。
【請求項２６】
請求項２５記載の検証方法において、
前記制御ステップは、前記命令の前記参照データが前記データ制約条件を満たさない場合、当該命令の参照データを、前記データ制約条件を満たす他の参照データに置換するステップである、
ことを特徴とする検証方法。
【請求項２７】
請求項２６に記載の検証方法において、
前記制御ステップは、
前記参照データ解析ステップでデータ制約条件を満たさない参照データを有すると解析された前記命令の他の参照データ候補を探索する候補探索処理と、
前記候補探索処理で探索された前記他の参照データ候補が前記データ制約条件を満たすか否かを解析する候補解析処理と、
前記参照データを、前記データ制約条件を満たす前記他の参照データ候補に置換する参照データ置換処理と、を含むことを特徴とする検証方法。
【請求項２８】
請求項２５記載の検証方法において、
前記制御ステップは、前記命令の前記参照データが前記データ制約条件を満たさない場合、当該命令の参照データを、データ制約条件を満たす参照データに更新する更新命令を生成し、当該更新命令により前記参照データを更新したうえで、前記命令のシミュレーション動作と前記命令の期待値生成動作とを実行させるステップである、
ことを特徴とする検証方法。
【請求項２９】
請求項２８記載の検証方法において、
前記制御ステップは、前記命令の参照データがそのデータ制約条件を満たさない場合、当該命令の参照データを、データ制約条件を満たす参照データに更新する更新命令を生成する更新命令生成処理と、
前記更新命令が、前記命令のシミュレーション動作と前記命令の期待値生成動作との実行前に実行されるように、当該更新命令を配置する命令配置処理と、を含むことを特徴とする検証方法。
【請求項３０】
請求項１５記載の検証方法において、
前記制御工程は、前記判断工程により前記参照データが前記データ制約条件を満たさないと判断する場合、前記参照データを、前記データ制約条件を満たすデータに更新する工程である、ことを特徴とする検証方法。
【請求項３１】
請求項３０記載の検証方法において、
前記抽出工程は、前記期待値生成動作で実行される命令とその命令の実行時に参照される参照データとを抽出するステップを含み、
前記制御工程は、
前記抽出工程で抽出する前記命令と前記参照データとを、前記命令がその実行時に参照する参照データの制約条件に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析ステップと、
前記命令が前記データ制約条件を有する場合、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析ステップと、
前記命令の参照データがそのデータ制約条件を満たさない場合、当該参照データを、データ制約条件を満たす参照データに強制的に更新したうえで、前記命令の前記シミュレーション動作と前記期待値生成動作とを実行させる制御ステップと、を有することを特徴とする検証方法。
【請求項３２】
請求項２４記載の検証方法において、
前記制御工程は、前記判断工程により前記参照データが前記データ制約条件を満たさないと判断する場合、前記命令のシミュレーション動作と前記命令の期待値生成動作とにより得られるシミュレーション結果と期待値とを、互いに同一の値となるように更新する工程である、ことを特徴とする検証方法。
【請求項３３】
請求項３２記載の検証方法において、
前記抽出工程は、前記期待値生成動作で実行される命令とその命令の実行時に参照される参照データとを抽出するステップを含み、
前記制御工程は、
前記抽出工程で抽出する前記命令と前記参照データとを、前記命令がその実行時に参照する参照データの制約条件に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析ステップと、
前記命令が前記データ制約条件を有する場合、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析ステップと、
前記命令の参照データがそのデータ制約条件を満たさない場合、前記命令のシミュレーション動作と前記命令の期待値生成動作とにより得られるシミュレーション結果と期待値とを、互いに同一の値となるように更新する制御ステップと、を有することを特徴とする検証方法。
【請求項３４】
請求項３２記載の検証方法において、
前記制御ステップは、前記シミュレーション結果を前記期待値と同一の値に更新する、あるいは前記期待値を前記シミュレーション結果と同一の値に更新するステップである、ことを特徴とするプロセッサを含む回路データ部の検証方法。
【請求項３５】
請求項１５記載の検証方法において、
前記抽出工程は、前記期待値生成装置で実行される命令とその命令の実行時に参照される参照データとを抽出するステップを含み、
前記制御工程は、
前記抽出工程で抽出する前記命令と前記参照データとを、前記命令がその実行時に参照するデータ制約条件に照合することで、当該命令がデータ制約条件を有するか否かを解析する命令解析ステップと、
前記命令が前記データ制約条件を有する場合、当該命令の参照データがそのデータ制約条件を満たすか否かを解析する参照データ解析ステップと、
前記命令の参照データがそのデータ制約条件を満たさない場合、前記命令のシミュレーション動作と前記命令の期待値生成動作とにより得られるシミュレーション結果と期待値とを更新する更新命令を生成したうえで、当該更新命令を、前記シミュレーション動作と前記期待値生成動作との後で実行させる制御ステップと、を含むことを特徴とする検証方法。