説明

スキャン多重化

【課題】DUT内のIC部品のテストのコスト効果及び時間効率を向上させる。
【解決手段】複数の状態データを各テスタメモリ位置(42及び44)に多重化することによって、スキャン動作の実効周波数を高くし、同時にメモリ容量を大きくすることができる。システム(10)は、テスト対象装置(DUT)(18)への入力刺激としての状態データのスキャンインシーケンス(14)と予測された状態データのスキャンアウトシーケンス(16)を提供するためのソースを含む。ベクトルプロセッサ(30)が、スキャンインシーケンス(14)と予測されたスキャンアウトシーケンス(16)を受け取り、多重化された状態データの交換を可能にする。多重化係数がmの場合には、装置サイクルレートをテスタサイクルレートのm倍にすることができる。多重化係数は、個々のテスタメモリ位置(42及び44)の記憶容量と、実効ベクトル交換レートをテスタサイクルレートのm倍にすることができるということに基づいて選択される。

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般に集積回路(IC)部品のテストに関し、より詳しくは、ICテストにおけるデータを記憶する方法及びシステムに関する。
【0002】
【従来の技術】回路チップ内の集積回路(IC)部品が複雑になり、密度が高くなるにつれて、そのような回路のテストには対処すべき課題も多くなる。ある見積りによれば、テストのコストは、製造の全コストの20%にまで達する場合がある。スケールメリットを達成するために、テストのコストを最小化することが重要である。
【0003】大容量生産においてコストを最小にするためには、所望のレベルの品質を達成するために、時間及び金額の両方が必要なので、回路のテスタビリティ(試験性)を予め考慮しておくことが必要である。長年にわたってテストのための種々の技術が存在している。テスト業界において広く受け入れられた技術は、スキャンベースのテストである。IC部品内の欠陥の検出において、アクセス性及び可観測性を最大にするために、種々の形態のスキャンベースのテストが使用される。アクセス性は、IC部品の所望のノードにおける特定の状態データを確立する能力であり、可観測性は、IC部品内の任意のノードにおける特定の状態データを判定する能力である。
【0004】本明細書では、“状態”と“状態データ”という用語は、交換可能に用いられており、それらは、データ処理のために使用される符号化された情報の記号又は表示としてそれぞれ定義され、波形によって表わすことができる。
【0005】スキャンベースのテストにおいて、スキャンイン状態(すなわち論理0又は論理1の入力刺激)の入力テストシーケンスは、テスト対象である装置(DUT。または、テスト対象デバイス)のスキャンチェーン(走査チェーン)に直列にシフトインされる。連続するテスタサイクルの間、複数のテストをDUTに対して実行して、スキャンチェーンにスキャンアウト状態(すなわち論理0又は論理1の出力応答)の出力テストシーケンスを生成させる。続いて出力テストシーケンスが、スキャンチェーンからシフトアウトされ、DUT内に存在する場合がある欠陥を判定するために、予測された状態(予測された応答は、論理0、論理1、または、高インピーダンスである)の既知のシーケンスと比較される。IC部品の大きな配列を有する典型的なDUTに対して、IC部品の埋め込まれた組合せロジック(組み合わせ論理論理回路)をテストするためには、非常に長いスキャンデータシーケンスが必要である。
【0006】従来のスキャンベースのテストは、高度のアクセス性及び可観測性を提供するが、非常に長いスキャンデータシーケンスを使用することには、スキャン状態データの量がICテスタ内で使用できるテスタメモリ位置の数を簡単に越える場合があるという問題がある。テスタメモリ位置の利用度(可用性)に制限があるという問題を解決するための手段は、1つの非常に長いスキャンチェーンではなく、テストの間に複数のスキャンチェーンを使用することである。このアプローチの1つの欠点は、テストのための位置に複数のスキャンチェーン状態データを直列にシフトするために、及び、比較のためにDUTからスキャンチェーン状態データを直列にシフトアウトするために、追加のハードウエア(例えばスキャンインピン及びスキャンアウトピン)が必要であることである。このような変形は、製造コストを増加する。非常に長いスキャンチェーンを使用することには、さらに、スキャンインデータの各状態が入力されて、スキャンアウトデータの各状態が、装置の動作速度(すなわち、装置サイクル速度、または、装置サイクルレート)とテスタの動作速度(すなわち、テスタサイクル速度、または、テスタサイクルレート)の遅い方の動作速度で比較される場合には、DUT内のすべてのIC部品をテストするために必要な時間が多くかかる可能性があるという問題がある。現在のところ、回路チップの装置サイクル速度の連続的な上昇度は、テスタのアップグレートやテスタの置き換えによって実現可能なテスタサイクル速度の上昇度より大きい。したがって、テスタサイクル速度によって、テスト動作の速度が規定される。
【0007】
【発明が解決しようとする課題】DUT内のIC部品を評価するためのコスト効果及び時間効率の高いテスト方法が必要とされている。
【0008】
【課題を解決するための手段】本発明は、スキャンイン状態データ及びスキャンアウト状態データの符号化されたシーケンスを利用する集積回路(IC)のスキャンテストに関する情報を記憶する方法及びシステムである。状態データは、個別にアクセス可能なメモリ位置に多重化されており、この多重化は、個々のメモリ位置の記憶容量と、テスタサイクル速度の複数倍(m倍)である実効スキャンデータ交換速度(または、有効スキャンデータ交換速度)を可能にすることに基づいている。スキャンデータを多重化することによって、スキャン動作は、テスタサイクルの速度に制限されない。それどころか、スキャン動作を、テストを受けるIC装置の装置サイクル速度で進行させることができる。
【0009】“多重化”という用語は、本明細書では、単一のメモリ位置に複数の状態データをグループ化することと定義される。多重化は、テスタサイクル毎に1度生じる。すべてのテスタサイクルに対して、それぞれのメモリ位置に、少なくとも2つの状態がグループ化される。スキャンイン状態は、入力刺激を表わしている。スキャンアウト状態は、テストを受けるICの出力の予測された応答である。特定のテスタサイクルにおける特定のメモリ位置にスキャン状態データを多重化することによって、複数倍(m倍)の装置サイクル(またはデバイスサイクル)をテスタサイクル内にグループ化することができる。
【0010】本発明の1つの態様では、スキャンイン状態データのシーケンスは、装置サイクル中に双安定記憶素子の配列内に直列にシフトされて、テストのための構造内における記憶素子をセットする。双安定記憶素子は、フリップフロップとすることができる。結果として生じるスキャンチェーンデータは、連続するテスタサイクルにおいて、回路をテストするためのゲートなどのIC部品に伝送される。次に、スキャンチェーンの各素子は、テスタに直列にシフトアウトすることができるIC部品の応答を受信する。
【0011】多重化係数がmの場合、多重化される波形を規定する、共にグループ化されるm個の状態が存在する。したがって、それぞれの多重化された波形は、スキャン状態を表すために必要なそれぞれのタイミングエッジに対してm個のタイミングエッジを含む。例えば、最初のスキャンイン状態データが、周期pに関して時間tにエッジを有する場合、多重化されたスキャンイン波形は、以下で示されるところにエッジを有する。
【0012】(t+ip)/m 但し、iは、0〜m−1である。
【0013】多重化係数mは、テスタサイクル速度で生じるそれぞれのテスタサイクルに対して、mの数のスキャン状態が個々のメモリ位置とDUTとで交換され、一方、DUTがそれぞれの装置サイクルに対して1つの状態を処理するように選択されている。本発明の1態様では、装置サイクル速度は、テスタサイクル速度の整数倍であり、整数倍は、m倍に等しい。
【0014】多重化係数がテスタにより許容される波形状態パラメータの数を越えていないときには、テスタ波形を、状態パラメータを使用して書込むことができる。多重化係数が許容される波形状態パラメータの数より大きいときには、テスタ波形を、固定されたエッジを使用して書込むことができる。書込まれた状態パラメータを使用することは、テスタにおけるスキャンデータの読取りを容易にするので望ましい。
【0015】スキャン多重化によるソリューションは、複数のスキャン状態を単一のテスタメモリ位置にグループ化することを可能にし、それによりテスタメモリの容量が効率的に倍増される。このソリューションは、実効スキャンテスト周波数(または、有効スキャンテスト周波数)も増加させるので、総テスト時間が減少する。
【0016】
【発明の実施の形態】図1は、自動テスト信号発生器(ATG)の用途においてメモリ内の情報を多重化するためのシステム10を示している。このシステムは、ICチップ内に埋め込まれた集積回路(IC)部品のスキャンベースのテストに使用するのに特に適している。システムは、自動テストパターン発生器(ATPG)12を備え、この自動テストパターン発生器は、テスト対象である装置(DUT)18のために特別に書込まれるスキャンイン状態データのシーケンス14と予測されたスキャンアウト状態データのシーケンス16を提供する。図示したように、スキャンイン状態データのシーケンス14は、例えば、“01100”というスキャンイン状態の部分シーケンスによって表わされている。同様に、予測されたスキャンアウト状態データのシーケンス16は、例えば、“11001”というスキャンアウト状態の部分シーケンスによって表わされている。ATPGは、ベクトル(またはベクタ)処理システム(VPS)20に結合されている。後に詳述する本発明の1態様では、VPSは、スキャンイン状態データのシーケンスを多重化されたスキャンイン状態データ22のシーケンスに多重化し、テスタ波形関数指標24を生成する。それぞれの指標(インジケータ)24は、多重化されたスキャンイン状態データのシーケンスの一部に対応する。さらに、予測されたスキャンアウト状態データのシーケンスは、予測された、多重化された状態データ(以下、予測多重化状態データとも記す)26のシーケンスに多重化される。テスタ波形関数指標28は、予測された、多重化されたスキャンアウト状態データ(以下、予測多重化スキャンアウト状態データとも記す)のシーケンスのそれぞれ対応する部分に対して発生される。多重化は、VPSのベクトルプロセッサ(またはベクタプロセッサ)30によって行なわれる。データベース32は、VPS内に含まれており、かつ、多重化された状態データのシーケンス及びテスタ波形関数指標を記憶するためにベクトルプロセッサ30に結合されている。多重化された状態データ及び指標は、DUTをテストするためにICテスタ34に供給される。
【0017】シーケンス22及び26の下線は、多重化された状態データの第1の組合せと次の組合せとを識別するためのものである。第1の組合せは、3つの状態を含むものとして示されており、次の組合せは、2つの状態を含むものとして示されているが、それぞれの連続する組合せは、同じ数の状態を含んでいる。
【0018】図1の構成に関連して、図2は、ベクトルプロセッサ30による処理フローのステップを示しており、多重化されたスキャンイン状態データ22及び予測多重化状態データ26のそれぞれのシーケンスに、スキャンイン状態データ及び予測されたスキャンアウト状態データのシーケンス(それぞれ、14、16)を多重化するための処理を示している。ステップ40において、テスタ34のそれぞれのテスタメモリ位置42又は44内におけるメモリ空間の利用可能性(アベイラビリティ。または可用性)が判定される。それぞれのテスタメモリ位置は、その他のすべてのテスタメモリ位置と同じ量のメモリ空間を含むものと仮定し、2以上の状態を記憶するために、それぞれのテスタメモリ位置に十分なメモリ空間があるものとする。
【0019】ステップ46において、スキャンイン状態データ及び予測されたスキャンアウト状態データのシーケンス(それぞれ、14と16)が、ATPG12によって提供されて、ベクトルプロセッサ30によって受取られる。それぞれのスキャンイン状態を、論理0又は論理1の入力刺激とすることができ、それぞれの予測されたスキャンアウト状態を、論理0、論理1のいずれか又は高インピーダンス(ハイインピーダンス)とすることができる。それぞれの状態は、それぞれの装置サイクルにわたってATPGによって生成される。しかしながら、これから説明する態様でベクトルプロセッサにより状態データを多重化することにより、各テスタサイクルについて複数の状態を利用可能にすることができる。
【0020】動作時、テスタ34は、DUT18の装置周波数より低いテスタ周波数で動作するので、テスタ周波数によって、テスト動作の速度が規定される。図3のタイミング図48において、テスタクロック50は、100nsのテスタサイクル52で動作する。100nsという時間周期は、説明のためにのみ選択されたものであり、これには限定されない。
【0021】多重化の利益がない場合には、テストを受ける装置により受信される多重化されない各スキャンイン状態及び装置の出力である多重化されない各スキャンアウト状態が、テスタサイクルの時間周期によって指定される多重化されない各装置サイクルでクロック制御(ここでは、クロックに同期して駆動)される。すなわち、図3を参照すると、装置サイクルがテスタサイクルの時間周期によって指定される場合、装置クロック56の多重化されない装置サイクル54の時間周期は、テスタクロック50のテスタサイクル52の時間周期と同等である。さらに、1例として示す“01100”というスキャンイン状態データの部分を有するシーケンス14(図1)のそれぞれの状態は、多重化されない装置サイクルごとにクロック制御される。シーケンスは、この例では5つの状態しか含んでいないが、実際には、テストのために、それよりはるかに長いスキャンシーケンスが一般的に必要である。図3には示されていないが、図1のシーケンス16の各状態も、多重化されない装置サイクルごとにクロック制御される。
【0022】図2において、図1及び図3を参照すると、ステップ58では、複数のスキャンイン状態データ14及び複数のスキャンアウト状態データ16をそれぞれのテスタサイクル52において利用できるようにするために、図1のベクトルプロセッサ30による多重化を行う。第1の実施態様例では、テスタサイクルごとに、それぞれのテスタメモリ位置に3つの多重化されていない装置サイクルを圧縮するために、十分なメモリ空間が存在する。図3に示すように、1例として示す3という多重化係数により、多重化されていない装置クロック56の3つの多重化されていない装置サイクル54(破線ブロック62内に示す)が1つのテスタサイクル内52に圧縮され(矢印60によって示す)、その結果、1つのテスタサイクル内に、3つの多重化された装置サイクル64(破線ブロック66内に示す)が生じる。多重化によって、3つの多重化された装置サイクル64が、1つのテスタサイクル52内に記憶される。
【0023】複数の多重化されていない装置サイクル54をそれぞれのテスタサイクル52内に圧縮することによって、多重化されていない装置サイクルに対応するそれぞれの多重化されていない状態データが、同様に圧縮される。図3に示すように、例えば、3つの多重化されていない装置サイクル54(破線ブロック68内に示す)内のシーケンス14(図1)の“011”という3つのスキャンイン状態データは、1つのテスタサイクル52内に圧縮され(矢印70によって示す)、その結果、図1の多重化されたスキャンイン状態データ22の部分シーケンス(破線ブロック72内に示す)が生じる。多重化によって、それぞれの多重化されていない装置サイクルにおける状態データの3つのビットが、1つのテスタサイクル内に記憶される。
【0024】第2の実施態様例では、2つの多重化されていない装置サイクルを圧縮するために十分なメモリ空間が存在し、その結果、1つのテスタサイクル内に2ビットの状態データの記憶が行なわれる。それぞれのテスタメモリ位置におけるメモリ空間の利用可能性(可用性)に依存して、いくつかの用途では、4つ以上の装置サイクル、したがって、4つ以上の対応するビットからなる状態データを、テスタサイクルごとにそれぞれのメモリ位置に記憶することができる。
【0025】mという多重化係数に対して、テスタサイクルあたりmの連続する多重化された装置サイクルが存在する。同様に、多重化されていないスキャンインシーケンスのすべてのタイミングエッジに対して、テスタサイクル毎に、多重化されたスキャンインシーケンスについてmのエッジの可能性が存在する。多重化されていないスキャンイン状態が、周期pに関して時間tにおいてエッジを有する場合、状態の多重化されたスキャンインシーケンスは、以下で示される箇所にエッジを有する。
【0026】(t+ip)/m 但し、iは、0〜m−1である。
【0027】図3において、時間t及び周期pは、多重化されていない装置クロック56の1つの多重化されていない装置サイクル54に関して示されている。周期pは、1つの多重化されない装置サイクルに対応する。上式を適用すると、多重化されていないスキャンインシーケンス14の第2の多重化されていない装置サイクルにおけるほぼ17nsにおける立上がりエッジ74は、多重化されたスキャンインシーケンス22の第1のテスタサイクルにおけるほぼ39nsにおける立上がりエッジ76に対応する。図示した例では、3つの多重化された装置サイクル64は、すべてのテスタサイクル52にわたって駆動される。
【0028】図3は、すべてのテスタサイクルにわたって多重化されたスキャンインシーケンス22に多重化されていないスキャンインシーケンス14を多重化する様子を例示しているが、同じ方法論が、多重化されたシーケンス26への図1の多重化されていないシーケンス16を含む、状態データの別のタイプの多重化されていないシーケンスを多重化するためにも適用される。
【0029】多重化に続いて、状態データの複数ビットが、同じテスタサイクル内に記憶される。状態データのスキャンシーケンスは、テスタメモリ内に記憶することが可能な状態の数によって規定される場合、シーケンスの長さは、多重化係数mの分だけ増加される。例えば、8百万のテスタメモリ位置を含み、それ故に8百万のテスタサイクルを有するICテスタの場合、多重化を行なわないと(すなわちm=1)、8百万ビットの状態データを有するシーケンスのための記憶容量が存在する。しかしながら、多重化係数m(ここでは、m=3)によって多重化するように構成された同じICテスタの場合、2千4百万ビットの状態データを含むことが可能なシーケンスに対する記憶容量が存在することになる。
【0030】代替的には、必要なテスタメモリ位置の数を、mの多重化係数の分だけ減少させることができる。例えば、3百万のデータの状態を含み、かつ、3の多重化係数を有する累積スキャンシーケンスに対して、必要なメモリ位置の数は、3百万から百万に減少する。
【0031】同様に重要なことであるが、実効的なスキャンテスト周波数は、多重化係数mに対応する割合だけ増加する。すなわち、テストの速度が上昇するので、テストのために必要な時間の合計量が減少する。多重化しない場合には、状態データのそれぞれのビットは、個別のテスタメモリ位置に記憶され、記憶は、すべてのテスタサイクルにおいて生じ、テスタサイクルは、多重化されていない装置サイクルと同じ速度でクロック制御される。すべてのテスタサイクルにおいてテスタメモリ位置に複数の状態が記憶される多重化により、それぞれの多重化されていない装置サイクルを、多重化係数mに対応する分だけ減少させることができる。したがってmの数の装置サイクルが、すべてのテスタサイクルに対して記憶される。例えば、同じ3の多重化係数を使用する場合は、装置サイクルは、3に対応する分だけ(ここでは、1/3に)減少する。テスタサイクルが100nsのままである場合、それぞれの多重化されていない装置サイクルは、100nsからほぼ33nsに減少する。したがって、33nsの新しい多重化された装置サイクルに従う実効的なスキャンテスト周波数は300%増加し、テスト時間は、スキャンシーケンスにおける一定数の状態データに対する以前の時間の1/3に減少することになる。
【0032】図1を再び参照する。多重化されたスキャンインシーケンス22及び予測された、多重化されたスキャンアウトシーケンス26の生成に続いて、テスタ波形関数指標24及び28が生成される。それぞれの指標は、すべてのテスタサイクルにおいて多重化された状態データの特定の組合せに関連する。1例として、“波形関数指標4”を、1つのテスタサイクル内におけるスキャンイン状態データ22の部分的な多重化されたシーケンス内の“011”という多重化された状態データの組合せに関連付けることができる。多重化されたシーケンス22及び26、及び波形指標24及び28を、データベース32内に記憶することができる。代替的には、多重化がテストデータの生成の直前に行なわれる場合には、スキャンイン状態データ及び予測されたスキャンアウト状態データの多重化されていないシーケンス(それぞれ、14、16)は、多重化の前にデータベースに記憶される。どのタイミングで多重化を行うかは重要ではない。
【0033】図2のフローチャートにおいて図1に示す構成を参照すると、多重化ステップ58に続いて、ステップ78は、テスト用の波形関数を提供するために、多重化された状態データ及び対応する波形指標の連続する組合せをテスタ34に入力する。多重化されたスキャンイン状態データ22及び予測多重化スキャンアウト状態データ26の連続する組合せは、それぞれの波形記憶部(または波形メモリ。以下同様)80及び82に伝送される。さらに、テスタ波形指標24及び28は、それぞれのテスタメモリ位置42及び44に伝送される。それぞれのテスタ波形関数指標は、予測された波形関数を得て、DUT内に存在する可能性のある欠陥を検出するために、全てのテスタサイクルにわたって多重化された状態データの対応する組合せへの参照を提供する。
【0034】図4Aは、波形記憶部80の図である。それぞれのテスタサイクルにおける多重化された状態データの組合せに対応する符号化された情報(例えば、図3の“011”を含む多重化されたスキャンインシーケンス22の一部)は、波形関数によって表すことができるので、列84におけるそれぞれの波形関数指標は、列88に表示されているそれぞれの波形関数を発生するために、列86における多重化された状態データの組合せのリストに整合されている。各状態が論理0又は論理1のいずれかである多重化係数mが3の場合(すなわち、テスタサイクルあたり3つの多重化された状態がある)には、波形関数の2すなわち8の組合せが存在する。図示した実施態様では、“波形関数指標4”は、波形関数90を発生するために多重化された状態データ“011”の組合せによって参照される。図1を参照すると、波形関数90は、DUT18への入力として示されている。各状態が論理0又は論理1のいずれかである多重化係数mが2の場合(すなわちテスタサイクルあたり2つの多重化された状態がある)には、波形関数の2すなわち4つの組合せが存在する。図4Bは、テスタサイクルあたり2つの多重化された状態を有する波形関数に対する波形記憶部80の図である。
【0035】前述したテスト用の波形関数を発生するための方法論は、予測多重化状態データのシーケンス26及び波形関数指標28から、図1に例示した波形関数92を発生するために、等しく適用される。波形関数92は、波形記憶部82からの出力として提供され、かつ比較器94によって受信される。代替実施態様では、波形記憶部82は、波形記憶部80と同じ記憶部とすることができる。但し、これは、重要なことではない。
【0036】図2のステップ96において、DUT18のテストは、テスタがテスタサイクルに対応する速度で動作している場合でさえ、それぞれの多重化された装置サイクルにおいて行なわれる。多重化されたスキャンイン状態データの1つのビットに対応する波形関数(例えば図4の波形関数90)の多重化された組合せのそれぞれの部分を、以後、“多重化された波形部分”と称する。すべてのテスタサイクルにおける多重化された波形部分の数は、多重化係数mに依存する。1例をあげれば、すべてのテスタサイクルについて、3という多重化係数に対する3つの多重化された波形部分が存在する。したがって、すべての多重化された装置サイクルについて、1つの多重化された波形部分が存在する。さらに、それぞれの多重化された波形部分は、状態データの1つのビットに対応する。それぞれの多重化された波形部分は、連続する多重化された装置サイクルにおいて、テストのためにDUT内にシフトされる。
【0037】図5は、図1のDUT18を示している。スキャンイネーブルピン98は、マルチプレクサ100をスキャンベースのテストモードで順序付けて動作させるための入力端子として利用される。スキャンインピン102は、連続する多重化された装置サイクル64(図3R>3)におけるそれぞれの多重化された波形部分を、Dタイプフリップフロップ104のような複数の双安定記憶素子内にシフトするための入力として設けられている。装置クロックピン106は、入力スキャンチェーン108(内側の破線のブロックとして示す)をロードするために、各多重化されたスキャンインデータをフリップフロップにトグル入力するための入力として設けられている。入力スキャンチェーンのロードに続いて、DUT18内に埋め込まれた組合せ論理(組み合わせ論理回路)110(IC部品)のテストが実行される。図示していないが、組合せ論理は、ANDゲート、NANDゲート、ORゲート及びNORゲートのような複数のタイプの論理素子を含むことができる。入力スキャンチェーンが多重化されたスキャンインデータでプログラムされると、データは、入力ノード112において組合せ論理内に同時に転送される。組合せ論理は、出力ノード114から出力スキャンデータを発生する。それぞれの出力スキャン状態は、対応するマルチプレクサ100を介してそれぞれのフリップフロップ104へ入力されて、出力スキャンチェーン116(外側の破線のブロックとして示す)を形成する。出力スキャンチェーンのそれぞれのスキャン状態は、スキャンアウトピン118を介してDUT18から外にシフトされて、多重化された波形関数120のスキャンアウトシーケンスを形成する。図3に示すように、多重化された波形シーケンス120は、例として示す“110”という状態データを含んでいる。特定の状態に対応するそれぞれの波形部分は、関連する多重化された装置サイクル64においてクロックに同期して出力される。多重化された波形関数120の部分的なスキャンアウトシーケンスも、DUT18からのテストされた出力として、図1に示されている。
【0038】この実施態様例では、入力スキャンチェーン108及び出力スキャンチェーン116のそれぞれが3つのフリップフロップを有するものとして説明したが、実際には、入力スキャンチェーン及び出力スキャンチェーンは、それぞれ、テストするIC部品の数及びICの複雑さのような種々の要因に依存して、はるかに多くの数の(例えば数千の)フリップフロップを含む場合がある。
【0039】図2のステップ122において、図1の構成を参照すると、多重化されたスキャンアウト波形関数120のシーケンスと予測された波形関数92のシーケンスが、比較器94によって比較される。予測された波形関数は、DUTの機能性を判定するための既知のデータを含んでいる。シーケンス120のそれぞれの多重化された波形部分は、予測された波形関数のシーケンス92のそれぞれの部分と比較される。欠陥が検出されたかどうかに依存して、“合格”又は“不合格”が、比較するステップの出力として生成される。
【0040】ステップ124において、DUT18のテストに関連するデータが、図1のディスプレイモジュール126に表示される。図6は、コンピュータのモニタとすることができるディスプレイモジュールの拡大した図である。比較器94により生成される“合格”は、DUT18がテスタにより課された構造に関するテストに合格したことを示すために、第1のウィンドウ128内に表示される。多重化係数mがICテスタ34に起因する波形状態パラメータの数より大きい実施態様では、波形関数指標に関連する名称(例えば、図4の波形関数90に割当てられた“波形関数指標4”)が表示される。例えば、最大の波形状態パラメータの数が2であるテスタの場合は、波形スキャン状態ではなく、波形関数指標の名称が記録される。“波形関数指標4”という名称は、波形関数90に対して、ディスプレイモジュールの第2のウィンドウ130に示される。波形関数指標は、1つのテスタサイクルに対応しており、波形記憶部80(図1)によって提供される。さらに、波形関数92に対応する予測された波形関数指標の名称(例えば“波形関数指標7”)が、第3のウィンドウ132に表示される。
【0041】一方、多重化係数mが、ICテスタ34によって可能にされる波形状態パラメータの数より大きくない実施態様では、波形関数は、論理1及び論理0のシーケンスのようなスキャン状態の形で表示される。スキャン状態の形における多重化されたデータを提供することは、ディスプレイをより簡単に読取ることができるので好ましい。例えば、最大の波形状態パラメータの数が2であるテスタの場合、多重化された状態データ及び予測多重化状態データは、それぞれのウィンドウ130及び132において、それぞれのテスタサイクルに対して“00”、“01”、“10”及び“11”のうちの1つとしてスキャン状態の形で示される。図7では、ディスプレイモジュール126において、例えば、“01”という多重化された状態データがウィンドウ130に、“00”という予測多重化状態データがウィンドウ132に示されている。
【0042】以下においては、本発明の種々の構成要件の組み合わせからなる例示的な実施態様を示す。
1.状態データのシーケンス(14及び16)を使用して集積回路(IC)のスキャンテストに関する情報を記憶する方法であって、前記状態データをテスト対象である装置(DUT)(18)と交換するために使用されるスキャンテスタ(34)のテスタサイクル速度を識別するステップと、前記DUTの装置サイクル速度を識別するステップであって、前記装置サイクル速度が前記テスタサイクル速度よりも高いことからなる、ステップと、複数の前記状態データを複数の個別にアクセス可能なメモリ位置(42及び44)にグループ化するステップであって、複数の前記状態データが個々の前記メモリ位置内に存在するように、少なくともいくつかの前記状態データを前記メモリ位置に多重化するステップを含む、ステップを含み、前記多重化するステップが、(1)前記個々のメモリ位置(42及び44)の記憶容量と、(2)前記テスタサイクル速度の複数倍(m倍)である実効的な状態データ交換速度を可能にする(mは、1より大きく、前記個々のメモリ位置(42及び44)における前記状態データの数を表わす)ことに基づくことからなる、方法。
2.前記グループ化が、前記スキャンテストの間に、入力刺激として前記DUT(18)内に入る入力状態データとして前記状態データを多重化するステップをさらに含み、それぞれの前記入力状態データが、個別のスキャンイン状態であり、かつ、前記DUTの装置サイクル(64)の間に、前記DUT内に入ることからなる、上項1に記載の方法。
3.前記グループ化が、予測された状態データとして前記状態データを多重化するステップをさらに含み、それぞれの前記予測された状態データが、それぞれの前記装置サイクル(64)において前記スキャンアウト状態と比較される、個別の予測された状態である、上項1又は2に記載の方法。
4.前記テスタサイクル速度で生じるそれぞれのテスタサイクル(52)にわたって、mの数の前記入力状態データが、前記個々のメモリ位置(42及び44)と前記DUT(18)との間で交換されるように、かつ前記DUTが、それぞれの装置サイクル(64)に対して1つの前記スキャンイン状態を処理するようにするために、前記多重化するステップが、前記倍数(m)を選択するステップを含むことからなる、上項1又は2に記載の方法。
5.前記装置サイクル速度が、前記テスタサイクル速度の整数倍であり、前記整数倍がm倍に等しく、それにより、前記グループ化するステップが、それぞれの前記テスタサイクル(52)において前記個々のメモリ位置(42及び44)にmの数の前記状態データを多重化するステップを含むことからなる、上項1、2、3又は4に記載の方法。
6.mが、前記スキャンテスタ(34)によって生じうることが可能にされた論理レベルパラメータの数を越えていない場合には、前記グループ化するステップは、前記それぞれのテスタサイクル(52)の前記複数の状態データを、論理レベルパラメータとしてデータベース(32)に記録するステップを含むことからなる、上項1に記載の方法。
7.mが、生じる可能性のある前記論理レベルパラメータの数を越えていない場合には、前記それぞれのテスタサイクル(52)の前記複数の状態データを、論理レベルパラメータとして表示するステップをさらに含む、上項1又は6に記載の方法。
8.mが、前記スキャンテスタ(34)によって生じうることが可能にされた論理レベルパラメータの数を越える場合には、前記グループ化するステップが、前記それぞれのテスタサイクル(52)の前記複数の状態データを、論理レベル波形としてデータベース(32)に記録するステップを含むことからなる、上項1に記載の方法。
9.mが、生じる可能性のある前記論理レベルパラメータの数を越える場合には、前記それぞれのテスタサイクル(52)の前記複数の状態データを、波形指標(24及び28)として表示するステップをさらに含む、上項1又は8に記載の方法。
10.テストを受ける集積回路(IC)(18)の装置サイクル速度より遅いテスタサイクル速度を有するスキャンテスタ(34)用の状態データのシーケンス(14及び16)を記憶するシステム(10)において、あるフォーマットのスキャンイン状態データの複数の前記シーケンス(14及び16)のソースであって、前記フォーマットにおいて、各前記スキャンイン状態データは、論理状態を表わすビットであることからなる、ソースと前記ソースからのスキャンイン状態データの前記複数のシーケンス(14及び16)を操作するために結合されたプロセッサ(30)であって、前記IC(18)と協働して、スキャンイン状態データの前記シーケンス(14及び16)が前記テスタサイクル速度で操作され、かつ前記シーケンス内における各前記スキャンイン状態データが前記装置サイクル速度で操作されるように、多重化された状態データの交換を行うことが可能なプロセッサと、前記テスタサイクル速度でスキャンイン状態データの前記シーケンスを受け取るように前記プロセッサに結合された記憶部であって、前記スキャンイン状態データが、前記それぞれの装置サイクル(64)において前記ICによって処理されるように、個別の前記シーケンスが、それぞれのテスタサイクル(52)において前記IC(18)に入力されることからなる、記憶部を備える、システム。
11.前記記憶部が、複数の個別にアドレス指定可能なテスタメモリ位置(42及び44)内に構成され、それぞれの前記テスタメモリ位置が、状態データの前記シーケンス(14及び16)の1つを記憶するように構成される、上項10に記載のシステム。
12.各前記テスタメモリ位置(42及び44)が、少なくとも3つの多重化された状態データを含む、上項11に記載のシステム。
13.前記テスタサイクル(52)が、複数(m)の多重化された状態データを含み、前記装置サイクル速度が前記テスタサイクル速度のm倍である、上項10に記載のシステム。
【0043】本発明によれば、複数の状態データを各テスタメモリ位置(42及び44)に多重化することによって、スキャン動作の実効周波数を高くし、同時にメモリ容量を大きくすることができる。システム(10)は、テスト対象装置(DUT)(18)への入力刺激としての状態データのスキャンインシーケンス(14)と予測された状態データのスキャンアウトシーケンス(16)を提供するためのソースを含む。ベクトルプロセッサ(30)が、スキャンインシーケンス(14)と予測されたスキャンアウトシーケンス(16)を受け取り、多重化された状態データの交換を可能にする。この場合、複数の多重化された状態データベクトル(22及び26)はテスタサイクルレートで操作され、DUT(18)は、それより速い装置サイクルレートでビットを操作する。多重化係数がmの場合には、装置サイクルレートをテスタサイクルレートのm倍にすることができる。多重化係数は、個々のテスタメモリ位置(42及び44)の記憶容量と、実効ベクトル交換レートをテスタサイクルレートのm倍にすることができるということに基づいて選択される。
【0044】
【発明の効果】本発明によれば、DUT内のIC部品を評価するためのコスト効果及び時間効率の高いテスト手段を提供することができる。
【図面の簡単な説明】
【図1】本発明による、自動テスト発生(ATG)用途におけるメモリ内の情報を圧縮するためのシステムのブロック図である。
【図2】図1のシステムによるATG用途におけるメモリ内の情報を多重化するための処理流れ図である。
【図3】本発明による、多重化されていない装置サイクル及び多重化された装置サイクルにおけるデータに関するタイミング関係を示すタイミング図である。
【図4A】図1の波形記憶部を示す。
【図4B】図1の波形記憶部の別の態様を示す。
【図5】図1のテスト対象装置(DUT)の略図である。
【図6】波形名称としてスキャンアウト状態データを表示する図1のディスプレイモジュールの略図である。
【図7】状態パラメータの形でスキャンアウト状態データを表示する図1のディスプレイモジュールの略図である。
【符号の説明】
10 多重化システム
12 自動テストパターン発生器
14、16 状態データのシーケンス
18 テスト対象装置(テスト対象デバイス)
30 プロセッサ
32 データベース
34 テスタ
42、44 メモリ位置

【特許請求の範囲】
【請求項1】状態データのシーケンス(14及び16)を使用して集積回路(IC)のスキャンテストに関する情報を記憶する方法であって、前記状態データをテスト対象である装置(DUT)(18)と交換するために使用されるスキャンテスタ(34)のテスタサイクル速度を識別するステップと、前記DUTの装置サイクル速度を識別するステップであって、前記装置サイクル速度が前記テスタサイクル速度よりも高いことからなる、ステップと、複数の前記状態データを複数の個別にアクセス可能なメモリ位置(42及び44)にグループ化するステップであって、複数の前記状態データが個々の前記メモリ位置内に存在するように、少なくともいくつかの前記状態データを前記メモリ位置に多重化するステップを含む、ステップを含み、前記多重化するステップが、(1)前記個々のメモリ位置(42及び44)の記憶容量と、(2)前記テスタサイクル速度の複数倍(m倍)である実効的な状態データ交換速度を可能にする(mは、1より大きく、前記個々のメモリ位置(42及び44)における前記状態データの数を表わす)ことに基づくことからなる、方法。

【図1】
image rotate


【図2】
image rotate


【図4A】
image rotate


【図4B】
image rotate


【図3】
image rotate


【図5】
image rotate


【図6】
image rotate


【図7】
image rotate


【公開番号】特開2003−194883(P2003−194883A)
【公開日】平成15年7月9日(2003.7.9)
【国際特許分類】
【出願番号】特願2002−317430(P2002−317430)
【出願日】平成14年10月31日(2002.10.31)
【出願人】(399117121)アジレント・テクノロジーズ・インク (710)
【氏名又は名称原語表記】AGILENT TECHNOLOGIES, INC.
【住所又は居所原語表記】395 Page Mill Road Palo Alto,California U.S.A.
【Fターム(参考)】