(57)【要約】  集積回路（１０）を試験するための装置であって、集積回路（１０）の一部である試験中の回路（１４）からの試験応答を圧縮する圧縮器（２２）と、試験中の回路と圧縮器（２２）の間に結合される、試験中の回路（１４）からの１つまたは複数の試験応答をマスクするためのマスキング回路（１８）とを備える装置。マスキング回路（１８）はさらに、圧縮済マスクデータを受信し、復元済マスクデータを供給するための復元回路を含む。
2007506962.tif 000002
【特許請求の範囲】
【請求項１】
集積回路を試験するための装置であって、
集積回路の一部である試験中の回路からの試験応答を圧縮する圧縮器と、
前記試験中の回路と前記圧縮器の間に結合される、前記試験中の回路からの１つまたは複数の前記試験応答をマスクするためのマスキング回路と
を備え、
前記マスキング回路が、前記装置から圧縮済マスクデータを受信し、マスク回路に復元済マスクデータを供給するための復元回路をさらに含む
ことを特徴とする装置。
【請求項２】
復元が、線形フィードバックシフトレジスタによって実行される、請求項１に記載の装置。
【請求項３】
復元が、移相器によって実行される、請求項１又は２のいずれかに記載の装置。
【請求項４】
復元が、重み付けロジックによって実行される、請求項１−３のいずれかに記載の装置。
【請求項５】
前記圧縮済マスクデータが、前記マスキング回路を制御するための少なくとも１つの制御信号を備える、請求項１−４のいずれかに記載の装置。
【請求項６】
前記少なくとも１つの制御信号が、マスクオール制御信号である、請求項５に記載の装置。
【請求項７】
前記少なくとも１つの制御信号が、マスクイネーブル制御信号である、請求項５に記載の装置。
【請求項８】
集積回路の試験で使用される方法であって、
復元回路に圧縮済マスクデータを供給し、
前記圧縮済マスクデータを復元して、復元済マスクデータを生成し、
前記復元済マスクデータに応じて前記集積回路からの試験応答をマスクする
ことを備えることを特徴とする方法。
【請求項９】
集積回路からの試験データをマスクする際に使用する圧縮済マスクデータを計算するための方法であって、
マスクデータに関連する１組の方程式を生成し、
前記方程式を解いて、圧縮済マスクデータを取得する
ことを備えることを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路（ＩＣ）を試験するための装置であって、ＩＣの一部である試験中の回路からの試験応答を圧縮する圧縮器と、試験中の回路と圧縮器の間に結合される、試験中の回路からの１つまたは複数の試験応答をマスクするためのマスキング回路とを備える装置に関する。
【０００２】
本発明は、ＩＣの試験のための方法にも関する。
【０００３】
本発明はさらに、ＩＣからの試験データをマスクする際に使用する圧縮済マスクデータを計算するための方法にも関する。
【背景技術】
【０００４】
試験データ量および試験時間を削減することが可能なので、ＩＣからの試験応答を圧縮することは有益である。しかし、いくつかの試験応答の値は、事前に決定されることができず、その他の試験応答は、トライステート（ｔｒｉ−ｓｔａｔｅｄ）または低信頼であることがある。これらの未知、トライステート、および低信頼の試験応答は、「Ｘ」試験応答と呼ばれ、試験応答の高信頼の圧縮が非常に難しくなる、または不可能にすらなる原因となる。
【０００５】
デジタルＩＣの製造試験は一般に、ＩＣテスタとも呼ばれる、自動試験装置（ＡＴＥ：Ａｕｔｏｍａｔｅｄ  Ｔｅｓｔ  Ｅｑｕｉｐｍｅｎｔ）を使用して実行される。ＡＴＥは、試験刺激を保存し、これらの試験刺激をＩＣに与える。次に、その後のＩＣの応答が、ＡＴＥによって観測される。ＡＴＥは、これらの観測応答を無欠陥ＩＣの期待応答と比較する。これは、ＩＣが試験に合格したか、それとも不合格になったかを決定し、欠陥を診断することを可能にする。ＡＴＥは、試験刺激および無欠陥試験応答をそのメモリに保存する。
【０００６】
デジタルＩＣは通常、スキャンチェーンを含む。これは、ＩＣ内のフリップフロップが、試験モードにおいて、直列シフトレジスタに、すなわちスキャンチェーンに構成されることができることを意味する。試験は、反復的に、（１）試験モードにおいて試験刺激をＩＣのスキャンチェーンにシフトインし、（２）複数クロックサイクルの間、ＩＣをその機能応用モード（functional application mode）で動作させ、（３）試験モードにおいて試験応答をシフトアウトすることによって実行される。試験応答をシフトアウトするとき、通常は試験刺激がシフトインされる。
【０００７】
ＩＣプロセス技術における絶え間のない進歩が、ムーアの法則に従う、ＩＣ上のトランジスタ数の指数関数的増加を可能にしている。その結果、試験データ量も指数関数的に増大する。新しいＩＣプロセス技術は、新しい欠陥タイプを導入し、これらの欠陥を検出するために追加の試験が必要とされるが、このことが、試験データ量のさらに大きな増大の原因となる。試験データ量のこの急激な増大は、ＡＴＥ利用および試験コストに関係する深刻な問題の原因となる。試験データ量は、ＡＴＥのメモリ容量を超過するかもしれず、試験を実行するのに必要とされる時間は、増え続けている。
【０００８】
解決策が、試験データ圧縮技法および組み込み自己診断（ＢＩＳＴ：Ｂｕｉｌｔ−Ｉｎ  Ｓｅｌｆ  Ｔｅｓｔ）技法によって提供される。これらの技法は、例えば、多入力シグネチャレジスタ（ＭＩＳＲ：Ｍｕｌｔｉｐｌｅ−Ｉｎｐｕｔ  Ｓｉｇｎａｔｕｒｅ  Ｒｅｇｉｓｔｅｒ）または空間圧縮ロジック（ＳＣＬ：Ｓｐａｃｅ−Ｃｏｍｐａｃｔｉｏｎ  Ｌｏｇｉｃ）など、特別の試験応答圧縮回路を使用することによって、試験応答を空間的および／または時間的に圧縮する。この圧縮回路は、オンチップ、例えばロードボード（ｌｏａｄ−ｂｏａｒｄ）上などのオフチップ、またはＡＴＥのいずれかに存在することができる。圧縮回路は、圧縮試験応答を出力し、圧縮試験応答は、ＡＴＥによって観測され、無欠陥回路の期待圧縮応答と比較される。したがって、ＡＴＥは今では、圧縮試験応答を保存するだけでよく、このことがメモリ要件を引き下げる。
【０００９】
最新技術に関連する問題は、いくつかの試験応答は、試験応答が圧縮されることができる前に、廃棄またはマスクされなければならないことである。これは、トライステート（Ｚ）、未知（Ｕ）、および低信頼の試験応答、すなわち「Ｘ」応答の場合である。
【００１０】
トライステートの試験応答は、高インピーダンス状態（Ｚ）を有し、例えば、双方向入力／出力ピンから生じることがある。
【００１１】
未知の試験応答は、未知の値（Ｕ）を有し、例えば、初期化されていない埋め込みメモリ、混合信号モジュール、および／または競合もしくは浮動バス（ｃｏｎｆｌｉｃｔｉｎｇ  ｏｒ  ｆｌｏａｔｉｎｇ  ｂｕｓ）から生じることがある。また、第１の試験刺激をＩＣにシフトインするとき、未知の値がＩＣからシフトアウトされる。未知の試験応答は、試験応答は論理ロー（Ｌ）すなわち０、論理ハイ（Ｈ）すなわち１、またはトライステート（Ｚ）のいずれかであるが、その値は、試験が実行される前に決定されることができない、ことを意味する。
【００１２】
低信頼の試験応答は、不正確かもしれない低信頼の結果を有する。これは、例えば、複数のクロックドメインを有する回路において生じることがあり、低信頼の試験応答は、クロックドメイン境界を横切る信号ラインを試験する場合に、クロックスキューによって発生させられる。
【００１３】
「Ｘ」応答を含む試験応答を圧縮することは、ＩＣ内の回路が試験に合格したか、それとも不合格になったかを決定するために、または欠陥の診断のために使用されることができない低信頼の圧縮試験応答をもたらす。したがって、試験応答圧縮は、「Ｘ」応答を生成する回路に適用されることはできない。
【００１４】
試験応答におけるトライステート、未知、および低信頼の値は、廃棄すなわちマスクされるか、または生じないようにされるべきである。
【００１５】
最新技術の部分的な解決策は、適切な試験可能設計（ＤｆＴ：Ｄｅｓｉｇｎ−ｆｏｒ−Ｔｅｓｔａｂｉｌｉｔｙ）ハードウェアを追加することによって、回路内で未知の試験応答を決定することである。例えば、未知の値を伝送する信号ラインに試験点が挿入されることができ、これは、信号ラインを強制的に既知の固定値にする。しかし、未知の値を防止するために回路にＤｆＴを追加することは、人手によることが多い、回路の変更を必要とする。これは、回路レイアウトだけが入手可能な「中核部分（ｈａｒｄ  ｃｏｒｅ）」の場合には不可能であり、ＤｆＴハードウェアがタイミングに影響を与えることで、試験中の回路が必要な周波数で動作できなくなる場合には望ましくない。
【００１６】
より好ましい解決策は、トライステート、未知、および低信頼の試験応答をすべて、それらが圧縮回路に入る前に、ＩＣの出力においてマスクする解決策である。これは、Ｘマスキングロジック（ＸＭＬ：Ｘ−Ｍａｓｋｉｎｇ  Ｌｏｇｉｃ）を用いて実現されることができる。ＸＭＬは、すべての「Ｘ」応答をマスクアウトするが、ここで「Ｘ」は、トライステート（Ｚ）、未知（Ｕ）、または低信頼の試験応答のいずれかを表す。マスキングは、「Ｘ」応答が、既知の固定値、例えば論理ハイ（Ｈ）によって置き換えられることを意味する。ＸＭＬをオンチップで実装する場合、ＸＭＬ用の追加のシリコン面積は、理想的には狭くあるべきである。さらに、ＸＭＬは、例えば異なる試験パターンまたは設計変更のために異なる試験応答が得られる場合にも適応させられることができるように、柔軟であるべきである。ＸＭＬの動作は、ＡＴＥから制御されることができる。そのような場合、ＸＭＬを制御するためにＡＴＥに保存されるデータの量も、理想的には少なくあるべきである。さらに、このデータをＡＴＥからＩＣに転送するための帯域幅要件も、やはり理想的には小さくあるべきである。最新技術において様々なＸＭＬ実装が提案されているが、不都合なことに、これらのＸＭＬ実装は、上で述べられた要件を完全には満たしていない。
【発明の開示】
【発明が解決しようとする課題】
【００１７】
本発明の目的は、試験データの量を減らすことである。
【課題を解決するための手段】
【００１８】
本発明の第１の態様において、本発明の目的は、マスキング回路が、圧縮済マスクデータを受信し、復元済マスクデータを供給するための復元回路をさらに備えることで達成される。
【００１９】
本発明の有利な一実施形態では、復元回路は、線形フィードバックシフトレジスタをさらに含む。
【００２０】
本発明の有利な別の実施形態では、復元回路は、移相器をさらに含む。
【００２１】
本発明の有利なまた別の実施形態では、復元回路は、重み付けロジックをさらに含む。
【００２２】
本発明の有利なさらなる実施形態では、圧縮済マスクデータは、少なくとも１つの制御信号を備える。
【００２３】
本発明の有利なまたさらなる実施形態では、少なくとも１つの制御信号は、マスクオール制御信号（ｍａｓｋ  ａｌｌ  ｃｏｎｔｒｏｌ  ｓｉｇｎａｌ）である。
【００２４】
本発明の有利なまた別のさらなる実施形態では、少なくとも１つの制御信号は、マスクイネーブル制御信号（ｍａｓｋ  ｅｎａｂｌｅ  ｃｏｎｔｒｏｌ  ｓｉｇｎａｌ）である。
【００２５】
本発明の第２の態様において、本発明の目的は、圧縮済マスクデータが復元回路に供給され、復元済マスクデータを生成するために圧縮済マスクデータが復元され、集積回路からの試験応答が復元済マスクデータに応じてマスクされることで達成される。
【００２６】
本発明の第３の態様において、本発明の目的は、マスクデータに関連する１組の方程式が生成され、その方程式が圧縮済マスクデータを取得するために解かれることで達成される。
【００２７】
本発明の装置のより良い理解のため、またそれがどのように実施され得るかをより明瞭に示すため、添付の例示的な図面に対する例による言及が今からなされる。
【発明を実施するための最良の形態】
【００２８】
図１は、本発明によるＸマスキングロジック（ＸＭＬ）の一例を示す。図１は、ＩＣ１０を含み、ＩＣ１０はそれ自体が、試験中の回路１４と、ＸＭＬ１８と、圧縮器２２とを備える。試験中の回路１４は、ｎ個のスキャンチェーンＳＣ１〜ＳＣ４を含み、スキャンチェーンの出力は、試験中の回路１４からの試験応答を圧縮するための圧縮器２２に、ＸＭＬ１８を介して接続される。圧縮器２２は、例えば、多入力シグネチャレジスタ（ＭＩＳＲ）または空間圧縮ロジック（ＳＣＬ）によって実装することができ、そのような実装は当技術分野において知られている。図１は、ＩＣ１０の一部として組み込まれたＸＭＬ１８および圧縮器２２を示しているが、ＸＭＬ１８および／または圧縮器２２は、例えば、自動試験装置（ＡＴＥ）のロードボードまたは確かにＡＴＥ（図示せず）自体の内部など、オフチップに配置されることもできる。
【００２９】
ＸＭＬ１８は、線形フィードバックシフトレジスタ（ＬＦＳＲ）２６と、重み付けロジックを伴う移相器３０と、制御ロジック３４とを含む。ＸＭＬ１８は、制御信号ｍａｓｋ＿ａｌｌおよびｍａｓｋ＿ｅｎａｂｌｅを使用してＡＴＥから制御される。ＡＴＥは、信号ｍ１〜ｍｑ、すなわち圧縮済マスクデータを供給する入力端子を介して、クロックサイクル毎にＸＭＬ１８の論理状態を更新する。
【００３０】
本発明によるＸＭＬ１８は、ＡＴＥに保存されなければならないマスキングデータの量が削減されることを可能にする。したがって、ＡＴＥは、クロックサイクル毎に、ｍａｓｋ＿ａｌｌ、ｍａｓｋ＿ｅｎａｂｌｅ、およびｍ１〜ｍｑ信号を表すｑ＋２ビットを保存しなければならない。これらのｑ＋２入力ビットは、ＸＭＬ１８によって、ｎ出力ビットのマスクに復元されるが、ここでｑ≪ｎである。したがって、本発明によるＸＭＬ１８を用いないと、ＡＴＥは通常、各クロックサイクル毎にｎビットのマスクを保存しなければならず、そのようなマスクをＡＴＥからＩＣ１０に転送するにはｎ本のＩＣ入力ピンが必要とされる。本発明によるＸＭＬ１８を使用する場合、ＡＴＥは、各クロックサイクル毎に、制御およびマスクデータ信号のｍａｓｋ＿ａｌｌ、ｍａｓｋ＿ｅｎａｂｌｅ、およびｍ１〜ｍｑを表すｑ＋２ビットのＸＭＬ１８データを保存すればよく、このデータをＡＴＥからＩＣ１０に転送するにはｑ＋２本のＩＣ入力ピンが必要とされるだけであるという利点を有する。
【００３１】
図２は、本発明によるＸマスキングロジック（ＸＭＬ）のより詳細な一例を示す。
【００３２】
図２の例示的なＸＭＬ１８は、４つのスキャンチェーンＳＣ１〜ＳＣ４を備える試験中の回路１４と、４ビットＬＦＳＲ２６と、移相器３０と、３つのステージを備える制御ロジック３４とを示す。
【００３３】
この図２に示されたＬＦＳＲ２６は、シフトレジスタと、ＸＯＲゲートのフィードバックネットワークとを備えるよく知られた構造である。ＡＴＥから圧縮済マスクデータを受信するＬＦＳＲ２６は、ｐビット幅であり、すなわち、そのシフトレジスタはｐ個のフリップフロップを含み、この例ではｐ＝４である。各クロックサイクルの間、ＬＦＳＲ２６の状態は、入力ｍ１〜ｍｑを介するＡＴＥからのｑマスクデータビットを使用して部分的に更新されるが、ここでｑ≦ｐであり、この例ではｑ＝１である。この更新は、例えば、ＸＯＲゲートをシフトレジスタに追加することによって実施されることができ、第ｉの各ＸＯＲゲートの入力は、個々の入力信号ｍｉを受信するように接続され、ここで１≦ｉ≦ｑである。ＬＦＳＲ２６は、ＡＴＥからの圧縮済マスクデータを復元するため、部分的な復元操作を実行する。ＬＦＳＲ２６からの部分的に復元された出力データは、移相器３０への入力データとして使用される。
【００３４】
この図２に示された移相器３０も、ＸＯＲゲートのネットワークを備えるよく知られた構造である。移相器３０は、ＬＦＳＲ２６からのデータに対してさらなる復元操作を実行し、ｐ入力信号からｎ出力信号を生成するが、ここでｐ≦ｎであり、この例ではｎ＝４である。移相器３０は、移相器の出力信号が相関をもたないように、すなわち、各出力信号が入力信号の異なる組に依存するように構成される。重み付けロジック（図示されず）が移相器３０に追加されることができ、この重み付けロジックは、ある出力信号が論理０または論理１となる確率に偏りをもたせることを可能にすることに留意されたい。重み付けロジックは一般に、ＡＴＥからの追加の入力信号を使用して随意的に制御されることができるいくつかの組み合わせロジックを備える。
【００３５】
移相器３０のｎ（この例ではｎ＝４）出力信号は、制御ロジック３４への入力信号として使用される。
【００３６】
制御ロジック３４の第１のステージ３６は、ｍａｓｋ＿ｅｎａｂｌｅ制御信号によって制御される４個のＡＮＤゲートを備え、移相器３０からのデータをさらに復元する。ｍａｓｋ＿ｅｎａｂｌｅが論理１の場合、個々のＡＮＤゲートの出力は、移相器３０からのそれぞれの関連出力に等しく、すなわち、それをそのまま反映する。ｍａｓｋ＿ｅｎａｂｌｅが論理０の場合、すべてのＡＮＤゲートの出力は、強制的に論理０にされ、したがって、移相器３０からのｎビット出力マスクは、すべて論理０から成る出力マスクになる。制御ロジック３４の第２のステージ３８は、ｍａｓｋ＿ａｌｌ制御信号によって制御される４個のＯＲゲートを備え、第１のステージ３６からのデータをさらに復元する。ｍａｓｋ＿ａｌｌが論理０の場合、個々のＯＲゲートの出力は、制御ロジック３４の第１のステージ３６からのそれぞれの関連出力に等しく、すなわち、それをそのまま反映する。ｍａｓｋ＿ａｌｌが論理１の場合、すべてのＯＲゲートの出力は、強制的に論理１にされ、したがって、制御ロジックの第２のステージ３８の出力からのｎビットマスクは、すべて論理１から成るｎビットマスクによって置き換えられる。
【００３７】
制御ロジック３４の第３のステージ４０は、スキャンチェーンＳＣ１〜ＳＣ４からの出力信号と、第２のステージ３８の出力信号とを受信する動作が可能なように構成される。ＯＲゲートから成るこの第３のステージ４０は、スキャンチェーンＳＣ１〜ＳＣ４からのＩＣ試験応答を、制御ロジックの第２のステージ３８からのｎビットマスクで修正する。
【００３８】
制御ロジック３４の第３のステージ４０は、実際のマスキングを実施するので、必ず必要とされる。
【００３９】
この第３のステージ４０は、第２のステージ３８からのｎビットマスクを、ｎ個のスキャンチェーンＳＣ１〜ＳＣｎを介する試験中の回路１４からの対応するｎ個の出力と一緒に受信するように動作可能なマスク回路として動作する。第２のステージ３８からの出力信号が論理１であり、それが第３のステージ４０のＯＲゲートに与えられる第１の例では、その場合は、対応するスキャンチェーンからの対応する試験応答は、論理１によって置き換えられ、試験応答はマスクされたと言われる。第２のステージ３８からの出力信号が論理０である第２の例では、その場合は、対応する試験応答は、ＯＲゲートをそのまま通過し、したがって、マスクはされない。したがって、マスク内の論理１の値は、対応するスキャンチェーンの試験応答がマスクされることを示し、反対に、マスク内の論理０は、対応するスキャンチェーンの試験応答がマスクされないことを示す。図２の第３のステージ４０の代替実施形態（図示されず）は、ＯＲゲートをＡＮＤゲートで置き換えたものである。そのような第３のステージ４０のＡＮＤゲート実装では、マスク内の論理０の値は、対応するスキャンチェーンの試験応答がマスクされることを示し、反対に、マスク内の論理１の値は、試験応答がマスクされないことを示す。その場合、第３のステージは、ＯＲゲートの代わりにＡＮＤゲートを含むことになる。したがって、例示された制御回路は、例示的な実施形態であるに過ぎず、異なるタイプの論理ゲートを使用する代替実装も可能であることは明らかであろう。
【００４０】
制御ロジック３４の第１のステージ３６および／または第２のステージ３８は、移相器３０がそうであるように、関連する重み付けロジックを随意的に含む。
【００４１】
制御ロジック３４は適応されることもできる。例えば、ｍａｓｋ＿ａｌｌ制御信号は、同様の２つの独立した制御信号に分割されるように、改良されることができる。その場合、これらの２つのｍａｓｋ＿ａｌｌ制御信号は、その各々がスキャンチェーンＳＣ１〜ＳＣｎからのデータ出力に関するマスキングの一部を制御するように、使用されることができる。同様に、ｍａｓｋ＿ｅｎａｂｌｅ制御信号も、例えば、２つの独立した制御信号に分割されるように、改良されることができ、その場合、２つのｍａｓｋ＿ｅｎａｂｌｅ制御信号は、その各々がスキャンチェーンＳＣ１〜ＳＣｎからのデータ出力に関するマスキング有効／無効（ｅｎａｂｌｅ／ｄｉｓａｂｌｅ  ｍａｓｋｉｎｇ）の一部を制御するように、使用されることができる。
【００４２】
以下の例において、ＸＭＬ１８の動作が今からより詳細に説明される。
【００４３】
図２の例は、４個のスキャンチェーンＳＣ１〜ＳＣ４を備える試験中の回路１４のためのＸＭＬ１８を示す。ＸＭＬ１８は、４ビットＬＦＳＲ２６と、移相器３０と、３ステージ制御ロジックとを備える。
【００４４】
記号ｘ１、ｘ２、ｘ３、およびｘ４は、クロックサイクル１におけるＬＦＳＲ２６の初期値、すなわち論理状態を表す。その後のクロックサイクルにおけるＬＦＳＲ２６の状態は、ＬＦＳＲ２６の論理状態とＡＴＥからの入力信号ｍの状態とを加えることによって表現されることができる。これらの表現は、記号シミュレーションによって容易に導出されることができる。次の５つのクロックサイクルにおけるＬＦＳＲ２６の論理状態は、以下のようになり、ここで、ＬＦＳＲｉはクロックサイクルｉにおけるＬＦＳＲ２６状態を示し、ｍｉはクロックサイクルｉにおける信号ｍの値を示す。
【００４５】
【数１】
2007506962.tif 000003
【００４６】
同様に、移相器３０からの出力信号も、記号ｘ１、ｘ２、ｘ３、ｘ４およびｍｉによって表現されることができる。
【００４７】
【数２】
2007506962.tif 000004
【００４８】
移相器３０からの出力はマスクとして機能する。このマスクは、表１で説明されるように、入力ｍａｓｋ＿ｅｎａｂｌｅおよびｍａｓｋ＿ａｌｌを使用して、制御ロジックにおいてさらに更新される。
【００４９】
表１：制御信号
【表１】
2007506962.tif 000005
【００５０】
上記の６つのクロックサイクルにおいて、スキャンチェーンＳＣ１〜ＳＣ４の出力で観測されるＩＣ試験応答が以下のようであると仮定する。
【００５１】
【数３】
2007506962.tif 000006
【００５２】
Ｒ４は、クロックサイクル４において、スキャンチェーン１  ＳＣ１の出力が「Ｕ」であり、スキャンチェーン２および３  ＳＣ２〜ＳＣ３の出力が「Ｈ」であり、スキャンチェーン４  ＳＣ４の出力が「Ｌ」であることを示している。
【００５３】
下線付きの試験応答は、マスクされるべき試験応答である。これは、Ｒ１、Ｒ３、およびＲ４における未知の応答「Ｕ」と、Ｒ６におけるスキャンチェーン３  ＳＣ３の低信頼の応答「Ｈ」の場合である。
【００５４】
太字の応答は、欠陥の影響がＡＴＥによって観測され得る「必須応答」を示す。応答Ｒ１〜Ｒ６は、ある試験パターンが適用された場合の無欠陥試験中の回路１４の応答である。試験パターンは、ＣＵＴ１４内の一定の欠陥の存在を検出することができる。そのような欠陥がＣＵＴ１４内に存在するとき、その場合、１つまたは複数の必須応答が異なる値を示し、したがって、欠陥が検出される。必須応答は、ＸＭＬ１８によってマスクされるべきではない。
【００５５】
下線付きでも太字でもない残りの応答は、論理ロー「Ｌ」または論理ハイ「Ｈ」のいずれかの応答である。これらは非必須応答であり、試験パターンによって対象とされるそれらの欠陥について、欠陥の影響はこれらの応答上では観測されない。しかし、現在の試験パターンによって対象とされないその他の欠陥が、これらの応答上で観測され得る欠陥の影響として生じる場合があり得る。しかし、これらの欠陥は、その他のパターンによって検出される。したがって、非必須応答は、対象欠陥範囲（ｆａｕｌｔ  ｃｏｖｅｒａｇｅ）に影響を及ぼさずに、マスクされることができる。それにも関わらず、欠陥の複数検出はより良い対象欠陥範囲（ｄｅｆｅｃｔ  ｃｏｖｅｒａｇｅ）につながるので、これらの応答をマスクしないことが好ましい。
【００５６】
Ｒ１におけるすべての応答は、マスクされるべきである。これは、クロックサイクル１において、制御信号ｍａｓｋ＿ａｌｌを論理１に設定することによって達成される。クロックサイクル２から６では、ｍａｓｋ＿ａｌｌは論理０に設定される。
【００５７】
Ｒ２およびＲ５では、応答はマスクされる必要がなく、したがって、クロックサイクル２および５では、制御信号ｍａｓｋ＿ｅｎａｂｌｅは論理０に設定される。残りのクロックサイクルでは、マスキングが必要とされ、ｍａｓｋ＿ｅｎａｂｌｅは論理１に設定される。
【００５８】
残りの試験応答Ｒ３、Ｒ４、およびＲ６では、以下のマスキングが必要とされ、
−Ｒ３，２、すなわちベクトルＲ３のスキャンチェーン２の出力は未知「Ｕ」であり、マスクされるべきであり、
−Ｒ３，３、Ｒ４，３、およびＲ６，２上では、欠陥の影響が観測されることができ、したがって、これらの必須試験応答はマスクされるべきではなく、
−Ｒ４，１も未知「Ｕ」であり、マスクされるべきであり、
−Ｒ６，３は低信頼の応答であり、マスクされるべきである。
【００５９】
これらの条件は、移相器３０の出力によって与えられるマスク用の記号表現と組み合わせて使用されることができる。その結果が以下の連立線形方程式である。
【００６０】
【数４】
2007506962.tif 000007
【００６１】
そのような連立線形方程式は、例えばガウスの消去法を使用することによって、容易に解かれることができる。可能解は、ｘ１＝１、ｘ２＝０、ｘ３＝１、ｘ４＝０、ｍ１＝１、ｍ２＝１、ｍ３＝１、ｍ４＝０、およびｍ５＝０である。
【００６２】
この解を移相器３０の出力における記号式に代入し、制御信号ｍａｓｋ＿ｅｎａｂｌｅおよびｍａｓｋ＿ａｌｌの値を考慮すると、以下のマスクが得られる。
【００６３】
【数５】
2007506962.tif 000008
【００６４】
圧縮器２２の入力におけるマスキング後の試験応答は、今では以下のようになる（記号「ｍ」はマスクされる試験応答を表す）。
【００６５】
【数６】
2007506962.tif 000009
【００６６】
以下のこと、すなわち、
−マスクされるべきすべての応答、すなわち下線付きの応答は、確かにマスクされ、
−マスクされるべきではないすべての必須応答、すなわち太字の応答は、確かにマスクされず、
−マスクされてもよいいくつかの非必須応答はマスクされ、これらは下線付きではない記号「ｍ」によって示されていることが理解され得る。
【００６７】
上の例は、ＸＭＬ１８の制御信号のための値を計算する１つの方法を説明する。このプロセスは、自動試験パターン生成（ＡＴＰＧ：Ａｕｔｏｍａｔｅｄ  Ｔｅｓｔ  Ｐａｔｔｅｒｎ  Ｇｅｎｅｒａｔｉｏｎ）ツールに容易に含まれることができる。
【００６８】
図３は、ＸＭＬ１８の制御信号を計算するためのＡＴＰＧフローの一例を示す。
【００６９】
ＡＴＰＧツールは、一定の欠陥、すなわち対象欠陥を検出する試験パターンを生成する。試験パターンは、試験刺激と、対応する試験応答とを備える。ＡＴＰＧツールは次に、試験応答を分析して、マスクされるべきトライステート、未知、および低信頼のすべての応答を識別し、同じようにマスクされるべきではない必須応答を識別する。必須応答は、対象欠陥を検出するために観測されるべきそれらの応答である。
【００７０】
ｍａｓｋ＿ａｌｌおよびｍａｓｋ＿ｅｎａｂｌｅ信号の値は、すべての応答がマスクされるべきか、またはマスクされるべきではない応答ベクトルを識別することによって決定される。
【００７１】
ＸＭＬ１８内のＬＦＳＲ２６への制御入力を決定するため、次にＸＭＬ１８の操作の記号シミュレーションから導出される連立線形方程式が解かれることができる。連立式は、マスクされるべきすべてのＸ応答と、マスクされるべきではない少なくとも１つの必須応答のための方程式を含む。連立方程式が解かれ得るならば、その場合は、追加の対象欠陥の欠陥影響を示す追加の必須応答が、連立方程式に追加されることができ、その連立方程式が再び解かれる。これは、すべての必須応答が連立方程式に追加されるまで、または連立方程式がもはや解けなくなるまで繰り返される。必須応答を連立方程式に追加する順序は、各必須応答によって検出され得る欠陥の数によって決定されることができる。例えば、最も多くの欠陥を検出する必須応答が、最初に連立方程式に追加される。
【００７２】
最後のステップは、どの欠陥が実際に検出されるかを決定するために、マスキング後の試験応答を使用して、欠陥シミュレーションを実行することである。連立方程式が解かれ得ない場合、いくつかの必須応答はマスクされるかもしれないので、このステップが必要とされる。検出されない対象欠陥は、その後のパターンを生成するときに、ＡＴＰＧによって再び対象とされる。
【００７３】
図３は、試験パターン毎にＸＭＬ１８の制御信号がどのように計算され得るかを示す。代替実施は、試験パターンの一部分だけまたは複数の試験パターンの連立線形方程式を解くことによって制御信号を計算することである。
【００７４】
方程式の数が少ないならば、連立方程式が解かれ得る可能性はより大きくなる。したがって、マスクされるべき試験応答およびマスクされるべきではない試験応答の数は、好ましくはできるだけ少なく保たれるべきである。この理由で、ｍａｓｋ＿ａｌｌおよびｍａｓｋ＿ｅｎａｂｌｅ制御信号をもつことは有益であるが、それは、これらが応答ベクトル全体をマスクすること、またはマスクしないことを可能にし、対応する方程式は解かれる必要がないためである。同様に、対象欠陥の影響が観測され得ない非必須応答を考慮しないことも有益である。これらの非必須応答は、すべての必須応答が追加された後、連立方程式がまだ解かれ得るならば、後で連立方程式に追加されることができる。
【００７５】
本発明で説明される提案されたＸＭＬ１８は、Ｘ応答のマスキングのための効果的で柔軟性のある安価な解決策を提供する。ＸＭＬ１８は、ＡＴＰＧの間に生成される、ＡＴＥに保存しなければならないマスキングデータの量を少なくすることを可能にし、さらにマスクデータをＡＴＥからＩＣ１０に転送するための帯域幅要件を小さくすることを可能にする。
【００７６】
ＸＭＬ１８は、ＡＴＥから制御される多数の異なるマスクを生成することができる。マスク、およびＸＭＬ１８を制御する対応する制御信号は、ＡＴＰＧの間に計算されることができる。ＸＭＬ１８は、各クロックサイクルにおいてＬＦＳＲ２６の状態がＡＴＥから部分的に更新される、ＬＦＳＲ２６の動的再シーディング（ｄｙｎａｍｉｃ  ＬＦＳＲ  ２６  ｒｅｓｅｅｄｉｎｇ）に基づいている。これは、ＸＭＬ１８の制御データを圧縮する方法を提供する。ｎ個のスキャンチェーンを備える試験中の回路１４の場合、ＬＦＳＲ  ２６を再シーディングするため、クロックサイクル毎にｑ制御ビットだけが必要とされ、ここではｑ＜ｎである。ＬＦＳＲ２６、および重み付けロジックを伴うオプションの移相器３０が、ｑ入力をｎビットマスクに拡張する。追加の制御ロジックは、クロックサイクル毎に、すべてのスキャンチェーンを容易にマスクすること、またはマスキングを防止することを可能にする。
【００７７】
ＸＭＬ１８のハードウェアは単純であり、ＩＣ１０上に実装する場合、非常に僅かなシリコン面積しか必要としない。ＸＭＬ１８は、一部はオンチップに、一部はオフチップに実装されることもできる。ＬＦＳＲ２６の状態を制御する制御信号の数、ＬＦＳＲ２６のサイズ、移相器および重み付けロジック３０のサイズ、ならびにｍａｓｋ＿ａｌｌおよびｍａｓｋ＿ｅｎａｂｌｅに関係する制御信号の数は、予測されるＸ応答の特徴に応じて、設計毎に異なって設定されることができる。
【００７８】
上で述べられた実施形態は、本発明を限定するものではなく、むしろ本発明を例示するものであり、当業者であれば、添付の特許請求の範囲によって確定される本発明の範囲から逸脱することなく、多くの代替実施形態を設計することができることに留意されたい。請求項において、括弧で括られた参照符号は、その請求項を限定すると解釈されるべきではない。「備える（ｃｏｍｐｒｉｓｉｎｇ／ｃｏｍｐｒｉｓｅｓ）」、およびそれに類する語は、任意の請求項または明細書全体において列挙された要素またはステップ以外の要素またはステップの存在を排除しない。要素の単数形での指示は、そのような要素の複数形での指示を排除せず、その逆も同様である。本発明は、複数の別個の要素を備えるハードウェアによって、また適切にプログラムされたコンピュータによって実施されることができる。複数の手段を列挙する請求項において、複数のこれらの手段は、同一のハードウェア品目によって実施されることができる。いくつかの手段が互いに異なる従属請求項で説明されるという単なる事実は、これらの手段の組み合わせが有利に使用されることができないことを示すものではない。
【図面の簡単な説明】
【００７９】
【図１】本発明によるＸマスキングロジック（ＸＭＬ）の一例を示した図である。
【図２】本発明によるＸマスキングロジック（ＸＭＬ）のより詳細な一例を示した図である。
【図３】ＸＭＬ制御信号を計算するためのＡＴＰＧフローの一例を示した図である。
【図１】
2007506962.tif 000010
【図２】
2007506962.tif 000011
【図３】
2007506962.tif 000012
【国際調査報告】
2007506962.tif 000013
2007506962.tif 000014
2007506962.tif 000015