LSIのテストのためのLSI内部回路

収集技術範囲と技術のバックグラウンド

1. 収集した技術の範囲

 1.1 LSIテスト技術とテスト用内部回路の位置づけ

 LSIのテストは製造したLSIが正常に動作することを確認するために行う。LSIの動作が正常か否かは入力列に対する出力列で判断される。ここで入力列、出力列はLSIの各入力あるいは各出力の信号(0、1、不定)の組の時間的な推移である。LSIの内部回路には、入力信号の組み合わせにより一義的に出力が決まるランダムロジックと、出力が入力信号に一義的に決まらず、信号が入力される前の回路の状態によっても出力が変わる順序回路とがある。ランダムロジックと比較して順序回路では、回路のすべての状態をテストするための入力信号列は大きくなる。

 LSIの故障の原因はトランジスタの不良、配線の断線、短絡など多くの原因がありその影響も異なるが、多くのLSIテストは回路ロジックの特定場所が1または0に固定されてしまう縮退故障(stuck-at fault)と言う故障モードを前提としている。この故障を検出するためのテストパターンは、回路のすべての状態を再現する場合と比べて大幅に小さくすることが出来る。また、ランダムロジックの場合テストパターンを自動的に生成するアルゴリズムが開発されている。

 半導体技術は、止まるところ無く進展しており、一つのICに搭載されるトランジタ数は18ヶ月ごとに倍増してきている(Mooreの法則と言われている)。一つのICに搭載されるトランジスタ数の増大は、LSIの回路規模の増加を意味している。例えば、Intel486(TM)は125万個のトランジスタを搭載していたが、Pentium(R)Proプロセッサは600万個、Pentium(R)2プロセッサは750万個、Pentium(R)3プロセッサは2800万個のトランジスタを搭載している。

 テストパターンの長さは、回路規模が大きくなると指数関数的に増大する。したがって、規模が大きい、あるいは多くの順序回路を含むLSIでは、通常の入出力ピンを通してのテストではテストパターンが実用上耐えられない程度に増加する。また、このような回路のテストパターンを手動で生成することも実質的には不可能である。

 このように回路規模の増加と回路の複雑化により起こるテストの困難さとテストコストの増加を回避するために、LSI回路設計時に付加的な回路を付け加え、テストを容易化するための手法が数多く提案されている。

 これらのテスト容易化手法を適用するためには、そのテスト手法に応じて、テスト容易化のためにLSIの内部に回路を付加するとともに、付加したテスト回路が適正に動作することを確認し、製造したLSIのテストパターンを生成する必要がある。これらは、CADと総称されるLSI設計ツールにより実現される。すなわち、テスト手法を実際のLSI設計に実用するためにはそれぞれのテスト手法に対応したCADの助けが必要である(図1.1−1)。

図1.1−1 テスト手法はテスト方式とテスト回路で説明出来るが実用のためにはCADが必要

図1.1−1 テスト手法はテスト方式とテスト回路で説明出来るが実用のためにはCADが必要

 テスト容易化手法を適用するためにはテスト回路を付加しなければならない。テスト回路の付加によりLSIの面積(コスト)の増加に加えて動作速度が低下する可能性がある。設計者はこのマイナス要因とテストコストの低下とのバランスを考えながら設計することになるが、この際テスト回路の最適化が重要になる。回路の最適化はテスト方式の選択と並んで重要であるが、最適化の大部分はCADにより実現される。

 本標準技術集では、テスト容易化のためのLSI内部回路を収録した。内部回路はテスト方式と密接に関係するため、テストのための回路構成、あるいは関連するテスト原理について収録したが、CADにかかわる技術は対象外としている。

1.2 技術の範囲

 LSIのテストを容易化する技術の中でテスト容易化のためにLSI回路に付加されるテスト用回路を対象とする。

 テスト容易化技術は、LSIの規模と複雑化の進展に伴い進歩してきたが、これらは専ら同期型のディジタル回路を中心に発達してきた。製造工程で起こりうるLSIの故障の原因は、シリコンウエハ中の欠陥、ゲート酸化膜の損傷、コンタクト不良、配線の断線あるいは短絡などであるがこれらにより引き起こされる故障は必ずしも一様に扱えない。しかし、LSIの故障シミュレーションとテストにおいては、特定の観測点が0あるいは1レベルに固定される縮退故障を仮定して行う縮退故障モデルを適用するのが一般的であり、また、実用的に十分であると認識され、上記テスト容易化技術もこのような縮退故障モデルに基づいているものが大多数である。

  本標準技術集で収集する技術の範囲は、

 (1) 同期型ディジタルLSIのテスト容易化を実現するための付加回路および

 (2) 基板の回路とこれに搭載した個々のLSIをテストするためにLSIに追加して搭載される付加回路    (IEEE1149.1;JTAG)

を対象とする。

 電流テスト(IDDQテストなど)のような特殊なテスト方式、アナログ回路(およびアナログを含む回路)のテスト用回路および非同期型ディジタル回路用のテスト回路は今回の調査の範囲に加えない。

 収集する技術を3階層に体系化する。第1階層にテスト方式を、第2階層に目的(課題)、分野を、第3階層に手段(解決方法)を置く。以下においては、まずテスト方式(第1階層)の分類について示し、次にテスト方式ごとに第2階層の分類を示して技術内容を概説する。

2. テスト方式(第1階層)の分類

 LSIのテストは対象とする回路の入力にテストパターンを入力し、テスト回路からの出力が正常なパターンと一致するか否かにより判断される。すなわちテストを構成する要素はTPG、CUT、ORAである(図2−1)。TPGおよびORAは、通常テスタが持つ機能であるが、この機能の一部または全部をLSI自身に持たせることが出来る。これは、後述するBIST(Built-In Self Test)である。

図2−1 LSIテストの手順

図2−1 LSIテストの手順


 テスト方式は、テスト方式として特徴あるものおよびテスト対象とする回路に特徴のあるものに注目して以下のような6分類とした。

表2−1 第1階層(テスト方式)による分類

No.

テスト方式

内容

スキャンテスト

フリップフロップをスキャン用に変更し順序回路のテスト容易化を実現する。

バウンダリ・スキャン

基板上の回路と搭載LSIを独立にテストするための方式。標準化されている技術とこの技術を利用したテスト方式。

コアテスト

SOC(System On a Chip)に使用されるメモリ、プロセッサ等のコアのテストに使う方式。内部回路を分割してテストする方式を含む。個別のコアのテスト技術は含めない。

ロジックBIST

ロジック回路のBISTで一般的に適用される方式。メモリは5に、プロセッサ、PLAなどの特定回路向けのテスト方式は6に分類する。

メモリBIST

単体のメモリおよびコアとして搭載されるメモリアレイのテスト方式。コアメモリへテスト時にアクセスする方式

特定LSI・回路

PLD、PLAなど回路に規則性がある、あるいは汎用のテスト方式の適用が困難なプロセッサなど特定の回路をテストするための方式

1 スキャンテスト

 ランダムロジックについては縮退故障を仮定したテストパターンを自動的に生成することが出来る。このため、順序回路をテスト時にランダムロジックとして取り扱うための工夫が検討され、いわゆるスキャンテスト法と呼ばれるテスト容易化手法が開発された。これは順序回路に使用されるフリップフロップの入出力を直接制御出来る形に置き換えるとともに、これらのフリップフロップを直列に接続して各フリップフロップのセット値を外部から順次送り込み(スキャン)所望の値とする方法である。フリップフロップを外部からセットすることによりテストパターンを自動的に発生することが出来る。

2 バウンダリ・スキャン

 バウンダリ・スキャン法はボード上に配置されたLSIを個別にテストするための手法で、JTAG(Joint Test Action Group)で検討されIEEE1149.1として標準化されている。バウンダリ・スキャン法を適用するためには、LSI内部回路を変更して、ボード上に多数存在するLSIを個別に指定し、その入出力ピンの値を任意に設定し、あるいは読み出す機能を付加する必要がある。LSIの出荷時に行われるテストに直接用いられるものでは無いが、LSI内部に搭載されるテスト用回路であるので収録範囲に加えた。

3 コアテスト

 半導体プロセスの微細化に伴いLSIも大規模化、高速化が進んでいる。ロジックLSIの市場は、急速に拡大しているIT市場であり、製品サイクルも短い。したがってLSI開発現場では、より大規模で多機能なLSIをより短期間で設計する必要に迫られている。このような環境の中で、大規模LSIを短期間で開発するための切り札としてプロセッサ、画像処理、通信などの機能ブロックをコアとして再利用する技術が注目されている。再利用するコアとして自社製品のみならず他社製品を積極的に利用することにより高機能LSIを短期間に開発し、市場で優位に立つことが出来ると認識されており、機能コアを知的生産物、IPとして流通させるための活動が進んでいる。

 自社、あるいは他社で開発された機能コアを取り入れて一つのシステムLSI(SOC−System On a Chip−と呼ばれている)として開発するためには設計情報とともにテスト情報が移転されるがこのテスト情報はそのコアのみに有効な情報である。出来るだけ設計負荷を減らすためには、LSI全体としてでは無く個々のコアを単独でテストする仕組みを作って置く必要がある。システムLSIのアーキテクチャ、LSI内に含まれている機能などに応じ考案されている種々のテスト回路方式をコアテストとして収録した。

4 ロジックBIST

 大規模化したLSIは入出力ピン数が多く、加えて実動作時と同様の高速テストを行うためには高価なテスタが必要となる。このような問題を解決する手段の一つとしてBIST(Built-In Self Test)が提案された。BISTは一般的にテスト回路CUT(Circuit Under Test)に対してテストパターンを発生する回路TPG(Test Pattern Generator)とその出力を解析するORA(Output Response Analysis)回路を付加することにより実現される(図2−1)。ロジックLSIのBIST(ロジックBIST)ではスキャン回路を挿入して回路をランダムロジックとして取り扱えるように修正するとともに、TPGとしてLFSR(Linear Feedback Shift Registers)による擬似ランダムテストパターン生成を行い、ORAとしてMISR(Multiple-input Signature Register)を用いて圧縮したテスト結果により故障の有無を判断する方法が用いられている例が多い。

5 メモリBIST

 メモリのテスト内容は比較的単純であるが回路規模が大きく、メモリセル配置パターンに依存する故障があるため単に個々のメモリセルのテストのみならずセルの配置に合わせたパターンでテストする必要がある。また、ロジックLSIの内部に組み込まれるメモリは、専用メモリと比較してその構成、機能が多様である。しかし、メモリ回路は規則性が高いため、テストパターンを規則化しやすい。メモリのテストはこのようなメモリの特徴を反映しているためロジックとは独立してメモリBISTとして収録した。

6 特定LSI・回路

 PLD、あるいはプロセッサなどのLSIあるいは、データパス回路はランダムロジックと比べて規則性が高い、あるいはテストに利用出来る機能が内蔵されているなどの理由によりそれぞれの回路の特徴を利用したテスト方式が採用されている。これらについては特定LSI・回路として分類・収録した。


3. 第2階層−目的(課題)−の分類

 テスト容易化のための回路を付加することにより

 (1) テストコストを低減出来るが、一方

 (2) LSIの面積が増加する

 (3) LSIの動作速度が低下する

と言う問題が起こる。また、

 (4) テストの品質も必ずしも十分で無い場合がある。

 テスト方式とそのために使用するテスト回路は、このような問題を解決するために工夫され、新しい回路・方式が提案されてきた。第2階層の分類は、目的(あるいは、課題)ごとに整理することを念頭に、個々の回路技術を技術の塊として捉えやすくなるよう設定した。

3.1 スキャンテスト

 スキャンテストの第2階層は以下の6項目に分類した。

表3.1−1 1 スキャンテストの第2階層

収録数

1.1

スキャン回路要素

11

1.2

スキャンデザイン

11

1.3

パーシャルスキャン

1.4

スキャンテストのための回路修正

1.5

スキャン回路を用いたDelay Test

1.6

拡張されたスキャンデザイン

図3.1−1にMUX入力FFを用いたスキャンパステスト回路を例示する。

図3.1−1 MUX入力FFを用いたスキャンパステスト回路

図3.1−1 MUX入力FFを用いたスキャンパステスト回路

 図において、スキャンテストでは、テスト時にフリップフロップ(FF)をチェーン状に接続して、FFの内部状況を直接制御(スキャンイン)/直接観測(スキャンアウト)可能とする。この回路のテスト動作は以下のようになる:

 1. SE=1としテストデータをFFにセットする(スキャンイン)

 2. SE=0としLSIを1クロック動作

 3. SE=1としFFの値(テスト結果)を出力する(スキャンアウト)

 2の操作で組み合わせ回路をテストする。1から3の操作を繰返して組み合わせ回路の全テストパターンのテストを完了する。

 図3.1−1に示す例は、回路に使われているFFがエッジトリガ型の場合に適用され、2相クロック回路には適用出来ない。2相クロック設計の場合に用いられるLSSD方式では図とは異なった構成のスキャンFFが用いられる。FFの形式とそれを使ったスキャンテスト方式とはFFの構成を1.1 スキャン回路要素として、テスト方式を1.2 スキャンデザインとして分類・収録した。

 1.2で取り扱った方法は、元の設計で用いられたすべてのFFをスキャンチェーンに組み込むことを前提としていた(フルスキャンデザイン)。このようなフルスキャンデザインを適用する場合、

 (1) FFをスキャンタイプとするための面積の増加、

 (2) スキャンインサイクルの増加によるテスト時間の増大、と

 (3) 動作速度の低下

が起こる。

 これらの問題点はスキャンするFFを選択し減らすことにより緩和される。このような手法はパーシャルスキャン法と呼ばれている(1.3 パーシャルスキャン)。パーシャルスキャンを効果的に適用するためにはノンスキャンFFを含む回路のテストパターン生成が容易でありスキャンデザインに伴う問題が軽減されることが重要である。

 パーシャルスキャンの回路方式はこのような問題の解決を目的としているが、重要な課題の一つであるスキャンチェーンに入れるFFの選択方法はCADにより解決される。CADで実現されるFF選択アルゴリズムについてはここでは取り扱わない。

 上述した各種のスキャンテストのパフォーマンスを向上するための工夫は以下の3つの項目に分けて収録した。

1.4 スキャンテストのための回路修正

1.5 スキャン回路を用いたDelay Test

1.6 拡張されたスキャンデザイン

3.2 バウンダリ・スキャン

 バウンダリ・スキャンの第2階層は以下の3項目に分類した。

表3.2−1 2 バウンダリ・スキャンの第2階層

収録数

2.1

基本回路

2.2

改良されたBSセルと要素回路

2.3

バウンダリ・スキャン応用

10

 バウンダリ・スキャンテスト方式は、JTAG(Joint Test Action Group)で検討されIEEE1149.1として標準化されている。バウンダリ・スキャン回路を搭載したLSIにはTAP(Test Access Port)と呼ばれるバウンダリ・スキャン専用ピンが4本以上用意されている。これらはテストデータ入出力ピン(2本:TDI、TDO)、テストモードセレクト(TMS)およびテストクロック(TCK)である(図3.2−1)。この他にオプションでテストリセット(TRST)ピンが置かれる。

 LSIのI/Oピンは、通常のI/Oバッファに代えてバウンダリ・スキャンセル(バウンダリ・スキャンレジスタとも呼ばれる)に接続されている。バウンダリ・スキャンセルは、外部からの制御信号により通常のI/Oバッファ機能とシフトレジスタ機能とに切り替えることが出来る。

図3.2−1 バウンダリ・スキャン回路を搭載したLSI

図3.2−1 バウンダリ・スキャン回路を搭載したLSI

 バウンダリ・スキャン回路を搭載したLSIは、ボード上で図3.2−2のようにTDIとTDOピンをチェーン状に、TMSとTCKは並列に接続される。TAPを通じて制御することにより、基板の配線のテスト、およびLSI内部回路のテストが可能である。

図3.2−2 基板のバウンダリ・スキャン回路を搭載したLSIの配線

図3.2−2 基板のバウンダリ・スキャン回路を搭載したLSIの配線

 バウンダリ・スキャンに固有の回路は、TAPの制御とバウンダリ・スキャンセルにある。とくにバウンダリ・スキャンセルはLSIのI/Oピンに単純な入力、出力に加えて、入出力機能、3ステートバッファ機能などを持たせる必要があるため多くの工夫がなされている。基本機能を実現するための回路要素を2.1 基本回路に、バウンダリ・スキャンセルを中心とした回路の改良を2.2 改良されたBSセルと要素回路に、バウンダリ・スキャン機能を実回路に適用する時の工夫を2.3 バウンダリ・スキャン応用に分類・収録した。

3.3 コアテスト

 集積回路製造技術の微細化に伴いLSIの回路規模が増加し、電子装置システムを単一のチップ上に実現したシステムLSIが実現可能になった。このようなシステムLSIでは、回路を機能ブロックに分割し機能ブロックを組み合わせて一つのLSIを構成する。機能ブロックは、コアとも呼ばれ、メモリ、プロセッサ、画像あるいは音声の圧縮・伸張、通信信号処理など多様である。コアは新たに設計される場合と既に作成したコアを再利用する場合とがある。設計効率を向上させるためにはコアの再利用が重要であり、他社で作成されたコアが知的財産(IPコアあるいは単にIPと呼ばれている)として流通する仕組みも整いつつある。

 このように個別のコアには設計資産の一部としてコアのテスト情報も含まれている。種々のコアを一つのLSIに搭載した場合、LSI全体としてでは無く個々のコアを単独でテストする仕組みが必要となる。回路のテストでは無くシステムLSI内のコアを個別にテストするための手法をコアテストとして収集した。

 直接コアのテストが出来るようにするためにLSI内部を分割する方式として図3.3−1に示す3つの方式がある。

図3.3−1 コアを分割する3つの方式

図3.3−1 コアを分割する3つの方式

 これらの分割方式は、必ずしも単独で用いられているわけでは無く、システムLSIのアーキテクチャ、LSI内に含まれている機能などに応じて適当に組み合わせられ適用されている。また、コアの再利用、コアをIPとして流通させるための基盤としてコアのテスト方式の重要性が認識されIEEE1149.1と類似のラッパー(Wrapper)方式によるテスト方式の標準化がIEEEで検討されている(P1500)。P1500検討委員会は、

 (1) コアの提供者からユーザーに提供するテストに関連するすべての情報を表現出来る言語、および

 (2) コアをシステムLSIに容易に取り込め、用途に合わせて改変出来るラッパー(Wrapper)

の標準化を検討している。コア内部のテスト方法を標準化することあるいは、システムLSIのテストの統合化、最適化については検討範囲外である。

 コアテストの第2階層を表3.3−1に示すように5種類に分類した。

表3.3−1 3 コアテストの第2階層

収録数

3.1

スキャンによるシステムLSIのテスト

3.2

テストバスによるシステムLSIのテスト

3.3

マルチプレクサ分割によるシステムLSIのテスト

3.4

Wrapperによるコアへのテストアクセス

3.5

Wrapper以外の方法によるコアへのテストアクセス

 テスト技術はコアを個別にテストするためにコアを分離し個別にアクセスする方法とLSIのテストにおいて個々のコアにテストデータを供給し、テスト結果を評価するための方法とに大別される。後者は図3.3−1に対応していて、これらは3.1 スキャンによるシステムLSIのテスト3.2 テストバスによるシステムLSIのテスト3.3 マルチプレクサ分割によるシステムLSIのテストである。コアを分離し個別にアクセスする方法では、ラッパーを用いる方法が多いため、3.4 Wrapperによるコアへのテストアクセス3.5 Wrapper以外の方法によるコアへのテストアクセスに分けて収録した。

3.4 ロジックBIST

 スキャンテスト設計により、テストパターンの自動生成(ATPG)が可能となり、テスト設計工数の大幅な削減が可能となった。一方、LSI規模が拡大するにつれてスキャンチェーンが長くなり、スキャンテストを行うためのテストデータが膨大になると言う問題が発生した。この問題に対して考えられた対応策は、下記のように技術、コスト両面から実現が困難であり他の解決法が必要となった。

表3.4−1 スキャンテストのテストデータ増大に対する対応策とその問題点

対応策

問題点

ATPGの高性能化

技術的には飽和状態に

テスタの大容量化

テスタ投資大(コスト)

スキャン本数の増加

LSIピン数で制約

テスト周波数の増加

テスタ能力、I/O部性能制約

 テストを構成する要素はTPG、CUT、ORAの3つである(図2−1)。TPGおよびORAをLSIの内部回路として持つ(Built-In)ことによりLSI自身でテストする(Self Test)ことが出来る。ロジックBISTを適用することにより表3.4−1に示した問題点を回避することが期待され多くの研究がなされてきた。適切なBIST回路を適用することにより

 (1) テストデータ量の大幅な削減が可能である

 (2) 多数個のLSIを同時にテスト出来る

 (3) 内部でスキャンチェーンを複数持つことが出来、テストも内部クロックで高速に実行可能なためテスト時間を短縮出来る

 (4) 実時間テストが出来、観測点を増やすことにより欠陥検出能力を高く出来る

 (5) バーンイン中にBISTを実行することによりバーンイン効果を向上出来る

 (6) フィールドでの自己テストが可能になりシステムの信頼性を向上出来る

など多くの利点が期待出来る。

 ロジック回路に適用するためのBISTの構成要素はTPGとORAである。収集した回路は、TPG、ORAおよびこれらの配置および、特定の目的のための回路上の工夫に関するものである。

 ロジックBISTの第2階層は以下の12項目に分類した。

表3.4−2 4 ロジック BISTの第2階層

収録数

4.1

Exhaustive/Pseudo Random TPG

10

4.2

Cellular AutomataによるTPG

4.3

MIXED MODE TEST Pattern および Pseudo Random Patternの改善

4.4

LFSR以外の回路要素を用いたTPG

4.5

アウトプット レスポンス アナライザ(ORA)

4.6

BIST回路の構成

4.7

パラレル スキャン BIST

4.8

Circular BIST

4.9

BISTのための回路補正

4.10

BISTによるDelay Test

14

4.11

Concurrent Testing

4.12

Low Power BIST Design

4.13

BOST

 4.1Exhaustive/Pseudo Random TPGではExhaustiveテストパターン生成および、擬似ランダムテストパターン生成回路を示す。

 擬似ランダムパターン生成によく使われるLFSRはFFを直列に接続したシフトレジスタの適当な段から初段にEXORを介してリニアにフィードバックをかけた回路で構成される。図3.4−1に示す例では、7種類のパターンが逐次出力され、8サイクル以降はこのパターンが繰返される。被テスト回路(CUT)に対しては、Y1〜Y3までの信号をパラレルに、あるいはこれらのいずれかからシリアルに信号を取り出し供給する。

 図ではY1がフィードバックされているがフィードバックの取り方により出力パターンのサイクルの長さは変わり、N段のLFSRでは最大2−1サイクルになる。BISTではこのように最大の長さのシーケンスが得られるLFSRが使われる。

図3.4−1 3段のLFSRの例と初期値001の時の各レジスタの値の変化    図3.4−1 3段のLFSRの例と初期値001の時の各レジスタの値の変化 表

図3.4−1 3段のLFSRの例と初期値001の時の各レジスタの値の変化

 4.2 Cellular AutomataによるTPG では、Cellular Automataと呼ばれるXOR入力を持つFFを一定のルールにしたがって接続した回路によるTPGを示す。

 生成したテストパターンの有効性は故障検出率で評価される。擬似ランダムテストパターンを用いてLSIのテストを行う時、テストパターンの数(長さ)と故障検出率との関係は図3.4−2のように最初検出率は急速に向上するが次第に飽和する。多くの場合このような未検出な回路はごく少数の特定のパターンで無ければ検出出来ないような回路であり、これらはランダムパターン抵抗性(RPR=Random Pattern Resistant)欠陥と呼ばれている。このようなRPR欠陥を検出するためのTPGの工夫を4.3 MIXED MODE TEST Pattern および Pseudo Random Patternの改善に示した。

図3.4−2 テストパターンの数(長さ)と故障検出率との関係

図3.4−2 テストパターンの数(長さ)と故障検出率との関係

 上記以外の方法によるテストパターンの生成回路を4.4 LFSR以外の回路要素を用いたTPGに示した。

 テストパターンに対するCUTの出力を個別に比較するためには多数のメモリを用意する必要があり現実的で無く、テスト出力を圧縮する方法が取られている。BISTに用いられるORAとしては、LFSRあるいはMISRを用いたシグネチャ解析が最も多く用いられている[1]。LFSRへの入力は一つであるので、CUTが複数の出力を持つ場合にはマルチプレクサを介して入力する必要がある。4出力のCUTのシグネチャ解析用LFSRの例を図3.4−3に示す。FFの各段にCUT出力を入力出来るようにしたMISR(Multi-Input Shift Register)の例を図3.4−4に示す。LFSRを用いる場合には出力ごとにシグネチャ解析を行うため出力本数倍の時間がかかる。一方、MISRでは入力は同時に行われるため短時間で処理が出来る。

図3.4−3 LFSRを用いたシグネチャ解析

図3.4−3 LFSRを用いたシグネチャ解析

図3.4−4 MISRを用いたシグネチャ解析

図3.4−4 MISRを用いたシグネチャ解析

 シグネチャ解析を中心としたORA回路を4.5 アウトプット レスポンス アナライザ(ORA)に示す。この中には、テスト中に回路構成を代えることにより同じLFSRをTPGあるいはORAとして使う手法(BILBO=Building Block Observer)についても収録した。

 4.6から4.7にはテスト時の回路構成に特徴のあるものを集めた。4.6 BIST回路の構成には非同期回路など特殊な目的の回路のBISTを収録した。BISTを適用する場合、外部にテストピンを出す必要が無いためパラレルスキャン回路を採用しやすい。パラレル スキャン BISTを4.7 パラレル スキャン BISTに収録した。スキャン回路を並列化して、複数のスキャンチェーンを構成し、これらの各スキャンチェーンの出力をMISRの各段の入力とするSTUMPS(Self-Test Using MISR and Parallel Shift register sequence generator)方式もこの中に収録した。

 4.8 Circular BISTに収録したCircular BISTはCSTP(Circular Self Test Path)とも呼ばれている。回路の中から選択されたレジスタ(あるいはFF)はテスト中にはチェーン状に接続される(これがCSTPである)。テスト開始時に各レジスタは既知の値にセットされ、その後テストが開始される。テスト中には、CSTPのレジスタはLFSRとMISRとして作動する。一定のサイクルののち、CSTPの値を欠陥の無い場合のパターンと比較してテスト結果を評価する。

 テスト効率あるいは故障検出率を上げるためにBIST回路では無くCUTに付加する回路あるいは回路の変更を4.9 BISTのための回路補正に収録した。

 BISTによるテストパターンの生成タイミングを制御することにより信号遅延テストが可能である。4.10 BISTによるDelay TestにはこのようなDelay Testを実現するために回路に加えた工夫を収録した。

 システムに搭載された状態のLSIに故障が無いことをテストする手段はシステムの信頼性を確保する上で重要である。システムが稼動状態(オンライン)でのテストは必然的にBISTになる。オンラインBISTはコンカレントBISTとノン−コンカレントBISTとに区分される。後者は、システムがアイドル状態の時に実行されるのに対し、コンカレント・オンラインBISTはシステムが正常に稼動している時に並行して実施されるテストである。4.11 Concurrent TestingにはLSIにこのようなコンカレントBIST機能を付加するための回路を収録した。

 ディジタルシステムテスト時の消費電力は、通常の動作時より相当程度高いと言われている。これは

 (1) テストパターンを生成する時、出来るだけ多くのノードをスイッチするように配慮する

 (2) LFSRで生成されるテストパターンはランダム性が強く、通常の動作時より素子のスイッチング回数を多くする

 (3) BISTは内部クロックで動作するため高速動作が可能

などの理由によっている。さらに、BISTはオンラインテストにも用いられる可能性があるため、このばあいにはシステムの消費電力が増しバッテリー寿命を縮めることにもつながる。また、ピーク電力が高いLSIの場合には外部の電気回路、パッケージなどのコストの上昇、マイグレーションによるLSI内部回路の故障確率の増加など多くの問題の原因となるため、テストにおけるLSI消費電力の低減は重要である。4.12 Low Power BIST Designには、主としてテストパターン生成法を工夫してテスト時の低消費電力化を実現するための回路の工夫を収録した。4.13 BOSTでは、テスタコストの低減手法としてアナログBOSTを収録した。


3.5 メモリBIST

 汎用メモリのテストは従来専用のメモリテスタで行われてきた。しかし、汎用メモリの規模が大きくなったことにより、従来の専用テスタによるテストでは最適化されたテストパターンでも実用上長すぎるようになってきた。一方、ロジックLSIに搭載するメモリの規模も増大し、自動化されたメモリテスト(メモリBIST)が検討されるようになってきた。

 メモリは図3.5−1に示すような構成を取っている。メモリセルは格子状に配列され個々のセルは格子の行と列(XとY)を指示することにより選択される。

図3.5−1 メモリコアの構成

図3.5−1 メモリコアの構成

 メモリの機能は単純で、0あるいは1を記録し、保持し、読み出すことが出来れば良い。しかし、メモリセルの構成の規則性と、メモリ固有のデータの書き込み・読み出し方法とによりメモリにはロジック回路に無い故障モード、パターン依存性故障、が存在するため、テストすべきパターンは、増加することになる。

 メモリBISTの第2階層は以下の4項目に分類した。

表3.5−1 5 Memory BISTの第2階層

収録数

5.1

メモリBIST一般

5.2

DRAM用BIST

5.3

SRAM用BIST

5.4

その他のメモリ用BIST

 第2階層の分類は、メモリの種類により分けることとした。5.1 汎用メモリBISTには共通的な要素を、メモリ構造が明らかに別れるものについては5.2 DRAM用BIST5.3 SRAM用BISTに分けた。FIFO、マルチポートRAMなどの特殊な構造のものについては5.4 その他のメモリ用BISTとして分類した。

3.6 特定LSI・回路

 プロセッサや、PLDは、メモリと同様にランダムロジックには無い構造を持っている。これらは、固有のバス構造であり、メモリのセルと比べるとはるかに大規模であるが一定のレイアウトを繰返したものなどである。規則性の高い回路をテストする場合のテストパターンは回路に合わせた特定のパターンが必要になり、ロジックBISTで使われる擬似ランダムパターンは有効で無い場合がある。回路の特徴を利用することにより、効率的なテストを行うための工夫は、その回路に合わせて行われている。

 特定LSI・回路の第2階層として、表3.6−1に示すように以下の4項目に分類した。

表3.6−1 6 特定LSI、回路用BISTの第2階層

収録数

6.1

PLDのテストのためのBIST

6.2

データパス回路のためのBIST

6.3

プロセッサのTest

6.4

PLAのテスト

 6.1 PLDのテストのためのBISTは単体LSIのテスト回路であり、6.3 プロセッサのTestではマイクロプロセッサ、DSPなどの単体LSIおよびコアとしてシステムLSIに搭載されるプロセッサを対象とするテスト回路である。

 6.2 データパス回路のためのBISTおよび6.4 PLAのTestでは回路ブロックを対象とすることになる。



[1] テスト出力の圧縮には他にも

(1) パリティテスト

(2) 出力が1の回数

(3) 出力が遷移した回数

などがある。