故障シミュレータ(fault simulator)は,論理LSIテスタで使うテスト・パターンの有効性を確かめるためのEDAツールである。

論理シミュレータがベース

 故障シミュレータは論理シミュレータがベースになっている。すなわち,検証対象のテスト・パターンを入力する論理シミュレーションを入力する論理シミュレーションを,故障の存在する回路(以下,故障回路)と故障の存在しない回路(以下,正常回路)の両方を対象に実施する。この2つの回路の出力パターンが異なれば,入力したテスト・パターンが有効と判定できる。このとき「故障が検出された」という。出力パターンが同じならば,故障は検出されていないことになる。

 現在使われている故障シミュレータでは,「単一縮退故障」と呼ばれる故障を扱うのが一般的である。「単一」とは,全回路中で故障が一度に一つしか発生しないことを意味する。「縮退故障」とは,ある素子(論理ゲートやフリップフロップなど)の入力端子または出力端子が,論理値“1”あるいは論理値“0”になりっぱなしになる故障である。

 故障シミュレータの入力は,ゲート・レベル論理回路のネットリストと,テスト・パターン,故障リストである。故障リストとは,対象のテスト・パターンで検出したい故障のリストを指す。一方,故障シミュレータの出力は,故障検出率と未検出故障リストである。故障検出率(fault coverage)とは,故障リスト中のすべての故障のなかで,入力の全テスト・パターンで検出できる故障の割合をいう。検出できなかった故障のリストが,未検出故障リストである。

 故障シミュレータの主な用途は次の3つと言える。

(1)LSIの機能・論理設計者が論理シミュレーションに使ったシミュレーション・パターンを,LSIテスタ用のテスト・パターンとして流用できるかどうか確かめる。

(2)ATPGが作成したパターンで,対象の故障が検出できるかどうかの確認,および同時に他の故障を検出できるかどうかを調べる。すなわち,ATPGの一部として使われる。

(3)故障診断などのために故障辞書を作成する。故障診断とは,LSI中で故障が発生している場所を特定することをいう。また,故障辞書とは,あるテスト・パターンで検出できるすべての故障をリスト・アップしたものである。

コンカレント手法が主流

 上述したように,故障シミュレータは単一縮退故障を対象にするため,ある回路に1000個の故障を仮定すると,故障回路は1000種類存在することになる。すなわち,これら1000個の故障回路に対してシミュレーションを実施し,正常回路のシミュレーション結果と比べないと,全故障が検出可能かどうかわからない。つまり,「全故障数+1回」の論理シミュレーションが必要になる。これが,もっとも基本的な故障シミュレーション方法である。

 しかし,これをそのまま実現したのでは,非常に処理時間がかかり,非現実的である。このため,さまざまな高速処理方法が考案され,それに基づいて実際の故障シミュレータは開発されている。

 高速化した故障シミュレーション手法としては,並列故障シミュレーション,ディダクティブ故障シミュレーション,コンカレント故障シミュレーションなどがある。このうち,最も成功した手法がコンカレント故障シミュレーションで現在の多くの故障シミュレータで採用されている。市販製品も多い。

 コンカレント故障シミュレーションは,同じテスト・パターンを正常回路と故障回路に入力すると,その動作がほとんど同じであることに着目した。すなわち,動作の異なったわずかな部分だけ,故障回路のシミュレーションを正常回路のシミュレーションと同時に行ない,その他の部分は正常回路のシミュレーションだけを実行する。こうして,高速化を図る。この方法では,動作レベル・モデル(たとえばUDP)が扱え,詳細に遅延時間を考慮できるという特徴もある。

 このほかに,専用のコンピュータ(ハードウエア・アクセラレータ)を用いて,故障シミュレーションを高速化処理する方法もある。しかしかなり高価である。最近は,複数のワークステーションを用いて分散処理をすることによって,処理性能を上げようとするツール・ベンダが増えてきた。

 またゲート・レベルだけではなく,RTL(register transfer level)とゲート・レベルが混在した回路を扱える故障シミュレータも登場した。故障はゲート・レベルで定義するが,故障信号の伝搬はRTLで行なうもので高速化の効果もある。

 ただし,故障シミュレーションは非常に時間のかかる処理という事実に変わりはない。用途に応じて運用上の工夫が必要である。たとえば,あるテスト・パターンの故障検出率を求めたいのならば,全故障を対象にする必要はない。いくつかの故障を抜き出し,それを対象に故障シミュレーションすれは十分である。


(99. 9. 6更新)

このEDA用語辞典は,日経エレクトロニクス,1996年10月14日号,no.673に掲載した「EDAツール辞典(NEC著)」を改訂・増補したものです。