(57)【要約】  １以上の命令列を含むパケット単位で被試験デバイスと通信して、被試験デバイスを試験する試験装置であって、試験装置の各ピンと、被試験デバイスとの間で送受信するパケットの順序を指定するパケット列情報に基づいて、被試験デバイスとの間でパケットを送受信する送受信部と、試験装置の各ピンと、被試験デバイスとの間で送受信したパケットを示す情報を時系列に表示する表示部とを備える試験装置を提供する。表示部には、送受信されたパケットの情報を、試験装置の各ピンについて共通に設定される時間軸に沿って並列に表示する。パケットには、当該パケットの種類を識別する識別情報が含まれており、表示部は、それぞれのパケットの識別情報を含む情報を表示する。
2010067471.tif 000002
【特許請求の範囲】
【請求項１】
１以上の命令列を含むパケット単位で被試験デバイスと通信して、前記被試験デバイスを試験する試験装置であって、
前記試験装置の各ピンと、前記被試験デバイスとの間で送受信する前記パケットの順序を指定するパケット列情報に基づいて、前記被試験デバイスとの間で前記パケットを送受信する送受信部と、
前記試験装置の各ピンと、前記被試験デバイスとの間で送受信した前記パケットを示す情報を時系列に表示する表示部と
を備える試験装置。
【請求項２】
前記表示部は、送受信された前記パケットの情報を、前記試験装置の各ピンについて共通に設定される時間軸に沿って並列に表示する
請求項１に記載の試験装置。
【請求項３】
前記パケットには、当該パケットの種類を識別する識別情報が含まれており、
前記表示部は、それぞれの前記パケットの前記識別情報を含む情報を表示する
請求項１または２に記載の試験装置。
【請求項４】
前記試験装置は、前記被試験デバイスとの間で送受信した前記パケットの前記識別情報を検出する検出部を更に備え、
前記表示部は、前記検出部が検出した前記識別情報を含む情報を表示する
請求項３に記載の試験装置。
【請求項５】
前記表示部は、それぞれの前記パケットの種類に応じて、各パケットの表示の態様を異ならせる
請求項１から４のいずれかに記載の試験装置。
【請求項６】
前記被試験デバイスから受信した所定の前記パケットのデータ値と、予め定められた期待値とを比較する比較部を更に備え、
前記表示部は、前記比較部における比較結果に応じて、当該パケットの表示の態様を異ならせる
請求項１から５のいずれかに記載の試験装置。
【請求項７】
前記表示部は、前記パケット列情報のソースコードを、当該パケット列情報に応じて送受信された前記パケットを示す情報と併せて表示する
請求項１から６のいずれかに記載の試験装置。
【請求項８】
前記表示部が表示した前記パケット列情報のソースコードのいずれかの箇所を指定し、且つ、当該箇所を変更する編集情報を受け取った場合に、前記パケット列情報のソースコードの当該箇所を変更する編集部を更に備える
請求項７に記載の試験装置。
【請求項９】
前記表示部が表示した前記パケットを示す情報のうち、いずれかを指定する指定情報を受け取った場合に、前記指定情報に対応する前記パケットのソースコードを前記表示部に表示させるパケット指定部を更に備える
請求項８に記載の試験装置。
【請求項１０】
前記編集部は、前記表示部が表示した前記パケットのソースコードのいずれかの箇所を指定し、且つ、当該箇所を変更する編集情報を受け取った場合に、前記パケットのソースコードの当該箇所を変更する
請求項９に記載の試験装置。
【請求項１１】
１以上の命令列を含むパケット単位で被試験デバイスと通信して試験装置をデバッグするデバッグ方法であって、
前記試験装置は、
前記試験装置の各ピンと、前記被試験デバイスとの間で送受信する前記パケットの順序を指定するパケット列情報に基づいて、前記被試験デバイスとの間で前記パケットを送受信する送受信部を備え、
前記試験装置の各ピンと、前記被試験デバイスとの間で送受信した前記パケットを示す情報を時系列に表示するデバッグ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、試験装置およびデバッグ方法に関する。本出願は、下記の米国出願に関連し、下記の米国出願からの優先権を主張する出願である。文献の参照による組み込みが認められる指定国については、下記の出願に記載された内容を参照により本出願に組み込み、本出願の一部とする。
出願番号  １２／３２９，６３５    出願日  ２００８年１２月８日
【背景技術】
【０００２】
従来の半導体デバイス等の試験装置においては、所定のパターンを有する試験信号を被試験デバイスに入力し、当該試験信号に応じて被試験デバイスが出力する信号を測定することにより、被試験デバイスの良否を判定している。所定のパターンを用いて被試験デバイスを試験する試験装置については、特許文献１に記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−０５８２５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところが、被試験デバイスの回路規模の増大に伴い、試験信号に求められるパターンは複雑化している。特に、パケット形式でデータを送受信する機能を有する被試験デバイスを試験する場合には、試験装置は、被試験デバイスとの間でデータのハンドシェイクをしなければならない。また、試験装置は、ハンドシェイク中において被試験デバイスからの応答を待機している間も、直ぐに応答ができるように次の送信の準備およびウェイトパケット等を送信しなければならない。【０００５】
従って、パケット形式でデータを送受信する機能を有するデバイスを試験する場合、複雑な試験パターンを試験装置に入力しなければならなかった。また、試験パターンは「１」または「０」のデータ列なので、ハンドシェイクする試験パターンが正しく送受信されているかどうかの識別をすることは困難であった。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の第１の態様においては、１以上の命令列を含むパケット単位で被試験デバイスと通信して、被試験デバイスを試験する試験装置であって、試験装置の各ピンと、被試験デバイスとの間で送受信するパケットの順序を指定するパケット列情報に基づいて、被試験デバイスとの間でパケットを送受信する送受信部と、試験装置の各ピンと、被試験デバイスとの間で送受信したパケットを示す情報を時系列に表示する表示部とを備える試験装置を提供する。【０００７】
上記課題を解決するために、本発明の第２の態様においては、表示部は、送受信されたパケットの情報を、試験装置の各ピンについて共通に設定される時間軸に沿って並列に表示する試験装置を提供する。【０００８】
上記課題を解決するために、本発明の第３の態様においては、パケットには、当該パケットの種類を識別する識別情報が含まれており、表示部は、それぞれのパケットの識別情報を含む情報を表示する試験装置を提供する。【０００９】
上記課題を解決するために、本発明の第４の態様においては、被試験デバイスとの間で送受信したパケットの識別情報を検出する検出部を更に備え、表示部は、検出部が検出した識別情報を含む情報を表示する試験装置を提供する。【００１０】
上記課題を解決するために、本発明の第５の態様においては、表示部は、それぞれのパケットの種類に応じて、各パケットの表示の態様を異ならせる試験装置を提供する。【００１１】
上記課題を解決するために、本発明の第６の態様においては、被試験デバイスから受信した所定のパケットのデータ値と、予め定められた期待値とを比較する比較部を更に備え、表示部は、比較部における比較結果に応じて、当該パケットの表示の態様を異ならせる試験装置を提供する。【００１２】
上記課題を解決するために、本発明の第７の態様においては、表示部は、パケット列情報のソースコードを、当該パケット列情報に応じて送受信されたパケットを示す情報と併せて表示する試験装置を提供する。【００１３】
上記課題を解決するために、本発明の第８の態様においては、表示部が表示したパケット列情報のソースコードのいずれかの箇所を指定し、且つ、当該箇所を変更する編集情報を受け取った場合に、パケット列情報のソースコードの当該箇所を変更する編集部を更に備える試験装置を提供する。【００１４】
上記課題を解決するために、本発明の第９の態様においては、表示部が表示したパケットを示す情報のうち、いずれかを指定する指定情報を受け取った場合に、指定情報に対応するパケットのソースコードを表示部に表示させるパケット指定部を更に備える試験装置を提供する。【００１５】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００１６】
【図１】本実施形態に係る試験装置１０の構成を示す。
【図２】試験プログラム、プロシージャ、パケットリスト、およびパケットの関係を示す。
【図３】パケットリストを表わすプロシージャの一例を示す。
【図４】ウェイトパケットを生成するための命令列、およびウェイトパケットに含まれるデータ列の一例を示す。
【図５】ライトパケットを生成するための命令列およびライトパケットに含まれるデータ列の一例を示す。
【図６】表示部１０６が表示する画面の一例を示す。
【図７】他の実施形態に係る試験装置１０の構成を示す。
【図８】ライトパケットが指定された場合のパケット関数のソースコードおよびデータの表示例を示す。
【図９Ａ】他の実施形態に係るプロシージャのソースコードの表示例を示す。
【図９Ｂ】他の実施形態に係るプロシージャのソースコードの表示例を示す。
【図１０】実行処理部１１の構成の一例を示す。
【図１１】送信側ブロック１２の構成の一例を示す。
【図１２】受信側ブロック１４の構成の一例を示す。
【符号の説明】
【００１７】
１０  試験装置、１１  実行処理部、１２  送信側ブロック、１４  受信側ブロック、２０  パケットリスト記憶部、２２  パケットリスト処理部、２４  パケット命令列記憶部、２６  パケットデータ列記憶部、２８  下位シーケンサ、３２  データ処理部、３４  送信部、４０  共通データ記憶部、４２  共通データポインタ、４４  個別データ記憶部、８２  受信部、８４  判定部、１００  送受信部、１０２  メイン制御部、１０４  メインメモリ、１０６  表示部、１０８  検出部、１１０  比較部、１１２  編集部、１１４  パケット指定部、１２２  試験プログラム記憶部、１２４  プログラム供給部、１２６  フロー制御部、２００  被試験デバイス
【発明を実施するための形態】
【００１８】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１９】
図１は、本実施形態に係る試験装置１０の構成を示す。試験装置１０は、１以上の命令列を含むパケット単位で被試験デバイス２００と通信して、被試験デバイス２００を試験する。試験装置１０は、送受信部１００、メイン制御部１０２、メインメモリ１０４、表示部１０６、検出部１０８、および比較部１１０を備える。
【００２０】
送受信部１００は、試験装置１０の各ピンと被試験デバイス２００との間で送受信するパケットの順序を指定するパケット列情報（以下、パケットリストと称する）が記述されているプロシージャに基づいて、被試験デバイス２００との間でパケットを送受信する。具体的には、送受信部１００は、１以上の連続したプロシージャを含む試験プログラムを実行することにより、被試験デバイス２００との間でパケットを送受信する。送受信部１００は、不揮発性メモリ等の記憶媒体に当該試験プログラムを格納してよい。
【００２１】
例えば、試験装置１０は、被試験デバイス２００に対してデータを書き込む機能を有するライト（Ｗｒｉｔｅ）パケット、被試験デバイス２００からデータを読み出す機能を有するリード（Ｒｅａｄ）パケット、および被試験デバイス２００に試験用データを入力する機能を有するテスト（Ｔｅｓｔ）パケット等の複数の種類のパケットを送受信してよい。試験装置１０は、上記機能を実行するパケットを送信しない間は、被試験デバイス２００に対して機能を実行しないアイドル状態を示す情報を含むウェイト（Ｗａｉｔ）パケットを送信してよい。
【００２２】
試験装置１０は、複数のピンを有してよく、それぞれのピンが被試験デバイス２００の異なる複数のピンに接続されてよい。試験装置１０および被試験デバイス２００は、当該ピンを介して、ＵＳＢ、ＩＥＥＥ１３９４などの形式のシリアル通信データを送受信してよい。送受信部１００は、プロシージャに記述されているパケットリストに応じて、被試験デバイス２００の複数のピンとの間で順次パケットを送受信してよい。
【００２３】
送受信部１００は、実行処理部１１、送信側ブロック１２、および受信側ブロック１４を有する。実行処理部１１は、１以上の連続したプロシージャを含む試験プログラムを実行する。送信側ブロック１２は、実行処理部１１の制御を受けて、被試験デバイス２００の入力ピンに対してパケットを送信する。具体的には、送信側ブロック１２は、実行処理部１１が実行するプロシージャに記述されているパケットリストにより指定されるパケットを所定の形式に組み立てた上で、被試験デバイス２００に送信する。
【００２４】
受信側ブロック１４は、被試験デバイス２００の出力ピンが出力するパケットを受信する。受信側ブロック１４は、被試験デバイス２００から受信したパケットに含まれるデータ値を、変数値として実行処理部１１に入力してよい。
【００２５】
メイン制御部１０２は、試験装置１０の動作を制御する。例えば、メイン制御部１０２は、送受信部１００に対してパケットの送受信の開始を指示する。メインメモリ１０４は、送受信部１００が送信するパケットに含めるデータ、および送受信部１００が受信するパケットに含まれるデータを格納する。
【００２６】
表示部１０６は、試験装置１０の各ピンと、被試験デバイス２００との間で送受信したパケットを示す情報を時系列に表示する。パケットを示す情報とは、例えば、パケット種別を示す情報、パケットに対応するソースコード、およびパケットが含むデータ値等であってよい。表示部１０６は、送受信部１００が被試験デバイス２００に対して実際に送受信したパケットに対応する情報を表示してよい。また、表示部１０６は、シミュレーションにより、送受信部１００が送受信する擬似的なパケットに対応する情報を表示してもよい。
【００２７】
表示部１０６は、送受信されたパケットの情報を、試験装置１０の各ピンについて共通に設定される時間軸に沿って並列に表示する。例えば、試験装置１０が受信ピンＲＸ０およびＲＸ１、ならびに、送信ピンＴＸ０の３種類のピンを有する場合、表示部１０６は、表示画面の水平方向にＲＸ０、ＲＸ１、およびＴＸ０に対応する表示領域を配置してよい。表示部１０６は、それぞれのピンに対応する表示領域内の垂直方向に、送受信時間の順番に、それぞれのピンで送受信されたパケットを示す情報を表示してよい。
【００２８】
送受信部１００は、送受信するパケットの種類を識別する識別情報を含むパケットを送受信する。例えば、送受信部１００は、送受信するパケットがライトパケット、リードパケット、テストパケット、およびウェイトパケットのいずれに該当するかを示す情報をパケットに付してよい。
【００２９】
検出部１０８は、送受信部１００に接続される。検出部１０８は、送受信部１００が被試験デバイス２００との間で送受信したパケットの識別情報を検出する。検出部１０８は、送信側ブロック１２が被試験デバイス２００に送信するパケットの識別情報、および受信側ブロック１４が被試験デバイス２００から受信するパケットの識別情報を検出する。検出部１０８は、実行処理部１１からパケットリストを取得することにより、パケットの識別情報を検出してもよい。例えば、検出部１０８は、パケットリスト内のパケット関数名をパケットの識別情報として検出してよい。
【００３０】
検出部１０８は、検出した識別情報を表示部１０６に入力する。表示部１０６は、検出部１０８が検出した識別情報を含む情報を表示する。表示部１０６は、それぞれのパケットの種類に応じて、各パケットの表示の態様を異ならせてよい。例えば、表示部１０６は、パケットの種類に応じて、異なる色または模様を用いて表示してよい。
【００３１】
比較部１１０は、被試験デバイス２００から受信した所定のパケットのデータ値と、予め定められた期待値とを比較する。比較部１１０は、受信側ブロック１４が受信したパケットを受け取り、当該パケットに含まれるデータを実行処理部１１から取得した期待値と比較してよい。比較部１１０は、比較した結果を表示部１０６に入力する。比較部１１０は、受信側ブロック１４に含まれてもよい。
【００３２】
表示部１０６は、比較部１１０における比較結果に応じて、当該パケットの表示の態様を異ならせてよい。例えば、受信側ブロック１４が受信したパケットが含むデータが期待値と一致する場合と、受信側ブロック１４が受信したパケットが含むデータが期待値と一致しない場合とで、異なる色または模様を用いて表示してよい。
【００３３】
さらに、表示部１０６は、プロシージャのソースコードを、パケットリストに応じて送受信されたパケットを示す情報と併せて表示する。プロシージャのソースコードは、送受信するパケット種別に応じたパケット関数を記述したコードである。表示部１０６は、表示画面中に複数のウィンドウを設けてよい。表示部１０６は、第１のウィンドウに、送受信部１００が送受信するパケットが含むデータを示す情報を表示すると同時に、第２のウィンドウに、送受信部１００がプロシージャのソースコードを表示してよい。
【００３４】
図２は、試験プログラム、プロシージャ、パケットリスト、およびパケットの関係を示す。試験装置１０が実行する試験プログラムは、１以上のプロシージャを含む。それぞれのプロシージャは、被試験デバイス２００に対してパケットを送受信する順序を示すパケットリストを特定する情報を含む。
【００３５】
例えば、同図におけるプロシージャ１は、ＲＸ０、ＲＸ１、およびＴＸ０の各ピンにおいて送受信するパケットリストを特定する情報を含む。それぞれのピンに対応するパケットリストは、テスト（Ｔｅｓｔ）パケット、ライト（Ｗｒｉｔｅ）パケット、リード（Ｒｅａｄ）パケット、ウェイト（Ｗａｉｔ）パケット等の異なる種別の複数のパケットを含む。
【００３６】
図２に示す例において、送受信部１００は、まずＲＸ０ピンからテストパケットを送信する。送受信部１００は、ＲＸ０からテストパケットを送信する間は、他のピンからウェイトパケットを送信する。送受信部１００は、ＲＸ０におけるテストパケットの送信が終了すると、ＴＸ０ピンからリードパケットを送信して、リードパケット内の情報で指定するアドレスのデータを読み出す。次に、送受信部１００は、ＲＸ１ピンからライトパケットを送信して、ライトパケット内の情報で指定する被試験デバイス２００内のアドレス領域にデータを書き込む。送受信部１００は、ＴＸ０ピンから読み出したデータをＲＸ１ピン経由で書き込んでもよい。
【００３７】
各パケットには、例えば、スタートコードおよびエンドコードが含まれる。更に、各パケットには、当該パケットの種類を表わすコマンドが含まれる。このようなスタートコード、エンドコードおよびコマンドは、パケットの種類ごとに定められる。各パケットのデータ領域には、試験プログラムのソースコードに記述されているデータが格納される。
【００３８】
図３は、パケットリストを記述したプロシージャの一例を示す。送受信部１００は、図３に示されるプロシージャを含む試験プログラムを実行する。当該試験プログラムには、順次実行される複数の命令と、複数の命令のそれぞれに対応して記述されたパケットの種類およびパラメータと、対応する種類のパケットを生成するための命令列およびデータ列の格納位置を示すアドレスが記述される。
【００３９】
具体的には、当該試験プログラムは、一例として、ＮＯＰ命令、ＩＤＸＩ命令およびＥＸＩＴ命令等を含む。ＮＯＰ命令は、当該ＮＯＰ命令に対応付けられたパケットを１回生成して、実行を次の命令に遷移させる。ＩＤＸＩ命令は、当該ＩＤＩＸ命令に対応付けられたパケットを、指定した回数分繰り返して生成して、実行を次の命令に遷移させる。ＥＸＩＴ命令は、当該ＥＸＩＴ命令に対応付けられたパケットを１回生成して、当該パケットリストの実行を終了させる。当該試験プログラムは、このような命令に限らず含むことができ、例えば、指定された条件に一致したか否かに応じて次の実行すべき命令を分岐させる分岐命令等を含んでもよい。
【００４０】
また、当該試験プログラムには、一例として、ライトパケット、リードパケット、および所定のコードを繰り返して発生するウェイトパケット等を識別するパケットの種類が記述される。また、当該試験プログラムは、一例として、当該パケットを生成するための命令列が格納された先頭アドレス、当該パケットに含まれる共通データの先頭アドレスおよび当該パケットに含まれる個別データの先頭アドレスを含む。
【００４１】
図４は、ウェイトパケットを生成するための命令列、およびウェイトパケットに含まれるデータ列の一例を示す。図５は、ライトパケットを生成するための命令列およびライトパケットに含まれるデータ列の一例を示す。
【００４２】
図６は、表示部１０６が表示する画面の一例を示す。表示部１０６は、一例として、画面の左側に、プロシージャのソースコードを表示する。表示部１０６は、画面の右側に、当該ソースコードに対応するパケットリストに関する情報を表示する。
【００４３】
表示部１０６は、ＲＸ０、ＲＸ１、ＴＸ０のそれぞれのピンで送受信されるパケットリストに関する情報が表示される。具体的には、表示部１０６は、送受信した時間の順番に、パケット種別とパケットが含む情報とを表示する。例えば、表示部１０６は、ＲＸ０ピンについて、テストパケット、ウェイトパケット、ライトパケット、およびリードパケットを順次表示する。表示部１０６は、パケット種別ごとに異なる色または模様を付して表示してよい。
【００４４】
また、表示部１０６は、テストパケットを被試験デバイス２００に送信した後に、被試験デバイス２００から取得したデータが期待値と異なる場合には、特定の色または模様を付して結果を表示してよい。例えば、試験装置１０は、図６のＳ６０１において、０ｘ１２３４・・・から成る試験パターンを含むテストパケットをＲＸ０ピンから送信する。また、試験装置１０は、Ｓ６０２において、０ｘ７６５４・・・から成る試験パターンを含むテストパケットをＲＸ０ピンから送信する。
【００４５】
試験装置１０は、それぞれのテストパケットを送信した後に被試験デバイス２００から受信した応答信号を期待値と比較する。表示部１０６は、比較結果が一致している場合には第１の態様の表示をしてよく、比較結果が一致していない場合には第２の態様の表示をしてよい。図６においては、例えば、Ｓ６０１において送信したテストパケットに応じた比較結果は一致しているので、表示部１０６は、網掛け模様を付して表示している。これに対して、Ｓ６０２において送信したテストパケットに応じた比較結果が一致していないので、表示部１０６は、斜線模様を付して表示している。表示部１０６は、比較結果が一致した場合に緑色で表示し、比較結果が一致しない場合に赤色で表示してもよい。
【００４６】
さらに、表示部１０６は、実際に被試験デバイス２００に対して送信されたパケットに対してのみ特定の色または模様を付して表示してもよい。例えば、プロシージャ内に分岐命令があると、分岐条件を満たさないパケット関数が実行されない場合には、当該パケット関数は実行されない。図６においては、Ｓ６０３において分岐条件が満たされていないので、Ｓ６０４においてライトパケットが送信されない。そこで、Ｓ６０４におけるライトパケットには、模様が付されていない。
【００４７】
なお、表示部１０６が表示するピン名は、複数のピンのグループを示す名称であってもよい。例えば、ＲＸ０の表示は、第１の通信種別（例えば、ＵＳＢ）に関連するピンを示し、ＲＸ１の表示は、第２の通信種別（例えば、ＩＥＥＥ１３９４）に関連するピンを示してもよい。
【００４８】
以上説明したように、本実施形態に係る試験装置１０は、被試験デバイス２００に対して、試験プログラムに記述された順序で複数の種類のパケットを送信することにより、被試験デバイス２００を試験する。さらに、試験装置１０は、被試験デバイス２００に送信するパケットに関する情報、およびプロシージャのソースコードを表示する。その結果、試験装置１０のユーザは、実行中の試験内容、あるいは、試験パターンに含まれている誤り等を容易に認識することができる。
【００４９】
図７は、他の実施形態に係る試験装置１０の構成を示す。同図において、試験装置１０は、編集部１１２およびパケット指定部１１４を更に備える。編集部１１２は、表示部１０６が表示したプロシージャのソースコードのいずれかの箇所を指定し、且つ、当該箇所を変更する編集情報を受け取った場合に、プロシージャのソースコードの当該箇所を変更する。試験装置１０は、一例として、図６に示した画面上の「編集」ボタンがクリックされた場合に、ソースコードを編集できる編集モードに移行する。表示部１０６は、試験装置１０が編集モードに移行すると、「編集」ボタンの表示を「編集終了」などの異なる表示に切り替えてよい。
【００５０】
編集モードにおいて、例えば、試験装置１０は、ソースコードに記述されているパケット関数内のデータ値を変更する、試験装置１０のユーザによる操作を受け付けてよい。また、試験装置１０は、ソースコードにパケット関数を追加する操作を受け付けてよく、パケット関数を削除する操作を受け付けてもよい。編集部１１２は、「編集終了」ボタンがクリックされると、その時点で表示されているソースコードを保存する。
【００５１】
パケット指定部１１４は、表示部１０６が表示したパケットを示す情報のうち、いずれかを指定する指定情報を受け取った場合に、指定情報に対応するパケット関数のソースコードを表示部１０６に表示させる。パケット指定部１１４は、パケットを示す情報を表示する箇所がクリックされた場合に、当該パケットのソースコードおよびソースコードに対応するデータ値を表示部１０６に表示させてよい。
【００５２】
図８は、ライトパケットが指定された場合のパケット関数のソースコードおよびデータの表示例である。表示部１０６は、ソースコードおよびデータ値と共に「編集」ボタンを表示する。パケット指定部１１４は、「編集」ボタンがクリックされたことを示す情報を表示部１０６から受け取ると、ソースコードおよびデータを編集できる編集モードに表示部１０６を移行させる。ソースコードが編集されると、編集部１１２は、編集されたソースコードに対応するデータ値を変更してよい。また、編集部１１２は、データが編集されると、編集されたデータに対応するソースコードを変更してよい。編集部１１２は、「編集終了」ボタンがクリックされると、その時点で表示されているソースコードを保存する。
【００５３】
以上のように、本実施形態に係る試験装置１０においては、表示したプロシージャおよびパケット関数のソースコードを編集することができる。従って、ユーザは、試験信号のパターンを容易に変更することができる。
【００５４】
図９Ａおよび図９Ｂは、他の実施形態に係るプロシージャのソースコードの表示例である。試験装置１０は、プロシージャが実行するパケット関数を、ユーザが指定したブレークポイントにおいて停止してよい。図９Ａに示す矢印は、試験装置１０が、ＴＸ０ピンからリードパケットを送信した時点で、パケット関数の実行を停止した状態にあることを示す。
【００５５】
続いて、表示部１０６は、ユーザからステップ実行指示を受けると、図９Ｂに示す後続のパケット関数を示す位置に矢印を移動する。同時に、送受信部１００は、移動先のパケット関数を実行する。同図に示す例においては、移動先のパケット関数はＴＸ０ピンを指定したライトパケットなので、送受信部１００は、ＴＸ０ピンから所定のデータ値を格納したライトパケットを送信する。
【００５６】
試験装置１０は、ユーザにより指定された数のパケットを連続して実行してもよい。また、試験装置１０は、ユーザにより指定された時間間隔で、それぞれのパケットを実行してもよい。このように、本実施形態に係る試験装置１０は、パケットを実行する条件をユーザが選択することができる。従って、被試験デバイス２００の試験中に発生した問題の原因の特定が容易になる。
【００５７】
図１０は、実行処理部１１の構成の一例を示す。実行処理部１１は、試験プログラム記憶部１２２、プログラム供給部１２４、およびフロー制御部１２６を有する。
【００５８】
試験プログラム記憶部１２２は、試験プログラムを記憶する。試験プログラム記憶部１２２は、メインメモリ１０４から試験プログラムを取得してもよい。プログラム供給部１２４は、試験プログラム記憶部１２２に記憶された試験プログラムから複数のパケットリストを抽出して、送信側ブロック１２および受信側ブロック１４内のパケットリスト記憶部２０に格納する。また、プログラム供給部１２４は、試験プログラムから抽出した複数のパケットリストを順次に実行させる制御フローを記述した制御プログラムを生成して、フロー制御部１２６に供給する。
【００５９】
フロー制御部１２６は、試験プログラムの実行フローに応じて、送信側ブロック１２および受信側ブロック１４に対して、複数のパケットリストのそれぞれを実行する順序を指定する。具体的には、フロー制御部１２６は、プログラム供給部１２４から供給された制御プログラムを実行して、送信側ブロック１２および受信側ブロック１４に対して、次に実行すべきパケットリストを特定する。フロー制御部１２６は、一例として、次に実行すべきパケットリストのアドレスを送信側ブロック１２および受信側ブロック１４へ送信してよい。
【００６０】
フロー制御部１２６は、制御プログラムに、条件分岐、無条件分岐またはサブルーチン呼び出し等の演算式が含まれる場合、メイン制御部１０２に実行させてもよい。そして、フロー制御部１２６は、メイン制御部１０２による演算式の演算結果に基づき、次に実行すべきパケットリストを特定してよい。この場合において、フロー制御部１２６は、メイン制御部１０２による演算結果を受け取るまで次のパケットリストの特定を待機して、演算結果に応じて特定するパケットリストを選択してもよい。
【００６１】
図１１は、送信側ブロック１２の構成の一例を示す。送信側ブロック１２は、パケットリスト記憶部２０、パケットリスト処理部２２、パケット命令列記憶部２４、パケットデータ列記憶部２６、下位シーケンサ２８、データ処理部３２、および送信部３４を有する。
【００６２】
パケットリスト記憶部２０は、プログラム供給部１２４から供給された複数のパケットリストを記憶する。パケットリスト処理部２２は、パケットリスト記憶部２０に記憶された複数のパケットリストのうちフロー制御部１２６から受信したアドレスに基づいてパケットリストを実行して、被試験デバイス２００との間で通信する各パケットを順次指定する。
【００６３】
パケットリスト処理部２２は、一例として、被試験デバイス２００との間で通信するパケットについて、パケット命令列記憶部２４内における当該パケットを発生するための命令列のアドレス（例えば当該命令列の先頭アドレス）を指定する。更に、パケットリスト処理部２２は、一例として、被試験デバイス２００との間で通信するパケットについて、パケットデータ列記憶部２６内における当該パケットに含まれるデータ列のアドレス（例えばデータ列の先頭アドレス）を指定する。
【００６４】
このようにパケットリスト処理部２２は、パケットを発生させるための命令列のアドレスと、当該パケットに含まれるデータ列のアドレスを個別に指定する。なお、この場合において、パケットリストにおいて、２以上のパケットに対して共通する命令列またはデータ列が指定されている場合に、パケットリスト処理部２２は、当該２以上のパケットについて同一の命令列のアドレスまたは同一のデータ列のアドレスを指定してもよい。
【００６５】
パケット命令列記憶部２４は、複数種類のパケットのそれぞれを発生するための命令列を、パケットの種類ごとに記憶する。パケット命令列記憶部２４は、一例として、ライトパケットを発生するための命令列、リードパケットを発生するための命令列、およびウェイトパケットを発生するための命令列等を記憶する。
【００６６】
パケットデータ列記憶部２６は、複数種類のパケットのそれぞれに含まれるデータ列を、パケットの種類ごとに記憶する。パケットデータ列記憶部２６は、一例として、ライトパケットに含まれるデータ列、リードパケットに含まれるデータ列、およびウェイトパケットに含まれるデータ列等を含んでよい。
【００６７】
パケットデータ列記憶部２６は、一例として、共通データ記憶部４０と、共通データポインタ４２と、第１の個別データ記憶部４４−１と、第２の個別データ記憶部４４−２と、第１の個別データポインタ４６−１と、第２の個別データポインタ４６−２とを含んでよい。共通データ記憶部４０は、複数種類のパケットのそれぞれに含まれるデータ列中における、パケットの種類ごとに共通の共通データを記憶する。共通データ記憶部４０は、一例として、パケットの種類ごとに、パケットの始まりを示すスタートコード、パケットの終わりを示すエンドコード、および当該パケットの種別を識別するためのコマンドコード等を記憶する。
【００６８】
共通データポインタ４２は、パケットリスト処理部２２により指定されたパケットに含まれる共通データが格納されたブロックの先頭アドレスを、パケットリスト処理部２２から取得する。更に、共通データポインタ４２は、当該ブロック内におけるオフセット位置を、下位シーケンサ２８から取得する。そして、共通データポインタ４２は、先頭アドレスおよびオフセット位置に基づき定まるアドレス（例えば先頭アドレスにオフセット位置を加算したアドレス）を共通データ記憶部４０に与えて、当該アドレスに格納された共通データをデータ処理部３２へ供給させる。
【００６９】
第１及び第２の個別データ記憶部４４−１、４４−２は、複数種類のパケットのそれぞれに含まれるデータ列中における、パケットごとに変更する個別データを記憶する。第１及び第２の個別データ記憶部４４−１、４４−２は、一例として、各パケットに含まれる、被試験デバイス２００に対して送信する実体データまたは被試験デバイス２００から受信する実体データを記憶してよい。
【００７０】
第１の個別データ記憶部４４−１は、実行される試験プログラムに関わらず予め定められた個別データを記憶する。第２の個別データ記憶部４４−２は、実行される試験プログラムごとに変更される個別データを記憶する。第２の個別データ記憶部４４−２は、一例として、試験に先立ってまたは試験中において適宜に、メインメモリ１０４から個別データの転送を受ける。
【００７１】
第１及び第２の個別データポインタ４６−１、４６−２は、パケットリスト処理部２２により指定されたパケットに含まれる個別データが格納されたブロックの先頭アドレスを、パケットリスト処理部２２から受け取る。更に、第１及び第２の個別データポインタ４６−１、４６−２は、当該ブロック内におけるオフセット位置を、下位シーケンサ２８から取得する。そして、第１及び第２の個別データポインタ４６−１、４６−２は、先頭アドレスおよびオフセット位置に基づき定まるアドレス（例えば先頭アドレスにオフセット位置を加算したアドレス）を第１及び第２の個別データ記憶部４４−１、４４−２に与えて、当該アドレスに格納された個別データをデータ処理部３２へ供給させる。
【００７２】
下位シーケンサ２８は、パケットリスト処理部２２により指定されたパケットの命令列、即ち、パケットリスト処理部２２によりアドレスが指定された命令列をパケット命令列記憶部２４から読み出して、読み出した命令列に含まれる各命令を順次に実行する。更に、下位シーケンサ２８は、パケットリスト処理部２２により指定されたパケットのデータ列、即ち、パケットリスト処理部２２によりアドレスが指定されたデータ列を、命令列の実行に従って順次にパケットデータ列記憶部２６から読み出して、被試験デバイス２００との間の試験に用いる試験データ列を生成する。
【００７３】
下位シーケンサ２８は、一例として、パケットリスト処理部２２により指定されたパケットに含まれるデータ列が格納されたブロック中における、実行した命令に対応するデータの位置を表わすオフセット位置を、共通データポインタ４２、個別データポインタ４６−１および個別データポインタ４６−２に供給する。この場合において、下位シーケンサ２８は、最初の命令において初期値を発生して、実行する命令が遷移するごとにインクリメントされるカウント値を、オフセット位置として発生してもよい。なお、下位シーケンサ２８により実行される命令列は、前方向ジャンプ命令および分岐命令等を含まないことが好ましい。これにより、下位シーケンサ２８は、簡易な構成により高速な処理を実現することができる。
【００７４】
また、下位シーケンサ２８は、命令の実行ごとに、読み出した個別データおよび共通データに対して指定した処理（演算またはデータ変換）を施すことを指示する制御データをデータ処理部３２に与える。これにより、下位シーケンサ２８は、パケットリスト処理部２２により指定されたパケット中における、指定されたデータ部分を、読み出したデータに対して指定した処理を施したデータとすることができる。
【００７５】
また、下位シーケンサ２８は、命令の実行ごとに、共通データ、個別データ（実行される試験プログラムに関わらず予め定められた個別データまたは実行される試験プログラムごとに変更される個別データ）、およびデータ処理部３２が処理を施したデータのいずれを出力するかを、データ処理部３２に対して指定する。即ち、下位シーケンサ２８は、命令の実行ごとに、共通データ記憶部４０、第１の個別データ記憶部４４−１、第２の個別データ記憶部４４−２、または、データ処理部３２内の指定した処理を施したデータが格納されたレジスタのいずれからデータを読み出して出力するかを、データ処理部３２に対して指定する。
【００７６】
これにより、下位シーケンサ２８は、パケットリスト処理部２２により指定されたパケット中における、パケットごとに変更すべきデータ部分を個別データ記憶部４４から読み出した個別データから生成することができる。更に、下位シーケンサ２８は、パケットリスト処理部２２により指定されたパケット中における、パケットの種類ごとに共通するデータ部分を共通データ記憶部４０から読み出した共通データから生成することができる。また、更に、下位シーケンサ２８は、パケットリスト処理部２２により指定されたパケット中における、指定されたデータ部分を、読み出したデータに対して指定した処理を施したデータとすることができる。
【００７７】
送信側の下位シーケンサ２８は、一例として、予め指定されたパケットの試験データ列を被試験デバイス２００に送信したことを受信側の下位シーケンサ２８に通知する。これにより、送信側の下位シーケンサ２８は、受信側の下位シーケンサ２８に、送信側の下位シーケンサ２８からの通知を受けるまでの間、判定部８４による受信部８２が受信したデータ列の良否判定を禁止させることができる。
【００７８】
また、送信側の下位シーケンサ２８は、一例として、受信側の下位シーケンサ２８から、生成した試験データ列と一致するデータ列を受信したことの通知を受けて、予め指定されたパケットの試験データ列を生成する。これにより、送信側の下位シーケンサ２８は、所定のパケットを被試験デバイス２００から受信した後に、予め定められたパケットを被試験デバイス２００に送信することができる。
【００７９】
データ処理部３２は、共通データ記憶部４０、第１の個別データ記憶部４４−１および第２の個別データ記憶部４４−２からのデータを入力して、入力したデータに対して下位シーケンサ２８により指定された処理をして試験データ列の各データとして出力する。なお、データ処理部３２は、下位シーケンサ２８による指定の内容によっては、入力したデータをそのまま試験データ列のデータとして出力してもよい。送信部３４は、データ処理部３２から出力された試験データ列を、被試験デバイス２００に対して送信する。
【００８０】
図１２は、受信側ブロック１４の構成を示す。受信側ブロック１４は、図１１に示される送信側ブロック１２と略同一の構成および機能を有する。受信側ブロック１４が有する部材のうち、送信側ブロック１２が有する部材と略同一の構成及び機能を部材については、同一の符号を付けて相違点を除き説明を省略する。
【００８１】
受信側ブロック１４は、パケットリスト記憶部２０と、パケットリスト処理部２２と、パケット命令列記憶部２４と、パケットデータ列記憶部２６と、下位シーケンサ２８と、データ処理部３２と、受信部８２と、判定部８４とを有する。受信部８２は、被試験デバイス２００からパケットのデータ列を受信する。受信側ブロック１４内のデータ処理部３２は、受信部８２が受信したデータ列を入力して、入力したデータ列を、生成した試験データ列とともに出力する。
【００８２】
受信側ブロック１４内の下位シーケンサ２８は、被試験デバイス２００から出力が期待されるデータ列を、試験データ列として出力する。また、受信側ブロック１４内の下位シーケンサ２８は、受信部８２に対して、被試験デバイス２００から出力された信号のデータ値を取り込むストローブタイミングを指定する。
【００８３】
判定部８４は、データ処理部３２から、試験データ列および受信部８２が受信したデータ列を受け取る。判定部８４は、受信部８２が受信したデータ列を試験データ列と比較した結果に基づいて、被試験デバイス２００との間の通信の良否を判定する。判定部８４は、一例として、受信部８２が受信したデータ列と試験データ列とが一致するか否かを比較する論理比較部と、比較結果を記憶するフェイルメモリとを含む。
【００８４】
また、受信側ブロック１４内の下位シーケンサ２８は、図１１に示される送信側ブロック１２が有する送信側の下位シーケンサ２８と通信を行う。これにより、受信側ブロック１４が有する受信側の下位シーケンサ２８は、送信側ブロック１２が有する送信側の下位シーケンサ２８とハンドシェイクを行って、送信側の下位シーケンサ２８と同期して命令列を実行することができる。
【００８５】
受信側の下位シーケンサ２８は、一例として、当該受信側の下位シーケンサ２８が生成した試験データ列と一致するデータ列を受信したことを送信側の下位シーケンサ２８に通知する。これにより、送信側の下位シーケンサ２８は、受信側の下位シーケンサ２８から、生成した試験データ列と一致するデータ列を受信したことの通知を受けて、予め指定されたパケットの試験データ列を生成することができる。
【００８６】
また、受信側の下位シーケンサ２８は、一例として、送信側の下位シーケンサ２８から、予め指定されたパケットの試験データ列を被試験デバイス２００に送信したことの通知を受けるまでの間、判定部８４による受信部８２が受信したデータ列の良否判定を禁止する。これにより、受信側の下位シーケンサ２８は、所定のパケットを被試験デバイス２００へ送信した後に、当該所定のパケットに応じた応答が被試験デバイス２００から出力されたか否かを判定することができる。
【００８７】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。
【００８８】
請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【図１】
2010067471.tif 000003
【図２】
2010067471.tif 000004
【図３】
2010067471.tif 000005
【図４】
2010067471.tif 000006
【図５】
2010067471.tif 000007
【図６】
2010067471.tif 000008
【図７】
2010067471.tif 000009
【図８】
2010067471.tif 000010
【図９Ａ】
2010067471.tif 000011
【図９Ｂ】
2010067471.tif 000012
【図１０】
2010067471.tif 000013
【図１１】
2010067471.tif 000014
【図１２】
2010067471.tif 000015
【手続補正書】
【提出日】平成22年5月17日(2010.5.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
１以上の命令列を含むパケット単位で被試験デバイスと通信して、前記被試験デバイスを試験する試験装置であって、
前記試験装置の各ピンと、前記被試験デバイスとの間で送受信する前記パケットの順序を指定するパケット列情報に基づいて、前記被試験デバイスとの間で前記パケットを送受信する送受信部と、
前記試験装置の各ピンと、前記被試験デバイスとの間で送受信した前記パケットを示す情報を時系列に表示する表示部と
を備え、
前記表示部は、前記パケット列情報のソースコードを、当該パケット列情報に応じて送受信された前記パケットを示す情報と併せて表示する試験装置。
【請求項２】
前記表示部は、送受信された前記パケットの情報を、前記試験装置の各ピンについて共通に設定される時間軸に沿って並列に表示する
請求項１に記載の試験装置。
【請求項３】
前記パケットには、当該パケットの種類を識別する識別情報が含まれており、
前記表示部は、それぞれの前記パケットの前記識別情報を含む情報を表示する
請求項１または２に記載の試験装置。
【請求項４】
前記試験装置は、前記被試験デバイスとの間で送受信した前記パケットの前記識別情報を検出する検出部を更に備え、
前記表示部は、前記検出部が検出した前記識別情報を含む情報を表示する
請求項３に記載の試験装置。
【請求項５】
前記表示部は、それぞれの前記パケットの種類に応じて、各パケットの表示の態様を異ならせる
請求項１から４のいずれかに記載の試験装置。
【請求項６】
前記被試験デバイスから受信した予め定められた前記パケットのデータ値と、予め定められた期待値とを比較する比較部を更に備え、
前記表示部は、前記比較部における比較結果に応じて、当該パケットの表示の態様を異ならせる
請求項１から５のいずれかに記載の試験装置。
【請求項７】
前記パケット列情報が含む、前記パケットを送信するか否かを判断する分岐条件に応じて、前記パケットの表示の態様を異ならせる
請求項１から６のいずれかに記載の試験装置。
【請求項８】
前記表示部が表示した前記パケット列情報のソースコードのいずれかの箇所を指定し、且つ、当該箇所を変更する編集情報を受け取った場合に、前記パケット列情報のソースコードの当該箇所を変更する編集部を更に備える
請求項１から７のいずれかに記載の試験装置。
【請求項９】
前記表示部が表示した前記パケットを示す情報のうち、いずれかを指定する指定情報を受け取った場合に、前記指定情報に対応する前記パケットのソースコードを前記表示部に表示させるパケット指定部を更に備える
請求項８に記載の試験装置。
【請求項１０】
前記編集部は、前記表示部が表示した前記パケットのソースコードのいずれかの箇所を指定し、且つ、当該箇所を変更する編集情報を受け取った場合に、前記パケットのソースコードの当該箇所を変更する
請求項９に記載の試験装置。
【請求項１１】
１以上の命令列を含むパケット単位で被試験デバイスと通信して試験装置をデバッグするデバッグ方法であって、
前記試験装置は、
前記試験装置の各ピンと、前記被試験デバイスとの間で送受信する前記パケットの順序を指定するパケット列情報に基づいて、前記被試験デバイスとの間で前記パケットを送受信する送受信部を備え、
前記試験装置の各ピンと、前記被試験デバイスとの間で送受信した前記パケットを示す情報を時系列に表示し、かつ、前記パケット列情報のソースコードを、当該パケット列情報に応じて送受信された前記パケットを示す情報と併せて表示するデバッグ方法。
【国際調査報告】
2010067471.tif 000016
2010067471.tif 000017
2010067471.tif 000018
2010067471.tif 000019