(57)【要約】【課題】  データの送受信に掛かる時間を短縮化させる。【解決手段】  半導体集積回路のテストシステム２は、ホストコンピュータ１０と複数のテスト装置１１とからなる。テスト装置１１に、データを外部に送信するためのＵＳＢホストコネクタ２３、データの送信を制御するＵＳＢホストコントローラ２５、並びにデータを外部から受信するためのＵＳＢデバイスコネクタ２４、データの受信を制御するＵＳＢデバイスコントローラ２６を設ける。テスト装置＃１は、ホストコンピュータ１０から受信したデータをテスト装置＃２に送信するとともに、テスト装置＃２から受信したデータをホストコンピュータ１０に送信し、テスト装置＃２以降の各テスト装置１１は、上位側のテスト装置１１から受信したホストコンピュータ１０からのデータを下位側のテスト装置１１に送信するとともに、下位側のテスト装置１１から受信したデータを上位側のテスト装置１１に送信する。【選択図】        図１
2005149170.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータと複数の論理デバイスとの間でデータの送受信を行うシステムであって、
前記論理デバイスに、前記データを外部に送信するためのＵＳＢホストコネクタ、および前記データの送信を制御するＵＳＢホストコントローラと、
前記データを外部から受信するためのＵＳＢデバイスコネクタ、および前記データの受信を制御するＵＳＢデバイスコントローラとを設け、
前記ホストコンピュータを最上位として、前記ホストコンピュータ、および前記複数の論理デバイスを、前記ＵＳＢホストコネクタ、および前記ＵＳＢデバイスコネクタを介してデイジーチェイン接続し、
前記ホストコンピュータの直下に接続された第１番目の論理デバイスは、前記ホストコンピュータから受信したデータを、第２番目の論理デバイスに送信するとともに、前記第２番目の論理デバイスから受信したデータを、前記ホストコンピュータに送信し、
前記第２番目の論理デバイス以降の各論理デバイスは、上位側の論理デバイスから受信した前記ホストコンピュータからのデータを、下位側の論理デバイスに送信するとともに、前記下位側の論理デバイスから受信したデータを、前記上位側の論理デバイスに送信することを特徴とするデータ送受信システム。
【請求項２】
前記論理デバイスは、前記データの取り込みを行わない場合、前記データの送受信の中継のみを行うことを特徴とする請求項１に記載のデータ送受信システム。
【請求項３】
前記論理デバイスは、半導体集積回路のテストプログラムからテスト回路を作成し、前記半導体集積回路の動作を検証するテスト装置であることを特徴とする請求項１または２に記載のデータ送受信システム。
【請求項４】
ホストコンピュータと複数の論理デバイスとからなり、前記論理デバイスには、データを外部に送信するためのＵＳＢホストコネクタおよび前記データの送信を制御するＵＳＢホストコントローラ、並びに前記データを外部から受信するためのＵＳＢデバイスコネクタおよび前記データの受信を制御するＵＳＢデバイスコントローラが設けられており、
前記ホストコンピュータ、および前記複数の論理デバイスが、前記ＵＳＢホストコネクタ、および前記ＵＳＢデバイスコネクタを介してデイジーチェイン接続されたデータ送受信システムに利用され、
前記ホストコンピュータの直下に接続された第１番目の論理デバイスに、前記ホストコンピュータから受信したデータを、第２番目の論理デバイスに送信させるとともに、前記第２番目の論理デバイスから受信したデータを、前記ホストコンピュータに送信させる機能を実現させ、
前記第２番目の論理デバイス以降の各論理デバイスに、上位側の論理デバイスから受信した前記ホストコンピュータからのデータを、下位側の論理デバイスに送信させるとともに、前記下位側の論理デバイスから受信したデータを、前記上位側の論理デバイスに送信させる機能を実現させることを特徴とするデータ送受信プログラム。
【請求項５】
前記論理デバイスに前記データの取り込みを行わない場合、前記データの送受信の中継のみを行う機能を、前記論理デバイスに実現させることを特徴とする請求項４に記載のデータ送受信プログラム。
【請求項６】
前記論理デバイスは、半導体集積回路のテストプログラムからテスト回路を作成し、前記半導体集積回路の動作を検証するテスト装置であることを特徴とする請求項４または５に記載のデータ送受信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストコンピュータと複数の論理デバイスとの間でデータの送受信を行うデータ送受信システムおよびデータ送受信プログラムに関する。
【背景技術】
【０００２】
半導体メモリや論理集積回路などの半導体集積回路の動作を検証する際に、ユーザーにより任意の論理が書き換え可能なＦＰＧＡ（Field Programmable Gate Array ）などのプログラマブル・デバイスを回路基板上に搭載し、このプログラマブル・デバイスに、ＨＤＬ（Hardware Description language ）、あるいはＣ言語で記述された所望のテスト内容を実行可能なテスト回路を構成する技術が提案されている（特許文献１および２参照）。
【０００３】
図７に、特許文献１および２に記載された半導体集積回路のテスト装置に関する概略構成を示す。テスト装置１００は、ＦＰＧＡ１０１を中心に、ＡＤ変換器（ＡＤＣ）１０２やＤＡ変換器（ＤＡＣ）１０３、およびこれらに付随する増幅器（ＡＭＰ）１０４が回路基板上に搭載されたテストボードから構成される。このテスト装置１００は、ＡＭＰ１０４に接続された入出力端子１０５、１０６を介して、電圧や電流を入出力することが可能となっている。ＦＰＧＡ１０１は、ＡＤＣ１０２およびＤＡＣ１０３のデジタル端子に接続されいる。また、リレーなどのスイッチングデバイスを介して、検証される半導体集積回路（図示せず）に選択的に接続されている。
【０００４】
特許文献１および２に記載される技術では、製品の仕様に応じたテストパターンを生成し、このテストパターンをテスタでデバックしたテストプログラムをＨＤＬに変換して、必要に応じてシミュレーションを行いつつ、ＨＤＬ変換されたテストプログラムを論理合成することにより、ＦＰＧＡ１０１に所望のテスト回路が構成される。この技術によれば、固定化されたテスト回路が形成されたテスタを用いて製品の検証を行う従来の方式に比べて、製造コストおよび工数を大幅に削減させることができる。
【０００５】
【特許文献１】国際公開第９８／５７２８１号パンフレット
【特許文献２】特開２００２−１２３５６２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ＦＰＧＡ１０１にテスト回路を構成する際には、データ送信側であるホストコンピュータからデータ受信側であるテスト装置（以下、テストボードともいう）に対して、大量のテストパターンデータ（数メガバイトになることがある）と、テスト条件データとしてのテストプログラムデータ（数百キロバイトとなる）とを予めテストボードに送信しておく必要がある。さらに具体的には、図７には明記されていないが、テストボード上にフラッシュメモリなどの不揮発性メモリを搭載しておき、ホストコンピュータに記憶されたＨＤＬあるいはＣ言語記述から論理合成されているテスト回路をテストボードに送信して、テストボードに搭載されたメモリに記憶させ、しかる後にこのメモリから直接ＦＰＧＡ１０１に書き込む方法を採用している。
【０００７】
実際の半導体集積回路のテストにあたっては、テスト時間の短縮を目的として複数のテスト装置が用意され、一回の操作で複数（例えば１６個）のテスト対象（半導体ウェハのチップ）を一度にテストするようにしている。そこで、ホストコンピュータから複数のテスト装置の各々に搭載されたメモリにテストパターンおよびテストプログラム（典型的には同一のデータ）を送信する際には、並列転送可能な通信方式、例えばイーサネット（登録商標）方式が用いられることが一般的である。しかしながら、このイーサネット（登録商標）方式では、通信対象に対して特殊なＩＰアドレスを設定する必要があり、テストの便宜を図るため、あるいは一部のテスト装置の不具合を解消するために、複数のテスト装置の順番を入れ替えたり、別のテスト装置と入れ替えたりすることが頻繁に行われる半導体集積回路のテストにおいては、取り扱いが非常に複雑となり、用いることが困難である。
【０００８】
これに対して、ＵＳＢ（Universal Serial Bus）方式を用いた場合、イーサネット（登録商標）方式のような特殊なＩＰアドレスを必要としないために、何らの配慮を払うことなく複数のテスト装置の一部を他のテスト装置と入れ替えたりすることができ、取り扱いが極めて容易となる。
【０００９】
しかしながら、ＵＳＢ方式を用いた場合、並列転送を行うことができず、ハブを介して接続された複数のテスト装置を個々に指定して、これらに順次テストデータ（テストパターンおよびテストプログラム）を送信することが必要となる。したがって、ＵＳＢ方式をそのまま用いた場合には、このテストデータの送信には、１台のテスト装置に掛かるロード時間に、テスト装置の台数分を乗じたロード時間を要することとなる。一般に、ホストコンピュータから各テスト装置（テストボード）へテストデータをローディングする時間は、１台当たりおおよそ数分ないし数１０分を要することが多い。
【００１０】
さらに、ホストコンピュータからテスト装置ヘのテストデータのローディングは、テスト対象が切り替わる毎に行わなければならないので、 頻繁にテスト対象が切り替わる少量多品種生産においては、上記のロード時間は特に大きな問題となり、テスト装置の非稼動時間を増大させる一因となっていた。また、ホストコンピュータは、テスト装置にテストデータを送信する他に、一般的に半導体製造工程全体を統括制御する生産管理装置との生産管理データの送受信や、テスト装置を操作するプローバやハンドラとの通信処理を同時に行っているため、上記のようにテストデータのロード時間が長くなると、半導体製造工程全体の稼動効率の低下をもたらすおそれがある。
【００１１】
本発明は、上記課題に鑑みてなされたものであり、データの送受信に掛かる時間を短縮化させることができるデータ送受信システムおよびデータ送受信プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本発明は、ホストコンピュータと複数の論理デバイスとの間でデータの送受信を行うシステムであって、前記論理デバイスに、前記データを外部に送信するためのＵＳＢホストコネクタ、および前記データの送信を制御するＵＳＢホストコントローラと、前記データを外部から受信するためのＵＳＢデバイスコネクタ、および前記データの受信を制御するＵＳＢデバイスコントローラとを設け、前記ホストコンピュータを最上位として、前記ホストコンピュータ、および前記複数の論理デバイスを、前記ＵＳＢホストコネクタ、および前記ＵＳＢデバイスコネクタを介してデイジーチェイン接続し、前記ホストコンピュータの直下に接続された第１番目の論理デバイスは、前記ホストコンピュータから受信したデータを、第２番目の論理デバイスに送信するとともに、前記第２番目の論理デバイスから受信したデータを、前記ホストコンピュータに送信し、前記第２番目の論理デバイス以降の各論理デバイスは、上位側の論理デバイスから受信した前記ホストコンピュータからのデータを、下位側の論理デバイスに送信するとともに、前記下位側の論理デバイスから受信したデータを、前記上位側の論理デバイスに送信することを特徴とする。
【００１３】
なお、前記論理デバイスは、前記データの取り込みを行わない場合、前記データの送受信の中継のみを行うことが好ましい。また、前記論理デバイスは、半導体集積回路のテストプログラムからテスト回路を作成し、前記半導体集積回路の動作を検証するテスト装置であることが好ましい。
【００１４】
また、本発明のデータ送受信プログラムは、ホストコンピュータと複数の論理デバイスとからなり、前記論理デバイスには、データを外部に送信するためのＵＳＢホストコネクタおよび前記データの送信を制御するＵＳＢホストコントローラ、並びに前記データを外部から受信するためのＵＳＢデバイスコネクタおよび前記データの受信を制御するＵＳＢデバイスコントローラが設けられており、前記ホストコンピュータ、および前記複数の論理デバイスが、前記ＵＳＢホストコネクタ、および前記ＵＳＢデバイスコネクタを介してデイジーチェイン接続されたデータ送受信システムに利用され、前記ホストコンピュータの直下に接続された第１番目の論理デバイスに、前記ホストコンピュータから受信したデータを、第２番目の論理デバイスに送信させるとともに、前記第２番目の論理デバイスから受信したデータを、前記ホストコンピュータに送信させる機能を実現させ、前記第２番目の論理デバイス以降の各論理デバイスに、上位側の論理デバイスから受信した前記ホストコンピュータからのデータを、下位側の論理デバイスに送信させるとともに、前記下位側の論理デバイスから受信したデータを、前記上位側の論理デバイスに送信させる機能を実現させることを特徴とする。
【００１５】
なお、前記論理デバイスに前記データの取り込みを行わない場合、前記データの送受信の中継のみを行う機能を、前記論理デバイスに実現させることが好ましい。また、前記論理デバイスは、半導体集積回路のテストプログラムからテスト回路を作成し、前記半導体集積回路の動作を検証するテスト装置であることが好ましい。
【発明の効果】
【００１６】
本発明のデータ送受信システムおよびデータ送受信プログラムによれば、論理デバイスに、データを外部に送信するためのＵＳＢホストコネクタ、およびデータの送信を制御するＵＳＢホストコントローラと、データを外部から受信するためのＵＳＢデバイスコネクタ、およびデータの受信を制御するＵＳＢデバイスコントローラとを設け、ホストコンピュータを最上位として、ホストコンピュータ、および複数の論理デバイスを、ＵＳＢホストコネクタ、およびＵＳＢデバイスコネクタを介してデイジーチェイン接続し、ホストコンピュータの直下に接続された第１番目の論理デバイスは、ホストコンピュータから受信したデータを、第２番目の論理デバイスに送信するとともに、第２番目の論理デバイスから受信したデータを、ホストコンピュータに送信し、第２番目の論理デバイス以降の各論理デバイスは、上位側の論理デバイスから受信したホストコンピュータからのデータを、下位側の論理デバイスに送信するとともに、下位側の論理デバイスから受信したデータを、上位側の論理デバイスに送信するので、ホストコンピュータから各テスト装置に送信される大量のテストパターンおよびテストプログラムからなるテストデータの送信に掛かる時間を短縮化させることができる。
【発明を実施するための最良の形態】
【００１７】
図１において、本発明を適用した半導体集積回路のテストシステム２は、ホストコンピュータ１０と、複数のテスト装置１１（＃１〜＃ｍ）と、複数のテスト対象１２（＃１〜＃ｎ）とからなる。このテストシステム２に用いられるテストパターンおよびテストプログラムは、検査すべきテスト対象１２に応じて作成され、ＨＤＬあるいはＣ言語によって記述されたテスト回路を論理合成したものと、テストパターンおよびテストプログラムからなるテストデータとをホストコンピュータ１０に記憶させておき、これらのデータをテスト装置１１上に設けられたフラッシュメモリやＳＲＡＭ、ＤＲＡＭからなるメモリ２２（図２参照）に送信する。
【００１８】
テスト装置１１では、ＣＰＵ２０（図２参照）の制御の下に、メモリ２２から直接ＦＰＧＡ２１（図２参照）にテストデータを書き込んで、例えば半導体ウェハに形成された複数のチップであるテスト対象１２に対して、所望のテストを実行するものである。
【００１９】
テスト対象１２は、典型的には半導体ウェハ上に形成された複数のチップのうちの所定の組み合わせ単位（例えば１６個）を示し、１回のテスト終了後にテスト装置１１を半導体ウェハに対して相対的にこの単位毎に移動させることによって、半導体ウェハに形成されたチップ全体をテストする際の単位テスト対象を示している。なお、テスト対象１２は、半導体ウェハのチップに限らず、例えば、実装後の複数の同一半導体チップであってもよい。
【００２０】
ホストコンピュータ１０は、一般的には、テスト装置１１に接続されてテストデータを送信する他、システムＬＡＮ１４にイーサネット（登録商標）方式により接続され、半導体製造工場全体を統括制御する図示しない生産管理装置との生産管理データの送受信を行う。また、ホストコンピュータ１０は、テスト装置１１とテスト対象１２とを相対的に移動させるプローバや、テストの開始・終了を制御するためのハンドラなどの制御装置１３とＧＰＩＢ（General Purpose Interface Bus ）接続され、この制御装置１３との信号の送受信を行う。さらに、ホストコンピュータ１０は、各テスト装置１１にＵＳＢ接続されており、各テスト装置１１固有のＩＤ番号を管理している。
【００２１】
ホストコンピュータ１０と複数のテスト装置１１とは、従来のハブによる接続の形態をとらず、ホストコンピュータ１０を最上位として、ホストコンピュータ１０に直接テスト装置＃１が接続され、テスト装置＃１とテスト装置＃２、およびその下位側のテスト装置＃３〜＃ｍはデイジーチェイン接続されている。これにより、いわゆるバケツリレー方式で、ホストコンピュータ１０から各テスト装置１１に、大量のテストデータを送信することが可能となる。
【００２２】
図２に示すように、テスト装置１１は、ＣＰＵ２０、ＦＰＧＡ２１、メモリ２２、ＵＳＢホストコネクタ２３、ＵＳＢデバイスコネクタ２４、ＵＳＢホストコントローラ２５およびＵＳＢデバイスコントローラ２６を有するＵＳＢコントローラ２７から構成される。ＦＰＧＡ２１は、図７に示すテスト装置１００のＦＰＧＡ１０１と同様に、ＨＤＬあるいはＣ言語により記述されたテスト回路を論理合成したものと、テストパターンおよびテストプログラムとにより、テスト対象１２のテストを行う。また、ＦＰＧＡ２１へのテスト回路の形成は、ＣＰＵ２０の制御の下に、メモリ２２に蓄積されたテストパターンおよびテストプログラムを入力することにより行われる。さらに、ＦＰＧＡ２１は、ＣＰＵ２０の制御の下に、テスト結果をメモリ２２に送信し、メモリ２２にテスト結果を蓄積させる。
【００２３】
メモリ２２は、ＣＰＵ２０の制御の下に、ホストコンピュータ１０からビットストリームで送信されるテスト回路と、テストパターンおよびテストプログラムからなるテストデータとを蓄積・保持する。このメモリ２２は、ＣＰＵ２０の制御の下に、ＦＰＧＡ２１にテストパターンおよびテストプログラムからなるテストデータを送信し、任意のテストが行えるようにする。さらに、メモリ２２は、ＣＰＵ２０の制御の下に、ＦＰＧＡ２１からテスト結果を受信し蓄積する。また、さらに、メモリ２２は、ＣＰＵ２０の制御の下に、テスト結果をＵＳＢコントローラ２７に送信する。
【００２４】
ＵＳＢホストコントローラ２５は、ＣＰＵ２０の制御の下に、ＵＳＢデバイスコネクタ２４、ＵＳＢデバイスコントローラ２６を介して上位側から送信されたテストパターンおよびテストプログラムからなるテストデータを、ＵＳＢホストコネクタ２３を介して下位側に転送する。また、ＵＳＢホストコントローラ２５は、ＣＰＵ２０の制御の下に、ＵＳＢホストコネクタ２３を介して下位側から送信されたデータ（例えばテスト結果のデータ）を、ＵＳＢデバイスコントローラ２６およびＵＳＢデバイスコネクタ２４を介して上位側に転送する。また、必要に応じて、ＵＳＢホストコントローラ２５は、ＣＰＵ２０の制御の下に、上記下位側から送信されたデータをメモリ２２に蓄積することもできる。
【００２５】
ＵＳＢデバイスコントローラ２６は、ＣＰＵ２０の制御の下に、ＵＳＢデバイスコネクタ２４を介して上位側から送信されたテストパターンおよびテストプログラムからなるテストデータを、ＵＳＢホストコントローラ２５を介して下位側に転送する。また、ＵＳＢデバイスコントローラ２６は、ＣＰＵ２０の制御の下に、ＵＳＢデバイスコネクタ２４を介して上位側から送信されたテストパターンおよびテストプログラムからなるテストデータが、自己のテスト装置１１を指定しているとき、当該データをＣＰＵ２０の制御の下に、メモリ２２に取り込む。また、さらに、ＵＳＢデバイスコントローラ２６は、ＣＰＵ２０の制御の下に、ＵＳＢホストコネクタ２３およびＵＳＢホストコントローラ２５を介して下位側から送信されたデータ（例えばテスト結果のデータ）を、ＵＳＢデバイスコネクタ２４を介して上位側に転送する。
【００２６】
ＵＳＢホストコネクタ２３およびＵＳＢデバイスコネクタ２４は、各々ＵＳＢホストコントローラ２５と下位側との接続、およびＵＳＢデバイスコントローラ２６と上位側との接続を行う。
【００２７】
ＣＰＵ２０は、ＦＰＧＡ２１、メモリ２２、ＵＳＢホストコントローラ２５、およびＵＳＢデバイスコントローラ２６とバス接続されており、これらに対して上記の制御を行わせ、テスト期間中、ＦＰＧＡ２１に対して通信を行ってテストの流れを監視するとともに、テスト結果に応じてテストの中止、中断、およびテストのスキップなどの制御を行う。      
【００２８】
ホストコンピュータ１０、および各テスト装置１１のプログラム構成を示す図３において、プログラム３０は、各アプリケーション間の通信を実現し、ＵＳＢコントローラ２７をブリッジとして機能させ、ホストコンピュータ１０、および各テスト装置１１のデイジーチェイン接続を直接意識せずにアプリケーションの構築を可能とするために、ＵＳＢ物理層３１、サイト間通信層３２、およびシステム通信層３３の３層のプロトコルを有している。これらの各層３１〜３３は、上位層に対してアプリケーションインターフェース（ＡＰＩ）を提供する。
【００２９】
ＵＳＢ物理層３１は、例えばＵＳＢ１．１規格に沿ったホスト−デバイス間の通信処理を行う。このＵＳＢ物理層３１による通信方式には、例えばインタラプト転送およびバルク転送が用いられる。
【００３０】
ホストコンピュータ１０の直下に接続されたテスト装置＃１のサイト間通信層３２は、ホストコンピュータ１０から受信したテストデータを、テスト装置＃２に送信するとともに、テスト装置＃２から受信したデータ（例えばテスト結果のデータ）を、ホストコンピュータ１０に送信する。また、テスト装置＃２以降の各テスト装置１１のサイト間通信層３２は、上位側のテスト装置１１から受信したホストコンピュータ１０からのテストデータを、下位側のテスト装置１１に送信するとともに、下位側のテスト装置１１から受信したデータ（例えばテスト結果のデータ）を、上位側のテスト装置１１に送信する。なお、以下の説明では、上位側のテスト装置１１を上位サイト、下位側のテスト装置１１を下位サイトと表現する。
【００３１】
ホストコンピュータ１０からのテストデータの転送は、ＵＳＢ１．１規格の転送サイズを加味して、最も効率の良いサイズのブロックで、複数のテスト装置１１に対して同時に行われる。一方、テスト装置１１からのテスト結果は、各テスト装置１１毎にホストコンピュータ１０に転送される。ここで、例えばホストコンピュータ１０からのテストデータがテスト装置＃１を指定したものではなく、テスト装置＃２を指定したものであった場合は、図４に示すように、テスト装置＃１では、システム通信層３３およびマイコン制御アプリケーション層３４ｂを経ずに、サイト間通信層３２のみで通信を中継する。これにより、ホストコンピュータ１０と各テスト装置１１とは、仮想的に１：１で接続されていると見做すことができる。また、ホストコンピュータ１０側から見ると、指定した複数のテスト装置１１に対して、１つのリクエストを同時に送信することができる。
【００３２】
システム通信層３３は、ＵＩ（User Interface）アプリケーション層３４ａ、マイコン制御アプリケーション層３４ｂと関連して、ホストコンピュータ１０、およびテスト装置１１のシステム通信を実現する。このシステム通信層３３は、主にメッセージの組立・解析、シーケンス制御、データ転送の待ちタイマやファンクション終了によるイベント通知などを行う。
【００３３】
上位サイトとのデータの送受信において、下位サイトのサイト間通信タスクとの連携は、メッセージキューＡＰＩを用いて行う。ここで、自サイト向けの指定がある場合には、アプリケーションタスクにもメッセージをキューイングする。イベントは、このメッセージキューにより発生する。但し、エラー発生時など、即座に状態を変更しなければならない場合は、共有メモリなどを用いて通信を行う。
【００３４】
下位サイトとのデータの送受信において、下位サイトのサイト間通信タスクとの連携は、メッセージキューＡＰＩを用いて行う。イベントは、上位サイトとのデータの送受信の場合と同様に、このメッセージキューにより発生する。但し、エラー発生時など、即座に状態を変更しなければならない場合は、共有メモリなどを用いて通信を行う。
【００３５】
システム通信においては、ホストコンピュータ１０、若しくは上位サイト、下位サイトからメッセージを受信して、このメッセージ内のパラメータやコマンドなどから、適切なアプリケーションのモジュールを選択して処理を実行させる。イベントは、メッセージキューおよびＦＰＧＡ２１からの割り込み信号により発生する。
【００３６】
次に、上記構成による作用について、図５および図６のフローチャートを参照して説明する。なお、図５は、ホストコンピュータ１０における処理手順、図６は、テスト装置１１における処理手順をそれぞれ示す。
【００３７】
まず、ホストコンピュータ１０と、制御装置１３、およびシステムＬＡＮ１４とを接続するとともに、ホストコンピュータ１０、および複数のテスト装置１１を、ＵＳＢホストコネクタ２３、およびＵＳＢデバイスコネクタ２４を介してデイジーチェイン接続し、半導体集積回路のテストシステム２を構築する。
【００３８】
図５において、ホストコンピュータ１０では、ＵＩアプリケーション層３４ａによるアプリケーション処理が行われている。この状態でメッセージがキューイングされると、下位サイトのシステム通信層３３とのインターフェース（Ｉ／Ｆ）が確立され、システム通信が行われる。
【００３９】
システム通信層３３におけるデータの通信方向が、ＵＩアプリケーション層３４ａからであった場合は、システム通信層３３でメッセージの解析・組立が行われ、ＵＩアプリケーション層３４ａにおいて、メッセージに対応したシーケンス制御が施された後、サイト間通信層３２とのＩ／Ｆが確立される。一方、通信方向がサイト間通信層３２からであった場合は、ＵＩアプリケーション層３４ａにメッセージが転送される。
【００４０】
サイト間通信層３２におけるデータの通信方向が、ＵＳＢ物理層３１からであった場合は、システム通信層３３にメッセージが転送される。一方、通信方向がシステム通信層３３からであった場合は、ＵＳＢ物理層３１のホスト側にメッセージが転送される。
【００４１】
図６において、テスト装置１１では、マイコン制御アプリケーション層３４ｂによるアプリケーション処理が行われている。この状態でメッセージがキューイングされると、下位サイトのシステム通信層３３とのＩ／Ｆが確立され、自サイトシステム通信が行われる。
【００４２】
システム通信層３３におけるデータの通信方向が、マイコン制御アプリケーション層３４ｂからであった場合は、システム通信層３３でメッセージの解析・組立が行われた後、サイト間通信層３２とのＩ／Ｆが確立される。一方、通信方向がサイト間通信層３２からであった場合は、マイコン制御アプリケーション層３４ｂにメッセージが転送される。
【００４３】
サイト間通信層３２におけるデータの通信方向が、ＵＳＢ物理層３１からで、且つ自サイトを対象としたものであった場合は、システム通信層３３にメッセージが転送される。自サイトを対象としたものでなかった場合は、ＵＳＢ物理層３１のホスト側にメッセージが転送される。一方、通信方向がシステム通信層３３からであった場合は、ＵＳＢ物理層３１のデバイス側にメッセージが転送される。
【００４４】
このように、ホストコンピュータ１０の直下に接続されたテスト装置＃１では、ホストコンピュータ１０から受信したデータが、テスト装置＃２に送信されるとともに、テスト装置＃２から受信したデータが、ホストコンピュータ１０に送信され、テスト装置＃２以降の各テスト装置１１では、上位側のテスト装置１１から受信したホストコンピュータ１０からのデータが、下位側のテスト装置１１に送信されるとともに、下位側のテスト装置１１から受信したデータが、上位側のテスト装置１１に送信される。
【００４５】
各テスト装置１１では、ホストコンピュータ１０からのテストプログラムがメモリ２２に記憶される。メモリ２２に記憶されたテストプログラムは、ＦＰＧＡ２１に読み出される。そして、ＦＰＧＡ２１で所望のテスト回路が構成され、各テスト対象１２に対して所望のテストが実行される。
【００４６】
テスト終了後、各テスト装置１１毎にホストコンピュータ１０にテスト結果が送信される。ホストコンピュータ１０では、送信されたテスト結果を元に、各テスト対象１２の評価データが作成される。
【００４７】
上記のような構成であると、従来、テスト装置１１の台数分掛かっていたテストパターンおよびテストプログラムからなるテストデータのロード時間が、１台分のロード時間で済むので、テストデータの送受信に掛かる時間を飛躍的に短縮化させることができる。すなわち、通信方式として、イーサネット（登録商標）方式のような特殊なＩＰアドレスの設定をする必要がないＵＳＢ方式を用いるとともに、ホストコンピュータ１０を最上位として、ホストコンピュータ１０に直接上位のテスト装置１１が接続され、さらに下位のテスト装置１１がデイジーチェイン接続されるようにしたので、データ送信側であるホストコンピュータ１０からデータ受信側であるテスト装置１１に対して、大量のテストパターンデータ（数メガバイトになることがある）およびテスト条件データとしてのテストプログラムデータ（数百キロバイトとなる）を一回送信すればよく、１台分のロード時間でローディングすることができる。これに対して、下位側のテスト装置１１から最上位側のホストコンピュータ１０には、各テスト装置１１から個別に送信されるテスト結果データが送信されるが、このテスト結果データは、上記したテストパターンおよびテストプログラムからなるテストデータに比して著しく容量の小さいデータであるので、その送受信は何ら問題となるものではない。したがって、半導体製造工程全体の稼動効率を向上させることができる。
【００４８】
上記実施形態では、半導体集積回路のテストシステム２を例示して説明したが、本発明はこれに限定されず、ホストコンピュータ１０から複数のデバイスに共通で大量のデータを送信し、これに対して、各デバイスからホストコンピュータ１０に対してデバイス毎の少量のデータを送信するような用途、例えばホストコンピュータから複数のデバイスである端末に同一のデータを送信し、各端末からホストコンピュータに回答を送信するような視聴覚システムや、ホストシステムから多数の端末にビデオ信号を送信するようなビデオ信号のダビングシステムにも利用することができる。
【図面の簡単な説明】
【００４９】
【図１】本発明を適用した半導体集積回路のテストシステムの概略構成を示す図である。
【図２】テスト装置の内部構成を示すブロック図である。
【図３】ホストコンピュータおよびテスト装置のプログラム構成を示す模式図である。
【図４】テスト装置＃１にデータの取り込みを行わない場合の例を示す模式図である。
【図５】ホストコンピュータにおける処理手順を示すフローチャートである。
【図６】テスト装置における処理手順を示すフローチャートである。
【図７】従来のテスト装置の概略構成を示す図である。
【符号の説明】
【００５０】
２  テストシステム
１０  ホストコンピュータ
１１、１００  テスト装置
１２  テスト対象
２０  ＣＰＵ
２１、１０１  ＦＰＧＡ
２２  メモリ
２３  ＵＳＢホストコネクタ
２４  ＵＳＢデバイスコネクタ
２５  ＵＳＢホストコントローラ
２６  ＵＳＢデバイスコントローラ
２７  ＵＳＢコントローラ
３０  プログラム
３１  ＵＳＢ物理層
３２  サイト間通信層
３３  システム通信層
【図１】
2005149170.tif 000003
【図２】
2005149170.tif 000004
【図３】
2005149170.tif 000005
【図４】
2005149170.tif 000006
【図５】
2005149170.tif 000007
【図６】
2005149170.tif 000008
【図７】
2005149170.tif 000009