JP4773148B2 - テスト回路及びテスト方法 - Google Patents

テスト回路及びテスト方法 Download PDF

Info

Publication number
JP4773148B2
JP4773148B2 JP2005197061A JP2005197061A JP4773148B2 JP 4773148 B2 JP4773148 B2 JP 4773148B2 JP 2005197061 A JP2005197061 A JP 2005197061A JP 2005197061 A JP2005197061 A JP 2005197061A JP 4773148 B2 JP4773148 B2 JP 4773148B2
Authority
JP
Japan
Prior art keywords
setting
memory
scan
value
refresh
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
Application number
JP2005197061A
Other languages
English (en)
Other versions
JP2007018570A (ja
Inventor
尚 山内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2005197061A priority Critical patent/JP4773148B2/ja
Priority to US11/480,455 priority patent/US7475300B2/en
Publication of JP2007018570A publication Critical patent/JP2007018570A/ja
Application granted granted Critical
Publication of JP4773148B2 publication Critical patent/JP4773148B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318544Scanning methods, algorithms and patterns
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C29/32Serial access; Scan testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C2029/3202Scan chain

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Dram (AREA)
  • Tests Of Electronic Circuits (AREA)

Description

本発明は、テスト回路及びテスト方法に関するものであり、より詳細には、メモリを有する集積回路のテストを行うテスト回路及びテスト方法に関する。
メモリを含む集積回路に対し、メモリ自体あるいはメモリを通過する経路上の回路を、スキャンパスを用いて行うテスト手法は、今日では、コンピュータ上のテストパタン自動生成プログラムにも取り込まれ、定着してきている。しかしながら、このテスト手法は、リフレッシュが不要なSRAM(Static Random Access Memory)を仮定しており、一度書き込みを行ったあと、読み出しの設定を行えば、いつでも読み出しが行えることを仮定している。
図12を用いて、スキャンパスを使用した従来のメモリのテスト手法を説明する。図12は、従来技術におけるメモリのテストの設定波形である。図12に示すSMCはスキャンパスをシフト動作にするかシフトしない通常動作にするかの選択を行う信号SMCの値を示し、図12に示すSCANINはスキャン入力の値を示し、SCANOUTはスキャン出力の値を示している。
ここでは、SMCの値は1がシフトモード、0がシフトしない通常モードとする。また、ここではシフトモード以外の状態をキャプチャーモードとする。時刻t1はシフトモードからキャプチャーモードに変化する時刻を示しており、t2は、その後キャプチャーモードからシフトモードに変化する時刻を示しており、t3は、時刻t2のあとに再度シフトモードからキャプチャーモードになる時刻を示しており、時刻t4は、時刻t3のあとに再度キャプチャーモードからシフトモードになる時刻を示している。

図中Xはドントケアを表しており、入力に対しては何を設定しても良いことを示し、出力に対しては、観測対象でないことを表している。図中に示すWrite設定は、テスト対象回路内に含まれるメモリに対する書き込み設定を行うためのスキャン入力値を示している。つまり、Write設定で入力されたスキャン入力の値は、時刻t1に、メモリの設定を行うフリップフロップに到達し、メモリの書き込み設定が行われる。
Read設定は、テスト対象回路内に含まれるメモリに対する読み出し設定を行うためのスキャン入力値を示している。つまり、このRead設定で入力されたスキャン入力の値は、時刻t3に、メモリの設定を行うフリップフロップに到達し、メモリの読み出し設定が行われる。Read値出力は、Read設定で行われたメモリの読み出し設定に対する読み出し値を示している。これにより、一連のテストが行なわれる。
図12では、書き込み設定後、1回のスキャンシフトの後に読み出しが行われる場合を示しているが、3回以上のスキャンシフトで1つのテスト対象をテストする場合もあり、この場合は、DRAM(Dynamic Random Access Memory)が値を保持する時間が更に長くなり、従来手法で行う場合の条件は悪化するため、図12は、従来手法で、複数回のスキャンシフトで1つのテスト対象をテストする場合の最良のケースとして代表して図示している。
また、スキャンパスを利用して、メモリ及びメモリを通過する経路上の回路の遅延をテストする場合には、書き込みに対する遅延テストにおいては、時刻t1の直前のサイクル、通常は時刻t1の1サイクル前に、書き込み直前の設定を行い、時刻t1の時点で書き込みの設定を行う場合があり、読み出しに対する遅延テストにおいては、時刻t3の直前のサイクル、通常は時刻t3の1サイクル前に、読み出し直前の設定を行い、時刻t3の時点で読み出しの設定を行う場合があるが、このWrite設定とRead設定は、それぞれ、これらの書き込みに対する一連の設定及び、読み出しに対する一連の設定を表している。
また、DRAMに対しスキャンパスを用いたテスト手法に基づいた回路を示したものとてして、特許文献1及び特許文献2がある。
前記の図12を用いて説明した、コンピュータ上のテストパタン自動生成プログラムにも取り込まれ定着してきたメモリのテスト手法を、DRAMに応用した場合は、書き込み設定から読み出し設定までの間がDRAMの記録保持時間を越える場合、つまりリフレッシュ時間を越える場合は、テストが行なえないという欠点を有していた。
更に、テストパタン自動生成の負荷を増大させるという欠点をも有していた。一般に、テストパタン自動生成は、DRAMに一連の動作で書き込むための値と、一連の読み出し動作により値を読み出すための値を求める。DRAMのリフレッシュ時間が、スキャンパスの1回のシフト動作の時間より長い場合には、1回の書き込み動作と1回の読み出し動作によりテストが可能であれば、特に、問題は生じないが、1回のテストに対し、複数の書き込み動作を必要とする場合がある。
例えば、アドレスに関する回路の故障を検出するためのテストパタンを生成する場合には、回路に故障が存在しない場合に選択される書き込み及び読み出し対象アドレスと、アドレスに関する回路上に想定される故障が存在する場合の書き込み及び読み出し対象アドレスに対し、異なる値を書き込み、故障が存在しない場合に読み出される値が読み出されることをテストするため、書き込み動作の設定は複数回行われる。
この場合、複数回の書き込み設定のうち、最初の書き込み設定に対しては、その値の読み出しまでの間に、複数回のスキャンシフトが行われる。このため、当初、テストパタン自動生成により求められた2回目以降の書き込み設定を一部リフレッシュ設定に置き換え、再度テストパタンの設定値を求め直す必要が生じる場合があり、リフレッシュ動作を考慮する場合には、テストパタン自動生成の負荷を増大させる。
また、DRAMに対しスキャンパスを用いたテスト手法に基づいた回路を示したものとてして、特許文献1及び特許文献2があるが、この特許文献1及び特許文献2は、DRAMに対する書き込み設定あるいは読み出し設定を行う手法あるいは回路を示したのみに留まっており、DRAMの記録保持時間の制約を考慮したテスト手法あるいはテスト回路を示してはいない。
特開平11−153650号公報 特開2000−163995号公報
このように、従来におけるテスト方法は、書き込み設定から読み出し設定までの間がDRAMの記録保持時間を越える場合、つまりリフレッシュ時間を越える場合は、テストが行なえないという欠点を有していた。
本発明におけるテスト方法は、テスト対象であるメモリに対して書き込み及び読み出しをスキャンパスフリップフロップを介して行うテスト手法であって、前記スキャンパスフリップフロップに書き込み設定値を入力することにより外部から前記メモリに対してデータの書き込みを行い、前記スキャンパスフリップフロップにリフレッシュ設定値を入力することにより前記メモリに書き込まれたデータのリフレッシュを行い、前記スキャンパスフリップフロップに読み出し設定値を入力することにより前記メモリからデータを外部へ読み出して外部へ出力するテスト方法である。このようにすることにより、メモリのリフレッシュを効率よく行いながらメモリのテストを行うことが可能となる。
本発明におけるテスト回路は、メモリのテストのためのメモリテスト用スキャンパスを含む複数のスキャンパスのシフト動作によりテストを行うテスト回路であって、前記スキャンパスはそれぞれ複数のフリップフロップを有し、前記メモリテスト用スキャンパスの有するフリップフロップの数は、前記スキャンパスの有するフリップフロップの最大数の半分以下であるテスト回路である。このような構成により、メモリテスト用スキャンパス以外のスキャンパスのシフト動作を1回行う間にメモリテスト用スキャンパスのシフト動作を複数回行うことができ、メモリのリフレッシュを効率よく行いながらテストを行うことが可能となる。
本発明におけるテスト方法は、メモリのテストのためのメモリテスト用スキャンパスを含む複数のスキャンパスのシフト動作によりテストを行うテスト方法であって、前記メモリテスト用スキャンパス以外のスキャンパスのシフト動作を1回行う間に、前記メモリテスト用スキャンパスのシフト動作を複数回行い、前記複数回のシフト動作のうち少なくとも1回のシフト動作で前記メモリのリフレッシュを行うテスト方法である。このようにすることにより、メモリのリフレッシュを効率よく行いながらメモリのテストを行うことが可能となる。
本発明によれば、メモリのリフレッシュを効率よく行いながらメモリのテストを行うことが可能となる。
発明の実施の形態1.
本発明におけるテスト回路について図1を用いて説明する。図1に示すSMCは、スキャンパスをシフト動作にするかシフトしない通常動作にするかの選択を行う信号SMCの値を示す。また、SCANINは、スキャン入力の値を示し、SCANOUTはスキャン出力の値を示している。ここでは、SMCの値は1のときはシフトモード、0のときはシフトしない通常モードとしている。ここでは、シフトモード以外をキャプチャーモードと呼ぶ。
時刻t1はシフトモードからキャプチャーモードに変化する時刻を示しており、時刻t2は、時刻t1の後、最初にキャプチャーモードからシフトモードに変化する時刻を示している。時刻t3は、時刻t2のあとに再度シフトモードからキャプチャーモードになる時刻を示しており、時刻t4は、時刻t3のあとに再度キャプチャーモードからシフトモードになる時刻を示している。
図中Xはドントケアを表しており、入力に対しては何を設定しても良いことを示し、出力に対しては、観測対象でないことを表している。図中のWrite設定108は、テスト対象回路内に含まれるメモリに対する書き込み設定を行うためのスキャン入力値の設定を示している。つまり、Write設定108で入力されたスキャン入力値は、時刻t1のときに、メモリの設定を行うフリップフロップに到達し、メモリの書き込み設定が行われる。
図中のRead設定110は、テスト対象回路内に含まれるメモリに対する読み出し設定を行うためのスキャン入力値の設定を示している。つまり、Read設定110で入力されたスキャン入力の値は、時刻t3のときに、メモリの設定を行うフリップフロップに到達し、メモリの読み出し設定が行われる。図中のRead値出力111は、Read設定110でのメモリの読み出し設定に対する読み出し値の出力を示している。図12に示した従来手法に対し、追加された設定はRefresh設定109である。
Read設定110での読み出し値の入力が、時刻t3の時点で、DRAMの設定を行うレジスタに設定されるのに対し、Refresh設定109は、時刻t3の時点ではなく、それ以前にDRAMの設定を行うレジスタを通過する値に対してRefresh設定109のタイミングで行われる。DRAMに書き込んだ値を一連の読み出し動作により読み出すまでの間のスキャンパスのシフト動作中に、Refresh設定を行う処理を追加した手法が、本発明の第一のテスト手法である。
次に、本発明におけるテスト回路の構成について説明する。図4は、本発明におけるテスト回路の構成を示す図である。テスト回路4は、スキャン入力端子401、外部制御端子402、フリップフロップ403−408、バッファ409−414、ANDゲート415、DRAM416、バッファ417−418、フリップフロップ419−420、回路421、フリップフロップ422−426、スキャン出力端子427、回路428を備える。スキャンパスのシフト経路あるいはDRAMへの値の設定経路及びDRAMからの値の観測経路に関係のない信号は、記載を省略している。
スキャン入力端子401は、フリップフロップ403がデータ入力を行うための端子である。外部制御端子402は、DRAM416がANDゲート415を介して外部からデータを入力するための端子であり、DRAM416のライトイネーブルを制御している。
フリップフロップ403、404は、データ入力を設定する。フリップフロップ405、406は、アドレスを設定する。フリップフロップ407は、読み出しを指定するリードイネーブルを設定する。フリップフロップ408は、書き込みを指定するライトイネーブルを設定する。416のDRAMのリードイネーブルのイネーブル値は1、ライトイネーブルのイネーブル値も1とする。
ANDゲート415は、外部制御端子402から入力されたデータと、バッファ414から入力されたデータのAND演算を行い、結果をDRAM416に出力する。
DRAM416はテスト対象のDRAMである。DRAM416の入力端子について説明する。DAT[0]と表記された端子はデータ入力の0ビット目を示し、DAT[1]と表記された端子はデータ入力の1ビット目を示す。また、ADR[0]と表記された端子はアドレス入力の0ビット目を示し、ADR[1]と表記された端子はアドレス入力の1ビット目を示し、REと表記された端子はリードイネーブルを示し、WEと表記された端子はライトイネーブルを示し、OUT[0]と表記された端子は出力データの0ビット目を示し、OUT[1]と表記された端子は出力データの1ビット目を示す。Cはクロック入力を示す。ただし、フリップフロップのクロックと同じクロックが接続されているものとして、接続の記載を省略している。
フリップフロップ419、420は、DRAM416から出力されるデータの格納を行う。回路421は、DRAMの設定には直接関係しない回路である。
出力端子427は、DRAM416からの出力データを出力するための端子である。回路428は、DRAMの設定には直接関係しない回路である。
ここでは、説明の簡単化のために、スキャンパスのフリップフロップ以外の、DRAM416の設定あるいは観測に関する回路は、ANDゲート415を除きバッファ409−414、バッファ417、418等のバッファとしているが、その他の回路でDRAMの設定あるいは観測に関する回路が構成されていたとしても、DRAMの1つの端子に対し、複数のフリップフロップの値の設定が必要になる場合はあるが、以下に説明する処理のフローは、同様である。
この回路において、DRAM416の保持時間と、スキャンシフトの動作周波数の関係として、DRAM416の保持時間はスキャンシフトの10サイクルに相当するものとする。DRAM416の保持時間に制約がない場合には、書き込み設定を行ったあと、DRAM416の値が書き換えられなければ、図12のように、1スキャンシフト後に、読み出し設定を行えばよい。
図4の回路では、書き込み後に外部制御端子402から入力する値を0とすることにより、ANDゲート415の出力値はフリップフロップ408から出力される値にかかわらず0となり、値が書き換えられることはない。読み出し設定をする場合、キャプチャーサイクルに、フリップフロップ407に値1が設定され、フリップフロップ405とフリップフロップ406に、所望の読み出しアドレスが設定されるように、スキャンイン時にスキャン入力端子401に入力する値を決めれば良い。
更に、具体的に、値の設定を示して説明を行う。ここで、DAT[0]の0縮退故障を検出するテストパタンを生成する場合を仮定し、DAT[0]の0縮退故障、つまり値を0に固定する故障を検出するために、アドレス0つまり、ADR[1]=0かつADR[0]=0に対してDAT[0]=1を書き込み、その後、アドレス0、つまりADR[1]=0かつADR[0]=0を読み出すことで試験を行う場合を想定する。
ここで、シフト動作中に、書き込み値が変化しないように、外部制御端子402から入力する値は、シフト動作中は0で、キャプチャーモード時は1であることを仮定している。DRAM416の保持時間に制限がないとした場合のフリップフロップの設定を、図5に示す。図5では、設定1が書き込み設定、設定2が読み出し設定を示しており、キャプチャーモード時の最初の時刻におけるフリップフロップの値として示している。つまり、図2の時刻に対応させた場合、設定1に対しては時刻t1での各フリップフロップの値、設定2に対しては時刻t3での各フリップフロップの値を示している。
図5で、Xはドントケアを示しており、何を設定しても良いことを示している。このように、書き込み時には、DAT[0]の入力に1を設定し、アドレス0を指定し、ライトイネーブルを1とし、リードイネーブルを0とする。また、読み出し時には、アドレス0を指定して、ライトイネーブルを0とし、リードイネーブルを1としている。
DRAM416がフリップフロップのクロックと同期する同期型の場合には、設定2の後に1回クロックが印加されれば、OUT[0]とOUT[1]に、アドレス0に対する出力値が出力され、更に1回クロックが印加されれば、DRAM416の出力値はフリップフロップ419とフリップフロップ420に取り込まれ、スキャンパスをシフトモードにして、シフトすることで、スキャン出力端子427から、DRAMの出力値を観測することが可能となる。ここでは、一度、フリップフロップに取り込まれた値はDRAM416の保持時間には関係なく観測可能なため、出力値の観測のための設定に関する説明は省略をする。
図5は、設定値を、キャプチャーモード時の最初の時刻におけるフリップフロップの値として示しているが、ここで、図12のようにスキャン入力端子401に与える値に置き直して考える。スキャンパス上のフリップフロップの接続は、図4のフリップフロップ名で表記すると、スキャン出力端子427に近い側から順に、F35、F34、F33、F32、F31、F22、F21、F16、F15、F14、F13、F12、F11となっており、この順序に従って、図5では、右側から順に表記されている。このうち、F11〜F16がメモリ設定用フリップフロップである第1のフリップフロップであり、F21〜F35が他の回路設定用フリップフロップである第2のフリップフロップである。
スキャン入力端子401からの設定値としては、スキャン出力端子427に近い側のフリップフロップに設定する値を、時間的に、先に入力することになるため、書き込み設定は、スキャンパスのシフト動作が開始されてから、設定1の値を右から順に、1サイクルごとに、X、X、X、X、X、X、X、1、0、0、0、X、1を入力してゆくことになる。ここで、Xは0でも1でも良いものとする。
この書き込み設定が行われたあとの、読み出し設定は、スキャンパスのシフト動作が開始されてから、設定2の右から順に、1サイクル毎に、X、X、X、X、X、X、X、0、1、0、0、X、Xを入力することになる。図12と図5を対比させれば、図12のWrite設定に対する書き込みの設定は、図5の設定1における、F16、F15、F14、F13、F12、F11の書き込み設定値の設定に対応し、図12のRead設定に対する読み出しの設定は、図5の設定2における、F16、F15、F14、F13の読み出し設定値の設定に対応する。SRAMのように、データの保持時間が問題にならない場合は、図5の設定でテストを行なうことが可能である。
しかしながら、図4でテストをしている対象は、DRAMであり、データ保持時間は、シフト時のクロックサイクルで、10クロックサイクルの間と仮定されているため、書き込み設定から、読み出し設定までの間に、13クロックサイクルを必要とする図5の設定では、書き込まれたデータが消失する可能性があるため、正常にテストを行うことができない。このため、図1に示すように、読み出し設定110の前に、リフレッシュ設定109を行い、書き込まれたデータ値の消失を防ぎ、正常にテストを行う。この設定の一例を、図7に示す。
リフレッシュ動作は、リフレッシュモードを持っているDRAMでは、リフレッシュモードに設定することでも、リフレッシュが行われるが、リフレッシュモードを持たないDRAMの場合でも、値を保持しているアドレスに対し読み出し設定を行うことで、リフレッシュが可能となる。リフレッシュのためだけに行う読み出し設定の場合は、その値をフリップフロップに取り込む必要はないため、1サイクルだけ、読み出し状態をつくれば良い。この状態が図8に示す入力中の状態である。
図7の設定2では、読み出し設定における、キャプチャ時の最初、つまり、図1では時刻t3におけるフリップフロップに対する値を示しているが、ここでは、F34、F33、F32、F31に設定している値が、リフレッシュを行うための読み出し設定を行うリフレッシュ設定値を示している。読み出し設定を行うフリップフロップは、F16、F15、F14、F13であるが、図7の設定2でF34、F33、F32、F31に示されたリフレッシュ設定値は、時刻t3に対し6サイクル前に、F16、F15、F14、F13に設定され、通過して時刻t3に、F34、F33、F32、F31に到達する値となる。時刻t3に対し6サイクル前は、時刻t2に対し7サイクル後にあたり、図7の設定2は、時刻t2から10サイクル以内にリフレッシュを行う必要があるという条件を満たした設定となる。
次に、図1に示したDRAMに対するスキャンパステスト手法を実現するための、処理の流れについて、図3に示すフローチャートを用いて説明する。
まず、通常のSRAMに対するテストパタン生成と同様に、リフレッシュを考慮しない通常のテストパタン生成手法に基づいたテストパタンを生成する(S301)。このテストパタン生成により求められた設定値のうちリフレッシュが必要な設定に対しては、リフレッシュが必要な時間の範囲を求める(S302)。最初にリフレッシュが必要な時間の範囲を求める場合は、テストパタン生成により設定された書き込み値の設定時刻に対してリフレッシュ時間を加算して、リフレッシュが必要な時間範囲を求める。
次に、書き込み後リフレッシュ時間内に読み出しが行われるか否かを判定する(S303)。もしもリフレッシュ時間内に読み出しが行われる場合には、特にリフレッシュの設定を行う必要はなく、求められた設定をテストパタンとして登録し、テストパタンの生成を完了する(S304)。リフレッシュ時間内に読み出しが行われない場合は、リフレッシュ時間内のシフト値に、リフレッシュ値を求める(S305)。
その後、求めたリフレッシュ値の設定が、読み出し設定等の、既に設定されている値に対し矛盾せず設定可能か否かを判定し(S306)、判定の結果、リフレッシュ値の設定が不可能であれば、テストパタン作成不可能として、テストパタンを破棄し終了する(S307)。判定の結果、リフレッシュ値設定が可能であれば、設定したリフレッシュの時刻を起点として次にリフレッシュが必要な時間の範囲を求める。このとき、最初の書き込み設定からではなく、その後に行われたリフレッシュ設定から読み出しまでがリフレッシュ時間内か否かを求める。その後の処理は、前述の処理を繰り返す。
次に、図4の回路に対し、図3のフローを適用した場合のテストパタンの生成方法を、図5から図9を用いて説明する。ここでは、上述した内容と同様に、図4のDRAM416のDAT[0]の0縮退故障を検出するテストパタンを生成する場合を想定する。
図5から図9は、図4の回路中のフリップフロップに対する設定値を示している。この設定値は、設定1が書き込み設定時の入力値で、設定2が読み出し設定時の入力値を表しており、設定1として示された入力値は、図1の時刻t1でのフリップフロップの設定値であり、設定2として示された入力値は、図1の時刻t3のフリップフロップの設定値を示している。つまり、シフト動作が終了した時点では、F11からF16までの列に示された書き込み設定値がDRAM416の入力に対する設定値となるが、シフトが終了する6サイクル前にF11からF16に設定される値は、図5から図9では、F21からF34の列に示される値となる。
逆に言えば、F21からF34の列に示された値は、シフトが終了する6サイクル前にF11からF16に設定され、その後6サイクルの間シフトし、シフト終了時点では、F21からF34のフリップフロップに設定されることになる。
まず、DRAM416をリフレッシュの不要なSRAMとして、通常のテストパタン生成の結果として求められた設定値を図5に示す。この設定は、上述した設定である。今、シフト時のクロックサイクルで、10クロックがデータ保持時間つまりリフレッシュ時間とする。設定2の値は、シフト開始後第1サイクルでの設定値は、F35に示される値で、シフト開始後第2サイクルでの設定値は、F34に示される値となるという前提であるので、図6のF14〜F35の範囲内に、読み出し設定あるいはリフレッシュ設定が終了していなければならない。
リフレッシュが必要な時間の範囲を求めるという処理は、この図6のF14〜F35の範囲を求める処理と同等である。ただし、この図6のF14〜F35の範囲には、読み出しの設定には関係のないF11、F12のシフト分を考慮して、全設定が図6のF14〜F35におさまらねばならない。つまり、F13、F14、F15、F16の設定に限れば、8サイクル以内つまり表記上は、F35、F34、F33、F32、F31、F22、F21、F16の範囲に、設定が終了せねばならない。
その後、この範囲内に読み出し設定あるいはリフレッシュ設定が終了しているか否かの判定を行う。しかしながら、この場合読み出し設定は、図6のF14〜F35の範囲では終了していないため、シフト中の値に対しリフレッシュ設定を行う。上述したように、リフレッシュ設定は、対象アドレスに対し読み出し設定を行えばよいことから、ここでは、F13、F14、F15、F16のそれぞれに、0、0、1、0がシフト中に設定されるように入力する。
図7の表記上、設定2のシフト開始から7サイクル後に、F13、F14、F15、F16に設定される値は、それぞれ、F31、F32、F33、F34に表記されるため、図7の設定は、設定2のシフト開始から7サイクル後にリフレッシュを行い、その後、読み出しを行う設定となる。
このリフレッシュ値の設定は、図5の設定2の読み出し設定では、Xつまりドントケアの部分に対して設定されているため、読み出し設定に対し矛盾することはなく、リフレッシュ値が設定可能か否かの判定では設定可能という判定結果となり、リフレッシュが必要な範囲を求める処理に進む。
リフレッシュが必要な範囲を求める処理では、図7で設定されたリフレッシュ設定に対して、更にリフレッシュが必要な範囲を求めるために、図7のリフレッシュ設定に対し、その後データが保持される時間を求める。この範囲は図7のF11〜F16となる。
その後、読み出し設定が行われるのがリフレッシュ時間内であるか否かの判定を行う処理に進むが、今回は、読み出し設定が行われるのがリフレッシュ時間内であるため、テストパタン設定は完了となり、ここで求められた設定、つまり図8あるいは図7の設定が、図4のDRAM416のDAT[0]の0縮退故障を検出するテストパタンとして登録され、生成を完了する。
ただし、DRAM416のDAT[0]の0縮退故障を検出するテストパタンは、図7の設定の1通りのみではない。例えば、図9のような設定でも、故障検出可能となる。この場合のリフレッシュ設定は、設定2のF16、F21、F22、F31に示される値で、行われる。この値は、シフト開始から10サイクル後に、それぞれ、F13、F14、F15、F16に到達する値となる。
図5のリフレッシュを考慮しない設定での読み出し設定は、F13、F14、F15、F16に設定する値を使用して行われており、図9に示すリフレッシュに対する設定でも、F16に設定するリフレッシュ設定値が必要となるが、F16に対し、読み出し設定で必要な設定は0であり、リフレッシュ設定で必要な設定も0であるため、矛盾せず、テストパタンとして使用可能となる。
このようにして、メモリ書き込み時とメモリ読み出し時の間にリフレッシュ処理を行うことが可能となる。
上述の例では、メモリ読み出し時の設定2の入力値にリフレッシュ設定値を入力するようにしたが、フリップフロップの構成によっては、これをメモリ書き込み時の設定1の入力値にリフレッシュ設定値を入力する場合もある。また、設定1と設定2の入力値が連続して入力される場合は、双方の入力値にまたがるようにしてリフレッシュ設定値が入力されるように入力値を設定してもよい。
発明の実施の形態2.
次に、本発明の第2の発明を実施するための形態について、図2を用いて説明する。図2は、本発明の実施の形態2におけるテスト回路の構成を示す図である。テスト回路100は、スキャン入力端子1002、1003、1004、フリップフロップ群1005、1006、1007、DRAM1008、スキャン出力端子1009、1010、1011、を備える。
テスト回路100は、3本のスキャンパスで構成されているが、DRAM1008の設定にかかわるフリップフロップは、SCAN_Dのみ、つまりスキャン入力端子1003からの入力をスキャン入力とし、フリップフロップ群1006を、スキャンパスを構成するフリップフロップ群とし、スキャン出力端子1010からの出力をスキャン出力とする、スキャンパスのみに含まれているものとする。
その他のスキャンパスは、スキャン入力1002、フリップフロップ群1005、スキャン出力1009で構成されるSCAN_1と、スキャン入力1004、フリップフロップ群1007、スキャン出力1011で構成されるSCAN_2があるが、SCAN_1とSCAN_2はDRAM1008の設定には直接関係しないものとする。
この時、DRAM1008の設定を行うスキャンパスに含まれるフリップフロップの数を、他のスキャンパスのうち最大のフリップフロップをもつスキャンパスのフリップフロップ数の半分以下として構成する。図2では、SCAN_Dに含まれるフリップフロップを、SCAN_1やSCAN_2に含まれるフリップフロップの半分として構成している。
一般に、スキャンパステストにおける、スキャンパスのシフトのサイクル数は、最大のフリップフロップをもつスキャンパスのフリップフロップ数となる。このため、最大のフリップフロップをもつスキャンパスに含まれるフリップフロップ数の半分以下のフリップフロップで、スキャンパスを構成しておけば、他のスキャンパスに対するシフト動作が1回行われる間に、DRAM1008の設定に関するスキャンパスのシフト動作は、最低2回行うことが可能となる。このスキャンパスの構成により、通常のSRAMを想定したテストパタンを2回目のシフト動作で設定し、1回目のシフト動作では、リフレッシュ動作を設定することにより、DRAMに1008対するスキャンパステストが可能となる。
次に、図2に基づくテスト回路によるテスト方法について、図10と図11をもとに説明する。図10は、図2の回路に対し、通常のテストパタン生成手法に基づきテストパタン生成を行なった場合の設定の例であり、図11は、図2の回路を利用した、本発明に基づくテストパタン生成手法を示した図である。
図10、図11に示すSMCはスキャンパスのシフトモードとキャプチャーモードを切り替える信号であるSMCの波形を示しており、SMCの波形は1がシフトモードで、0がキャプチャーモードを示している。また、図10、図11に示すSCANIN_1、SCANIN_D、SCANIN_2は、それぞれ、図2におけるSCANIN_1の波形、SCANIN_Dの波形、SCANIN_2の波形を示している。
図10で、SCAN_1設定1、SCAN_1設定2、SCAN_1設定3は、SCANIN_1の設定であり、それぞれ1回目、2回目、3回目のシフトモードの設定値を示している。SCAN_2設定1、SCAN_2設定2、SCAN_2設定3は、SCANIN_2の設定であり、それぞれ1回目、2回目、3回目のシフトモードの設定値を示している。
DRAM設定用のスキャンパスのスキャン入力値は、SCANIN_Dで示されているが、他のスキャンパスに対し、フリップフロップ数が半分以下であるため、値を設定するのは、SCAN_D設定1、SCAN_D設定2、SCAN_D設定3となり、それぞれ、1回目、2回目、3回目のシフトモードの設定値を示している。
未設定1、未設定2、未設定3は、他のスキャンパスの設定には必要な期間での設定を示しているが、DRAM設定用のスキャンパスでは、設定が不要となる。Cap1、Cap2はキャプチャーモードでの設定である。
同様に、図11では、SCAN_1設定1、SCAN_1設定2、SCAN_1設定3は、SCANIN_1の設定であり、それぞれ1回目、2回目、3回目のシフトモードの設定値を示している。SCAN_2設定1、SCAN_2設定2、SCAN_2設定3は、SCANIN_2の設定であり、それぞれ1回目、2回目、3回目のシフトモードの設定値を示している。
DRAM設定用のスキャンパスのスキャン入力値は、SCANIN_Dで示されているが、他のスキャンパスに対し、フリップフロップ数が半分以下であるため、DRAMのリフレッシュ時間を考慮しない場合に値を設定するのは、SCAN_D設定1、SCAN_D設定2、SCAN_D設定3となり、それぞれ、1回目、2回目、3回目のシフトモードの設定値を示している。
未設定1、Refresh設定1やRefresh設定2は、書き込みや読み出し設定には必要のない設定であるが、本発明では、リフレッシュのための設定として利用することが可能である。Cap1、Cap2はキャプチャーモードでの設定である。
ここで、図10と図11のSCANIN_Dの波形に注目をする。まずテストパタン生成では、DRAMのリフレッシュ時間を考慮せずに、テストパタンを生成するため、図10のような設定がもとめられる。次にリフレッシュ設定が必要な場合には、書き込み設定から読み出し設定の間に、リフレッシュ設定を挿入するが、SCANIN_Dの値としては、未設定1、未設定2、未設定3は、書き込み設定や読み出し設定には使用されないため、図11のRefresh設定1やRefresh設定2に示すように、リフレッシュ設定を挿入することが可能である。Refresh設定1やRefresh設定2は、書き込み設定や読み出し設定には使用されないため、リフレッシュ設定は、書き込み設定や読み出し設定と矛盾することはなく、テストパタン生成が容易となる。
本発明の第1の実施例を示すDRAMのテストのための設定波形である。 本発明の第2の実施例を示した回路図である。 本発明の第1の実施例で用いられるテストパタン設定手法を示したフローチャートである。 本発明の第1の実施例の適用を説明するための回路図である。 図4に対し、本発明のテストパタン設定を段階的求めた第1の図である。 図4に対し、本発明のテストパタン設定を段階的求めた第2の図である。 図4に対し、本発明のテストパタン設定を段階的求めた第3の図である。 図4に対し、本発明のテストパタン設定を段階的求めた第4の図である。 図4に対し、本発明のテストパタン設定を段階的求めた第5の図である。 図2に対する、従来のテストパタン設定を示した図である。 図2に対する、本発明のテストパタン設定を示した図である。 従来のメモリに対するテストの設定波形である。
符号の説明
108 Write設定
109 Refresh設定
110 Read設定
111 Read値出力
401 スキャン入力端子
402 外部制御端子
403 フリップフロップ
405 フリップフロップ
406 フリップフロップ
407 フリップフロップ
408 フリップフロップ
409 バッファ
410 バッファ
411 バッファ
412 バッファ
413 バッファ
414 バッファ
415 ANDゲート
416 DRAM
417 バッファ
418 バッファ
419 フリップフロップ
420 フリップフロップ
421 回路
422 フリップフロップ
423 フリップフロップ
424 フリップフロップ
425 フリップフロップ
426 フリップフロップ
427 スキャン出力端子
428 回路
100 テスト回路
1002 スキャン入力端子
1003 スキャン入力端子
1004 スキャン入力端子
1005 フリップフロップ群
1006 フリップフロップ群
1007 フリップフロップ群
1008 DRAM
1009 スキャン出力端子
1010 スキャン出力端子
1011 スキャン出力端子

Claims (7)

  1. 複数のフリップフロップを含み、制御信号に応じてシフトレジスタを形成してスキャン入力端子から入力されるパタンをスキャン出力端子に向かってシフトするスキャンパスに、前記スキャン入力端子からテストパタンを入力してメモリの書き込み及び読み出しを行うテスト手法であって、
    前記スキャン入力端子から前記スキャンパスに入力されシフトされる前記テストパタンが含む書き込み設定値により前記メモリに対してデータの書き込みを行い、
    前記スキャン入力端子から前記スキャンパスに入力されシフトされる前記テストパタンが含むリフレッシュ設定値により前記メモリに書き込まれたデータのリフレッシュを行い、
    前記スキャン入力端子から前記スキャンパスに入力されシフトされる前記テストパタンが含む読み出し設定値により前記メモリからデータを読み出すテスト方法。
  2. 前記リフレッシュ設定値は、前記書き込み設定値より後であって、前記読み出し設定値より先に前記スキャン入力端子から前記スキャンパスに入力される
    ことを特徴とする請求項1記載のテスト方法。
  3. 前記メモリのリフレッシュ設定値の入力は、
    前記メモリのデータ書き込みから前記メモリのデータ読み出しまでの時間を予め計測し、前記計測により計測された時間が前記メモリのデータ保持可能時間を上回る場合にのみ行われることを特徴とする請求項1または2記載のテスト方法。
  4. 前記リフレッシュ設定値は、前記読み出し設定値と同じ値であり、
    前記メモリのリフレッシュは、前記メモリからのデータ読み出しにより行われることを特徴とする請求項1、2または3記載のテスト方法。
  5. 前記リフレッシュ設定値は、前記メモリの書き込み設定値及び読み出し設定値の入力により行われる前記メモリのテストに対しては、影響を与えない値であることを特徴とする請求項1乃至4いずれかに記載のテスト方法。
  6. 前記メモリはDRAM(Dynamic Random Access Memory)であることを特徴とする請求項1乃至5いずれかに記載のテスト方法。
  7. 記憶したデータを保持するためにリフレッシュを必要とするメモリと、
    前記メモリに対してデータの書き込みを行うための書き込み設定値、前記メモリに書き込まれたデータの読み出しを行うための読み出し設定値、及び前記リフレッシュを行うためのリフレッシュ設定値を含むテストパタンが入力される第1のスキャンパスと、
    前記第1のスキャンパスとは別のスキャンパスであって、前記メモリ以外の回路のテストに関する第2のスキャンパスと、
    を有し、
    前記第1のスキャンパスに含まれるフリップフロップの数は、前記第2のスキャンパスに含まれるフリップフロップの半分以下であり、
    第2のスキャンパスに含まれるフリップフロップに値が設定されているときに、前記第1のスキャンパスに含まれるフリップフロップにも並行して値が設定されていることを特徴とする回路。
JP2005197061A 2005-07-06 2005-07-06 テスト回路及びテスト方法 Expired - Fee Related JP4773148B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005197061A JP4773148B2 (ja) 2005-07-06 2005-07-06 テスト回路及びテスト方法
US11/480,455 US7475300B2 (en) 2005-07-06 2006-07-05 Test circuit and test method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005197061A JP4773148B2 (ja) 2005-07-06 2005-07-06 テスト回路及びテスト方法

Publications (2)

Publication Number Publication Date
JP2007018570A JP2007018570A (ja) 2007-01-25
JP4773148B2 true JP4773148B2 (ja) 2011-09-14

Family

ID=37718928

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005197061A Expired - Fee Related JP4773148B2 (ja) 2005-07-06 2005-07-06 テスト回路及びテスト方法

Country Status (2)

Country Link
US (1) US7475300B2 (ja)
JP (1) JP4773148B2 (ja)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2830730B2 (ja) * 1994-02-28 1998-12-02 日本電気株式会社 ダイナミックメモリ
US5719879A (en) * 1995-12-21 1998-02-17 International Business Machines Corporation Scan-bypass architecture without additional external latches
JP3193979B2 (ja) * 1996-08-06 2001-07-30 松下電器産業株式会社 集積回路及びそのテスト方法
JPH11153650A (ja) 1997-11-20 1999-06-08 Mitsubishi Electric Corp 半導体集積回路装置
JP2000163995A (ja) 1998-11-27 2000-06-16 Matsushita Electric Ind Co Ltd 半導体装置およびその検査方法
JP2000275303A (ja) * 1999-03-23 2000-10-06 Mitsubishi Electric Corp バウンダリスキャンテスト方法及びバウンダリスキャンテスト装置
JP2003100100A (ja) * 2001-07-19 2003-04-04 Mitsubishi Electric Corp 半導体集積回路装置
JP2005308500A (ja) * 2004-04-20 2005-11-04 Nec Electronics Corp 半導体集積回路装置及びテスト方法
US7188323B2 (en) * 2004-04-20 2007-03-06 Nec Laboratories America, Inc. Restricted scan reordering technique to enhance delay fault coverage

Also Published As

Publication number Publication date
US20070033462A1 (en) 2007-02-08
US7475300B2 (en) 2009-01-06
JP2007018570A (ja) 2007-01-25

Similar Documents

Publication Publication Date Title
JP4044075B2 (ja) 半導体集積回路の試験回路及び試験方法
JP5665263B2 (ja) 半導体記憶装置、及び該半導体記憶装置のテスト方法
JPH10144095A (ja) 半導体メモリ試験装置用不良解析メモリ
JP4129187B2 (ja) 半導体メモリ試験装置及び不良解析用アドレス発生方法
KR100936418B1 (ko) 반도체 기억 장치 및 반도체 기억 장치의 시험 방법
JP2010102791A (ja) 半導体装置およびそのテスト方法
JP2006337289A (ja) 半導体集積回路装置とそのテスト方法
JP4773148B2 (ja) テスト回路及びテスト方法
US20080082874A1 (en) FBM generation device and FBM generation method
JP2005309787A (ja) 中央演算処理装置及びマイクロコンピュータ
KR100825013B1 (ko) 패키지 레벨의 명령 테스트를 위한 반도체 장치
US20090303806A1 (en) Synchronous semiconductor memory device
TWI514417B (zh) 可在不存取記憶體陣列的情況下對輸出資料路徑進行特徵化的記憶體架構及方法
JP2010040092A (ja) 半導体集積回路
TW202223654A (zh) 記憶體測試電路
JP3348632B2 (ja) 高速試験機能つきメモリ
JP4836724B2 (ja) 位相調整回路およびテスト装置
JP3654013B2 (ja) 半導体装置及びそのテスト方法
JP2006208190A (ja) 集積回路およびその試験方法
JP3465770B2 (ja) 半導体メモリ試験装置
CN114639432A (zh) 存储器测试电路
KR100883735B1 (ko) 반도체메모리 시험장치 및 불량해석용 어드레스 발생기
JP2009289336A (ja) 半導体集積回路及びそのテスト方法
JP2007018710A (ja) 半導体装置及びその試験方法
KR19990049365A (ko) 직접 액세스 모드 테스트를 위한 반도체 메모리장치 및 그테스트 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080314

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110203

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: 20110621

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: 20110623

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140701

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