JP4520103B2 - スキャンテストパタン入力方法および半導体集積回路 - Google Patents
スキャンテストパタン入力方法および半導体集積回路 Download PDFInfo
- Publication number
- JP4520103B2 JP4520103B2 JP2003099395A JP2003099395A JP4520103B2 JP 4520103 B2 JP4520103 B2 JP 4520103B2 JP 2003099395 A JP2003099395 A JP 2003099395A JP 2003099395 A JP2003099395 A JP 2003099395A JP 4520103 B2 JP4520103 B2 JP 4520103B2
- Authority
- JP
- Japan
- Prior art keywords
- scan
- test pattern
- clock
- scan chain
- chain
- 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.)
- Expired - Fee Related
Links
Images
Description
【発明の属する技術分野】
本発明は、スキャン設計された半導体集積回路におけるスキャンテスト方法、及びそれを実現するための構成に関する。
【0002】
【従来の技術】
半導体集積回路のテストを容易にする技術として、従来、半導体集積回路内の記憶素子等のフリップフロップをチェーン状に接続し、シフトレジスタを用いてこのチェーン状に接続されたフリップフロップ(以下、スキャンチェーンと呼ぶ)に次々と値を設定,読み出しを可能にする回路を付加するシフトスキャン方式が採用されている(例えば、特許文献1〜4参照)。
【0003】
スキャンテストをする場合、まず、スキャンチェーンをシフト動作に切り替え、スキャンチェーンに周期的なクロックを入力しながら、外部からテストパタンである信号値をこのクロックに同期して周期的に印加し、チェーン接続されたフリップフロップ内を順次シフトさせることにより、テストパタンをスキャンチェーンに設定する。その後、スキャンチェーンを通常動作に切り替え、組み合わせ回路を実動作させる。そして再度スキャンチェーンをシフトさせて応答パタンを順次スキャンデータ出力端子から出力させる。以上の処理を、スキャンチェーンに設定されたテストパタン毎に繰り返す。
【0004】
テストに必要なテストパタンデータは回路外部のテスター内のメモリに記憶されており、テストに先立ってメモリから読み出されてスキャンチェーンに設定される。また、通常、スキャンチェーンは複数に分割されており、スキャンクロックですべてのスキャンチェーンが同時にシフト動作するように構成されている。そして、スキャンクロックが印加されるたびに、テスターに記憶されているテストパタンデータが各スキャンチェーンに並列に順次取り込まれる。
【0005】
テスト時にフリップフロップに設定するテストパタンは、通常ATPG(Automatic Test Pattern Generator;テスト生成プログラム)によりあらゆる可能性を考慮して多種類のテストパタンが生成され、生成されたテストパタンを、テストパタン毎に順次チェーン状に接続されたフリップフロップに設定することにより所望のテストが実行される。ATPGソフトウェアツールは、各種の製造不良(故障)モデルに対して、殆ど完全な故障検出率を保証する各種テストパタンを生成することができる点で非常に有効な手段である。
【0006】
図6は、従来のスキャンテストの構成例を示すブロック図であり、半導体集積回路(LSIチップ)70内部の記憶素子であるフリップフロップ等をチェーン状に接続したスキャンチェーンが構成されており、外部から与えられるパタン入力を順次シフトして値を設定・出力することができるようになっている。スキャンチェーンは複数(図では32本)に分割され、スキャンチェーン束71として構成されている。一方、テスター72は、テスターメモリ73およびスキャンクロック発生部を有しており、テスターメモリ73には、ATPGにより生成されたテストパタンが格納されている。
【0007】
スキャンテストを行う際には、まず、32本のスキャンチェーンからなるスキャンチェーン束71に対して、テスターメモリ73に格納されているテストパタンデータをスキャンクロックに同期して32ビット並列に入力することにより、スキャンチェーン束71にテストパタンを設定する。そして、設定されたテストパタン毎に所定のスキャンテストを実行する。
【0008】
【特許文献1】
特開平10−197603号公報
【特許文献2】
特開2000−258500号公報
【特許文献3】
特開2002−174518号公報
【特許文献4】
米国特許第6,327,687号明細書
【0009】
【発明が解決しようとする課題】
図6の構成では、スキャンテストを行う場合、テスターメモリ73に格納されたテストパタンが、外部からのスキャンクロックにあわせて、32本のスキャンチェーンからなるスキャンチェーン束71の入力側から順次シフト入力されるが、スキャン化されたすべてのフリップフロップの値を設定するためには、外部に用意されるテスターメモリ73として、フリップフロップの数だけのメモリ容量を必要とするとともに、それらのメモリに予めテストパタンを記憶する作業が必要となるため、テスト(テスター)に多大なコストがかかる。
【0010】
例えば、このATPGツールによる故障検出目標が回路内の特定部分において起こりうる故障である場合、非常に少ないスキャンセル(フリップフロップ)のみが、この特定の故障を検出するために指定されるにすぎず、スキャンチェーン内の残りの多くのスキャンセル(フリップフロップ)は、ドントケア値(“0”でも“1”でもよいランダムな値)で満たされて一つのテスターメモリにストアされる。そのためテストパタン内に本来指定しなくてもよい値が多く含まれているにもかかわらず、それらも全てドントケア値としてテスターメモリに記憶しておかなければならないので、テストパタンをストアするために大容量のテスターメモリ73が必要となる。
【0011】
また、上記特許文献2あるいは特許文献3には、予め発生させるパタンを設定したパタン発生器を用いる代わりに、ランダムなパタンを発生することができる擬似ランダム発生器を用い、スキャンチェーンにランダムなパタンを設定してテストする方法の可能性も記載されているが、この方法では、テストパタンとして最適なパタンが設定されるとは限らないので、必ずしも効率的なテスト方法とはいえない。
【0012】
また、上記特許文献4には、ATPGによって生成されたテストパタンを圧縮してテスターメモリに記憶し、テスト時に該圧縮されたデータを解凍してスキャンチェーンにテストパタンとして設定することにより、テスターのメモリ領域を減らす技術が記載されているが、解凍するためのハードウェアが必要となり、また、圧縮されたATPGパタンの全てを解凍ハードウェアによって再現できるとは限らないという問題がある。
【0013】
本発明の目的は、上記問題点に鑑み、ATPGによって生成された全てのテストパタンを再現可能なスキャンテストパタン入力方法を提供することにある。
【0014】
【課題を解決するための手段】
本発明は、半導体集積回路内部の記憶素子であるフリップフロップをチェーン状に接続したスキャンチェーンに対してスキャンテストパタンを入力する方法において、パタンを予め推定でき、スキャンクロック単位で発生するテストパタン信号が、ATPG(テスト生成プログラム)により生成されたATPGパタンの前記スキャンチェーンに入力されるスキャンクロック単位のパタンと一致またはドントケアの関係にあるときの該スキャンクロック単位のパタン発生順序を記憶し、前記テストパタン信号発生させ、前記発生順序に基づき、前記スキャンチェーンに順次シフト入力することによって前記ATPGパタンを当該半導体集積回路に設定することを特徴とする。
【0015】
本発明のスキャンテストパタン入力装置は、パタンを予め推定でき、半導体集積回路内部のスキャンチェーンにスキャンクロック単位のテストパタン信号を出力するテストパタン発生手段と、該テストパタン発生手段から出力される前記スキャンクロック単位のテストパタン信号が、ATPG(テスト生成プログラム)により生成されたATPGパタンの前記スキャンチェーンに入力されるスキャンクロック単位のパタンと一致またはドントケアの関係にあるとき、前記スキャンチェーンに前記テストパタン発生手段から出力されるスキャンクロック単位のパタン発生順序を記憶する記憶手段と、前記パタン発生順序に基づき、前記テストパタン発生手段が発生するテストパタン信号を入力するテストパタン入力制御手段とを有していることを特徴とする。
【0016】
また、本発明の半導体集積回路は、半導体集積回路内部の記憶素子であるフリップフロップをチェーン状に接続したスキャンチェーンと、予めパタンを推定できる所定周期のテストパタン信号を発生するテストパタン発生器と、該テストパタン発生器から出力されるスキャンクロック単位のテストパタン信号とATPG(テスト生成プログラム)により生成されたATPGパタンの前記スキャンチェーンに入力されるスキャンクロック単位のパタンとが一致またはドントケアの関係にあることを示す信号を受けたときに、該スキャンクロック単位のパタン発生順序を記憶するメモリと、前記パタン発生順序に基づき、前記テストパタン発生器が発生したテストパタン信号を前記スキャンチェーンにシフト入力するためのクロックを該スキャンチェーンに供給するスキャンクロック選択デコーダとを有していることを特徴とする。
【0017】
【発明の実施の形態】
図1は、本発明の第1の実施形態を示すブロック図であり、半導体集積回路内部の記憶素子であるフリップフロップ等をチェーン状に接続したスキャンチェーン101と、所定周期の擬似ランダム信号を発生するランダムパタン発生器102と、スキャンチェーン101に入力されるATPGパタン上の信号とランダムパタン発生器102から出力される信号とが一致するときの該信号をランダムパタン発生器102からスキャンチェーン101に入力するためのクロックをスキャンチェーン101に供給するスキャンクロック選択デコーダ103を備えている。
【0018】
スキャンチェーン101はm本(mは1または2以上)のスキャンチェーンからなり、ランダムパタン発生器102からは1クロック毎にmビットのランダムパタン信号が出力され、このmビットのランダムパタン信号の各ビットとm本のスキャンチェーンとが対応しており、m本のスキャンチェーンに対して1クロック毎にこのmビットのランダムパタン信号内の各1ビットが、対応するスキャンチェーンに入力される。
【0019】
スキャンクロック選択デコーダ103には、クロック信号とスキャンクロック選択信号が入力され、スキャンクロック選択信号がスキャンクロックの送出を許可(選択)しているときに入力されたクロック信号がスキャンシフトクロックとしてスキャンチェーン101に供給される。スキャンクロック選択信号は、ATPGパタンとランダムパタン発生器102から発生される擬似ランダム信号に基づいて生成されてテスターメモリ等に記憶され、テストパタン設定時に読み出されてスキャンクロック選択デコーダ103に入力される。
【0020】
ランダムパタン発生器102は、例えばシフトレジスタとEX−OR回路の組み合わせによって構成され、これにクロックパルスを加えることによりその構成によって決まるある周期のランダムパルス列を回路内部で自動生成するもの、あるいは外部から制御できるような回路を用いるか、もしくは直接外部から信号を与えるようにしてもよい。ランダムパタン発生器102から出力されるランダム信号のパタンは予め推定できるので、スキャンチェーン101に設定するATPGパタンが決まれば、スキャンクロックを選択制御するデータをスキャンクロック単位で決定することができる。
【0021】
例えば、テスターメモリにはATPGパタン毎のスキャンクロック選択制御データを記憶しておき、スキャンチェーン101に設定するATPGパタン毎に、該当するスキャンクロック選択制御データをスキャンクロック選択信号としてランダムパタン発生器102のクロック単位のランダム信号発生と同期して読み出すことにより、スキャンチェーン101に所望のATPGパタンを設定することが可能となる。
【0022】
図2は、本実施形態のスキャンテストパタン入力動作原理を示す概略図である。なお、図2ではスキャンチェーン101が6本のスキャンチェーンからなるチェーン束として構成されている場合を示している。
【0023】
また、ATPG(テスト生成プログラム)によって生成され、スキャンクロックが入力される毎にスキャンチェーン101に入力されるATPGパタンは、(0××0××),(1××0×1),…であり(×はドントケア値)、ランダムパタン発生器102からクロック(t1,t2,t3,…)毎に出力される6ビットのランダム信号パタンは(010011),(110010),(101001),…である場合を示している。
【0024】
クロック(t1)におけるランダム信号パタン(010011)は第1番目のスキャンクロックで入力されるATPGパタン(0××0××)と一致またはドントケアの関係にあるので、スキャンクロック選択デコーダ103にスキャンクロック選択信号が入力される。従って、クロック(t1)ではスキャンクロック選択デコーダ103からスキャンチェーン101にスキャンクロックが供給され、6本のスキャンチェーンに信号「0,1,0,0,1,1」がスキャンクロックに同期してシフト入力される。
【0025】
次に、クロック(t2)におけるランダム信号パタン(110010)は第2番目のスキャンクロックで入力されるATPGパタン(1××0×1)と一致しないので、スキャンクロック選択デコーダ103にスキャンクロック選択信号は入力されない。従って、クロック(t2)ではスキャンクロック選択デコーダ103からスキャンチェーン101にスキャンクロックは供給されず、ランダム信号パタン(110010)は破棄される。
【0026】
次に、クロック(t3)におけるランダム信号パタン(101001)は第2番目のスキャンクロックで入力されるATPGパタン(1××0×1)と一致またはドントケアの関係にあるので、スキャンクロック選択デコーダ103にスキャンクロック選択信号が入力される。従って、クロック(t3)ではスキャンクロック選択デコーダ103からスキャンチェーン101にスキャンクロックが供給され、6本のスキャンチェーンに信号「1,0,1,0,0,1」がスキャンクロックに同期してシフト入力される。以下、同様の動作を繰り返すことにより、スキャンチェーン101に所望のATPGパタンが設定される。
【0027】
従って、テスターメモリには、生成されたATPGパタン毎に、ランダムパタン発生器102から発生されるスキャンクロック単位の擬似ランダム信号の中から、スキャンクロックとして採用するクロック番号データを、擬似ランダム信号発生開始時点を基準として記憶しておき(実施例の場合、クロック番号t1,t3,…)、半導体集積回路にATPGパタンを設定するためにスキャンクロック単位の擬似ランダム信号の発生を開始した時点からのクロックカウント値と一致したときの擬似ランダム信号を順次スキャンチェーンに入力することにより当該ATPGパタンを設定することができる。
【0028】
あるいは、テスターメモリとしてシフトレジスタを用い、該シフトレジスタに生成されたATPGパタン毎に、ランダムパタン発生器102から発生されるスキャンクロック単位の擬似ランダム信号のうち、採用するクロックを“1”(または“0”)、採用しないクロックを“0”(または“1”)としてクロック開始から順に記憶しておき(実施例の場合、1,0,1,…)、このシフトレジスタの値をスキャンクロック単位の擬似ランダム信号発生クロックと同期して読み出し、“1”(または“0”)であればそのときのスキャンクロック単位の擬似ランダム信号をスキャンチェーンに入力し、“0”(または“1”)であればそのときのスキャンクロック単位の擬似ランダム信号を破棄することにより、スキャンチェーンに当該ATPGパタンを設定してもよい。
【0029】
図3は、本実施形態のスキャンテストパタン入力動作を示すフローチャートである。なお、図3では、テスターメモリにスキャンクロックとして採用するクロック番号データが記憶されている場合を想定している。以下、図1〜図3を参照して本実施形態のスキャンテストパタン入力動作について説明する。
【0030】
テスターメモリには、ランダムパタン発生器102から発生するスキャンクロック単位の擬似ランダム信号の中からスキャンクロックとして採用する擬似ランダム信号発生開始時点からのクロック番号に対応するデータ(例えば、クロック番号t1,t3,…)が、スキャンチェーン101に設定されるATPGパタンに対応して記憶されている。半導体集積回路に上記ATPGパタンを設定するためのクロック入力が開始される(ステップS1)と、テスターメモリから最初のクロック番号(実施例では、t1)が読み出される(ステップS2)。
【0031】
ランダムパタン発生器102からはクロック入力の開始と同時に、入力クロックに同期してスキャンクロック単位の擬似ランダム信号が出力される(ステップS3)とともに、クロック入力開始時点からの入力クロック数がカウントされる(ステップS4)。
【0032】
次に、テスターメモリから読み出されたクロック番号と、クロック入力開始時点からの入力クロックカウント値を比較し(ステップS5)、両者が一致したときには、スキャンクロック選択デコーダ103からスキャンチェーン101にシフトクロックを入力して、当該クロック入力に対応して生成されたスキャンクロック単位の擬似ランダム信号をスキャンチェーン101に入力(ステップS6)した後、テスターメモリに記憶されているクロック番号を全て読み出したか否かを判定する(ステップS7)。
【0033】
一方、テスターメモリから読み出されたクロック番号と入力クロックカウント値が不一致の時には、スキャンクロック選択デコーダ103からスキャンチェーン101へのシフトクロックを停止し、当該クロック入力に対応して生成されたスキャンクロック単位の擬似ランダム信号を破棄する(ステップS8)。
【0034】
ステップ7でテスターメモリに記憶されているクロック番号が全て読み出されていないとき、またはステップ8が実行されたときには、テスターメモリから次のクロック番号を読み出し(ステップS9)、ステップ3〜ステップ8を繰り返す。ステップ7でテスターメモリに記憶されているクロック番号が全て読み出されたときに、テストパタン設定を終了する(ステップS10)。これらの処理はプログラムによるソフトウェア処理によって実現することもできる。
【0035】
本実施形態によれば、スキャンテスト用のテスターメモリには、ランダムパタン発生器102がスキャンクロック単位のランダムパタンの発生を開始した時点からのクロック番号(t1,t2,t3,…)に対して、どのクロック番号をスキャンチェーン101のスキャンクロックとして採用するかを、生成されたATPGパタンと対応して記憶しておき、クロック信号によりランダムパタン発生器102がスキャンチェーン101のシフト入力動作を開始した時点から読み出すことにより期待値どおりのATPGパタンを設定することができる。
【0036】
また、テスターメモリとして、生成されたATPGパタン毎に、ランダムパタン発生器102から発生されるスキャンクロック単位の擬似ランダム信号の中からスキャンクロックとして採用するクロック番号データ(上記実施例では、クロック番号t1,t3,…)を記憶する大きさのメモリ容量があれば足りるので、テストパタン情報が圧縮され、テスターメモリが少なくて済む。
【0037】
図4は、本発明の第2の実施形態を示すブロック図である。本実施形態では、半導体集積回路(LSIチップ)100内のフリップフロップをスキャン化した後、例えば32本のスキャンチェーンからなる複数(実施例では3個)のグループ(スキャンチェーン束)111〜113に分割する。そして、それぞれのスキャンチェーン束(以下、チェーン束A,B,C)は、独立したスキャンクロックにより制御可能に構成されている。
【0038】
本実施形態においては、所定周期の擬似ランダム信号を発生するランダムパタン発生器102から出力されるスキャンクロック単位(32ビット)の擬似ランダム信号は、チェーン束A,B,Cに並列に入力される。一方、スキャンクロック選択デコーダ103は、テスター130から入力される例えば2ビットのクロック選択制御信号をデコードすることにより、ランダムパタン発生器102から出力される32ビットの擬似ランダム信号を入力すべきチェーン束を選択し、該選択したチェーン束にのみスキャンクロックを供給する。従って、スキャンクロック単位の擬似ランダム信号は、クロック毎に選択されたチェーン束にのみ入力される。
【0039】
ランダムパタン発生器102から出力されるスキャンクロック単位(32ビット)の擬似ランダム信号が、チェーン束A,B,Cのスキャンクロック単位(32ビット)の各テストパタンのいずれのテストパタンとも一致しないときには、チェーン束A,B,Cのいずれにもスキャンクロックは供給されず、当該スキャンクロック単位の擬似ランダム信号は破棄される。
【0040】
第1の実施形態の場合、スキャンテストパタン設定時にすべてのスキャンチェーンを同一のクロックで制御するため、スキャンシフト中はすべてのフリップフロップが動作状態となり消費電力も大きくなる。電源設計等では、一般に通常動作を考慮して設計される場合があり、このため、スキャンチェーンの数が多くなると、スキャンテストパタン設定時の予想以上の電力消費により電源電圧降下等の問題が発生し、回路が正常に動作しなくなることがある。
【0041】
本実施形態では、スキャンシフト時には、スキャンクロックを選択・制御することにより、動作させるスキャンチェーン(チェーン束)を選択することによって、同時動作するスキャンフリップフロップの数を少なくすることができるので、スキャンシフト時の消費電力を抑えることができ、テストパタン情報の圧縮効果に加えて、消費電力増大に伴って生ずる回路の誤動作を抑制する効果も期待できる。
【0042】
図5は、本実施形態のスキャンテストパタン入力動作原理を示す概略図である。なお、図5では各チェーン束A,B,Cがそれぞれ6本のスキャンチェーンからなるチェーン束として構成されている場合を示しており、ATPGパタンは図の左から右に向かって順に入力されるものとする。
【0043】
図5において、スキャンクロックが入力される毎に各チェーン束A,B,Cに入力されるATPGパタンは、チェーン束Aでは、(1××0×1),(0××××1),…、チェーン束Bでは、(0××0××),(×0×110),…、チェーン束Cでは、(××1×××),(0×××××),…と生成されるものとし(×はドントケア値)、ランダムパタン発生器102からクロック(t1,t2,t3,…)毎に出力される6ビットのランダム信号パタンは(010011),(110010),(101001),…であるとする。
【0044】
クロック(t1)におけるランダム信号パタン(010011)は、チェーン束Bの第1番目のスキャンクロックで入力されるATPGパタン(0××0××)と一致またはドントケアの関係にあるので、テスターメモリ131からスキャンクロック選択デコーダ103にチェーン束Bを選択する2ビットのクロック選択制御信号が入力される。従って、クロック(t1)ではスキャンクロック選択デコーダ103からチェーン束Bにスキャンクロックが供給され、チェーン束Bの6本のスキャンチェーンに信号「0,1,0,0,1,1」が入力される。
【0045】
次に、クロック(t2)におけるランダム信号パタン(110010)は、チェーン束Aの第1番目のスキャンクロックで入力されるATPGパタン(1××0×1)、チェーン束Bの第2番目のスキャンクロックで入力されるATPGパタン(×0×110)、チェーン束Cの第1番目のスキャンクロックで入力されるATPGパタン(××1×××)のいずれともと一致しないので、テスターメモリ131からスキャンクロック選択デコーダ103には何れのチェーン束も選択しないクロック選択制御信号が入力される。従って、クロック(t2)ではスキャンクロック選択デコーダ103からのスキャンクロックはいずれのチェーン束にも供給されず、ランダム信号パタン(110010)は破棄される。
【0046】
次に、クロック(t3)におけるランダム信号パタン(101001)は、チェーン束Aの第1番目のスキャンクロックで入力されるATPGパタン(1××0×1)と一致またはドントケアの関係にあるので、テスターメモリ131からスキャンクロック選択デコーダ103にチェーン束Aを選択する2ビットのクロック選択制御信号が入力される。従って、クロック(t3)ではスキャンクロック選択デコーダ103からチェーン束Aにスキャンクロックが供給され、チェーン束Aの6本のスキャンチェーンに信号「1,0,1,0,0,1」が入力される。
【0047】
以下、同様の動作を繰り返すことにより、各チェーン束A,B,Cに所望のATPGパタンが設定される。従って、例えば、スキャンクロックとして採用するクロックを“1”採用しないクロックを“0”としてクロック開始から順に記憶する(上記実施例では、チェーン束Aは0,0,1,…、チェーン束Bは1,0,0,…、チェーン束Cは0,0,0,…)シフトレジスタをチェーン束毎に設け、半導体集積回路にATPGパタンを設定するためのクロック入力開始時点からのクロックと同期して各シフトレジスタの値を読み出し、発生したスキャンクロック単位の擬似ランダム信号を順次該当するチェーン束に入力することにより当該ATPGパタンを設定することができる。
【0048】
通常、ATPGによりテスト生成されたパタンには、ドントケア値(0でも1でもどちらでもかまわない値)が多く含まれており、多くの場合、ある特定の値(0もしくは1)に設定する必要のあるフリップフロップの数は非常に少ない。ドントケア値が多くなるに従って本発明のランダムパタン生成器で生成したパタンがいずれかのスキャン束に入力される確率は高くなり、少ないパタンメモリ容量で、極めて効率的なスキャンテストパタンの設定が可能となる。
【0049】
また、チェーン束A,B,Cのうち、2つ以上のチェーン束においてスキャンクロック単位のテストパタンが、ランダムパタン発生器102から出力されるスキャンクロック単位の擬似ランダム信号と一致またはドントケアの関係にある場合には、これら一致またはドントケアの関係にある複数のチェーン束にスキャンクロックを供給し、該擬似ランダム信号を2つ以上のチェーン束に同時に入力することができる。この場合には、クロック選択制御信号は3ビットとなるが、スキャンクロック単位の擬似ランダム信号の発生回数を減らすことができるので圧縮効率は高まる。
【0050】
なお、本実施形態には、スキャンテストパタン設定後のテスト時に、各スキャンチェーンから出力されるテストデータに対してグループ(チェーン束)毎の排他的論理和をとるXOR回路121〜123、およびXOR回路121〜123からの出力結果をテスターメモリ131へ出力するMUX124を備えた構成が示されているが、これらの構成は従来周知であり、また本発明の特徴(テストパタンの設定)とは直接関係しないのでその詳細説明は省略する。
【0051】
また、本実施形態では、テストパタン発生手段として、ランダムパタン発生器を用いているが、本発明は、特にランダムパタン発生器に限定されるものではなく、例えば、スキャンチェーン束の数に対応する組み合わせパタンを発生することが可能な任意のテストパタン発生手段を用いることができる。
【0052】
また、本実施形態では、各スキャンチェーン束内のスキャンチェーンの数を全て等しく設定しているが、各スキャンチェーン束内のスキャンチェーンの数は必ずしも等しくする必要はなく、各スキャンチェーン束内のスキャンチェーンの数は異なっていてもよい。
【0053】
その場合、テストパタン発生手段は、少なくとも、最大のスキャンチェーンの数を有するスキャンチェーン束に対してスキャンクロック単位のテストパタン信号を出力可能な構成としておけば、それよりも少ないスキャンチェーンの数を有するスキャンチェーン束に対しては、その中からスキャンチェーンの数に等しいビット数を選定することにより対応できる。あるいは、各スキャンチェーン束に個別にテストパタン発生手段を設けてもよい。
【0054】
【発明の効果】
本発明によれば、スキャンテスト用のテスターメモリには、ランダムパタン発生器がスキャンクロック単位のランダムパタンの発生を開始した時点からのクロック番号と、どのクロック番号をスキャンチェーンのスキャンクロックとして採用するかを、生成されたATPGパタンと対応して記憶しておき、クロック信号によりランダムパタン発生器がスキャンチェーンのシフト入力動作を開始した時点から読み出すことによりATPGパタンの設定が可能となる。従って、生成されたATPGパタン毎に、ランダムパタン発生器から発生されるスキャンクロック単位の擬似ランダム信号の中からスキャンクロックとして採用するクロック番号データを記憶する大きさのメモリ容量があれば足りるので、テストパタン情報が圧縮され、テスターメモリが少なくて済む。
【0055】
また、スキャンチェーンを複数のスキャンチェーン束に分割した場合には、スキャンシフト時にスキャンクロックを選択・制御することにより、動作させるスキャンチェーン束を選択することができ、同時動作するスキャンフリップフロップの数を少なくすることができるので、スキャンシフト時の消費電力を抑えることができ、テストパタン情報の圧縮効果に加えて、回路の誤動作を抑制する効果も期待できる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態を示すブロック図である。
【図2】第1の実施形態のスキャンテストパタン入力動作を説明するための概略図である。
【図3】本実施形態のスキャンテストパタン入力動作を示すフローチャートである。
【図4】本発明の第2の実施形態を示すブロック図である。
【図5】第2の実施形態のスキャンテストパタン入力動作を説明するための概略図である。
【図6】従来のスキャンテストの構成例を示すブロック図である。
【符号の説明】
100 LSIチップ
101 スキャンチェーン
102 乱数発生器
103 スキャンクロック選択デコーダ
111〜113 スキャンチェーン束
121〜123 XOR回路
124 マルチプレクサ
130 テスター
131 テスターメモリ
Claims (20)
- 半導体集積回路内部の記憶素子であるフリップフロップをチェーン状に接続したスキャンチェーンに対してスキャンテストパタンを入力する方法において、
パタンを予め推定でき、スキャンクロック単位で発生するテストパタン信号が、ATPG(テスト生成プログラム)により生成されたATPGパタンの前記スキャンチェーンに入力されるスキャンクロック単位のパタンと一致またはドントケアの関係にあるときの該スキャンクロック単位のパタン発生順序を記憶し、
前記テストパタン信号発生させ、前記発生順序に基づき、前記スキャンチェーンに順次シフト入力することによって前記ATPGパタンを当該半導体集積回路に設定することを特徴とするスキャンテストパタン入力方法。 - 前記スキャンチェーンは、m本(m≧2)のスキャンチェーンからなり、1クロック毎に少なくともmビットの前記スキャンクロック単位のテストパタン信号が出力され、該テストパタン信号の各ビットと前記m本のスキャンチェーンとが対応しており、前記m本のスキャンチェーンに対して1クロック毎に前記mビットのテストパタン信号内の各1ビットが、前記対応するスキャンチェーンに並列に入力されることを特徴とする請求項1に記載のスキャンテストパタン入力方法。
- 前記スキャンチェーンは、m本(m≧2)のスキャンチェーンからなるn(n≧2)個のスキャンチェーン束に分割され、1クロック毎に少なくともmビットの前記スキャンクロック単位のテストパタン信号が出力され、該テストパタン信号の各ビットと前記各スキャンチェーン束内の前記m本のスキャンチェーンとが対応しており、前記各スキャンチェーン束内の前記m本のスキャンチェーンに対して1クロック毎に前記mビットのテストパタン信号内の各1ビットが、前記各スキャンチェーン束内の前記対応するスキャンチェーンに並列に入力されることを特徴とする請求項1に記載のスキャンテストパタン入力方法。
- 前記スキャンチェーンは、異なる本数のスキャンチェーンからなるスキャンチェーン束を含むn(n≧2)個のスキャンチェーン束に分割され、各スキャンチェーン束に対して、1クロック毎に各スキャンチェーン束内のスキャンチェーン数に等しいビットからなる前記スキャンクロック単位のテストパタン信号が出力され、該テストパタン信号の各ビットと前記各スキャンチェーン束内の前記スキャンチェーンとが対応しており、前記各スキャンチェーン束内の前記スキャンチェーンに対して1クロック毎に前記テストパタン信号内の各1ビットが、前記各スキャンチェーン束内の前記対応するスキャンチェーンに並列に入力されることを特徴とする請求項1に記載のスキャンテストパタン入力方法。
- 前記テストパタン信号は、所定周期の擬似ランダム信号を発生するランダムパタン発生器から出力されることを特徴とする請求項1〜4のいずれかに記載のスキャンテストパタン入力方法。
- パタンを予め推定でき、半導体集積回路内部のスキャンチェーンにスキャンクロック単位のテストパタン信号を出力するテストパタン発生手段と、
該テストパタン発生手段から出力される前記スキャンクロック単位のテストパタン信号が、ATPG(テスト生成プログラム)により生成されたATPGパタンの前記スキャンチェーンに入力されるスキャンクロック単位のパタンと一致またはドントケアの関係にあるとき、前記スキャンチェーンに前記テストパタン発生手段から出力されるスキャンクロック単位のパタン発生順序を記憶する記憶手段と、
前記パタン発生順序に基づき、前記テストパタン発生手段が発生するテストパタン信号を入力するテストパタン入力制御手段とを有していることを特徴とするスキャンテストパタン入力装置。 - 前記テストパタン入力制御手段は、前記テストパタン信号発生開始時点からのクロックのうち、スキャンチェーン上に設定されるATPGパタンと一致またはドントケアの関係にあるスキャンクロック単位の前記テストパタン信号を発生するクロック情報を記憶したテスターメモリと、該テスターメモリから読み出された前記クロック情報に基づいて、前記スキャンクロック単位のテストパタン信号を前記スキャンチェーンにシフト入力するためのクロックを該スキャンチェーンに供給するスキャンクロック選択デコーダとを備えていることを特徴とする請求項6に記載のスキャンテストパタン入力装置。
- 前記テスターメモリには、前記テストパタン信号発生開始時点からのクロック番号のうち、スキャンチェーン上に設定されるATPGパタンに対応するスキャンクロック単位のテストパタン信号を発生するクロック番号が記憶されていることを特徴とする請求項7に記載のスキャンテストパタン入力装置。
- 前記テスターメモリは、スキャンチェーン上に設定されるATPGパタンに対応して、前記テストパタン発生手段から発生されるスキャンクロック単位のテストパタン信号のうち、採用するクロックを"1"(または"0")、採用しないクロックを"0"(または"1")としてクロック開始から順に記憶するシフトレジスタによって構成されていることを特徴とする請求項7に記載のスキャンテストパタン入力装置。
- 前記スキャンチェーンは、m本(m≧2)のスキャンチェーンからなり、前記テストパタン発生手段からは1クロック毎に少なくともmビットの前記スキャンクロック単位のテストパタン信号が出力され、該テストパタン信号の各ビットと前記m本のスキャンチェーンとが対応しており、前記m本のスキャンチェーンに対して1クロック毎に前記mビットのテストパタン信号内の各1ビットが、前記対応するスキャンチェーンに並列に入力されることを特徴とする請求項6〜9のいずれかに記載のスキャンテストパタン入力装置。
- 前記スキャンチェーンは、m本(m≧2)のスキャンチェーンからなるn(n≧2)個のスキャンチェーン束に分割されており、前記テストパタン発生器からは1クロック毎に少なくともmビットの前記スキャンクロック単位のテストパタン信号が出力され、該テストパタン信号の各ビットと前記各スキャンチェーン束内の前記m本のスキャンチェーンとが対応しており、前記各スキャンチェーン束内の前記m本のスキャンチェーンに対して1クロック毎に前記mビットのテストパタン信号内の各1ビットが、前記各スキャンチェーン束内の前記対応するスキャンチェーンに並列に入力されることを特徴とする請求項6〜9のいずれかに記載のスキャンテストパタン入力装置。
- 前記スキャンチェーンは、異なる本数のスキャンチェーンからなるスキャンチェーン束を含むn(n≧2)個のスキャンチェーン束に分割されており、前記テストパタン発生器からは、1クロック毎に各スキャンチェーン束内のスキャンチェーン数に等しいビットからなる前記スキャンクロック単位のテストパタン信号が出力され、該テストパタン信号の各ビットと前記各スキャンチェーン束内の前記スキャンチェーンとが対応しており、前記各スキャンチェーン束内の前記スキャンチェーンに対して1クロック毎に前記テストパタン信号内の各1ビットが、前記各スキャンチェーン束内の前記対応するスキャンチェーンに並列に入力されることを特徴とする請求項6〜9のいずれかに記載のスキャンテストパタン入力装置。
- 前記テストパタン発生手段は、所定周期の擬似ランダム信号を発生することにより前記半導体集積回路内部のスキャンチェーンにスキャンクロック単位のランダムパタン信号を出力するランダムパタン発生手段として構成されていることを特徴とする請求項6〜12のいずれかに記載のスキャンテストパタン入力装置。
- 半導体集積回路内部の記憶素子であるフリップフロップをチェーン状に接続したスキャンチェーンと、
予めパタンを推定できる所定周期のテストパタン信号を発生するテストパタン発生器と、該テストパタン発生器から出力されるスキャンクロック単位のテストパタン信号とATPG(テスト生成プログラム)により生成されたATPGパタンの前記スキャンチェーンに入力されるスキャンクロック単位のパタンとが一致またはドントケアの関係にあることを示す信号を受けたときに、該スキャンクロック単位のパタン発生順序を記憶するメモリと、
前記パタン発生順序に基づき、前記テストパタン発生器が発生したテストパタン信号を前記スキャンチェーンにシフト入力するためのクロックを該スキャンチェーンに供給するスキャンクロック選択デコーダとを有していることを特徴とする半導体集積回路。 - 前記スキャンチェーンは、m本(m≧2)のスキャンチェーンからなり、前記テストパタン発生器からは1クロック毎に少なくともmビットの前記スキャンクロック単位のテストパタン信号が出力され、該テストパタン信号の各ビットと前記m本のスキャンチェーンとが対応しており、前記m本のスキャンチェーンに対して1クロック毎に前記mビットのテストパタン信号内の各1ビットが、前記対応するスキャンチェーンに並列に入力されることを特徴とする請求項14に記載の半導体集積回路。
- 前記スキャンチェーンは、m本(m≧2)のスキャンチェーンからなるn(n≧2)個のスキャンチェーン束に分割されており、前記テストパタン発生器からは1クロック毎に少なくともmビットの前記スキャンクロック単位のテストパタン信号が出力され、該テストパタン信号の各ビットと前記各スキャンチェーン束内の前記m本のスキャンチェーンとが対応しており、前記各スキャンチェーン束内の前記m本のスキャンチェーンに対して1クロック毎に前記mビットのテストパタン信号内の各1ビットが、前記各スキャンチェーン束内の前記対応するスキャンチェーンに並列に入力されることを特徴とする請求項14に記載の半導体集積回路。
- 前記スキャンチェーンは、異なる本数のスキャンチェーンからなるスキャンチェーン束を含むn(n≧2)個のスキャンチェーン束に分割されており、前記テストパタン発生器からは、1クロック毎に各スキャンチェーン束内のスキャンチェーン数に等しいビットからなる前記スキャンクロック単位のテストパタン信号が出力され、該テストパタン信号の各ビットと前記各スキャンチェーン束内の前記スキャンチェーンとが対応しており、前記各スキャンチェーン束内の前記スキャンチェーンに対して1クロック毎に前記テストパタン信号内の各1ビットが、前記各スキャンチェーン束内の前記対応するスキャンチェーンに並列に入力されることを特徴とする請求項14に記載の半導体集積回路。
- 前記テストパタン発生器は、所定周期の擬似ランダム信号を発生することにより前記半導体集積回路内部のスキャンチェーンにスキャンクロック単位のランダムパタン信号を出力するランダムパタン発生器として構成されていることを特徴とする請求項14〜17のいずれかに記載の半導体集積回路。
- クロックが入力される毎にテストパタン発生手段からスキャンクロック単位のテストパタン信号を出力する処理と、
前記テストパタン信号発生開始からの前記クロックをカウントするクロック番号カウント処理と、
前記テストパタン信号発生開始時点からのクロック番号のうち、スキャンチェーン上に設定されるATPGパタンと一致またはドントケアの関係にあるスキャンクロック単位のテストパタン信号が発生されるクロック番号を記憶しているテスターメモリから、その一番目に記憶されているクロック番号を読み出す処理と、
前記カウントされたクロック番号が前記テスターメモリから読み出されたクロック番号と一致するときに発生する前記スキャンクロック単位のテストパタン信号を前記スキャンチェーンに入力するとともに、前記テスターメモリから次のクロック番号を読み出すスキャンクロック単位パタン入力処理と、
前記スキャンクロック単位パタン入力処理を、前記テスターメモリに記憶されているクロック番号を全て読み出すまで繰り返す処理とを、コンピュータに実行させるためのプログラム。 - 前記テストパタン信号は、所定周期の擬似ランダムパタン信号発生手段から出力されることを特徴とする請求項19に記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003099395A JP4520103B2 (ja) | 2003-04-02 | 2003-04-02 | スキャンテストパタン入力方法および半導体集積回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003099395A JP4520103B2 (ja) | 2003-04-02 | 2003-04-02 | スキャンテストパタン入力方法および半導体集積回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004309174A JP2004309174A (ja) | 2004-11-04 |
JP4520103B2 true JP4520103B2 (ja) | 2010-08-04 |
Family
ID=33463871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003099395A Expired - Fee Related JP4520103B2 (ja) | 2003-04-02 | 2003-04-02 | スキャンテストパタン入力方法および半導体集積回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4520103B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5035665B2 (ja) * | 2007-03-19 | 2012-09-26 | 日本電気株式会社 | 半導体集積回路、半導体集積回路のテストパターン生成装置 |
JP7305583B2 (ja) | 2020-03-05 | 2023-07-10 | 株式会社東芝 | 半導体集積回路 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000258500A (ja) * | 1999-03-09 | 2000-09-22 | Hitachi Ltd | 半導体集積回路及び記憶媒体 |
WO2001038890A1 (en) * | 1999-11-23 | 2001-05-31 | Mentor Graphics Corporation | Decompressor/prpg for applying pseudo-random and deterministic test patterns |
JP2002181905A (ja) * | 2000-12-13 | 2002-06-26 | Hitachi Ltd | 半導体集積回路のテスト方法及びテストパターン発生回路 |
JP2002236144A (ja) * | 2000-12-07 | 2002-08-23 | Fujitsu Ltd | 集積回路の試験装置および試験方法 |
WO2004027440A1 (ja) * | 2002-09-19 | 2004-04-01 | Fujitsu Limited | 集積回路試験装置および試験方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09281192A (ja) * | 1996-04-18 | 1997-10-31 | Hitachi Ltd | 論理集積回路の自己診断回路 |
JP3196013B2 (ja) * | 1996-12-12 | 2001-08-06 | 株式会社日立製作所 | 論理集積回路 |
-
2003
- 2003-04-02 JP JP2003099395A patent/JP4520103B2/ja not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000258500A (ja) * | 1999-03-09 | 2000-09-22 | Hitachi Ltd | 半導体集積回路及び記憶媒体 |
WO2001038890A1 (en) * | 1999-11-23 | 2001-05-31 | Mentor Graphics Corporation | Decompressor/prpg for applying pseudo-random and deterministic test patterns |
JP2002236144A (ja) * | 2000-12-07 | 2002-08-23 | Fujitsu Ltd | 集積回路の試験装置および試験方法 |
JP2002181905A (ja) * | 2000-12-13 | 2002-06-26 | Hitachi Ltd | 半導体集積回路のテスト方法及びテストパターン発生回路 |
WO2004027440A1 (ja) * | 2002-09-19 | 2004-04-01 | Fujitsu Limited | 集積回路試験装置および試験方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2004309174A (ja) | 2004-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3937034B2 (ja) | 半導体集積回路のテスト方法及びテストパターン発生回路 | |
US7610539B2 (en) | Method and apparatus for testing logic circuit designs | |
JP5591886B2 (ja) | 完全に不定値許容性であって非常に高スキャン圧縮なスキャンテストシステム及び技術 | |
US6829728B2 (en) | Full-speed BIST controller for testing embedded synchronous memories | |
KR100206128B1 (ko) | 선형 궤환 쉬프트레지스터, 다중 입력기호 레지스터 및 이들을 이용한 내장 자기 진단회로 | |
JP4177807B2 (ja) | 回路テストシステム | |
US5258986A (en) | Tightly coupled, low overhead RAM built-in self-test logic with particular applications for embedded memories | |
US5383143A (en) | Self re-seeding linear feedback shift register (LFSR) data processing system for generating a pseudo-random test bit stream and method of operation | |
US6574758B1 (en) | Testing a bus coupled between two electronic devices | |
JPH05233473A (ja) | 半導体メモリテストシステム | |
WO2007013306A1 (ja) | 半導体論理回路装置のテストベクトル生成方法及びテストベクトル生成プログラム | |
JP2012181138A (ja) | 半導体集積回路、設計装置および設計方法 | |
JP4520103B2 (ja) | スキャンテストパタン入力方法および半導体集積回路 | |
WO2006106626A1 (ja) | 半導体論理回路装置のテスト方法及びテストプログラム | |
Swaminathan et al. | On using twisted-ring counters for test set embedding in BIST | |
US7668893B2 (en) | Data generator having linear feedback shift registers for generating data pattern in forward and reverse orders | |
JP5806050B2 (ja) | 出力制御スキャンフリップフロップ、それを備えた半導体集積回路及び半導体集積回路の設計方法 | |
CN109946595B (zh) | 一种扫描测试执行方法、装置及系统 | |
JP3606788B2 (ja) | 半導体集積回路および半導体集積回路の検査方法 | |
US7661040B2 (en) | Method of testing a sequential access memory plane and a corresponding sequential access memory semiconductor device | |
EP0858630B1 (en) | Method, system and apparatus for efficiently generating binary numbers for testing storage devices | |
JPH06102327A (ja) | メモリ内蔵型半導体集積回路およびその論理設計方法 | |
JP2003255025A (ja) | 半導体集積回路 | |
JP2002139557A (ja) | 半導体装置 | |
JP2004286549A (ja) | スキャンテスト装置およびその設計方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060303 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20090713 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090716 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090929 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091130 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100518 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100520 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130528 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |