(57)【要約】【課題】最適な検証方式を提供する検証システム及び方法を提供する【解決手段】並行して複数の画像計算アプローチを実行し、個々のアプローチの効率に基づいて検証使用のための画像計算アプローチの最適な１つのアプローチを選択する。当該方法は、検証の効率に影響を及ぼしうるパラメータの変更に関して最適なアプローチを自動的に決定する。【選択図】図２
2008123517.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像計算アプローチを並行して実行するステップと、
個々のアプローチの効率に基づく使用のために前記画像計算アプローチの１つを選択するステップとを有する方法。
【請求項２】
前記画像計算アプローチの１つを選択するステップは一定の時間間隔で行われる、請求項１記載の方法。
【請求項３】
前記画像計算アプローチの１つを選択するステップは各画像計算において行われる、請求項１記載の方法。
【請求項４】
選択された前記画像計算アプローチの１つにより、検証を受けるシステムの到達可能状態を得るステップと、
前記システムの目標仕様に対して前記到達可能状態を解析することによって前記システムの特性を検証するステップとを有する、請求項１記載の方法。
【請求項５】
前記画像計算アプローチの１つを選択するステップは、選択された前記画像計算アプローチの１つを除いて前記複数の画像計算アプローチの処理を終了するステップを含む、請求項１記載の方法。
【請求項６】
前記複数の画像計算アプローチの前記処理は、後の画像計算において実行される、請求項５記載の方法。
【請求項７】
単一の処理装置は、前記複数の画像計算アプローチを実行するために使用される、請求項１記載の方法。
【請求項８】
処理装置は、前記複数の画像計算アプローチの夫々へ割り当てられる、請求項１記載の方法。
【請求項９】
並行して実行する到達可能性アプローチの中から、個々の前記到達可能性アプローチの効率に基づき、適切なアプローチを選択するステップと、
前記適切な到達可能性アプローチにより検証を受ける回路の状態を発生させ、該回路の特性が前記状態で満足されるかどうかをチェックするステップとを有する検証の方法。
【請求項１０】
前記選択に従って画像計算を行う、請求項９記載の方法。
【請求項１１】
前記到達可能性アプローチの実行は、所定の点が到達されるまで繰り返される、請求項９記載の方法。
【請求項１２】
前記到達可能性アプローチの１つは、
前記回路の遷移関係の分解を構築するステップと、
前記分解を選言的遷移関係表示へ変換するステップと、
前記遷移関係表示を操作し、前記回路の到達可能状態を得るステップとを有する、請求項９記載の方法。
【請求項１３】
前記適切なアプローチのみが、所定の点が到達されるまで実行／継続される、請求項１２記載の方法。
【請求項１４】
計算は、同時に、順次に処理装置によって行われ、
各処理装置は一定の時間間隔で同期する、請求項１２記載の方法。
【請求項１５】
前記分解の夫々の大きさは所定閾値を下回る、請求項１４記載の方法。
【請求項１６】
前記到達可能性アプローチの１つは、前記選言的遷移関係表示の前記分解の構成要素に対して利用される、請求項１５記載の方法。
【請求項１７】
アプローチは、前記検証の異なる段階で、該異なる段階での到達可能性解析の完了の時間に基づき選択される、請求項９記載の方法。
【請求項１８】
検証を受けるシステムの到達可能状態と、前記システムの選言的遷移関係分解表示と、前記システムの目標仕様とを含むデータ構造を有するコンピュータを制御するコンピュータ読み取り可能な記憶媒体。
【請求項１９】
コンピュータに、
複数の画像計算アプローチを並行して実行するステップと、
個々のアプローチの効率に基づく使用のために前記画像計算アプローチの１つを選択するステップとを有する動作を実行させるプログラムを記録したコンピュータ読み取り可能な媒体。
【請求項２０】
複数の画像計算アプローチを並行して実行する少なくとも２つの処理装置と、
個々のアプローチの効率に基づく使用のために前記画像計算アプローチの１つを選択する制御装置とを有するシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書中に開示される実施形態は、検証（ｖｅｒｉｆｉｃａｔｉｏｎ）に関して、より具体的には、有機的アプローチによるハードウェア又はソフトウェアの検証及び到達可能性解析（ｒｅａｃｈａｂｉｌｉｔｙ  ａｎａｌｙｓｉｓ）に関する。
【背景技術】
【０００２】
複雑なハードウェア及びソフトウェア設計の開発が増えるに伴って、既存の検証技術の限界がより明白になりつつある。一般に、検証は、ソフトウェア及び／又はハードウェア設計が特定の仕様又は特性に関して期待される条件を満足するかどうかをチェックすることに対応する。検証に対する一般的アプローチは、設計の特性をチェックすることである。１つのこのようなアプローチは、システムの不変性に関する無限モデル照合である。これは、一般に、到達可能性解析を実施することによって行われる。かかるアプローチは、初期状態から到達可能な全ての状態を見つけ出して、不変性が到達可能状態で満足されるかどうかをチェックすることを対象とする。通常、到達可能性解析は、画像計算に基づく遷移関係（ｔｒａｎｓｉｔｉｏｎ  ｒｅｌａｔｉｏｎ）を用いて実施される。しかし、無限モデル照合及び他の類似のアプローチは、特に大規模設計を表す際に、所謂状態爆発（ｓｔａｔｅ  ｅｘｐｌｏｓｉｏｎ）問題を有する。これは、到達可能状態を扱う表示（ｒｅｐｒｅｓｅｎｔａｉｏｎ）の大きさが指数関数的に大きくなるためである。更に、かかる表示の大きさに起因して、大きなメモリ空間がかかる表示を記憶するために必要とされる。
【０００３】
大きなメモリ空間の使用を必要とすることに加えて、有効状態セットを計算するための一般的な技術は、完全なエラー検出範囲が必要とされるので、全ての到達可能状態が計算されることを要する。全ての画像計算サブ動作は、新しい状態が抽出される前に完了される必要があるので、かかる技術は、単一の画像計算の間に解析又は検証を可能にしない。即ち、夫々の結合（ｃｏｎｊｕｎｃｔｉｏｎ）は、前の１つが完了した後にのみ実施され得る。従って、全ての画像計算が完了するまで、新しい状態を抽出するメカニズムは存在しない。
【０００４】
通常、有効状態セットは、大規模回路シミュレーションを実行することによって計算される。これは、無効状態がシミュレーションの間に検出されるならば、特性が無効にされ得るためである。しかし、有効状態のセットは通常、明示的に列挙するには大きすぎるので、シミュレーションにより特性を有効にすることは可能でない。一般的なデジタル回路の検証は、大規模シミュレーションによって実行されてきたが、それらの性能は、シミュレーションが補償範囲全体を提供せず、起こり得る刺激の僅かの部分しかチェックせず、バグ／問題を検出されないままとするので、十分でない。
【０００５】
一般に、検証は、全ての画像計算が完了するまで１つの画像計算を実行し、その結果をチェックし、かかる結果によって満足されないならば、異なる方法を実行する。かかる技術は、全ての到達可能状態の計算のためのリソースを費やすことを必要とせずに最適な解決法を決定して、個々の技術を解析するインテリジェントな方法を提供しない。また、一般的な検証技術は、全ての画像計算の完了まで特定の方法に制限されるので、検証の特定の段階において適用されるべき方法を指定することは不可能である。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
様々な検証技術が提案されているが、既存の検証技術は、検証を能率的に実行するよう最適な解決法を特定する方法を提供しない。次善の方法と、より良く適する方法との間の差異は桁違い又はそれ以上であるため、最適な検証方式を提供する検証システム及び方法が必要とされる。
【課題を解決するための手段】
【０００７】
本明細書中に開示される実施形態は、並行して複数の画像計算を実行し、個々のアプローチの効率に基づいて使用のための画像計算アプローチの１つを選択する方法及びシステムを提供する。
【０００８】
開示される方法は、同時に実行する画像計算アプローチの１つを選択することによって、検証を受けるシステムの到達可能状態を取得するステップと、当該システムの目標仕様に関して到達可能状態を解析することによって、当該システムの特性を検証するステップとを含む。
【０００９】
これらは、後に明らかにされる他の態様及び効果とともに、添付の図面を参照して、より詳細に以下で説明される構成及び動作の詳細に含まれる。図面において、同じ参照番号は同じ構成要素を表す。
【発明の効果】
【００１０】
本発明により、従来技術と比して、最適な検証方式を提供する検証システム及び方法を提供することが可能となる。
【発明を実施するための最良の形態】
【００１１】
ここで、本明細書中で説明される本実施形態を詳細に参照する。これら本実施形態の例は添付の図面に表される。なお、同じ参照番号は、図面全体を通して同じ要素を表す。かかる実施形態は、以下、図を参照することによって、開示されるシステム及び方法を説明するために記載される。それでもなお、当然、それによって本発明の技術的範囲は限定されず、例えば、表される装置における代替及び更なる変形や、本明細書中に表される原理の更なる応用が、かかる実施形態に関連する技術分野において通常の知識を有する者にとって通常なされるように行われ得る。
【００１２】
かかる実施形態は、ハードウェア及びソフトウェア設計の検証のための有機的なアプローチに関して記載されている。開示されるアプローチは、プログラム、ソフトウェア、１又はそれ以上ハードウェア部品、又は全体で複数の構成要素を有する機器を検証するために使用される。到達可能性解析とは、画像計算が、一定の点が到達されるまで、プログラム又は機械の初期状態に対して実施されるところの前進的到達可能性と、画像計算が、その無効状態が得られるまで、特性から得られる状態セットの補完へ適用されるところの後進的到達可能性とを言う。
【００１３】
図１は、有機的な検証アプローチを実施するシステムを表す。図１に示されるように、システム１０は、検証装置１４ａ及び１４ｂへ接続された制御装置１２を有する。制御装置１２は、検証装置１４を用いて実施されるハードウェア又はソフトウェア検証を管理し、検証装置１４へ検証を受けるハードウェア又はソフトウェアに関連する設計情報を供給することができる。制御装置１２は、また、ネットワーク１５を介して、検証を受けるシステム（又はプログラム）の設計、仕様若しくは特性の情報を提供するソース１３に接続され得る。制御装置１２は、図１においてネットワーク１５を介してソース１３へ接続されているが、システム１０は、如何なる特定のソースから検証を受けるシステムの情報を取得することにも制限されない。例えば、ユーザは、検証装置１４の入力ユニット１８を用いて、検証を受けるハードウェア／ソフトウェアの設計情報を入力することができる。
【００１４】
検証装置１４ａ及び１４ｂは、夫々、表示ユニット１６ａ及び表示ユニット１６ｂを有する。表示ユニット１６ａ及び１６ｂは、状態セットのデータ、初期若しくは現在の状態、要求若しくは目標仕様が満たされたかどうかを示す検証結果、あるいは、検証を受けるハードウェア／ソフトウェアに関連する検証及び／又は到達可能性の解析に関する他のデータを含むが、それらに限定されない、検証を受けるハードウェア／ソフトウェアの情報を提供する。
【００１５】
検証装置１４ａ及び１４ｂは、検証を受けるハードウェア又はソフトウェアの変数、パラメータ、機能又は特性の入力を可能にする対応する入力ユニット１８ａ及び１８ｂを有しても良い。代替的に、検証を受ける対象の特性は、制御装置１２を介してソース１３から取得され得る。更に、システム１０は、また、例えば、検証を受けるシステムの設計情報を与えるヴェリログ（Ｖｅｒｉｌｏｇ）のようなハードウェア記述言語や、システムの設計情報を関数に変換するオープンソースツールなどを有しても良い。
【００１６】
図１は、複数の処理層及びメモリを備えた構造２０ａを有する検証装置１４ａを表し、一方、検証装置１４ｂは、１つの処理装置及び１つのメモリを備えた構造２０ｂを有するように表される。しかし、本発明は、如何なる特定のアーキテクチャにも限定されない。例えば、システム１０は、メモリへ接続された２又はそれ以上の処理装置を有する対称型マルチプロセッシング（ＳＭＰ）アーキテクチャや、複数のメモリを備えた一連の処理装置を有するグリッド構造などを有しても良い。更に、検証に関する並列処理は、複数のスレッドを実施するマルチコア処理装置により実行されても良い。また、図１に表されるように、システム１０は、検証を実行するための更なる検証装置を有することができる。検証装置１４の動作は、図２、３Ａ及び３Ｂに関して、以下でより詳細に説明される。
【００１７】
図１に示されるように、システム１０は、検証に関する情報を記憶するデータベース１９を有することができる。データベース１９に記憶される情報は、代理人明細書１９５６．１００２、発明者Ｊａｗａｈａｒ  Ｊａｉｎ等による「検証に基づく遷移関係の選言的な分割」と題され、２００７年１０月１９に出願された米国出願整理番号１１／８７５，３６４の特許文献に開示されるような、検証を受けるシステムの選言的遷移関係分解表示（ｄｉｓｊｕｎｃｔｉｖｅ  ｔｒａｎｓｉｔｉｏｎ  ｒｅｌａｔｉｏｎ  ｄｅｃｏｍｐｏｓｔｉｏｎ  ｒｅｐｒｅｓｅｎｔａｔｉｏｎ）を含む二分決定グラフ（Ｂｉｎａｒｙ  Ｄｅｃｉｓｉｏｎ  Ｄｉａｇｒａｍ；ＢＤＤ）、システムの到達可能状態、システムの目標仕様、システムの機能などを含んでも良い。更に、データベース１９は、また、ＩＷＬＡ‘９５、ＭＬＰなどを含むが、それらに限定されない、例えば遷移関数、パーティション順ＢＤＤなどの、検証の間に使用される様々な形式の技術及び／又はアルゴリズムを記憶することもできる。
【００１８】
システム１０は、両方の検証装置１４ａ及び１４ｂへシステムの初期状態を提供することによって、又は、検証装置１４ａ及び１４ｂの間でシステムの遷移関係の１又はそれ以上の分解要素を分配することによって、検証を受けるシステムに関する到達可能性解析を実施することができる。制御装置１２は、例えば、操作可能な状態のまま、システムの遷移関係のセマンティクスを捕らえる補助関数を構成することによって、検証を受けるシステムの遷移関係の分解を構築する。例えば、システム１０は、検証を受けるシステムの遷移関係を、例えば、代理人明細書１９５６．１００２、２００７年１０月１９日に出願された米国出願整理番号１１／８７５，３６４の、発明者Ｊａｗａｈａｒ  Ｊａｉｎ等による「検証に基づく選言的遷移関係の分解」と題された米国特許出願に開示されたＴＲのような構成要素に分解しても良く、かかる構成要素の夫々は、複数の画像計算アプローチを用いて到達可能性解析を実施するよう、検証装置１４の処理装置へ提供され得る。検証を受けるシステムの到達可能性解析を実施するための動作は、図３Ａ及び３Ｂに関連して、以下でより詳細に説明される。
【００１９】
到達可能性解析の中心は、状態セットＳｉが与えられる場合に、次のクロック周期でＳｉから到達可能である全ての状態Ｓｉ＋１を検出する画像計算動作である。通常、与えられる不変性Ｐ（バーｓ）は、到達可能性解析の間チェックされる。不変性は、総体的な到達可能状態がＲ（バーｓ）⊂Ｐ（バーｓ）であるならば満たされ、それ以外の場合には満たされない。到達可能性解析の間、得られる状態セットの中に到達不可能な状態が存在するならば、検証を受けるシステムにはエラーが存在しうる。同様に、エラーは、また、かかるセットの否定が到達可能状態のいずれかをもたらす場合には、存在すると判断され得る。システムを検証するための他の方法は、検証されるべき特性が時間セマンティクスを有しうるので、１度に１つを実際の画像計算において調べることである。例えば、値がクロック周期ｉで真であるならば、他の値はクロック周期ｉ＋５で真である。到達可能性解析の特定の例が記載されるが、本発明は、到達可能性解析を実施する如何なる特定の技術にも限定されず、また、線形時間ロジック（Ｌｉｎｅａｒ  Ｔｅｍｐｏｒａｌ  Ｌｏｇｉｃ；ＬＴＬ）や、計算ツリーロジック（Ｃｏｍｐｕｔａｔｉｏｎａｌ  Ｔｒｅｅ  Ｌｏｇｉｃ；ＣＴＬ）などのような、特性を検証する言語を使用することができる。
【００２０】
ｋ個のラッチ及びｒ個の入力を有する同期回路は、リセット状態セットＳ０と、そのメモリ素子のｋ個の次の状態関数δｉ：｛０，１｝ｋ×｛０，１｝ｍ｜→｛０，１｝をカプセル化する遷移関数δ：｛０，１｝ｋ×｛０，１｝ｒ｜→｛０，１｝ｋとによって定義される。遷移関係
【数１】
2008123517.tif 000003
は、ブール関数として形成され得る。なお、
【数２】
2008123517.tif 000004
であり、遷移関係は、
【数３】
2008123517.tif 000005
として計算される。関数
【数４】
2008123517.tif 000006
は、回路のビット関係である。状態セットＳｉで動作する場合、画像計算は
【数５】
2008123517.tif 000007
であり、到達可能状態セットは
【数６】
2008123517.tif 000008
である。
【００２１】
前出の式（１）から暗示されるように、モノリシック構造の遷移関係は、比較的小さなビット関係に関してすら失敗となる可能性が高い。選言的な遷移関係の分解の効果は、ブール関数として形成される遷移関数
【数７】
2008123517.tif 000009
が以下
【数８】
2008123517.tif 000010
に従って分解される場合に明白であり、画像は、以下
【数９】
2008123517.tif 000011
のように計算され得る。
【００２２】
次いで、遷移関係の構成要素の夫々に関する画像計算は、存在量化が選言（ｄｉｓｊｕｎｃｔｉｏｎ）全体にわたって分布するので、独立に計算され得る。更に、かかる計算は分解が得られた後に実行され得るので、各画像計算において入力変数バーｐを定量化する必要はない。具体的に、前置計算は、以下
【数１０】
2008123517.tif 000012
に従って実施され得る。なお、画像計算は、以下
【数１１】
2008123517.tif 000013
のように表される。
【００２３】
システム１０を用いて実行される検証アプローチは、検証を実行するよう要求するユーザによって選択可能な、あるいは、例えば「検証に基づく選言的遷移関係の分解」と題された米国出願整理番号１１／８７５，３６４に開示されるアルゴリズムなどのようにユーザ提供されるアルゴリズムに基づき、予め決定され得る。しかし、本発明は、如何なる特定の検証アプローチを実行することにも限定されず、画像計算のレベルで、状態を発生させることができる如何なるアルゴリズムを用いても実施され得る。
【００２４】
開示されるシステム１０は、他の状態を発生させ、所与の数の画像計算を行い、特定の時間間隔で又は画像計算レベルで並行して実行する複数のアプローチを同期させるために使用され得る複数の画像計算を実行することができる。画像計算の様々なスケジューリングの実施は、図４に関連して、以下でより詳細に説明される。
【００２５】
有機的な検証アプローチのための例となる処理３０は図２に表される。図２に示されるように、処理３０は、並行して複数の画像計算アプローチを実行すること３２によって開始する。例えばクラスタ化、順序づけ、並列化、及び遷移関数、分割ＢＤＤ、ＩＷＬＳ、ＭＬＰなどの遷移関係技術のような、初期状態（即ち、現在の状態。）から到達可能な全ての状態を得るための様々なアプローチが、同時に実行され得る。各到達可能性アプローチは、専用の処理装置が各到達可能性アプローチを実行することを可能にするよう、検証装置１４（図１）の処理装置の１つへ割り当てられ得る。代替的に、画像計算アプローチの処理は、検証装置の構造２０ａ及び構造２０ｂの処理装置にわたって分配され得る。
【００２６】
実行３２の後、処理３０は、個々のアプローチの効率に基づいて、各画像計算で使用される画像計算アプローチの１つを選択すること３４によって続く。アプローチは、並行して実行する他のアプローチにより実施される到達可能性解析と比べて、そのアプローチによる到達可能性解析の完了の時間に基づいて選択され得る３４。例えば、並行して実行する他のアプローチのいずれかよりも前に、検証を受けるシステムの状態に関して画像計算を完了するアプローチは、システム１０（図１）によって選択され得る。システム１０は、検証に関する処理の様々な段階でアプローチの１つを選択しても良く、選択されるアプローチにより得られる結果は、他のアプローチによる検証のその後の段階で状態を得るために使用され得る。例えば、アプローチは、画像計算が検証を受けるシステムの状態を用いて実行されている間に選択されても良く、画像計算の結果は、その後の画像計算を実行するよう、並行して実行する他のアプローチへ供給され得る。
【００２７】
図３Ａは、複数の画像計算アプローチを実行するための動作４０を表す。検証を受けるシステムの遷移関係（Ｔｒａｎｓｉｔｉｏｎ  Ｒｅｌａｔｉｏｎ；ＴＲ）４２は、ブール関数として形成され、初期状態から到達可能な状態を見つけ出して、検証されるべきシステムの特性が到達可能状態で満足されるかどうかをチェックするために、アプローチ１乃至３へ供給される。図３Ａに示されるように、アプローチ１及び２は、ＴＲ４２を用いて、検証を受けるシステムの到達可能状態を得る。アプローチ１及び２が、並行して実行するアプローチ３と比較して、最適に到達可能状態を得ていると判断される場合、得られた到達可能状態は、システムの目標仕様に関してシステムの特性を検証するために使用され得る。代替的に、アプローチ３が、アプローチ１及び２に比較して最適であると判断される場合には、アプローチ３により得られた到達可能状態は、システムの目標仕様に関してシステムの特性を検証するために利用される。アプローチ１及び２は、検証を受けるハードウェア又はソフトウェアの検証のための画像計算を実行するために使用され得るＩＷＬＳ、ＭＬＰ、又はその他既存のアプローチであっても良い。
【００２８】
アプローチ３は、ＴＲ４２の分解ＴＲ１、ＴＲ２及びＴＲ３を形成し、かかる分解を、「検証に基づく選言的遷移関係の分解」と題された米国出願番号１１／８７５，３６４の特許文献に開示されるような選言的遷移関係表示へと変換する。好ましい実施形態で、分解ＴＲ１、ＴＲ２及びＴＲ３の大きさは、最適な画像計算が分解要素の夫々にわたって実施されるように、分解要素の夫々の間の平衡の達成に基づいて決定される。例えば、関数は、相対的に等しい数のノードを有するＴＲ１、ＴＲ２及びＴＲ３分解要素を表すよう構成され得る。更に、分解要素は、他の分解要素によって表される状態を除いて、状態セットを表すことに限定されない。代わりに、かかる要素によって表される組は重複をもたらしうる。
【００２９】
動作４０は、アプローチ１乃至３のうちのどれが到達可能性解析を実施するための最適な解決法を提供するかを、例えば、解析の完了の時間に基づいて決定し、更に、検証を受けるシステムの特性を検証するために、選択されたアプローチを使用する。
【００３０】
図３Ａに表されるように、処理装置の構造４４は、アプローチ１乃至３のいずれか１つを用いて検証を受けるシステムの到達可能状態を得るために提供され得る。例えば、ＴＲ１は、検証を受けるシステムの到達可能状態を得るために処理装置４４ｂへ提供され得、一方、ＴＲ２は処理装置４４ａへ提供される。アプローチ１及び２のＴＲ４２は、また、構造４４の処理装置のいずれかへ提供され得る。動作４０は、検証を受けるシステムのＴＲ４２をアプローチ１乃至３へ提供し、アプローチ３は、ＴＲを要素（ＴＲ１、ＴＲ２、ＴＲ３）に分解することによって様々にＴＲを扱い、アプローチ１及び２はモノリシック構造の遷移関係（ＴＲ）を維持する。例えば、アプローチ１及び２は、検証を受けるシステムの遷移関係の結合した要素を保つＭＬＰ／ＩＷＬＳのようなアプローチであっても良い。
【００３１】
図３Ｂは、検証を受けるシステムの遷移関係の分解へ複数のアプローチを適用する動作５０を表す。図３Ｂに表されるように、ＴＲ５２は、複数の選言要素５２ａ、５２ｂ及び５２ｃに分解され、分解５２ａ、５２ｂ及び５２ｃは、アプローチ１乃至３及び／又は処理装置５４へ送られる。例えば、ＴＲ１の到達可能性解析は、処理装置５４ａを用いてＩＷＬＳにより実行され得、一方、ＴＲ２は、処理装置５４ｃを用いて到達可能性解析を実行するようＭＬＢへ提供される。
【００３２】
並行して実行する画像計算アプローチの結果が、アプローチ１が最も効率的であること示す場合、アプローチ２及び３の処理は終了され、アプローチ１からの結果が、検証を受けるシステムの特性を検証するために使用される。更なる画像計算が、アプローチ１により得られる結果が最も効率的であると決定した後に実行される必要がある場合、かかる結果はアプローチ２及び３へ提供される。従って、アプローチ１乃至３は、アプローチ１により得られる結果を用いて、その後の画像計算を行う。
【００３３】
更に、アプローチ１乃至３は、処理装置５４の１又はそれ以上を用いて到達可能性解析を実施するよう構成され得る。例えば、処理装置５４ａが、並行して実行する構造５４における処理装置のどれよりも前に、検証を受けるシステムの到達可能性解析の実行を終えたならば、処理装置５４ａによりもたらされた結果は、その後の到達可能性解析を実施するために処理装置５４ｂ乃至５４ｄへ提供される。
【００３４】
これは、特に、多数の画像計算を実行する必要がある大規模回路に関して、効率的な到達可能性解析を可能にする。並行して実行する多数のアプローチを同期させるリソースを仮定する場合でさえ、このようなコミュニケーションのための不利益は修正される。好ましい実施形態で、同期は、計算リソースを最適に使用するよう画像計算の間実施される。
【００３５】
本質的に、動作４０及び５０は、検証を受けるシステムに関して到達可能性解析を実施するための最適な解決法を特定するよう決定がなされるところの画像計算に対応する中間点を与える。例えば、アプローチ３を用いて到達可能状態を得た後、アプローチ１及び２の処理は終了され、その後の到達可能状態は、アプローチ３によって提供される到達可能状態を用いて取得される。各中間点で、制御装置１２（図１）は、どのアプローチがその後の到達可能状態を得るために実行されるべきかをもう一度決定することができる。
【００３６】
図３Ａに示されるように、アプローチ１及び２は、ＴＲ４２を用いて到達可能性解析を行って、夫々、特定の到達可能性アプローチにより状態を提供し、一方、選言要素５２ａ、５２ｂ及び５２ｃは、図３Ａに示されるように、アプローチ１乃至３へ適用され得る。動作４０及び５０は、検証を受けるシステムの状態の特定のセットを取り上げ、新しい状態セットを発生させるようＴＲを用いて画像計算を適用する。例えば、他の並列実行アプローチの中から最適であると判断されるアプローチを用いてＴＲ１を扱うことによって得られるシステムの到達可能状態は、新しい状態セットを発生させるよう、他の並列実行アプローチへ送られる。そのようなものとして、動作４０及び５０は、検証の様々な段階における最適な検証の解決法の決定を可能にする。
【００３７】
動作４０及び５０は、検証を受けるシステムの遷移関係の選言要素が、夫々、複数の画像計算アプローチを用いて到達可能状態を得るために使用されるところの様々なレベルの並列化を提供し、遷移関係及びその選言要素は、複数の画像計算アプローチを用いて到達可能状態を得るために使用される。分解要素の結果を無視することにより状態セットの部分的な検証を得ることが可能であり、一方、分解要素から生じた状態が他の要素と重なって、形式にかなった検証を与えることが可能である。更に、到達可能性アプローチが実行され続けるならば、検証は、重複した要素により形式にかなったものとなりうる。
【００３８】
更に、既存のアプローチが到達可能状態を得られなかった場合、遷移関係の構成要素を形成することにより、検証アプローチが到達可能状態を得るために利用され得るところの遷移関係の一部を処理する機会が与えられる。
【００３９】
図４は、有機的な検証アプローチの構成を表す。図４に示されるように、検証のための有機的なアプローチは、検証方式Ａ、Ｂ及びＣを組み合わせて、微視的レベルで１の方式から他の方式へと切り替えることによって与えられる。所与の画像計算から、有機的な検証アプローチは、並行して方式Ａ乃至Ｃを用いて到達可能性解析を実行し、かかる方式の１つによる解析の完了時に到達可能性解析を夫々ペンディングしたままとすることを取消し、一定の点が到達されるまで全ての他の方式へかかる計算を転送する。そのようなものとして、有機的な検証アプローチは、１の画像計算フロンティアから他の画像計算フロンティアへのトレースを可能にする。なお、各部は複数の手法を用いることができる。
【００４０】
有機的なアプローチによる到達可能状態セットは、一定の又は所定の点が到達されるまで、ＴＲ及び／又はＴＲの選言要素を用いて画像計算を繰り返し実行することによって得られる。到達可能状態の取得が終了されるところの点は、例えば、所与の数の状態セットが、システム設計者によって与えられる近似した数の状態に基づいて得られるところの点でありうる。所定の点は、また、準公式の検証結果を与えるために選言的ＴＲ要素を用いて存在量化を選択的に適用することによって決定され得る。幾つかの例が、到達可能状態の取得が終了されるところの点を決定するために与えられるが、本発明は如何なる特定の決定にも限定されず、検証装置及び／又は設計者を含む様々な要素が考慮され得る。例えば、中間点は、遷移関係の要素に関する画像計算の完了に対応する点に対応する必要はない。
【００４１】
開示される検証システム及び方法に従って、方式Ａ及びＢを考えると、有機的なアプローチが達成する最終的な実行時間は、Ａ又はＢのまさに最小値ではないが、いずれか一方よりも小さい。これは、開示される有機的なアプローチが、各画像計算の間に複数の方式（Ａ、Ｂ及び／又はＣ）を並行して試みることができるためであり、単一のアプローチの使用に固定されない。
【００４２】
要素が選択される順序は解析の正確さにとって重大ではないが、要素の夫々について画像計算を実行することの性能に対する影響は重要である。画像計算スケジュールのための要素の順序は、完了時間を最適化するために指定され得る。システム１０（図１）は、順次スケジュール、スレデッド（ｔｈｒｅａｄｅｄ）スケジュール、同期スレデッドスケジュールなどを含むが、それらに限定されない、分解要素の画像計算に関する様々な形式のスケジューリングを実施することができる。
【００４３】
有機的な検証アプローチは、ＴＲ選言要素の夫々が順次的な画像計算を実行するよう構成されるところの順次スケジューリングを実施することができる。例えば、画像計算は、図３Ａに示されるＴＲ要素４２ａ、４２ｂ、４２ｃを用いて連続して実行され得る。代替的に、スレデッドスケジューリングは、構造４４における処理装置の各スレッドがアプローチ１乃至３のうちの１つを適用して、次の画像計算の前に全てのスレッドが完了するまで待機するよう構成され得る場合に、実施され得る。スレデッドスケジュールはいつでも並行して結果を得るが、それにまでに完了したスレッドはシステム１０（図１）へ結果を返す。従って、他のスレッドが開始する場合に、その他のスレッドは結果の現在の状態を知る。更に、開示される有機的な検証は、また、現在の状態セットにおいて、画像計算がＴＲを用いて適用されるところの同期スケジューリングを実施しても良く、かかるアルゴリズムは、全てのこのような計算が完了した後にのみ繰り返し、結果は状態セットに集められる。
【００４４】
そのようなものとして、開示される有機的な検証アプローチは、並行して実行する複数のアプローチの中から最適なアプローチを決定することによって、既存の検証方式の有効性を増し、画像計算の間に１のアプローチから他のアプローチへの切替えを可能にする。
【００４５】
本実施形態の多数の特徴及び効果は、詳細な記載から明らかであり、従って、添付の特許請求の範囲によって、その真の趣旨及び技術的範囲の中にある実施形態の全てのこのような特徴及び効果を包含することが意図される。更に、多数の変形及び変更は所謂当業者によって容易になされるので、図示及び記載される厳密な構成及び動作に本発明の実施形態を限定することは好ましくなく、従って、全ての適切な変形及び均等はその技術的範囲に属するよう用いられる。
【００４６】
本願は、米国特許商標局において２００６年１０月３１に出願された、発明者Ｊａｗａｈａｒ  Ｊａｉｎ等による「有機的アプローチによる検証」と題された米国出願整理番号６０／８５５，４１１に関し、その優先権を主張する。その特許文献の開示は、参照することにより本願に援用される。
【００４７】
（付記１）複数の画像計算アプローチを並行して実行するステップと、
個々のアプローチの効率に基づく使用のために前記画像計算アプローチの１つを選択するステップとを有する方法。
（付記２）前記画像計算アプローチの１つを選択するステップは一定の時間間隔で行われる、付記１記載の方法。
【００４８】
（付記３）前記画像計算アプローチの１つを選択するステップは各画像計算において行われる、付記１記載の方法。
【００４９】
（付記４）選択された前記画像計算アプローチの１つにより、検証を受けるシステムの到達可能状態を得るステップと、
前記システムの目標仕様に対して前記到達可能状態を解析することによって前記システムの特性を検証するステップとを有する、付記１記載の方法。
【００５０】
（付記５）前記画像計算アプローチの１つを選択するステップは、選択された前記画像計算アプローチの１つを除いて前記複数の画像計算アプローチの処理を終了するステップを含む、付記１記載の方法。
【００５１】
（付記６）前記複数の画像計算アプローチの前記処理は、後の画像計算において実行される、付記５記載の方法。
【００５２】
（付記７）単一の処理装置は、前記複数の画像計算アプローチを実行するために使用される、付記１記載の方法。
（付記８）処理装置は、前記複数の画像計算アプローチの夫々へ割り当てられる、付記１記載の方法。
（付記９）並行して実行する到達可能性アプローチの中から、個々の前記到達可能性アプローチの効率に基づき、適切なアプローチを選択するステップと、
前記適切な到達可能性アプローチにより検証を受ける回路の状態を発生させ、該回路の特性が前記状態で満足されるかどうかをチェックするステップとを有する検証の方法。
【００５３】
（付記１０）前記選択に従って画像計算を行う、付記９記載の方法。
【００５４】
（付記１１）前記到達可能性アプローチの実行は、所定の点が到達されるまで繰り返される、付記９記載の方法。
【００５５】
（付記１２）前記到達可能性アプローチの１つは、
前記回路の遷移関係の分解を構築するステップと、
前記分解を選言的遷移関係表示へ変換するステップと、
前記遷移関係表示を操作し、前記回路の到達可能状態を得るステップとを有する、付記９記載の方法。
（付記１３）前記適切なアプローチのみが、所定の点が到達されるまで実行／継続される、付記１２記載の方法。
【００５６】
（付記１４）計算は、同時に、順次に処理装置によって行われ、
各処理装置は一定の時間間隔で同期する、付記１２記載の方法。
【００５７】
（付記１５）前記分解の夫々の大きさは所定閾値を下回る、付記１４記載の方法。
【００５８】
（付記１６）前記到達可能性アプローチの１つは、前記選言的遷移関係表示の前記分解の構成要素に対して利用される、付記１５記載の方法。
【００５９】
（付記１７）アプローチは、前記検証の異なる段階で、該異なる段階での到達可能性解析の完了の時間に基づき選択される、付記９記載の方法。
【００６０】
（付記１８）検証を受けるシステムの到達可能状態と、前記システムの選言的遷移関係分解表示と、前記システムの目標仕様とを含むデータ構造を有するコンピュータを制御するコンピュータ読み取り可能な記憶媒体。
【００６１】
（付記１９）コンピュータに、
複数の画像計算アプローチを並行して実行するステップと、
個々のアプローチの効率に基づく使用のために前記画像計算アプローチの１つを選択するステップとを有する動作を実行させるプログラムを記録したコンピュータ読み取り可能な媒体。
【００６２】
（付記２０）複数の画像計算アプローチを並行して実行する少なくとも２つの処理装置と、
個々のアプローチの効率に基づく使用のために前記画像計算アプローチの１つを選択する制御装置とを有するシステム。
【図面の簡単な説明】
【００６３】
【図１】有機的な検証アプローチを実行するよう構成されたシステムのブロック図である。
【図２】画像計算アプローチを選択するフローチャートである。
【図３Ａ】複数の画像計算アプローチの実行を表す図である。
【図３Ｂ】複数の画像計算アプローチの実行を表す図である。
【図４】有機的な検証アプローチの構成を表す図である。
【符号の説明】
【００６４】
１２  制御装置
１３  ソース
１４ａ，１４ｂ  検証装置
１５  ネットワーク
１６ａ，１６ｂ  表示ユニット
１８ａ，１８ｂ  入力ユニット
１９  データベース
２０ａ，２０ｂ  構造
４２，５２  遷移関係（ＴＲ）
４４，５４  処理装置
【図１】
2008123517.tif 000014
【図２】
2008123517.tif 000015
【図３Ａ】
2008123517.tif 000016
【図３Ｂ】
2008123517.tif 000017
【図４】
2008123517.tif 000018
【外国語明細書】
2008123517000001.pdf