(57)【要約】本発明は、メモリセルアレイ内の不良列を除去することができる不揮発性メモリを提供する。本発明の他の態様によれば、代替の冗長列が、除去された列に取って代わることができる。これらプロセスは両方とも、外側に透明で、これによりメモリの取り付けられたホストまたはコントローラで外部から管理する必要のない方法で、メモリ上で実施される。不良列のインベントリについてはメモリ上で維持可能である。電源投入で、不良列のリストを用いて不良列を取り出す。メモリは、不良列にとって代わるように用いてもよい多数の冗長列も含みうる。
2007517353.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリにおいて、
複数のビットラインに配置され、１つ以上の行を形成する不揮発性記憶ユニットのアレイと、
データ転送ラインと、
前記ビットラインとデータ転送ラインとのそれぞれのセットの間でデータを転送するために、前記１つ以上のビットラインとデータ転送ラインとのそれぞれのセットに対して各々接続可能な複数のデータ転送回路であって、それぞれの列選択信号に応じて、データが前記データ転送回路の各々とデータ転送ラインとの間で転送される複数のデータ転送回路と、
クロック動作シフトレジスタを形成するように接続され、クロック入力部をもち、それぞれの列選択信号を供給するために、それぞれのデータ転送回路に各々接続可能であり、各々がヒューズ入力部をもつ複数の列選択回路であって、ヒューズ信号が前記ヒューズ入力部でアサートされると、列選択回路が、クロックを待つことなく、またそのそれぞれの列選択信号をアサートすることなく、シフトレジスタパルスをシフトレジスタの次段に通過させる列選択回路と、
を備える不揮発性メモリ。
【請求項２】
前記データ転送回路の各々は、
前記ビットラインとデータ転送ラインとのそれぞれのセット間で転送されるデータを記憶するために、１つ以上の一時データ記憶ユニットのセットを備える請求項１記載の不揮発性メモリ。
【請求項３】
前記データ転送回路の各々は、
それぞれの列選択信号に応じて前記データ転送ラインに接続可能な出力回路であって、前記一時データ記憶ユニットのセットが複数個あり、前記出力回路が前記複数の一時データ記憶ユニットの各々に対してランダムにアクセスすることができる出力回路をさらに備える請求項２記載の不揮発性メモリ。
【請求項４】
前記データ転送回路の各々は、
複数のセンス増幅器であって、前記ビットラインのそれぞれのセットが複数個あり、前記センス増幅器の数が前記それぞれのセットのビットライン数と同じであり、各ビットラインが、センス増幅器のうちの対応する１つを通して前記複数の一時データ記憶ユニットに対してランダムにアクセスすることができるセンス増幅器をさらに備える請求項３記載の不揮発性メモリ。
【請求項５】
前記データ転送回路の各々は、
出力回路であって、前記一時データ記憶ユニットのセットが、前記出力回路に接続される前記一時データ記憶ユニットの最後のユニットと先入れ先出し法で複数個接続され、前記ビットラインの対応するセットが、前記一時データ記憶ユニットの最初のユニットと接続可能であり、前記出力回路が、それぞれの列選択信号に応じて前記データ転送ラインと接続可能である出力回路をさらに備える請求項２記載の不揮発性メモリ。
【請求項６】
前記データ転送回路の各々は、
複数のセンス増幅器であって、前記ビットラインのそれぞれのセットが複数個あり、前記センス増幅器の数が前記それぞれのセットのビットライン数と同じであり、各ビットラインが、前記センス増幅器のうちの対応する１つを通して前記一時データ記憶ユニットの最初のユニットと接続可能であるセンス増幅器をさらに備える請求項５記載の不揮発性メモリ。
【請求項７】
前記データ転送回路の各々に対して、セット内の前記一時データ記憶ユニットの数が前記ビットラインの対応するセット内のビットライン数の倍数である請求項６記載の不揮発性メモリ。
【請求項８】
前記不揮発性記憶ユニットの各々がＮビットのデータを記憶することができ、前記一時データ記憶ユニットの数に対するビットライン数の比率がＮであり、Ｎが１以上の整数である請求項７記載の不揮発性メモリ。
【請求項９】
前記データ転送回路の各々は、
入力回路であって、前記一時データ記憶ユニットのセットが、前記入力回路に接続される先入れ先出し法で複数個接続され、前記ビットラインの対応するセットが、前記一時データ記憶ユニットの最初のユニットと接続可能であり、前記入力回路が、それぞれの列選択信号に応じて前記データ転送ラインと接続可能である入力回路をさらに備える請求項２記載の不揮発性メモリ。
【請求項１０】
前記列選択回路の各々は、
マスタレジスタおよびスレイブレジスタであって、前記ヒューズ信号がデアサートされると、スレイブレジスタの出力に応じて前記列選択信号がアサートされるマスタレジスタおよびスレイブレジスタを備える請求項１記載の不揮発性メモリ。
【請求項１１】
前記列選択回路の各々は、
マスタレジスタおよびスレイブレジスタであって、前記ヒューズ信号がデアサートされると、スレイブレジスタの出力に応じて前記列選択信号がアサートされるマスタレジスタおよびスレイブレジスタを備える請求項１０記載の不揮発性メモリ。
【請求項１２】
それぞれの各列選択回路でアサートされる前記ヒューズ信号に応じて、対応するマスタおよびスレイブレジスタの各々が非クロックバッファまたはインバータに変換される請求項１１記載の不揮発性メモリ。
【請求項１３】
不良列情報を含むＲＯＭメモリ部であって、前記ヒューズ信号が前記不良列情報から判定されるＲＯＭメモリ部をさらに備える請求項１記載の不揮発性メモリ。
【請求項１４】
前記ヒューズ信号は、電源投入でメモリによって判定される請求項１３記載の不揮発性メモリ。
【請求項１５】
前記シフトレジスタの各々が方向制御信号を受け入れるために接続され、前記方向制御信号がシフトレジスタでアサートされると、前記列選択回路の各々が、隣接するシフトレジスタからその左側に入力されるシフトレジスタを受け入れるために接続され、前記方向制御信号がシフトレジスタでデアサートされると、前記列選択回路の各々が、隣接するシフトレジスタからその右側に入力されるシフトレジスタを受け入れるために接続される請求項１記載の不揮発性メモリ。
【請求項１６】
メモリシステム回路において、
コントローラと、
コントローラに接続される1つ以上の独立して制御可能な不揮発性データ記憶セクションを備えるメモリであって、前記記憶セクションの各々は、
行および列に配置される不揮発性ユーザデータ記憶ユニットのアレイと、
不良列情報を含むメモリ部と、
アレイと前記不良列情報を含むメモリ部とに接続される列選択回路であって、不良列が、コントローラに透明な方法で前記不良列情報に基づいて置き換えられる列選択回路と、を備えるメモリと、
を備えるメモリシステム回路。
【請求項１７】
前記ユーザデータ記憶ユニットは、多状態記憶ユニットである請求項１６記載のメモリシステム回路。
【請求項１８】
集積回路において、
行および列で配置される複数の不揮発性記憶ユニットと、
前記記憶ユニットの列に結合される複数のプログラミング回路と、
前記記憶ユニットの列に結合される複数のセンス増幅器と、
プログラミング回路または感知回路のいずれか、或いは両方に結合される一時的にデータを記憶させることができる複数のラッチ回路と、
前記記憶ユニットに結合される複数の入力回路と、
前記記憶ユニットに結合される複数の出力回路と、
不良列情報を記憶するＲＯＭメモリと、
前記ＲＯＭメモリ部と結合される複数のポインタシフトレジスタ段を備えるシフトレジスタであって、各段がクロック入力部をもち、前記不良列情報で特定される不良列に対応する段を除き、プログラミング、検知、データ記憶、入力回路、および／または出力回路のうちの１つ、或いは複数のイネーブル段に結合されるシフトレジスタと、
を備える集積回路。
【請求項１９】
前記メモリセルは、フローティングゲート、フラッシュ、ＥＥＰＲＯＭ、またはＥＰＲＯＭメモリセルである請求項１８記載の集積回路。
【請求項２０】
前記シフトレジスタの各段は、マスタ・スレイブレジスタを備える請求項１８記載の集積回路。
【請求項２１】
前記記憶ユニットは、多状態メモリセルである請求項１８記載の集積回路。
【請求項２２】
前記複数のラッチ回路の組み合わせは、複数ビットの情報を記憶するように割り当て可能である請求項１８記載の集積回路。
【請求項２３】
集積回路を操作する方法において、
メモリセルの複数の列のそれぞれの１つと関連付けられるデータを保持するために複数のラッチを準備するステップと、
それぞれのラッチのイネーブル入力部と結合される出力部をもつ複数段を備えるシフトレジスタを準備するステップと、
１つ以上のシフトレジスタ段を除去するステップと、
対応する第１のラッチの入力ラインへの結合を可能にするために、前記シフトレジスタの第１の段にストローブビットをロードするステップと、
対応する次のラッチの入力ラインへの結合を可能にするために、前記シフトレジスタの第１の段から次の段にストローブビットを前進させるようにシフトレジスタの計時を行うステップであって、段が除去されると、計時されることなく、また除去段により入力ラインへの対応するラッチが可能になることなく、ストローブビットが除去段を通して前進させるステップと、
を含む方法。
【請求項２４】
前記メモリセルは、多状態メモリセルである請求項２３記載の方法。
【請求項２５】
前記集積回路上のメモリ部を読み出すステップをさらに含み、前記１つ以上のシフトレジスタを除去するステップが前記メモリ部のコンテンツに基づく請求項２３記載の方法。
【請求項２６】
前記ストローブビットが前記シフトレジスタの最終段に達すると、制御信号を前記シフトレジスタにアサートするステップであって、前記制御信号に応じて、前記シフトレジスタが、前記シフトレジスタの最終段から前段にストローブビットを前進させるステップをさらに含む請求項２３記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、不揮発性メモリおよびその操作に関し、さらに詳細には、データの読み出しおよび書き込み時に、これらメモリの不良部分を無効化するための技術に関する。
【背景技術】
【０００２】
本発明の原則は、現在あって開発中の新規技術を用いるように意図されるさまざまなタイプの不揮発性メモリに対して適用される。しかし、本発明の実装例は、フラッシュの電気的に消去可能でプログラム可能な読み出し専用メモリ（ＥＥＰＲＯＭ）に関して説明され、記憶素子はフローティングゲートである。
【０００３】
多数の構成が不揮発性メモリで用いられる。１つの設計におけるＮＯＲアレイは、隣接するビット（列）ラインと、ワード（行）ラインに接続されるコントロールゲートとの間で接続されるメモリセルをもつ。個々のセルは、直列で形成される選択トランジスタの有無にかかわらず、１つのフローティングゲートトランジスタ、或いは１つの選択トランジスタで分離される２つのフローティングゲートトランジスタのいずれかを含む。このようなアレイの例や記憶システムでの利用については、サンディスク  コーポレイションによる次の米国特許および米国特許出願で見いだされ、これらの特許および特許出願は、その全体が本願明細書において参照により援用されている。これらの特許および特許出願とは、米国特許特許第５，０９５，３４４号（特許文献１）、第５，１７２，３３８号（特許文献２）、第５，６０２，９８７号（特許文献３）、第５，６６３，９０１号（特許文献４）、第５，４３０，８５９号（特許文献５）、第５，６５７，３３２号（特許文献６）、第５，７１２，１８０号（特許文献７）、第５，８９０，１９２号（特許文献８）、第６，１５１，２４８号（特許文献９）、第６，４２６，８９３号（特許文献１０）、および第６，５１２，２６３号（特許文献１１）である。
【０００４】
１つの設計のＮＡＮＤアレイは、選択トランジスタを通していずれかの端部においてビットラインと基準電位との間における直列ストリングで接続される８個、１６個、或いは場合によっては３２個といった多数のメモリセルをもつ。ワードラインは、異なる直列ストリングでセルのコントロールゲートと接続されている。このようなアレイやこの操作の関連する例については、米国特許第６，５２２，５８０号（特許文献１２）で見いだされている。この特許も、その全体が本願明細書において参照により援用されている。
【０００５】
メモリにはしばしば欠陥部分があるが、これは製造プロセスから、或いは装置の操作中に生ずる。前に参照により援用されている米国特許第５，６０２，９８７号（特許文献３）、または本願明細書において参照により援用されている米国特許第５，３１５，５４１号（特許文献１３）、第５，２００，９５９号（特許文献１４）、および第５，４２８，６２１号（特許文献１５）で説明されているようなメモリの誤り訂正符号または再マップ部分を含むこれらの欠陥を管理するための多数の技術が存在する。例えば、装置は一般に、出荷される前に徹底的にテストされる。テストにより、排除される必要のあるメモリの不良部分を見つけ出す。装置の出荷前、これらの欠陥についての情報は、例えば、メモリアレイのＲＯＭ領域、或いは別個のＲＯＭ装置に記憶され、電源投入で、コントローラがメモリの不良部分を良好部分と置き換えることができるように、この情報がコントローラにより読み出され、その後、使用される。読み出し、または書き込み時、コントローラは、この再マッピングのため、コントローラのメモリ内のポインタ構造を参照する必要がある。コントローラにこの処理を管理させることは、コントローラとメモリ部との間で多数の情報交換を必要とするという不利な点があり、コントローラそれ自体の中であっても、データが転送されるときはいつでも、ポインタが読まれるようにする必要がある。さらに、コントローラをもたないこのような不揮発性メモリに対して、埋め込まれた実施形態の適用例がある。
【特許文献１】米国特許第５，０９５，３４４号
【特許文献２】米国特許第５，１７２，３３８号
【特許文献３】米国特許第５，６０２，９８７号
【特許文献４】米国特許第５，６６３，９０１号
【特許文献５】米国特許第５，４３０，８５９号
【特許文献６】米国特許第５，６５７，３３２号
【特許文献７】米国特許第５，７１２，１８０号
【特許文献８】米国特許第５，８９０，１９２号
【特許文献９】米国特許第６，１５１，２４８号
【特許文献１０】米国特許第６，４２６，８９３号
【特許文献１１】米国特許第６，５１２，２６３号
【特許文献１２】米国特許第６，５２２，５８０号
【特許文献１３】米国特許第５，３１５，５４１号
【特許文献１４】米国特許第５，２００，９５９号
【特許文献１５】米国特許第５，４２８，６２１号
【特許文献１６】米国特許出願第１０／０８６，４９５号
【特許文献１７】米国特許第６，５６０，１４６号
【特許文献１８】米国特許出願第１０／２５４，４８３号
【特許文献１９】米国特許出願第１０／２５４，９１９号
【特許文献２０】米国特許出願第１０／６６５，８２８号
【発明の開示】
【０００６】
本発明は、メモリセルアレイ内の不良列を除去することができる不揮発性メモリを提供する。本発明の他の態様によれば、代替の冗長列が、除去された列に取って代わることができる。これら処理は両方とも、外側に透明で、これによりメモリの取り付けられたホストまたはコントローラで外部から管理する必要のない方法で、メモリ上で実施される。
【０００７】
本発明は、読み出される、或いはメモリセルに書き込まれるデータを保持するために、不揮発性記憶ユニットの列のブロックに割り当てられる選択回路にアクセスする技術を提供する。特定の実施形態において、メモリセルは、シフトレジスタをもつ多状態メモリであり、これが、アレイの各列ブロックに対する段をもつ列選択信号を供給する。ストローブパルスはこのシフトレジスタを通してシフトされ、各クロックで異なる列ブロックを可能にする。ストローブにより動作可能にされた特定の選択回路は、その後、ある操作を行なう。読み出しモードで、選択された選択回路は、メモリ回路からの出力のために、記憶情報を出力ラインを介して出力バッファに転送する。プログラミング前のデータロードモード中、選択された選択回路は、入力バッファからデータを受け取り、このデータを各列に対するデータラッチに入れる。このデータはメモリセル内に書き込まれる。シフトレジスタの各段が、これによりシフトレジスタモードから除去することができる回路をもち、この場合、列選択信号をアサートせず、次のクロック信号を待たずに次のバイト上にストローブを渡す。
【０００８】
不良列のインベントリについてはメモリ上で維持可能である。代表的な実施形態において、不良列アドレスのこのインベントリは、メモリがテストされて、メモリ上の指定されたＲＯＭブロック内に記憶されるとコンパイルすることができる。電源投入で、ＲＯＭブロックが最初に読み出され、不良列アドレスのリストがアドレスレジスタにロードされる。シフトレジスタはその後、ストローブパルスで走査される。不良列アドレスが到達すると、シフトレジスタ内の列隔離ラッチがＳＫＩＰ状態に設定される。
【０００９】
メモリは、不良列にとって代わるように用いてもよい多数の冗長列も含みうる。これらの列はメモリ外からの置き換え列として扱われず、その代わりに、冗長列のシフトレジスタ段が正常列のシフトレジスタ段に接続され、ストローブパルスが、適切な数の代替列を可能にするように継続する。
【００１０】
代表的な実施形態において、主アレイは、左右のサブアレイの中間に配置される冗長列をもつ小ページサイズ（５１２のユーザバイトに少数の追加のオーバーヘッドバイトを加えたもの）を受け入れるようにサイズを定めた２つのサブアレイに分けられる。すなわち、これら２つのサブアレイが冗長列を共有する。効果的に不良列の取り換えを管理するために、双方向シフトレジスタが実行され、ここでストローブは左のサブアレイにおいて左から右に移動し、ストローブは右のサブアレイにおいて右から左に移動する。
【００１１】
本発明のさらなる態様、特徴、および利点は、添付図面と関連して説明されるべきである以下の代表的な実施形態における説明に含まれる。
【発明を実施するための最良の形態】
【００１２】
図１〜６を参照すると、特定の例を示すために、本発明のさまざまな態様が実行される特定の不揮発性メモリシステムが説明されている。図１は、前に参照により援用されている米国特許第６，５２２，５８０号（特許文献１２）で説明されているようなフラッシュメモリシステムのブロック図である。マトリクスに配置された複数のメモリセルＭを含むメモリセルアレイ１は、列制御回路２、行制御回路３、ｃソース制御回路４、ｃ−ｐウェル制御回路５によって制御される。プログラミング動作中にメモリセル（Ｍ）の状態を判定して、プログラミングを進めるか、或いはプログラミングを禁止するためのビットライン（ＢＬ）の電位レベルを制御するために、メモリセル（Ｍ）に記憶されたデータを読み出すように列制御回路２がメモリセルアレイ１のビットライン（ＢＬ）に接続される。ワードライン（ＷＬ）のうちの１つを選択し、読み出し電圧を印加し、列制御回路２で制御されるビットライン電位レベルと組み合わされたプログラミング電圧を印加し、メモリセル（Ｍ）が形成される（図２ｂにおいて、「ウェルＲ」或いは「ウェルＬ」とラベル付けされている）ｐタイプ領域の電圧と結合される消去電圧を印加するために、行制御回路３がワードライン（ＷＬ）に結合される。ｃソース制御回路４は、メモリセル（Ｍ）と接続される１つ以上の（図２ｂにおいて「ｃソースＬ」および「ｃソースＲ」とラベル付けされている）共通ソースラインを制御する。ｃ−ｐウェル制御回路５はｃ−ｐ−ウェルの電圧を制御する。ある実施形態において、（図２ｂで示されている２つではなく）１つのｐウェルがあり、（別個のｃソースＬおよびｃソースＲではなく）１つのｃソース接続がある。
【００１３】
メモリセル（Ｍ）に記憶されるデータは、列制御回路２により読み出され、入出力ラインおよびデータ入出力バッファ６を介して外部入出力ラインに出力される。メモリセルに記憶されるプログラミングデータは、外部入出力ラインを介してデータ入出力バッファ６に入力され、列制御回路２に転送される。外部入出力ラインはコントローラ２０に接続される。
【００１４】
フラッシュメモリ装置を制御するためのコマンドデータは、コントローラ２０と接続される外部制御ラインに接続されるコマンドインターフェイスに入力される。コマンドデータはどの操作が求められるかをフラッシュメモリに知らせる。入力されるコマンドは、列制御回路２、行制御回路３、ｃソース制御回路４、ｃ−ｐウェル制御回路５、データ入出力バッファ６を制御する状態マシーン８に転送される。状態マシーン８は、ＲＥＡＤＹ／ＢＵＳＹ（レディー／ビジー）またはＰＡＳＳ／ＦＡＩＬ（パス／フェイル）といったフラッシュメモリの状況データを出力することができる。
【００１５】
コントローラ２０は、パソコン、デジタルカメラ、携帯情報端末などのホストシステムと接続されるか、或いは接続可能である。メモリセルアレイ１にデータを記憶したり、或いはメモリセルアレイ１から読み出すといったコマンドを開始し、このようなデータをそれぞれ供給したり、或いは受け取るのはホストである。コントローラは、このようなコマンドを、コマンド回路７で解釈し、かつ実行することができるコマンド信号に変換する。ユーザデータがメモリアレイに書き込まれるか、或いはメモリアレイから読み出されるために、コントローラは典型的にバッファメモリも含む。典型的なメモリシステムは、コントローラ２０を含む１つの集積回路チップ２１と、各々がメモリアレイおよび関連する制御回路、入出力回路および状態マシーン回路を含む１つ以上の集積回路チップ２２とを含む。この傾向は、当然ながら、１つ以上の集積回路チップ上にシステムのメモリアレイおよび制御回路を統合するというものである。メモリシステムはホストシステムの一部として埋め込まれたり、或いはホストシステムのはめ合いソケット中に取り外し可能に挿入可能なメモリカードに含められる。このようなカードが全メモリシステムを含むか、或いは周辺回路と関連付けられたコントローラおよびメモリアレイを別個のカードに設ける。
【００１６】
メモリセルアレイ１の構造例が図２Ａおよび２Ｂを参照しながら示されているが、この例についてはさらに、２００２年２月２７日に出願され、２００３年８月２８日に米国公開特許出願第２００３０１６１８２号として公開されたヤン・リー、ジアン・チェン、ラウル−エイドリアン・セルニアによる「不揮発性メモリのプログラム妨害および読み出し妨害を低減するための処理技法」という米国特許出願第１０／０８６，４９５号（特許文献１５）で説明されている。この特許出願は、本願明細書において参照により援用されている。ＮＡＮＤタイプのフラッシュＥＥＰＲＯＭが例として説明されている。メモリセル（Ｍ）は、特定の例において１０２４ブロックに分割される。各ブロックに記憶されるデータは同時に消去され、このブロックが、同時に消去可能なセル数の最小単位である。米国特許出願の「不揮発性メモリのプログラム妨害および読み出し妨害を低減するための処理技法」（特許文献１６）の代表的な実施形態において、小ページサイズ（５１２バイト）に合うサイズの左右アレイに主アレイを分割することと、他の態様とがさらに詳細に示されている。ビットラインも、左ビットライン（ＢＬＬ）と右ビットライン（ＢＬＲ）とに分割される。以下に説明するように、多数の冗長列が２つのサブアレイの中間に配置される。各ゲート電極でワードライン（ＷＬ０〜ＷＬ１５）に接続される１６個のメモリセルが直列に接続され、ＮＡＮＤセルユニットを形成する。ＮＡＮＤセルユニットの１つの端子は、ゲート電極が第１の選択ゲートライン（ＳＧＤＬまたはＳＧＤＲ）に結合される第１の選択トランジスタを介して対応するビットライン（ＢＬ）に接続され、もう１つの端子は、ゲート電極が第２の選択ゲートライン（ＳＧＳＬまたはＳＧＳＲ）に結合される第２の選択トランジスタを介してｃソースに接続される。簡略化するために、１６個のフローティングゲートトランジスタが各セルユニットに含まれるように示されているが、４個、８個、或いは場合によっては３２個といった数のトランジスタを用いてもよい。
【００１７】
背景技術の欄で説明したように、従来技術では、不良列の除去や他の欠陥管理は一般に、コントローラにより管理されている。メモリの欠陥部分の情報は、例えば、前に参照により援用されている米国特許第５，６０２，９８７号（特許文献３）で説明されているように、ＲＯＭメモリ、またはアレイ１のセクタのヘッダまたは予備部分といったメモリ２２で維持されることが多い。例えば、メモリ２２のＲＯＭ部分は、メモリがテストされるとＲＯＭで判定されて記憶されるように、アレイ１の不良列のインベントリを維持する。電源投入時、コントローラ２０は不良列リストをポインタ構造で読み出す。読み出し、または書き込み処理中、コントローラはこのポインタ構造を参照し、ホストからの論理アドレスが不良列に対応する場合、取替列のアドレスを置き換え、その後アドレスラインに沿って列制御回路２に送られる。
【００１８】
メモリチップそのものの欠陥列を管理するある従来技術のシステムでは、不良列の置き換えを管理するために二進デコード方式を用いる。ホストからのアドレスはまずレジスタにラッチされ、列アドレスは、０から５４０バイトで列を管理するために、１０ビットの加算器により増分される。列アドレス（１０ビット）はその後、列デコーダ領域を通して走る１５〜２０のラインにプレデコードされる。列選択を形成するために、これら１５〜２０のラインから３つの信号が選択される。この二進デコードシステムにおける不良列は、入来列アドレスを不良列アドレスリストと比較することで管理される。合致が見出されると、入来列アドレスが他の良好な列アドレスに再指定される。入来アドレスが不良列アドレスと合致しない場合、入来列アドレスは変更されない。二進列選択方式は、ランダムな列アドレスの位置を探しあてる上で高度の柔軟性をもつ。しかし、欠陥列を取り替える上で必要なロジックが複数段であることから、これは比較的ゆっくりしたものであり、２０ＭＨｚより早いデータ入力または出力率で二進デコード方式を走らせることが困難になるという不利な点がある。
【００１９】
図３〜６は、本発明が適用され、参照により援用されている米国特許第６，５６０，１４６号（特許文献１７）から応用される回路構成の例を示す。図３Ａ〜Ｃは、集積回路のメモリセル３０１のデータの読み出しおよび書き込みのための回路の例を示す。集積回路は、フラッシュチップといったメモリであるか、或いはＡＳＩＣ、またはメモリを備えるマイクロプロセッサといった埋め込み式メモリ部をもつ集積回路である。
【００２０】
読み出し（ＳＡ）回路３０３は、メモリセルの１つ以上のビットラインの列に結合される。読み書き回路はメモリセルの状態を読み出すために用いられる。読み書き回路は、メモリセルのデータの書き込み、または記憶のためにも用いられる。読み書き回路は、図８の実施形態に関して以下にさらに説明するように、センス増幅器回路を含む。
【００２１】
ラッチおよび列選択回路に対して多数の配置を用いることができる。図３Ａ〜Ｃの実施形態は、メモリセルの列に対する読み書き回路の異なる配置を示す。１つの配置は「平坦」な構造であり、各ビットラインが、列選択回路からのイネーブル信号に応じて入出力ラインにデータを転送するために、データのロード、または出力のいずれかを行うように、直接アクセスすることができるそれ自体のラッチのセットをもつ。図８に関してさらに以下で論じられるような他の実施形態において、１つの読み書き回路がメモリセルの２つ以上の列間で共有される。
【００２２】
代表的な実施形態において、記憶ユニットは、多状態であり、セル当たり複数ビットのデータを記憶することができる。本発明の原理を示すための代表的な実施形態として利用するという目的のために、図３Ａ〜Ｃのメモリセル３０１は二重ビットフラッシュＥＥＰＲＯＭメモリセルであるため、１つのワードラインで選択されるメモリセルを集めたものが、ユーザに加えてオーバーヘッドデータの１ページ、或いは上位ページおよび下位ページとして言及されるこのようなデータの２ページのいずれかを記憶することができる。さらに一般的には、この概念は、二進メモリセル、或いは２ビットを超えるデータを記憶することができる多状態メモリセルのいずれかに即座に拡張することができる。同様に、本発明の原理の態様が、どのように記憶ユニットがアクセスされて配置されるか、特にデータをどのように記憶ユニットに書き込み、記憶ユニットへ記憶し、記憶ユニットから読み出すかに関するものであれば、この議論は他の形態の記憶ユニットをもつ不揮発性メモリに拡張される。
【００２３】
図３Ａの例において、２つの一時記憶回路、またはデータラッチＤＬ３０６および３０９があり、１つは各読み書き回路ＳＡ３０３に関連付けられて接続される「上位」ビットであり、１つはその「下位」ビットである。一時記憶回路は、メモリセル用データを保持するために用いられる任意の回路である。特定の実施形態において、一時記憶回路はラッチであるが、他のタイプのロジックについても利用可能である。各ラッチは、ラッチへのデータ入出力を行うために用いられる２つの入出力（Ｉ／Ｏ）ライン３３３および３３６のうちの１つに接続される。この接続の詳細については示されていない。この単純化された例において、ラッチおよびラインは入出力機能の両方で用いられるが、別個のラインについても利用可能である。
【００２４】
データ入力処理において、データは、ビット毎に、或いはさらに一般的にはバイト毎にデータラッチにロードされる。３４６といったＹ選択回路は、特定のＷＥ（書き込みイネーブル）クロックでどのバイトが選択されるかを管理するために用いられる。データは、（図３では示されていない）各ラッチのＷＥ信号入力に基づいて特定ラッチにロードされる。ＷＥ信号が特定ラッチに対してアサート（アクティブ低、またはアクティブ高信号）されると、そのラッチがロードされる。例えば、図３Ｃにおいて、Ｙ選択信号３４６は、入出力バス（ライン３３３，３３６，３３８，３４０）上の特定データのセットを選択し、これがその後、選択データラッチ（３０６，３０９，３１４，３２２）に接続され、これは図４におけるものと類似したものであってもよい。
【００２５】
データ出力処理において、データはレジスタの列から一時に順次読み出すことが可能である。Ｙ選択は特定ＲＥ（読み出しイネーブル）クロックにおけるバイトを選択する。データラッチから入出力バスにデータが転送され、そこからデータが出力バッファに転送される。
【００２６】
図３Ｂにおいて、各入出力回路３０３は４つの関連するデータラッチ３０６，３０９，３１４，３２２をもつが、その最初の２つは、プログラミング用の下位および上位のビットにそれぞれ対応し、２番目の２つは、読み出し用の下位および上位のビットにそれぞれ対応する。
【００２７】
図３Ｃ（または以下の図８）のような折り畳み構造において、３０３ａおよび３０３ｂといった複数の入出力回路が互いに積層される。この例において、入出力回路の１つは奇数番号のビットラインに属し、他は偶数番号のビットラインに属する。セル配置の２ビット毎に、各入出力回路に対して対応する上位ビットおよび下位ビットのデータラッチがある。図３Ａで示されているように、同一ラッチが読み出しデータとプログラミングデータの両方で用いられるが、プログラミングおよび読み出しに対してさまざまな別個のデータラッチを用いることもできる。図７Ａおよび７Ｂに関してさらに詳細に説明されているように、これは折り畳み構造であることから、シフトレジスタのストローブパルスはまず１つの方向、例えば、右から左に移動してビットラインの１つにアクセスし、これが（逆に規定された）境界に達すると、ストローブは左から右に折り返して他のビットラインにアクセスする。
【００２８】
入出力接続は複数のオプションをもちうる。１つの物理セルに記憶される２つのビットが論理的に同一ページに属し、同時に書き込まれるような１つの場合において、対応するデータラッチ３０６および３０９を同時にロードするために、２つの入出力ライン３３３および３３６を用いることが便利である（図３Ａ）。図３Ｂのようにプログラミングおよび読み出しに対して別個のデータラッチがある場合、プログラミングに対するデータラッチ３０６および３０９はＤＩＮライン（入力バッファからのデータインライン）に接続され、読み出しで用いられるデータラッチ３１４および３２２は入出力ラインを通して出力バッファに接続される。
【００２９】
前に参照により援用されている米国特許出願第１０／０８６，４９５号（特許文献１６）で説明される従来形のＮＡＮＤ構成で用いられることの多い他の場合では、各物理セルに記憶される下位ビットラインおよび上位ビットラインは異なるページに属し、異なる時間に書き込み、および読み出しが行われる。したがって、下位ビットデータラッチおよび上位ページデータラッチは同一入出力ラインに接続される。
【００３０】
ラッチの特定回路の実装例を図４に示す。入力された入出力は、３０６といったラッチに入力されるデータであり、３３３といった入力ラインに接続される。列選択信号ＣＳＬはパストランジスタ、またはパスゲート４０２に接続され、これによりデータを入力部に接続、或いはそこから切断することができるようになる。信号ＣＳＬは、図３Ａ〜Ｃのシフトレジスタ３４６の１つの段に対応するＹ、或いは列選択回路ＹＳＥＬから供給される。ラッチ回路のこの例は、データを保持するための交差結合されたインバータを含み、さらにデータが回路間で通過することができるように読み書き回路に接続する。ラッチに対する他の回路の実装例については、ＮＡＮＤ、ＮＯＲ、ＸＯＲ、ＡＮＤ、ＯＲゲート、さらにこれらを組み合わせたものも用いられる。
【００３１】
この例において、読み出しイネーブル信号ＲＥおよび書き込みイネーブル信号ＷＥはＹＳＥＬを制御するためのクロックである。ストローブはシフトレジスタのＹＳＥＬ段に沿って伝播する。折り畳み構造の場合、パルスが最終段に達すると、他の方向に戻って伝播する。ＣＳＬが高の場合、データラッチが選択される。入出力ラインはその後、データラッチからデータを取得したり、或いはそこにデータを入れる。図３Ｂに関して説明される１つの入出力（Ｉ／Ｏ）ライン以外の実装例も可能である。
【００３２】
図４の代表的な実施形態は、ＮＭＯＳまたはｎチャネルパストランジスタを示す。パスゲートを形成するための多数の方法があり、これらの技術のうちの任意のものが用いられる。例えば、並列に接続されるＮＭＯＳおよびＰＭＯＳトランジスタを含むＣＭＯＳパスゲートが用いられる。さらに、高圧パスゲートが用いられる。例えば、高圧ＮＭＯＳパスゲートが動作可能にされる、すなわちゲートまたは制御電極でＶＣＣ上で高圧をかけることでオンに転換される（すなわち、オン状態に置かれる）。ＮＭＯＳパスゲートは、ＶＳＳ、すなわち接地点に制御電極をおくことでオフに転換される、すなわちオフ状態におかれる。
【００３３】
前に参照により援用されている米国特許第６，５６０，１４６号（特許文献１７）は、データ入出力ラインおよびデータラッチに関する複数の配置についてさらに詳細に説明している。図３Ａおよび３Ｂで示されているように、データラッチが「平坦」である場合、３０６，３０９，３１４，３２２に接続されるラインは異なる入出力ラインに属する。図３Ａの実施形態において、各読み書き回路は、入力と出力の両ラッチとして機能する関連付けられた２つのラッチに接続され、それらをもつ。その他の場合、図３Ｂで示されているように、これらのラッチのうちの２つは、メモリセルに書き込まれるデータを保持するために用いることができ、これら２つのラッチは、メモリセルから読み出されるデータを保持するために用いられる。
【００３４】
書き込みデータは適切な入力ラインを通してラッチ内に入力され、その後、適切な読み書き回路を用いてメモリセルに書き込まれる。メモリセルからのデータはセンス増幅器を用いて読み出され、ラッチ内に記憶される。読み出されるデータは適切な出力ラインを用いてラッチから出力される。ラッチと読み書き回路との間の通信ラインは示されていない。
【００３５】
データは、入力ラインを用いて一時にラッチから入力される。前述したように、これは、列選択信号（ＣＳＬ）を用いることで行われるために、読み書き回路またはアレイの列に関連付けられたラッチが一時入力ラインに接続される。ラッチに対するＣＳＬ信号はシフトレジスタからのものである。シフトレジスタは、（アクティブな高論理に対して）１つを除いて全て０のパターン（例えば、０００１００００００）でロードされる。このビットはストローブビットと呼ばれる。例えば、第１の列に関連付けられるシフトレジスタは１をもち、シフトレジスタビットの残りは０を含む。この１は第１の列に対するラッチのイネーブル入力部に接続され、これらのラッチのうちの１つ以上を入出力ライン３３３，３３６，３３８，３４０に接続する。データはこの列に対して読み書きすることができる。シフトレジスタへの入力部は０に接続され、シフトレジスタは計時される。この１は次のシフトレジスタ段に伝播する。この１は第２の列に対するラッチのイネーブル入力部に接続され、これらのラッチを入出力ラインに接続する。この操作は所望のデータがラッチから読み出されたり、或いはそこに書き込まれるまで続く。
【００３６】
図５および６は、ラッチおよびシフトレジスタの動作についてさらに明確に示す。図５において、第１のシフトレジスタは１をもち、そのシフトレジスタおよび列に関連付けられるデータラッチは入出力ラインに接続される。図６において、シフトレジスタは計時されていたが、次のシフトレジスタビットは１をもち、そのシフトレジスタおよび列に関連付けられるデータラッチは入出力ラインに接続される。この回路も、アクティブな低ロード信号に対して設計される。その後、シフトレジスタは、動作可能にされる特定ラッチについて全ての１および０を含む（例えば、１１１０１１１１１１）。
【００３７】
次の論議は関連する原理を示し、各センス増幅器に対して１つ（または２つ）のビットラインがあり、１つまたは２つのセンス増幅器に対して１つのシフトレジスタ段があるということを仮定している。しかし、この概念は、センス増幅器群に対して１つのシフトレジスタ段があり、ビットライン群が１つの列ブロックを形成するといった形で便利なように一般化することができる。例えば、図３Ａ〜３Ｃで示されている１〜４の入力ラインの代わりに、例えば、８から３２の入力ラインを必要とする１つの列ブロックに関連付けられる１または数ビットのデータがある。図３Ａの構造に従う１つの特定の例において、各１つのビットラインは８ビットラインで構成され、センス増幅器３０３はこの８ビットラインから読み出し、そこに書き込みを行い、各データラッチ３０６および３０９は８ビットのデータを保持し、上位ビットおよび下位ビットライン３３３および３３６はそれぞれ８ビット幅になる。これにより、データバイトが各列ブロックに対して入力および読み出しが同時に行えるようになる。
【００３８】
１つの列ブロック内の１つ以上のビットラインが不良であるような場合では、この不良列ブロックに対してスキップするための方法が必要である。例えば、図３〜６の方式において、シフトレジスタ９００−２およびデータラッチ８００−２と関連付けられる列ブロック内の１つの列が不良である場合、メモリは全列ブロックをスキップする必要がある。従来技術において、これは、不良列を示さず、アドレスを再指定しないコントローラにより達成されることが典型的であり、これはメモリ２２（図１）だけで実施されるものでないことから、コントローラのない埋め込み条件において、これはすぐに実施されない。その代わりに、本発明の１つの態様によれば、図５のパルスは、第２のクロックパルスを待つことなく、入出力ラインへデータを供給するためのラッチ８００−２を選択することなく、シフトレジスタ９００−２を通過する。本発明の他の態様において、この処理は全てメモリ２２上で処理される。実際には、シフトレジスタ９００−２、データラッチ８００−２、それらが関連付けられる列ブロックは、コントローラ２０またはホストから見て透明になる。
【００３９】
図７Ａは本発明のこれらの態様および他の態様についてさらに一般的な文脈で示したものである。この図において、シフトレジスタは、図１の列制御回路に対応するＹ選択ブロックＹＳＥＬ９００−ｉと、図１のデータ入出力回路６の一部を構成するデータ入出力回路ＹＢＬＯＣＫ８００−ｉとで置き換えられる。図７Ａは、これらの要素と、その操作で用いられるさまざまな制御信号とを示す。
【００４０】
図７Ａにおいて、一連のＭ＋１個のＹ選択ブロックＹＳＥＬ０  ９００−０からＹＳＥＬＭ  ９００−Ｍは共通のクロック信号ＣＬＫを受信する。各Ｙ選択ブロック９００−ｉの出力部ＯＵＴは右入力部ＲＩＮおよび左入力部ＬＩＮを通して両側のＹＳＥＬブロックに接続される。２つの入力部ＲＩＮおよびＬＩＮのいずれかがアクティブであるかは左から右への信号ＬＴＲにより決まる。ＬＴＲが高い場合、ＬＩＮがアクティブになり、Ｙ選択ブロック９００−ｉの各々がパルスをその右隣に移動させる。ＬＴＲが低い場合、ＲＩＮがアクティブになり、パルスが左に移動する。Ｙ選択ブロックがその隣からのパルスを受信すると、信号ＣＳＬをアサートし、信号を次のクロックサイクルで他の隣接部に送り出す。
【００４１】
各Ｙ選択ブロック９００−ｉは、列が不良であり、スキップする必要があるかどうかを示す別の入力部ＦＵＳＥをもつ。ＦＵＳＥがあるＹ選択回路に対して設定されると、ＣＳＬはアサートされず、シフトレジスタはパルスを次の段に送るためのバッファとして機能するため、パルスは、次のクロックサイクルを待つことなく次のＹ選択ブロックを通過する。ＦＵＳＥ−ｉに対する値はメモリ２２のＲＯＭ部分に記憶することができ、電源投入時にＦＵＳＥ信号をＹ選択ブロックに設定するために読み出すことができる。不良列のリストは、メモリがテストされてＲＯＭ内に書き込まれると確立される。
【００４２】
図７Ｂは、ＹＳＥＬ９００およびＹＢＬＯＣＫ８００がどのようにしてメモリアレイに対して配設することができるかの例を示す。図７Ｂにおいて、メモリアレイ１は再び、図２Ｂと同様に左と右の部分に分割される。左および右の部分が独立して読み出されてプログラムされることから、ここでは４個のＹＳＥＬブロックの連鎖にある第１のシフトレジスタ内への独自の入力パルスＩＮをもつＹ選択回路９００および入出力回路ＹＢＬＯＣＫ８００の独立のセットを各側がもつ。回路のレイアウトを改良するために、図７Ｂに示されているように、各側のＹＳＥＬ／ＹＢＬＯＣＫ回路の半分はアレイ１上に置くことができ、残り半分は下側におくことができる。欠陥列を置き換えるために用いられる冗長列のアレイの配置は、図１３Ａおよび１３Ｂに関して以下で説明される。メモリ２２内或いはメモリ２２外におけるデータ転送の基本単位がバイトであるような特定の例において、メモリ上のＹＢＬＯＣＫ回路に関連付けられる少なくとも４つのデータ入出力ライン（或いは可能な場合、４つのデータインラインおよび４つのデータアウトライン）と、メモリの底部にあるＹＢＬＯＣＫ回路に関連付けられる４つのデータ入出力ラインの他のセットとがある。ＹＳＥＬ回路、特にＣＳＬの状態により、ある特定時間でどのＹＢＬＯＣＫがデータ入出力ラインと通信するかを制御する。
【００４３】
各Ｙ選択回路からのＣＳＬ信号は、ここではＹＢＬＯＣＫ８００−ｉとして示されている、プログラミング、検知、データ記憶、入力回路および／または出力回路の対応するセットに接続される。図３〜６の実施形態において、各シフトレジスタは読み書き回路の１つのセットに接続されていただけであったが、一般的には、これをさらに多くすることができる。特に、図７Ａは、各ＹＳＥＬ９００−ｉと関連付けられる２つのＹＢＬＯＣＫ８００−ｉａおよび８００−ｉｂを示す。
【００４４】
図８は、図７Ａのデータ入出力回路ＹＢＬＯＣＫ８００−ｉの一部要素のブロック図であり、複数のデータラッチを列ブロックに組み込むことのできる本発明の追加の実施形態を示す。これは、メモリチップ上である機能を直接行い、メモリチップとコントローラとの間でのデータ転送を最小限しか必要とせず、これにより性能を向上させる上で有用になりうる。例えば、連続するプログラミング操作中に次のページデータを受信するため、複数のデータラッチをもつ上で有用である。ラッチの第１のセットがプログラミング中の現データを含む一方、ラッチの第２のセットは次のプログラミング操作のための新データとともにロードすることができ、これによりプログラミングとデータ転送とがオーバーラップすることができるようになる。追加のデータラッチに対する第２の利用法は、メモリ２２内で１つのページから他のページにデータのコピーを行う必要のある場合、或いは米国特許第６，５２２，５８０号（特許文献１２）で説明されているように、各メモリセルが２つの異なる論理ページからのデータを含む場合に起こる。
【００４５】
共通のＹブロックにおける複数のセンス増幅器およびデータラッチの概念は、２００２年９月２４日に出願されたラウル−エイドリアン・セルニアによる「非常にコンパクトな不揮発性メモリおよびその方法」という米国特許出願第１０／２５４，４８３号（特許文献１８）で説明され、この特許出願は本願明細書において参照により援用されている。この特許出願はさらに、さまざまな構成要素が相互接続することができ、データがそれと外部入出力部との間で入力され、かつ交換される（バス８０３と同様の）スタックバスを説明している。これらの追加の態様および他の要素の追加の態様については、２００２年９月２４日に出願された米国特許出願第１０／２５４，９１９号（特許文献１９）、および２００３年９月１７日に出願された米国特許出願第１０／６６５，８２８号（特許文献２０）でさらに説明され、これら特許出願も本願明細書において参照により援用されている。
【００４６】
Ｙブロック８００は、読み出し、または書き込みのいずれかに対してセンス増幅器８０３ａから８０３ｎで用いられるデータを記憶することができる複数のデータラッチ８０２ａ，８０２ｂから８０２ｎで構成される。入出力および制御８０１として示されている中央制御ユニットは、関連するＹＳＥＬ回路からの入力信号ＣＳＬで選択されると、全体入出力データライン８０５へのアクセスを制御するために用いられる。センス増幅器８０３ａから８０３ｎの各々は１つ以上のビットライン（ＢＬ）と関連付けられる。一部のＮＡＮＤ構成において、２つのビットライン（奇数および偶数）を各センス増幅器と関連付け、異なる時間にそれらを読み出すことが一般的である。他のＮＡＮＤ構成において、全てのビットラインを同時に読み出し、各ビットラインに対して１つのセンス増幅器を必要とすることが望ましい。また、各センス増幅器内に含まれる１つ以上の専用データラッチもある。複数のセンス増幅器がこのブロックで示されているという事実は、典型的には少なくとも１つ以上のデータバイトがこのブロックによりアクセスされることを示しているが、これは必要事項ではない。各データラッチのデータ幅は典型的には、入出力データラインの数と同じ幅である。例えば、中央制御ユニットを交差する８つの入出力ライン（すなわち、８つの入力ラインおよび８つの出力ライン）がある場合、各データラッチは典型的には８ビットを保持する。
【００４７】
１つの実施形態において、センス増幅器および中央制御ユニット８０１の両方は、ランダムに、望ましい順番にデータラッチにアクセスすることができる。この場合、バス８０４はデータと制御情報の両方を運ぶ。他のさらに制限された実施形態において、データラッチは、データが中央制御ユニット８０１からデータラッチ８０２ａに、その後、データラッチ８０２ａからデータラッチ８０２ｂに、さらにデータラッチ８０２ｎに移動されるように、連続してアクセスされる。この場合、（以下で、図１２と関連付けて説明される）制御信号ＤＡＣＬＫ８０６は、その転送を実効状態にするために、データラッチの各々にルート付けされる。
【００４８】
書き込み処理において、データはＣＳＬの制御下で入出力データライン８０４から受信され、これからデータラッチの１つに供給される。データラッチが直列接続されると、データラッチ８０２ａに適用され、続いて、全てのデータラッチを通してセンス増幅器に移動され、メモリに書き込まれる。読み出し処理は、データがセンス増幅器から読み出されてデータラッチ８０２ｎにおかれ、他のデータラッチを通して入出力データライン８０５に移動されるものとは実質的に逆である。他の（図示されていない）実施形態において、入出力データラインは２組のライン、すなわちデータラッチ８０２ａをロードする入力ラインと、データラッチ８０２ｎから伝動される出力データラインとで構成される。
【００４９】
図９は、Ｙ選択ブロック９００の代表的な実施形態に対する概略図である。この特定の実施形態は、マスタラッチＭＳＴＲ１０００およびスレイブラッチ１１００から形成される。両ラッチはクロックＣＬＫに接続され、入力信号ＩＮＰおよびその相補信号ＩＮＶを受信し、出力ＯＵＴおよび相補信号ＢＡＲを供給する。マスタラッチ１０００の信号ＯＵＴおよびＢＡＲは、スレイブ１１００のＩＮＰおよびＩＮＶにそれぞれ接続される。スレイブラッチの出力は図７Ａのブロック９００のＯＵＴ信号であり、逆信号はこの図において抑制される。
【００５０】
マスタ１０００の入力部ＩＮＰはスイッチ９３１を通して左入力部ＬＩＮおよび右入力部ＲＩＮに接続され、これもマスタの逆入力部ＩＮＶをＬＩＮおよびＲＩＮ、ＬＩＢおよびＲＩＢの逆にそれぞれ接続する。左から右への信号ＬＴＲがアサートされると、ＬＩＮはＩＮＰに接続され、ＬＩＢがＩＮＶに接続される。ＬＴＲの逆になる右から左への信号ＲＴＬがアサートされると、ＲＩＮおよびＲＩＢがＩＮＰおよびＩＮＶにそれぞれ接続される。このように、入力パルスがＹ選択ブロックからすぐ左（アサートされたＬＴＲ）、或いはすぐ右（アサートされたＲＴＬ）に達すると、マスタおよびスレイブラッチを通して計時され、次の選択ブロックに送られる。
【００５１】
スレイブ１１００の出力ＯＵＴも、ＮＡＮＤゲート９１０に供給される。したがって、出力ＯＵＴが高く（さらに以下に説明するように、ＦＳＢも高く）、クロックパルスが到達すると、ＮＡＮＤ出力が低くなり、Ｙ選択ブロックの列選択信号ＣＳＬをアサートするために、９１１により逆転される。この特定の実施形態において、連続読み出しモードが他の実施形態で動作可能にされていることを示すために、ＮＡＮＤゲート９１０もＳＲＯとして示されている入力を受信する。ＣＳＬ信号を動作可能／動作不能にするために、ＳＲＯ信号はないか、或いは他の制御信号で置き換えられる。ＣＳＬは、９１０の入力としてＣＬＫを印加することで直接計時されないが、ＯＵＴが計時信号であることから、ＣＳＬはこの入力を通して間接的に計時される。
【００５２】
ＮＡＮＤゲート９１０の他の入力はヒューズイネーブル信号ＦＳＢであり、これは不良列ブロックを仕分けするために用いられ、ＦＳＥ＝／ＦＳＢ（／ＦＳＢは、信号ＦＳＢの否定を示す。他の信号についても以下同様である。）が低に設定されない場合、列選択信号はアサートされない。ＦＳＥの値は、インバータ９２３および９２４で構成されるラッチ内で保持される。ＦＳＥもマスタラッチ１０００に供給され、その逆のＦＳＢはスレイブラッチ１１００に供給される。このような信号は、クロック信号を実質的に上書きして、Ｙ選択ブロックの入力を直接出力に送ることで、ラッチを一対の非クロックバッファに変換する。多数の可能性のある実施形態がマスタレジスタ１０００およびスレイブレジスタ１１００について用いることができ、１つの特定例が図１０および１１で示されている。
【００５３】
ＦＳＥの値は信号ＰＵＲＢ，ＳＥＴ，Ｉ１２，Ｉ３４を通して設定される他、これらの値は図７Ａで集合的にＦＵＳＥとして示されている。この信号Ｉ１２およびＩ３４はトランジスタ９２９および９２７にそれぞれ接続され、列ブロックが不良であるかどうかを示す。４つのビットラインをもつ列による代表的な実施形態において、Ｉ１２は列の第１および第２のビットラインに対応し、Ｉ３４は第３および第４のビットラインに対応する。値Ｉ１２＝Ｉ３４＝０は列が良好であることを示すが、Ｉ１２＝１またはＩ３４＝１は不良列を示す。他の配置において、例えば、各ビットラインはそれ独自の並列な指示トランジスタ、或いは４つ全てが１つのトランジスタを共有する。電源投入時、不良列値はメモリＲＯＭから読み出され、Ｉ１２およびＩ３４の値が設定される。トランジスタ９２１は、その後、ＰＵＲＢによりノードＸを充電するためにオンに転換され、その後、電荷がトラップされ、ノードＸを高に設定する。トランジスタ９２５は、その後、信号ＳＥＴのパルスによりオンに転換される。列が良好である場合、Ｉ１２＝Ｉ３４＝０でノードＸが高く、ＦＳＢ＝１およびＦＳＥ＝０に設定する。列が不良である場合、Ｉ１２＝１またはＩ３４＝１でノードＸが接地され、ＦＳＢ＝０およびＦＳＥ＝１に設定する。
【００５４】
不良列情報は、図９のシフトレジスタラッチ（または列隔離ラッチ）を更新するため、転送のために指定されたＲＯＭブロックに保存することができる。図９に基づく実施形態において、あるデータパターンがＲＯＭメモリの第１のワードラインに保存され、ここで「１」は不良列を示し、「０」は良好列を示す。逆転データは第２のワードラインに保存される。データおよびその逆データの両方を記憶する目的は、記憶されたデータの健全性を確保するためである。（金属中の）ビットラインが物理的に開かれているか、或いは短くなっている、或いは他の欠陥がある場合、不良列データおよびその反転データの両方を正しく読み出すことができない。この場合、列は自動的に廃棄することができる。電源投入時、まず第１のＲＯＭワードラインからデータを読み出し、これを第２のワードラインから読み出されたデータと比較するために、２つの読み出しシーケンスが実行される。データが良好データである場合、図９のインバータ９２３および９２４で構成される列隔離ラッチを設定するためにこれが用いられる。この方法により、ＲＯＭデータと列ラッチとの間の直接的な１対１の対応が可能になり、これによりラッチの更新がさらに直接的に行われる。しかし、不良列情報が１回しか保存されないため、データの健全性はチップの寿命期間中にわたってロバストさが低くなる。連鎖内の全セルが影響を受けるようなＮＡＮＤ構成といった特定のセルを読み出すことで影響を受ける読み出し連鎖内に他のセルがないため、読み出し妨害が大きくないＮＯＲ構造でこの方法は有用である。
【００５５】
図９のシフトレジスタラッチに対して指定されるＲＯＭブロックからの不良列情報を更新するための他の方法において、不良列のリストは１つ以上の記憶位置に保存される。この方法は、妨害の影響を受けやすいメモリシステムにおいてさらにロバストであり、前に参照により援用されている米国特許第６，４２６，８９３号（特許文献１０）で説明されているような「平坦」な構造のメモリで用いることができる。テストおよび評価後、不良列アドレスは、情報および同一ページ上に記憶されたその反転データの両方をもつ指定されたＲＯＭブロックで保存することができる。この実施形態において、アドレス情報はさらに他面のＲＯＭブロックで複製される。
【００５６】
例えば、メモリチップが２つのプレーンをもち、各プレーンに左と右のサブアレイがある場合、不良列アドレスは同一ＷＬ上のＲＯＭブロックにおいて４ページで保存される。データは、電源投入において即座に読み出しを行うために、同一ＷＬ上に保存される。このように、同一データの４つのコピーは１つの読み出しで読み出され、このデータは不良データをなくすために比較される。列アドレスデータは、その後、一時的にレジスタ内にロードすることができる。シフトレジスタは各列を通してトグルが入れられ、列アドレスが不良列アドレスと一致すると、ＳＥＴ信号は図９のノードＸを低く設定するために、高くなる。この方法において、プルダウントランジスタ９２７および９２９のうちの１つだけが必要であり、残りのトランジスタのゲートへの信号が変化する。例えば、ここで、トランジスタ９２９を消去することができ、トランジスタ９２７のゲートへの入力がここではＩ３４の代わりに信号ＣＳＬになるように、図９が修正される。
【００５７】
図１０は、マスタラッチ１０００の代表的な実施形態の系統図である。ラッチ１０００の右側に示されているように、ＣＬＫおよびＦＳＥでそれぞれ制御されるトランジスタ１００１および１００３は、ＯＵＴノードおよび接地間で並列に接続され、ＰＭＯＳトランジスタ１００５および１００７は、ここでもそれぞれＣＬＫおよびＦＳＥで制御され、高論理値とＯＵＴノードとの間で直列接続される。したがって、信号ＦＳＥ＝１がアサートされると、ＣＬＫ信号は上書きされ、回路の出力に影響を与えることができない。図１０の交差結合された左側は、ＩＮＰを入力として、ＢＡＲを出力として用いて右側に対して補完的な方式で動作する。ＦＳＥ＝１の場合、図１０は、その後、ＩＮＰおよびＩＮＶが２つの入力信号として、さらに常にＯＵＴ＝ＩＮＰ（ＩＮＶは常にＩＮＰの補完であるため）となる設定・再設定ラッチとして配置される一対の交差結合されたＮＯＲゲートに縮重する。この条件において機能的には回路は論理バッファとして機能する。
【００５８】
図１１は、図１０のマスタラッチに対する補完的方式で構成されたスレイブラッチ１１００の代表的な実施形態の回路図である。図１１の右側に示されているように、ＦＳＥ＝１，ＦＳＢ＝０の場合、ＣＬＫ信号は再び上書きされ、回路の出力に影響をもたらすことはできない。例えば、ＦＳＢ＝０の場合、トランジスタ１１０３が開かれた状態で保持され、トランジスタ１１０１の影響がＣＬＫの値に関係なくノードＹから切断されるため、ノードＹにおけるレベルはトランジスタ１１０２のＩＮＶの値で決まる。同様に、ＦＳＢ＝０により、トランジスタ１１０４が常にオンに転換され、トランジスタ１１０５に対するＣＬＫの効果は何も生じない。この場合、図１１の回路は、入力部ＩＮＰおよびＩＮＶで常にＯＵＴ＝ＩＮＰになる（ＩＮＶは常にＩＮＰの補完であるため）設定・再設定ラッチとして配置される一対の交差結合されたＮＡＮＤゲートに縮重する。再び、この回路は機能的にバッファと等価なものになる。このように、ＭＳＴＲ１０００およびＳＬＶＥ１１００の一連の組み合わせにより、入力がもたらされ、どのようにスイッチ９３１が設定されるかに応じて、ＬＩＮまたはＲＩＮのいずれかが、図８の次のＹ選択ブロックに対するＹ選択ブロック９００の出力を直接受信するようになる。
【００５９】
図１２は、図８〜１１の代表的な実施形態の動作を示すタイミング図である。最上部ラインは信号／ＬＴＲ（図９におけるＲＴＬ）であり、パルスが図７ＡのＹ選択回路９００−ｉの右に送られる場合は低くなり、左側に戻って流れる場合は高くなる。９００−０の入力部ＬＩＮに適用される初期パルスまたはストローブＩＮは第２のラインで示されている。信号／ＬＡＳＴは、最後のＹ選択回路（図７Ａにおいて、右側のＹＳＥＬＭ  ９００−Ｍまたは左側のＹＳＥＬ０のいずれか）が低くなることでいつ到達するかを示す。／ＤＡＣＬＫは、データをデータラッチにロードするか、或いは次にＣＳＬがアサートされるために、それらの間でデータを移動させるように、図７のＹブロック８００−ｉに適用される信号である。非折り畳み構造の場合、パルスはＹ選択回路を通して一度だけ移行し、信号ＲＴＬ，／ＬＡＳＴ，／ＤＡＣＬＫは必要とされない。破線１２０１の左に向けた領域が、この単純化された場合である。
【００６０】
以下の／ＤＡＣＬＫ，ＣＳＬ０〜ＣＳＬ１１はＹ選択回路からの制御信号ＣＳＬを示す。この特定の例において、１２個の列および対応するＹ選択回路、すなわち図７ＡでＭ＝１１、さらに各Ｙ選択回路で制御される図８での４つのデータラッチ８０２ａ〜８０２ｎがある。図１２は、回路が初期化され、不良列、この例では列２および８が除去された後における回路の動作を示す。この初期化は、不良ビットラインのリストと、例えば電源投入時にメモリＲＯＭから読み出すことと、この情報をＹ選択回路に対して、図９の信号Ｉ１２およびＩ３４といったもので供給することとで構成される。信号ＰＵＲＢはその後低くされ、その後、図７ＡのＹ選択回路９００−ｉの各々に対する図９のＦＳＥ値を設定するために、ＳＥＴが高くなるようにされる。
【００６１】
図１２の開始点において、／ＬＴＲは低であるために、ＬＩＮはＹ選択９００でアクティブであり、図９のスイッチ９３１はＬＩＮをＩＮＰに接続する。パルスＩＮは図７ＡでＹＳＥＬ０  ９００−０のＬＩＮに達し、次のクロックサイクルでＣＳＬ０がアサートされ、その後にサイクル内のＣＳＬ１が続く。列２が除去されると、パルスは、クロックを待つことなくＹＳＥＬ２  ９００−２を通過し、ＣＳＬ２は低のままであり、ＣＳＬ３は、ＣＳＬ１がアサートされるクロック直後のクロックでアサートされる。ＣＳＬ４〜ＣＳＬ７はその後のサイクルの各々で続き、不良列８は列２と同様にスキップされ、ＣＳＬ９〜ＣＳＬ１１はＣＳＬ７後の順番で続く。
【００６２】
各Ｙ選択回路に対して１つのデータラッチだけを用いる実施形態において、処理は、破線に対応するこの時点で終了する。複数のデータラッチをもつ実施形態に対して、処理は、パルスを左に戻して送るように切り替える。／ＬＴＲが高になるとＹ選択回路のＲＩＮ入力部をアクティベートし、／ＤＡＣＬＫが低になるとＹブロック８００−ｉを再設定する。／ＤＡＣＬＫおよび／ＬＴＲが変化しながらパルスがライン（ＹＳＥＬＭまたはＹＳＥＬ０）の終わりに達して、追加のクロックサイクルに対する終了レジスタのパルスを保持し、ＣＳＬを長くアサートすると、信号／ＬＡＳＴは低くなる。（信号／ＬＡＳＴと最終ＹＳＥＬブロックの接続は図７Ａには示されていない。）
【００６３】
信号はその後、他の方向に戻るように流れ、各サイクルにおける順番でＣＳＬ１１〜ＣＳＬ０をアサートし、列２および８を再びスキップする。Ｙ選択ブロック０が到達すると、ＣＳＬ０はＬＡＳＴにより２サイクルに対して高に保持され、この間、ＬＴＲは低に戻され、データラッチは新規データを受信するように設定される。処理は、その後、前と同じように継続して、追加のデータラッチをロードし、この処理が完了する。
【００６４】
図１２における不良列、列２および８が除去されると、メモリ回路２２に対して外部から見ると、アレイは有効に１０個の良好列をもち、列３は、（現在除去された）列２としてみなされ、その残りの列についてもこれが続けられる。したがって、アクセス可能な「標準」列数が、これらの標準列の実際数より除去された不良列数だけ少ないものになる。これにより、再び、メモリ外部から見るように、ブロック内のアクセス可能な標準列数は、不良列の除去がコントローラおよびホストに対して透明であることから、考えられる数よりも少ない。コントローラ／ホストがこのアクセス可能な標準列数より多くを必要としない限り、これは困難ではない。しかし、要求される列数がアクセス可能な標準列数を超える場合、これらの列は要求される列数が見出される前に使い切られてしまう。したがって、本発明の他の態様によれば、除去された不良列を置き換えるために、冗長列のセットが各セクタに供給される。
【００６５】
不良列の除去に関して、不良列を冗長列と置き換えることは、ここでもメモリ２２の外部から見ると透明な処理である。この透明さにより、図１のメモリ２２がコントローラ２０を用いることなく直接ホストに置かれる場合、本発明は特に埋め込み環境において有用になる。
【００６６】
図１２に戻ると、１２個の列ブロックに対する波形は、ブロック２および８が除去された状態で示されている。これらの列が属するメモリプレーンが１２個以上の標準列ブロックをもつ場合、冗長列ブロックが用いられず、列ブロック２の後、さらに列ブロック８の後に、メモリ上で用いられている物理列は、アドレスライン上で示されている論理列から移動される。その代わりに、全メモリプレーンが１０個の標準列ブロックしかもたない場合、列ブロック１０および１１がここで冗長列領域内に物理的に置かれる。
【００６７】
図１３Ａおよび１３Ｂは、代表的な実施形態における冗長列の代替処理の概略表示である。図１３Ａはメモリアレイの１つの可能な構成を示し、左プレーンと右プレーンで構成され、それぞれのプレーンは各ワードラインの５２８バイトのデータを保持する。図１３Ｂは、データがアレイ内に書き込まれると列ブロックの代替処理がどのように進行するかを示す。基本的な仮定は、１つのワードライン上で全セルをプログラムするために、各列ブロック内の４つの別個のデータラッチ（図８において８０２ａ〜８０２ｄ）にデータが書き込まれるというものである。例えば、外部コントローラが、書き込みコマンドを出す前に一時に１バイトを送信することで５２８バイトの１ページ（５１２バイトのユーザデータと、メモリに書き込まれるＥＣＣまたは他の情報といった１６バイトのオーバーヘッドデータ）を送信する場合、データの１バイトは各クロックサイクル中に送信され、全ページをロードするために、シフトレジスタが１つのプレーンで４回、利用可能な列ブロックを通して走査される。つまり、各プレーンが１３２（＝５２８バイト／４ページ）個の列ブロックで構成され、各ブロックが３２（４パス＊８ビット／バイト）のビットラインを含む。図１３Ｂにおいて、左半分のアレイの通常の列の全てはアクセスされ、これらの列ブロックのうちの２個が不良である。パルスＩＮが列の全ての数を通して移動すると、２つの不良列ブロックが２つの冗長列ブロックで置き換えられる。図１３Ｂにおいて、使用されないブロックはｘで示されている。パルスは左側で始まり、最初の不良列ブロックに達するまで伝播するが、このブロックはその後スキップされる。パルスはその後、通常のセクションの残りを通して継続し、第２の不良列ブロックを再びスキップする。２つの列ブロックがないため、パルスは継続し、冗長領域内の２つの予備列ブロックをピックアップする。２つの冗長ブロックだけが必要であるため、冗長領域の残りの部分は、ｘで示されているように無視され、アクセスされず、処理は第２のパスで左に向かって継続する。１つのパスの最後のパルスと次のパスの最初のパルスとは同一のＣＳＬ信号であり、予備クロック信号に対するＬＡＳＴ信号で保持される一方、ＤＡＣＬＫ信号はアサートされ、ＲＴＬ値が変化する。不良列ブロックは再びスキップされ、処理は同様に第３および第４の層を通して継続する。各列ブロックが、入力データストリームの広く分けられた論理バイトからのデータを保持するという点に留意されたい。例えば、第１の列ブロックは、バイト１，２６４，２５６および５２８からのデータを保持する。
【００６８】
パルスが反転する冗長領域内の境界は固定された境界ではなく、置き換えに必要なブロック数で決まる。これについては図１３Ｂで概略が示されているが、ここでアレイ構造の左側と右側とは置き換え処理をさらに柔軟にするために冗長列を共有する。これについても、折り畳み構造をもち、双方向シフトレジスタを用いる代表的な実施形態に対して示されている。この例において、各サブアレイは各ワードラインに沿った５２８バイトのデータを保持するように構成される。中間部には冗長ブロックが置かれている。右側と左側の両方とも、対応する不良列数を置き換えるために必要な冗長列数にアクセスする。図１３Ａに示されているように、左アレイは２つの不良列ブロック（ここでもｘで示されている）をもち、これにより、左側に伝播する前にこれらの予備ブロックにアクセスするために、延伸するパルスを用いて冗長列ブロックのうちの２つを充てる。同様に、１つの不良ブロックで示されている右側において、パルスが右側で開始され、右側に戻って移動する前に冗長領域から１つの置き換えブロックにアクセスするために移動される。
【００６９】
本発明のさまざまな態様を特定の実施形態に関して説明してきたが、本発明は添付の特許請求の範囲の最大の範囲内においてその権利が保護されるべきであることが理解されよう。
【図面の簡単な説明】
【００７０】
【図１】本発明のさまざまな態様の実施を説明する不揮発性メモリシステムのブロック図である。
【図２Ａ】図１のメモリアレイの回路および構成におけるＮＡＮＤタイプの場合の本発明の態様を示す。
【図２Ｂ】図１のメモリアレイの回路および構成におけるＮＡＮＤタイプの場合の本発明の態様を示す。
【図３Ａ】メモリ内の読み書きを行うためにデータを保持するラッチをもつ集積回路を示す。
【図３Ｂ】メモリ内の読み書きを行うためにデータを保持するラッチをもつ集積回路を示す。
【図３Ｃ】メモリ内の読み書きを行うためにデータを保持するラッチをもつ集積回路を示す。
【図４】ラッチの実装例を示す。
【図５】シフトレジスタの第１の段に１を置くことによる第１のデータラッチの入出力ラインへの接続を示す。
【図６】シフトレジスタの第２の段に１を置くことによる第２のデータラッチの入出力ラインへの接続を示す。
【図７Ａ】列選択回路およびその動作で用いられるさまざまな制御信号の実施形態のブロック図である。
【図７Ｂ】列選択回路およびその動作で用いられるさまざまな制御信号の実施形態のブロック図である。
【図８】図７Ａのデータ入出力回路の一部要素のブロック図である。
【図９】Ｙ選択ブロックの代表的な実施形態である。
【図１０】マスタラッチの代表的な実施形態の系統図である。
【図１１】スレイブラッチの代表的な実施形態の系統図である。
【図１２】図８〜１１の代表的な実施形態の動作を示すタイミング図である。
【図１３Ａ】冗長列の代替処理に対する概略図である。
【図１３Ｂ】冗長列の代替処理に対する概略図である。
【図１】
2007517353.tif 000003
【図２Ａ】
2007517353.tif 000004
【図２Ｂ】
2007517353.tif 000005
【図３Ａ】
2007517353.tif 000006
【図３Ｂ】
2007517353.tif 000007
【図３Ｃ】
2007517353.tif 000008
【図４】
2007517353.tif 000009
【図５】
2007517353.tif 000010
【図６】
2007517353.tif 000011
【図７Ａ】
2007517353.tif 000012
【図７Ｂ】
2007517353.tif 000013
【図８】
2007517353.tif 000014
【図９】
2007517353.tif 000015
【図１０】
2007517353.tif 000016
【図１１】
2007517353.tif 000017
【図１２】
2007517353.tif 000018
【図１３Ａ】
2007517353.tif 000019
【図１３Ｂ】
2007517353.tif 000020
【国際調査報告】
2007517353.tif 000021
2007517353.tif 000022