図面 (/)

技術 完全に不定値許容性であって非常に高スキャン圧縮なスキャンテストシステム及び技術

出願人 シノプシイスインコーポレイテッド
発明者 ホール、ペーターワイキュカスキー、ジョン・エーヌブー、フレドリック・ジェー
出願日 2012年8月15日 (8年4ヶ月経過) 出願番号 2012-180207
公開日 2012年11月22日 (8年1ヶ月経過) 公開番号 2012-230131
状態 特許登録済
技術分野 電子回路の試験 デジタル計算機の試験診断
主要キーワード 状態素子 メリット値 移相機 制御コスト 製品ファミリ 最大ウィンドウ 分割内 線形従属
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2012年11月22日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (17)

課題

完全に不定許容性の非常に高スキャン圧縮スキャンテストシステム及び技術を提供する。

解決手段

スキャンテスト及びスキャン圧縮は、コストの低減及び高い出荷品品質を実現するうえで重要である。従来以上に複雑な設計における新しいタイプの故障には、高い圧縮が必要とされる。しかしながら、不定値(X)の密度が増加し効果的な圧縮を妨げる。スキャン圧縮の方法では、任意の密度の不定値について非常に高い圧縮及び完全な検出率が達成される。記載された技術は、テスト容易化設計(DFT)及び自動テストパターン生成(ATPG)のフローに完全に組込むことができる。産業的な設計にこれらの技術を用いた結果、他の方法と比べて一定かつ予測可能な有利な点があることが分かった。

概要

背景

集積回路(IC)における論理設計がより大きく複雑になり、これらのICが故障なく動作することを保証するためのより複雑なテストが必要となっている。このテストは、集積回路(IC)の設計、製造、及びサービスコストのうち大きな部分を占める。単純なモデルでは、ICのテストは、回路の入力部に複数のテストパターンを入力し回路の出力をモニタして故障の発生を検出することを含みうる。故障検出率は、潜在的な故障の母集団において各故障を検出する際のテストパターンの効率を示す。このため、テストパターンのセットが実質的にあらゆる潜在的な故障を検出することが可能ならば、100%に近い故障検出率が達成される。

容易に故障検出率を高めテストコストを最小化するために、DFT(テスト容易化設計)を用いうる。あるDFT技術では、論理設計の構造が用いられうる。具体的には、ICで行われる論理設計は、フリップフロップのようなシーケンシャル記憶素子等の複数の状態素子(state element)を含む。これらの状態素子を、計算された長さのスキャンチェインへと接続することができ、この長さは設計に応じて変わる。一実施形態では、設計上の全ての状態素子をスキャン可能である。すなわち、各状態素子がスキャンチェインの中にある。スキャンチェイン内の状態素子は、通常スキャンセルと呼ばれる。DFTにおいては、各スキャンチェインは、スキャン入力ピン及びスキャン出力ピンを含み、これらは、テストモード中に制御及び観測ノードとして働く。

スキャンチェインは、スキャンセルを介して所定の論理信号クロック動作させて(clocking in)ロードされる。このため、最も長いスキャンチェインが500のスキャンセルを含むなら、ロードプロセスを完了するために少なくとも500クロックサイクルが用いられる。実際の実施形態では、ソフトウェアが異なるスキャンチェイン長を補正してその結果、各テストパターンからの出力は、それに従って認識、解析されることに留意すべきである。

スキャンチェインのためのテストパターンを、外部テスト装置を用いて発生することができる。このような装置を用いて、Nのインプット及びスキャンセルを備えた設計に対して2Nの入力パターンを加えることにより全数入力テストを行うことができる。しかしながら、このテストのアプローチは、インプットの数が増加するにつれて商業的には非実際的となる。

この問題を解決するために、決定論的自動テストパターン生成(ATPG)を用いることができ小さな数のパターンを生成して100%に近い故障検出率を達成する。具体的には、決定論的ATPGにおいて、各テストパターンは可能な限り多い数の故障をテストするように設計される。しかしながら、テストパターンの数を減らしても、決定論的ATPGには、スキャンチェインに直接入力される多数のパターンのために、そして、スキャンチェインから期待されるアウトプット値のために、テスト印加装置(テスタ)には依然として大きな記憶領域が必要とされる。さらに、このテスト方法は、オフチップアクセスタイムにより非効率性が伴う。

代わりに、そして現在の複雑なICでは頻繁に、ICが自己高速にテストすることが可能な構造を設計に加えることができる。これらの自己組込みテスト(BIST)構造は、様々なパターン生成回路を含みうる。最も典型的なものは、疑似ランダムパターン発生回路PRPG)である。PRPGにより発生されたパターンは、テストされる設計中のスキャンチェインを介して伝達され、故障が検出されたか決定するために出力が解析される。スキャンテスト及びPRPGを用いた技術の例は、「不定値のスキャンチェイン出力に許容性のある決定論的BISTアーキテクチャ」と題され、2007年6月26日に刊行された特許文献1に記載されている。この文献は、参照することにより本明細書に組込まれる。

ICスキャンテスト中に高い故障検出率を達成するには、特に小型化するプロセス技術と新しいIC材料とにあって、異なる故障モデル縮退モデル、遷移遅延モデル、ショーツオープンズモデル(shorts/opens model))を用いることができる。残念なことに、タイミング依存の、そしてシーケンス依存の故障モデルは新しい技術でますます重要となっているが、この種のテストパターンは、テスタの時間及びデータが2倍から5倍必要とされうる。テストデータ量及びテスト印加時間の現在の増加は、次世代のツールでは少なくとも10倍になって続くと予想される。

したがって、テストコストを抑える方法としてスキャンのみのスキャンテストは不十分になった。現在のATPGで生成された高度にコンパクト化されたベクタセットでさえも、テストコストを削減するためにチップに搭載された圧縮及び展開が必要とされる。

圧縮スキャンは、テストパターン量、テスト印加時間、テスタのピン数の要件を低減することによりテストコストを下げる。スキャンロード圧縮技術は、「ケアビット(すなわち、所定のスキャンセルに記憶され目標とした故障を検出することができる値)が「ドントケア」ビット(すなわち、テストされた設計中の故障を示していないビット)に比べて少ないことを利用する。スキャンアンロード圧縮技術は、エラー値は多かれ少なかれランダムに現れ、同時にいくつかのスキャンチェインにしか現れないという事実を用いている。具体的には、テストされた設計は、場合によってはケアビット及びドントケアビットに加えて不定ビットを出力する。その名が示唆しているように、不定ビット(本明細書ではXと呼ぶ)は、未知の値を持つ(すなわち、ATPGプロセスの間に用いられるシミュレーションによって正確に予測できない値)。結果として、Xビットによりスキャン出力分析が悪影響を受ける。さらには、そのようなXビットにより、マスキングを行わなければならない(masking observation)ことによりアンロード圧縮が制約を受けうる。また、X値を防止し、それらがスキャン出力へ影響を及ぼすのを避けるために追加的なケアビットを必要とすることによりロード圧縮も制約されうる。

残念なことに、複雑な故障モデルと同様に、挑戦的な設計及び技術により、X値を持つスキャンセルの数は増加しうる。静的Xとは、一般に作動パラメータに対して反応しないゼロ遅延シミュレーションで見られる、未知の値をいう。静的Xの例には、モデル化されていないブロック(例えば、アナログ又はメモリのブロック)及びバスコンテンションが含まれる。静的Xは設計時に知られているが、大半は単純な解決策がない。加えて、「動的」Xが、タイミング、作動パラメータ(例えば、電圧及び温度)、又は製造時の欠陥により生じうる。

したがって、複数の挑戦的な目標にも同時に応えることができるスキャン圧縮方法の必要が高まる。

概要

完全に不定値許容性の非常に高スキャン圧縮なスキャンテストシステム及び技術を提供する。スキャンテスト及びスキャン圧縮は、コストの低減及び高い出荷品品質を実現するうえで重要である。従来以上に複雑な設計における新しいタイプの故障には、高い圧縮が必要とされる。しかしながら、不定値(X)の密度が増加し効果的な圧縮を妨げる。スキャン圧縮の方法では、任意の密度の不定値について非常に高い圧縮及び完全な検出率が達成される。記載された技術は、テスト容易化設計(DFT)及び自動テストパターン生成(ATPG)のフローに完全に組込むことができる。産業的な設計にこれらの技術を用いた結果、他の方法と比べて一定かつ予測可能な有利な点があることが分かった。A

目的

米国特許第7,237,162号明細書






完全に不定値許容性であって非常に高いスキャン圧縮を行うスキャンテストシステム及び技術を提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

集積回路(IC)に実装された、複数のスキャンチェインを有する設計をテストするためのスキャンテストシステムであって、前記設計の故障を特定するため、前記複数のスキャンチェインに印加されるパターンを生成する第1のシード受取る、第1の疑似ランダムパターン生成回路PRPG)処理チェインと、前記スキャンチェインの観測のレベルを決定する不定許容性(XTOL)制御ビットを生成する、第2のPRPG処理チェインと、前記複数のスキャンチェインからのスキャン出力及び前記XTOL制御ビットを供給され、シフトごとの不定値制御を行い、前記設計を分析するためのテスト出力を生成するためのアンロードブロックとを具備するスキャンテストシステム。

請求項2

前記第1のPRPG処理チェインは、前記第1のシードを受取るためのCAREPRPGと、前記CAREPRPGの出力を受取り、前記複数のスキャンチェインに出力を行うためのPRPG移相回路とを有する請求項1に記載のスキャンテストシステム。

請求項3

前記CAREPRPGから入力を受け、前記PRPG移相回路に出力を行うCAREシャドウレジスタをさらに具備する請求項2に記載のスキャンテストシステム。

請求項4

前記CAREPRPGは、一定値が前記複数のスキャンチェインにシフトされシフト電力が低減されるように前記CAREシャドウレジスタをホールドモードにする電源制御信号を供給する請求項3に記載のスキャンテストシステム。

請求項5

前記第2のPRPG処理チェインは、前記第2のシードを受取るためのXTOLPRPGと、前記XTOLPRPGの出力を受取るためのXTOL移相回路と、前記XTOL移相回路の出力を受取り、XTOL制御ビットを供給するためのXTOLシャドウレジスタと有する請求項4に記載のスキャンテストシステム。

請求項6

前記XTOLPRPGは、前記XTOLシャドウレジスタをホールドモードにするホールド信号を生成するようにされた請求項5に記載のスキャンテストシステム。

請求項7

前記CAREPRPGと前記XTOLPRPGとは、任意のシフトサイクルで必要な場合にリシードするようにされた請求項6に記載のスキャンテストシステム。

請求項8

テスタからの入力を受取ると共に前記第1のPRPG処理チェイン及び前記第2のPRPG処理チェインとのいずれか一方に出力を行うようにされたアドレサブルPRPGシャドウをさらに具備する請求項5に記載のスキャンテストシステム。

請求項9

前記CAREPRPGと前記XTOLPRPGとは、任意のシフトサイクルで必要な場合にリシードするようにされた請求項8に記載のスキャンテストシステム。

請求項10

前記アンロードブロックは、前記スキャン出力を受取るためのXTOLセレクタと、前記XTOL制御ビットを用いて前記XTOLセレクタを制御するためのXデコーダと、前記XTOLセレクタの出力を受取るための圧縮回路と、前記圧縮回路の出力を受取る共に前記テスト出力を生成するための多入力シフトレジスタMISR)とを有する請求項9に記載のスキャンテストシステム。

請求項11

前記XTOLセレクタと前記Xデコーダとは、完全観測モード、無観測モード、シングルチェインモード、及び複数観測モードのうちの1つを行うようにされた請求項10に記載のスキャンテストシステム。

請求項12

前記Xデコーダは、前記複数のスキャンチェインの各々に接続された出力を有するデコーディングブロックを有する請求項11に記載のスキャンテストシステム。

請求項13

特定のスキャンチェインのための前記デコーディングブロックは、この特定のスキャンチェインが含まれる複数のグループからなるセットを受取る請求項12に記載のスキャンテストシステム。

請求項14

前記アンロードブロックは、前記PRPGシャドウレジスタにより生成されたXTOLenableビットによりさらに制御される請求項6に記載のスキャンテストシステム。

請求項15

集積回路(IC)に実装された、複数のスキャンチェインを有する設計をテストするためのスキャンテストシステムであって、シードを受取るための疑似ランダムパターン生成回路(PRPG)シャドウレジスタと、前記PRPGシャドウレジスタからのシードを受取るためのCAREPRPGと、前記CAREPRPGの出力を受取るためのCAREシャドウレジスタと、前記CAREシャドウレジスタの出力を受取り、チャネル間の線形従属性を最小限にし、前記複数のスキャンチェインのためのスキャンビットを生成するためのCARE移相回路と、前記PRPGシャドウレジスタから他のシードを受取るための不定値許容性(XTOL)PRPGと、前記XTOLPRPGの出力を受取り、チャネル間の線形従属性を最小限にするためのXTOL移相回路と、前記XTOL移相回路の出力を受取るためのXTOLシャドウレジスタと、前記複数のスキャンチェインと前記XTOLシャドウレジスタとからのスキャン出力を受取り、シフトごとの不定値制御を行い、前記設計を分析するためのテスト出力を生成するためのアンロードブロックとを具備するスキャンテストシステム。

請求項16

前記XTOLPRPGは、前記XTOLシャドウレジスタをホールドモードにするホールド信号を生成するようにされた請求項15に記載のスキャンテストシステム。

請求項17

前記アンロードブロックは、前記スキャン出力を受取るためのXTOLセレクタと、前記XTOLシャドウのXTOL制御出力を用いて前記XTOLセレクタを制御するためのXデコーダと、前記XTOLセレクタの出力を受取るための圧縮回路と、前記圧縮回路からの出力を受取り、前記テスト出力を生成する多入力シフトレジスタ(MISR)とを有する請求項15に記載のスキャンテストシステム。

請求項18

前記XTOLセレクタと前記Xデコーダとは、完全観測モード、無観測モード、シングルチェインモード、及び複数観測モードのうちいずれか1を行うように構成可能である請求項17に記載のスキャンテストシステム。

請求項19

前記Xデコーダは、前記複数のスキャンチェインの各々に接続された出力を有するデコーディングブロックを有する請求項17に記載のスキャンテストシステム。

請求項20

特定のスキャンチェインのための前記Xデコーダは、この特定のスキャンチェインが含まれる複数のグループからなるセットを受取る請求項19に記載のスキャンテストシステム。

請求項21

前記アンロードブロックは、前記PRPGシャドウレジスタにより生成されたXTOLenableビットによりさらに制御される請求項18に記載のスキャンテストシステム。

請求項22

全てのケアビットが単一のシードにマップ可能である、シフトの最大ウィンドウを決定することを具備するケアビットをCARE疑似ランダムパターン生成回路(PRPG)にマップするための方法。

請求項23

前記最大ウィンドウを決定することは、シフトサイクルによりそして各シフトサイクルについて前記ケアビットをソートすることと、ウィンドウ内のケアビットの総数があらかじめ算出された制限を超えないように最大ウィンドウを算出することと、前記ウィンドウ内の全てのケアビットが単一のシードにマップ可能である場合に、前記単一のシードを前記CAREPRPGにロードすることとを有する請求項22に記載の方法。

請求項24

全てのケアビットが前記単一のシードにマップ可能でない場合に、前記ウィンドウを直線的に減少させることを有する請求項23に記載の方法。

請求項25

全ての不定値許容性(XTOL)制御ビットが単一のシードにマップ可能な、シフトの最大ウィンドウを決定することと、前記最大ウィンドウについて最適な開始を決定することとを具備する、不定値許容性(XTOL)制御ビットをXTOL疑似ランダムパターン生成回路(PRPG)にマップするための方法。

請求項26

完全観測モードについてXTOLenableビットをオフにする第1の選択肢又は前記XTOLenableビットをオンのままにする第2の選択肢のいずれがよいかを決定することと、前記より良い選択肢を選択することとをさらに具備する請求項25に記載の方法。

請求項27

観測モードに関連するモードメリット初期化することと、各シフトについて、不定値(X)を残す観測モードをなくすことと、各シフトについて、スキャンテストの主な目標を検出できない観測モードをなくすことと、観測された2次的な目標の数に基づいて2次故障のモードメリットを増加させることと、各シフトについて、モードメリットの合計に基づいてシフトについての最善の観測モード及び2番目に最善の観測モードを決定することと、結果としての観測モードをXTOLシードにマップすることとを具備するスキャンテストのための観測モードを選択する方法。

請求項28

前記観測モードは、完全観測、無観測、シングル観測、及び複数観測を含む請求項27に記載の方法。

請求項29

前記観測モードは、各観測モードの補正を含む請求項28に記載の方法。

技術分野

0001

(関連出願)
本出願は、2008年10月21日に出願され「完全に不定許容性であって非常に高いスキャン圧縮」と題された米国特許仮出願61/107,239号の優先権を主張する。
本発明は、集積回路スキャンテストに関する。特に、このスキャンテストの際に使用可能な圧縮技術及び構造に関する。

背景技術

0002

集積回路(IC)における論理設計がより大きく複雑になり、これらのICが故障なく動作することを保証するためのより複雑なテストが必要となっている。このテストは、集積回路(IC)の設計、製造、及びサービスコストのうち大きな部分を占める。単純なモデルでは、ICのテストは、回路の入力部に複数のテストパターンを入力し回路の出力をモニタして故障の発生を検出することを含みうる。故障検出率は、潜在的な故障の母集団において各故障を検出する際のテストパターンの効率を示す。このため、テストパターンのセットが実質的にあらゆる潜在的な故障を検出することが可能ならば、100%に近い故障検出率が達成される。

0003

容易に故障検出率を高めテストコストを最小化するために、DFT(テスト容易化設計)を用いうる。あるDFT技術では、論理設計の構造が用いられうる。具体的には、ICで行われる論理設計は、フリップフロップのようなシーケンシャル記憶素子等の複数の状態素子(state element)を含む。これらの状態素子を、計算された長さのスキャンチェインへと接続することができ、この長さは設計に応じて変わる。一実施形態では、設計上の全ての状態素子をスキャン可能である。すなわち、各状態素子がスキャンチェインの中にある。スキャンチェイン内の状態素子は、通常スキャンセルと呼ばれる。DFTにおいては、各スキャンチェインは、スキャン入力ピン及びスキャン出力ピンを含み、これらは、テストモード中に制御及び観測ノードとして働く。

0004

スキャンチェインは、スキャンセルを介して所定の論理信号クロック動作させて(clocking in)ロードされる。このため、最も長いスキャンチェインが500のスキャンセルを含むなら、ロードプロセスを完了するために少なくとも500クロックサイクルが用いられる。実際の実施形態では、ソフトウェアが異なるスキャンチェイン長を補正してその結果、各テストパターンからの出力は、それに従って認識、解析されることに留意すべきである。

0005

スキャンチェインのためのテストパターンを、外部テスト装置を用いて発生することができる。このような装置を用いて、Nのインプット及びスキャンセルを備えた設計に対して2Nの入力パターンを加えることにより全数入力テストを行うことができる。しかしながら、このテストのアプローチは、インプットの数が増加するにつれて商業的には非実際的となる。

0006

この問題を解決するために、決定論的自動テストパターン生成(ATPG)を用いることができ小さな数のパターンを生成して100%に近い故障検出率を達成する。具体的には、決定論的ATPGにおいて、各テストパターンは可能な限り多い数の故障をテストするように設計される。しかしながら、テストパターンの数を減らしても、決定論的ATPGには、スキャンチェインに直接入力される多数のパターンのために、そして、スキャンチェインから期待されるアウトプット値のために、テスト印加装置(テスタ)には依然として大きな記憶領域が必要とされる。さらに、このテスト方法は、オフチップアクセスタイムにより非効率性が伴う。

0007

代わりに、そして現在の複雑なICでは頻繁に、ICが自己高速にテストすることが可能な構造を設計に加えることができる。これらの自己組込みテスト(BIST)構造は、様々なパターン生成回路を含みうる。最も典型的なものは、疑似ランダムパターン発生回路PRPG)である。PRPGにより発生されたパターンは、テストされる設計中のスキャンチェインを介して伝達され、故障が検出されたか決定するために出力が解析される。スキャンテスト及びPRPGを用いた技術の例は、「不定値のスキャンチェイン出力に許容性のある決定論的BISTアーキテクチャ」と題され、2007年6月26日に刊行された特許文献1に記載されている。この文献は、参照することにより本明細書に組込まれる。

0008

ICスキャンテスト中に高い故障検出率を達成するには、特に小型化するプロセス技術と新しいIC材料とにあって、異なる故障モデル縮退モデル、遷移遅延モデル、ショーツオープンズモデル(shorts/opens model))を用いることができる。残念なことに、タイミング依存の、そしてシーケンス依存の故障モデルは新しい技術でますます重要となっているが、この種のテストパターンは、テスタの時間及びデータが2倍から5倍必要とされうる。テストデータ量及びテスト印加時間の現在の増加は、次世代のツールでは少なくとも10倍になって続くと予想される。

0009

したがって、テストコストを抑える方法としてスキャンのみのスキャンテストは不十分になった。現在のATPGで生成された高度にコンパクト化されたベクタセットでさえも、テストコストを削減するためにチップに搭載された圧縮及び展開が必要とされる。

0010

圧縮スキャンは、テストパターン量、テスト印加時間、テスタのピン数の要件を低減することによりテストコストを下げる。スキャンロード圧縮技術は、「ケアビット(すなわち、所定のスキャンセルに記憶され目標とした故障を検出することができる値)が「ドントケア」ビット(すなわち、テストされた設計中の故障を示していないビット)に比べて少ないことを利用する。スキャンアンロード圧縮技術は、エラー値は多かれ少なかれランダムに現れ、同時にいくつかのスキャンチェインにしか現れないという事実を用いている。具体的には、テストされた設計は、場合によってはケアビット及びドントケアビットに加えて不定ビットを出力する。その名が示唆しているように、不定ビット(本明細書ではXと呼ぶ)は、未知の値を持つ(すなわち、ATPGプロセスの間に用いられるシミュレーションによって正確に予測できない値)。結果として、Xビットによりスキャン出力分析が悪影響を受ける。さらには、そのようなXビットにより、マスキングを行わなければならない(masking observation)ことによりアンロード圧縮が制約を受けうる。また、X値を防止し、それらがスキャン出力へ影響を及ぼすのを避けるために追加的なケアビットを必要とすることによりロード圧縮も制約されうる。

0011

残念なことに、複雑な故障モデルと同様に、挑戦的な設計及び技術により、X値を持つスキャンセルの数は増加しうる。静的Xとは、一般に作動パラメータに対して反応しないゼロ遅延シミュレーションで見られる、未知の値をいう。静的Xの例には、モデル化されていないブロック(例えば、アナログ又はメモリのブロック)及びバスコンテンションが含まれる。静的Xは設計時に知られているが、大半は単純な解決策がない。加えて、「動的」Xが、タイミング、作動パラメータ(例えば、電圧及び温度)、又は製造時の欠陥により生じうる。

0012

したがって、複数の挑戦的な目標にも同時に応えることができるスキャン圧縮方法の必要が高まる。

先行技術

0013

米国特許第7,237,162号明細書

発明が解決しようとする課題

0014

完全に不定値許容性であって非常に高いスキャン圧縮を行うスキャンテストシステム及び技術を提供する。

課題を解決するための手段

0015

複数のスキャンチェインを含む集積回路(IC)設計をテストするためのシステムが提供される。このスキャンテストシステムは、2つの疑似ランダムパターン発生回路(PRPG)チェイン及びアンロードブロックを有し得る。第1のPRPG処理チェインは第1のシード受取り、設計の故障を特定するためのパターンを生成しうる。すなわち、これらのパターンは、複数のスキャンチェインに印加される。第2のPRPG処理チェインは、第2のシードを受取り、不定値許容性の(XTOL)制御ビットを生成しうる。XTOL制御ビットは、スキャンチェインの観測のレベルを決定する。アンロードブロックは、複数のスキャンチェインからスキャン出力を、そしてXTOL制御ビットを受取り、設計を分析するためのテスト出力を生成しうる。

0016

一実施形態では、第1のPRPG処理チェインは、CARE PRPG及びPRPG移相回路を有しうる。CARE PRPGは、第1のシードを受取りうる。CARE移相回路は、複数のスキャンチェインに、展開された出力を与えうる。第1のPRPG処理チェインは、CAREシャドウレジスタも有し得る。CAREシャドウレジスタは、CARE PRPGから入力を受取り、CARE移相回路に出力を供給する。CARE PRPGは、CAREシャドウレジスタを一定値がスキャンチェイン内にシフトされシフト電力を低減するようなホールドモードにする、Pwr_ctrl(電源制御)信号を供給することができる。

0017

第2のPRPG処理チェインは、XTOL PRPG、XTOL移相回路、及びXTOLシャドウレジスタを有し得る。XTOL PRPGは第2のシードを受取りうる。XTOL移相回路は、XTOL PRPGの出力を受取る。XTOLシャドウレジスタは、XTOL移相回路の出力を受取りXTOL制御ビットを供給しうる。一実施形態では、XTOL PRPGは、XTOLシャドウレジスタをホールドモードにするホールド信号を生成するように構成されている。

0018

スキャンテストシステムは、テスタからの入力を受取り、第1のPRPG処理チェイン及び第2のPRPG処理チェインの一方に出力を供給するように構成されたアドレサブルPRPGシャドウをさらに有し得る。CARE PRPG及びXTOL PRPGは、任意のシフトサイクルで必要がある場合にリシードするように構成されている。したがって、スキャンテストシステムは、シフトごとにX制御を行いうるのが好都合である。

0019

一実施形態では、アンロードブロックは、XTOLセレクタ、Xデコーダ圧縮回路、及び多入力シフトレジスタMISR)を有し得る。XTOLセレクタは、内部スキャンチェインの出力を受取る。Xデコーダは、XTOL制御ビットを用いてXTOLセレクタを制御しうる。圧縮回路は、XTOLセレクタの出力を受取りうる。MISRは、圧縮回路の出力を受取りテスト出力を生成しうる。XTOLセレクタ及びXデコーダを完全観測モード、無観測モード、シングルチェインモード、及び複数観測モードのうちいずれか1つを可能とするように構成しうることが好都合である。

0020

一実施形態では、Xデコーダは、2レベルデコードシステム(two-level decoding system)の第1のものを含む。例えば、第1のレベルでは、Xデコーダは、グループごとの(チェインごとのではなく)出力を供給する。第2のレベルでは、各個のチェインでグループからチェインへのデコーディングが実行される。第1のANDゲートがスキャンチェインからの第1の入力を供給され、マルチプレクサはこの第1のANDゲートに第2の入力を供給しうる。第2のANDゲート及びORゲートは、両者ともXTOL制御ビットを受取り、マルチプレクサは、第2のANDゲート及びORゲートのいずれか一方からの出力を選択する。

0021

上述のスキャンテストシステムは、0からほぼ100%の任意のX密度に適用でき、最適化されたATPGと同じ検出率で非常に高い圧縮を行うことができると好都合である。1のスキャン入力及びスキャン出力と同じくらい少ない入力及び出力が規定されうる。設計論理は、変更されないままであるため、上述のスキャンテストシステムを容易に組み込むことができれば好都合である。

0022

ケアビットをCARE疑似ランダムパターン生成回路(PRPG)にマップする方法も提供されている。この方法は、全てのケアビットが1のシードにマップ可能な、シフトの最大ウィンドウを決定することを有する。最大ウィンドウを決定することは、シフトサイクルによりケアビットをソートすること、及び各シフトサイクルについて最大ウィンドウを算出しウィンドウ内のケアビットの総数があらかじめ算出された制限を超えないようにすることを含みうる。ウィンドウ内の全てのケアビットが単一のシードにマップ可能である場合、その単一のシードをCARE PRPGにロードすることができる。全てのケアビットを単一のシードにマップできない場合、ウィドウは、直線的に減少する。

0023

不定値許容性(XTOL)制御ビットをXTOL疑似ランダムパターン生成回路にマップする方法も提供されている。この方法は、全てのXTOL制御ビットが単一のシードにマップ可能であるシフトの最大ウィンドウを決定すること、及び最大ウィンドウの最適な開始を決定することを有する。完全観測モードについては、この方法は、XTOL enableビットをオフにするという第1の選択肢と、XTOL enableビットをオンのままにするという第2の選択肢とのいずれがよいかを決定することと、良い方の選択肢を選択することをさらに有し得る。

0024

スキャンテストについて観測モードを選択する方法も提供されている。この方法は、観測モードと関連したモードのメリット(mode merits)を初期化することを有し得る。各シフトについて、不定値(X)を残す(let through)観測モードを除去しうる。加えて、スキャンテストの主な目標を検出できない任意の観測モードも除去しうる。2次故障について、モードのメリットを観測された2次的な目標の数に基づいて増加させうる。各シフトについて、シフトについての最善の観測モード及び2番目に最善の観測モードをモードメリットの合計に基づいて決定しうる。結果として決定される観測モードはXTOLシードにマップしうる。観測モードは、完全観測、無観測、シングル観測、及び複数観測(そしてこれらの補完を含みうる。

図面の簡単な説明

0025

オンチップの圧縮回路及び展開回路を備えた単純化されたスキャンテストシステムを示す。
完全に不定値許容性となるように構成されたスキャンテストシステムを示す。
CAREシャドウレジスタをさらに有する図2Aのスキャンテストシステムを示す。
PRPGシャドウレジスタの一例を示す。
XTOL PRPGのセル、及びXTOL移相回路及びXTOLシャドウレジスタの対応するセルの一例を示す。
CARE PRPGのセル、及びCARE移相回路及びCAREシャドウレジスタの対応するセルの一例を示す。
テスタ及びATPGパターンに関連する波形の一例を示す。
圧縮されたパターンを印加する状態図の一例を示す。
最小数のXTOL制御ビットを用い観測可能性を最大化させて効率よくXを阻止しうるアンロードブロックの一例を示す。
Xデコーダで用いられる2レベルデコーディングブロックの一例を示す。
複数観測モードにおいて様々なグループ分けを用いることを表すグラフを示す。
XTOLセレクタ特性の2つの尺度を表すグラフを示す。
ケアビットをCARE PRPGシードにマップするマップ技術の一例を示す。
観測モード選択技術を示す。
XTOL制御ビットをXTOL PRPGシードにマップするマップ技術の一例を示す。
説明した適応性のあるスキャン圧縮技術を含むデジタルASIC設計フローを簡単に表示したものを示す。

実施例

0026

図1に、単純化された従来のテストシステム100を示す。テストシステム100は、テスタからの入力(すなわちシード)を受取るロード展開回路101、ロード展開回路101により生成されたスキャンビットを受取るための複数のスキャンチェイン102、スキャンチェイン102からのスキャン出力を受取るためのアンロード圧縮回路104を有する。一実施形態では、ロード展開回路101は、疑似ランダムパターン発生回路(PRPG)を有しうる。決定論的ATPGで計算された値をテスタから繰返しリシードされるPRPGは、ロードデータを非常に高く圧縮することができ好都合だからである。決定論的ATPGで計算されたロード値をPRPGの状態として「エンコード」し(すなわち「マップ」し)、全てのケアビットがPRPGのシードで適切にロードされるようにする。典型的な実施形態では、複数のテストパターンを各PRPGのシードから発生することができる。

0027

故障検出のために必要なケアビットに加えて、ロード展開回路101は、X制御ビットも出力することができ、X制御ビットは、制御ライン103を介してアンロード圧縮回路104に入力される。アンロード圧縮回路104は、いくつかのXがある場合にはエラー検出を行うことができるが、Xが増えると、過剰なXをロード展開回路101から来るビットで制御しないと検出率が低下する。とりわけ、加えられたXTOL制御ビットが、Xが制御されなかった場合に必要とされる出力ビットよりも少ないならば、X制御ビットを加えると実際に全圧縮データ量を減少させることができる。

0028

しかしながら、どのX制御ビットが必要とされるのか決定することは困難である。テスト印加時間を減少させるため、スキャンパターンのロードを、前のアンロードと重複させることができる。したがって、ロード展開回路101は、前のアンロードのためのX制御ビットだけではなく、(スキャンチェイン102に与えられている)現在のパターンのためのロードケアビットを同時に供給し、過剰なXにより検出率の低下又はパターンカウント受入れられないほど増加することが生じないようにしなければならない。

0029

不都合なことに、X制御ビットは、通常のスキャンATPGのフローでは非常に後になるまで分からない。すなわち、ロードケアビットが前のM(例えば、32)パターンに代えてセットされ、この時ロード展開回路101内のコンフリクトの結果満足できない状態が生じうる時になって初めてX制御ビットが分かる。前のパターン情報をスキャンセルごとに記憶することができどのセルが監視のためのX制御を必要としそうか予測することに留意すべきである。しかしながら、この記憶のためには、さらにメモリ及びCPUの作動が必要とされる。さらに、予測が失敗した場合、追加の(padding)パターンが必要になりえてこのパターンはテストデータとサイクルとの両方に加えられて不都合である。一実施形態では、X制御ビットを内部チェインのロードごとに1つのセットに制限することができる。すなわち、X制御ビットは、全てのシフトサイクルに対して不変であり、Xをマスクしすぎてしまう可能性があり、この結果パターン数が、検出率が100%になるまで増加してしまうという不都合がある。

0030

図2Aに示すスキャンテストシステム200の一態様によれば、シフトごとのXビットの制御を行い、ロードケアビットとのコンフリクトを回避するように2つのPRPGが用いられうる。この最適化を行なうために、ケアビットPRPG(CARE PRPG)202は、ケアビット(及びドントケアビット)を発生させることができ、別個の不定値許容(X−tolerant)PRPG(XTOL PRPG)206がXTOL制御ビットを発生させることができる。PRPGシャドウレジスタ201がテスタからシードを受取りCARE PRPG202又はXTOL PRPG206の一方のために適切なシードを発生させることができることに留意すべきである。

0031

図3Aにマルチプレクサ331及びフリップフロップ332を有する単純化されたPRPGシャドウレジスタ330を示す。複数のマルチプレクサ331は、同一の制御信号Mux_cotrolにより制御され、動作可能な場合に前のセルから及びテスタからシードを受取る。フリップフロップ332は、同一のクロック(簡単のため図示せず)によりクロック制御を受け、前のセルのフリップフロップ332の出力又は前のセルのマルチプレクサ331の出力を受取る。米国特許第7,237,162号明細書には、PRPGシャドウレジスタの構成例がさらに詳細に記載されている。PRPGシャドウレジスタ300の出力、すなわちXTOL enable及びCARE PRPG又はXTOL PRPGの一方のためのビットは、フリップフロップ332により与えられる。

0032

図2Aを再び参照すると、CAREPRPG202は、その出力を移相回路203に与え、移相回路は入力よりも多くの出力を行いうる。この結果、CARE PRPG202及びCARE移相回路203は、組合せでケアビット(及びドントケアビット)のロード展開を行いうる。対照的な構成として、XTOL PRPG206は、その出力をXTOL移相回路207に行い、XTOL移相回路は、出力よりも多くの入力を行いうる。

0033

PRPGは、事実上、所定のフィードバックに関する構成を備えた移相回路であることに留意すべきである。したがって、PRPGの隣接するセルは互いに依存する。すなわち、第1のセルの下流にある第2のセルは、1クロック前に第1のセルにより記憶されていた値を記憶しうる。移相回路は、通常、所定のセルからの入力を受けるXORゲートを用いて実行され、PRPGの隣接するセル間の線形従属性(linear dependency)を減少させ、故障検出がPRPGの線形依存性により受ける制限は最小限となる。PRPG及び移相回路の様々な構成は、ICテストの当業者にとって既知であるので本明細書では詳細に説明しない。

0034

一実施形態では、PRPGシャドウレジスタ201は、XTOL enableビット(1ビットレジスタに記憶することができる)を与え、アンロードブロック205における不定値許容性をオフにする。enableビットをオフにすると、X制御を必要としない隣接するシフトサイクルのウィンドウに対するXTOL PRPGビットが必要なくなることにより圧縮されたデータ量を減らすことができる。XTOL PRPG206は、シフトし続けるが、アンロードブロック205に対するXTOL PRPGの制御は、XTOLenable信号により不可能となる。enableにされると、XTOL PRPG206は、シフトごとのX制御をアンロードブロック205に行う。

0035

一実施形態では、XTOL enableビットを、CAREPRPG202又はXTOL PRPG206の一方にリシードされた場合だけ変更することができる。したがって、XTOL Enableビットにより、非常にXの密度が小さい設計ではXTOLビットは大きく減少しうるが、XTOL Enableビットは比較的粗い制御を行う。Xの密度が中くらい及び密度が高い場合にXTOLビットをさらに減少させるには、精密な制御も行うことができる。特に、多くの設計ではXの分布は極めて不均一であり、その結果、XTOL制御ビットが隣接するサイクルで再使用されうる(そして、ATPGにより生成されたパターンは、再使用に適するように調整される)。したがって、一実施形態によると、XTOL PRPG206の専用チャネルはXTOLシャドウレジスタ208にホールドビットを与えうる。このホールドビットにより、XTOLシャドウレジスタ208内のXTOL PRPGデータは不変に保たれる。

0036

XTOLシャドウレジスタ208がアンロード圧縮回路205に一定のXTOL制御ビットを与える間、XTOLPRPG206は、XTOL制御ビットの新しいセットが必要とされる次の状態に進みうることに留意すべきである。一実施形態では、XTOLシャドウレジスタ208を制御するためにXTOL移相回路207からシフトあたり1つのビットが必要とされる。

0037

上述の通り、XTOL移相回路207は、入力よりも出力が少ないほうが好都合である。したがって、XTOL移相回路207の出力にXTOLシャドウレジスタ208を配置すると(XTOLPRPG206の出力に配置する代わりに)、結果としてずっと小さなシャドウレジスタとなる。一実施形態では、XTOL制御ビットの数は、およそlog(#スキャンチェイン)である。さらに、XTOL PRPG206からアンロードブロック205への長い組合せの経路は、XTOLシャドウレジスタ208をXTOL移相回路207の後ろに配置することにより大きく低減される。

0038

図3Bに、XTOLPRPG206のセル及びそれに対応するXTOL移相回路207及びXTOLシャドウレジスタ208のセルの一例を示す。一実施形態では、XTOL PRPGのセル301は、入力として、前のXTOL PRPGセルからのビットだけではなくPRPGシャドウ(例えば、PRPGシャドウ201、図2A)からのビットを受取るマルチプレクサ312を有し得る(選択的なXOR311により示されるように、XORゲートは、前のXTOL PRPGセルの出力を生成することができることに留意すべきである)。これらのビットのいずれを選択するかは、XTOL shadow_trnsfer信号により決定され、この信号は、テストにより生成される。一実施形態では、マルチプレクサ312が、XTOL shadow_transferがオンである場合にPRPGシャドウ入力を選択する。セル301は、クロック制御された記憶装置(例えば、D−フリップフロップ)をさらに有し得る。この記憶装置は、マルチプレクサ312の選択された出力ビットを受けて、次のXTOL PRPGセルに信号を与える。

0039

XTOL移相回路のセル320は、XORゲートを有し得る。このゲートは、入力として少なくともマルチプレクサ312の選択された出力を受ける。一実施形態では、移相機能を行うために、このXORゲートは他のXTOLPRPGセルからの少なくとも1つの他のマルチプレクサの出力も受けうる。図3Bに示す各位相回路チャネルは、移相回路の出力を生成するために用いられるセルが独特の結合をしていることに留意すべきである。各結合のためのセルの選択は、当業者には既知であるため、本明細書ではさらに詳細には説明しない。

0040

一実施形態では、XTOLシャドウレジスタのセル302は、入力としてセル320の出力及びフィードバック信号を受取るマルチプレクサ322を有し得る。一実施形態では、これらのいずれのビットを選択するかは、テストにより生成されたXTOL shadow_transfer信号とORをとった!Hold信号(Hold信号の反転)により決定される。具体的には、一実施形態では、XTOL shadow_transferがオンである又はホールドでないときに、マルチプレクサ320がXTOL移相回路セル320の出力を選択する。マルチプレクサ322は、ホールド時に記憶装置323からのフィードバックを選択する。

0041

セル302は、クロック制御された記憶装置323をさらに有し得る(例えば、Dタイプフリップフロップ)。この記憶装置は、マルチプレクサ322の選択された出力を受けて、Xデコード信号を与える。このXデコード信号は、マルチプレクサ322への入力として与えられたフィードバック信号であることに留意すべきである。記憶装置313、323を、同一のクロック信号すなわちXTOLPRPGclkにより制御しうることにさらに留意すべきである。

0042

この構成では、マルチプレクサ322がXTOLシャドウにデータを保持するか、又はXTOLPRPG206からXTOLシャドウレジスタ208へのデータを取得する再循環マルチプレクサとして機能しうることは好都合である。一実施形態では、PRPGシャドウ入力がマルチプレクサ312により選択された場合、XTOL移相回路320からの入力はマルチプレクサ322により選択される。さらに、前のPRPGセル入力がマルチプレクサ312により選択された場合、移相回路のセル320の出力はマルチプレクサ322により選択され、又はHold信号に応じて323の出力が選択される。XTOL制御(XTOL-controls)の新しいセットでXTOLシャドウをすぐにリフレッシュするためには、XTOL移相回路入力はXTOL PRPGセルの入力から取られる(PRPGセルの出力に接続された移相回路の従来の構成と異なる)。

0043

中間のXTOLPRPGセル301が示されているが、最初及び最後のXTOL PRPGセルは以下の例外を除いて同様の構成を有していることに留意すべきである。具体的には、最初のXTOL PRPGセルは、前のXTOL PRPGセルからの入力を受ける代わりに、最後のXTOL PRPGセルの出力を受けるマルチプレクサ312を有する。そのため論理的には、最後のXTOL PRPGセルは、次のXTOL PRPGセルに出力を行う代わりに、最初のXTOL PRPGセルに出力を行う記憶装置313を有している。

0044

図2Bに示す一実施形態では、CAREシャドウレジスタをスキャンテストシステム200に持たせることができる(図2A)。図3CにCAREPRPG202のセル及びその対応するCAREシャドウ1001のセルの一例を示す。一実施形態では、CARE PRPGのセル350は入力として、前のCARE PRPGセルからのビットだけでなく、PRPGシャドウ(例えば、PRPGシャドウ201、図2A)からのビットを受取るマルチプレクサ342を有し得る(選択的なXOR341により示されるように、XORゲートは前のXTOL PRPGセルの出力を生成しうる)これらのビットのいずれを選択するのかは、テスタにより生成されるshadow_transfer 信号により決定される。セル350は、クロック制御された記憶装置(例えば、D−フリップフロップ)343を有し得る。この記憶装置は、マルチプレクサ342の選択された出力ビットを受けて次のCARE PRPGセルに信号を与える。

0045

全てのCAREPRPGセルのうちのサブセット電源制御信号を生成するために用いうることに留意すべきである。例えば、図3Cに示されているように、マルチプレクサ342の出力及び少なくとも1つの他の同様の出力を移相要素344に与えることができる。一実施形態では、移相要素344はXORゲートを有し得る。移相要素344の出力は、Pwr Ctrl信号である。

0046

一実施形態では、CAREシャドウレジスタのセル351はマルチプレクサ346を有しうる。このマルチプレクサは、入力としてマルチプレクサ342の出力及びフィードバック信号を受ける。一実施形態では、これらのビットのうちいずれを選択するかは、!Pwrenable信号(すなわち、Pwr enable信号(これはテスタにより与えられ1ビットレジスタ等に記憶される全体的な(global)電源信号)の反転)、!PWr Ctrl信号、及びCARE shadow_transfer信号(これはテスタにより生成される)のORをとることにより決定される。

0047

セル351は、クロック制御された記憶装置347(例えば、Dタイプフリップフロップ)をさらに有し得る。この記憶装置は、マルチプレクサ346の選択された出力をうけてCARE移相回路203の対応するセルに出力を与える。この出力はマルチプレクサ346への入力として与えられるフィードバックであることに留意すべきである。記憶装置343、347は同一のクロック信号すなわちCAREPRPGclkにより制御され、この信号は、クロック制御された記憶装置347に対しては反転されることにさらに留意すべきである。

0048

一実施形態では、Pwrenable信号が0であるならば、Pwr control信号及びCARE shadow_transfer信号は無視され、CAREシャドウセル351はCAREPRPGセル350の内容をマルチプレクサ342による出力としてコピーする。しかしながら、もし、Pwr enable信号が1であるならば、Pwr ctrl信号及びCARE shadow_transfer信号は、CAREシャドウセル351が現在の値を保持するか、CARE PRPGセル350から新しい値をクロック動作させていれる(clocks in)かを決定する。CARE PRPGセル350及びCAREシャドウセル351のこの構成により、スキャンチェイン内に反復値をシフトさせることにより大きな電力削減が行われる。具体的には、ケアビットと電力とをトレードオフするために任意のドントケアシフトを用いることができる。

0049

図2Aに戻ると、PRPGシャドウレジスタ201を任意のオーバラップを持ったアドレサブルシドウ(addressable shadow with arbitrary overlap)として特徴付けることができる。具体的には、PRPGシャドウレジスタ201は、CARE PRPG202のための次のCAREシード、又はXTOL PRPG206のための次のXTOLシードをロードできるのが好都合である。特に、このロードはスキャンチェイン204の値をシフトするかホールドする間に実行することができこのため内部のシフトサイクルと任意に重なったリシードサイクルが可能となる。この結果、リシード周波数はシードをロードするのに必要なサイクル数に限定されない。PRPGシャドウ201の内容は、続いて1サイクルでCARE PRPG202又はXTOL PRPG206の一方に転送されうることが好都合である。

0050

最適化されたスキャンATPGは、各パターンによりテストされる複数の故障をマージすることによりパターン数を大きく低減することができる。まず、マージすることは非常に効果的であり、各パターンは、多数のケアビットを用いて多数の故障をテストする。引続いて生成される各テストパターンでまだテストされていない故障の数が減少するにつれてパターンごとに故障をマージする可能性が急速に減少する。そのため、パターンごとに用いられるケアビットはますます少なくなる。ケアビットはシードにマップされるため、初期のパターンでは多くのシードが必要とされ、後のパターンで必要とされるシードはますます少なくなる。一方、テスタは、ロードごとに一定のビット数を供給するように最適化されている。

0051

PRPGシャドウ201は、テスタから繰返しシードを供給されえて所望の決定論的テストをえる。代わりに、PRPG202、206は、テスタデータのストリームを連続して受けることができ(全てのテストサイクルでは、PRPGシャドウ201に記憶することができるビット総数のサブセットが与えられる。すなわちインクリメンタルリシード)所望のケアビットが生成される。しかしながら、設計によってはケアビットのホットスポットを持ちうる。すなわち、多くのテストパターンのために非常に多くの数のケアビットが必要とされる領域である。テスタのバンド幅が限られているため、PRPGの各シフトサイクルには少数のデータしか与えることができず、全てのケアビットを満足させるためには不十分でありうる。この場合には、スキャンチェイン204のロードを複数のサイクルの間停止すべきである。

0052

したがって、一実施形態においては、PRPGシャドウ201をリシードすることができ、パターンバウンダリにわたるストリーミングデータ由来する複雑さが回避される(すなわち、インクリメンタルリシードを扱うことは、新しい完全なシードで動作するよりも極めて複雑でありうる)。さらに、ロード間の独立性を維持するために、各パターンロードを完全なCARE PRPGのロードで開始することができる。各シフトで使用できるケアビット数を最大化するために、必要な場合にリシードをスキャンチェイン204のシフトをストップさせる機能と組合せることができる。一実施形態では、新しいシードを(必要ならば)各シフトごとにロードすることができ、それによりテスタのバンド幅と独立にPRPGシャドウ201への値の供給を最大化する。

0053

この結果、PRPG201をリシードする観点から、CARE PRPG202又はXTOL PRPG206を必要ならば任意のシフトサイクルでリシードすることできる。必要ならば、CARE PRPG202及び/又はXTOL PRPG206をリシードしている間、スキャンチェイン204のシフトを停止することができる。PRPGシャドウ201及びスキャンチェイン204のシフトのこのオーバラップを、ATPGにより決定することができる。

0054

一実施形態では、CAREPRPG202及びXTOL PRPG206は同一長であるため、テスタロード(シード)は同量のデータを有している。上述したように、PRPGシャドウ201は、XTOL enableビットを有するため、PRPGシャドウ201は、CARE PRPG202又はXTOL PRPG206の一方よりも1ビット長くなりうる。PRPGシャドウ201の内容が(パラレルにCARE PRPG202又はXTOL PRPG206の一方に転送される場合、XTOL enableビットがセットされ次のシャドウからの転送まで不変に維持されることに留意すべきである。

0055

特に、シードは必要な場合だけロードされる。テスタにとって各リシードはサイズが固定されたロードである。内部的には、1つ以上のシードが内部のロード/アンロード動作を制御する。図4に、テスタ及びATPGパターンと関連した波形400の一例を示す。
波形401は、テスタからPRPGシャドウがロードされるのを表す。波形402は、ATPGパターンのロードに基づきスキャンチェインがシフトするのを表す。これらの波形が示すように、シードをロードするサイクル数が4であるならば(波形401により示される)、パターンの最初の4サイクルはシードをロードし(サイクル410を見よ)、続いて内部のチェインは2サイクルシフトし(波形402により示される)、第2のシードがロードを完了するまでさらに2サイクル待機する。続いて、内部のシフトが再開し、2サイクル後に3番目のシードが内部の(すなわち、スキャンセル)シフトとオーバラップしたロードを開始する。この実施形態では、テスタは4つのロードの後に転送を行う同じパターンを行う、すなわちテスタサイクルを反復する(サイクル411に示される)。内部のロードでは、複数のシードが必要とされえて、外部の様子に独立して、速い又は遅いクロックを用いることができる。

0056

図2に戻ると、スキャンテストシステム200は、3つの圧縮技術を同時に用いる。第1に、CAREPRPG202は必要な回数だけシフトごとにでもリシードされうるため、テスト生成はパターンごとに複数の故障をマージする。シード内に密度の高い数少ないパターンをエンコードすると(1つのパターンに複数のシード)、多くの密度の低いパターンをエンコードするよりデータ総量は小さくなる。このように、ATPGが、1パターン中の複数の故障のためにケアビットを「再使用」しうるのは好都合である。第2に、PPRPGのケアビットのエンコードでは非常に高いデータ圧縮が行われうる。特に、CARE PRPG及びXTOL PRPGが別になっていると、CARE及びXTOL両方の制御ビットの圧縮が独立に最適化される。第3に、テスタの反復サイクル(repeat cycle)を付随的な負担のない(no-overhead)スタンドアロンのロードデータ圧縮技術として用いることができる。一実施形態では、テスタの反復を、リシードが進行していない場合に、スキャンチェイン204の値をシフトさせるのに用いることができる。

0057

図5に圧縮されたパターンを適用する状態のフローの一例を示す。パターンは、最初のシードがPRPGシャドウにロードされ、場合に応じてデータがアンロードされる「テスタモード」501で開始する。各パターンはロードケアビットを必要とするがXTOLビットを必要としない可能性があるため最初のシードはCARE PRPGに指定される。内部チェインは、「テスタモード」501の間シフトしない。その代わり、内部チェインは値を保持する。一実施形態では、「テスタモード」501は、#shifts/seedサイクル(すなわち、PRPGシャドウをリロードするのに必要とされるサイクル数)を取ることができる(例えば、図4の波形401の最初の4つのサイクル)。続いて、「PRPGへのシャドウモード(Shadow to PRPG Mode)」では、PRPGシャドウの内容は1サイクルでCARE PRPGかXTOL PRPGに転送される。

0058

「PRPGへのシャドウモード」502にある場合、次の状態として3つの可能性がある。他のシードがすぐに必要とされるならば(例えば、最初のCAREシードの後のXTOLシード)、再び「テスタモード」501に入る。他のシードが数サイクル後で必要とされるならば、「シャドウモード」504に入ることができる。最後に、数サイクルでは他のシードが必要とされないならば、「自律モード(Autonomous Mode)」503に入ることができる。

0059

他のシードがCサイクル後に必要とされC≦#shifts/seed(すなわち、PRPGシャドウをリロードするのに必要なサイクル数)場合、「シャドウモード」504を用いることができる。Cサイクルの間、テスタからのPRPGシャドウのロードは、内部チェインのシフトとオーバラップする(すなわち、#shifts/seed−C)。「シャドウモード」504では、内部シフトロードとできるだけ多くオーバラップさせることによりテストサイクルの総数を最小化するために、PRPGシャドウを用いることができる。また、リシードをできるだけ多く配してオーバラップを最大にするためにATPGプロセスを調整することができる。一実施形態では、「シャドウモード」504は、#shifts/seedサイクルを取る(例えば、図4ではC=2で4サイクル)。この実施形態では、「シャドウモード」504の後で常に「PRPGへのシャドウモード」502で選択されたPRPGにPRPGシャドウの内容を転送する。

0060

現在のパターンで他のシードが必要でない場合又は他のシードがCサイクル後に必要でC>#shifts/seedである場合には、「自律モード」503を用いることができる。現在のパターンで他のシードが必要とされない場合には、データをPRPGにより与えて内部のロード/アンロードを完了させるためにテスタの反復を用いうる。この場合には、テスタはシフトクロックを数サイクル動作させ、その後「キャプチャモード」505(所定のスキャンセル内の値をキャプチャ(capture)する)で1以上のキャプチャサイクルが続く。対照的に、他のシードがCサイクル後で必要とされC>#shifts/seedである場合には、テスタの反復がC−#shifts/seedサイクルの間用いられ、その後「シャドウモード」504が続く。例えば、図4では、C=6であり、最初の2サイクルは「自律モード」503であり、その後「シャドウモード」504で4サイクル続く。この実施形態では、「テスタモード」501が常に「キャプチャモード」505に続く。

0061

多入力シフトレジスタ(MISR)は、理論的には非常に高いアンロード圧縮を行うが1つのX値があるだけで使い物にならなくなりうる。設計から全てのXを除去するために積極的なDFT(テスト容易化設計)が用いられうるが、そのためのコストは受入れがたいものになりえ、動的なXが依然として生じうる。既知の技術では、全てのXはMISRの前で阻止されうるもののこの阻止を制御するために入力データが大きく増加し、阻止が粗すぎるために観測可能性が落ちるという代償がある。他の既知の技術では、不定値の各々とそれ自身とのXORをとることによりMISRからXを周期的に除去することができる。この技術では、Xの密度が高い場合大量の入力データが必要とされる。さらに他の既知の技術では、MISRのフィードバックを取去り代わりに出力データを連続的に観測することによりMISR中のXの寿命を抑制しえて、その結果、幾分かの不定値許容性と交換圧縮率が減少する(不定値許容性は、より多くの入力データを用いてXを阻止することにより高められうる)。さらに他の技術において、MISRの代わりに組合せ圧縮(combinational compression)では出力データのストリームを観測することが必要となるが、不定値許容性のために圧縮率が犠牲となる。

0062

一実施形態では、シフトごとの不定値許容性(上述した)の正確な制御をMISRで実現される非常に高い圧縮と組合せることができる。図6に、最も少ない数のXTOL制御ビットを用いて観測可能性を最大限にすることにより効率的にXを阻止することができるアンロードブロック205の一例を示す。一実施形態では、アンロードブロック205は、Xデコーダ601、XTOLセレクタ602、圧縮回路604及びMISR606を有し得る。XTOLセレクタ602は、スキャンチェイン204から入力を受けて出力を圧縮回路604に与えうる。XTOLセレクタ602は、Xデコーダ601により制御されうる。Xデコーダ601は、XTOL制御信号(シフトごとに変化しうる)及びXTOLenable信号(リシードごとに変化しうる)を受取りうる。

0063

一実施形態では、圧縮回路604を、1、2、3又は任意の奇数個のエラー(X)に対して偽信号(aliasing)を発生させないように設計することができる。これは、圧縮回路の出力がMISR606に接続されておりしたがって少数のポートに制約されないことから可能になる。圧縮回路604を、2エラーMISRの相殺をなくす(eliminate 2-error MISR cancellation)ようにも設計することができる。XTOLセレクタ602の一実施形態においては各デコーダ700の出力が圧縮回路604の3つの移相要素(例えば、XORゲート)に供給されうる(すなわち、3の論理出力数(fanout of 3)が用いられる)。どのセットの移相要素が各論理出力数を受取るのかを決定することは、テストの当業者に既知であり、本明細書では説明しない。

0064

一実施形態では、MISR606を「テストモード」501(図5)における全てのテストパターンの後でアンロードし、アンロードされた時に0にリセットすることができる。別々のスキャン入力ピン及び出力ピンが使用可能ならば、MISRのアンロードをシードのロードとオーバラップさせることができテスタサイクルを最小化しうる。不合格エラーシグナチャ(failing error signature)を解析して不合格パターンの分析を行うことができる。代わりに、ユーザは、パターンセット終わりでだけMISR606をアンロードすることを選択し、高いデータ圧縮を行うことができるが、直接診断サポート(direct diagnosis support)を行うことができない。

0065

XTOLセレクタ602を次のモードをサポートするように構成することができる。すなわち、完全観測モード、無観測モード、シングルチェインモード、及び複数観測モードである。完全観測モードをXのないシフトで用いることができ、完全観測モードは可能な場合には好ましい。オフ状態のXTOLenable信号により、複数のリシード間で完全観測が可能となる(XTOLenable信号を変えることができる場合)。XTOL制御ビットの数を最小にして、オン状態のXTOL enable信号の場合の完全観測をやはり選択しうることに留意すべきである。Xチェイン(すなわち1つ以上のXを含むスキャンチェイン)は、もし構成されるならばこのモードでは観測されない(Xチェインは、「スキャン圧縮のXチェインを用いた増加」と題され2008年9月30日に出願された米国特許出願12/242,573号に詳しく記載されている)。無観測モードを、全てのMISR入力が阻止されなければならないシフトに対して用いることができる。Xの多い複数の設計ではこのモードが比較的多く用いられるため、XTOL制御ビットを少なくしてこのモードを選択可能でなければならない。

0066

シングルチェインモードを、目的のセルが観測されるシフトについて単一の内部チェインを観測するために用いることができる。このモードはXチェインを観測できる唯一のモードであり、完全な不定値許容性を有することが好都合である。すなわち、他のいくつのセルがXであっても任意のセルを観測することができる。通常の設計では内部チェインの数が大きいため、単一のチェインを選択するには多くのXTOLビットが必要とされる。したがって、このモードは控えめに用いるべきである。

0067

複数観測モードを各設計に対してカスタマイズできる。このモードでは、複数のスキャンチェインの様々なサブセットを観測することができる。したがって、複数観測モードは、シングルモードと完全観測モードとの間の中間領域を受持つ。このモードの選択は、スキャンチェインの指定されたサブセットを選択するために可能な限り少ないビットが必要とされるようにコード化(coded)することができる。

0068

一実施形態では、Xが圧縮回路604を通過しない場合のみXTOLセレクタ602のためのモードを選択することができる。シフトごとに1つのXTOLビットを用いる、隣接するシフトサイクルに対して任意のモード選択を反復することができる。複数観測モードを全てのグループで同じスキャンチェインが2つ一緒にならないようにして構成することができ、この結果スキャンチェインの1つにXがあっても他のスキャンチェインを観測するための全ての複数観測モードを選択することに差し障りがでない。

0069

複数観測モードを作るためには、非Xチェインのセットに2以上の分割を定義する。各分割にはセット全体が含まれる。グループは各分割内で相互に排他的に定義され、各チェインが各分割のうちぴったり1つのグループに属するようにする。さらに、各チェインは、1分割あたり1グループとした場合に複数グループからなる唯一のセットにあるため、分割あたりのグループ数の積は、少なくともチェインの数と同じでなければならない。任意のグループ又はその分割に関する残りのグループ(complement)を、複数観測モードで選択しうる。

0070

複数観測モードによる簡単なチェインの分割わりを10チェイン及び2つの分割を用いて説明することができる。例えば、分割1は各々5チェインの2つのグループを含み、分割2は各々2チェインの5つのグループを含みうる。グループの総数は7(すなわち2+5)である。グループの例は、グループ0(0、1、2、3、4)、グループ1(5、6、7、8、9)、グループ2(0、5)、グループ3(1、6)、グループ4(2、7)、グループ5(3、8)、グループ6(4、9)を含みうる。一実施形態では、どの2つのチェインも同じ2つのグループにないことを保証するために、10(2×5)回の観測が可能である(例えば、グループ0を観測、グループ1を観測、グループ2を観測、グループ〜2(すなわち、1、2、3、4、6、7、8、9)を観測など)

0071

他のより現実的な設計例では、1024のチェインと4つの分割を考える。この例では、分割1は、各グループに512チェインずつの2グループを、分割2は、各グループに256チェインずつの4グループを、分割3は、各グループに128チェインずつの8グループを、分割4は、各グループに64チェインずつの16グループを含みうる。グループの総数は、30(すなわち、2+4+8+16)である。どの2つのチェインも同じ4グループにはないため、1024通りの組合せが許される(すなわち、2×4×8×16)。

0072

任意の1チェインを選べるようにするには、レイアウトに特別な注意が必要である。Xデコーダがその入力を完全にデコードし個々のチェインを阻止(blocking)する単純な実装では、配線が多くなりすぎる。特に、図7により詳細に示されるデコーディングブロック700により配線効率のよい構成が行われる。

0073

一実施形態では、ブロック700は、スキャンチェインの出力及びマルチプレクサ702からの出力を受けるANDゲート701を有し得る。マルチプレクサ702は、(共用論理703と称される)2つの論理ゲート(すなわちORゲート704及びANDゲート705)からの出力を受け得る。ANDゲート701は、専ら図示目的のため、マルチプレクサ702及び共用論理703から離して示されている。各スキャンチェイン711は対応するデコーディングブロック700を1つだけ持つ。隣接するスキャンチェインはデコーディングの第2レベル(すなわち、共用論理703)で幾つかの論理を共有できてよい。この共有は、デコーディングの当業者には既知であるため、本明細書では説明しない。このように、デコーディングブロック700は、論理的実装を表しているが、物理的な実装は異なっていてもよい。

0074

論理ゲート704、705は、同一の入力を受ける、すなわちグループのセットを指定する入力である。しかしながら、スキャンチェイン711によっては、入力のセット(すなわち、31の可能な入力から選ばれた)は、デコーディングブロック700の間で異なりうる。Xデコーダ601は、グループごとに1つの出力を行い、加えてシングルチェインモードがアクティブである場合を示す「シングルチェイン」制御(全てのマルチプレクサ702に共通である)を行う。例えば、1024のチェインでは(上述のより複雑な分割の仕方を参照)、Xデコーダ601は、13のXTOL制御信号及び1のXTOL enalble信号として、31の出力710を与え(単純な実装では1024なのに対して)、各々の共用論理703は、4つの入力をセットで受ける。14のデコーダ入力から31のデコーダ出力を生成することは当業者には既知であるため、本明細書では説明しない。スキャンチェインごとに1つのデコーディングブロック700を設けることにより、唯一の「アドレス」を持った個々のチェインを選択することが可能となる。アドレスは、単にチェインが属する全てのグループのセットである。例えば、上述の単純な分割の仕方に戻れば、セット(グループ0、グループ2)では唯一チェイン0が選択され、セット(グループ0、グループ3)では、唯一チェイン1が選択される。Xデコーダ601から生成されるシングルチェイン制御は、全てのマルチプレクサ702への唯一の制御として働くことに留意すべきである。

0075

さらに説明するために簡単な例を示す。シングルチェイン制御がオンならば、任意のスキャンチェインはシングルチェインモードで観測されうる。シングルチェイン制御がオフならば、スキャンチェインは他のモードで(すなわち、完全観測、非観測、複数観測)で観測されうる。ORゲート704及びANDゲート705への共有入力は、スキャンチェインが属する4つのグループである(上述の分割の仕方を参照)(すなわち、各スキャンチェインは、1つが1の区切りにある正確に4つのグループの一員であろう。)

0076

完全観測モードでは、XTOL enableは0(オフ)であり、シングルチェイン制御信号は0(すなわち、シングルチェイン制御ではない)であり、Xデコーダ601の残りの30の出力は1であろう。図7に示すように、シングルチェイン制御信号が0であるならば、全てのマルチプレクサ702は、ORゲート704の出力を選択する。ORゲート704への全ての出力が1であるならば、マルチプレクサ702は、1のみ出力する。これらの1はANDゲート701に入力され全てのスキャンチェインを観測することができる。

0077

一方、XTOL enableが1であるならば、XTOL制御信号は観測モードを決定するのに用いられる。例えば、無観測モードでは、シングルチェイン制御信号は、0であり、Xデコーダ601の残りの30の出力も0である。マルチプレクサ702は、この場合もORゲート704の出力を選択し、ORゲートはこの場合0を出力する。ANDゲート701に0が入力されると全てのスキャンチェインの値が阻止される。

0078

シングルチェインモードでは、シングルチェイン制御信号は1である。このため、マルチプレクサ702は、ANDゲート705の出力を選択する。Xデコーダ601の残りの30の出力のうち、4つは1であり、他の26は0であろう。特に、4つの1を受取る唯一のスキャンチェインがあるであろう。すなわち、観測のために選択されたスキャンチェインである。

0079

複数観測モードでは、シングルチェイン制御信号は0である。このため、マルチプレクサ702は、ORゲート704の出力を選択する。Xデコーダ601の残りの30の出力のうち、いくつかは0であり、他は1であろう。ORゲート704への4つの入力のうち少なくとも1つの入力が1であるならば、対応するスキャンチェインは観測される。

0080

複数観測モードにおけるグループ分けの特性を、シフトごとX数の関数としてのチェイン観測の可能性を計算することにより分析評価することができる。1024のチェインに対する結果を図8及び図9に示す。最も高い観測可能性、すなわちXのないモードが各場合に選択された。したがって、Xがない場合に完全観測が選択され、1つ又は数個のXに対して15/16モードのうち1つが選択され、7/8モードが選択され、続いて3/4、1/2、1/4、1/8及び1/16が選択された。

0081

図8に示すように、15/16は、Xが1つの場合にだけ用いられ、Xが2個の場合にはほとんど用いられずXがそれより多い場合には全く用いられない。任意の数のXに対して図8における全ての曲線の合計は100%である。例えば、シフトごとのXが2乃至7である場合に1/4は最も可能性の高く、シフトごとのXが7乃至19である場合に1/8モードが最も可能性が高く、それよりXが多い場合には1/16が最も可能性が高い。シングル観測モードはは、図8では除外されている。補完モード15/16、7/8、及び3/4は、シフトごとに2つのXがある場合周辺の非常に狭い領域でしか使用可能でないが、これは実際の設計では、非常によく生じる状態であるため補完モードは最もよく用いられる。

0082

図9にXTOLセレクタの特性を示す2つの尺度を示す。第1の曲線901は、観測されたチェイン数の平均を示し、X数が増加するにつれて急速に減少している。特に、シフトごとにXが6個ある場合、20%のチェインが依然として観測されえて、シフトごとのXが19個までは10%のチェインが依然として観測されうる。この観測可能性は、以前の解決方法で可能であったよりもずっと高いことに留意すべきである。例えば、観測されたチェインの平均は、圧縮回路又はセレクタの組合せでは一般にわずか3%程度である。

0083

図9における第2の曲線902に、観測可能なチェイン、すなわち複数観測モードでいくつかの他のチェインにXがある(someotherchains are at X)場合に、必ずしも一度にではないが観測することができるチェインの割合を示す。観測可能なチェインは、重要である。複数の設計において、Xは大半のパターンについてXとなるセルに集中する傾向があるからである。ATPGが全てを同一のパターンよってでなくても他のチェインを効果的に観測して故障検出することは重要であり、XTOLビットコストが高いシングルチェイン観測を用いる必要がないことは重要である。第2の曲線902に示すように、シフトごとのX数が大きくても高い観測可能性を維持することができる。例えば、シフトごとのXが15個であっても50%の観測可能性を依然として維持することができる。

0084

続いて、テストパターンをCARE及びXTOLのシードに最適化及びマップするように変更されたATPGプロセスを説明する。図10にケアビットをCAREPRPGシードにマップするマップ技術1000の一例を示す。技術1000では、各パターンについて、テスト発生回路は、所望のケアビットを記憶する。ケアビットは、1次故障又は2次故障(primary or secondary faults)に必要であればフラグがたつ(flagged)。シフトごとのケアビット数のカウントは続けられる。2次故障のマージは、1回のシフトで変化させることができる(that can be satisfied)ビットの最大数により制限され、CARE PRPGから小さなマージンを除いた長さに等しい。ケアビットのリストが技術1000では用いられ、この技術は、パターンごとに必要なCAREシードを算出し記憶する。

0085

マッピング技術1000では、ケアビットはシフトサイクルにより記憶される(1001)。変数start_shiftが0に初期化され、変数はシードへのマッピングが行われる可能性のあるPRPGの長さからマージンを除いた大きさに限定される。シフトの最大ウィンドウ、start_shiftからend_shiftまで計算されるため、ウィンドウ内のケアビットの総数はあらかじめ計算された限度を超えない(1002)。ウィンドウ内の全てのケアビットを1つのシードにマップできるならば(すなわち、線形システムが解をもつならば)(1003及び1004)、そのシードは記憶され(1005)、サイクルstart_shiftでCARE PRPGにロードされ、サイクルend_shift+1まで全てのケアビットを生成する。最後のシフトがちょうど含まれたのでなければ(1006)、シフトの新しいウィンドウを同様に処理することができる(1002)。最後のシフトがちょうど含まれたのであれば、プロセスは終了する(1007)。

0086

ウィンドウ内の全てのケアビットを1つのシードにマップできるのでなければ(1004)、end_shiftは依然としてstart_shiftより大きいと仮定して(1008)、ウィンドウは直線的に減少し(end_shift−−)、結果として生じたケアビットをシードにマップすることが試みられる(1003)。まれなケースでは、end_shift>start_shiftが真でない時点では、1シフトのケアビットでさえもシードにマップすることができない。この場合には、シードにマップすることができるケアビットの総数を決定するため二分探索法が実行される(1009)。探索中の全ての段階でケアビットの線形システムのための解が求められる。1次故障のためにフラグがたった(flagged) ケアビットがもしあるならば、2次故障ケアビットよりも高い優先順位を与えられる。1次故障は、テスト生成回路により再び目標とされないからである。

0087

シードから計算されたPRPGの値はスキャンチェインにロードされ故障シミュレーションが実行される。ケアビットがドロップした(dropped)ために検出されなかった2次故障は、将来のパターンで再び目標にされる。

0088

M(例えば、32)パターンが生成されて各々がCAREシードにマップされた後に、シミュレーションを実行することができ、スキャンセルが目標とされた故障をキャプチャすると共にセルがXをキャプチャしたCAREPRPGからロードされた値に基づいて決定する。この情報を続いて各パターンでXTOLシードを計算するために用いることができる。図11に観測モード選択技術1100を示す。特に、あらゆるパターン及びあらゆるシフトについて次のようにモードが選択されなければならない。すなわち、1つのXも許容されない、対象となる1次故障はもしあれば観測される、可能な限り多くの2次故障も観測される、可能な限り多くの対象とならないセルが観測される、可能な限り少ないXTOLビットが必要とされる。

0089

全てのパターンについて、各モード(完全観測、無観測、シングル、複数、それらの補完)は最初にその観測可能性に比例しどれだけ多くのXTOL制御を選択する必要があるかに反比例するメリット値割当てられる。一実施形態では、小さなランダム成分も加えられ、Xが同様に分布した、異なるパターンに対して異なるモードが選ばれるようにし、この結果、全ての観測可能なチェインを偶然に観測できるようにする。この時点では、モードのメリット値は全てのシフトに対して同一であることに留意すべきである。

0090

続いて、各シフトに対して、X値をもつ(at X)1つ以上のセルを選択するモードは、そのシフトについては考慮から除外される(1102)。主要な目標故障を観測するシフトについては、目標故障の観測セルを観測しない全てのモードは除外される(1103)。任意のシングルチェインを観測することができることにより、少なくとも主要な目標は常に観測可能であることに留意すべきである。続いて、観測された2番目以降の目標セルの数に比例して残りのモードのメリット値が増やされる(1104)。最後のシフトについて最も高いメリット値を持った2つのモードがbest及びbest2として記憶される(1105)。

0091

最後から2番目のものから最初のものまであらゆるシフトについて、各モードは、更新されたメリット値を有する。更新されたメリット値は、shift+1のモードのうち2の最善のモードの一方よりも前にある(followed by either of the two best modes of shift+1)(curr及びcurr2として記憶される)(1106)。モードをホールドする(holding)するとXTOL制御コストがもっとも低い。すなわち1ビットである。現在のシフトについて最も高いメリット値を有する2つのモードは、続いてbest及びbest2として記憶され、次のシフトのために用いられる(1106)。一実施形態では、高速に実行するために、2つの最善のモードだけが計算され用いられる。最終的に、選択された最善のモードがXTOLシードにマップされる(1108)。続いて、観測されなかった2次故障は、再び動作され、将来のテストパターンにより目標とされることが可能となる。

0092

図12にXTOL制御ビットをXTOLPRPGシードにマップする(すなわち図11の工程1108を実行する)マップ技術1200の一例(例えば、図12のステップ1208に関する)を示す。マップ技術1200を開始するには、変数start_shiftは0に初期化され、変数制限は、シードへのマッピングが決定される可能性のあるPRPG長からマージンを除いたものに初期化される。

0093

ウィンドウの相互に排他的な初期シフトを計算するには、まず、全ての完全観測サイクルについてXTOLシャドウをホールドするのに十分なビットを新しいXTOLシードにより供給することができるのかを考える(ホールドするのにシフトあたり1ビットが必要とされる)(1202)。残されているビットが十分でないならば、すぐにXTOL_enableをオフにすることが好都合である(例えば、ダミーシードを用いる)(1203)。最後のシフトがちょうど含まれたのでないならば(1204)、シフトの新しいウィンドウを続いて処理することができる(1206)。

0094

start_shiftからend_shiftまでのシフトの最大ウィンドウが計算され、ウィンドウ内のXTOL制御ビットの総数は、あらかじめ計算された制限を超えない。線形システムを解きシードを計算する(1207)。ウィンドウ内の全てのケアビットを1つのシードにマップすることができるならば(すなわち、線形システムが解を持つ)、シードは記憶され(1209)、サイクルstart_shiftでXTOLPRPG内にロードされ、サイクルend_shift+1まで全てのケアビットを生成する。最後のシフトがちょうど含まれたのでなければ(1210)、続いてシフトの新しいウィンドウを同様に処理することができる(1202)。最後のシフトがちょうど含まれたのであれば、プロセスは終了する(1205)。

0095

ウィンドウ内の全てのXTOL制御ビットを1つのシードにマップできないならば(1208)、ウィンドウは直線的に減少し(end_shift−−)、結果として生じるケアビットをシードにマップすることが試みられる(1207)。XTOL制御ビット数はXTOLPRPGの長さよりずっと小さいため、必要とされるビットはドロップすることがない(dropped)。1つのシフトをマッピングすることは実際的には常に可能であるからである。

0096

以下の表1に、内部チェイン長さ=100でXTOL制御を有効に用いた設計のためのテストパターンを示す。最初の20シフトサイクルでは(シフトサイクル0・・19)Xがないため、XTOL enableが初期CAREPRPGシードをロードし完全観測モード(FO)を選択してオフにされる。これらのサイクルでは100%の観測可能性がある(Xチェインがないことを仮定して)。サイクル20は、1つのXを持つ。したがって、サイクル20の前にXTOL PRPGがロードされXTOL enableがオンにされる(シードは、前のサイクルで内部シフトとオーバラップしてロードされた)。15/16モードがXTOL PRPGに由来する8ビットを用いて選択される。サイクル21から29は再びXがない。しかしながら、XTOL enableはこの場合オンであるため、サイクル21では、XTOL PRPGの3ビットを用いて完全観測モードが選択される。この後、サイクル22から29では、XTOLシャドウの値を保持するのにシフトあたり1ビットだけが用いられる。サイクル30は、5つのXを持つ。この場合には、XTOL PRPGから8ビットが用いられ、1/4モードが選択される。このモードは、次のサイクルでも必要に合わせて選択される。具体的には、サイクル31から39は、シフトあたり3から7つのXを有し、同じ1/4モードが用いられる。XTOLシャドウの値を保持するためにシフトあたり1ビットだけが用いられることに留意すべきである。最後の60サイクルはXを持たない。したがって、他のシードがロードされ、完全観測のためにXTOL enableはオフにされる。特に、この例では、11サイクルで合わせて50のXをブロックするため36のXTOLビットだけが用いられ92%の平均観測可能性を達成した。

0097

図13に上述した完全に不定値許容性であって非常に高いスキャン圧縮を含むディジタルASIC設計フローの一例を単純化して表示する。上側の段において、プロセスは、製品企画より開始し(ステップ1300)、EDAソフトウェア設計プロセスを実行する(ステップ1310)。設計が終了すると、テープアウトを行う(イベント1340)。テープアウト後、製造プロセス(ステップ1350)、パッケージング及び組立プロセス(工程1360)を実施し、最終的に完成品チップが得られる(結果1370)。

0098

EDAソフトウェア設計プロセス(工程1310)は、実際には複数のステップ1312から1330から構成されており、簡略化のために直線的に示している。実際のASIC設計プロセスでは、特定の設計は、所定の試験合格するまでステップを逆戻りしなければならないこともある。同様に、任意の実際の設計プロセスでは、これらのステップは、異なる順序及び組合せで行われることもある。したがって、この説明は、特定のASICのための具体的なまたは推奨する設計フローとしてでなく、むしろ背景説明及び一般的な説明目的のために提供される。

0099

EDAソフトウェア設計プロセス(工程1310)を構成するステップを簡単に説明する。

0100

システム設計(工程1312):設計者は、実装したい機能性を記述し、what−ifプランニングを実施して機能性改良や費用確認などを行うことができる。ハードウェア−ソフトウェア・アーキテクチャ・パーティショニングはこのステップで行うことができる。このステップで使用することができるシノプシス社(Synopsys,Inc.)製のEDAソフトウェア製品の例には、Model Architect、Saber、System Studio、及びDesignWare(登録商標)などの製品が含まれる。

0101

論理設計及び機能性の検証(工程1314):このステップでは、システム内のモジュールのためのVHDL又はVerilogコードを書込み、その設計を機能性の精度について検査する。より具体的には、設計を検査することによって、正しい出力を生成することを保証する。このステップで用いられうるシノプシス社製のソフトウェア製品の例には、VCS、VERA、DesignWare(登録商標)、Magellan、Formality、ESP及びLEDAなどの製品が含まれる。

0102

合成及び試験のための設計(工程1316):このステップでは、VHDL/Verilogをネットリストに変換する。ネットリストは、目的の技術のために最適化することができる。加えて、完成品チップの検査を可能とする試験の設計及び実装を行う。このステップ使用することができるシノプシス社製のEDAソフトウェア製品の例には、Design Compiler(登録商標)、Power Compiler、Tetramax、DesignWare(登録商標)、及びDFTMAXなどの製品が含まれる。一実施形態では、上述の完全に不定値許容性で非常に高いスキャン圧縮技術を工程1416で用いることができる。

0103

ネットリスト検証(工程1318):このステップでは、ネットリストを、タイミングの制約との適合性及びVHDL/Verilogソースコードとの対応について検査する。このステップで用いられうるシノプシス社製のEDAソフトウェア製品の例には、Formality、PrimeTime、及びVCSなどの製品が含まれる。

0104

設計プランニング(工程1320):このステップでは、チップの全体フロアプランを作成し、タイミング及び最上位ルーティングについて解析する。このステップで使用することができるシノプシス社製のEDAソフトウェア製品の例には、Astro及びIC Compilerなどの製品が含まれる。

0105

物理的な実装(工程1322):このステップでは、配置(回路素子位置決め)及びルーティング(回路素子の接続)を行う。このステップで使用することができるシノプシス社製の製品の例には、Astro及びIC Compilerの製品が含まれる。

0106

解析及び抽出(工程1324):このステップでは、回路機能トランジスタレベルで検証し、これにより、what−if解析による改良を可能にする。このステップにおいて使用することができるシノプシス社製のEDAソフトウェア製品の例には、AstroRail、PrimeRail、PrimeTime、及びStar RC/XTなどの製品が含まれる。

0107

物理的検証(工程1326):このステップでは、様々なチェック機能を実行し、製造、電気的な結果、リソグラフィの結果、及び回路構成について正確性を保証する。このステップにおいて使用することができるシノプシス社製のEDAソフトウェア製品の例には、Herculesなどの製品が含まれる。

0108

分解能向上(工程1328):このステップでは、レイアウトの幾何学的な操作を行い、設計の製造可能性を改善する。このステップで使用することができるシノプシス社製のEDAソフトウェア製品の例には、Proteus、ProteusAF、PSMGenなどの製品が含まれる。

0109

マスクデータ準備(工程1330):このステップでは、完成品チップを作成するために使用するリソグラフィのために、マスク作成用の「テープアウト」データを提供する。このステップにおいて使用することができるシノプシス社製のEDAソフトウェア製品の例には、CATS(登録商標)シリーズ製品ファミリが含まれる。

0110

本明細書では、添付した図面を参照して本発明の図示した実施形態を詳細に説明してきたが、本発明は、これらにちょうど一致した実施形態に限られないことを理解するべきである。図示した実施形態は、網羅的であることを目的とはせず、又は開示されたちょうど同じ形態に本発明を限定する目的ではない。そのため、多くの変更及び変形が明らかであろう。

0111

例えば、上述のチップ上の圧縮要素を各々の設計ごとに、例えば、スキャン入力、出力、内部チェイン、及び場合に応じてXチェインに基づいて、個々に最適化することができる。論理的には、比較的小さな設計では、比較的小さなPRPG及びMISR(例えば、32ビット)を用いられうる。一方、大型の設計では、比較的大きなPRPG及びMISR(例えば、64又は100ビットを超えるものも)又はルーティングを容易にするために複数の圧縮回路/展開回路構造も用いられるはずである。PRPG及びMISRの長さは、精密に調整され、データをロード及びアンロードするテスタのサイクル数をバランスさせる。例えば、6スキャン入力、12スキャン出力及び1024チェインの設計を、65ビットのPRPGで構成できるため、PRPGシャドウの長さは66であり、6で割り切れ、ロードする11サイクルの全てのビットを用いることができる。対応するMISRは、60ビットの長さを持ちえて12で割り切れる(出力の数)。

0112

構成に関係なく、テスト印加中の動作は、図5に示す状態図で説明されることに留意すべきである。シードをロードするのとMISRをアンロードするのは、内部シフトと異なるクロック周波数で実行されうることにさらに留意すべきである。この場合、テストシステムのためのハードウェアは変更する必要はない。サイクル「シャドウモード」をどれだけ多く用いるかという閾値が調整される必要がある。スキャン入力及び出力は、1でもよい。まずMISRをアンロードし続いてシードをロードするのに「テスタモード」の1の双方向ビットを用いることさえできる。特に、データ量は、スキャン入力及び出力の数とは独立している。

0113

PRPGシャドウレジスタは、2005年9月27日に刊行され「LogicBISTアーキテクチャにおける決定論的パターンの効果的な圧縮及び印加」と題された米国特許6,950,974号明細書、及び2007年6月26日に刊行され「スキャンチェインの不定値出力に許容性のある決定論的BISTアーキテクチャ」と題された米国特許7,237,162号明細書に記載され、両明細書は参照により組み込まれる。シャドウレジスタの他の構成、例えば記憶素子に対してマルチプレクサの数を変える、を他の実施形態で用いることができる。

0114

したがって、本発明の範囲は、以下の請求の範囲及びその均等物により規定されることが意図されている。

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

  • アズビル株式会社の「 診断装置、二重化システム及び診断方法」が 公開されました。( 2020/10/29)

    【課題】フラッシュメモリの寿命となる時期が想定よりも早いか否かを診断する。【解決手段】 診断装置10は、フラッシュメモリ22における後天性不良ブロック数を取得する取得部32と、取得部32で取得された... 詳細

  • ローム株式会社の「 監視装置」が 公開されました。( 2020/10/29)

    【課題】故障検出率の高い監視装置を提供する。【解決手段】監視装置100は、監視対象(例えばDIN1〜DIN4)の異常検出を行う監視部(例えばコンパレータ152〜159)と、監視部が正常であるか否かを診... 詳細

  • 中華精測科技股ふん有限公司の「 ウェハ検出組立体及びその電気接続モジュール」が 公開されました。( 2020/10/29)

    【課題】本発明は、ウェハ検出組立体及びその電気接続モジュールを提供する。【解決手段】電気接続モジュール3,5は2つのプレートを電気的に接続するために2つのプレートに挟まれる。電気接続モジュール3,5は... 詳細

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ