(57)【要約】【課題】【解決手段】ここに述べる好適な実施形態は、不良ビットポインタを用いた余剰性を有するメモリ構造と関連している。１つの好適な実施形態では、データが第１の複数のメモリセルに書き込まれ、該メモリセルの１つにデータが書き込まれるときにエラーが検出される。該検出されたエラーに応じて、ポインタが第２の複数のメモリセルに書き込まれ、該ポインタは該第１の複数のメモリセルの中のどれにエラーが含まれているかを特定する。読み出し操作の間に、該データが該第１の複数のメモリセルから読み出され、該ポインタが該第２の複数のメモリセルから読み出される。該ポインタから、該エラーを含む該メモリセルが特定され、該エラーは訂正される。他の好適な実施形態も示され、該好適な実施形態のそれぞれは単独で又はお互いに組み合わせて使用することができる。
2006521658.tif 000002
【特許請求の範囲】
【請求項１】
エラー訂正の方法であって：
（ａ）第１の複数のメモリセルにデータを書き込む工程と；
（ｂ）該第１の複数のメモリセルの中の１つへのデータ書き込みにおけるエラーを検出する工程と；
（ｃ）第２の複数のメモリセルにポインタを書き込む工程であって、該ポインタは該第１の複数のメモリセルの中のどのメモリセルが該エラーを含んでいるかを特定する工程と；
（ｄ）該第１の複数のメモリセルからデータを読み出す工程と；
（ｅ）該第２の複数のメモリセルから該ポインタを読み出す工程と；
（ｆ）該ポインタから、該第１のメモリセルのどのメモリセルが該エラーを含んでいるかを特定する工程と；
（ｇ）該エラーを訂正する工程と、
から成ることを特徴とする方法。
【請求項２】
該第１の複数のメモリセルに書き込まれたデータを読み出し、該読み出されたデータを該第１の複数のメモリセルに書き込まれるべきデータと比較することによって（ｂ）の工程でエラーを検出することを特徴とする請求項１に記載の方法。
【請求項３】
プログラム中検出（ｓｅｎｓｉｎｇ−ｗｈｉｌｅ−ｐｒｏｇｒａｍｍｉｎｇ）の手法を使って（ｂ）の工程でエラーを検出することを特徴とする請求項１に記載の方法。
【請求項４】
（ｄ）の工程で読み出された該データはバッファに保存され、（ｇ）の工程は該バッファの中のエラーの訂正を含むことを特徴とする請求項１に記載の方法。
【請求項５】
該第１の複数のメモリセルはメモリデバイスの第１のメモリアレイの中にあり、該第２の複数のメモリセルは該メモリデバイスの第２のメモリアレイの中にあることを特徴とする請求項１に記載の方法。
【請求項６】
該第１の複数のメモリセルはメモリデバイスの第１のメモリアレイの中にあり、該第２の複数のメモリセルは該メモリデバイスとは別のデバイスの第２のメモリアレイの中にあることを特徴とする請求項１に記載の方法。
【請求項７】
該第１の複数のメモリセルはメモリデバイスのメモリアレイの中にあり、該第２の複数のメモリセルも同一のメモリアレイの中にあることを特徴とする請求項１に記載の方法。
【請求項８】
該メモリアレイは複数のサブアレイから成り、該第１及び第２の複数のメモリセルは同一のサブアレイの一部であることを特徴とする請求項７に記載の方法。
【請求項９】
該メモリアレイは複数のサブアレイから成り、該第１及び第２の複数のメモリセルは異なるサブアレイの一部であることを特徴とする請求項７に記載の方法。
【請求項１０】
該第１の複数のメモリセルは第１の集積回路の一部であり、（ａ）〜（ｃ）の工程は第２の集積回路によって実行されることを特徴とする請求項１に記載の方法。
【請求項１１】
該第１の複数のメモリセルは第１の集積回路の一部であり、（ｄ）〜（ｇ）の工程は第２の集積回路によって実行されることを特徴とする請求項１に記載の方法。
【請求項１２】
該第１の複数のメモリセルは第１の集積回路の一部であり、（ａ）〜（ｃ）の工程は第２の集積回路によって実行され、（ｄ）〜（ｇ）の工程は第３の集積回路によって実行されることを特徴とする請求項１に記載の方法。
【請求項１３】
該第１、第２及び第３の集積回路の内の正確に２つは第１のデバイスの一部であり、該第１、第２及び第３の集積回路の内の残りは第２のデバイスの一部であることを特徴とする請求項１２に記載の方法。
【請求項１４】
該ポインタが、更に、該メモリセルの中のデータの正しい値を特定することを特徴とする請求項１に記載の方法。
【請求項１５】
該ポインタが、更に、使用中（ｉｎ−ｕｓｅ）フラッグを含んでいることを特徴とする請求項１に記載の方法。
【請求項１６】
（ｃ）の工程で書き込まれたポインタ及び付加的ポインタはそれぞれの使用中フラッグを含んで該第２の複数のメモリセルにシーケンシャルに書き込まれ、該（ｃ）の工程で書き込まれたポインタ及び該付加的ポインタは使用中フラッグを含まないエントリーが見つかるまで該第２の複数のメモリセルからシーケンシャルに読み出されることを特徴とする請求項１５に記載の方法。
【請求項１７】
該第１の複数のメモリセルはライトワンス（ｗｒｉｔｅ−ｏｎｃｅ）メモリセルから成ることを特徴とする請求項１に記載の方法。
【請求項１８】
該第１の複数のメモリセルはアンチヒューズメモリセルから成ることを特徴とする請求項１に記載の方法。
【請求項１９】
該第１の複数のメモリセルが、１つの集積回路として複数の層が折り重なるように垂直に積み重ねられたメモリセルから成るメモリアレイの一部であることを特徴とする請求項１に記載の方法。
【請求項２０】
該第１の複数のメモリセルが二次元メモリセルの一部であることを特徴とする請求項１に記載の方法。
【請求項２１】
更に、該第１の複数のメモリセルに書き込むデータをバッファに保存する工程と、該検出されたエラーを反映するために該バッファに保存されたデータを修正する工程と、該修正されたデータのＥＣＣビットを第３の複数のメモリセルに書き込む工程とを含むことを特徴とする請求項１に記載の方法。
【請求項２２】
（ｂ）の工程が２つのエラーを検出することを含み、該（ｃ）の工程におけるポインタは該２つのエラーの中の１つだけを特定することを特徴とする請求項２１に記載の方法。
【請求項２３】
該第１の複数のメモリセルは複数のビット線を含むメモリアレイの一部であり、該方法は更に：
該メモリアレイのテスト中にメモリアレイのビット線にあるエラーを検出する工程と；
複数のポインタを第３の複数のメモリセルに一部書き込む工程であって、該一部書き込まれた複数のポインタは該ビット線のエラーの影響を受けたメモリアレイの中のメモリセルを特定する工程と；
該ビット線のエラーの影響を受けた該メモリセルに保存するよう意図されていたデータを書き込むことによって該複数のポインタの書き込みを完了する工程と、
を含むことを特徴とする請求項１に記載の方法。
【請求項２４】
更に、該第１の複数のメモリセルに書き込むデータをバッファに保存する工程と、該検出されたエラーを反映するために該バッファに保存されたデータを修正する工程と、該修正されたデータのＥＣＣビットを第３の複数のメモリセルに書き込む工程とを含むことを特徴とする請求項２３に記載の方法。
【請求項２５】
該第１の複数のメモリセルは複数の行から成るメモリアレイの一部であり、該方法が更に：
該メモリアレイのテスト中に、該メモリアレイの行のエラーを検出する工程と；
該行エラーを有する該行を置き換えるために余剰行を割り当てる工程と、
を含むことを特徴とする請求項１に記載の方法。
【請求項２６】
該行エラーが漏洩電流検出器によって検出されることを特徴とする請求項２５に記載の方法。
【請求項２７】
更に、該第１の複数のメモリセルに書き込むデータをバッファに保存する工程と、該検出されたエラーを反映するために該バッファに保存されたデータを修正する工程と、該修正されたデータのＥＣＣビットを第３の複数のメモリセルに書き込む工程とを含むことを特徴とする請求項２５に記載の方法。
【請求項２８】
該メモリアレイが、更に、複数のビット線を有し、該方法は、更に：
メモリアレイのテスト中に、該メモリアレイのビット線のエラーを検出する工程と；
複数のポインタを第３の複数のメモリセルに一部書き込む工程であって、該一部書き込まれた複数のポインタは該ビット線のエラーの影響を受けたメモリアレイの中のメモリセルを特定する工程と；
該ビット線のエラーの影響を受けた該メモリセルに保存するよう意図されていたデータを書き込むことによって該複数のポインタの書き込みを完了する工程と、
を含むことを特徴とする請求項２５に記載の方法。
【請求項２９】
更に、該第１の複数のメモリセルに書き込むデータをバッファに保存する工程と、該検出されたエラーを反映するために該バッファに保存されたデータを修正する工程と、該修正されたデータのＥＣＣビットを第３の複数のメモリセルに書き込む工程とを含むことを特徴とする請求項２８に記載の方法。
【請求項３０】
該メモリアレイは、１つの集積回路として複数の層が折り重なるように垂直に積み重ねられたメモリセルから成ることを特徴とする請求項２８に記載の方法。
【請求項３１】
該第１の複数のメモリセルが複数の行から成るメモリアレイの一部であり、該方法は、更に、行当たりの書き込みデータが所定のエラー数を超過したか否かを判断し、もし所定のエラー数より少なければ工程（ｂ）〜（ｇ）を実行し；さもなければ行の差し替えを行うことを特徴とする請求項１に記載の方法。
【請求項３２】
該第１及び第２の複数のメモリセルがランダムアクセスメモリから成ることを特徴とする請求項１に記載の方法。
【請求項３３】
メモリデバイスにおいて：
メモリアレイと；
複数のメモリセルと；
回路であって：
該メモリアレイのメモリセルへの書き込みデータに有るエラーを検出する機能と；
該複数のメモリセルにポインタを書き込む機能であって、該ポインタが該メモリアレイの中のどのモリセルにエラーがあるかを特定するものである機能と；
該メモリアレイからデータを読み出す機能と；
該複数のメモリセルから該ポインタを読み出す機能と；
該ポインタから、該メモリアレイの中のどのメモリセルがエラーを含んでいるかを特定する機能と；
該エラーを訂正する機能と
を有する回路と、
からなることを特徴とするメモリデバイス。
【請求項３４】
更に、該メモリアレイに書き込まれる前と、該メモリアレイから読み出された後で該データを保存するよう機能するバッファを有することを特徴とする請求項３３に記載のメモリデバイス。
【請求項３５】
該メモリアレイがライトワンスメモリセルから成ることを特徴とする請求項３３に記載のメモリデバイス。
【請求項３６】
該メモリアレイがアンチヒューズメモリセルから成ることを特徴とする請求項３３に記載のメモリデバイス。
【請求項３７】
該メモリアレイが、１つの集積回路として複数の層が折り重なるように垂直に積み重ねられたメモリセルから成ることを特徴とする請求項３３に記載のメモリデバイス。
【請求項３８】
更に、バッファと、該メモリアレイと該バッファの間にＥＣＣ回路と、を有することを特徴とする請求項３３に記載のメモリデバイス。
【請求項３９】
更に、入出力パッドと、バッファと、該入出力パッドと該バッファの間にＥＣＣ回路と、を有することを特徴とする請求項３３に記載のメモリデバイス。
【請求項４０】
更に、該メモリアレイと通信し合う余剰行（ｒｏｗ  ｒｅｄｕｎｄａｎｃｙ）回路を有することを特徴とする請求項３３に記載のメモリデバイス。
【請求項４１】
該余剰行回路が漏洩電流検出器を有することを特徴とする請求項４０に記載の方法。
【請求項４２】
更に、該メモリアレイと通信し合う余剰列（ｃｏｌｕｍｎ  ｒｅｄｕｎｄａｎｃｙ）回路を有することを特徴とする請求項３３に記載のメモリデバイス。
【請求項４３】
該複数のメモリセルは第２のメモリアレイの一部であることを特徴とする請求項３３に記載のメモリデバイス。
【請求項４４】
該複数のメモリセルはメモリアレイの一部であることを特徴とする請求項３３に記載のメモリデバイス。
【請求項４５】
該メモリアレイが複数のサブアレイから成り、該ポインタと該データは該同一のサブアレイに書き込まれることを特徴とする請求項４４に記載のメモリデバイス。
【請求項４６】
該メモリアレイが複数のサブアレイから成り、該ポインタと該データは異なるサブアレイに書き込まれることを特徴とする請求項４４に記載のメモリデバイス。
【請求項４７】
メモリデバイスにおいて：
複数のサブアレイを有するメモリアレイであって、少なくとも１つのサブアレイが該メモリアレイの中のどのメモリセルが不良であるかを特定し、更に、それらの不良メモリセルに対するそれぞれの訂正ビットを特定する複数のポインタを有しているメモリアレイと；
アドレスを該複数のポインタに保存された識別情報と比較する機能を有するコンテント・アドレッサブル・メモリアレイと；
該コンテント・アドレッサブル・メモリアレイが該アドレスと該識別情報との間に存在する対応性を判定したならば、該アドレスのビットを該ポインタが指示する正しいビットと差し替える機能を有する回路と、
から成ることを特徴とするメモリデバイス。
【請求項４８】
該メモリアレイがライトワンスメモリセルから成ることを特徴とする請求項４７に記載のメモリデバイス。
【請求項４９】
該メモリアレイがアンチヒューズメモリセルから成ることを特徴とする請求項４７に記載のメモリデバイス。
【請求項５０】
該メモリアレイが、１つの集積回路として複数の層が折り重なるように垂直に積み重ねられたメモリセルから成ることを特徴とする請求項４７に記載のメモリデバイス。
【請求項５１】
更に、該メモリアレイと通信し合うＥＣＣ回路を有することを特徴とする請求項４７に記載のメモリデバイス。
【請求項５２】
更に、該メモリアレイと通信し合う余剰行回路を有することを特徴とする請求項４７に記載のメモリデバイス。
【請求項５３】
更に、該メモリアレイと通信し合う余剰列回路を有することを特徴とする請求項４７に記載のメモリデバイス。
【請求項５４】
メモリセルの複数の主要列及びメモリセルの複数の余剰列から成るメモリアレイと；
メモリアレイの主要列にあるエラーを検出するように機能する漏洩電流検出器と；
該漏洩電流検出器がメモリセルの主要列にあるエラーを検出するのに応じてメモリセルの主要列をメモリセルの余剰列と差し替えるよう機能する回路と、
から成ることを特徴とするメモリデバイス。
【請求項５５】
更に、メモリアレイの列方向の列に、漏洩電流検出器によってテストされているメモリセルの主要列から成っている行方向の列と等しい電圧でバイアスを印可するように機能する回路を有することを特徴とする請求項５４に記載のメモリデバイス。
【請求項５６】
更に、未選択列と等しいバイアスで漏洩電流検出器によってテストされているメモリセルの主要列から成っている行方向の列にバイアスを印可するように機能する回路を有することを特徴とする請求項５４に記載のメモリデバイス。
【請求項５７】
更に、該メモリセルの余剰列が該メモリセルの主要列の代わりに使用されることを表示するように、該メモリデバイスにフラッグを書き込む回路を有することを特徴とする請求項５４に記載のメモリデバイス。
【請求項５８】
更に：
該メモリアレイのメモリセルへの書き込みデータに有るエラーを検出する機能と；
該複数のメモリセルにポインタを書き込む機能であって、該ポインタが該メモリアレイの中のどのモリセルにエラーがあるかを特定するものである機能と；
該メモリアレイからデータを読み出す機能と；
該複数のメモリセルから該ポインタを読み出す機能と；
該ポインタから、該メモリアレイの中のどのメモリセルがエラーを含んでいるかを特定する機能と；
該エラーを訂正する機能と、
を有する回路から構成されていることを特徴とする請求項５４に記載のメモリデバイス。
【請求項５９】
該メモリアレイがライトワンスメモリセルから成ることを特徴とする請求項５４に記載のメモリデバイス。
【請求項６０】
該メモリアレイがアンチヒューズメモリセルから成ることを特徴とする請求項５４に記載のメモリデバイス。
【請求項６１】
該メモリアレイが、１つの集積回路として複数の層が折り重なるように垂直に積み重ねられたメモリセルから成ることを特徴とする請求項５４に記載のメモリデバイス。
【請求項６２】
更に、該メモリアレイと通信し合うＥＣＣ回路を有することを特徴とする請求項５４に記載のメモリデバイス。
【請求項６３】
該メモリアレイがライトメニー（ｗｒｉｔｅ−ｍａｎｙ）不揮発性メモリセルから成ることを特徴とする請求項１に記載の方法。
【請求項６４】
該メモリアレイがライトメニー不揮発性メモリセルから成ることを特徴とする請求項３３に記載のメモリデバイス。
【請求項６５】
該メモリアレイがライトメニー不揮発性メモリセルから成ることを特徴とする請求項４７に記載のメモリセル。
【請求項６６】
該メモリアレイがライトメニー不揮発性メモリセルから成ることを特徴とする請求項５４に記載のメモリデバイス。
【発明の詳細な説明】
【背景技術】
【０００１】
メモリチップの容量が増加する反面でメモリセルを形成するフィーチャーの寸法は減少しており、高い収率でメモリチップを生産するためには製造上の欠陥がますます障害となる。このことは、製造において完全には試験することができないアンチヒューズメモリを含むような、ＰＲＯＭメモリチップについて特に当てはまる。欠陥は通常セルの不良行、セルの不良列か個別の不良セルとして存在する。メモリ回路の多くは、チップの初期検査で欠陥セルが検出されたときにメモリセルの行または列を差し替える専用のアドレス復号回路を有する余剰回路を含んでいる。例えば余剰回路が、不良な行または列のアドレスを表示するように工場でプログラムされたデコーダ回路の中に、例えばポリシリコンのヒューズ要素など不揮発性メモリを有するようにすることができる。例えば、“A 16Mb Mask ROM with Programmable Redundancy,”Naruke et. al., ISSCC89
THAM 10.1, Feb.16,1989,を参照すると、別個の予備アレイの中に体系化された予備の行と列、及び、そのアレイにリダイレクトするヒューズ素子のことを述べている。不良な行列の位置またはアドレスを保存するのに用いられるヒューズは、ヒューズが利用できる面積が極めて限られているメモリの中で相対的に大きな面積を占める。
【０００２】
余剰行は不良なワード線を効率良く修復することができ、余剰列は不良なビット線を効率よく修復することができるものの、どちらもランダムな不良セルを効率よく修復することができない。例えばページ指向のメモリチップにおいては、５１２バイトの情報の全ての情報が１ページに入っている。行が差し替えられたとき、アドレス指定を単純化するために当該ページの全ビットが差し替えられる。従って、余剰行によって修復された１個のランダムな不良セルは４キロの余剰セルを使用する。同様に、余剰列は１個の不良セルを修復するために多数の余剰セルを使用する。その上、１つの不良セルを修復するのに余剰列を用いることは、不良列によって規定された部分又はメモリ空間に既に書き込まれたページが余剰列に移動されなければならないので、ページ指向メモリにおいては非実用的にならないとも限らない。
【０００３】
エラー訂正コード（ＥＣＣ）がメモリの収率及び信頼性の向上のための代替方法として利用し得る。例えば、“Circuit Technologies for 16Mb DRMs,”Mano et.al.,ISSCC87 WAM 1.6,Feb.25,1987が参考になる。ハミングコードは、一般的なエラー訂正コードであるが、６４ビットのデータグループ毎に８ビットの情報を付加するもので、付加情報を、結果として得られた７２ビット長のワードのエラーを訂正することに利用することができる。付加された８ビットの情報は、例えば排他的ＯＲゲートのツリーなど、ロジック回路で生成することができる。７２ビット長のワードがメモリから読み込まれると、ロジック回路は７２ビット長ワードを復号して６４ビットデータを生成し、又、不良な列又はランダムな不良ビットに起因する１ビットエラーを訂正することができる。ハミングコードは１ビットエラーを訂正することができるものの、メモリの収率と信頼性の向上は、６４ビットのグループ毎に余分の８ビットを保存すること、すなわち１２％のオーバーヘッドとなる付加的セルに相当する代償によってもたらされる。更に、１ビット訂正は、不良な列とランダムな不良ビットの両方があるときには、７２ビット長ワードにおける不良な列とランダムな不良ビットの組み合わせが訂正不可能な２ビットエラーに至るため、良い収率を提供するには十分ではないかもしれない。
【発明の開示】
【課題を解決するための手段】
【０００４】
本発明は請求項で定義されており、このセクションの記載は当該請求項を制限すると解釈されてはならない。
【０００５】
前置きとして、以下に示される好適な実施形態は不良ビットポインタを用いた余剰メモリ構造を提供するものであることを述べておく。１つの好適な実施形態では、データは第１の複数のメモリセルに書き込まれ、エラーはそれらのメモリセルの１つに対する書き込みデータから検出される。検出されたエラーに応じて、ポインタが第２の複数のメモリセルに書き込まれ、そのポインタが第１の複数のメモリセルの中のどのメモリセルがエラーを持っているかを特定する。読み出し工程において、データは第１の複数のメモリセルから読み出され、ポインタは第２の複数のメモリセルから読み出される。ポインタにより、エラーを持っているメモリセルが特定され、エラーが訂正される。他の好適な実施形態も用意されており、好適な実施形態のそれぞれは単独で又はお互いに組み合わせて使用することができる。
【０００６】
これより、添付図面を参照しながら、好適な実施形態について説明する。
【図面の簡単な説明】
【０００７】
【図１】不良ビットポインタを用いた好適な実施形態におけるメモリチップ構成のブロック図である。
【図２】好適な実施形態における不良ビットポインタの説明図である。
【図３】ＥＣＣを不良ビットポインタと組み合わせて用いた、好適な実施形態におけるメモリチップ構成のブロックダイヤグラムである。
【図４】パッシブマトリックスメモリアレイ用のオンチップの電流検知器と自己修復機構を有する好適な実施形態におけるメモリチップ構成のブロック図である。
【図５】図４に示すメモリの、行線と行線間の短絡を検出するためのバイアスを説明する図である。
【図６】図４に示すメモリの、行線と列線間の短絡を検出するためのバイアスを説明する図である。
【図７】不良行検出、行の自己修復、及び、不良ビットポインタを用いた、好適な実施形態におけるメモリチップ構成のブロック図である。
【図８】不良ビットポインタ、及び、コンテント・アドレッサブル・メモリ（ＣＡＭ）アレイとともに実装されたロジックを用いた、好適な実施形態におけるメモリチップ構成のブロック図である。
【図９】不良ビットポインタのリード／ライト回路がメモリアレイから切り離された素子に置かれたものである、好適な実施形態におけるメモリチップ構成のブロック図である。
【図１０】不揮発性ランダム・アクセス・メモリを不良ビットポインタとともに用いた、好適な実施形態におけるメモリチップ構成のブロック図である。
【発明を実施するための最良の形態】
【０００８】
図面を参照すると、図１は好適な実施形態におけるメモリチップ構成のブロック図である。図１に示されるように、メモリは、関連する行及び列回路１１０，１２０を有するメモリアレイ１００と、関連する行及び列回路１４０，１５０を有するポインタアレイ１３０と、ページバッファ（またはレジスタ）１６０と、ポインタバッファ１７０と、リードアフタライト比較ロジック１８０、及び、制御回路１９０とから構成されており、制御回路は図１に示されている全てのブロックに対してアドレスと制御情報を提供する。好ましくは、メモリアレイ１００とポインタアレイ１３０の行同士の間に、単純な一対一の対応がある。このチップ構成はページ指向メモリの場合に特に有用であるが、注目すべきは、この実施形態及び他の実施形態とも非ページ指向メモリにも利用可能であることである。
【０００９】
この実施形態において、メモリアレイ１００は、本願と同一の譲受人に譲渡され、参照することによりここに組み込まれているいるものとする米国特許第６，０３４，８８２号に記載の通り、３次元メモリアレイを形成するように１つの集積回路として複数の層が折り重なるように垂直に積み重ねられた、複数のフィールドプログラマブルで不揮発性、ライトワンスのアンチヒューズメモリセルから構成されている。注目すべきは、他の形式のメモリアレイも使用可能であることである。例えば、３次元メモリアレイの代わりに２次元メモリアレイが使用可能であり、ライトワンスメモリセルの代わりにライトメニーメモリセルが使用可能である。これらの好適な実施形態は、仮にライトメニーであったとしても、特に不揮発性メモリアレイに有用であるが、なぜならばライトワンスであれライトメニーであれ、不揮発性メモリは書き込まれるよりももっと頻繁に読み出される傾向があるからである。ポインタエントリーは一旦書き込まれると、関連するデータが読み出されるたびに使用される。この実施形態におけるメモリセルは半導体材料から形成されているが、他の材料、例えば相変化材料や非晶質固体もＭＲＡＭ及び有機受動素子アレイと併用されるものと同様、利用可能である。更に、どの形式のライトワンス又はライトメニーのメモリセルがこれらの好適な実施形態と併用可能であるものの、ここでは、ライトワンス又はライトメニーのメモリセルが、それぞれ本願と同一の譲受人に譲渡され、参照することにより本明細書に含まれる以下に示す特許出願に記載されているように構成されことが望ましい：ライトワンス―米国特許出願番号０９／１９２，８８３；０９／８１４，７２７；０９／９２８，５３６；１０／１８５，５０８；及び１０／３２６，４７０号；ライトメニー―米国特許出願番号０９／９２７，６４８；１０／１８０，０４６；１０／３２５，９５１；及び１０／３３５，０８９号。
【００１０】
１つの実施形態において、メモリはホスト装置（例えば、デジタルカメラ、デジタルオーディオプレーヤ、パーソナルデジタルアシスタント、その他）と、メモリアレイ１００との間でデータ読み出し／データ書き込みを行うはめあい接続を介して、取り外し可能に接続することが可能なモジュール式メモリデバイス（例えばメモリーカードあるいはスティックなど）に不可欠な要素である。もう一つの実施形態では、ポインタアレイ１３０は関連した回路１４０，１５０，１７０と一緒にホスト装置の第２の集積回路に備えられる。
【００１１】
他のページ指向メモリと同様に、この実施形態におけるチップに対する書き込み又は読み出し操作は、データのページをメモリアレイ１００とページバッファ１６０との間で転送すること、ひいては、違う時間に、データのページをページバッファ１６０とチップの入出力パッド（図示せず）との間で転送することを含む。メモリアレイ１００とページバッファ１６０との間のデータ転送は書き込みサイクル及び確認読み出しサイクル（及び、後に述べる通り、不良ビットポインタの書き込み工程も）を含めて、制御回路１９０によって制御される多数のステップと関連する可能性がある。ページバッファ１６０からチップ入出力パッドへの転送は、比較的に多数の、当技術分野で既知の仕様に従う逐次転送と関連する可能性がある。他のページ指向メモリとは異なり、本実施形態のメモリチップ構成はユーザ環境において（言い換えれば、メモリアレイ１００をフィールドでプログラムする場合に）オンザフライでデータを訂正する作業を容易にする。通常、複数のメモリセルの１つに書き込みデータのエラーがあると、当該複数のメモリセルの中でどのメモリセルがエラーを有しているかを特定するためにポインタが保存される。後にデータが当該複数のメモリセルから読み出されたとき、ポインタも同様に読み出される。エラーを有しているメモリセルがポインタから特定され、エラーが訂正される。
【００１２】
より具体的には、書き込み操作の間に、ホスト装置からチップ入出力パッドを介して１ページのデータがページバッファ１６０に送られる。コントロール回路１９０は、データページをページバッファ１６０からメモリアレイ１００にコピーするためのメモリアレイ１００の行と多様な列を通じた順序を選択するために、行及び列回路１１０，１２０に信号を提供する。次に、リードアフタライト比較ロジック１８０がメモリアレイ１００に保存されたばかりのデータを読み出し、それをページバッファ１６０に保存されているデータ（言い換えれば、所望のデータ）と比較する。もし、メモリアレイ１００に保存されたデータとページバッファ１６０に保存されたデータとの間に不一致が有れば、データ書き込み中にエラーが生じている。同様に、後の工程においてビット読み出しが不確かになると判断された場合も、エラーを検出することができる。例えば、リードアフタライト比較ロジック１８０は、例えばメモリセルからの電流を検出するのに用いられる参照電流を調節するなど、読み取りマージン条件を含むことができる。十分大きな読み取りマージンによって、後の工程において読み取りが不確かとなるいずれのビットも差し替えることが可能で、その結果、ＥＣＣの必要性が低減もしくは排除される。（後に述べるように、ＥＣＣは不良ビットポインタと組み合わせて利用することができる。）エラーを検出するためにリードアフタライト比較ロジック１８０を利用する代わりに、本願と同一の譲受人に譲渡され、参照することにより本明細書に含まれる米国特許出願番号０９／８９６，８１５に記載されたプログラム中エラー検出技法（ｓｅｎｓｉｎｇ−ｗｈｉｌｅ−ｐｒｏｇｒａｍｍｉｎｇ  ｔｅｃｈｎｉｑｕｅ）を用いて、個々のビットのエラーをページのプログラミングの間に検出することができる。
【００１３】
リードアフタライト比較ロジック１８０が、エラーが発生したと判断すると、ポインタバッファ１７０に正しいデータビットを書き込んでエラーシグナルをコントロール回路１９０に送り、制御回路はポインタバッファ１７０の中の不良ビットのアドレスを書き込む。ポインタバッファ１７０に保存された「不良ビットポインタ」はそれからポインタアレイ１３０に書き込まれる。（下記のように、ポインタアレイ１３０を用いる代わりに、不良ビットポインタをメモリ装置の一組の予備メモリセルに（「側波帯に」）、又はメモリ装置とは分離した装置に保存してもよい。）不良ビットポインタの書き込みは、リードアフタライト工程又は何かほかの検査で確認することができる。
【００１４】
読み出し工程の間に、制御回路１９０は１ページ分のデータをメモリアレイ１００からページバッファ１６０に転送し、しかるべきポインタをポインタアレイ１３０からポインタバッファ１７０に転送する。好適な実施形態において、メモリアレイ１００の中の全ての不良ビットに対する不良ビットポインタは、ポインタロケーションを飛ばすことなくポインタアレイ１３０に書き込まれる。従って、正当なポインタを順次にポインタアレイ１３０から見つけることができる。更に、下記のように、それぞれの不良ビットポインタが正当なビットポインタフラッグ（例えば、０１０）を含み、正当なビットポインタフラッグ（及び、それに続く入力）を含まない入力は無視されることが好ましい。こうすることにより、制御回路１９０は、妥当でないフラッグの付いたポインタを発見するまで、ポインタアレイ１３０に保存されたポインタに連続してアクセスすることができる。制御回路１９０が一旦妥当でないフラッグの付いたポインタを発見したならば、制御回路はポインタの読み出しを中止し、それによってポインタアレイ１３０からポインタを読み出すオーバーヘッド時間を削減する。
【００１５】
ポインタバッファ１７０の中のポインタから、制御回路１９０はどのビットが誤っているかを特定し、そのビットをページバッファ１６０の中で（例えば、現在の値（１又は０）を反対の値（０又は１）に交換したり、又は、ポインタで指定された値を使ってプログラムすることにより）訂正する。制御回路１９０は、このエラー訂正プロセスを、ページのポインタバッファ１７０に保存されたそれぞれのポインタ毎に実行する。次に制御回路１９０は、訂正済みページのデータをページバッファ１６０からホスト装置へチップ入出力パッドを経由して転送する。
【００１６】
不良ビットポインタを使用することは、ランダムな不良ビットを修正するための、行又は余剰列及びＥＣＣに対して、特にページ指向メモリにおいて有利な点がある。不良ビットの正確な位置がポインタによって特定されるので、ほとんど誤りのないビットの行又は列全体を差し替える必要はない。不良ビットポインタを用いる場合、既に不良行に書き込まれたページは差し替える必要がないので、ページ指向メモリの単一不良セルを修正するために余剰行が用いられるときに遭遇する問題は排除される。更に、単一のページに対して多数の不良ビットポインタを使うことができるので、所与のビット群にある単一のエラーのみを訂正することができるＥＣＣスキームとは異なり、不良ビットポインタを、高い欠陥密度に対応するように、多数のエラーの訂正に使用することが可能である。また、もし欠陥密度が非常に低い場合は、ページ当たりの不良ビットポインタの数は少なくてもよく、ＥＣＣに比べて少しのオーバーヘッドしか必要としない。従って、不良ビットポインタは、ＥＣＣとは異なり、さまざまな欠陥密度に対して効率的に適応させることができる。
【００１７】
不良ビットポインタは任意の適当な形態をとることができる。図２は５１２バイトのデータを収容するページと併用される不良ビットポインタの現在の好適な実施形態の説明図である。図２に示される不良ビットポインタは、ポインタアレイ１３０（または不良ビットポインタ専用の予備メモリ空間）の１６個のメモリセルを使用する。ポインタ２００の最初の３ビットはポインタアレイ１３０の中の２バイトが不良ビットポインタを含んでいることを表す余剰フラッグ（不良ビットポインタ（ｂａｄ  ｂｉｔ  ｐｏｉｎｔｅｒ）使用中フラッグ２１０）である。アンチヒューズメモリセルがプログラム済みの状態のとき、アンチヒューズは電流を伝導する。これがゼロであり、ビットに書き込むということはビットに保存された状態が１からゼロに変えられたことを意味する。余剰なフラッグは、アレイの欠陥によって形成されたパターンの一致を回避するために考え出された。例えば、“０１０”というフラッグの値は正当な不良ビットポインタを示す。全て１又は全てゼロは、アレイ欠陥がビットの読みを全て１又は全てゼロにすることがあるので、避けることが好ましい。ポインタ自身のエラー訂正又は修正が、ほとんど又は全くない場合にはフラッグが三重に余剰化されていることが好ましい。仮にポインタアレイに欠陥が有ったとしても、回路が意図せずに差し替えをしてしまう可能性が非常に低くなる。ポインタ２００の次の９ビットは、エラーの起こったページ２２０の中のバイトアドレスを収容しており、次の３ビット（バイト中ビット２３０）はバイトの中のどのビットがエラーを含んでいるかを示している。最後のビット（適正ビット値２４０）にはエラーを含んでいるビットの正確なデータ値が入っている。
【００１８】
不良ビットポインタのそれぞれの目的専用のビット数は、種々の状況に応じて変えてもよい。例えば、５１２バイトよりも大きなページサイズの場合には、より多くのアドレスビットが必要となる。更に、もし欠陥がバイト当たり１ビット以上に影響を及ぼす傾向があるならば、差し替え単位のサイズに４ビットか１バイトのデータを選択して、バイト中ビットの記憶場所のビット数を減らすことが一層望ましい。加えて、不良ビットポインタもまたＥＣＣによって訂正又は修正される場合には、フラッグビットの数は１に減らすことが可能となる。更に、適正データビットを不良メモリセルの中の値から推測することが可能ならば、適正データビットをポインタバッファ１７０に保存する必要はない。
【００１９】
それぞれのページに付随する不良ビットポインタの数はいくつでも構わない。最適な選択はメモリ技術における欠陥密度に基づいてなされる。標準的な選択はページ当たり８個のポインタである。ポインタは、メインページデータにあるビットのどれとでも関連する。更に、データページに関するある定義では、５１２から５２７バイト目の拡張ページ空間と呼ばれる予備のデータバイトがある。他に使用されていなければ、不良ビットポインタをこの拡張ページ空間に（ポインタアレイ１３０の代わりに）置くことができる。その空間が他の目的で使用されているならば、不良ビットポインタに必要な拡張セルロケーションを提供するためにポインタアレイ１３０を使用することが好ましい。図１に示すように、メモリアレイ１００とポインタアレイ１３０は、制御回路１９０との接続を単純化するために、２つの別個のアレイであることが好ましい。しかしながら、その代わりに、ポインタアレイ１３０はメモリアレイ１００の一体部分（例えば、同一又は異なるサブアレイの中）であってもよく、又は、メモリデバイスの外部に設置されてもよい。
【００２０】
図１に示すメモリチップ構成においては、不良ビットポインタ手段はＥＣＣロジックなしで用いられる。しかしながら、ある製造プロセスにおいては、ランダムな不良ビットの数が非常に多くなることがあるので、不良ビットポインタの数も過剰となる。従って、追加保護のためにＥＣＣビットとＥＣＣロジックを図１に示すメモリチップ機構に付加してもよい。不良ビットポインタ機構がＥＣＣロジックと組み合わせて使用されている実施形態を図３に示すブロック図と連結して図説する。図３に示す通り、ＥＣＣロジック３００はページバッファ３１０と、メモリアレイ３３０に付随する行回路３２０との間のパスに設けられる。（あるいは、ＥＣＣロジック３００はページバッファ３１０とチップ入出力パッドとの間に置くこともできる）。付加的なＥＣＣロジック３４０はポインタバッファ３５０とポインタアレイ３７０に付随する行回路３６０との間に設置される。好適な実施形態では、ＥＣＣ訂正は、４個のポインタの６４ビットグループ上のチップの上で実行される。従って、全ビット（適正ビット値を含む）とともに４個の連続するポインタが同時に書き込まれる。
【００２１】
この実施形態では、不良ビットポインタはＥＣＣグループの中で２個の不良ビットが発生したときに初めて使用され、少なくとも１個の不良ビットを固定する。ただ１つのエラーしか持たないＥＣＣグループは増設の未使用ポインタがあれば修正することができる。作動中、制御回路３８０が最初にメモリアレイ３３０にデータを書き込んだとき、「ＥＣＣ計算無効」信号をＥＣＣロジック３００に送るので、データと一緒にはＥＣＣビットは何もメモリアレイ３３０に書き込まれない。リードアフタライト比較ロジック３９０もまたＥＣＣの修正なしに自身の工程を実行する。不良ビットポインタをポインタバッファ３５０に保存した後に、欠陥記憶場所のエラー（又は「スタック」）の値がページバッファ３１０に正しい値の代わりに代入され、それからＥＣＣロジック３００がＥＣＣビットを修正されたデータとしてメモリアレイ３３０に書き込むことが可能となる。ＥＣＣビットを、スタックされた値で修正したメインページデータと互換性のあるように作ることによって、ＥＣＣビットはメインデータに発生した新たなランダムなシングルビットのエラーを訂正するのに使うことができる。
【００２２】
上述の実施形態において、不良ビットポインタはプログラミングのときに書き込まれた。他の実施形態においては、不良ビットポインタは、プログラミング時の代わりに、又は追加して、工場でのメモリテストの間に書き込まれる。以下に述べる実施形態では、余剰な行や列が、不良ビットポインタ（及び、オプションとして、ＥＣＣも）と連動してより高い信頼性を提供するために、使用することができるかを説明する。
【００２３】
まず、余剰行について調べると、従来の余剰行は読み取り及び書き込み工程を不良な行から余剰行へリダイレクトしていた。本実施形態では、不良ビットポインタが行をリダイレクションする代わりに、行の余剰度を生むために用いられる。従来の余剰行と同じように、スタックビットラインを処理するために不良ビットポインタの書き込みが製造時に行われる。（不良ビットポインタは製造時にスタックビットラインを処理するためだけに使用されるか、又は、製造時にスタックビットラインを処理するためと、プログラミング時の両方で使用することができる。）最も単純な取り組みは、スタックしたゼロビット線の上のビットを訂正しようとだけする試みである。アンチヒューズメモリの中では、プログラムされた状態がゼロと呼ばれる。もしビット線に、例えば、その線に沿った全ビットがゼロと読み出される原因となるような、隣接するビット線とのショートなどの欠陥があると、その線はスタック・アット・ゼロのビット線と呼ばれる。未使用のメモリを読み出せば、全てが１のはずなので、簡単にスタック・アット・ゼロのビット線を検出することができる。スタックしたビット線は多数の行の同一のビット位置に作用する。メモリ製造時に、メモリセルの初期状態を読み出すことにより、不良ビットポインタバッファを、このグループの行のスタックビット線の位置によって初期化することができる。それぞれの行に関して、不良ビットポインタが予備のセルに置かれる。ポインタは部分的に、すなわち、フラッグと不良ビットの位置は含み、データは含まないで書き込まれる。ポインタが部分的に書き込まれている間、ＥＣＣは停止させる。それぞれのページが書き込まれたとき、ポインタは読み出されてポインタバッファに保存される。スタックビット線の位置に関する正確なデータもまた、ポインタバッファに書き込まれる。それから、ＥＣＣがメモリをさらなるランダムエラーから保護するようにＥＣＣロジックを有効にするのと同時に、メモリアレイとポインタアレイが書き込まれる。
【００２４】
どのようにして不良ビットポインタを余剰行と併用することができるかを論じる前に、図４に示すブロック図と関連させて余剰行の好適な方法を論じる。図４に示すチップ機構は、通常行４１０の部分、余剰行４２０の部分、行フラッグ４３０の部分、及び余剰行フラッグ４４０の部分を有するメモリアレイ４００から成る。チップはまた、漏洩電流検出器４５０、自己修復回路４６０，制御回路４７０，ページバッファ４８０，フラッグバッファ４８５，列回路４９０、行回路４９５、及び余剰行回路４９７を含む。このチップ機構は、本願と同一の譲受人に譲渡され、参照することにより本明細書に含まれる米国特許出願番号１０／０２４，６４６に記載の通り、オンザフライの余剰行を備えるために用いることもできる。一般的に、メモリアレイ４００の通常行部分４１０への書き込みデータに誤りが有る場合、データは余剰行部分４２０に書き込まれ、フラッグが行フラッグ部分４３０にセットされる。フラッグはまた、 '６４６特許出願に記載の通り、修正に関する情報を保存するために余剰行フラッグ部分４４０にも設定される。
【００２５】
メモリアレイ４００がデータでプログラムされている間にオンザフライで実行されるのに加えて、この余剰行による方法は工場でメモリアレイ４００がテストされている間にもに実行することができる。この関連で、この好適な実施形態は、行を上記の手順を用いて差し替えるべきかどうかを判断するオンチップの漏洩電流検出器４５０を含んでいる。オンチップ漏洩電流検出器４５０は第１又は第２の短絡検出モードで動作することができる。第１短絡検出モードでは、制御回路４７０は行のラインを選択し、図５に示すように、アレイの列のライン５００が、選択された行のライン５１０と等しい電圧（Ｖｄｄ）になるようにバイアスをかけられる。選択されなかった行のライン５２０は低バイアスレベル（約０．５Ｖ）である。選択された行のライン５１０から他の行のライン５２０への短絡は低バイアスラインへの電流として検出され、また、行回路４９５のスイッチを経由して選択された行ライン５１０へ供給される。検出された電流は自己修復回路４６０に対するエラー信号として、制御回路４７０に対して選択された行ラインに関するフラッグビットをメモリアレイ４００の行フラッグ部分４３０に書き込むようにさせる原因となる。'４６４特許出願に記載の通り、フラッグ入力はいくつかの考えられる余剰行のどれが欠陥行の代替になるかを表示したビットと関連していることが好ましい。第２の短絡検出モードにおいては、選択された行ライン６００は選択されない行ライン６１０と等しいバイアスにある（図６参照）。選択されたものと選択されない行ライン６００、６１０のバイアス（約０．５ボルト）は実質的に列ライン６３０のバイアス（Ｖｄｄ）よりも低い。列ライン６３０と選択された行ライン６００との間の短絡は列ライン６３０から選択された行ライン６００へ流れる電流の原因となる。行バイアスラインに接続された漏洩電流検出器４５０はエラー（ＥＲＲＯＲ）信号を生成し、上記と同様に自己修復動作を行わせる。
【００２６】
ここで図７を、どのようにして余剰行が不良ビットポインタと組み合わせて使用されるかを説明することに用いる。最適な戦略は欠陥の密度に応じて変わる可能性がある。１つの例は、不良な行を検出する回路に基づいて最初に行の差し替えを用いるものである。不良な行が、例えば、本願と同一の譲受人に譲渡され、参照することにより本明細書に含まれる米国特許第６５１５９２３号に記載されているような、何か適当な手段で特定される。上記のように、他の行ライン又は列ラインと短絡した行ラインは漏洩電流検知器７００によって検出される。開放行ラインは、メモリアレイ７３０の行ラインの遠端にあるテスト列７２０のセルからのデータを、期待されるデータと比較するテスト列比較回路７１０、によって検出される。どちらのエラー表示も自己修復回路７４０を作動させて、ポインタアレイ７５０（又は他に適当な予備メモリセルのセット）にフラッグを書き込ませ、‘６４６号特許出願に記載されているように、不良行をメモリアレイ７３０の余剰行部分７６０にある余剰行と差し替えさせる。
【００２７】
不良行を差し替えた後、制御回路７７０は不良ビットの通常の行の上での、又はアクティブにされた余剰行にアドレス指定された通りの位置を検出し、上記のようにポインタ入力を書き込む。次に、所与の行において不良ビットポインタの照合に失敗するか、又は、要求された不良ビットポインタのための十分な余地が無い場合には、当該の所与の行は余剰行によって置き換えられ、不良ビットポインタ書き込み回路が不良ビットを検出して、再度記入事項を書き込む。もしこれが２回目に失敗したら、書き込みエラーが報告され、書き込み操作は終了する。ロジックの単純化のためにフラッグデータはポインタデータとともに保存される。製造においては、例えば漏洩検出あるいはテスト列比較のような行差し替えメカニズムの部分を実行するために、別々の試験用電子機器が制御しメモリ回路と相互に作用することができる。行差し替えフラッグは、それでもやはりメモリチップに書き込まれ、チップ上の読み出し制御ロジックは行を余剰行と差し替えるためにフラッグの解釈をする。これはテストルーチンに柔軟性を与え、メモリチップの面積を減少させる。
【００２８】
再び図面を参照すると、図８は不良ビットポインタとロジックがコンテントアドレッサブルメモリ（ＣＡＭ）で実装された実施形態を示すブロックダイヤグラムである。この実施形態において、メモリアレイ８００は８０個のサブアレイに分割されている。サブアレイは、通常はデコーダ、ドライバ、センスアンプ及び入出力回路によって分断されることのない連続したワード及びビット線を有する連続したメモリセルのグループである。メモリサブアレイは、１ページの移送に関する全情報を保存するために、水平なグループ（例えばグループ８０５のような）で使用されるのが望ましい。グループは物理的にはそうではなく配列されていてもよいが、この配列が便利である。１乃至数ページのデータが、図示のように１列のメモリセルに全て配列される。データを複数のサブアレイに拡散することは、本願と同一の譲受人に譲渡され、参照することにより本明細書に含まれる米国特許出願番号１０／０２４，６４７号に記載のように、エラー訂正ロジックの運用にとって好ましい。ピークパワー低減のためのグループ中でのサブアレイの選択は、同じく、本願と同一の譲受人に譲渡され、参照することにより本明細書に含まれる米国特許出願番号０９／７４８，６４９号に記載されている。当該グループの中で８個のサブアレイに通常のページデータが入っている。９番目のサブアレイ（第５列）にＥＣＣビットが入っており、１０番目のサブアレイ（第１０列）には拡張ページデータ、余剰列のためのフラッグ、及び不良ビットポインタが入っている。
【００２９】
列回路は読み出し書き込み制御回路８１０、センスアンプ、及び列復号ロジックは、本願と同一の譲受人に譲渡され、参照することにより本明細書に含まれる米国特許出願番号０９／８９６，８１４号に記載されている通り、サブアレイの中に市松模様に配列されることが望ましい。所与のサブアレイに対して数本の列線（このケースでは８本の列線）が列復号ロジックによってセンスアンプに接続されている。８ビットのデータパスと制御信号がセンスアンプを読み出し書き込み制御回路８１０に接続している。読み出し書き込み制御回路８１０は選択されたサブアレイの数だけ複製され、従って選択されたサブアレイ全て（このケースの場合、１０個のアブアレイ）に並列にアクセスすることができる。列回路（図示せず）もまた市松模様に分布される。１０番目のサブアレイにあるデータは全体制御回路８２０からの信号により所望のパスに導かれる。第１０カラムからの拡張ページデータはページバッファ８４０の中の拡張ページバッファ８３０に送られる。不良ビットポインタのパスはＥＣＣロジック８５０の作動により変更される。フラッグビットは全体制御回路８２０によって解釈され、不良ビットポインタデータはデータバッファ８６０に送られ、又、不良ビットポインタの位置のアドレスビットはコンテンツ・アドレッサブル・メモリ（ＣＡＭ）８７０に送られる。ＣＡＭ８７０は、ＣＡＭ８７０への入力が、どれでもターゲット入力（全体制御回路８２０のバイトアドレス出力）と一致したとき、一致（ＭＡＴＣＨ）信号を全体制御回路８２０に送る。読み出し書き込み制御回路８１０は、ページバッファ８４０からのデータをメモリアレイ８００に差し向け、不良ビットポインタのデータバッファ８６０及びＣＡＭ８７０からのデータもメモリアレイに差し向ける。リダイレクト信号が読み出し書き込み制御回路８１０及び不良ビットポインタのデータバッファ８６０に与えられると、データは、経路がページバッファ８４０とデータバッファ８６０の相互間となるようにリダイレクトされる。
【００３０】
好適な実施形態においては、データの８ビットがリダイレクトされ、不良ビットポインタはデータの８ビットを収容できる。このバイトサイズの置換単位のための不良ビットポインタはフラッグ情報、バイトの位置アドレス、及びデータバイトを有しているが、バイト中のビット位置は必要でない。不良ビットポインタは、｛２４，１８｝ハミング・シングルビットエラー訂正／ダブルビットエラー検出コードによって保護されている。１ページの５１２バイトに加え、１６バイトの拡張ページスペース及びＥＣＣバイト毎に、１０ビットが位置及びフラッグとして使用される。不良ビットポインタ及びＥＣＣビットは、合計で、２４ビットのデータである。
【００３１】
データバッファ８６０への入力のリダイレクションは、数個の問題表示毎に処理することができる。最適な方法は、アレイ８００中にある製造欠陥の水準と、所望の用途に依存する。不良ビットポインタのリダイレクションは、場合によっては、前記のスタック・ゼロ・ビット線の実施例で説明したように、実際の書き込み操作の前に行われるテスト手順によって指示される。不良ビットポインタの位置情報はサブアレイに書き込まれる。その後、ページデータを書き込むために、ＣＡＭ８７０は不良ビットポインタバイトの位置情報を先行して読み出し、ページバッファ８４０はページデータを読み出す。次に全体制御回路８２０は、ＣＡＭ８７０が最新のバイトアドレスに関してＭＡＴＣＨ信号を出したとき、バイトアドレスを通じて順序付け、ページバッファ８４０からメモリアレイ８００へのデータ転送を行わせ、又、不良ビットポインタのデータバッファ８６０へのデータのリダイレクションを行わせる。リダイレクトされたバイトデータは、後にＥＣＣビットと共に、１０番目のサブアレイの不良ビットポインタ入力に書き込まれる。
【００３２】
他のケースでは、リード・アフタ・ライト確認は、図１を参照して上述したように、不良ビットポインタの入力を発行するために用いられる。ページ書き込みサイクルが完了した後にデータはメモリアレイ８００から読み出され、ページバッファ８４０の内容と比較される。検出されたエラーが、正しいデータを不良ビットポインタデータバッファ８６０に収納させ、位置情報をＣＡＭ８７０に収納させる。比較の最後に、不良ビットポインタの入力がメモリアレイ８００に書き込まれる。好適な実施形態においては、これらの方法が両方とも用いられている。
【００３３】
もう一つのケースでは、読み出し書き込み制御回路８１０が、プログラム中センシングエラー（本発明の譲受人に譲渡され、参照することにより本書に含まれる米国特許出願番号０９／８９６，８１５号を参照）に応えて発行したＥＲＲＯＲ信号によって、データバイトは不良ビットポインタのデータバッファ８６０にリダイレクトされる。この実施形態においては、全てのエラーがリダイレクションの原因となる。もし、リダイレクションの要求回数が、不良ビットポインタの記憶位置の利用可能数を超えると、全体制御回路８２０は、不良ビットポインタ入力の書き込みをせず、その代わりに、上述のように、行置換自己修復操作を開始する。
【００３４】
これら全ての場合において、読み出し操作は、読み出し操作の最初に、不良ビットポインタをデータバッファ８６０とＣＡＭ８７０にロードすることによって、不良ビットポインタを使用する。フラッグビットは、変化した不良ビットポインタだけをロードするために、全体制御回路８２０によって監視される。余剰行フラッグも又、余剰行が使用されなければならないかどうかを決定するために監視される。全体制御回路８２０がページデータバイトを主メモリアレイ８００からページバッファ８４０に転送させる一方で、バイトアドレスをＣＡＭ８７０のターゲット入力に送り、あらゆるＭＡＴＣＨ信号を検出する。もしＭＡＴＣＨ信号があった場合には、全体制御回路８２０はＲＥＤＩＲＥＣＴ信号を,
列回路の読み出し書き込み制御回路８１０と、不良ビットポインタデータバッファ８６０に送り、正しいデータバイトをデータバッファ８６０からページバッファ８４０に、バッファ８４０、８６０間のコモンバスを使って、送るようにする。
【００３５】
これらの実施例で用いることのできる、いくつかの代替案がある。例えば、前記の実施形態において、単一の集積回路（又はチップ）が、メモリアレイと、不良ビットポインタを書き込むことと不良ビットポインタを読み出すことの両方に使用される回路とを内蔵し、適切なビットの置換を行っていた。代替の実施形態では、メモリアレイ、不良ビットポインタ書き込み回路、及び、不良ビットポインタ読み出し回路が、２又は３個の別個の集積回路に載っている。例えば、メモリアレイ、不良ビットポインタ書き込み回路、及び、不慮ビット読み出し回路が、それぞれ別個の集積回路に載っていてもよく、あるいは、２つの要素（例えば、メモリアレイと不良ビットポインタ読み出し回路）が１個の集積回路の上に載っており、他の要素（例えば、不良ビットポインタ書き込み回路）がもう一つの集積回路に載っていることができる。例えば、メモリ集積回路がメモリカードの中にあって、他の集積回路がホスト装置の中にある場合など、複数の集積回路が同一のデバイスの中にあったり、又は、異なるデバイスの中に配置されていたりすることもできる。
【００３６】
図９は、メモリアレイ、不良ビットポインタ書き込み回路、及び不良ビットポインタ読み出し回路が、別個の集積回路に配置されている実施形態の説明図である。より具体的には、第１集積回路９００がメモリアレイ９１０、ページバッファ９２０、ポインタバッファ９２５、及びＥＣＣロジック９３０を含み；第２集積回路９４０が不良ビットポインタ書き込み制御回路９５０とエラー位置テーブル９６０を含み；第３集積回路９７０が不良ビット読み出し置換ロジック９８０とページバッファ９９０を含んでいる。前記の通り、３個の集積回路を用いる代わりに、メモリと、不良ビットポインタのプログラミングに用いられるロジック、及び、不良ビットポインタの読み出し置換を実行するロジックを結合するために、２個の集積回路（又は１個の集積回路）を用いることができる。同様に上記の通り、集積回路９００、９４０、９７０は同一又は異なるデバイスの一部であってもよい。集積回路９００、９４０、９７０を異なるデバイスに配置することは、不揮発性メモリ９１０のプログラミングが標準的な読み出し環境よりむしろ別な環境の中で行われるような用途に好都合である可能性がある。
【００３７】
例えば、第２集積回路９４０が、音楽選集のＭＰ３ファイルをメモリ集積回路９００のメモリアレイにプログラミングする、ミュージックストアにあるＰＣ類似のハードウェアの一部であるという状況を検討してみる。メモリ集積回路９００はユーザに販売することができ、ユーザは後でそのメモリ集積回路９００を小形の携帯型ＭＰ３プレーヤのような、第３集積回路９７０が入っている読み出し用デバイスに挿入して、そのＭＰ３ファイルを再生する。運用においては、メモリアレイ９１０に書き込むデータは、不良の位置を特定し、メインページのスタックビット値を置換してから不良ビットポインタを書き込む、不良ビットポインタ書き込み制御回路９５０を通して送られる。ＥＣＣの互換性のために、不良ビットポインタ書き込み制御回路９５０は、不良の位置を検出したときＥＣＣが休止するように、ＥＣＣロジック９３０の作用を無効にすることができる。この場合、メモリチップの上にＥＣＣブロックのある代替配置で示すように、ＥＣＣの演算は、ページバッファ９２０とメモリチップの入力・出力パッドとの間でデータが転送される間に実行することができる。不良ビットポインタ読み出し置換ロジック９８０は別のメカニズムであり、１つの実施形態ではページバッファ９９０を有しており、ページバッファ９２０に送られるデータをページバッファ９９０に収納して、ポインタバッファ９２５からポインタバッファ９９０の中の誤りのあるデータの位置に、データを置き換える。
【００３８】
もう一つの代替の実施形態においては、不良ビットポインタが、例えば、これらに限定されないが、磁気メモリ（ＭＲＡＭ）、強誘電体メモリ（ＦｅＲＡＭ）、オボニックユニファイドメモリ（ＯＵＭ）、及びＮＯＲ型フラッシュメモリなど、不揮発性ランダムアクセスメモリに用いられている。図１０に示すように、チップの組織はメモリアレイ１０００、それに関連する行回路１０１０、データラッチ及びセンスアンプ回路１０２０、及び、列回路１０３０から成り立っている。同様に、チップはポインタアレイ１０４０、それに関連する行回路１０５０、センスアンプ回路１０６０、分散ＣＡＭ及びラッチ回路１０７０、及びデータラッチ１０８０から成り立っている。更に、チップは、アドレスと制御情報を図１０に示されている各ブロックに送る制御ロジック１０９０から成り立っている。
【００３９】
ランダムアクセスメモリのページレジスタ機能は、一般的にはセンスアンプ又はデータラッチ１０２０と呼ばれる回路に入っている。それは一般的にはメモリアレイ１０００と多数の並列なパスによって連結され、一般的にはメモリアレイの近くに配置される。データが素早くメモリアレイ１０００から転送され、ページレジスタの中ではビットにランダムにアクセスすることのできるページ指向メモリとは区別される。更に、任意のビットをチップの出力に転送する最大時間はページ指向アーキテクチャの場合よりも遙かに短い。ランダムアクセスメモリにおいて不良ビットポインタを使用する好適な方法は、列の余剰度の保護を模倣することである。製造試験において、不良な列は検出され、不良ビットポインタがポインタアレイ１０４０（又はポインタ専用の他の特別なセル）に書き込まれる。センスアンプ及びデータラッチ回路は、ポインタデータの位置とフラッグの部分に対するＣＡＭの機能１０７０を含むように変更されている。列アドレスは位置情報と比較され、ヒット（ＨＩＴ）の表示がメモリアレイ１０００からチップ入力または出力へのパスを、データがメモリアレイ１０００ではなくて、ポインタアレイ１０４０で書き込まれるかまたは読み出されるように、変更する。不良ビットポインタは、ポインタ入力のメインアレイ入力に対する非常に柔軟な結合性を実現して、一般的な余剰列メカニズムにおける大きなヒューズ及び大きなヒューズ比較回路の代わりに非常に小さなメモリセルを使用する。
【００４０】
要約すれば、ここに説明した好適な実施形態は、１ページ以上のデータを保存可能なメモリセルの列の中で、理想的に任意な代替を有しているポインタを用いることによって、ランダムビットエラーを確定することに使うことができる。この不良ビットポインタの仕組みは、行方向に多数のビットを置換する余剰行と組み合わされたときに特に効果的であり、行全体を置換する場合であってもそうである。メモリのページが書き込まれたり読み込まれたりするに伴って、多数の不具合が有れば行置換が起動し、少数の不具合の場合は不良ビットポインタによる修復メカニズムが起動する。不良ビットポインタは余剰行及びＥＣＣと組み合わせて使用することができる。それぞれのページは、不良ビットを固有のビット線上に有する可能性があるが、これらの好適な実施形態は、又、スタックゼロビット及びスタックワンビットのいずれの修復についても使用することができる。これらの好適な実施形態は、背景技術の項で論じた技法に比べ、より少ない予備のメモリセルを使用してより多くのエラーを修復する可能性を備えている。更に、前記の余剰列は、背景技術の項で述べた余剰列技法とは異なり、複雑なページ指向メモリチップなしに、単一のランダムな不良ビットを効率的に確定することができる。
【００４１】
上述の詳細な説明は、本発明が取りうる形態から選択した形態についての説明であり、本発明を定義するものではない。本発明の範囲を定義するものは、請求項及び全ての等価物だけである。最後に、ここに述べたどの好適な実施形態についてのどのような解釈も、単独で、又は相互に組み合わせて使用することができるものである。
【図１】
2006521658.tif 000003
【図２】
2006521658.tif 000004
【図３】
2006521658.tif 000005
【図４】
2006521658.tif 000006
【図５】
2006521658.tif 000007
【図６】
2006521658.tif 000008
【図７】
2006521658.tif 000009
【図８】
2006521658.tif 000010
【図９】
2006521658.tif 000011
【図１０】
2006521658.tif 000012
【手続補正書】
【提出日】平成18年6月16日(2006.6.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項４１
【補正方法】変更
【補正の内容】
【請求項４１】
該余剰行回路が漏洩電流検出器を有することを特徴とする請求項４０に記載のメモリデバイス。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項６５
【補正方法】変更
【補正の内容】
【請求項６５】
該メモリアレイがライトメニー不揮発性メモリセルから成ることを特徴とする請求項４７に記載のメモリデバイス。
【国際調査報告】
2006521658.tif 000013