JPWO2012137340A1 - 試験方法および前記試験方法が適用される半導体集積回路 - Google Patents

試験方法および前記試験方法が適用される半導体集積回路 Download PDF

Info

Publication number
JPWO2012137340A1
JPWO2012137340A1 JP2013508691A JP2013508691A JPWO2012137340A1 JP WO2012137340 A1 JPWO2012137340 A1 JP WO2012137340A1 JP 2013508691 A JP2013508691 A JP 2013508691A JP 2013508691 A JP2013508691 A JP 2013508691A JP WO2012137340 A1 JPWO2012137340 A1 JP WO2012137340A1
Authority
JP
Japan
Prior art keywords
test
ram
data
result storage
failure
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
Application number
JP2013508691A
Other languages
English (en)
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2012137340A1 publication Critical patent/JPWO2012137340A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/10Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard 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/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C29/56008Error analysis, representation of errors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • 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
    • G11C2029/0405Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals comprising complete test loop
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
    • G11C2029/5606Error catch memory

Abstract

この試験方法は、試験回路により、メモリの試験対象領域に試験データを書き込み、書き込んだデータを読み出し、読み出したデータをメモリの結果格納領域に第1のデータ配置で書き込み、結果格納メモリに書き込まれたデータを読み出して、対照データと比較し、第1の比較結果を取得する。さらに、この試験方法は、メモリの試験対象領域から読み出したデータを、試験回路によりメモリの結果格納領域内で第1のデータ配置とは異なる第2のデータ配置となるように書き込み先を変換しながら、メモリの結果格納領域に再度書き込み、再度書き込んだデータを読み出して、対照データと比較し、第2の比較結果を取得する。そして、この試験方法は、第1の比較結果と第2の比較結果に応じて、メモリの不良位置を特定する。

Description

本発明は、半導体集積回路の試験に関するものである。
今日、半導体集積回路としては、RAM(Random Access Memory)を搭載したものが多数提供されている。以下、半導体集積回路をLSI(Large Scale Integration)という。RAMを搭載したLSI単体試験では、RAMの試験のために内蔵型自己診断回路が多く使用されている。内蔵型自己診断回路は、BIST(Built In Self Test)回路、あるいは試験制御回路と呼ばれる。
図1に、試験制御回路を有するLSIの構成を例示する。図1の構成では、試験制御回路は、例えば、図示しないLSIテスタからの設定にしたがい、書き込むデータと、データの書き込み先となるアドレスを発生させ、RAMにデータを書き込む。次に、試験制御回路は、RAMから書き込んだデータを読み出しデータとして読み出す。さらに、試験制御回路は、RAMに書き込んだデータを読み出したときに得られる期待値を発生させる。そして、試験制御回路は、読み出しデータと期待値とを比較器で比較することでテスト結果を生成する。図1では、テスト結果はエラー情報とされている。そして、試験制御回路は、例えば、LSIテスタの設定に応じて、読み出し回路の制御信号にしたがい、エラー情報を出力する。LSI外部の図示しないLSIテスタは、以上の手順で生成されるエラー情報をLSIから読み出す。そして、LSIテスタは、LSI内の試験制御回路から読み出したエラー情報によりRAMの良否判定を行う。
LSI内に試験制御回路を設けない従来の試験技術では、LSI外部からすべてのテストパタンをLSIに入力し、例えば、入力されたテストパタンのRAMへの格納結果を読み出していた。したがって、上記のような試験制御回路を含むLSIの試験では、従来の試験技術に比べて、大幅に試験時間および入力するテストパタン数が縮小できる。
ところで、LSIの量産では良品と不良品の判定ができれば充分である。このため、通常の試験制御回路は、RAMの良否を判定するための情報を取得する。RAMの良否を判定するための情報は、例えば、最小の情報量では、良品と不良品とを区別する情報となる。このような最小の情報量では、故障の詳細状況を得ることができない。
一方、故障解析は、故障原因を突き止めるために行われる。そのため、故障解析では、RAM内の故障しているアドレス、ビットの個数、あるいは分布状況等を示す情報が求められる。そこで、故障解析のために、RAMの故障ビット情報(フェイル・ビット・マップ:以下FBMという)を取得する手法が用いられる。
一般に、FBMを取得するにはRAMの全アドレスの全BITの情報が必要である。しかし、RAMの全アドレスの全BITの情報は膨大な情報量となる。全アドレスの全BITの情報をレジスタに格納すると仮定すると、大容量のリソースを用意することになる。そこでレジスタ量削減のために1アドレス分のレジスタを用意し、アドレスを1つ試験する度に1アドレス分の結果を読み出す手法がとられる。
図2に、1アドレス分の結果を読み出す試験制御回路の構成を例示する。図2の構成の場合、アドレスが1つ進む度に読み出し動作が行われるので動作スピードが遅くなり、実速度での測定を行うことができないという問題がある。実速度とは、例えば、LSIの通常動作時のRAMへのアクセス速度ということもできる。このアクセス速度は、例えば、LSI内のRAMアクセスに用いられるクロック周波数で定められる。
実速度での測定を行うため、RAMから読み出したデータを格納するレジスタの代わりにLSIに内蔵されているRAMを用いる方法が提案されている。この方法では、試験制御回路は、試験対象RAMの試験結果を別のRAMに実速度で格納する。図3に、試験対象RAMの試験結果を別のRAMに格納するLSIの構成を例示する。図3の構成では、試験対象RAMからデータが実速度で読み出される。読み出されたデータは、比較器で期待値と比較され、比較結果が結果格納RAMに書き込まれる。
しかし、結果格納RAMを用いる場合には、結果格納RAMに故障があると、試験対象RAMの試験ができないという問題がある。そこで、結果格納RAMに予備領域を設ける構成が提案されている。図4に、結果格納RAMに予備領域を設けたLSIの構成を例示する。結果格納RAMに予備領域を設けることにより、結果格納RAMに故障がある場合でも、試験結果を正しく保持することができる。
特開2009−266330号公報 特開2003−187594号公報
上述のように、実速度でFBMを取得するために試験結果を内蔵の結果格納RAMに実速度で格納する技術が提案されている。そして、試験結果格納RAMの故障に対応するために予備領域を設けることが提案されている。
しかしながら、LSIに搭載したRAMの試験のための予備領域は、専用の領域、あるいは、無駄なRAMの領域の増加となる。
そこで、開示技術の目的は、LSIに搭載されたRAMの試験ために、無駄なRAM領域を設けることなく、実速度でFBMを取得することを可能にすることである。
開示の技術の1側面は、試験装置が試験回路を有する半導体集積回路に搭載されたメモリを試験する試験方法として例示できる。この試験方法は、試験回路により、メモリの試験対象領域に試験データを書き込み、書き込んだデータを読み出し、読み出したデータをメモリの結果格納領域に第1のデータ配置で書き込み、結果格納メモリに書き込まれたデータを読み出して、対照データと比較し、第1の比較結果を取得する。さらに、この試験方法は、メモリの試験対象領域から読み出したデータを、試験回路によりメモリの結果格納領域内で第1のデータ配置とは異なる第2のデータ配置となるように書き込み先を変換しながら、メモリの結果格納領域に再度書き込み、再度書き込んだデータを読み出して、対照データと比較し、第2の比較結果を取得する。そして、この試験方法は、第1の比較結果と第2の比較結果に応じて、メモリの不良位置を特定する。
上記試験方法によれば、LSIに搭載されたRAMの試験ために、無駄なRAM領域を設けることなく、実速度でFBMを取得することができる。
試験制御回路を有するLSIの構成を例示する図である。 1アドレス分の結果を読み出す試験制御回路の構成を例示する図である。 試験対象RAMの試験結果を別のRAMに格納するLSIの構成を例示する図である。 結果格納RAMに予備領域を設けたLSIの構成を例示する図である。 比較器付BISTによるRAM試験方法の例を示す図である。 比較器無しBISTによるRAM試験方法の例を示す図である。 比較例に係るRAMの試験方法を例示する図である。 単セル故障を例示する図である。 ワード線故障を例示する図である。 ビット線故障を例示する図である。 アドレス変換前のワード線故障の例を示す図である。 アドレス変換による処理例を示す図である。 結果格納RAMが故障の場合の処理例を示す図である。 データ変換によるビット線故障を回避する処理例を示す図である。 比較器付BISTによるRAM試験方法の例を示す図である。 アドレス変換部とデータ変換部とを含む結果格納RAMの例である。 アドレス変換部の構成を例示する図である。 データ変換部の構成を例示する図である。 RAM故障の例を示す図である。 RAM故障時に、試験対象RAMの結果を結果格納RAMに転送して結果格納RAMからデータを読み出したときのデータ例である。 アドレス反転部によるアドレス反転時の結果格納RAMへの格納結果の例を示す図である。 ビット故障の例を示す図である。 試験対象RAMへの試験パタンの書き込み結果を読み出し、結果格納RAMに転送した結果を例示する図である。 データ変換部により、2ビット単位での入れ替えを行い、転送した結果を例示する図である。 試験の処理フローを例示する図である。 比較器無しBISTによるRAM試験の手順を例示する図である。 ロウとカラムを有するRAM領域を例示する図である。 RAMアドレスとロウ番号、カラム番号の対応を例示する図である。 ビット0を反転する構成例を示す図である。
以下、図面を参照して、技術の一側面として、実施の形態(以下、実施形態という)に係る半導体集積回路と、半導体集積回路の試験方法について説明する。以下の実施形態の構成は例示であり、本半導体集積回路、および本試験方法は実施形態の構成には限定されない。
以下、図5から図14の図面を参照し、実施例1に係る半導体集積回路の試験装置について説明する。図5、図6に実施例1に係るLSI試験方法で用いられる装置の構成を例示する。
<LSIとLSIテスタの構成>
LSIの試験、あるいは特性の測定等のため、LSIテスタと呼ばれる測定装置が用いられる。LSIテスタを用いて試験、測定等を行う様に設計されたLSIはLSIテスタによる値の設定と値の読出しを行うインターフェースを有している。図5および図6では、LSIテスタとLSIとのインターフェースは、二点鎖線で示されている。LSIテスタはこのインターフェースを用い、試験に必要な情報をLSI内部に設定し、試験終了後に試験結果を読み出すことができる。
図5に比較器付BISTによるRAM試験方法の例を示す。通常、LSIテスタからは電源やクロック等、試験に必要な他の信号も供給されることが多い。ただし、図5では、電源やクロック等は省略されている。図5では、試験対象のLSI1と、LSIテスタ2とが例示されている。LSI1は、BIST付RAM10と、試験結果を格納する結果レジスタ15とを有する。また、BIST付RAM10は、試験制御回路11と、RAM12と、期待値を格納するレジスタ13と、比較器14とを有する。試験制御回路11が試験回路の一例である。RAM12がメモリの一例である。期待値が対照データの一例である。
ここで、試験対象のRAM12は、通常は、複数のRAMデバイスを含む。ただし、図5では、複数のRAMデバイスを含むメモリをRAM12としている。以下の実施例では、RAM12に含まれる複数のRAMデバイスのうち、所定個数(例えば、1個)を試験対象RAMとする。試験対象RAMが試験対象領域の一例である。また、RAM12に含まれる複数のRAMデバイスのうち、試験対象RAMと同一容量の他のRAMデバイスを結果格納RAMとする。結果格納RAMが結果格納領域の一例である。したがって、図5の構成では、試験対象RAM、および結果格納RAMがRAM12に含まれる。RAMデバイスがメモリデバイスの一例である。
一方、LSIテスタ2は、図示しないCPUと主記憶装置とを有している。LSIテスタ2は、主記憶装置上に実行可能に展開されたテスタプログラム21により、LSI1等の試験、特性の測定等を実行する。また、LSIテスタ2は、主記憶装置上に試験データ22を有している。ただし、試験データ22は、ハードディスク装置、SSD(Solid State Drive)等の補助記憶装置上に保持してもよい。さらに、LSIテスタ2は、試験制御回路11および結果レジスタ15等、LSI1内の回路とのインターフェースを有している。
LSIテスタ2は、テスタプログラムを実行することにより、このインターフェースを通じて、設定値供給機能24を提供する。すなわち、LSIテスタ2の設定値提供機能24は、試験データ22から設定値を取得し、試験制御回路11に供給する。また、LSIテスタ2は、テスタプログラムを実行することにより、このインターフェースを通じて、読み出し値比較機能23を提供する。LSIテスタ2の読み出し値比較機能23は、LSI1の結果レジスタ15から試験結果、測定結果等を読み出す。
以下、LSI1の試験実行手順の例を説明する。
(1)LSIテスタ2はテスタプログラム21にしたがい、例えば、主記憶装置あるいは補助記憶装置等に内蔵した試験データ22を試験制御回路11へ設定する。試験データ22には、試験対象のRAM12に書き込むデータを発生するためのデータ、試験対象のRAM12の書き込みアドレスを発生するためのデータ、および、試験対象のRAM12から読み出されるデータの期待値を発生させるためのデータ等が含まれる。
(2)試験制御回路11は、設定された試験データにより試験を実行する。ここでは、LSI1内のRAM12に含まれる一のRAMデバイスを試験対象RAMとし、LSI1内のRAM12に含まれる他のRAMデバイスを結果格納RAMとする。試験制御回路11は、試験対象RAMからデータを実速度で読み出し、結果格納RAMに格納する。
(3)試験制御回路11は、試験結果をRAM12の結果格納RAMから読出し、比較器14により、試験データ22の期待値と比較する。比較器14は、比較結果を結果レジスタ15に格納する。なお、比較器14の処理、および結果レジスタ15への格納は実速度よりも遅い速度でもよい。図5のように、LSI1内に比較器14を設ける場合には、例えば良品=0/不良品=1などの最小限の結果情報が得られる。このため、LSIテスタ2が結果レジスタ15から読み出すデータ量は少ない。
図6に比較器無しBISTによるRAM試験方法の例を示す。図6のLSI1Aは、図5のLSI1と比較して、比較器14を有していない。したがって、試験結果と期待値との比較は、LSIテスタ2がテスタプログラム21にしたがって実行する。
(1)〜(2)までの手順は図5の比較器付BISTによるRAM試験方法と同様であるので省略する。
(4)LSIテスタ2は、試験結果をLSI1のRAMの結果格納RAMから読み出し、テスタプログラム21にしたがい試験データ22に基づく期待値と比較する。なお、結果格納RAMからの試験結果の読み出しは実速度よりも遅い速度でもよい。
LSI1Aは、比較器14を有していないため、LSI1Aから読み出されるデータはRAMビット幅分の結果になっている。したがって、比較器無しBISTによるRAM試験方法で読み出されるデータ量は、比較器付BISTによるRAM試験方法に比べて大きくなる。
比較器14を持つか持たないかは試験内容やLSIの構成に応じて適宜決定できる。以下、実施例1では、試験結果と期待値との比較は、図5の場合、図6場合のいずれかに限定される訳ではない。
<比較例>
図7に、比較例に係るRAMの試験方法を例示する。図7では、比較例に係るLSIのうち、試験制御回路311、およびRAM312が例示されている。また、RAM312は、試験対象RAM312Aおよび結果格納RAM312Bを含む。また、図7では、テスタ2は、省略されている。
試験制御回路311による試験の実行手順は以下の通りである。
(1)試験制御回路311から試験対象RAM312Aに試験データを実速度で書き込む。
(2)試験制御回路311により試験対象RAMのデータを実速度で読み出して結果格納RAM312Bへ書き込む。
(3)結果格納RAMのデータをLSI外部に読み出す。この動作は低速でも構わない。
(4)試験制御回路311によって書き込まれた試験データのデータは予め判っている。そこで、テスタ2は、試験制御回路311によって書き込まれた試験データと同一の値を期待値とすればよい。テスタ2は、読み出した結果格納RAM312Bのデータと期待値とを比較をする。
(5)結果格納RAM312Bのデータと期待値とが一致すれば、試験結果は正常であると判定される。
RAMの故障は0故障(0の読み書きができない)と1故障(1の読み書きができない)がある。このため、試験制御回路311は、RAM312内の各メモリセルに対し、0と1とを上記方法によりそれぞれ少なくとも1回以上書き込み、試験する。
ところで、比較例による方法では試験結果にエラーがあった場合に試験対象RAM312Aと結果格納RAM312Bのどちらの故障であるかを区別することはできない。
<RAMの故障の分類>
RAMの故障のほとんどは以下の3種類に分類される。
(1)RAMセル故障;
RAMの故障の第1の種類は、RAM内のセルが故障するケース(RAMセル故障)である。RAMセル故障は、故障箇所が1個(単セル)である場合が多い。図8に、単セル故障を例示する。図8の黒で塗りつぶしたセルが故障箇所である。図8では、1つのアドレスで指定されるワード上の1つのビットが故障している。
(2)ワード線故障;
RAMの故障の第2の種類は、RAMセルが同一アドレスのワード方向に連続して故障するケース(ワード線故障)である。ワード線故障は、RAM内のアドレスを指定する制御線の故障である。RAM内のアドレスを指定する制御線は、ワード線と呼ばれる。ワード線故障は、故障箇所が1つのワード線である場合が多い。図9に、ワード線故障を例示する。図9の黒で塗りつぶしたセルが故障箇所である。図9では、1つのアドレスで指定される1つのワードに含まれる全ビットが故障している。
(3)ビット線故障
RAMの故障の第2の種類は、RAMセルが1つのビット位置で複数のワードに渡って連続して故障するケース(ビット線故障)である。ビット線故障は、RAM内のビット位置を指定する制御線の故障である。RAM内のビット位置を指定する制御線は、ビット線と呼ばれる。ビット線故障は、故障箇所が1つのビット線である場合が多い。図10に、ビット線故障を例示する。図10の黒で塗りつぶしたセルが故障箇所である。図10では、1つのビット線で指定される1つのビット位置上の全ビットが故障している。
ワード線故障に関して、図9では1ワード線で指定される全ビット(全セル)が故障している。また、ビット線故障に関して、図10では1ビット線で指定されるビット位置の全ビット(全セル)が故障している。ただし、ワード故障において、1ワード線で指定される全セルが故障するとは限らない。また、1ビット線で指定される全セルが故障するとは限らない。例えば、まばらに故障する場合も生じ得る。単セル不良は、最小故障(故障セルが1個)のワード線故障またはビット線故障であると考えれば、ワード線故障またはビット線故障に含めて処理することも可能となる。
よって、RAM故障においてワード線故障またはビット線故障の2種類の故障に対応すれば、ほとんどの場合について、故障検知、故障解析が可能となる。
<実施例1の試験方法>
(ワード線故障の回避)
実施例1の方法では、ワード故障が1箇所である場合は、アドレス変換、すなわち、選択するワード線の変換を行う。アドレス変換前後で同一アドレスに変換されない変換を用いれば、故障箇所のアドレスが他のアドレスに変換される。したがって、複数のワード線が同時に故障しているという状態でない場合には、アドレス変換後には故障していないアドレス線に対応するアドレスに変換される可能性が高い。このため、アドレス変換によって故障箇所を回避できる。図11に、アドレス変換前のワード線故障の例を示す。図11の例では、結果格納RAM12Bのアドレスバス121とアドレスデコーダ123との間に、アドレス変換部122が設けられている。例えば、アドレスバス121は、所定のビット幅でアドレスを指定する。アドレスデコーダ123は、指定されたアドレスに対応する1つのアドレス線を選択する。アドレス変換部122が変換部の一例である。
図11は、アドレス変換部122によるアドレス変換のない状態を例示する。いま、アドレス変換部122によるアドレス変換が実行されない状態で、ワードW1に対応する全ビットが故障したと仮定する。この時点では、まだ、試験対象RAM12Aと結果格納RAM12Bのうち、どちらのRAMの故障かは、判断できない。
次にアドレス変換部122によるアドレス変換を行った状態で、図11と同様の試験を行う。図12にアドレス変換による処理例を示す。図12のようにアドレス変換無のときにエラーの状態であったワードW1が、アドレス変換有の状態ではエラーがなくなったとする。そして、アドレス変換により、ワードW2のアドレス位置にエラー箇所が移動したとする。図12のように、アドレス変換の有無によって、結果格納RAM12B上で、故障箇所が移動する場合、結果格納RAM12Bに書き込まれるデータ自体に故障があることが分かる。すなわち、図12の例では、試験対象RAM12A側に故障あったことが分かる。この場合、結果格納RAMには故障がないため、アドレス変換無のときの結果格納RA12Bのデータが試験対象RAMの試験結果となる。アドレス変換無のときの結果格納RA12Bのデータの配置が第1のデータ配置の一例である。また、アドレス変換有のときの結果格納RA12Bのデータの配置が第2のデータ配置の一例である。
図13に、結果格納RAM12Bが故障の場合の処理例を示す。図13では、アドレス変換の有無によらず、ワード線故障の位置がワードW1に固定されている。アドレス変換ありの場合においても、ワード線故障の位置がアドレス変換なしの状態から変化しない場合、結果格納RAM12B側に故障があったことが分かる。
また、アドレス変換前に結果格納RAM12Bの故障により、正常に取得できていない故障アドレスでの試験対象RAM12Aでの試験結果は、アドレス変換後のアドレス位置に格納されている。同時に複数のアドレ線故障が生じる可能性が低いとすれば、アドレス変換後のアドレス位置には、故障はないとしてよい。
したがって、変換前の結果と合わせることにより、試験対象RAM12Aでのすべての試験結果が得られる。具体的にはアドレス変換無での試験結果でエラーを起こしているアドレスの試験結果は、結果格納RAM12Bの故障に該当し、正しくない。そこで、変換有の試験結果から、アドレス変換前に故障が検知されたアドレス(以下、故障アドレス)が変換されたアドレスに格納されている結果を抜き出せばよい。そして、抜き出した試験結果を変換無の試験結果の故障アドレスの結果と入れ替えることにより、試験対象RAM12Aについて、すべてが正しい結果が得られる。
(ビット線故障の回避)
ビット線故障が1箇所である場合は、ビット線の変換を行うことにより、ワード線故障の場合と同様に処理できる。ただし、ワード線の変換の場合には、ワード位置を入れ替えた。すなわち、変換前に故障していたワード位置と、他のワード位置とで、データが入れ替わるように全ワードデータにアドレス変換を実行した。
一方、ビット線故障の場合に、ビットの変換を行うと、各ワード内で、ビットの入れ替えが生じる。各ワード内でのビットの入れ替えは、データ値の変更となるので、データ変換と呼ぶ。そして、データ変換前後で、故障ビットが変換前と同じビット位置に変換されないような変換を用いればよい。同時に複数のビット位置が故障する状態になる確率が低いと考えれば、故障箇所のビットは変換後に故障していない場所に変換される可能性が高いため故障を回避できる。
図14に、データ変換によるビット線故障を回避する処理例を示す。図14の例では、結果格納RAM12Bのビット線にデータ変換部124が付加されている。データ変換部124は、書き込みデータが伝送されるビット線相互の間で、データを入れ替える。例えば、ビットB1とビットB2とが入れ替えられる。データ変換部124が変換部の一例である。
データ変換の有無によって、ビット線故障の状態が変化した場合、すなわち、故障ビット位置が変化した場合には、LSIテスタ2は、結果格納RAM12Bには、故障がないと判断できる。また、LSIテスタ2は、試験対象RAM12Aのデータ変換前のビット位置にビット線故障があったと判定できる。
一方、データ変換の有無によらず、ビット線故障の状態が変化しない場合、すなわち、故障ビット位置が変化しない場合には、LSIテスタ2は、結果格納RAM12Bに、故障があると判断できる。また、LSIテスタ2は、結果格納RAM12B上の故障ビット位置からデータ変換によって移動した移動先のビットのデータを取得し、試験対象RAM12Aのデータ変換前のビット位置のデータと置き換えることで、試験対象RAM12Aの全試験データを取得できる。データ変換の無のときの結果格納RAM12Bのデータの配置が第1のデータ配置の一例である。また、データ変換の有のときの結果格納RAM12Bのデータの配置が第2のデータ配置の一例である。
以上述べたように、実施例1のLSI1によれば、LSI1に搭載されたRAM12のうち、試験対象RAM12AとなるRAMデバイスと結果格納RAM12BとなるRAMデバイスとを組み合わせることによって、結果格納RAM12Bとして専用のRAMデバイス、あるいは、予備領域のような無駄なRAMデバイスを設けることなく、信頼性を確保して、実速度でのRAMの試験を実行できる。すなわち、試験対象RAM12Aと結果格納RAM12Bとの間では、データの読み出しと書き込みとを通常のLSI1の動作周波数で行い、結果格納RAM12Bの読み出しは、LSIテスタ2に適した動作周波数で行えばよい。このような構成により、実際の動作周波数での試験と、誤りを低減した状態での試験結果の取得が可能となる。
その場合に、例えば、RAM12に含まれる、少なくとも1つのRAMデバイスに、アドレス変換部122と、データ変換部124とを設け、結果格納RAM12Bとすればよい。そして、アドレス変換部122と、データ変換部124とを設けた結果格納RAM12Bと同一容量のRAMデバイスを試験対象RAM12Aとして選択し、実速度での試験を実行すればよい。そして、ワード線故障が発生した場合には、LSIテスタ2がテスタプログラム21を実行し、図11−図13に示した手順で、試験対象RAM12Aと結果格納RAM12Bのいずれにおいて、故障が発生しているかを特定すればよい。また、ビット線故障が発生した場合には、LSIテスタ2がテスタプログラム21を実行し、図14に示した手順で、試験対象RAM12Aと結果格納RAM12Bのいずれにおいて、故障が発生しているかを特定すればよい。
さらに、RAM12中で、試験対象RAM12AとなるRAMデバイスの数が、結果格納RAM12BとなるRAMデバイスの数よりも多い場合には、順次、試験対象RAM12AとなるRAMデバイスを入れ替え、試験を実行すればよい。
以下、図15から図25の図面を参照し、実施例2に係る半導体集積回路の試験装置について説明する。
<LSIおよびLSIテスタの構成>
図15に、比較器付BISTによるRAM試験方法の例を示す。図15は、LSI1Bにおいて、試験対象RAM12Aと、結果格納RAM12Bと、アドレス変換部122と、ビット変換部124と、PLL(Phase Locked Loop)16とが明示されている点を除いて、図5のLSI1と同様である。そこで、以下の実施例2において、実施例1と同一の構成要素については、同一の符号を付してその説明を省略する。
なお、図15において、試験対象RAM12Aと、結果格納RAM12Bとが例示されている。実施例2においても、実施例1のLSI1と同様、LSI1Bは、複数のRAMデバイスを有している。試験対象RAM12Aおよび結果格納RAM12Bは、それぞれLSI1B内のRAMデバイスの1つである。また、基本的には、試験対象RAM12Aと結果格納RAM12Bとは、同一の容量である。ただし、LSI1B内に、複数の試験対象RAM12Aがあってもよい。また、LSI1B内に、複数の結果格納RAM12Bがあってもよい。
試験対象RAM12AとなるRAMデバイスの数が、結果格納RAM12Bよりも多い場合には、順次、試験対象RAM12Aを変更して、試験を実行すればよい。また、結果格納RAM12BとなるRAMデバイスが複数ある場合には、いずれか1つのRAMデバイスを結果格納RAM12Bとしてもよい。また、順次、結果格納RAM12BとなるRAMデバイスを変更して、試験を実行してもよい。
図15において、LSIテスタ2はテスタプログラム21にしたがい試験データ22をLSI1Bに書き込む。また、LSIテスタ2はLSI1Bから、結果レジスタ15等の内部レジスタの値を読み出す。そして、LSIテスタ2は、結果レジスタ15等から読出し値と、試験データ22との比較を行う。なお、LSIテスタ2によるLSI1Bへの試験データ22等の書き込み、LSI1Bの結果レジスタ15等からの読み出し動作は、LSI1Bの通常動作時の実速度よりも低速で行っても構わない。
試験制御回路11は試験に関する制御信号、およびテスタ2から書き込まれた試験データ22等を試験対象のBIST付RAM10に供給する。実施例2では、試験制御回路11の動作はLSIテスタ2から書き込まれる設定値によって決定される。
試験対象RAM12Aは試験制御回路11からの制御信号と試験データ22により試験動作を行う。試験動作はLSI1Bの通常動作時の実速度、例えば、PLL16によるクロック速度で行われる。実速度のクロックは、例えば、PLL16から供給される。
結果格納RAM12B、アドレス変換部122、ビット変換部124は試験制御回路11からの制御信号により、試験対象RAM12Aのデータを結果格納RAM12Bへ転送する。転送はLSI1Bの通常動作時の実速度、例えば、PLL16によるクロック速度で行われる。また、アドレス変換部122、ビット変換部124が変換動作を行うかどうかは試験制御回路11からの制御信号により制御される。
比較器14は結果格納RAM12Bの読み出し値と、レジスタ13の期待値とを比較し、比較結果を結果レジスタ15に格納する。比較器14の動作は、LSI1Bの通常動作の実速度、すなわち、PLL16によるクロック速度よりも低速で行っても構わない。
以下、実施例2では、試験対象RAM12Aの不良解析を目的にFBMを作成する。そして、実施例2でも実施例1と同様、結果格納RAM12Bの故障をアドレス変換部122とデータ変換部124とによって回避する。なお、試験対象RAM12Aおよび結果格納RAM12Bのうち、いずれかのRAM、もしくは、両方のRAMに不良がない場合でも、以下で説明する手順は問題なく実施可能である。
また、実施例2では、アドレス変換部122は、アドレスのビットパタンを反転することによりアドレス変換を実行する。ただし、アドレス変換部122の処理がアドレス反転に限定される訳ではない。同様に、データ変換部124は、各ワードのデータを2ビット単位で入れ替えることにより、データ変換を実行する。ただし、データ変換部122の処理が2ビット単位の入れ替えに限定される訳ではない。
また、LSI1B内のRAMに含まれるRAMデバイスの容量は、例えば、アドレスが1024、ビット幅が32ビットと想定する。したがって、例えば、図15に示した試験対象RAM12A、および結果格納RAM12Bともに、アドレスが1024、ビット幅が32ビットであると仮定する。ただし、以下の実施例2の処理がRAMデバイスの容量、アドレスの数(ワード数)、ビット幅等に限定される訳ではない。
図16は、アドレス変換部122とデータ変換部124とを含む結果格納RAM12Bの例である。図16のように、LSI1Bは、アドレスバス121と、アドレスバスのアドレスデータを変換するアドレス変換部122と、アドレスバスのデータをデコードするアドレスデコーダ123と、書き込みデータをデータ変換するデータ変換部124とを有する。ただし、上述のように、アドレス変換部122は、アドレスデータをビット反転することでアドレス変換を実行する。また、データ変換部124は、2ビット単位の入れ替えを実行することで、書き込みデータをデータ変換する。
図17に、アドレス変換部122の構成を例示する。アドレス変換部122は、アドレスバス121の各アドレス信号を排他論理和(Exclusive OR)によって、反転する。以下、排他論理和を実行するゲートをEXORゲートと呼ぶ。ただし、各EXORゲートは、反転制御信号が1の場合に、アドレスバス121の各アドレス信号を反転する。一方、各EXORゲートは、反転制御信号が0の場合に、アドレスバス121の各アドレス信号を反転しない。例えば、試験制御回路11は、図17のアドレス変換部122の反転制御信号を1または0に制御する制御端子を有する。また、試験制御回路11は、図17のアドレス変換部122の反転制御信号を1または0に切り替える指示を保持する反転制御レジスタを有し、反転制御レジスタの値は、LSIテスタ2からの試験データ22によって設定される。
図18に、データ変換部124の構成を例示する。データ変換部124は、例えば、各ワードのビット0とビット1との間、ビット2とビット3との間、ビット2kとビット2k+1との間でビットの反転を実行する。ここで、kは0以上の整数で、2k+1の最大値が最上位ビットを示す。図18では、ビット0からビット31までについて、セレクタSL0からSL31が設けられている。また、これらのセレクタSL0〜SL31に入力されるビットデータがIBIT0〜IBIT31で示されている。また、セレクタSL0〜SL31から出力されるビットデータがOBIT0〜OBIT31で示されている。なお、各セレクタSL0〜SL31の出力端子もOBIT0〜OBIT31の符号で識別することにする。
この場合、例えば、ビット0とビット1のそれぞれが、2つのセレクタSL0とSL1に入力される。セレクタSL0は、符号0を付された入力端子と、符号1を付された入力端子を有する。切替信号が0のとき、セレクタSL0の符号0を付された入力端子が、出力端子OBIT0に接続される。一方、切替信号が1のとき、セレクタSL0の符号1を付された入力端子が、出力端子OBIT0に接続される。したがって、セレクタSL0は、切替信号が0か1かに応じて、出力端子に接続する信号をIBIT0とIBIT1との間で切り替えることができる。すなわち、セレクタSL0は、切替信号が0ときに、IBIT0を出力し、切替信号が1のとき、IBIT1を出力する。一方、セレクタSL1は、切替信号が1ときに、IBIT0を出力し、切替信号が0のとき、IBIT1を出力する。以上のように、データ変換部124は、切替信号に応じて、2ビットごとに、各ワードのビットデータを入れ替える。
例えば、試験制御回路11は、図18のデータ変換部124の切替信号を1または0に制御する制御端子を有する。また、試験制御回路11は、例えば、図18のデータ変換部124の切替信号を1または0に切り替える指示を保持する反転制御レジスタを有し、反転制御レジスタの値は、LSIテスタ2からの試験データ22によって設定される。次に、RAMを測定する手順を説明する。
<試験データの構成>
LSI1Bの試験に使用する試験パタンは以下の構成とする。ここで、試験パタンとは、試験対象RAM12Aに書き込まれるデータをいう。なお、図15に示した試験データ22は、試験パタンを発生させるための制御データ、あるいは試験パタンを圧縮したデータを含む。また、試験データ22は、試験パタンが試験対象RAM12Aから実速度で読み出されるときの期待値を発生させるための制御データ、あるいは期待値を圧縮したデータを含む。
試験パタンとしては、パタン0とパタン1の2種類のデータが用いられる。パタン0は、1ワード(実施例1では32ビット)がすべて0のデータである。また、パタン1は、1ワードがすべて1のデータである。
<試験手順>
試験パタンによる試験手順は以下の通りである。
(1)試験制御回路11は、パタン0を試験対象RAM12Aの全アドレス(0〜1023)に実速度で書き込む。
(2)試験制御回路11は、試験対象RAM12Aのデータを実速度で読み出し、アドレス変換およびデータ変換を行わずに結果格納RAM12Bにコピーする。すなわち、試験制御回路11は、試験対象RAM12Aの全アドレスのデータを実速度で試験対象RAM12Aから読み出し、試験対象RAM12Aのアドレスと同一の結果格納RAM12Bのアドレスに転送する。
(3)試験制御回路11は、試験結果格納RAM12Bのデータを読み出す。この場合の読み出し速度は、実速度でなくてもよい。また、試験制御回路11は、パタン0を期待値として、読み出した値を比較器14により比較する。そして、試験制御回路11は、比較の結果、不一致となる箇所を故障箇所として、結果レジスタ15に格納する。結果レジスタ15には、エラーが検出されたアドレスと、比較器14の比較結果を格納すればよい。LSIテスタ2は、結果レジスタ15から試験結果を取得する。そして、LSIテスタ2は、エラーが検出したアドレスと、比較器14の比較結果を基に、FBMを作成すればよい。
(4)試験制御回路11は、(1)〜(3)と同様の手順で、パタン1による試験も行い、故障箇所を結果レジスタ15に格納する。
(5)パタン0とパタン1の故障箇所を合わせてRAMの故障箇所とする。
以上の手順により、LSIテスタ2は、LSI1Bに搭載されたRAMの試験結果を得る。なお、LSIテスタ2は、故障箇所の状態により、同一アドレスのワード方向に連続した故障の場合“ワード線故障”、同一ビット位置で複数ワードに渡る方向に連続した故障の場合“ビット線故障”、特定のアドレスと特定のビットで故障の場合は“単セル故障”と分類する。
図19に、RAM故障の例を示す。図19では、試験対象RAM12Aは、アドレス=1にワード線故障を持ち、結果格納RAM12Bはアドレス=3、bit=1に単セル故障を持っているとする。図中で試験対象RAM12Aのワード線故障の場所は"*"、結果格納RAMの単セル故障の場所は"X"で表している。
この状態で、試験対象RAM12Aの結果を結果格納RAM12Bに転送して結果格納RAM12Bのデータを読み出すと図20のようなデータが得られる。すなわち、試験対象RAM12Aの故障と、結果格納RAM12Bの故障とが混在した結果が得られる。したがって、結果格納RAM12Bのデータを読み出しただけでは、混在した結果を分離することができない。
そこで、次に、試験制御回路11は、結果格納RAM12Bのアドレス反転部122によるアドレス変換を行い、試験対象RAM12Aから読み出し結果を結果格納RAM12Bに転送する。
図21に、アドレス変換部122によるアドレス反転時の結果格納RAM12Bへの格納結果の例を示す。アドレス変換部122のアドレス変換により、アドレス=1のワード(上から2番目)は、アドレス=1022のワード(下から2番目)に変換される。図21の例では、アドレス変換前にワード1にあった故障データのワードがアドレス=1022のワードに移動する。このため、アドレス=1022に移動した"*"で示される箇所の故障データが試験対象RAMから転送されてきた故障と判断される。一方、アドレス=3、ビット1にあった故障データは、アドレス変換の前後で移動しない。このため、アドレス変換の前後で移動しなかった"×"で示される箇所の故障が結果格納RAM12Bに内在していた故障となる。
よって、図20の結果格納RAM12Bから得られる試験結果から、結果格納RAM12Bの故障"×"を取り除いたものが、試験対象RAM12Aの試験結果となる。
次に、ビット線故障の場合を考える。図22にビット故障の例を示す。図22では、試験対象RAM12Aは、ビット=30にビット線故障の箇所を有する。また、結果格納RAM12Bは、アドレス=3、bit=1に単セル故障を有する。
図23に、試験対象RAM12Aへの試験パタンの書き込み結果を読み出し、結果格納RAM12Bに転送した結果を例示する。図23のように、試験対象RAM12Aの故障と、結果格納RAM12Bの故障とが混在したデータが得られる。

図24に、データ変換部124により、2ビット単位での入れ替えを行い、転送した結果を例示する。ビット変換により、ビット=30(図24で右から2番目の列)はビット=31(同図で一番右の列)に変換される。図24では、故障データがビット=30からビット=31移動する。このため、LSIテスタ2は、ビット=31に移動した"*"で示される箇所の故障が試験対象RAM12Aから転送されてきた故障であると判定できる。一方、図24の故障のうち、アドレス=3、ビット=1の故障は移動しない。このため、LSIテスタ2は、移動しなかった"×"で示される箇所の故障が結果格納RAM12Bに内在していた故障であると判定できる。よって、LSIテスタ2は、図24の結果から、結果格納RAM12Bの故障(図24で"×"で示される箇所)を取り除いたものを試験対象RAM12Aの試験結果として得ることができる。
ワード線故障、ビット線故障のどちらの不良でもない、メモリセルの縦横に広がりがあるような故障の場合は変換前後の領域に重なりが発生する可能性がある。メモリセルの縦横に広がりがある故障とは、例えば、複数ワード線故障および複数のビット線故障の少なくとも一方が生じた場合である。このような場合、試験対象RAM12Aの故障と結果格納RAM12Bの故障とを区別できない場合がある。
しかしながら、メモリセルの縦横に広がりを持つ様な故障の場合は、経験的に低速動作でも故障が検出されるケースが多い。そこで、メモリセルの縦横に広がりを持つ様な故障は、結果格納RAM12Bへの実速度転送を用いずに、試験対象RAM12A単独での低速FBMを実施する場合でも、充分な試験が可能である。ここで、低速FBMとは、PLL16のような実速度のクロック信号による試験対象RAM12Aからの読み出しではなく、LSIテスタ2から、LSI1Bの内部レジスタ、例えば、結果レジスタ15を介した試験対象RAM12Aからの読み出しによるFBMの作成をいう。
図25に、LSIテスタ2および試験制御回路11による試験の処理フローを例示する。図25の処理は、LSIテスタ2が試験データ22をLSI1Bに書き込み、試験を起動することで開始する。図25の各処理のうち、例えば、S1−S6が試験制御回路11の処理であり、S7−S16がLSIテスタ2の処理である。試験が起動されると、まず、試験制御回路11が試験対象RAM12Aへ試験パタン0を書き込む(S1)。
次に、試験制御回路11は、試験対象RAM12Aから、格納されているデータを読み出す。そして、試験制御回路11は、アドレス変換なし、かつ、データ変換なしで、読み出したデータを結果格納RAM12Bへ格納する(S2)。そして、試験制御回路11は、結果格納RAMの内容を読み出す。そして、試験制御回路11は、パタン0が読み出されているか否かを判定する(S3)。この場合、試験制御回路11は、パタン0を期待値としてレジスタ13に保持する。そして、試験制御回路11は、比較器14により、結果格納RAMから読み出した内容と、期待値とを比較する。比較結果は、結果レジスタを通じて、LSIテスタ2に引き渡される。
次に、試験制御回路11は、試験対象RAM12Aへ試験パタン1を書き込む(S4)。次に、試験制御回路11は、試験対象RAM12Aから、格納されているデータを読み出す。そして、試験制御回路11は、アドレス変換なし、かつ、データ変換なしで、読み出したデータを結果格納RAM12Bへ格納する(S5)。そして、試験制御回路11は、結果格納RAMの内容を読み出す。そして、試験制御回路11は、パタン1が読み出されているか否かを判定する(S6)。S6の判定手順は、S3と同様である。比較結果は、結果レジスタを通じて、LSIテスタ2に引き渡される。
次に、LSIテスタ2は、パタン0、パタン1の結果を合わせて、RAM試験結果を判定する(S7)。LSIテスタ2は、例えば、同一アドレスのワード方向に複数のエラーが発生しているか否かを判定することにより、ワード線故障の有無を判定する。また、LSIテスタ2は、例えば、同一ビット位置において、複数のワードに渡ってエラーが発生しているか否かを判定することにより、ビット線故障の有無を判定する。あるいは、LSIテスタ2は、ワード線故障およびビット線故障がまとまって発生し、RAM領域の一部あるいはすべてが面積を持つ範囲で故障しているか否か等を判定する。
そして、ワード線故障の場合には(S8の判定でYesの場合)、LSIテスタ2は、制御をS9へ進める。ただし、S8の判定は、ワード線故障のみが発生し、ビット線故障がない場合に、Yesとする。つまり、ワード線故障とビット線故障が混在する場合には、故障は、S14でさらに判定がなされ、他の処理(S16)で取り扱われる。
S8の判定でYesの場合、LSIテスタ2は、結果格納RAM12Bへ格納時にアドレス変換ありとして、パタン0とパタン1について、再度S1−S6の処理を実行するように、試験データ22を設定し、試験制御回路11による試験を起動する(S9)。そして、LSIテスタ2は、測定結果の状況を判定する(S10)。すなわち、LSIテスタ2は、試験対象RAMから読み出したデータをアドレス変換ありで結果格納RAM12Bへ格納した結果、ワード線故障のアドレスが変化したか否かを判定する。
S10の結果、ワード線故障の位置が移動しなかった場合、LSIテスタ2は、結果格納RAM12Bに内在している故障があると判定する(S11)。したがって、S7、S8で特定されたワード線故障は、試験対象RAM12Aの故障ではないと判定される。一方、S10の結果、ワード線故障の位置が移動した場合、LSIテスタ2は、試験対象RAM12Aから転送されたデータに誤りがあると判定する。したがって、LSIテスタ2は、試験対象RAM12Aに故障があると判定する。これらは、パタン0およびパタン1の両方で、判定される。次に、LSIテスタ2は、S11およびS12の結果を合わせて、試験対象RAMの測定結果とする(S13)。なお、S11とS12の結果から、結果格納RAM12Bの故障個所を特定可能である。すなわち、S10の結果、ワード線故障の位置が移動しなかった場合には、移動しなかったワード線のアドレスでの故障ワード、あるいは故障ビット部分が結果格納RAM12Bの故障位置と判定できる。
また、S8の判定で、ワード線故障がない場合、LSIテスタ2は、ビット線故障があるか否かを判定する(S14)。ここで、S14の判定では、ワード線故障がなく、ビット線故障だけが発生している場合に、S14でYesの判定となる。つまり、ワード線故障とビット線故障が混在する場合には、故障は、他の処理(S16)で取り扱われる。なお、S14の判定で、ビット線故障には、単一ビットの故障も含まれる。すなわち、LSIテスタ2は、1つのアドレスの1つビットの故障も、ビット線故障として取り扱う。
ビット線故障があった場合、LSIテスタ2は、結果格納RAM12Bへ格納時にデータ変換ありとして、パタン0とパタン1について、再度S1−S6の処理を実行するように、試験データ22を設定し、試験制御回路11による試験を起動する(S15)。
そして、LSIテスタ2は、測定結果の状況を判定する。すなわち、LSIテスタ2は、試験対象RAM12Aから読み出したデータをデータ変換ありで結果格納RAM12Bへ格納した結果、ビット線故障のビット位置が変化したか否かを判定する。判定の結果、ビット線故障のビット位置が移動しなかった場合、LSIテスタ2は、結果格納RAM12Bに内在している故障があると判定する。
一方、判定の結果、ビット線故障の位置が移動した場合、LSIテスタ2は、試験対象RAM12Aから転送されたデータに誤りがあると判定する。したがって、LSIテスタ2は、試験対象RAM12Aに故障があると判定する。
また、S14の判定で、ビット線故障でも、ワード線故障でもない場合、LSIテスタ2は、S16の処理を実行する。S16の処理では、LSIテスタ2は、S1−S6の処理、すなわち、実速度での試験対象RAM12Aからの読み出し、実速度での結果格納RAM12Bへの格納による試験を起動しない。S1−S6の代わりに、LSIテスタ2は、試験対象RAM12Aを低速FBMで試験する(S16)。低速FBMとは、例えば、図2に示したように、LSB1Bの内部レジスタを用いて、試験対象RAM12Aからデータを読み出し、FBMを作成する処理をいう。
以上述べたように、実施例2の試験制御回路11を含むLSI1Bでは、LSIテスタ2は、試験制御回路11によって実速度での試験対象RAM12Aからのデータの読み出しと、結果格納RAM12Bへの格納を行う試験を起動する。そして、LSIテスタ2は、試験結果から、ワード線エラーと、ビット線エラーの有無を判定する。そして、ワード線エラーがあった場合には、LSIテスタ2は、試験制御回路11によって試験対象RAM12Aから読み出したデータをアドレス変換して、結果格納RAM12Bへ格納する試験を起動する。そして、アドレス変換の有無で、結果格納RAM12Bでのエラー箇所のアドレスの移動があった場合には、LSIテスタ2は、試験対象RAM12Aのエラーであると判定する。
また、試験結果に、ビット線エラーがあった場合には、LSIテスタ2は、試験制御回路11によって試験対象RAM12Aから読み出したデータをデータ変換して、結果格納RAM12Bへ格納する試験を起動する。そして、データ変換の有無で、結果格納RAM12Bでのエラー箇所のビット位置の移動があった場合には、LSIテスタ2は、試験対象RAM12Aのエラーであると判定する。
このように、実施例2のLSI1Bによれば、実速度での試験対象RAM12Aの試験において、結果格納RAM12Bに専用の予備領域を設けることなく、試験対象RAM12Aと、結果格納RAM12Bとでそれぞれ発生したエラーを区別することができる。なお、結果格納RAM12BとなるRAMデバイスが少なくとも1つあれば、結果格納RAM12BとなるRAMデバイスと同一の容量、または容量が小さいRAMデバイスついて、図25の処理を繰り返し、実行することで、すべてのRAMデバイスの試験を実行できる。すなわち、図25の処理を実行するため、少なくとも1つ、アドレス変換とデータ変換とが可能なRAMデバイスを設ければよい。
また、結果格納RAM12Bとして用いられるRAMデバイス自体を試験対象とする場合には、さらに、1つ結果格納RAM12BとなるRAMデバイスを設けておけばよい。ただし、LSI1内蔵のRAMデバイスのすべてに、アドレス変換とデータ変換の回路を設けてもよい。
また、図25では、LSIテスタ2がS7−S16の処理を実行するものとして説明した。しかし、実施例2のRAM試験方法が、上記図25で説明した処理に限定される訳ではない。例えば、図25のS7−S16の処理の一部またはすべてを試験制御回路11が実行するようにしてもよい。
例えば、試験制御回路11内に、CPUと主記憶装置とを含む、コンピュータプログラムを実行可能な制御部を設ければよい。そして、図25のS7−S16の処理の一部またはすべてを試験制御回路11内の制御部で実行してもよい。その場合に、LSIテスタ2は、試験制御回路11内の制御部に、試験データ22を引き渡し、試験結果を受け取るようにすればよい。
実施例3では、比較器無しBISTによるRAM試験方法の例を示す。図26は、比較器無しBISTによるRAM試験の手順を例示する。比較器無しBISTを用いる以外の実施例3の構成および手順は、実施例2と同様である。そこで、実施例2と同一の構成要素については、実施例2と同一の符号を付してその説明を省略する。図26のように、実施例3では、BISTなしRAM10Cを含むLSI1Cが例示されている。BISTなしRAM10Cは、図15と比較して、比較器14がない点が相異する。以下、図26にしたがって、実施例3の手順を説明する。
(1)LSIテスタ2はテスタプログラム21にしたがい試験データ22をLSI1Cに書き込みを行う。また、LSIテスタ2は、LSI1Cから内部の結果レジスタ15の値を読み出し、読出し値と試験データの比較を行う。LSIテスタ2の書き込み・読み出し動作はLSI動作速度ではなく低速で行っても構わない。
(2)試験制御回路11は試験に関する制御信号、試験データを試験対象回路に供給する。試験制御回路11の動作はLSIテスタ2から書き込まれる設定値により決められる。
(3)試験対象RAM12Aは試験制御回路11からの制御信号と試験データにより試験動作を行う。試験動作はLSI実速度で行われる。実速度のクロックはPLL16から供給される。
(4)結果格納RAM12B、アドレス変換部122、ビット変換部124は試験制御回路11からの制御信号により、試験対象RAM12Aの内容を結果格納RAM12Bへ転送する。転送はLSI実動作速度で行われる。また、アドレス変換部122、ビット変換部124が変換動作を行うかどうかは試験制御回路11からの制御信号により制御される。また、試験制御回路11からの制御信号は、LSIテスタ2からの試験データ22によって設定される。
(5)結果レジスタ15は試験制御回路11からの制御信号により結果格納RAM12Bの読み出し値を格納する。LSIテスタ2は、結果レジスタ15を通じて結果格納RAM12Bからの読み出し値を取得する。結果格納RAM12Bからのデータの読み出し、結果レジスタ15への格納、結果レジスタ15を通じたLSIテスタ2による読み出し値の取得の動作は低速で行っても構わない。
(6)LSIテスタ2は、結果レジスタ15を通じて結果格納RAM12Bから読み出した試験結果と、試験データ22に基づく期待値とを比較する。その結果、LSIテスタ2は、試験パタン0と試験パタン1のそれぞれについて、ワード線故障の有無を判定し、ワード線故障がある場合に、アドレス変換の有無によって、ワード線故障のアドレスが変化するか否かを判定する。そして、LSIテスタ2は、アドレス変換の有無によって、ワード線故障のアドレスが変化した場合には、試験対象RAM12Aの故障であると判定する。
また、LSIテスタ2は、試験パタン0と試験パタン1のそれぞれについて、ビット線故障の有無を判定し、ビット線故障がある場合に、データ変換の有無によって、ビット線故障のビット位置が変化するか否かを判定する。そして、LSIテスタ2は、データ変換の有無によって、ビット線故障のビット位置が変化した場合には、試験対象RAM12Aの故障であると判定する。
以上述べたように、BISTなしRAM10Cを含むLSI1Cによっても、実施例2と同様に、実速度での試験対象RAM12Aの試験において、結果格納RAM12Bに専用の予備領域を設けることなく、試験対象RAM12Aと、結果格納RAM12Bとでそれぞれ発生したエラーを区別することができる。
<ロウとカラムの導入>
RAMの容量が大きくなった場合に、RAM内にセルをワード単位で配置すると、RAM領域の縦横サイズのバランスが悪くなる。例えば1024×72bitの容量のRAMの場合、単純に2次元にRAMセルを配置すると縦に1024個、横に72個のRAMセルを配置することになり、縦に非常に長い配置になる。
RAM領域が長く伸びることを回避するためにアドレスをロウとカラムという2つに分ける手法がとられる。例えばアドレスが1024の場合にロウ=256、カラム=4に分ける。アドレスはロウとカラムの組合せで表現されるため、256×4=1024となり、1024のアドレスが表現できる。図27に、ロウ=256、カラム=4のRAM領域を例示する。
RAMアドレスの0〜1023はロウ番号とカラム番号に分けられて、RAMセル・アレイをアクセスする。すなわち、ロウ・デコーダは、ロウ番号に対応するロウへのアクセス線を決定し、ロウを選択する。また、カラム・デコーダは、カラム番号に対応するカラムへのアクセス線を決定し、カラムを選択する。このようにして、ロウ番号とカラム番号とでアドレスが確定され、該当するアドレスのビット列がアクセスされる。
図28に、RAMアドレスとロウ番号、カラム番号の対応を例示する。このような構成をとることにより、RAMセルの配置が縦256個、横288個となり、バランスよく配置できる。以下、実施例4では、図28のロウとカラムを含むRAMに、実施例1〜3で説明した、アドレス反転によるアドレス変換と2ビット単位入れ替えによるビット変換を適用した場合を考える。
<アドレス変換とロウとの関係>
アドレス変換はワード線不良を回避するための手段であるが、ロウ・カラム構成のRAMではワード線不良はロウの不良となる。ここでアドレス変換によりどのようにロウ番号が変換されるかを考える。図28の対応表よりRAMアドレスの0〜3に対するアクセスでロウ0が有効となるため、ロウ0の不良はRAMアドレス0〜3の不良として現れる。ここでアドレス反転によるアドレス変換を行うと、RAMアドレス0〜3はRAMアドレス1023〜1020に変換される。RAMアドレス1023〜1020はロウ255に対応する。
よって、ロウ0はロウ255に変換されることとなる。同様にロウ1はロウ254、…、ロウ255はロウ0に変換され、変換前後で同じロウを指すことはなく、アドレス変換の条件を満足する。
<ビット変換>
ロウ・カラム構成のRAMでは1つのビットは4つのカラムで構成される。ここで2ビット単位入れ替えによるビット変換を行った場合、1ビット=4カラムの単位で入れ替えが発生する。この4カラムは重なることがない。よって、変換の前後で同じ位置になるカラムはないため、ビット変換の条件を満足する。
以上より、ロウ・カラム構成のRAMにおいても、アドレス反転によるアドレス変換および2ビット単位入れ替えによるビット変換は「変換前後で同じ場所に変換されない変換」という条件を満足するため故障を回避することができる。
上記実施例2では、例えば、図17に示したように、アドレス変換時に、全アドレスのビットを反転した。しかしながら、アドレス変換が、実施例2の構成に限定される訳ではない。要するに、アドレス変換の前後で、RAMデバイスのすべてのアドレス、言い換えると、結果可能RAM12Bの全ワードが移動すればよい。
結果可能RAM12Bの全ワードが移動するアドレス変換として、他の一例を図29に示す。実施例5では、アドレスの変換方法は、アドレスの各ビットのうち任意の1ビットを反転する。図29では、ビット0を反転する構成例を示している。すなわち、ビット0に、排他論理和ゲートが挿入され、反転制御信号によって、反転の有無が制御される。しかし、反転するビットは任意の1ビットでよく、ビット0に限定される訳ではない。また、このような任意の1ビットの反転によるアドレス変換により、変換後のアドレスが変換前と同じ値になることはない。実施例5の構成では、実施例2と比較して、少ないゲート数で、アドレス変換が可能となる。
<実施例1〜5の発明の効果>
試験対象RAM12Aの結果を結果格納RAM12BへPLL16のクロック信号で書き込むことにより実速度でFBMを取得できる。そのような実速度の試験において、
(1)試験結果格納RAM12Bにアドレス変換部122を設けることにより、試験結果格納RAM12Bのワード線故障を回避する。
(2)試験結果格納RAM12Bにデータ変換部124を設けることにより、試験結果格納RAMのビット線故障を回避する。
以上の2つの構成の追加により、試験結果格納RAM12Bの故障回避のために予備領域を持った専用RAMを用いることなく、信頼度の高い実速度試験が回避可能となる。
1、1A、1B、1C LSI
2 LSIテスタ
10、10C BIST付RAM
11 試験制御回路
12 RAM
12A 試験対象RAM
12B 結果格納RAM
13 レジスタ
14 比較器
15 結果レジスタ
16 PLL
21 テストプログラム
22 試験データ
121 アドレスバス
122 アドレス変換部
123 アドレスデコーダ
124 データ変換部
<RAMの故障の分類>
RAMの故障のほとんどは以下の3種類に分類される。
(1)RAMセル故障;
RAMの故障の第1の種類は、RAM内のセルが故障するケース(RAMセル故障)である。RAMセル故障は、故障箇所が1個(単セル)である場合が多い。図8に、単セル故障を例示する。図8の黒で塗りつぶしたセルが故障箇所である。図8では、1つのアドレスで指定されるワード上の1つのビットが故障している。
(2)ワード線故障;
RAMの故障の第2の種類は、RAMセルが同一アドレスのワード方向に連続して故障するケース(ワード線故障)である。ワード線故障は、RAM内のアドレスを指定する制御線の故障である。RAM内のアドレスを指定する制御線は、ワード線と呼ばれる。ワード線故障は、故障箇所が1つのワード線である場合が多い。図9に、ワード線故障を例示する。図9の黒で塗りつぶしたセルが故障箇所である。図9では、1つのアドレスで指定される1つのワードに含まれる全ビットが故障している。
(3)ビット線故障
RAMの故障の第の種類は、RAMセルが1つのビット位置で複数のワードに渡って連続して故障するケース(ビット線故障)である。ビット線故障は、RAM内のビット位置を指定する制御線の故障である。RAM内のビット位置を指定する制御線は、ビット線と呼ばれる。ビット線故障は、故障箇所が1つのビット線である場合が多い。図10に、ビット線故障を例示する。図10の黒で塗りつぶしたセルが故障箇所である。図10では、1つのビット線で指定される1つのビット位置上の全ビットが故障している。
<LSIおよびLSIテスタの構成>
図15に、比較器付BISTによるRAM試験方法の例を示す。図15は、LSI1Bにおいて、試験対象RAM12Aと、結果格納RAM12Bと、アドレス変換部122と
データ変換部124と、PLL(Phase Locked Loop)16とが明示されている点を除
いて、図5のLSI1と同様である。そこで、以下の実施例2において、実施例1と同一の構成要素については、同一の符号を付してその説明を省略する。
結果格納RAM12B、アドレス変換部122、データ変換部124は試験制御回路11からの制御信号により、試験対象RAM12Aのデータを結果格納RAM12Bへ転送する。転送はLSI1Bの通常動作時の実速度、例えば、PLL16によるクロック速度で行われる。また、アドレス変換部122、データ変換部124が変換動作を行うかどうかは試験制御回路11からの制御信号により制御される。
また、実施例2では、アドレス変換部122は、アドレスのビットパタンを反転することによりアドレス変換を実行する。ただし、アドレス変換部122の処理がアドレス反転に限定される訳ではない。同様に、データ変換部124は、各ワードのデータを2ビット単位で入れ替えることにより、データ変換を実行する。ただし、データ変換部12の処理が2ビット単位の入れ替えに限定される訳ではない。
そこで、次に、試験制御回路11は、結果格納RAM12Bのアドレス変換部122によるアドレス変換を行い、試験対象RAM12Aから読み出し結果を結果格納RAM12Bに転送する。
また、S14の判定で、ビット線故障でも、ワード線故障でもない場合、LSIテスタ2は、S16の処理を実行する。S16の処理では、LSIテスタ2は、S1−S6の処理、すなわち、実速度での試験対象RAM12Aからの読み出し、実速度での結果格納RAM12Bへの格納による試験を起動しない。S1−S6の代わりに、LSIテスタ2は、試験対象RAM12Aを低速FBMで試験する(S16)。低速FBMとは、例えば、図2に示したように、LS1Bの内部レジスタを用いて、試験対象RAM12Aからデ
ータを読み出し、FBMを作成する処理をいう。

Claims (5)

  1. 試験装置が、試験回路を有する半導体集積回路に搭載されたメモリを試験する試験方法であって、
    前記試験回路により前記メモリの試験対象領域に試験データを書き込むステップと、
    前記メモリの試験対象領域から前記書き込んだデータを前記試験回路により読み出すステップと、
    前記メモリの試験対象領域から読み出したデータを前記試験回路により前記メモリの結果格納領域に第1のデータ配置で書き込むステップと、
    前記メモリの結果格納領域に書き込まれたデータを読み出して、対照データと比較し、第1の比較結果を取得するステップと、
    前記メモリの試験対象領域から読み出したデータを、前記試験回路により前記メモリの結果格納領域内で前記第1のデータ配置とは異なる第2のデータ配置となるように書き込み先を変換しながら、前記メモリの結果格納領域に再度書き込むステップと、
    前記メモリの結果格納領域に再度書き込んだデータを読み出して、前記対照データと比較し、第2の比較結果を取得するステップと、
    前記第1の比較結果と第2の比較結果に応じて、前記メモリの不良位置を特定する特定ステップとを実行する試験方法。
  2. 前記特定ステップは、第1の比較結果での不良位置と第2の比較結果での不良位置が一致した場合には、前記メモリの結果格納領域で不良位置を特定し、第1の比較結果での不良位置と第2の比較結果での不良位置が一致しない場合には、前記メモリの試験対象領域の不良位置を特定するステップを含む、請求項1に記載の試験方法。
  3. 前記試験対象領域からのデータの読み出し及び結果格納領域へのデータの書き込みは、前記メモリの通常動作時の動作周波数で行われ、
    前記結果格納領域からのデータの読み出しは、前記結果格納領域へのデータ書き込み時の動作周波数よりも低い動作周波数で行われる
    ことを特徴とする請求項1または2に記載の試験方法。
  4. メモリと、
    前記メモリの試験を実行する試験回路と、
    前記試験回路による前記メモリの試験対象領域から読み出したデータを前記メモリの結果格納領域に書き込む時に、前記結果格納領域内での前記データの配置が第1のデータ配置または第2データ配置となるように前記データの書き込み先を変換する変換部と、を有する半導体集積回路。
  5. 前記メモリは、複数のメモリデバイスを有し、前記試験対象領域は、前記複数のメモリデバイスの1つであり、前記結果格納領域は、前記複数のメモリデバイスの他の1つである請求項4に記載の半導体集積回路。
JP2013508691A 2011-04-07 2011-04-07 試験方法および前記試験方法が適用される半導体集積回路 Pending JPWO2012137340A1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/058834 WO2012137340A1 (ja) 2011-04-07 2011-04-07 試験方法および前記試験方法が適用される半導体集積回路

Publications (1)

Publication Number Publication Date
JPWO2012137340A1 true JPWO2012137340A1 (ja) 2014-07-28

Family

ID=46968775

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013508691A Pending JPWO2012137340A1 (ja) 2011-04-07 2011-04-07 試験方法および前記試験方法が適用される半導体集積回路

Country Status (3)

Country Link
US (1) US20140040686A1 (ja)
JP (1) JPWO2012137340A1 (ja)
WO (1) WO2012137340A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015204126A (ja) 2014-04-16 2015-11-16 株式会社東芝 半導体記憶装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58205992A (ja) * 1982-05-25 1983-12-01 Fujitsu Ltd Lsi内蔵メモリの試験方法
JPH0362245A (ja) * 1989-07-31 1991-03-18 Nec Corp 半導体集積回路
JP2001256793A (ja) * 2000-03-09 2001-09-21 Toshiba Corp 半導体集積回路装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5332A (en) * 1976-06-23 1978-01-05 Fujitsu Ltd Memory redundance system
JPS63161600A (ja) * 1986-12-25 1988-07-05 Nippon Telegr & Teleph Corp <Ntt> 論理lsi用組込みテスト回路
JPH05189327A (ja) * 1992-01-17 1993-07-30 Fujitsu Ltd 集積回路の内蔵メモリ故障時の救済方法
JP3888631B2 (ja) * 2000-11-02 2007-03-07 株式会社ルネサステクノロジ 半導体メモリおよび半導体メモリの検査方法並びに製造方法
US6567325B1 (en) * 2001-04-09 2003-05-20 Lsi Logic Corporation Apparatus and method for system access to tap controlled BIST of random access memory
JP2005141797A (ja) * 2003-11-04 2005-06-02 Fujitsu Ltd 半導体装置
DE102004012279B3 (de) * 2004-03-12 2005-06-09 Infineon Technologies Ag Verfahren und Vorrichtung zum Speicherselbsttest von eingebetteten Speichern in Halbleiterchips
JP4676723B2 (ja) * 2004-07-30 2011-04-27 富士通株式会社 キャッシュメモリ、プロセッサ、キャッシュメモリの製造方法、プロセッサの製造方法
JP5125028B2 (ja) * 2006-08-18 2013-01-23 富士通セミコンダクター株式会社 集積回路
JP2011129218A (ja) * 2009-12-18 2011-06-30 Toshiba Corp 不良解析方法、不良解析装置および不良解析プログラム
US8607105B1 (en) * 2010-04-19 2013-12-10 Altera Corporation Memory test circuit and memory test techniques
US8839057B2 (en) * 2011-02-03 2014-09-16 Arm Limited Integrated circuit and method for testing memory on the integrated circuit

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58205992A (ja) * 1982-05-25 1983-12-01 Fujitsu Ltd Lsi内蔵メモリの試験方法
JPH0362245A (ja) * 1989-07-31 1991-03-18 Nec Corp 半導体集積回路
JP2001256793A (ja) * 2000-03-09 2001-09-21 Toshiba Corp 半導体集積回路装置

Also Published As

Publication number Publication date
US20140040686A1 (en) 2014-02-06
WO2012137340A1 (ja) 2012-10-11

Similar Documents

Publication Publication Date Title
TWI438776B (zh) 修補高容量/高頻寬記憶體器件的方法及裝置
US11119857B2 (en) Substitute redundant memory
KR100536984B1 (ko) 시스템 온 칩용 계층적인 내장형 자체 테스트를 제공하는 장치 및 방법과 프로그램 저장 장치
JP3893238B2 (ja) 半導体記憶装置の不良解析装置
JP5127737B2 (ja) 半導体装置
KR20010037848A (ko) 반도체 메모리 장치 및 이 장치의 병렬 비트 테스트 방법
US10249380B2 (en) Embedded memory testing with storage borrowing
US7512001B2 (en) Semiconductor memory device, test system including the same and repair method of semiconductor memory device
WO2014047225A1 (en) Substitute redundant memory
KR100760052B1 (ko) 장애 발생 어드레스 저장 방법 및 메모리 장치
KR20150029213A (ko) 다양한 테스트 패턴을 획득하는 자체 테스트 회로를 포함하는 시스템 온 칩 및 그것의 자체 테스트 방법
KR20190069782A (ko) 베이스 다이 스페어 셀을 이용한 적층형 메모리 장치 및 그 수리 방법
US9037948B2 (en) Error correction for memory systems
US10043588B2 (en) Memory device
JP2017010273A (ja) 半導体故障検出装置
US7013414B2 (en) Test method and test system for semiconductor device
WO2012137340A1 (ja) 試験方法および前記試験方法が適用される半導体集積回路
KR102026303B1 (ko) 스페어 피봇 고장 특성을 이용한 메모리 분석 방법 및 장치
JP2013131273A (ja) 半導体集積回路及び半導体集積回路の試験方法
CN115691632A (zh) 测试控制系统和方法
US20230178172A1 (en) Reference bits test and repair using memory built-in self-test
JP2008082976A (ja) Fbm生成装置、fbm生成方法
CN110827878B (zh) 存储器装置
JP4749812B2 (ja) 試験装置
JP2013200911A (ja) 半導体記憶装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141014

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150224