(57)【要約】【課題】１単位分の複数個のメモリセル中に発生する１ビットのマージン性の不良セルを冗長回路を用いずにＥＣＣ回路を用いて救済する。【解決手段】パリティーデータを用いて読み出しデータの誤り検出・訂正を行うＥＣＣ回路１５及び冗長回路を備えたメモリにおいて、ＥＣＣ回路１５で訂正できないビット数のマージン性の不良セルが生じている１ロウのメモリセルは冗長回路を用いて置き換えを行い、ＥＣＣ回路１５で訂正可能なビット数のマージン性の不良セルについてはＥＣＣ回路１５を用いて誤り訂正を行うように構成した。【選択図】    図１
2005346822.tif 000002
【特許請求の範囲】
【請求項１】
パリティーデータを用いて読み出しデータの誤り検出・訂正を行う誤り検出・訂正回路及び冗長回路を備えた半導体記憶装置において、
前記誤り検出・訂正回路で訂正できないビット数のマージン性の不良セルが生じている１単位分のメモリセルを前記冗長回路内の冗長用メモリセルに置き換えるように構成したことを特徴とする半導体記憶装置。
【請求項２】
メモリセルアレイ及びスペアセルアレイと、
フューズ素子を有し、前記メモリセルアレイ内に不良セルが発生した際に、この不良セルを含む１単位分の複数のメモリセルを前記スペアセルアレイ内のメモリセルと置き換えるためのアドレスが前記フューズ素子にプログラムされることで不良アドレスを記憶する第１の不良アドレス記憶回路と、
電気的にデータの書換えが可能にされ、不良アドレスを記憶する第２の不良アドレス記憶回路と、
前記第１または第２の不良アドレス記憶回路に記憶されているアドレスと、データの書き込み／読み出しの際に供給される書き込み／読み出し用アドレスとを比較し、両アドレスの一致／不一致を判定する判定回路と、
前記書き込み／読み出し用アドレスと前記判定回路の出力とが供給され、前記判定回路で前記両アドレスの不一致が検出された際には、前記書き込み／読み出し用アドレスに応じて前記メモリセルアレイ内の１単位分の複数のメモリセルを選択する第１の選択回路と、
前記書き込み／読み出し用アドレスと前記判定回路の出力とが供給され、前記判定回路で前記両アドレスの一致が検出された際には、前記書き込み／読み出し用アドレスに応じて前記スペアセルアレイ内の１単位分の複数のメモリセルを選択する第２の選択回路と、
前記第１または第２の選択回路によって選択された前記メモリセルアレイまたは前記スペアセルアレイ内の１単位分の複数のメモリセルから読み出される複数ビットのデータに含まれるエラーをパリティーデータを用いて検出し、訂正して出力する誤り検出・訂正回路と、
前記第１または第２の選択回路によって選択された前記メモリセルアレイまたは前記スペアセルアレイ内の１単位分の複数のメモリセルから読み出される複数ビットのデータにエラーが含まれる場合に、そのエラーのビット数が前記誤り検出・訂正回路によって訂正可能であるビット数である否かを判定する救済判定回路とを具備し、
前記メモリセルアレイに対してデータの書き込み／読み出しを行う第１のテストを実施して、前記メモリセルアレイ内のメモリセルに不良セルが生じている場合にその不良セルを含む１単位分の複数のメモリセルに対応した第１不良アドレスを取得し、この取得された第１不良アドレスを前記第２の不良アドレス記憶回路に一時的に記憶させ、続いて前記スペアセルアレイ及びメモリセルアレイに対してデータの書き込み／読み出しを行う第２のテストを実施し、この第２のテストにより前記誤り検出・訂正回路によって訂正できないビット数のエラーが生じていると前記救済判定回路で判定された際に、そのエラーが生じている１単位分の複数のメモリセルに対応した第２不良アドレスを取得し、前記第１の不良アドレス記憶回路内の前記プログラム素子に対し、前記前記第１不良アドレスと共に前記第２不良アドレスがプログラムされることを特徴する半導体記憶装置。
【請求項３】
前記第１の選択回路は、前記メモリセルアレイ内のワード線を選択するロウデコーダであり、
前記第２の選択回路は、前記スペアセルアレイ内のワード線を選択するスペアロウデコーダである請求項２記載の半導体記憶装置。
【請求項４】
前記第１の選択回路は、前記メモリセルアレイ内のビット線を選択するカラムデコーダであり、
前記第２の選択回路は、前記スペアセルアレイ内のビット線を選択するスペアカラムデコーダである請求項２記載の半導体記憶装置。
【請求項５】
前記メモリセルアレイまたは前記スペアセルアレイ内の１単位分の複数のメモリセルから読み出される複数ビットのデータにエラーが含まれる場合で、エラーのビット数が前記誤り検出・訂正回路によって訂正可能であるビット数であることが前記救済判定回路で判定された際には、前記メモリセルアレイまたは前記スペアセルアレイ内の１単位分の複数のメモリセルから読み出されるデータを一義的に設定して出力し、エラーのビット数が前記誤り検出・訂正回路によって訂正できないビット数であることが前記救済判定回路で判定された際には、前記メモリセルアレイまたは前記スペアセルアレイ内の１単位分の複数のメモリセルから読み出されるデータをそのまま出力する入出力回路をさらに具備したことを特徴とする請求項２記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、誤り検出・訂正回路及び冗長回路を備えた半導体記憶装置に係り、特に製品として完成する前のウエハー状態もしくはチップ状態の前工程において、冗長回路を用いて不良救済が行われる半導体記憶装置に関する。
【背景技術】
【０００２】
半導体記憶装置（以下、メモリと称する）、特に大容量のメモリでは、全てのメモリセルが無欠陥であることを要求することは不可能になっており、不良救済のための冗長回路を搭載することが常識となっている。このような冗長回路を搭載することで、安定した製造歩留まりが実現される。
【０００３】
また、メモリを有するシステムのソフトエラー対策等にＥＣＣ（Error Checking Correction）回路（誤り検出・訂正回路）を内蔵させることで、システムの信頼性向上を図るようにしている。ＥＣＣ回路はマージン性の不良セル救済に用いられる場合もある。マージン性の不良セルとは、例えばある特定の電圧条件の下で不良となるメモリセルや、特定の動作タイミングの下で不良となるメモリセルをいう。
【０００４】
図６は、誤り検出・訂正回路及び冗長回路を備えた従来のメモリにおいて、冗長回路部分の構成を抽出して示すブロック図である。メモリセルアレイ５１に隣接して、スペアカラム５２及びスペアロウ５３が設けられている。スペアカラム５２内には、メモリセルアレイ５１内のメモリセルに不良セルが発生した際に、この不良セルを含む複数のメモリセルがカラム単位で置き換えられる複数カラム分のスペアセルが設けられている。同様に、スペアロウ５３内には、メモリセルアレイ５１内のメモリセルに不良セルが発生した際に、この不良セルを含む複数のメモリセルがロウ単位で置き換えられる複数ロウ分のスペアセルが設けられている。ここで、不良セルとは、致命不良セルやマージン性の不良セルをいう。致命不良セルとは、製造工程上の欠陥によって全く動作しないセル、例えば配線の断線やショート等が生じているメモリセルを指し、先に述べたマージン性の不良セルとは異なる。
【０００５】
ロウデコーダ５４は、ロウアドレスに応じて、通常はメモリセルアレイ５１内のロウを選択し、スペアロウ５３に置き換えが行われている場合にはスペアロウ５３を含むロウを選択する。カラムデコーダ５５は、通常はメモリセルアレイ５１内のカラムを選択し、スペアカラム５２に置き換えが行われている場合にはスペアカラム５２を含むカラムを選択する。
【０００６】
図７は、図６中の冗長回路による置換え救済を行うテスト時の動作の一例を示すフローチャートである。このテストは、メモリにテスタを接続して行われる。まず、ダイソートテスト（ステップ１）が行われる。このテストは、メモリセルアレイ５１内の全てのメモリセルに対してテスト用のデータの書き込み／読み出しが行われ、書き込みデータと読み出しデータとが異なる不良セルが検出される。テスト用のデータは、一般に全て“０”レベルもしくは全て“１”レベルのデータ、あるいは“０”レベルと“１”レベルとが交互に繰り返されるチェッカーパターンを有するデータ等が挙げられる。そして、不良セルに対応したアドレスがテスタ内のメモリに格納される。
【０００７】
次に、テスタ内のメモリに格納されたアドレスに基づいて冗長回路内のフューズが選択的に溶断され（フューズブロー）、不良セルを含むメモリセルアレイ５１内のロウラインまたはカラムラインが、スペアロウ５３またはスペアカラム５２に置き換えられる。
【０００８】
次に、ダイソートテスト（ステップ２）が行われる。このテストでは、実際に、不良セルを含むメモリセルアレイ５１内のロウラインまたはカラムラインが、スペアロウ５３またはスペアカラム５２に置き換えられるように動作するか否かが検証される。
【０００９】
図８は、誤り検出・訂正回路及び冗長回路を備えた従来のメモリにおいて、誤り検出・訂正回路部分の構成を抽出して示すブロック図である。
【００１０】
メモリセルアレイ５１からは、例えば、８ビットのデータ５６と４ビットの付加ビット（パリティービット）５７がパラレルに読み出されるものとする。この場合、４ビットの付加ビットを用いることで、１ビットの誤りデータが訂正できる。メモリセルアレイ５１から読み出された８ビットのデータと４ビットの付加ビットはＥＣＣ回路（誤り検出・訂正回路）５８に供給される。ＥＣＣ回路５８では、４ビットの付加ビットが参照されることで、８ビットのデータにエラーが生じているか否かが検出される。図中の×印で示す位置にエラーが生じていれば、そのビットのデータがＥＸ−ＯＲ（Exclusive-OR：排他的論理和）ゲート５９によってレベルが反転されることで正しいデータに訂正され、入出力回路（Ｉ／Ｏ）６０に供給される。エラーが生じていない他のビットのデータについては、レベルが反転されることなく、そのままのレベル状態で入出力回路６０に供給される。なお、図８中、○印を付した位置のメモリセルは、図６の冗長回路を用いて置き換えが行われたメモリセルを示している。
【００１１】
ところで、図６に示す回路では、冗長回路による置換え救済のみが行われる。すなわち、複数ビットの不良セル（図中×印で示している）を含むメモリセルアレイ５１内のロウまたはカラムのライン不良が、それぞれ１本のスペアロウ５３またはスペアカラム５２に置き換えられることでライン救済が行われる。残った単ビット不良についても、例えばスペアロウ５３に置き換えられることで救済される。
【００１２】
しかしながら、致命不良ではないマージン性の単ビット不良については、図８に示す回路中のＥＣＣ回路５８を用いて誤り訂正ができる。つまり、図６に示す冗長回路による置換え救済のみではスペアロウを余計に使用してしまい、冗長回路の訂正能力を越えて不良セルが発生した時点で救済不可能となり、そのメモリチップは不良チップとなってしまう。
【００１３】
現在の前工程における冗長回路を用いた置換え救済は、不良セル情報をフェイルメモリに取り込んだアルゴリズム処理が一般的であり、ＥＣＣ回路を用いた置換え救済を考慮したアルゴリズム処理を別途専用で立ち上げる必要がある。また、メモリセルの致命不良等は本来の冗長回路を用いた置換え救済を行い、ＥＣＣ回路ではマージン性の不良セルだけを救済することが考えられる。しかし、この場合に問題となるのは、アルゴリズム処理だけでは実現が非常に困難であるということである。
【００１４】
このように、誤り検出・訂正回路及び冗長回路を備えた従来のメモリでは、冗長回路を致命不良救済に効率良く割り当てることができず、製造歩留まりが低下するというという問題がある。
【００１５】
なお、特許文献１には、ＥＣＣ回路及び冗長回路を備えた半導体集積回路装置が開示されている。
【特許文献１】特開２００２−１２４０９８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
この発明は上記のような事情を考慮してなされたものであり、その目的は、冗長回路を致命不良救済に効率良く割り当てることができ、製造歩留まりが向上する半導体記憶装置を提供することである。
【課題を解決するための手段】
【００１７】
この発明の半導体記憶装置は、パリティーデータを用いて読み出しデータの誤り検出・訂正を行う誤り検出・訂正回路及び冗長回路を備えた半導体記憶装置において、前記誤り検出・訂正回路で訂正できないビット数のマージン性の不良セルが生じている１単位分のメモリセルを前記冗長回路内の冗長用メモリセルに置き換えるように構成されている。
【００１８】
この発明の半導体記憶装置は、メモリセルアレイ及びスペアセルアレイと、フューズ素子を有し、前記メモリセルアレイ内に不良セルが発生した際に、この不良セルを含む１単位分の複数のメモリセルを前記スペアセルアレイ内のメモリセルと置き換えるためのアドレスが前記フューズ素子にプログラムされることで不良アドレスを記憶する第１の不良アドレス記憶回路と、電気的にデータの書換えが可能にされ、不良アドレスを記憶する第２の不良アドレス記憶回路と、前記第１または第２の不良アドレス記憶回路に記憶されているアドレスと、データの書き込み／読み出しの際に供給される書き込み／読み出し用アドレスとを比較し、両アドレスの一致／不一致を判定する判定回路と、前記書き込み／読み出し用アドレスと前記判定回路の出力とが供給され、前記判定回路で前記両アドレスの不一致が検出された際には、前記書き込み／読み出し用アドレスに応じて前記メモリセルアレイ内の１単位分の複数のメモリセルを選択する第１の選択回路と、前記書き込み／読み出し用アドレスと前記判定回路の出力とが供給され、前記判定回路で前記両アドレスの一致が検出された際には、前記書き込み／読み出し用アドレスに応じて前記スペアセルアレイ内の１単位分の複数のメモリセルを選択する第２の選択回路と、前記第１または第２の選択回路によって選択された前記メモリセルアレイまたは前記スペアセルアレイ内の１単位分の複数のメモリセルから読み出される複数ビットのデータに含まれるエラーをパリティーデータを用いて検出し、訂正して出力する誤り検出・訂正回路と、前記第１または第２の選択回路によって選択された前記メモリセルアレイまたは前記スペアセルアレイ内の１単位分の複数のメモリセルから読み出される複数ビットのデータにエラーが含まれる場合に、そのエラーのビット数が前記誤り検出・訂正回路によって訂正可能であるビット数である否かを判定する救済判定回路とを具備し、前記メモリセルアレイに対してデータの書き込み／読み出しを行う第１のテストを実施して、前記メモリセルアレイ内のメモリセルに不良セルが生じている場合にその不良セルを含む１単位分の複数のメモリセルに対応した第１不良アドレスを取得し、この取得された第１不良アドレスを前記第２の不良アドレス記憶回路に一時的に記憶させ、続いて前記スペアセルアレイ及びメモリセルアレイに対してデータの書き込み／読み出しを行う第２のテストを実施し、この第２のテストにより前記誤り検出・訂正回路によって訂正できないビット数のエラーが生じていると前記救済判定回路で判定された際に、そのエラーが生じている１単位分の複数のメモリセルに対応した第２不良アドレスを取得し、前記第１の不良アドレス記憶回路内の前記プログラム素子に対し、前記前記第１不良アドレスと共に前記第２不良アドレスがプログラムされる。
【発明の効果】
【００１９】
この発明の半導体記憶装置によれば、冗長回路を不良救済に効率良く割り当てることができ、製造歩留まりが向上する。
【発明を実施するための最良の形態】
【００２０】
以下、図面を参照してこの発明の半導体記憶装置を実施の形態により説明する。図１はこの発明の一実施形態に係る半導体記憶装置（メモリ）の全体の構成を示すブロック図である。なお、この実施形態のメモリは、冗長回路を有し、冗長回路としてスペアロウのみが使用される場合を示しているが、冗長回路としてスペアカラムを使用してもよく、あるいはスペアロウとスペアカラムの両方を使用するようにしてもよい。
【００２１】
メモリセルアレイ１１内には複数のワード線、ビット線及び複数のメモリセルが設けられている。メモリセルは、各ワード線と各ビット線との交点にそれぞれ配置され、対応するワード線とビット線とに接続されている。メモリセルアレイ１１に隣接して、複数のスペアロウが設けられたスペアセルアレイ１２が配置されている。スペアロウはそれぞれ、１本のワード線に接続された複数個のスペアセルで構成されている。メモリセルアレイ１１内に設けられたメモリセル及びスペアセルアレイ１２内に設けられたスペアセルは共に同じ構成を有しており、例えばＤＲＡＭセル等が使用される。
【００２２】
メモリセルアレイ１１に隣接して、このメモリセルアレイ１１内のワード線を選択するロウデコーダ１３が設けられている。また、スペアセルアレイ１２に隣接して、このスペアセルアレイ１２内のワード線を選択するスペアロウデコーダ１４が設けられている。上記ロウデコーダ１３及びスペアロウデコーダ１４には、ワード線を選択するためのアドレス、すなわちロウアドレスが供給される。ロウデコーダ１３及びスペアロウデコーダ１４によるワード線の選択時に、選択された１本のワード線に接続されている複数個のメモリセルまたはスペアセル（１単位分のセル）から同時にデータが読み出される。
【００２３】
メモリセルアレイ１１及びスペアセルアレイ１２にはＥＣＣ回路１５が接続されている。ＥＣＣ回路１５は、システムのソフトエラーやマージン性の単ビット不良の検出・誤り訂正を行うものであり、通常動作時のデータ書き込み時は、書き込みデータに基づいて複数ビットのパリティーデータを生成し、通常動作時のデータ読み出し時は、メモリセルアレイ１１またはスペアセルアレイ１２から読み出されるパリティーデータを含む読み出しデータに基づいて誤りデータの検出・訂正を行う。ＥＣＣ回路１５において、パリティーデータを生成するためのエラー訂正符号として、例えば、ハミング符号（Hamming-Code）等が使用される。
【００２４】
通常動作時のデータ書き込み時に、ＥＣＣ回路１５で生成されたパリティーデータは、書き込みデータと共に、ロウデコーダ１３によって選択されたメモリセルアレイ１１またはスペアロウデコーダ１４によって選択されたスペアセルアレイ１２内の１ロウに書き込まれる。なお、ＥＣＣ回路１５は、テスト時には、パリティーデータの生成及び検出・誤り訂正は行わず、単にデータを通過させる。
【００２５】
さらに、メモリセルアレイ１１及びスペアセルアレイ１２にはＥＣＣ救済判定回路１６が接続されている。ＥＣＣ救済判定回路１６はテスト時に動作し、メモリセルアレイ１１またはスペアセルアレイ１２から読み出されるデータにエラーが含まれる場合に、そのエラーのビット数がＥＣＣ回路１５によって訂正可能であるビット数、本例では１ビットであるか否かを判定し、その判定結果を示す２ビットの判定信号ＥＣＣＰ０、ＥＣＣＰ１を出力する。
【００２６】
入出力回路１７は、通常動作時のデータ書き込み時には書き込み用データをＥＣＣ回路１５に供給し、通常動作時のデータ読み出し時には、ＥＣＣ回路１５によって誤り訂正がなされた後の読み出しデータをメモリ外部に出力する。さらに、入出力回路１７は、テスト時のデータ読み出し時には、ＥＣＣ救済判定回路１６で生成される判定信号ＥＣＣＰ０、ＥＣＣＰ１に基づいて、ＥＣＣ回路１５を経て供給される読み出しデータを出力制御する。
【００２７】
また、このメモリには第１、第２の不良アドレス記憶回路１８、１９が設けられる。第１の不良アドレス記憶回路１８は、複数のフューズ素子を有し、メモリセルアレイ１１内に不良セルが発生した際に、この不良セルを含む１ロウ（１行）分の複数のメモリセルをスペアセルアレイ１２内のスペアセルと置き換えるためのロウアドレス（置換用アドレス）がフューズ素子にプログラムされることで不良アドレスを記憶する。前述したように、不良セルとは、致命不良セルやマージン性の不良セルをいう。第２の不良アドレス記憶回路１９は、電気的にデータの書換えが可能な回路、例えば複数のデータラッチ回路からなり、メモリセルアレイ１１内に不良セルが発生した際に、この不良セルを含む１ロウ（１行）分の複数のメモリセルをスペアセルアレイ１２内のスペアセルと置き換えるためのロウアドレス（置換用アドレス）を不良アドレスとして一時的に記憶する。
【００２８】
第１または第２の不良アドレス記憶回路１８、１９に記憶されているアドレスは、データの書き込み／読み出しの際にメモリに供給される外部アドレスと共に判定回路２０に供給される。判定回路２０は、第１または第２の不良アドレス記憶回路１８、１９に記憶されているアドレスと外部アドレスとを比較し、両アドレスの一致／不一致を判定する。そして、上記判定回路２０で両アドレスの不一致が検出された際には、ロウデコーダ１３が動作するように制御され、外部アドレスに応じ、ロウデコーダ１３によりメモリセルアレイ１１内の１つのワード線が選択される。他方、上記判定回路２０で両アドレスの一致が検出された際には、スペアロウデコーダ１４が動作するように制御され、外部アドレスに応じ、スペアロウデコーダ１４によりスペアセルアレイ１２内の１つのワード線が選択される。
【００２９】
上記構成でなるメモリは、製造直後のウエハー状態またはパッケージに収納されない前のチップ状態で、外部テスタを用いてテストが行われることにより、冗長回路を用いた置換え救済が行われる。図２は、この置換え救済を行うテスト時の動作の一例を示すフローチャートである。このテストは、メモリに外部テスタを接続して行われる。
【００３０】
まず、ステップＳ１ではダイソートテストが行われる。このステップＳ１は３つのステップＳ１１〜Ｓ１３からなる。最初のステップＳ１１ではダイソートテスト（ステップ１ａ）が行われる。このステップ１ａは、図７中の従来のダイソートテスト（ステップ１）と同様であり、メモリセルアレイ１１内の全てのメモリセルに対してテスト用のデータの書き込み／読み出しが行われ、書き込みデータと読み出しデータとが異なる不良セルが検出され、この不良セルを含むロウアドレスが取得される。
【００３１】
この場合のデータ書き込みは、ロウアドレスがロウデコーダ１３に順次供給され、かつ書き込みデータとして例えば全て“０”レベルのデータが入出力回路１７に供給されることで行われる。これにより、メモリセルアレイ１１内の全てのメモリセルに“０”レベルのデータが書き込まれる。データ読み出しは、ロウアドレスがロウデコーダ１３に順次供給されることにより行われる。これにより、メモリセルアレイ１１内のメモリセルがロウ毎に順次選択され、ＥＣＣ回路１５及び入出力回路１７を経て読み出しデータがメモリ外部に出力され、テスタに入力される。
【００３２】
テスタでは、書き込み用データと、メモリセルアレイ１１から読み出されたデータとが比較され、不良セルを含むロウのロウアドレスが取得され、テスタ内のメモリに格納される。
【００３３】
次のステップＳ１２では、テスタ内のメモリに格納されたロウアドレスが置換え用アドレスとして第２の不良アドレス記憶回路１９に供給され、この置換え用アドレスが第２の不良アドレス記憶回路１９で一時的に記憶されることで暫定的な置き換え設定が行われる。
【００３４】
次のステップＳ１３では、実際に、不良セルを含むメモリセルアレイ１１内のロウが、スペアセルアレイ１２内のスペアロウに置き換えられるように動作するか否かが検証される。また、このステップＳ１３では、メモリセルアレイ１１及びスペアセルアレイ１２から読み出されるデータにエラーが含まれる場合に、そのエラーの読み出しデータ単位当りのビット数がＥＣＣ回路１５によって訂正可能であるビット数、すなわち本例では１ビットであるか否かがＥＣＣ救済判定回路１６によって判定され、その判定結果を示す２ビットの判定信号ＥＣＣＰ０、ＥＣＣＰ１が出力される。この２ビットの判定信号ＥＣＣＰ０、ＥＣＣＰ１は、書き込みデータと読み出しデータとが一致しているかもしくは書き込みデータと読み出しデータとが１ビットのみ異なる場合と、書き込みデータと読み出しデータとが２ビット異なる場合と、書き込みデータと読み出しデータとが２ビットを越えて異なる場合との３種類の判定状態を示す。
【００３５】
入出力回路１７では、２ビットの判定信号ＥＣＣＰ０、ＥＣＣＰ１に応じて、ＥＣＣ回路１５からの読み出しデータがそのまま出力されるか、もしくはマージン性の不良ビットが読み出しデータ単位内に１ビットのみ発生している場合にはそのエラービットのデータのレベルが反転されてデータが一義的に設定された後に出力されるか、もしくは特定のデータが出力される。これらのデータはテスタに入力される。
【００３６】
メモリセルアレイ１１及びスペアセルアレイ１２から読み出されたデータにエラーが含まれており、そのエラーの読み出しデータ単位当りのビット数がＥＣＣ回路１５によって訂正できないビット数のエラー、つまり２ビット以上のエラーが生じていることがＥＣＣ救済判定回路１６によって判定された場合、テスタでは、そのエラービットを含むロウのロウアドレスが取得される。そして、先のステップＳ１１で取得されたロウアドレスと共にステップＳ１３で取得されたロウアドレスがテスタ内のメモリに格納される。
【００３７】
次のステップＳ２では、テスタ内のメモリに格納されたロウアドレスが置換え用アドレスとして第１の不良アドレス記憶回路１８に供給され、テスタ内のメモリに格納されたロウアドレスに基づいてフューズ素子が選択的に溶断され（フューズブロー）、致命不良セル及び又は１ロウ当りＥＣＣ救済ができないマージン性の不良セルを含むメモリセルアレイ内のロウがスペアセルアレイ１２内のスペアロウに置き換えられる。
【００３８】
次のステップＳ３ではダイソートテスト（ステップ２）が行われる。このテストでは、致命不良セル及び又は１ロウ当りＥＣＣ救済ができないマージン性の不良セルを含むメモリセルアレイ１１内のロウラインが、スペアセルアレイ１２内のスペアロウに置き換えられるように動作するか否かが検証される。
【００３９】
このような構成のメモリによれば、１ロウ当りＥＣＣ救済できるマージン性の不良セルが発生しているメモリセルアレイ１１内のロウは、冗長回路を用いてスペアセルアレイ１２内のスペアロウと置き換えが行われることがなく、ＥＣＣ回路１５を用いた誤り検出・訂正機能により、エラー訂正が行われる。このため、従来のように１ロウ当りＥＣＣ救済ができるマージン性の不良セルが発生しているメモリセルアレイ内のロウを、冗長回路を用いてスペアセルアレイ内のスペアロウと置き換えを行う場合と比較して、冗長回路を不良救済に効率良く割り当てることができ、製造歩留まりの低下を防止することができる。
【００４０】
次に、図１中の主要な回路部分の具体的な構成例について説明する。図３は、ＥＣＣ救済判定回路１６の具体的な回路構成を示している。なお、図１の説明では、ＥＣＣ救済判定回路１６は、書き込みデータと読み出しデータとが一致しているかもしくは書き込みデータと読み出しデータとが１ビットのみ異なる場合と、書き込みデータと読み出しデータとが２ビット異なる場合と、書き込みデータと読み出しデータとが２ビットを越えて異なる場合との３種類の判定を行う場合を説明した。しかし、ＥＣＣ救済判定回路１６は、書き込みデータと読み出しデータとが一致しているかもしくは書き込みデータと読み出しデータとが１ビットのみ異なる場合と、書き込みデータと読み出しデータとが２ビット以上異なる場合との２種類の判定を行うような構成であってもよい。図３に示すＥＣＣ救済判定回路１６は、この２種類の判定を行う場合の具体的な回路構成を例示している。
【００４１】
本例のＥＣＣ救済判定回路１６は、メモリセルアレイ１１及びスペアセルアレイ１２から、８ビットのデータと４ビットの付加ビット（パリティービット）がパラレルに読み出される場合のものである。図中、８ビットのデータはＤＱ０，ｂＤＱ０〜ＤＱ７，ｂＤＱ７からなる相補データで示され、４ビットの付加ビットはＰ０，ｂＰ０〜Ｐ３，ｂＰ３からなる相補データで示されている。
【００４２】
電源電圧Ｖｃｃの供給ノードと一方及び他方の判定信号ＥＣＣＰＳ０、ＥＣＣＰＳ１の出力ノードとの間には負荷抵抗Ｒがそれぞれ接続されている。また、判定信号ＥＣＣＰＳ１の出力ノードと接地電圧Ｖｓｓの供給ノードとの間には、上記８ビットのデータＤＱ０，ＤＱ１，…，ＤＱ７及び４ビットの付加ビットＰ０〜Ｐ３からなる１２ビットのデータのうち互いに異なるいずれか１ビットのデータを除く残り１１ビットのデータが各ゲートに入力され、互いに直列に接続された１１個のＮチャネルＭＯＳトランジスタＱ１からなる直列回路が１２個並列に挿入されている。同様に、判定信号ＥＣＣＰＳ０の出力ノードと接地電圧Ｖｓｓの供給ノードとの間には、上記８ビットのデータｂＤＱ０，ｂＤＱ１，…，ｂＤＱ７及び４ビットの付加ビットｂＰ０〜ｂＰ３からなる１２ビットのデータのうち互いに異なるいずれか１ビットのデータを除く残り１１ビットのデータが各ゲートに入力され、互いに直列に接続された１１個のＮチャネルＭＯＳトランジスタＱ０からなる直列回路が１２個並列に挿入されている。
【００４３】
図１のメモリでは、例えば、テスト時に全てのメモリセルに対して“０”レベルのテスト用データが書き込まれ、その後、読み出される。このテスト時に、図３に示すような構成のＥＣＣ救済判定回路１６において、テストデータの読み出しを行う前は、２ビットの判定信号ＥＣＣＰＳ０、ＥＣＣＰＳ１の出力ノードはそれぞれ負荷抵抗Ｒによってプルアップされているので、判定信号ＥＣＣＰＳ０、ＥＣＣＰＳ１は共に“１”レベルである。
【００４４】
テストデータが読み出された後に、１２ビットの読み出しデータが全て“０”レベルの場合と１ビットのみエラーが生じてレベルが反転して“１”レベルとなる場合には、２ビットの判定信号ＥＣＣＰＳ０、ＥＣＣＰＳ１のうち一方の判定信号ＥＣＣＰＳ０のレベルが“０”レベルに反転する。例えば、読み出しデータＰ３がゲートに入力されるＭＯＳトランジスタが省略されている図３中で最も左端に位置する直列回路３１では、読み出しデータＰ３として正常に“０”レベルが読み出された場合と、読み出しデータＰ３にエラーが生じて“１”レベルに反転したデータが読み出された場合の両方共、他の正常な読み出しデータ“０”により直列回路内の１１個のＭＯＳトランジスタは全てオフしている。また、他の読み出しデータがゲートに入力されるＭＯＳトランジスタが省略されているＥＣＣＰＳ１に繋がる他の直列回路でも、正常な読み出しデータ“０”によりＰ３以外のＭＯＳトランジスタは全てオフしており、判定信号ＥＣＣＰＳ１は“１”レベルのままとなる。このとき、上記直列回路３１に隣接し、読み出しデータｂＰ３がゲートに入力されるＭＯＳトランジスタが省略されている直列回路３２では、読み出しデータｂＰ３として正常に“１”レベルが読み出された場合と、読み出しデータｂＰ３にエラーが生じて“０”レベルに反転したデータが読み出された場合の両方共、他の正常な読み出しデータ“１”により直列回路内の１１個のＭＯＳトランジスタは全てオンとなる。よって、ＥＣＣＰＳ０に繋がる他の直列回路に関係なく、判定信号ＥＣＣＰＳ０は“０”レベルに反転する。
【００４５】
一方、１２ビットの読み出しデータのうち２ビット以上にエラーが生じ、そのレベルが反転している場合には、２ビットの判定信号ＥＣＣＰＳ０、ＥＣＣＰＳ１は共に“１”レベルのままとなる。例えば、上記直列回路３１において、読み出しデータＰ２及びＰ３の２ビットにエラーが生じ、“１”レベルが読み出された場合、直列回路３１内の１１個のＭＯＳトランジスタのうち、読み出しデータＰ２がゲートに入力されるＭＯＳトランジスタＱ１はオンするが、残り１０個のＭＯＳトランジスタＱ１は全てオフする。同様にＥＣＣＰＳ１に繋がる他の直列回路でも、Ｐ２とＰ３以外の正常な読み出しデータ“０”によりＭＯＳトランジスタはオフしているので、判定信号ＥＣＣＰＳ１は“１”レベルのままとなる。このとき、読み出しデータｂＰ３がゲートに入力されるＭＯＳトランジスタが省略されている直列回路３２では、読み出しデータｂＰ２にエラーが生じ“０”レベルとなるので、この読み出しデータｂＰ２がゲートに入力されるＭＯＳトランジスタＱ０がオフする。同様にＥＣＣＰＳ０に繋がる他の直列回路でも、ｂＰ２またはｂＰ３が入力されるＭＯＳトランジスタがオフするので、判定信号ＥＣＣＰＳ０も“１”レベルのままとなる。
【００４６】
このように、図３に示すＥＣＣ救済判定回路１６では、書き込みデータと読み出しデータとが一致しているかもしくは１ビットのみ異なる場合と、書き込みデータと読み出しデータとが２ビット以上異なる場合との２種類を判定することができる。
【００４７】
図４は、図１中のＥＣＣ救済判定回路１６から出力される２ビットの判定信号ＥＣＣＰＳ０、ＥＣＣＰＳ１に基づいてデータの出力制御を行う、図１中の入出力回路１７の動作をまとめた真理値表を示す図である。なお、説明を簡略するために、メモリセルアレイ１１に対して４ビット単位でテスト用データ（ＤＡＴＡ）が読み書きされるものとする。また、テスト用データは４ビットが全て“０”もしくは全て“１”である。
【００４８】
ＥＣＣ救済単位である４ビットの読み出しデータが全て“０”である場合と、４ビットのうちいずれか１ビットにエラーが生じて“１”に反転している場合、判定信号ＥＣＣＰＳ０、ＥＣＣＰＳ１は“０”、“１”となる。この場合、入出力回路１７は出力データとして４ビットのデータを全て“０”に固定して（Fix0）出力する。他方、４ビットの読み出しデータが全て“１”である場合と、４ビットのうちいずれか１ビットにエラーが生じて“０”に反転している場合、判定信号ＥＣＣＰＳ０、ＥＣＣＰＳ１は“１”、“０”となる。この場合、入出力回路１７は出力データとして４ビットのデータを全て“１”に固定して（Fix1）出力する。これ以外の場合、つまり判定信号ＥＣＣＰＳ０、ＥＣＣＰＳ１が共に“１”の場合は、２ビット以上のエラーが生じておりＥＣＣ救済できないため、入出力回路１７は出力データとして読み出しデータ（ＤＱ）をそのまま出力する。すなわち、冗長回路を使用して救済する必要がなく、ＥＣＣ救済ができる１ビットのマージン性の不良セルは入出力回路１７によってマスクされる。
【００４９】
メモリに接続されたテスタは、入出力回路１７によってマスクされることによって４ビットの読み出しデータが全て“０”もしくは全て“１”となる以外の時に、そのデータが読み出されたデータにマージン性の不良セルが２ビット以上含まれていると判断し、そのロウに対応したロウアドレスを不良ロウアドレスとして取得する。この後、このマージン性の不良ロウアドレスと予め取得されている不良セルに対応した不良ロウアドレスとに基づいて第１の不良アドレス記憶回路１８内のフューズ素子がプログラムされることで、第１の不良アドレス記憶回路１８に不良アドレスが不揮発的に記憶される。
【００５０】
図５は、図１中のメモリセルアレイ１１から８ビットのデータＤＱ０〜ＤＱ７と４ビットの付加ビットＰ０〜Ｐ３がパラレルに読み出される場合における、図１中の入出力回路１７の動作をまとめた真理値表を示す図である。テスト用データは、全て“０”の場合（“０”書き込み）と全て“１”の場合（“１”書き込み）の２種類がある。
【００５１】
“０”書き込みの場合に、ＤＱ０〜ＤＱ７及びＰ０〜Ｐ３として全て“０”が読み出されたとき（All“０”Read）、入出力回路１７からはＤＱ０〜ＤＱ７及びＰ０〜Ｐ３として全て“０”が出力される。“０”書き込みの場合に、ＤＱ０〜ＤＱ７及びＰ０〜Ｐ３として１ビットにのみエラーが発生したときも（“０”Read救済可）、入出力回路１７からはＤＱ０〜ＤＱ７及びＰ０〜Ｐ３として一義的に全て“０”に設定されたデータが出力される。また、“０”書き込みの場合に、ＤＱ０〜ＤＱ７及びＰ０〜Ｐ３に２ビット以上のエラーが発生した場合には（救済不可異種２ビット以上）、入出力回路１７からはＤＱ０〜ＤＱ７及びＰ０〜Ｐ３がそのまま出力される。
【００５２】
“１”書き込みの場合に、ＤＱ０〜ＤＱ７及びＰ０〜Ｐ３として全て“１”が読み出されたとき（All“１”Read）、入出力回路１７からはＤＱ０〜ＤＱ７及びＰ０〜Ｐ３として全て“１”が出力される。“１”書き込みの場合に、ＤＱ０〜ＤＱ７及びＰ０〜Ｐ３として１ビットにのみエラーが発生したときも（“１”Read救済可）、入出力回路１７からはＤＱ０〜ＤＱ７及びＰ０〜Ｐ３として一義的に全て“１”に設定されたデータが出力される。また、“１”書き込みの場合に、ＤＱ０〜ＤＱ７及びＰ０〜Ｐ３に２ビット以上のエラーが発生した場合には（救済不可異種２ビット以上）、入出力回路１７からはＤＱ０〜ＤＱ７及びＰ０〜Ｐ３がそのまま出力される。すなわち、冗長回路を使用して救済する必要がなく、ＥＣＣ救済ができる１ビットのマージン性の不良セルは入出力回路１７によってマスクされる。
【００５３】
メモリに接続されたテスタは、入出力回路１７によってマスクされることによって１２ビットの読み出しデータが全て“０”もしくは全て“１”となる以外の時に、そのデータが読み出されたロウにＥＣＣ救済ができないマージン性の不良セルが含まれていると判断し、そのロウに対応したロウアドレスを不良ロウアドレスとして取得する。この後、この不良ロウアドレスと予め取得されている不良セルに対応した不良ロウアドレスとに基づいて第１の不良アドレス記憶回路１８内のフューズ素子がプログラムされることで、第１の不良アドレス記憶回路１８に不良アドレスが不揮発的に記憶される。
【００５４】
このように、上記実施形態のメモリによれば、ＥＣＣ救済ができるマージン性の不良セルについては、前工程において第１の不良アドレス記憶回路１８内のフューズ素子にそのアドレスはプログラムされず、冗長回路を用いた救済対象とはならない。このため、これを除いた致命不良セル及び又はＥＣＣ救済ができないマージン性の不良セルに対して冗長回路を用いた救済を行うことができるので、冗長回路を不良救済に効率良く割り当てることができ、製造歩留まりが向上する。
【００５５】
なお、この発明は上記した実施の形態に限定されるものではなく種々の変形が可能であることはいうまでもない。例えば上記実施の形態では、メモリセルアレイから８ビットのデータと４ビットの付加ビットとがパラレルに読み出され、マージン性の不良セルが１ビット発生した際にこれをＥＣＣ救済する場合について説明したが、これらのビット数は適宜変更してもよい。また、ＥＣＣ救済判定回路の構成は図３に示したものに限定されず、種々の論理回路を組み合わせて実現することもできる。
【００５６】
また、図１のメモリでは、冗長回路としてスペアロウを使用し、メモリセルアレイのワード線はロウデコーダによって選択され、スペアセルアレイのワード線はスペアロウデコーダによって選択される場合を説明したが、冗長回路としてスペアカラムを使用する場合には、メモリセルアレイのビット線はカラムデコーダによって選択され、スペアセルアレイのビット線はスペアカラムデコーダによって選択されることで、メモリセルアレイ内及びスペアセルアレイ内の１単位分の複数のメモリセルが選択される。
【図面の簡単な説明】
【００５７】
【図１】この発明の一実施形態に係るメモリの全体の構成を示すブロック図。
【図２】図１のメモリにおいて置換え救済を行うテスト時の動作の一例を示すフローチャート。
【図３】図１中のＥＣＣ救済判定回路の具体的な構成を示す回路図。
【図４】図１中の入出力回路の動作をまとめた真理値表を示す図。
【図５】図１中の入出力回路の動作をまとめた図４とは異なる真理値表を示す図。
【図６】誤り検出・訂正回路及び冗長回路を備えた従来のメモリの冗長回路部分の構成を抽出して示すブロック図。
【図７】図６中の冗長回路による置換え救済を行うテスト時の動作の一例を示すフローチャート。
【図８】誤り検出・訂正回路及び冗長回路を備えた従来のメモリの誤り検出・訂正回路部分の構成を抽出して示すブロック図。
【符号の説明】
【００５８】
１１…メモリセルアレイ、１２…スペアセルアレイ、１３…ロウデコーダ、１４…スペアロウデコーダ、１５…ＥＣＣ回路、１６…ＥＣＣ救済判定回路、１７…入出力回路、１８…第１の不良アドレス記憶回路、１９…第２の不良アドレス記憶回路、２０…判定回路。
【図１】
2005346822.tif 000003
【図２】
2005346822.tif 000004
【図３】
2005346822.tif 000005
【図４】
2005346822.tif 000006
【図５】
2005346822.tif 000007
【図６】
2005346822.tif 000008
【図７】
2005346822.tif 000009
【図８】
2005346822.tif 000010