EDA・ソフトウエア 強いLSIやボードを設計するための
 

スキャン・テストとは

scan test

2009/01/13 09:00
印刷用ページ

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

 スキャン・テストは,テストを容易にする設計手法であるDFT(design for testability)技術の一つで,ランダム・ロジックを対象にする。スキャン・テストでは,回路内のフリップフロップ(FF)をスキャンFFに置き換える(図1(a))。テスト・モード時には回路内のスキャンFFをシリアルに接続することでシフト・レジスタを形成し,LSIの外部I/O端子からスキャンFFを制御・観測できるような経路(スキャン・チェーン)を設ける(図1(b))。

 このような構成を採ると,スキャンFFがLSIの外部I/O端子と等価と見なせるため,テストの対象は組み合わせ回路のみとなる。組み合わせ回路に対してのテスト・パターン生成技術はATPG(automatic test pattern generation)として確立しており,効率良くテスト・パターンを自動生成できることになる。


【図1 スキャン・テスト回路の構成】マルチプレクサ方式のスキャン・フリップフロップは,マルチプレクサと通常のフリップフロップで構成される(a)。スキャン・イネーブルで通常動作とテスト・モード動作を切り替える。テスト・モード時には,スキャン・フリップフロップをシリアルに接続し,シフト・レジスタを構成する(b)。チップの外部スキャン・イン端子より,このシフト・レジスタの値を設定し,スキャン・アウト端子より値を読み出す。出典はOKIセミコンダクタ。 (画像のクリックで拡大)

スキャン・テストの方式

 スキャン・テストには,「フル・スキャン方式」と「パーシャル・スキャン方式」の2種類がある。フル・スキャンは回路中の全FFをスキャンFFに置き換える方式で,すべてのFFを外部から直接制御・観測できる。一方,パーシャル・スキャンでは,一部のFFのみをスキャンFFに置き換える。スキャンFFがフル・スキャンに比べて少ないため,面積のオーバヘッドも小さい。半面,置き換えなかった部分に対して,人手でテスト・パターンを追加するなどの作業が必要になる。

 スキャンFFに置き換えなかった部分も自動でテスト・パターンを追加する際には,順序回路用のATPGが必要になる。ただし順序回路用のATPGは処理時間が長い上,生成されたテスト・パターン数が長大で,テスト時間も長い。このため,大規模なLSIでは,基本的にはフル・スキャン方式が採用されている。

スキャン・テストの基本動作

 スキャン・テストは,「スキャン・イン」→「キャプチャ」→「スキャン・アウト」という一連の動作を繰り返して進められる(図2)。


【図2 スキャン・テストの手順】まず,スキャン・モードに設定し,スキャン・イン端子からスキャン・フリップフロップに対してテスト・パターンを設定する(a)。次に,通常動作モードに設定し,スキャン・フリップフロップ間の組み合わせ回路を動作させる。そして,テスト・クロックを動作させて,組み合わせ回路の出力をスキャン・フリップフロップに取り込む(b)。その次に,再びスキャン・モードに設定し,スキャン・フリップフロップに取り込んだ値をスキャン・アウト端子で観測する(c)。なお,この図では,簡単化のために,クロックの接続は省略してある。出典はOKIセミコンダクタ。 (画像のクリックで拡大)

 最初の「スキャン・イン」ではスキャン・モードになり,スキャン・イン端子からスキャンFFにテスト・パターンを送り込む。シリアルに入力するため,全FFへの設定はFF数回のシフト動作(FF数クロック)が必要である。

 次の「キャプチャ」では通常動作モードになり,スキャンFF間の組み合わせ回路を動作させる。そして,組み合わせ回路の出力をスキャンFFに取り込む。

 3番目の「スキャン・アウト」では,再びスキャン・モードになる。スキャンFFに格納してある値をスキャン・アウト端子で観測する。この観測した値を,あらかじめ求めてある期待値(故障がない場合の値)と比較し,故障の有無を判定する。なおスキャン・アウトもシリアルな出力のため,全FFからの値の読みだしにはFF数回のシフト動作(FF数クロック)が必要となる。

スキャン・テストの留意点

 スキャン・テスト方式を採用するには,守るべき設計制約がある。主に,FFのクロックの可制御性に関する制約と,組み合わせ回路のフィードバック・ループに関する制約の二つがある。

 前者の可制御性に関する制約の内容は次の通り。スキャン・テストでは,スキャン動作中(スキャン・イン/スキャン・アウト)にシステム・クロックが動作した場合,スキャンしようとしていたデータを破壊する恐れがある。非同期セットやリセットが発生した場合も同様な恐れがある。このためFFのクロックとリセットは,チップの外部入力端子から直接制御できる必要がある。

 後者のフィードバック・ループに関する制約は以下の通り。組み合わせ回路にフィードバック・ループがあると,内部記憶を持ってしまうため,この回路の値が一意に決まらなくなる。ATPGでは当該部分を不定として扱うことになり,テスト・パターンが生成できない。これは故障検出率の低下につながる。

スキャン・テストの課題と改良

 上述したようにスキャン・テストでは回路中のFF数が増えると,テスト時間やテスト・データが増加してしまう。そこで,増大を抑えるために,複数の技術が開発された。

 その1例が「マルチ・スキャン・チェーン」の技術である(図3)。スキャン・チェーンを均等にn分割すると,一つのチェーンのFF段数が減って,テスト印加時間を1/nに短縮できる。しかし,分割に伴って,スキャン・イン端子とスキャン・アウト端子がn個必要となってしまうという副作用がある。

 そこで,スキャン・イン端子とスキャン・アウト端子数を減らし,かつATPGによりテスト・パターンを圧縮する「圧縮パターン・テスト(圧縮スキャンとも呼ぶ)」技術が用いられるようになった(図3(c))。この技術は,「テスト・パターンを作成する場合,ATPGが1/0を確定させるFFのケア・ビットは全FFの数%程度であり,残りのFFは0でも1でもよい入力ドント・ケアである」という性質を使う。圧縮スキャンでは,スキャン・イン端子側に展開回路を設けてケア・ビットの論理値を再現し,スキャン・アウト側に設けた圧縮回路で出力応答を圧縮して出力する。


【図3 マルチ・スキャン・チェーン】スキャン・チェーン(a)をn分割すると,チェーン当たりのフリップフロップ数が1/nとなる。テスト・パターンの入出力時間は1/nとなる(b)。ただし,分割に伴い,スキャン・イン/スキャン・アウト端子も複数必要となる。それを一つにするのが,圧縮スキャンである(c)。出典はOKIセミコンダクタ。 (画像のクリックで拡大)

 通常のマルチ・スキャン・チェーンではスキャン・チェーン数の上限がテスタのスキャン・チャネル数で決まってしまうが,圧縮パターン・テストではその制約がなくなり,チェーン数を増やすことで,テスト時間とテスト・データ量の大幅な削減が可能になる。

<技術者塾>
電源制御と主回路の定式化手法(2日間)
~状態平均化法によるコンバータの伝達関数の導出と制御設計の基礎について事例を基にわかりやすく解説~



これまでの電源設計の教科書にはない新しい見地から基礎理論および実践例について解説するとともに、「系の安定度」の問題点と解決手法についても解説します。今年3月に発刊した「スイッチング電源制御設計の基礎」(日経BP社刊)をベースに最新の内容を解説いたします。詳細はこちら

【日時】:2015年9月28~29日 10:00~17:00 (開場9:30)予定
【会場】:化学会館(東京・御茶ノ水)
【主催】:日経エレクトロニクス

コメントする
コメントに関する諸注意(必ずお読みください)
※コメントの掲載は編集部がマニュアルで行っておりますので、即時には反映されません。

マイページ

マイページのご利用には日経テクノロジーオンラインの会員登録が必要です。

マイページでは記事のクリッピング(ブックマーク)、登録したキーワードを含む新着記事の表示(Myキーワード)、登録した連載の新着記事表示(連載ウォッチ)が利用できます。

協力メディア&
関連サイト

  • 日経エレクトロニクス
  • 日経ものづくり
  • 日経Automotive
  • 日経デジタルヘルス
  • メガソーラービジネス
  • 明日をつむぐテクノロジー
  • 新・公民連携最前線
  • 技術者塾

Follow Us

  • Facebook
  • Twitter
  • RSS

お薦めトピック

日経テクノロジーオンラインSpecial

記事ランキング