(57)【要約】      （修正有）【課題】  欠陥スキャン区間の識別を容易化する。【解決手段】  電子デバイス（１００）は、生産テストモードと診断テストモードを備えたＢＩＳＴハードウェア（１０２、１０４）を有し、スキャンパターンを提供すると、生産テストモードで応答シグネチャを出力し、診断テストモードで生応答データを出力する。生産テストモードで、ＡＴＥ（１１４）から、ｉ）第１のスキャンテストパターンをＢＩＳＴハードウェア（１０２，１０４）に提供し、ｉｉ）応答シグネチャと予想応答シグネチャとを比較して、欠陥スキャンテストパターンを識別する。次に、ＡＴＥ（１１４）により、欠陥スキャンテストパターンと関連した固有ラベルを識別し、診断テストモードで、ｉ）第２のスキャンテストパターンをＢＩＳＴハードウェア（１０２，１０４）に提供し、ｉｉ）生応答データを捕捉する。第２のスキャンテストパターンは、識別されたラベルに対応する。【選択図】  図２
2006105997.tif 000002
【特許請求の範囲】
【請求項１】
組み込み自己テストハードウェアを有する電子デバイスにスキャンパターンを提供する方法であって、前記自己テストハードウェアが、生産テストモードと診断テストモードを有し、前記電子デバイスが、前記生産テストモードで１つまたは複数の応答シグネチャを出力し、前記診断テストモードで生応答データを出力し、
生産テストモードにおいて、自動テスト機器を使用して、ｉ）第１の一連のスキャンテストパターンを前記自己テストハードウェアに提供し、ｉｉ）応答シグネチャを捕捉し予想応答シグネチャと比較して、いくつかの欠陥スキャンテストパターンを識別するステップと、
前記自動テスト機器を使用して、前記欠陥スキャンテストパターンと関連したいくつかの固有ラベルを識別すると、
診断テストモードにおいて、前記自動テスト機器を使用して、ｉ）第２の一連のスキャンテストパターンを前記自己テスハードウェアに提供し、前記第２の一連のスキャンテストパターンにおけるスキャンテストパターンが前記識別されたラベルに対応し、ｉｉ）生応答データを捕捉するステップと、
を含むことを特徴とする方法。
【請求項２】
それぞれの一連のスキャンテストパターンが、スキャンテストパターンの複数の区間を含み、前記いくつかの欠陥スキャンテストパターンが、スキャンテストパターンのいくつかの欠陥区間に対応するラベルを識別することによって識別されることを特徴とする請求項１に記載の方法。
【請求項３】
前記第１の一連のスキャンテストパターンが、単一の生産テストベクトル内で実行されることを特徴とする請求項１に記載の方法。
【請求項４】
前記ＡＴＥ（１１４）が、前記識別したラベルを単一の診断テストベクトルに動的にコンパイルすることを特徴とする請求項１に記載の方法（２００）。
【請求項５】
前記自動テスト機器が、前記第２の一連のスキャンテストパターンにおける前記スキャンテストパターンを前記自己テストハードウェアに提供するときに複数の診断テストベクトルを動的に生成し実行することを特徴とする請求項１に記載の方法。
【請求項６】
コンピュータ可読媒体と、
前記コンピュータ可読媒体に記憶され、自動テスト機器に、
電子デバイスの組み込み自己テストハードウェアを生産テストモードにする動作、
第１の一連のスキャンテストパターンを前記自己テストハードウェアに提供する動作、
前記スキャンテストパターンに対応する応答シグネチャを捕捉する動作、
前記捕捉した応答シグネチャを予想応答シグネチャと比較して、いくつかの欠陥スキャンテストパターンを識別する動作、
前記欠陥スキャンテストパターンと関連した固有ラベルの数を識別する動作、
前記自己テストハードウェアを診断テストモードにする動作、
前記自己テストハードウェアに第２の一連のスキャンテストパターンを提供する動作であって、前記第２の一連のスキャンテストパターンにおける前記スキャンテストパターンが前記識別したラベルに対応する動作、および、
前記スキャンテストパターンに対応する生応答データを捕捉する動作、
を実行させるプログラムコードと、
を有することを特徴とする装置。
【請求項７】
それぞれの一連のスキャンテストパターンが、スキャンテストパターンの複数の区間を含み、前記プログラムコードが、スキャンテストパターンのいくつかの欠陥区間を識別することによっていくつかの欠陥スキャンテストパターンを識別することを特徴とする請求項６に記載の装置。
【請求項８】
前記プログラムコードが、前記第１の一連のスキャンテストパターンを単一の生産テストベクトル内で実行させることを特徴とする請求項６に記載の装置。
【請求項９】
前記プログラムコードが、前記自動テスト機器に、前記識別したラベルを単一の診断テストベクトルに動的にコンパイルさせることを特徴とする請求項６に記載の装置。
【請求項１０】
前記第２の一連のスキャンテストパターンにおけるスキャンテストパターンを前記自己テストハードウェアに提供するときに、前記プログラムコードが前記自動テスト機器に複数の診断テストベクトルを動的に生成させ実行させることを特徴とする請求項６に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子デバイスにスキャンパターンを提供する方法および装置荷冠するものである。
【背景技術】
【０００２】
回路テストは、一般に、機能テストと構造テストの２つのクラスに分けることができる。機能テストでは、テスト技術者および／またはソフトウェアが、１）回路が通常の使用中にその入力で受け取り出力で生成する可能性のある刺激と応答をエミュレートし、２）刺激を回路の入力に印加し、３）刺激に対する応答を回路の出力で捕捉し、４）捕捉した応答を予想した応答と比較する。構造テストでは、回路の意図された機能は回路テストの生成にほとんどまたは全く関係がない。より正確に言うと、回路は、組み合せ論理「コア」のまわりにスキャンチェーンを形成するように連結された複数の記憶要素を備える。この場合、回路テストパターンが記憶要素内にシフトされ、そのパターンが論理コア内に開始され、次にテストパターンに対する応答が、スキャンチェーン要素によって捕捉される。次に、捕捉された応答が記憶要素からシフトされ、予想した応答と比較される。様々なテストパターンを使って論理コアを実行することにより、論理コアの構造が存在し適切に接続されていると推測することができる。論理コアの構造が存在し適切に接続されている場合は、設計通りに機能しているはずであると推測することができる。したがって、構造テストは、回路の機能をエミュートする必要もなく機能を理解する必要もなく、その論理を実行するだけでよいという点で有利である。
【０００３】
構造テスト用に設計された回路は、一般に、「テスト容易化設計（ｄｅｓｉｇｎ−ｆｏｒ−ｔｅｓｔ）」（ＤＦＴ）構造を含む。単純なケースでは、ＤＦＴ構造は、スキャンチェーンを構成するように連結された複数の記憶要素しか含まないことがある。もっと複雑なケースでは、ＤＦＴ構造は、複数のスキャンチェーンに連結された記憶要素を含むことがあり、すなわち、ＤＦＴ構造は、１）被テストデバイスに対するスキャンパターンを内部で生成し、２）必要に応じてスキャンパターンに対する応答を収集しそれを１つまたは複数の出力シグナチャに詰め込む組み込み自己テスト（ＢＩＳＴ）ハードウェアを含むことがある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は、欠陥スキャン区間の識別を容易化することを課題としている。
【課題を解決するための手段】
【０００５】
１つの実施形態において、方法は、組み込み自己テスト（ＢＩＳＴ）ハードウェアを有する電子デバイスにスキャンパターンを提供する。ＢＩＳＴハードウェアは、生産テストモードと診断テストモードを有し、電子デバイスは、生産テストモードで１つまたは複数の応答シグネチャを出力し、診断テストモードで生応答データを出力する。生産テストモードにおいて、この方法は、自動テスト機器（ＡＴＥ）を使用して、１）第１の一連のスキャンテストパターンをＢＩＳＴハードウェアに提供し、２）応答シグネチャを捕捉しそれを予想応答シグネチャと比較して、いくつかの欠陥スキャンテストパターンを識別する。次に、方法は、ＡＴＥを使用して欠陥スキャンテストパターンと関連したいくつかの固有ラベルを識別する。診断テストモードにおいて、方法は、ＡＴＥを使用して、１）第２の一連のスキャンテストパターンをＢＩＳＴハードウェアに提供し、２）生応答データを捕捉する。スキャンテストパターンの第２の一連のスキャンテストパターンは、識別されたラベルに対応する。
【０００６】
もう１つの実施形態において、方法は、スキャンパターンを電子デバイスの入力ピンに提供する。各入力ピンは、生産テストモードと診断テストモードを有する組み込み自己テスト（ＢＩＳＴ）ハードウェアと関連付けられている。生産モードにおいて、電子デバイスは、装置の出力ピンに１つまたは複数の応答シグネチャを出力し、診断テストモードにおいて、装置は、出力ピンに生応答データを出力する。生産テストモードにおいて、この方法は、ＡＴＥを使用して、１）装置の入力ピンに一連のスキャンテストパターンを提供し、２）装置の出力ピンにおいて応答シグネチャを捕捉する。次に、捕捉した応答シグネチャを予想応答シグネチャと比較して、各入力ピンに対応するいくつかの欠陥スキャンテストパターンを識別する。次に、方法は、ＡＴＥを使用して、欠陥スキャンテストパターンと関連したいくつかの固有ラベルを識別する。診断テストモードにおいて、各入力ピンごとに、方法は、ＡＴＥを使用して、１）第２の一連のスキャンテストパターンを入力ピンに提供し、２）生応答データを捕捉する。第２の一連のスキャンテストパターンのスキャンテストパターンは、入力ピンの識別されたラベルに対応する。
【発明を実施するための最良の形態】
【０００７】
他の実施形態も開示する。本発明の実例となる現在好ましい実施形態を図面に示す図である。
【０００８】
回路および詳細にはシステムオンチップ（ＳＯＣ）に組み込まれることがある１つのＤＦＴ構造は、Ｓｙｎｏｐｓｉｓ，  Ｉｎｃ．（米国カリフォルニア州マウンテンビュー）によって提供されているＤＢＩＳＴ構造などの決定論的(deterministic)ＢＩＳＴ構造である。
【０００９】
図１に、決定論的ＢＩＳＴ構造を含むＳＯＣ１００を示す。例えば、決定論的ＢＩＳＴ構造は、パターンジェネレータ１０２とシグナチャアナライザ１０４を含む。パターンジェネレータ１０２とシグナチャアナライザ１０４の間には、複数のスキャンチェーン１０６、１０８、１１０、１１２が結合されている。使用する際、外部で生成されたスキャン「シード」（すなわち、ＡＴＥ１１４によって提供されたシード）が、パターンジェネレータ１０２に提供される。次に、パターンジェネレータ１０２は、そのシードを複数のスキャンパターンを生成する基準として使用し、スキャンパターンは様々なスキャンチェーン１０６〜１１２内にシフトされる。スキャンチェーン１０６〜１１２からのパターンを開始した後で、パターンに対する応答がスキャンチェーン１０６〜１１２を介して捕捉され、シグナチャアナライザ１０４にシフトされる。決定論的ＢＩＳＴでは、シグナチャアナライザ１０４は、何十万ものシフトされたビットを１２８ビットシグナチャに変換することができる多入力シフトレジスタ（ＭＩＳＲ）を含むことがある。
【００１０】
決定論的ＢＩＳＴ構造は、生産テストモードと診断テストモードを含むいくつかのモードで動作することができる。生産テストモードでは、ＳＯＣのスキャンチェーン１０６〜１１２が、図１に示したように、決定論的ＢＩＳＴパターンジェネレータ１０２とシグナチャアナライザ１０４の間に結合されている。診断テストモードでは、ＳＯＣのスキャンチェーン１０６〜１１２は、パターンジェネレータ１０２に結合されるが、シグナチャアナライザ１０４から切り離されている（すなわち、その出力がシグナチャアナライザ１０４をバイパスする）。したがって、診断テストモードでは、スキャンチェーン１０６〜１１２から生応答データを得ることができる。次に、この生応答データをＳＯＣ１００の外部でより詳しく解析することができる。
【００１１】
一般に、決定論的ＢＩＳＴハードウェア１０２、１０４は、スキャンテストの「第１のパス」の間生産テストモードにされる。この第１のパスの間に、欠陥スキャン区間（ｆａｉｌｉｎｇ  ｓｃａｎ  ｉｎｔｅｒｖａｌ）（すなわち、スキャンパターンのグループ）が識別される。第２のパスの間に、決定論的ＢＩＳＴハードウェア１０２、１０４が診断テストモードにされ、欠陥区間のスキャンパターンが再実行されることがある。
【００１２】
欠陥区間のスキャンパターンを再実行するために、テスト技術者は、一般に、設計技師から提供される情報を使用して欠陥区間の記憶場所を手作業で識別しなければならなかった。その場合、テスト技術者は、ベクトルデータを処理して欠陥区間を再実行しなければならず、またテスタメモリ制限を超えないようにしなければならなかった（すなわち、大量の生応答データがテスタメモリ制限を超えることがあるので）。これらのほとんど手作業の工程は、時間がかかり誤りが起きやすく、生産テストの際に大きな遅延と破壊を引き起こす可能性がある。したがって、図２は、図１に示したようなＢＩＳＴハードウェアを有する電子デバイスにスキャンパターンを提供する新しい方法を示す。
【００１３】
方法２００は、次のように進行する。生産テストモードにおいて、自動テスト機器（ＡＴＥ）を使用して、１）第１の一連のスキャンテストパターンを電子デバイスのＢＩＳＴハードウェアに提供し、２）応答シグネチャを捕捉しそれを予想応答シグネチャと比較する２０２。次に、比較の結果を使用して、いくつかの欠陥スキャンテストパターンを識別することができる。次に、ＡＴＥを使用して、欠陥スキャンテストパターンと関連したいくつかの固有ラベルを識別する２０４。診断テストモードにおいて、ＡＴＥを使用して、１）ＢＩＳＴハードウェアに第２の一連のスキャンテストパターンを提供し、２）生応答データを捕捉する２０６。第２の一連のスキャンテストパターンにおけるスキャンテストパターンは、識別されたラベルに対応する。
【００１４】
方法２００の１つの実施形態において、それぞれの一連のスキャンテストパターンは、スキャンテストパターンの複数の区間を含むことができる（例えば、Ｓｙｎｏｐｓｉｓ社のＤＢＩＳＴの場合のように）。次に、スキャンテストパターンのいくつかの欠陥区間に対応するラベルを識別することによって、いくつかの欠陥スキャンテストパターンを識別することができる。
【００１５】
例えばそれぞれの様々なスキャンパターン（または、スキャンパターンの区間）を別々に記憶することによって、様々なスキャンパターンまたは様々なスキャンパターンの様々な区間と固有のラベルを関連付けることができる。このようにして、ＢＩＳＴハードウェアが生産テストモードか診断テストモードかに関係なく、スキャンパターンの様々なベクトルを同じテストパターンからコンパイルすることができる。各区間ごとにラベルを提供するだけでよいが、ラベルをさらに細かく細分することにより（すなわち、各スキャンパターンごとのラベル）、生産テストの時間とメモリをより効率的に使用することができる。
【００１６】
場合によっては、生産テストモードの際に電子デバイスに提供される一連のスキャンテストパターンは、単一の生産テストベクトル内で実行されることがある（例えば、「バースト」モードで）。この場合、診断テストモードにおいて、ＡＴＥは、複数の診断テストベクトルを動的に生成し実行することもあり（例えば、「アンバースト（ｕｎｂｕｒｓｔ）」モードでは各識別ラベルごとのベクトル、またはＡＴＥのメモリ制限内に収まる生応答データが作成されるラベルのグループのベクトル）、あるいは、ＡＴＥは、識別したラベルを単一の診断テストベクトルに動的にコンパイルすることもある（例えば、「バースト」モードで）。
【００１７】
例えば、方法２００によって使用されるＡＴＥは、Ａｇｉｌｅｎｔ  Ｔｅｃｈｎｏｌｏｇｉｅｓ，  Ｉｎｃ．（カリフォルニア州パロアルト）から提供されている９３０００ＳＯＣテスタなどのシステムオンチップ（ＳＯＣ）テスタでよい。しかしながら、９３０００ＳＯＣテスタが、データを並列に複数の装置ピンに提供し複数の装置ピンから収集できる場合は、方法３００の方が９３０００ＳＯＣテスタの機能を利用するのに適している場合がある。
【００１８】
方法３００は、以下のように動作する。ＡＴＥを使用して、生産テストモードにおいて、１）電子デバイスの複数の入力ピンに一連のスキャンテストパターンを提供し、２）電子デバイスの出力ピンにおいて応答シグネチャを捕捉する３０２。次に、捕捉した応答シグネチャを予想応答シグネチャと比較して、各入力ピンに対応するいくつかの欠陥スキャンテストパターンを識別する。次に、ＡＴＥを使用して、欠陥スキャンテストパターンと関連付けられたいくつかの固有ラベルを識別する３０４。診断テストモードでは、各入力ピンごとに、ＡＴＥを使用して、１）第２の一連のスキャンテストパターンを入力ピンに提供し、２）生応答データを捕捉する３０６。第２の一連のテストパターンのスキャンテストパターンは、入力ピンの識別されたラベルに対応する。
【００１９】
方法３００の１つの実施形態において、それぞれの一連のスキャンテストパターンは、スキャンテストパターンの複数の区間を含むことができる（例えば、Ｓｙｎｏｐｓｉｓ社のＤＢＩＳＴのような）。次に、スキャンテストパターンの欠陥区間に対応するいくつかのラベルを識別することによって、いくつかの欠陥スキャンテストパターンを識別することができる。
【００２０】
いくつかの場合は、生産テストモードの間に入力ピンに提供される一連のスキャンテストパターンが、単一の生産テストベクトル内で実行されることがある。他の場合は、電子デバイスの入力ピンに提供される一連のすべてのスキャンテストパターンが単一の生産テストベクトル内で実行されることがある。
【００２１】
診断テストモードが終わると、ＡＴＥは、装置の各入力ピンごとに複数の診断テストベクトルを動的に生成し実行することができる。例えば、ＡＴＥは、識別されたラベルごとのベクトルを実行したり、ＡＴＥのメモリ制限内に収まる生応答データが作成されるラベルのグループのベクトルを実行したりすることができる。代替として、ＡＴＥは、識別したラベルを、各ピンごとの単一の診断テストベクトルまたは装置の単一の診断テストベクトルに動的にコンパイルすることができる。
【００２２】
方法２００、３００はいずれも、その変形を含み、（固定式か取り外し式かに関係なく）メモリやディスクなどのコンピュータ可読媒体４００に記憶されたプログラムコード４０２〜４１４で実施することができる。本明細書において、「メモリ」は、統合メモリ構造あるいは分散型または機能固有のメモリ構造を両方とも対象として含むように解釈されることに注意されたい。例えば、９３０００ＳＯＣテスタは、９３０００ＳＯＣテスタの各ピンごとのベクトルとシーケンサ（すなわち、プログラム命令）をそれぞれ記憶するために、ピンごとのベクトルとシーケンサメモリに分割されたメモリ構造を含む。
【００２３】
方法２００の場合、プログラムコードは、ＡＴＥに電子デバイスのＢＩＳＴハードウェアを生産テストモードにさせる４０２プログラムコードを含むことができる。次に、ＢＩＳＴハードウェアが生産テストモードの間、プログラムコードは、ＡＴＥに、１）第１の一連のスキャンテストパターンを前記ＢＩＳＴハードウェアに提供させ４０４、２）スキャンテストパターンに対応する応答シグネチャを捕捉させ４０６、３）捕捉応答シグネチャを予想応答シグネチャと比較させていくつかの欠陥スキャンテストパターンを識別させる４０８。次に、プログラムコードは、欠陥スキャンテストパターンと関連付けられたいくつかの固有ラベルを識別することができる４１０。その後、プログラムコードは、ＡＴＥに装置のＢＩＳＴハードウェアを診断テストモードにさせることができる４１２。ＢＩＳＴハードウェアが診断テストモードの間、プログラムコードは、ＡＴＥに、１）第２の一連のスキャンテストパターンをＢＩＳＴハードウェアに提供させ４１４、２）スキャンテストパターンに対応する生応答データを捕捉させる４１６ことができる。前に述べたように、第２の一連のスキャンテストパターンにおけるスキャンテストパターンは、欠陥スキャンテストパターンと関連付けられたラベルによって識別されるものに対応することができる。
【００２４】
方法２００の他の特徴および変形、ならびに方法３００の特徴および変形は、同じようにプログラムコードで実施することができる。
【図面の簡単な説明】
【００２５】
【図１】ＢＩＳＴハードウェアを含む例示的なシステムオンチップ（ＳＯＣ）ならびにＳＯＣをテストする自動テスト機器を示す図である。
【図２】図１に示したようなＢＩＳＴハードウェアを有する電子デバイスにスキャンパターンを提供する例示的な方法を示す図である。
【図３】いくつかの入出力ピンのそれぞれと関連付けられたＢＩＳＴハードウェア（図１に示したような）を有する電子デバイスにスキャンパターンを提供する例示的な方法を示す図である。
【図４】図２に示したような方法を実行させるためにコンピュータ可読媒体に記憶することができる例示的なプログラムコードを示す図である。
【符号の説明】
【００２６】
１００  ＳＯＣ
１０２  パターンジェネレータ
１０４  シグナチャアナライザ
１０６、１０８、１１０、１１２  スキャンチェーン
１１４  ＡＴＥ
【図１】
2006105997.tif 000003
【図２】
2006105997.tif 000004
【図３】
2006105997.tif 000005
【図４】
2006105997.tif 000006