改訂版EDA用語辞典とは・著者一覧

 故障診断は,テストで不良と判定されたLSIを対象として,LSI内部のどの部分に故障が存在するかを推定する技術である。広義には,解析装置を利用した非破壊の電気的解析を含むこともあるが,一般にはソフトウェアによって故障個所を推定する技術を指す。スキャン設計回路を対象とした故障診断ツールが,EDAベンダー各社から発表されている。以下,スキャン設計回路の診断手法を説明する。

装置による解析を支援

 従来,故障したLSIの解析では,EB (electron beam)テスタやOBIRCH (Optical Beam Induced Resistance CHange)装置などの非破壊の故障解析装置によって故障個所を絞り込んだ後,断面観察や元素分析などにより故障原因を特定するという方法が採られてきた。しかし,近年のLSIは微細化や配線多層化が進み,解析装置だけで故障個所を絞込むことは非常に困難となっている。

 故障診断技術は,ネットリストやテスト・パターンなどの設計データを基に,LSI動作をコンピュータ上で再現することにより,論理的に故障個所を絞り込み,その後の故障解析による物理的な絞込みを効率化する目的で利用されている。

故障診断の用途

 故障診断には,主に以下の三つの用途がある。

(1)設計段階における設計デバグ

 LSIの設計段階において,論理シミュレーションはパスするにもかかわらず,実際のデバイスではテストがフェイルするような場合に,原因調査のために故障診断が利用される。

(2)市場クレーム品の故障解析

 市場で不良が発覚したLSIに対して,故障原因を解析することで製品の信頼性・品質向上に役立てる。短期間で原因を解明することが求められているが,不良の種類によってLSIの動作が異なるため,各不良LSIを慎重に故障解析する必要がある。故障解析の確度を高めるために,故障診断にも高精度な絞込みが要求される。

(3)量産段階における歩留まり向上

 量産段階において,ウェーハ単位の不良LSIの故障診断を行い,製品の歩留まり向上に役立てる。診断結果を分析することで,大量のサンプルの中から解析容易な不良サンプルを選択することが可能となり,効果的な故障解析を実施することができる。

 また,デバイスの微細化が進むことで,DFM(design for manufacturability)技術が重要となってきたが,診断結果を統計的に処理することで,設計起因の共通的な故障(システマティック故障)を見つけ出すことが期待され,注目されている。

二つの手法を組み合わせて実用化

 次に,故障診断の手法について説明する。現在,故障診断に使われている基本手法は大きく分けて二つある。どちらも,「単一縮退故障」という故障モデルを対象にする。ここで単一縮退故障とは,回路の中に一つだけ,縮退故障があることを言う。また縮退故障とは,論理素子の値が“0"や“1"に固定してしまう故障である。

 故障診断の基本手法の一方は「原因結果(Cause-Effect)手法」と呼ばれ,故障(原因)を埋め込んでシミュレーションを実行し,そのフェイル出力(結果)と,実際のLSIをテストした際のフェイル・ログとを比較して,一致の度合いを見る。もう一方は「結果原因(Effect-Cause)手法」と呼ばれ,テスト時のフェイル出力(結果)の情報を基にして,故障個所(原因)を推定する。

 前者の原因結果(Cause-Effect)手法としては,「故障辞書法」が良く知られている。あらかじめ故障を仮定して故障辞書を作成しておき,診断時にテスト結果と故障辞書を照合する。故障辞書法はアルゴリズムが単純で,診断処理が高速という特徴がある。半面,回路規模の増大につれて辞書サイズが巨大になることや,単一縮退故障以外の辞書作成は現実的でないことなどから,最近では,単独で使われることはほとんどない。

 一方,後者の結果原因(Effect-Cause)手法では,「クリチカル・パス・トレース法」が良く知られている。フェイル出力から故障伝搬の経路をトレースして故障候補とする。クリチカル・パス・トレース法は,フェイル出力からトレースするため,故障モデルの仮定や辞書作成の必要がないという長所がある。半面,回路規模の増大につれて故障候補が増大するという短所があり,やはり,単独で使用されることは少ない。

 現在,実用化されている故障診断ツールの多くでは,原因結果手法と結果原因手法を組み合わせている。結果原因法でフェイル出力に関係する候補をある程度絞り込んだ後で,原因結果法の故障シミュレーションを実行する。これで,テスト結果との一致度を見ながら,故障候補を絞り込んでいく。手法の組み合わせ方や詳細なアルゴリズム,故障候補のスコア計算方法の違いにより,各ツールの特徴が出てくる。

対応可能な故障モデルを増やす

 上述したように,市販の故障診断ツールは単一縮退故障モデルへの対応を基本にしているが,より広い範囲の故障を扱おうとする動きがある。例えば,縮退故障以外の故障や,複数の故障があるケース(多重故障)への対応である。

 前者の例としては,容量値を考慮してオープン故障を高精度に診断する試みや,トランジスタ・レベルでセル内の故障を診断する提案などを挙げられる。

 一方,多重故障診断のアルゴリズムとしては,SLAT(Single Location At-a-Time)手法が知られている。一般に,テスト・パターンは,サイクルごとのテスト・ベクトルの集合体である。テスト・ベクトルのうち,故障を検出したテスト・ベクトルをフェイル・ベクトルと呼ぶ。SLAT手法では,「チップ内に複数の故障が発生していても,複数の故障を検出するフェイル・ベクトルは少ない。一方で,一つの故障だけを検出するフェイル・ベクトルは多数存在する」という仮定の下に,診断を行う。

 一つの故障だけを検出したフェイル・ベクトルをベースにすれば,上述した単一縮退故障向けの故障診断手法を適用して,故障の候補を抽出できる。各フェイル・ベクトルから抽出した故障の集合と,LSIテスターのフェイル・ログとを比べて,チップ内の複数の故障を見いだす。

 このほか,多重故障に対しては,フェイル出力からバック・トレースし,伝播経路が重なっている故障をグループ化して,グループごとに故障診断する手法が提案されている。

 また,信号伝搬に悪影響をおよぼす「遅延故障」に対しても,故障診断の適用の動きがある。大きな遅延値の遅延故障であれば,上述した原因結果手法や結果原因手法の組み合わせでも,故障診断が可能である。一方遅延値の小さな故障の場合,伝播経路によっては,故障の影響が到達してもフェイルしないスキャン・セルが存在する。これでは,故障シミュレーションが対応できない。そこで,伝播経路の遅延時間を計算する手法や,遅延値を考慮した故障シミュレーションを使用する手法などの研究が進められている。

テスト専用回路には特別な配慮

 以上説明した故障診断技術は,基本的に通常動作回路を対象にしているが,LSI上にはテストのための専用回路も載っている。こうしたテスト専用回路は,プロセス微細化による回路規模の増大によって,増える傾向がある。テスト専用回路のあるチップでは,故障診断の際に,配慮が必要になる。

 例えば,ロジックBIST圧縮パターン・テスト手法を採用したチップでは,テスト専用回路として通常動作回路の入力側にパターン生成器,同出力側に応答圧縮器が付いている。故障診断を容易にするためには,これらのテスト専用回路を迂回するモードを設けることが望ましい。また,圧縮器を稼働させた場合でも,故障診断が容易になるような工夫が提案されている。

スキャン・チェーンを故障診断する

 次に,スキャン・チェーンについて説明する。上述した原因結果手法や結果原因手法ベースの故障診断技術は,スキャン・シフト動作が正常に稼働することを前提にしている。

 すなわち,スキャン・シフト動作が異常となるスキャン・チェーンの故障には上記の故障診断技術を適用できない。そこで,スキャン・チェーンには,別の診断手法が必要になる。最近発表されているスキャン・チェーンの故障診断技術の多くは,以下のような三つのステップで処理を進めている。

 (a)スキャン・チェーン・チェック用のパターン(00110011などの規則的なパターン)を用いてテストし,故障しているスキャン・チェーンと故障モードを特定する。(b)通常のパターンを使用したフェイル・ログを分析し,故障スキャン・セルの範囲を絞り込む。(c)絞り込んだスキャン・セルに故障を仮定して故障シミュレーションを実施し,テスト結果と照合することでさらに絞り込む。