(57)【要約】  メモリは、そのユーザ部分に、冗長部分に存在する冗長位置により置換可能な欠陥位置を有する。ユーザ部分および冗長部分の列回路に存在するデータラッチは、メモリから感知されるかあるいはメモリに書き込まれるべきデータがデータバスとの間で交換されることを可能にする。リモート冗長方式は、任意の数の列回路がアクセスし得る中央バッファから入手できる冗長データを有する。冗長データバッファ回路は、データが中央バッファから取られるときに、欠陥位置を除いてユーザデータラッチからのデータとのバス交換を可能にする。このようにしてユーザ部分のためのアドレス指定だけがバス交換のために使用される。また、冗長データへのアクセス可能性は、冗長データラッチに関しての列回路の位置によって制限されず、バッファされた冗長データは、列回路により課される粒状度より精細な粒状度でアクセスされ得る。
2009531797.tif 000002
【特許請求の範囲】
【請求項１】
ユーザアレイ部分の中の欠陥位置が冗長アレイ部分の中の対応する冗長位置により置換可能であるように前記ユーザアレイ部分と前記冗長アレイ部分とに分割された不揮発性メモリアレイにおいて、前記メモリの前記ユーザアレイ部分と前記冗長アレイ部分との両方にまたがるメモリ位置のグループからデータを読み出す方法であって、
前記ユーザアレイ部分と前記冗長アレイ部分との両方に関連付けられたデータをラッチするためのデータラッチのグループを含むアクセス回路のグループを設けるステップと、
データバスを設けるステップと、
前記ユーザアレイ部分の欠陥位置のアドレスを欠陥マップバッファにバッファするステップと、
前記冗長アレイ部分の前記データラッチからの冗長データを冗長データバッファにバッファするステップと、
前記欠陥マップバッファ中の欠陥位置に対応しない前記ユーザアレイ部分の現在のアドレスに応答して前記データバスと前記ユーザアレイ部分のデータラッチとの間でのデータの交換を可能にし、また、前記欠陥マップバッファ中の欠陥位置に対応する前記ユーザアレイ部分の現在のアドレスに応答して前記データバスと前記冗長データバッファ中の対応する冗長データとの間でのデータの交換を可能にするステップと、
を含む方法。
【請求項２】
請求項１記載の方法において、
前記メモリアレイは行および列によりアドレス指定可能であり、
前記欠陥位置は前記冗長アレイ部分の冗長列により置換可能な欠陥列である方法。
【請求項３】
請求項１記載の方法において、
現在のアドレスは、前記ユーザアレイ部分をアドレス指定するためのものであって、前記冗長アレイ部分を直接アドレス指定することができない方法。
【請求項４】
請求項１記載の方法において、
前記データバスと前記冗長データバッファ中の対応する冗長データとの間のデータの交換を可能にするステップは、読み出し操作中に前記データバスへの転送の方向に行われる方法。
【請求項５】
請求項１記載の方法において、
前記データバスと前記冗長データバッファ中の対応する冗長データとの間のデータの交換を可能にするステップは、書き込み操作中に前記データバスから受け取る方向に行われる方法。
【請求項６】
請求項１記載の方法において、
前記冗長データバッファ中の冗長データは、前記ユーザアレイ部分および前記冗長アレイ部分のためのものより精細なアドレス指定可能な単位でアドレス指定可能である方法。
【請求項７】
請求項１記載の方法において、
前記アクセス回路のグループは、前記冗長データバッファおよび前記データバスとともに動作するように結合されたアクセス回路の複数のグループの中にある方法。
【請求項８】
請求項１記載の方法において、
前記アクセス回路の複数のグループは、重なり合わないアドレス範囲で動作する方法。
【請求項９】
請求項１記載の方法において、
不揮発性記憶単位の前記アレイは、フラッシュＥＥＰＲＯＭである方法。
【請求項１０】
請求項１記載の方法において、
不揮発性記憶単位の前記アレイは、メモリカードにおいて具体化される方法。
【請求項１１】
請求項１〜１０のいずれか記載の方法において、
個々の記憶単位は、それぞれ、２つのメモリ状態のうちの１つを記憶する方法。
【請求項１２】
請求項１〜１０のいずれか記載の方法において、
個々の記憶単位は、それぞれ、２つより多いメモリ状態のうちの１つを記憶する方法。
【請求項１３】
不揮発性メモリであって、
ユーザアレイ部分の中の欠陥位置が冗長アレイ部分の中の冗長位置により置換可能であるように前記ユーザアレイ部分と前記冗長アレイ部分とに分割された不揮発性記憶単位のメモリアレイと、
前記ユーザアレイ部分と前記冗長アレイ部分との両方に関連付けられたデータをラッチするためのデータラッチのグループを含むアクセス回路のグループと、
データバスと、
前記ユーザアレイ部分の欠陥位置のアドレスを格納するための欠陥マップバッファと、
前記冗長アレイ部分のデータラッチからの冗長データを格納するための冗長データバッファと、
前記欠陥マップバッファ中の欠陥位置に対応しない前記ユーザアレイ部分の現在のアドレスに応答して前記データバスと前記ユーザアレイ部分のデータラッチとの間のデータの交換を可能にし、また、前記欠陥マップバッファ中の欠陥位置に対応する前記ユーザアレイ部分の現在のアドレスに応答して前記データバスと前記冗長データバッファとの間のデータの交換を可能にする冗長データバッファ制御回路と、
を備える不揮発性メモリ。
【請求項１４】
請求項１３記載の不揮発性メモリにおいて、
前記メモリアレイは行および列によりアドレス指定可能であり、
前記欠陥位置は前記冗長アレイ部分の冗長列により置換可能な欠陥列である不揮発性メモリ。
【請求項１５】
請求項１３記載の不揮発性メモリにおいて、
現在のアドレスは、前記ユーザアレイ部分をアドレス指定するためのものであって、前記冗長アレイ部分を直接アドレス指定することができない不揮発性メモリ。
【請求項１６】
請求項１３記載の不揮発性メモリにおいて、
読み出し操作中に現在のアドレスが前記欠陥位置のアドレスに対応するとき、前記冗長データバッファは前記欠陥位置に対応する冗長データを前記データバスに転送するように動作可能にされる不揮発性メモリ。
【請求項１７】
請求項１３記載の不揮発性メモリにおいて、
書込み操作中に現在のアドレスが前記欠陥位置のアドレスに対応するとき、前記冗長データバッファは前記データバスから前記欠陥位置に対応する冗長データを受け取るように動作可能にされる不揮発性メモリ。
【請求項１８】
請求項１３記載の不揮発性メモリにおいて、
前記冗長データバッファ制御回路と前記冗長データバッファとは、前記ユーザアレイ部分と前記冗長アレイ部分とのためのものより精細なアドレス指定可能な単位を有する不揮発性メモリ。
【請求項１９】
請求項１３記載の不揮発性メモリにおいて、
前記冗長データバッファとともに動作するアクセス回路が、その中にバッファされている前記冗長データのうちの少なくともあるものとは重なり合わないアドレス範囲で動作する不揮発性メモリ。
【請求項２０】
請求項１９記載の不揮発性メモリにおいて、
前記アクセス回路は、前記冗長データバッファとともに動作する複数のアクセス回路のうちの１つである不揮発性メモリ。
【請求項２１】
請求項１３記載の不揮発性メモリにおいて、
不揮発性記憶単位の前記アレイは、フラッシュＥＥＰＲＯＭである不揮発性メモリ。
【請求項２２】
請求項１３記載の不揮発性メモリにおいて、
不揮発性記憶単位の前記アレイは、メモリカードにおいて具体化される不揮発性メモリ。
【請求項２３】
不揮発性メモリであって、
ユーザアレイ部分の中の欠陥位置が冗長アレイ部分の中の冗長位置により置換可能であるように前記ユーザアレイ部分と前記冗長アレイ部分とに分割された不揮発性記憶単位のメモリアレイと、
前記ユーザアレイ部分と前記冗長アレイ部分との両方に関連付けられたデータをラッチするためのデータラッチのグループを含むアクセス回路のグループと、
データバスと、
前記ユーザアレイ部分の欠陥位置のアドレスを格納するための欠陥マップバッファと、
前記冗長アレイ部分のデータラッチからの冗長データを格納するための冗長データバッファと、
前記欠陥マップバッファ中の欠陥位置に対応しない前記ユーザアレイ部分の現在のアドレスに応答して前記データバスと前記ユーザアレイ部分のデータラッチとの間でのデータの交換を可能にし、また、前記欠陥マップバッファ中の欠陥位置に対応する前記ユーザアレイ部分の現在のアドレスに応答して前記データバスと前記冗長データバッファ中の対応する冗長データとの間でのデータの交換を可能にするための手段と、
を含む不揮発性メモリ。
【請求項２４】
請求項１３〜２３のいずれか記載の不揮発性メモリにおいて、
個々の記憶単位は、それぞれ、２つのメモリ状態のうちの１つを記憶する不揮発性メモリ。
【請求項２５】
請求項１３〜２３のいずれか記載の不揮発性メモリにおいて、
個々の記憶単位は、それぞれ、２つより多いメモリ状態のうちの１つを記憶する不揮発性メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電気的に消去可能でプログラム可能な読み出し専用メモリ（ＥＥＰＲＯＭ）およびフラッシュＥＥＰＲＯＭのような不揮発性半導体メモリに関し、特に列冗長性特徴を実現したものに関する。
【背景技術】
【０００２】
電荷を不揮発性に蓄積することのできる、特に小形形状のファクタカードとしてパッケージされたＥＥＰＲＯＭおよびフラッシュＥＥＰＲＯＭの形の固体メモリは、このごろ、特に情報機器および消費者電子製品などの多様なモバイル装置およびハンドヘルド装置において一般的に好まれる記憶装置になっている。同じく固体メモリであるＲＡＭ（ランダムアクセスメモリ）とは違って、フラッシュメモリは不揮発性で、電源がオフにされた後も、その蓄積されたデータを保持する。磁気ディスク記憶装置と比べるとコストが高いけれども、フラッシュメモリは大容量記憶の応用分野でますます使用されつつある。ハードドライブおよびフロッピーディスクのような回転する磁性媒体に基づく在来の大容量記憶装置は、モバイルおよびハンドヘルド環境には適していない。なぜならば、ディスクドライブはかさばりがちで、機械的故障を起こしやすく、待ち時間および電源条件が大きいからである。これらの望ましくない属性があるために、ディスクに基づく記憶装置は大抵のモバイルおよび携帯アプリケーションにおいて非実用的である。一方、フラッシュメモリは、埋め込み形および取り外し可能なカードの形の両方において、小型で電力消費量が少なく、高速で信頼性が高いという特徴の故に、モバイルおよびハンドヘルド環境に理想的に適している。
【０００３】
メモリ装置は、通常、カードに搭載され得る１つ以上のメモリチップを含む。各メモリチップは、デコーダ、消去回路、書き込み回路、読み出し回路のような周辺回路によってサポートされるメモリセルのアレイを含む。より精巧なメモリ装置は、インテリジェントで高レベルのメモリ操作およびインターフェイスを行うコントローラを伴っている。今日、商業的に成功した多くの不揮発性固体メモリ装置が使用されている。これらのメモリ装置は種々のタイプのメモリセルを使用することができ、各々のタイプが１つ以上の電荷蓄積素子を有する。ＥＥＰＲＯＭの例とそれらを製造する方法とが、米国特許第５，５９５，９２４号（特許文献１）において提供されている。フラッシュＥＥＰＲＯＭの例と、メモリシステムにおけるその使用方法と、それらを製造する方法とが、米国特許第５，０７０，０３２号（特許文献２）、第５，０９５，３４４号（特許文献３）、第５，３１５，５４１号（特許文献４）、第５，３４３，０６３号（特許文献５）、第５，６６１，０５３号（特許文献６）、第５，３１３，４２１号（特許文献７）および第６，２２２，７６２号（特許文献８）に示されている。ＮＡＮＤセル構造を有するメモリ装置の例が、米国特許第５，５７０，３１５号（特許文献９）、第５，９０３，４９５号（特許文献１０）および第６，０４６，９３５号（特許文献１１）に記載されている。電荷を蓄積するための誘電体層を有するメモリ装置の例が、エイタンらによる“ＮＲＯＭ：新規な局所トラッピング、２ビット不揮発性メモリセル”，ＩＥＥＥ電子デバイスレターズ，第２１巻，第１１号，２０００年１１月，５４３〜５４５ページ (Eitan et al., “NROM: A Novel Localized Trapping, 2-Bit Nonvolatile Memory Cell," IEEE Electron Device Letters, vol.21, no. 11, November 11, pp. 543-545)（非特許文献１）に記載され、また米国特許第５，７６８，１９２号および第６，０１１，７２５号にも記載されている。
【０００４】
メモリ装置は、普通、行および列を成すように配置されてワード線およびビット線によりアドレス指定可能なメモリセルの２次元アレイとして編成される。アレイは、ＮＯＲタイプまたはＮＡＮＤタイプのアーキテクチャに従って形成され得る。ＮＯＲタイプのメモリの例が、米国特許第５，１７２，３３８号（特許文献１２）および第５，４１８，７５２号（特許文献１３）に開示されている。メモリシステムの一部としてのＮＡＮＤアーキテクチャアレイとその動作との例が、米国特許第５，５７０，３１５号（特許文献９）、第５，７７４，３９７号（特許文献１４）、および第６，０４６，９３５号（特許文献１１）で見出される。
【０００５】
メモリは、しばしば、製造プロセスに由来するか、あるいは装置の動作中に生じた欠陥部分を有する。特に、製造歩留まりを最大にするために、そうしなければ欠陥を有することになる製品を救うために、製造時に発見された欠陥が訂正される。米国特許第５，６０２，９８７号（特許文献１５）、第５，３１５，５４１号（特許文献４）、第５，２００，９５９号（特許文献１６）、第５，４２８，６２１号（特許文献１７）および米国公開特許出願第２００５／０１４１３８７号（特許文献１８）に記載されているような、メモリの部分を誤り訂正符号化あるいは再マッピングすることを含む、これらの欠陥を処理するための幾つかの技術が存在する。これら特許および特許出願は、その全体が本願明細書において参照により援用されている。
【０００６】
製造後、メモリチップは出荷前に試験される。欠陥が発見されたならば、そのチップは、メモリの欠陥部分の代わりに冗長部分を用いることによって、救われ得る。メモリに見出される普通のタイプの欠陥は、アレイの列に存在する問題に起因する。例えば、フラッシュメモリにおいて、列欠陥は、メモリセル領域に存在する次のエラー、すなわちビット線からビット線への短絡、他の信号に短絡されたビット線、ビット線開放、プログラムしないかあるいはプログラムが遅すぎる不良セル、および／または不良データラッチ、のうちのいずれか１つに起因し得る。
【０００７】
在来の列冗長性方式は、列内のビット線、センス増幅器、およびデータラッチを含む列全体を取り替える。冗長方式は、不良列に遭遇したときにイネーブルされる別々のアクセス信号とともに高速マッチ回路も有する。
【０００８】
メモリチップ自体の上の欠陥列を処理する１つの従来技術システムは、不良列置換を処理するためにバイナリ復号方式を用いる。ホストからのアドレスは始めにレジスタにラッチされ、列アドレスは、０バイト〜５４０バイトの列を管理するために１０ビット加算器によって増分される。その後、列アドレス（１０ビット）は、列復号器領域を通って伸びる１５〜２０のラインに事前復号(predecode) される。列選択を形成するために、これらの１５〜２０のラインの中から３つの信号が選択される。このバイナリ復号システムにおいて不良列は、入り列アドレスを不良列アドレスのリストと比較することにより管理される。一致が見出されたならば、入り列アドレスは他の、良好な列アドレスへ再割り当てされる。入りアドレスが不良列アドレスと一致しなければ、その入り列アドレスは変更されない。バイナリ列選択方式は、ランダムな列アドレスの位置を確認することに関して高度の柔軟性を有する。しかし、これは、欠陥のある列を置換するために必要なロジックに複数のステージがあるために割合に低速であるという欠点を持ち、それ故にバイナリ復号方式が２０ＭＨｚのデータ入力レートまたは出力レートより遥かに速く動作することは困難である。
【０００９】
また、アレイの上および下の両方からセンス増幅器のセットによりサービスされるアーキテクチャを有するメモリアレイの場合には、センス増幅器の各セットに対する冗長列の位置に起因して、欠陥列は効率的に再マッピングされ得ない。
【００１０】
従って、改善された性能を有する高性能で大容量の不揮発性メモリに対する一般的ニーズが存在する。特に、性能および効率が改善された欠陥管理に対するニーズが存在する。
【特許文献１】米国特許第５，５９５，９２４号
【特許文献２】米国特許第５，０７０，０３２号
【特許文献３】米国特許第５，０９５，３４４号
【特許文献４】米国特許第５，３１５，５４１号
【特許文献５】米国特許第５，３４３，０６３号
【特許文献６】米国特許第５，６６１，０５３号
【特許文献７】米国特許第５，３１３，４２１号
【特許文献８】米国特許第６，２２２，７６２号
【特許文献９】米国特許第５，５７０，３１５号
【特許文献１０】米国特許第５，９０３，４９５号
【特許文献１１】米国特許第６，０４６，９３５号
【特許文献１２】米国特許第５，１７２，３３８号
【特許文献１３】米国特許第５，４１８，７５２号
【特許文献１４】米国特許第５，７７４，３９７号
【特許文献１５】米国特許第５，６０２，９８７号
【特許文献１６】米国特許第５，２００，９５９号
【特許文献１７】米国特許第５，４２８，６２１号
【特許文献１８】米国公開特許出願第２００５／０１４１３８７号
【特許文献１９】米国特許出願第１１／０２６，５３６号
【非特許文献１】Eitan et al., “NROM: A Novel Localized Trapping, 2-Bit Nonvolatile Memory Cell," IEEE Electron Device Letters, vol.21, no. 11, November 11, pp. 543-545
【発明の開示】
【００１１】
リモート冗長方式
本発明の一態様に従って、リモート冗長方式は、欠陥メモリ位置のための冗長または置換データを冗長データラッチからバッファ回路のセットへ再配置させる。このようにして、メモリアレイとＩ／Ｏバスとの間でデータを交換するために１つのアドレス指定方式が必要であるように、冗長データは、より容易にアクセスし得る位置にある。特に、本発明のリモート冗長方式では、ユーザデータはユーザデータラッチに関連付けられ、冗長データは冗長データラッチに関連付けられるけれども、ユーザデータと、これに代わる冗長データとにアクセスするためにメモリアレイのユーザ部分のためのアドレスが使用され得る。現在のアドレスが良好な（欠陥のない）位置のためのアドレスであるとき、データバスはユーザデータラッチとデータを交換する。一方、現在のアドレスが欠陥のある位置のためのアドレスであるとき、データバスは冗長データが中に置かれているリモートバッファとデータを交換する。
【００１２】
１つの好ましい実施形態では、冗長部分のラッチに関連付けられた置換データをバッファするために冗長データバッファ回路が使用される。ユーザ部分をアドレス指定するためのアドレス指定方式だけが必要である。通常、データはＩ／Ｏバスとユーザ部分のデータラッチとの間で交換される。欠陥のあるアドレス位置に遭遇したときには、Ｉ／Ｏバスと、冗長部分の中のデータラッチの代わりの、よりアクセスしやすいバッファ回路との間で、置換データが交換される。
【００１３】
他の１つの実施形態では、冗長データバッファ回路のアドレス粒状度は、列回路のアドレス粒状度と同じでなくてもよい。好ましくは、アドレスの単位は、列の分解能より精細な分解能を有する。サブ列デコーダは、列アドレスと列オフセットアドレスとをさらにサブ列アドレスに復号する。これは、冗長記憶空間をより効率的に利用するという利点を有する。なぜならば、欠陥のある単一のビット線が他の１つの冗長ビット線により取って代わられることができ、必ずしも複数のビット線を含む１つの冗長列により取って代わられなくてもよいからである。
【００１４】
リモートバッファの実現は、普通はそのそれぞれの冗長データラッチに結び付けられる全ての冗長データが、その位置およびメモリアーキテクチャに起因するアクセス制限を受けないことを可能にする。例えば、奇数列回路の場合に類似して、１セットの偶数列回路は偶数列にアクセスできるだけであり、従って奇数冗長列を使用することができない。この方式は、任意の数の列回路がそれらの相対位置に関わらずにアクセスし得る中央位置に全ての冗長データをバッファすることを可能にする。
【００１５】
本発明の付加的な特徴と利点とは、添付図面と関連して検討されるべきであるその好ましい実施形態についての以下の記述から理解されるであろう。
【発明を実施するための最良の形態】
【００１６】
列冗長を採用した代表的なメモリについての予備的な記述が、本発明との区別に役立つ。
在来の局所冗長データ方式
図１は、冗長部分だけから冗長データを入手できる在来の列冗長方式のメモリ装置を示す。このメモリ装置は、ユーザ部分１０２と冗長部分１０２’とに分割されたメモリセルのアレイ１００を有する。アレイ１００内のメモリセルは、行に沿う１セットのワード線と列に沿う１セットのビット線とによりアクセス可能である。ワード線のセットは、行デコーダ１３０を介して行アドレスにより選択可能である。同様に、ビット線のセットは、列デコーダ１６０を介して列アドレスにより選択可能である。通常、行に沿うメモリセルのページが、感知回路１７０の対応するセットによって一緒に読み出されるかあるいは書き込まれる。メモリから読み出されたデータのページまたはメモリに書き込まれるべきデータのページをラッチするために、データラッチ１８０の対応するセットが使用される。読み出し操作の終了時に、データラッチからのデータはデータアウトバス１９２を介して外へ転送される。同様に、書き込み操作開始時に、書き込まれるべきデータはデータインバス１９４を介してデータラッチへ転送される。
【００１７】
通常、列アドレスは、１つの列内のビット線の１つのグループが一度にアドレス指定可能で、従ってビット線欠陥が列ごとにマッピングされるような粒状度を有する。例えば、１つのアドレス指定可能な列は、１つの所与の行に沿う１バイトまたは１ワードのデータに対応する８本または１６本のビット線を含むことができる。
【００１８】
ユーザ部分１０２において欠陥のある１１２のような列が特定されたとき、それに取って代わる、冗長部分１０２’からの列１１２’のような置換列が提供される。不良列は試験中に発見され、欠陥のある列とその置換物とに関する情報が欠陥マップ１１６において維持され、この欠陥マップはメモリ装置、例えばパワーアップ時に読み出されるメモリアレイ（ＲＯＭＦＵＳＥブロック）に格納されることができる。メモリ装置がパワーアップされるたびに、欠陥マップは急速アクセスのためにオンチップコントローラ２００のＲＡＭ２１６にロードされる。
【００１９】
通常、ユーザはアレイのユーザ部分１０２にアクセスできるだけであり、冗長部分１０２’にはアクセスできない。従って、列アドレス範囲Ａｙは、ユーザがユーザ部分１０２にアクセスするためだけに存在する。列アドレスの保護されているセットＡｙ’は、システムが冗長部分１０２’にアクセスするために存在する。アレイの冗長部分１０２’は、冗長列デコーダ１６０’、冗長感知回路１７０’および冗長データラッチ１８０’のような、列回路のそれ自身のセットによりサービスされる。
【００２０】
各々の欠陥のある列は、絶縁ラッチによって標識付けされ得る。その場合、その列の中のアドレス指定されたバイトまたはワードは、その列のためのデータラッチの中のデータに関わりなくプログラムされず、プログラム−ベリファイ中に既に無視される。
【００２１】
代表的な従来技術のシステムは、メモリチップ自体の上の欠陥のある列を管理し、不良列置換を管理するために双方向復号方式を使用する。ユーザアドレスＡｙは、ユーザアレイにアクセスするためのアドレスＡｙまたは冗長アレイにアクセスするためのアドレスＡｙ’に変換される。
【００２２】
この双方向復号システムにおいて不良列は、入り（ユーザ）列アドレスＡｙを欠陥マップ２１６内の不良列アドレスのリストと比較することによって管理される。一致が発見されると、入り列アドレスＡｙは、冗長部分１０２’内の他の良好な列アドレスＡｙ’に再割り当てされるかあるいはマッピングされる（Ａｙ→Ａｙ’）。入りアドレスが不良列アドレスと一致しなければ、入り列アドレスは変更されない（Ａｙ→Ａｙ）。
【００２３】
例えば、感知操作後に、読み出されたデータのページはデータラッチにラッチされる。ユーザがそのデータをリクエストしたとき、ライン１９４を介してデータバス１９０へストリーミングされる。アドレスが不良列、例えば列３、を指すとき、列冗長モジュール２１０は、ユーザアレイのためのアドレスＡｙをディスエーブルし、代わりにアレイの冗長部分の中の冗長列または置換列をアドレス指定するために代わりにアドレスＡｙ’をイネーブルする。その場合、冗長列からのデータは、ライン１９０’を介してデータアウトバス１９２へのストリームの中に即座に挿入される。
【００２４】
図２Ａは、在来の冗長方式での読み出し操作の略タイミング図である。ホストは、開始読み出しアドレスを送り始めるために初期読み出しコマンドを発することによってメモリ装置における読み出し操作を開始する。その後に、実際の開始読み出しアドレスが送られる。その後、ホストは、読み出しを実行するコマンドを発する。メモリ装置は、その後、ビジー信号を信号し、データのページを感知するように動作する。感知されたデータのページは、関連するデータラッチにラッチされる。そのページは、アレイのユーザ部分と冗長部分とを含む。そのデータ全体がラッチされたとき、メモリ装置はレディ信号で信号する。
【００２５】
ユーザは、その後、データをデータラッチから外へ、データアウトバス１９２へストリーミングさせるようにホストを通してリクエストすることができる。この外へのストリーミング操作の間、欠陥のある列に遭遇するたびに、対応する冗長データが即座にストリームに挿入され得るように、冗長部分の中の対応する冗長データラッチをアドレス指定するためにユーザアドレスＡｙはＡｙ’に切り替えられる。冗長データがバスに出力されたとき、メモリはユーザアドレスＡｙに切り替わり、そしてこのプロセスはページの終わりに達するまで続く。
【００２６】
図２Ｂは、在来の列冗長方式での読み出し操作を示すフローチャートである。
パワーアップ
ステップ３１０：欠陥マップを不揮発性メモリからコントローラＲＡＭにロードする。
ステップ３１２：対応する絶縁ラッチをセットすることによって不良列をマークする。
読み出し
ステップ３２０：複数の列にわたってメモリセルからデータのページを読み出すための読み出しコマンドを受け取る
ステップ３２２：“ビジー”を信号する。
ステップ３２４：そのメモリセルのページを感知し、データを対応するデータラッチにラッチする。
ステップ３２６：“レディ”を信号する。
Ｉ／Ｏ
ステップ３３０：ラッチされたデータを１列ずつ外へストリーミングする。
ステップ３３２：外へストリーミングされるべきデータの現在の列アドレスＡｙ＝欠陥マップ中の不良列アドレスのうちの１つか？一致があればステップ３３４に進み、そうでなければステップ３３６に進む。
ステップ３３４：データを置換してストリームに挿入するために冗長列をアドレス指定するべくＡｙ’に切り替わり、ステップ３３８に進む。
ステップ３３６：通常のアドレスＡｙで続行し、ステップ３３８に進む。
ステップ３３８：最後の列か？最後の列に達したならばステップ３４０に進み、そうでなければステップ３３２で次の列に進む。
ステップ３４０：データのページは読み出された。
【００２７】
図３Ａは、在来の冗長方式での書き込み操作の略タイミング図である。書き込み操作におけるデータ転送は、プログラミングの前にバスからデータラッチへのプログラムデータのストリーミングが生じることを除いて、読み出し操作のデータ転送と同様である。例えば、欠陥列３に到達したならば、列３のためのデータラッチへデータをストリーミングする代わりに、置換列へリダイレクトされる。
【００２８】
ホストは、開始書き込みアドレスを送り始めるために初期書き込みコマンドを発することによってメモリ装置における書き込み操作を開始する。その後に、実際の開始書き込みアドレスが送られる。その後、ホストは書き込みデータをデータインバス１９２から中へ、データラッチへストリーミングするために信号を発する。この中へのストリーミング操作の間、欠陥のある列に遭遇するたびに、対応する冗長データを対応する冗長ラッチに即座に挿入することができるように、冗長部分に存在する対応する冗長データラッチをアドレス指定するためにユーザアドレスＡｙはＡｙ’に切り替えられる。冗長データがラッチされると、メモリはユーザアドレスＡｙに切り替わり、ページの終わりに達するまでこのストリーミングプロセスが続行される。
【００２９】
その後、ホストはプログラミングを実行するコマンドを発する。メモリ装置は、その後、ビジー信号を信号し、データのページをプログラムするように動作する。そのページは、アレイのユーザ部分と冗長部分とを含む。そのデータ全体がプログラム−ベリファイされたとき、メモリ装置はレディ信号で信号する。
【００３０】
図３Ｂは、在来の列冗長方式でのプログラム操作を示すフローチャートである。
パワーアップ
ステップ３５０：欠陥マップを不揮発性メモリからコントローラＲＡＭにロードする。
ステップ３５２：対応する絶縁ラッチをセットすることによって不良列をマークする。
Ｉ／Ｏ
ステップ３６０：複数の列にわたってデータのページを書き込むために書き込みコマンドを受け取る。
ステップ３６２：書き込まれるべきデータの第１のページを１列ずつデータラッチの第１のページ中にストリーミングする。
ステップ３６４：外へストリーミングされるべきデータの現在の列アドレスＡｙ＝欠陥マップ中の不良列アドレスのうちの１つか？一致があればステップ３６６に進み、そうでなければステップ３６８に進む。
ステップ３６６：データを置換してストリームに挿入するために冗長列をアドレス指定するべくＡｙ’に切り替わり、ステップ３６９に進む。
ステップ３６８：通常のアドレスＡｙで続行し、ステップ３６９に進む。
ステップ３６９：最後の列か？最後の列に達したならばステップ３７０に進み、そうでなければステップ３６２で次の列に進む。
プログラム
ステップ３７０：プログラムコマンドを受け取る。
ステップ３７２：“ビジー”を信号する。
ステップ３７４：そのページ全体がプログラム−ベリファイされるまでデータのページを書き込む。
ステップ３７６：“レディ”を信号する。
【００３１】
双方向列選択方式は、列にランダムアクセスすることができる点において、より柔軟である。しかし、欠陥列を置換するために必要なロジックの複数のステージがあるので、割合に低速であるという欠点を有する。前述したように、アレイの冗長部分はユーザのアクセスから保護され、従ってそれ自身の独自のアドレス信号を有する。ユーザ部分と冗長部分との間で即座に切り替わることは２つの全く異なるアドレス指定方式の間での切り替わりを必要とし、このことは双方向復号方式が２０ＭＨｚのデータ入力レートまたは出力レートより遥かに速く実行することを難しくする。
【００３２】
リモート冗長方式
本発明の一態様に従って、リモート冗長方式は、欠陥のあるメモリ位置のための冗長または置換データを冗長データラッチからバッファ回路のセットへ再配置する。このようにして、メモリアレイとＩ／Ｏバスとの間でデータを交換するために１つのアドレス指定方式が必要であるように冗長データはより容易にアクセスできる位置にある。特に、本発明のリモート冗長方式では、ユーザデータはユーザデータラッチに関連付けられ、冗長データは冗長データラッチに関連付けられるけれども、メモリアレイのユーザ部分のためのアドレスは、ユーザデータと、その代わりの冗長データとにアクセスするために使用され得る。現在のアドレスが良好な（欠陥のない）位置のためのアドレスであるとき、データバスはユーザデータラッチとデータを交換する。一方、現在のアドレスが欠陥のある位置のためのアドレスであるとき、データバスは冗長データが中に置かれているリモートバッファとデータを交換する。
【００３３】
１つの好ましい実施形態では、冗長部分のラッチに関連付けられた置換データをバッファするために冗長データバッファ回路が使用される。ユーザ部分をアドレス指定するためのアドレス指定方式だけが必要である。通常、データはＩ／Ｏバスとユーザ部分のデータラッチとの間で交換される。欠陥のあるアドレス位置に遭遇したときには、Ｉ／Ｏバスと、冗長部分の中のデータラッチの代わりの、よりアクセスしやすいバッファ回路との間で、置換データが交換される。
【００３４】
図４は、リモート冗長方式がその中で実現されるところの文脈を提供するコンパクトなメモリ装置の好ましい構成を概略的に示す。このメモリ装置は、個々の記憶単位すなわちメモリセルの２次元アレイ４００と、制御回路４１０と、行デコーダ４２０Ａおよび４２０Ｂと、列回路とを含む。一実施形態では、記憶単位はそれぞれ１ビットのデータを記憶することができる。他の１つの実施形態では、記憶単位はそれぞれ１ビットより多いデータを記憶することができる。最も好ましい実施形態では、コンパクトなメモリ装置は、ホストシステムに取り外し可能に取り付けられることのできるメモリカードにおいて実現される。
【００３５】
メモリアレイ４００は、行デコーダ４２０Ａ，４２０Ｂを介してワード線により、また列回路に結合されたビット線により、アドレス指定可能である。列回路は、感知回路４３０Ａ，４３０Ｂと、データラッチ４４０Ａ，４４０Ｂと、列デコーダ４５０Ａ，４５０Ｂと、データＩ／Ｏバス４９０とを含む。各感知回路のために１セットのデータラッチがあることが理解される。例えば、各メモリセルが２ビットのデータを記憶できる４状態メモリにおいて、２ビット以上の情報を記憶するラッチがあり得る。複数のビットを記憶するためのデータラッチのセットが、２００４年１２月２９日に出願された“読み書き回路の集合体のための共通処理を伴う不揮発性メモリおよび方法(Non-Volatile Memory and Method with Shared Processing for an Aggregate of Read/Write Circuits) ”という米国特許出願第１１／０２６，５３６号（特許文献１９）に開示されている。この特許出願は、その全体が本願明細書において参照により援用されている。
【００３６】
好ましい実施形態では、全ての偶数ビット線に結合された回路の中の感知回路４３０Ａと、全ての奇数ビット線に結合された回路の中の感知回路４３０Ｂとがある。このようにして、一緒に動作するとき、全てのビット線が並行して使用される。他の１つの実施形態では、１つ置きのビット線、すなわち偶数ビット線または奇数ビット線だけが並行して動作する。
【００３７】
濃密なパッキングを考慮して、行デコーダと列回路とは好ましくはアレイの両端に分散される。従って、行デコーダ４２０Ａおよび４２０Ｂは、それぞれ、アレイの左側および右側に配置されている。同様に、列回路“Ａ”および“Ｂ”は、それぞれ、アレイの下部および上部に配置されている。通常、列回路“Ａ”および“Ｂ”は、それぞれ、ビット線のインターリービングなセットにアクセスする。例えば、列回路“Ａ”は偶数番号ビット線へのアクセスを有し、列回路“Ｂ”は奇数番号ビット線へのアクセスを有する。便宜上、特に記されていなければ、以降の記述は、“Ａ”回路のような１セットの回路に向けられる。
【００３８】
列回路の感知回路４３０Ａは、１つの行に沿うメモリセルの１つのブロック（“ページ”とも称される）が並行して読み出されるかあるいはプログラムされることを可能にするセンス増幅器の１つのバンクとして実現される。１つの好ましい実施形態では、１つのページは、１，０２４バイトなどのメモリセルの１つの連続する行から構成される。他の１つの実施形態では、メモリセルの１つの行は、複数のブロックまたはページ、例えば偶数ビット線を有する１つのページと奇数ビット線を有する１つのページとに分割される。
【００３９】
制御回路４１０は、メモリアレイ４００に対するメモリ操作を実行するために行デコーダおよび列回路と協働する。制御回路内の状態マシン４１２は、メモリ操作のチップレベル制御を提供する。
【００４０】
メモリアレイ４００は、ユーザ部分４０２と冗長部分４０２’とにさらに分割されている。ユーザ部分４０２は、アドレスバス４９６を介して供給されるユーザアドレスＡｙにより列毎にアクセス可能である。冗長部分４０２’は、ユーザによってアクセスすることはできず、それ自身の保護されているアドレスＡｙ’を有する。冗長部分は、ユーザ部分に見出された欠陥のある列に代わる、所定数の冗長列または置換列を提供する。欠陥のある列のリストは欠陥マップ４１６に登録され、これは好ましくは不揮発性メモリアレイ４０２に格納される。例えば、冗長領域４０２’は、各々１バイト幅である８つの置換列を提供することができる。これは、原則として、ユーザ部分に発生することのある８つまでの欠陥列の置換を可能にする。
【００４１】
しかし、従来技術のシステムにおいて冗長データまたは置換データが冗長列のラッチに局在するので、下部および上部の列回路がそれぞれ偶数列または奇数列だけへのアクセスを有する図４に示されている好ましい構成の段構造ではさらなる問題が発生し得る。この２段アーキテクチャが図１に記載されている従来技術のシステムにおいて実現されたならば、下部および上部の列回路の各々は冗長部分の中の置換列のプールの半分へのアクセスを有する。これは、奇数列回路は偶数置換列へのアクセスを有することができず、逆もまた同様だからである。その結果として、置換列のプールの利用が非能率的となる。例えば、８冗長列のプール（４偶数列と４奇数列）の場合、プール内に実際には８つの置換列があるのにユーザ部分の偶数列の中の５つ目の欠陥列は最早置換され得ない。
【００４２】
図４は１つの好ましい実施形態を示し、この実施形態ではリモート冗長サービスを提供するために冗長データバッファ回路がメモリ装置と協力する。冗長部分４０２’に関連付けられた冗長データは冗長データバッファ回路４６０にバッファされる。明瞭のために、データアウトバス４９２へ転送されるデータは、図５と関連して記載される。データインバスから転送されるデータは、図６と関連して記載される。
【００４３】
図５は、データをＩ／Ｏバスへ転出させるように構成された冗長データバッファ回路を示す。この転出モードは、感知操作後、１ページの感知されたデータがユーザデータラッチのセット４４０Ａにラッチされているときに適用可能である。ユーザは、アドレスバス４９６を通して供給される列アドレスＡｙによりデータのページの中のデータにアクセスすることができる。前述したように、アドレス指定の粒状度に依存して、所定数のビット線を含む１つの列が単位としてアドレス指定可能である。列の１つのランがアドレス指定されるべきとき、１つの好ましいアドレス指定方式は、ランレングスが後に続く開始アドレスを供給することである。列選択は、列アドレスが列デコーダ４５０Ａ（図４を参照）によって復号されるときに行われる。図５において、列選択はアドレスバス４９６からのポインタによって概略的に描かれている。列回路は、選択されたラッチされているデータのＩ／Ｏバス４９２への転送を制御するユーザデータ転出ゲート４７２のセットをも含む。
【００４４】
冗長データバッファ回路４６０は、冗長データバッファ４６２と、転出ゲート４８２のセットと、欠陥マップバッファ４６６と、比較回路４６８とを含む。冗長データバッファは、冗長部分４０２’からの冗長データをバッファする。１ページのデータの感知後、冗長ラッチ４４０Ａ’にラッチされた冗長データは冗長データバッファ４６２にロードされる。冗長データバッファ４６２への転送は、データアウトバス４９２が冗長データラッチからデータを受け取って図６に示されるように冗長データバッファへ転送するモードに冗長データバッファ回路４６０が設定されているときに実行される。同様に、欠陥マップバッファ４６６は欠陥マップ４１６において維持されている欠陥のリストをバッファし、メモリ装置のパワーアップ時にバッファ４６６にロードされる。
【００４５】
好ましい実施形態では、冗長データバッファ４６２と欠陥マップバッファ４６６との両方が、データの個々のエントリを格納するための個々のレジスタのセットを含む。欠陥列のアドレスは、欠陥マップバッファ４６６の個々のレジスタに所定順序で格納される。同様に、個々のアドレスの各々に関連付けられた個々の冗長データは、欠陥アドレスとそれに関連付けられた冗長データとの間にレジスタ対レジスタの対応関係が存在するように、冗長データバッファ４６２に格納される。このようにして、在来の方式とは違って、欠陥マップは、関連付けられた冗長データの位置を突き止めるためのインデックスを含まなくてもよい。
【００４６】
比較回路４６８は、本質的に、欠陥マップバッファ中のエントリの各々のための個々の比較器を提供する１対多数比較器である。各々の個々の比較器は、共通入力アドレスを、その個々のレジスタのうちの１つに格納されている欠陥マップバッファ内のアドレスエントリのうちの１つと比較する。以下の他の１つの実施形態では、冗長データバッファにおけるアドレス指定をメモリアレイのアドレス指定より精細なレベルまで解明するためにサブ列デコーダ(sub-column decoder)４５２がオプションで用いられる。そのオプションが実現されない場合には、冗長データバッファへの入力アドレスは本質的に列アドレスＡｙである。入力アドレスが現在アドレス指定されている列アドレスＡｙであるとき、欠陥マップバッファに登録されている欠陥列のアドレスの各々と比較される。一致するものが全くなければ、比較回路４６８は基本的に複数のＡＮＤゲート４６９を介して一致しない(NO-MATCH)信号Ｍ*を出力する。この信号Ｍ*は、データアウトバス４９２がアドレス指定されたデータラッチ４４０Ａからデータを取り出せるように、ユーザデータ転出ゲート４７２をイネーブルするために使用される。一方、一致があったならば、現在のアドレス位置が欠陥列であって、それに関連付けられた冗長データが代わりに使用されなければならないということを意味する。これは、一致するものを登録し、また一致（ＭＡＴＣＨ）信号Ｍを出力する対応する個々の比較器によって成し遂げられる。
【００４７】
冗長データバッファ４６２からデータアウトバス４９２への冗長データの転送は、転出ゲート４８２のセットにより制御される。特に、冗長データバッファの個々のレジスタの各々へのバスアクセスは、対応する転出ゲートによって制御される。したがって、現在のアドレスが特定の欠陥列アドレスと一致したとき、冗長データバッファ４６２の対応するレジスタの中の関連する冗長データがデータアウトバス４９２へ転送され得るように、対応する転出ゲートをイネーブルするために一致信号Ｍが使用される。
【００４８】
図６は、リモート冗長方式での読み出し操作の略タイミング図である。ホストは、開始読み出しアドレスを送り始めるために初期読み出しコマンドを発することによってメモリ装置における読み出し操作を開始する。その後に、実際の開始読み出しアドレスが送られる。その後、ホストは読み出しを実行するコマンドを発する。メモリ装置は、ビジー信号で応答し、さらに進んでデータのページを感知する。ユーザ部分と冗長部分とを含む、感知されたデータのページは、関連するデータラッチ４４０Ａおよび４４０Ａ’（図５を参照）にラッチされる。データのページがラッチされた後、リモート冗長方式は、冗長データをそのラッチから冗長データバッファ４６２にコピーするという付加ステップを必要とする。バッファされたデータが正しい場所に位置した後、メモリ装置はレディ信号で信号する。
【００４９】
その後、ホストは、データをデータラッチから外へ、データアウトバス４９２へストリーミングするために読み出し信号を発することができる。この外へのストリーミング操作中、欠陥のある列に遭遇するたびに、対応する冗長データが即座にストリームに挿入され得るようにデータアウトバス４９２に冗長データを代わりに冗長データバッファ４６２から受け取らせるために冗長データバッファ回路４６０は外へのストリーミングを制御する。次に遭遇した列に欠陥がないとき、冗長データバッファ回路４６０は、データアウトバス４９２がデータをデータラッチ４４０Ａから取り込むことを可能にし、このプロセスはページの終わりに達するまで続く。
【００５０】
図７は、１つの好ましい実施形態に従う、リモート冗長方式を採用した読み出し操作を示すフローチャートである。
パワーアップ
ステップ５１０：欠陥マップを不揮発性メモリから欠陥マップバッファへロードする。
読み出し
ステップ５２０：複数の列にわたってメモリセルからデータのページを読み出すための読み出しコマンドを受け取る。
ステップ５２２：“ビジー”を信号する。
ステップ５２４：メモリセルのページを感知してデータを対応するデータラッチにラッチする。
ステップ５２６：冗長データを冗長データラッチから冗長データバッファにロードする。
ステップ５２８：“レディ”を信号する。
Ｉ／Ｏ
ステップ５３０：欠陥マップバッファ中のものとの１対多数列アドレス比較を行いながら、ラッチされているデータを１列ずつ外へ、データバスへストリーミングする。
ステップ５３２：外へストリーミングされるべきデータの現在の列アドレスＡｙ＝欠陥マップバッファ中の不良のもののうちの１つか？一致があれば、ステップ５３４に進み、そうでなければステップ５３６に進む。
ステップ５３４：冗長データバッファからデータバスへの置換データの出力を可能にし、ステップ５３８に進む。
ステップ５３６：ユーザデータ部分からデータバスへの、アドレス指定されたデータの出力を可能にし、ステップ５３８に進む。
ステップ５３８：最後の列か？最後の列に達しているならばステップ５４０に進み、そうでなければステップ５３４で次の列に進む。
ステップ５４０：データのページは読み出された。
【００５１】
このように、本発明のリモート冗長方式では、メモリアレイのユーザ部分のためのアドレスだけが使用される。現在のアドレスが良好な（欠陥のない）位置のためのアドレスであるとき、データバスはデータラッチからデータを取り込む。一方、現在のアドレスが欠陥のある位置のためのアドレスであるとき、データバスはリモートバッファから冗長データを得る。
【００５２】
図８は、Ｉ／Ｏバスからデータを転送するように構成された冗長データバッファ回路を示す。この転入モードは、プログラム操作前に、プログラムされるべきデータのページがユーザデータラッチ４４０Ａのセットにラッチされるべきときに適用可能である。構成は、データの転送がデータインバス４９４から来る方向に行われることを除いて、図５の構成と同様である。ユーザデータ転入ゲート４７４のセットは、データインバス４９４からデータラッチ４４０Ａへのデータの転送を制御する。
【００５３】
転入モードでは、冗長データバッファ回路４６０も、転出ゲート４８２のセットの代わりに転入ゲート４８４のセットが採用されていることを除いて、図５に示されているものと同様である。
【００５４】
図９は、リモート冗長方式での書き込み操作の略タイミング図である。ホストは、開始書き込みアドレスを送り始めるために初期書き込みコマンドを発することによってメモリ装置における書き込み操作を開始する。その後に、実際の開始書き込みアドレスが送られる。その後、ホストは、書き込みデータをデータインバス４９４から中へ、データラッチ４４０Ａへストリーミングする信号を発する（図８参照）。この中へのストリーミングの間、欠陥列に遭遇するたびに、冗長データバッファ回路４６０は、欠陥列のための対応するデータを冗長データバッファ４６２に取り込む。このストリーミングプロセスは、ページの終わりに達するまで続く。ページが中へストリーミングされた後、リモート冗長方式は、冗長データを冗長データバッファ４６２からそのラッチ４４０Ａ’にコピーするという付加ステップを必要とする。
【００５５】
その後、ホストはプログラミングを実行するコマンドを発する。その後、メモリ装置はビジー信号を信号し、データのページをプログラムするように動作する。ページは、アレイのユーザ部分と冗長部分とを含む。データ全体がプログラム−ベリファイされたとき、メモリ装置はレディ信号で信号する。
【００５６】
図１０は、好ましい１つの実施形態に従う、リモート冗長方式を採用したプログラムデータロード操作を示すフローチャートである。
パワーアップ
ステップ５５０：欠陥マップを不揮発性メモリから欠陥マップバッファへロードする。
Ｉ／Ｏ
ステップ５６０：データのページを複数の列にわたってアドレス指定されたメモリセルに書き込むために書き込みコマンドを受け取る。
ステップ５６２：欠陥マップバッファ中のものとの１対多数列アドレス比較を行いながら、データバスからデータを１列ずつストリーミングする。
ステップ５６４：中へストリーミングされるべきデータの現在の列アドレスＡｙ＝欠陥マップバッファ中の不良のもののうちの１つか？一致があれば、ステップ５６６に進み、そうでなければステップ５７０に進む。
ステップ５６６：データバスからのデータの入力を可能にして、冗長データバッファ内の対応する位置にバッファする。
ステップ５６８：現在の列のデータラッチを“プログラムしない”状態にセットし、ステップ５７２に進む。
ステップ５７０：データバスからのデータの入力を可能にして、対応するデータラッチにラッチする。
ステップ５７２：最後の列か？最後の列に達しているならばステップ５８０に進み、そうでなければステップ５６４で次の列に進む。
ステップ５８０：冗長データバッファからデータを転送し、それらを対応する冗長データラッチにラッチする。これは、冗長アレイにアクセスするためにアドレスＡｙ’への切り替わりを必要とする１回限りの操作である。
プログラム
ステップ５９０：プログラムコマンドを受け取る。
ステップ５９２：“ビジー”を信号する。
ステップ５９４：ページ全体がプログラム−ベリファイされるまで、ラッチされているデータのページを書き込む。
ステップ５９６：“レディ”を信号する。
【００５７】
ビットレベル冗長サポート
他の１つの実施形態では、冗長データバッファ回路のアドレス粒状度は、列回路の粒状度と同じでなくてもよい。好ましくは、アドレスの単位は、列の分解能より精細な分解能を有する。例えば、列が１バイトの幅のものであって、１グループの８本のビット線が一度にアドレス指定されるならば、冗長データバッファはビット線レベルでアドレス指定され得る。
【００５８】
図５および図８の両方が、オプションのサブ列デコーダ４５２を含む冗長データバッファ回路４６０を示している。サブ列デコーダは、列アドレスＡｙと列オフセットアドレスＡｙ”とをさらにサブ列アドレスに復号する。これは、冗長リソースをより効率的に利用するという利点を有する。なぜならば、欠陥のある単一のビット線が他の１つの冗長ビット線により取って代わられることができ、必ずしも８ビット幅の１つの冗長列により取って代わられなくてもよいからである。
【００５９】
多段冗長サポート
明瞭性のために、冗長データバッファ回路４６０を採用するリモート冗長方式は、図４に示されているデータラッチ４４０Ａのような１セットのデータラッチで動作するように記載された。その利点は明らかである。なぜならば、ユーザアドレスだけが使用されるので、従来技術の低速の双方向アドレス指定方式が回避されるからである。
【００６０】
動作する列回路が２セット以上あるときには他の１つの利点も得られる。図４と関連して言及されたように、従来技術のシステムでは冗長データが置換列のラッチに局在するので、列回路が２段以上あるときにはさらなる問題が生じ得る。例えば、奇数列回路の場合に類似して、１セットの偶数列回路は偶数列にアクセスできるだけであり、従って奇数冗長列を使用することができない。この方式は、任意の数の列回路がそれらの相対位置に関わらずにアクセスし得る中央位置に全ての冗長データをバッファすることを可能にする。
【００６１】
図１１は、２セットのデータラッチにサービスする冗長データバッファ回路とデータバスとを概略的に示している。この構成では、冗長データバッファ回路４６０は、図５および図８に示されているものと同じ仕方でデータラッチの“Ａ”セット４４０Ａとともに動作する。データラッチの追加の“Ｂ”セット４４０Ｂがあっても、原理は同じである。すなわち、冗長データバッファ回路は、データラッチの“Ａ”セットまたは“Ｂ”セットと冗長データバッファ４６２との間のバス交換を制御するために使用される。一実施形態では、データラッチ転送を可能にするための信号Ｍは、それぞれ“Ａ”セットまたは“Ｂ”セットのためのＭA*許可信号またはＭB*許可信号を作るためにＡｙアドレス範囲を使用する段デコーダ４８０によってさらに復号される。
【００６２】
したがって、“Ａ”セットのデータラッチが動作しているときには、データラッチ４４０Ａとのバス転送がラッチ転送コントロール４７２Ａ／４７４ＡにおいてＭA*によって可能にされる。“Ｂ”セットのデータラッチが動作しているときには、データラッチ４４０Ｂとのバス転送がラッチ転送コントロール４７２Ｂ／４７４ＢにおいてＭB*によって可能にされる。これは、現在のアドレスが欠陥マップバッファ４６６中のどのアドレスとも一致しないときの動作である。一方、一致があるときには、信号ＭA*またはＭB*は非アクティブになり、バッファ転送コントロール４８２／４８４が信号Ｍによって作動可能にされる。その結果として、代わりにデータはデータバス４９２と冗長データバッファ４６２内の対応するレジスタとの間で交換される。
【００６３】
欠陥列のデータラッチにバッファされる冗長データ
本発明の他の１つの態様に従って、欠陥列ラッチ冗長方式は、欠陥のあるメモリ位置のための冗長データまたは置換データを、冗長データラッチから、対応する欠陥列のデータラッチのようなより容易にアクセスし得る位置へ再配置させる。この方式は、欠陥列が普通はビット線に存在する問題により引き起こされるのであって、関連する列回路に存在する問題によってはそれほど引き起こされないという事実に基づいている。したがって、例えば、ビット線は短絡して使用不能になり得るけれども、それらの関連するデータラッチと列デコーダとは動作可能な状態に留まりそうである。本発明は、感知およびプログラミングのようなメモリ操作が欠陥のあるビット線を介して実行され得ないときに、列回路が依然としてデータをバッファするために使用され得るということを認識している。
【００６４】
１つの好ましい実施形態では、普通は対応する冗長位置に関連付けられたデータラッチに格納される置換データをバッファするために、欠陥のある位置に関連付けられているデータラッチが使用される。このようにして、データバスへのデータのストリーミングに関する限りユーザ部分は実際上欠陥が存在しないかのように扱われ得る。従って、ユーザ部分をアドレス指定するためのアドレス指定方式だけが必要とされ、欠陥のある位置に遭遇するたびに冗長データラッチに切り替わる必要はない。
【００６５】
読み出し操作において、ユーザデータと冗長データとの両方を含むページが感知されてラッチされた後に、冗長データのコピーを冗長データラッチからユーザ部分に存在する対応する欠陥列に関連付けられたデータラッチへ置くために、付加的な操作が要求される。このようにして、データがデータバスへ出力されるとき、欠陥列に関わらずに、ユーザデータラッチだけがアクセスされなければならない。
【００６６】
書き込み操作において、書き込まれるべきデータのページは、始めに、欠陥のある列に関わらずにユーザデータラッチにラッチされる。このようにして、ユーザ部分は、データバスから中へのデータのストリーミングに関する限り実際上欠陥が存在しないかのように扱われ得る。データのコピーを欠陥列に関連付けられたデータラッチから対応する冗長データラッチへ置くために付加的な操作が要求される。プログラムしない状態を示す所定のデータも、欠陥列のデータラッチに、それらをそのようなものとして示すために、格納される。その後、ユーザデータラッチと冗長データラッチとの両方からのデータを含むページ全体がそれぞれのメモリセルにプログラムされ得る。
【００６７】
図１２は、欠陥列ラッチ冗長方式がその中で実現されるところの文脈を提供するコンパクトなメモリ装置の好ましい構成を概略的に示す。このメモリ装置は、本質的に図４に示されているものと類似する構造を有するけれども、冗長データバッファ回路４６０の必要がない。特に、メモリ装置は、メモリセルの２次元アレイ４００と、制御回路６１０と、行デコーダ４２０Ａおよび４２０Ｂと、列回路とを含む。
【００６８】
メモリアレイ４００は、行デコーダ４２０Ａ，４２０Ｂを介してワード線により、また列回路に結合されたビット線により、アドレス指定可能である。列回路は、感知回路４３０Ａ，４３０Ｂと、データラッチ６４０Ａ，６４０Ｂと、列デコーダ４５０Ａ，４５０Ｂと、データＩ／Ｏバス４９０とを含む。図４と関連して前に言及されたように、各感知回路のために１セットのデータラッチがあることが理解できる。
【００６９】
好ましい実施形態では、全ての偶数ビット線に結合された回路中の感知回路４３０Ａと、全ての奇数ビット線に結合された回路中の感知回路４３０Ｂとがある。このようにして、一緒に動作するとき、全てのビット線が並行して使用される。他の１つの実施形態では、１つ置きのビット線、すなわち偶数ビット線または奇数ビット線だけが並行して動作する。
【００７０】
濃密なパッキングを考慮して、行デコーダと列回路とは好ましくはアレイの両端に分散される。従って、行デコーダ４２０Ａおよび４２０Ｂは、それぞれ、アレイの左側および右側に配置されている。同様に、列回路“Ａ”および“Ｂ”は、それぞれ、アレイの下部および上部に配置されている。通常、列回路“Ａ”および“Ｂ”は、それぞれ、ビット線のインターリービングなセットにアクセスする。例えば、列回路“Ａ”は偶数番号ビット線へのアクセスを有し、列回路“Ｂ”は奇数番号ビット線へのアクセスを有する。便宜上、特に記されていなければ、以降の記述は、回路の包括的セットに向けられ、参照数字の添え字“Ａ”または“Ｂ”は省略される。
【００７１】
列回路の感知回路４３０は、１つの行に沿うメモリセルの１つのブロック（“ページ”とも称される）が並行して読み出されるかあるいはプログラムされることを可能にするセンス増幅器の１つのバンクとして実現される。１つの好ましい実施形態では、１つのページは、１，０２４バイトなどのメモリセルの１つの連続する行から構成される。他の１つの実施形態では、メモリセルの１つの行は複数のブロックまたはページに分割される。
【００７２】
制御回路６１０は、メモリアレイ４００に対するメモリ操作を実行するために行デコーダおよび列回路と協働する。制御回路内の状態マシン６１２は、メモリ操作のチップレベル制御を提供する。
【００７３】
メモリアレイ４００は、ユーザ部分４０２と冗長部分４０２’とにさらに分割されている。ユーザ部分４０２は、アドレスバス４９６を介して供給されるユーザアドレスＡｙにより列毎にアクセス可能である。冗長部分４０２’は、ユーザによってアクセスすることはできず、それ自身の保護されているアドレスＡｙ’を有する。冗長部分は、ユーザ部分に見出された欠陥のある列に代わる、所定数の冗長列または置換列を提供する。欠陥列のリストは欠陥マップ４１６に登録され、これは好ましくは不揮発性メモリアレイ４０２に格納される。例えば、冗長領域４０２’は、各々１バイト幅である８つの置換列を提供することができる。これは、原則として、ユーザ部分に発生することのある欠陥のある８つまでの列の置換を可能にする。
【００７４】
図１２に示されている列回路構造では、ユーザデータラッチ６４０のグループとデータインバス４９４との間のデータの交換は、ユーザ列デコーダ４５０によって制御される。ユーザ列デコーダ４５０は、ユーザ列アドレスＡｙを復号し、ユーザ列におけるデータラッチのグループのアクセスがデータインバス４９４にアクセスすることを可能にする。同様に、冗長データラッチのグループ６４０’とデータインバス４９４との間のデータの交換は冗長列デコーダ４５０’によって制御される。冗長列デコーダ４５０’は、冗長列アドレスＡｙ’を復号し、冗長列におけるデータラッチのグループのアクセスがＩ／Ｏバスにアクセスすることを可能にする。
【００７５】
本発明は、ユーザ列および冗長列のデータラッチ間のデータの往復を可能にする付加的な構造を提供する。
図１３は、双方向アドレス指定を採用することを必要とせずに他の１つの列冗長方式を実現するためにユーザデータラッチと冗長データラッチとの間でデータを往復させるためのデータラッチバッファを概略的に示す。
【００７６】
好ましい実施形態では、データラッチバッファ６２０が出力データバス４９２と入力データバス４９４との間に設けられる。データラッチバッファ６２０は、直列に接続された第１のシフトレジスタ６２２と第２のシフトレジスタ６４４とを含む。第１のシフトレジスタ６２２と第２のシフトレジスタ６２４とはパイプライン式に動作し、出力バス４９２からのデータ単位は、クロック信号ＣＬＫにより制御されて１単位ずつこれら２つのレジスタを通してシフトされて入力バス４９４に戻される。このようにして、Ｉ／Ｏバス４９０の出力部分および入力部分の両方が同時に動作することができる。
【００７７】
制御回路６１０は、ユーザ列および冗長列のデータラッチ間のアドレス指定および転送制御を提供する。例えば、１ページのデータがユーザデータラッチ４５０および冗長データラッチ４５０’にラッチされた後、冗長データラッチ４５０’内のデータは、欠陥列の対応するデータラッチにコピーされる。制御回路６１０は、冗長列アドレスＡｙ’を冗長列デコーダ４５０’に提供し、冗長データ単位を冗長データラッチ６４０’からデータ出力バス４９２を介して１つずつデータラッチバッファ６２０内へシフトさせる。シフトさせられた冗長データ単位はデータラッチバッファの他方の端から出てきて入力データバス４９４に入る。制御回路６１０にロードされた欠陥マップ６１６を参照することにより、対応する欠陥列アドレスＡｙが生成されて、冗長データ単位を欠陥列内のそれらに対応するラッチに向けるためにユーザ列デコーダ４５０により使用される。
【００７８】
同様に、原理が欠陥列のデータラッチから対応する冗長データラッチへの転送に適用される。この場合、欠陥マップに基づいて、欠陥列のデータラッチは１つずつアクセスされてデータラッチバッファ６２０を通ってシフトさせられる。データラッチバッファの他方の端において、冗長データ単位は、冗長列デコーダ４５０’によるＡｙ’の適切な復号を介して、それらのそれぞれの冗長データラッチに向けられる。
【００７９】
図１４は、欠陥列ラッチ冗長方式での読み出し操作の略タイミング図である。ホストは、開始読み出しアドレスを送り始めるために初期読み出しコマンドを発することによってメモリ装置における読み出し操作を開始する。その後に、実際の開始読み出しアドレスが送られる。その後、ホストは、読み出しを実行するコマンドを発する。メモリ装置は、ビジー信号で応答し、さらに進んでデータのページを感知する。ユーザ部分と冗長部分とを含む感知されたデータのページは、関連するデータラッチ４４０Ａおよび４４０Ａ’にラッチされる（図１３参照）。データのページがラッチされた後、欠陥列ラッチ冗長方式は、冗長データをそれらのラッチから対応する欠陥列のデータラッチにコピーするという付加ステップを要求する。冗長データが対応する欠陥列にラッチされた後、メモリ装置はレディ信号で信号する。本質的に、メモリ装置が所定のタイミング仕様を有するとき、前述した付加ステップは、ビジーとレディとにより画定される期間のために許される最大時間の中で完了されなければならない。
【００８０】
その後、ホストはデータをユーザデータラッチ４４０から外へ、データアウトバス４９２へストリーミングするために読み出し信号を発することができる。欠陥列のデータラッチは、今、対応する冗長データを包含しているので、従来の場合のように第２セットのアドレスＡｙ’を用いてデータを冗長データラッチ４４０’から取り出す必要はない。
【００８１】
図１５は、好ましい１つの実施形態に従う、欠陥列ラッチ冗長方式を採用した読み出し操作を示すフローチャートである。
パワーアップ
ステップ７１０：欠陥マップを不揮発性メモリからコントローラＲＡＭにロードする。
読み出し
ステップ７２０：複数の列にわたってメモリセルからユーザデータおよび冗長データを含むページを読み出すための読み出しコマンドを受け取る。
ステップ７２２：“ビジー”を信号する。
ステップ７２４：メモリセルのページを感知してデータを対応するデータラッチにラッチする。
ステップ７２６：データを冗長データラッチから対応する欠陥列のものにコピーする。
ステップ７２８：“レディ”を信号する。
Ｉ／Ｏ
ステップ７３０：欠陥列に関わらず、データをユーザデータラッチからデータバスに１列ずつ外へストリーミングする。
ステップ７４０：データのページは読み出された。
【００８２】
このように、本発明の欠陥列ラッチ冗長方式では、データを外へストリーミングさせるためにメモリアレイのユーザ部分のためのアドレスだけが使用され、ユーザデータラッチだけがアクセスされる必要がある。
【００８３】
図１６は、欠陥列ラッチ冗長方式での書き込み操作の略タイミング図である。ホストは、開始書き込みアドレスを送り始めるために初期書き込みコマンドを発することによってメモリ装置における書き込み操作を開始する。その後に、実際の開始書き込みアドレスが送られる。その後、ホストは、対応する列が欠陥列か否かに関わらず、書き込みデータをデータインバス４９４からデータラッチ４４０（図８参照）にストリーミングするために信号を発する。その後、ホストはプログラミングを実行するためのコマンドを発する。その後、メモリ装置は、あたかも続けてデータのページをプログラムするかのようにビジー信号を信号する。しかし、制御回路（図１３参照）は、データを欠陥列のラッチから対応する冗長列の冗長データラッチにコピーするという付加ステップを欠陥列ラッチ冗長方式が必要とするので、実際のプログラミングを延期する。そのデータをコピーした後、欠陥列のラッチは、プログラムしない状態を示す所定の値にセットされる。
【００８４】
制御回路は、その後、続けてそのページをメモリにプログラムする。そのページは、アレイのユーザ部分と冗長部分とを含む。全てのデータがプログラム−ベリファイされたとき、メモリ装置はレディ信号で信号する。
【００８５】
図１７は、好ましい１つの実施形態に従う、欠陥列ラッチ冗長方式を採用したプログラムデータロード操作を示すフローチャートである。
パワーアップ
ステップ７６０：欠陥マップを不揮発性メモリからコントローラＲＡＭにロードする。
Ｉ／Ｏ
ステップ７７０：データのページを複数の列にわたってアドレス指定されたメモリセルに書き込むために書き込みコマンドを受け取る。
ステップ７７２：欠陥列に関わらず、書き込まれるべきデータのページをユーザデータラッチにストリーミングする。
ステップ７７４：“ビジー”を信号する。
ユーザデータラッチから冗長データラッチへの転送
ステップ７７６：データを欠陥列のユーザラッチから冗長列の対応する冗長ラッチに転送する。
ステップ７７８：全ての欠陥列を、それらの関連するユーザデータラッチの各々に所定データ値を書き込むことによって、マークする。
プログラム
ステップ７８０：プログラムコマンドを受け取る。
ステップ７８２：ページ全体がプログラム−ベリファイされるまで、ユーザデータおよび冗長データを含むページを書き込む。
ステップ７８４：“レディ”を信号する。
【００８６】
種々の列冗長方式のための例を挙げて説明がなされたけれども、欠陥のあるメモリ位置のための他の置換単位が可能であることを当業者は容易に認識することができる。
【００８７】
本発明の種々の態様をある実施形態に関して説明してきたが、本発明が添付の特許請求の範囲の全範囲内においてその権利が保護されるべきであることが理解できよう。
【図面の簡単な説明】
【００８８】
【図１】冗長部分だけから冗長データを入手できる在来の列冗長方式のメモリ装置を示す。
【図２Ａ】在来の冗長方式での読み出し操作の略タイミング図である。
【図２Ｂ】在来の列冗長方式での読み出し操作を示すフローチャートである。
【図３Ａ】在来の冗長方式での書き込み操作の略タイミング図である。
【図３Ｂ】在来の列冗長方式でのプログラム操作を示すフローチャートである。
【図４】リモート冗長方式がその中で実現されるところの文脈を提供するコンパクトなメモリ装置の好ましい構成を概略的に示す。
【図５】データをＩ／Ｏバスへ転送するように構成された冗長データバッファ回路を示す。
【図６】リモート冗長方式での読み出し操作の略タイミング図である。
【図７】好ましい１つの実施形態に従う、リモート冗長方式を採用した読み出し操作を示すフローチャートである。
【図８】Ｉ／Ｏバスからデータを転送するように構成された冗長データバッファ回路を示す。
【図９】リモート冗長方式での書き込み操作の略タイミング図である。
【図１０】好ましい１つの実施形態に従う、リモート冗長方式を採用したプログラムデータロード操作を示すフローチャートである。
【図１１】２セットのデータラッチにサービスする冗長データバッファ回路とデータバスとを概略的に示す。
【図１２】欠陥列ラッチ冗長方式がその中で実現されるところの文脈を提供するコンパクトなメモリ装置の好ましい構成を概略的に示す。
【図１３】双方向アドレス指定を採用することを必要とせずに他の１つの列冗長方式を実現するためにユーザデータラッチと冗長データラッチとの間でデータを往復させるためのデータラッチバッファを概略的に示す。
【図１４】欠陥列ラッチ冗長方式での読み出し操作の略タイミング図である。
【図１５】好ましい１つの実施形態に従う、欠陥列ラッチ冗長方式を採用した読み出し操作を示すフローチャートである。
【図１６】欠陥列ラッチ冗長方式での書き込み操作の略タイミング図である。
【図１７】好ましい１つの実施形態に従う、欠陥列ラッチ冗長方式を採用したプログラムデータロード操作を示すフローチャートである。
【図１】
2009531797.tif 000003
【図２Ａ】
2009531797.tif 000004
【図２Ｂ】
2009531797.tif 000005
【図３Ａ】
2009531797.tif 000006
【図３Ｂ】
2009531797.tif 000007
【図４】
2009531797.tif 000008
【図５】
2009531797.tif 000009
【図６】
2009531797.tif 000010
【図７】
2009531797.tif 000011
【図８】
2009531797.tif 000012
【図９】
2009531797.tif 000013
【図１０】
2009531797.tif 000014
【図１１】
2009531797.tif 000015
【図１２】
2009531797.tif 000016
【図１３】
2009531797.tif 000017
【図１４】
2009531797.tif 000018
【図１５】
2009531797.tif 000019
【図１６】
2009531797.tif 000020
【図１７】
2009531797.tif 000021
【国際調査報告】
2009531797.tif 000022
2009531797.tif 000023