(57)【要約】【課題】バスプロトコル内で実現しうる全てのバスマスタのアクセスパターンを保持することにより、複雑なシステム動作の検証を確実に実行する。【解決手段】  スレーブに対する動作検証用のテストパタンをシステムバス１６に出力し、スレーブからの応答信号を受領するテスト用マスタ１２と、テストパタン及び対応する期待値を保持する手段１３ａと比較手段１３ｂとを備え、テスト用マスタ１２を介してテストパタンを出力した際のスレーブからの応答信号と前記期待値とを比較する機能を有するＢＩＳＴ及びメモリ回路１３と、外部インターフェース１５を介して前記テストパタン及び前記期待値を前記保持手段に入力する為のＢＩＳＴインターフェース回路１４とを備えている。【選択図】  図１
2006252267.tif 000002
【特許請求の範囲】
【請求項１】
複数のマスタとスレーブがシステムバスを介して接続されたシステムに於ける動作を検証する為のシステム検証用回路であって、
スレーブに対する動作検証用のテストパタンを前記システムバスに出力し、スレーブからの応答信号を受領するテスト用マスタと、
テストパタン及び対応する期待値を保持する手段と比較手段とを備え、前記テスト用マスタを介してテストパタンを出力した際のスレーブからの応答信号と前記期待値とを比較するＢＩＳＴ及びメモリ回路と、
外部インターフェースを介して前記テストパタン及び前記期待値を前記保持手段に入力する為のＢＩＳＴインターフェース回路と、
を備えていることを特徴とするシステム検証用回路。
【請求項２】
前記ＢＩＳＴインターフェース回路は、外部インターフェースに代えて、前記システムバスから前記テストパタン及び期待値を前記保持手段に入力する為の手段であることを特徴とする請求項１記載のシステム検証用回路。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、マスタ・デバイス／スレーブ・デバイスから構成されるシステムの検証用回路に関する。
【背景技術】
【０００２】
高速なデータ転送を要求するシステムでは、ＣＰＵ以外に自発的にスレーブ・デバイスに対してアクセスするマスタ・デバイスを備えることがある。
【０００３】
図６は、そのようなマスタ・デバイス（以下、単にマスタと称することがある）及びスレーブ・デバイス（以下、単にスレーブと称する場合がある）を備える従来のシステムの構成を示すブロック図である。このような複数のマスタ・デバイスを持つシステムでは、各々のマスタが自発的に動作するため、全ての動作検証をコンピュータ上のシミュレーションで行おうとすると、膨大な実行時間がかかる。
【０００４】
このようなシステムの検証に有効な方式として、プロトタイピング方式がある。プロトタイピング方式とは、ＣＰＵチップ（又はＩＣＥ：  Ｉｎ−Ｃｉｒｃｕｉｔ  Ｅｍｕｌａｔｏｒ）、メモリ等の部品、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等で実装したＡＳＩＣ回路をボード上に実装（Ｐｒｏｔｏｔｙｐｉｎｇ：プロトタイピング）し、エミュレーションによりシステム検証を行う方式である。
【０００５】
図７は、そのようなプロトタイピング基板の内部構成を示すブロック図である。この図では、例として図６で示したシステムをＦＰＧＡに実装し、これを検証のターゲットとしたプロトタイピング基板の構成図を示している。
【０００６】
図８は、図６のシステムで使用するバスプロトコルを説明する為の図である。転送タイプを表す信号（ｔｒａｎｓ）はアドレスが連続するか否かを示す信号であり、この値が”ＮＳＱ”の時にアドレスが非連続、”ＳＥＱ”の時にはアドレスが連続することを示す。また、信号（ｂｕｒｓｔ）は転送回数に関する情報を示しており、この値が”ＦＩＸＥＤ”の時には予め決まった転送数で転送が行われることを示し、”ＩＮＣＲ”の時には転送数が未定であることを示している。信号（ｗｄａｔａ）はマスタからスレーブに対する書き込みデータを示している。
【０００７】
信号（ｒｅａｄｙ、ｒｅｓｐ、ｒｄａｔａ）はマスタ・デバイスの出力するアドレス、転送タイプに対するスレーブの応答信号を示しており、それぞれ転送要求の受取完了、転送の完了状態、リードデータを示している。信号（ｒｅｓｐ）は転送の完了状態を示しており、この値が”ＯＫ”の時は転送が正常に完了したことを示し、”ＥＲＲ”の時は転送が異常に完了したことを示している。
【０００８】
すなわち、このプロトコルは、マスタ・デバイスが発行するアドレス、転送タイプに対してスレーブがｒｅａｄｙ、ｒｅｓｐ、ｒｄａｔａ信号で応答するというプロトコルである。
【０００９】
【特許文献１】特表２００３−５２９１４５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
図６に示した複数のマスタ・デバイスを持つシステムの検証方式には、以下の問題点があった。
（１）これまで検証の目的動作を実現するためＣＰＵなどのマスタを使用してきた。ＣＰＵが発行する転送タイプ、転送回数はある程度固定されており、システムで許容される全ての転送タイプ、転送回数をカバーしきれていない。例えば、ＣＰＵは図８に示したバスプロトコルの転送回数（ｂｕｒｓｔ）の値として予め決まった値”ＦＩＸＥＤ”のみを使用する動作であるとき、転送回数（ｂｕｒｓｔ）が”ＩＮＣＲ”のバスプロトコルを検証することができない。ＣＰＵまたその他のマスタの動作は、それぞれ必要とする機能に応じて決定された仕様に基づくものであり、通常バスプロトコルの全ての動作を使用するマスタは存在しない。これらのマスタは、マスタの機能として許される機能の一部分のみを使用するものであり、複雑なシステム動作を目的とする検証を実現するには不十分であった。
【００１１】
（２）ＣＰＵなどの特定用途を目的としたマスタは、任意のテストパターン（マスタのアクセスパターン、スレーブ応答の期待値）を保持する機構を兼ね備えておらず、テストパターンを実施するためにはマスタ外部の記憶装置（メモリ等のスレーブ）から、逐次、読み出しを実施する必要があった。例えばＣＰＵの場合、任意のテストパターンを実施するためには、メモリから複数の命令の読み出しを行う必要がある。この複数の命令読み出しのオーバーヘッドのため、検証の目的が連続したアクセスである場合、これを実現すること困難があった。
【００１２】
（３）検証で発生した不具合の内容が複雑である場合、詳細な原因解析のため、コンピュータ上のシミュレーションにおいて同じ条件の動作を再現する方法が必要となるが、同じ条件の動作を再現するのが困難であるため、この作業には多くの時間を必要としている。
【００１３】
本発明の課題は、バスプロトコル内で実現しうる全てのバスマスタのアクセスパターンを保持することにより、複雑なシステム動作の検証を確実に実行するようにした点にある。
【課題を解決するための手段】
【００１４】
本発明に係るシステム検証用回路の代表的構成によれば、スレーブに対する動作検証用のテストパタンをシステムバスに出力し、スレーブからの応答信号を受領するテスト用マスタと、テストパタン及び対応する期待値を保持する手段と比較手段とを備え、テスト用マスタを介してテストパタンを出力した際のスレーブからの応答信号と前記期待値とを比較するＢＩＳＴ及びメモリ回路と、外部インターフェースを介して前記テストパタン及び前記期待値を前記保持手段に入力する為のＢＩＳＴインターフェース回路とを備えている。
【００１５】
前記ＢＩＳＴインターフェース回路は、外部インターフェースからテストパタン及び期待値を前記保持手段に入力する代わりに、システムバスを介して入力するように構成することも可能である。
【発明の効果】
【００１６】
本発明に係るシステム検証用回路では、システムバスに接続可能な全てのマスタ及びスレーブの機能試験をすることが可能なテストパタンとその期待値をＢＩＳＴ及びメモリ回路の内蔵メモリに保持し、このテストパタンをシステムバスを介してスレーブに出力した際のスレーブからの応答信号を前記期待値と比較することによりシステムの検証をするように構成したので、複雑なシステム動作の検証を確実に実行することが可能となる。
【発明を実施するための最良の形態】
【００１７】
以下、この発明の実施の形態について、図面を用いて詳細に説明する。尚、各図面はこの発明が理解できる程度に概略的に示してあるに過ぎず、各実施形態に於ける同様の機能を有する構成要素については同一の参照番号を付与している。
【００１８】
（１）第１の実施形態
図１は、第１の実施形態に係るシステム検証用回路１１を含むシステムの構成を示す図である。この実施形態のシステム検証用回路１１は、テスト用マスタ１２、ＢＩＳＴ及びメモリ回路１３、ＢＩＳＴインターフェース回路１４、シリアルインターフェース１５を備えている。
【００１９】
テスト用マスタ１２は、システムバス１６に接続されており、ＣＰＵ（マスタ１）やＤＭＡ（マスタ２）等のマスタと同様にスレーブに対してマスタアクセスすることができる。
【００２０】
図２は、第１の実施形態に於けるテスト用マスタ１２、ＢＩＳＴ及びメモリ回路１３の内部構成の概要を示す図である。テスト用マスタ１２は、マスタ信号制御回路１２ａおよびスレーブ応答受信回路１２ｂを備えている。このテスト用マスタ１２は、ＢＩＳＴ及びメモリ回路１３からテストパターン入力し、これをマスタ信号制御回路１２ａにてマスタアクセスに変換し、システムバス１６に出力する機能を有する。スレーブ応答受信回路１２ｂは、スレーブの応答を受信しこの受信結果をＢＩＳＴ及びメモリ回路１３に出力する。
【００２１】
ＢＩＳＴ及びメモリ回路１３は、図２に示すように、内蔵メモリ１３ａを備え、ここにテスト用マスタ１２において実施するするテストパターンとそのパターンを用いてスレーブにアクセスした際のスレーブからの応答の期待値を格納している。
【００２２】
図３は、内蔵メモリ１３ａに格納するテストパターンの構成を示す図であり、図８で示したバスプロトコル内で実現しうる全てのマスタのアクセスパターンと、各々のマスタのアクセスに対するスレーブの応答の期待値を記述している。
【００２３】
マスタアクセスパターンは、転送アドレス（ａｄｄｒ）、転送タイプ（ｔｒａｎｓ）、転送回数（ｂｕｒｓｔ）、ライトデータ（ｗｄａｔａ）で構成されている。スレーブの応答の期待値は、転送要求の応答完了サイクル（ｗａｉｔ）、応答信号（ｒｅｓｐ）、リードデータ（ｒｄａｔａ）で構成されている。転送要求の応答完了サイクルは、マスタが転送要求を実施してから応答完了信号（ｒｅａｄｙ）が通知されるべきサイクル数である。
【００２４】
図４は、図８に示した一連の転送タイミングでリードアクセスを実施するためのテストパターンの具体例を示した図であり、テスト用マスタ１２から所定のスレーブのアドレスＡ，Ａ＋１，Ａ＋２，Ａ＋３に対して計４回の転送を行い、それに対応してスレーブから計４回の応答が返送される場合の例を示している。この動作は、（ａ）〜（ｄ）で示したテストパターンによって実施できる。以下、具体的に説明する。
【００２５】
（ａ）のテストパターンは、図８のＴ２サイクルで実施しているマスタアクセスパターン（アドレス”Ａ”，転送タイプ”ＮＳＥＱ”，転送回数”ＦＩＸＥＤ”）と、これに対応するスレーブの応答の期待値（転送要求の応答完了サイクル”２”，応答信号”ＯＫ”，リードデータ”Ｄ０”）を示している。（ａ）のスレーブの応答の期待値は、図８のＴ４サイクルで実施されているスレーブの応答の期待値である。（ｂ）〜（ｄ）のテストパターンも（ａ）と同様に、アドレスＡ＋１〜Ａ＋３の転送とそのスレーブの応答の期待値を示している。
【００２６】
ＢＩＳＴ及びメモリ回路１３は、内蔵メモリ１３ａ内の期待値とスレーブ応答を比較する比較回路１３ｂを有しており、スレーブ応答と期待値との一致判定結果を外部に出力することができる。制御回路１３ｃは、この結果をもとにテスト用マスタ１２の停止などを制御する回路である。
【００２７】
ＢＩＳＴインターフェース回路１４は、テストパターンをＢＩＳＴ及びメモリ回路１３に格納するためのインターフェース回路であり、ＦＰＧＡ外部よりシリアルインターフェース１５を介してテストパターンを格納する構成となっている。
【００２８】
以下、第１の実施形態に於けるシステム検証用回路１１の検証動作を説明する。
（S１）シリアルインターフェース１５からテストパターンを入力する。このテストパターンは、前述のようにマスタアクセスパターン、スレーブ応答の期待値で構成されている。このテストパターンは、ＢＩＳＴインターフェース回路１４を介して、テストパターン格納用の内蔵メモリ１３ａに格納される。
【００２９】
（S２）テスト用マスタ１２を起動する。テスト用マスタ１２は、内蔵メモリ１３ａに格納されているテストパターンに従ってバスにアクセス信号を出力する。テスト用マスタ１２は、このアクセスに対するスレーブから応答信号を受け取る。このスレーブ応答はマスタ動作中に、随時図示しないメモリ回路に記録される。
【００３０】
（S３）メモリ回路に記録されたスレーブからの応答信号と、内蔵メモリ１３ａに格納してある期待値を比較回路１３ｂにて比較する。制御回路１３ｃは、スレーブからの応答と期待値とが不一致の場合、不一致が起きた時点での内蔵メモリ１３ａのアドレスを記録し、テスト用マスタ１２を停止させることが可能である。また、この判定結果は外部に出力することも可能である。
【００３１】
（S４）以上の（S１）〜（S３）の処理を繰り返し実行する。
【００３２】
以上説明したように、第１の実施形態に於いては、次のような効果がある。
（ｅ１）図３で示したテストパターンは、バスプロトコル内で実現しうる全てのマスタのアクセスパターンを記述できるため、複雑なシステム動作を目的とする検証を実現することができる。
【００３３】
（ｅ２）ＢＩＳＴ及びメモリ回路１３は、内部に専用の内蔵メモリ１３ａを有しているので、テストパターン（マスタのアクセスパターン、スレーブ応答の期待値）をマスタ外部の記憶装置（メモリ等のスレーブ）から、読み出しを実施する必要がない。そのため、目的としたマスタアクセスのシーケンスのみを実現することができる。
【００３４】
（ｅ３）図３のテストパターンはまた、１つのマスタアクセスパターンの連続によって構成されているため、コンピュータ上のシミュレーションにおいて全く同じアクセスパターンを実施することができ、またプロトタイピングでの検証で不一致が起きた時点でのメモリアドレスを記録することができるため、詳細な不具合解析のためシミュレーションでの動作の再現が容易である。一方、シミュレーションで開発したマスタアクセスパターンをシステムの検証に流用することも容易である。
【００３５】
（ｅ４）ＢＩＳＴ及びメモリ回路１３に於いて、ＦＰＧＡ外部よりシリアルインターフェース１５およびＢＩＳＴインターフェース回路１４を介して、テストパターン格納用の内蔵メモリ１３ａに任意のテストパターンを書き込むことができる。
【００３６】
（２）第２の実施形態
図５は、第２の実施形態に係るシステム検証回路５１を含むシステムの構成を示す図であり、第１の実施形態に係るシステム検証用回路１１のＢＩＳＴインターフェース回路１４と同様のＢＩＳＴインターフェース回路５２を備えているが、この回路がシステムバス１６に接続されており、シリアルインターフェース端子１５が除去されている点が異なっている。
【００３７】
テスト用マスタ１２は、システムバス１６に接続されており、ＣＰＵ（マスタ１）やＤＭＡ（マスタ２）等のマスタと同様にスレーブに対してアクセスを実施することができる。テスト用マスタ１２は、ＢＩＳＴ及びメモリ回路１３よりマスタアクセスを構成するためのテストパターンを入力し、スレーブからの応答をＢＩＳＴ及びメモリ回路１３に返送する。
【００３８】
ＢＩＳＴ及びメモリ回路１３は、図２に示すように内蔵メモリ１３ａを有しており、このメモリにテスト用マスタ１２が実施するするテストパターンとそのアクセスに対するスレーブ応答の期待値を格納している。このメモリの構成は、図３に示す通りであり、図８で示したバスプロトコル内で実現しうる全てのマスタのアクセスパターンと、各々のマスタのアクセスに対するスレーブの応答の期待値を記述している。
【００３９】
ＢＩＳＴ及びメモリ回路１３は、このメモリ内の期待値とスレーブ応答を比較する比較回路１３ａを有しており、スレーブ応答と期待値との比較判定結果を外部に出力することができる。制御回路１３ｃは、この比較判定結果をもとにテスト用マスタ１２の停止などを制御する。
【００４０】
ＢＩＳＴインターフェース回路５２は、テストパターンをＢＩＳＴ及びメモリ回路１３に格納するためのインターフェース回路である。このＢＩＳＴインターフェース回路５２は、スレーブのインターフェースと同じ機能を持ち、システムバス１６を介してテストパターンを格納する構成となっている。
【００４１】
第２の実施形態に於けるシステム検証回路５１の動作を以下で説明する。
（ＳＳ１）任意のマスタ（ＣＰＵ、ＤＭＡなど）を使用して、テストパターンをプロトタイピング基板上のメモリ５３またはＩ／Ｏインターフェース５４からＢＩＳＴインターフェース回路５２へ転送する。テストパターンは、テストパターン格納用の内蔵メモリ１３ａに格納される。このテストパターンは、マスタアクセスパターン、スレーブ応答の期待値で構成されている。
【００４２】
（ＳＳ２）テスト用マスタ１２を起動する。テスト用マスタ１２は、内蔵メモリ１３ａに格納されているテストパターンに従ってシステムバス１６にアクセス信号を出力する。テスト用マスタ１２は、このアクセスに対するスレーブから応答を受け取る。このスレーブ応答はマスタ動作中に、随時図示しないメモリ回路に記録される。
【００４３】
（ＳＳ３）スレーブからの応答と、内蔵メモリ１３ａに格納してある期待値を比較回路１３ｂにて比較する。制御回路１３ｃは、スレーブからの応答が期待値と一致しない場合、不一致が起きた時点でのメモリアドレスを記録し、テスト用マスタを停止することが可能である。また、この判定結果は外部に出力することができる。
【００４４】
（ＳＳ４）以上の（ＳＳ１）〜（ＳＳ３）の動作を繰り返す。
【００４５】
以上説明したように、第２の実施形態に於いては、第１の実施形態の効果で述べた効果に加えて次のような効果がある。
【００４６】
ＢＩＳＴ及びメモリ回路１３の構成から、マスタ（ＣＰＵ、ＤＭＡなど）を使用して、テストパターンをプロトタイピング基板上のメモリ５３またはＩ／Ｏインターフェース５４からＢＩＳＴインターフェース回路５２へ転送することにより、テストパターン格納用のメモリに任意のテストパターンを書き込むことができる。この方法は、システムバス１６の転送レートがシリアルインターフェースよりも高いため、第１の実施形態で示したシリアルインターフェースを介する方法よりも高速にテストパターンを格納することができる。
【図面の簡単な説明】
【００４７】
【図１】第１の実施形態に係るシステム検証用回路１１を含むシステムの構成を示す図である。
【図２】第１の実施形態に於けるテスト用マスタ１２、ＢＩＳＴ及びメモリ回路１３の内部構成の概要を示す図である。
【図３】内蔵メモリ１３ａに格納するテストパターンの構成を示す図である。
【図４】図８に示した一連の転送タイミングでリードアクセスを実施するためのテストパターンの具体例を示した図である。
【図５】第２の実施形態に係るシステム検証用回路５１を含むシステムの構成を示す図である。
【図６】マスタ・デバイス及びスレーブ・デバイスを備える従来のシステムの構成を示すブロック図である。
【図７】プロトタイピング基板の内部構成を示すブロック図である。
【図８】バスプロトコルを説明する為の図である。
【符号の説明】
【００４８】
１１，５１    システム検証用回路
１２      テスト用マスタ
１２ａ    マスタ信号制御回路
１２ｂ    スレーブ応答受信回路
１３      ＢＩＳＴ及びメモリ回路
１３ａ    内蔵メモリ
１３ｂ    比較回路
１３ｃ    制御回路
１４、５２    ＢＩＳＴインターフェース回路
１５      シリアルインターフェース
１６      システムバス
５３      メモリ
５４      Ｉ／Ｏインターフェース
【図１】
2006252267.tif 000003
【図２】
2006252267.tif 000004
【図３】
2006252267.tif 000005
【図４】
2006252267.tif 000006
【図５】
2006252267.tif 000007
【図６】
2006252267.tif 000008
【図７】
2006252267.tif 000009
【図８】
2006252267.tif 000010