(57)【要約】  概して、試験機器は、試験機器にインターフェース接続されたデバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラム可能であり、試験機器の動作を制御するようにプログラムされる第１の処理システムと、デバイス試験専用である第２の処理システムであって、デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラム可能である第２の処理システムと、試験機器とデバイスとの間のインターフェースとして作用するように構成されるプログラム可能な論理であって、デバイス上で１つ以上の試験を実施するように構成可能であるプログラム可能な論理を含む。第１の処理システム及び第２の処理システムは、プログラム可能な論理を介して、デバイスにアクセスするようにプログラム可能である。
2014532861.tif 000002
【特許請求の範囲】
【請求項１】
試験機器であって、
前記試験機器にインターフェース接続されたデバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラム可能であり、前記試験機器の動作を制御するようにプログラムされる第１の処理システムと、
デバイス試験専用である第２の処理システムであって、前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラム可能である第２の処理システムと、
前記試験機器と前記デバイスとの間のインターフェースとして作用するように構成されるプログラム可能な論理であって、前記デバイス上で１つ以上の試験を実施するように構成可能であるプログラム可能な論理とを備え、
前記第１の処理システム及び前記第２の処理システムが、前記プログラム可能な論理を介して、前記デバイスにアクセスするようにプログラム可能である試験機器。
【請求項２】
前記第１の処理システムが第１の試験待ち時間を有し、前記第２の処理システムが第２の試験待ち時間を有し、前記プログラム可能な論理が第３の試験待ち時間を有し、前記第１の試験待ち時間が前記第２の試験待ち時間を上回り、前記第２の試験待ち時間が前記第３の試験待ち時間を上回る、請求項１に記載の試験機器。
【請求項３】
前記第１の試験待ち時間がミリ秒単位であり、前記第２の試験待ち時間がマイクロ秒単位であり、前記第３の試験待ち時間がナノ秒単位である、請求項２に記載の試験機器。
【請求項４】
前記第１の処理システムが、前記試験機器にインターフェース接続された前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされ、
前記第２の処理システムが、前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、
構成される前記プログラム可能な論理が、前記デバイス上で１つ以上の試験を実施するように構成されない、請求項１に記載の試験機器。
【請求項５】
前記第１の処理システムが、前記試験機器にインターフェース接続された前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、
前記第２の処理システムが、前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされ、
前記プログラム可能な論理が、前記デバイス上で１つ以上の試験を実施するように構成されない、請求項１に記載の試験機器。
【請求項６】
前記第１の処理システムが、前記試験機器にインターフェース接続された前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、
前記第２の処理システムが、前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、
前記プログラム可能な論理が、前記デバイス上で１つ以上の試験を実施するように構成される、請求項１に記載の試験機器。
【請求項７】
前記第１の処理システムが、ウィンドーイングオペレーティングシステムを実行する処理デバイスを備え、
前記第２の処理システムが、１つ以上の処理デバイスを備え、前記１つ以上の処理デバイスの各々が、前記試験機器によって試験されるべき異なるデバイスに対応し、
前記プログラム可能な論理が、１つ以上のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）を備え、前記１つ以上のＦＰＧＡの各々が、前記試験機器によって試験されるべき異なるデバイスに対応する、請求項１に記載の試験機器。
【請求項８】
前記プログラム可能な論理が、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）を備え、前記ＦＰＧＡのうちの少なくとも１つが、前記デバイス上で１つ以上の試験を実施するように構成可能であるプログラム可能な論理であり、前記ＦＰＧＡのうちの少なくとも１つが、試験されるべき前記デバイスとのデータの交換を含まない機能を実施するように事前プログラムされる、請求項１に記載の試験機器。
【請求項９】
前記第１の処理システム、前記第２の処理システム、及び前記プログラム可能な論理のうちの少なくとも１つが、１つ以上のインターフェースを介して、再プログラム可能である、請求項１に記載の試験機器。
【請求項１０】
前記試験機器の制御動作が、ネットワーク上の前記試験機器と１つ以上のエンティティとの間の通信を交換すること、マルウェアに対して前記試験機器を走査すること、及びメモリ管理機能を実施することのうちの１つ以上を含む、請求項１に記載の試験機器。
【請求項１１】
試験機器であって、
前記試験機器の外部の環境と相互作用するための第１の階層システムであって、デバイス上で試験動作を実施するようにプログラム可能である第１の階層システムと、
前記デバイス上で試験動作を実施するようにプログラム可能である第２の階層システムと、
前記デバイスにインターフェース接続するための第３の階層システムであって、前記第３の階層システムが、前記デバイス上で試験動作を実施するように構成可能であり、前記第１の階層システム及び前記第２の階層システムが、前記第３の階層システムを通じて、前記デバイスにアクセスするようにプログラムされる、試験機器。
【請求項１２】
前記第１の階層システムが第１の試験待ち時間を有し、前記第２の階層システムが第２の試験待ち時間を有し、前記第３の階層システムが第３の試験待ち時間を有し、前記第１の試験待ち時間が前記第２の試験待ち時間を上回り、前記第２の試験待ち時間が前記第３の試験待ち時間を上回る、請求項１１に記載の試験機器。
【請求項１３】
前記第１の試験待ち時間がミリ秒単位であり、前記第２の試験待ち時間がマイクロ秒単位であり、前記第３の試験待ち時間がナノ秒単位である、請求項１２に記載の試験機器。
【請求項１４】
前記第１の階層システムが、前記試験機器にインターフェース接続された前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされ、
前記第２の階層システムが、前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、
構成される第３の階層システムが、前記デバイス上で１つ以上の試験を実施するように構成されない、請求項１１に記載の試験機器。
【請求項１５】
前記第１の階層システムが、前記試験機器にインターフェース接続された前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、
前記第２の階層システムが、前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされ、
第３の階層システムが、前記デバイス上で１つ以上の試験を実施するように構成されない、請求項１１に記載の試験機器。
【請求項１６】
前記第１の階層システムが、前記試験機器にインターフェース接続された前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、
前記第２の階層システムが、前記デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、
前記第３の階層システムが、前記デバイス上で１つ以上の試験を実施するように構成される、請求項１１に記載の試験機器。
【請求項１７】
前記第１の階層システムが、ウィンドーイングオペレーティングシステムを実行する処理デバイスを備え、
前記第２の階層システムが、１つ以上の処理デバイスを備え、前記１つ以上の処理デバイスの各々が、前記試験機器によって試験されるべき異なるデバイスに対応し、
前記第３の階層システムが、１つ以上のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）を備え、前記１つ以上のＦＰＧＡの各々が、前記試験機器によって試験されるべき異なるデバイスに対応する、請求項１１に記載の試験機器。
【請求項１８】
前記第３の階層システムが、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）を備え、前記ＦＰＧＡのうちの少なくとも１つが、前記デバイス上で１つ以上の試験を実施するように構成可能であるプログラム可能な論理であり、前記ＦＰＧＡのうちの少なくとも１つが、試験されるべき前記デバイスとのデータの交換を含まない機能を実施するように事前プログラムされる、請求項１１に記載の試験機器。
【請求項１９】
前記第１の階層システム、前記第２の階層システム、及び前記第３の階層システムのうちの少なくとも１つが、１つ以上のインターフェースを介して再プログラム可能である、請求項１１に記載の試験機器。
【請求項２０】
前記試験機器の制御動作が、ネットワーク上の前記試験機器と１つ以上のエンティティとの間の通信を交換すること、マルウェアに対して前記試験機器を走査すること、及びメモリ管理機能を実施することのうちの１つ以上を含む、請求項１１に記載の試験機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して、プログラム可能な試験機器に関する。
【背景技術】
【０００２】
自動試験装置（ＡＴＥ）は、半導体デバイス及び回路基板組立体といった、電子機器の製造において役割を果たす。製造業者は、概して、製造プロセスの間にデバイスの動作を検証するために、自動試験装置、又は「テスタ機器」を使用する。かかるデバイスは、「被試験デバイス」（ＤＵＴ）又は「被試験ユニット」（ＵＵＴ）と称される。障害の早期検出は、早期検出されない場合の不良デバイス処理により生じるコストを排除し、それによって、製造全体のコストを削減する。製造業者はまた、多様な仕様を評価するためにもＡＴＥを使用する。デバイスは、速度等のような種々の分野において様々な性能レベルに従って、試験され、分類され得る。デバイスは、その実性能レベルに従って、分類され、販売することができる。
【発明の概要】
【課題を解決するための手段】
【０００３】
概して、一態様において、試験機器は、試験機器にインターフェース接続されたデバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラム可能であり、試験機器の動作を制御するようにプログラムされる第１の処理システムと、デバイス試験専用である第２の処理システムであって、デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラム可能である第２の処理システムと、試験機器とデバイスとの間のインターフェースとして作用するように構成されるプログラム可能な論理であって、デバイス上で１つ以上の試験を実施するように構成可能であるプログラム可能な論理を含む。第１の処理システム及び第２の処理システムは、プログラム可能な論理を介して、デバイスにアクセスするようにプログラム可能である。
【０００４】
概して、別の態様において、試験機器は、試験機器の外部の環境と相互作用するための第１の階層システムであって、デバイス上で試験動作を実施するようにプログラム可能である第１の階層システムと、デバイス上で試験動作を実施するようにプログラム可能である第２の階層システムと、デバイスにインターフェース接続するための第３の階層システムであって、デバイス上で試験動作を実施するように構成可能である第３の階層システムを含む。第１の階層システム及び第２の階層システムは、第３の階層システムを通じて、デバイスにアクセスするようにプログラムされる。
【０００５】
態様は、以下の特徴のうちの１つ以上を含んでもよい。第１の処理システムは、第１の試験待ち時間を有し、第２の処理システムは、第２の試験待ち時間を有し、プログラム可能な論理は、第３の試験待ち時間を有し、第１の試験待ち時間は、第２の試験待ち時間を上回り、第２の試験待ち時間は、第３の試験待ち時間を上回る。第１の試験待ち時間は、ミリ秒単位であり、第２の試験待ち時間は、マイクロ秒単位であり、第３の試験待ち時間は、ナノ秒単位である。第１の処理システムは、試験機器にインターフェース接続されたデバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされ、第２の処理システムは、デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、構成されるプログラム可能な論理は、デバイス上で１つ以上の試験を実施するように構成されない。
【０００６】
第１の処理システムは、試験機器にインターフェース接続されたデバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、第２の処理システムは、デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされ、プログラム可能な論理は、デバイス上で１つ以上の試験を実施するように構成されない。第１の処理システムは、試験機器にインターフェース接続されたデバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、第２の処理システムは、デバイスを試験するために、１つ以上の試験プログラムを実行するようにプログラムされず、プログラム可能な論理は、デバイス上で１つ以上の試験を実施するように構成される。第１の処理システムは、ウィンドーイングオペレーティングシステムを実行する処理デバイスを含み、第２の処理システムは、１つ以上の処理デバイスを含み、１つ以上の処理デバイスの各々は、試験機器によって試験されるべき異なるデバイスに対応し、プログラム可能な論理は、１つ以上のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）を含み、１つ以上のＦＰＧＡの各々が、試験機器によって試験されるべき異なるデバイスに対応する。
【０００７】
プログラム可能な論理は、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）を含み、ＦＰＧＡのうちの少なくとも１つは、デバイス上で１つ以上の試験を実施するように構成可能であるプログラム可能な論理であり、ＦＰＧＡのうちの少なくとも１つは、試験されるべきデバイスとのデータの交換を含まない機能を実施するように事前プログラムされる。第１の処理システム、第２の処理システム、及びプログラム可能な論理のうちの少なくとも１つは、１つ以上のインターフェースを介して、再プログラム可能である。試験機器の制御動作は、ネットワーク上の試験機器と１つ以上のエンティティとの間の通信を交換すること、マルウェアに対して試験機器を走査すること、及びメモリ管理機能を実施することのうちの１つ以上を含む。
【０００８】
本概要の項を含む本開示に説明される特徴のうちの２つ以上は、本明細書に具体的に説明されていない実施形態を形成するように組み合わされてもよい。
【０００９】
本明細書において説明されるシステム及び技法、又はそのうちの部分は、１つ以上の非一時的機械可読記憶媒体上に記憶され、１つ以上の処理デバイス上で実行可能である命令を含むコンピュータプログラム製品として実装されてもよい。本明細書において説明されるシステム及び技法、又はそのうちの部分は、記載される機能を実装するための実行可能な命令を記憶するための１つ以上の処理デバイス及びメモリを含む場合がある装置、方法、又は電子システムとして実装されてもよい。
【００１０】
１つ以上の実装の詳細は、添付の図面及び以下の説明で明らかにする。その他の特徴、目的及び利点は、発明を実施するための形態欄及び図面、並びに請求項から明白となるであろう。
【図面の簡単な説明】
【００１１】
【図１】図１は例示的な試験機器のブロック図である。
【図２】図２は、図１の例示的な試験機器に組み込まれてもよい特徴の例を示すブロック図である。
【図３】図３は例示的な試験システムのブロック図である。
【図４】図４は、試験システムに含まれる例示的なテスタのブロック図である。
【発明を実施するための形態】
【００１２】
多階層アーキテクチャを有する試験機器が、本明細書において説明される。例えば、アーキテクチャは、試験機器の外部の環境と相互作用し、被試験ユニット（ＵＵＴ）上で試験動作を実施するようにプログラム可能である第１の階層処理システムを含み得る。アーキテクチャはまた、ＵＵＴ上で試験動作を実施するようにプログラム可能である第２の階層処理システムと、ＵＵＴにインターフェース接続し、ＤＵＴ上で試験動作を実施するように構成可能でもある、第３の階層処理システムとを含み得る。アーキテクチャはまた、第１の階層処理システム及び第２の階層処理システムが、第３の階層システムを通じてデバイスにアクセスするように構成され得る。
【００１３】
図１は、前述の試験機器１００の例示的な実装のブロック図である。図１において、試験機器１００は、３階層の処理システムを含む。しかしながら、他の例示的な実装において、より少ない、又は多い階層が存在してもよい。試験機器１００の異なる階層は、ＤＵＴに対する階層の相対的関係を反映する。本実施例において、第１の階層１０１は、コンピュータ１０２を含む。コンピュータ１０２は、外部ネットワークとの通信といった、試験機器１００の多様な特徴を制御する。加えて、コンピュータ１０２は、以下に説明されるように、多様な試験動作を実施するようにプログラム可能である。第２の階層１０４は、試験専用の１つ以上の処理デバイス１０６〜１０８を含む。例えば、処理デバイス１０６〜１０８は、典型的に、試験機器制御及びネットワーク通信のような非試験機能を実施しない。しかしながら、処理デバイス１０６〜１０８は、通信及び制御フロー、割り込み、並びにタイミングといったタスクを実施してもよい。第３の階層１１０は、ＤＵＴ  １１５へのインターフェースとして作用するように、かつＤＵＴ上で１つ以上の試験動作を実施するようにプログラム可能である論理１１１〜１１３を含む。
【００１４】
この例示的な第１の階層１０１において、コンピュータ１０２は、１つ以上のマイクロプロセッサ又は単一のマルチコアマイクロプロセッサ（図示せず）といった１つ以上の処理デバイスを含む。コンピュータ１０２はまた、外部環境との試験機器通信を制御し、試験機器１００の動作を制御するために多様な「ハウスキーピング」機能を実施するための実行可能なコードを記憶するメモリ（図示せず）も含む。例えば、コンピュータ１０２は、ネットワークインターフェース１２０上の試験機器と１つ以上の外部エンティティとの間の通信を交換すること、マルウェアに対して試験機器を走査すること、メモリ管理、電力制御、及びＤＵＴの試験に特に関連しない他の機能を担い得る。
【００１５】
コンピュータ１０２はまた、試験機器１００にインターフェース接続されたＤＵＴ（例えば、１１５）上で試験動作を実施するようにプログラム可能でもある。試験動作は、試験バスの速度、反応時間、又はＤＵＴの他の適切な動作態様を含んでもよいが、これらに限定されない。一般に、実施される試験は、試験されているデバイスの種類、及び試験中に求められる情報に依存する。
【００１６】
試験を実施するために、１つ以上の試験プログラムが、コンピュータ１０２上のメモリにロードされ、コンピュータ１０２内の処理デバイス（複数を含む）によって実行されてもよい。試験を実施している間、コンピュータ１０２は、試験機器１００を動作状態に保つために、前述したような他の機能を継続して実施してもよい。このために、試験待ち時間（例えば、試験の開始と試験結果の受信との間の時間量）は、ミリ秒の単位にすることができる。これは、試験待ち時間の例に過ぎない。異なるシステムでは、コンピュータ１０２の処理デバイス（複数を含む）の速度、試験プログラムを実行するためにコンピュータ１０２で利用可能なメモリの量等といった多数の要因が試験待ち時間に影響を与える場合がある。
【００１７】
コンピュータ１０２を介して試験を実施する利点は、試験プログラムの開発コストに関する。より具体的には、コンピュータ１０２は、Ｗｉｎｄｏｗｓ（登録商標）のようなＯＳ、又は他の比較的使い勝手のよいオペレーティングシステムを実行してもよい。かかるオペレーティングシステム上で試験プログラムを開発するために利用可能なツールは、典型的に、広く入手可能であり、試験プログラム開発者には一般によく知られている。結果として、コンピュータ１０２上で実行するために、コンピュータ１０２上で試験プログラムを開発するコストは、多階層アーキテクチャの他の階層上で実行するために試験プログラムを開発するコストよりも低い可能性がある。しかしながら、この一般性は、全ての事例に適用しない場合がある。
【００１８】
本実施例において、第２の階層１０４は、複数の埋め込み処理デバイス１０６〜１０８を含む。ここでは、３つの埋め込み処理デバイスが示されるが、しかしながら、試験機器１００は、例えば、１、２、４、５、又は６以上等、任意の適切な数の埋め込み処理デバイスを含んでもよい。これらの処理デバイスは、試験機器１００に組み込まれるという意味で、埋め込みであり、（例えば、試験機器１００にインターフェース接続されたＤＵＴを試験するために）試験機能の実施専用のものである。埋め込み処理デバイス１０６〜１０８は、典型的に、前述されたコンピュータ１０２によって実施される「ハウスキーピング」動作等の試験機器の動作を担わない。しかしながら、いくつかの実装において、埋め込み処理デバイス１０６〜１０８は、１つ以上のかかる動作、又はＤＵＴの試験に特に関係しない他の動作を実施するようにプログラムされてもよい。
【００１９】
各埋め込み処理デバイス１０６〜１０８は、例えば、単一のコア又は複数のコアを有するマイクロコントローラ又はマイクロプロセッサを含んでもよい。各マイクロプロセッサは、直接又はコンピュータ１０２を介してのいずれかで、プログラム可能である。例えば、試験機器１００のユーザーは、埋め込み処理デバイス１０６をプログラムするために、コンピュータ１０２のオペレーティングシステムと相互作用してもよい。代替的に、直接のインターフェース、例えば、ハードウェア又はソフトウェアが存在してもよく、これらを介して各埋め込み処理デバイスがプログラムされてもよい。プログラミングは、本文脈において、それぞれの埋め込み処理デバイス上に１つ以上の試験プログラムを記憶することを指し、ＤＵＴを試験するために、その埋め込み処理デバイス上で実行され得る。
【００２０】
図１に示されるように、各埋め込み処理デバイスは、コンピュータ１０２、及びそれぞれのプログラム可能な論理（本実施例において、フィールドプログラマブルゲートアレイ（ＦＰＧＡ））にインターフェース接続される。以下に説明するように、各ＦＰＧＡは、試験対象の別個のＤＵＴ（図示せず）又は単一のＤＵＴの一部分（例えば、図示されるように、そのＤＵＴ上のバス１２２、１２３、１２４）に対するインターフェースとして作用する。したがって、本実施例において、各埋め込み処理デバイスは、対応するＤＵＴ、又は試験されているその一部のために特別に設計された試験プログラムでプログラムされてもよい。上記のように、適切な試験プログラムは、埋め込み処理デバイスに直接ロードされてもよく、又はコンピュータ１０２を介してロードされてもよい。各埋め込み処理デバイスは、それ独自の試験プログラムを別個に、及び他の埋め込み処理デバイスと同時に実行してもよい。いくつかの実装において、埋め込み処理デバイスの間で、それらのそれぞれの試験プログラムがどのように実行されるかについての協調が存在してもよい。かかる協調は、埋め込み処理デバイス自体によって、又はコンピュータ１０２によって実装されてもよい。いくつかの実装において、協調には、アーキテクチャの異なる階層にあるデバイスが関与してもよい。いくつかの実装において、異なる埋め込み処理デバイス１０６〜１０８は、適切な協調を伴って、又は伴わずに、同じ試験プログラムの異なる部分（例えば、モジュール）を実装してもよい。
【００２１】
埋め込み処理デバイスを介して試験を実施する利点は、試験待ち時間に関する。より具体的には、埋め込み処理デバイスは試験専用であるので、それらのリソースは、典型的に、他のタスクによる負担がない。結果として、試験待ち時間は、コンピュータ１０２によって達成される場合よりも少なくすることができる。例えば、埋め込み処理デバイスの試験待ち時間は、マイクロ秒単位にすることができる。しかしながら、これは、埋め込み処理デバイスの試験待ち時間の例に過ぎない。異なるシステムにおいて、処理デバイスの速度、試験プログラムを実行するために利用可能なメモリの量といった多数の要因が試験待ち時間に影響を与える場合がある。したがって、前述の一般化は、全ての事例に適用されない場合がある。
【００２２】
更に、埋め込み処理デバイス上で試験プログラムを開発するためのツールが利用可能である。結果として、埋め込み処理デバイス上で実行するために、埋め込み処理デバイス上で試験プログラムを開発するコストは、ＦＰＧＡといったハードウェア上で実行するための試験プログラムを開発するコストよりも少なくすることができる。
【００２３】
第３の階層１１０は、例えば、ＦＰＧＡ  １１１〜１１３等のプログラム可能な論理を含むが、ＦＰＧＡの代わりに他の種類のプログラム可能な論理が使用されてもよい。各ＦＰＧＡは、プログラムイメージをＦＰＧＡにロードすることによって構成される。このプログラムイメージは、「ＦＰＧＡロード」と称される。本実施例において、各ＦＰＧＡは、ＤＵＴ、又はその一部（例えば、ＤＵＴバス）と試験機器１００との間のインターフェースとして作用するように構成される。例えば、ＦＰＧＡは、ポート幅、ポート速度（例えば、１０ＭＨｚ〜４００ＭＨｚ）、入力ポートの数、出力ポートの数等を指定してもよい。
【００２４】
第１の階層１０１のコンピューティングデバイス（複数を含む）（例えば、コンピュータ１０２）及び第２の階層１０４のコンピューティングデバイス（複数を含む）（例えば、埋め込み処理デバイス１０６〜１０８）は、第３の階層１１０を通じてＤＵＴ  １１５にアクセスする。例えば、図１に示されるように、各埋め込み処理デバイスは、対応するＦＰＧＡを通じて、ＤＵＴ  １１５と通信してもよい。コンピュータ１０２は、どのＤＵＴ又はＤＵＴのどの部分が現在試験されているかに依存して、１つ以上のＦＰＧＡを通じてＤＵＴ  １１５と通信してもよい。いくつかの実装において、ＦＰＧＡによって実装される各インターフェースは、プログラム可能である。他の実装において、各ＦＰＧＡによって実装されるインターフェースは静的である（例えば、プログラム可能ではない）。
【００２５】
各ＦＰＧＡはまた、ＦＰＧＡがインターフェース接続される対応するＤＵＴ、又はその一部上で１つ以上の試験を実施するように構成可能であってもよい。例えば、各ＦＰＧＡのＦＰＧＡロードは、ＤＵＴの多様な態様を試験するために、ＦＰＧＡによって実行される１つ以上の試験ルーチンを含んでもよい。上記のように、実装されるルーチンは、試験されるデバイス、及び試験中に求められる情報に依存する。各ＦＰＧＡによって実行される試験ルーチンは、他のＦＰＧＡによって実行される他の試験ルーチンとは独立して実行されてもよく、又は多様なＦＰＧＡの間で協調が存在してもよい。各ＦＰＧＡは、それ独自の試験ルーチンを別個に、及び他の埋め込み処理デバイスと同時に実行してもよい。いくつかの実装において、ＦＰＧＡの間で、それらのそれぞれの試験プログラムがどのように実行されるかについて、協調が存在してもよい。かかる協調は、ＦＰＧＡ自体によって、それらの対応する埋め込み処理デバイスによって、又はコンピュータ１０２によって実装されてもよい。いくつかの実装において、協調には、アーキテクチャの異なる階層にあるデバイスが関与してもよい。例えば、コンピュータ１０２は、埋め込み処理デバイス１０６〜１０８と連携して、それぞれのＦＰＧＡ  １１１〜１１３の動作を協調させてもよい。いくつかの実装において、異なるＦＰＧＡは、適切な協調を伴って、又は伴わずに、同じ試験ルーチンの異なる部分（例えば、モジュール）を実装してもよい。
【００２６】
ＦＰＧＡを介して試験を実施する利点は、試験待ち時間に関する。より具体的には、ＦＰＧＡはハードウェアデバイスであるため、埋め込み処理デバイス１０６〜１０８又はコンピュータ１０２のいずれかにプログラムされた試験ルーチンよりも高速で実行することが可能である。結果として、試験待ち時間は、埋め込み処理デバイス１０６〜１０８又はコンピュータ１０２によって達成されるものよりも小さくすることができる。例えば、プログラム可能なデバイスに対する試験待ち時間は、ナノ秒単位にすることができる。しかしながら、これは、ＦＰＧＡ試験待ち時間の例に過ぎない。異なるシステムにおいて、多数の要因が試験待ち時間に影響を与える場合がある。したがって、前述の一般化は、全ての事例に適用されない場合がある。
【００２７】
いくつかの実装において、試験は、アーキテクチャの１つの階層又は別の階層によってのみ実施されてもよい。例えば、コンピュータ１０２は、ＤＵＴを試験するために、１つ以上の試験プログラムを実行するようにプログラムされてもよく、一方、アーキテクチャの他の階層上のデバイスは、ＤＵＴ試験を実施しない。埋め込み処理デバイス１０６〜１０８は、ＤＵＴを試験するために、１つ以上の試験プログラムを実行するようにプログラムされてもよく、一方、アーキテクチャの他の階層上のデバイスは、ＤＵＴ試験を実施しない。ＦＰＧＡ  １１１〜１１３は、デバイス上で１つ以上の試験を実行するように構成されてもよく、一方、アーキテクチャの他の階層上のデバイスは、ＤＵＴ試験を実施しない。試験を実施していないデバイスは必ずしも、この時間中、休止状態ではない。例えば、コンピュータ１０２は、前述されたハウスキーピング動作を実施し続けてもよく、ＦＰＧＡは、ＤＵＴから／へデータをルーティングし続けても（即ち、ＤＵＴに対するインターフェースとして作用すること）よく、埋め込み処理デバイスは、協調して又は他の通信（例えば、ＦＰＧＡからコンピュータ１０２へテスト結果を伝送すること）で、有効であり続けてもよい。
【００２８】
他の実装において、試験は、アーキテクチャの他の階層によって、同時に又は連携して実施されてもよい。例えば、コンピュータ１０２、埋め込み処理デバイス１０６〜１０８、及びＦＰＧＡ  １１１〜１１３のうちの２つ以上が、単一のＤＵＴ上又は複数のＤＵＴ上で１つ以上の試験動作を実施するために、協調して、同時に、又は同じ試験順序内で作用してもよい。かかる協調を有効にするために、適切なプログラミングが、コンピュータ１０２及び／又は埋め込み処理デバイス１０６〜１０８にロードされ、及び／又は適切なイメージがＦＰＧＡにロードされる。例として、第１の試験は、コンピュータ１０２によってＤＵＴ上で実施されてもよく、第２の試験は、埋め込み処理デバイス１０６によって、ＤＵＴ上で実施されてもよく、第３の試験は、ＦＰＧＡ  １１１によってＤＵＴ上で実施されてもよい。第１、第２、及び第３の試験は、別個の試験であっても、又は同じ試験順序の一部であってもよい。第１、第２、及び第３の試験からのデータは、例えば、コンピュータ１０２で組み合わされ、適切な試験結果を取得するために処理されてもよい。これらの試験結果は、分析及び報告のために、外部のコンピュータ（図示せず）に送信されてもよい。アーキテクチャの階層のいずれか、又は別の（例えば、第３の）コンピュータ（図示せず）が、協調を実施してもよい。
【００２９】
アーキテクチャの１つ以上の階層がプログラムされていない実装において、プログラムされていない階層は、バイパスされてもよい（少なくとも、それらの試験機能性が関与する限り）。プログラムされていない階層は、前述されたプログラミング、並びに階層間及び外部ネットワークとの通信に関係するものといった多様な機能を実施するように事前プログラム、又は事前構成されてもよい。
【００３０】
多様な階層にあるデバイスは、リアルタイムでプログラム又は構成されてもよい。本文脈において、「リアルタイム」は、試験時間での、又は試験時間直前のプログラミングを含む。即ち、試験機器は、ＤＵＴ上で実行される試験プログラムで事前プログラムされている必要はない。それらの試験プログラムは、適切なタイミングで機器に組み込まれてもよい。試験機器上の既存の試験プログラムも同様に、必要に応じて、新しい試験プログラムと置換されてもよい。
【００３１】
図２は、多階層アーキテクチャを有する試験機器２００の別の例示的な実装を示す。図２の実施例において、試験機器２００は、処理システム２０１と、制御ＦＰＧＡ  ２０２と、試験定義されたＦＰＧＡ  ２０４を含む。
【００３２】
処理システム２０１は、コンピュータ１０２といったコンピュータ、埋め込み処理システム１０６〜１０８といった埋め込み処理デバイス、又は階層１０１及び１〜４といった２階層処理システムであってもよい。
【００３３】
制御ＦＰＧＡ  ２０２は、例えば、コンピュータ１０２といったコンピュータの範囲内ではない多様なハウスキーピング機能を実施するように構成される専用ＦＰＧＡであってもよい。例えば、それらの機能は、メモリの読み取り、ダイ温度の判定、及び試験機器における電力の調整を含んでもよい。この実装において、制御ＦＰＧＡ  ２０２は、構成可能ではない。しかしながら、それは、他の実装において構成可能であってもよい。
【００３４】
試験定義されたＦＰＧＡ  ２０４は、図１のＦＰＧＡ  １１１〜１１３といった構成可能なＦＰＧＡであってもよい。より具体的には、試験定義されたＦＰＧＡ  ２０４は、対応するＤＵＴ、又は試験定義されたＦＰＧＡがインターフェース接続されるその一部分上で１つ以上の試験を実施するように構成可能であってもよい。例えば、各試験定義されたＦＰＧＡへのＦＰＧＡロードは、ＤＵＴの多様な態様を試験するために、試験定義されたＦＰＧＡによって実行される１つ以上の試験ルーチンを含んでもよい。上記のように、実装されるルーチンは、試験されるデバイス、及び試験中に求められる情報に依存する。各試験定義されたＦＰＧＡによって実行される試験ルーチンは、他の試験定義されたＦＰＧＡによって実行される他の試験ルーチンとは独立して実行されてもよく、又は、試験定義されたＦＰＧＡ  ２０４及び試験機器の一部である他の試験定義されたＦＰＧＡ（図示せず）間での協調が存在してもよい。試験定義されたＦＰＧＡ、埋め込み処理デバイス、及びコンピュータ間の協調の種類は、図１に関して前述されたものと類似である。
【００３５】
図２の実施例において、制御ＦＧＰＡ  ２０２及び試験定義されたＦＰＧＡ  ２０４は、別個のデバイスである。他の実装において、それらの機能性は、単一のプログラム可能なＦＰＧＡに組み合わせることができる。
【００３６】
図２はまた、ブリッジ２０５を示す。ブリッジ２０５は、１つ以上のバス、及び試験機器２００に含まれる多様なデバイス間の通信を伝送するための他の適切な電子機器を含んでもよい。
【００３７】
図２に示されるように、処理システム２０１は、メモリ２０６と関連付けられ、制御ＦＰＧＡ  ２０２は、メモリ２０８と関連付けられ、試験定義されたＦＰＧＡ  ２０４は、メモリ２１０と関連付けられる。各かかるメモリは、試験データ及び／又は試験プログラムを記憶するため、並びに試験プログラムを実行するために使用されてもよい。この例示的な実装において、各メモリは、その対応するデバイス専用である。しかしながら、制御ＦＰＧＡ  ２０２は、パスを提供してもよく、これを通じて、試験定義されたＦＰＧＡ  ２０４（又は別のシステム処理デバイス）が、その対応するメモリにアクセスし、これを使用し得る。
【００３８】
ここで図３を参照すると、該図面は、アーキテクチャが実装され得るシステムの実施例を示す。図３は、被試験デバイス（ＤＵＴ）３０１を試験するための例示的な試験システム３００を示す。試験システム３００は、図１又は２の多階層アーキテクチャを有してもよい、テスタ３０２を含む。テスタ３０２と相互作用するために、システム３００は、ネットワーク接続３０６上で、テスタ３０２とインターフェース接続するコンピュータシステム３０５を含む。以下で記載されるように、コンピュータシステム３０５は、コンピュータ１０２（図１）の機能性を組み込んでもよく、又はそれは、試験機器上でコンピュータ１０２と相互作用する外部コンピュータであってもよい。典型的に、コンピュータシステム３０５は、ＤＵＴ  ３０１を試験するためのルーチン及びプログラムの実行を開始するために、テスタ３０２にコマンドを送信する。かかる試験プログラムの実行は、ＤＵＴ  ３０１への試験信号の生成及び伝送を開始し、ＤＵＴからの応答を収集することができる。多様な種類のＤＵＴがシステム３００によって試験されてもよい。例えば、ＤＵＴは、アビオニクス、レーダー、兵器、半導体デバイス等であり得る。
【００３９】
試験信号を提供し、ＤＵＴから応答を収集するために、テスタ３０２は、適切なＦＰＧＡインターフェースを介して、ＤＵＴ  ３０１の内部回路のためのインターフェースを提供する１つ以上のコネクタピンに接続される。説明目的で、本実施例において、デバイステスタ３０２は、試験信号を（ＤＵＴ  ３０１の内部回路に）送達するために、ハードワイヤ接続を介して、ＤＵＴ  ３０１のコネクタピンに接続される。デバイステスタ３０２はまた、デバイステスタ３０２によって提供される試験信号に応答して、ＤＵＴ  ３０１で信号を感知する。例えば、電圧信号又は電流信号は、試験信号に応答して、ＤＵＴピンで感知されてもよい。かかる単一ポート試験はまた、ＤＵＴ  ３０１に含まれる他のピン上で実施されてもよい。例えば、テスタ３０２は、他のピンへ試験信号を提供し、（提供された信号を供給する）伝導体を介して反射された関連信号を収集してもよい。反射された信号を収集することによって、ピンの入力インピーダンスは、他の単一ポート試験量と共に特徴付けられてもよい。他の試験状況において、デジタル信号が、ＤＵＴ  ３０１上での記憶のためにＤＵＴ  ３０１に送信されてもよい。一度記憶されると、ＤＵＴ  ３０１は、記憶されたデジタル値を読み出し、テスタ３０２に送信するためにアクセスされてもよい。次いで、正しい値がＤＵＴ  ３０１に記憶されているかどうかを判定するために、読み出されたデジタル値は識別され得る。
【００４０】
１ポート測定の実施とともに、２ポート試験もまた、デバイステスタ３０２によって実施されてもよい。例えば、試験信号は、ＤＵＴ  ３０１上のピンに注入されてよく、応答信号は、ＤＵＴ  ３０１の１つ以上の他のピンから収集されてもよい。この応答信号は、デバイステスタ３０２に提供されて、利得応答、位相応答、及び他のスループット測定量といった量を判定する。
【００４１】
図４も参照すると、ＤＵＴ（又は複数のＤＵＴ）の複数のコネクタピンから試験信号を送信及び収集するために、デバイステスタ３０２は、多くのピンと通信することができるインターフェースカード４０１を含む。例えば、インターフェースカード４０１は、本明細書において説明される１つ以上のＦＰＧＡを含み、これは、試験信号をＤＵＴに伝送するため、及び対応する応答を収集するために使用されてもよい。ＤＵＴ上のピンへの各通信は、チャネルを構成してもよく、多数のチャネルに試験信号を提供することによって、複数の試験が同時に実施され得るため、試験時間が低減され得る。インターフェースカード上に多くのチャネルを有すると共に、複数のインターフェースカードをテスタ３０２内に含むことによって、全体のチャネル数は増加し、これによって更に試験時間は低減される。本実施例において、複数のインターフェースカードをテスタ３０２に装着させることができるということを示すために、２つの追加のインターフェースカード４０２及び４０３が示されている。
【００４２】
各インターフェースカードは、特定の試験機能を実施するために、例えば、ＦＧＰＡ及び埋め込み処理デバイス（例えば、図１に説明されるように）を含む、専用の集積回路を含んでもよい。この回路は、例えば、ピンエレクトロニクス（ＰＥ）試験を実施するためのＰＥ段階、及び試験を実施するためのパラメトリック測定ユニット（ＰＭＵ）段階で実装されてもよい。典型的に、ＰＭＵ試験は、（プログラム可能な）ＤＣ電圧又は電流信号をＤＵＴに提供して、入力及び出力インピーダンスといった量、漏電電流、並びに他の種類のＤＣ性能特徴を判定することを含む。ＰＥ試験は、ＤＣ若しくはＡＣ試験信号、又は波形をＤＵＴ（例えば、ＤＵＴ  ３０１）に送信することと、ＤＵＴの性能を更に特徴付けるように応答を収集することとを含む。例えば、ＰＥ段階は、ＤＵＴ上での記憶のために２進値のベクトルを表すＡＣ試験信号を（ＤＵＴに）伝送してもよい。一度これらの２進値が記憶されると、正しい２進値が記憶されたかどうかを判定するために、ＤＵＴはテスタ３０２によってアクセスされ得る。
【００４３】
いくつかの構成では、インターフェースデバイスは、テスタ３０２からＤＵＴまで１つ以上の伝導体を接続するために使用されてもよい。例えば、ＤＵＴは、テスタと接続するインターフェース接続アダプタ（ＩＣＡ）とインターフェース接続するインターフェース試験アダプタ（ＩＴＡ）に接続してもよい。ＤＵＴ（例えば、ＤＵＴ  ３０１）は、各ＤＵＴピンへのアクセスを提供するために、デバイスインターフェースボード（ＤＩＢ）上に装着されてもよい。かかる構成において、ＤＵＴ伝導体は、ＤＵＴの適切なピン（複数を含む）上に試験信号を配置するために、ＤＩＢに接続されてもよい。更に、いくつかの構成において、テスタ３０２は、インターフェースカード４０１〜４０３によって提供されるチャネルを、１つ又は複数のＤＵＴにインターフェース接続するために２つ以上のＤＩＢに接続してもよい。
【００４４】
インターフェースカード４０１〜４０３によって実施される試験を開始及び制御するために、テスタ３０２は、試験信号を生成し、ＤＵＴ応答を分析するために、試験パラメータ（例えば、試験信号電圧レベル、試験信号電流レベル、デジタル値等）を提供するためのＰＥコントローラ４０８（例えば、システム処理デバイス内に、埋め込み処理デバイス内に、又はプログラム可能な論理内に）を含む。テスタ３０２はまた、コンピュータシステム３０５が、テスタ３０２によって実行される動作を制御することを可能にし、かつデータ（例えば、試験パラメータ、ＤＵＴ応答等）が、テスタ３０２間で、及びコンピュータシステム３０５に移されることを可能にするネットワークインターフェース４０９を含む。
【００４５】
コンピュータシステム、又は試験システム３００上で使用されるか、若しくはそれと関連付けられる別の処理デバイスは、デバイステスタとの有効な通信チャネルを通じて、テスタ３０２上で実行される試験プログラムとの通信を交換するように構成されてもよい。コンピュータシステムは、図１のコンピュータ１０２であってもよく、又はそれを含んでもよい。代替的に、コンピュータ１０２は、テスタ３０２の一部であってもよく、図４で説明されるコンピュータシステムは、コンピュータ１０２と通信してもよい。
【００４６】
ここまでは、システム処理デバイス、埋め込み処理デバイス、又はプログラム可能な論理を使用した試験の実施について説明している。しかしながら、本明細書において説明される場合、試験は、システム処理デバイス、埋め込み処理デバイス、又はプログラム可能な論理の組み合わせを使用して実施されてもよい。例えば、これらの異なる要素の各々は、同じデバイス又はその一部を試験するために、１つ以上の試験プログラムを同時に実行する場合がある。同様に、これらの異なる要素は、例えば、システム処理デバイス（例えば、図１の１０２）が、試験順序の第１の部分を実施し、埋め込み処理デバイス（例えば、図１の１０６）が、同じ試験順序の第２の部分を実施し、プログラム可能な論理（例えば、図１のＦＰＧＡ  １１１）が、同じ試験順序の第３の部分を実施するように、試験を協調させてもよい。本明細書において説明される試験機器の異なるプログラム可能な要素の間で、任意の適切な協調が行われてもよい。
【００４７】
更に、いくつかの実装において、１階層の処理は、回避されてもよい。例えば、試験は、システム処理デバイス（例えば、１０２）及びプログラム可能な論理（例えば、ＦＰＧＡ  １１１）を使用するが、埋め込み処理デバイスを使用せずに行われてもよい。かかる実装において、システム処理デバイスとプログラム可能な論理との間の通信は、埋め込み処理デバイスを通過しても、又は埋め込み処理デバイス階層を全てバイパスしてもよい。
【００４８】
いくつかの実装において、４つ以上の階層の処理デバイスが存在してもよい。例えば、２階層の埋め込み処理デバイスが存在してもよい（結果として、例えば、合計で４階層になる）。例えば、単一のデバイスの試験を協調させるために、単一の埋め込み処理デバイスが使用されてもよく、その単一のデバイスの異なる態様又は特徴を試験するために、（その単一の埋め込み処理デバイスの指令の下で）異なる埋め込み処理デバイスが使用されてもよい。
【００４９】
いくつかの実装において、１つ以上の階層の処理デバイスが、図１のシステムから排除されてもよい。例えば、いくつかの実装は、１階層の埋め込み処理デバイスを含まない場合がある。かかる例示的なシステムにおいて、システム処理デバイス（例えば、図１の１０２）及びプログラム可能な論理（例えば、ＦＰＧＡ  １１１〜１１３）だけが存在してもよい。この点で、本明細書において説明される試験機器において、階層の任意の適切な組み合わせが採用されてもよい。
【００５０】
いくつかの実装において、システム処理デバイス（例えば、図１の１０２）は、試験機器の外部にあってもよい。例えば、外部のコンピュータが、試験機器の動作を制御するために、採用されてもよく、本明細書において説明される様式で試験機器上の埋め込み処理デバイス（複数を含む）及びプログラム可能な論理と相互作用してもよい。他の実装において、システム処理デバイスは、試験機器の一部であっても、又は試験機器から遠隔（例えば、ネットワーク上から試験機器に接続される）であってもよい。
【００５１】
いくつかの実装において、プログラム可能な論理は、プログラム不可能な論理と置換されてもよい。例えば、ＦＰＧＡを使用するのではなく、１つ以上の特定用途向け集積回路（ＡＳＩＣ）が、本明細書において説明されるプログラム可能な論理の代わりに、又は加えて、試験機器に組み込まれてもよい。
【００５２】
本明細書において説明される機能性、又はその一部、及び多様な修正（以下、「機能」）は、本明細書において説明されるハードウェアに限定されない。機能の全て又は一部は、１つ以上のデータ処理装置、例えば、プログラム可能なプロセッサ、コンピュータ、複数のコンピュータ、及び／又はプログラム可能な論理構成要素の動作により実行されるか、又はそれを制御するためのコンピュータプログラム製品、例えば、１つ以上の非一時的機械可読媒体といった情報担体において明確に実現されるコンピュータプログラムを少なくとも部分的に介して、実装することができる。
【００５３】
コンピュータプログラムは、コンパイラ型又はインタープリタ型言語などのプログラミング言語の任意の形態で書かれることも可能であり、独立プログラムとして、又はモジュール、コンポーネント、サブルーチン、オブジェクト、若しくはその他のコンピューティング環境での使用に好適なユニットとしてなど任意の形態で展開されてもよい。コンピュータプログラムは、１つのコンピュータ上で、又は一箇所にあるか、若しくは複数箇所に分布してネットワークで相互接続された複数のコンピュータ上で実行されるように展開され得る。
【００５４】
機能の全部又は一部の実施に関わる動作は、校正プロセスの機能を実施するための１つ以上のコンピュータプログラムを実行する、１つ以上のプログラム可能なプロセスによって実施され得る。機能の全て又は一部は、特殊目的論理回路、例えば、ＦＰＧＡ及び／又はＡＳＩＣ（特定用途向け集積回路）として実装することができる。
【００５５】
コンピュータプログラムの実行に好適なプロセッサとしては、例として、汎用マイクロプロセッサ及び専用マイクロプロセッサの双方、並びに任意の種類のデジタルコンピュータの、１つ以上の任意のプロセッサが挙げられる。一般に、プロセッサは、命令及びデータを、読み取り専用メモリ又はランダムアクセスメモリ又は両方から受け取る。コンピュータの構成要素は、命令を実行するためのプロセッサ、並びに命令及びデータを記憶するための１つ以上のメモリデバイスを含む。
【００５６】
本明細書において説明される異なる実施形態の構成要素は、組み合わされて、上記に特に説明されていない他の実施形態を形成してもよい。構成要素は、その動作に悪影響を与えることなく、図１〜４に示される回路から除外されてもよい。更に、多様な別個の構成要素が組み合わされ、１つ以上の個々の構成要素を形成し、本明細書において説明される機能を実施してもよい。
【００５７】
本明細書において特に説明されない他の実施形態もまた、以下の請求項の範囲内となる。
【図１】
2014532861.tif 000003
【図２】
2014532861.tif 000004
【図３】
2014532861.tif 000005
【図４】
2014532861.tif 000006
【国際調査報告】
2014532861.tif 000007
2014532861.tif 000008