(57)【要約】【課題】実在するプロセッサにバスで接続されていると共に、外部周辺回路と接続予定の回路の動作を検証する際の検証工数を抑える。【解決手段】プロセッサ１１と独立し且つバス１５に接続され、外部周辺回路の動作を模擬して、検証対象回路１３へ周辺回路出力信号を出力する周辺回路シミュレータ２０を予め準備しておく。プロセッサ１１からアクセス可能なメモリ１２に、回路検証プログラム１６を予め記憶しておく。プロセッサ１１に、メモリ１２に記憶されているプログラムを実行させて、プロセッサ１１から検証対象回路１３へ動作指示信号を出力させると共に、バス１５を介して周辺回路シミュレータ２０へ出力仕様信号を出力させる。周辺回路シミュレータ２０は、出力仕様信号が示す仕様に基づく周辺回路出力信号を検証対象回路１３へ出力する。【選択図】  図１
2004252824.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサにバスで接続されていると共に、外部周辺回路と接続予定の回路（以下、検証対象回路とする）の動作を検証する回路検証方法において、
前記プロセッサと物理的に独立し且つ前記バスに接続され、前記外部周辺回路が該検証対象回路へ出力する周辺回路出力信号の仕様を示す出力仕様信号を受信すると、該出力仕様信号が示す仕様に基づいて該周辺回路出力信号を出力する周辺回路シミュレータを予め準備しておくと共に、
前記バスに接続され前記プロセッサからアクセス可能なメモリに、検証時に該プロセッサが前記検証対象回路へ出力する動作指示信号の出力命令列、及び前記出力仕様信号の出力命令列を含む命令列を予め記憶しておき、
前記プロセッサに前記メモリに記憶されている命令列を実行させて、該プロセッサから前記検証対象回路へ前記動作指示信号を出力させると共に、該プロセッサから前記バスを介して前記周辺回路シミュレータへ前記出力仕様信号を出力させ、
前記周辺回路シミュレータは、前記プロセッサからの前記出力仕様信号が示す仕様に基づく前記周辺回路出力信号を前記検証対象回路へ出力する、
ことを特徴とする回路検証方法。
【請求項２】
請求項１に記載の回路検証方法において、
前記周辺回路シミュレータは、前記検証対象回路から該周辺回路シミュレータへの検証対象出力信号を受信して、該検証対象出力信号の仕様を前記メモリに記憶し、
前記プロセッサには、前記検証対象回路から前記周辺回路シミュレータへの前記検証対象出力信号の仕様を前記メモリから読み取らせて、該検証対象回路の状態を判断させ、該状態に応じて、前記出力命令列を実行させる、
ことを特徴とする回路検証方法。
【請求項３】
請求項１及び２のいずれか一項に記載の回路検証方法において、
前記メモリには、前記検証対象回路から前記バスを介して前記プロセッサに出力される検証対象出力信号の仕様が記憶され、
前記プロセッサには、前記検証対象回路から該プロセッサへの前記検証対象出力信号の仕様を前記メモリから読み取らせて、該検証対象回路の状態を判断させ、該状態に応じて、前記出力命令列を実行させる、
ことを特徴とする回路検証方法。
【請求項４】
プロセッサとバスで接続されていると共に、外部周辺回路と接続予定の回路（以下、検証対象回路とする）の動作を検証するために使用する前記外部周辺回路のシミュレータにおいて、
前記プロセッサと物理的に独立し且つ前記バスに接続され、前記外部周辺回路が該検証対象回路へ出力する周辺回路出力信号の仕様を示す出力仕様信号を該プロセッサから該バスを介して受信し、該出力仕様信号を解読する信号解読手段と、
前記信号解読手段による前記出力仕様信号の解読結果に応じた前記周辺回路出力信号を前記検証対象回路へ出力する信号出力手段と、
を備えていることを特徴とする回路シミュレータ。
【請求項５】
請求項４に記載の回路シミュレータにおいて、
前記検証対象回路からの検証対象出力信号を受信する信号入力手段を備えている、
ことを特徴とする回路シミュレータ。
【請求項６】
請求項５に記載の回路シミュレータにおいて、
前記信号入力手段は、前記プロセッサからアクセス可能なメモリに、前記検証対象出力信号の仕様を記憶する、
ことを特徴とする回路シミュレータ。
【請求項７】
プロセッサとバスで接続されていると共に、外部周辺回路と接続予定の回路（以下、検証対象回路とする）の動作を検証するために、前記プロセッサを動作させる回路検証プログラムにおいて、
前記検証対象回路への動作指示信号を出力させる複数の第一出力命令と、
前記プロセッサと物理的に独立し且つ前記バスに接続され、前記検証対象回路へ周辺回路出力信号を出力する周辺回路シミュレータに対して、該周辺回路出力信号の仕様を示す出力仕様信号を出力させる複数の第二出力命令と、
前記バスに接続されて前記プロセッサからアクセス可能なメモリに、前記第一出力命令及び前記第二出力命令の実行で前記プロセッサから出力された前記動作指示信号及び前記出力仕様信号の仕様を記憶させると共に、前記検証対象回路からの検証対象出力信号の仕様を記憶させる記憶命令と、
を有することを特徴とする回路検証プログラム。
【請求項８】
請求項７に記載の回路検証プログラムにおいて、
前記検証対象出力信号の仕様を前記メモリから読み取らせる読取命令と、
前記読取命令の実行で読み取った前記検証対象出力信号の仕様から、前記検証対象回路の状態を判断し、該状態に応じて、複数の前記第一出力命令と複数の前記第二出力命令のうちのいずれか一つを実行させる状態判断命令と、
を有することを特徴とする回路検証プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プロセッサとバスで接続されていると共に、外部周辺回路と接続予定の回路の動作を検証する回路検証方法、該外部周辺回路のシミュレータ、該プロセッサに実行させる検証用プログラムに関する。
【０００２】
【従来の技術】
マイクロプロセッサとバス接続されている回路の動作を検証する場合、単に、マイクロプロセッサと検証対象回路との間でのデータ入出力を検証する以外に、この検証対象回路が外部周辺回路と接続される予定であれば、マイクロプロセッサと検証対象回路との間でのデータ入出力、及び検証対象回路と外部周辺回路との間でのデータ入出力を検証することになる。
【０００３】
以上のように、検証対象回路が外部周辺回路と接続される予定であれば、検証対象回路と外部周辺回路との間でのデータ入出力を検証する必要があるため、外部周辺回路のシミュレーションモデル（以下、単に周辺回路モデルとする）が必要となる。仮に、マイクロプロセッサ及び検証対象回路から物理的及び論理的に独立して存在する周辺回路モデルから検証対象回路に特定の信号を与え、この検証対象回路からの出力を検証する場合、検証対象回路の状態に応じたタイミングで上記特定の信号を発生させる必要があるため、この検証前に一度シミュレーションを実行し、上記特定の信号を発生させるタイミングを確認しなければならず、検証工数がかかってしまう。
【０００４】
そこで、この検証における工数を削減するものとして、例えば、以下の特許文献１に記載されているものがある。
【０００５】
この従来技術では、マイクロプロセッサをモデル化し、このモデル内にマイクロプロセッサとしての機能を担うマイクロプロセッサコアと、外部周辺回路としての機能を担う周辺回路モデルとを形成し、マイクロプロセッサコアから周辺回路モデル及び検証対象回路へ信号を出力することで、周辺回路モデル及び検証対象回路へ出力する信号を一元的に管理し、検証対象回路の状態に応じたタイミングで、周辺回路モデルから信号を発生させている。
【０００６】
【特許文献１】
特開平１０−３２６３０４号
【０００７】
【発明が解決しようとする課題】
しかしながら、前記従来技術では、モデル化したマイクロプロセッサ内に形成するマイクロプロセッサコア及び周辺回路モデルのうち、周辺回路モデルに関しては、マイクロプロセッサのモデルに拡張領域を形成し、この拡張領域に周辺回路モデルを形成しているため、この技術を実際に存在するマイクロプロセッサに適用しようとしても、このマイクロプロセッサに、周辺回路モデルを形成する拡張領域、及びこの拡張領域とコア部分との間での信号を受送信するための物理的なパスを形成することはできない。このため、前記従来技術では、実際に存在するマイクロプロセッサを用いて、検証対象回路の動作を検証することができないという問題点がある。
【０００８】
本発明は、このような従来技術の問題点に着目し、検証工数を抑えつつ、実際に存在するマイクロプロセッサを用いても、このマイクロプロセッサにバス接続されている検証対象回路の動作を検証することができる回路検証方法、この方法の実行に好適な外部周辺回路のシミュレータ、プロセッサに実行させる回路検証プログラムを提供することを目的とする。
【０００９】
【課題を解決するための手段】
前記目的を達成するための回路検証方法は、
プロセッサと物理的に独立し且つバスに接続され、外部周辺回路が検証対象回路へ出力する周辺回路出力信号の仕様を示す出力仕様信号を受信すると、該出力仕様信号が示す仕様に基づいて該周辺回路出力信号を出力する周辺回路シミュレータを予め準備しておくと共に、
前記バスに接続され前記プロセッサからアクセス可能なメモリに、検証時に該プロセッサが前記検証対象回路へ出力する動作指示信号の出力命令列、及び前記出力仕様信号の出力命令列を含む命令列を予め記憶しておき、
前記プロセッサに前記メモリに記憶されている命令列を実行させて、該プロセッサから前記検証対象回路へ前記動作指示信号を出力させると共に、該プロセッサから前記バスを介して前記周辺回路シミュレータへ前記出力仕様信号を出力させ、
前記周辺回路シミュレータは、前記プロセッサからの前記出力仕様信号が示す仕様に基づく前記周辺回路出力信号を前記検証対象回路へ出力する、
ことを特徴とするものである。
【００１０】
ここで、前記周辺回路シミュレータは、前記検証対象回路から該周辺回路シミュレータへの検証対象出力信号を受信して、該検証対象出力信号の仕様を前記メモリに記憶し、前記プロセッサには、前記検証対象回路から前記周辺回路シミュレータへの前記検証対象出力信号の仕様を前記メモリから読み取らせて、該検証対象回路の状態を判断させ、該状態に応じて、前記出力命令列を実行させてもよい。
【００１１】
また、前記メモリには、前記検証対象回路から前記バスを介して前記プロセッサに出力される検証対象出力信号の仕様が記憶され、前記プロセッサには、前記検証対象回路から該プロセッサへの前記検証対象出力信号の仕様を前記メモリから読み取らせて、該検証対象回路の状態を判断させ、該状態に応じて、前記出力命令列を実行させてもよい。
【００１２】
前記目的を達成するための検証対象回路と接続される外部周辺回路のシミュレータは、
プロセッサと物理的に独立し且つバスに接続され、前記外部周辺回路が検証対象回路へ出力する周辺回路出力信号の仕様を示す出力仕様信号を該プロセッサから該バスを介して受信し、該出力仕様信号を解読する信号解読手段と、
前記信号解読手段による前記出力仕様信号の解読結果に応じた前記周辺回路出力信号を前記検証対象回路へ出力する信号出力手段と、
を備えていることを特徴とするものである。
【００１３】
ここで、以上の回路シミュレータは、前記検証対象回路からの検証対象出力信号を受信する信号入力手段を備えていてもよい。この場合、前記信号入力手段は、前記プロセッサからアクセス可能なメモリに、前記検証対象出力信号の仕様を記憶するようにすることが好ましい。
【００１４】
前記目的を達成するための回路検証プログラムは、
プロセッサとバス接続されている検証対象回路への動作指示信号を出力させる複数の第一出力命令と、
前記プロセッサと物理的に独立し且つ前記バスに接続され、前記検証対象回路へ周辺回路出力信号を出力する周辺回路シミュレータに対して、該周辺回路出力信号の仕様を示す出力仕様信号を出力させる複数の第二出力命令と、
前記バスに接続されて前記プロセッサからアクセス可能なメモリに、前記第一出力命令及び前記第二出力命令の実行で前記プロセッサから出力された前記動作指示信号及び前記出力仕様信号の仕様を記憶させると共に、前記検証対象回路からの検証対象出力信号の仕様を記憶させる記憶命令と、
を有することを特徴とするものである。
【００１５】
ここで、前記回路検証プログラムは、
前記検証対象出力信号の仕様を前記メモリから読み取らせる読取命令と、
前記読取命令の実行で読み取った前記検証対象出力信号の仕様から、前記検証対象回路の状態を判断し、該状態に応じて、複数の前記第一出力命令と複数の前記第二出力命令のうちのいずれか一つを実行させる状態判断命令と、
を有していてもよい。
【００１６】
【発明の実施の形態】
以下、本発明に係る各種実施形態について、図面を用いて説明する。
【００１７】
まず、図１〜図９を用いて、本発明に係る回路検証方法の第一の実施形態について説明する。
【００１８】
この実施形態での検証対象回路１３は、図１に示すように、マイクロプロセッサ１１にバス１５を介して接続されている回路であって、外部周辺回路に接続予定の回路である。このバス１５には、メモリ１２と外部バスインタフェース１４とが接続されている。なお、以下では、マイクロプロセッサ１１、メモリ１２、検証対象回路１３、外部インタフェース１４、これらを接続するバス１５を備えている装置を、便宜上、対象装置１０とする。
【００１９】
検証回路１３の検証では、この検証回路１３と接続予定の外部周辺回路との関係も検証する必要があるため、外部周辺回路の動作を模擬する周辺回路シミュレータ２０を用いる。
【００２０】
この周辺回路シミュレータ２０は、対象装置１０と物理的に独立した存在で、対象装置１０の外部バスインタフェース１４に接続され対象装置１０のバス１５を通る信号を解読する信号解読部２１と、信号解読部２１が信号を解読する際に使用するテーブル２２と、信号解読部２１による解読結果に応じて検証対象回路１３へ周辺回路出力信号を出力する信号出力部２３と、検証対象回路１３からの対象出力信号を受信する信号入力部２４と、この信号入力部２４に入力した対象出力信号を対象装置１０のメモリ１２に送るために対象装置内のバス１２を制御するバスコントロールインタフェース２５と、を備えている。
【００２１】
周辺回路シミュレータ２０のテーブル２２には、図３に示すように、対象装置内のメモリ１２のアドレスと、このアドレスの位置に記憶する各種信号の名称とが対応付けて記憶されている。なお、このテーブル２２内の記述内容関しては、例えば、他の検証対象回路を検証する際等においては自由に書き換えることができる。
【００２２】
検証対象回路１３の検証前には、マイクロプロセッサ１１に実行させる複数の命令列の束である検証プログラム１６をメモリ１２に記憶する。この命令列としては、具体的には、図９におけるマイクロプロセッサ１１の動作から理解できるように、検証対象回路１３への動作指示信号の出力命令列、メモリ１２からの対象出力信号の読取命令列、検証対象回路１３の状態判断命令列、周辺回路シミュレータ２０への出力仕様信号の出力命令列等がある。
【００２３】
また、メモリ１２には、検証対象回路１３の動作及び状態を確認するため、周辺回路シミュレータ２０から検証対象回路１３への周辺回路出力信号の仕様やマイクロプロセッサ１１から検証対象回路１３への動作指示信号の仕様、さらに検証対象回路１３からの対象出力信号の仕様等を記憶する領域が設定されている。
【００２４】
このメモリ１２は、図２に示すように、６４ＭＢの記憶領域を有している。一般的に、回路検証のプログラムサイズは、１ＫＢにも満たない。そこで、この実施形態では、６４ＭＢの記憶領域のうちの０〜１ＫＢの領域に、前述の検証プログラム１６を記憶するようにしている。また、残りの１ＫＢ以降の空き領域は、前述の各種信号の仕様等を記憶する領域として利用する。
【００２５】
次に、図９に示すシーケンス図に従って、対象装置１０及び周辺回路シミュレータ２０の動作について説明する。
【００２６】
対象装置１０のマイクロプロセッサ１１は、前述したように、メモリ１２に記憶されている検証プログラム１６に従って動作する。仮に、この検証プログラム中の命令列が検証対象回路１３への動作指示信号の出力命令である場合（ケースＡ）には、検証対象回路１３へ所定の動作指示信号を出力する（ステップ１）。この際、マイクロプロセッサ１１は、この所定の動作指示信号及びこのメモリアドレスを出力し、メモリ１２の該当アドレスの位置に所定の動作指示信号のデータを記憶する（ステップ２）。マイクロプロセッサ１１からの動作指示信号に対して、検証対象回路１３が、マイクロプロセッサ１１へ対象出力信号を出力した場合には、これを受信し（ステップ３）、この対象出力信号及びこのメモリアドレスを出力し、メモリ１２の該当アドレスの位置にこの対象出力信号のデータを記憶する（ステップ４）。
【００２７】
次に、検証プログラム中の命令列が検証対象回路１３の状態に応じて、周辺回路シミュレータ２０を動作させよ、という命令である場合（ケースＢ）について説明する。まず、マイクロプロセッサ１１は、メモリ１２に記憶した対象出力信号のデータを読み出し（ステップ５）、この対象出力信号のデータに基づいて検証対象回路１３の状態を判断する（ステップ６）。ここで、検証対象回路１３の状態が周辺回路シミュレータ２０から、検証対象回路１３へ周辺回路出力信号を出力してもよい状態であると判断した場合には、マイクロプロセッサ１１は、周辺回路出力信号の仕様を示す出力仕様信号及びこのメモリアドレスを周辺回路シミュレータ２０及びメモリ１２へ出力する（ステップ７，８）。このメモリ１２の該当アドレスの位置には、この出力仕様信号のデータが記憶される。
【００２８】
この出力仕様信号は、前述したように、周辺回路シミュレータ２０が出力する周辺回路出力信号の仕様を示すもので、この信号が仕様内容としては、パルス幅時間、出力仕様信号を受信してから周辺回路出力信号を出力するまでのウェイト時間、信号をパルス出力するか否かを示すパルス、信号の出力レベルを示すレベルがある。パルス幅時間は、８ｂｉｔカウンタで示され、（００）ｘに設定すると信号は出力されない。また、ウェイト時間も、８ｂｉｔカウンタで示され、（００）ｘに設定すると、待ち時間無しで直ちに信号が出力される。また、パルスを（１）ｂに設定するとパルス信号が出力され、（０）ｂに出力するとパルス信号は出力されない。レベルを（１）ｂに設定すると、信号の出力レベルはＨレベルになり、（０）ｂに設定すると、信号の出力レベルはＬレベルになる。
【００２９】
以上の出力仕様信号のデータは、図４に示すようなデータフォーマットで、メモリ１２に記憶される。すなわち、前述したように、パルス幅時間４１、ウェイト時間４２、パルス４３、レベル４４、入力信号表示４５を含むデータとして、メモリ１２に記憶される。なお、入力信号表示４５は、検証対象回路１３からの対象出力信号の仕様が記憶される領域で、その詳細に関しては後述する。また、マイクロプロセッサ１１から検証対象回路１３へ出力される動作指示信号に関しても、基本的には、以上の出力仕様信号のフォーマットと同様のフォーマットで扱われる。
【００３０】
また、この出力仕様信号及びこのメモリアドレスは、図５に示す命令列の実行で、マイクロプロセッサ１１から出力される。同図において、（０００１０３０２）は、この出力仕様信号が示す仕様内容のデータで、Ｄ１は、このデータが格納されているマイクロプロセッサ１１の内部レジスタのアドレスである。また、（ＦＦＦＦＣ０００）は、この出力仕様信号データのメモリアドレスで、Ａ１は、このメモリアドレスが格納されているマイクロプロセッサ１１の内部レジスタである。なお、ここでのアッセンブラ言語は、６８０３０命令セットである。
【００３１】
ここで、マイクロプロセッサ１１から出力仕様信号及びそのメモリアドレスの出力タイミング、及び、周辺回路シミュレータ２０から周辺回路出力信号の出力タイミングについて、図６を用いて説明する。
【００３２】
マイクロプロセッサ１１は、サイクル１〜４の間で、メモリアドレス（ＦＦＦＦＣ０００）ｘを出力すると共に、サイクル４の間で、信号名ＡＡＡの出力仕様信号（０００１０３０２）を出力する。この出力仕様信号が示す仕様内容は、パルス幅時間が２サイクル間、ウェイト時間が３サイクル間、パルスが有り、レベルはＨレベルである。周辺回路シミュレータ２０の信号出力部２３は、この出力仕様信号が示す仕様に従った周辺回路出力信号を出力する。なお、同図において、Ｒ／Ｗ、ＡＳ、ＤＳは、データの書き込みタイミング等を示す制御信号である。
【００３３】
前述のステップ７で、マイクロプロセッサ１１から出力仕様信号が周辺回路シミュレータ２０へ出力され、周辺回路シミュレータ２０がこれを受信すると、回路シミュレータ２０の信号解読部２１は、テーブル２２を参照して、出力仕様信号と共に送られてきたメモリアドレスから、この出力仕様信号が示す周辺回路出力信号の名称を把握すると共に、この名称の周辺回路出力信号の仕様を把握し、これを信号出力部２３に渡す。信号出力部２３は、この仕様を受け取ると、この仕様に合った周辺回路出力信号を検証対象回路１３に出力する（ステップ９）。
【００３４】
検証対象回路１３は、この周辺回路出力信号を受信すると、所定の動作を行い、例えば、対象出力信号を周辺回路シミュレータ２０に返す（ステップ１０）。周辺回路シミュレータ２０の信号入力部２４は、この対象出力信号を受信すると、この対象出力信号のメモリアドレスを定める。この際、信号入力部２４は、予定されている対象出力信号の入力順番から、受信した対象出力信号の信号名を把握し、テーブル２２を参照して、信号名に対応するメモリアドレスを定める。そして、このメモリアドレスと共に対象出力信号を、バスコントロールインタフェース２５を介して、対象装置１０へメモリ１２へ送り、この対象出力信号のデータを該当アドレスの位置に記憶する（ステップ１１）。
【００３５】
この対象出力信号の記憶時には、図４を用いて前述したデータフォーマットと同じフォーマットを用い、この対象出力信号（周辺回路シミュレータ２０にとっての入力信号）を入力信号表示４５の部分に記憶する。なお、この実施形態では、入力信号表示４５の部分に記憶するデータは、対象出力信号のレベルのみであるが、パルス時間幅等の他のデータに関しても記憶するようにしてもよい。
【００３６】
次に、検証プログラム中の命令列が検証対象回路１３及び外部周辺回路の状態に応じて、検証対象回路１３を動作させよ、という命令である場合（ケースＣ）について説明する。マイクロプロセッサ１１は、まず、メモリ１２に記憶した対象出力信号及び出力仕様信号のデータを読み出す（ステップ１２）。
【００３７】
ここで、図７及び図８を用いて、マイクロプロセッサ１１による前述のステップ１２での対象出力信号の読み出し動作について説明する。
【００３８】
仮に、図３に示す信号名がＤＤＤの対象出力信号のデータＤＤＤ’を読み出すとする。この場合、マイクロプロセッサ１１は、図７に示す命令列を実行すべく、図８に示すように、サイクル５〜８の間で、メモリアドレス（ＦＦＦＦＣ７００）ｘを出力し、メモリ１２の該当アドレスの位置から対象出力信号ＤＤＤのデータＤＤＤ’を読み出す。なお、実際の対象出力信号は、図８の上から二段目の対象出力信号ＤＤＤで、ここで読み出される対象出力信号ＤＤＤのデータは、同図の最下段のデータＤＤＤ’である。このデータＤＤＤ’は、図４のデータフォーマットの入力信号表示４５の部分に記憶された対象出力信号ＤＤＤのレベルのみである。
【００３９】
対象出力信号及び出力仕様信号のデータが読み出されると、これらのデータに基づいて検証対象回路１３及び外部周辺回路の状態を判断する（ステップ１３）。ここで、外部周辺回路及び検証対象回路１３の状態がマイクロプロセッサ１１から検証対象回路１３へ特定の動作指示信号を出力してもよい状態であると判断した場合には、マイクロプロセッサ１１は、検証対象回路１３へ特定の動作指示信号を出力すると共に（ステップ１４）、メモリ１２に特定の動作指示信号およびこのメモリアドレスを出力し、この特定の動作指示信号をメモリ１２の該当アドレスの位置に記憶する（ステップ１５）。
【００４０】
検証対象回路１３は、この動作指示信号を受信すると、所定の動作を行い、例えば、対象出力信号を周辺回路シミュレータ２０に出力する（ステップ１６）。周辺回路シミュレータ２０の信号入力部２４は、この対象出力信号を受信すると、この対象出力信号のメモリアドレスを定めて、対象出力信号と共にメモリアドレスをバスコントロールインタフェース２５へ渡す。バスコントロールインタフェース２５は、対象装置１０へメモリ１２の該当アドレスの位置に、検証対象回路１３からの対象出力信号を記憶する（ステップ１７）。
【００４１】
以上のように、本実施形態では、マイクロプロセッサ１１及び検証対象回路１３を有する対象装置１０から物理的に独立した回路シミュレータ２０を設け、この回路シミュレータ２０が対象装置１０のバス１５を通る信号を観察して、マイクロプロセッサ１１からの信号を受信するようにしたので、対象装置１０が実際に存在するものであっても、また、対象装置１０がコンピュータ上に存在するモデルであっても対応することができる。
【００４２】
また、本実施形態では、回路シミュレータ２０がマイクロプロセッサ１１及び検証対象回路１３を有する対象装置１０から独立していても、検証対象回路１３と周辺回路シミュレータ２０の動作をマイクロプロセッサ１１で一元的に管理しているので、検証対象回路１３の状態と周辺回路シミュレータ２０の状態との関係を知るためにわざわざ前もってシミュレートしなくても、検証対象回路１３の状態に応じた信号をマイクロプロセッサ１１や周辺回路シミュレータ２０から出力することができる。
【００４３】
さらに、回路シミュレータ２０と対象装置１０とが独立した存在であっても、検証結果を示すデータは、対象装置１０内のメモリ１２に一元的に登録されるので、検証結果の確認を容易に行うことができる。なお、対象装置１０内のメモリ１２は、マイクロプロセッサ１１が論理的に一つのメモリであると認識できればよく、物理的に複数存在していてもよい。
【００４４】
また、本実施形態では、回路検証プログラム、テーブル内容及び信号解読部２１の内容を書き換えれば、他の検証対象回路であっても、また、他の仕様のマイクロプロセッサであっても対応することができるので、汎用性を高めることができる。
【００４５】
ところで、以上の実施形態では、検証対象回路１３から周辺回路シミュレータ２０への対象出力信号を、対象装置１０のメモリ１２に記憶するために、周辺回路シミュレータ２０内にバスコントロールインタフェース２５を設けたが、この対象出力信号を対象装置１０のメモリ１２に記憶させずに、周辺回路シミュレータ２０内の信号入力部２４にと留めておくのであれば、バスコントロールインタフェース２５を省略することができる。この場合、図９中のステップ１１，１７は、当然省略される。
【００４６】
次に、図１０を用いて、本発明に係る回路検証方法の第二の実施形態について説明する。
【００４７】
この実施形態で対象装置１０ａは、マイクロプロセッサ１１、検証対象回路１３、外部インタフェース１４、これらを接続するバス１５を備えているものの、第一の実施形態のようにメモリを備えていない。なお、ここでは、対象装置１０ａ内にメモリを備えていないものを例にしたが、これは、あくまでも対象装置１０ａ内のメモリをプログラム及び各種信号の記録用として用いないということを理解し易くするためであり、実際にメモリを備えているものであっても構わない。
【００４８】
また、検証対象回路１３と接続予定の外部周辺回路の動作を模擬する周辺回路シミュレータ２０ａは、対象装置１０と物理的に独立した存在で、信号解読部２１、テーブル２２、信号出力部２３を備えているものの、第一の実施形態のように、信号入力部及びバスコントロールインタフェースを備えていない。
【００４９】
この実施形態では、対象装置１０ａ内のメモリを用いないことから、プログラム及び各種信号の記録用として、対象装置１０ａ及び周辺回路シミュレータ２０ａに対して物理的に独立した存在のメモリ１２ａを用いる。このメモリ１２ａは、バス１５及び外部バスインタフェース１４を介して、マイクロプロセッサ１１と接続されている。なお、このメモリ１２ａは、周辺回路シミュレータ２０ａ内に設けてもよい。
【００５０】
また、この実施形態では、周辺回路シミュレータ２０ａ内に、検証対象回路１３からの対象出力信号を受信する信号入力部がないことから、外部周辺回路への対象出力信号を受信すべく、検証対象回路１３にアナライザ１７を接続させている。
【００５１】
対象装置１０のマイクロプロセッサ１１は、メモリ１２ａに記憶されている検証プログラム１６ａに従って動作する。仮に、この検証プログラム１６ａ中の命令列が検証対象回路１３への動作指示信号の出力命令である場合には、第一の実施形態で図９を用いて説明したＡケースと同様に、検証対象回路１３及びメモリ１２ａへ所定の動作指示信号を出力する（ステップ１，２）。検証対象回路１３が、この動作指示信号を受信すると、マイクロプロセッサ１１に対して対象出力信号を出力し（ステップ３）、マイクロプロセッサ１１は、これをメモリ１２ａに記憶する（ステップ４）。
【００５２】
次に、検証プログラム中の命令列が検証対象回路１３の状態に応じて、周辺回路シミュレータ２０を動作させよ、という命令である場合について説明する。この場合は、第一の実施形態でのケースＢと同様に、マイクロプロセッサ１１は、メモリ１２ａに記憶した対象出力信号のデータを読み出し（ステップ５）、この対象出力信号のデータに基づいて検証対象回路１３の状態を判断する（ステップ６）。検証対象回路１３へ周辺回路出力信号を出力してもよい状態であると判断した場合には、マイクロプロセッサ１１は、周辺回路出力信号の仕様を示す出力仕様信号を周辺回路シミュレータ２０ａ及びメモリ１２ａへ出力する（ステップ７，８）。周辺回路シミュレータ２０ａは、出力仕様信号を受信すると、この出力仕様信号に応じた周辺回路出力信号を検証対象回路１３へ出力する（ステップ９）。検証対象回路１３は、この周辺回路出力信号を受信すると、対象出力信号を出力する（ステップ１０）。なお、この対象出力信号は、アナライザ１７に入力することになる。
【００５３】
以上のように、本実施形態でも、第一の実施形態と同様に、マイクロプロセッサ１１及び検証対象回路１３を有する対象装置１０ａから物理的に独立した回路シミュレータ２０ａを設け、この回路シミュレータ２０ａが対象装置１０ａのバス１５を通る信号を観察して、マイクロプロセッサ１１からの信号を受信するようにしたので、対象装置１０ａが実際に存在するものであっても、また、対象装置１０ａがコンピュータ上に存在するモデルであっても対応することができる。
【００５４】
さらに、検証対象回路１３と周辺回路シミュレータ２０ａの動作をマイクロプロセッサ１１で一元的に管理しているので、検証対象回路１３の状態と周辺回路シミュレータ２０の状態との関係を知るためにわざわざ前もってシミュレートしなくてもよい。
【００５５】
【発明の効果】
本発明によれば、マイクロプロセッサから物理的に独立した回路シミュレータを設け、この回路シミュレータがマイクロプロセッサに接続されているバスを通る信号を観察して、この信号に基づいて動作するようにしたので、マイクロプロセッサや検証対象回路が実際に存在するものであっても、また、マイクロプロセッサや検証対象回路がコンピュータ上に存在するモデルであっても対応することができる。
【００５６】
また、検証対象回路と周辺回路シミュレータの動作をマイクロプロセッサ１１で一元的に管理しているので、検証対象回路の状態と周辺回路シミュレータの状態との関係を知るためにわざわざ前もってシミュレートしなくてもよくなり、検証工数を抑えることができる。
【００５７】
さらに、本発明では、回路検証プログラムや信号解読部の内容を書き換えれば、他の検証対象回路であっても、また、他の仕様のマイクロプロセッサであっても対応することができるので、汎用性を高めることができる。
【図面の簡単な説明】
【図１】本発明に係る第一の実施形態における対象装置及び周辺回路シミュレータの機能ブロック図である。
【図２】本発明に係る第一の実施形態におけるメモリ内の記憶領域を示す説明図である。
【図３】本発明に係る第一の実施形態におけるテーブル構成を示す説明図である。
【図４】本発明に係る第一の実施形態における出力仕様信号のデータフォーマットを示す説明図である。
【図５】本発明に係る第一の実施形態における出力仕様信号を出力させるための命令列を示す説明図である。
【図６】本発明に係る第一の実施形態における出力仕様信号及び周辺回路出力信号のタイミングチャートである。
【図７】本発明に係る第一の実施形態における対象出力信号のデータを読み出させる命令列を示す説明図である。
【図８】本発明に係る第一の実施形態における対象出力信号のデータを読み出しを示すタイミングチャートである。
【図９】本発明に係る第一の実施形態における対象装置及び周辺回路シミュレータの動作を示すシーケンス図である。
【図１０】本発明に係る第二の実施形態における対象装置及び周辺回路シミュレータの機能ブロック図である。
【符号の説明】
１０，１０ａ…対象装置、１１…マイクロプロセッサ、１２，１２ａ…メモリ、１３…検証対象回路、１４…外部バスインタフェース、１５…バス、１６，１６ａ…回路検証プログラム、１７…アナライザ、２０，２０ａ…周辺回路シミュレータ、２１…信号解読部、２２…テーブル、２３…信号出力部、２４…信号入力部、２５…バスコントロールインタフェース。
【図１】
2004252824.tif 000003
【図２】
2004252824.tif 000004
【図３】
2004252824.tif 000005
【図４】
2004252824.tif 000006
【図５】
2004252824.tif 000007
【図６】
2004252824.tif 000008
【図７】
2004252824.tif 000009
【図８】
2004252824.tif 000010
【図９】
2004252824.tif 000011
【図１０】
2004252824.tif 000012