(57)【要約】  読み出し中に生じるチャネル結合の総量を、検証中に生じたチャネル結合の総量に一致させることで、不揮発性記憶装置の検証及び読み出し中におけるチャネル結合効果を低減する。全てのビット線は検証及び読み出し中に共に読み出され得る。一実施形態において、複数のプログラム状態のうちの各状態を検証する際に第１バイアス条件がビット線上に設定される。各状態を検証する際にそれぞれ別個の一組の第１バイアス条件が設定され得る。各ビット線へのバイアスはこのビット線上の不揮発性記憶素子がプログラムされる状態に基づき得る。読み出し中の各状態のためにそれぞれ別個の一組の第２バイアス条件が設定される。所定の状態のためのこの第２バイアス条件はこの所定の状態のための第１バイアス条件と一致する。
2013525938.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性記憶システムを動作させるための方法であって、前記不揮発性記憶システムはワード線に関連付けられた複数のビット線を有し、前記ワード線には複数の不揮発性記憶素子が関連付けられており、前記方法は、
一又は複数のプログラムミング電圧を前記ワード線に印加するステップ（７２０）を含み、
複数のプログラム状態のそれぞれを検証する際に、第１バイアス条件を前記複数のビット線上に設定するステップ（８０４）を含み、ここで、各プログラム状態を検証する際にそれぞれ個別の一組の第１バイアス条件が設定され、各ビット線へのバイアスはこのビット線上の不揮発性記憶素子がプログラムされる状態に基づくものであり、
前記第１バイアス条件を設定した後に前記複数のビット線のうちのいくつかのビット線の条件を検出するステップ（８０６）を含み、
読み出し処理中に第２バイアス条件を前記複数のビット線に設定するステップ（８２４）を含み、ここで、読み出し中の各プログラム状態のためにそれぞれ個別の一組の第２バイアス条件が設定され、所定のプログラム状態のための前記第２バイアス条件は、前記所定のプログラム状態のための前記第１バイアス条件と実質的に一致し、
前記読み出し処理中に不揮発性記憶素子のビット線を検出するステップ（８２６）を含む、方法。
【請求項２】
所定のプログラム状態にプログラミング中の不揮発性記憶素子に隣接する不揮発性記憶素子は、前記所定のプログラム状態の検証中に、ターゲット不揮発性記憶素子のチャネル電位に依存するチャネル電位を有する、請求項１に記載の方法。
【請求項３】
前記所定の状態を読み出す際に前記第２バイアス条件を前記複数のビット線に設定するステップは、前記所定の状態にプログラムされた不揮発性記憶素子に隣接する不揮発性記憶素子の実質的に全てに対し、前記所定の状態を検証する際の前記隣接する不揮発性記憶素子のチャネル電位と一致するチャネル電位を持たせる、請求項２に記載の方法。
【請求項４】
前記第１バイアス条件を設定するステップは、
前記複数のビット線のうち、現在検証中の状態にプログラムされるべき不揮発性記憶素子を有するいくつかのビット線、及び現在検証中の状態のすぐ下のプログラム状態にプログラムされるべき不揮発性記憶素子を有するいくつかのビット線をプリチャージするステップ（１００２）を含み、
前記第２バイアス条件を設定するステップは、
前記複数のビット線のうちの他の全てのビット線を接地するステップ（１００４）と、
前記複数のビット線のうち、現在読み出し中の状態であると大まかに判定された不揮発性記憶素子を有するいくつかのビット線、及び現在読み出し中の状態のすぐ下のプログラム状態にあると大まかに判定された不揮発性記憶素子を有するいくつかのビット線をプリチャージするステップ（１０４２）と、
前記複数のビット線のうちの他の全てのビット線を接地するステップ（１０４６）とを含む、
請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記複数の不揮発性記憶素子の各状態がどの状態にあるかを大まかに判定するために複数の基準電圧レベルにて読み出しを行うステップ（１０２０）を更に含んでおり、前記第２バイアス条件は前記読み出しに基づく、請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記第１バイアス条件を設定するステップは、
現在検証中の状態にプログラムされるべき不揮発性記憶素子を有するビット線をプリチャージするステップ（１１０２）と、
前記複数のビット線のうちの他の全てのビット線を接地するステップ（１１０４）とを含み、
前記第２バイアス条件を設定するステップは、
前記複数のプログラム状態のうちの最も高いプログラム状態の読み出しのための第１組の前記第２バイアス条件を設定するために、前記最も高いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行うステップ（１１２４）と、
前記複数のプログラム状態のうちの２番目に高いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行うステップ（１１３０）と、
前記２番目に高いプログラム状態の読み出しのための第２組の前記第２バイアス条件を設定するために、前記２番目に高いプログラム状態に関連付けられた電圧レベルにて前記大まかな読み出しを行った後、前記２番目に高いプログラム状態に関連付けられた前記電圧よりも高い閾値電圧を有する不揮発性記憶素子を有する全てのビット線を放電するステップ（１１３２）と、
前記複数のプログラム状態のうちの最も低いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行うステップ（１１３８）と、
前記最も低いプログラム状態の読み出しのための第３組の前記第２バイアス条件を設定するために、前記最も低いプログラム状態に関連付けられた電圧レベルにて前記大まかな読み出しを行った後、前記最も低いプログラム状態に関連付けられた前記電圧よりも高い閾値電圧を有する不揮発性記憶素子を有する全てのビット線を放電するステップ（１１４０）とを含む、
請求項１から３のいずれか一項に記載の方法。
【請求項７】
前記第１バイアス条件を設定するステップは、
現在検証中のプログラム状態にプログラムされるべき不揮発性記憶素子を有するビット線、及び現在検証中のプログラム状態よりも高いプログラム状態にプログラムされるべき不揮発性記憶素子を有するビット線をプリチャージするステップ（１２０２）と、
前記複数のビット線のうち他の全てのビット線を接地するステップ（１２０４）とを含み、
前記第２バイアス条件を設定するステップは、
前記複数のビット線のうちの全てのビット線をプリチャージするステップ（１２２２）と、
前記複数のプログラム状態のうち最も低いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行い、前記最も低いプログラム状態の読み出しのための第１組の前記第２のバイアス条件を設定するステップ（１２２４）と、
前記複数のプログラム状態のうち２番目に高いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行い、前記２番目に高いプログラム状態の読み出しのための第２組の前記第２のバイアス条件を設定するステップ（１２２８）と、
前記複数のプログラム状態のうち最も高いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行い、前記最も高いプログラム状態の読み出しのための第３組の前記第２のバイアス条件を設定するステップ（１２３２）とを含む、
請求項１から３のいずれか一項に記載の方法。
【請求項８】
複数のプログラム状態のそれぞれの検証において、各メモリセルが大まかな検証レベルに到達したことを表示する第１の値を各メモリセルについて記憶するステップと、
複数のプログラム状態のそれぞれの検証において、各メモリセルが細かい検証レベルに到達したときに、各メモリセルがプログラムされるべき状態を表示する値をデータラッチに上書きするステップと、
所定のメモリセルのビット線のための第１バイアス条件をどのように設定するかを判定するために、前記所定のメモリセルのための前記第１の値を前記所定のメモリセルのための前記データラッチにおける現在の値と結合するステップとを更に含む、
請求項１から３のいずれか一項に記載の方法。
【請求項９】
複数の不揮発性記憶素子（１００、１０２、１０４等）と、
この複数の不揮発性記憶素子に関連付けられた複数のビット線（ＢＬ０、ＢＬ１等）と、
前記複数の不揮発性記憶素子に関連付けられており、第１のワード線を含む複数のワード線（ＷＬ０，ＢＬ１等）と、
前記複数の不揮発性記憶素子、前記複数のビット線、及び前記複数のワード線と導通する一又は複数の管理回路（２４４、２２０、２３０、２４２、２４０）と、を含んでおり、
前記一又は複数の管理回路は、一又は複数のプログラミング電圧を前記ワード線に印加し、
前記一又は複数の管理回路は、複数のプログラム状態のそれぞれを検証する際に、前記複数のビット線上に第１バイアス条件を設定し、ここで、各プログラム状態を検証する際にそれぞれ別個の一組の第１バイアス条件が設定され、各ビット線へのバイアスは前記ビット線上の不揮発性記憶素子がプログラムされる状態に基づくものであり、
前記一又は複数の管理回路は、前記第１バイアス条件を設定した後に、前記不揮発記憶素子のビット線の条件を検出し、
前記一又は複数の管理回路は、前記読み出し処理中に、前記複数のビット線上に第２バイアス条件を設定し、ここで、読み出し中の各プログラム状態のためにそれぞれ別個の一組の第２バイアス条件が設定され、所定のプログラム状態のための前記第２バイアス条件は、前記所定のプログラム状態のための前記第１バイアス条件と実質的に一致し、
前記一又は複数の管理回路は、前記読み出し処理中に不揮発性記憶素子のビット線を検出する、システム。
【請求項１０】
所定のプログラム状態にプログラミング中のターゲット不揮発性記憶素子に隣接する不揮発性記憶素子は、前記所定のプログラム状態の検証中に、前記ターゲット不揮発性記憶素子のチャネル電位に依存するチャネル電位を有することを特徴とする請求項９に記載のシステム。
【請求項１１】
前記所定の状態を読み出す際に前記第２バイアス条件を前記複数のビット線に設定することで、前記所定の状態にプログラムされた不揮発性記憶素子に隣接する不揮発性記憶素子の実質的に全てに、前記所定の状態を検証する際の前記隣接する不揮発性記憶素子のチャネル電位と一致するチャネル電位を持たせる、請求項９又は１０に記載のシステム。
【請求項１２】
前記第１バイアス条件を設定するために、前記一又は複数の管理回路は、前記複数のビット線のうち、現在検証中の状態にプログラムされるべき不揮発性記憶素子を有するいくつかのビット線、及び現在検証中の状態のすぐ下の前記プログラム状態にプログラムされるべき不揮発性記憶素子を有するいくつかのビット線をプリチャージし、前記一又は複数の管理回路は、第１バイアス条件を設定するために前記複数のビット線のうち他の全てのビット線を接地し、
前記第２のバイアス条件を設定するために、前記一又は複数の管理回路は、前記複数のビット線のうち、現在読み出し中の状態であると大まかに判定された不揮発性記憶素子を有するいくつかのビット線、及び現在読み出し中の状態のすぐ下のプログラム状態にあると大まかに判定された不揮発性記憶素子を有するいくつかのビット線をプリチャージし、前記一又は複数の管理回路は、第２のバイアス条件を設定するために前記複数のビット線のうちの他の全てのビット線を接地することを特徴とする請求項９から１１のいずれか一項に記載のシステム。
【請求項１３】
前記一又は複数の管理回路は、前記不揮発性記憶素子のそれぞれがどの状態にあるかを大まかに判定するために複数の基準電圧レベルにて読み出しを行い、前記第２バイアス条件はこの読み出しに基づく、請求項９から１２のいずれか一項に記載のシステム。
【請求項１４】
前記第１バイアス条件を設定するために、前記一又は複数の管理回路は、現在検証中の状態にプログラムされるべき不揮発性記憶素子を有するビット線をプリチャージし、前記一又は複数の管理回路は、第１バイアス条件を設定するために前記複数のビット線のうちの他の全てのビット線を接地し、
前記第２バイアス条件を設定するために、前記一又は複数の管理回路は、前記複数のビット線の全てのビット線をプリチャージし、前記一又は複数の管理回路は、前記複数のプログラム状態のうちの最も高いプログラム状態の読み出しのための第１組の前記第２バイアス条件を設定するために、前記最も高いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行い、前記一又は複数の管理回路は、前記複数のプログラム状態の２番目に高いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行い、前記一又は複数の管理回路は、前記２番目に高いプログラム状態に関連付けられた電圧レベルにおける大まかな読み出しの後、前記２番目に高いプログラム状態の読み出しのための第２組の第２バイアス条件を設定するために、前記２番目に高いプログラム状態に関連付けられた電圧よりも高い閾値電圧を備える不揮発性記憶素子を有する全てのビット線を放電し、前記一又は複数の管理回路は、前記複数のプログラム状態の最も低いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行い、前記一又は複数の管理回路は、前記最も低いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しの後、前記最も低いプログラム状態の読み出しのための第３組の第２バイアス条件を設定するために、前記最も低いプログラム状態よりも高い状態に関連付けられた電圧よりも高い閾値電圧を備える不揮発性記憶素子を有する全てのビット線を放電する、
請求項９から１１のいずれか一項に記載のシステム。
【請求項１５】
第１バイアス条件を設定するために、前記一又は複数の管理回路は、現在検証中の状態にプログラムされるべき不揮発性記憶素子を有する複数のビット線と、現在検証中の状態よりも高いプログラム状態にプログラムされるべき不揮発性記憶素子を有するビット線とをプリチャージし、前記一又は複数の管理回路は、第１バイアス条件を設定するために前記複数のビット線のうちの他の全てのビット線を接地し、
前記第２バイアス条件を設定するために、前記一又は複数の管理回路は、前記複数のビット線のうち全てのビット線をプリチャージし、前記一又は複数の管理回路は、前記複数のプログラム状態のうちの最も低いプログラム状態の読み出しのための第１組の第２バイアス条件を設定するために、前記最も低いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行い、前記一又は複数の管理回路は、前記複数のプログラム状態のうちの２番目に高いプログラム状態の読み出しのための第２組の第２バイアス条件を設定するために、前記２番目に高いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行い、前記一又は複数の管理回路は、前記複数のプログラム状態の最も高いプログラム状態の読み出しのための第３組の第２バイアス条件を設定するために、前記最も高いプログラム状態に関連付けられた電圧レベルにて大まかな読み出しを行う、
請求項９から１１のいずれか一項に記載のシステム。
【請求項１６】
ワード線に関連付けられた複数のビット線と、前記ワード線に関連付けられた複数の不揮発性記憶素子とを含む不揮発性記憶システムであって、
一又は複数のプログラム電圧を前記ワード線に印加する手段（２４４，２２０，２４２，２３０，２４０）を含み、
複数のプログラム状態のそれぞれを検証する際に前記複数のビット線上に第１バイアス条件を設定するための手段（２４４，２２０，２４２，２３０，２４０）を含み、ここで、各プログラム状態を検証する際にそれぞれ別個の一組の第１バイアス条件が設定され、各ビット線へのバイアスはこのビット線上の不揮発性記憶素子がプログラムされる状態に基づくものであり、
前記第１バイアス条件を設定した後に、前記複数のビット線のうちいくつかのビット線の条件を検出するための手段（２４４，２２０，２４２，２３０，２４０）を含み、
読み出し処理中に前記複数のビット線上に第２バイアス条件を設定するための手段（２４４，２２０，２４２，２３０，２４０）を含み、ここで、読み出される各プログラム状態のためにそれぞれ別個の一組の第２バイアス条件が設定され、所定のプログラム状態のための前記第２バイアス条件は、前記所定のプログラム状態のための前記第１バイアス条件と実質的に一致し、
前記読み出し処理中に不揮発性記憶素子のビット線を検出するための手段（２４４，２２０，２４２，２３０，２４０）を含む、不揮発性記憶システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この開示は、不揮発性記憶装置に関する。
【背景技術】
【０００２】
半導体メモリは、様々な電子装置に使用されることが一般的になってきている。例えば、不揮発性半導体メモリは、パーソナルナビゲーションデバイス、携帯電話、デジタルカメラ、パーソナルデジタルアシスタント、モバイルコンピュータ、非モバイルコンピュータ及び他の装置において使用されている。電気的に消去・プログラム可能な読取専用メモリ（ＥＥＰＲＯＭ）及びフラッシュメモリは、最も普及している不揮発性半導体メモリの一つである。
【０００３】
ＥＥＰＲＯＭ及びフラッシュメモリの両者において、メモリセルは、フローティングゲートを有するトランジスタを含む。フローティングゲートは、半導体基板内でチャネル領域の上方に位置するとともに、チャネル領域から絶縁されている。フローティングゲート及びチャネル領域は、ソース領域とドレイン領域の間に配置されている。制御ゲートは、フローティングゲートの上方に設けられ、フローティングゲートから絶縁されている。トランジスタの閾値電圧（Ｖｔｈ）は、フローティングゲート上に保持される電荷量によって制御される。つまり、ソースとドレインの間の導通を許容するためにトランジスタをオンにするために制御ゲートに印加すべき電圧の最小量は、フローティングゲート上の電荷レベルにより制御される。伝導電流の検出を可能にするためにメモリセルはビット線に接続され得る。
【０００４】
ＮＡＮＤフラッシュメモリデバイスのようなフラッシュメモリデバイスやＥＥＰＲＯＭにおけるメモリセルのプログラミングでは、通常、ビット線が接地されるとともに、制御ゲートにプログラム電圧が印加される。チャネルからの電子がフローティングゲートに注入される。電子がフローティングゲートに蓄積されると、フローティングゲートは負に帯電し、メモリセルの閾値電圧が上昇して、メモリセルはプログラムされた状態（プログラム状態）になる。プログラミングに関するさらなる情報は、「不揮発性メモリのソース側セルフブースト技術」と題する米国特許６，８５９，３９７号、「プログラムされたメモリに対する検出」と題する米国特許６，９１７，５４２号、及び「不揮発性メモリのプログラミング」と題する米国特許６，８８８，７５８に記載されている。これら三つの引用された特許は、その全体が参照により本明細書に援用される。
【０００５】
多くの場合、制御ゲートには、プログラム電圧として、パルス毎に大きさが増加する一連のパルス（プログラミングパルス列と呼ばれる）が印加される。プログラミングパルス間では、プログラムされるメモリセルがその目標レベルに達しているかどうかを判断するために、一又は複数の検証動作が実行される。メモリセルがその目標レベルに達していれば、そのメモリセルに対するプログラミングは停止される。メモリセルがその目標レベルに達していなければ、そのメモリセルに対するプログラミングは継続される。
【０００６】
一部のＥＥＰＲＯＭやフラッシュメモリデバイスのメモリセルは、２つの電荷範囲を保持するために使用されるフローティングゲートを有し、それによって、メモリセルは、２つの状態（消去された状態（消去状態）とプログラムされた状態（プログラム状態））の間で、プログラム／消去されることができる。
【０００７】
マルチステートメモリデバイスは、複数の異なる有効な閾値電圧（Ｖｔ）分布（即ちデータ状態）を識別することにより、メモリセル毎に複数ビットのデータを記憶することができる。それぞれの異なったＶｔ分布は、メモリデバイスでエンコードされた一組のデータビットのために予め定められた値に対応する。例えば、２ビットのデータを記憶するメモリセルは４つの有効なＶｔ分布を使用し、３ビットのデータを記憶するメモリセルは８つの有効なＶｔ分布を使用する。
【０００８】
メモリセルのＶｔの読み出しに影響を与える要因の一つは、それに隣接するメモリセル（即ちセル）のチャネル電位である。隣接セルのドレイン側チャネル電位が０．４ボルトであると、隣接セルのドレイン側チャネル電位が０ボルトの場合と比較して、メモリセルの見かけのＶｔは異なることがある。
【０００９】
不揮発性記憶素子が一旦プログラムされた後は、そのプログラム状態が高い信頼性で読み戻し可能であることが重要である。しかしながら、メモリセルが検証された時から後に読み出される時までの間に隣接セルのチャネル電位が変化すると、それによってメモリセルの見かけのＶｔが影響を受けることがある。それにより、メモリセルが誤って読み出されることがある。
【００１０】
チャネル電位の差のようなプログラム検証時の状態と読み出し時の状態との間の差を低減するための一つの技術は、プログラム検証及び読み出しの間に、他の全てのビット線の検出（センス）を単に行うことである。これによると、プログラム検証及び読み出しの両者の間で、隣接セルのチャネル電位を０Ｖに維持される。しかしながら、単に他の全てのビット線の読み出しを同時に行うと、検証及び読み出しに要する時間が倍になることがある。多くのプログラムサイクルが必要になり得るとともに、各々が独自の検証動作を有することから、各々のプログラム?サイクルで検証動作の数が倍になれば、性能に悪影響を及ぼすことになる。
【図面の簡単な説明】
【００１１】
【図１】ＮＡＮＤストリングの上面図である。
【００１２】
【図２】図１のＮＡＮＤストリングの等価回路図である。
【００１３】
【図３】不揮発性記憶システムのブロック図である。
【００１４】
【図４】メモリアレイの一実施形態を表すブロック図である。
【００１５】
【図５】検出ブロックの一実施形態を表すブロック図である。
【００１６】
【図６Ａ】一組のＶｔ分布の例を表している。
【００１７】
【図６Ｂ】一組のＶｔ分布の例を表している。
【００１８】
【図６Ｃ】４つの状態を有するメモリデバイス（各記憶素子が２ビットのデータを記憶する）のための一組の閾値電圧の例を表している。
【００１９】
【図６Ｄ】プログラミング動作時に、選択したワード線に印加される一連のプログラム及び検証パルスを表している。
【００２０】
【図７Ａ】一又は複数の検証ステップを含むプログラミング処理の一実施形態を説明するフローチャートである。
【００２１】
【図７Ｂ】粗い／細かいプログラミングなしに検証を行う処理の一実施形態を説明するフローチャートである。
【００２２】
【図７Ｃ】粗い／細かいプログラミングが使用される検証の処理の一実施形態を説明するフローチャートである。
【００２３】
【図７Ｄ】粗い／細かいプログラミング処理の一例がどのように行われるかを示すための、閾値電圧（ＶＴ）対時間及びビット線電圧（ＶＢＬ）対時間のグラフである。
【００２４】
【図８Ａ】プログラミング処理中にメモリセルを検証するための処理の一実施形態のフローチャートである。
【００２５】
【図８Ｂ】メモリセルを読み出すための処理の一実施形態のフローチャートを表している。
【００２６】
【図９Ａ】プログラミング中の閾値電圧分布の一例を表している。
【００２７】
【図９Ｂ】プログラミングが完了した後の閾値電圧分布の一例を表している。
【００２８】
【図１０Ａ】検証中に第１バイアス条件を設定するための処理の一実施形態のフローチャートである。
【００２９】
【図１０Ｂ】大まかな読み出しを行うための処理の一実施形態のフローチャートである。
【００３０】
【図１０Ｃ】大まかな読み出しに基づき第２のビット線バイアス条件を設定するための処理の一実施形態のフローチャートである。
【００３１】
【図１１Ａ】検証中に第１バイアス条件の設定をするための処理の一実施形態のフローチャートである。
【００３２】
【図１１Ｂ】メモリセルを読み出すための処理の一実施形態のフローチャートである。
【００３３】
【図１２Ａ】検証中に第１バイアス条件を設定するための処理の一実施形態のフローチャートである。
【００３４】
【図１２Ｂ】大まかな読み出しを行い、読み出し中に第２のビット線条件を設定するための処理の一実施形態のフローチャートである。
【００３５】
【図１３】メモリセルを検証する処理の一実施形態のフローチャートである。
【００３６】
【図１４Ａ】検証のためのビット線バイアス条件の判定のためにどのようにラッチからのデータが使用され得るかの一実施形態を示すために条件を集約した表を表している。
【図１４Ｂ】検証のためのビット線バイアス条件の判定のためにどのようにラッチからのデータが使用され得るかの一実施形態を示すために条件を集約した表を表している。
【図１４Ｃ】検証のためのビット線バイアス条件の判定のためにどのようにラッチからのデータが使用され得るかの一実施形態を示すために条件を集約した表を表している。
【００３７】
【図１５】検出モジュールの一例を示す。
【００３８】
【図１６】図１５のセンス増幅器を使用して読み出し中又は検証中に検出を行う一実施形態のタイミング図である。
【発明を実施するための最良の形態】
【００３９】
不揮発性記憶装置の動作を向上させる技術を開示する。特定のメモリセルが読み出し中に一又は複数の隣接するメモリセルから受けるチャネル結合の量を、検証中にこの隣接するメモリセルから生じたチャネル結合の量と一致させることができる。したがって、プログラム検証と読み出しとの間のチャネル結合の相違が減少又は除去される。
【００４０】
検出されるターゲットメモリセルの閾値電圧は隣接するメモリセルのビット線バイアスに依存し得ることに留意されたい。例えば、隣接するメモリセルのビット線が接地されている場合、この隣接するメモリセルのビット線がＶｂｌ（Ｖｂｌは例えば０．４Ｖであり得る）でバイアスがかけられている場合に比べてターゲットメモリの閾値電圧が高くなり得る。一方、隣接するメモリセルのビット線がＶｂｌでバイアスがかけられている場合、ビット線が接地されている場合に比べてターゲットメモリセルの閾値電圧は低くなり得る。実施形態には、ターゲットメモリセルの読み出し中の隣接するビット線のビット線バイアス条件を、ターゲットメモリセルの検証中に用いられた隣接するビット線バイアス条件と一致させる方法及び装置が含まれる。これは、チャネル結合効果を軽減することを助け得る。
【００４１】
チャネル結合の係る差異を減少させることでメモリセルの閾値電圧の判定の正確性を向上させ得る。更に、全てのビット線は、検証と読み出しの両方の間、共に読み出され得る。したがって、検出及び読み出しが効率的である。プログラミング中に一又は複数の検証動作が各プログラミングパルスのために行われ得ることに留意されたい。したがって、全てのビット線を共に検出することにより各プログラミングパルスの後の検証動作の数を減らすことは非常に有用である。更に、ビット線のうち少なくともいくつかは、少なくともいくつかの検証及び読み出し動作中に接地することができ、これにより電力を節約し得る。更に、消費される電流のピーク値も低下させることができる。
【００４２】
いくつかの実施形態において、不揮発性記憶素子はフラッシュメモリアレイ内にある。フラッシュメモリシステムの一例はＮＡＮＤ構造を用い、２つの選択ゲート間に複数のトランジスタを直列で配列することを含む。直列のトランジスタと選択ゲートをＮＡＮＤストリングと呼ぶ。ＮＡＮＤ構造体がアーキテクチャの一例として記載されるが、本明細書において記載される技術はＮＡＮＤアーキテクチャに限定されない。
【００４３】
図１は１つのＮＡＮＤストリングを示す平面図である。図２は、その等価回路である。図１と図２に示すＮＡＮＤストリングは、第１（あるいはドレイン側）選択ゲート１２０と第２（あるいはソース側）選択ゲート１２２の間に挟まれているとともに直列に接続されている４つのトランジスタ１００、１０２、１０４及び１０６を有する。選択ゲート１２０は、ビット線接続１２６を介してＮＡＮＤストリングをビット線に接続する。選択ゲート１２２はＮＡＮＤストリングをソース線１２８に接続する。選択ゲート１２０は、選択線ＳＧＤに適切な電圧を印加することで制御される。選択ゲート１２２は、選択線ＳＧＳに適切な電圧を印加することで制御される。トランジスタ１００、１０２、１０４、及び１０６のそれぞれは制御ゲートとフローティングゲートを有している。例えば、トランジスタ１００は、制御ゲート１００ＣＧとフローティングゲート１００ＦＧを有している。トランジスタ１０２は、制御ゲート１０２ＣＧとフローティングゲート１０２ＦＧを有している。トランジスタ１０４は、制御ゲート１０４ＣＧとフローティングゲート１０４ＦＧを有している。トランジスタ１０６は、制御ゲート１０６ＣＧとフローティングゲート１０６ＦＧを有している。制御ゲート１００ＣＧは、ワード線ＷＬ３に接続されており、制御ゲート１０２ＣＧはワード線ＷＬ２に接続されており、制御ゲート１０４ＣＧはワード線ＷＬ１に接続されており、制御ゲート１０６ＣＧはワード線ＷＬ０に接続されている。
【００４４】
図１及び図２はＮＡＮＤストリングの中の４個のメモリセルを示しているが、４つのトランジスタの使用は例としてのみ示されていることに注意されたい。本明細書に説明する技術とともに使用するＮＡＮＤストリングは、４個未満のメモリセル又は４個を超えるメモリセルを有していてもよい。例えば、いくつかのＮＡＮＤストリングは８個のメモリセル、１６個のメモリセル、３２個のメモリセル、６４個のメモリセル、１２８個のメモリセル等を含む。本明細書の説明はＮＡＮＤストリングの中の特定の数のメモリセルに制限されない。
【００４５】
ＮＡＮＤ構造体を使用するフラッシュメモリシステムのための典型的なアーキテクチャは多くのＮＡＤＮストリングを含む。各ＮＡＮＤストリングは、選択線ＳＧＳによって制御されるソース選択ゲートによってそのソース線に接続され、かつ、選択線ＳＧＤによって制御されるドレイン選択ゲートによってその関連付けられたビット線に接続される。各ビット線及びビット線接続を介してこのビット線に接続された各ＮＡＮＤストリングは、メモリセルのアレイの列を備える。ビット線は複数のＮＡＮＤストリングと共有される。典型的に、ビット線は、ＮＡＮＤストリングの上面でワード線に対して垂直方向に走り、かつ一又は複数のセンス増幅器に接続されている。
【００４６】
各メモリセルは、データ（アナログ又はデジタル形式）を記憶することができる。１ビットのデジタルデータを記憶するときに、メモリセルの可能な閾値電圧の範囲は、論理データ「１」と「０」が割り当てられる２つの範囲に分割される。ＮＡＮＤ型フラッシュメモリの一例では、電圧閾値は、メモリセルが消去された後には負になり、論理「１」と定義される。閾値電圧はプログラミング後には正となり、論理「０」と定義される。閾値電圧が負のときに、制御ゲートに０ボルトを印加することにより読み出しが試みられると、メモリセルがオンになり論理１を記憶していることを示す。閾値電圧が正のときに、制御ゲートに０ボルトを印加することにより読み出し動作が試みられると、メモリセルはオンにならずに論理０を記憶していることを示す。
【００４７】
複数レベルのデータを記憶する場合、可能性のある閾値電圧の範囲はデータのレベル数に分割される。例えば、４つのレベルの情報が記憶される場合（２バイトのデータ）、データ値「１１」、「１０」、「０１」、及び「００」に割り当てられる４つの閾値電圧範囲がある。ＮＡＮＤ型メモリの一例では、消去動作後の閾値電圧は負であり「１１」と定義される。正の閾値電圧は「１０」、「０１」及び「００」のデータ状態のために使用される。８つのレベルの情報（あるいは状態）が記憶される場合（例えば３ビットのデータ）、データ値「０００」、「００１」、「０１０」、「０１１」、「１００」、「１０１」、「１１０」及び「１１１」に割り当てられた８つの閾値電圧範囲がある。
【００４８】
メモリセルにプログラムされるデータとセルの閾値電圧レベルの間の具体的な関係は、セルに採用されるデータ符号化方式によって決まる。一実施形態においては、フローティングゲートの閾値電圧が誤ってその隣接する物理状態にシフトした場合に１つのビットだけが影響を受けるように、グレイコード割当を用いてデータ値が閾値電圧範囲に割り当てられる。いくつかの実施形態において、異なるワード線に対してデータ符号化方式を変更することができ、データ符号化方式は時間の経過とともに変更することができ、あるいは、ランダムなワード線のデータビットは、データパターン感度を低減しかつメモリセルの劣化を均一にするために、反転され得る。
【００４９】
ＮＡＮＤ型フラッシュメモリ及びそれらの動作の関連する例は、次の米国特許／特許出願において記載されており、それら全てはその全体を参照することにより本明細書に組み込まれる。米国特許第５，５７０，３１５号、米国特許第５，７７４，３９７号、米国特許第６，０４６，９３５号、米国特許第６、４５６、５２８号、及び米国特許公開ＵＳ２００３／０００２３４８号。本明細書における記載事項はＮＡＮＤ型に加えて他の種類のフラッシュメモリ、更には他の不揮発性メモリにも適用することができる。
【００５０】
ＮＡＮＤフラッシュメモリに加えて、他のタイプの不揮発性記憶装置もまた用いることができる。例えば、基本的に（フローティングゲートの代わりに）窒化物層内に電荷をトラッピングするメモリセルである、いわゆるＴＡＮＯＳ構造（ＴａＮ−Ａｌ２Ｏ３−ＳｉＮ−ＳｉＯ２の積層から構成される構造）にも本発明は適用できる。フラッシュＥＥＰＲＯＭに有用な他のタイプのメモリセルが、伝導性のフローティングゲートに代えて、非伝導性の誘電材料を採用し、不揮発な方法で電荷を蓄積する。係るセルは、Ｃｈａｎらによる記事、「Ａ  Ｔｒｕｅ  Ｓｉｎｇｌｅ−Ｔｒａｎｓｉｓｔｏｒ  Ｏｘｉｄｅ−Ｎｉｔｒｉｄｅ−Ｏｘｉｄｅ  ＥＥＰＲＯＭ  Ｄｅｖｉｃｅ」、ＩＥＥＥ  Ｅｌｅｃｔｒｏｎ  Ｄｅｖｉｃｅ  Ｌｅｔｔｅｒｓ、ＥＤＬ−８巻、第３号、１９８７年３月の９３から９５ページに説明されている。酸化ケイ素、窒化ケイ素、及び酸化ケイ素（「ＯＮＯ」）から形成される三層の誘電体が、メモリセルチャネル上で半導電性基板の表面と導電性制御ゲートとの間に挟まれている。セルは、セルチャネルから窒化物の中に電子を注入することにより書込みが行われ、窒化物内において電子が制限領域内にトラッピングされ蓄積される。この蓄積された電荷は、次に、検出可能な方法で、セルのチャネルの一部の閾値電圧を変更する。セルは、窒化物中にホットホールを注入することによって消去される。Ｎｏｚａｋｉら、「Ａ  １−Ｍｂ  ＥＥＰＲＯＭ  ｗｉｔｈ  ＭＯＮＯＳ  Ｍｅｍｏｒｙ  Ｃｅｌｌ  ｆｏｒ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  Ｄｉｓｋ  Ａｐｐｌｉｃａｔｉｏｎ」、ＩＥＥＥ  Ｊｏｕｒｎａｌ  ｏｆ  Ｓｏｌｉｄ−Ｓｔａｔｅ  Ｃｉｒｃｕｉｔｓ、第２６巻、第４号、１９９１年４月、４９７から５０１ページに、分離した選択トランジスタを形成するためにドーピングされたポリシリコンゲートがメモリセルチャネルの一部に拡がっている分割ゲート構成における同様のセルが説明されている。前記２つの記事は、参照によりその全体が本明細書に組み込まれる。参照により本明細書に組み込まれるＷｉｌｌｉａｍ  Ｄ．  Ｂｒｏｗｎ及びＪｏｅ  Ｅ．  Ｂｒｅｗｅｒによって編集された「Ｎｏｎｖｏｌａｔｉｌｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  Ｍｅｍｏｒｙ  Ｔｅｃｈｎｏｌｏｇｙ」、ＩＥＥＥ出版１９９８年の第１．２項にも、誘電電荷トラップ装置に適用可能である書き込み技法が説明されている。他のタイプのメモリ素子も使用できる。
【００５１】
図３は、１つ以上のメモリダイ又はチップ２１２を有する不揮発性記憶デバイス２１０を示している。メモリダイ２１２は、メモリセルの（２次元又は３次元の）アレイ２００、制御回路２２０、及び、リード／ライト回路２３０Ａと２３０Ｂを有する。一実施形態では、様々な周辺回路によるメモリアレイ２００へのアクセスはアレイの両側で対称的に実装されており、これにより、各側のアクセス線及び回路の密度が半分に低減される。リード／ライト回路２３０Ａ及び２３０Ｂは、複数のセンスブロック（検出ブロック）３００を有しており、それらのセンスブロック３００によって１ページのメモリセルを並列に読み出し又は書き込みすることができる。メモリアレイ１００は、行デコーダ２４０Ａと２４０Ｂを介したワード線と、列デコーダ２４２Ａと２４２Ｂを介したビット線によってアドレス指定される。典型的な実施形態では、コントローラ２４４は、１つ以上のメモリダイ２１２のような同じメモリデバイス２１０（例えば、取り外し可能なストレージカード又はパッケージ）内に含まれる。命令、及びデータは、線２３２を介してホストとコントローラ２４４の間で転送され、また、線２３４を介してコントローラと１つ以上のメモリダイ２１２の間で転送される。一実施態様は複数チップ２１２を含むことができる。
【００５２】
制御回路２２０は、リード／ライト回路２３０Ａと２３０Ｂと協調して、メモリアレイ２００に対してメモリ動作を実行する。制御回路２２０は、ステートマシン２２２、オンチップアドレスデコーダ２２４、及び電力制御モジュール２２６を有している。ステートマシン２２２は、メモリ動作のチップレベルの制御を提供する。オンチップアドレスデコーダ２２４は、ホスト又はメモリコントローラによって用いられるアドレスと、デコーダ２４０Ａ、２４０Ｂ、２４２Ａ及び２４２Ｂによって用いられるハードウェアアドレスの間のアドレスインタフェースを提供する。電力制御モジュール２２６は、メモリ動作中のワード線及びビット線に供給される電力及び電圧を制御する。一実施形態では、電力制御モジュール２２６は、供給電力より大きな電圧を作り出すことができる一又は複数のチャージポンプを有する。
【００５３】
一実施形態では、制御回路２２０、電力制御回路２２６、デコーダ回路２２４、ステートマシン回路２２２、デコーダ回路２４２Ａ、デコーダ回路２４２Ｂ、デコーダ回路２４０Ａ、デコーダ回路２４０Ｂ、リード／ライト回路２３０Ａ、リード／ライト回路２３０Ｂ、及び／又はコントローラ２４４の１つ又はいくつかの組合せは、１つの管理回路、あるいは複数の管理回路群と称されることがある。
【００５４】
図４は、メモリセルアレイ２００の例示的な構造を示す。一実施形態においては、メモリセルのアレイはメモリセル群のＭ個のブロックに分割される。フラッシュＥＥＰＲＯＭシステムにおいて一般的であるように、このブロックは消去の単位である。すなわち、各ブロックは共に消去される最小数のメモリセルを含む。各ブロックは、通常、複数のページに分割される。ページは書き込み（プログラム）の単位である。通常、１つ又は複数ページのデータが１列のメモリセルに記憶される。１つのページは、１つ又は複数のセクタを記憶できる。１つのセクタは、ユーザデータとオーバヘッドデータを含む。オーバヘッドデータは、通常、セクタのユーザデータから算出される誤り訂正符号（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｄｅ：ＥＣＣ）を含む。コントローラ（後述）の一部が、データがアレイに書き込まれているときにＥＣＣを計算し、データがアレイから読み出されているときにＥＣＣのチェックも行う。代わりに、ＥＣＣ及び／又は他のオーバヘッドデータはそれらが関係するユーザデータとは異なるページに記憶され、又は異なるブロックに記憶されることがある。ユーザデータのセクタは通常、磁気ディスクドライブ内のセクタサイズに相当する５１２バイトである。例えば８ページから３２、６４、１２８、あるいはそれ以上のページまでの多数のページが１ブロックを形成する。異なるサイズのブロックと配置も採用することができる。
【００５５】
別の実施形態では、ビット線は偶数のビット線と奇数のビット線に分けられる。奇数／偶数ビット線アーキテクチャでは、共通ワード線に沿っており奇数ビット線に接続されたメモリセル群は、同時にプログラムが行われる。これに対し、共通ワード線に沿っており偶数ビット線に接続されたメモリセル群は、別のタイミングで同時に書き込みが行われる。
【００５６】
図４は、メモリアレイ２００の第ｉブロックの詳細を示している。第ｉブロックは、Ｘ＋１ビット線とＸ＋１ＮＡＮＤストリングを含んでいる。第ｉブロックは、６４本のデータワード線（ＷＬ０〜ＷＬ６３）、２本のダミーワード線（ＷＬ＿ｄ０、ＷＬ＿ｄ１）、ドレイン側選択線（ＳＧＤ）、及び、ソース側選択線（ＳＧＳ）も含んでいる。各ＮＡＮＤストリングの一端は、（選択線ＳＧＤに接続されている）ドレイン選択ゲートを介して対応するビット線に接続されており、他端は、（選択線ＳＧＳに接続されている）ソース選択ゲートを介してソース線に接続されている。６４本のデータワード線と２本のダミーワード線が存在するので、各ＮＡＮＤストリングは、６４個のデータメモリセルと２個のダミーメモリセルを含んでいる。他の実施形態では、ＮＡＮＤストリングは、６４個のデータメモリセルと２個のダミーメモリセルより多い、あるいは少ないものを有していてもよい。データメモリセルは、ユーザ又はシステムのデータを記憶することができる。ダミーメモリセルは、通常、ユーザ又はシステムのデータを記憶するのには用いられない。いくつかの実施形態は、ダミーメモリセルを有していない。
【００５７】
図５は、センスモジュール４８０と呼ばれるコア部と共通部４９０に分割された個々のセンスブロック３００のブロック図である。一実施形態では、各ビット線に対して個別のセンスモジュール４８０を用意し、一組の複数センスモジュール４８０に対して一つの共通部４９０を用意してもよい。一例として、１個のセンスブロックは、１個の共通部４９０と８個のセンスモジュール４８０を有している。グループ内の各センスモジュールは、データバス４７２を介して協働する共通部と通信する。さらなる詳細としては、参照によりその全体が本明細書に組み込まれる米国特許出願公開公報２００６／０１４０００７号を参照されたい。
【００５８】
センスモジュール４８０は、接続されたビット線内の伝導電流が予め決められた閾値レベルより高いか低いかを判定するセンス回路４７０を備えている。いくつかの実施形態では、センスモジュール４８０は、センスアンプと一般に呼ばれる回路を有する。センスモジュール４８０は、さらに、接続されたビット線に電圧状態を設定するために用いられるビット線ラッチ４８２を有している。例えば、ビット線ラッチ４８２内で予め決められた状態がラッチされることによって、接続されたビット線を、プログラム禁止を指定する状態（例えば、Ｖｄｄ）に引き上げる（プル）する。いくつかの実施形態において、特定のプログラム状態の検証中の各ビット線上の電圧状態は、この特定のプログラム状態の読み出し中の各ビット線上の電圧状態と一致される。
【００５９】
共通部４９０は、プロセッサ４９２、一組のデータラッチ４９４、及び、一組のデータラッチ４９４とデータバス４２０の間を接続するＩ／Ｏインタフェース４９６を備えている。プロセッサ４９２は計算を実行する。例えば、その機能の１つは、検出されたメモリセル内に記憶されているデータを特定し、特定されたデータを一組のデータラッチ内に記憶することである。いくつかの実施形態において、プロセッサ４９２は検証中及び読み出し中にビット線に印加されるべき電圧の値を判定する。検証中に、プロセッサ４９２はこの判定をビット線上のメモリセルがプログラムされる（又は、された）状態に基づいて行うことができる。読み出し中に、プロセッサ４９２はこの判定を、どの状態にプログラムされたかを大まかに判定するためのメモリセルの大まかな読み出しに基づき行うことができる。この一組のデータラッチ４９４は、読み出し動作中にプロセッサ４９２によって特定されたデータビット群を記憶するために用いられる。一組のデータラッチ４９４は、プログラム動作中にデータバス４２０から取り込んだデータビット群を記憶するためにも用いられる。取り込まれたデータビット群は、メモリ内に書き込む予定のライトデータ（書き込みデータ）を表す。Ｉ／Ｏインタフェース４９６は、データラッチ４９４とデータバス４２０の間のインタフェースを提供する。
【００６０】
読み出し又は検出中には、システムの動作はステートマシン２２２の制御下にあり、ステートマシン２２２はアドレス指定されたセルへの種々の制御ゲート電圧の供給を制御する。メモリに用意された様々なメモリ状態に対応する様々な既定制御ゲート電圧のステップを進むとき、センスモジュール４８０はこれらの電圧の１つにて遷移し得、バス４７２を介してセンスモジュール４８０からプロセッサ４９２に出力が提供される。その時点で、プロセッサ４９２は、センスモジュールの遷移イベントと、ステートマシンから入力線４９３を介して加えられた制御ゲート電圧についての情報によって、生じたメモリ状態を特定する。それから、プロセッサは、メモリ状態に対するバイナリ符号化を計算し、得られたデータビット群をデータラッチ４９４に格納する。コア部の別の実施形態では、ビット線ラッチ４８２は、センスモジュール４８０の出力をラッチするラッチ、及び、上記のようなビット線ラッチの２つの役割を持つ。
【００６１】
当然のことながら、いくつかの実施形態では複数のプロセッサ４９２を有することができる。一実施形態では、各プロセッサ４９２は出力線（図５には示されていない）を有し、各出力線は共にワイヤードＯＲ接続される。いくつかの実施形態では、出力線は、ワイヤードＯＲ線に接続される前段階で反転される。この構成は、ワイヤードＯＲの結果を受け取るステートマシンが、プログラミング中の全てのビットがいつ所望のレベルに到達したかを判断できるので、プログラム処理の完了時点を判定するプログラム検証処理における素早い判定を可能にする。例えば、各ビットがその所望のレベルに到達すると、そのビット用の論理「０」がワイヤードＯＲ線に送られる（又はデータ「１」が反転される）。全てのビットがデータ「０」を出力すると（又はデータ「１」が反転されると）、ステートマシンはプログラム処理の完了を知る。各プロセッサが８個のセンスモジュールと通信する実施形態では、（いくつかの実施形態において）ステートマシンはワイヤードＯＲ線を８回読み出す必要があってもよいし、あるいは、協働するビット線の結果を蓄積するための論理をプロセッサ４９２に追加し、ステートマシンがワイヤードＯＲ線を一度だけ読み出せば良いようにしてもよい。
【００６２】
プログラム又は検証処理の間、プログラムされるべきデータはデータバス４２０から一組のデータラッチ４９４内に記憶される。ステートマシン制御下のプログラム動作は、アドレス指定されるメモリセルの制御ゲートに加えられる一連の（値の増加を伴う）プログラミング電圧パルスを伴う。各プログラミングパルスに続いて検証処理が実行され、メモリセルが所望の状態にプログラムされたか否かを判定する。プロセッサ４９２は、所望のメモリ状態に対して、検証されたメモリ状態を監視する。その２つが一致したとき、プロセッサ４９２は、プログラム禁止を指定する状態にビット線を引き上げる（プルする）ようにビット線ラッチ４８２を設定する。これにより、たとえプログラミングパルスがその制御ゲートに影響しても、ビット線に接続したセルがさらにプログラミングされないようにすることができる。他の実施形態では、プロセッサが最初にビット線ラッチ４８２をロードし、センス回路が検証処理中にビット線ラッチ４８２に禁止値を設定する。いくつかの実施形態において、メモリセルが更なるプログラミングを禁止されていても、ビット線は検証処理中に正常に充電され得る。換言すると、ビット線上のセルのために検証がもはや必要でないとしても、検証を行うことができるようにビット線は充電される。これにより、検証中のターゲットメモリセルに隣接するメモリセルのチャネル電位をターゲットメモリセルの読み出し中に隣接するメモリセルのチャネル電位と一致させることができる。
【００６３】
データラッチスタック４９４は、センスモジュールに対応するデータラッチのスタックを有する。一実施形態では、センスモジュール４８０毎に３個から５個の（あるいはその他の数の）データラッチが存在する。一実施形態では、ラッチは夫々１ビットである。いくつかの実装形態では、（必須ではないが）データラッチはシフトレジスタとして実装され、内部に記憶されたパラレルデータをデータバス４２０用にシリアルデータに変換したり、その逆を行ったりする。好適な一実施形態では、ｍ個のメモリセルのリード／ライトブロックに対応する全てのデータラッチを相互にリンクしてブロックシフトレジスタを構成し、シリアル転送によってデータのブロックを入力又は出力できるようにする。特に、リード／ライトモジュールの一群のデータラッチのそれぞれが、データバスへあるいはデータバスからデータを順に転送するようにリード／ライトモジュールのバンクを構成し、一群のデータラッチがあたかもリード／ライトブロック全体のシフトレジスタの一部であるかのようにしてもよい。
【００６４】
読み出し動作やセンス増幅器についてのさらなる情報は次の文献に記載されている。（１）米国特許第７，１９６，９３１号、「Ｎｏｎ−Ｖｏｌａｔｉｌｅ  Ｍｅｍｏｒｙ  Ａｎｄ  Ｍｅｔｈｏｄ  Ｗｉｔｈ  Ｒｅｄｕｃｅｄ  Ｓｏｕｒｃｅ  Ｌｉｎｅ  Ｂｉａｓ  Ｅｒｒｏｒｓ」（２）米国特許第７，０２３，７３６号、「Ｎｏｎ−Ｖｏｌａｔｉｌｅ  Ｍｅｍｏｒｙ  Ａｎｄ  Ｍｅｔｈｏｄ  ｗｉｔｈ  Ｉｍｐｒｏｖｅｄ  Ｓｅｎｓｉｎｇ」、（３）米国特許出願公開２００５／０１６９０８２号、（４）米国特許第７，１９６，９２８号、「Ｃｏｍｐｅｎｓａｔｉｎｇ  ｆｏｒ  Ｃｏｕｐｌｉｎｇ  Ｄｕｒｉｎｇ  Ｒｅａｄ  Ｏｐｅｒａｔｉｏｎｓ  ｏｆ  Ｎｏｎ−Ｖｏｌａｔｉｌｅ  Ｍｅｍｏｒｙ」、及び、（５）米国特許出願公開２００６／０１５８９４７号、「Ｒｅｆｅｒｅｎｃｅ  Ｓｅｎｓｅ  Ａｍｐｌｉｆｉｅｒ  Ｆｏｒ  Ｎｏｎ−Ｖｏｌａｔｉｌｅ  Ｍｅｍｏｒｙ」、２００６年７月２０日出願。これら５個の特許文献の全ては、参照によりその全体が本明細書に組み込まれる。
【００６５】
成功したプログラミング処理（検証を含む）の最後において、メモリセルの閾値電圧は、必要に応じて、プログラムされたメモリセルの１つ又は複数の閾値電圧の分布内、あるいは、消去されたメモリセルの閾値電圧の分布内となる。図６Ａは、各メモリセルが４ビットデータを記憶する場合におけるメモリセルアレイについてのデータ状態に対応した閾値電圧分布の例を示す。なお、他の実施形態では、１メモリセルあたり４ビットよりも多い、あるいは少ないデータを採用してもよい。図６Ａは、データ状態０〜１５に対応する１６個の閾値電圧分布を示している。一実施形態では、状態０の閾値電圧は負値であり、状態１〜１５の閾値電圧は正値である。しかしながら、データ状態１〜１５のうちの一又は複数の閾値電圧は負値でもよい。
【００６６】
データ状態０〜１５の夫々の間は、メモリセルからデータを読み出す際に用いられる読み出し基準電圧である。例えば、図６Ａは、データ状態０と１の間の読み出し基準電圧Ｖｒ１と、データ状態１と２の間の読み出し基準電圧Ｖｒ２を示している。メモリセルの閾値電圧が各読み出し基準電圧よりも高いか低いかをテストすることによって、システムはそのメモリセルがどの状態にあるかを判定することができる。
【００６７】
各データ状態０〜１５の下限あるいはその付近は、検証基準電圧である。例えば、図６Ａは、状態１に対するＶｖ１と、状態２に対するＶｖ２を示している。所定の状態にメモリセルをプログラミングする際、システムはそれらのメモリセルが検証基準電圧に等しいかそれより高い閾値電圧を有するかをテストする。いくつかの実施形態において、一のデータ状態（例えば最も低いデータ状態）は消去状態（消去された状態）として呼ばれ、他の全ての状態は「プログラム状態（プログラムされた状態）」として呼ばれる。
【００６８】
図６Ｂは、データ状態０〜１５に対応する閾値電圧分布の他の実施形態を示している。この実施形態では、補正アルゴリズムが、エラーとなっているある程度の割合のセルを扱うことができるので、閾値電圧分布が部分的にオーバーラップすることができる。
【００６９】
Ｖｔ軸（閾値電圧軸）は、制御ゲートに印加される実際の電圧からオフセットされ得ることに留意されたい。オフセットは、ソースを通じたボディ効果、あるいは、負値の閾値電圧を測定可能な正値範囲にシフトさせるためにボディバイアスが用いられることにより生じる。図示された１６個の状態は等間隔／等幅になっているが、データ保持損失に対する脆弱性の度合いの違いに対応するために様々な状態が異なる幅／間隔を有していてもよいことにも留意されたい。いくつかの実施形態では、状態０及び／又は状態１５は、他の状態よりも広い。
【００７０】
図６Ａ及び６Ｂの実施態様において、不揮発性記憶素子は、４つのデータ状態を使用して記憶素子ごとに４ビットのデータを記憶する。図６Ｃは、各記憶素子が２ビットのデータを記憶する４つの状態のメモリデバイスのための一組の閾値電圧分布の例を表している。第１の閾値電圧分布４０１は、消去された（「消去状態」）記憶素子のために提供される。３つの閾値電圧分布４０２、４０３及び４０４はそれぞれプログラム状態Ａ、Ｂ及びＣを表している。一実施形態において、消去状態における閾値電圧は負であり、Ａ、Ｂ及びＣ状態における閾値電圧は正である。
【００７１】
更に、読み出し基準電圧Ｖｒａ、Ｖｒｂ及びＶｒｃが、記憶素子からデータを読み出すために提供される。対象の記憶素子の閾値電圧がＶｒａ、Ｖｒｂ及びＶｒｃよりも高いか低いかをテストすることによって、このシステムはこの記憶素子の状態（例えばプログラミング状態）を判定することができる。
【００７２】
更に、検証基準電圧Ｖｖａ、Ｖｖｂ、及びＶｖｃが提供される。記憶素子をＡ状態、Ｂ状態又はＣ状態にプログラミングする際、このシステムは、これらの記憶素子がそれぞれＶｖａ、Ｖｖｂ又はＶｖｃ以上の閾値電圧を有するか否かをテストする。一実施形態において、「検証ロー（Ｌｏｗ）」基準電圧Ｖｖａｌ、Ｖｖｂｌ、及びＶｖｃｌが提供される。異なる数の状態を備える実施形態において、類似する「検証ロー」基準電圧が使用され得る。検証ローレベルは、下記の「粗い検証」時に使用され得る。
【００７３】
全シーケンスプログラミングにおいて、記憶素子は、消去状態からプログラム状態Ａ、Ｂ又はＣのいずれかに直接プログラムされ得る。例えば、プログラムされるべき一群の記憶素子は、まずこれら一群の全ての記憶素子が消去状態となるように消去され得る。図６Ｄに表されるような一連のプログラムパルスが記憶素子を直接Ａ、Ｂ及びＣ状態にプログラムするために使用され得る。いくつかの記憶素子が消去状態からＡ状態に直接プログラムされる間に、他の記憶素子は消去状態からＢ状態に及び／又は消去状態からＣ状態にプログラムされる。全シーケンスプログラミングを使用することを必要としないことに留意されたい。
【００７４】
スロープログラミングモードの一例は、一又は複数のプログラム状態のためにロー（オフセット）及びハイ（ターゲット）検証レベルを使用する。例えば、ＶｖａＬはＡ状態のためのオフセット検証レベルであり、ＶｖａはＡ状態のためのターゲット検証レベルであり、ＶｖｂＬはＢ状態のためのオフセット検証レベルであり、ＶｖｂはＢ状態のためのターゲット検証レベルである。プログラミング中、ターゲット状態としてＡ状態にプログラムされる記憶素子（例えばＡ状態記憶素子）の閾値電圧がＶｖａＬを越えると、ビット線をあるレベル（例えば０．６〜０．８Ｖ）（公称プログラムレベル若しくは非禁止レベル（例えば０Ｖ）と、完全禁止レベル（例えば２〜３Ｖ）との間）に上げること等によってそのプログラミング速度は遅くなる。これによって、閾値電圧の大きな段階的増加を避けることによって精度が大きく増す。閾値電圧がＶｖａに到達すると、記憶素子は更なるプログラミングからロックアウトされる。同様に、Ｂ状態記憶素子の閾値電圧がＶｖｂＬを越えると、そのプログラミング速度は遅くなり、かつ、閾値電圧がＶｖｂに到達すると、記憶素子は更なるプログラミングからロックアウトされる。一のアプローチ手段において、スロープログラミングモードは最も高い状態のためには使用されず、なぜならいくらかのオーバーシュートは一般的に許容されるからである。代わりに、スロープログラミングモードは最も高い状態よりも低いプログラム状態のために使用することができる。
【００７５】
更に、上記プログラミング技術の例において、記憶素子の閾値電圧は、ターゲットのプログラム状態にプログラムされるときに引き上げられる。しかしながら、記憶素子の閾値電圧がターゲットのプログラム状態にプログラムされるときに引き下げられるプログラミング技術を使用することもできる。記憶素子の電流を測定するプログラミング技術も使用することができる。本明細書におけるコンセプトは異なるプログラミング技術にも適用され得る。
【００７６】
図６Ｄは、一連のプログラミング動作中に、選択されたワード線（選択ワード線）に適用されるプログラムパルス及び検証パルスを表している。プログラミング動作は、複数のプログラミングの繰り返しからなることができ、各繰り返しは、一又は複数のプログラムパルスを選択ワード線に適用する（一又は複数の検証電圧が後に続く）ものである。一の可能な手法において、プログラム電圧は連続する繰り返しによって増大される。更に、プログラム電圧は、パス電圧（Ｖｐａｓｓ）レベル（例えば６〜８Ｖ）を有する第１部分を有し、これにはプログラムレベル（例えば１２〜２５Ｖ）にある第２部分が続く。例えば、第１、第２、第３及び第４のプログラムパルス４１０、４１２、４１４及び４１６は、それぞれＶｐｇｍ１、Ｖｐｇｍ２、Ｖｐｇｍ３及びＶｐｇｍ４のプログラム電圧を有し、その後も同様である。各プログラムパルスの後に一組の一又は複数の検証電圧が与えられてもよい。
【００７７】
図６Ｄにおいて、３つの検証パルスが各プログラムパルス間に表されている。例えば、検証パルスＶｖＡは、Ａ状態にターゲットされたメモリセルがＶｖａに到達したか否かを検証するために使用することができ、ＶｖＢは、Ｂ状態にターゲットされたメモリセルがＶｖＢに到達したか否かを検証するために使用することができ、ＶｖＣは、Ｃ状態にターゲットされたメモリセルがＶｖＣに到達したか否かを検証するために使用することができる。場合においては、一又は複数の最初のプログラムパルスは検証パルスによって追従されず、これはいずれの記憶素子も最も低いプログラム状態（例えばＡ状態）に到達したと推定されないからである。続いて、例として、プログラムの繰り返しはＡ状態のために検証パルスを使用することができ、続いて、Ａ及びＢ状態のために検証パルスを使用するプログラムの繰り返しが続き、続いて、Ｂ及びＣ状態のために検証パルスを使用するプログラムの繰り返しが続く。図６Ｄに表された電圧パルスは最終検証レベルのためのものである。ＶｖａＬ、ＶｖｂＬ、及びＶｖｃＬのロー検証レベルのためのパルスがあってもよい。
【００７８】
図７Ａは、一又は複数の検出ステップを含むプログラミング処理７００の一実施形態を説明するフローチャートである。ステップ７０２では、プログラムされるメモリ部分が選択される。一実施形態では、これは、メモリ構造に適した一又は複数の書き込み単位であってよい。書き込み単位の一例はページと呼ばれる。別の実施形態では、別の単位及び／又は構造も使用可能である。ステップ７０４では、プレプログラミング処理が時によって使用されるが、この場合、アドレス指定されたメモリセルに、データに依存しないプログラミングを実行することで、記憶素子の疲労が一様となり、後続の消去の開始地点がより均一になる。ステップ７０６では、使用の記憶素子の種類に応じて消去処理が適宜実行される。適切なスマート消去処理の一例は、米国特許第５，０９５，３４４号に説明されている。この関連出願の全体は、本願明細書に組み込まれる。ステップ７０８は、消去されたメモリセルの閾値電圧を実際の書き込みフェーズのより均一な開始範囲に位置するように設計された任意のソフトプログラミング処理を含む。一実施形態では、消去中（又はソフト・プログラミング中）にメモリセルのいずれかが検証に失敗した場合、このメモリセルは論理アドレススペースからマップアウトされてよい。この時点で、メモリはデータ条件プログラミングフェーズに使用できる状態にある。
【００７９】
ステップ７１０において、プログラム電圧（Ｖｐｇｍ）は初期値に設定される。更に、ステップ７１０において、プログラムカウンター（ＰＣ）がゼロに初期化される。ステップ７２０において、プログラムパルスが適用される。
【００８０】
ステップ７２２において、検証処理が行われる。一実施形態において、この検証は同時の粗い／細かい検証（ｃｏａｒｓｅ／ｆｉｎｅ  ｖｅｒｉｆｙ）である。メモリセルの閾値が最終レベル（Ｖｖａ）よりもかなり低い最初のプログラミングステップ時において、粗いプログラミングが適用される。しかしながら、メモリセルの閾値電圧がＶｖａＬに到達した後には細かいプログラミングが使用される。よって、いくつかのメモリセルが粗いプログラミング（ｃｏａｒｓｅ  ｐｒｏｇｒａｍｉｎｇ）のために検証されている間に、他のメモリセルは細かいプログラミング（ｆｉｎｅ  ｐｒｏｇｒａｍｉｎｇ）のために検証されている。特定のメモリセルが目的とする状態にプログラムされているかが検証済みの場合、それは更なるプログラミングからロックアウトされ得ることに留意されたい。ステップ７２２の更なる詳細は後述する。
【００８１】
ステップ７２４において、全てのメモリセルが、それらの閾値電圧がそのメモリセルのための最終ターゲット電圧にあることを検証したか否かが判定される。検証したと判定された場合、プログラミング処理がステップ７２６において完了する（状態＝パス（ｓｔａｔｕｓ＝ｐａｓｓ））。全てのメモリセルが検証されていない場合（すなわち一部しか検証されていない場合）、プログラムカウンター（ＰＣ）が最大値（例えば２０）より低いか否かが判定される。プログラムカウンター（ＰＣ）が最大値より低くない場合（ステップ７２８）、プログラム処理は失敗している（ステップ７３０）。プログラムカウンター（ＰＣ）が２０より低い場合、プログラムカウンター（ＰＣ）は１ずつ増やされ、ステップ７３２においてプログラム電圧を次のパルスにステップアップする。ステップ７３２の後に処理ループはステップ７２０に戻り、次のプログラムパルスがメモリセルに適用される。
【００８２】
いくつかの実施形態において、プログラミングは粗いモード及び細かいモードを有する。一般的に、粗いプログラミングモードは、そのターゲット閾値電圧から遠いときにはメモリセルをより速くプログラムするように試みることができ、メモリセルがそのターゲット閾値電圧に近いときにはより遅くプログラムするように試みることができる。しかしながら、粗いプログラミングモード及び細かいプログラミングモードの両方を用いることは必ずしも必要ではない。粗いプログラム及び細かいプログラムは図７Ｂにあるように一のプログラムシーケンスにおいても実行することができる。７２２における検証処理は粗い検証及び細かい検証の両方を実行するようになされ得る。プログラムパルスステップ７２０は、粗いプログラムのための速いプログラムと細かいプログラムのための遅いプログラムとを差別化して実行することもできる。まず、粗い／細かいプログラミングが使用されない場合について検証処理を説明する。図７Ｂは、粗い／細かいプログラミングなしに検証を行う処理の一実施形態を説明するフローチャートである（図７Ａのステップ７２２を参照）。この処理は１個のメモリセルの検証を説明している。この処理は、同時に多くのメモリセルに行い得る。
【００８３】
検証条件が適用され、検出がステップ７４０において行われる。例えば、図６Ａを見ると、Ａ状態が検証中であれば、メモリセルの閾値電圧がＡ状態ＶｖＡのための最終ターゲット閾値電圧と比較され得る。ステップ７４０の更なる詳細を以下に記載する。メモリセルの閾値電圧がターゲット電圧ＶｖＡ（ステップ７４２）よりも大きい場合、検証テストは済んでおり、メモリセルがステップ７４４においてプログラミングを禁じられる。メモリセルを更なるプログラミングから禁じるための一実施形態は、ビット線をＶｄｄに上げることであり、これによりこのＮＡＮＤチェーンチャネルがビット線バイアスから切断される。プログラムパルスが印加される際、ワード線電圧がカップリングのために高電圧に上昇するときに高電圧が絶縁チャネルにおいて作られ得る。メモリセルを更なるプログラミングから禁じるための他の手段も使用することができる。ステップ７４２において、検証テストが済んでいない（例えば、メモリセルの閾値電圧がターゲット電圧ＶｖＡより低いことを理由として）ことを判定された場合、メモリセルは更なるプログラミングを禁じられない（ステップ７４６）。
【００８４】
図７Ｃは、粗い／細かいプログラミングが使用される検証の処理の一実施形態を説明するフローチャートである。この処理は、粗い検証及び細かい検証を行う。この処理は一個のメモリセルの検証を説明している。この処理は多くのメモリセルにおいて同時に行われ得る。ステップ７５２において、このシステムはレジスタ（又は他の記憶装置）をチェックし、特定のメモリセルが粗いプログラミングモードにあるか細かいプログラミングモードにあるかを判定する。メモリセルが粗いプログラミングモードにある場合（ステップ７５４）、粗い検証がステップ７５６において行われる。例えば、図６Ｃを参照すると、Ａ状態が検証中である場合、メモリセルの閾値電圧が電圧ＶｖａＬと比較され得る。ステップ７５６の更なる詳細は後述する。メモリセルの閾値電圧がＶｖａＬよりも高い場合（ステップ７５８）、メモリセルは粗い検証テストをパスしている。メモリセルの閾値電圧がＶｖａＬよりも低い場合、メモリセルは検証テストをパスしていない。メモリセルが粗い検証テストをパスしていない場合、このメモリセルは粗いプログラミングモードを維持する（ステップ７６０）。メモリセルが粗い検証テストをパスしている場合、このメモリセルはプログラミングモードを細かいプログラミングモードに変更する（ステップ７６２）。プログラミングモードは異なるプログラムパスあるいは同じプログラムパスに変更され得ることに留意されたい。一のプログラムパスは図７Ａにおいてステップ７０２からステップ７２６又は７３０に記載されている。粗い検証及び細かい検証の適用は、ビットが粗いＶｔターゲットＶｖａＬをパスするか細かいＶｔターゲットＶｖＡをパスするかに関わらず共になされ得る。
【００８５】
ステップ７５４において、メモリセルが細かいプログラミングにある場合、細かい検証条件が適用され、検出がステップ７７０において行われる。例えば、図６Ｃを見ると、メモリセルの閾値電圧が最終ターゲット閾値電圧ＶｖＡと比較され得る。ステップ７５４の更なる詳細は後述する。メモリセルの閾値電圧がターゲット電圧ＶｖＡよりも大きい場合（ステップ７７２）、検証テストはパスしており、メモリセルがステップ７７４においてプログラミングを禁じられる。メモリセルを更なるプログラミングから禁じるための一実施形態は、ビット線をＶｄｄに上げることであり、これによりこのＮＡＮＤチェーンチャネルがビット線バイアスから切断される。メモリセルを更なるプログラミングから禁じるための他の手段も使用することができる。ステップ７７２において、検証テストをパスしていない（例えば、メモリセルの閾値電圧がターゲット電圧ＶｖＡより低いことを理由として）ことを判定された場合、メモリセルは更なるプログラミングを禁じられない（ステップ７７６）。いくつか実施形態において、メモリセルが更なるプログラミングを禁じられた後でさえ、そのビット線はステップ７７０の検証の間、充電され得る。検証中にビット線にバイアスをかけることについての更なる詳細は後述する。
【００８６】
図７Ｄは、粗い／細かいプログラミング処理の一例がどのように行われるかを示すための、閾値電圧（ＶＴ）対時間及びビット線電圧（ＶＢＬ）対時間のグラフである。Ａ状態を検証するための閾値電圧レベルが表されている（ＶｖａＬ及びＶｖＡ）。他の状態を検出するためには他のレベルが使用され得る。粗い／細かいプログラミング方法の様々な変更態様及び実施形態も使用することができる。グラフ内の信号は、プログラミング処理の粗いフェーズで始まる。よって、メモリセルの閾値電圧Ｖｔは比較的低い。メモリセルの閾値電圧が電圧ＶｖａＬに到達すると、プログラミングを遅くするために、メモリセルはこのセルのビット線電圧を値ＶＩに上げることによって細かいプログラミングフェーズに入る。細かいプログラミングフェーズの間、粗いプログラミングフェーズと比べてプログラミングが遅くされる。したがって、プログラムステップごとの閾値電圧の変化は細かいプログラミングフェーズの間はより小さくなりやすい。このメモリセルは、メモリセルの閾値電圧がＶｖＡのターゲットレベル閾値電圧レベルに到達するまで細かいプログラミングフェーズを維持する。メモリセルの閾値電圧がＶｖＡに到達すると、このセルの更なるプログラミングを禁じるためにメモリセルのビット線電圧がＶｄｄまで上げられ得る。一実施形態において、ＶｖａＬは、ＶｖＡから下に１Ｖｐｇｍステップ分の大きさである。他の実施形態においては、ＶｖａＬとＶｖＡの違いはそれよりも小さいか大きい。図７Ｄは、プログラムパルスが印加されるときのビット線電圧を説明しており、検証中のビット線電圧とは異なるものであることに留意されたい。検証中のビット線電圧については更に後述する。
【００８７】
図８Ａは、プログラミング処理中にメモリセルを検証するための処理８００の一実施形態のフローチャートである。メモリセルを検証するときに所定のバイアス条件がビット線に適用される。例えば、いくつかのビット線はプリチャージされており、他のものは接地されている。一実施形態において、ビット線のバイアスは各メモリセルがプログラムされる状態（あるいは既にプログラムされている状態）による。図８Ｂは、メモリセルを読み出すための処理８２０の一実施形態のフローチャートを記載している。特定の状態を読み出すとき、ビット線は、その状態の検証中に使用されるビット線バイアスと実質的に一致するようにバイアスをかけられる。したがって、読み出されるメモリセルに隣接するほとんどのメモリセルのチャネル電位は、その状態の検証中の隣接するメモリセルのチャネル電位と一致する。これによりチャネル結合効果が減少又は消滅する。
【００８８】
図８Ａの処理８００は、図７Ｂの検証ステップ７４０中か、図７Ｃの粗い検証ステップ７５６中か、図７７０の細かい検証ステップ７７０中に使用され得る。いくつかの実施形態においては、処理８００は図７Ｃの細かい検証ステップ７７０のために使用されるが図７Ｃの粗い検証ステップ７５６のためには使用されない。更に、処理８００はプログラミング処理の各繰り返しの度に行われることは必要ではないことに留意されたい。したがって、処理８００は各検証処理の度に行われる必要はない。例えば、処理８００は図７Ｂのステップ７４０の各繰り返しの度に行われる必要はない。したがって、図７Ａのプログラミング処理７００の各繰り返し中の隣接するメモリセルのチャネル電位が、読み出し中の隣接するメモリセルのチャネル電位と一致することは絶対に必要というわけではない。一実施形態において、処理８００は所定のメモリセルが検証される少なくとも最終回において使用される。
【００８９】
処理８００は検証中の各状態に対して一度繰り返されることに留意されたい。よって、繰り返し毎に、異なる状態が検証され得る。例えば、Ａ状態にプログラミング中のメモリセルは、特定の繰り返し時にその閾値電圧をＶｖＡと比較させる。ステップ８０４において、所定の状態を検証するための第１バイアス条件がビット線上に設定される。本明細書において、用語「第１バイアス条件」は、検証中のビット線バイアス条件を指すために使用される。本明細書において、用語「第２バイアス条件」は、読み出し中に使用されるビット線バイアス条件を指すために使用される。各プログラム状態を検証するときに個別の一組の第１バイアス条件が設定されてもよい。ビット線にバイアスをかけることは、ビット線上の揮発性記憶素子がプログラムされる状態に基づき得る。
【００９０】
一実施形態において、検証されている状態（検証中の状態）にプログラミング中のメモリセルを有するビット線を少なくとも含む第１のグループのビット線に第１の電圧が印加される。この第１のグループは、検証中の状態にプログラムされないメモリセルを有するビット線を含んでいてもよい。一実施形態において、第１のグループの不揮発性記憶素子は、検証動作中に第１のチャネル電位を有する。一実施形態において、第１のグループにないメモリセルのビット線の全ては、第２のグループになる。この第２のグループのビット線は、検証中の状態以外のプログラム状態にプログラムされるべき不揮発性記憶素子を有する少なくともいくつかのビット線を含み得る。メモリセルの第２のグループは接地されていてもよい。ビット線を接地することによって、電力を節約することができる。更に、ピーク電流を減少することができる。
【００９１】
ステップ８０６において、検証中のメモリセルを有する各ビット線の状態がテストされ、これは、各メモリセルが所定のプログラム状態にプログラムされたか否かを検証するためになされる。例えば、センス増幅器がビット線電流を測定することができ、これは、第１バイアス条件が設定された後にビット線上のメモリセルの伝導電流を測定するためになされる。検証中のメモリセルを有するビット線のみがテストされる必要があることに留意されたい。第１バイアス条件は、検証中のメモリセルに隣接するメモリセルのチャネル電位に影響を与え得る。例えば、隣接するメモリセルのビット線は、ある電圧に充電されるか接地され得る。一実施形態において、隣接するメモリセルのビット線は０．４ボルトに帯電されるか接地され得る。しかしながら、他の電圧を使用することもできる。既に記載したように、ビット線バイアスは、このビット線上のメモリセルがプログラムされる（又は既にされた）状態に依存し得る。一例として、隣接するメモリセルが、現在検証されている状態か現在検証されている状態の下の状態にプログラムされる（又は既にプログラムされた）場合、隣接するメモリセルのビット線はプリチャージされ得る。そうでなければ、隣接するメモリセルのビット線は接地され得る。したがって、所定の状態にプログラムされる不揮発性記憶素子に隣接する不揮発性記憶素子がこの所定の状態の検証中に有し得るチャネル電位は、これらの隣接する不揮発性記憶素子がプログラムされた状態又はプログラムされる状態に依る。他の多くのビット線バイアス方式も可能であり、下記に記載するものを含む（しかしこれらに限定されない）。
【００９２】
検証すべき状態が更にある場合（ステップ８０８）、ステップ８０４は個別の一組の第１バイアス条件を設定するために再度行われ得る。しかしながら、今回はこの第１バイアス条件は検証される次の状態のためのものである。これらのビット線バイアス条件は以前のものとは異なり得ることに留意されたい。したがって、第１バイアス条件は検証される状態に依る。一旦全ての状態が検証されると、処理８００は終了する。処理８００を行った後、個々のメモリセルごとに検証がなされたか否かを判定するためのステップが各ビット線に対して行われてもよい。例えば、図７Ｂのステップ７４２、図７Ｃのステップ７５８又はステップ７７０のうち一のステップが行われてもよい。図７Ｂ又は７Ｃの処理が完了した後、図７Ａのステップ７２４が全てのメモリセルが検証をパスしたか否かを判定するために行われ得る。パスしていないのであれば、一又は複数の付加的なプログラムパルスが図７Ａのステップ７２０に印加され得る。最終的にプログラミングはメモリセルが検証された状態で完了する。
【００９３】
後に、プログラムされたメモリセルは、記憶されたデータにアクセスするために読み出され得る。図８Ｂの処理８２０がメモリセルを読み出すために行われ得る。前述のように、用語「第２バイアス条件」は読み出し中のビット線バイアス条件を指すために使用される。処理８２０は第２のビット線バイアス条件を第１のビット線バイアス条件に実質的に一致させることができる。したがって、ターゲットメモリセルの読み出し中に隣接するほとんどのメモリセルが有するチャネル電位は、検証中に隣接するメモリセルが有したチャネル電位と一致され得る。これにより検証と読み出しとの間のチャネル結合効果の相違が減少又は消滅する。全ての隣接するメモリセルが検証中及び読み出し中に同じチャネル電位を有する必要はないことに留意されたい。
【００９４】
ステップ８２２において、選択ワード線に関連付けられた不揮発性記憶素子の少なくとも一の大まかな読み出し（ｒｏｕｇｈ  ｒｅａｄ）が読み出し処理中に行われる。大まかな読み出しを行う際に、このビット線条件が検証中に使用される第１のビット線条件に一致されることは必ずしも必要ではないことに留意されたい。例えば、いくつかの実施形態において、大まかな読み出しを行うときに全てのビット線がある電圧に充電される。更に、説明を容易にするためにステップ８２２が他のステップの前に生じるものとして記載されているが、処理８２０における他の時点においても一又は複数の大まかな読み出しを行い得る。大まかな読み出しを行うことについての更なる詳細は後述する。
【００９５】
ステップ８２４〜８２８は読み出し処理中に読み出される各状態に対して一度繰り返されるループを形成する。例えば、図６Ｃを参照すると、一の繰り返しが各読み出し電圧ＶｒＡ〜ＶｒＣのために行われ得る。本明細書において用語「状態を読み出す」はメモリセルが少なくともその状態に関連付けられた電圧レベルの閾値電圧（例えばＶｒＡ）を有するか否かの判定をすることを指すために使用される。メモリセルが実際にＡ状態にあるか否かを最終的に判定するために、このメモリセルの閾値電圧を更にＶｒＢと比較すべきである。
【００９６】
ステップ８２４において、第２バイアス条件が、読み出されている（＝読み出し処理中の）現在の状態のために設定される。個別の一組の第２バイアス条件が、読み出し処理中に読み出されている各状態のために設定され得る。所定の状態のための第２バイアス条件は、この所定の状態の検証中に使用された第１のビット線バイアス条件と実質的に一致し得る。例えば、Ａ状態が読み出されている場合、第２のビット線バイアス条件は、Ａ状態を検証する際に使用される第１のビット線バイアス条件と実質的に一致し得る。いくつかの実施形態において、第２組のバイアス条件はステップ８２２の一又は複数の大まかな読み出しに基づく。既述のように、検証は所定のメモリセルに対して複数回行われ得る。いくつかの実施形態において、第２のビット線バイアス条件は、メモリセルが検証された少なくとも最終回のために使用された第１のビット線バイアス条件と実質的に一致する。所定の状態を読み出す際に第２バイアス条件を設定することにより、所定の状態にプログラムされた不揮発性記憶素子に隣接する不揮発性記憶素子の実質的に全てが、この所定の状態を検証する際にこの隣接する不揮発性記憶素子のチャネル電位と一致するチャネル電位を有するようになる。
【００９７】
いくつかの実施形態において、どの程度の電圧が各ビット線に印加されるべきかを判定するために大まかな読み出しによるデータが使用される。例えば、第２バイアス条件は、大まかな読み出しがビット線上の選択されたメモリセルがどの状態にプログラムされたかを示すかに基づき得る。いくつかの実施形態においては、大まかな読み出し自体が第２のビット線バイアスを設定することを助け得る。例えば、大まかな読み出しは、所望のレベルのビット線電位を設定するためにビット線を放電し得る。いくつかの実施形態において、第２バイアス条件を設定することは、第１グループのビット線を所定の電圧にプリチャージすることと、第２グループのビット線を接地することとを含む。
【００９８】
ステップ８２６において、読み出し処理中に第２バイアス条件を設定した後にビット線が検出される。全てのビット線が検出される必要はないことに留意されたい。一実施形態においては、プリチャージされたビット線が検出され、接地されたものは検出されない。ビット線を検出することで、ビット線上のメモリセルが、読み出されている状態のための電圧レベルよりも大きい閾値電圧を有するか小さい閾値電圧を有するかが判定される。例えば、Ａ状態を読み出す際、メモリセルがＶｒＡよりも大きいＶｔを有するかそれよりも小さいＶｔを有するかがこの検出によって判定される。
【００９９】
現在の状態の検証中に印加された電圧を有したビット線と、現在の状態の読み出し中に印加された電圧を有したビット線とは完全に一致しなくてもよいことに留意されたい。更に、検証中に接地されたビット線と、読み出し中に接地されたビット線とは完全に一致しなくてもよいことに留意されたい。しかしながら、検証中か読み出し中のメモリセルを有するビット線は接地されるべきではない。検証中及び読み出し中のビット線電圧間に完全な一致がなくても、ほとんどのメモリセルの隣接するビット線は読み出し中及び検証中に同じ電位となるべきある。したがって、読み出されるターゲットメモリセルのほとんどに隣接するメモリセルのチャネル電位は、検証中及び読み出し中に同じになるべきである。結果として、検証と読み出しとの間のチャネル結合効果の相違は緩和される。
【０１００】
用語「第１グループのメモリセル」は、一実施形態の検証中にビット線が充電された複数のメモリセルを指すために使用される。一実施形態において、検証中の第１グループのメモリセルは、検証されている状態にプログラミング中のメモリセルと、検証されている状態のすぐ下の状態にプログラミング中のメモリセルである。図９Ａはプログラミング時の閾値電圧分布の一例を記載している。図９Ａには８つの異なる閾値分布曲線がある。各曲線はデータ状態の１つに対応する（例えば消去状態及びプログラム状態Ａ〜Ｇ）。検証電圧ＶｖＡ〜ＶｖＧはＶｔ軸上に表されている。低いほうの状態のいくつかについてプログラミングが完了していることに留意されたい。例えば、Ａ状態にプログラミング中の全てのメモリセルはＶｖＡよりも高く、Ｂ状態にプログラミング中の全てのメモリセルはＶｖＢよりも高い。しかしながら、他の状態については、メモリセルの少なくともいくつかは依然として対応する検証レベルよりも下にある。
【０１０１】
図９Ａの点線の枠内では、Ｄ状態又はＥ状態にプログラミング中のメモリセルのビット線がＥ状態の検証中に充電されることを表している。しかしながら、他の状態にプログラミング中のメモリセルのためのビット線は、この実施形態においてはＥ状態を検証する際に接地される。Ｃ状態又はＦ状態のいずれかにプログラムミング中のメモリセルのビット線は、Ｅ状態の検証中に充電されないことに留意されたい。
【０１０２】
図９Ｂは、プログラミングが完了した後の閾値電圧分布の一例を表している。読み出し基準電圧Ｖｒａ〜ＶｒＧがＶｔ軸上に表されている。Ｅ状態を読み出す際、まず、どのメモリセルがＶｒＤとＶｒＦの間のＶｔを有するかを大まかに判定するために大まかな読み出しが行われる。この読み出しはどのメモリセルがＤ状態又はＥ状態にあるかを大まかに判定する。次に、細かい読み出しが行われ、ここでは、Ｄ状態又はＥ状態にあることを大まかに判定されたメモリセルのビット線が荷電される。しかしながら、他のメモリセルのビット線は接地される。したがって、読み出し中のメモリセルに隣接するメモリセルのチャネル電位は、検証中にこの隣接するメモリセルのチャネル電位だったものと一致するべきである。
【０１０３】
図１０Ａは、検証中に第１バイアス条件を設定するための処理１０００の一実施形態のフローチャートである。処理１０００は検証処理８００のステップ８０４の一実施形態である。処理１０００において、検証中のメモリセルのビット線とすぐ下の状態のメモリセルのビット線が充電され、他のビット線は充電されない。よって、処理１０００は図９Ａに表された方式を使用することができる。ステップ１００２において、検証中のメモリセルのビット線及びすぐ下の状態のメモリセルのビット線が充電される。例えば、Ａ状態にプログラミング中のメモリセル及び消去状態を維持すべきメモリセルのビット線が充電される。メモリセルの閾値電圧をＶｖＡと比較することができるように、ビット線を適切なレベルに充電し得る。ステップ１００４において、他のビット線は接地される。
【０１０４】
ビット線バイアス条件を設定した後、検証されている状態にプログラミング中の複数のメモリセルは、それらのＶｔが処理８００のステップ８０６に記載されるような検証レベルにあるかを判定するために検出される。例えば、Ａ状態にプログラミング中のメモリセルが検出される。検証レベルに到達するメモリセルは更なるプログラミングからロックアウトされ得る。次に処理１０００は別の状態を検証するために繰り返され得る。例えば、Ｂ状態が検証される際、Ｂ状態にプログラミング中のメモリセル及びＡ状態にプログラムされたメモリセルのビット線が充電される。他のビット線はステップ１００４において接地される。
【０１０５】
図１０Ｂは、大まかな読み出しを行う処理１０２０の一実施形態のフローチャートである。この実施形態において、大まかな読み出しは各メモリセルがどの状態にあるかを大まかに判定するために使用される。これは大まかな読み出し（ｒｏｕｇｈ  ｒｅａｄ）と呼ぶことができ、なぜなら、大まかな読み出しから教示された情報に基づいて後に読み出しが洗練されるからである。例えば、この情報は各状態での読み出しの際にどのビット線が充電されるべきかを判定するために使用される。処理１０２０は処理８２０のステップ８２２の一実施形態を記載している。図１０Ｃは、大まかな読み出しに基づき第２のビット線バイアス条件を設定するための処理１０４０の一実施形態のフローチャートである。処理１０４０は処理８２０のステップ８２４の一実施形態を記載している。処理１０２０及び１０４０は典型的にはメモリセルを読み出す際に共に使用されるものであり、これらは図１０Ａの処理１０００がプログラミング中のメモリセルを検証するために使用された場合に使用され得る。
【０１０６】
図１０Ｂのステップ１０２２において、すべてのビット線が、メモリセルを検出するのに適した電圧にプリチャージされる。例えば、０．４ボルトが全てのビット線に印加され得る。図１０Ｂのステップ１０２４において、メモリセルの読み出しが所定のレベルにて行われる。例えば、どのメモリセルがＶｒＡよりも高いＶｔを有するかを判定するために読み出しが行われる。この読み出しを行うために、選択ワード線にＶｒＡの電圧が印加され得る。次に、各ビット線の伝導電流が検出される。検出動作の結果がラッチ又は他の記憶ユニットに記憶され得る。一実施形態において、この読み出しは「全ビット線」（ａｌｌ  ｂｉｔ  ｌｉｎｅ（「ＡＢＬ」））読み出しである。全ビット線読み出しにおいて、偶数及び奇数ビット線が共に検出される。しかしながら、全ビット線検出は必ず必要ではない。例えば、偶数及び奇数ビット線は別々に読み出され得る。メモリセルを読み出す一実施形態の更なる詳細は後述する。
【０１０７】
読み出すべき状態がより多くあるのであれば、処理１０２０は次の状態を読み出すためにステップ１０２２に戻る。一実施形態において、読み出しはＡ状態から上方に進む。いくつかの実施形態において、読み出し比較レベルよりも低いＶｔを備えるメモリセルを有するビット線が読み出しによって放電する。例えば、ＶｒＡでの読み出しによって、消去されたメモリセルのビット線が放電し得る。しかしながら、他のメモリセルのビット線は読み出しの結果として放電しなくてもよい。したがって、ビット線は、読み出しがＡ状態から上方に進む場合、再び充電される必要はない。なお、読み出しは特定の順序で行われる必要はない。更に、読み出しは特定のビット線の放電を防ぐように行われる必要はない。全ての状態が読み出された後、処理１０２０が終結する。
【０１０８】
処理１０２０が完了した後、図１０Ｃの処理１０４０が行われ得る。既述のように、処理１０４０は、特定の状態を読み出すためにビット線上に第２バイアス条件を設定する。読み出される各状態のために異なる組の第２バイアス条件が設定され得ることを思い出されたい。図１０Ｃのステップ１０２４において、読み出される状態及びこのすぐ下の状態のためのビット線が充電される。例えば、処理１０２０の大まかな読み出しからの情報に基づき、Ａ状態及び消去された状態にあると大まかに判定されたメモリセルのビット線が充電される。他の全てのビット線はステップ１０４６において接地され得る。前述の事項は、Ａ状態が現在読み出し中であると仮定している。したがって、このビット線バイアス条件は、Ａ状態を検証する際に適用されたビット線バイアス条件と極めて一致し得る。
【０１０９】
ビット線バイアス条件を設定した後、図８Ｂのステップ８２６が、読み出し中の現在の状態のために行われ得る。例えば、メモリセルがＶｒＡより高いか低いＶｔを有するか否かをテストするために、適切な読み出し電圧が選択ワード線に印加され得る。次に、別の状態のための第２のビット線バイアス条件を設定するために処理１０４０が繰り返され得る。例えば、Ｂ状態が次に読み出されるものである場合、Ｂ状態にプログラムされることを大まかに判定されたメモリセル及びＡ状態にプログラムされることを大まかに判定されたメモリセルのビット線が充電され得る。全ての状態を大まかに読み出す処理１０２０が再度行われる必要はないことに留意されたい。代わりに、以前に読み出されたデータが使用され得る。
【０１１０】
図１１Ａは、検証中に第１バイアス条件を設定するための処理１１００の一実施形態のフローチャートである。処理１１００は検証処理８００のステップ８０４の一実施形態である。処理１１００において、検証中のメモリセルのビット線が充電され、他のビット線は充電されない。ステップ１１０２において、検証中のメモリセルのビット線が充電される。例えば、Ａ状態にプログラミング中のメモリセルのビット線が充電される。このビット線は、メモリセルの閾値電圧がＶｖＡと比較されるように適切なレベルに充電され得る。ステップ１１０４において、他の全てのビット線は接地され得る。
【０１１１】
処理１１００においてビット線バイアス条件を設定した後、検証されている状態にプログラミング中のメモリセルが、処理８００のステップ８０６に記載されたようにそれらのＶｔが検証レベルにあるか否かを判定するために検出される。例えば、Ａ状態にプログラミング中のメモリセルが検出される。検証レベルに到達するメモリセルは、更なるプログラミングからロックアウトされ得る。よって、Ｂ状態が検証される際、Ｂ状態にプログラミング中のメモリセルが充電され、他の全てのビット線が接地される。処理１１００は検証される各状態のために繰り返され得る。
【０１１２】
図１１Ｂは、メモリセルを読み出すための処理１１２０の一実施形態のフローチャートである。処理１１２０は図８Ｂの処理８２０のステップ８２２〜８２８の一実施形態を記載している。処理１１２０は、チャネル結合効果を緩和するために、メモリセルを検証する際に処理１１００が使用されたときに使用され得る。処理１１２０は４つの状態（すなわち消去、Ａ、Ｂ及びＣ）を備える実施形態を記載している。しかしながら、この処理１１２０はより多くの状態又はより少ない状態にも拡張され得る。一般的に、処理１１２０は、最も高い状態から最も低い状態までの順に読み出し状態に関与する。例えば、Ｃ状態が読み出され、次にＢ状態、そしてＡ状態が読み出される。
【０１１３】
ステップ１１２２において、全てのビット線がプリチャージされる。なお、全てのビット線を充電することは必ずしも必要ではない。しかしながら、全てのビット線を充電することによって、全てのビット線（奇数及び偶数）を共に読み出すことができ、これにより時間を節約することができる。
【０１１４】
ステップ１１２４において、Ｃ状態にて大まかな読み出しが行われる。Ｃ状態にて大まかな読み出しを行うことでＣ状態よりも下の状態にあるメモリセルのビット線を放電することができる。例えば、Ｃ状態の読み出しレベルよりも少ない閾値レベル（例えばＶｒＣ）を有するメモリセルは、大電流を伝導することができ、一方、ＶｒＣよりも大きな閾値レベルを有するメモリセルは非常に小さい電流のみを伝導するか電流を伝導しない。大きな伝導電流はビット線を放電することができる。あるいは、大きな伝導電流を伴う複数のビット線が、例えばこれらのビット線を接地することによって検出され遮断される。しかしながら、Ｃ状態にあるメモリセルのためのビット線は放電されるべきではない。したがって、大まかな読み出しの後、Ｃ状態にプログラムされたメモリセルのビット線のみが充電されたままである。よって、Ｃ状態での大まかな読み出しは第２のビット線条件を設定する。図１１Ａの処理１１００を使用する際に、第２のビット線条件は、Ｃ状態の検証中に設定された第１のビット線条件と一致することに留意されたい。よって、ステップ１１２２及び１１２４は、第２のビット線条件を設定するステップ８２４の一実施形態である。
【０１１５】
Ｃ状態での大まかな読み出しがこの読み出しの結果を保存する必要はないことに留意されたい。したがって、どのメモリセルがＶｒＣよりも高いＶｔを有するかを判定する必要はない。一実施形態において、大まかな読み出しは、２つのストローブの読み出しのうちの第１のストローブである。２つのストローブの読み出しの一実施形態の更なる詳細は後述する。一実施形態において、大まかな読み出しはマルチストローブの読み出しの最終ストローブを除く全てを含む。
【０１１６】
ステップ１１２４において、Ｃ状態にて別の読み出しが行われる。例えば、一の読み出しがＶｒＣにて行われる。例えば、電圧ＶｒＣは、第２のビット線条件が設定された後に選択ワード線に印加される。ステップ１１２４はどのメモリセルが少なくともＶｒＣの閾値電圧を有するかを判定する。Ｃ状態がこの例において最も高い状態であるため、Ｃ状態にあるメモリセルが判定（特定）される。一実施形態において、ステップ１１２４の読み出しは、ステップ１１２２において使用される２つのストローブの読み出しのうちの第２のストローブである。一実施形態において、ステップ１１２４の読み出しは、ステップ１１２２において使用されるマルチストローブの読み出しのうちの最終ストローブである。
【０１１７】
ステップ１１２８において、全てのビット線が再度充電されてもよい。ステップ１１３０において、Ｂ状態にて大まかな読み出しが行われる。Ｂ状態にて大まかな読み出しを行うことにより、Ｂ状態よりも低い状態にあるメモリセルのビット線を放電し得る。例えば、Ｂ状態のための読み出しレベルよりも小さい閾値レベル（例えばＶｒＢ）を有するメモリセルは大電流を伝導し、一方、ＶｒＢよりも大きな閾値レベルを有するメモリセルは、大電流を伝導しない。したがって、Ｂ状態での大まかな読み出しの後、Ｂ又はＣ状態のいずれかにプログラムされたメモリセルのビット線のみが充電されたままである。
【０１１８】
ステップ１１３２において、Ｃ状態にあると判定されたメモリセルのビット線が放電される。よって、第２のビット線条件は、Ｂ状態での大まかな読み出しと、Ｃ状態のビット線での放電を行うことによって設定される。再び、図１１Ａの処理１１００を使用する際に第２のビット線条件はＢ状態の検証中に設定された第１のビット線条件と一致することに留意されたい。よって、ステップ１１２８、１１３０、及び１１３２は第２のビット線条件を設定するステップ８２４の一実施形態である。一実施形態において、ステップ１１３０及び１１３２は、Ｃ状態のメモリセルのビット線がＢ状態での大まかな読み出しを行う前に放電されるように逆転される。一実施形態において、ステップ１１２８において全てのビット線をプリチャージするのではなく、Ｃ状態のメモリセルを備えるビット線はステップ１１３２が不要となるように放電される。
【０１１９】
ステップ１１３４において、別の読み出しがＢ状態にて行われる。例えば、一の読み出しがＶｒＢで行われる。例えば、第２のビット線条件が設定された後に、電圧ＶｒＢが、選択ワード線に印加される。ステップ１１３４は、どのメモリセルが少なくともＶｒＢの閾値電圧を有するかを判定する。Ｃ状態のメモリセルが既に判定されたため、ステップ１１３４はどのメモリセルがＢ状態にあるかを判定する。一実施形態において、Ｂ状態での大まかな読み出しと第２の読み出しは、２つのストローブの読み出しのうちのそれぞれ第１のストローブと第２のストローブに対応する。しかしながら、大まかな読み出し及び第２の読み出しは同じ２つのストローブの読み出し動作の一部である必要はない。更に、２つのストローブの読み出しはいずれの読み出しにおいても必ず必要なものではない。
【０１２０】
ステップ１１３６において、ビット線の全てが再度充電され得る。ステップ１１３８において、Ａ状態での大まかな読み出しが行われる。Ａ状態での大まかな読み出しを行うことで、Ａ状態よりも低い状態にあるメモリセルのビット線を放電し得る。例えば、Ａ状態のための読み出しレベルよりも小さい閾値レベル（例えばＶｒＡ）を有するメモリセルは大電流を伝導し、一方、ＶｒＡよりも大きい閾値レベルを有するメモリセルは大電流を伝導しない。したがって、Ａ状態での大まかな読み出しの後には、Ａ、Ｂ又はＣ状態のいずれかにプログラムされたメモリセルのビット線のみが充電されたままである。
【０１２１】
ステップ１１４０において、Ｂ又はＣ状態のいずれかにあると判定されたメモリセルのビット線が放電される。よって、Ａ状態で大まかな読み出しを行い、Ｂ及びＣ状態のビット線の放電を行うことによって第２のビット線条件が設定される。再び、第２のビット線条件は、図１１Ａの処理１１００を使用する際にＡ状態の検証中に設定された第１のビット線条件と一致することに留意されたい。よって、ステップ１１３６、１１３８、及び１１４０は、第２のビット線条件を設定するステップ８２４の一実施形態である。一実施形態において、ステップ１１３８及び１１４０は、Ｂ及びＣ状態のメモリセルのビット線がＡ状態での読み出しの前に放電されるように逆転される。一実施形態において、ステップ１１２８において全てのビット線を充電するのではなく、Ｂ及びＣ状態のメモリセルを備えるビット線はステップ１１４０が不要となるように放電される。
【０１２２】
ステップ１１４２において、Ａ状態にて別の読み出しが行われる。例えば、ＶｒＡにて読み出しが行われる。例えば、第２のビット線条件が設定された後に、電圧ＶｒＡが、選択ワード線に印加される。ステップ１１４２は、どのメモリセルが少なくともＶｒＡの閾値電圧を有するかを判定する。Ｂ及びＣ状態メモリセルが既に判定されているため、ステップ１１４２はどのメモリセルがＡ状態にあるかを判定する。よって、残りのメモリセルは、消去された状態にあると判定される。一実施形態において、Ａ状態での大まかな読み出しと第２の読み出しは、２つのストローブの読み出しのうちのそれぞれ第１のストローブと第２のストローブに対応する。しかしながら、大まかな読み出し及び第２の読み出しは同じ２つのストローブの読み出し動作の一部である必要はない。更に、２つのストローブの読み出しはいずれの読み出しにおいても必ず必要なものではない。
【０１２３】
いくつかの実施形態において、マルチビットメモリセルに記憶されたビットの全てがリードバックされるわけではない。例えば、１個のメモリセルにつき２ビットが記憶される場合、選択肢の１つは第１のビット又は第２のビットのみをリードバックすることである。このことは、下のページのみを読み出す、又は上のページのみを読み出す、と呼ばれ得る。図１１Ａ及び１１Ｂの方式を使用する一実施形態において、下のページのみを読み出すことはＢ状態を読み出すことによって達成され得る。Ｂ状態を読み出す際に、Ｂ状態にあるメモリセルのビット線のみが、図１１Ａの検証中に使用される第１のビット線条件と一致するように充電されるべきである。したがって、まず、消去状態又はＡ状態のいずれかにあるメモリセルのビット線を放電するためにＢ状態での大まかな読み出しが行われ、どのビット線がＢ状態より低いメモリセルを有するかを判定する。次に、どのビット線がＣ状態にあるメモリセルを有するかを判定するためにＣ状態での大まかな読み出しが行われ得る。次に、Ｂ状態にあることを大まかに判定されたメモリセルのビット線のみが充電され、Ｂ状態の細かい読み出しが行われる。Ｂ状態の細かい読み出しは、どのメモリセルがＢ状態又はＣ状態（一実施形態において下のデータページである）のいずれかにあるかを判定する。
【０１２４】
図１２Ａは、検証中に第１バイアス条件を設定するための処理１２００の一実施形態のフローチャートである。処理１２００は検証処理８００のステップ８０４の一実施形態である。処理１２００において、検証される状態及びこれより高い全ての状態にプログラムされるメモリセルのビット線が充電される。他の全てのビット線は充電されない。ステップ１２０２において、検証されるメモリセル及びこれより高い全ての状態にあるメモリセルのビット線が充電される。例えば、Ａ状態が検証される場合、Ａ、Ｂ及びＣ状態にプログラムされるメモリセルのビット線が充電される。処理１２００はより多くの状態又はより少ない状態に変更することもできる。ステップ１２０４において、他の全てのビット線は接地され得る。例えば、消去状態を維持すべきメモリセルのビット線が接地される。
【０１２５】
処理１２００は、検証されるべき各状態に対して繰り返され得る。例えば、Ｂ状態を検証する際、Ｂ及びＣ状態にプログラムされるメモリセルのビット線はステップ１２０２において充電される。消去状態を維持すべきメモリセル及びＡ状態にプログラムされるべきメモリセルのビット線はステップ１２０４において接地され得る。
【０１２６】
図１２Ｂは、大まかな読み出しを行い、読み出し中に第２のビット線条件を設定するための処理１２２０の一実施形態のフローチャートである。処理１２２０は処理８２０のステップ８２２及び８２４の一実施形態を表している。処理１２２０は、処理１２００がメモリセルを検証する際に使用されるときに使用され得る。処理１２２０は４つの状態（すなわち消去、Ａ、Ｂ及びＣ）を備える実施形態を記載している。しかしながら、この処理１２２０はより多くの状態又はより少ない状態にも拡張され得る。一般的に、処理１１２０は、最も高い状態から最も低い状態までの順に読み出し状態に関与する。例えば、Ａ状態が読み出され、次にＢ状態、そしてＣ状態が読み出される。
【０１２７】
ステップ１２２２において、全てのビット線がプリチャージされる。ステップ１２２４において、Ａ状態での大まかな読み出しが行われる。Ａ状態にて大まかな読み出しを行うことでＡ状態より低い状態にあるメモリセルのビット線を放電することができる。例えば、Ａ状態のための読み出しレベルよりも少ない閾値レベル（例えばＶｒＡ）を有するメモリセルは、大電流を伝導することができ、一方、ＶｒＡよりも大きな閾値レベルを有するメモリセルは大電流を伝導しない。したがって、Ａ状態にて大まかな読み出しの後、消去されたメモリセルのビット線のみが放電される。いくつかの実施形態において、大電流を伝導する複数のビット線が特定され、例えばこれらのビット線を接地することによってこれらのビット線は遮断されることに留意されたい。更に、図１２Ａの処理１２００を使用する際に、これらのビット線条件は、Ａ状態の検証中に設定された第１のビット線条件と一致することにも留意されたい。すなわち、Ａ、Ｂ及びＣ状態にあるメモリセルのビット線が充電され、一方、他の全てのビット線は放電される。よって、Ａ状態での大まかな読み出しは第２のビット線条件を設定する。よって、ステップ１２２２及び１２２４は、第２のビット線条件を設定するステップ８２４の一実施形態である。一実施形態において、Ａ状態での大まかな読み出しは、２つのストローブの読み出しのうちの第１のストローブである。
【０１２８】
ステップ１２２６において、別の読み出しがＡ状態にて行われる。例えば、一の読み出しがＶｒＡにて行われる。例えば、第２のビット線条件が設定された後に、電圧ＶｒＡが、選択ワード線に印加される。ステップ１１２６はどのメモリセルが少なくともＶｒＡの閾値電圧を有するかを判定する。少なくともＶｒＡの閾値電圧を有するメモリセルのいくつかは、Ｂ又はＣ状態のいずれかであり得ることに留意されたい。したがって、Ａ状態にあるメモリセルはまだ判定（特定）されない。一実施形態において、ステップ１２２６の読み出しは、ステップ１２２４の２つのストローブ読み出しのうちの第２のストローブである。
【０１２９】
ステップ１１２８において、Ｂ状態での大まかな読み出しが行われる。Ｂ状態での大まかな読み出しを行うことで、Ｂ状態よりも下の状態にあるメモリセルのビット線を放電し得る。例えば、Ｂ状態のための読み出しレベルよりも小さい閾値レベル（例えばＶｒＢ）を有するメモリセルは大電流を伝導し、一方、ＶｒＢよりも大きな閾値レベルを有するメモリセルは大電流を伝導しない。したがって、Ｂ状態にて大まかな読み出しの後では、Ｂ又はＣ状態のいずれかにプログラムされるメモリセルのビット線のみが充電されたままである。一実施形態において、Ｂ状態での大まかな読み出しは、２つのストローブの読み出しのうちの第１のストローブである。
【０１３０】
図１２Ａの処理１２００を使用する際に、これらのビット線条件は、Ｂ状態の検証中に設定された第１のビット線条件と一致することに留意されたい。すなわち、Ｂ及びＣ状態にあるメモリセルのビット線が充電され、一方、他の全てのビット線は放電される。よって、Ｂ状態での大まかな読み出しは第２のビット線条件を設定する。よって、ステップ１２２２及び１２２８は、（Ｂ状態のための）第２のビット線条件を設定するステップ８２４の一実施形態である。
【０１３１】
ステップ１２３０において、別の読み出しがＢ状態にて行われる。例えば、一の読み出しがＶｒＢにて行われる。例えば、第２のビット線条件が設定された後に、電圧ＶｒＢが、選択ワード線に印加される。ステップ１２３０はどのメモリセルが少なくともＶｒＢの閾値電圧を有するかを判定する。少なくともＶｒＢの閾値電圧を有するメモリセルのいくつかは、Ｂ又はＣ状態のいずれかであり得ることに留意されたい。したがって、Ｂ状態にあるメモリセルはまだ判定（特定）されない。しかしながら、Ａ状態にあるメモリセルは今回判定（特定）され得る。一実施形態において、ステップ１２３０の読み出しはステップ１２２８の２つのストローブの読み出しのうちの第２のストローブである。  
【０１３２】
ステップ１２３２において、Ｃ状態にて大まかな読み出しが行われる。Ｃ状態での大まかな読み出しを行うことで、Ｃ状態よりも下の状態にあるメモリセルのビット線を放電し得る。例えば、Ｃ状態（例えばＶｒＣ）のための読み出しレベルよりも小さい閾値レベルを有するメモリセルは大電流を伝導し、一方、ＶｒＣよりも大きな閾値レベルを有するメモリセルは大電流を伝導しない。したがって、Ｃ状態にて大まかな読み出しの後では、Ｃ状態にプログラムされるメモリセルのビット線のみが充電されたままである。一実施形態において、Ｃ状態での大まかな読み出しは、２つのストローブの読み出しのうちの第１のストローブである。
【０１３３】
図１２Ａの処理１２００を使用する際に、これらのビット線条件は、Ｃ状態の検証中に設定された第１のビット線条件と一致することに留意されたい。すなわち、Ｃ状態にあるメモリセルのビット線が充電され、一方、他の全てのビット線は放電される。よって、Ｃ状態での大まかな読み出しは第２のビット線条件を設定する（ステップ１２２２でのプリチャージと共に）。よって、ステップ１２２２及び１２３２は、（Ｃ状態のための）第２のビット線条件を設定するステップ８２４の一実施形態である。
【０１３４】
ステップ１２３４において、別の読み出しがＣ状態にて行われる。例えば、一の読み出しがＶｒＣにて行われる。例えば、第２のビット線条件が設定された後に、電圧ＶｒＣが、選択ワード線に印加される。ステップ１２３４はどのメモリセルが少なくともＶｒＣの閾値電圧を有するかを判定する。様々なレベルにおける読み出しに基づき、全てのメモリセルの現在の状態をここで判定することができる。一実施形態において、ステップ１２３４の読み出しはステップ１２３２の２つのストローブの読み出しのうちの第２のストローブである。
【０１３５】
一実施形態において、少なくとも４つのラッチが検証中の各ビット線のために使用される。例えば、データラッチ（図５の４９４）は、ビット線上のメモリセルにプログラムされるべき２ビットのデータを記憶するために２つのデータラッチを含み得る。これは４つのデータ状態があると仮定している。データ状態は４つよりも多くても少なくてもよく、この場合、２つよりも多いか少ないデータラッチが使用され得る。一のラッチは、そのメモリセルが更なるプログラミングを禁じられているか否かを記録する。例えば、ビット線ラッチ（図５の４８２）は、接続されたビット線がプログラム禁止を指定する状態に上げられる値を記憶し得る（例えばＶｄｄ）。クイックパス書き込み（ｑｕｉｃｋ  ｐａｓｓ  ｗｒｉｔｅ（ＱＰＷ））ラッチは、メモリセルがＱＰＷモードにあるか否かを記録し得る。図５に記載されるように、いくつかのラッチが共通部分４９０に位置し他のラッチがセンスモジュール４８０に位置する必要はないことに留意されたい。
【０１３６】
いくつかの実施形態において、プログラミングを禁じるべきであるか否かの表示を記憶するためにビット線ラッチ４８２は必ずしも必要ではない。代わりに、メモリセルがそのターゲット閾値電圧にプログラムされた後に、データラッチ４９４におけるプログラムデータはプログラミングが完了したことを表示するように書き換えられる。例えば、メモリセルがそのターゲット閾値電圧にプログラムされた後、データラッチにおけるプログラムデータは消去状態のための値に設定される。消去状態におけるメモリセルに対してプログラミングを行う必要はないため、これは、メモリセルが更なるプログラミングを受けるべきでないことを意味するものとして解釈され得る。
【０１３７】
しかしながら、いくつかの実施形態に対しては、チャネル結合の効果が読み出し中に緩和されるように検証中にビット線に適切にバイアスをかけるために、メモリセルがどの状態にプログラムされたかを知ることが望ましい。すなわち、メモリセルは更なるプログラミングからロックアウトされた後に検証される必要はないが、そのビット線は、その隣接するメモリセルのうちの１つがまだ検証される必要がある場合に、検証中になお適切なバイアスをかけられるべきである。いくつかの実施形態では、データラッチ４９４においてプログラムデータが書き換えられたとしても、メモリセルがプログラムされた状態に基づいてビット線にどのようにバイアスをかけるかを判定することができる。一実施形態において、ＱＰＷラッチからの情報は、検証中にビット線にどのようにバイアスをかけるかを判定するために、データラッチ４９４における現在の情報と組み合わされる。消去状態を維持すべきメモリセルについては、データラッチ４９４はプログラミング処理全体を通してその消去状態データを保有すべきであることに留意されたい。しかしながら、非消去状態にプログラムされるべきメモリセルについては、データラッチ４９４における現在の情報はメモリセルがその意図されたプログラム状態に到達したか否かに依存し得る。例えば、メモリセルがその意図されたプログラム状態に到達する前に、データラッチ４９４は元のプログラムデータを保有すべきである。しかしながら、その意図されたプログラムに到達した後、データラッチ４９４は、プログラミングが完了したことを表示するために消去状態データを保持すべきである。したがって、消去状態データを備えるデータラッチは、消去状態を維持すべきであったメモリセルのためのものか、あるプログラミング状態へのプログラミングを完了したメモリセルのためのものである。
【０１３８】
図１３は、メモリセルを検証する処理１３００の一実施形態のフローチャートである。処理１３００において、元のプログラムデータをデコードし、検証中にビット線にどのようにバイアスをかけるかを決定するために、ＱＰＷラッチのデータがデータラッチ４９４における現在のデータと組み合わされる。処理１３００は４つの状態を備える実施形態のためのものであるが、処理１３００はより多くの状態又はより少ない状態のために変更することができることも理解されよう。処理１３００は、粗い検証及び細かい検証の両方を使用する。したがって、処理１３００は粗いプログラミング及び細かいプログラミングを用いて使用される。処理１３００は、１個のメモリセルの処理を記載している。しかしながら、多くのメモリセルを同時に検証することができることも理解されよう。例えば、処理１３００は、プログラムされる全てのメモリセルに同時に適用することができる。
【０１３９】
ステップ１３０２において、Ａ状態の粗い検証が行われる。粗い検証中に全てのビット線が充電され得る。粗い検証中に使用されるビット線バイアスがその状態の読み出し中に使用されるビット線バイアスと一致する必要はない。ステップ１３０２は、伝導電流のためにビット線を検出することと、ビット線が有効な電流を伝導するか否かに基づきＱＰＷラッチに値を記憶することを含み得る。例えば、メモリセルの閾値電圧がＶｖａＬよりも大きい場合、ＱＰＷラッチを「１」に設定することができる。ステップ１３０２は図７Ｃのステップ７５６〜７６２の一実施形態である。
【０１４０】
ステップ１３０２の後、メモリセルのためのデータラッチは元のプログラムデータを含むことができ、あるいは、プログラムデータは、更なるプログラミングがそのビット線上のメモリセルに対して禁じられていることを表示するために消去状態に設定されてもよい。したがって、データラッチが消去以外のデータ状態を表示している場合、このデータラッチはメモリセルがどの状態にプログラムされるべきかを表示している。しかしながら、データラッチが消去状態を表示している場合、このメモリセルは消去状態を維持すべきであったか、あるいは別の状態にプログラムされており今は更なるプログラミングから禁じられているかについては不明である。
【０１４１】
ステップ１３０４において、ＱＰＷラッチのデータは、データラッチ４９４が実際の消去データを含むか禁じられたデータを含むかを判定するためにデータラッチ４９４の現在のデータと結合される。図１４Ａの表１４００は、条件を集約しており、ＱＰＷラッチがデータラッチ４９４からの電流データとどのように組み合わされるかについての一実施形態を示している。図１４Ａの表１４００の各列（縦列）は、所定のメモリセルについての異なる条件に関する。列Ｅｒは、消去状態（よってそのＶｔは消去状態にある）を維持すべきメモリセルに関する。列Ａ、Ｂ、Ｃは、Ａ、Ｂ、及びＣ状態にそれぞれプログラムされるメモリセルについての「プログラムされていない」ケースであることを指す。プログラムされていないメモリセルはその状態についてターゲットＶｔよりも小さいＶｔを有し得る。列Ａｑ、Ｂｑ、Ｃｑは、それぞれＡ、Ｂ、及びＣ状態にプログラムされるメモリセルのための「クイックパス書き込み（ｑｕｉｃｋ  ｐａｓｓ  ｗｒｉｔｅ）」ケースを指す。クイックパス書き込み状態にあるメモリセルは粗い検証レベルと細かい検証レベルとの間にあるＶｔを有し得る。例えば、Ａ状態について、メモリセルはＶｖａＬとＶｖＡとの間にあり得る。列Ａｉｎ、Ｂｉｎ、Ｃｉｎは、それぞれＡ、Ｂ、及びＣ状態にプログラムされたメモリセルのための「禁じられた」ケースを指す。禁じられたメモリセルはそのターゲットＶｔに到達しており、更なるプログラミングからロックアウトされている。メモリセルがプログラミングからロックアウトされるとき、データラッチは、それがロックアウトされるべきであることを表示するために消去状態にセットされ得ることに留意されたい。
【０１４２】
表１４００の第１行は、データラッチが消去状態を表示するケースについて「１」が入っている。上述のように、これは、当該メモリセルが消去状態を維持すべきメモリセルであることによるか、あるいはそのターゲットレベルに到達し、更なるプログラミングを禁じられたメモリセルによるものである。したがって、「１」は列Ｅｒ（メモリセルは消去状態を維持するべき）及び列Ａｉｎ（メモリセルがそのターゲットＡ状態に到達したため、更なるプログラムを禁じられている）、更にはＢｉｎ及びＣｉｎの第１行に示される。この表の第２行は、粗い検証を行う際に可能な値を示している。例えば、メモリセルがまだプログラムされていない場合、ＶｖａＬよりも高いか低いＶｔを有し得る。これは、任意の状態にプログラムされつつあるメモリセルにも当てはまることに留意されたい。したがって、この表はプログラムされていないケースについて「０／１」の不確実な値を示す。表１４００は、Ａｑ、Ａｉｎ、Ｂｑ、Ｂｉｎ、Ｃｑ及びＣｉｎについて「１」を有し、なぜならＶｔはこれらのケースにおいてＶｖａＬ電圧レベルよりも高くなるからである。
【０１４３】
この表の第３行は、ビット線が細かいＡ状態検証を行う際にバイアスをかけられるべきケースのために「１」を有する。この例において、これは、消去状態を維持すべきメモリセルを除き全てのケースに当てはまる。第３行は、ＱＰＷラッチとデータラッチ４９４との組み合わせから作られる。この例において、第３行は「ＱＰＷ  ＯＲ  ＮＯＴ  Ｅｒ」から作られる。換言すると、ＱＰＷラッチが「１」に設定される場合か、データラッチ４９４が消去データ以外のものを含む場合のいずれかの場合、第３行は「１」に等しい。例えば、Ａ、Ａｑ、Ｂ、Ｂｑ、Ｃ、Ｃｑのケースについてデータラッチ４９４は消去データを含まない。したがって、第３行はこれらの値のために「１」に設定される。更に、ＱＰＷが「１」に設定される場合、第３行が設定される。例えば、Ａｑ、Ａｉｎ、Ｂｑ、Ｂｉｎ、Ｃｑ、及びＣｉｎについてＱＰＷが設定される。したがって、第３行の対応する欄が設定される。Ａ、Ｂ、及びＣについてＱＰＷの値は不確定である。しかしながら、消去データを含まないデータラッチ４９４により第３行は「１」に設定される。ＱＰＷラッチをデータラッチと組み合わせることが他の方法でも行われ得ることに留意されたい。
【０１４４】
ステップ１３０６において、消去状態を維持すべきではないメモリセルのビット線は充電され、一方、消去状態を維持すべきメモリセルのビット線は充電されない。正しいビット線は既述のようにステップ１３０４において判定される。
【０１４５】
ステップ１３０８において、Ａ状態の細かい検証が、ステップ１３０６において設定されたビット線条件により行われる。例えば、選択ワード線に電圧ＶｖＡを印加し得、次にビット線が検出され得る。ステップ１３０８は図７Ｃのステップ７７０の一実施形態である。したがって、ビット線を検出した後、検証を経たか否かが判定され得る（ステップ７７２、図７Ｃ）。検証を経ており、ビット線が禁止されるべきである場合、データラッチ４９４は禁止標識を提供するために消去状態に設定され得る（ステップ７７４、図７Ｃ）。
【０１４６】
ステップ１３１０において、Ｂ状態の粗い検証が行われる。この粗い検証中に全てのビット線が充電され得る。粗い検証中に使用されるビット線バイアスがその状態の読み出し中に使用されるビット線バイアスと一致する必要はないことに留意されたい。ステップ１３１０は、伝導電流のためにビット線を検出することと、ビット線が有効な電流を伝導するか否かに基づきＱＰＷラッチにおいて値を記憶することと、を含み得る。例えば、メモリセルの閾値電圧がＶｖａＬよりも大きい場合、ＱＰＷラッチは「１」に設定される。ステップ１３１０は、図７Ｃのステップ７５６〜７６２の一実施形態である。
【０１４７】
ステップ１３１０の後、このメモリセルのためのデータラッチは元のプログラムデータを含むことができ、あるいは、このプログラムデータは、更なるプログラミングが禁じられていることを表示するために消去状態に設定されてもよい。したがって、データラッチが消去以外のデータ状態を表示している場合、このデータラッチはメモリセルがプログラムされるべき状態を表示している。しかしながら、データラッチが消去状態を表示する場合、このメモリセルは消去状態を維持すべきであったか、あるいは別の状態にプログラムされており今は更なるプログラミングから禁じられているかについては不明である。
【０１４８】
ステップ１３１２において、データラッチ４９４が実際の消去データを含むか禁じられたデータを含むかを判定するためにＱＰＷラッチからのデータがデータラッチ４９４の現在のデータと結合される。検証Ｂケースのために、どのビット線が消去状態を維持すべきであったメモリセルを有するか、あるいはＡ状態にプログラムされるべきであったメモリセルを有するかを判定する。図１４Ｂの表１４２０はステップ１３１２を説明するときに参照される。表１４２０の第１行は、データラッチ４９４が消去状態又はＡ状態を表示するケースについて「１」が入っている。したがって、「１」は列Ｅｒ（メモリセルが消去状態を維持すべき）、並びに列Ａｉｎ、Ｂｉｎ、Ｃｉｎ、及びの列Ａ、Ａｑにおいて第１行に示され、これらは、メモリセルがＡ状態にまだプログラムされていないためデータクラッチ４９４がＡ状態データをなお含むケースを表している。
【０１４９】
表１４２０の第２行は、Ｂ状態のための粗い検証を行う際にＱＰＷラッチにおける可能な値を示している。例えば、メモリセルがまだプログラムされていない場合、このメモリセルはＶｖｂＬよりも高いか低いＶｔを有し得る。これは、Ｂ又はＣ状態にプログラムされるメモリセルにも当てはまることに留意されたい。したがって、表１４２０はプログラムされていないＢ及びＣ状態のケースについて「０／１」の不確実な値を示す。表１４２０は、Ｂｑ、Ｂｉｎ、Ｃｑ及びＣｉｎについて「１」を有し、なぜならＶｔはこれらのケースにおいてＶｖｂＬ電圧レベルよりも高くなるからである。
【０１５０】
表１４２０の第３行は、ビット線が細かいＢ状態の検証を行う際にバイアスをかけられるべきケースについて「１」を有する。この例において、消去状態を維持すべきメモリセル及びＡ状態にプログラムされたかされるべきメモリセルを除き、これは全てのケースに当てはまる。換言すると、Ｂ状態及びＣ状態にプログラムされたかされるべきメモリセルのビット線にバイアスがかけられる。第３行は最初の２行の組み合わせから作られる。具体的には、第３行はＱＰＷ  ＯＲ  ＮＯＴ（Ｅｒ  ＯＲ  Ａ）から作られる。換言すると、ＱＰＷが１に設定されているか、データラッチ４９４が消去データかＡ状態データ以外のものを含む場合、第３行は「１」に設定されるべきである。例えば、Ｂ、Ｂｑ、Ｃ、Ｃｑのケースについて、データラッチ４９４は消去データを含まない。したがって、第３行はこれらの値について「１」に設定される。更に、ＱＰＷが設定される場合、第３行が設定される。例えば、Ｂｑ、Ｂｉｎ、Ｃｑ、及びＣｉｎについてＱＰＷが設定される。したがって、第３行において対応する欄が設定される。ＱＰＷをデータラッチ４９４と組み合わせることは、他の方法においても行うことできることに留意されたい。
【０１５１】
ステップ１３１４において、Ｂ又はＣ状態のいずれかにプログラムされるべきメモリセルのためのビット線が充電される一方、他の全てのビット線は充電されない。正しいビット線は既述のようにステップ１３１２において判定される。
【０１５２】
ステップ１３１６において、Ｂ状態の細かい検証はステップ１３１４において設定されたビット線条件で行われる。例えば、選択ワード線に電圧ＶｖＢが印加され、次に各ビット線が検出される。ステップ１３１６は、図７Ｃのステップ７７０の一実施形態である。したがって、ビット線を検出した後、検証を経たか否かが判定され得る（ステップ７７２、図７Ｃ）。検証が済み、ビット線が禁止されるべきである場合、データラッチ４９４は禁止標識を提供するために消去状態に設定され得る（ステップ７７４、図７Ｃ）。
【０１５３】
ステップ１３１８において、Ｃ状態の粗い検証が行われる。粗い検証中に、全てのビット線が充電され得る。粗い検証中に使用されるビット線バイアスがその状態の読み出し中に使用されるビット線バイアスと一致する必要はないことに留意されたい。ステップ１３１８は、伝導電流のためのビット線を検出することと、ビット線が有効な電流を伝導するか否かに基づきＱＰＷラッチにおいて値を記憶することと、を含み得る。例えば、メモリセルの閾値電圧がＶｖｃＬよりも大きい場合、ＱＰＷラッチは「１」に設定される。ステップ１３１８は、図７Ｃのステップ７５６〜７６２の一実施形態である。
【０１５４】
ステップ１３１８の後、このメモリセルのためのデータラッチは元のプログラムデータを含むことができ、あるいは、プログラムデータは、更なるプログラミングが禁止されるべきであることを表示するために消去状態に設定されていてもよいことに留意すべきである。したがって、データラッチ４９４が消去以外のデータ状態を表示する場合、データラッチ４９４はメモリセルがプログラムされるべき状態を表示する。しかしながら、データラッチ４９４が消去状態を表示する場合、メモリセルが消去状態を維持するべきであったメモリセルか、別の状態にプログラムされており今は更なるプログラミングから禁じられているメモリセルかについては不明である。
【０１５５】
ステップ１３２０において、ＱＰＷラッチからのデータは、データラッチ４９４が実際の消去データを含むか禁じられたデータを含むかを判定するためにデータラッチ４９４からの現在のデータと結合される。検証Ｃケースのために、どのビット線が消去状態を維持すべきであったメモリセルを有するか、Ａ若しくはＢ状態のいずれかにプログラムされるべき又はされるべきであったメモリセルを有するかを判定する。図１４Ｃの表１４４０はステップ１３２０を説明するときに参照される。表１４４０の第１行は、データラッチ４９４が消去状態、Ａ状態、又はＢ状態を表示するケースについて「１」が入っている。したがって、「１」は列Ｅｒ（メモリセルは消去状態を維持すべき）、並びに列Ａｉｎ、Ｂｉｎ、Ｃｉｎ、及びの列Ａ、Ａｑ、Ｂ、Ｂｑにおいて第１行に示されている。Ａ、Ａｑ、Ｂ、Ｂｑは、メモリセルがＡ又はＢ状態にまだプログラムされていないためデータクラッチ４９４がＡ状態又はＢ状態のいずれかのデータをなお含むケースを表していることに留意されたい。
【０１５６】
表１４４０の第２行は、Ｃ状態のための粗い検証を行う際にＱＰＷラッチにおける可能な値を示している。例えば、メモリセルがまだプログラムされていない場合、メモリセルはＶｖｃＬよりも高いか低いＶｔを有し得る。したがって、表１４４０はプログラムされていないＣ状態のケースについて「０／１」の不確実な値を示す。表１４４０は、Ｃｑ及びＣｉｎについて「１」を有し、なぜならＶｔはこれらのケースにおいてＶｖｃＬ電圧レベルよりも高くなるからである。表１４４０の第３行は、ビット線が細かいＣ状態検証を行う際にバイアスをかけられるべきケースについて「１」を有する。この例において、これは、Ｃ状態にプログラムされたかされるべきメモリセルのビット線にのみ当てはまる。
【０１５７】
第３行は最初の２行の組み合わせから作られる。具体的には、第３行はＱＰＷ  ＯＲ  ＮＯＴ（Ｅｒ  ＯＲ  Ａ  ＯＲ  Ｂ）から作られる。換言すると、ＱＰＷラッチが「１」に設定されるか、データラッチ４９４が消去データ、Ａ状態データ、又はＢ状態データ以外のものを含むかのいずれかである。例えば、Ｃ、Ｃｑのケースについてデータラッチ４９４は消去データを含まない。したがって、第３行はこれらの値のために設定される。更に、ＱＰＷが設定される場合、第３行が設定される。例えば、Ｃｑ及びＣｉｎのためにＱＰＷが設定される（Ｃについてそれは設定されてもされなくてもよい）。ＱＰＷをデータラッチ４９４と組み合わせることは、他の方法においても行うことできることに留意されたい。
【０１５８】
ステップ１３２２において、Ｃ状態にプログラムされるべきメモリセルのためのビット線が充電される一方、他の全てのビット線は充電されない。正しいビット線は既述のようにステップ１３２０において判定される。
【０１５９】
ステップ１３２４において、Ｃ状態の細かい検証は、ステップ１３２２において設定されたビット線条件により行われる。例えば、選択ワード線に電圧ＶｖＣが印加され、次に、各ビット線が検出される。ステップ１３２４は、図７Ｃのステップ７７０の一実施形態である。したがって、ビット線を検出した後、検証が済んだか否かが判定され得る（ステップ７７２、図７Ｃ）。検証が済んでおり、ビット線が禁止されるべきである場合、データラッチ４９４は禁止標識を提供するために消去状態に設定され得る（ステップ７７４、図７Ｃ）。Ｃ状態の細かい検証の後に、図７Ａのステップ７２４は全てのメモリセルが検証を経たか否かを判定するために行われ得る。そして、図７Ａの処理は、全てのメモリセルがプログラムされる（ステップ７２６）か、プログラミングが失敗する（ステップ７３０）までメモリセルをプログラムし続け得る。
【０１６０】
図１５は、センスモジュール４８０の一例を示している。しかしながら、他の態様も使用され得る。センスモジュール４８０は検証及び読み込み処理の両方の最中に様々な実施形態において使用され得る。図１６は、図１５のセンス増幅器を使用して読み取り時又は検証中に検出（センス）を行う一実施形態である。図１６のタイミングにおいて、「マルチストローブ」検出動作が行われる。したがって、図１５のセンス増幅器は、マルチストローブの読み出しを使用する実施形態において使用され得る。センス増幅器はマルチストローブの検出動作を行うことは必要とされないことに留意されたい。例えば、単一のストローブの検出動作が行われ得る。
【０１６１】
センスモジュール４８０は、ビット線絶縁トランジスタ５１２と、ビット線プルダウン回路（トランジスタ５２２及び５５０）と、ビット線電圧クランプトランジスタ６１２と、読み出しバス転送ゲート５３０と、センス増幅器４７０と、ビット線ラッチ４８２と、を備える。ビット線絶縁トランジスタ５１２の一端がビット線ＢＬ及びコンデンサ５１０に接続されている。ビット線絶縁トランジスタ５１２の他端が、ビット線電圧クランプトランジスタ６１２及びビット線プルダウントランジスタ５２２に接続されている。ビット線絶縁トランジスタ５１２のゲートは、ＢＬＳとしてラベル付けされた信号を受信する。ビット線電圧クランプトランジスタ５１２のゲートは、ＢＬＣとしてラベル付けされた信号を受信する。ビット線電圧クランプトランジスタ５１２はノードＳＥＮ２にて読出しバスゲート転送ゲート５３０に接続される。読出しバス転送ゲート５３０は読出しバス５３２に接続される。ビット線電圧クランプトランジスタ５１２は、ノードＳＥＮ２にてセンス増幅器４７０に接続される。図９の実施形態において、センス増幅器４７０は、トランジスタ６１３、６３４、６４１、６４２、６４３、６５４、６５４及び６５８、並びにコンデンサＣｓａを含み、ビット線ラッチ４８２は、トランジスタ６６１、６６２、６６３、６６４、６６６及び６６８を含む。
【０１６２】
一般的に、一のワード線に並ぶメモリセルは、並列で動作される。よって、対応する数の検出モジュールが並列で動作し得る。一実施形態において、制御部は、並列で動作する検出モジュールに制御信号及びタイミング信号を提供する。いくつかの実施形態において、一のワード線に沿ったデータは、複数のページに分割され、かつ、このデータは一度に一ページずつ又は一度に複数ページ読み出されプログラムされる。
【０１６３】
センスモジュール４８０は、ビット線絶縁トランジスタ５１２が信号ＢＬＳによって作動されるとき、メモリセルのためのビット線（例えばビット線ＢＬ）に接続可能である。センスモジュール４８０は、センス増幅器４７０によってメモリセルの伝導電流を検出し、検出ノードＳＥＮ２にてデジタル電圧レベルとして読み取り結果をラッチし、これをゲート５３０を介して読み取りバス５３２に出力する。
【０１６４】
センス増幅器４７０は、第２の電圧クランプ（トランジスタ６１２及び６３４）と、プリチャージ回路（トランジスタ５４１、６４２及び６４３）と、弁別器若しくは比較回路（トランジスタ６５４、６５６及び６５８、並びにコンデンサＣｓａ）と、を備える。一実施形態において、読み出されるメモリセルの制御ゲートに基準電圧が印加される。基準電圧がメモリセルの閾値電圧よりも大きい場合、メモリセルはオンになり、そのソースとドレインとの間に電流を伝える。基準電圧がメモリセルの閾値電圧よりも大きくない場合には、メモリセルはオンにならず、そのソースとドレインとの間に電流を伝えない。多くの実施形態において、オン／オフは、メモリセルが異なる制御ゲート電圧に応じて異なる電流を伝導するように連続遷移になり得る。メモリセルがオンであり電流を伝導する場合、伝導された電流は、ノードＳＥＮ上の電圧を減少させ、他の端末がＶｄｄであるコンデンサＣｓａに亘って電圧を充電又は上昇させる。ノードＳＥＮ上の電圧が所定の検出期間中に所定のレベルに放電する場合、センス増幅器４７０は、メモリセルが制御ゲート電圧に応じてオンになったことを報告する。
【０１６５】
センスモジュール４８０の特徴の１つは、検出中にビット線に一定の電圧供給を組み込むことである。これはビット線電圧クランプトランジスタ６１２によって行われることが好ましく、このビット線電圧クランプトランジスタ６１２はビット線ＢＬと直列に接続されるトランジスタ６１２と共にダイオードクランプのように動作する。そのゲートは、その閾値電圧ＶＴの上の所望のビット線電圧ＶＢＬと等しい低電圧ＢＬＣにバイアスをかけられる。このようにして、これは、ノードＳＥＮからビット線を絶縁し、プログラム−検証又は読み出し中にビット線のために定電圧（例えば所望のＶＢＬ＝０．５〜０．７ボルト）を設定する。一般的に、ビット線電圧レベルは、長いプリチャージ時間を避けるために十分低いが基礎雑音及び他の要因を避けるために十分高くなるようなレベルに設定される。
【０１６６】
センス増幅器４７０は、検出ノードＳＥＮを通して伝導電流を検出し、この伝導電流が所定の値よりも上であるか下であるかを判定する。センス増幅器は、信号ＳＥＮ２としてデジタル形式で検出された結果を読み出しバス５３２に出力する。
【０１６７】
デジタル制御信号ＩＮＶ（これは基本的にＳＥＮ２にて信号の反転状態になり得る）もプルダウン回路を制御するために出力され得る。検出された伝導電流が予め決められた値ＩＮＶよりも高いとき、ＩＮＶはハイ（ＨＩＧＨ）になり、ＳＥＮ２はロー（ＬＯＷ）になる。この結果は、プルダウン回路によって裏打ちされる。プルダウン回路は、制御信号ＩＮＶによって制御されるｎ型トランジスタ５２２と、制御信号ＧＲＳによって制御される他のｎ型トランジスタ５５０を含む。ローのときにＧＲＳ信号によってビット線ＢＬがＩＮＶ信号の状態に関わらず浮動され得る。プログラミング中、ＧＲＳ信号がハイ（ＨＩＧＨ）になり、ビット線ＢＬが接地され、ＩＮＶによって制御される。ビット線ＢＬが浮動させられる必要とされるとき、ＧＲＳ信号はローになる。検出モジュール、センス増幅器及びラッチの他の設計を使用することもできることに留意されたい。
【０１６８】
いくつかの実施形態において、マルチパス検出（例えば２つのストローブ検出）が使用される。各パスは、所定の限界電流値よりも高い伝導電流を備えるメモリセルを特定し遮断するのを助ける。これは、どのビット線がメモリセルの最終検出に基づくかを選択するために使用され得る。したがって、適切なビット線バイアス条件が設定され得る。例えば、マルチパス検出は２つのパス（ｊ＝０〜１）において実行することができる。第１のパスの後、ブレークポイントよりも高い伝導電流を備えるこれらのメモリセルは、それらの伝導電流をオフにすることによって特定され移動される。それらの伝導電流をオフにする方法の一つは、それらのビット線上のドレイン電圧をゼロに設定することである。２つよりも多いパスも考えられる。いくつかの実施形態においては、一つのパス（単一のストローブ）のみを検出のために使用することができる。
【０１６９】
図１６は、図１５のセンス増幅器を使用して、読み出し中又は検証中の検出の一実施形態のタイミング図を記載している。図１６（Ａ）〜１６（Ｋ）は、読み出し・検証動作時のセンスモジュール４８０の一実施形態を説明するタイミング図を記載している。
【０１７０】
フェーズ（０）：セットアップ
センスモジュール４８０（図１５を参照）は、許可信号ＢＬＳ（図１６（Ａ）を介して対応するビット線に接続されている。電圧クランプは、ＢＬＣ（図１６（Ｂ））によって作動される。プリチャージトランジスタ６４２は、制御信号ＦＬＴ（図１６（Ｃ））によって限定電流源として作動される。
【０１７１】
フェーズ（１）：制御されたプリチャージ
センス増幅器４７０はリセット信号ＲＳＴによって初期化され（図１６（Ｄ））、このリセット信号ＲＳＴは信号ＩＮＶ（図１６（Ｈ））をトランジスタ６５８を介して接地させる。よって、リセットによってＩＮＶはローに設定される。同時に、ｐ型トランジスタ６６３は相補信号ＬＡＴをＶｄｄ又はハイに引き上げる（図１６（Ｈ））。すなわち、ＬＡＴはＩＮＶの補数である。絶縁トランジスタ６３４は信号ＬＡＴによって制御される。よって、リセットの後、絶縁トランジスタ６３４は検出ノードＳＥＮ２をセンス増幅器の内部検出ノードＳＥＮ２に接続するために作動される。
【０１７２】
プリチャージトランジスタ６４２は所定の時間、内部検出ノードＳＥＮ及び検出ノードＳＥＮ２によってビット線ＢＬをプリチャージする。これによりビット線における伝導を検出するためにこのビット線を最適電圧にする。プリチャージトランジスタ６４２は制御信号ＦＬＴ（「ＦＬＯＡＴ」）によって制御される。ビット線は、ビット線電圧クランプ６１２によって設定された所望のビット線電圧に向けて引き上げられる。引き上げの速度はビット線における伝導電流に依存する。伝導電流が小さくさればなるほど、引き上げは速くなる。
【０１７３】
ＤＣ検出は、所定の電流をビット線に供給するために電流源のように機能するプリチャージ回路を提供することによって達成される。ｐ型トランジスタ６４２を制御する信号ＦＬＴは、これが所定の電流が流れるように「プログラム」するようにｐ型トランジスタ６４２を制御する。一例として、ＦＬＴ信号は、５００ｎＡに設定された基準電流を備える電流ミラーから生成され得る。ｐ型トランジスタ６４２が電流ミラーのミラーレッグを形成するとき、このｐ型トランジスタ６４２はそこを流れる同じ５００ｎＡも有する。
【０１７４】
図１６（Ｉ１）〜１６（Ｉ４）は、７００ｎＡ、４００ｎＡ、２２０ｎＡ及び４０ｎＡの伝導電流を備えるメモリセルにそれぞれ接続された４つの例のビット線上の電圧を示している。例えば、プリチャージ回路（トランジスタ６４２を含む）が５００ｎＡの制限を備える電流源であるとき、５００ｎＡを越える伝導電流を有するメモリセルは、電荷が蓄積されるよりも速く流出するビット線上の電荷を有する。結果として、伝導電流７００ｎＡを備えるビット線のために、内部検出ノードＳＥＮにおけるその電圧又は信号は、０Ｖ近くに保たれる（例えば０．１ボルト（図１６（Ｉ１）を参照））。一方、メモリセルの伝導電流が５００ｎＡ以下である場合、プリチャージ回路（トランジスタ６４２を含む）はビット線まで充電し始め、かつその電圧はクランプされたビット線電圧（例えば、電圧クランプ６１２によって設定された０．５Ｖ）に向けて上昇を始める（図１６（Ｉ２）〜１６（Ｉ４））。結果、内部検出ノードＳＥＮは０Ｖ近くに保持されるか、Ｖｄｄに引き上げられる（図１６（Ｇ））。一般的に、伝導電流が小さくなればなるほど、ビット線電圧がクランプされたビット線電圧まで速く充電する。よって、制御されたプリチャージフェーズの後のビット線上の電圧の試験によって、接続されたメモリセルが所定のレベルよりも高い伝導電流を有するか低い伝導電流を有するかを特定することが可能である。
【０１７５】
フェーズ（２）：高電流セルをラッチし、後続するストローブから外す
制御されたプリチャージフェーズの後、最初のＤＣ高電流検出フェーズはノードＳＥＮが弁別器回路によって検出されるところで始まる。検出は所定のレベルよりも高い伝導電流を備えるこれらのメモリセルを特定する。弁別器回路は、直列接続の２つのｐ型トランジスタ６５４及び６５６を含み、信号ＩＮＶを登録するノードのためにプルアップとして機能する。ｐ型トランジスタ６５４がローへ行く読み出しストローブ信号ＳＴＢによって作動され、かつ、ｐ型トランジスタ６５６はローに行く内部検出ノードＳＥＮにて信号によって作動される。高電流メモリセルは、０Ｖに近いか、あるいは、少なくとも、ｐ型トランジスタ６５６をオフに転換させるほど充分に高くはそのビット線がプリチャージされ得ない信号ＳＥＮを有する。例えば、弱いプルアップが５００ｎＡの電流に限定される場合、７００ｎＡの伝導電流を備えるセルを引き上げることをしない（図１６（Ｇ１））。ＳＴＢがラッチに対してローをストローブするとき、ＩＮＶはＶｄｄに引き上げられる。これは、ラッチ回路６６０をＩＮＶがハイでＬＡＴがローの状態にセットする（図１６（Ｈ１））。
【０１７６】
ＩＮＶがハイかつＬＡＴがローであるとき、絶縁ゲート６３０は、機能しなくなり、かつ、センスノードＳＥＮ２は内部検出ノードＳＥＮからブロックされる。同時に、ビット線がプルダウントランジスタ５２２によって接地される（図１６及び１６（Ｉ１））。これは、ビット線における任意の伝導電流を効率的にオフにし、これがソース線バイアスに寄与することがないようにする。
【０１７７】
よって、検出モジュール４８０の一実施態様において、制限された電流源プリチャージ回路が使用される。これは、高電圧を搬送するビット線を特定し、オフにする更なる方法又は別の方法（ＤＣ検出）を提供する。
【０１７８】
別の実施形態において、プリチャージ回路はとりわけ高電流ビット線を特定するのを助けるようには構成されていないが、メモリシステムに利用可能な最大電流の許容量内で可能な限り速くビット線をプルアップしてプリチャージするように最適化される。
【０１７９】
フェーズ（３）：リカバリ／プリチャージ
以前にプルダウンされていなかったビット線の伝導電流の検出の前に、プリチャージ回路は、ローになる信号ＦＬＴによりアクティブ化されて、内部センスノードＳＥＮ２をＶｄｄにプリチャージする（図１６（Ｃ）及び図１６（Ｉ２）〜１６（Ｉ４））と共に、隣接するビット線の電圧の低下に起因して部分的に下方に結合されていた可能性のあるビット線をプリチャージする。
【０１８０】
フェーズ（４）：第１のＡＣ検出
一実施形態において、ＡＣ（交流電流又は過渡電流）検出は、フロートした内部検出ノードＳＥＮにて電圧降下を判定することによって行われる。これは、内部検出ノードＳＥＮに連結されたコンデンサＣｓａを使用し、伝導電流がそれを充電させる（ノードＳＥＮ上の電圧を減少させる）速度を加味する弁別器回路によって達成される。集積回路の環境では、コンデンサＣｓａは典型的にはトランジスタによって実行されるが、他の態様も適している。コンデンサＣｓａは所定の静電容量（例えば３０ｆＦ）を有してり、これは最適電流を決定するために選択され得る。限界電流値は、典型的には１００〜１０００ｎＡの範囲であり、充電期間を適切に調整することによって設定され得る。
【０１８１】
弁別器回路は内部センスノードＳＥＮにおいて信号ＳＥＮを検出する。各検出の前に、内部センスノードＳＥＮでの信号はプリチャージトランジスタ６４２によってＶｄｄに引き上げられる。これによりコンデンサＣｓａ全体の電圧をゼロになるように初期設定する。
【０１８２】
センス増幅４７０が検出する準備ができると、プリチャージ回路はハイになるＦＬＴによって動作が停止される（図１６（Ｃ））。第１の検出期間Ｔ１はストローブ信号ＳＴＢのアサートによって終了される。検出期間中、伝導メモリセルによって誘導された伝導電流はコンデンサを充電する。ＳＥＮでの電圧は、コンデンサＣｓａがビット線において伝導電流のドレイン動作によって充電されるときにＶｄｄから減少する。図１６（Ｇ）（曲線Ｇ２〜Ｇ４を参照）は、４００ｎＡ、２２０ｎＡ及び４０ｎＡの伝導電流を備えるメモリセルのそれぞれ接続された残りの３つのビット線の例に対応するＳＥＮノードを示しており、より高い伝導電流を備えるものに対してより急速に減少する。
【０１８３】
フェーズ（５）：高電流セルの第１のＡＣラッチ、及び高電流セルを後続するストローブから外す
第１の所定の検出期間の終わりに、ＳＥＮノードはビット線における伝導電流に依ってある電圧に減少する（図１６Ｇの曲線Ｇ２〜Ｇ４を参照）。一例として、この第１のフェーズにおける限界電流は、３００ｎＡになるように設定される。ｐ型トランジスタ６５６の閾値電圧と、検出期間Ｔ１と、コンデンサＣｓａは、限界電流信号（例えば３００ｎＡ）よりも高い伝導電流に対応するＳＥＮでの信号がトランジスタ６５６をオンにするのに十分低くなるように降下する。ラッチング信号ＳＴＢがローにストローブすると、出力信号ＩＮＶは、ハイに引き上げられ、ラッチ４８２によってラッチされる（図１６（Ｅ）及び図１６（Ｈ）（曲線Ｈ２））。一方、限界電流より低い伝導電流に対応する信号ＳＥＮは、トランジスタ６５６をオンにすることができない信号ＳＥＮを生成する。この場合、ラッチ４８２は変化せず、この場合ＬＡＴはハイのままである（図１６（Ｈ３）及び１６（Ｈ４））。よって、弁別器回路は、検出期間によって設定された基準電流に比してビット線における伝導電流の強度を効果的に判定することが分かる。
【０１８４】
センス増幅器４７０は第２の電圧クランプトランジスタ６１２も含んでおり、この目的はトランジスタ６１２のドレインの電圧をビット線電圧クランプ６１０が正しく機能するように十分高く維持することである。既述のように、ビット線電圧クランプ６１０は、ビット線電圧を所定の値ＶＢＬ、例えば０．５Ｖにクランプする。これはトランジスタ６１２のゲート電圧ＢＬＣがＶＢＬ＋ＶＴ（ここでＶＴはトランジスタ６１２の閾値電圧である）に設定されることを必要とし、かつ、検出ノード５０１に接続されたドレインがソースよりも大きくなること（すなわち、信号ＳＥＮ２＞ＶＢＬ）を必要とする。特に、電圧クランプの構成では、ＳＥＮ２はＸＸ０−ＶＴ又はＢＬＸ−ＶＴの小さい方よりも低くなるべきであり、ＳＥＮは高くなるべきである。検出中、絶縁ゲート６３０はパススルーモードにある。しかしながら、内部検出モードにて信号を検出中に、ＳＥＮはＶｄｄから減少する電圧を有する。第２の電圧クランプは、ＳＥＮがＸＸ０−ＶＴ又はＢＬＸ−ＶＴのいずれか低い方よりも低く降下することを防ぐ。これは、信号ＢＬＸ（ここでＢＬＸは?ＶＢＬ＋ＶＴ）によって制御されるトランジスタ６１２によって達成される。よって、電圧クランプの動作によって、ビット線電圧ＶＢＬは検出中に一定（例えば〜０．５Ｖ）に維持される。
【０１８５】
電流判定の出力は、ラッチ回路４８２によってラッチされる。ラッチ回路は、トランジスタ６６６及び６６８と、トランジスタ６６１、６６２、６６３及び６６４によって「セット／リセット」ラッチとして形成される。ｐ型トランジスタ６６６は、信号ＲＳＴ（ＲＥＳＥＴ）によって制御され、ｎ型トランジスタ６６８は信号ＳＴＢによって制御される。
【０１８６】
一般的に、対応するマルチパス検出モジュール４８０によって動作される１ページのメモリセルがあり得る。第１の限界電流レベルよりも高い伝導電流を有するメモリセルのために、それらのＬＡＴ信号はローにラッチされる（ＩＮＶはハイにラッチされる）。これにより、ビット線プルダウン回路５２０を動作させ、対応するビット線を接地させ、これによりそれらの電流をオフにする。いくつかの実施形態において、これは検証のためのビット線条件の設定を助ける。例えば、図１２Ｂのステップ１２２４において、Ａ状態の大まかな読み出しは、この点まで検出することによって達成され得る。ストローブ信号は全検出処理の間に２回以上アサートされることに留意されたい。例えば、図１６において、ストローブ信号は３回アサートされ、最後のストローブは最後の読み取りである。この例において、期間１及び５の間のストローブは大まかな読み出しを達成し得る。いくつかの実施形態において、期間１及び５の間のストローブのうちの少なくとも１回は２つのストローブ読み出しの第１のストローブであると見なされる。
【０１８７】
フェーズ（６）：リカバリ／プリチャージ
以前に引き下げられていないビット線における伝導電流の次の検出の前に、プリチャージ回路は、内部検出ノード６３１をＶｄｄにプリチャージするために信号ＦＬＴによって起動される（図１６（Ｃ）及び図１６（Ｉ３）〜１６（Ｉ４））。
【０１８８】
フェーズ（７）：第２の検出
センス増幅器４７０が検出の準備ができると、プリチャージ回路がＨＩＧＨに行くＦＬＴによって機能が停止される（図１６（Ｃ））。第２の検出期間Ｔ２はストローブ信号ＳＴＢのアサートによって設定される。検出期間中、伝導電流（もしあれば）はコンデンサを充電する。ノードＳＥＮでの信号は、コンデンサＣｓａがビット線３６における伝導電流のドレイン動作によって充電するにつれて、Ｖｄｄから減少する。
【０１８９】
既述の例によって、３００ｎＡよりも高い伝導電流を備えるメモリセルは先のフェーズにおいて既に特定されており、遮断されている。図１６（Ｇ）（曲線Ｇ３及びＧ４）は、２２０ｎＡ及び４０ｎＡの伝導電流を備えるメモリセルにそれぞれ接続された２つのビット線の例に対応するＳＥＮ信号をそれぞれ示している。
【０１９０】
一実施形態において、現在読み出されている状態の下の状態に関連付けられた条件電流を備えるメモリセルが遮断される。
【０１９１】
フェーズ（８）：読み出しのための第２のラッチ
第２の所定の検出期間Ｔ２の終わりにまでに、ＳＥＮはビット線における伝導電流に依ってある電圧に減少される（図１６（Ｇ）（曲線Ｇ３及びＧ４））。一例として、この第２フェーズにおける限界電流は１００ｎＡになるように設定される。この場合、伝導電流２２０ｎＡを備えるメモリセルはハイにラッチされたそのＩＮＶ（図１６（Ｈ））と、続いて接地されたそのビット線とを有する（図１６（Ｉ３））。一方伝導電流４０ｎＡを備えるメモリセルは、ＬＡＴがハイにプリセットされたラッチの状態に影響を与えない。
【０１９２】
フェーズ（９）：バスへの読み出し
最後に、読み出しフェーズにおいて、転送ゲート５３０にて制御信号ＮＣＯよってラッチされた信号ＳＥＮ２を読出しバス５３２に読み出すことができる（図１６（Ｊ）及び１６（Ｋ））。
【０１９３】
上記の検出モジュール４８０は検出が３つのパスによって行われ、最初の２つのパスはより高い電流のメモリセルを特定し、遮断するように実行される一実施形態である。これは、検証のための適切なビット線バイアス条件を設定するのを助けるための大まかな読み出しとして機能し得、これは、最終パスの間に起こり得る（例えばＴ７）。
【０１９４】
他の実施形態において、検出動作はＤＣ及びＡＣパスの異なる組み合わせによって実行され、いくつかは二若しくは三以上のＡＣパスのみ又は一のパスのみを使用する。異なるパスについて、使用される限界電流値は毎回同じか、最終パスにおいて使用される限界電流に向かって徐々に近づき得る。更に、上記の検出の実施形態は適切な検出モジュールの単に一例を記載している。他の設計及び技術を本明細書において記載された実施形態を実施するために使用することもできる。本明細書において記載された実施形態のためには特定の検出モジュールは求められず、また提案もされない。
【０１９５】
一実施形態は、複数のビット線が一のワード線と関連付けられている不揮発性記憶システムを動作するための方法を含む。複数の不揮発性記憶素子がこのワード線に関連付けられている。この方法は以下を含み得る。一又は複数のプログラム供給電圧がワード線に印加される。第１バイアス条件が複数のプログラム状態のそれぞれを検証するときに複数のビット線上に設定される。個別の一組の第１バイアス条件が各プログラム状態を検証するときに設定され得る。ビット線にバイアスをかけることは、ビット線上の不揮発性記憶素子がプログラムされる状態に基づき得る。不揮発性記憶素子のビット線の条件が検出され、第１バイアス条件を設定する。第２バイアス条件は読み込み処理中に複数のビット線上で設定される。個別の一組の第２バイアス条件が、読み出される各状態のために設定される。所定の状態のための第２バイアス条件は、この所定の状態のための第１バイアス条件と実質的に一致する。不揮発性記憶素子のビット線は、読み込み処理中に検出される。
【０１９６】
一実施形態において、前段落に記載の方法において、所定の状態にプログラムされるターゲット不揮発性記憶素子に隣接する不揮発性記憶素子は、ターゲット不揮発性記憶素子のチャネル電位に依る所定の状態の検証中にチャネル電位を有する。一実施形態において、前段落に記載の方法において、所定の状態を読み出す際の複数のビット線上に第２バイアス条件を設定することにより、所定の状態にプログラムされた不揮発性記憶素子に隣接する実質的に全ての不揮発性記憶素子が、所定の状態を検証する際に隣接するもののチャネル電位と一致するチャネル電位を有するようになる。
【０１９７】
一実施形態は、ワード線に関連付けられた複数のビット線を含む不揮発性記憶システムを動作するための方法を含む。複数の不揮発性記憶素子がワード線に関連付けられている。この方法は以下のものを含む。第１の電圧レベルは複数のビット線のうちの第１のグループのビット線上に設定される。第１の電圧レベルを設定することは、不揮発性記憶素子の閾値電圧が複数のプログラム状態の第１のプログラム状態に関連付けられたターゲットレベルにあるか否かを検証するためにプログラム検証処理の一部として行われる。第１のグループのビット線は、第１の状態にプログラムされるべき複数の不揮発性記憶素子の不揮発性記憶素子を有する少なくともこれらのビット線を含む。接地電圧がプログラム検証処理の一部として前記複数のビット線のうちの第２のグループ上に設定される。第２のグループのビット線は、第１のグループのビット線の前記複数のビット線のうちの他の全てのビット線を含む。第２のグループのビット線は、第１のプログラム状態の他のプログラム状態にプログラムされるべき不揮発性記憶素子を有する少なくともいくつかのビット線を含む。検証中、どのビット線が第１のグループにあったか、及びどのビット線が第２のグループにあったかを大まかに判定するためにワード線に関連付けられた不揮発性記憶素子の少なくとも一個の読み出しが行われる。接地電圧は、第２のグループであると大まかに判断されたビット線上で設定される。ワード線と関連付けられた複数の不揮発性記憶素子の細かい読み出しは、どの不揮発性記憶素子が少なくともターゲットレベルの閾値電圧を有するかを判定するために行われる。細かい読み出しを行うことは、第２の電圧レベルにて第１のグループであると大まかに判定されたビット線にバイアスをかけ、一方、接地にて第２のグループであると大まかに判定されたビット線を保持することを含む。
【０１９８】
一実施形態は、複数の不揮発性記憶素子と、この複数の不揮発性記憶素子と関連付けられた複数のビット線と、前記複数の不揮発性記憶素子と関連付けられており、第１のワード線を含むワード線と、前記複数の不揮発性記憶素子、前記複数のビット線及び前記複数のワード線と導通する管理回路と、を含むシステムを含む。一又は複数の回路管理回路は一又は複数のプログラム供給電圧をワード線に印加する。一又は複数の管理回路は、複数のプログラム状態のそれぞれを検証する際に前記複数のビット線上で第１バイアス条件を設定する。各プログラム状態を検証する際にそれぞれ個別の一組の第１バイアス条件が設定される。ビット線にバイアスをかけることは、ビット線上の不揮発性記憶素子がプログラムされる状態に基づく。一又は複数の回路管理回路は、第１バイアス条件を設定した後に、不揮発性記憶素子のビット線の条件を検出する。一又は複数の回路管理回路は読み込み処理中に前記複数のビット線上で第２バイアス条件を設定する。個別の一組の第２バイアス条件が、読み出し中の各状態のために設定される。所定の状態のための第２バイアス条件はこの所定の状態のための第１バイアス条件と実質的に一致する。一又は複数の回路管理回路は、読み込み処理中に不揮発性記憶素子のビット線を検出する。
【０１９９】
一実施形態は、複数の不揮発性記憶要と、これら複数の不揮発性記憶素子に関連付けられた複数のビット線と、前記複数の不揮発性記憶素子に関連付けられており、第１のワード線を含むワード線と、複数の不揮発性記憶素子、前記複数のビット線、及び前記複数のワード線と導通する一又は複数の回路管理回路と、を含むシステムを含む。一又は複数の回路管理回路は一又は複数のプログラム供給電圧をワード線に印加する。一又は複数の回路管理回路は、第１グループのビット線上に第１の電圧レベルを設定し、第１の電圧レベルを設定することは、閾値電圧が複数のプログラム状態のうち第１のプログラム状態に関連付けられたターゲットレベルにあるか否かを検証するためのプログラム検証動作の一部として行われる。第１グループのビット線は、前記複数の不揮発性記憶素子のうち第１の状態にプログラムされるべき一の不揮発性記憶素子を有する少なくともこれらのビット線を含む。一又は複数の回路管理回路は、プログラム検証処理の一部として第２グループの前記複数のビット線上に接地電圧を設定する。第２グループのビット線は、第１グループのビット線以外の前記複数のビット線の全てのビット線を含み、第２グループのビット線は、第１のプログラム状態以外のプログラム状態にプログラムされるべき第１のワード線に関連付けられた不揮発性記憶素子を有する少なくともいくつかのビット線を含む。一又は複数の回路管理回路は、検証処理中にどのビット線が第１グループにあったかと、どのビット線が第２グループにあったかを大まかに判定するために第１のワード線に関連付けられた不揮発性記憶素子の少なくとも一の読み出しを行う。一又は複数の回路管理回路は、第２グループにあると大まかに判定されたビット線上の接地電圧を設定する。一又は複数の回路管理回路は、どの不揮発性記憶素子が少なくともターゲットレベルの閾値電圧を有するかを判定するために第１のワード線に関連付けられた複数の不揮発性記憶素子の細かい読み出しを行う。この細かい読み出しを行うことは、第２の電圧レベルにて第１グループにあるかを大まかに判定されたビット線にバイアスをかけ、一方、接地電圧にて第２グループにあるかを大まかに判定されたビット線にバイアスをかける一又は複数の回路管理回路を含む。
【０２００】
上記本発明の詳細な説明は、説明のための例示にすぎない。上記本発明の詳細な説明は、詳細に開示した範囲に限定するものではない。本明細書が開示する技術は、様々に変形、変更し得る。上記説明した実施形態は、本発明の原理とその具体的な適用例をよく説明するために選ばれたものであり、当業者は、具体的な事例に則して本発明を様々に変更し得る。本発明の技術的範囲は、添付された特許請求の範囲によって定まるものである。
【図１】
2013525938.tif 000003
【図２】
2013525938.tif 000004
【図３】
2013525938.tif 000005
【図４】
2013525938.tif 000006
【図５】
2013525938.tif 000007
【図６Ａ】
2013525938.tif 000008
【図６Ｂ】
2013525938.tif 000009
【図６Ｃ】
2013525938.tif 000010
【図６Ｄ】
2013525938.tif 000011
【図７Ａ】
2013525938.tif 000012
【図７Ｂ】
2013525938.tif 000013
【図７Ｃ】
2013525938.tif 000014
【図７Ｄ】
2013525938.tif 000015
【図８Ａ】
2013525938.tif 000016
【図８Ｂ】
2013525938.tif 000017
【図９Ａ】
2013525938.tif 000018
【図９Ｂ】
2013525938.tif 000019
【図１０Ａ】
2013525938.tif 000020
【図１０Ｂ】
2013525938.tif 000021
【図１０Ｃ】
2013525938.tif 000022
【図１１Ａ】
2013525938.tif 000023
【図１１Ｂ】
2013525938.tif 000024
【図１２Ａ】
2013525938.tif 000025
【図１２Ｂ】
2013525938.tif 000026
【図１３】
2013525938.tif 000027
【図１４Ａ】
2013525938.tif 000028
【図１４Ｂ】
2013525938.tif 000029
【図１４Ｃ】
2013525938.tif 000030
【図１５】
2013525938.tif 000031
【図１６】
2013525938.tif 000032
【国際調査報告】
2013525938.tif 000033
2013525938.tif 000034