(57)【要約】【課題】シミュレーションに要する時間の短縮、及び出力情報の削減によるメモリ、ディスク等リソース使用量の低減が可能で、かつ、カバレッジ情報を効率よく抽出可能な論理検証システムを提供する。【解決手段】  論理シミュレーションを実行する論理シミュレーション実行部と、前記カバレッジ情報を前記論理シミュレーション実行部から取得するカバレッジ情報取得部と、取得した前記カバレッジ情報を解析するカバレッジ情報解析部と、前記論理シミュレーション実行部の動作の制御を行う制御部とを備える。前記カバレッジ解析部は、一度テストされた論理素子に関するカバレッジ情報は抽出しない旨の指示を前記制御部に出し、前記制御部は、その指示に基づいて、前記論理シミュレーション実行部を制御して抽出しない対象の論理素子からのカバレッジ情報の抽出動作を中止させる。【選択図】図１
2009223861.tif 000002
【特許請求の範囲】
【請求項１】
テストパターンを用いて論理回路のシミュレーションを実行し、前記テストパターンによって実際にテストされた、前記論理回路を構成する論理素子に関する情報であるカバレッジ情報を取得する論理検証システムであって、
論理シミュレーションを実行する論理シミュレーション実行部と、前記カバレッジ情報を前記論理シミュレーション実行部から取得するカバレッジ情報取得部と、取得した前記カバレッジ情報を解析するカバレッジ情報解析部と、前記論理シミュレーション実行部の動作の制御を行う制御部と、
を備え、
前記カバレッジ解析部は、
前記カバレッジ情報取得部が取得したカバレッジ情報を基にして、一度テストされた論理素子に関するカバレッジ情報を抽出しない旨の指示を前記制御部に出し、
全ての前記論理素子がテストされたことを検出した場合は、シミュレーションの実行を中止する旨の指示を前記制御部に出し、
前記制御部は、
前記カバレッジ解析部から一度テストされた論理素子に関するカバレッジ情報を抽出しない旨の指示を受信したとき、前記論理シミュレーション実行部を制御して抽出しない対象の論理素子からのカバレッジ情報の抽出動作を中止させ、
前記カバレッジ解析部からシミュレーションの実行を中止する旨の指示を受信したとき、前記論理シミュレーション実行部を制御してシミュレーションを中止させること、
を特徴とする論理検証システム。
【請求項２】
請求項１に記載の論理検証システムであって、
前記論理回路と、前記論理回路からカバレッジ情報を抽出するためのカバレッジ回路と、前記カバレッジ回路の動作を中止させるための抑止回路と、前記テストパターンとを用いて、前記論理シミュレーション実行部がシミュレーションを行い、
前記カバレッジ回路は、前記論理回路を構成する各前記論理素子に接続され、
前記抑止回路は、各前記カバレッジ回路に接続され、
前記論理シミュレーション実行部が、シミュレーションを実行することにより、前記カバレッジ回路は、当該カバレッジ回路が接続されている論理素子のカバレッジ情報を抽出し、
前記カバレッジ情報取得部は、前記カバレッジ回路が抽出した前記カバレッジ情報を取得し、
前記制御部は、カバレッジ情報を抽出しない対象の論理素子に接続されたカバレッジ回路に接続された抑止回路に、カバレッジ回路の動作を中止させるための信号を送信し、
前記抑止回路は、前記信号を受信することにより、カバレッジ回路を動作を中止させるための信号を、当該抑止回路に接続されたカバレッジ回路に送信し、
前記カバレッジ回路は、前記抑止回路から前記信号を受信することにより、カバレッジ情報を抽出する動作を中止すること、
を特徴とする論理検証システム。
【請求項３】
コンピュータに、テストパターンを用いて論理回路のシミュレーションを実行させ、前記テストパターンによって実際にテストされた、前記論理回路を構成する論理素子に関する情報であるカバレッジ情報を取得させるための論理検証プログラムであって、
コンピュータを、論理シミュレーションを実行する論理シミュレーション実行手段と、前記カバレッジ情報を前記論理シミュレーション実行手段から取得するカバレッジ情報取得手段と、取得した前記カバレッジ情報を解析するカバレッジ情報解析手段と、前記論理シミュレーション実行手段の動作の制御を行う制御手段と、
して機能させ、
前記カバレッジ解析手段は、
前記カバレッジ情報取得手段が取得したカバレッジ情報を基にして、一度テストされた論理素子に関するカバレッジ情報を抽出しない旨の指示を前記制御手段に出すステップを実行し、
全ての前記論理素子がテストされたことを検出した場合は、シミュレーションの実行を中止する旨の指示を前記制御手段に出すステップを実行し、
前記制御手段は、
前記カバレッジ解析手段から一度テストされた論理素子に関するカバレッジ情報を抽出しない旨の指示を受信したとき、前記論理シミュレーション実行手段を制御して抽出しない対象の論理素子からのカバレッジ情報の抽出動作を中止させるステップを実行し、
前記カバレッジ解析手段からシミュレーションの実行を中止する旨の指示を受信したとき、前記論理シミュレーション実行手段を制御してシミュレーションを中止させるステップを実行すること、
を特徴とする論理検証プログラム。
【請求項４】
請求項３に記載の論理検証プログラムであって、
前記論理回路と、前記論理回路からカバレッジ情報を抽出するためのカバレッジ回路と、前記カバレッジ回路の動作を中止させるための抑止回路と、前記テストパターンとを用いて、前記論理シミュレーション実行手段がシミュレーションを行うステップを実行し、
前記カバレッジ回路は、前記論理回路を構成する各前記論理素子に接続され、
前記抑止回路は、各前記カバレッジ回路に接続され、
前記論理シミュレーション実行手段が、シミュレーションを実行することにより、前記カバレッジ回路は、当該カバレッジ回路が接続されている論理素子のカバレッジ情報を抽出し、
前記カバレッジ情報取得部は、前記カバレッジ回路が抽出した前記カバレッジ情報を取得し、
前記制御手段は、カバレッジ情報を抽出しない対象の論理素子に接続されたカバレッジ回路に接続された抑止回路に、カバレッジ回路の動作を中止させるための信号を送信するステップを実行し、
前記抑止回路は、前記信号を受信することにより、カバレッジ回路を動作を中止させるための信号を、当該抑止回路に接続されたカバレッジ回路に送信し、
前記カバレッジ回路は、前記抑止回路から前記信号を受信することにより、カバレッジ情報を抽出する動作を中止すること、
を特徴とする論理検証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、論理回路が正しく設計されていることを確認する論理シミュレーションにおいて、特にテストパターンが十分であるか否かの指標となるカバレッジ情報を抽出することを特徴とする論理検証システムに関する。
【背景技術】
【０００２】
従来より、論理シミュレーションのテストパターンが十分であるか否かの指標として主に、機能カバレッジと、コードカバレッジとが使用されている。機能カバレッジとは、論理回路内部の機能をどれくらい網羅したかを表す指標であり、コードカバレッジとは、論理回路のソースコードを基準とし、内部のロジックをどれくらい網羅したかを表す指標である。
【０００３】
コードカバレッジには、ソースコードの全てのステートメント（行）の実行を表すステートメントカバレッジ、ソースコード内の条件分岐の全ての条件が成立し、分岐が行われたかを表すコンディションカバレッジ、ソースコード内で使用される全ての変数の変化を表すトグルカバレッジ等の種類がある。
【０００４】
コードカバレッジ情報を管理する設計検証システムとして、「設計検証システム、設計検証方法および設計検証プログラムを格納したコンピュータ読み取り可能な記録媒体」（特許文献１）が提案されている。
【０００５】
特許文献１に記載された設計検証システムは、論理シミュレーション部と、論理シミュレーションにおいて実行されていない回路記述を抽出する未実行記述抽出部と、抽出された回路記述が実行される可能性が有るか否かを判別する判別手段と、テストベンチの入力パターンと同じか否かを判定するテストベンチを生成する禁止入力チェッカ生成部とを備えている。これにより、コードカバレッジ情報を効率よく管理できるとしている。
【特許文献１】特開２００２−９９５８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の論理検証システムは、シミュレーションの対象となる論理回路にテストパターンを適用してシミュレーションを行い、論理回路を構成する論理素子の活性化状態、即ち、それぞれの論理素子を示す演算子の出力端子が０、１の両方になったかを検出して論理回路全体のカバレッジを算出していた。
【０００７】
通常、一つのテストパターンで、論理回路を構成する全ての論理素子の出力端子を０、１両方に変化させることは困難であり、一般的には、複数のテストパターンを用いて論理回路の動作を検証している。
【０００８】
この場合においては、それぞれのテストパターンで論理回路を構成する全ての論理素子の動作状態を監視する必要があり、シミュレーションに要する計算時間の増大、及び出力情報の増大による、メモリ、ディスク等のリソース使用量の増大という問題があった。
【０００９】
本発明は、このような実情に鑑みてなされたものであり、シミュレーションに要する時間の短縮、及び出力情報の削減によるメモリ、ディスク等リソース使用量の低減が可能で、かつ、カバレッジ情報を効率よく抽出可能な論理検証システムを提供しようとするものである。
【課題を解決するための手段】
【００１０】
本発明の課題は、下記の各発明によって解決することができる。
即ち、本発明の論理検証システムは、テストパターンを用いて論理回路のシミュレーションを実行し、前記テストパターンによって実際にテストされた、前記論理回路を構成する論理素子に関する情報であるカバレッジ情報を取得する論理検証システムであって、論理シミュレーションを実行する論理シミュレーション実行部と、前記カバレッジ情報を前記論理シミュレーション実行部から取得するカバレッジ情報取得部と、取得した前記カバレッジ情報を解析するカバレッジ情報解析部と、前記論理シミュレーション実行部の動作の制御を行う制御部と、を備え、前記カバレッジ解析部は、前記カバレッジ情報取得部が取得したカバレッジ情報を基にして、一度テストされた論理素子に関するカバレッジ情報は抽出しない旨の指示を前記制御部に出し、全ての前記論理素子がテストされたことを検出した場合は、シミュレーションの実行を中止する旨の指示を前記制御部に出し、前記制御部は、前記カバレッジ解析部から一度テストされた論理素子に関するカバレッジ情報は抽出しない旨の指示を受信したとき、前記論理シミュレーション実行部を制御して抽出しない対象の論理素子からのカバレッジ情報の抽出動作を中止させ、前記カバレッジ解析部からシミュレーションの実行を中止する旨の指示を受信したとき、前記論理シミュレーション実行部を制御してシミュレーションを中止させることを主要な特徴としている。
【００１１】
これにより、既に活性化された、即ちテストされた論理素子についてはカバレッジ情報取得の動作を行わない指示を出すので、既にテストされた論理素子についてはカバレッジ情報の取得動作は行わない。よって、ＣＰＵ負荷を軽減し、メモリ、記憶装置の使用量を減少させることができる。
【００１２】
また、本発明の論理検証システムは、前記論理回路と、前記論理回路からカバレッジ情報を抽出するためのカバレッジ回路と、前記カバレッジ回路の動作を中止させるための抑止回路と、前記テストパターンとを用いて、前記論理シミュレーション実行部がシミュレーションを行い、前記カバレッジ回路は、前記論理回路を構成する各前記論理素子に接続され、前記抑止回路は、各前記カバレッジ回路に接続され、前記論理シミュレーション実行部が、シミュレーションを実行することにより、前記カバレッジ回路は、当該カバレッジ回路が接続されている論理素子のカバレッジ情報を抽出し、前記カバレッジ情報取得部は、前記カバレッジ回路が抽出した前記カバレッジ情報を取得し、前記制御部は、カバレッジ情報を抽出しない対象の論理素子に接続されたカバレッジ回路に接続された抑止回路に、カバレッジ回路の動作を中止させるための信号を送信し、前記抑止回路は、前記信号を受信することにより、カバレッジ回路の動作を中止させるための信号を、当該抑止回路に接続されたカバレッジ回路に送信し、前記カバレッジ回路は、前記抑止回路から前記信号を受信することにより、カバレッジ情報を抽出する動作を中止することを主要な特徴としている。
【００１３】
これにより、シミュレーション対象の回路がどのように変わろうとも、それに応じたカバレッジ回路、抑止回路を付加すればよいので、論理検証システム自身のハードウエアやソフトウエアを変更する必要が無い。
【発明の効果】
【００１４】
以上説明したように、本発明の論理検証システムによれば、既に活性化された、即ちテストされた論理素子についてはカバレッジ情報取得の動作を行わない指示を出すので、既にテストされた論理素子についてはカバレッジ情報の取得動作は行わない。よって、ＣＰＵ負荷を軽減し、メモリ、記憶装置の使用量を減少させることができる。
【００１５】
また、シミュレーション対象の回路がどのように変わろうとも、それに応じたカバレッジ回路、抑止回路を付加すればよいので、論理検証システム自身のハードウエアやソフトウエアを変更する必要が無い。
【発明を実施するための最良の形態】
【００１６】
以下、添付図面を参照しながら、本発明の論理検証システムを実施するための最良の形態を詳細に説明する。
【００１７】
＜構成＞
本発明の一実施形態に係る論理検証システムの構成について図を参照して説明する。図１は、本発明の一実施形態に係る論理検証システムの概略構成図である。
【００１８】
図１に示すように、本発明の論理検証システムは、論理シミュレーション実行部１と、カバレッジ情報取得部２と、カバレッジ解析部３と、制御部４と、シミュレーション対象の論理回路データ５と、論理回路データに付加されるカバレッジ回路データ６と、カバレッジ回路データ６に付加される抑止回路データ７と、論理回路の動作を検証するためのテストパターン８と、から構成されている。
【００１９】
ここで、論理回路データ５、カバレッジ回路データ６、抑止回路データ７は、現実の物理的な回路ではなく、回路をシミュレーションするために、回路をデータで表したものである。しかしながら、シミュレーション上では、物理的な回路と同等の動作を模擬するものなので、以下の説明においては、回路として説明する。よって、論理回路データ５、カバレッジ回路データ６、抑止回路データ７は、それぞれ、論理回路５、カバレッジ回路６、抑止回路７として説明する。
【００２０】
論理シミュレーション実行部１は、シミュレーション対象の論理回路５と、この論理回路５に付加されたカバレッジ回路６、抑止回路７とに、テストパターン８を適用してシミュレーションを実行する。
【００２１】
カバレッジ情報取得部２は、カバレッジ情報を論理シミュレーション実行部１から取得する。ここで、カバレッジ情報とは、論理回路５を構成する論理素子のうち、シミュレーション実行によって活性化された論理素子に関する情報のことである。即ち、テストパターン８によって実際にテストされた論理素子に関する情報のことである。ここで、活性化されたとは、テストによって動作されたという意味である。
尚、一度活性化された論理素子のカバレッジ情報を図示しないメモリに一時記憶しておくことができる。
【００２２】
カバレッジ解析部３は、カバレッジ情報取得部２が取得したカバレッジ情報を基にして、一度活性化された論理素子に関するカバレッジ情報は抽出しない旨の指示を制御部４に出す。また、カバレッジ解析部３は、全ての論理素子が活性化されたことを検出した場合は、シミュレーションの実行を中止する指示を制御部４に出す。また、カバレッジ情報を外部の記憶装置、モニタ等に出力する。
【００２３】
制御部４は、一度活性化された論理素子に関するカバレッジ情報は抽出しない旨の指示をカバレッジ解析部３から受信したとき、抽出しない対象となるカバレッジ回路６の動作を抑止する抑止回路７に抑止を指示する抑止指定信号を印加する。制御部４は、論理シミュレーション実行部１から、この抑止指定信号を抑止回路７に印加させることもできる。
【００２４】
また、制御部４は、カバレッジ解析部３からシミュレーションの実行を中止する指示を受信したときは、論理シミュレーション実行部に指示して、論理シミュレーション実行部の動作を中止させる。
【００２５】
次に一実施形態に係る各回路の構成について図２を参照して説明する。図２は、本発明の一実施形態に係る回路図である。
図２に示すように、シミュレーションの実行対象である論理回路５は、複数の論理素子２１によって構成されており、各論理素子２１には、それぞれカバレッジ回路６が接続されている。各カバレッジ回路６には、それぞれ抑止回路７が接続されている。カバレッジ回路６は、論理素子２１の入力と出力に接続され、論理素子２１に信号が入力され、論理素子２１が信号を出力したことを検知すると、この回路は活性化されたとして、活性化されたことを示す信号であるカバレッジ抽出信号をＣＶ１に出力する。また、抑止回路７からの信号を受信すると、カバレッジ回路６は、動作を中止し、ＣＶ１への信号出力も中止する。
【００２６】
抑止回路７は、抑止指定信号が入力Ｙ１に印加されると、出力Ｙ２からカバレッジ回路に信号を送信する。これにより、カバレッジ回路６は上述したように動作を中止する。
また、抑止回路７は、２種類の抑止モード（抑止モード１、２）を指定するための入力Ｍ１とＭ２とを備えている。抑止モードとは、抑止回路７がカバレッジ回路６に動作中止のための信号を送信するための条件のことである。
【００２７】
具体的に説明すると、入力Ｍ１に信号が入力されていると、カバレッジ回路６が１回でも活性化されたことを示す信号をＣＶ１から出力すると、Ｙ１に入力が無くても出力Ｙ２からカバレッジ回路６の動作を中止させる信号を出力する（抑止モード１）。
【００２８】
また、入力Ｍ２に信号が入力されていると、全ての抑止回路７において、Ｙ１の入力がされているか、または、ＣＶ１から出力がされていればＩＮＴから信号を出力する（抑止モード２）。ＩＮＴからの信号は割り込み信号であり、論理シミュレーション実行部は、このＩＮＴからの信号を受信するとシミュレーションの実行を中止する。
【００２９】
上述のように、論理素子２１、カバレッジ回路６、抑止回路７としてそれぞれ一つの回路で説明したが、実際には、シミュレーションの実行対象回路は、複数の論理素子２１で構成され、カバレッジ回路６は、それぞれの論理素子２１に接続され、抑止回路７は、それぞれのカバレッジ回路６に接続されている。
【００３０】
また、図２においては、論理記号により回路図を表しているが、この論理記号で表された回路に限定されるものではなく、同様の機能を果たす回路であれば、どのような回路でも採用することが可能である。
【００３１】
以上説明したように、論理素子一つ一つにカバレッジ回路６、抑止回路７を付加してカバレッジ情報の抽出、カバレッジ情報の抽出中止動作を行っているので、シミュレーション対象の回路がどのように変わろうとも、それに応じたカバレッジ回路、抑止回路を付加すればよく、論理検証システム自身のハードウエアやソフトウエアを変更する必要が無い。
【００３２】
＜動作＞
次に、本発明の一実施形態に係る論理検証システムの動作について、図３を参照して説明する。図３は、本発明の一実施形態に係る論理検証システムのフロー図である。
制御部４は、論理回路５、カバレッジ回路６、抑止回路７、テストパターン８の各データを読み込む（Ｓ３１１）。読み込み元としては、外部の記憶装置から読み込むこともできるし、本願の論理検証システム自身が備える記憶装置から読み込むこともできる。
【００３３】
制御部４は、読み込んだデータを論理シミュレーション実行部１に渡す（Ｓ３１２）。論理シミュレーション実行部１は、制御部より渡されたデータを基にして論理シミュレーションを実行する（Ｓ３１３）。
【００３４】
論理シミュレーション実行部１は、論理シミュレーションの実行結果である、テスト結果のデータと、カバレッジ情報のデータとを出力する（Ｓ３１４）。
カバレッジ情報取得部２は、論理シミュレーション実行部からカバレッジ情報を読み込む（Ｓ３１５）。カバレッジ情報取得部２は、読み込んだカバレッジ情報をカバレッジ解析部３に渡す（Ｓ３１６）。
【００３５】
カバレッジ解析部３は、カバレッジ情報取得部２から渡されたカバレッジ情報の解析を行う（Ｓ３１７）。カバレッジ解析部３は、活性化された論理素子２１からのカバレッジ情報の抽出を中止するため、活性化された論理素子２１に接続されたカバレッジ回路の動作を中止する指示を制御部に出す（Ｓ３１８）。
【００３６】
制御部４は、カバレッジ解析部３から動作の中止を指示されたカバレッジ回路に接続された抑止回路に抑止指定信号を印加する（Ｓ３１９）。この抑止指定信号は、制御部４が直接抑止回路に印加する構成にすることもできるし、論理シミュレーション実行部１が抑止回路に抑止指定信号を印加する構成にすることもできる。
尚、既に論理シミュレーションを実行しているが、カバレッジ率が１００％に達しなかった論理回路につき、後にテストパターンを追加して論理シミュレーションを実行する場合には、制御部４はＳ３１１において各データを読み込む際に、実行済みの論理シミュレーションにおけるカバレッジ情報を取得し、既に活性化された論理素子のからのカバレッジ情報の抽出を中止するよう抑止指定信号を印加するものとする。
【００３７】
カバレッジ解析部３は、全ての論理素子２１がテストされたか、即ち全ての論理素子２１が活性化されたか判定を行い、全ての論理素子２１がテストされた場合はＳ３２２を実行し、そうでない場合は、Ｓ３２１を実行する（Ｓ３２０）。
【００３８】
カバレッジ解析部３において全ての論理素子２１がテストされていないと判定された場合は、制御部４は、全テストパターンを実行したか判定を行い、全テストパターンを実行していない場合は、Ｓ３１１から実行を行い、全テストパターンを実行した場合は、Ｓ３２３を実行する（Ｓ３２１）。
【００３９】
カバレッジ解析部３において全ての論理素子２１がテストされたと判定された場合は、カバレッジ解析部３は、論理シミュレーションの実行中止の指示を制御部４に出す（Ｓ３２２）。制御部４は、論理シミュレーション実行部１が行っている論理シミュレーションの実行を中止させる（Ｓ３２３）。
【００４０】
次にカバレッジ回路６、抑止回路７の動作について図を参照して説明する。図４は、抑止モード１のときの、カバレッジ回路と抑止回路のタイミングチャートである。図４における、ＣＬＫ、ＩＮ１、ＩＮ２等の各符号は図２の同一の符号と対応するが、図２においては、信号ラインを示し、図４においては、信号を示す。即ち、例えば、ＣＬＫは、図２においては、クロック信号ラインを示すが、図４においては、クロック信号を示す。
【００４１】
図２に示すように、ＣＬＫはクロック信号ラインであり、ＩＮ１、ＩＮ２は論理素子２１への入力信号ラインである。ＯＵＴ１は、論理素子２１からの出力信号ラインである。
カバレッジ回路６は、クロック信号ラインＣＬＫ、入力信号ラインＩＮ１、ＩＮ２が入力ラインに接続され、カバレッジ抽出信号ラインＣＶ１が出力ラインに接続される。
【００４２】
抑止回路７は、抑止モード１を指定する信号ラインＭ１、抑止モード２を指定する信号ラインＭ２、抑止指定信号ラインＹ１、カバレッジ抽出信号ラインＣＶ１が入力ラインに接続され、カバレッジ回路６の動作を中止させる抑止指示を出す信号ラインＹ２、割り込み信号ラインＩＮＴが出力ラインと接続されている。
【００４３】
次に、図４に示すように、抑止モード１を指定する信号Ｍ１が「１」、抑止モード２を指定する信号Ｍ２が「０」、抑止指定信号Ｙ１が「０」で固定されているときの動作について説明する。
【００４４】
クロック信号ＣＬＫは、周期的に「１」、「０」を繰り返す。ここでこれ以降、信号が「０」から「１」に変化することを、「立ち上がる」と表現し、信号が「１」から「０」に変化することを、「立ち下がる」と表現する。
【００４５】
時刻Ｔ１において、ＩＮ１、ＩＮ２がともに立ち上がり、時刻Ｔ３においてＩＮ１、ＩＮ２がともに立ち下がり、時刻Ｔ３において、ＯＵＴ１が立ち上がり、時刻Ｔ５でＯＵＴ１が立ち下がったとき、ＣＶ１は、時刻Ｔ５で立ち上がる。
【００４６】
ここで図２を参照すると、ＣＶ１が立ち上がることにより、抑止回路７のＦが「１」に変化し、Ｍ１が「１」なので、Ｇも「１」となり、Ｙ２も「１」となる。これにより、カバレッジ回路６のＣＬＫ２が「１」に固定されるので、カバレッジ回路６は動作を行わなくなる。図４にもどると、時刻Ｔ５以降は、ＩＮ１、ＩＮ２、ＯＵＴ１が変化してもＣＶ１は、「１」に固定されたままで変化しない。即ち、カバレッジ回路６は動作を停止している。
【００４７】
続いて、抑止モード１を指定する信号Ｍ１が「０」の場合について図２と図５を参照して説明する。図５は、抑止モードが設定されていないときの、カバレッジ回路と抑止回路のタイミングチャートである。図２に示すように、Ｍ１が「０」ときは、Ｇは常に「０」となり、Ｙ１が「１」でない限りは、Ｙ２は「０」となる。これにより、ＣＬＫ２は、「１」に固定されることはないので、カバレッジ回路６は動作を停止することはなく、図５に示すように、ＩＮ１、ＩＮ２、ＯＵＴ１の変化に伴って、ＣＶ１も変化する。即ち、ＣＶ１は出力を続ける。
【００４８】
次に、抑止モード１を指定する信号Ｍ１が「１」、抑止モード２を指定する信号Ｍ２が「１」、抑止指定信号Ｙ１が「０」で固定されているとき、即ち抑止モード２のときの動作について説明する。図６は、抑止モード２のときの、カバレッジ回路と抑止回路のタイミングチャートである。この場合は、図２に示すように、Ｍ２が「１」であり、ＣＶ１が立ち上がるとＦが「１」になるので、Ｈも「１」となる。よって、他の抑止回路の全てのＨ’が１になればＩＮＴが「１」となる。ＩＮＴが「１」となることにより、この信号を受信した論理シミュレーション実行部１は、動作を中止する。ここで、図６を参照すると、ＣＶ１が立ち上がることにより、論理シミュレーション実行部１は動作を中止するので、ＩＮ１、ＩＮ２、ＯＵＴ１も「０」で固定される。
【００４９】
次にカバレッジ解析部３の動作の一例を図７を参照して説明する。図７は、カバレッジ解析部の動作の一例を示す図である。
この図において、論理回路５を構成する論理素子を、論理素子Ａ、Ｂ、Ｃ、Ｄ、Ｅで表している。また、「１」は、その論理素子が活性化されたことを表し、「０」は、その論理素子がまだ活性化されていないことを表す。
【００５０】
符号７１で示すように、カバレッジ解析部３が有するデータベースにおいて、テストパターン実行前は、全ての論理素子が「０」として登録されている。テストパターン１の実行結果のカバレッジ情報７２が、カバレッジ情報取得部２からカバレッジ解析部３に渡されたとき、カバレッジ解析部３は、渡された情報を基にして、データベース内容を更新する。更新した結果を符号７３で示す。
【００５１】
符号７３で示すように、テストパターン１の実行によって活性化された論理素子Ａ、Ｃについて、「１」と更新されている。カバレッジ解析部３は、「１」と更新された論理素子Ａ、Ｃについてカバレッジ情報取得動作を中止する指示を制御部４に出す。
【００５２】
テストパターン１の後に実施した、テストパターン２の実行結果のカバレッジ情報を符号７４で示す。カバレッジ情報取得部２は、このカバレッジ情報をカバレッジ解析部３に送る。カバレッジ解析部３は、渡されたカバレッジ情報を基にして、データベース内容を更新する。更新された結果を符号７５で示す。
【００５３】
符号７５で示すように、テストパターン２の実行によって活性化された論理素子Ｄについて、「１」と更新されている。カバレッジ解析部３は、「１」と更新された論理素子Ｄについてカバレッジ情報取得動作を中止する指示を制御部４に出す。
【００５４】
テストパターン２の後に実行した、テストパターン３の実行結果のカバレッジ情報を符号７６で示す。カバレッジ情報取得部２は、このカバレッジ情報をカバレッジ解析部３に送る。カバレッジ解析部３は、渡されたカバレッジ情報を基にして、データベース内容を更新する。更新された結果を符号７７で示す。
【００５５】
符号７７で示すように、テストパターン３の実行によって活性化された論理素子Ｂ、Ｅについて、「１」と更新されている。カバレッジ解析部３は、「１」と更新された論理素子Ｂ、Ｅについてカバレッジ情報取得動作を中止する指示を制御部４に出す。
【００５６】
このように、既に活性化された、即ちテストされた論理素子についてはカバレッジ情報取得の動作を行わない指示を出すので、既にテストされた論理素子についてはカバレッジ情報の取得動作は行わない。これにより、論理シミュレーション実行部１の負担が軽減し、ＣＰＵ負荷や、メモリ、記憶装置の使用量を減少させることができる。
【００５７】
以上、本発明の論理検証システムについて、具体的な実施の形態を示して説明したが、本発明はこれらに限定されるものではない。当業者であれば、本発明の要旨を逸脱しない範囲内において、上記実施形態における論理検証システムの構成及び機能に様々な変更・改良を加えることが可能である。
【産業上の利用可能性】
【００５８】
本発明の論理検証システムは、コンピュータのＣＰＵ、メモリ、補助記憶装置等を含むハードウエア資源上に構築されたＯＳ、アプリケーション等によって実現されるものであり、回路のシミュレーション、カバレッジ情報の抽出という情報処理が上記ハードウエア資源を用いて具体的に実現されるものであるから、自然法則を利用した技術的思想に該当するものであり、回路のシミュレーションが必要な、電子回路、半導体等の開発、設計、製造分野において利用することができるものである。
【図面の簡単な説明】
【００５９】
【図１】本発明の一実施形態に係る論理検証システムの概略構成図である。
【図２】本発明の一実施形態に係る回路図である。
【図３】本発明の一実施形態に係る論理検証システムのフロー図である。
【図４】抑止モード１のときの、カバレッジ回路と抑止回路のタイミングチャートである。
【図５】抑止モードが設定されていないときの、カバレッジ回路と抑止回路のタイミングチャートである。
【図６】抑止モード２のときの、カバレッジ回路と抑止回路のタイミングチャートである。
【図７】カバレッジ解析部の動作の一例を示す図である。
【符号の説明】
【００６０】
１      論理シミュレーション実行部
２      カバレッジ情報取得部
３      カバレッジ解析部
４      制御部
５      論理回路データ
６      カバレッジ回路データ
７      抑止回路データ
８      テストパターン
２１    論理素子
【図１】
2009223861.tif 000003
【図２】
2009223861.tif 000004
【図３】
2009223861.tif 000005
【図４】
2009223861.tif 000006
【図５】
2009223861.tif 000007
【図６】
2009223861.tif 000008
【図７】
2009223861.tif 000009