JP2004286549A - スキャンテスト装置およびその設計方法 - Google Patents
スキャンテスト装置およびその設計方法 Download PDFInfo
- Publication number
- JP2004286549A JP2004286549A JP2003078048A JP2003078048A JP2004286549A JP 2004286549 A JP2004286549 A JP 2004286549A JP 2003078048 A JP2003078048 A JP 2003078048A JP 2003078048 A JP2003078048 A JP 2003078048A JP 2004286549 A JP2004286549 A JP 2004286549A
- Authority
- JP
- Japan
- Prior art keywords
- scan
- flip
- test
- scan chain
- flop
- 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.)
- Pending
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
【課題】半導体装置のスキャンチェーンのフリップフロップ段数に差が生じている場合に、スキャンテスト時にスキャンチェーンのフリップフロップの段数を平均化して動作させることにより、スキャンテスト時間を短縮する。
【解決手段】スキャンテスト時に、フリップフロップ段数の多いスキャンチェーン71、72を分割し、セレクタ93、94を挿入して部分スキャンチェーン210、219、および220、229を形成する機能と、部分スキャンチェーン210、220に対してフリップフロップ段数の少ないスキャンチェーン73を連結するセレクタ91、92、およびゲート回路111、112を挿入して新たなスキャンチェーンを形成する機能とを備える。
【選択図】 図1
【解決手段】スキャンテスト時に、フリップフロップ段数の多いスキャンチェーン71、72を分割し、セレクタ93、94を挿入して部分スキャンチェーン210、219、および220、229を形成する機能と、部分スキャンチェーン210、220に対してフリップフロップ段数の少ないスキャンチェーン73を連結するセレクタ91、92、およびゲート回路111、112を挿入して新たなスキャンチェーンを形成する機能とを備える。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は半導体装置のスキャンテスト技術に係り、特に、スキャンテスト時間を短縮することができるスキャンテスト装置およびその設計方法に関する。
【0002】
【従来の技術】
スキャンテスト技術は、半導体装置の回路を構成するすべての論理素子および配線の縮退故障を検出するための技術である。フリップフロップをシフトレジスタ状に構成したスキャンチェーンを構築し、半導体装置外部からスキャンチェーンのシフト動作によりテストパターンを与え、論理素子および配線の縮退故障のスクリーニングを実施するスキャンテストが一般的に行われている。
【0003】
近年は半導体装置の大規模化に伴いテスト時間の増加が問題となっていた。その背景の中で、特許文献1や非特許文献1に示されているように、半導体装置の回路を構成する複数のブロックについて、それぞれ並列にスキャンチェーンを張ることで、各ブロックのスキャンテストを並列に実施することが有効なテスト手法の1つとなっている。また、各スキャンチェーンを構成するフリップフロップの数は、スキャンテスト時間が最も短くなるように均一にしている。
【0004】
【特許文献1】
特開平10−2938号公報(図1)
【非特許文献1】
LSIテストのための内部回路、1−2 スキャンデザイン、[online]、特許庁ホームページ、標準技術集、[平成14年11月27日検索]、インターネット<URL:http://www.jpo.go.jp/techno/hyoujun_gijutsu/lsi_test/lsi−test−1−2.htm>
【0005】
【発明が解決しようとする課題】
近年、半導体装置に含まれるメモリの増大や市場での不良減少を目的として、メモリBISTやバーンインテスト等のテスト手法が採用されている。バーンインテスト時には、スキャンテスト時と同様にスキャンチェーンを使用してフリップフロップにテストパターンを入力し、またメモリBISTを動作させ、半導体装置の内部回路にストレスを与える。
【0006】
バーンインテスト時のテストパターンを発生させるための機能およびテスト結果を圧縮するための機能やメモリBISTには、スキャン動作ではなくそれぞれの制御動作をさせるため、これらで使用される少数のフリップフロップに対してはスキャンテストのために別のスキャンチェーンを張る必要がある。
【0007】
バーインテスト時にスキャン動作をしないこれらのフリップフロップを含むスキャンチェーンの段数は、他のスキャンチェーンの段数より一般に少なくなる。しかしながら、スキャンテスト時にテストパターンを各フリップフロップに印加するシフト動作に必要な時間は段数の多いスキャンチェーンに依存してしまうため、スキャンテスト時間を短縮できないという問題があった。
【0008】
従来の半導体装置に内蔵されるスキャンテスト装置における上記問題を図面を用いて説明する。図5はスキャンチェーンを張るためのフリップフロップの構成を示すブロック図であり、図6は従来の並列に張られたスキャンチェーンを有するスキャンテスト装置の構成を示すブロック図である。
【0009】
図5において、スキャンチェーンを張るためのフリップフロップ2は、セレクタとD型フリップフロップで構成されている。テストパターンの印加およびキャプチャ結果を出力するためのシフト動作と、各フリップフロップに印加したテストパターンでノーマル動作を行うキャプチャ動作とを切り替える信号はNT信号6である。
【0010】
これらのフリップフロップはスキャンクロック5により同期して動作する。セレクタはNT信号6によってセレクトされ、シフト動作時にはスキャンイン3からスキャンアウト4へのパスが有効になり、キャプチャ動作時には組合せ回路1からのパスが有効になるように制御される。
【0011】
図6に示すスキャンテスト装置においては、上記のようなフリップフロップ211〜218、221〜228がそれぞれ8段のスキャンチェーン71、72に構成される。さらに、バーンインテスト用のフリップフロップ231および232もスキャンフリップフロップを用いて2段のスキャンチェーン73に構成されている。これらのフリップフロップがスキャンクロック5により動作し、NT信号6によりシフト動作とキャプチャ動作とが切り替えられる。
【0012】
スキャンテスト時に1つのテストパターンをテストするために要する時間は、テストパターン入力時のシフト時間、テスト時のキャプチャ時間、および結果出力のシフト時間の合計になる。図6のような構成の半導体装置をスキャンテストする場合のテスト時間は、スキャンチェーン71、72において、テストパターン入力シフト時間8ステップ、キャプチャ時間1ステップ、結果出力シフト時間8ステップの合計17ステップを要することになる。
【0013】
このように、スキャンチェーン73のようなバーンインテスト用のスキャンチェーンの場合は他のスキャンチェーンと異なりフリップフロップの段数の少ないスキャンチェーンが形成されることがあるが、実際のスキャンテスト時間はスキャンチェーン71、72のようなフリップフロップの段数の多いスキャンチェーンのシフト時間により決定されてしまうという問題があった。
【0014】
本発明は上記従来の問題点を解決するもので、半導体装置においてスキャンテスト以外の目的のためにスキャンチェーンのフリップフロップの段数に差が生じている場合に、スキャンテストのシフト動作時のみスキャンチェーンのフリップフロップの段数を平均化して動作させることを可能にするスキャンテスト装置を提供することを目的とする。
【0015】
【課題を解決するための手段】
請求項1のスキャンテスト装置は、半導体装置のスキャンテスト時に、フリップフロップ段数の多いスキャンチェーンを分割して部分スキャンチェーンを形成する機能と、前記部分スキャンチェーンに対してフリップフロップ段数の少ないスキャンチェーンを連結して新たなスキャンチェーンを形成する機能と、を備えるものである。
【0016】
上記構成によれば、バーンインテスト用等のスキャンチェーンによりスキャンチェーンのフリップフロップの段数に差が生じている場合に、スキャンテスト時に段数の多いスキャンチェーンを分割し、段数の少ないスキャンチェーンを連結することができるため、スキャンチェーンのフリップフロップの段数を平均化することが可能になり、スキャンテスト時間を短縮することができる。
【0017】
請求項2のスキャンテスト装置は、請求項1記載のスキャンテスト装置において、前記部分スキャンチェーンおよび前記フリップフロップ段数の少ないスキャンチェーンが複数連結されて形成されたスキャンチェーンで1対多の並列連結がなされた場合に、この並列連結されたスキャンチェーンあるいは部分スキャンチェーンを切り替えるタイミング制御機能を備えるものである。
【0018】
上記構成によれば、1対多の並列連結を切り替えるタイミング制御ができるため、部分スキャンチェーンおよびフリップフロップ段数の少ないスキャンチェーンを複数連結してスキャンチェーンを形成する際に、1対多の並列連結を採用することができ、スキャンチェーンのフリップフロップ段数の平均化を効率的に行うことができる。
【0019】
請求項3のスキャンテスト装置の設計方法は、半導体装置のスキャンチェーンの総フリップフロップ数を総スキャンチェーン数で除した値を基準値に対して、それぞれのスキャンチェーンのフリップフロップ段数を所定の幅において比較し、比較結果に基づいてフリップフロップ段数の多いスキャンチェーンを分割して部分スキャンチェーンを形成する機能と、前記部分スキャンチェーンに対してフリップフロップ段数の少ないスキャンチェーンを連結して新たなスキャンチェーンを形成する機能との採否を判断するものである。
【0020】
上記構成によれば、フリップフロップ段数の多いスキャンチェーンを分割して部分スキャンチェーンを形成する機能、および部分スキャンチェーンに対してフリップフロップ段数の少ないスキャンチェーンを連結して新たなスキャンチェーンを形成する機能の採用を適切に判断することができるため、請求項1あるいは請求項2記載のスキャンテスト装置を最適に設計することができる。
【0021】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら説明する。
図1は本発明の一実施の形態に係る半導体装置に内蔵されるスキャンテスト装置の構成を示すブロック図である。図1において、図5および図6と同様の構成要素には同一符号を付している。
【0022】
図1に示すスキャンテスト装置においては、フリップフロップ211〜218、221〜228がそれぞれ8段のスキャンチェーン71、72に構成される。さらに、バーンインテスト用のフリップフロップ231および232も2段のスキャンチェーン73に構成されている。これらのフリップフロップがスキャンクロック5により動作し、NT信号6によりシフト動作とキャプチャ動作とが切り替えられる。
【0023】
スキャンチェーン71、72、73はスキャン入力端子として、それぞれSCANIN1、SCANIN2、SCANIN3を備え、スキャン出力端子として、それぞれSCANOUT1、SCANOUT2、SCANOUT3を備える。
【0024】
さらにスキャンテスト装置は、スキャンテストまたはバーンインテストを選択するモード信号8、スキャンチェーンの入力を選択するセレクタ91〜94、13、スキャンチェーンの連結の切り替えを制御する制御回路14、ゲート回路101、102、111、112、オア回路12を備えている。
【0025】
スキャンチェーン71は、フリップフロップ211と212からなるフリップフロップ群210と、フリップフロップ213〜218からなるフリップフロップ群219に分けられ、スキャンチェーン72は、フリップフロップ221と222からなるフリップフロップ群220と、フリップフロップ223〜228からなるフリップフロップ群229に分けられる。また、フリップフロップ231および232をフリップフロップ群230とする。
【0026】
セレクタ93、94はモード信号8に応じて、それぞれフリップフロップ群219、フリップフロップ群229の入力を選択し、セレクタ91、92、13は制御回路14の出力に応じて、それぞれフリップフロップ群210、フリップフロップ群220、フリップフロップ群230の入力を選択する。
【0027】
以上のように構成されたスキャンテスト装置は、モード信号8およびスキャンテスト時のNT信号6を受けた制御回路14の出力により各セレクタおよびゲート回路の動作を制御することで、スキャンテストまたはバーンインテストの動作をするように切り替えられる。
【0028】
バーンインテスト時には、セレクタ91はSCANIN1からの入力を選択し、セレクタ93はフリップフロップ群210の出力を選択し、セレクタ92はSCANIN2からの入力を選択し、セレクタ94はフリップフロップ群220の出力を選択することにより、スキャンチェーン71、72はそれぞれ1本のスキャンチェーンとして動作する。また、フリップフロップ群230はスキャン動作をせずバーンインテスト時の制御動作をする。
【0029】
スキャンテスト時には、各セレクタおよびゲート回路がモード信号8および制御回路14により、スキャンチェーンが短くなるように制御される。制御回路14はスキャンクロック5とNT信号6によりカウントするカウンタ141と、カウンタ141の出力をデコードするデコーダ142から構成され、スキャンチェーンの連結の切り替えを制御するタイミングを与える。
【0030】
図2は制御回路14が出力する制御信号を示すタイミングチャートである。カウンタ141は短縮したスキャンチェーンの段数分の6進カウンタで、NT信号6を条件にしてスキャンクロック5の立ち上がりを0から5までカウントする。すなわち、キャプチャ動作時はカウントを1回停止する。
【0031】
スキャン入力時は、スキャンチェーン71のフリップフロップ群219でセレクタ93はSCANIN1からの入力を選択し、スキャンチェーン72のフリップフロップ群229でセレクタ94はSCANIN2からの入力を選択する。また、フリップフロップ群210でセレクタ91はSCANIN3からの入力を最初の2クロック期間選択し、フリップフロップ群220でセレクタ92はSCANIN3からの入力を次に2クロック期間選択する。
【0032】
このように、フリップフロップ群210、220にはSCANIN3からテストパターンを入力するが、フリップフロップに1回入力したテストパターンを保持するために、選択したフリップフロップ群のみにクロックが供給されるようにゲート回路101、102を制御回路14で制御する。
【0033】
キャプチャ動作後は、スキャンチェーン71のフリップフロップ群219はSCANOUT1からテスト結果を出力し、スキャンチェーン72のフリップフロップ群229はSCANOUT2からテスト結果を出力する。また、フリップフロップ群210とフリップフロップ群220からのテスト結果は、セレクタ13を介してスキャンチェーン73によりSCANOUT3から出力される。
【0034】
セレクタ13の制御信号は制御回路14で生成される。このとき、セレクタ13の入力の衝突を避けるために、フリップフロップ群210とフリップフロップ群220からの出力をそれぞれゲートするようにゲート回路111、112を制御回路14で制御する。
【0035】
以上のように、従来の方法では1テストパターンをテストするために要するテスト時間が17ステップであったのに対して、本実施形態では、フリップフロップの段数の多いスキャンチェーンを分割し、フリップフロップの段数の少ないスキャンチェーンを連結することで、テストパターン入力シフト時間は6ステップ、キャプチャ時間は1ステップ、結果出力シフト時間は6ステップとなり、合計13ステップで1テストパターンのテストを行うことができる。また、外部端子を追加することなく上記効果を実現することが可能である。
【0036】
図3および図4は、スキャンテスト時のスキャンチェーンの連結切り替えを行うために、セレクタの挿入位置を決定するアルゴリズムを示すフローチャートである。ここで、スキャンチェーンのスキャン入力をそのスキャンチェーンの途中のフリップフロップから入力するためのセレクタをセレクタA、段数が少ない他のスキャンチェーンのスキャン入力をスキャンチェーンの初段に入力するためのセレクタをセレクタBとする。
【0037】
図1に示したスキャンテスト装置の場合であれば、セレクタ93、94がセレクタAに該当し、セレクタ91、92がセレクタBに該当する。スキャンテスト装置において、これらセレクタAとセレクタBをスキャンチェーンに挿入する位置を決定するアルゴリズムを図3および図4のフローチャートにより説明する。
【0038】
まず、すべてのフリップフロップ数(S310)をすべてのスキャンチェーン数(S311)で割る(S312)。その割った値+1よりフリップフロップ数が多いスキャンチェーンが無い場合(S320)、あるいは、その値−1よりフリップフロップ数が少ないスキャンチェーンが無い場合であれば(S330)、セレクタを挿入する必要は無い(S331)。
【0039】
上記以外の場合であれば、すべてのフリップフロップ数をスキャンチェーン数で割った値−1よりフリップフロップ数が少ないスキャンチェーンが1本であり(S340)、割った値に余りが無い場合は(S350)、割った値よりフリップフロップ数が多い各スキャンチェーンの最終段から割った値分のフリップフロップを遡り、その直前にセレクタAを挿入し(S351)、同じスキャンチェーンの初段のフリップフロップの直前にセレクタBを挿入する(S352)。
【0040】
割った値に余りがある場合は(S350)、割った値+1よりフリップフロップ数が多い各スキャンチェーンの最終段から割った値+1分のフリップフロップを遡り、その直前にセレクタAを挿入し(S353)、同じスキャンチェーンの初段のフリップフロップの直前にセレクタBを挿入する(S354)。
【0041】
すべてのフリップフロップ数をスキャンチェーン数で割った値−1よりフリップフロップ数が少ないスキャンチェーンが複数ある場合は、まず割った値に余りが無い場合は(S360)、割った値よりフリップフロップ数が多い各スキャンチェーンの最終段から割った値分のフリップフロップを遡り、その直前にセレクタAを挿入する(S361)。
【0042】
また、割った値に余りがある場合は、割った値+1よりフリップフロップ数が多い各スキャンチェーンの最終段から割った値+1分のフリップフロップを遡り、その直前にセレクタAを挿入する(S362)。
【0043】
セレクタAによって切り離されたフリップフロップが無いスキャンチェーンが1本の場合は(S370)、その1本のスキャンチェーンから複数のスキャンチェーンに対してテストパターンを入力できるように、他スキャンチェーンの初段のフリップフロップの直前にセレクタBを挿入する(S371)。
【0044】
セレクタAによって切り離されたフリップフロップの無いスキャンチェーンが複数の場合は(S370)、それらのスキャンチェーンから複数のスキャンチェーンに対してテストパターンを入力できるようになる可能性がある。
【0045】
それらのスキャンチェーンからテストパターンを入力するためのフリップフロップ数を調べ(S372)、すべてのフリップフロップ数をスキャンチェーン数で割った値、あるいはその値+1になるように、セレクタAによって切り離されたフリップフロップを除くすべてのフリップフロップのあるスキャンチェーンの残りの連続するフリップフロップ数を区切り(S373)、その区切った箇所にセレクタBを挿入する(S374)。
【0046】
上記アルゴリズムにより、フリップフロップの段数が異なる各スキャンチェーンをシフト時に適宜連結し、各スキャンチェーンのフリップフロップ数が均一になるように動作させることが可能になる。
【0047】
【発明の効果】
以上説明したように、本発明によれば、バーンインテスト用等のスキャンチェーンによりスキャンチェーンのフリップフロップの段数に差が生じている場合に、スキャンテスト時に段数の多いスキャンチェーンを分割し、段数の少ないスキャンチェーンを連結することにより、スキャンチェーンのフリップフロップの段数を平均化することが可能になり、スキャンテスト時間を短縮することができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態に係るスキャンテスト装置の構成を示すブロック図。
【図2】本発明のスキャンテスト装置における制御信号を示すタイミングチャート。
【図3】本発明のスキャンテスト装置におけるセレクタの挿入位置を決定するアルゴリズムを示すフローチャート。
【図4】本発明のスキャンテスト装置におけるセレクタの挿入位置を決定するアルゴリズムを示すフローチャート。
【図5】スキャンチェーンを張るためのフリップフロップの構成を示すブロック図。
【図6】従来のスキャンテスト装置の構成を示すブロック図。
【符号の説明】
1 組合せ回路
2 スキャンチェーンを張るためのフリップフロップ
210、219、220、229、230 フリップフロップ群
211〜218、221〜228、231、232 フリップフロップ
3 スキャンイン
4 スキャンアウト
5 スキャンクロック
6 NT信号
71、72、73 スキャンチェーン
8 モード信号
91〜94 セレクタ
101、102、111、112 ゲート回路
12 オア回路
13 セレクタ
14 制御回路
141 カウンタ
142 デコーダ
【発明の属する技術分野】
本発明は半導体装置のスキャンテスト技術に係り、特に、スキャンテスト時間を短縮することができるスキャンテスト装置およびその設計方法に関する。
【0002】
【従来の技術】
スキャンテスト技術は、半導体装置の回路を構成するすべての論理素子および配線の縮退故障を検出するための技術である。フリップフロップをシフトレジスタ状に構成したスキャンチェーンを構築し、半導体装置外部からスキャンチェーンのシフト動作によりテストパターンを与え、論理素子および配線の縮退故障のスクリーニングを実施するスキャンテストが一般的に行われている。
【0003】
近年は半導体装置の大規模化に伴いテスト時間の増加が問題となっていた。その背景の中で、特許文献1や非特許文献1に示されているように、半導体装置の回路を構成する複数のブロックについて、それぞれ並列にスキャンチェーンを張ることで、各ブロックのスキャンテストを並列に実施することが有効なテスト手法の1つとなっている。また、各スキャンチェーンを構成するフリップフロップの数は、スキャンテスト時間が最も短くなるように均一にしている。
【0004】
【特許文献1】
特開平10−2938号公報(図1)
【非特許文献1】
LSIテストのための内部回路、1−2 スキャンデザイン、[online]、特許庁ホームページ、標準技術集、[平成14年11月27日検索]、インターネット<URL:http://www.jpo.go.jp/techno/hyoujun_gijutsu/lsi_test/lsi−test−1−2.htm>
【0005】
【発明が解決しようとする課題】
近年、半導体装置に含まれるメモリの増大や市場での不良減少を目的として、メモリBISTやバーンインテスト等のテスト手法が採用されている。バーンインテスト時には、スキャンテスト時と同様にスキャンチェーンを使用してフリップフロップにテストパターンを入力し、またメモリBISTを動作させ、半導体装置の内部回路にストレスを与える。
【0006】
バーンインテスト時のテストパターンを発生させるための機能およびテスト結果を圧縮するための機能やメモリBISTには、スキャン動作ではなくそれぞれの制御動作をさせるため、これらで使用される少数のフリップフロップに対してはスキャンテストのために別のスキャンチェーンを張る必要がある。
【0007】
バーインテスト時にスキャン動作をしないこれらのフリップフロップを含むスキャンチェーンの段数は、他のスキャンチェーンの段数より一般に少なくなる。しかしながら、スキャンテスト時にテストパターンを各フリップフロップに印加するシフト動作に必要な時間は段数の多いスキャンチェーンに依存してしまうため、スキャンテスト時間を短縮できないという問題があった。
【0008】
従来の半導体装置に内蔵されるスキャンテスト装置における上記問題を図面を用いて説明する。図5はスキャンチェーンを張るためのフリップフロップの構成を示すブロック図であり、図6は従来の並列に張られたスキャンチェーンを有するスキャンテスト装置の構成を示すブロック図である。
【0009】
図5において、スキャンチェーンを張るためのフリップフロップ2は、セレクタとD型フリップフロップで構成されている。テストパターンの印加およびキャプチャ結果を出力するためのシフト動作と、各フリップフロップに印加したテストパターンでノーマル動作を行うキャプチャ動作とを切り替える信号はNT信号6である。
【0010】
これらのフリップフロップはスキャンクロック5により同期して動作する。セレクタはNT信号6によってセレクトされ、シフト動作時にはスキャンイン3からスキャンアウト4へのパスが有効になり、キャプチャ動作時には組合せ回路1からのパスが有効になるように制御される。
【0011】
図6に示すスキャンテスト装置においては、上記のようなフリップフロップ211〜218、221〜228がそれぞれ8段のスキャンチェーン71、72に構成される。さらに、バーンインテスト用のフリップフロップ231および232もスキャンフリップフロップを用いて2段のスキャンチェーン73に構成されている。これらのフリップフロップがスキャンクロック5により動作し、NT信号6によりシフト動作とキャプチャ動作とが切り替えられる。
【0012】
スキャンテスト時に1つのテストパターンをテストするために要する時間は、テストパターン入力時のシフト時間、テスト時のキャプチャ時間、および結果出力のシフト時間の合計になる。図6のような構成の半導体装置をスキャンテストする場合のテスト時間は、スキャンチェーン71、72において、テストパターン入力シフト時間8ステップ、キャプチャ時間1ステップ、結果出力シフト時間8ステップの合計17ステップを要することになる。
【0013】
このように、スキャンチェーン73のようなバーンインテスト用のスキャンチェーンの場合は他のスキャンチェーンと異なりフリップフロップの段数の少ないスキャンチェーンが形成されることがあるが、実際のスキャンテスト時間はスキャンチェーン71、72のようなフリップフロップの段数の多いスキャンチェーンのシフト時間により決定されてしまうという問題があった。
【0014】
本発明は上記従来の問題点を解決するもので、半導体装置においてスキャンテスト以外の目的のためにスキャンチェーンのフリップフロップの段数に差が生じている場合に、スキャンテストのシフト動作時のみスキャンチェーンのフリップフロップの段数を平均化して動作させることを可能にするスキャンテスト装置を提供することを目的とする。
【0015】
【課題を解決するための手段】
請求項1のスキャンテスト装置は、半導体装置のスキャンテスト時に、フリップフロップ段数の多いスキャンチェーンを分割して部分スキャンチェーンを形成する機能と、前記部分スキャンチェーンに対してフリップフロップ段数の少ないスキャンチェーンを連結して新たなスキャンチェーンを形成する機能と、を備えるものである。
【0016】
上記構成によれば、バーンインテスト用等のスキャンチェーンによりスキャンチェーンのフリップフロップの段数に差が生じている場合に、スキャンテスト時に段数の多いスキャンチェーンを分割し、段数の少ないスキャンチェーンを連結することができるため、スキャンチェーンのフリップフロップの段数を平均化することが可能になり、スキャンテスト時間を短縮することができる。
【0017】
請求項2のスキャンテスト装置は、請求項1記載のスキャンテスト装置において、前記部分スキャンチェーンおよび前記フリップフロップ段数の少ないスキャンチェーンが複数連結されて形成されたスキャンチェーンで1対多の並列連結がなされた場合に、この並列連結されたスキャンチェーンあるいは部分スキャンチェーンを切り替えるタイミング制御機能を備えるものである。
【0018】
上記構成によれば、1対多の並列連結を切り替えるタイミング制御ができるため、部分スキャンチェーンおよびフリップフロップ段数の少ないスキャンチェーンを複数連結してスキャンチェーンを形成する際に、1対多の並列連結を採用することができ、スキャンチェーンのフリップフロップ段数の平均化を効率的に行うことができる。
【0019】
請求項3のスキャンテスト装置の設計方法は、半導体装置のスキャンチェーンの総フリップフロップ数を総スキャンチェーン数で除した値を基準値に対して、それぞれのスキャンチェーンのフリップフロップ段数を所定の幅において比較し、比較結果に基づいてフリップフロップ段数の多いスキャンチェーンを分割して部分スキャンチェーンを形成する機能と、前記部分スキャンチェーンに対してフリップフロップ段数の少ないスキャンチェーンを連結して新たなスキャンチェーンを形成する機能との採否を判断するものである。
【0020】
上記構成によれば、フリップフロップ段数の多いスキャンチェーンを分割して部分スキャンチェーンを形成する機能、および部分スキャンチェーンに対してフリップフロップ段数の少ないスキャンチェーンを連結して新たなスキャンチェーンを形成する機能の採用を適切に判断することができるため、請求項1あるいは請求項2記載のスキャンテスト装置を最適に設計することができる。
【0021】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら説明する。
図1は本発明の一実施の形態に係る半導体装置に内蔵されるスキャンテスト装置の構成を示すブロック図である。図1において、図5および図6と同様の構成要素には同一符号を付している。
【0022】
図1に示すスキャンテスト装置においては、フリップフロップ211〜218、221〜228がそれぞれ8段のスキャンチェーン71、72に構成される。さらに、バーンインテスト用のフリップフロップ231および232も2段のスキャンチェーン73に構成されている。これらのフリップフロップがスキャンクロック5により動作し、NT信号6によりシフト動作とキャプチャ動作とが切り替えられる。
【0023】
スキャンチェーン71、72、73はスキャン入力端子として、それぞれSCANIN1、SCANIN2、SCANIN3を備え、スキャン出力端子として、それぞれSCANOUT1、SCANOUT2、SCANOUT3を備える。
【0024】
さらにスキャンテスト装置は、スキャンテストまたはバーンインテストを選択するモード信号8、スキャンチェーンの入力を選択するセレクタ91〜94、13、スキャンチェーンの連結の切り替えを制御する制御回路14、ゲート回路101、102、111、112、オア回路12を備えている。
【0025】
スキャンチェーン71は、フリップフロップ211と212からなるフリップフロップ群210と、フリップフロップ213〜218からなるフリップフロップ群219に分けられ、スキャンチェーン72は、フリップフロップ221と222からなるフリップフロップ群220と、フリップフロップ223〜228からなるフリップフロップ群229に分けられる。また、フリップフロップ231および232をフリップフロップ群230とする。
【0026】
セレクタ93、94はモード信号8に応じて、それぞれフリップフロップ群219、フリップフロップ群229の入力を選択し、セレクタ91、92、13は制御回路14の出力に応じて、それぞれフリップフロップ群210、フリップフロップ群220、フリップフロップ群230の入力を選択する。
【0027】
以上のように構成されたスキャンテスト装置は、モード信号8およびスキャンテスト時のNT信号6を受けた制御回路14の出力により各セレクタおよびゲート回路の動作を制御することで、スキャンテストまたはバーンインテストの動作をするように切り替えられる。
【0028】
バーンインテスト時には、セレクタ91はSCANIN1からの入力を選択し、セレクタ93はフリップフロップ群210の出力を選択し、セレクタ92はSCANIN2からの入力を選択し、セレクタ94はフリップフロップ群220の出力を選択することにより、スキャンチェーン71、72はそれぞれ1本のスキャンチェーンとして動作する。また、フリップフロップ群230はスキャン動作をせずバーンインテスト時の制御動作をする。
【0029】
スキャンテスト時には、各セレクタおよびゲート回路がモード信号8および制御回路14により、スキャンチェーンが短くなるように制御される。制御回路14はスキャンクロック5とNT信号6によりカウントするカウンタ141と、カウンタ141の出力をデコードするデコーダ142から構成され、スキャンチェーンの連結の切り替えを制御するタイミングを与える。
【0030】
図2は制御回路14が出力する制御信号を示すタイミングチャートである。カウンタ141は短縮したスキャンチェーンの段数分の6進カウンタで、NT信号6を条件にしてスキャンクロック5の立ち上がりを0から5までカウントする。すなわち、キャプチャ動作時はカウントを1回停止する。
【0031】
スキャン入力時は、スキャンチェーン71のフリップフロップ群219でセレクタ93はSCANIN1からの入力を選択し、スキャンチェーン72のフリップフロップ群229でセレクタ94はSCANIN2からの入力を選択する。また、フリップフロップ群210でセレクタ91はSCANIN3からの入力を最初の2クロック期間選択し、フリップフロップ群220でセレクタ92はSCANIN3からの入力を次に2クロック期間選択する。
【0032】
このように、フリップフロップ群210、220にはSCANIN3からテストパターンを入力するが、フリップフロップに1回入力したテストパターンを保持するために、選択したフリップフロップ群のみにクロックが供給されるようにゲート回路101、102を制御回路14で制御する。
【0033】
キャプチャ動作後は、スキャンチェーン71のフリップフロップ群219はSCANOUT1からテスト結果を出力し、スキャンチェーン72のフリップフロップ群229はSCANOUT2からテスト結果を出力する。また、フリップフロップ群210とフリップフロップ群220からのテスト結果は、セレクタ13を介してスキャンチェーン73によりSCANOUT3から出力される。
【0034】
セレクタ13の制御信号は制御回路14で生成される。このとき、セレクタ13の入力の衝突を避けるために、フリップフロップ群210とフリップフロップ群220からの出力をそれぞれゲートするようにゲート回路111、112を制御回路14で制御する。
【0035】
以上のように、従来の方法では1テストパターンをテストするために要するテスト時間が17ステップであったのに対して、本実施形態では、フリップフロップの段数の多いスキャンチェーンを分割し、フリップフロップの段数の少ないスキャンチェーンを連結することで、テストパターン入力シフト時間は6ステップ、キャプチャ時間は1ステップ、結果出力シフト時間は6ステップとなり、合計13ステップで1テストパターンのテストを行うことができる。また、外部端子を追加することなく上記効果を実現することが可能である。
【0036】
図3および図4は、スキャンテスト時のスキャンチェーンの連結切り替えを行うために、セレクタの挿入位置を決定するアルゴリズムを示すフローチャートである。ここで、スキャンチェーンのスキャン入力をそのスキャンチェーンの途中のフリップフロップから入力するためのセレクタをセレクタA、段数が少ない他のスキャンチェーンのスキャン入力をスキャンチェーンの初段に入力するためのセレクタをセレクタBとする。
【0037】
図1に示したスキャンテスト装置の場合であれば、セレクタ93、94がセレクタAに該当し、セレクタ91、92がセレクタBに該当する。スキャンテスト装置において、これらセレクタAとセレクタBをスキャンチェーンに挿入する位置を決定するアルゴリズムを図3および図4のフローチャートにより説明する。
【0038】
まず、すべてのフリップフロップ数(S310)をすべてのスキャンチェーン数(S311)で割る(S312)。その割った値+1よりフリップフロップ数が多いスキャンチェーンが無い場合(S320)、あるいは、その値−1よりフリップフロップ数が少ないスキャンチェーンが無い場合であれば(S330)、セレクタを挿入する必要は無い(S331)。
【0039】
上記以外の場合であれば、すべてのフリップフロップ数をスキャンチェーン数で割った値−1よりフリップフロップ数が少ないスキャンチェーンが1本であり(S340)、割った値に余りが無い場合は(S350)、割った値よりフリップフロップ数が多い各スキャンチェーンの最終段から割った値分のフリップフロップを遡り、その直前にセレクタAを挿入し(S351)、同じスキャンチェーンの初段のフリップフロップの直前にセレクタBを挿入する(S352)。
【0040】
割った値に余りがある場合は(S350)、割った値+1よりフリップフロップ数が多い各スキャンチェーンの最終段から割った値+1分のフリップフロップを遡り、その直前にセレクタAを挿入し(S353)、同じスキャンチェーンの初段のフリップフロップの直前にセレクタBを挿入する(S354)。
【0041】
すべてのフリップフロップ数をスキャンチェーン数で割った値−1よりフリップフロップ数が少ないスキャンチェーンが複数ある場合は、まず割った値に余りが無い場合は(S360)、割った値よりフリップフロップ数が多い各スキャンチェーンの最終段から割った値分のフリップフロップを遡り、その直前にセレクタAを挿入する(S361)。
【0042】
また、割った値に余りがある場合は、割った値+1よりフリップフロップ数が多い各スキャンチェーンの最終段から割った値+1分のフリップフロップを遡り、その直前にセレクタAを挿入する(S362)。
【0043】
セレクタAによって切り離されたフリップフロップが無いスキャンチェーンが1本の場合は(S370)、その1本のスキャンチェーンから複数のスキャンチェーンに対してテストパターンを入力できるように、他スキャンチェーンの初段のフリップフロップの直前にセレクタBを挿入する(S371)。
【0044】
セレクタAによって切り離されたフリップフロップの無いスキャンチェーンが複数の場合は(S370)、それらのスキャンチェーンから複数のスキャンチェーンに対してテストパターンを入力できるようになる可能性がある。
【0045】
それらのスキャンチェーンからテストパターンを入力するためのフリップフロップ数を調べ(S372)、すべてのフリップフロップ数をスキャンチェーン数で割った値、あるいはその値+1になるように、セレクタAによって切り離されたフリップフロップを除くすべてのフリップフロップのあるスキャンチェーンの残りの連続するフリップフロップ数を区切り(S373)、その区切った箇所にセレクタBを挿入する(S374)。
【0046】
上記アルゴリズムにより、フリップフロップの段数が異なる各スキャンチェーンをシフト時に適宜連結し、各スキャンチェーンのフリップフロップ数が均一になるように動作させることが可能になる。
【0047】
【発明の効果】
以上説明したように、本発明によれば、バーンインテスト用等のスキャンチェーンによりスキャンチェーンのフリップフロップの段数に差が生じている場合に、スキャンテスト時に段数の多いスキャンチェーンを分割し、段数の少ないスキャンチェーンを連結することにより、スキャンチェーンのフリップフロップの段数を平均化することが可能になり、スキャンテスト時間を短縮することができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態に係るスキャンテスト装置の構成を示すブロック図。
【図2】本発明のスキャンテスト装置における制御信号を示すタイミングチャート。
【図3】本発明のスキャンテスト装置におけるセレクタの挿入位置を決定するアルゴリズムを示すフローチャート。
【図4】本発明のスキャンテスト装置におけるセレクタの挿入位置を決定するアルゴリズムを示すフローチャート。
【図5】スキャンチェーンを張るためのフリップフロップの構成を示すブロック図。
【図6】従来のスキャンテスト装置の構成を示すブロック図。
【符号の説明】
1 組合せ回路
2 スキャンチェーンを張るためのフリップフロップ
210、219、220、229、230 フリップフロップ群
211〜218、221〜228、231、232 フリップフロップ
3 スキャンイン
4 スキャンアウト
5 スキャンクロック
6 NT信号
71、72、73 スキャンチェーン
8 モード信号
91〜94 セレクタ
101、102、111、112 ゲート回路
12 オア回路
13 セレクタ
14 制御回路
141 カウンタ
142 デコーダ
Claims (3)
- 半導体装置のスキャンテスト時に、フリップフロップ段数の多いスキャンチェーンを分割して部分スキャンチェーンを形成する機能と、前記部分スキャンチェーンに対してフリップフロップ段数の少ないスキャンチェーンを連結して新たなスキャンチェーンを形成する機能とを備えるスキャンテスト装置。
- 前記部分スキャンチェーンおよび前記フリップフロップ段数の少ないスキャンチェーンが複数連結されて形成されたスキャンチェーンにおいて、1対多の並列連結がなされた場合に、前記並列連結されたスキャンチェーンあるいは部分スキャンチェーンを切り替えるタイミング制御機能を備える請求項1記載のスキャンテスト装置。
- 半導体装置のスキャンチェーンの総フリップフロップ数を総スキャンチェーン数で除した値を基準値に対して、それぞれのスキャンチェーンのフリップフロップ段数を所定の幅において比較し、比較結果に基づいてフリップフロップ段数の多いスキャンチェーンを分割して部分スキャンチェーンを形成する機能と、前記部分スキャンチェーンに対してフリップフロップ段数の少ないスキャンチェーンを連結して新たなスキャンチェーンを形成する機能との採否を判断するスキャンテスト装置の設計方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003078048A JP2004286549A (ja) | 2003-03-20 | 2003-03-20 | スキャンテスト装置およびその設計方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003078048A JP2004286549A (ja) | 2003-03-20 | 2003-03-20 | スキャンテスト装置およびその設計方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004286549A true JP2004286549A (ja) | 2004-10-14 |
Family
ID=33292647
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003078048A Pending JP2004286549A (ja) | 2003-03-20 | 2003-03-20 | スキャンテスト装置およびその設計方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004286549A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008102433A1 (ja) * | 2007-02-20 | 2008-08-28 | Fujitsu Microelectronics Limited | Lsi試験装置、lsi試験方法、lsi試験プログラムおよび記録媒体 |
JP2010527487A (ja) * | 2007-05-15 | 2010-08-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | スキャン・チェーンを均等化し、均等化された長さのスキャン・チェーンを階層的に設計された集積回路に挿入するための方法、システム及びプログラム |
JP2011102764A (ja) * | 2009-11-11 | 2011-05-26 | Renesas Electronics Corp | 半導体集積回路、半導体集積回路設計方法及び半導体集積回路設計プログラム |
JP2016173349A (ja) * | 2015-03-18 | 2016-09-29 | ルネサスエレクトロニクス株式会社 | 半導体装置及び設計装置 |
-
2003
- 2003-03-20 JP JP2003078048A patent/JP2004286549A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008102433A1 (ja) * | 2007-02-20 | 2008-08-28 | Fujitsu Microelectronics Limited | Lsi試験装置、lsi試験方法、lsi試験プログラムおよび記録媒体 |
CN101669036A (zh) * | 2007-02-20 | 2010-03-10 | 富士通微电子株式会社 | Lsi试验装置、lsi试验方法、lsi试验程序以及存储介质 |
US8134383B2 (en) | 2007-02-20 | 2012-03-13 | Fujitsu Semiconductor Limited | LSI test apparatus, LSI test method, and computer product |
JP5316405B2 (ja) * | 2007-02-20 | 2013-10-16 | 富士通セミコンダクター株式会社 | Lsi試験装置、lsi試験方法、lsi試験プログラムおよび記録媒体 |
JP2010527487A (ja) * | 2007-05-15 | 2010-08-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | スキャン・チェーンを均等化し、均等化された長さのスキャン・チェーンを階層的に設計された集積回路に挿入するための方法、システム及びプログラム |
JP2011102764A (ja) * | 2009-11-11 | 2011-05-26 | Renesas Electronics Corp | 半導体集積回路、半導体集積回路設計方法及び半導体集積回路設計プログラム |
JP2016173349A (ja) * | 2015-03-18 | 2016-09-29 | ルネサスエレクトロニクス株式会社 | 半導体装置及び設計装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS60147660A (ja) | 線形帰環シフトレジスタ | |
US20160349318A1 (en) | Dynamic Clock Chain Bypass | |
JP2008286553A (ja) | 半導体集積回路モジュール | |
US20110175638A1 (en) | Semiconductor integrated circuit and core test circuit | |
JP2012181138A (ja) | 半導体集積回路、設計装置および設計方法 | |
US7461307B2 (en) | System and method for improving transition delay fault coverage in delay fault tests through use of an enhanced scan flip-flop | |
JP2004110265A (ja) | 半導体集積回路のテスト容易化方法 | |
JP2006234512A (ja) | 半導体集積回路および半導体集積回路のテスト方法 | |
JP2004286549A (ja) | スキャンテスト装置およびその設計方法 | |
JP2004361351A (ja) | スキャンパス回路およびそれを備える論理回路ならびに集積回路のテスト方法 | |
JP2005024410A (ja) | 半導体集積回路装置 | |
JP2006058152A (ja) | 半導体装置の試験方法及び半導体装置の試験回路 | |
US20040181723A1 (en) | Scan test control method and scan test circuit | |
JP4610919B2 (ja) | 半導体集積回路装置 | |
JP2008275337A (ja) | テスト装置及びテスト方法 | |
JP2006302470A (ja) | 半導体装置 | |
JP2013088400A (ja) | 半導体集積回路の検査方法および半導体集積回路 | |
JP2009175154A (ja) | 半導体集積回路およびその設計方法 | |
JP4520103B2 (ja) | スキャンテストパタン入力方法および半導体集積回路 | |
JP2006004509A (ja) | 半導体集積回路およびハードマクロ回路 | |
JP2004040037A (ja) | 半導体集積回路の検査装置 | |
JP5453981B2 (ja) | Lsi、及びそのテストデータ設定方法 | |
JP2004279348A (ja) | テスト容易化回路、および検査方法 | |
JP2005115578A (ja) | 半導体集積回路およびその設計方法 | |
JP2004012399A (ja) | スキャン機能付きフリップフロップ回路、スキャンテスト回路および半導体集積回路 |