(57)【要約】【課題】  不要なエラーメッセージを抑制し、エラーメッセージの解析作業を容易に行えるようにする。【解決手段】  タイミングチェックブロック２０１でタイミングエラーを検知時に、時間比較ブロック２０３、信号モニタブロック２０４、計数ブロック２０５がメッセージ出力ブロック２０２から出力されるエラーメッセージの出力を抑制する信号を生成し、メッセージ出力ブロック２０２が、それぞれ生成された信号に基づいてエラーメッセージの出力を制御する。【選択図】      図２
2006163736.tif 000002
【特許請求の範囲】
【請求項１】
タイミングチェック機能を有する論理シミュレーション用システムであって、
前記タイミングチェック機能によるエラー検知時に出力されるエラーメッセージの出力を抑制する信号を生成する生成手段と、
前記生成手段で生成された信号に基づいて前記エラーメッセージの出力を制御する制御手段とを有することを特徴とする論理シミュレーション用システム。
【請求項２】
前記生成手段は、所定の期間、前記エラーメッセージの出力を抑制する信号を生成することを特徴とする請求項１記載の論理シミュレーション用システム。
【請求項３】
前記生成手段は、所定の信号が所定値の場合、前記エラーメッセージの出力を抑制する信号を生成することを特徴とする請求項１記載の論理シミュレーション用システム。
【請求項４】
前記生成手段は、前記タイミングチェック機能によって同一個所のタイミングエラーが所定の回数発生した場合、前記エラーメッセージの出力を抑制する信号を生成することを特徴とする請求項１記載の論理シミュレーション用システム。
【請求項５】
タイミングチェック機能を有する論理シミュレーション用システムの制御方法であって、
前記タイミングチェック機能によるエラー検知時に出力されるエラーメッセージの出力を抑制する信号を生成する工程と、
前記生成された信号に基づいて前記エラーメッセージの出力を制御する工程とを有することを特徴とする論理シミュレーション用システムの制御方法。
【請求項６】
請求項１記載の論理シミュレーション用システムの各機能をコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タイミングチェック機能を有する論理シミュレーション用システム及びその制御方法に関する。
【背景技術】
【０００２】
従来、回路図レベル（ゲート・レベル）の論理シミュレーションにおいて、クロックに対するデータ入力やリセット入力のタイミングチェック（例えば、セットアップタイムやホールドタイムのチェック）を行うことが一般的に行われている。
【０００３】
図１は、従来の論理シミュレーション用モデルを示す概略ブロック図である。この論理シミュレーション用モデル１００は、例えばＤフリップフロップの論理シミュレーション用モデルであり、図１に示すようにタイミングチェックブロック１０１、メッセージ出力ブロック１０２で構成されている。
【０００４】
タイミングチェックブロック１０１は、クロックclkに対するデータ入力data_in、並びにリセット信号reset_Lのタイミングチェック（例えば、セットアップタイムやホールドタイムのチェック）を行うと共に、データ出力data_outを出力する。
【０００５】
また、タイミングチェックブロック１０１は、各信号におけるタイミングエラーを検知すると、メッセージ出力ブロック１０２に対してエラーレベル信号err_level[1:0]、並びにエラーモード信号err_mode[1:0]をアサートし、メッセージ出力ブロック１０２がそのエラーレベルとエラーモードに応じたエラーメッセージをメッセージ出力msg_outとして出力する。
【０００６】
特許文献１には、シミュレーション対象となる論理回路への伝播遅延時間を付加する論理シミュレーション方式が記載されている。
【特許文献１】特開平05-108753号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の論理シミュレーション用モデルにおいては、シミュレーション・ログに擬似エラー的なエラーメッセージ（例えば、リセット期間中のエラーメッセージ）が大量に表示されたり、同じ個所がタイミングバイオレーションを起こす度にエラーメッセージが表示されたりするため、エラーメッセージの解析作業が煩雑になるという問題があった。
【０００８】
本発明は、上記課題を解決するためになされたもので、不要なエラーメッセージを抑制し、エラーメッセージの解析作業を容易に行えるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、タイミングチェック機能を有する論理シミュレーション用システムであって、前記タイミングチェック機能によるエラー検知時に出力されるエラーメッセージの出力を抑制する信号を生成する生成手段と、前記生成手段で生成された信号に基づいて前記エラーメッセージの出力を制御する制御手段とを有することを特徴とする。
【００１０】
また、本発明は、タイミングチェック機能を有する論理シミュレーション用システムの制御方法であって、前記タイミングチェック機能によるエラー検知時に出力されるエラーメッセージの出力を抑制する信号を生成する工程と、前記生成された信号に基づいて前記エラーメッセージの出力を制御する工程とを有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、不要なエラーメッセージを抑制し、エラーメッセージの解析作業を容易に行うことができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。
【００１３】
図２は、本実施形態における論理シミュレーション用モデルの構成を示す概略ブロック図である。この論理シミュレーション用モデル２００は、例えばＤフリップフロップ１個の論理シミュレーション用モデルであり、図２に示すようにタイミングチェックブロック２０１、メッセージ出力ブロック２０２、時間比較ブロック２０３、信号モニタブロック２０４、計数ブロック２０５で構成されている。
【００１４】
タイミングチェックブロック２０１は、クロックclkに対するデータ入力data_in、並びにリセット信号reset_Lのタイミングチェック（例えば、セットアップタイムやホールドタイムのチェック）を行うと共に、データ出力data_outを出力する。
【００１５】
また、タイミングチェックブロック２０１は、各信号におけるタイミングエラーを検知すると、メッセージ出力ブロック２０２に対してエラーレベル信号err_level[1:0]、並びにエラーモード信号err_mode[1:0]をアサートする。ここで、エラーレベル信号err_level[1:0]は、本実施形態では、「０」でNote、「１」でWarning、「２」でErrorを表すものとする（３は未使用）。また、エラーモード信号err_mode[1:0]は、「０」でdata_inのセットアップエラー、「１」でdata_inのホールドエラー、「２」でreset_Lのセットアップエラー、「３」でreset_Lのホールドエラーを表す。
【００１６】
上述の時間比較ブロック２０３、信号モニタブロック２０４、計数ブロック２０５は、本発明の特徴であるエラーメッセージの抑制に関わる部分であり、以下順に説明する。
【００１７】
まず、時間比較ブロック２０３は、所定の期間に対するエラーメッセージの抑制に関わる部分である。シミュレーション時間$timeを参照し、ユーザが定義可能な２つの変数、即ち抑制開始時間'MSG_MASK_TIME_START、抑制終了時間'MSG_MASK_TIME_ENDを比較する。ここで、'MSG_MASK_TIME_START≦$time≦'MSG_MASK_TIME_ENDの場合、エラーメッセージ抑制信号mask_timeをメッセージ出力ブロック２０２へアサートすることにより、エラーメッセージの抑制を行う。
【００１８】
次に、信号モニタブロック２０４は、所定の信号に対するエラーメッセージの抑制に関わる部分である。抑制制御信号'MSG_MASK_SIGNALが抑制条件値'MSG_MASK_VALUEの場合、エラーメッセージ抑制信号mask_sigをメッセージ出力ブロック２０２へアサートすることにより、エラーメッセージの抑制を行う。
【００１９】
そして、計数ブロック２０５は、同一個所の同種のタイミングエラーが、所定の回数に達した場合に対するエラーメッセージの抑制に関わる部分である。所定の回数は、抑制回数値'MSG_MASK_COUNTによって指定し、エラーレベル信号err_level[1:0]、並びにエラーモード信号err_mode[1:0]毎に、エラーの生起回数を計数し、所定の回数に達した時に、エラーメッセージ抑制信号mask_cntをメッセージ出力ブロック２０２へアサートすることにより、エラーメッセージの抑制を行う。
【００２０】
また、メッセージ出力ブロック２０２は、タイミングチェックブロック２０１から出力されるエラーレベル信号err_level[1:0]、並びにエラーモード信号err_mode[1:0]に基づいてエラーメッセージmsg_outの出力を制御するが、上述したように、エラーメッセージ抑制信号mask_time、mask_sig、mask_cntの何れかがアサートされている場合には、タイミングエラーが発生してもエラーメッセージを出力しないように制御する。
【００２１】
尚、上述したエラーメッセージ抑制信号mask_time、mask_sig、mask_cntの組み合わせによりタイミングエラーが発生してもエラーメッセージを出力しないように制御することも可能である。
【００２２】
更に、本実施形態では、エラーメッセージの抑制機能自体をオフにすることもできる。具体的には、抑制開始時間'MSG_MASK_TIME_START及び抑制終了時間'MSG_MASK_TIME_ENDの値を共に「０」と定義すると、論理シミュレーション用モデル２００は所定の期間に対するエラーメッセージの抑制は行わない。
【００２３】
また、抑制制御信号'MSG_MASK_SIGNALを「０」と定義すると、論理シミュレーション用モデル２００は所定の信号に対するエラーメッセージの抑制を行わず、抑制回数値'MSG_MASK_COUNTを「０」と定義すると、エラーの生起回数に基づいたエラーメッセージの抑制を行わない。
【００２４】
図３は、本実施形態による論理シミュレーション用モデルにおける各制御変数の定義例を示す図である。
【００２５】
尚、本実施形態では、論理シミュレーション用モデル２００はVerilog-HDLで記述されており、各制御変数の定義も、Verilog-HDLのマクロ記述コンパイル指示子'defineを使用してユーザが行う。そして、図３に示すファイルをシミュレーション実行前にコンパイルすることによりユーザが定義した各制御変数を論理シミュレータに渡すことが可能となる。また、上述のシミュレーション時間$timeは、Verilog-HDLの組み込みタスクである。
【００２６】
図３に示す定義例においては、抑制開始時間MSG_MASK_TIME_START及び抑制終了時間MSG_MASK_TIME_ENDを共に「０」と定義することにより、時間指定によるメッセージ抑制機能をオフにしている。
【００２７】
また、抑制制御信号MSG_MASK_SIGNALをシステムリセット信号i_board.i_top.reset_L、抑制条件値MSG_MASK_VALUEを「０」と定義することにより、システムリセット信号がアクティブな期間エラーメッセージを抑制するよう設定している。
【００２８】
更に、抑制回数値MSG_MASK_COUNTを「２」と定義することにより、同一箇所（即ち同一インスタンス）における同種のエラーは２回までエラーメッセージを出力し、それ以降はエラーメッセージの出力を抑制するよう設定している。
【００２９】
以上のような構成及び制御により、ユーザにとって不要なエラーメッセージを選択的に抑制することが可能となり、エラーメッセージの解析作業を容易に行える論理シミュレーション用モデルを実現することができる。
【００３０】
尚、本発明は複数の機器（例えば、ホストコンピュータ，インターフェース機器，リーダ，プリンタなど）から構成されるシステムに適用しても、１つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用しても良い。
【００３１】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【００３２】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【００３３】
このプログラムコードを供給するための記録媒体としては、例えばフロッピー（登録商標）ディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００３４】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００３５】
更に、記録媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００３６】
【図１】従来の論理シミュレーション用モデルを示す概略ブロック図である。
【図２】本実施形態における論理シミュレーション用モデルの構成を示す概略ブロック図である。
【図３】本実施形態による論理シミュレーション用モデルにおける各制御変数の定義例を示す図である。
【符号の説明】
【００３７】
１００  従来の論理シミュレーション用モデル
１０１  タイミングチェックブロック
１０２  メッセージ出力ブロック
２００  論理シミュレーション用モデル
２０１  タイミングチェックブロック
２０２  メッセージ出力ブロック
２０３  時間比較ブロック
２０４  信号モニタブロック
２０５  計数ブロック
【図１】
2006163736.tif 000003
【図２】
2006163736.tif 000004
【図３】
2006163736.tif 000005