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

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

Info

Publication number
JP5591886B2
JP5591886B2 JP2012180207A JP2012180207A JP5591886B2 JP 5591886 B2 JP5591886 B2 JP 5591886B2 JP 2012180207 A JP2012180207 A JP 2012180207A JP 2012180207 A JP2012180207 A JP 2012180207A JP 5591886 B2 JP5591886 B2 JP 5591886B2
Authority
JP
Japan
Prior art keywords
xtol
prpg
scan
output
care
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.)
Active
Application number
JP2012180207A
Other languages
English (en)
Other versions
JP2012230131A (ja
Inventor
ホール、ペーター
ワイキュカスキー、ジョン・エー
ヌブー、フレドリック・ジェー
Original Assignee
シノプシイス インコーポレイテッド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by シノプシイス インコーポレイテッド filed Critical シノプシイス インコーポレイテッド
Publication of JP2012230131A publication Critical patent/JP2012230131A/ja
Application granted granted Critical
Publication of JP5591886B2 publication Critical patent/JP5591886B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3177Testing of logic operation, e.g. by logic analysers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318544Scanning methods, algorithms and patterns
    • G01R31/318547Data generators or compressors
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/302Contactless testing
    • G01R31/304Contactless testing of printed or hybrid circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Description

(関連出願)
本出願は、2008年10月21日に出願され「完全に不定値許容性であって非常に高いスキャン圧縮」と題された米国特許仮出願61/107,239号の優先権を主張する。
本発明は、集積回路のスキャンテストに関する。特に、このスキャンテストの際に使用可能な圧縮技術及び構造に関する。
集積回路(IC)における論理設計がより大きく複雑になり、これらのICが故障なく動作することを保証するためのより複雑なテストが必要となっている。このテストは、集積回路(IC)の設計、製造、及びサービスコストのうち大きな部分を占める。単純なモデルでは、ICのテストは、回路の入力部に複数のテストパターンを入力し回路の出力をモニタして故障の発生を検出することを含みうる。故障検出率は、潜在的な故障の母集団において各故障を検出する際のテストパターンの効率を示す。このため、テストパターンのセットが実質的にあらゆる潜在的な故障を検出することが可能ならば、100%に近い故障検出率が達成される。
容易に故障検出率を高めテストコストを最小化するために、DFT(テスト容易化設計)を用いうる。あるDFT技術では、論理設計の構造が用いられうる。具体的には、ICで行われる論理設計は、フリップフロップのようなシーケンシャルな記憶素子等の複数の状態素子(state element)を含む。これらの状態素子を、計算された長さのスキャンチェインへと接続することができ、この長さは設計に応じて変わる。一実施形態では、設計上の全ての状態素子をスキャン可能である。すなわち、各状態素子がスキャンチェインの中にある。スキャンチェイン内の状態素子は、通常スキャンセルと呼ばれる。DFTにおいては、各スキャンチェインは、スキャン入力ピン及びスキャン出力ピンを含み、これらは、テストモード中に制御及び観測ノードとして働く。
スキャンチェインは、スキャンセルを介して所定の論理信号をクロック動作させて(clocking in)ロードされる。このため、最も長いスキャンチェインが500のスキャンセルを含むなら、ロードプロセスを完了するために少なくとも500クロックサイクルが用いられる。実際の実施形態では、ソフトウェアが異なるスキャンチェイン長を補正してその結果、各テストパターンからの出力は、それに従って認識、解析されることに留意すべきである。
スキャンチェインのためのテストパターンを、外部テスト装置を用いて発生することができる。このような装置を用いて、Nのインプット及びスキャンセルを備えた設計に対して2の入力パターンを加えることにより全数入力テストを行うことができる。しかしながら、このテストのアプローチは、インプットの数が増加するにつれて商業的には非実際的となる。
この問題を解決するために、決定論的な自動テストパターン生成(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が、タイミング、作動パラメータ(例えば、電圧及び温度)、又は製造時の欠陥により生じうる。
したがって、複数の挑戦的な目標にも同時に応えることができるスキャン圧縮方法の必要が高まる。
米国特許第7,237,162号明細書
完全に不定値許容性であって非常に高いスキャン圧縮を行うスキャンテストシステム及び技術を提供する。
複数のスキャンチェインを含む集積回路(IC)設計をテストするためのシステムが提供される。このスキャンテストシステムは、2つの疑似ランダムパターン発生回路(PRPG)チェイン及びアンロードブロックを有し得る。第1のPRPG処理チェインは第1のシードを受取り、設計の故障を特定するためのパターンを生成しうる。すなわち、これらのパターンは、複数のスキャンチェインに印加される。第2のPRPG処理チェインは、第2のシードを受取り、不定値許容性の(XTOL)制御ビットを生成しうる。XTOL制御ビットは、スキャンチェインの観測のレベルを決定する。アンロードブロックは、複数のスキャンチェインからスキャン出力を、そしてXTOL制御ビットを受取り、設計を分析するためのテスト出力を生成しうる。
一実施形態では、第1のPRPG処理チェインは、CARE PRPG及びPRPG移相回路を有しうる。CARE PRPGは、第1のシードを受取りうる。CARE移相回路は、複数のスキャンチェインに、展開された出力を与えうる。第1のPRPG処理チェインは、CAREシャドウレジスタも有し得る。CAREシャドウレジスタは、CARE PRPGから入力を受取り、CARE移相回路に出力を供給する。CARE PRPGは、CAREシャドウレジスタを一定値がスキャンチェイン内にシフトされシフト電力を低減するようなホールドモードにする、Pwr_ctrl(電源制御)信号を供給することができる。
第2のPRPG処理チェインは、XTOL PRPG、XTOL移相回路、及びXTOLシャドウレジスタを有し得る。XTOL PRPGは第2のシードを受取りうる。XTOL移相回路は、XTOL PRPGの出力を受取る。XTOLシャドウレジスタは、XTOL移相回路の出力を受取りXTOL制御ビットを供給しうる。一実施形態では、XTOL PRPGは、XTOLシャドウレジスタをホールドモードにするホールド信号を生成するように構成されている。
スキャンテストシステムは、テスタからの入力を受取り、第1のPRPG処理チェイン及び第2のPRPG処理チェインの一方に出力を供給するように構成されたアドレサブルPRPGシャドウをさらに有し得る。CARE PRPG及びXTOL PRPGは、任意のシフトサイクルで必要がある場合にリシードするように構成されている。したがって、スキャンテストシステムは、シフトごとにX制御を行いうるのが好都合である。
一実施形態では、アンロードブロックは、XTOLセレクタ、Xデコーダ、圧縮回路、及び多入力シフトレジスタ(MISR)を有し得る。XTOLセレクタは、内部スキャンチェインの出力を受取る。Xデコーダは、XTOL制御ビットを用いてXTOLセレクタを制御しうる。圧縮回路は、XTOLセレクタの出力を受取りうる。MISRは、圧縮回路の出力を受取りテスト出力を生成しうる。XTOLセレクタ及びXデコーダを完全観測モード、無観測モード、シングルチェインモード、及び複数観測モードのうちいずれか1つを可能とするように構成しうることが好都合である。
一実施形態では、Xデコーダは、2レベルデコードシステム(two-level decoding system)の第1のものを含む。例えば、第1のレベルでは、Xデコーダは、グループごとの(チェインごとのではなく)出力を供給する。第2のレベルでは、各個のチェインでグループからチェインへのデコーディングが実行される。第1のANDゲートがスキャンチェインからの第1の入力を供給され、マルチプレクサはこの第1のANDゲートに第2の入力を供給しうる。第2のANDゲート及びORゲートは、両者ともXTOL制御ビットを受取り、マルチプレクサは、第2のANDゲート及びORゲートのいずれか一方からの出力を選択する。
上述のスキャンテストシステムは、0からほぼ100%の任意のX密度に適用でき、最適化されたATPGと同じ検出率で非常に高い圧縮を行うことができると好都合である。1のスキャン入力及びスキャン出力と同じくらい少ない入力及び出力が規定されうる。設計論理は、変更されないままであるため、上述のスキャンテストシステムを容易に組み込むことができれば好都合である。
ケアビットをCARE疑似ランダムパターン生成回路(PRPG)にマップする方法も提供されている。この方法は、全てのケアビットが1のシードにマップ可能な、シフトの最大ウィンドウを決定することを有する。最大ウィンドウを決定することは、シフトサイクルによりケアビットをソートすること、及び各シフトサイクルについて最大ウィンドウを算出しウィンドウ内のケアビットの総数があらかじめ算出された制限を超えないようにすることを含みうる。ウィンドウ内の全てのケアビットが単一のシードにマップ可能である場合、その単一のシードをCARE PRPGにロードすることができる。全てのケアビットを単一のシードにマップできない場合、ウィドウは、直線的に減少する。
不定値許容性(XTOL)制御ビットをXTOL疑似ランダムパターン生成回路にマップする方法も提供されている。この方法は、全てのXTOL制御ビットが単一のシードにマップ可能であるシフトの最大ウィンドウを決定すること、及び最大ウィンドウの最適な開始を決定することを有する。完全観測モードについては、この方法は、XTOL enableビットをオフにするという第1の選択肢と、XTOL enableビットをオンのままにするという第2の選択肢とのいずれがよいかを決定することと、良い方の選択肢を選択することをさらに有し得る。
スキャンテストについて観測モードを選択する方法も提供されている。この方法は、観測モードと関連したモードのメリット(mode merits)を初期化することを有し得る。各シフトについて、不定値(X)を残す(let through)観測モードを除去しうる。加えて、スキャンテストの主な目標を検出できない任意の観測モードも除去しうる。2次故障について、モードのメリットを観測された2次的な目標の数に基づいて増加させうる。各シフトについて、シフトについての最善の観測モード及び2番目に最善の観測モードをモードメリットの合計に基づいて決定しうる。結果として決定される観測モードはXTOLシードにマップしうる。観測モードは、完全観測、無観測、シングル観測、及び複数観測(そしてこれらの補完を含みうる。
オンチップの圧縮回路及び展開回路を備えた単純化されたスキャンテストシステムを示す。 完全に不定値許容性となるように構成されたスキャンテストシステムを示す。 CAREシャドウレジスタをさらに有する図2Aのスキャンテストシステムを示す。 PRPGシャドウレジスタの一例を示す。 XTOL PRPGのセル、及びXTOL移相回路及びXTOLシャドウレジスタの対応するセルの一例を示す。 CARE PRPGのセル、及びCARE移相回路及びCAREシャドウレジスタの対応するセルの一例を示す。 テスタ及びATPGパターンに関連する波形の一例を示す。 圧縮されたパターンを印加する状態図の一例を示す。 最小数のXTOL制御ビットを用い観測可能性を最大化させて効率よくXを阻止しうるアンロードブロックの一例を示す。 Xデコーダで用いられる2レベルデコーディングブロックの一例を示す。 複数観測モードにおいて様々なグループ分けを用いることを表すグラフを示す。 XTOLセレクタ特性の2つの尺度を表すグラフを示す。 ケアビットをCARE PRPGシードにマップするマップ技術の一例を示す。 観測モード選択技術を示す。 XTOL制御ビットをXTOL PRPGシードにマップするマップ技術の一例を示す。 説明した適応性のあるスキャン圧縮技術を含むデジタルASIC設計フローを簡単に表示したものを示す。
図1に、単純化された従来のテストシステム100を示す。テストシステム100は、テスタからの入力(すなわちシード)を受取るロード展開回路101、ロード展開回路101により生成されたスキャンビットを受取るための複数のスキャンチェイン102、スキャンチェイン102からのスキャン出力を受取るためのアンロード圧縮回路104を有する。一実施形態では、ロード展開回路101は、疑似ランダムパターン発生回路(PRPG)を有しうる。決定論的ATPGで計算された値をテスタから繰返しリシードされるPRPGは、ロードデータを非常に高く圧縮することができ好都合だからである。決定論的ATPGで計算されたロード値をPRPGの状態として「エンコード」し(すなわち「マップ」し)、全てのケアビットがPRPGのシードで適切にロードされるようにする。典型的な実施形態では、複数のテストパターンを各PRPGのシードから発生することができる。
故障検出のために必要なケアビットに加えて、ロード展開回路101は、X制御ビットも出力することができ、X制御ビットは、制御ライン103を介してアンロード圧縮回路104に入力される。アンロード圧縮回路104は、いくつかのXがある場合にはエラー検出を行うことができるが、Xが増えると、過剰なXをロード展開回路101から来るビットで制御しないと検出率が低下する。とりわけ、加えられたXTOL制御ビットが、Xが制御されなかった場合に必要とされる出力ビットよりも少ないならば、X制御ビットを加えると実際に全圧縮データ量を減少させることができる。
しかしながら、どのX制御ビットが必要とされるのか決定することは困難である。テスト印加時間を減少させるため、スキャンパターンのロードを、前のアンロードと重複させることができる。したがって、ロード展開回路101は、前のアンロードのためのX制御ビットだけではなく、(スキャンチェイン102に与えられている)現在のパターンのためのロードケアビットを同時に供給し、過剰なXにより検出率の低下又はパターンカウントが受入れられないほど増加することが生じないようにしなければならない。
不都合なことに、X制御ビットは、通常のスキャンATPGのフローでは非常に後になるまで分からない。すなわち、ロードケアビットが前のM(例えば、32)パターンに代えてセットされ、この時ロード展開回路101内のコンフリクトの結果満足できない状態が生じうる時になって初めてX制御ビットが分かる。前のパターン情報をスキャンセルごとに記憶することができどのセルが監視のためのX制御を必要としそうか予測することに留意すべきである。しかしながら、この記憶のためには、さらにメモリ及びCPUの作動が必要とされる。さらに、予測が失敗した場合、追加の(padding)パターンが必要になりえてこのパターンはテストデータとサイクルとの両方に加えられて不都合である。一実施形態では、X制御ビットを内部チェインのロードごとに1つのセットに制限することができる。すなわち、X制御ビットは、全てのシフトサイクルに対して不変であり、Xをマスクしすぎてしまう可能性があり、この結果パターン数が、検出率が100%になるまで増加してしまうという不都合がある。
図2Aに示すスキャンテストシステム200の一態様によれば、シフトごとのXビットの制御を行い、ロードケアビットとのコンフリクトを回避するように2つのPRPGが用いられうる。この最適化を行なうために、ケアビットPRPG(CARE PRPG)202は、ケアビット(及びドントケアビット)を発生させることができ、別個の不定値許容(X−tolerant)PRPG(XTOL PRPG)206がXTOL制御ビットを発生させることができる。PRPGシャドウレジスタ201がテスタからシードを受取りCARE PRPG202又はXTOL PRPG206の一方のために適切なシードを発生させることができることに留意すべきである。
図3Aにマルチプレクサ331及びフリップフロップ332を有する単純化されたPRPGシャドウレジスタ330を示す。複数のマルチプレクサ331は、同一の制御信号Mux_cotrolにより制御され、動作可能な場合に前のセルから及びテスタからシードを受取る。フリップフロップ332は、同一のクロック(簡単のため図示せず)によりクロック制御を受け、前のセルのフリップフロップ332の出力又は前のセルのマルチプレクサ331の出力を受取る。米国特許第7,237,162号明細書には、PRPGシャドウレジスタの構成例がさらに詳細に記載されている。PRPGシャドウレジスタ300の出力、すなわちXTOL enable及びCARE PRPG又はXTOL PRPGの一方のためのビットは、フリップフロップ332により与えられる。
図2Aを再び参照すると、CARE PRPG202は、その出力を移相回路203に与え、移相回路は入力よりも多くの出力を行いうる。この結果、CARE PRPG202及びCARE移相回路203は、組合せでケアビット(及びドントケアビット)のロード展開を行いうる。対照的な構成として、XTOL PRPG206は、その出力をXTOL移相回路207に行い、XTOL移相回路は、出力よりも多くの入力を行いうる。
PRPGは、事実上、所定のフィードバックに関する構成を備えた移相回路であることに留意すべきである。したがって、PRPGの隣接するセルは互いに依存する。すなわち、第1のセルの下流にある第2のセルは、1クロック前に第1のセルにより記憶されていた値を記憶しうる。移相回路は、通常、所定のセルからの入力を受けるXORゲートを用いて実行され、PRPGの隣接するセル間の線形従属性(linear dependency)を減少させ、故障検出がPRPGの線形依存性により受ける制限は最小限となる。PRPG及び移相回路の様々な構成は、ICテストの当業者にとって既知であるので本明細書では詳細に説明しない。
一実施形態では、PRPGシャドウレジスタ201は、XTOL enableビット(1ビットレジスタに記憶することができる)を与え、アンロードブロック205における不定値許容性をオフにする。enableビットをオフにすると、X制御を必要としない隣接するシフトサイクルのウィンドウに対するXTOL PRPGビットが必要なくなることにより圧縮されたデータ量を減らすことができる。XTOL PRPG206は、シフトし続けるが、アンロードブロック205に対するXTOL PRPGの制御は、XTOL enable信号により不可能となる。enableにされると、XTOL PRPG206は、シフトごとのX制御をアンロードブロック205に行う。
一実施形態では、XTOL enableビットを、CARE PRPG202又はXTOL PRPG206の一方にリシードされた場合だけ変更することができる。したがって、XTOL Enableビットにより、非常にXの密度が小さい設計ではXTOLビットは大きく減少しうるが、XTOL Enableビットは比較的粗い制御を行う。Xの密度が中くらい及び密度が高い場合にXTOLビットをさらに減少させるには、精密な制御も行うことができる。特に、多くの設計ではXの分布は極めて不均一であり、その結果、XTOL制御ビットが隣接するサイクルで再使用されうる(そして、ATPGにより生成されたパターンは、再使用に適するように調整される)。したがって、一実施形態によると、XTOL PRPG206の専用チャネルはXTOLシャドウレジスタ208にホールドビットを与えうる。このホールドビットにより、XTOLシャドウレジスタ208内のXTOL PRPGデータは不変に保たれる。
XTOLシャドウレジスタ208がアンロード圧縮回路205に一定のXTOL制御ビットを与える間、XTOL PRPG206は、XTOL制御ビットの新しいセットが必要とされる次の状態に進みうることに留意すべきである。一実施形態では、XTOLシャドウレジスタ208を制御するためにXTOL移相回路207からシフトあたり1つのビットが必要とされる。
上述の通り、XTOL移相回路207は、入力よりも出力が少ないほうが好都合である。したがって、XTOL移相回路207の出力にXTOLシャドウレジスタ208を配置すると(XTOL PRPG206の出力に配置する代わりに)、結果としてずっと小さなシャドウレジスタとなる。一実施形態では、XTOL制御ビットの数は、およそlog(#スキャンチェイン)である。さらに、XTOL PRPG206からアンロードブロック205への長い組合せの経路は、XTOLシャドウレジスタ208をXTOL移相回路207の後ろに配置することにより大きく低減される。
図3Bに、XTOL PRPG206のセル及びそれに対応する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セルに信号を与える。
XTOL移相回路のセル320は、XORゲートを有し得る。このゲートは、入力として少なくともマルチプレクサ312の選択された出力を受ける。一実施形態では、移相機能を行うために、このXORゲートは他のXTOL PRPGセルからの少なくとも1つの他のマルチプレクサの出力も受けうる。図3Bに示す各位相回路のチャネルは、移相回路の出力を生成するために用いられるセルが独特の結合をしていることに留意すべきである。各結合のためのセルの選択は、当業者には既知であるため、本明細書ではさらに詳細には説明しない。
一実施形態では、XTOLシャドウレジスタのセル302は、入力としてセル320の出力及びフィードバック信号を受取るマルチプレクサ322を有し得る。一実施形態では、これらのいずれのビットを選択するかは、テストにより生成されたXTOL shadow_transfer信号とORをとった!Hold信号(Hold信号の反転)により決定される。具体的には、一実施形態では、XTOL shadow_transferがオンである又はホールドでないときに、マルチプレクサ320がXTOL移相回路セル320の出力を選択する。マルチプレクサ322は、ホールド時に記憶装置323からのフィードバックを選択する。
セル302は、クロック制御された記憶装置323をさらに有し得る(例えば、Dタイプ フリップフロップ)。この記憶装置は、マルチプレクサ322の選択された出力を受けて、Xデコード信号を与える。このXデコード信号は、マルチプレクサ322への入力として与えられたフィードバック信号であることに留意すべきである。記憶装置313、323を、同一のクロック信号すなわちXTOLPRPGclkにより制御しうることにさらに留意すべきである。
この構成では、マルチプレクサ322がXTOLシャドウにデータを保持するか、又はXTOL PRPG206からXTOLシャドウレジスタ208へのデータを取得する再循環マルチプレクサとして機能しうることは好都合である。一実施形態では、PRPGシャドウ入力がマルチプレクサ312により選択された場合、XTOL移相回路320からの入力はマルチプレクサ322により選択される。さらに、前のPRPGセル入力がマルチプレクサ312により選択された場合、移相回路のセル320の出力はマルチプレクサ322により選択され、又はHold信号に応じて323の出力が選択される。XTOL制御(XTOL-controls)の新しいセットでXTOLシャドウをすぐにリフレッシュするためには、XTOL移相回路入力はXTOL PRPGセルの入力から取られる(PRPGセルの出力に接続された移相回路の従来の構成と異なる)。
中間のXTOL PRPGセル301が示されているが、最初及び最後のXTOL PRPGセルは以下の例外を除いて同様の構成を有していることに留意すべきである。具体的には、最初のXTOL PRPGセルは、前のXTOL PRPGセルからの入力を受ける代わりに、最後のXTOL PRPGセルの出力を受けるマルチプレクサ312を有する。そのため論理的には、最後のXTOL PRPGセルは、次のXTOL PRPGセルに出力を行う代わりに、最初のXTOL PRPGセルに出力を行う記憶装置313を有している。
図2Bに示す一実施形態では、CAREシャドウレジスタをスキャンテストシステム200に持たせることができる(図2A)。図3CにCARE PRPG202のセル及びその対応するCAREシャドウ1001のセルの一例を示す。一実施形態では、CARE PRPGのセル350は入力として、前のCARE PRPGセルからのビットだけでなく、PRPGシャドウ(例えば、PRPGシャドウ201、図2A)からのビットを受取るマルチプレクサ342を有し得る(選択的なXOR341により示されるように、XORゲートは前のXTOL PRPGセルの出力を生成しうる)これらのビットのいずれを選択するのかは、テスタにより生成されるshadow_transfer 信号により決定される。セル350は、クロック制御された記憶装置(例えば、D−フリップフロップ)343を有し得る。この記憶装置は、マルチプレクサ342の選択された出力ビットを受けて次のCARE PRPGセルに信号を与える。
全てのCARE PRPGセルのうちのサブセットを電源制御信号を生成するために用いうることに留意すべきである。例えば、図3Cに示されているように、マルチプレクサ342の出力及び少なくとも1つの他の同様の出力を移相要素344に与えることができる。一実施形態では、移相要素344はXORゲートを有し得る。移相要素344の出力は、Pwr Ctrl信号である。
一実施形態では、CAREシャドウレジスタのセル351はマルチプレクサ346を有しうる。このマルチプレクサは、入力としてマルチプレクサ342の出力及びフィードバック信号を受ける。一実施形態では、これらのビットのうちいずれを選択するかは、!Pwr enable信号(すなわち、Pwr enable信号(これはテスタにより与えられ1ビットレジスタ等に記憶される全体的な(global)電源信号)の反転)、!PWr Ctrl信号、及びCARE shadow_transfer信号(これはテスタにより生成される)のORをとることにより決定される。
セル351は、クロック制御された記憶装置347(例えば、Dタイプフリップフロップ)をさらに有し得る。この記憶装置は、マルチプレクサ346の選択された出力をうけてCARE移相回路203の対応するセルに出力を与える。この出力はマルチプレクサ346への入力として与えられるフィードバックであることに留意すべきである。記憶装置343、347は同一のクロック信号すなわちCAREPRPGclkにより制御され、この信号は、クロック制御された記憶装置347に対しては反転されることにさらに留意すべきである。
一実施形態では、Pwr enable信号が0であるならば、Pwr control信号及びCARE shadow_transfer信号は無視され、CAREシャドウセル351はCARE PRPGセル350の内容をマルチプレクサ342による出力としてコピーする。しかしながら、もし、Pwr enable信号が1であるならば、Pwr ctrl信号及びCARE shadow_transfer信号は、CAREシャドウセル351が現在の値を保持するか、CARE PRPGセル350から新しい値をクロック動作させていれる(clocks in)かを決定する。CARE PRPGセル350及びCAREシャドウセル351のこの構成により、スキャンチェイン内に反復値をシフトさせることにより大きな電力削減が行われる。具体的には、ケアビットと電力とをトレードオフするために任意のドントケアシフトを用いることができる。
図2Aに戻ると、PRPGシャドウレジスタ201を任意のオーバラップを持ったアドレサブルシャドウ(addressable shadow with arbitrary overlap)として特徴付けることができる。具体的には、PRPGシャドウレジスタ201は、CARE PRPG202のための次のCAREシード、又はXTOL PRPG206のための次のXTOLシードをロードできるのが好都合である。特に、このロードはスキャンチェイン204の値をシフトするかホールドする間に実行することができこのため内部のシフトサイクルと任意に重なったリシードサイクルが可能となる。この結果、リシード周波数はシードをロードするのに必要なサイクル数に限定されない。PRPGシャドウ201の内容は、続いて1サイクルでCARE PRPG202又はXTOL PRPG206の一方に転送されうることが好都合である。
最適化されたスキャンATPGは、各パターンによりテストされる複数の故障をマージすることによりパターン数を大きく低減することができる。まず、マージすることは非常に効果的であり、各パターンは、多数のケアビットを用いて多数の故障をテストする。引続いて生成される各テストパターンでまだテストされていない故障の数が減少するにつれてパターンごとに故障をマージする可能性が急速に減少する。そのため、パターンごとに用いられるケアビットはますます少なくなる。ケアビットはシードにマップされるため、初期のパターンでは多くのシードが必要とされ、後のパターンで必要とされるシードはますます少なくなる。一方、テスタは、ロードごとに一定のビット数を供給するように最適化されている。
PRPGシャドウ201は、テスタから繰返しシードを供給されえて所望の決定論的テストをえる。代わりに、PRPG202、206は、テスタデータのストリームを連続して受けることができ(全てのテストサイクルでは、PRPGシャドウ201に記憶することができるビット総数のサブセットが与えられる。すなわちインクリメンタルリシード)所望のケアビットが生成される。しかしながら、設計によってはケアビットのホットスポットを持ちうる。すなわち、多くのテストパターンのために非常に多くの数のケアビットが必要とされる領域である。テスタのバンド幅が限られているため、PRPGの各シフトサイクルには少数のデータしか与えることができず、全てのケアビットを満足させるためには不十分でありうる。この場合には、スキャンチェイン204のロードを複数のサイクルの間停止すべきである。
したがって、一実施形態においては、PRPGシャドウ201をリシードすることができ、パターンバウンダリにわたるストリーミングデータに由来する複雑さが回避される(すなわち、インクリメンタルリシードを扱うことは、新しい完全なシードで動作するよりも極めて複雑でありうる)。さらに、ロード間の独立性を維持するために、各パターンロードを完全なCARE PRPGのロードで開始することができる。各シフトで使用できるケアビット数を最大化するために、必要な場合にリシードをスキャンチェイン204のシフトをストップさせる機能と組合せることができる。一実施形態では、新しいシードを(必要ならば)各シフトごとにロードすることができ、それによりテスタのバンド幅と独立にPRPGシャドウ201への値の供給を最大化する。
この結果、PRPG201をリシードする観点から、CARE PRPG202又はXTOL PRPG206を必要ならば任意のシフトサイクルでリシードすることできる。必要ならば、CARE PRPG202及び/又はXTOL PRPG206をリシードしている間、スキャンチェイン204のシフトを停止することができる。PRPGシャドウ201及びスキャンチェイン204のシフトのこのオーバラップを、ATPGにより決定することができる。
一実施形態では、CARE PRPG202及びXTOL PRPG206は同一長であるため、テスタロード(シード)は同量のデータを有している。上述したように、PRPGシャドウ201は、XTOL enableビットを有するため、PRPGシャドウ201は、CARE PRPG202又はXTOL PRPG206の一方よりも1ビット長くなりうる。PRPGシャドウ201の内容が(パラレルにCARE PRPG202又はXTOL PRPG206の一方に転送される場合、XTOL enableビットがセットされ次のシャドウからの転送まで不変に維持されることに留意すべきである。
特に、シードは必要な場合だけロードされる。テスタにとって各リシードはサイズが固定されたロードである。内部的には、1つ以上のシードが内部のロード/アンロード動作を制御する。図4に、テスタ及びATPGパターンと関連した波形400の一例を示す。
波形401は、テスタからPRPGシャドウがロードされるのを表す。波形402は、ATPGパターンのロードに基づきスキャンチェインがシフトするのを表す。これらの波形が示すように、シードをロードするサイクル数が4であるならば(波形401により示される)、パターンの最初の4サイクルはシードをロードし(サイクル410を見よ)、続いて内部のチェインは2サイクルシフトし(波形402により示される)、第2のシードがロードを完了するまでさらに2サイクル待機する。続いて、内部のシフトが再開し、2サイクル後に3番目のシードが内部の(すなわち、スキャンセル)シフトとオーバラップしたロードを開始する。この実施形態では、テスタは4つのロードの後に転送を行う同じパターンを行う、すなわちテスタサイクルを反復する(サイクル411に示される)。内部のロードでは、複数のシードが必要とされえて、外部の様子に独立して、速い又は遅いクロックを用いることができる。
図2に戻ると、スキャンテストシステム200は、3つの圧縮技術を同時に用いる。第1に、CARE PRPG202は必要な回数だけシフトごとにでもリシードされうるため、テスト生成はパターンごとに複数の故障をマージする。シード内に密度の高い数少ないパターンをエンコードすると(1つのパターンに複数のシード)、多くの密度の低いパターンをエンコードするよりデータ総量は小さくなる。このように、ATPGが、1パターン中の複数の故障のためにケアビットを「再使用」しうるのは好都合である。第2に、PPRPGのケアビットのエンコードでは非常に高いデータ圧縮が行われうる。特に、CARE PRPG及びXTOL PRPGが別になっていると、CARE及びXTOL両方の制御ビットの圧縮が独立に最適化される。第3に、テスタの反復サイクル(repeat cycle)を付随的な負担のない(no-overhead)スタンドアロンのロードデータ圧縮技術として用いることができる。一実施形態では、テスタの反復を、リシードが進行していない場合に、スキャンチェイン204の値をシフトさせるのに用いることができる。
図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に転送される。
「PRPGへのシャドウモード」502にある場合、次の状態として3つの可能性がある。他のシードがすぐに必要とされるならば(例えば、最初のCAREシードの後のXTOLシード)、再び「テスタモード」501に入る。他のシードが数サイクル後で必要とされるならば、「シャドウモード」504に入ることができる。最後に、数サイクルでは他のシードが必要とされないならば、「自律モード(Autonomous Mode)」503に入ることができる。
他のシードが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シャドウの内容を転送する。
現在のパターンで他のシードが必要でない場合又は他のシードが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に続く。
多入力シフトレジスタ(MISR)は、理論的には非常に高いアンロード圧縮を行うが1つのX値があるだけで使い物にならなくなりうる。設計から全てのXを除去するために積極的なDFT(テスト容易化設計)が用いられうるが、そのためのコストは受入れがたいものになりえ、動的なXが依然として生じうる。既知の技術では、全てのXはMISRの前で阻止されうるもののこの阻止を制御するために入力データが大きく増加し、阻止が粗すぎるために観測可能性が落ちるという代償がある。他の既知の技術では、不定値の各々とそれ自身とのXORをとることによりMISRからXを周期的に除去することができる。この技術では、Xの密度が高い場合大量の入力データが必要とされる。さらに他の既知の技術では、MISRのフィードバックを取去り代わりに出力データを連続的に観測することによりMISR中のXの寿命を抑制しえて、その結果、幾分かの不定値許容性と交換に圧縮率が減少する(不定値許容性は、より多くの入力データを用いてXを阻止することにより高められうる)。さらに他の技術において、MISRの代わりに組合せ圧縮(combinational compression)では出力データのストリームを観測することが必要となるが、不定値許容性のために圧縮率が犠牲となる。
一実施形態では、シフトごとの不定値許容性(上述した)の正確な制御をMISRで実現される非常に高い圧縮と組合せることができる。図6に、最も少ない数のXTOL制御ビットを用いて観測可能性を最大限にすることにより効率的にXを阻止することができるアンロードブロック205の一例を示す。一実施形態では、アンロードブロック205は、Xデコーダ601、XTOLセレクタ602、圧縮回路604及びMISR606を有し得る。XTOLセレクタ602は、スキャンチェイン204から入力を受けて出力を圧縮回路604に与えうる。XTOLセレクタ602は、Xデコーダ601により制御されうる。Xデコーダ601は、XTOL制御信号(シフトごとに変化しうる)及びXTOL enable信号(リシードごとに変化しうる)を受取りうる。
一実施形態では、圧縮回路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)が用いられる)。どのセットの移相要素が各論理出力数を受取るのかを決定することは、テストの当業者に既知であり、本明細書では説明しない。
一実施形態では、MISR606を「テストモード」501(図5)における全てのテストパターンの後でアンロードし、アンロードされた時に0にリセットすることができる。別々のスキャン入力ピン及び出力ピンが使用可能ならば、MISRのアンロードをシードのロードとオーバラップさせることができテスタサイクルを最小化しうる。不合格エラーシグナチャ(failing error signature)を解析して不合格パターンの分析を行うことができる。代わりに、ユーザは、パターンセットの終わりでだけMISR606をアンロードすることを選択し、高いデータ圧縮を行うことができるが、直接診断サポート(direct diagnosis support)を行うことができない。
XTOLセレクタ602を次のモードをサポートするように構成することができる。すなわち、完全観測モード、無観測モード、シングルチェインモード、及び複数観測モードである。完全観測モードをXのないシフトで用いることができ、完全観測モードは可能な場合には好ましい。オフ状態のXTOL enable信号により、複数のリシード間で完全観測が可能となる(XTOLenable信号を変えることができる場合)。XTOL制御ビットの数を最小にして、オン状態のXTOL enable信号の場合の完全観測をやはり選択しうることに留意すべきである。Xチェイン(すなわち1つ以上のXを含むスキャンチェイン)は、もし構成されるならばこのモードでは観測されない(Xチェインは、「スキャン圧縮のXチェインを用いた増加」と題され2008年9月30日に出願された米国特許出願12/242,573号に詳しく記載されている)。無観測モードを、全てのMISR入力が阻止されなければならないシフトに対して用いることができる。Xの多い複数の設計ではこのモードが比較的多く用いられるため、XTOL制御ビットを少なくしてこのモードを選択可能でなければならない。
シングルチェインモードを、目的のセルが観測されるシフトについて単一の内部チェインを観測するために用いることができる。このモードはXチェインを観測できる唯一のモードであり、完全な不定値許容性を有することが好都合である。すなわち、他のいくつのセルがXであっても任意のセルを観測することができる。通常の設計では内部チェインの数が大きいため、単一のチェインを選択するには多くのXTOLビットが必要とされる。したがって、このモードは控えめに用いるべきである。
複数観測モードを各設計に対してカスタマイズできる。このモードでは、複数のスキャンチェインの様々なサブセットを観測することができる。したがって、複数観測モードは、シングルモードと完全観測モードとの間の中間領域を受持つ。このモードの選択は、スキャンチェインの指定されたサブセットを選択するために可能な限り少ないビットが必要とされるようにコード化(coded)することができる。
一実施形態では、Xが圧縮回路604を通過しない場合のみXTOLセレクタ602のためのモードを選択することができる。シフトごとに1つのXTOLビットを用いる、隣接するシフトサイクルに対して任意のモード選択を反復することができる。複数観測モードを全てのグループで同じスキャンチェインが2つ一緒にならないようにして構成することができ、この結果スキャンチェインの1つにXがあっても他のスキャンチェインを観測するための全ての複数観測モードを選択することに差し障りがでない。
複数観測モードを作るためには、非Xチェインのセットに2以上の分割を定義する。各分割にはセット全体が含まれる。グループは各分割内で相互に排他的に定義され、各チェインが各分割のうちぴったり1つのグループに属するようにする。さらに、各チェインは、1分割あたり1グループとした場合に複数グループからなる唯一のセットにあるため、分割あたりのグループ数の積は、少なくともチェインの数と同じでなければならない。任意のグループ又はその分割に関する残りのグループ(complement)を、複数観測モードで選択しうる。
複数観測モードによる簡単なチェインの分割わりを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)を観測など)
他のより現実的な設計例では、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)。
任意の1チェインを選べるようにするには、レイアウトに特別な注意が必要である。Xデコーダがその入力を完全にデコードし個々のチェインを阻止(blocking)する単純な実装では、配線が多くなりすぎる。特に、図7により詳細に示されるデコーディングブロック700により配線効率のよい構成が行われる。
一実施形態では、ブロック700は、スキャンチェインの出力及びマルチプレクサ702からの出力を受けるANDゲート701を有し得る。マルチプレクサ702は、(共用論理703と称される)2つの論理ゲート(すなわちORゲート704及びANDゲート705)からの出力を受け得る。ANDゲート701は、専ら図示目的のため、マルチプレクサ702及び共用論理703から離して示されている。各スキャンチェイン711は対応するデコーディングブロック700を1つだけ持つ。隣接するスキャンチェインはデコーディングの第2レベル(すなわち、共用論理703)で幾つかの論理を共有できてよい。この共有は、デコーディングの当業者には既知であるため、本明細書では説明しない。このように、デコーディングブロック700は、論理的実装を表しているが、物理的な実装は異なっていてもよい。
論理ゲート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への唯一の制御として働くことに留意すべきである。
さらに説明するために簡単な例を示す。シングルチェイン制御がオンならば、任意のスキャンチェインはシングルチェインモードで観測されうる。シングルチェイン制御がオフならば、スキャンチェインは他のモードで(すなわち、完全観測、非観測、複数観測)で観測されうる。ORゲート704及びANDゲート705への共有入力は、スキャンチェインが属する4つのグループである(上述の分割の仕方を参照)(すなわち、各スキャンチェインは、1つが1の区切りにある正確に4つのグループの一員であろう。)
完全観測モードでは、XTOL enableは0(オフ)であり、シングルチェイン制御信号は0(すなわち、シングルチェイン制御ではない)であり、Xデコーダ601の残りの30の出力は1であろう。図7に示すように、シングルチェイン制御信号が0であるならば、全てのマルチプレクサ702は、ORゲート704の出力を選択する。ORゲート704への全ての出力が1であるならば、マルチプレクサ702は、1のみ出力する。これらの1はANDゲート701に入力され全てのスキャンチェインを観測することができる。
一方、XTOL enableが1であるならば、XTOL制御信号は観測モードを決定するのに用いられる。例えば、無観測モードでは、シングルチェイン制御信号は、0であり、Xデコーダ601の残りの30の出力も0である。マルチプレクサ702は、この場合もORゲート704の出力を選択し、ORゲートはこの場合0を出力する。ANDゲート701に0が入力されると全てのスキャンチェインの値が阻止される。
シングルチェインモードでは、シングルチェイン制御信号は1である。このため、マルチプレクサ702は、ANDゲート705の出力を選択する。Xデコーダ601の残りの30の出力のうち、4つは1であり、他の26は0であろう。特に、4つの1を受取る唯一のスキャンチェインがあるであろう。すなわち、観測のために選択されたスキャンチェインである。
複数観測モードでは、シングルチェイン制御信号は0である。このため、マルチプレクサ702は、ORゲート704の出力を選択する。Xデコーダ601の残りの30の出力のうち、いくつかは0であり、他は1であろう。ORゲート704への4つの入力のうち少なくとも1つの入力が1であるならば、対応するスキャンチェインは観測される。
複数観測モードにおけるグループ分けの特性を、シフトごとX数の関数としてのチェイン観測の可能性を計算することにより分析評価することができる。1024のチェインに対する結果を図8及び図9に示す。最も高い観測可能性、すなわちXのないモードが各場合に選択された。したがって、Xがない場合に完全観測が選択され、1つ又は数個のXに対して15/16モードのうち1つが選択され、7/8モードが選択され、続いて3/4、1/2、1/4、1/8及び1/16が選択された。
図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がある場合周辺の非常に狭い領域でしか使用可能でないが、これは実際の設計では、非常によく生じる状態であるため補完モードは最もよく用いられる。
図9にXTOLセレクタの特性を示す2つの尺度を示す。第1の曲線901は、観測されたチェイン数の平均を示し、X数が増加するにつれて急速に減少している。特に、シフトごとにXが6個ある場合、20%のチェインが依然として観測されえて、シフトごとのXが19個までは10%のチェインが依然として観測されうる。この観測可能性は、以前の解決方法で可能であったよりもずっと高いことに留意すべきである。例えば、観測されたチェインの平均は、圧縮回路又はセレクタの組合せでは一般にわずか3%程度である。
図9における第2の曲線902に、観測可能なチェイン、すなわち複数観測モードでいくつかの他のチェインにXがある(some other chains are at X)場合に、必ずしも一度にではないが観測することができるチェインの割合を示す。観測可能なチェインは、重要である。複数の設計において、Xは大半のパターンについてXとなるセルに集中する傾向があるからである。ATPGが全てを同一のパターンよってでなくても他のチェインを効果的に観測して故障検出することは重要であり、XTOLビットコストが高いシングルチェイン観測を用いる必要がないことは重要である。第2の曲線902に示すように、シフトごとのX数が大きくても高い観測可能性を維持することができる。例えば、シフトごとのXが15個であっても50%の観測可能性を依然として維持することができる。
続いて、テストパターンをCARE及びXTOLのシードに最適化及びマップするように変更されたATPGプロセスを説明する。図10にケアビットをCARE PRPGシードにマップするマップ技術1000の一例を示す。技術1000では、各パターンについて、テスト発生回路は、所望のケアビットを記憶する。ケアビットは、1次故障又は2次故障(primary or secondary faults)に必要であればフラグがたつ(flagged)。シフトごとのケアビット数のカウントは続けられる。2次故障のマージは、1回のシフトで変化させることができる(that can be satisfied)ビットの最大数により制限され、CARE PRPGから小さなマージンを除いた長さに等しい。ケアビットのリストが技術1000では用いられ、この技術は、パターンごとに必要なCAREシードを算出し記憶する。
マッピング技術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)。
ウィンドウ内の全てのケアビットを1つのシードにマップできるのでなければ(1004)、end_shiftは依然としてstart_shiftより大きいと仮定して(1008)、ウィンドウは直線的に減少し(end_shift−−)、結果として生じたケアビットをシードにマップすることが試みられる(1003)。まれなケースでは、end_shift>start_shiftが真でない時点では、1シフトのケアビットでさえもシードにマップすることができない。この場合には、シードにマップすることができるケアビットの総数を決定するため二分探索法が実行される(1009)。探索中の全ての段階でケアビットの線形システムのための解が求められる。1次故障のためにフラグがたった(flagged) ケアビットがもしあるならば、2次故障ケアビットよりも高い優先順位を与えられる。1次故障は、テスト生成回路により再び目標とされないからである。
シードから計算されたPRPGの値はスキャンチェインにロードされ故障シミュレーションが実行される。ケアビットがドロップした(dropped)ために検出されなかった2次故障は、将来のパターンで再び目標にされる。
M(例えば、32)パターンが生成されて各々がCAREシードにマップされた後に、シミュレーションを実行することができ、スキャンセルが目標とされた故障をキャプチャすると共にセルがXをキャプチャしたCARE PRPGからロードされた値に基づいて決定する。この情報を続いて各パターンでXTOLシードを計算するために用いることができる。図11に観測モード選択技術1100を示す。特に、あらゆるパターン及びあらゆるシフトについて次のようにモードが選択されなければならない。すなわち、1つのXも許容されない、対象となる1次故障はもしあれば観測される、可能な限り多くの2次故障も観測される、可能な限り多くの対象とならないセルが観測される、可能な限り少ないXTOLビットが必要とされる。
全てのパターンについて、各モード(完全観測、無観測、シングル、複数、それらの補完)は最初にその観測可能性に比例しどれだけ多くのXTOL制御を選択する必要があるかに反比例するメリット値を割当てられる。一実施形態では、小さなランダム成分も加えられ、Xが同様に分布した、異なるパターンに対して異なるモードが選ばれるようにし、この結果、全ての観測可能なチェインを偶然に観測できるようにする。この時点では、モードのメリット値は全てのシフトに対して同一であることに留意すべきである。
続いて、各シフトに対して、X値をもつ(at X)1つ以上のセルを選択するモードは、そのシフトについては考慮から除外される(1102)。主要な目標故障を観測するシフトについては、目標故障の観測セルを観測しない全てのモードは除外される(1103)。任意のシングルチェインを観測することができることにより、少なくとも主要な目標は常に観測可能であることに留意すべきである。続いて、観測された2番目以降の目標セルの数に比例して残りのモードのメリット値が増やされる(1104)。最後のシフトについて最も高いメリット値を持った2つのモードがbest及びbest2として記憶される(1105)。
最後から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次故障は、再び動作され、将来のテストパターンにより目標とされることが可能となる。
図12にXTOL制御ビットをXTOL PRPGシードにマップする(すなわち図11の工程1108を実行する)マップ技術1200の一例(例えば、図12のステップ1208に関する)を示す。マップ技術1200を開始するには、変数start_shiftは0に初期化され、変数制限は、シードへのマッピングが決定される可能性のあるPRPG長からマージンを除いたものに初期化される。
ウィンドウの相互に排他的な初期シフトを計算するには、まず、全ての完全観測サイクルについてXTOLシャドウをホールドするのに十分なビットを新しいXTOLシードにより供給することができるのかを考える(ホールドするのにシフトあたり1ビットが必要とされる)(1202)。残されているビットが十分でないならば、すぐにXTOL_enableをオフにすることが好都合である(例えば、ダミーシードを用いる)(1203)。最後のシフトがちょうど含まれたのでないならば(1204)、シフトの新しいウィンドウを続いて処理することができる(1206)。
start_shiftからend_shiftまでのシフトの最大ウィンドウが計算され、ウィンドウ内のXTOL制御ビットの総数は、あらかじめ計算された制限を超えない。線形システムを解きシードを計算する(1207)。ウィンドウ内の全てのケアビットを1つのシードにマップすることができるならば(すなわち、線形システムが解を持つ)、シードは記憶され(1209)、サイクルstart_shiftでXTOL PRPG内にロードされ、サイクルend_shift+1まで全てのケアビットを生成する。最後のシフトがちょうど含まれたのでなければ(1210)、続いてシフトの新しいウィンドウを同様に処理することができる(1202)。最後のシフトがちょうど含まれたのであれば、プロセスは終了する(1205)。
ウィンドウ内の全てのXTOL制御ビットを1つのシードにマップできないならば(1208)、ウィンドウは直線的に減少し(end_shift−−)、結果として生じるケアビットをシードにマップすることが試みられる(1207)。XTOL制御ビット数はXTOL PRPGの長さよりずっと小さいため、必要とされるビットはドロップすることがない(dropped)。1つのシフトをマッピングすることは実際的には常に可能であるからである。
以下の表1に、内部チェイン長さ=100でXTOL制御を有効に用いた設計のためのテストパターンを示す。最初の20シフトサイクルでは(シフトサイクル0・・19)Xがないため、XTOL enableが初期CARE PRPGシードをロードし完全観測モード(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%の平均観測可能性を達成した。
Figure 0005591886
図13に上述した完全に不定値許容性であって非常に高いスキャン圧縮を含むディジタルASICの設計フローの一例を単純化して表示する。上側の段において、プロセスは、製品企画より開始し(ステップ1300)、EDAソフトウェア設計プロセスを実行する(ステップ1310)。設計が終了すると、テープアウトを行う(イベント1340)。テープアウト後、製造プロセス(ステップ1350)、パッケージング及び組立プロセス(工程1360)を実施し、最終的に完成品チップが得られる(結果1370)。
EDAソフトウェア設計プロセス(工程1310)は、実際には複数のステップ1312から1330から構成されており、簡略化のために直線的に示している。実際のASIC設計プロセスでは、特定の設計は、所定の試験に合格するまでステップを逆戻りしなければならないこともある。同様に、任意の実際の設計プロセスでは、これらのステップは、異なる順序及び組合せで行われることもある。したがって、この説明は、特定のASICのための具体的なまたは推奨する設計フローとしてでなく、むしろ背景説明及び一般的な説明目的のために提供される。
EDAソフトウェア設計プロセス(工程1310)を構成するステップを簡単に説明する。
システム設計(工程1312):設計者は、実装したい機能性を記述し、what−ifプランニングを実施して機能性改良や費用確認などを行うことができる。ハードウェア−ソフトウェア・アーキテクチャ・パーティショニングはこのステップで行うことができる。このステップで使用することができるシノプシス社(Synopsys,Inc.)製のEDAソフトウェア製品の例には、Model Architect、Saber、System Studio、及びDesignWare(登録商標)などの製品が含まれる。
論理設計及び機能性の検証(工程1314):このステップでは、システム内のモジュールのためのVHDL又はVerilogコードを書込み、その設計を機能性の精度について検査する。より具体的には、設計を検査することによって、正しい出力を生成することを保証する。このステップで用いられうるシノプシス社製のソフトウェア製品の例には、VCS、VERA、DesignWare(登録商標)、Magellan、Formality、ESP及びLEDAなどの製品が含まれる。
合成及び試験のための設計(工程1316):このステップでは、VHDL/Verilogをネットリストに変換する。ネットリストは、目的の技術のために最適化することができる。加えて、完成品チップの検査を可能とする試験の設計及び実装を行う。このステップ使用することができるシノプシス社製のEDAソフトウェア製品の例には、Design Compiler(登録商標)、Power Compiler、Tetramax、DesignWare(登録商標)、及びDFT MAXなどの製品が含まれる。一実施形態では、上述の完全に不定値許容性で非常に高いスキャン圧縮技術を工程1416で用いることができる。
ネットリスト検証(工程1318):このステップでは、ネットリストを、タイミングの制約との適合性及びVHDL/Verilogソースコードとの対応について検査する。このステップで用いられうるシノプシス社製のEDAソフトウェア製品の例には、Formality、PrimeTime、及びVCSなどの製品が含まれる。
設計プランニング(工程1320):このステップでは、チップの全体フロアプランを作成し、タイミング及び最上位ルーティングについて解析する。このステップで使用することができるシノプシス社製のEDAソフトウェア製品の例には、Astro及びIC Compilerなどの製品が含まれる。
物理的な実装(工程1322):このステップでは、配置(回路素子の位置決め)及びルーティング(回路素子の接続)を行う。このステップで使用することができるシノプシス社製の製品の例には、Astro及びIC Compilerの製品が含まれる。
解析及び抽出(工程1324):このステップでは、回路機能をトランジスタレベルで検証し、これにより、what−if解析による改良を可能にする。このステップにおいて使用することができるシノプシス社製のEDAソフトウェア製品の例には、AstroRail、PrimeRail、PrimeTime、及びStar RC/XTなどの製品が含まれる。
物理的検証(工程1326):このステップでは、様々なチェック機能を実行し、製造、電気的な結果、リソグラフィの結果、及び回路構成について正確性を保証する。このステップにおいて使用することができるシノプシス社製のEDAソフトウェア製品の例には、Herculesなどの製品が含まれる。
分解能向上(工程1328):このステップでは、レイアウトの幾何学的な操作を行い、設計の製造可能性を改善する。このステップで使用することができるシノプシス社製のEDAソフトウェア製品の例には、Proteus、ProteusAF、PSMGenなどの製品が含まれる。
マスクデータ準備(工程1330):このステップでは、完成品チップを作成するために使用するリソグラフィのために、マスク作成用の「テープアウト」データを提供する。このステップにおいて使用することができるシノプシス社製のEDAソフトウェア製品の例には、CATS(登録商標)シリーズの製品ファミリが含まれる。
本明細書では、添付した図面を参照して本発明の図示した実施形態を詳細に説明してきたが、本発明は、これらにちょうど一致した実施形態に限られないことを理解するべきである。図示した実施形態は、網羅的であることを目的とはせず、又は開示されたちょうど同じ形態に本発明を限定する目的ではない。そのため、多くの変更及び変形が明らかであろう。
例えば、上述のチップ上の圧縮要素を各々の設計ごとに、例えば、スキャン入力、出力、内部チェイン、及び場合に応じてXチェインに基づいて、個々に最適化することができる。論理的には、比較的小さな設計では、比較的小さなPRPG及びMISR(例えば、32ビット)を用いられうる。一方、大型の設計では、比較的大きなPRPG及びMISR(例えば、64又は100ビットを超えるものも)又はルーティングを容易にするために複数の圧縮回路/展開回路構造も用いられるはずである。PRPG及びMISRの長さは、精密に調整され、データをロード及びアンロードするテスタのサイクル数をバランスさせる。例えば、6スキャン入力、12スキャン出力及び1024チェインの設計を、65ビットのPRPGで構成できるため、PRPGシャドウの長さは66であり、6で割り切れ、ロードする11サイクルの全てのビットを用いることができる。対応するMISRは、60ビットの長さを持ちえて12で割り切れる(出力の数)。
構成に関係なく、テスト印加中の動作は、図5に示す状態図で説明されることに留意すべきである。シードをロードするのとMISRをアンロードするのは、内部シフトと異なるクロック周波数で実行されうることにさらに留意すべきである。この場合、テストシステムのためのハードウェアは変更する必要はない。サイクル「シャドウモード」をどれだけ多く用いるかという閾値が調整される必要がある。スキャン入力及び出力は、1でもよい。まずMISRをアンロードし続いてシードをロードするのに「テスタモード」の1の双方向ビットを用いることさえできる。特に、データ量は、スキャン入力及び出力の数とは独立している。
PRPGシャドウレジスタは、2005年9月27日に刊行され「LogicBISTアーキテクチャにおける決定論的パターンの効果的な圧縮及び印加」と題された米国特許6,950,974号明細書、及び2007年6月26日に刊行され「スキャンチェインの不定値出力に許容性のある決定論的BISTアーキテクチャ」と題された米国特許7,237,162号明細書に記載され、両明細書は参照により組み込まれる。シャドウレジスタの他の構成、例えば記憶素子に対してマルチプレクサの数を変える、を他の実施形態で用いることができる。
したがって、本発明の範囲は、以下の請求の範囲及びその均等物により規定されることが意図されている。

Claims (20)

  1. 集積回路(IC)に実装された、複数のスキャンチェインを有する設計をテストするためのスキャンテストシステムであって、
    前記設計の故障を特定するため、前記複数のスキャンチェインに印加されるパターンを生成する第1のシードを受取る、第1の疑似ランダムパターン生成回路(PRPG)処理チェインと、
    前記スキャンチェインの観測のレベルを決定する不定値許容性(XTOL)制御ビットを生成する第2のシードを受取る、第2のPRPG処理チェインと、
    前記複数のスキャンチェインからのスキャン出力及び前記XTOL制御ビットを供給され、シフトごとの不定値制御を行い、前記設計を分析するためのテスト出力を生成するためのアンロードブロックと、
    テスタからの入力を受取ると共に、前記第1のPRPG処理チェインへの前記第1のシードの供給と前記第2のPRPG処理チェインへの前記第2のシードの供給とのいずれかを選択的に行うようにされたアドレサブルPRPGシャドウレジスタとを備えるスキャンテストシステム。
  2. 前記第1のPRPG処理チェインは、
    前記第1のシードを受取るためのCARE PRPGと、
    前記CARE PRPGの出力を受取り、前記複数のスキャンチェインに出力を行うためのPRPG移相回路とを有する請求項1に記載のスキャンテストシステム。
  3. 前記CARE PRPGから入力を受け、前記PRPG移相回路に出力を行うCAREシャドウレジスタをさらに備える請求項2に記載のスキャンテストシステム。
  4. 前記CARE PRPGは、一定値が前記複数のスキャンチェインにシフトされシフト電力が低減されるように前記CAREシャドウレジスタをホールドモードにする電源制御信号を供給する請求項3に記載のスキャンテストシステム。
  5. 前記第2のPRPG処理チェインは、
    前記第2のシードを受取るためのXTOL PRPGと、
    前記XTOL PRPGの出力を受取るためのXTOL移相回路と、
    前記XTOL移相回路の出力を受取り、XTOL制御ビットを供給するためのXTOLシャドウレジスタとを有する請求項4に記載のスキャンテストシステム。
  6. 前記XTOL PRPGは、前記XTOLシャドウレジスタをホールドモードにするホールド信号を生成するようにされた請求項5に記載のスキャンテストシステム。
  7. 前記CARE PRPGと前記XTOL PRPGとは、任意のシフトサイクルで必要な場合にリシードするようにされた請求項6に記載のスキャンテストシステム。
  8. 前記CARE PRPGと前記XTOL PRPGとは、任意のシフトサイクルで必要な場合にリシードするようにされた請求項5に記載のスキャンテストシステム。
  9. 前記アンロードブロックは、
    前記スキャン出力を受取るためのXTOLセレクタと、
    前記XTOL制御ビットを用いて前記XTOLセレクタを制御するためのXデコーダと、
    前記XTOLセレクタの出力を受取るための圧縮回路と、
    前記圧縮回路の出力を受取る共に前記テスト出力を生成するための多入力シフトレジスタ(MISR)とを有する請求項8に記載のスキャンテストシステム。
  10. 前記XTOLセレクタと前記Xデコーダとは、完全観測モード、無観測モード、シングルチェインモード、及び複数観測モードのうちの1つを行うようにされた請求項9に記載のスキャンテストシステム。
  11. 前記Xデコーダは、前記複数のスキャンチェインの各々に接続された出力を有するデコーディングブロックを有する請求項10に記載のスキャンテストシステム。
  12. 特定のスキャンチェインのための前記デコーディングブロックは、この特定のスキャンチェインが含まれる複数のグループからなるセットを受取る請求項11に記載のスキャンテストシステム。
  13. 前記アンロードブロックは、前記PRPGシャドウレジスタにより生成されたXTOL enableビットによりさらに制御される請求項6に記載のスキャンテストシステム。
  14. 集積回路(IC)に実装された、複数のスキャンチェインを有する設計をテストするためのスキャンテストシステムであって、
    シードを受取るための疑似ランダムパターン生成回路(PRPG)シャドウレジスタと、
    前記PRPGシャドウレジスタからのシードを受取るためのCARE PRPGと、
    前記CARE PRPGの出力を受取るためのCAREシャドウレジスタと、
    前記CAREシャドウレジスタの出力を受取り、チャネル間の線形従属性を最小限にし、前記複数のスキャンチェインのためのスキャンビットを生成するためのCARE移相回路と、
    前記PRPGシャドウレジスタから他のシードを受取るための不定値許容性(XTOL)PRPGと、
    前記XTOL PRPGの出力を受取り、チャネル間の線形従属性を最小限にするためのXTOL移相回路と、
    前記XTOL移相回路の出力を受取るためのXTOLシャドウレジスタと、
    前記複数のスキャンチェインと前記XTOLシャドウレジスタとからのスキャン出力を受取り、シフトごとの不定値制御を行い、前記設計を分析するためのテスト出力を生成するためのアンロードブロックとを備えるスキャンテストシステム。
  15. 前記XTOL PRPGは、前記XTOLシャドウレジスタをホールドモードにするホールド信号を生成するようにされた請求項14に記載のスキャンテストシステム。
  16. 前記アンロードブロックは、
    前記スキャン出力を受取るためのXTOLセレクタと、
    前記XTOLシャドウレジスタのXTOL制御出力を用いて前記XTOLセレクタを制御するためのXデコーダと、
    前記XTOLセレクタの出力を受取るための圧縮回路と、
    前記圧縮回路からの出力を受取り、前記テスト出力を生成する多入力シフトレジスタ(MISR)とを有する請求項14に記載のスキャンテストシステム。
  17. 前記XTOLセレクタと前記Xデコーダとは、完全観測モード、無観測モード、シングルチェインモード、及び複数観測モードのうちいずれか1を行うように構成可能である請求項16に記載のスキャンテストシステム。
  18. 前記Xデコーダは、前記複数のスキャンチェインの各々に接続された出力を有するデコーディングブロックを有する請求項16に記載のスキャンテストシステム。
  19. 特定のスキャンチェインのための前記Xデコーダは、この特定のスキャンチェインが含まれる複数のグループからなるセットを受取る請求項18に記載のスキャンテストシステム。
  20. 前記アンロードブロックは、前記PRPGシャドウレジスタにより生成されたXTOL enableビットによりさらに制御される請求項17に記載のスキャンテストシステム。
JP2012180207A 2008-10-21 2012-08-15 完全に不定値許容性であって非常に高スキャン圧縮なスキャンテストシステム及び技術 Active JP5591886B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US10723908P 2008-10-21 2008-10-21
US61/107,239 2008-10-21
US12/363,520 2009-01-30
US12/363,520 US7979763B2 (en) 2008-10-21 2009-01-30 Fully X-tolerant, very high scan compression scan test systems and techniques

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010535133A Division JP2010539518A (ja) 2008-10-21 2009-09-01 完全に不定値許容性であって非常に高スキャン圧縮なスキャンテストシステム及び技術(関連出願)本出願は、2008年10月21日に出願され「完全に不定値許容性であって非常に高いスキャン圧縮」と題された米国特許仮出願61/107,239号の優先権を主張する。

Publications (2)

Publication Number Publication Date
JP2012230131A JP2012230131A (ja) 2012-11-22
JP5591886B2 true JP5591886B2 (ja) 2014-09-17

Family

ID=42109585

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2010535133A Pending JP2010539518A (ja) 2008-10-21 2009-09-01 完全に不定値許容性であって非常に高スキャン圧縮なスキャンテストシステム及び技術(関連出願)本出願は、2008年10月21日に出願され「完全に不定値許容性であって非常に高いスキャン圧縮」と題された米国特許仮出願61/107,239号の優先権を主張する。
JP2012180207A Active JP5591886B2 (ja) 2008-10-21 2012-08-15 完全に不定値許容性であって非常に高スキャン圧縮なスキャンテストシステム及び技術

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2010535133A Pending JP2010539518A (ja) 2008-10-21 2009-09-01 完全に不定値許容性であって非常に高スキャン圧縮なスキャンテストシステム及び技術(関連出願)本出願は、2008年10月21日に出願され「完全に不定値許容性であって非常に高いスキャン圧縮」と題された米国特許仮出願61/107,239号の優先権を主張する。

Country Status (8)

Country Link
US (3) US7979763B2 (ja)
EP (1) EP2201395B1 (ja)
JP (2) JP2010539518A (ja)
KR (1) KR101643776B1 (ja)
CN (2) CN101821641B (ja)
HK (1) HK1140821A1 (ja)
TW (1) TWI438456B (ja)
WO (1) WO2010047883A2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8065651B2 (en) * 2009-01-29 2011-11-22 Synopsys, Inc. Implementing hierarchical design-for-test logic for modular circuit design
US7930607B2 (en) * 2009-02-10 2011-04-19 Ozgur Sinanoglu Circuit for boosting encoding capabilities of test stimulus decompressors
US8856601B2 (en) * 2009-08-25 2014-10-07 Texas Instruments Incorporated Scan compression architecture with bypassable scan chains for low test mode power
US8732629B2 (en) 2009-10-30 2014-05-20 Synopsys, Inc. Method and system for lithography hotspot correction of a post-route layout
US8429473B2 (en) 2010-03-16 2013-04-23 Synopsys, Inc. Increasing PRPG-based compression by delayed justification
US8898529B2 (en) * 2010-05-19 2014-11-25 Universität Potsdam High performance compaction for test responses with many unknowns
US10345369B2 (en) 2012-10-02 2019-07-09 Synopsys, Inc. Augmented power-aware decompressor
US9157961B2 (en) 2013-03-15 2015-10-13 Synopsys, Inc Two-level compression through selective reseeding
US9171123B2 (en) * 2013-08-30 2015-10-27 Synopsys, Inc. Diagnosis and debug using truncated simulation
US9448282B1 (en) * 2014-02-12 2016-09-20 Cadence Design Systems, Inc. System and method for bit-wise selective masking of scan vectors for X-value tolerant built-in self test
US9268892B1 (en) * 2014-12-19 2016-02-23 International Business Machines Corporation Identification of unknown sources for logic built-in self test in verification
US10380303B2 (en) 2015-11-30 2019-08-13 Synopsys, Inc. Power-aware dynamic encoding
US9666302B1 (en) * 2015-12-28 2017-05-30 Taiwan Semiconductor Manufacturing Co., Ltd. System and method for memory scan design-for-test
TWI612317B (zh) * 2016-11-01 2018-01-21 國立成功大學 一種測試資料之解壓縮器及其測試方法
US10247780B2 (en) * 2017-08-02 2019-04-02 Texas Instruments Incorporated Re-programmable self-test
US11681843B2 (en) * 2018-01-17 2023-06-20 Siemens Industry Software Inc. Input data compression for machine learning-based chain diagnosis
WO2020043014A1 (en) * 2018-08-28 2020-03-05 Changxin Memory Technologies, Inc. Boundary test circuit, memory and boundary test method
CN109188246B (zh) * 2018-09-06 2020-09-08 长沙理工大学 一种安全的加密芯片可测试性设计结构
CN110096430B (zh) * 2019-03-16 2024-06-28 平安证券股份有限公司 第三方sdk准入测试方法、装置、终端及存储介质
US11422186B1 (en) * 2019-06-20 2022-08-23 Synopsys, Inc. Per-shift X-tolerant logic built-in self-test
US11378934B2 (en) * 2019-09-09 2022-07-05 Baker Hughes Oilfield Operations Llc Shadow function for protection monitoring systems
TWI707150B (zh) * 2019-09-27 2020-10-11 瑞昱半導體股份有限公司 晶片及其測試方法
CN112731121A (zh) * 2019-10-14 2021-04-30 瑞昱半导体股份有限公司 芯片及其测试方法
KR102630258B1 (ko) 2021-10-26 2024-01-25 연세대학교 산학협력단 로직 비스트 캡쳐 전력 감소 회로 및 방법
TWI789198B (zh) 2022-01-04 2023-01-01 瑞昱半導體股份有限公司 掃描鏈設計與電路測試方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6389562B1 (en) * 1999-06-29 2002-05-14 Sony Corporation Source code shuffling to provide for robust error recovery
US6684358B1 (en) 1999-11-23 2004-01-27 Janusz Rajski Decompressor/PRPG for applying pseudo-random and deterministic test patterns
JP4228061B2 (ja) * 2000-12-07 2009-02-25 富士通マイクロエレクトロニクス株式会社 集積回路の試験装置および試験方法
JP3937034B2 (ja) 2000-12-13 2007-06-27 株式会社日立製作所 半導体集積回路のテスト方法及びテストパターン発生回路
US6950974B1 (en) 2001-09-07 2005-09-27 Synopsys Inc. Efficient compression and application of deterministic patterns in a logic BIST architecture
US6807646B1 (en) * 2002-03-04 2004-10-19 Synopsys, Inc. System and method for time slicing deterministic patterns for reseeding in logic built-in self-test
JP3877635B2 (ja) * 2002-04-24 2007-02-07 松下電器産業株式会社 入力パターン供給器と半導体集積回路の検査方法
US7058869B2 (en) * 2003-01-28 2006-06-06 Syntest Technologies, Inc. Method and apparatus for debug, diagnosis, and yield improvement of scan-based integrated circuits
US7032148B2 (en) 2003-07-07 2006-04-18 Syntest Technologies, Inc. Mask network design for scan-based integrated circuits
JP2007506962A (ja) * 2003-09-26 2007-03-22 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 試験応答を選択的にマスクするための方法およびシステム
US7231570B2 (en) 2004-05-26 2007-06-12 Syntest Technologies, Inc. Method and apparatus for multi-level scan compression
US7395473B2 (en) * 2004-12-10 2008-07-01 Wu-Tung Cheng Removing the effects of unknown test values from compacted test responses
US7610527B2 (en) * 2005-03-16 2009-10-27 Nec Laboratories America, Inc. Test output compaction with improved blocking of unknown values
US7376875B2 (en) * 2005-07-14 2008-05-20 International Business Machines Corporation Method of improving logical built-in self test (LBIST) AC fault isolations
CN101405609B (zh) * 2006-02-17 2012-11-14 明导公司 多级测试响应压缩器
JP5034576B2 (ja) * 2006-05-02 2012-09-26 富士通株式会社 半導体集積回路、テストデータ生成装置およびlsi試験装置
EP2122466B1 (en) * 2007-02-12 2015-04-29 Mentor Graphics Corporation Low power scan testing techniques and apparatus
US7949921B2 (en) * 2007-09-21 2011-05-24 Synopsys, Inc. Method and apparatus for synthesis of augmented multimode compactors

Also Published As

Publication number Publication date
US20130268817A1 (en) 2013-10-10
TW201017193A (en) 2010-05-01
US8645780B2 (en) 2014-02-04
US20110258503A1 (en) 2011-10-20
CN101821641A (zh) 2010-09-01
US7979763B2 (en) 2011-07-12
CN201740851U (zh) 2011-02-09
WO2010047883A2 (en) 2010-04-29
US20100100781A1 (en) 2010-04-22
EP2201395A4 (en) 2013-03-27
JP2010539518A (ja) 2010-12-16
JP2012230131A (ja) 2012-11-22
HK1140821A1 (en) 2010-10-22
CN101821641B (zh) 2013-09-04
KR20110070649A (ko) 2011-06-24
KR101643776B1 (ko) 2016-07-28
US8464115B2 (en) 2013-06-11
TWI438456B (zh) 2014-05-21
EP2201395B1 (en) 2014-10-29
WO2010047883A3 (en) 2010-06-17
EP2201395A2 (en) 2010-06-30

Similar Documents

Publication Publication Date Title
JP5591886B2 (ja) 完全に不定値許容性であって非常に高スキャン圧縮なスキャンテストシステム及び技術
JP5537158B2 (ja) 低消費電力スキャンテスト技術および装置
US5383143A (en) Self re-seeding linear feedback shift register (LFSR) data processing system for generating a pseudo-random test bit stream and method of operation
US7644333B2 (en) Restartable logic BIST controller
US7814444B2 (en) Scan compression circuit and method of design therefor
US7840865B2 (en) Built-in self-test of integrated circuits using selectable weighting of test patterns
US8914695B2 (en) synthesizing circular decompressors
US20150100841A1 (en) Linear decompressor with two-step dynamic encoding
US11815555B2 (en) Universal compactor architecture for testing circuits
US10996273B2 (en) Test generation using testability-based guidance
US9157961B2 (en) Two-level compression through selective reseeding
US11150299B2 (en) Flexible isometric decompressor architecture for test compression
US11422188B2 (en) Isometric control data generation for test compression
US11232246B2 (en) Layout-friendly test pattern decompressor
JP2006058152A (ja) 半導体装置の試験方法及び半導体装置の試験回路
US11422186B1 (en) Per-shift X-tolerant logic built-in self-test
Lien et al. Output bit selection methodology for test response compaction
Stroud Pseudo-Exhaustive BIST

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120815

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120815

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120820

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130723

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131022

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140708

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140730

R150 Certificate of patent or registration of utility model

Ref document number: 5591886

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250