JP2004509425A - テストコントローラアクセスデータを用いて回路をテスト及び/または診断する方法及びシステム - Google Patents
テストコントローラアクセスデータを用いて回路をテスト及び/または診断する方法及びシステム Download PDFInfo
- Publication number
- JP2004509425A JP2004509425A JP2002530868A JP2002530868A JP2004509425A JP 2004509425 A JP2004509425 A JP 2004509425A JP 2002530868 A JP2002530868 A JP 2002530868A JP 2002530868 A JP2002530868 A JP 2002530868A JP 2004509425 A JP2004509425 A JP 2004509425A
- Authority
- JP
- Japan
- Prior art keywords
- test
- embedded
- controller
- ate
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318307—Generation of test inputs, e.g. test vectors, patterns or sequences computer-aided, e.g. automatic test program generator [ATPG], program translations, test program debugging
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31724—Test controller, e.g. BIST state machine
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318342—Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318371—Methodologies therefor, e.g. algorithms, procedures
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
ソフトウェア及びハードウェアシステム及びこれらの関連手法は、シリコンデバッグ、プロセス特性、プロダクション(ボリューム)テスト、システム診断、の改良された故障診断と同様に、ATE独立go/no−goテストを提供する。これは、集積回路内に設計される埋込テストアーキテクチャと、集積回路と外部環境との間においてシームレスに情報を伝送する手段と、関連するテスト及び診断を行うためにシームレスな伝送を実現するユーザの外部環境と、を含む。
Description
【0001】
【発明の属する技術分野】
本発明は、集積回路の設計とテストとに関し、詳細には、集積回路のテストを、設計テスト環境下と製造テスト環境下との双方で、埋込テストコントローラでテストすることを容易にする際に用いられるシステム、プログラムプロダクト及び方法に関する。
【0002】
【従来の技術】
製造テストのフローには、集積回路のコミュニティと製造テストのコミュニティとが分離している、という問題があった。設計エンジニアは、一般的に、集積回路の設計用のテストパターンを作成して、テストエンジニアに送る。テストエンジニアは、自動テスト装置(ATE)にロードされることにより実行されるテストプログラムの全体に、テストパターンを組み込む。この自動テスト装置は、一般的には、被測定デバイスを内部にマウントするコンピュータソフトウェアコントローラテスタを含んでいる。多くのATEが市販されており、またその内の多くが、様々な命令セットのフォーマットを持つ様々なオペレーティングシステム上で動作する。したがって、設計エンジニアと製造のテストエンジニアとの間のハンドオフは、テストパターンをATEが理解できるフォーマットに変換しなければならないため困難なものとなる。加えて、故障が発生すると、テストエンジニアは、正しい診断をするためには、しばしば設計エンジニアに相談し、デバイス設計データを参照する必要がある。
【0003】
この設計エンジニアとテスト製造エンジニアとの間の連絡及び相談は、特定の市販ATEのアーキテクチャ、これに固有のオペレーティングシステム及び動作特性に強く依存しているため悪化させられる。製造テスト環境が、極度にリソース集約的であり、このことは、集積回路の製品化までの時間、大量生産化までの時間及び品質にかなりの影響を及ぼすことになる。
【0004】
製造go/no−goテストを実行するためのテストベクトルとテストプログラムとの準備をかなり減少させることを可能とする埋込テストアーキテクチャが提案されているとはいえ、一般的には、テスト結果が診断解析のために利用可能となることはない。この診断の問題は、ビルトインセルフテスト(埋込テスト)がテスト方法の一部をなす場合には、特に重要である。ビルトインセルフテストは独立している(self−contained)ため、テスト結果データは、全体的なgo/no−goのレポートに過ぎず、一般的には、診断解析のために利用されることはできない。したがって、よりよい診断解析を得るためには、埋込テストブロックを、「バッチ」ベースで数回実行し、実行する毎に、異なるテストパターン及び/または埋込テスト動作モードを用いて、追加の診断情報を得るようにしなければならない。多くの場合、埋込テストの実行ごとのセットアップ要件は、先行する1つ以上の実行の結果によって異なる。これは、テストエンジニア及び特に設計エンジニアは、障害を診断するために、予めテストプログラムを作成することができないにもかかわらず、診断がなされている間に、テストプログラムを作成しなければならないことを意味する。
【0005】
即ち、設計エンジニアとテスト及び製造のエンジニアとの間での情報のシームレスな伝達と合成とに基づき、テストプログラムの開発とテスト結果の診断とを容易にする、一般的なテスト環境が必要とされる。
【0006】
【発明が解決しようとする課題】
本発明は、非ATE環境と同様に、従来のATE環境における埋込テストコントローラテストをシームレスに統合するソフトウェアシステム及び方法を提供する。本システムは、上記の従来型バッチ指向テストパターン生成の必要性を解消し、また、解消しない場合でも、テストエンジニアの設計コミュニティに対する依存性を低減する。
【0007】
このことは、部分的には、環境下の集積回路デバイスの埋込テストアクセスデータファイル、埋込テストコントローラを動作させるために必要とされる埋込テストブロックに関する情報の全てを含むデータファイル、診断結果を提供することにより、部分的には、比較的シンプルなユーザテスト定義コンフィグレーションに基づく、1つ若しくは複数のテストコントローラにおいてテスト及び診断を自律的に行うことができるシステムを提供することにより、達成される。本発明の別の態様は、アクセスデータファイルを読み取って表示するユーザインタフェースを提供するが、この場合、テストコントローラは、被測定デバイスと、各コントローラと関連するランタイムパラメータと、を含み、これにより、パラレル又はシーケンシャルな1つ又は複数のテストコントローラを含むテストステップのシーケンスを、ユーザが指定することを可能とする。この結果、設計と製造テストとの間のハンドオフが無ベクトルのものとなる。
【0008】
本発明のシステムは、テストプログラム開発者、製造テストスタッフ及び製品サポートエンジニアの各々の必要性をサポートする。埋込テストアクセスシステムをATEオペレーティングシステムと統合することによって、これらのユーザは、自分が操作するのに最も適した環境下で作業することが可能となる。テストエンジニアは、自分が他の利用可能なテストプログラム作製ツールで作業するのと同じように、埋込テストアクセスソフトウェアで作業する。製造スタッフの場合、最終的なテストコンフィグレーションは、go/no−goテストのための他の何れのテストプログラムとも全く異なることがなくテスト生産フローに適合する。製品サポートエンジニアは、本システムをセットアップして、故障のメカニズムを監視し、また、特殊な診断ルーチンをコールして、故障が何れのロジックデバイスのフリップフロップやメモリデバイスの何れのセルによるものであるかを明確にする。
【0009】
【課題を解決するための手段】
本発明の一つの態様は、1つ又は複数の埋込テストコントローラを有する回路をテストする方法、システム、プログラムプロダクトとして定義される。該方法、システム、プログラムプロダクトは、デバイスに埋め込まれた全てのテストコントローラを識別し、該テストコントローラからのテストデータの起動、実行、抽出に要されるデータを記載するテストコントローラアクセスデータを読み込み;該デバイスに埋め込まれた1つ又は複数のテストコントローラにおいて実行される1つ又は複数のテストステップを記載するテストコンフィグレーションデータを読み込み;1つ又は複数のテストコントローラの各々からテスト応答データを起動し、実行し、抽出するために要されるアクセスデータファイルデータから抽出することを含む、1つ又は複数のテストステップの各々を実行するテストパターンのシーケンスに該テストコンフィグレーションデータを変換し、該集積回路の1つ又は複数のテストコントローラにテストパターンのシーケンスをロードする。
【0010】
本発明の別の態様は、埋込テストコントローラを有する回路において実行されるテストのテスト応答データを診断する方法、システム、プログラムプロダクトである。該方法は、テストコントローラにロードされたテストパターンの実行において比較の失敗を示すモジュール障害の各々に対し、ピンの名称、及び、テストパターンの先頭からのピンのサイクルオフセットを判断し;該サイクルのバックマップデータファイルから、障害の原因であるサイクルの比較パターンを生成したフォーマットされたジェネリックコマンドの識別を判断し;該ジェネリックコマンド障害及びコマンドにおけるビットオフセットの障害の識別を用いて、バックマップデータファイルにおけるオリジナルコマンドと、該ジェネリックコマンドに関連するバックマップにコメントされている埋込テストレジスタデータにおけるビットオフセット障害と、を判断し;障害の記載を生成するピンに関連する埋込テストコントローラのアクセスデータファイルに対するレジスタビット障害と、該回路の設計コンテクストにおけるデータログレポートと、を解析する。
【0011】
本発明の更に別の態様は、埋込テストコントローラを有する電気システムをテスト又は診断する際に使用するシステム及びプログラムプロダクトとして定義される。該システム及びプログラムプロダクトは、該電気システムの埋込テストコントローラのテスト性能に関する情報を生成する第1の手段と、該電気システムのテストコントローラのテスト及び/又は診断命令と、データと、を生成する第2の手段と、該テストコントローラに該命令及びデータを適用し、該テストコントローラからテスト結果を受信する第3の手段と、該テストコントローラのテスト結果データを解析し、該電気システムの特性をレポートする第4の手段と、を備える。
【発明の実施の形態】
【0012】
本発明の上記の特徴と他の特徴及び態様は、添付図面を参照して記載される以下の説明によればより明らかであろう。
【0013】
本発明は、集積回路中の障害をテストして診断する新規な方法、並びに、本方法を自動化するコンピュータプログラムプロダクト及びシステムを提供する。本発明によれば、被測定デバイス中に埋め込まれたテストコントローラに関する詳細なデータは、コンピュータ読み取り可能データベース中に記憶される。このデータベースは、1つ以上のコンピュータ読み取り可能ファイルを含む適切などのような形態をも取り得る。以降、このデータベースを、埋込テストアクセスファイル又はETAファイルと呼ぶ。本発明によるプログラムプロダクトは、以降、埋込テストアクセスソフトウェア又はETAソフトウェアと呼ぶ。本発明はまた、ユーザ定義のテスト及び診断を実行する比較的簡単なユーザ定義テストコンフィグレーションと、テストコンフィグレーションを生成し、このテストコンフィグレーションをコンピュータ読み取り可能ファイル中に記憶するユーザインタラクティブインタフェースと、を採用するシステムを提供する。以下の記述は、これらのファイルのコンテンツを詳述する。
【0014】
本発明の別の態様は、本発明の所望の方法及び機能、詳細には、ETAファイルを読み取り、該ファイルのコンテンツを用いて、テストコンフィグレーションファイルを生成して保存し、該テストコンフィグレーションファイル中の各テスト規格を1つ以上のシーケンステスト命令に変換して、被測定デバイスに対してテストを実行し、テスト命令を実行し、また、テスト結果を診断する機能、を提供するプログラムを含む第1のライブラリの提供に関する。
【0015】
本発明の別の態様は、第1のライブラリによって生成されたテスト命令をマシン固有のフォーマットに変換して、マシン固有の命令を、被測定デバイスが接続されているマシンに入力するプログラムを含む第2のライブラリの提供に関する。第2のライブラリは、また、マシンから出力されたテスト結果データをジェネリックなフォーマットに変換して、第1のライブラリが、テスト結果を診断できるようにする。
【0016】
上述したように、ETAソフトウェアはまた、単純なパス/障害から障害モジュールの識別に至る診断レベルでテスト障害を診断するように設計されている。診断の実行に際して、本システムは、ETAファイルにアクセスして、固有のテストのための正しい応答データを決定し、このデータを用いて障害モジュールを識別する。本システムは、ユーザインタフェースによってインタラクティブに又はユーザの干渉とは無関係に実行することが可能である。
【0017】
本発明の特定の実施形態では、前述のマシンはATEテスタである。しかしながら、本発明は、本方法と本システムとを他の環境に応用することを予定している。加えて、本特定の実施形態においては、ETAソフトウェアがATEシステムにロードされているとはいえ、本ソフトウェアは、このようなシステムと緊密に関連する必要はないことが理解されよう。実際、本発明は、本ソフトウェアが、テストされるデバイスから遠隔に置かれ、また、ローカルエリアネットワーク、インターネット、イントラネット、ダイヤルアップ、及び、被測定デバイスと通信するための接続などの手段を用いるデバイスと接続することを予定している。本システムは単に、テストされるデバイス毎に前述のETAデータファイルを必要としているだけである。本発明は、テストの実行又は特定のデバイスを予定しているだけではなく、回路基板やシステムのテストも予定している。
(埋込テストコントローラ)
【0018】
本発明をさらに詳述する前に、埋込テストコントローラとこれに関連する用語を簡単に説明しておくのが有用であろう。
【0019】
埋込テストブロック又はテスト構造体は、一般的には、集積回路デバイス中の所定のスキャンチェーン内に配置されたビルトインセルフテスト又は埋込テストコントローラ及び関連のテスト可能モジュールと定義される。テスト可能モジュールは、テストされるデバイス中に埋め込まれたハードウェアエンティティである。モジュールは、組み合わせロジック、埋め込まれたメモリ、複合された信号コンポーネントなどであってよい。埋込テストコントローラは、同じタイプの1つ以上のモジュール、すなわち、ロジック又はメモリをパラレルに又はシーケンシャルにテストするように設計された回路である。埋込テストコントローラは、テスト用のテストベクトルを生成するために用いられるランタイム制御オプション又はパラメータを有している。これらのオプションは、コントローラのタイプによって異なる。例えば、「保持時間」は、メモリタイプの埋込テストコントローラの場合に指定され、「パワーレベル」は、ロジックタイプの埋込テストコントローラの場合に指定される。埋込テストコントローラのステップは、診断目的で実行される動作である。ロジックタイプの埋込テストコントローラにおけるステップは、「試行」と呼ばれ、一方、メモリタイプの埋込テストコントローラにおけるステップは、「ステップ」と呼ばれる。
【0020】
テストコントローラは、テストパターンをシリアルにコントローラ中にロードすることによって、所望のランタイムパラメータを指定するパターンで、実行させられる。そのように指示された場合、テストコントローラは、これと関連するテスト可能モジュールのテストを実行する。コントローラがテストを実行する手段は、コントローラのタイプによって異なる。ロジックテストコントローラは、指定されたパラメータに従ってテストパターンを生成する疑似ランダムパターンジェネレータ(PRPG)を含む。このテストパターンは、このテストコントローラと関連するテスト可能モジュール中にロード又はスキャニングされる。コントローラは、また、複数入力シリアルレジスタ(MISR)を含むが、これは、PRPGが生成したテストパターンに対するテスト可能モジュールの応答を解析するものである。MISRは、go/no−go出力を生成するか、又は、さらなる解析のために応答データを出力してもよい。このようなコントローラは、技術上公知であり、したがって、ここではこれ以上詳述しない。メモリ及び他のタイプのコントローラも、同様に、コントローラと関連したモジュールをテストする手段を含んでいる。
(埋込テストコントローラアクセスデータファイル)
【0021】
図4に、ETAファイル、即ち、データベース32のコンテンツを示す。ETAファイル、即ち、データベースは、被測定デバイスの埋込テスト機能を含み、また、以下に示すセクションを備えている。
【0022】
1.デバイス中の各埋込テストブロックのアクセスインタフェースと制御インタフェースとを記述している埋込テストアーキテクチャ記述セクション32a。これは、各埋込テストブロックポートの機能と、各テストブロックの埋込セットアップスキャンチェーン内のレジスタの各々の記述と、を含んでいる。例えば、このセクションは、テスト中に入力されるランダムパターンの数を指定するために用いられるロジックテストブロックのセットアップスキャンチェーン内のビット範囲を示す。このセクションは、また、各埋込テストブロックの制御ポート及びアクセスポートとデバイス又は1149.1TAPのピン間の接続を記述している。このセクションは、埋込テストブロックのイネーブルピンに対するTAP命令レジスタビット接続を示す。
【0023】
2.各埋込テストブロックの情報にアクセスし、該情報を実行し、リトリーブするために必要とされるパターンを定義するアクセスパターン記述セクション32b。
【0024】
3.シミュレーションから導き出され、また、ランタイム環境下では効率的に生成することが不可能なテスト結果を生成するテストブロックの一部の形態で用いられるオプションの結果データセクション(図示せず)。これにより、これらの結果は、ETAソフトウェアに対して利用可能とされる。このような結果データの例として、スキャンベースのロジック埋込テストコントローラに起因する署名や、テストの障害を診断して欠陥モジュールを突き止める際に用いられるベクトルデータなどがある。
【0025】
上記のデータは、1つ以上のファイルを含む、何れかの適切な又は所望の手段で記憶される。
【0026】
ETAファイルは、任意の所望の手段で開発することが可能である。しかしながら、本発明によれば、このファイルは、集積回路デバイスの設計プロセスの一部として開発される。図1に、本発明の好ましい実施形態による、ソフトウェアシステム10のアーキテクチャの全体的なフローを示す。この図の左側は、設計環境内で生成するものである。同図の右側は、製造テスト環境である。本システムは、3つの主要なコンポーネント、すなわち、埋込テストIP(Intellectual Property)ジェネレータ12、埋込テストIPインテグレータ14、及び、ETAソフトウェア16と呼ばれる埋込テストアクセスソフトウェアを含んでいる。埋込テストIPジェネレータは、テストされる設計コンポーネントの要件に基づいて様々な埋込テストブロックの集積回路設計記述を作成する自動ツールである。これらの記述は、埋込テストIP設計データファイル18中に記憶される。
【0027】
埋込テストIPインテグレータは、埋込テストIP設計データファイル18をチップ設計データファイル20とマージして、埋込テスト設計データファイル22でチップを生成するオートメーションルールである。一般に、これらのデータファイルは、ハードウェア記述言語(HDL)フォーマットで指定されたコンポーネント記述を持つASCIIテキストファイルという形態で与えられる。このようなツールとファイルとは、一般的に、当業者には公知である。これらの機能の内、埋込テストIPインテグレータツールは、ファイル22中に、制御ポートとアクセスポートとの間の接続の、被測定デバイスのピン又はデバイス内で実施されているIEEE1149.1テストアクセスポート(TAP)に対する規定を挿入する。埋込テスト設計データファイル22を持つこのチップを、製造ハードウェア/ソフトウェア24が用いて、集積回路すなわちチップ26を製造する。埋込テストIPジェネレータツール及びインテグレータツールには、市販されているものがあるため、ここでは詳述しない。
【0028】
本発明によれば、これらのツールは、アクセスソフトウェア16が埋込テストの実行、埋込テスト結果の抽出及び診断を自律的に実施することを可能とするために埋込テストアクセスデータファイル32の上記の3つのセクション中で必要とされる詳細な情報を提供するようになっている。好適には、これらのツールは、また、被測定デバイス中の全てのテストコントローラのテスト又は各テストコントローラのデフォルトランタイムパラメータの指定に用いられる「デフォルト」テストコンフィグレーションファイルをパラレルに生成するようになっている。このデフォルトテストコンフィグレーションファイルは、後述するような手段でユーザが編集することが可能である。
(テストコンフィグレーションファイル)
【0029】
図2に、テストコンフィグレーションファイル50を示す。これは、埋込テストコントローラのテストステップ、テストグループ及びランタイムのパラメータを指定するために用いられることができるシンタックスを含む。
【0030】
テストコンフィグレーションは、1つ以上のテストステップの順序付けされたコレクションと1つ以上のテストグループの順序付けされていないコレクションとである。テストステップは、1つ以上の埋込テストコントローラのパラレルなフル実行である。フル実行には、セットアップ、実行、及び、テストコントローラから得られたテスト結果の収集が含まれる。図2から理解されるように、TestStep1と呼ばれるテストステップのコンフィグレーションは、4行から始まり34行で終わる。各テストステップで、このテストコンフィグレーションは、テストのためのテストベクトルを生成するために必要な全ての埋込テストコントローラの全てのランタイム制御オプションを指定する。19〜32行で、メモリコントローラと、これに関連するランタイムパラメータの全てと、を指定する。テストコンフィグレーションは、各テストステップに対して別個のベクトルとタイミングとを指定する。図2では、これらは5〜18行目に指定されている。33行に示すように、同じタイプの他のテストコントローラ、この場合はメモリテストコントローラが、この時点でこれらのステップに追加される。
【0031】
テストグループは、テストステップの順序付けされたコレクションである。テストグループによって、テストプログラムは、非ATEベクトルがインタリーブされる特定の時点での実行のためのテストステップのグループを選択することが可能となる。この選択機能によって、ほとんどの障害が早期に検出されるようにテストプログラムを最適化し、これによって、テスト時間を短縮することが可能となる。外部ATEが、テストコンフィグレーション中で示されている全てのテストステップのための様々なタイミング(すなわち、ピン毎の周期、イベントなど)をプログラムするために必要とされてもよい。
【0032】
図2に示されるように、テストグループGroup1は、3行〜45行の間で定義され、前述のTestStep1を含んでいる。44行に示されているように、このグループ中の追加のテストステップは、このポイントに挿入してもよい。46行に、追加のテストグループはこのポイントで定義してもよいことを示す。
【0033】
テストコンフィグレーションは、標準のテキストエディタを用いて作成又は修正されることができるASCIIテキストファイルに記憶される。しかしながら、本発明は、ETAファイルにアクセスすることと、埋込テストコントローラ及び関連のランタイムオプションを表すアイコンを表示すること、との双方のためのユーザインタフェースプログラムを、ユーザが容易に、テストコンフィグレーションを作成し、テストコントローラランタイムパラメータ及び診断優先度を指定できるように提供する。このユーザインタフェースは後述する。
【0034】
テストコンフィグレーションの構造は、本発明の精神から逸脱することなく修正され得ることが理解されるであろう。
(テストプログラム)
【0035】
ここで図3を参照する。今までは、集積回路生産環境下では、ユーザは、テストプログラムを開発してこれをATEテスタコントローラソフトウェアプラットフォーム30上に、オペレータインタフェースボックス又はワークステーション(図示せず)を用いてロードしたものである。ATEソフトウェアプラットフォームには、ベンダー固有のソフトウェアが、ATEテスタハードウェア34上のテストプログラムに含まれている命令を読み取って実行するルーチンライブラリとハードウェアライブラリと、という形態で含まれている。ユーザ定義されたテストプログラムは、実際にATEテスタをテストデバイスにドライブするするコードとデータとの組み合わせである。テストプログラムソースコードは、一般的には、ATEテスタプラットフォームが異なれば(例えば、Toolbox(登録商標)中のCコード、Agile(登録商標)中のブロック指向のASCIIコードなど)、その形態も異なる。
【0036】
本発明は、従来のテストプログラムの必要性を解消することを追求するが、従来のテストプログラムが、本発明のシステムにアクセスすることを可能とする手段を提供する。ATEテスタソフトウェアは、各ATEテスタモデル毎に対して高度に特殊化されているため、また、レガシーを考慮しているため、一般に、言語や通信の修正に対してはフレキシブルではない。この理由により、本発明の埋込テストアクセス機能のバルクは、以下に説明するETAサーバソフトウェア中に常駐する。ユーザ定義のテストプログラムやグラフィカルユーザインタフェースとシェルユーザインタフェースなどのクライアントプログラムは、ETAサーバと通信するために小さいライブラリのユーティリティプログラムしか必要としない。したがって、本発明は、「ATEサーバインタフェースライブラリ」というラベルを持ち、一般に参照符号56で指定される小さいプログラムライブラリを提供するが、これは、ATEテスタコントローラ上にインストールされて、ETAソフトウェア機能とETAデータとにアクセスする必要があるときには、クライアントプログラム内からコールすることが可能である。同様に、ETAシステムは、このライブラリにコールして、ATEテスタ上で動作を実行することが可能である。RPCやCORBAなどの適切なプロセス間通信方法をテスタプラットフォーム上で用いて、ETAソフトウェアにアクセスすることが可能である。
【0037】
したがって、ユーザは、従来のテストプログラムを開発して、これを、インタフェースライブラリ56によって提供される高レベルの命令中に組み込んで、ETAシステムと通信する。この高レベル命令のセットは、テスト開発者が埋込テストソフトウェアアーキテクチャの詳細な知識を必要とすることなくテストプログラムを作成することを可能とする手段となる。詳細には、この命令セットは、次の機能を提供する。
●ETAシステムに対して、デバイスの名称とロケーションを指定することによって、そのデバイスがテスト中であることを指定する。
●ETAサーバが生成したロジック、フォーマット及びタイミングを完備したターンのセットをテスタ34のメモリ中にロードする。
●障害データをパターンの実行から抽出して、診断用のETAサーバ環境に送る。
●故障情報をETAサーバから受信して、テスタシステムデータ収集ストリーム中に挿入する。
(ETAソフトウェアシステム)
【0038】
ETAソフトウェアは、被測定デバイスが置かれている環境、この場合はATEソフトウェア環境と被測定デバイス中の埋込テストブロックとの間にリンクされている。ETAソフトウェアとこの環境とを統合することによって、テストプログラム開発者は、埋込テストブロックの動作を、埋込テストブロックの様々なモードとパラメータとを指定する(すなわち、様々な「what−if」シナリオを演じる)ことによって観察することを含む多くの特定の動作を実行することが可能となり、これによって、最適な「生産」テストプログラムを設計したり、初期化に際して、パターンのセットを作成してこれをATEテスト中のパターンメモリ中にロードしてテスト生産フロア上でgo/no−go方式に基づいて実行するテストプログラムを開発したり、欠陥埋込テストブロックを、例えば、ユーザがロジック埋込テストの障害を診断して欠陥フリップフロップを明らかにしたり、メモリ埋込テストの障害を診断して欠陥メモリセルを明らかにしたりできるように診断したり、テストプログラムからコールされて、被測定デバイスの統計的データ解析の支援となることが可能な診断手順のセットを提供したりすることが可能となる。
【0039】
本発明のETAソフトウェア16は、ATEテストシステム30上で直接的に実行されて、クライアントプログラムに対して、テスト中のデバイス26内に埋め込まれている全てのテストブロックに対する完全なアクセス権を与えるようになっている。しかしながら、既述したように、ETAソフトウェアは、遠隔にロードして、デバイスに対して任意の適切な手段で接続されてもよい。ETAソフトウェアはまた、以下に説明するように、従来のテストプログラムを必要とすることなく、テストを実行してテスト結果を診断することが可能である。
【0040】
図3に、ATEテスタから直接アクセスすることが可能な環境下におけるETAシステムのライブラリレベルのアーキテクチャを示す。このシステムは、ATE埋込テストサーバ42と、ATEテスタハードウェア34を制御するATEソフトウェアプログラムプラットフォーム30と、を含む。
【0041】
サーバ42は、ATEライブラリ46、アプリケーションプログラムインタフェース(API)47及び、テストコンフィグレーションデータファイル50及びETAファイル32を読み取るETAライブラリ48を含んでいる。API47は、ライブラリ46と48との間の通信、さらに他のクライアントプログラム52との通信を提供する。ライブラリ46は、テスタと、又は、ATEソフトウェアプラットフォーム上で実行されるテストプログラムと、インタフェースライブラリ56を介して通信する。ETAソフトウェアは、後述のユーザインタフェース54を含んでいる。サーバソフトウェア42は、ATEソフトウェア44がロードされるのと同じマシン上にインストールされたり、または、別個のマシン上にロードされて、適切なネットワークによってATEソフトウェアマシンに接続されたりする。
【0042】
ATEライブラリ46は、テストプログラムに又はライブラリ56中のユーティリティに対する通信リンクを提供し、パターンをテスタとは無関係なフォーマットからテスタ固有のフォーマットに変換し、変換されたパターンをテスタ上の実行中のパターン中にロードし、テスタ固有のテスト結果をテスタとは無関係なフォーマットに変換してこの変換されたテスト結果をライブラリ48に処理目的で伝達することによって、ETAライブラリ48を、特定のテスタモデルにとってのターゲットとする。この目的のために、ライブラリ46は、様々なATEテスタのモードの各々に対して1つずつ対応する、複数の変換ライブラリを含む。システムを初期化する際には、ユーザは単に、使用すべき固有のATEテスタモデルを指定するが、これは、ライブラリ46をこのモデルに対する関連の変換ライブラリにアクセスさせるものである。
【0043】
サーバライブラリ48は、ETAソフトウェア16の一次的な機能を提供するが、これは、ETAファイルとテストコンフィグレーションファイルとの処理であり、被測定デバイスのユーザ定義テストを実行してテスト結果を診断するものである。この目的のため、ライブラリ48は、パターンプロセッサ60とデータログジェネレータ66とを有する。このパターンプロセッサを最初に説明する。
【0044】
パターンプロセッサ60は、テストコンフィグレーションファイル中に指定されているテストを実行するために必要なテストパターンを生成する。図4に、本発明によるパターンプロセッサ中に組み込まれたテストパターン生成プロセスを示す。パターンプロセッサ60は、ETAファイルとテストコンフィグレーションファイルとを読み取るように動作可能である。これには、テストコンフィグレーション規格と、各規格を処理するための特定の手順と、のライブラリ(図示せず)が含まれている。これによって、プロセッサは、テストコンフィグレーションファイル中の各規格を読み取り、また、ETAファイルを用いて、ジェネリックな又はATEテスタとは無関係なフォーマットで、対応する命令又は命令のシーケンスを生成することが可能である。テストコンフィグレーションファイル中に指定されている各テストステップに対して、パターンプロセッサ60は、次のタスクを実行する。
【0045】
1.テストステップ中に指定された埋込テストブロックを識別し、各テストブロック毎にETAのアクセスパターン記述セクションから、テストステップによって指定されたモードでテストコントローラを実行させるために必要とされるアクセスパターンを抽出する。
【0046】
2.テストステップ中のテストコントローラの各々に対する抽出済みのパターンを1つのパターンにマージし、これによって、テストステップ中の全ての埋込テストブロックがパラレルに実行されるようにする。
【0047】
3.ETAファイルの埋込テストアーキテクチャ既述セクションを用いて、テストパターンセットを被測定デバイスのI/Oピンと、又は、デバイスのテストアクセスポートインタフェースと、関連付けて、テストステップ規格を実効させるために必要な全ての命令のシーケンスを生成する。
【0048】
4.ターゲットとされたテストパターンセットを、シリアルベクトルフォーマット(SVF)などのテスタとは無関係なフォーマットに変換し、この変換されたテストパターンをテスタとは無関係なフォーマットのテストパターンファイルとして記憶する。SVFは、IEEE1149.1の周知の高レベル言語である(参照することで本明細書に組み込まれる、1997年7月28日改訂、パート番号ASSET−SVF−DOC、Asset Intertech社から入手可能、著作権1994 Texas Instrument、著作権1997 Asset Intertech、「シリアルベクトルフォーマット規格(Serial Vector Format Specification)」を参照のこと)。SVFが好ましいとはいえ、本発明の精神から逸脱しない他のどのようなジェネリックなフォーマットでも採用可能である。
【0049】
ATEライブラリ46はATEパターントランスレータ62を含むが、これは、各命令を、パターンプロセッサ50によって生成されたテスタとは無関係なテストパターンファイルに変換して、以下の追加タスクを実行する。
【0050】
5.テスタとは無関係なフォーマットテストパターンファイル中の高レベルSVFコマンドをI/Oトランジションに拡張して、次に、このトランジションをターゲットテスタが必要とする固有のフォーマットに変換する。
【0051】
6.変換されたパターンをATEサーバインタフェースユーティリティ56に伝達し、これがコマンドをテスタに入力する。
【0052】
7.SVFバンクマップデータを、後述する障害データログプロセス中に使用されるバックマップファイル又はデータベース用に生成する。
【0053】
テスタとは無関係なフォーマッティングがされたパターンセットとそれに対応するテスタ固有変換とは、本質的に、従来のテストプログラムの同等物である。
【0054】
このパターン生成フローは、埋込テストパターンが比較的単純であるため、リアルタイムテスト環境によく適している。一般的な埋込テストコントローラ実行には、一般的に、埋込テストブロック中の数10個のレジスタビットの初期化と、数100万の迅速なATEクロックサイクルの繰り返しループと、埋込テストブロック中の数10のレジスタビットの結果取得と、が伴う。
(障害データログ動作)
【0055】
ATE環境におけるデータログ動作とは、被測定デバイス中の障害に関する情報を採取して報告するプロセスのことである。このデータは、被測定デバイスの問題の症状、すなわち、デバイスがどのように故障しているかを記述している。データログ故障情報は、リアルタイムで又はログファイル中に収集されて、オフラインで解析される。診断とは、欠陥デバイスの解析しデバイスが故障する理由を判定するプロセスのことである。ここで、データログと診断との区別は、データログを、何れのベクトルも変更することなく得られたなんらかの故障情報として定義することによってなされる。
【0056】
図5に、本発明による故障データログフロープロセスを示す。ETAサーバライブラリ48はさらに、故障データログメカニズムを含むが、このメカニズムによって、システムはチップ設計データというコンテクストにおけるATE環境によって報告されたATE障害を解釈し、これによって、意味のあるデータログ結果を提供することが可能となる。このメカニズムは、ATE故障データをATEソフトウェアプログラムから受信する、ATEライブラリ46中の故障トランスレータ64を含む。このトランスレータは、故障をSVF故障、すなわちジェネリックな故障データに変換して、この変換された故障データを、ライブラリ48中のデータログジェネレータ66に転送する。データログジェネレータ66は、ETAファイルにアクセスして、SVFパターンデータをパターンプロセッサ60から、そして、SVF故障データを故障トランスレータ64から受信する。
【0057】
データログ動作のプロセスは、次のステップを含む。
【0058】
1.テストパターン実行における「比較の失敗」を表すATE故障は、ライブラリ46中の故障トランスレータ64に対して、インタフェース56を介して、ピン名称と、故障という結果となったATEテストパターンの先頭からのATEサイクルオフセットという形態で送られる。
【0059】
2.故障トランスレータは、SVFバックマップデータ中のATEサイクルをルックアップして、このATEサイクルの「比較」パターンを生成したSVFコマンドを決定して、対応するSVF故障を指定する。
【0060】
3.故障トランスレータは、SVF故障をデータログジェネレータ66に対して、障害SVFコマンドと、このコマンド内の障害ビットオフセットという形態で送る。
【0061】
4.データログジェネレータは、SVF中のオリジナルのコマンドを発見して、各SVFコマンドに対してコメントとして付けられた埋込テストレジスタデータから障害ビットオフセットを決定する。
【0062】
5.データログジェネレータは、障害レジスタビットを埋込テストコントローラに対するETAファイル中のアクセスデータと比較して、故障のセマンティックスを決定して、意味あるデータログをチップ設計のコンテクスト中に生成する。例えば、メモリ埋込テストデータログは、欠陥のメモリインスタンス、アドレス及びデータビットを含むことがある。ロジック埋込テストデータログは、欠陥のスキャン試行又は欠陥フリップフロップインスタンスを含むことがある。
【0063】
本システムは、故障を自動的に診断することが可能である。診断要求は、任意のクライアント、すなわち、ATEソフトウェア中にロードされたGUIプログラムやユーザが開発したテストプログラムによっても発行される。この要求は、ユーザが、ユーザインタフェースプログラムのディスプレイ上の「診断」オプションをクリックすると作成されて、ビットレベルの故障を取得したり、又は、ユーザ定義のテストプログラム中にプログラムされた命令によって作成されて、全ての欠陥メモリ埋込テストブロックの全ての欠陥メモリエレメントを診断するように、ETAサーバに指示する。欠陥メモリ又はロジックを自動的に診断する場合、本システムは、以下のシーケンスを数回反復して実行する。
【0064】
1.診断のために用いられる埋込テストブロックを含む、テストステップを作成して修正する。
【0065】
2.ATEパターンを前述したように生成する。
【0066】
3.パターンをロードし、これを実行し、結果を戻すように、テスタに命令する。
【0067】
4.テスト結果を解析して、埋込テストブロックを別のモードで実行することによって、追加の情報を収集することが可能であるかどうか判断し、不可能であれば、最終結果を報告する。
【0068】
ロジックテストコントローラによってテストされたロジックを診断するために、広い範囲の様々なアルゴリズムを用いることができるが、何れのアルゴリズムも、様々なセッティングでテストコントローラを1回以上実行することからなっている。診断で最も時間を要する部分は、失敗した試行を明らかにすることである。失敗した試行を明らかにするため、テストコントローラは何回も実行されるが、この場合、テストコントローラの実行は、以下のステップを含む。
【0069】
1.PRPG(PS)とMISRを初期化して、試行(MS)を開始する。
【0070】
2.多くのATEクロックサイクル(R)にわたって、テストコントローラと関連するテスト可能モジュールとをクロック制御する。
【0071】
3.期待されるMISR比較値(MC)をスキャンアウトする。
【0072】
テストコントローラの実行は、ベクトルのテンプレートとして実施される。これが実行されると、パラメータが異なればそれに応じて異なった値を、すなわち、PS、MS、R及びMCに対して異なった値を単に「渡す」ことによって、同じベクトルセットを繰り返して用いる。これによって、何れのアルゴリズム、すなわち、バイナリ、シーケンシャル、指数関数的シーケンシャル又は他のアルゴリズムなどを用いても同じパターンを再使用して、結果データ中の障害を探索することが可能となる。このようなアルゴリズムは、技術上公知であり、したがって、ここでは説明しない。
【0073】
ユーザは、最初の障害試行、最初から数えてN個の障害試行又は全ての障害試行を要求し得る。潜在的には、各要求に対して様々なアルゴリズムが用いられてもよい。バイナリ探索アルゴリズムが、「最初の障害試行」要求には最も適していることが分かっている。Nのサイズによっては、バイナリ探索アルゴリズム、シーケンシャル探索アルゴリズム又はこれらのハイブリッドが、「最初のN個の障害試行」要求には適している。シーケンシャル探索アルゴリズムは、ほとんどの場合、「全ての障害試行」要求に最も適していると信じられている。場合によっては、後者は全てのベクトルを生成するために必要とされる時間又はテスタ上のベクトルメモリのサイズのため、実現不可能となり得る。
【0074】
本発明の最良の実行モードでは、サーバライブラリ46が、C++抽象的ベースクラスとして実施され、また、ATE埋込テストインタフェースライブラリ56が、ジェネリックなサーバライブラリ46とターゲットATEテスタとの間の変換層として働くテスタ固有サブクラスとして実施される。ライブラリ46のC++クラス定義は、二重目的APIである。ベースクラスとして、それは、ATE埋込テストライブラリ56から直接アクセス可能である。ETAサーバライブラリC++クラス定義もまた、グラフィカルユーザインタフェースやテストプログラムなどの、任意のCORBAに準拠したクライアントに対してもアクセス可能とするCORBAインタフェースとして実施されるのが好ましい。システム機能のバルクをサーバ中に保持することによって、サーバを、テストプログラムの実施を考慮することなく、高レベルC++フレームワークで実施することが可能となる。
【0075】
図3から理解されるように、API47は、ETAサーバによってサポートされて、グラフィカルユーザインタフェース(GUI)、シェルユーザインタフェース(SUI)又はテストプログラムなどの何れのクライアントからの要求に対しても応答する。何れのクライアントからの適切な要求にも応答して、API47は、被測定デバイスに対するETAファイルを選択し、テストコンフィグレーションファイルを作成、ロード又はセーブし、テストコンフィグレーションファイルを修正し、指定された欠陥回路ブロックを診断する。
(ユーザインタフェース)
【0076】
好適には、本発明は、ユーザインタフェースを提供し、これにより、ETAサーバの機能に対するユーザのアクセスを可能とすることによって、テストコンフィグレーションファイルの開発を容易にする。より具体的には、ユーザインタフェースは、ETAファイルとテストコンフィグレーションファイルとの双方を読み取り、コンピュータ表示デバイス上でこれら双方のファイルからの情報を表示するように設計されている。図7に、グラフィカルユーザインタフェース54のメインウィンドウを示す。このウィンドウには、被測定デバイス中のロジックテストコントローラの各々を表すアイコン82を図形で示すボックス80が含まれている。図中の例には、ロジックテストコントローラとメモリテストコントローラとが含まれている。このテストコントローラを選択して、ウィンドウの中心部分にあるテストコンフィグレーションボックス84中にドラッグすることが可能である。テストコンフィグレーションは、テストステップとテストされる特定のモジュールとを含む、「group_memory」と呼ばれるテストグループを示す。テストコンフィグレーションボックスの右には、ボタン86、88及び90がそれぞれテストグループ、テストステップ及びテストコントローラ追加用に装備されている。このウィンドウは、出力ファイルとログファイルとを含むデバイスファイルを表示し、そのロケーションを指定する手段92となる。「実行」ボタン94は、テストを実行するために、また、「診断」ボタン96が、テスト結果を診断するために装備されている。診断結果は、ボックス98中に表示される。「セーブ」ボタン100が、テストコンフィグレーションをファイルにセーブするために装備されている。ユーザがセーブオプションを選択すると、プログラムは、ASCIIフォーマットで、全てのテスト規格をユーザが指定したテストコンフィグレーションファイル50に、テストコンフィグレーションボックスに図示されたシーケンスで書き込み、また、テストコンフィグレーション中に指定された各特定のテストコントローラに対するパラメータ指定ウィンドウ中に指定されているランタイムパラメータの全てを含む。
【0077】
ユーザインタフェースは、本システムによって処理されるテストコントローラタイプと関連すると考えられるパラメータの全てを表示して編集する手段ともなる。図8に、選択されたロジックテストコントローラと関連する「アドバンスト」パラメータを指定するテストステップウィンドウを示す。類似のウィンドウが、他の全てのタイプのテストコントローラに対しても装備されているが、パラメータは異なる。さらに、ユーザインタフェースは、所望次第で、どのようなATEプログラムでも呼び出すボタン又は他の手段を備えてもよく、インタフェースがテスタを直接に制御することを可能とする。
【0078】
ユーザインタフェースウィンドウのコンテンツ及びレイアウトは、本発明の精神から逸脱することなく修正し得ることが理解されるであろう。
【0079】
図9及び10に、それぞれメモリテストコントローラとロジックテストコントローラとに対する診断オプションを指定するのに用いられるウィンドウを示す。類似のウィンドウが、本システムによって処理される他の全てのタイプのテストコントローラにも装備されている。図示されるウィンドウは、図示だけを目的とし、テストコントローラとテスト規格と関連すると考えられる全てのオプションとパラメータとを完全に、そして、総体的に示すことを意図するものではないことが理解されるであろう。
【0080】
図11に、本システムの様々なコンポーネント同士間のインタフェースと多くの機能とを示す。
【0081】
本発明は、個別のデバイスのテストに制限されるものではないことが当業者には理解されるであろう。実際、本出願は、本発明が基板やシステムのテストに対しても等しく良好に適用されることを意図している。このような応用分野では、ETAサーバは、テストされる各ボード及び/またはシステム上の各チップと関連するETAファイルを記憶する。GUIは、基板又はシステム中の選択された基板上の全てのチップを選択して表示する手段、基板を選択する手段、選択された基板上のチップを選択する手段、選択されたチップ上でテストコントローラを表示して選択する手段及び、テストステップとテストグループとを作成編集して実行し、ボード又はシステムのテストコンフィグレーションファイルを前述した手段でセーブする手段となる。
(ATEソフトウェア統合)
【0082】
図6に、ETAソフトウェアがATEソフトウェアプラットフォーム中に統合される様子を示す。高レベル命令セットライブラリは、ユーザテストプログラムとインタフェースライブラリ56との間で通信を確立する。インタフェースライブラリ56は、ランタイムライブラリと通信し、また、ETAサーバとも前述したような手段で通信する。本発明の開発の際の考慮により、埋込テストアクセス機能を、ユーザテストプログラムに対して、インパクトを最少に抑えて提供している。高レベル命令セットは、ユーザテストプログラムを埋込テストサーバインタフェースから絶縁する使用しやすい命令となっている。ランタイムライブラリは、埋込テストサーバインタフェースに直接アクセスし、これにより、データログモードにおける障害報告などの自動機能を提供している。
【0083】
テストプログラム開発者は、グラフィカルユーザインタフェース54とATEデバッグ環境との組み合わせを用いて、テストプログラムを作成する。GUIを用いて、テストエンジニアは、被測定デバイスの機能を保証するために必要とされるパターンの最適なセットを見つける。ATE環境に内蔵された命令セットによって、本システムは、次のことを実行するコードを書き込む。
【0084】
●埋込テストATEライブラリに接続する。
【0085】
●被測定デバイスのテストコンフィグレーションデータをETAサーバから要求する。
【0086】
●テストベクトルをETAサーバから受信する。
【0087】
●テストベクトルをテストパターンに変換する。
【0088】
●テストパターンをテスタのパターンメモリ中にロードする。
【0089】
プロダクトサポートエンジニアによって指定された障害判断基準によってテストプログラムから自動的にコールすることが可能な診断ルーチンが提供されている。テストフロアスタッフが、テストプログラムを、テスト製造フロー中の他の全てのプログラムと同様にロードする。起動されると、テストプログラムは、自動的にETAサーバに接続し、被測定デバイスを識別し、関連のパターンをロードし、これによりテストの準備ができる。
【0090】
プロダクトサポートエンジニアは、デバイスの性能を監視する。製造の流れに関するより詳細な情報を、テストエンジニアによって書かれた診断ルーチンをイネーブルにすることによって得ることが可能である。個別の部品に対する故障解析は、ユーザインタフェースGUIを用いて得ることが可能である。これらのツールを用いて、テストプログラムの性能を、生産に対してさらに最適化することが可能である。
【0091】
本発明のさらなる態様は、ワークステーションを、直接に被測定デバイスとデバイスをテストする関連手段とに接続することを可能とするシステムに関連する。図12及び13に示すように、高速デバイス110は、ETAソフトウェアを装備され、また、5ピンの低速ケーブル112で標準のロード基板上にマウントされた被測定デバイスのJTAGピンに接続されている。このデバイスは、ATEテスタ34によって、従来の方式で電力を供給され、クロック信号を供給される。デバイス110は、ATEワークステーション116の、双方向入/出力パラレル又はシリアルポートなどの通信ポート114と接続されている。デバイス110中のソフトウェアは、ATEライブラリ46と通信するパラレルポートドライバ118などの適切なポートドライバとポート114とを含む。
【0092】
同図は、ATEの標準的な部分を形成するソフトウェアを実行するテストプログラムを表示している。本発明のETAソフトウェアは、ソフトウェアを実行するテストプログラムに、ソフトウェアリンクによって接続されている。このリンクは、任意のATE環境下にある任意のテストプログラムにも含むことが可能であるカスタムコードで書かれ、これは、「ユーザ機能」と呼ばれる。ユーザ機能は、ATEソフトウェア環境が直接にはサポートしていないなんらかの必要性が生成した場合に所与のATEソフトウェアプラットフォームの機能を完備するために、従来はATEシステム中に提供されていた。
【0093】
これらのユーザ機能は、テストエンジニアによってネイティブATEソフトウェア言語、通常はC言語、で書かれ、また、実行可能なテストプログラム中にリンクされる。ユーザ機能を用いて、ワークステーション上のETAサーバに対する通信チャネル(RPC)をオープンするようにしてもよい。このチャネルを用いて、テストプログラムだけにコールしてその結果を受信するようにしてもよい。次に、別の通信チャネルをオープンし、そのアドレスが、第1のチャネルを介してETAサーバに送られる。このようにして、ETAサーバは、必要次第で、テストプログラムをコールするハンドルを有する。
【0094】
テストプログラムとETAサーバとの間で通信を確立するユーザ機能のための疑似コードは、以下の通りである。
【0095】
ETAソフトウェアは、ポートを介してデバイスを占有し、これにアクセス、又は、これを診断する。
【0096】
テストプログラムプロセスとETAサーバとの間に通信が確立されると、これらは双方とも、互いに要求を行うことができる。他のユーザ機能もまた、ETAサーバからの要求に基づいて様々なユーザテストステップに応答してこれを実行するように書かれる。これらのユーザ機能は、ライブラリ中にコンパイルすること、又は、各ATEプラットフォームのソースコードとして供給することが可能である。
【0097】
記述したETAユーザインタフェースに対する性能強化や修正は、図12及び13に示す実施形態で動作するには全く不必要である。
【0098】
本実施形態には、多くの利点がある。本実施形態は、旧式の完全自動ATE上に容易にインストールされ、これによって、ユニットをグレードアップする必要なく、本発明を既存の装置に採用することが可能となる。これは、低価格の混合信号ATEを含む、ユーザが選んだテスタにインストールすることも可能である。
【0099】
上記から理解されるように、本発明は、完全な埋込テスト関連のテストフローをサポートするコンピュータプログラムプロダクト及びシステムを提供する。本システムは、設計環境内における埋込テストブロックの自動的な作成及び統合並びに、製造テスト環境内での埋込テストの自動的なアクセス及び制御をサポートする。これによって、設計環境からの埋込テスト関連情報が製造環境にシームレスに転送され、これで、生産go/no−goテスト実行用の埋込テストの自動的制御、生産データログ、さらに、アドバンスト故障診断が可能となる。本システムは、今までは製造テストの場合に必要であったバッチ指向のテストパターン生成のいかなる必要性をも解消し、また、たとえ解消されなくても、テストエンジニアが設計コミュニティに依存する程度を軽減するものである。
【0100】
本発明の好ましい実施形態は、何れのATEテスタプラットフォームでも動作するように設計されたシステムであるとはいえ、本発明は、この実施形態に制限されるように解釈されるべきでないことが理解されるであろう。事実、設計環境下と製造テスト環境下との双方においてアクセス可能な埋込テストIPアクセスデータファイルを生成するシステムを提供することにはかなり利点がある。したがって、特定のATEテスタシステム用に様々な機能が設計されている、すなわち、本書に記載のライブラリの一部が不必要となることを意味する、実施形態を提供することは本発明の範囲に含まれる。
【0101】
本発明を、本発明の好ましい実施形態と図面とを参照して詳細に説明したが、本発明の精神と範囲とから逸脱することなく、様々な応用、修正及び変更が遂行できることが当業者には明らかであろう。したがって、今まで記載した添付図面は、前述のクレームと適切に解釈された法的な等価物からしか推察すべきでない本発明の範囲を制限する意図はないことを理解すべきである。
【図面の簡単な説明】
【図1】
本発明の実施形態のシステムアーキテクチャのフローを示すブロック図である。
【図2】
本発明の実施形態のテストコンフィグレーションファイルの一般的な構造と構文を示す図である。
【図3】
本発明の実施形態の埋込テストコントローラアクセスシステムのライブラリレベルのアーキテクチャを示すブロック図である。
【図4】
本発明の実施形態のテストパターンの生成フローを示すブロック図である。
【図5】
本発明の実施形態の障害データログフローを示すブロック図である。
【図6】
本発明の実施形態のATEソフトウェアプラットフォームアーキテクチャを示すブロック図である。
【図7】
本発明の実施形態のグラフィカルユーザインタフェースのメインウィンドウの図である。
【図8】
本発明の実施形態のメモリテストコントローラのアドバンストランタイムオプションを指定する際に用いられるグラフィカルユーザインタフェースのウィンドウを示す図である。
【図9】
本発明の実施形態の、メモリテストコントローラの診断オプションを指定する際に用いられるグラフィカルユーザインタフェースのウィンドウの図である。
【図10】
本発明の実施形態のロジックテストコントローラの診断オプションを指定する際に用いられるグラフィカルユーザインタフェースのウィンドウの図である。
【図11】
本発明の実施形態の埋込テストアクセスサーバと、クライアントソフトウェア及びATEソフトウェアの環境と、のより高次のブロックダイアグラムと、プログラムプロダクトの複数の機能を実行することにより生じるデータフローと、を示す。
【図12】
本発明の実施形態における、ATEテスタのテスタヘッドにマウントされている被測定デバイスのJTAGピンに直接接続されている、本発明のプログラムプロダクトがロードされる、コンピュータシステムを示す。
【図13】
本発明の実施形態における、ATEテスタのテスタヘッドにマウントされている被測定デバイスのJTAGピンに直接接続されている、本発明のプログラムプロダクトがロードされる、コンピュータシステムを示す。
【発明の属する技術分野】
本発明は、集積回路の設計とテストとに関し、詳細には、集積回路のテストを、設計テスト環境下と製造テスト環境下との双方で、埋込テストコントローラでテストすることを容易にする際に用いられるシステム、プログラムプロダクト及び方法に関する。
【0002】
【従来の技術】
製造テストのフローには、集積回路のコミュニティと製造テストのコミュニティとが分離している、という問題があった。設計エンジニアは、一般的に、集積回路の設計用のテストパターンを作成して、テストエンジニアに送る。テストエンジニアは、自動テスト装置(ATE)にロードされることにより実行されるテストプログラムの全体に、テストパターンを組み込む。この自動テスト装置は、一般的には、被測定デバイスを内部にマウントするコンピュータソフトウェアコントローラテスタを含んでいる。多くのATEが市販されており、またその内の多くが、様々な命令セットのフォーマットを持つ様々なオペレーティングシステム上で動作する。したがって、設計エンジニアと製造のテストエンジニアとの間のハンドオフは、テストパターンをATEが理解できるフォーマットに変換しなければならないため困難なものとなる。加えて、故障が発生すると、テストエンジニアは、正しい診断をするためには、しばしば設計エンジニアに相談し、デバイス設計データを参照する必要がある。
【0003】
この設計エンジニアとテスト製造エンジニアとの間の連絡及び相談は、特定の市販ATEのアーキテクチャ、これに固有のオペレーティングシステム及び動作特性に強く依存しているため悪化させられる。製造テスト環境が、極度にリソース集約的であり、このことは、集積回路の製品化までの時間、大量生産化までの時間及び品質にかなりの影響を及ぼすことになる。
【0004】
製造go/no−goテストを実行するためのテストベクトルとテストプログラムとの準備をかなり減少させることを可能とする埋込テストアーキテクチャが提案されているとはいえ、一般的には、テスト結果が診断解析のために利用可能となることはない。この診断の問題は、ビルトインセルフテスト(埋込テスト)がテスト方法の一部をなす場合には、特に重要である。ビルトインセルフテストは独立している(self−contained)ため、テスト結果データは、全体的なgo/no−goのレポートに過ぎず、一般的には、診断解析のために利用されることはできない。したがって、よりよい診断解析を得るためには、埋込テストブロックを、「バッチ」ベースで数回実行し、実行する毎に、異なるテストパターン及び/または埋込テスト動作モードを用いて、追加の診断情報を得るようにしなければならない。多くの場合、埋込テストの実行ごとのセットアップ要件は、先行する1つ以上の実行の結果によって異なる。これは、テストエンジニア及び特に設計エンジニアは、障害を診断するために、予めテストプログラムを作成することができないにもかかわらず、診断がなされている間に、テストプログラムを作成しなければならないことを意味する。
【0005】
即ち、設計エンジニアとテスト及び製造のエンジニアとの間での情報のシームレスな伝達と合成とに基づき、テストプログラムの開発とテスト結果の診断とを容易にする、一般的なテスト環境が必要とされる。
【0006】
【発明が解決しようとする課題】
本発明は、非ATE環境と同様に、従来のATE環境における埋込テストコントローラテストをシームレスに統合するソフトウェアシステム及び方法を提供する。本システムは、上記の従来型バッチ指向テストパターン生成の必要性を解消し、また、解消しない場合でも、テストエンジニアの設計コミュニティに対する依存性を低減する。
【0007】
このことは、部分的には、環境下の集積回路デバイスの埋込テストアクセスデータファイル、埋込テストコントローラを動作させるために必要とされる埋込テストブロックに関する情報の全てを含むデータファイル、診断結果を提供することにより、部分的には、比較的シンプルなユーザテスト定義コンフィグレーションに基づく、1つ若しくは複数のテストコントローラにおいてテスト及び診断を自律的に行うことができるシステムを提供することにより、達成される。本発明の別の態様は、アクセスデータファイルを読み取って表示するユーザインタフェースを提供するが、この場合、テストコントローラは、被測定デバイスと、各コントローラと関連するランタイムパラメータと、を含み、これにより、パラレル又はシーケンシャルな1つ又は複数のテストコントローラを含むテストステップのシーケンスを、ユーザが指定することを可能とする。この結果、設計と製造テストとの間のハンドオフが無ベクトルのものとなる。
【0008】
本発明のシステムは、テストプログラム開発者、製造テストスタッフ及び製品サポートエンジニアの各々の必要性をサポートする。埋込テストアクセスシステムをATEオペレーティングシステムと統合することによって、これらのユーザは、自分が操作するのに最も適した環境下で作業することが可能となる。テストエンジニアは、自分が他の利用可能なテストプログラム作製ツールで作業するのと同じように、埋込テストアクセスソフトウェアで作業する。製造スタッフの場合、最終的なテストコンフィグレーションは、go/no−goテストのための他の何れのテストプログラムとも全く異なることがなくテスト生産フローに適合する。製品サポートエンジニアは、本システムをセットアップして、故障のメカニズムを監視し、また、特殊な診断ルーチンをコールして、故障が何れのロジックデバイスのフリップフロップやメモリデバイスの何れのセルによるものであるかを明確にする。
【0009】
【課題を解決するための手段】
本発明の一つの態様は、1つ又は複数の埋込テストコントローラを有する回路をテストする方法、システム、プログラムプロダクトとして定義される。該方法、システム、プログラムプロダクトは、デバイスに埋め込まれた全てのテストコントローラを識別し、該テストコントローラからのテストデータの起動、実行、抽出に要されるデータを記載するテストコントローラアクセスデータを読み込み;該デバイスに埋め込まれた1つ又は複数のテストコントローラにおいて実行される1つ又は複数のテストステップを記載するテストコンフィグレーションデータを読み込み;1つ又は複数のテストコントローラの各々からテスト応答データを起動し、実行し、抽出するために要されるアクセスデータファイルデータから抽出することを含む、1つ又は複数のテストステップの各々を実行するテストパターンのシーケンスに該テストコンフィグレーションデータを変換し、該集積回路の1つ又は複数のテストコントローラにテストパターンのシーケンスをロードする。
【0010】
本発明の別の態様は、埋込テストコントローラを有する回路において実行されるテストのテスト応答データを診断する方法、システム、プログラムプロダクトである。該方法は、テストコントローラにロードされたテストパターンの実行において比較の失敗を示すモジュール障害の各々に対し、ピンの名称、及び、テストパターンの先頭からのピンのサイクルオフセットを判断し;該サイクルのバックマップデータファイルから、障害の原因であるサイクルの比較パターンを生成したフォーマットされたジェネリックコマンドの識別を判断し;該ジェネリックコマンド障害及びコマンドにおけるビットオフセットの障害の識別を用いて、バックマップデータファイルにおけるオリジナルコマンドと、該ジェネリックコマンドに関連するバックマップにコメントされている埋込テストレジスタデータにおけるビットオフセット障害と、を判断し;障害の記載を生成するピンに関連する埋込テストコントローラのアクセスデータファイルに対するレジスタビット障害と、該回路の設計コンテクストにおけるデータログレポートと、を解析する。
【0011】
本発明の更に別の態様は、埋込テストコントローラを有する電気システムをテスト又は診断する際に使用するシステム及びプログラムプロダクトとして定義される。該システム及びプログラムプロダクトは、該電気システムの埋込テストコントローラのテスト性能に関する情報を生成する第1の手段と、該電気システムのテストコントローラのテスト及び/又は診断命令と、データと、を生成する第2の手段と、該テストコントローラに該命令及びデータを適用し、該テストコントローラからテスト結果を受信する第3の手段と、該テストコントローラのテスト結果データを解析し、該電気システムの特性をレポートする第4の手段と、を備える。
【発明の実施の形態】
【0012】
本発明の上記の特徴と他の特徴及び態様は、添付図面を参照して記載される以下の説明によればより明らかであろう。
【0013】
本発明は、集積回路中の障害をテストして診断する新規な方法、並びに、本方法を自動化するコンピュータプログラムプロダクト及びシステムを提供する。本発明によれば、被測定デバイス中に埋め込まれたテストコントローラに関する詳細なデータは、コンピュータ読み取り可能データベース中に記憶される。このデータベースは、1つ以上のコンピュータ読み取り可能ファイルを含む適切などのような形態をも取り得る。以降、このデータベースを、埋込テストアクセスファイル又はETAファイルと呼ぶ。本発明によるプログラムプロダクトは、以降、埋込テストアクセスソフトウェア又はETAソフトウェアと呼ぶ。本発明はまた、ユーザ定義のテスト及び診断を実行する比較的簡単なユーザ定義テストコンフィグレーションと、テストコンフィグレーションを生成し、このテストコンフィグレーションをコンピュータ読み取り可能ファイル中に記憶するユーザインタラクティブインタフェースと、を採用するシステムを提供する。以下の記述は、これらのファイルのコンテンツを詳述する。
【0014】
本発明の別の態様は、本発明の所望の方法及び機能、詳細には、ETAファイルを読み取り、該ファイルのコンテンツを用いて、テストコンフィグレーションファイルを生成して保存し、該テストコンフィグレーションファイル中の各テスト規格を1つ以上のシーケンステスト命令に変換して、被測定デバイスに対してテストを実行し、テスト命令を実行し、また、テスト結果を診断する機能、を提供するプログラムを含む第1のライブラリの提供に関する。
【0015】
本発明の別の態様は、第1のライブラリによって生成されたテスト命令をマシン固有のフォーマットに変換して、マシン固有の命令を、被測定デバイスが接続されているマシンに入力するプログラムを含む第2のライブラリの提供に関する。第2のライブラリは、また、マシンから出力されたテスト結果データをジェネリックなフォーマットに変換して、第1のライブラリが、テスト結果を診断できるようにする。
【0016】
上述したように、ETAソフトウェアはまた、単純なパス/障害から障害モジュールの識別に至る診断レベルでテスト障害を診断するように設計されている。診断の実行に際して、本システムは、ETAファイルにアクセスして、固有のテストのための正しい応答データを決定し、このデータを用いて障害モジュールを識別する。本システムは、ユーザインタフェースによってインタラクティブに又はユーザの干渉とは無関係に実行することが可能である。
【0017】
本発明の特定の実施形態では、前述のマシンはATEテスタである。しかしながら、本発明は、本方法と本システムとを他の環境に応用することを予定している。加えて、本特定の実施形態においては、ETAソフトウェアがATEシステムにロードされているとはいえ、本ソフトウェアは、このようなシステムと緊密に関連する必要はないことが理解されよう。実際、本発明は、本ソフトウェアが、テストされるデバイスから遠隔に置かれ、また、ローカルエリアネットワーク、インターネット、イントラネット、ダイヤルアップ、及び、被測定デバイスと通信するための接続などの手段を用いるデバイスと接続することを予定している。本システムは単に、テストされるデバイス毎に前述のETAデータファイルを必要としているだけである。本発明は、テストの実行又は特定のデバイスを予定しているだけではなく、回路基板やシステムのテストも予定している。
(埋込テストコントローラ)
【0018】
本発明をさらに詳述する前に、埋込テストコントローラとこれに関連する用語を簡単に説明しておくのが有用であろう。
【0019】
埋込テストブロック又はテスト構造体は、一般的には、集積回路デバイス中の所定のスキャンチェーン内に配置されたビルトインセルフテスト又は埋込テストコントローラ及び関連のテスト可能モジュールと定義される。テスト可能モジュールは、テストされるデバイス中に埋め込まれたハードウェアエンティティである。モジュールは、組み合わせロジック、埋め込まれたメモリ、複合された信号コンポーネントなどであってよい。埋込テストコントローラは、同じタイプの1つ以上のモジュール、すなわち、ロジック又はメモリをパラレルに又はシーケンシャルにテストするように設計された回路である。埋込テストコントローラは、テスト用のテストベクトルを生成するために用いられるランタイム制御オプション又はパラメータを有している。これらのオプションは、コントローラのタイプによって異なる。例えば、「保持時間」は、メモリタイプの埋込テストコントローラの場合に指定され、「パワーレベル」は、ロジックタイプの埋込テストコントローラの場合に指定される。埋込テストコントローラのステップは、診断目的で実行される動作である。ロジックタイプの埋込テストコントローラにおけるステップは、「試行」と呼ばれ、一方、メモリタイプの埋込テストコントローラにおけるステップは、「ステップ」と呼ばれる。
【0020】
テストコントローラは、テストパターンをシリアルにコントローラ中にロードすることによって、所望のランタイムパラメータを指定するパターンで、実行させられる。そのように指示された場合、テストコントローラは、これと関連するテスト可能モジュールのテストを実行する。コントローラがテストを実行する手段は、コントローラのタイプによって異なる。ロジックテストコントローラは、指定されたパラメータに従ってテストパターンを生成する疑似ランダムパターンジェネレータ(PRPG)を含む。このテストパターンは、このテストコントローラと関連するテスト可能モジュール中にロード又はスキャニングされる。コントローラは、また、複数入力シリアルレジスタ(MISR)を含むが、これは、PRPGが生成したテストパターンに対するテスト可能モジュールの応答を解析するものである。MISRは、go/no−go出力を生成するか、又は、さらなる解析のために応答データを出力してもよい。このようなコントローラは、技術上公知であり、したがって、ここではこれ以上詳述しない。メモリ及び他のタイプのコントローラも、同様に、コントローラと関連したモジュールをテストする手段を含んでいる。
(埋込テストコントローラアクセスデータファイル)
【0021】
図4に、ETAファイル、即ち、データベース32のコンテンツを示す。ETAファイル、即ち、データベースは、被測定デバイスの埋込テスト機能を含み、また、以下に示すセクションを備えている。
【0022】
1.デバイス中の各埋込テストブロックのアクセスインタフェースと制御インタフェースとを記述している埋込テストアーキテクチャ記述セクション32a。これは、各埋込テストブロックポートの機能と、各テストブロックの埋込セットアップスキャンチェーン内のレジスタの各々の記述と、を含んでいる。例えば、このセクションは、テスト中に入力されるランダムパターンの数を指定するために用いられるロジックテストブロックのセットアップスキャンチェーン内のビット範囲を示す。このセクションは、また、各埋込テストブロックの制御ポート及びアクセスポートとデバイス又は1149.1TAPのピン間の接続を記述している。このセクションは、埋込テストブロックのイネーブルピンに対するTAP命令レジスタビット接続を示す。
【0023】
2.各埋込テストブロックの情報にアクセスし、該情報を実行し、リトリーブするために必要とされるパターンを定義するアクセスパターン記述セクション32b。
【0024】
3.シミュレーションから導き出され、また、ランタイム環境下では効率的に生成することが不可能なテスト結果を生成するテストブロックの一部の形態で用いられるオプションの結果データセクション(図示せず)。これにより、これらの結果は、ETAソフトウェアに対して利用可能とされる。このような結果データの例として、スキャンベースのロジック埋込テストコントローラに起因する署名や、テストの障害を診断して欠陥モジュールを突き止める際に用いられるベクトルデータなどがある。
【0025】
上記のデータは、1つ以上のファイルを含む、何れかの適切な又は所望の手段で記憶される。
【0026】
ETAファイルは、任意の所望の手段で開発することが可能である。しかしながら、本発明によれば、このファイルは、集積回路デバイスの設計プロセスの一部として開発される。図1に、本発明の好ましい実施形態による、ソフトウェアシステム10のアーキテクチャの全体的なフローを示す。この図の左側は、設計環境内で生成するものである。同図の右側は、製造テスト環境である。本システムは、3つの主要なコンポーネント、すなわち、埋込テストIP(Intellectual Property)ジェネレータ12、埋込テストIPインテグレータ14、及び、ETAソフトウェア16と呼ばれる埋込テストアクセスソフトウェアを含んでいる。埋込テストIPジェネレータは、テストされる設計コンポーネントの要件に基づいて様々な埋込テストブロックの集積回路設計記述を作成する自動ツールである。これらの記述は、埋込テストIP設計データファイル18中に記憶される。
【0027】
埋込テストIPインテグレータは、埋込テストIP設計データファイル18をチップ設計データファイル20とマージして、埋込テスト設計データファイル22でチップを生成するオートメーションルールである。一般に、これらのデータファイルは、ハードウェア記述言語(HDL)フォーマットで指定されたコンポーネント記述を持つASCIIテキストファイルという形態で与えられる。このようなツールとファイルとは、一般的に、当業者には公知である。これらの機能の内、埋込テストIPインテグレータツールは、ファイル22中に、制御ポートとアクセスポートとの間の接続の、被測定デバイスのピン又はデバイス内で実施されているIEEE1149.1テストアクセスポート(TAP)に対する規定を挿入する。埋込テスト設計データファイル22を持つこのチップを、製造ハードウェア/ソフトウェア24が用いて、集積回路すなわちチップ26を製造する。埋込テストIPジェネレータツール及びインテグレータツールには、市販されているものがあるため、ここでは詳述しない。
【0028】
本発明によれば、これらのツールは、アクセスソフトウェア16が埋込テストの実行、埋込テスト結果の抽出及び診断を自律的に実施することを可能とするために埋込テストアクセスデータファイル32の上記の3つのセクション中で必要とされる詳細な情報を提供するようになっている。好適には、これらのツールは、また、被測定デバイス中の全てのテストコントローラのテスト又は各テストコントローラのデフォルトランタイムパラメータの指定に用いられる「デフォルト」テストコンフィグレーションファイルをパラレルに生成するようになっている。このデフォルトテストコンフィグレーションファイルは、後述するような手段でユーザが編集することが可能である。
(テストコンフィグレーションファイル)
【0029】
図2に、テストコンフィグレーションファイル50を示す。これは、埋込テストコントローラのテストステップ、テストグループ及びランタイムのパラメータを指定するために用いられることができるシンタックスを含む。
【0030】
テストコンフィグレーションは、1つ以上のテストステップの順序付けされたコレクションと1つ以上のテストグループの順序付けされていないコレクションとである。テストステップは、1つ以上の埋込テストコントローラのパラレルなフル実行である。フル実行には、セットアップ、実行、及び、テストコントローラから得られたテスト結果の収集が含まれる。図2から理解されるように、TestStep1と呼ばれるテストステップのコンフィグレーションは、4行から始まり34行で終わる。各テストステップで、このテストコンフィグレーションは、テストのためのテストベクトルを生成するために必要な全ての埋込テストコントローラの全てのランタイム制御オプションを指定する。19〜32行で、メモリコントローラと、これに関連するランタイムパラメータの全てと、を指定する。テストコンフィグレーションは、各テストステップに対して別個のベクトルとタイミングとを指定する。図2では、これらは5〜18行目に指定されている。33行に示すように、同じタイプの他のテストコントローラ、この場合はメモリテストコントローラが、この時点でこれらのステップに追加される。
【0031】
テストグループは、テストステップの順序付けされたコレクションである。テストグループによって、テストプログラムは、非ATEベクトルがインタリーブされる特定の時点での実行のためのテストステップのグループを選択することが可能となる。この選択機能によって、ほとんどの障害が早期に検出されるようにテストプログラムを最適化し、これによって、テスト時間を短縮することが可能となる。外部ATEが、テストコンフィグレーション中で示されている全てのテストステップのための様々なタイミング(すなわち、ピン毎の周期、イベントなど)をプログラムするために必要とされてもよい。
【0032】
図2に示されるように、テストグループGroup1は、3行〜45行の間で定義され、前述のTestStep1を含んでいる。44行に示されているように、このグループ中の追加のテストステップは、このポイントに挿入してもよい。46行に、追加のテストグループはこのポイントで定義してもよいことを示す。
【0033】
テストコンフィグレーションは、標準のテキストエディタを用いて作成又は修正されることができるASCIIテキストファイルに記憶される。しかしながら、本発明は、ETAファイルにアクセスすることと、埋込テストコントローラ及び関連のランタイムオプションを表すアイコンを表示すること、との双方のためのユーザインタフェースプログラムを、ユーザが容易に、テストコンフィグレーションを作成し、テストコントローラランタイムパラメータ及び診断優先度を指定できるように提供する。このユーザインタフェースは後述する。
【0034】
テストコンフィグレーションの構造は、本発明の精神から逸脱することなく修正され得ることが理解されるであろう。
(テストプログラム)
【0035】
ここで図3を参照する。今までは、集積回路生産環境下では、ユーザは、テストプログラムを開発してこれをATEテスタコントローラソフトウェアプラットフォーム30上に、オペレータインタフェースボックス又はワークステーション(図示せず)を用いてロードしたものである。ATEソフトウェアプラットフォームには、ベンダー固有のソフトウェアが、ATEテスタハードウェア34上のテストプログラムに含まれている命令を読み取って実行するルーチンライブラリとハードウェアライブラリと、という形態で含まれている。ユーザ定義されたテストプログラムは、実際にATEテスタをテストデバイスにドライブするするコードとデータとの組み合わせである。テストプログラムソースコードは、一般的には、ATEテスタプラットフォームが異なれば(例えば、Toolbox(登録商標)中のCコード、Agile(登録商標)中のブロック指向のASCIIコードなど)、その形態も異なる。
【0036】
本発明は、従来のテストプログラムの必要性を解消することを追求するが、従来のテストプログラムが、本発明のシステムにアクセスすることを可能とする手段を提供する。ATEテスタソフトウェアは、各ATEテスタモデル毎に対して高度に特殊化されているため、また、レガシーを考慮しているため、一般に、言語や通信の修正に対してはフレキシブルではない。この理由により、本発明の埋込テストアクセス機能のバルクは、以下に説明するETAサーバソフトウェア中に常駐する。ユーザ定義のテストプログラムやグラフィカルユーザインタフェースとシェルユーザインタフェースなどのクライアントプログラムは、ETAサーバと通信するために小さいライブラリのユーティリティプログラムしか必要としない。したがって、本発明は、「ATEサーバインタフェースライブラリ」というラベルを持ち、一般に参照符号56で指定される小さいプログラムライブラリを提供するが、これは、ATEテスタコントローラ上にインストールされて、ETAソフトウェア機能とETAデータとにアクセスする必要があるときには、クライアントプログラム内からコールすることが可能である。同様に、ETAシステムは、このライブラリにコールして、ATEテスタ上で動作を実行することが可能である。RPCやCORBAなどの適切なプロセス間通信方法をテスタプラットフォーム上で用いて、ETAソフトウェアにアクセスすることが可能である。
【0037】
したがって、ユーザは、従来のテストプログラムを開発して、これを、インタフェースライブラリ56によって提供される高レベルの命令中に組み込んで、ETAシステムと通信する。この高レベル命令のセットは、テスト開発者が埋込テストソフトウェアアーキテクチャの詳細な知識を必要とすることなくテストプログラムを作成することを可能とする手段となる。詳細には、この命令セットは、次の機能を提供する。
●ETAシステムに対して、デバイスの名称とロケーションを指定することによって、そのデバイスがテスト中であることを指定する。
●ETAサーバが生成したロジック、フォーマット及びタイミングを完備したターンのセットをテスタ34のメモリ中にロードする。
●障害データをパターンの実行から抽出して、診断用のETAサーバ環境に送る。
●故障情報をETAサーバから受信して、テスタシステムデータ収集ストリーム中に挿入する。
(ETAソフトウェアシステム)
【0038】
ETAソフトウェアは、被測定デバイスが置かれている環境、この場合はATEソフトウェア環境と被測定デバイス中の埋込テストブロックとの間にリンクされている。ETAソフトウェアとこの環境とを統合することによって、テストプログラム開発者は、埋込テストブロックの動作を、埋込テストブロックの様々なモードとパラメータとを指定する(すなわち、様々な「what−if」シナリオを演じる)ことによって観察することを含む多くの特定の動作を実行することが可能となり、これによって、最適な「生産」テストプログラムを設計したり、初期化に際して、パターンのセットを作成してこれをATEテスト中のパターンメモリ中にロードしてテスト生産フロア上でgo/no−go方式に基づいて実行するテストプログラムを開発したり、欠陥埋込テストブロックを、例えば、ユーザがロジック埋込テストの障害を診断して欠陥フリップフロップを明らかにしたり、メモリ埋込テストの障害を診断して欠陥メモリセルを明らかにしたりできるように診断したり、テストプログラムからコールされて、被測定デバイスの統計的データ解析の支援となることが可能な診断手順のセットを提供したりすることが可能となる。
【0039】
本発明のETAソフトウェア16は、ATEテストシステム30上で直接的に実行されて、クライアントプログラムに対して、テスト中のデバイス26内に埋め込まれている全てのテストブロックに対する完全なアクセス権を与えるようになっている。しかしながら、既述したように、ETAソフトウェアは、遠隔にロードして、デバイスに対して任意の適切な手段で接続されてもよい。ETAソフトウェアはまた、以下に説明するように、従来のテストプログラムを必要とすることなく、テストを実行してテスト結果を診断することが可能である。
【0040】
図3に、ATEテスタから直接アクセスすることが可能な環境下におけるETAシステムのライブラリレベルのアーキテクチャを示す。このシステムは、ATE埋込テストサーバ42と、ATEテスタハードウェア34を制御するATEソフトウェアプログラムプラットフォーム30と、を含む。
【0041】
サーバ42は、ATEライブラリ46、アプリケーションプログラムインタフェース(API)47及び、テストコンフィグレーションデータファイル50及びETAファイル32を読み取るETAライブラリ48を含んでいる。API47は、ライブラリ46と48との間の通信、さらに他のクライアントプログラム52との通信を提供する。ライブラリ46は、テスタと、又は、ATEソフトウェアプラットフォーム上で実行されるテストプログラムと、インタフェースライブラリ56を介して通信する。ETAソフトウェアは、後述のユーザインタフェース54を含んでいる。サーバソフトウェア42は、ATEソフトウェア44がロードされるのと同じマシン上にインストールされたり、または、別個のマシン上にロードされて、適切なネットワークによってATEソフトウェアマシンに接続されたりする。
【0042】
ATEライブラリ46は、テストプログラムに又はライブラリ56中のユーティリティに対する通信リンクを提供し、パターンをテスタとは無関係なフォーマットからテスタ固有のフォーマットに変換し、変換されたパターンをテスタ上の実行中のパターン中にロードし、テスタ固有のテスト結果をテスタとは無関係なフォーマットに変換してこの変換されたテスト結果をライブラリ48に処理目的で伝達することによって、ETAライブラリ48を、特定のテスタモデルにとってのターゲットとする。この目的のために、ライブラリ46は、様々なATEテスタのモードの各々に対して1つずつ対応する、複数の変換ライブラリを含む。システムを初期化する際には、ユーザは単に、使用すべき固有のATEテスタモデルを指定するが、これは、ライブラリ46をこのモデルに対する関連の変換ライブラリにアクセスさせるものである。
【0043】
サーバライブラリ48は、ETAソフトウェア16の一次的な機能を提供するが、これは、ETAファイルとテストコンフィグレーションファイルとの処理であり、被測定デバイスのユーザ定義テストを実行してテスト結果を診断するものである。この目的のため、ライブラリ48は、パターンプロセッサ60とデータログジェネレータ66とを有する。このパターンプロセッサを最初に説明する。
【0044】
パターンプロセッサ60は、テストコンフィグレーションファイル中に指定されているテストを実行するために必要なテストパターンを生成する。図4に、本発明によるパターンプロセッサ中に組み込まれたテストパターン生成プロセスを示す。パターンプロセッサ60は、ETAファイルとテストコンフィグレーションファイルとを読み取るように動作可能である。これには、テストコンフィグレーション規格と、各規格を処理するための特定の手順と、のライブラリ(図示せず)が含まれている。これによって、プロセッサは、テストコンフィグレーションファイル中の各規格を読み取り、また、ETAファイルを用いて、ジェネリックな又はATEテスタとは無関係なフォーマットで、対応する命令又は命令のシーケンスを生成することが可能である。テストコンフィグレーションファイル中に指定されている各テストステップに対して、パターンプロセッサ60は、次のタスクを実行する。
【0045】
1.テストステップ中に指定された埋込テストブロックを識別し、各テストブロック毎にETAのアクセスパターン記述セクションから、テストステップによって指定されたモードでテストコントローラを実行させるために必要とされるアクセスパターンを抽出する。
【0046】
2.テストステップ中のテストコントローラの各々に対する抽出済みのパターンを1つのパターンにマージし、これによって、テストステップ中の全ての埋込テストブロックがパラレルに実行されるようにする。
【0047】
3.ETAファイルの埋込テストアーキテクチャ既述セクションを用いて、テストパターンセットを被測定デバイスのI/Oピンと、又は、デバイスのテストアクセスポートインタフェースと、関連付けて、テストステップ規格を実効させるために必要な全ての命令のシーケンスを生成する。
【0048】
4.ターゲットとされたテストパターンセットを、シリアルベクトルフォーマット(SVF)などのテスタとは無関係なフォーマットに変換し、この変換されたテストパターンをテスタとは無関係なフォーマットのテストパターンファイルとして記憶する。SVFは、IEEE1149.1の周知の高レベル言語である(参照することで本明細書に組み込まれる、1997年7月28日改訂、パート番号ASSET−SVF−DOC、Asset Intertech社から入手可能、著作権1994 Texas Instrument、著作権1997 Asset Intertech、「シリアルベクトルフォーマット規格(Serial Vector Format Specification)」を参照のこと)。SVFが好ましいとはいえ、本発明の精神から逸脱しない他のどのようなジェネリックなフォーマットでも採用可能である。
【0049】
ATEライブラリ46はATEパターントランスレータ62を含むが、これは、各命令を、パターンプロセッサ50によって生成されたテスタとは無関係なテストパターンファイルに変換して、以下の追加タスクを実行する。
【0050】
5.テスタとは無関係なフォーマットテストパターンファイル中の高レベルSVFコマンドをI/Oトランジションに拡張して、次に、このトランジションをターゲットテスタが必要とする固有のフォーマットに変換する。
【0051】
6.変換されたパターンをATEサーバインタフェースユーティリティ56に伝達し、これがコマンドをテスタに入力する。
【0052】
7.SVFバンクマップデータを、後述する障害データログプロセス中に使用されるバックマップファイル又はデータベース用に生成する。
【0053】
テスタとは無関係なフォーマッティングがされたパターンセットとそれに対応するテスタ固有変換とは、本質的に、従来のテストプログラムの同等物である。
【0054】
このパターン生成フローは、埋込テストパターンが比較的単純であるため、リアルタイムテスト環境によく適している。一般的な埋込テストコントローラ実行には、一般的に、埋込テストブロック中の数10個のレジスタビットの初期化と、数100万の迅速なATEクロックサイクルの繰り返しループと、埋込テストブロック中の数10のレジスタビットの結果取得と、が伴う。
(障害データログ動作)
【0055】
ATE環境におけるデータログ動作とは、被測定デバイス中の障害に関する情報を採取して報告するプロセスのことである。このデータは、被測定デバイスの問題の症状、すなわち、デバイスがどのように故障しているかを記述している。データログ故障情報は、リアルタイムで又はログファイル中に収集されて、オフラインで解析される。診断とは、欠陥デバイスの解析しデバイスが故障する理由を判定するプロセスのことである。ここで、データログと診断との区別は、データログを、何れのベクトルも変更することなく得られたなんらかの故障情報として定義することによってなされる。
【0056】
図5に、本発明による故障データログフロープロセスを示す。ETAサーバライブラリ48はさらに、故障データログメカニズムを含むが、このメカニズムによって、システムはチップ設計データというコンテクストにおけるATE環境によって報告されたATE障害を解釈し、これによって、意味のあるデータログ結果を提供することが可能となる。このメカニズムは、ATE故障データをATEソフトウェアプログラムから受信する、ATEライブラリ46中の故障トランスレータ64を含む。このトランスレータは、故障をSVF故障、すなわちジェネリックな故障データに変換して、この変換された故障データを、ライブラリ48中のデータログジェネレータ66に転送する。データログジェネレータ66は、ETAファイルにアクセスして、SVFパターンデータをパターンプロセッサ60から、そして、SVF故障データを故障トランスレータ64から受信する。
【0057】
データログ動作のプロセスは、次のステップを含む。
【0058】
1.テストパターン実行における「比較の失敗」を表すATE故障は、ライブラリ46中の故障トランスレータ64に対して、インタフェース56を介して、ピン名称と、故障という結果となったATEテストパターンの先頭からのATEサイクルオフセットという形態で送られる。
【0059】
2.故障トランスレータは、SVFバックマップデータ中のATEサイクルをルックアップして、このATEサイクルの「比較」パターンを生成したSVFコマンドを決定して、対応するSVF故障を指定する。
【0060】
3.故障トランスレータは、SVF故障をデータログジェネレータ66に対して、障害SVFコマンドと、このコマンド内の障害ビットオフセットという形態で送る。
【0061】
4.データログジェネレータは、SVF中のオリジナルのコマンドを発見して、各SVFコマンドに対してコメントとして付けられた埋込テストレジスタデータから障害ビットオフセットを決定する。
【0062】
5.データログジェネレータは、障害レジスタビットを埋込テストコントローラに対するETAファイル中のアクセスデータと比較して、故障のセマンティックスを決定して、意味あるデータログをチップ設計のコンテクスト中に生成する。例えば、メモリ埋込テストデータログは、欠陥のメモリインスタンス、アドレス及びデータビットを含むことがある。ロジック埋込テストデータログは、欠陥のスキャン試行又は欠陥フリップフロップインスタンスを含むことがある。
【0063】
本システムは、故障を自動的に診断することが可能である。診断要求は、任意のクライアント、すなわち、ATEソフトウェア中にロードされたGUIプログラムやユーザが開発したテストプログラムによっても発行される。この要求は、ユーザが、ユーザインタフェースプログラムのディスプレイ上の「診断」オプションをクリックすると作成されて、ビットレベルの故障を取得したり、又は、ユーザ定義のテストプログラム中にプログラムされた命令によって作成されて、全ての欠陥メモリ埋込テストブロックの全ての欠陥メモリエレメントを診断するように、ETAサーバに指示する。欠陥メモリ又はロジックを自動的に診断する場合、本システムは、以下のシーケンスを数回反復して実行する。
【0064】
1.診断のために用いられる埋込テストブロックを含む、テストステップを作成して修正する。
【0065】
2.ATEパターンを前述したように生成する。
【0066】
3.パターンをロードし、これを実行し、結果を戻すように、テスタに命令する。
【0067】
4.テスト結果を解析して、埋込テストブロックを別のモードで実行することによって、追加の情報を収集することが可能であるかどうか判断し、不可能であれば、最終結果を報告する。
【0068】
ロジックテストコントローラによってテストされたロジックを診断するために、広い範囲の様々なアルゴリズムを用いることができるが、何れのアルゴリズムも、様々なセッティングでテストコントローラを1回以上実行することからなっている。診断で最も時間を要する部分は、失敗した試行を明らかにすることである。失敗した試行を明らかにするため、テストコントローラは何回も実行されるが、この場合、テストコントローラの実行は、以下のステップを含む。
【0069】
1.PRPG(PS)とMISRを初期化して、試行(MS)を開始する。
【0070】
2.多くのATEクロックサイクル(R)にわたって、テストコントローラと関連するテスト可能モジュールとをクロック制御する。
【0071】
3.期待されるMISR比較値(MC)をスキャンアウトする。
【0072】
テストコントローラの実行は、ベクトルのテンプレートとして実施される。これが実行されると、パラメータが異なればそれに応じて異なった値を、すなわち、PS、MS、R及びMCに対して異なった値を単に「渡す」ことによって、同じベクトルセットを繰り返して用いる。これによって、何れのアルゴリズム、すなわち、バイナリ、シーケンシャル、指数関数的シーケンシャル又は他のアルゴリズムなどを用いても同じパターンを再使用して、結果データ中の障害を探索することが可能となる。このようなアルゴリズムは、技術上公知であり、したがって、ここでは説明しない。
【0073】
ユーザは、最初の障害試行、最初から数えてN個の障害試行又は全ての障害試行を要求し得る。潜在的には、各要求に対して様々なアルゴリズムが用いられてもよい。バイナリ探索アルゴリズムが、「最初の障害試行」要求には最も適していることが分かっている。Nのサイズによっては、バイナリ探索アルゴリズム、シーケンシャル探索アルゴリズム又はこれらのハイブリッドが、「最初のN個の障害試行」要求には適している。シーケンシャル探索アルゴリズムは、ほとんどの場合、「全ての障害試行」要求に最も適していると信じられている。場合によっては、後者は全てのベクトルを生成するために必要とされる時間又はテスタ上のベクトルメモリのサイズのため、実現不可能となり得る。
【0074】
本発明の最良の実行モードでは、サーバライブラリ46が、C++抽象的ベースクラスとして実施され、また、ATE埋込テストインタフェースライブラリ56が、ジェネリックなサーバライブラリ46とターゲットATEテスタとの間の変換層として働くテスタ固有サブクラスとして実施される。ライブラリ46のC++クラス定義は、二重目的APIである。ベースクラスとして、それは、ATE埋込テストライブラリ56から直接アクセス可能である。ETAサーバライブラリC++クラス定義もまた、グラフィカルユーザインタフェースやテストプログラムなどの、任意のCORBAに準拠したクライアントに対してもアクセス可能とするCORBAインタフェースとして実施されるのが好ましい。システム機能のバルクをサーバ中に保持することによって、サーバを、テストプログラムの実施を考慮することなく、高レベルC++フレームワークで実施することが可能となる。
【0075】
図3から理解されるように、API47は、ETAサーバによってサポートされて、グラフィカルユーザインタフェース(GUI)、シェルユーザインタフェース(SUI)又はテストプログラムなどの何れのクライアントからの要求に対しても応答する。何れのクライアントからの適切な要求にも応答して、API47は、被測定デバイスに対するETAファイルを選択し、テストコンフィグレーションファイルを作成、ロード又はセーブし、テストコンフィグレーションファイルを修正し、指定された欠陥回路ブロックを診断する。
(ユーザインタフェース)
【0076】
好適には、本発明は、ユーザインタフェースを提供し、これにより、ETAサーバの機能に対するユーザのアクセスを可能とすることによって、テストコンフィグレーションファイルの開発を容易にする。より具体的には、ユーザインタフェースは、ETAファイルとテストコンフィグレーションファイルとの双方を読み取り、コンピュータ表示デバイス上でこれら双方のファイルからの情報を表示するように設計されている。図7に、グラフィカルユーザインタフェース54のメインウィンドウを示す。このウィンドウには、被測定デバイス中のロジックテストコントローラの各々を表すアイコン82を図形で示すボックス80が含まれている。図中の例には、ロジックテストコントローラとメモリテストコントローラとが含まれている。このテストコントローラを選択して、ウィンドウの中心部分にあるテストコンフィグレーションボックス84中にドラッグすることが可能である。テストコンフィグレーションは、テストステップとテストされる特定のモジュールとを含む、「group_memory」と呼ばれるテストグループを示す。テストコンフィグレーションボックスの右には、ボタン86、88及び90がそれぞれテストグループ、テストステップ及びテストコントローラ追加用に装備されている。このウィンドウは、出力ファイルとログファイルとを含むデバイスファイルを表示し、そのロケーションを指定する手段92となる。「実行」ボタン94は、テストを実行するために、また、「診断」ボタン96が、テスト結果を診断するために装備されている。診断結果は、ボックス98中に表示される。「セーブ」ボタン100が、テストコンフィグレーションをファイルにセーブするために装備されている。ユーザがセーブオプションを選択すると、プログラムは、ASCIIフォーマットで、全てのテスト規格をユーザが指定したテストコンフィグレーションファイル50に、テストコンフィグレーションボックスに図示されたシーケンスで書き込み、また、テストコンフィグレーション中に指定された各特定のテストコントローラに対するパラメータ指定ウィンドウ中に指定されているランタイムパラメータの全てを含む。
【0077】
ユーザインタフェースは、本システムによって処理されるテストコントローラタイプと関連すると考えられるパラメータの全てを表示して編集する手段ともなる。図8に、選択されたロジックテストコントローラと関連する「アドバンスト」パラメータを指定するテストステップウィンドウを示す。類似のウィンドウが、他の全てのタイプのテストコントローラに対しても装備されているが、パラメータは異なる。さらに、ユーザインタフェースは、所望次第で、どのようなATEプログラムでも呼び出すボタン又は他の手段を備えてもよく、インタフェースがテスタを直接に制御することを可能とする。
【0078】
ユーザインタフェースウィンドウのコンテンツ及びレイアウトは、本発明の精神から逸脱することなく修正し得ることが理解されるであろう。
【0079】
図9及び10に、それぞれメモリテストコントローラとロジックテストコントローラとに対する診断オプションを指定するのに用いられるウィンドウを示す。類似のウィンドウが、本システムによって処理される他の全てのタイプのテストコントローラにも装備されている。図示されるウィンドウは、図示だけを目的とし、テストコントローラとテスト規格と関連すると考えられる全てのオプションとパラメータとを完全に、そして、総体的に示すことを意図するものではないことが理解されるであろう。
【0080】
図11に、本システムの様々なコンポーネント同士間のインタフェースと多くの機能とを示す。
【0081】
本発明は、個別のデバイスのテストに制限されるものではないことが当業者には理解されるであろう。実際、本出願は、本発明が基板やシステムのテストに対しても等しく良好に適用されることを意図している。このような応用分野では、ETAサーバは、テストされる各ボード及び/またはシステム上の各チップと関連するETAファイルを記憶する。GUIは、基板又はシステム中の選択された基板上の全てのチップを選択して表示する手段、基板を選択する手段、選択された基板上のチップを選択する手段、選択されたチップ上でテストコントローラを表示して選択する手段及び、テストステップとテストグループとを作成編集して実行し、ボード又はシステムのテストコンフィグレーションファイルを前述した手段でセーブする手段となる。
(ATEソフトウェア統合)
【0082】
図6に、ETAソフトウェアがATEソフトウェアプラットフォーム中に統合される様子を示す。高レベル命令セットライブラリは、ユーザテストプログラムとインタフェースライブラリ56との間で通信を確立する。インタフェースライブラリ56は、ランタイムライブラリと通信し、また、ETAサーバとも前述したような手段で通信する。本発明の開発の際の考慮により、埋込テストアクセス機能を、ユーザテストプログラムに対して、インパクトを最少に抑えて提供している。高レベル命令セットは、ユーザテストプログラムを埋込テストサーバインタフェースから絶縁する使用しやすい命令となっている。ランタイムライブラリは、埋込テストサーバインタフェースに直接アクセスし、これにより、データログモードにおける障害報告などの自動機能を提供している。
【0083】
テストプログラム開発者は、グラフィカルユーザインタフェース54とATEデバッグ環境との組み合わせを用いて、テストプログラムを作成する。GUIを用いて、テストエンジニアは、被測定デバイスの機能を保証するために必要とされるパターンの最適なセットを見つける。ATE環境に内蔵された命令セットによって、本システムは、次のことを実行するコードを書き込む。
【0084】
●埋込テストATEライブラリに接続する。
【0085】
●被測定デバイスのテストコンフィグレーションデータをETAサーバから要求する。
【0086】
●テストベクトルをETAサーバから受信する。
【0087】
●テストベクトルをテストパターンに変換する。
【0088】
●テストパターンをテスタのパターンメモリ中にロードする。
【0089】
プロダクトサポートエンジニアによって指定された障害判断基準によってテストプログラムから自動的にコールすることが可能な診断ルーチンが提供されている。テストフロアスタッフが、テストプログラムを、テスト製造フロー中の他の全てのプログラムと同様にロードする。起動されると、テストプログラムは、自動的にETAサーバに接続し、被測定デバイスを識別し、関連のパターンをロードし、これによりテストの準備ができる。
【0090】
プロダクトサポートエンジニアは、デバイスの性能を監視する。製造の流れに関するより詳細な情報を、テストエンジニアによって書かれた診断ルーチンをイネーブルにすることによって得ることが可能である。個別の部品に対する故障解析は、ユーザインタフェースGUIを用いて得ることが可能である。これらのツールを用いて、テストプログラムの性能を、生産に対してさらに最適化することが可能である。
【0091】
本発明のさらなる態様は、ワークステーションを、直接に被測定デバイスとデバイスをテストする関連手段とに接続することを可能とするシステムに関連する。図12及び13に示すように、高速デバイス110は、ETAソフトウェアを装備され、また、5ピンの低速ケーブル112で標準のロード基板上にマウントされた被測定デバイスのJTAGピンに接続されている。このデバイスは、ATEテスタ34によって、従来の方式で電力を供給され、クロック信号を供給される。デバイス110は、ATEワークステーション116の、双方向入/出力パラレル又はシリアルポートなどの通信ポート114と接続されている。デバイス110中のソフトウェアは、ATEライブラリ46と通信するパラレルポートドライバ118などの適切なポートドライバとポート114とを含む。
【0092】
同図は、ATEの標準的な部分を形成するソフトウェアを実行するテストプログラムを表示している。本発明のETAソフトウェアは、ソフトウェアを実行するテストプログラムに、ソフトウェアリンクによって接続されている。このリンクは、任意のATE環境下にある任意のテストプログラムにも含むことが可能であるカスタムコードで書かれ、これは、「ユーザ機能」と呼ばれる。ユーザ機能は、ATEソフトウェア環境が直接にはサポートしていないなんらかの必要性が生成した場合に所与のATEソフトウェアプラットフォームの機能を完備するために、従来はATEシステム中に提供されていた。
【0093】
これらのユーザ機能は、テストエンジニアによってネイティブATEソフトウェア言語、通常はC言語、で書かれ、また、実行可能なテストプログラム中にリンクされる。ユーザ機能を用いて、ワークステーション上のETAサーバに対する通信チャネル(RPC)をオープンするようにしてもよい。このチャネルを用いて、テストプログラムだけにコールしてその結果を受信するようにしてもよい。次に、別の通信チャネルをオープンし、そのアドレスが、第1のチャネルを介してETAサーバに送られる。このようにして、ETAサーバは、必要次第で、テストプログラムをコールするハンドルを有する。
【0094】
テストプログラムとETAサーバとの間で通信を確立するユーザ機能のための疑似コードは、以下の通りである。
【0095】
ETAソフトウェアは、ポートを介してデバイスを占有し、これにアクセス、又は、これを診断する。
【0096】
テストプログラムプロセスとETAサーバとの間に通信が確立されると、これらは双方とも、互いに要求を行うことができる。他のユーザ機能もまた、ETAサーバからの要求に基づいて様々なユーザテストステップに応答してこれを実行するように書かれる。これらのユーザ機能は、ライブラリ中にコンパイルすること、又は、各ATEプラットフォームのソースコードとして供給することが可能である。
【0097】
記述したETAユーザインタフェースに対する性能強化や修正は、図12及び13に示す実施形態で動作するには全く不必要である。
【0098】
本実施形態には、多くの利点がある。本実施形態は、旧式の完全自動ATE上に容易にインストールされ、これによって、ユニットをグレードアップする必要なく、本発明を既存の装置に採用することが可能となる。これは、低価格の混合信号ATEを含む、ユーザが選んだテスタにインストールすることも可能である。
【0099】
上記から理解されるように、本発明は、完全な埋込テスト関連のテストフローをサポートするコンピュータプログラムプロダクト及びシステムを提供する。本システムは、設計環境内における埋込テストブロックの自動的な作成及び統合並びに、製造テスト環境内での埋込テストの自動的なアクセス及び制御をサポートする。これによって、設計環境からの埋込テスト関連情報が製造環境にシームレスに転送され、これで、生産go/no−goテスト実行用の埋込テストの自動的制御、生産データログ、さらに、アドバンスト故障診断が可能となる。本システムは、今までは製造テストの場合に必要であったバッチ指向のテストパターン生成のいかなる必要性をも解消し、また、たとえ解消されなくても、テストエンジニアが設計コミュニティに依存する程度を軽減するものである。
【0100】
本発明の好ましい実施形態は、何れのATEテスタプラットフォームでも動作するように設計されたシステムであるとはいえ、本発明は、この実施形態に制限されるように解釈されるべきでないことが理解されるであろう。事実、設計環境下と製造テスト環境下との双方においてアクセス可能な埋込テストIPアクセスデータファイルを生成するシステムを提供することにはかなり利点がある。したがって、特定のATEテスタシステム用に様々な機能が設計されている、すなわち、本書に記載のライブラリの一部が不必要となることを意味する、実施形態を提供することは本発明の範囲に含まれる。
【0101】
本発明を、本発明の好ましい実施形態と図面とを参照して詳細に説明したが、本発明の精神と範囲とから逸脱することなく、様々な応用、修正及び変更が遂行できることが当業者には明らかであろう。したがって、今まで記載した添付図面は、前述のクレームと適切に解釈された法的な等価物からしか推察すべきでない本発明の範囲を制限する意図はないことを理解すべきである。
【図面の簡単な説明】
【図1】
本発明の実施形態のシステムアーキテクチャのフローを示すブロック図である。
【図2】
本発明の実施形態のテストコンフィグレーションファイルの一般的な構造と構文を示す図である。
【図3】
本発明の実施形態の埋込テストコントローラアクセスシステムのライブラリレベルのアーキテクチャを示すブロック図である。
【図4】
本発明の実施形態のテストパターンの生成フローを示すブロック図である。
【図5】
本発明の実施形態の障害データログフローを示すブロック図である。
【図6】
本発明の実施形態のATEソフトウェアプラットフォームアーキテクチャを示すブロック図である。
【図7】
本発明の実施形態のグラフィカルユーザインタフェースのメインウィンドウの図である。
【図8】
本発明の実施形態のメモリテストコントローラのアドバンストランタイムオプションを指定する際に用いられるグラフィカルユーザインタフェースのウィンドウを示す図である。
【図9】
本発明の実施形態の、メモリテストコントローラの診断オプションを指定する際に用いられるグラフィカルユーザインタフェースのウィンドウの図である。
【図10】
本発明の実施形態のロジックテストコントローラの診断オプションを指定する際に用いられるグラフィカルユーザインタフェースのウィンドウの図である。
【図11】
本発明の実施形態の埋込テストアクセスサーバと、クライアントソフトウェア及びATEソフトウェアの環境と、のより高次のブロックダイアグラムと、プログラムプロダクトの複数の機能を実行することにより生じるデータフローと、を示す。
【図12】
本発明の実施形態における、ATEテスタのテスタヘッドにマウントされている被測定デバイスのJTAGピンに直接接続されている、本発明のプログラムプロダクトがロードされる、コンピュータシステムを示す。
【図13】
本発明の実施形態における、ATEテスタのテスタヘッドにマウントされている被測定デバイスのJTAGピンに直接接続されている、本発明のプログラムプロダクトがロードされる、コンピュータシステムを示す。
Claims (91)
- 埋込テストコントローラを有する回路に接続するテスタを備えたATE環境において、該回路をテストする際に使用するシステムであって、
埋込テストコントローラアクセスデータファイル、故障モジュールに至るまでテスト障害を診断する際に使用する署名及びベクトルデータを含むテストコントローラ診断データファイル、前記回路に埋め込まれている1つもしくは複数のテストコントローラ毎に1つもしくは複数のテストステップを定義するテストコンフィグレーションデータファイルを読み込む手段を有する、テストプログラムを生成する手段と、
前記テストコンフィグレーションデータファイルにおいて指定された1つもしくは複数の前記テストステップ及び1つもしくは複数の埋込テストコントローラ毎に前記アクセスデータファイルから導かれるテストパターンを生成する手段と、
被測定デバイスにテスト刺激をロードする指示のATE独立シーケンスを生成し、取得操作を実行し、前記デバイスの応答データを抽出する手段と、
指示のATEテスタ独立シーケンスを指示のテスタ特定シーケンスに変換する手段と、
指示の前記テスタ特定シーケンスを実行するために、前記テスタにロードする手段と、
を有するシステム。 - 前記テストプログラムは、ATEテスタのカーネルライブラリにリンクされているユーザ定義プログラムであって、ATEテスタハードウェアを直接制御し、被測定デバイスをテストするためにソフトウェアコード及び該ATEテスタを駆動するデータのコンビネーションであり、
前記テストプログラムを生成する手段は、
埋込テストコントローラアクセスデータファイルを読み込み、被測定デバイスの前記埋込テストコントローラを表示し選択する手段と、
個別のテストステップを定義する手段と、
1つもしくは複数のテストグループを定義する手段と、
前記テストステップをユーザ選択シーケンシャルオーダーに配列する手段と、
1つもしくは複数の前記テストステップを選択的に実行する手段と、
テストコンフィグレーションファイルにテストプログラムを書き込む手段と、
ATEソフトウェアと前記テストプログラムとをリンクする手段と、
を有する、
請求項1に記載のシステム。 - 故障被測定デバイスに関する情報を収集し報告するためのデータログ処理をイネーブル及びディスエーブルにし、故障デバイスの症状を詳述し、表示手段に故障情報を表示し、及び/又はオフライン解析のために「ログ」ファイルに該情報を記憶する手段を含む、請求項1に記載のシステム。
- テストステップのシーケンスをユーザが定義することを可能にする手段を有し、
前記テストステップのシーケンスの各ステップにおいて、デバイスに埋め込まれている1つもしくは複数のテストコントローラが実行され、任意のコントローラもしくはテストステップのランタイムパラメータとデータログリクエストとを定義し、もしくは、変更し、選択されたテストグループの適切な所定のベクトルが実行される際に、機能ベクトルを用いず実行される、
請求項1に記載のシステム。 - 故障被測定デバイスに関する情報を収集し報告するためのデータログ処理をイネーブル及びディスエーブルにし、故障デバイスの症状を詳述し、表示媒体に故障情報を表示し、及び/又はオフライン解析のために「ログ」ファイルに該情報を記憶する手段と、
テストステップのシーケンスをユーザが定義することを可能にする手段と、
デバイス故障を診断する手段と、
をさらに有し、
前記テストステップのシーケンスの各ステップにおいて、デバイスに埋め込まれている1つもしくは複数のテストコントローラが実行され、任意のコントローラもしくはテストステップのランタイムパラメータとデータログリクエストとを定義し、もしくは、変更し、選択されたテストグループの適切な所定のベクトルが実行される際に、機能ベクトルを用いず実行される、
請求項1に記載のシステム。 - 前記テストステップの各々は、1つもしくは複数のテストコントローラのパラレルなフル実行を定義し、
1つもしくは複数の前記テストコントローラのコントローラテストと、対応するテストステップのベクトルを生成する全てのコントローラのランタイムコントローラオプションと、を設定し、実行し、該コントローラテストの結果を収集し、
各々のテストステップは、各々個別のテストベクトルとタイミング特定を有する、
請求項2に記載のシステム。 - 前記テストグループの各々は、テストステップの規則的な選択であり、
非システム特定ベクトルを含むかもしれないテストにおいて、特定ポイントにおける実行のテストステップのグループを、ATEテストプログラムに選択させることができる、
請求項2に記載のシステム。 - 前記テストプログラムを変換する手段は、
複数の自動テスト機器テスタモデルの各々の変換データを記憶する手段と、
当該システムに使用される自動テスト機器テスタのモデルを特定する手段と、
を有し、
前記変換する手段は、前記テストプログラム及び前記テスト刺激を変換する特定のテスタモデルに関連する、変換データを使用する、
請求項1に記載のシステム。 - テスト故障において生じる比較パターンを生成した、前記テストプログラムにおけるコマンドを判断する際に使用する、該テストプログラムのコマンドの各々のバックマップデータを生成し記憶する手段、をさらに含む請求項1に記載のシステム。
- ATEテスタによるATE故障データ出力をテスタ独立故障変換された故障データに変換する故障トランスレータと、
前記埋込テストコントローラアクセスデータファイル、前記テストプログラムのオリジナルコマンドを判断するパターンプロセッサのパターンデータにアクセスする前記故障トランスレータの変換された故障データ、コマンドの各々にコメントされた埋込テストレジスタデータにおける故障ビットオフセットに応答し、関連する埋込テストコントローラのアクセスデータと、故障レジスタビットと、を故障のセマンティックスを判断するために比較し、チップ設計のコンテクストにおけるデータログを生成する、データログジェネレータと、
をさらに有する請求項1に記載のシステム。 - 前記データログジェネレータは、メモリ埋込テストデータログの故障メモリインスタンス、アドレス、及び、データビットを生成し、論理埋込テストデータログの故障スキャン試行、もしくは、故障フリップフロップインスタンスを生成する、請求項10に記載のシステム。
- テストコンフィグレーションをユーザが定義することを可能とするユーザインタフェース手段をさらに含み、
該ユーザインタフェース手段は、
被測定デバイスの埋込テストブロックの各々の埋込テストブロック識別と、該埋込テストブロックの各々の操作モードの各々と、を表示する表示手段と、
テストコンフィグレーションを特定する手段と、
テストを起動する手段と、
テスト結果データの診断を起動する手段と、
を有し、
前記テストコンフィグレーションを特定する手段は、
テストの1つもしくは複数の前記埋込テストブロックを選択する手段と、
選択された埋込テストブロックの各々の操作モードを特定する手段と、
テストコンフィグレーションデータファイルにテストコンフィグレーションデータを記憶する手段と、
を含む、
請求項1に記載のシステム。 - 回路に接続されるテスタを有するATE環境において、該回路をテストする際に使用するシステムであって、
テストプログラムを生成する手段と、
変換テストプログラムとテスト刺激とを出力するために、ATEテスタにより要求されるフォーマットにテストプログラムとテスト刺激とを変換する手段と、
前記ATEテスタによるATE故障データ出力をSVF故障に変換し、変換故障データを生成する故障変換手段と、
埋込テストコントローラアクセスデータファイル、前記テストプログラムのオリジナルコマンドを判断する前記テストプログラムを生成する手段のパターンデータにアクセスする故障トランスレータの変換された故障データ、コマンドの各々にコメントされた埋込テストレジスタデータにおける故障ビットオフセットに応答し、埋込テストコントローラのアクセスデータと、故障レジスタビットと、を故障のセマンティックスを判断するために比較し、チップ設計のコンテクストにおけるデータログを生成する、データログ生成手段と、
を有し、
前記テストプログラムを生成する手段は、
被測定デバイスの埋込テストアーキテクチャ記述を含む埋込テストコントローラアクセスデータファイル、該デバイスの埋込テストブロックの各々の埋込テストアクセスパターン、埋込テストブロックの各々の任意の結果データを読み込む手段と、
テストが実行される1つもしくは複数の埋込テストブロックを識別するテストコンフィグレーションデータファイルと、1つもしくは複数の埋込テストブロックの操作モードと、を読み込む手段と、
前記回路の1つもしくは複数の埋込テストブロックの各々のテスト刺激を生成する手段と、
を有し、
埋込テストコントローラデータは、埋込テスト機能と該デバイスの機能モード構造への接続のみを記述し、
前記テストプログラムとテスト刺激とを変換する手段は、
複数の自動テスト機器テスタモデルの各々の変換データを記憶する手段と、
当該システムに使用される自動テスト機器テスタのモデルを特定する手段と、
テスト故障において生じる比較データを生成する、前記テストプログラムにおけるコマンドを判断する際に使用する、該テストプログラムにおけるコマンドの各々のバックマップデータを生成し記憶する手段と、
を有し、
変換する手段は、前記テストプログラムと前記テスト刺激とを変換する特定テスタモデルに関連する変換データを用いる、
システム。 - ユーザにより使用され、テストコンフィグレーションを特定し、テストコンフィグレーションデータファイルに該テストコンフィグレーションを記憶するユーザ入力手段をさらに有し、
該ユーザ入力手段は、当該システムに関連するATEテスタと通信する手段を備え、
該通信する手段は、
埋込テストサーバから受信される論理、フォーマット、タイミングを備える完全なパターンのセットをテスタメモリにロードするように、前記テスタに指示する手段と、
前記テスタのパターンランの故障データを抽出する手段と、
診断のために当該システムに前記故障データを送信する手段と、
前記埋込テストサーバの故障診断情報を受信し、前記テスタのデータコレクションストリームに故障診断情報を挿入する手段と、
を含む、
請求項13に記載のシステム。 - 回路を設計しテストするシステムにおいて使用する、コンピュータ読込可能埋込テストコントローラアクセスデータファイルを生成するプログラムプロダクトであって、
コンピュータ読込可能記憶媒体と、
回路設計データファイルと埋込テストコントローラ設計データファイルとを読み込む、前記媒体に記録されている手段と、
ファイルの埋込テスト構造のアーキテクチャを判断し、埋込テストアーキテクチャのコンピュータ読込可能記述を生成する、前記媒体に記録されている手段と、
埋込テストコントローラ設計データファイルの全ての埋込テストコントローラを識別し、該埋込テストコントローラの各々の埋込テストコントローラアクセスパターンと操作モードとの記述を生成する、前記媒体に記録されている手段と、
埋込テストコントローラアクセスデータファイルに前記記述を書き込み、コンピュータ読込可能媒体に該埋込テストコントローラアクセスデータファイルを記憶する、前記媒体に記録されている手段と、
を有する、プログラムプロダクト。 - 電子回路に接続され、該電子回路の埋込テストブロックをテストするテストパターンを該電子回路に適用するテスタを含む、自動テスト機器環境において、電子回路を設計しテストする際に使用するシステムであって、
前記電子回路の埋込テストブロックアクセスデータファイルを読み込む手段と、
ユーザ入力に応答して、被測定回路の1つもしくは複数の埋込テストブロックを選択し、選択された1つもしくは複数の埋込テストブロックの各々の操作モードを特定する手段と、
ユーザ入力に応答する前記手段に応答して、選択された埋込テストブロックの各々に使用するテストプログラムとテスト刺激と、を前記テスタにより認識されるフォーマットで生成し、前記テストパターンをユーザ入力に応答する前記手段に出力する手段と、
ユーザ入力に応答する前記手段に応答して、回路の選択された前記埋込テストブロックのテストを起動するために、前記電子回路に前記テストパターンをロードし、該パターンを実行し、テスト結果をリターンするように、前記テスタに指示する手段と、
を有するシステム。 - 異なるモードで前記埋込テストブロックを実行することによりさらなる情報を取得することができるか否かを判断するために、前記テスト結果を解析する手段をさらに有する、請求項16に記載のシステム。
- 前記解析する手段は、さらなるテストステップの実行によりさらなる情報が取得されなくなるまで、診断に使用される埋込テストブロックを含むテストステップを繰り返し生成し、もしくは、変更し、テストパターンを生成し、該パターンをロードし、該テストパターンを実行し、結果をリターンするように、前記テスタに指示する手段を有する、請求項17に記載のシステム。
- 前記解析する手段は、異なるモードで前記埋込テストブロックを実行することによりさらなる情報を取得できない場合、ファイナルテストレポートを生成するように操作することができる、請求項17に記載のシステム。
- 前記データファイルは、被測定デバイスの埋込テストアーキテクチャ記述、埋込テストブロック各々の埋込テストアクセスパターン、任意の、埋込テストブロック各々の結果データ、を有する、請求項16に記載のシステム。
- 埋込テストコントローラを有するデジタル回路をテストする際に使用するシステムであって、
被測定デバイスに接続するATEテスタと、
特殊用途、もしくは、一般用途デジタルコンピュータと、
を、組み合わせて有し、
前記ATEテスタは、
前記被測定デバイスに電力を供給する手段と、
前記被測定デバイスにテストクロック信号を供給する手段と、
ユーザ開発テストプログラムに応答して、該デバイスにテストパターンをロードし、デバイス応答データを該デバイスからアンロードすることを含む、テストを前記デバイスで実行する手段と、
テストコントローラアクセスデータファイルを読み込み、テストプログラムコンフィグレーションファイルを生成するユーザインタフェース手段と、
を有し、
前記デジタルコンピュータは、前記ユーザインタフェース手段に応じて、テストプログラムを生成する埋込テストアクセスデバイスを有し、
該アクセスデバイスは、コンピュータ読取可能形式で記述する、該デバイスの前記埋込テストコントローラの埋込テストアクセスデータファイルを読み込み、テストを実行する前記手段に前記テストプログラムを送信する手段を含む、
システム。 - 埋込テストコントローラを有するデジタル回路をテストする際に使用するシステムであって、
被測定デバイスに電力を供給し、該被測定デバイスにクロック信号を供給するテスタヘッドを有するATEテスタワークステーションと、
特殊用途、もしくは、一般用途デジタルコンピュータと、
ユーザ開発テストプログラムに応答して、ATE特定テストベクトルにテストプログラムを変換し、ATEベクトルメモリに該テストベクトルをロードし、テストコンフィグレーションファイルに示されるテストプログラム仕様にしたがい、前記デバイスでテストを実行する手段と、
を、組み合わせて有し、
前記デジタルコンピュータは、
表示手段と、
パラレル入出力ポートと、
テストコンフィグレーションデータファイルを生成する際にユーザにより使用される前記ワークステーションのユーザインタフェース手段と、
前記ユーザインタフェース手段に応答して、前記テストコンフィグレーションデータファイルに示されるテストプログラム仕様にしたがい、テストプログラムを生成する当該コンピュータの埋込テストコントローラアクセス手段と、
を有し、
該アクセス手段は、コンピュータ読取可能形式で記述する、該デバイスの前記埋込テストコントローラの前記テストコンフィグレーションデータファイルと埋込テストアクセスデータファイルとを読み込み、テストを実行する前記手段に前記テストプログラムを送信する手段を含む、
システム。 - ATEソフトウェア環境とインタフェースし、埋込テストブロックで電子回路をテストする、埋込テストコントローラアクセスプログラムプロダクトであって、
コンピュータ読込可能記憶媒体と、
コンピュータ読取可能媒体に記憶され、前記電子回路に関連する、埋込テストコントローラデータファイルを読み込む、前記媒体に記録されている手段と、
前記回路で実行される1つもしくは複数のテストステップを特定するテストコンフィグレーションファイルを読み込む、前記媒体に記録されている手段と、
1つもしくは複数の前記テストステップの各々を実行するジェネリックフォーマットの指示シーケンスを生成する、前記媒体に記録されている手段と、
ジェネリックフォーマットの前記指示シーケンスをテスタ特定フォーマットの指示シーケンスに変換する、前記媒体に記録されている第1の変換手段と、
実行するために、前記テスタに前記テスタ特定指示シーケンスをロードする、前記媒体に記録されている手段と、
前記テスタの応答データ出力をジェネリックフォーマットの応答データに変換する、前記媒体に記録されている第2の変換手段と、
ジェネリックフォーマットの前記応答データを解析する、前記媒体に記録されている手段と、
を有する、プログラムプロダクト。 - 前記埋込テストコントローラデータファイルを生成する、前記媒体に記憶されている手段をさらに有し、
前記埋込テストコントローラデータファイルを生成する手段は、
前記回路の埋込テストコントローラアーキテクチャの記述と、
サポートされる全ての操作モードにおける前記埋込テストコントローラを起動するために要されるチップピンデータシーケンスと、コントローラを実行させるために要されるチップピンデータシーケンスと、該コントローラからテスト結果を抽出するために要されるチップピンデータシーケンスと、を含む、前記デバイスの埋込テストコントローラの各々の埋込テストアクセスパターンの記述と、
論理埋込テスト試行の各々の適正な署名値、論理埋込テスト試行の適正なフロップ値と、混合信号コンポーネントパラメータのハイロー境界値と、シミュレーションを通じて導かれるべき全ての埋込テストブロックの結果データと、を含む、期待テスト結果の記述と、
を前記埋込テストコントローラデータファイルに挿入し、コンピュータ読取可能媒体にアクセスデータファイルを記憶する、
請求項23に記載のプログラムプロダクト。 - テストコンフィグレーションデータファイルを生成する、前記媒体に記憶されているユーザインタフェース手段をさらに有し、
該ユーザインタフェース手段は、
前記埋込テストコントローラデータファイル及び前記回路に定義されている埋込テストコントローラの各々を示すアイコンを表示する、該アイコンの各々を選択する手段を含む、表示手段と、
前記テストステップに含まれる1つもしくは複数の前記埋込テストコントローラを選択し、選択された埋込テストコントローラの各々のランタイムパラメータを特定する手段を含む、1つもしくは複数のテストステップを定義する手段と、
コンピュータ読取可能媒体のテストコンフィグレーションデータファイルにテストコンフィグレーションデータを記憶する手段と、
定義された前記テストステップを実行する手段と、
テスト結果データの診断を起動する手段と、
を有する、
請求項23に記載のプログラムプロダクト。 - 前記テストの実行で生じる故障を診断する、前記媒体に記録されている手段をさらに有し、
診断する前記手段は、前記埋込テストコントローラアクセスデータファイルの期待テスト結果データを抽出し、該期待テスト結果データと、故障モジュールを識別する実結果と、を比較する、手段を含む、
請求項23に記載のプログラムプロダクト。 - 埋込テストコントローラを有する電子回路をテストする方法であって、
ユーザ定義テストプログラムをデジタルコンピュータに記憶し、
ATEのテストヘッドに前記電子回路をマウントし、
前記電子回路に前記コンピュータの通信ポートを接続し、
通信するためのプログラムを用いて、前記ユーザ定義テストプログラムを実行し、
前記デジタルコンピュータは、通信ポートと、ATEテスタのソフトウェアを実行するテストプログラムと前記テストプログラムとを直接通信させる手段と、を有し、
前記ATEテスタは、電子回路をマウントする前記テストヘッドを有する、
方法。 - 1つもしくは複数の埋込テストコントローラを有し、ATEテスタと接続される、電子回路をテストするATE独立方法であって、
デバイスに埋め込まれるテストコントローラを識別する埋込テストコントローラアクセスデータファイル、テスト機能、及び、コンピュータ読取可能ファイルの機能モード構造と前記テストコントローラとの接続を記憶し、
前記アクセスデータファイルから導かれるテストコンフィグレーションデータファイルを生成し、前記回路の1つもしくは複数の埋込テストコントローラブロックで実行する1つもしくは複数のテストステップ及び1つもしくは複数の埋込テストブロックの各々の操作モードを特定し、
コンピュータ読取可能媒体に前記テストコンフィグレーションデータファイルを記憶し、
コンピュータ読取可能形式のATE独立テストプログラムに前記コンフィグレーションファイルを変換し、
前記ATE独立テストプログラムをテスタ特定テストプログラムに変換し、
前記ATEテスタに前記テスタ特定テストプログラムをロードし、該プログラムを実行する、
方法。 - 1つもしくは複数の埋込テストコントローラを有し、ATEテスタハードウェアに接続される、電子回路をテストするATE独立方法であって、
デバイスに埋め込まれる全てのテストコントローラを識別するテストコントローラアクセスデータファイルを読み込み、テスト機能と該デバイスの機能モード構造への該テストコントローラの接続とを記述し、
前記デバイスに埋め込まれる1つもしくは複数のテストコントローラで実行される1つもしくは複数のテストステップを記述するテストコンフィグレーションファイルを読み込み、
前記テストコントローラの各々と、前記テストステップの各々との表示を表示デバイスにユーザが選択可能なように表示し、
テストプログラムを定義し、
前記テスタに前記テストプログラムをロードし、
前記テスタで前記テストプログラムを実行し、
前記テストプログラムによりリターンされるテスト結果を解析し、
前記表示デバイスに前記テスト結果を表示し、
前記テストプログラムを定義することは、少なくとも1つのテストステップを定義することを含み、
テストステップの各々は、
前記テストステップに含まれる1つもしくは複数のテストコントローラを前記表示デバイスで選択し、
選択されたテストコントローラに関連する全てのランタイムパラメータを特定し、
前記テストステップの各々を実行するためにテスタ独立指示シーケンスを書き込み、
前記テストプログラムを出力するために、テスタ独立形式に前記指示の各々を変換する、
ことを含む、
方法。 - 1つもしくは複数の埋込テストコントローラを有し、ATEテスタに接続される、電子回路をテストするATE独立方法であって、
デバイスに埋め込まれる全てのテストコントローラを識別するテストコントローラアクセスデータファイルを読み込み、テスト機能と該デバイスの機能モード構造への該テストコントローラの接続とを記述し、
前記デバイスに埋め込まれる1つもしくは複数のテストコントローラで実行される1つもしくは複数のテストステップを記述するテストコンフィグレーションデータファイルを読み込み、
テストプログラムを定義し、
前記テストプログラムを出力するために、テスタ独立形式に前記指示の各々を変換し、
前記テスタに前記テストプログラムをロードし、
前記テスタで前記テストプログラムを実行し、
前記テストプログラムによりリターンされるテスト結果を解析し、
表示デバイスに前記テスト結果を表示し、
前記テストプログラムを定義することは、
テストステップの各々を実行するためにテスタ独立指示シーケンスを書き込み、
前記テストプログラムを出力するために、テスタ独立形式に前記指示の各々を変換する、
ことを含む、
方法。 - ATE環境の電子回路を設計及びテストする際に使用する方法であって、
埋込テスト機能と、デバイスの機能モード構造との接続と、を記述する埋込テストコントローラアクセスデータファイルを生成し、
前記回路の1つもしくは複数の埋込テストブロックで実行する1つもしくは複数のテストステップ、及び、1つもしくは複数の該埋込テストブロックの各々の操作モードを識別するテストコンフィグレーションデータファイルを生成し、コンピュータ読取可能媒体に該テストコンフィグレーションデータファイルを記憶し、
前記埋込テストコントローラアクセスデータファイルは、
被測定デバイスの埋込テストアーキテクチャ記述と、
前記デバイスの埋込テストブロックの各々の埋込テストアクセスパターンと、
を含み、
前記埋込テストアクセスパターンは、
サポートする全ての操作モードにおける埋込テストコントローラを起動するために要されるチップピンデータシーケンスと、
前記コントローラを実行させるために要されるチップピンデータシーケンスと、
前記コントローラのテスト結果を抽出するために要されるチップピンデータシーケンスと、
論理埋込テスト試行の各々の適正な署名値、論理埋込テスト試行の適正なフロップ値と、混合信号コンポーネントパラメータのハイロー境界値と、シミュレーションを通じて導かれるべき全ての埋込テストブロックの結果データと、を含む、期待テスト結果と、
を含み、
コンピュータ読取可能媒体に前記アクセスデータファイルを記憶し、
前記テストコンフィグレーションデータファイルのテストステップの各々は、
前記テストステップに含まれる埋込テストブロックの各々を識別し、
前記テストコンフィグレーションファイルの前記テストステップに特定される埋込テストブロックの各々に、前記テストステップにより前記埋込テストブロックに特定されるコントローラモードで実行するための前記埋込テストアクセスパターンを前記アクセスデータファイルからフィルタし、
前記テストステップに特定された全ての埋込テストブロックがパラレルに実行されるように、信号テストパターンセットにフィルタされた前記アクセスパターンをマージし、
処理されたテストパターンセットを生成するために、デバイス入力出力ピンもしくはデバイステストアクセスポートインタフェースに前記テストパターンセットを関連付け、
テスタ独立テストパターンセットを生成するために、テスタ独立フォーマットに処理された前記テストパターンを変換し、
テスタ独立コマンドの各々に埋込テストレジスタデータのコメントを含む、前記テスタ独立フォーマット処理テストパターンのテスタ独立バックマップを生成して記憶し、
テスタ独立フォーマット処理テストパターンのハイレベル独立指示をデバイス入力出力トランジッションに拡張し、
ターゲットテスタフォーマットに前記トランジッションを変換し、
選択された埋込テストブロックにターゲットテスタフォーマットテストパターンをシフトインすることにより、前記回路のテストを実行し、該テストパターンに選択されたブロックの応答データを取得するために取得操作を実行し、テスト応答をシフトアウトする、
ことを含む、
方法。 - テスト応答データを解析することをさらに含み、
該テスト応答データを解析することは、
ATE故障毎に、パターンの実行により生じる前記テストコントローラにおける、テスト応答データと期待テスト応答データとの比較の失敗を示し、ピンの名称、及び、テストパターンの先頭からのATEサイクルオフセットを判断し、
ATEサイクルのバックマップデータから、前記ATE故障により生じるサイクルのテストパターンを生成する対応するATE独立コマンドを判断し、
故障テスタ独立コマンドの識別と該コマンドの故障ビットオフセットとを用いて、前記バックマップのオリジナルコマンドを検出し、テスタ独立コマンドの各々にコメントされているテストレジスタの該故障ビットオフセットを検索し、
故障の記述を生成するために前記埋込テストコントローラのアクセスデータに対する故障レジスタビットを解析し、前記回路の設計のコンテクストにおいてデータログレポートを生成する、
ことを含む、
請求項31に記載の方法。 - 埋込テストブロックにおける全ての故障モジュールを自動的に診断することをさらに含み、
該診断することは、実行の各々毎に異なる設定で論理テストコントローラの1もしくは複数の実行を行い、1もしくは複数の故障試行を検出するステップを含み、
該ステップは、
テストコントローラパターンジェネレータシード(S)及びテストコントローラマルチプル入力シフトレジスタスタート試行(MS)を起動し、
前記論理テストコントローラ及び複数のATEクロックサイクル(R)の関連するモジュールをクロック制御し、
期待MISR比較値(MC)をスキャン出力する、
請求項31に記載の方法。 - 各々の実行毎にテストパターンをパッチすることをさらに含み、
該パッチすることは、論理診断アルゴリズムの繰り返し毎に、新しいスキャンパターンカウント及び期待署名でテスタメモリの先のテストパターンを更新し、故障スキャンシーケンスを検出するためのバイナリサーチを用いる、ことを含む、
請求項33に記載の方法。 - 論理テストコントローラの実行がベクトルテンプレートとしてなされる場合、テスト実行毎に同じベクトルセットを使用し、故障モジュールを識別するためにテスト結果データをサーチするために使用されるアルゴリズムに関係なく、パターンの再使用を可能とするように、異なるパラメータに異なる値を使用する、請求項33に記載の方法。
- 診断リクエストの各々毎に、同じもしくは異なるサーチアルゴリズムを用いて、最初の故障試行、Nの故障試行、もしくは、故障試行の全ての1つをサーチすることを含み、
最初の故障試行では、リクエストにバイナリサーチアルゴリズムを用い、
Nの故障試行では、Nのサイズにしたがい、バイナリサーチ、シーケンシャルサーチ、もしくは、バイナリ、シーケンシャルのハイブリッドを用い、
故障試行の全てでは、シーケンシャルサーチアルゴリズムを用いる、
請求項35に記載の方法。 - テストステップに続き、埋込テストブロックにおける故障メモリ毎に、全ての故障メモリを自動的に診断することをさらに含み、
該診断することは、
新しいテストステップを生成し、もしくは、診断に使用される前記埋込テストブロックを含むカレントテストステップを修正し、
ATEテスタテストパターンを生成し、
ATEテスタに前記ATEテストパターンをロードし、該ATEテストパターンを実行し、回路応答データをリターンし、
異なるモードで前記埋込テストブロックを実行することによりさらなる情報が収集されることができるか否か判断し、もしくは、最終結果をレポートするために、前記回路応答データを解析する、
ことを1もしくは複数繰り返すことを含む、
請求項31に記載の方法。 - ATEテスタハードウェアにマウントされ、埋込テストコントローラを有する、電気回路デバイスで実行されるテストのテスト応答データを解析する方法であって、
ピンの名称と、ATEフォーマット埋込テストパターンの先頭からの該ピンのATEサイクルオフセットと、を判断し、
前記ATEサイクルのバックマップデータから、ATE故障により生じる該サイクルの比較パターンを生成するATE独立フォーマットコマンドの識別を判断し、
故障ATE独立コマンドの識別とコマンドの故障ビットオフセットとを用い、バックマップデータファイルのオリジナルコマンドと前記ATE独立コマンドに関連するバックマップにコメントされている埋込テストレジスタデータの該故障ビットオフセットとを判断し、
故障の記述と前記回路の設計コンテクストのデータログレポートとを生成するように、前記ピンに関連する前記埋込テストコントローラの前記アクセスデータファイルに対する故障レジスタビットを解析する、
ことを、埋込テストパターン実行における比較の失敗を示すATE故障毎に、なす、方法。 - 前記アクセスデータファイルは埋込テスト機能と、前記デバイスにおける機能モード構造への接続と、を記述し、
前記アクセスデータファイルは、
被測定デバイスの埋込テストアーキテクチャ記述と、
サポートされる全ての操作モードにおける前記埋込テストコントローラを起動するために要されるチップピンデータシーケンスと、該コントローラを実行させるために要されるチップピンデータシーケンスと、該コントローラのテストを抽出するために要されるチップピンデータシーケンスと、を含む、前記デバイスの埋込テストブロック毎の埋込テストアクセスパターンと、
論理埋込テスト試行の各々の適正な署名値、論理埋込テスト試行の適正なフロップ値と、混合信号コンポーネントパラメータのハイロー境界値と、シミュレーションを通じて導かれるべき全ての埋込テストブロックの結果データと、を含む、期待テスト結果と、
を含む、
請求項38に記載の方法。 - テストステップの各々の実行に続き、埋込テストブロックにおける故障メモリの各々を自動的に診断することをさらに含み、
該診断することは、実行の各々毎に異なる設定で論理テストコントローラの1もしくは複数の実行を行い、1もしくは複数の故障試行を検出するステップを含み、
該ステップは、
テストコントローラパターンジェネレータシード(S)及びテストコントローラMISRスタート試行(MS)を起動し、
前記論理テストコントローラ及び複数のATEクロックサイクル(R)の関連するモジュールをクロック制御し、
期待MISR比較値(MC)をスキャン出力する、
請求項38に記載の方法。 - 論理診断アルゴリズムの繰り返し毎の実行毎にテストパターンをパッチし、ATEテスタメモリの先のテストパターンを新しいスキャンパターンカウント及び期待署名で更新し、前記テスト応答データの故障スキャンシーケンスを検出するためにバイナリサーチを用いる、請求項38に記載の方法。
- 論理テストコントローラの実行が、ベクトルテンプレートとしてなされる場合、実行毎に同じベクトルセットを使用し、故障モジュールを識別するためにテスト結果データをサーチするために使用されるアルゴリズムに関係なく、パターンの再使用を可能にするように、異なるパラメータに異なる値を使用する、請求項38に記載の方法。
- 解析することは、診断リクエストの各々毎に、同じもしくは異なるサーチアルゴリズムを用いて、最初の故障試行、Nの故障試行、もしくは、故障試行の全ての1つをサーチすることを含み、
最初の故障試行では、バイナリサーチアルゴリズムを用い、
Nの故障試行では、Nのサイズにしたがい、バイナリサーチ、シーケンシャルサーチ、もしくは、バイナリ、シーケンシャルのハイブリッドの何れかを用い、
故障試行の全てでは、シーケンシャルサーチアルゴリズムを用いる、
請求項38に記載の方法。 - テストステップに続き、埋込テストブロックにおける故障メモリ毎に、全ての故障メモリを自動的に診断することをさらに含み、
該診断することは、
新しいテストステップを生成し、もしくは、診断に使用される前記埋込テストブロックを含むカレントテストステップを修正し、
ATEテスタテストパターンを生成し、
ATEテスタに前記ATEテストパターンをロードし、該ATEテストパターンを実行し、回路応答データをリターンし、
異なるモードで前記埋込テストブロックを実行することによりさらなる情報が収集されることができるか否か判断し、もしくは、最終結果をレポートするために、前記回路応答データを解析する、
ことを1もしくは複数繰り返すことを含む、
請求項38に記載の方法。 - ユーザ定義テストプログラムを実行するソフトウェアを実行するテストプログラム及び被測定電子回路に接続するテストヘッドを有するATEを含む、ATE環境のIEEEテストアクセスポートを有する電子回路をテストするシステムであって、
デジタルコンピュータと、
被測定デバイスに接続するロードボードと、
前記デバイスの前記テストアクセスポートのピンにポートを接続する手段と、
を備え、
前記デジタルコンピュータは、
ユーザとインタフェースする手段を有し、当該デジタルコンピュータにロードされる、埋込テストコントローラデータアクセス手段と、
双方向入出力ポートと、
を有する、
システム。 - ユーザ定義テストプログラムを実行するソフトウェアを実行するテストプログラム及び被測定電子回路に接続するテストヘッドを有するATEを含む、ATE環境の電子回路をテストするシステムであって、
デジタルコンピュータと、
被測定デバイスに接続し、前記ATEテスタハードウェアの前記テストヘッドにマウントする、ロードボードと、
前記デバイスのIEEEテストアクセスポートのピンにポートを接続する手段と、
前記ATEの前記テストプログラムソフトウェアに直接リンクする、前記コンピュータのATEユーザ機能プログラムと、
を備え、
前記デジタルコンピュータは、当該デジタルコンピュータにロードされる埋込テストコントローラデータアクセス手段と、双方向入出力ポートと、を有し、
前記埋込テストコントローラデータアクセス手段は、前記テストプログラムソフトウェアにより実行するユーザ定義テストプログラムを生成するために、ユーザとインタフェースする手段を有し、被測定デバイスに埋め込まれたテストコントローラを記述する埋込テストアクセスファイルを備える、
システム。 - 埋込テストコントローラを有する電子回路をテストする方法であって、
入出力通信ポートを有するデジタルコンピュータにおけるコンピュータ読込可能ファイルの前記回路の埋込テストアーキテクチャと埋込テストコントローラの各々との記述と、ユーザとソフトウェアを生成するテストプログラムとの間の通信を行うユーザインタフェースを有するソフトウェアと、ATEの処理を実行するテストプログラムを生成するテストプログラムとユーザ定義機能テストプログラムとを通信させるユーザ定義機能と、を記憶し、
ATEのテストヘッドに前記電子回路をマウントし、
前記電子回路のピンにコンピュータ通信ポートを接続し、
ユーザ定義機能を用いて、ユーザ定義テストプログラムを実行する、
方法。 - 埋込テストコントローラを有する電子回路をテストする際に使用するテストプログラムを開発する方法であって、
テスト機能を記述する1つもしくは複数のコンピュータ読取可能ファイルデータと、前記デバイスのテストコントローラの各々の該デバイスにおける機能モード構造への接続と、を記憶し、
1つもしくは複数のアクセスデータファイルを読み込み、全ての埋込テストコントローラとモジュールとを判断し、ディスプレイ媒体にテストコントローラを表示し、
テストステップの各々が、1つもしくは複数の埋込テストコントローラのパラレルなセットアップ、実行、結果の収集を含む、フル実行を定義する、1つもしくは複数のテストステップを定義し、
コンピュータ読取可能テストコンフィグレーションファイルに定義されたテストステップを記憶する、
方法。 - 対応するATEテストステップのベクトルを生成するテストステップにおける、全ての埋込テストコントローラのランタイムコントロールオプションを用いることをさらに含む、請求項48に記載の方法。
- テストステップの各々が別個のベクトルとタイミング仕様とを有する、請求項48に記載の方法。
- 1つもしくは複数の埋込テストコントローラを有する電子回路をリモートにテスト及び診断する方法であって、
セントラルロケーションに埋込テストコントローラアクセスデータファイルを記憶し、
前記セントラルロケーションにテストコンフィグレーションデータを記憶し、前記デバイスの前記テストコントローラを起動し、実行し、該テストコントローラからテスト結果を抽出する1つもしくは複数のテストステップを識別し、
前記デバイスに接続し、
前記コントローラを起動し、実行し、テスト結果をリターンするように、前記テストコンフィグレーションから導かれるテストプログラム、及び、前記アクセスデータを実行し、
前記セントラルロケーションにテストコントローラテスト結果をリターンし、
前記テスト結果を解析し、
前記データファイルは、前記デバイスに埋め込まれているテストコントローラと、コントローラを実行させるため、及び、該コントローラからテスト結果を抽出するため、にサポートされる操作モードの全てにおける埋込テストコントローラの各々を起動することを要するデータシーケンスと、論理埋込テスト試行の適正な署名を含む期待テスト結果と、を識別する、
方法。 - デバイスの所定のブロックをテストし、テスト結果をリターンするように、各々操作される1つもしくは複数の埋込セルフテストコントローラを有する電子回路をリモートにテスト及び診断する方法であって、
リモートロケーションから前記デバイスに接続し、
前記リモートロケーションから、1つもしくは複数の前記セルフテストコントローラを実行させ、テスト結果データを生成させ、
1つもしくは複数のセルフテストコントローラの各々から前記テスト結果データを抽出し、前記リモートロケーションに該結果データを伝送し、
前記リモートロケーションで前記テスト結果を解析する、
方法。 - 前記デバイスへの接続は、インターネット接続の手段による前記デバイスへの接続を含む、請求項52に記載の方法。
- 前記デバイスへのリモートな接続は、ローカルエリアネットワークの手段による接続を含む、請求項52に記載の方法。
- 前記デバイスへのリモートな接続は、ダイヤルアップ電話接続の手段による接続を含む、請求項52に記載の方法。
- 前記デバイスは埋込セルフテストコントローラを有する他の電子回路を含む回路基板に配置され、
当該方法は、テスト結果を生成し、前記リモートロケーションに結果データを伝送するように、前記デバイスの各々における前記セルフテストコントローラの各々に実行させることをさらに含む、
請求項52に記載の方法。 - 前記デバイスは、テストコントローラ起動、実行、データベースの1つもしくは複数のテストコントローラの各々のデータ抽出を読み込み、1つもしくは複数の前記コントローラに該データをロードするように、1つもしくは複数の前記セルフテストコントローラに実行させる、請求項52に記載の方法。
- 前記データの解析は、前記テストコントローラの各々の期待テスト結果データを前記データベースからリトリーブし、前記コントローラテストデータと前記期待テストデータとを比較し、前記テストコントローラ構造の故障デバイスレポートを生成する、ことを含む、請求項52に記載の方法。
- 埋込テストコントローラを有する電子回路をリモートにテストし診断するシステムであって、
前記デバイスからリモートロケーションにテストコントローラアクセス及び実行データを記憶する手段と、
前記リモートロケーションから前記デバイスに接続する手段と、
1つもしくは複数の前記テストコントローラを実行させ、各々からテスト結果を前記セントラルロケーションへ伝送させる手段と、
前記リモートロケーションで前記テスト結果を解析する手段と、
を有するシステム。 - 前記デバイスへのリモートな接続は、インターネット接続の手段による前記デバイスへの接続を含む、請求項59に記載のシステム。
- 前記デバイスへのリモートな接続は、ローカルエリアネットワークの手段による接続を含む、請求項59に記載のシステム。
- 前記デバイスへのリモートな接続は、ダイヤルアップ電話接続の手段による接続を含む、請求項59に記載のシステム。
- デバイスの少なくとも部分のセルフテストを実行するために、1つもしくは複数のコントローラテストプログラムに従って操作されることができる1つもしくは複数の埋込テストコントローラを有する電子回路デバイスをテストする方法であって、
コンピュータ読取可能形式で、前記デバイスに埋め込まれている全てのテストコントローラを記述するデバイステストコントローラアクセスデータファイル、テスト機能、前記デバイスの機能モードへの前記テストコントローラの接続と、を記憶し、
コンピュータ読取可能形式で、テストコンフィグレーションを生成し、
前記デバイスに接続し、
1つもしくは複数の前記テストと出力テスト結果に従って、前記コントローラテストプログラムを、1つもしくは複数の前記コントローラに実行させるように、前記アクセスデータファイルと前記テストコンフィグレーションとから導かれるテストパターンを前記テストコントローラにロードし、
前記構成は、前記デバイスで実行される1つもしくは複数のテストステップを特定し、テストステップの各々は、実行される1つもしくは複数のテストコントローラを特定する、
方法。 - 前記テストステップの各々を実行する指示シーケンスを含むデバイス独立テストプログラムを生成する、ことをさらに含み、
前記テストパターンのロードは、前記デバイス独立テストプログラムをデバイス特定プログラムに変換し、該デバイス特定テストプログラムの各々を実行することを含む、
請求項63に記載の方法。 - 1つもしくは複数の埋込テストコントローラを有し、ATEテスタに接続される、電子回路のATE独立テストを実行するプログラムプロダクトであって、
コンピュータ読取可能記憶媒体と、
前記デバイスに埋め込まれているテストコントローラを識別する埋込テストコントローラアクセスデータファイル、テスト機能、前記デバイスの機能モード構造への前記テストコントローラの各々の接続、をコンピュータ読取可能ファイルに記憶する、前記媒体に記録されている手段と、
前記アクセスデータファイルから導かれるテストコンフィグレーションデータファイルを生成し、前記回路の1つもしくは複数の埋込テストコントローラブロックで実行する1つもしくは複数のテストステップと、1つもしくは複数の前記埋込テストブロックの各々の操作モードと、を特定する、前記媒体に記録されている手段と、
コンピュータ読取可能媒体に前記テストコンフィグレーションデータファイルを記憶する、前記媒体に記録されている手段と、
コンピュータ読取可能形式のATE独立テストプログラムに、前記テストコンフィグレーションファイルを変換する、前記媒体に記録されている手段と、
テスタ特定テストプログラムに前記ATE独立テストプログラムを変換する、前記媒体に記録されている手段と、
前記ATEテスタに前記テスタ特定テストプログラムをロードし、該プログラムを実行する、前記媒体に記録されている手段と、
を有する、プログラムプロダクト。 - 1つもしくは複数のテストコントローラを有し、ATEテスタハードウェアに接続される、電子回路のATE独立テストを実行するプログラムプロダクトであって、
コンピュータ読取可能記憶媒体と、
前記デバイスに埋め込まれるテストコントローラの全てを識別し、テスト機能及び前記デバイスの機能モードへの前記テストコントローラの接続を記述するテストアクセスデータファイルを読み込む、前記媒体に記録されている手段と、
前記デバイスに埋め込まれている1つもしくは複数のテストコントローラで実行される、1つもしくは複数のテストステップを記述するテストコンフィグレーションファイルを読み込む、前記媒体に記録されている手段と、
ユーザ選択可能に、前記テストコントローラの各々及び前記テストステップの各々の表示を表示デバイスに表示する、前記媒体に記録されている手段と、
テストプログラムを定義する、前記媒体に記録されている手段と、
前記テスタに前記テストプログラムをロードする、前記媒体に記録されている手段と、
前記テスタで前記テストプログラムを実行する、前記媒体に記録されている手段と、
前記テストプログラムによりリターンされるテスト結果を解析する、前記媒体に記録されている手段と、
前記表示デバイスに前記テスト結果を表示する、前記媒体に記録されている手段と、
を備え、
前記テストプログラムを定義することは、少なくとも1つのテストステップを定義することを含み、
該テストステップの各々は、
前記テストステップに含まれる1つもしくは複数のテストコントローラを、前記表示デバイスで選択し、
選択されたテストコントローラの各々に関連するランタイムパラメータの全てを特定し、
前記テストステップの各々を実行するテスタ独立指示シーケンスを書き込み、
前記テストプログラムを出力するために、テスタ独立フォーマットに前記指示の各々を変換する、
ことを含む、
プログラムプロダクト。 - 1つもしくは複数の埋込テストコントローラを有し、ATEテスタに接続される、電子回路のATE独立テストのプログラムプロダクトであって、
コンピュータ読取可能記憶媒体と、
前記デバイスに埋め込まれるテストコントローラの全てを識別し、テスト機能及び前記デバイスの機能モードへの前記テストコントローラの接続を記述するテストコントローラアクセスデータファイルを読み込む、前記媒体に記録されている手段と、
前記デバイスに埋め込まれている1つもしくは複数のテストコントローラで実行される、1つもしくは複数のテストステップを記述するテストコンフィグレーションデータファイルを読み込む、前記媒体に記録されている手段と、
テストプログラムを定義する、前記媒体に記録されている手段と、
前記テストプログラムを出力するために、テスタ独立フォーマットに前記指示の各々を変換する、前記媒体に記録されている手段と、
前記テスタに前記テストプログラムをロードする、前記媒体に記録されている手段と、
前記テスタで前記テストプログラムを実行する、前記媒体に記録されている手段と、
前記テストプログラムによりリターンされるテスト結果を解析する、前記媒体に記録されている手段と、
表示デバイスに前記テストを表示する、前記媒体に記録されている手段と、
を備え、
前記テストプログラムを定義することは、
前記テストステップの各々を実行するテスタ独立指示シーケンスを書き込み、
前記テストプログラムを出力するために、テスタ独立フォーマットに前記指示の各々を変換する、
ことを含む、
プログラムプロダクト。 - ATE環境で電子回路の設計及びテストに使用するプログラムプロダクトであって、
コンピュータ読取可能記憶媒体と、
埋込テスト機能及び前記デバイスの機能モードへの接続を記述する埋込テストコントローラアクセスデータファイルを生成する、前記媒体に記録されている手段と、
前記回路の1つもしくは複数の埋込テストブロックで実行する1つもしくは複数のテストステップ、及び、1つもしくは複数の埋込テストブロックの各々の操作モードを識別するテストコンフィグレーションデータファイルを生成し、コンピュータ読取可能記憶媒体に該テストコンフィグレーションデータファイルを記憶する、前記媒体に記録されている手段と、
を備え、
前記埋込テストコントローラアクセスデータファイルは、
被測定デバイスの埋込テストアーキテクチャ記述と、
前記デバイスの埋込テストブロックの各々の埋込テストアクセスパターンと、
を含み、
前記埋込テストアクセスパターンは、
サポートされる操作モードの全てにおける前記埋込テストコントローラを起動するために要されるチップピンデータシーケンスと、
前記コントローラを実行させるために要されるチップピンデータシーケンスと、
前記コントローラのテスト結果を抽出するために要されるチップピンデータシーケンスと、
論理埋込テスト試行の各々の適正な署名値、論理埋込テスト試行の適正なフロップ値と、混合信号コンポーネントパラメータのハイロー境界値と、シミュレーションを通じて導かれるべき全ての埋込テストブロックの結果データと、を含む、期待テスト結果と、
を含み、
前記アクセスデータファイルをコンピュータ読取可能媒体に記憶し、
前記テストコンフィグレーションデータファイルのテストステップの各々で、
前記テストステップに含まれる埋込テストブロックの各々を識別し、
前記テストコンフィグレーションファイルの前記テストステップで特定される埋込テストブロックの各々で、前記テストステップにより前記埋込テストブロックで特定されるコントローラモードで実行する前記埋込テストパターンを、前記アクセスデータファイルからフィルタし、
前記テストステップで特定される埋込テストブロックの全てがパラレルに実行されるように、単一のテストパターンセットにフィルタされた前記アクセスパターンをマージし、
処理されたテストパターンセットを生成するために、デバイス入出力ピン又はデバイステストアクセスポートに、前記テストパターンセットを関連付け、
テスタ独立テストパターンセットを生成するために、テスタ独立フォーマットに処理された前記テストパターンセットを変換し、
テスタ独立コマンドの各々に埋込テストレジスタデータをコメント付けすることを含む、前記テスタ独立フォーマットの処理されたテストパターンのテスタ独立バックマップを生成して記憶し、
前記テスタ独立フォーマットの処理されたテストパターンのハイレベル独立指示を、デバイス入出力トランジッションに拡張し、
ターゲットテスタフォーマットに前記トランジッションを変換し、
選択された前記埋込テストブロックにターゲットテスタフォーマットのテストパターンをシフトインすることにより、前記回路のテストを実行し、前記テストパターンへの選択された前記ブロックの応答データを取得するために取得操作を実行し、前記テスト応答をシフトアウトする、
プログラムプロダクト。 - テスト応答データを解析する、前記媒体に記録されている手段をさらに有し、
該解析することは、
ATE故障の各々に、パターンの実行から生じる前記テストコントローラのテスト応答データと期待テスト応答データとの間の比較の失敗を示し、ピンの名称とテストパターンの先頭からのATEサイクルオフセットとを判断し、
前記ATEサイクルのバックマップデータから、ATE故障で生じる前記サイクルのテストパターンを生成するATE独立コマンドを判断し、
故障テスタ独立コマンドの識別とコマンドの故障ビットオフセットとを用いて、前記バックマップのオリジナルコマンドを検出し、各々のテスタ独立コマンドにコメントされているテスタレジスタの前記故障ビットオフセットを調べ、
前記故障の記述を生成するために前記埋込テストコントローラの前記アクセスデータに対し故障レジスタビットを解析し、前記回路の設計のコンテクストのデータログを生成する、
ことを含む、
請求項68に記載のプログラムプロダクト。 - テストステップに続き、故障埋込論理テストブロックの各々の故障モジュール毎に自動的に診断することをさらに含み、
該診断することは、実行の各々の異なる設定による論理テストコントローラの1つもしくは複数の実行及び1つもしくは複数の故障試行の検出を含み、
該実行及び検出は、
テストコントローラパターンジェネレータシード(S)及びテストコントローラマルチプル入力シフトレジスタスタート試行(MS)を起動し、
前記論理テストコントローラ及び複数のATEクロックサイクル(R)の関連するモジュールをクロック制御し、
期待MISR比較値(MC)をスキャンアウトする、
ことを含む、
請求項68に記載のプログラムプロダクト。 - 実行の各々においてテストパターンをパッチすることをさらに含み、
該パッチすることは、論理診断アルゴリズムの繰り返しの各々で、新しいスキャンパターンでテスタメモリの先のテストパターン及び期待署名を更新し、
故障スキャンシーケンスを検出するためにバイナリサーチを使用する、
請求項70に記載のプログラムプロダクト。 - ベクトルテンプレートとして、論理テストコントローラが実装される場合、テスト実行の各々に同じベクトルセットを使用し、故障モジュールを識別するようにテスト結果データをサーチするために使用されるように、アルゴリズムに関係なく、パターンの再使用を可能にする異なるパラメータに異なる値を使用する、請求項70に記載のプログラムプロダクト。
- 診断リクエストの各々毎に、同じもしくは異なるサーチアルゴリズムを用いて、最初の故障試行、Nの故障試行、もしくは、故障試行の全ての1つをサーチすることを含み、
最初の故障試行では、リクエストにバイナリサーチアルゴリズムを用い、
Nの故障試行では、Nのサイズにしたがい、バイナリサーチ、シーケンシャルサーチ、もしくは、バイナリ、シーケンシャルのハイブリッドを用い、
故障試行の全てでは、シーケンシャルサーチアルゴリズムを用いる、
請求項72に記載のプログラムプロダクト。 - テストステップに続き、埋込テストブロックの故障メモリの各々の故障メモリの全てを自動的に診断する、前記媒体に記録されている手段をさらに含み、
該診断することは、
新しいテストステップを生成し、診断に使用される前記埋込テストブロックを含むカレントテストステップを修正し、
ATEテスタテストパターンを生成し、
前記ATEテスタに前記ATEテストパターンをロードし、該ATEテストパターンを実行し、回路応答データをリターンし、
異なるモードの前記埋込テストブロックを実行することにより、さらなる情報が収集されるか否かを判断し、もしくは、最終結果をレポートするために回路応答データを解析する、
請求項72に記載のプログラムプロダクト。 - ATEテスタハードウェアにマウントされ、埋込テストコントローラを有する、電子回路デバイスで実行されるテストのテスト応答データを診断するプログラムプロダクトであって、
該プログラムプロダクトは、ATE故障の各々で、埋込テストパターン実行において、比較の失敗を示し、
コンピュータ読取可能記憶媒体と、
ピンの名称及びATEフォーマット埋込テストパターンの先頭からの該ピンのATEサイクルオフセットを判断する、前記媒体に記録されている手段と、
前記ATEサイクルのバックマップデータファイルから、前記ATE故障で生じる前記サイクルの比較パターンを生成するATE独立フォーマットコマンドの識別を判断する、前記媒体に記録されている手段と、
故障ATE独立コマンドの識別とコマンドの故障ビットオフセットとを用いて、前記バックマップのオリジナルコマンド、及び、ATE独立コマンドに関連する前記バックマップにコメントされている埋込テストレジスタデータの前記故障ビットオフセットを判断する、前記媒体に記録されている手段と、
故障の記述と前記回路の設計のコンテクストにおけるデータログレポートとを生成するために、前記ピンに関連する前記埋込テストコントローラの前記アクセスデータファイルに対し故障レジスタビットを解析する、前記媒体に記録されている手段と、
を備える、プログラムプロダクト。 - 前記アクセスデータファイルは、埋込テスト機能と前記デバイスの機能モード構造への接続を記述し、
該アクセスデータファイルは、
被測定デバイスの埋込テストアーキテクチャの記述と、
サポートされる全ての操作モードにおける前記埋込テストコントローラを起動するために要されるチップピンデータシーケンスと、コントローラを実行させるために要されるチップピンデータシーケンスと、該コントローラからテスト結果を抽出するために要されるチップピンデータシーケンスと、を含む、前記デバイスの埋込テストコントローラの各々の埋込テストアクセスパターンと、
論理埋込テスト試行の各々の適正な署名値、論理埋込テスト試行の適正なフロップ値と、混合信号コンポーネントパラメータのハイロー境界値と、シミュレーションを通じて導かれるべき全ての埋込テストブロックの結果データと、を含む、期待テスト結果と、
を含む、
請求項75に記載のプログラムプロダクト。 - テストステップの各々に続き、故障埋込テストブロックの各々の故障モジュールの全てを自動的に診断する、前記媒体に記録されている手段をさらに含み、
該診断することは、実行の各々の異なる設定で論理テストコントローラの1つもしくは複数の実行をなし、1つもしくは複数の故障試行を検出することを含み、
該実行及び検出は、
テストコントローラパターンジェネレータシード(S)及びテストコントローラMISRスタート試行(MS)を起動し、
前記論理テストコントローラと複数のATEクロックサイクルの関連するモジュールとをクロック制御し、
期待MISR比較値(MC)をスキャンアウトする、
ことを含む、
請求項75に記載のプログラムプロダクト。 - テストステップの各々を繰り返す、前記媒体に記録されている手段をさらに有し、
該繰り返しは、論理診断アルゴリズムの繰り返しの各々で、実行の各々のテストパターンをパッチし、新しいスキャンパターンカウント及び期待署名でATEテスタメモリの先のテストパターンを更新し、前記テスト応答データの故障スキャンシーケンスを検出するためにバイナリサーチを用いる、ことを含む、
請求項75に記載のプログラムプロダクト。 - ベクトルテンプレートとして論理テストコントローラの実行がなされた場合、実行の各々に同じベクトルセットを用い、故障モジュールを識別するようにテスト結果データをサーチするために使用されるアルゴリズムに関係なく、パターンの再使用をすることができるように、異なるパラメータに異なる値を用いる、請求項75に記載のプログラムプロダクト。
- 前記解析は、診断リクエストの各々毎に、同じもしくは異なるサーチアルゴリズムを用いて、最初の故障試行、Nの故障試行、もしくは、故障試行の全ての1つをサーチすることを含み、
最初の故障試行では、リクエストにバイナリサーチアルゴリズムを用い、
Nの故障試行では、Nのサイズにしたがい、バイナリサーチ、シーケンシャルサーチ、もしくは、バイナリ、シーケンシャルのハイブリッドを用い、
故障試行の全てでは、シーケンシャルサーチアルゴリズムを用いる、
請求項75に記載のプログラムプロダクト。 - テストステップに続いて、故障埋込テストブロックの各々の故障モジュールの全てを自動的に診断する、前記媒体に記録されている手段をさらに有し、
該診断は、
新しいテストステップを生成し、診断に使用される前記埋込テストブロックを含むカレントテストステップを修正し、
ATEテスタテストパターンを生成し、
前記ATEテスタに前記ATEテストパターンをロードし、該ATEテストパターンを実行し、回路応答データをリターンし、
異なるモードで前記埋込テストブロックを実行することにより、さらなる情報が収集されるか否か判断し、最終結果をレポートするために、前記回路応答データを解析する、
ことの1つもしくは複数の繰り返しを実行することを含む、
請求項75に記載のプログラムプロダクト。 - 埋込テストコントローラを有する電子システムをテスト若しくは診断する際に使用するシステムであって、
前記電子システムの前記テストコントローラのテスト機能に関する情報を生成する第1の手段と、
テスト、及び/若しくは、前記電子システムの前記テストコントローラの診断指示及びデータを生成する第2の手段と、
前記テストコントローラに前記指示及びデータを適用し、該テストコントローラからテスト結果を受信する第3の手段と、
前記結果データを解析し、前記電子システムの特性をレポートする第4の手段と、
を有するシステム。 - 前記第1の手段は、
前記埋込テストコントローラ各々の操作モードのアクセスパターン及び起動パターンを記述する手段と、
前記電子システムの特徴を記述する手段と、
前記電子システムの期待応答データを記述する手段と、
を含む、
請求項82に記載のシステム。 - 前記第2の手段は、
前記第1の手段により生成される前記情報を読み込む手段と、
テスト及び/若しくは診断要求を取得する手段と、
テスト及び/若しくは前記情報に基づく前記要求をなすための診断指示及びデータを生成する手段と、
を含む、
請求項82に記載のシステム。 - 前記第4の手段は、
前記第1の手段により生成される前記情報を読み込む手段と、
テスト及び/若しくは診断要求を取得する手段と、
前記第3の手段のテスト結果を受信する手段と、
前記情報及び前記診断要求に基づいて、前記電子システムの有意な特性に前記結果データを変換する手段と、
を含む、
請求項82に記載のシステム。 - 前記第3の手段は、
前記テスト、診断指示、データを受信する手段と、
前記埋込テストコントローラに前記指示及びデータを送信する手段と、
埋込テスト操作の完了を待機する手段と、
前記埋込テストコントローラのテスト結果データを受信する手段と、
を含む、
請求項82に記載のシステム。 - 前記第3の手段はATEである、請求項82に記載のシステム。
- 前記第3の手段は、電力及びクロック信号を受信するようにATEに接続される、前記電子システムに接続する通信ポートを備えるコンピュータである、請求項82に記載のシステム。
- 前記第3の手段は、通信ポート、前記電子システムへのポートに接続するケーブル、電源、クロックソースを備えるコンピュータである、請求項82に記載のシステム。
- 前記第3の手段は当該電子システムである、請求項82に記載のシステム。
- 当該電子システムは、テスト及び/又は診断する前記システムからリモートにある、請求項82に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA002321346A CA2321346A1 (en) | 2000-09-28 | 2000-09-28 | Method, system and program product for testing and/or diagnosing circuits using embedded test controller access data |
PCT/CA2001/001296 WO2002027340A2 (en) | 2000-09-28 | 2001-09-14 | Method and system for testing and/or diagnosing circuits using test controller access data |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004509425A true JP2004509425A (ja) | 2004-03-25 |
Family
ID=4167265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002530868A Pending JP2004509425A (ja) | 2000-09-28 | 2001-09-14 | テストコントローラアクセスデータを用いて回路をテスト及び/または診断する方法及びシステム |
Country Status (5)
Country | Link |
---|---|
US (1) | US6961871B2 (ja) |
JP (1) | JP2004509425A (ja) |
AU (1) | AU2001291552A1 (ja) |
CA (1) | CA2321346A1 (ja) |
WO (1) | WO2002027340A2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006105996A (ja) * | 2004-10-05 | 2006-04-20 | Agilent Technol Inc | 自動テスト機器をプログラミングし操作する方法および装置 |
KR101511604B1 (ko) | 2013-02-26 | 2015-04-14 | 한국항공우주산업 주식회사 | 배선조립체의 회로 테스트 프로그램 자동생성장치 및 그 제어방법 |
KR20180121410A (ko) * | 2017-04-28 | 2018-11-07 | 주식회사 아도반테스토 | 소프트웨어 애플리케이션 프로그래밍 인터페이스(api)로 자동화된 시험 특징의 사용자 제어 기법 |
Families Citing this family (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002067119A2 (de) * | 2001-02-20 | 2002-08-29 | Siemens Aktiengesellschaft | Verfahren und anordnung zur ermittlung einer gesamtfehlerbeschreibung zumindest eines teils eines technischen systems, computer programm-element und computerlesbares speichermedium |
US7047174B2 (en) * | 2001-05-02 | 2006-05-16 | Freescale Semiconductor, Inc. | Method for producing test patterns for testing an integrated circuit |
US7079612B2 (en) * | 2002-01-29 | 2006-07-18 | Texas Instruments Incorporated | Fast bit-error-rate (BER) test |
US20030188044A1 (en) * | 2002-03-28 | 2003-10-02 | International Business Machines Corporation | System and method for verifying superscalar computer architectures |
US6925406B2 (en) * | 2002-06-21 | 2005-08-02 | Teseda Corporation | Scan test viewing and analysis tool |
US7385927B2 (en) * | 2002-06-24 | 2008-06-10 | Lsi Logic Corporation | Methods and structure for improved testing of embedded systems |
US6898545B2 (en) * | 2002-06-28 | 2005-05-24 | Agilent Technologies Inc | Semiconductor test data analysis system |
DE60224378T2 (de) * | 2002-07-19 | 2009-01-02 | Qimonda Ag | Verfahren zur Erzeugung eines Testmusters für die Simulation und/oder Prüfung des Layouts einer integrierten Schaltung |
WO2004017083A1 (en) * | 2002-08-14 | 2004-02-26 | Koninklijke Philips Electronics N.V. | Module, electronic device and evaluation tool |
JP4179839B2 (ja) * | 2002-10-02 | 2008-11-12 | 株式会社ルネサステクノロジ | Ip生成システム及びip供給装置 |
US7131046B2 (en) * | 2002-12-03 | 2006-10-31 | Verigy Ipco | System and method for testing circuitry using an externally generated signature |
US7437261B2 (en) * | 2003-02-14 | 2008-10-14 | Advantest Corporation | Method and apparatus for testing integrated circuits |
US7155370B2 (en) * | 2003-03-20 | 2006-12-26 | Intel Corporation | Reusable, built-in self-test methodology for computer systems |
US7146539B2 (en) * | 2003-07-15 | 2006-12-05 | Verigy Ipco | Systems and methods for testing a device-under-test |
US7509226B2 (en) * | 2003-06-25 | 2009-03-24 | Teradyne, Inc. | Apparatus and method for testing non-deterministic device data |
US20050010650A1 (en) * | 2003-07-11 | 2005-01-13 | Ying-Chuan Tsai | Network-based computer platform external access method and system |
US7231616B1 (en) * | 2003-08-20 | 2007-06-12 | Adaptec, Inc. | Method and apparatus for accelerating test case development |
US7363567B2 (en) * | 2003-08-28 | 2008-04-22 | Agilent Technologies, Inc. | System and method for electronic device testing using random parameter looping |
US20050080581A1 (en) * | 2003-09-22 | 2005-04-14 | David Zimmerman | Built-in self test for memory interconnect testing |
JP2005127765A (ja) * | 2003-10-22 | 2005-05-19 | Toshiba Corp | 半導体試験モジュールおよび半導体装置の試験方法。 |
US7096142B2 (en) * | 2004-04-02 | 2006-08-22 | Agilent Technologies, Inc. | Report format editor for circuit test |
US7430486B2 (en) * | 2004-05-22 | 2008-09-30 | Advantest America R&D Center, Inc. | Datalog support in a modular test system |
US7376876B2 (en) * | 2004-12-23 | 2008-05-20 | Honeywell International Inc. | Test program set generation tool |
US8126577B2 (en) | 2005-06-03 | 2012-02-28 | Neophotonics Corporation | Monitoring and control of electronic devices |
US8225151B2 (en) * | 2005-06-13 | 2012-07-17 | Infineon Technologies Ag | Integrated circuit and test method |
US7660412B1 (en) * | 2005-12-09 | 2010-02-09 | Trend Micro Incorporated | Generation of debug information for debugging a network security appliance |
US7509611B2 (en) * | 2006-02-07 | 2009-03-24 | International Business Machines Corporation | Heuristic clustering of circuit elements in a circuit design |
US7398505B2 (en) * | 2006-02-07 | 2008-07-08 | International Business Machines Corporation | Automatic back annotation of a functional definition of an integrated circuit design based upon physical layout |
DE102006009224B4 (de) * | 2006-02-28 | 2017-04-06 | Advanced Micro Devices, Inc. | Auswahl eines Testalgorithmus in einer Steuerung für eingebauten Speicherselbsttest |
US8098797B2 (en) | 2006-12-27 | 2012-01-17 | Verizon Patent And Licensing Inc. | Self-service circuit testing systems and methods |
US7778799B2 (en) * | 2007-01-02 | 2010-08-17 | Hypertherm, Inc. | Automated self test for a thermal processing system |
US7664613B2 (en) * | 2007-04-03 | 2010-02-16 | Honeywell International Inc. | System and method of data harvesting |
US20090013218A1 (en) * | 2007-07-02 | 2009-01-08 | Optimal Test Ltd. | Datalog management in semiconductor testing |
TWI412927B (zh) * | 2008-05-09 | 2013-10-21 | Wistron Corp | 檢測顯示器之方法及其相關裝置 |
CN102077102B (zh) * | 2008-07-02 | 2013-06-19 | 爱德万测试株式会社 | 测试装置和方法 |
EP2321751A4 (en) * | 2008-07-07 | 2014-03-05 | Quali Systems Ltd | SYSTEM AND METHOD FOR HARDWARE SEQUENCING AND AUTOMATIC SOFTWARE OF COMPUTER-AIDED DESIGN (CAD) FUNCTIONAL TESTING |
US8296092B2 (en) * | 2008-08-15 | 2012-10-23 | International Business Machines Corporation | Platform specific test for computing hardware |
US20100076724A1 (en) * | 2008-09-23 | 2010-03-25 | Harold Lee Brown | Method for capturing and analyzing test result data |
US7839155B2 (en) * | 2008-12-15 | 2010-11-23 | Texas Instruments Incorporated | Methods and apparatus to analyze on-chip controlled integrated circuits |
US10444744B1 (en) * | 2011-01-28 | 2019-10-15 | Amazon Technologies, Inc. | Decoupled load generation architecture |
US20130227367A1 (en) * | 2012-01-17 | 2013-08-29 | Allen J. Czamara | Test IP-Based A.T.E. Instrument Architecture |
US9910086B2 (en) | 2012-01-17 | 2018-03-06 | Allen Czamara | Test IP-based A.T.E. instrument architecture |
US9121892B2 (en) * | 2012-08-13 | 2015-09-01 | Analog Devices Global | Semiconductor circuit and methodology for in-system scan testing |
US9213613B2 (en) * | 2012-11-16 | 2015-12-15 | Nvidia Corporation | Test program generator using key enumeration and string replacement |
US20150026528A1 (en) * | 2013-07-16 | 2015-01-22 | Manuel A. d'Abreu | Controller based memory evaluation |
US9286181B2 (en) * | 2013-07-31 | 2016-03-15 | Globalfoundries Inc. | Apparatus for capturing results of memory testing |
CN104459522B (zh) * | 2013-09-17 | 2018-01-23 | 比亚迪股份有限公司 | 芯片自测方法及系统 |
FR3015723A1 (fr) * | 2013-12-21 | 2015-06-26 | Expressive Data | Procede de production de donnees metier en lien avec untest d'une plurialite de produits, serveur mettant en oeuvre ledit procede, systeme et programmes d'ordinateur associes |
JP5963316B2 (ja) * | 2014-02-20 | 2016-08-03 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 生成装置、生成方法、及び、プログラム |
US9372626B2 (en) * | 2014-06-12 | 2016-06-21 | Lenovo Enterprise Solutions (Singapore) Pte. Ltg. | Parallel storage system testing wherein I/O test pattern identifies one or more set of jobs to be executed concurrently |
US20160003900A1 (en) * | 2014-07-04 | 2016-01-07 | Texas Instruments Incorporated | Self-test methods and systems for digital circuits |
US9311444B1 (en) * | 2014-07-10 | 2016-04-12 | Sandia Corporation | Integrated circuit test-port architecture and method and apparatus of test-port generation |
EP3518441B1 (en) * | 2018-01-25 | 2023-03-22 | Rohde & Schwarz GmbH & Co. KG | Test troubleshooting system and method |
US10593419B1 (en) * | 2018-02-12 | 2020-03-17 | Cadence Design Systems, Inc. | Failing read count diagnostics for memory built-in self-test |
CN109344078B (zh) * | 2018-10-29 | 2022-05-17 | 北京京航计算通讯研究所 | 应用fpga的嵌入式实时操作系统时间性能测试方法 |
CN110262932A (zh) * | 2019-05-31 | 2019-09-20 | 深圳市杰科数码有限公司 | Android平板测试方法、系统以及计算机可读存储介质 |
CN110554939A (zh) * | 2019-08-01 | 2019-12-10 | 深圳亿智时代科技有限公司 | 一种调试嵌入式设备的方法、系统及终端 |
CN113393892A (zh) * | 2020-03-11 | 2021-09-14 | 长鑫存储技术有限公司 | 控制芯片的测试方法及相关设备 |
CN113391184A (zh) | 2020-03-11 | 2021-09-14 | 长鑫存储技术有限公司 | 控制芯片的测试方法及相关设备 |
US11144696B1 (en) * | 2020-05-27 | 2021-10-12 | Chinsong Sul | Low cost design for test architecture |
CN111833959B (zh) * | 2020-07-20 | 2022-08-02 | 北京百度网讯科技有限公司 | 存储器的测试的方法、装置、电子设备和计算机可读存储介质 |
KR102380506B1 (ko) * | 2020-10-29 | 2022-03-31 | 포스필 주식회사 | 전자기기 자가 진단 장치 |
CN112699030B (zh) * | 2020-12-29 | 2023-10-20 | 中国航空工业集团公司西安飞机设计研究所 | 一种供电分区软件的自动化测试方法 |
CN113030702A (zh) * | 2021-03-10 | 2021-06-25 | 英业达科技有限公司 | 芯片的自动测试系统及方法 |
CN113238910A (zh) * | 2021-06-29 | 2021-08-10 | 长江存储科技有限责任公司 | 控制装置、老化测试设备、老化测试方法及存储介质 |
TWI777889B (zh) * | 2022-01-10 | 2022-09-11 | 芯測科技股份有限公司 | 用於產生記憶體自我測試演算法電路之方法 |
CN115037364B (zh) * | 2022-06-08 | 2023-08-15 | 上海百功半导体有限公司 | 一种光通信芯片的调试系统及方法 |
CN115291082B (zh) * | 2022-08-04 | 2023-06-13 | 北京京瀚禹电子工程技术有限公司 | 芯片的高效测试方法、装置和存储介质 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4766595A (en) * | 1986-11-26 | 1988-08-23 | Allied-Signal Inc. | Fault diagnostic system incorporating behavior models |
JPH032679A (ja) * | 1989-02-23 | 1991-01-09 | Texas Instr Inc <Ti> | テスト・データ・フォーマッター |
US5111402A (en) * | 1990-01-19 | 1992-05-05 | Boeing Company | Integrated aircraft test system |
IL94115A (en) * | 1990-04-18 | 1996-06-18 | Ibm Israel | Dynamic process for creating pseudo-random test templates for pompous hardware design violence |
JPH04211871A (ja) * | 1990-05-02 | 1992-08-03 | Toshiba Corp | 論理設計の検証支援システム |
KR970010656B1 (ko) * | 1992-09-01 | 1997-06-30 | 마쯔시다 덴기 산교 가부시끼가이샤 | 반도체 테스트 장치, 반도체 테스트 회로칩 및 프로브 카드 |
JP3212423B2 (ja) * | 1993-09-30 | 2001-09-25 | 富士通株式会社 | テストパターン作成装置 |
US5586319A (en) * | 1994-07-27 | 1996-12-17 | Vlsi Technology, Inc. | Netlist editor allowing for direct, interactive low-level editing of netlists |
US5682392A (en) * | 1994-09-28 | 1997-10-28 | Teradyne, Inc. | Method and apparatus for the automatic generation of boundary scan description language files |
US5539652A (en) * | 1995-02-07 | 1996-07-23 | Hewlett-Packard Company | Method for manufacturing test simulation in electronic circuit design |
US6014033A (en) * | 1995-08-31 | 2000-01-11 | Texas Instruments Incorporated | Method of identifying the point at which an integrated circuit fails a functional test |
US5745501A (en) * | 1995-10-20 | 1998-04-28 | Motorola, Inc. | Apparatus and method for generating integrated circuit test patterns |
JP3003587B2 (ja) * | 1996-08-02 | 2000-01-31 | 日本電気株式会社 | 個別テストプログラム作成方式 |
US6114870A (en) * | 1996-10-04 | 2000-09-05 | Texas Instruments Incorporated | Test system and process with a microcomputer at each test location |
US6687865B1 (en) * | 1998-03-25 | 2004-02-03 | On-Chip Technologies, Inc. | On-chip service processor for test and debug of integrated circuits |
US6061283A (en) * | 1998-10-23 | 2000-05-09 | Advantest Corp. | Semiconductor integrated circuit evaluation system |
US6757837B1 (en) * | 1999-10-19 | 2004-06-29 | Tivo, Inc. | Method and apparatus for software failure diagnosis and repair |
US6681359B1 (en) * | 2000-08-07 | 2004-01-20 | Cypress Semiconductor Corp. | Semiconductor memory self-test controllable at board level using standard interface |
CA2329597A1 (en) * | 2000-12-22 | 2002-06-22 | Logicvision, Inc. | Method for scan controlled sequential sampling of analog signals and circuit for use therewith |
-
2000
- 2000-09-28 CA CA002321346A patent/CA2321346A1/en not_active Abandoned
-
2001
- 2001-09-14 WO PCT/CA2001/001296 patent/WO2002027340A2/en active Application Filing
- 2001-09-14 AU AU2001291552A patent/AU2001291552A1/en not_active Abandoned
- 2001-09-14 JP JP2002530868A patent/JP2004509425A/ja active Pending
- 2001-09-18 US US09/954,078 patent/US6961871B2/en not_active Expired - Lifetime
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006105996A (ja) * | 2004-10-05 | 2006-04-20 | Agilent Technol Inc | 自動テスト機器をプログラミングし操作する方法および装置 |
KR101511604B1 (ko) | 2013-02-26 | 2015-04-14 | 한국항공우주산업 주식회사 | 배선조립체의 회로 테스트 프로그램 자동생성장치 및 그 제어방법 |
KR20180121410A (ko) * | 2017-04-28 | 2018-11-07 | 주식회사 아도반테스토 | 소프트웨어 애플리케이션 프로그래밍 인터페이스(api)로 자동화된 시험 특징의 사용자 제어 기법 |
KR102430283B1 (ko) | 2017-04-28 | 2022-08-05 | 주식회사 아도반테스토 | 소프트웨어 애플리케이션 프로그래밍 인터페이스(api)로 자동화된 시험 특징의 사용자 제어 기법 |
Also Published As
Publication number | Publication date |
---|---|
US6961871B2 (en) | 2005-11-01 |
WO2002027340A2 (en) | 2002-04-04 |
CA2321346A1 (en) | 2002-03-28 |
WO2002027340A3 (en) | 2002-05-16 |
US20020073374A1 (en) | 2002-06-13 |
AU2001291552A1 (en) | 2002-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6961871B2 (en) | Method, system and program product for testing and/or diagnosing circuits using embedded test controller access data | |
KR20210116604A (ko) | 온-칩-시스템 테스트 제어기를 사용하는 자동 테스트 장비 | |
US6286114B1 (en) | Enhanced embedded logic analyzer | |
US7237161B2 (en) | Remote integrated circuit testing method and apparatus | |
US6247147B1 (en) | Enhanced embedded logic analyzer | |
US7802140B2 (en) | Diagnostic program, a switching program, a testing apparatus, and a diagnostic method | |
JPH10269103A (ja) | 製造テスト・システム | |
KR20150087227A (ko) | 반도체 장치 검사 환경에서의 디버깅 | |
JP2009116876A (ja) | 試験装置のシミュレーションシステム、方法、及びプログラム製品 | |
JP2009116878A (ja) | 試験装置のシミュレーションシステム、方法、及びプログラム製品 | |
JP2007279050A (ja) | オープンアーキテクチャ試験システムにおける較正及び診断のサポート | |
US7047174B2 (en) | Method for producing test patterns for testing an integrated circuit | |
JP4959941B2 (ja) | ソフトウェアの双方向プロービング | |
JP2008516205A (ja) | フィーチャ指向型テストプログラムの開発と実行 | |
Zorian et al. | IEEE 1500 utilization in SOC design and test | |
Maierhofer | Hierarchical self-test concept based on the JTAG standard | |
US6760904B1 (en) | Apparatus and methods for translating test vectors | |
EP1233341A1 (en) | Embedded logic analyser | |
US6718498B2 (en) | Method and apparatus for the real time manipulation of a test vector to access the microprocessor state machine information using the integrated debug trigger | |
US20030225566A1 (en) | JTAG server | |
Appello et al. | On the automation of the test flow of complex SoCs | |
Wondolowski et al. | Boundary scan: the internet of test | |
JP2001356930A (ja) | エミュレータ・目標デバイス間接続の自動検出方法および装置 | |
Clark et al. | A code-less BIST processor for embedded test and in-system configuration of boards and systems | |
Devadze et al. | Microprocessor-based system test using debug interface |