(57)【特許請求の範囲】
【請求項１】
不揮発性記憶システムを動作させるための方法であって、
一組の不揮発性記憶素子（１００、１０２、１０４、１０６）のための複数反復型のプログラム動作の一の反復処理の実行を備え、前記一組の不揮発性記憶素子は少なくとも第１、第２及び第３の不揮発性記憶素子のストリング（４５０）を含み、前記第１、第２及び第３の不揮発性記憶素子は、それぞれ第１、第２及び第３のビットライン（ＢＬｉｎｈｉｂｉｔ、ＢＬｐｒｏｇｒａｍ−中速、ＢＬｐｒｏｇｒａｍ−全速）に接続されており、
一の反復処理の実行は、
（ａ）第１の期間（ｔ１からｔ３）に、前記第２及び第３のビットライン（Ｖｓｓ）の電位を固定しながら、前記第１のビットラインの電位を第１のレベル（Ｖｄｄｓａ−ΔＶ）へプレチャージすること、
（ｂ）前記第１の期間後の第２の期間（ｔ３からｔ５）の少なくとも一部（ｔ４からｔ５）に、前記第２のビットラインを第２のレベル（Ｖｂｌ＿ｑｐｗ）にプレチャージするとともに、前記第３のビットライン（Ｖｓｓ）の前記電位を固定すること、及び
（ｃ）前記第２の期間後の第３の期間（ｔ５からｔ８）に、前記第２及び第３のビットラインをフロートさせつつ、前記第１のストリングの不揮発性記憶素子、前記第２のストリングの不揮発性記憶素子及び前記第３のストリングの不揮発性記憶素子にプログラム電圧（Ｖｐｇｍ）を印加しながら、前記第１のビットラインの前記電位を前記第１のレベル（Ｖｄｄｓａ−ΔＶ）よりも高い第３のレベル（Ｖｄｄｓａ）に駆動すること、
を含み、
前記第２の期間に、前記第１のビットラインの前記電位がフロートして高くなり、前記方法は、その電位が前記第２の期間内で前記第１のレベルに減衰して戻るように、前記第１のビットラインを放電することをさらに含む方法。
【請求項２】
前記第１のビットラインは、前記第２のビットラインに隣接しており、
前記第３の期間に、前記第２のビットラインの前記電位が、前記第１のビットラインを前記第３のレベルに駆動することからの容量結合（９０７）によって、結合されて高くなる、請求項１に記載の方法。
【請求項３】
前記第１のビットラインは、前記第３のビットラインに隣接しており、
前記第３の期間に、前記第３のビットラインの前記電位が、前記第１のビットラインを前記第３のレベルに駆動することからの容量結合（９０５）によって、結合されて高くなる、請求項１又は２に記載の方法。
【請求項４】
前記第３の期間に、前記第２のビットラインの前記電位（Ｖｂｌ＿ｑｐｗ＋ΔＶｘＣＲ２）が前記第３のレベル（Ｖｄｄｓａ）よりも低く、前記第３のビットラインの前記電位（ΔＶｘＣＲ１）が前記第２のビットラインの前記電位よりも低い、請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記第１及び前記第２の期間に、前記第３のビットラインの前記電位が０Ｖに固定される、請求項１に記載の方法。
【請求項６】
前記第１の及び前記第２の期間に前記第３のビットラインの前記電位が０Ｖに固定され、前記第１の期間に、前記第２のビットラインの前記電位が０Ｖに固定される、請求項１に記載の方法。
【請求項７】
前記第２の期間の最後（ｔ４−ｔ５）に、前記第１のビットラインが前記第１のプレチャージレベル（Ｖｄｄｓａ−ΔＶ）で駆動される、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記第３の期間に、前記第１のビットラインの前記電位が、前記第１のストリングの前記不揮発性記憶素子のプログラミングを禁止し、前記第２のビットラインの前記電位が、前記第２のストリングの前記不揮発性記憶素子の減速された速度でのプログラミングを可能にし、前記第３のビットラインの前記電位が、前記第３のストリングの前記不揮発性記憶素子の全速でのプログラミングを生じさせる、請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記一の反復処理の実行は、前記第３の期間後の第４の期間に、前記第２のストリングの前記不揮発性記憶素子を、データ状態の上位検証レベル（ＶｖａＨ、ＶｖｂＨ、ＶｖｃＨ）との対照によって検証するとともに、前記第３のストリングの前記不揮発性記憶素子を、前記データ状態の下位検証レベル（ＶｖａＬ、ＶｖｂＬ、ＶｖｃＬ）との対照によって検証する、検証動作を実行することを含む、
請求項８に記載の方法。
【請求項１０】
基板（１４４）上の一組の不揮発性記憶素子であって、少なくとも第１、第２及び第３の不揮発性記憶素子（１００、１０２、１０４、１０６）のストリング（４５０）を含む一組の不揮発性記憶素子と、
それぞれ前記第１、第２及び第３のストリングに接続された第１、第２及び第３のビットライン（ＢＬｉｎｈｉｂｉｔ、ＢＬｐｒｏｇｒａｍ−中速、ＢＬｐｒｏｇｒａｍ−全速）と、
前記一組の不揮発性記憶素子並びに前記第１、第２及び前記第３のビットラインに接続された少なくとも一つの回路（５１０、５４０、５２２）であって、前記一組の不揮発性記憶素子のための複数反復型のプログラム動作の一の反復処理を実行するために、（ａ）第１の期間（ｔ１からｔ３）に、前記第２及び第３のビットライン（Ｖｓｓ）の電位を固定しながら、前記第１のビットラインの電位を第１のレベル（Ｖｄｄｓａ−ΔＶ）へプレチャージし、（ｂ）前記第１の期間後の第２の期間（ｔ３からｔ５）の少なくとも一部（ｔ４からｔ５）に、前記第２のビットラインを第２のレベル（Ｖｂｌ＿ｑｐｗ）にプレチャージしつつ、前記第３のビットライン（Ｖｓｓ）の前記電位を固定し、（ｃ）前記第２の期間後の第３の期間（ｔ５からｔ８）に、前記第１のビットラインの前記電位を前記第１のレベル（Ｖｄｄｓａ−ΔＶ）よりも高い第３のレベル（Ｖｄｄｓａ）に駆動しつつ前記第２及び第３のビットラインをフロートさせるとともに、前記第１のストリングの不揮発性記憶素子、前記第２のストリングの不揮発性記憶素子及び前記第３のストリングの不揮発性記憶素子にプログラム電圧（Ｖｐｇｍ）を印加する、少なくとも一つの回路と、
を備え、
前記第２の期間に、前記第１のビットラインの前記電位がフロートして高くなり、前記少なくとも一つの回路は、その電位が前記第２の期間内で前記第１のレベルに減衰して戻るように、前記第１のビットラインを放電する不揮発性記憶システム。
【請求項１１】
前記第３の期間に、前記第１のビットラインの前記電位が、前記第１のストリングの前記不揮発性記憶素子のプログラミングを禁止し、前記第２のビットラインの前記電位が、前記第２のストリングの前記不揮発性記憶素子の減速された速度でのプログラミングを可能にし、前記第３のビットラインの前記電位が、前記第３のストリングの前記不揮発性記憶素子の全速でのプログラミングを生じさせる、請求項１０に記載の不揮発性記憶システム。
【請求項１２】
前記第１のビットラインは、前記第２のビットラインに隣接しており、
前記第３の期間に、前記第２のビットラインの前記電位が、前記第１のビットラインを前記第３のレベルに駆動することからの容量結合（９０７）によって、結合されて高くなる、請求項１０又は１１に記載の不揮発性記憶システム。
【請求項１３】
前記第１のビットラインは、前記第３のビットラインに隣接しており、
前記第３の期間に、前記第３のビットラインの前記電位が、前記第１のビットラインを前記第３のレベルに駆動することからの容量結合（９０５）によって、結合されて高くなる、請求項１０から１２のいずれか一項に記載の不揮発性記憶システム。
【請求項１４】
前記第１、第２及び第３の不揮発性記憶素子のストリングは、それぞれのＮＡＮＤストリングを備え、前記少なくとも１つの回路は、前記第１のストリングの前記不揮発性記憶素子、前記第２のストリングの前記不揮発性記憶素子及び前記第３のストリングの前記不揮発性記憶素子に、共通ワードライン（ＷＬ）を介して前記プログラム電圧を印加する、請求項１０から１３のいずれか一項に記載の不揮発性記憶システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、不揮発性メモリに関する。
【背景技術】
【０００２】
半導体メモリは、様々な電子装置に使用されることが一般的になってきている。例えば、不揮発性半導体メモリは、携帯電話、デジタルカメラ、パーソナルデジタルアシスタント、モバイルコンピュータ、非モバイルコンピュータ及び他の装置の中に使用されている。電気的消去・プログラム可能型読取専用メモリ（ＥＥＰＲＯＭ）と、フラッシュメモリは、最も普及している不揮発性半導体メモリの一つである。ＥＥＰＲＯＭの一種であるフラッシュメモリを用いると、従来のフル機能を備えたＥＥＰＲＯＭとは対照的に、メモリアレイ全体のコンテンツ、又はメモリの一部のコンテンツを一つのステップで消去できる。
【０００３】
従来のＥＥＰＲＯＭとフラッシュメモリの何れもが、半導体基板内のチャネル領域上に配置され、そのチャネル領域から絶縁されたフローティングゲートを利用している。フローティングゲートは、ソース領域とドレイン領域の間に配置されている。制御ゲートは、フローティングゲート上に配置されており、そのフローティングゲートから絶縁されている。このように形成されたトランジスタの閾値電圧（Ｖｔｈ）は、フローティングゲート上に保持される電荷量によって制御される。つまり、そのソースとドレインの間の導通を可能にするためにトランジスタをオンにする前に制御ゲートに印加しなければならない電圧の最小量は、そのフローティングゲート上の電荷レベルにより制御される。
【０００４】
いくつかのＥＥＰＲＯＭ及びフラッシュメモリ素子は２つの範囲の電荷を記憶するために使用される記憶素子その他のフローティングゲートを含むセルを有するため、記憶素子は２つの状態、たとえば消去状態とプログラム状態の間でプログラム／消去できる。各記憶素子は１ビットのデータを記憶できるため、このようなフラッシュメモリ素子はバイナリフラッシュメモリ素子と呼ばれることもある。
【０００５】
マルチ状態（マルチレベルとも呼ばれる）フラッシュメモリ素子が、複数の別個の許可／有効プログラム閾値電圧範囲を識別することによって実現される。各閾値電圧範囲は、記憶素子内で符号化される一組のデータビットの所定値に相当する。例えば、各メモリエレメントは、そのエレメントを４つの別々の閾値電圧範囲に相当する４つの別々の電荷バンドの内の一つに置くことができ、２ビットのデータを記憶できる。
【０００６】
通常、プログラム動作中に制御ゲートに印加されるプログラム電圧Ｖｐｇｍは、経時的に大きさが大きくなる一連のパルスとして印加される。プログラム電圧は、選択されたワードラインに印加され得る。一つの考えられる手法では、パルスの大きさは、例えば０．２から０．４Ｖ等の所定のステップサイズでそれぞれの連続パルスで大きくなる。Ｖｐｇｍは、フラッシュメモリエレメントの制御ゲートに印加され得る。プログラムパルス間の期間では、検証動作が実施される。すなわち、並行してプログラムされているエレメントのグループの内の各エレメントのプログラムレベルは、エレメントがプログラムされている検証レベル以上であるか否かを判断するために、連続プログラムパルスの間に読み出される。マルチ状態フラッシュメモリエレメントのアレイの場合、検証ステップは、エレメントがそのデータ関連検証レベルに達したのかどうかを判断するために、エレメントの状態ごとに実行され得る。例えば、４つの状態にデータを記憶できるマルチ状態メモリエレメントは、３つの比較点について検証動作を実行する必要がある場合がある。
【０００７】
さらに、ＥＥＰＲＯＭ又はＮＡＮＤストリング内のＮＡＮＤフラッシュメモリ素子等のフラッシュメモリ素子をプログラムするときには、通常、Ｖｐｇｍが制御ゲートに印加され、ビットラインが接地され、記憶素子のチャネルからフローティングゲートの中に電子が注入される。電子がフローティングゲート内に蓄積すると、フローティングゲートは負に帯電され、メモリエレメントの閾値電圧は上昇し、プログラムされた状態にあると見なされる。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、記憶素子が小型化されるにつれて、プログラム中の容量結合による影響が、より問題となっている。
【課題を解決するための手段】
【０００９】
中速プログラムにおいてチャネルとフローティングゲートの容量結合を低減する方法及び不揮発性記憶装置を提供する。
【００１０】
記憶素子が小型化されるにつれて、プログラム中の容量結合による影響が、より問題となっている。特に、プログラム中では、プログラムの完了した記憶素子は、昇圧されたビットライン電圧を通じてチャネル電位を上昇させることにより禁止される。しかしながら、上昇したチャネル電位は、プログラム中にある近傍の記憶素子のフローティングゲートと容量結合し、フローティングゲートの不都合な電圧上昇を招く。通常、プログラム中にある近傍の記憶素子のフローティングゲートの電位はゼロボルトに維持される。このような結合を避ける一つの方法は、プログラム中の記憶素子においてチャネルをフロートさせることである。しかしながら、この方法では、プログラム中の記憶素子のチャネル電位をゼロボルトよりも高くして、完全に禁止するまでには至らないが、プログラムを減速させるという、中速プログラムが不可能となる。この一つの解決手段は、プログラム中にある記憶素子のチャネル電位を、完全に禁止するまでには至らないが、プログラムを減速させる電位において、フロートさせることである。
【図面の簡単な説明】
【００１１】
【図１ａ】ＮＡＮＤストリングの平面図。
【００１２】
【図１ｂ】ＮＡＮＤストリングの等価回路図。
【００１３】
【図２】ＮＡＮＤストリングの断面図。
【００１４】
【図３】ＮＡＮＤフラッシュメモリセルのブロックを示す。
【００１５】
【図４】ＮＡＮＤフラッシュメモリセルのアレイのブロック図。
【００１６】
【図５】不揮発性メモリシステムのブロック図。
【００１７】
【図６】閾値電圧分布の例とワンパスプログラムを示す図。
【００１８】
【図７】プログラム動作中に記憶素子の制御ゲートに印加される電圧波形を示す。
【００１９】
【図８】ＮＡＮＤストリングの断面図とチャネルブーストを示す。
【００２０】
【図９】図１０ａの回路で使用するプログラム動作のタイムチャート。
【００２１】
【図１０ａ】プログラム動作で使用する回路の一実施例を示す。
【００２２】
【図１０ｂ】禁止されたビットラインで使用するように構成された図１０ａの回路。
【００２３】
【図１０ｃ】全速プログラムされるビットラインで使用するように構成された図１０ａの回路。
【００２４】
【図１０ｄ】中速プログラムされるビットラインで使用するように構成された図１０ａの回路。
【００２５】
【図１１】図１２ａの回路で使用するプログラム動作のタイムチャート。
【００２６】
【図１２ａ】プログラム動作で使用する回路の他の一実施例を示す。
【００２７】
【図１２ｂ】図１１のｔ１０−ｔ１４の期間に、禁止されたビットラインと部分的に禁止されたビットライン、即ち中速プログラムされるビットラインで使用するように構成された図１２ａの回路。
【００２８】
【図１２ｃ】図１１のｔ１０−ｔ１４以外の期間に、禁止されずに全速プログラムされるビットラインと部分的に禁止されたビットライン、即ち中速プログラムされるビットラインで使用するように構成された図１２ａの回路。
【００２９】
【図１３】プログラム動作を示す。
【発明を実施するための形態】
【００３０】
本発明の実施に適したメモリシステムの一例は、ＮＡＮＤフラッシュメモリ構造を用いる。そのＮＡＮＤフラッシュメモリ構造は２つの選択ゲートの間に直列に接続された複数のトランジスタを有している。直列に配置されたトランジスタと選択ゲートは、ＮＡＮＤストリングと呼ばれる。図１ａは、一つのＮＡＮＤストリングを示す平面図である。図１ｂはその等価回路である。図示されたＮＡＮＤストリングは、直列に接続されており、第１の選択ゲート１２０と第２の選択ゲート１２２の間に挟まれている４つのトランジスタ１００、１０２、１０４及び１０６を有する。選択ゲート１２０は、ＮＡＮＤストリングをビットライン１２６に接続する。選択ゲート１２２は、ＮＡＮＤストリングをソースライン１２８に接続する。選択ゲート１２０は、制御ゲート１２０ＣＧに適切な電圧が印加されることによって制御される。選択ゲート１２２は、制御ゲート１２２ＣＧに適切な電圧が印加されることによって制御される。トランジスタ１００、１０２、１０４及び１０６のそれぞれは制御ゲート及びフローティングゲートを有する。トランジスタ１００は、制御ゲート１００ＣＧ及びフローティングゲート１００ＦＧを有する。トランジスタ１０２は制御ゲート１０２ＣＧ及びフローティングゲート１０２ＦＧを有する。トランジスタ１０４は、制御ゲート１０４ＣＧ及びフローティングゲート１０４ＦＧを有する。トランジスタ１０６は、制御ゲート１０６ＣＧおよびフローティングゲート１０６ＦＧを有する。制御ゲート１００ＣＧは、ワードラインＷＬ３に接続されており、制御ゲート１０２ＣＧはワードラインＷＬ２に接続されており、制御ゲート１０４ＣＧはワードラインＷＬ１に接続されており、制御ゲート１０６ＣＧはワードラインＷＬ０に接続されている。一実施形態では、トランジスタ１００、１０２、１０４及び１０６は、それぞれ、メモリセルである。他の実施形態では、メモリセルは、複数のトランジスタを有していることもある。あるいは、図示されているのとは異なることもある。選択ゲート１２０は、選択ラインＳＧＤに接続されている。選択ゲート１２２は、選択ラインＳＧＳに接続されている。
【００３１】
図２は、前述されたＮＡＮＤストリングの断面図を示す。ＮＡＮＤストリングのトランジスタはｐ−ウェル領域１４０に形成されている。ｐ−ウェル領域は、代わりにｐ−タイプ基板１４４のｎ−ウェル領域１４２内にあってよい。各トランジスタは、制御ゲート（１００ＣＧ、１０２ＣＧ、１０４ＣＧ及び１０６ＣＧ）とフローティングゲート（１００ＦＧ、１０２ＦＧ、１０４ＦＧ及び１０６ＦＧ）から構成される積層ゲート構造を有している。フローティングゲートは、ｐ−ウェルの表面に、酸化膜又は他の誘電体膜の上に形成される。制御ゲートはフローティングゲートの上にあり、ポリシリコン間の誘電体層が制御ゲート及びフローティングゲートを分離している。メモリセル（１００、１０２、１０４及び１０６）の制御ゲートは、ワードラインを構成している。Ｎ＋ドープ層１３０、１３２、１３４、１３６及び１３８が、隣接するセルの間で共有され、これによってセルが互いに直列に接続されており、ＮＡＮＤストリングを形成している。これらのＮ＋ドープ層は、各セルのソース及びドレインを構成している。例えば、Ｎ＋ドープ層１３０はトランジスタ１２２のドレイン及びトランジスタ１０６のソースとしての機能を果たし、Ｎ＋ドープ層１３２はトランジスタ１０６のドレイン及びトランジスタ１０４のソースとしての機能を果たし、Ｎ＋ドープ層１３４はトランジスタ１０４のドレイン及びトランジスタ１０２のソースとしての機能を果たし、Ｎ＋ドープ層１３６はトランジスタ１０２のドレイン及びトランジスタ１００のソースとしての機能を果たし、Ｎ＋ドープ層１３８はトランジスタ１００のドレイン及びトランジスタ１２０のソースとしての機能を果たす。Ｎ＋ドープ層１２６は、ＮＡＮＤストリングのためのビットラインに接続する。一方、Ｎ＋ドープ層１２８は複数のＮＡＮＤストリングのための一つの共通ソースラインに接続する。
【００３２】
各メモリセルは、アナログ形式又はデジタル形式で表されるデータを記憶できる。１ビットのデジタルデータを記憶するとき、メモリセルの閾値電圧の範囲は、論理データ「１」及び「０」が割り当てられる２つの範囲に分割される。ＮＡＮＤタイプのフラッシュメモリの一例では、電圧閾値は、メモリセルが消去された後に負となり、論理「１」として定義される。プログラム動作後に閾値電圧は正となり、論理「０」として定義される。閾値電圧が負であり、制御ゲートに０ボルトを印加することにより読み出しが試行されると、メモリセルがオンして論理１が記憶されていることが示される。閾値電圧が正であり、制御ゲートに０ボルトを印加することにより読み出し動作が試行されると、メモリセルはオンせず、論理ゼロが記憶されることが示される。
【００３３】
メモリセルは、複数の状態を記憶し、それによって複数ビットのデジタルデータを記憶することもできる。データの複数の状態を記憶するケースでは、閾値電圧の範囲は状態の数に分割される。例えば、４つの状態が使用される場合、データ値「１１」、「１０」、「０１」及び「００」に割り当てられる４つの閾値範囲がある。ＮＡＮＤタイプメモリの一例では、消去動作後の閾値電圧は負であり、「１１」として定義される。正の閾値電圧は「１０」、「０１」及び「００」の状態のために使用される。いくつかの実施形態では、フローティングゲートの閾値電圧が誤って隣の物理状態にシフトしても、１ビットだけが影響を受けるように、データ値（例えば、論理状態）は、グレーコード割り当てを使用して閾値範囲に割り当てられる。メモリセルにプログラムされたデータと、セルの閾値電圧範囲の間の特殊な関係は、メモリセルのために採用されるデータ符号化方式に依存する。
【００３４】
ＮＡＮＤフラッシュメモリに加えて、他のタイプの不揮発性メモリも使用できる。
【００３５】
フラッシュＥＥＰＲＯＭシステムで有用な別のタイプのメモリセルは、不揮発的に電荷を蓄えるために、導電性のフローティングゲートの代わりに非導電性の誘電材料を用いる。酸化ケイ素、窒化ケイ素及び酸化ケイ素（「ＯＮＯ」）から形成される三層誘電体が、導電性の制御ゲートと、メモリセルチャネル上の半導体基板の表面の間に挟まれる。セルは、セルチャネルから窒化物に電子を注入することによってプログラムされ、電子は限られた領域内に閉じ込められ、蓄えられる。次に、この蓄えられた電荷が、検出可能な態様で、セルのチャネルの一部の閾値電圧を変化させる。セルは、窒化物の中にホットホールを注入することによって消去される。ドープされたポリシリコンゲートがメモリセルチャネルの一部の上に延在していることで別個の選択トランジスタが形成されている分割ゲート構造の類似するセルが提供される。
【００３６】
別の手法では、ＯＮＯ誘電体層がソース拡散とドレイン拡散の間のチャネルを横切って延在する各ＮＲＯＭセルに２ビットが記憶される。１データビットの電荷は、ドレインに隣接する誘電体層に局所化され、他のデータビットの電荷はソースに隣接する誘電体層に局所化される。マルチ状態データ記憶は、誘電体内の空間的に分離された電荷蓄積領域のバイナリ状態を別々に読み出すことによって実現される。
【００３７】
図３は、ＮＡＮＤフラッシュメモリセルのブロックを示す。ブロックは、複数のＮＡＮＤストリングと、それぞれのビットライン、例えばＢＬ０、ＢＬ１、・・・を備えている。それぞれのＮＡＮＤストリングは、その一端においてドレイン選択ゲート（ＳＧＤ）に接続され、ドレイン選択ゲートの制御ゲートは、共通のＳＧＤラインを介して接続されている。それぞれのＮＡＮＤストリングは、その他端においてソース選択ゲートに接続されており、ソース選択ゲートについては共通のソースラインに接続されている。６４本のワードライン、例えばＷＬ０−ＷＬ６３がソース選択ゲートとドレイン選択ゲートの間に延在する。
【００３８】
図４は、図１ａから２に示すようなＮＡＮＤセルのアレイ４００の例を示す。各列に沿って、ビットライン４０６が、ＮＡＮＤストリング４５０のドレイン選択ゲートのドレイン端子４２６に接続されている。ＮＡＮＤストリングの各行に沿って、ソースライン４０４が、ＮＡＮＤストリングのソース選択ゲートの全てのソース端子４２８に接続されている。
【００３９】
記憶素子のアレイは、記憶素子の多数のブロックに分割される。フラッシュＥＥＰＲＯＭシステムでは一般的なように、ブロックは消去の単位である。つまり、各ブロックは、共に消去される最小数の記憶素子を有する。各ブロックは、一般に複数のページに分割される。ページは、プログラムの最小単位である。１ページ又は複数ページのデータは、通常、記憶素子の１行に記憶される。例えば、１行は、通常、いくつかのインタリーブされたページを含む、あるいは、１行は１ページを構成してよい。ページの全ての記憶素子は、一度に読み出され、又は、プログラムされる。さらに、ページは、一つ又は複数のセクタからユーザデータを記憶できる。セクタは、ユーザデータの便利な単位としてホストによって使用される論理概念である。つまり、セクタは、通常、コントローラに限定されるオーバヘッドデータは含まない。オーバヘッドデータは、セクタのユーザデータから計算されたエラー訂正コード（ＥＣＣ）を含むことができる。（後述される）コントローラの一部は、データがアレイにプログラムされるときにＥＣＣを計算し、データがアレイから読み出されるときにそれをチェックする。また、ＥＣＣ及び／又は他のオーバヘッドデータは、それらが関連するユーザデータ以外の異なるページに記憶されてもよいし、もしくは、異なるブロックに記憶されてもよい。
【００４０】
ユーザデータのセクタは一般に５１２バイトであり、磁気ディスクドライブ内のセクタのサイズに対応する。オーバヘッドデータは一般に、追加の１６〜２０バイトである。多数のページがブロックを構成し、それは８ページから、例えば最大３２、６４又はそれ以上のページのいずれであってもよい。いくつかの実施形態では、ＮＡＮＤストリングの列はブロックを含む。
【００４１】
図５は、一実施形態に従って、メモリセルのページを同時に読み出し、プログラムするための読出／書込回路を有するメモリ装置５００を示す。メモリ装置５００は、一つ以上のメモリダイ５０２を有する。メモリダイ５０２は、メモリセルの２次元のアレイ４００、制御回路５１０及び読出／書込回路５２２を有する。メモリアレイ４００は行デコーダ５３０を介してワードラインにより及び列デコーダ５２０を介してビットラインにより、アドレスできる。読出／書込回路５２２は複数の検出ブロック５２４を有しており、１ページのメモリセルを並列に読み出し又はプログラムすることができる。一般に、制御部５４０は、一つ以上のメモリダイ５０２のように、同じメモリ装置５００（例えば、取り外し可能なストレージカード）内に含まれる。コマンド及びデータは、ライン５４４を介してホストと制御部５４０の間及びライン５４２を介して制御部と一つ以上のメモリダイ５０２の間で送られる。
【００４２】
制御回路５１０は、読出／書込回路５２２と協調して、メモリアレイ４００上でメモリ動作を実行する。制御回路５１０は、状態マシン５１２、オンチップアドレスデコーダ５１４及び電力制御モジュール５１６を含む。状態マシン５１２は、メモリ動作のチップレベル制御を提供する。オンチップアドレスデコーダ５１４は、ホスト又はメモリコントローラによって使用されるとともに、デコーダ５３０と５２０によって使用されるハードウェアアドレスの間にアドレスインタフェースを提供する。電力制御モジュール５１６は、メモリ動作中、ワードライン及びビットラインに供給される電力及び電圧を制御する。
【００４３】
別の手法では、二重の行／列デコーダ及び読出／書込回路を使用し得る。メモリアレイ４００に対する種々の周辺回路によるアクセスは、アレイの対向する側で対称的に実施され、これによって各側のアクセスライン及び回路の密度が半減される。したがって、行デコーダは２つの行デコーダに分割されており、列デコーダは２つの列デコーダに分割されている。同様に、読出／書込回路は底部からビットラインに接続する読出／書込回路と、アレイ４００の上部からビットラインに接続する読出／書込回路に分割される。このようにして、読出／書込モジュールの密度は、基本的に２分の１、削減される。
【００４４】
図６は、一組の閾値電圧分布及びワンパスプログラムの例を示す。記憶素子アレイのための例示の閾値電圧分布は、各記憶素子が２ビットのデータを記憶する場合に提供される。第１の閾値電圧分布６００は、消去された（状態Ｅ）記憶素子を表す。３つの閾値電圧分布６０２、６０４及び６０６は、それぞれプログラムされた状態Ａ、Ｂ及びＣを表す。一実施形態では、Ｅ分布内の閾値電圧は負であり、Ａ、Ｂ及びＣ分布内の閾値電圧は正である。
【００４５】
それぞれの独立した閾値電圧範囲は、一組のデータビットの所定値に対応する。記憶素子にプログラムされたデータと記憶素子の閾値電圧レベルの特定の関係は、記憶素子のために採用されるデータ符号化方式に依存する。４つの状態が図示されているが、本技術は、４つの状態より多い又は少ない状態を含む他のマルチ状態構造に使用することもできる。
【００４６】
記憶素子からデータを読み出すための３つの読み出し基準電圧、Ｖｒａ、Ｖｒｂ及びＶｒｃが提供される。所与の記憶素子の閾値電圧がＶｒａ、Ｖｒｂ及びＶｒｃを超えているのか、それとも下回っているのかをテストすることによって、システムは、例えば、プログラム状態等の、記憶素子の状態を特定することができる。
【００４７】
さらに、３つの検証基準電圧Ｖｖａ、Ｖｖｂ及びＶｖｃが、記憶素子からデータを読み出すために提供される。記憶素子を状態Ａにプログラムするとき、システムは、それらの記憶素子がＶｖａ以上の閾値電圧を有するかどうかをテストする。記憶素子を状態Ｂにプログラムするとき、システムは、記憶素子がＶｖｂ以上の閾値電圧を有するかどうかをテストする。記憶素子を状態Ｃにプログラムするとき、システムは、記憶素子がＶｖｃ以上の閾値電圧を有するかどうかをテストする。
【００４８】
一実施形態では、フルシーケンスプログラムとして知られるが、記憶素子は、消去状態Ｅからプログラム状態Ａ、Ｂ又はＣの何れかに直接的にプログラムされる。例えば、まず、プログラムされる記憶素子の集合中の全ての記憶素子が消去状態Ｅとなるように、当該集合が消去される場合がある。図７に示される一連のプログラムパルスは、記憶素子を直接的に状態Ａ、Ｂ、又はＣにプログラムするために使用される。いくつかの記憶素子は状態Ｅから状態Ａにプログラムされ、他の記憶素子は状態Ｅから状態Ｂに及び／又は、状態Ｅから状態Ｃにプログラムされる。ＷＬｎ上で状態Ｅから状態Ｃにプログラムするときには、ＷＬｎ下のフローティングゲート上の電荷の量の変化が、状態Ｅから状態Ａに、又は、状態Ｅから状態Ｂにプログラムするときの電荷の変化と比較して最大となるので、ＷＬｎ―１下の隣接フローティングゲートに対する寄生結合の量は最大値に達する。状態Ｅから状態Ｂにプログラムするときは、隣接フローティングゲートへの結合の量はより少ない。状態Ｅから状態Ａにプログラムするときは、結合の量はさらに削減される。
【００４９】
他の選択肢として、一又は複数のデータ状態のために、低検証レベルと高検証レベルを使用することが挙げられる。例えば、ＶｖａＬとＶｖａＨをそれぞれ状態Ａのための低検証レベルと高検証レベルとし、ＶｖｂＬとＶｖｂＨをそれぞれ状態Ｂのための低検証レベルと高検証レベルとすることができる。プログラムの間、目標状態として状態Ａにプログラムされている記憶素子の閾値電圧がＶｖａＬを超えた時に、それに接続されたビットライン電圧を、プログラム、即ち、非禁止レベルと完全禁止レベルとの間のあるレベルまで上げることによって、記憶素子のプログラム速度を全速から中速へ減速させる。ビットライン電圧を上昇させると、接続されたＮＡＮＤストリングのチャネル電圧も上昇する。これにより、閾値電圧の大きな増大が避けられ、正確性が上がる。ビットライン電圧を上昇させることは、プログラムパルスのステップ幅を縮小するのと同じ効果をもたらす。同時に、他のＮＡＮＤストリングの記憶素子は、最大のステップ幅の効果を受けて、全速でプログラムすることができる。閾値電圧がＶｖａＨに達した時、記憶素子はさらなるプログラムからロックアウトされる。同様に、目標状態として状態Ｂにプログラムされている記憶素子の閾値電圧がＶｖｂＬを超えた時に、その記憶素子のプログラム速度を減速し、閾値電圧がＶｖｂＨに達した時に、記憶素子をさらなるプログラムからロックアウトする。このようなプログラム技術は、クイックパス書き込み、あるいは二重検証技術と称される。ここで、一例ではあるが、最高位の状態（例えば状態Ｃ）については、いくらかのオーバーシュートは基本的に許容されるので、二重の検証レベルを使用しなくてもよい。その代わり、一例として、消去状態よりも高く、最高位の状態よりも低いプログラム状態に関しては、二重の検証レベルを使用することができる。
【００５０】
図７は、プログラム動作において記憶素子の制御ゲートに印加される電圧波形を示す。波形又はパルストレインは、ステップサイズ別に振幅が逓増するプログラムパルス７１０、７１４、７１６、７１８及び７２０…と、例えば図６に関連して説明したＶｖａ、Ｖｖｂ及びＶｖｃ、又はＶｖａＬ、ＶｖａＨ、ＶｖｂＬ、ＶｖｂＨ及びＶｖｃで例示される検証パルス７１２を含む、各プログラムパルス間の一組の検証パルスを含む。プログラムパルスは、振幅を固定されたものであってもよいし、あるいは、例えば固定した速度又は変化する速度で逓増するものであってもよい。
【００５１】
一実施形態では、プログラミングパルスは、１２Ｖ等の初期レベルで開始し、例えば２０から２５Ｖの最大値に達するまで、連続するプログラミングパルスごとに、例えば０．５Ｖの増分で増加する電圧を有する。いくつかの実施形態では、例えば状態Ａ、Ｂ及びＣにプログラミングされている各状態のために、一つの検証パルスが存在してもよい。他の実施形態では、より多くの又はより少ない検証パルスが存在してもよい。このような波形は、例えば、偶数番号のビットライン及び奇数番号のビットラインの記憶素子がともにプログラミングされ、ともに検証される、全ビットラインプログラミングで使用することができる。あるいは、検証動作は、例えば最初は偶数番号ビットラインのために、次いで奇数番号ビットラインのために等、別々に実行してもよい。
【００５２】
図８は、ＮＡＮＤストリングの断面図であり、チャネルブーストを示す。この断面図は、制御ゲート（ＣＧ）、あるいはワードライン方向で複数の記憶素子を横切って伸びる、選択されたワードライン８００を示す。各記憶素子は、制御ゲートとフローティングゲート（ＦＧ）を含み、フローティングゲート（ＦＧ）は、基板（通常はｐウェル内）のそれぞれのチャネル領域の上に存在する。例えば、記憶素子８１０は、制御ゲート８１２と、チャネル領域８１６の上にあるフローティングゲート８１４とを含み、記憶素子８２０は、制御ゲート８２２と、チャネル領域８２６の上にあるフローティングゲート８２４とを含み、記憶素子８３０は、制御ゲート８３２と、チャネル領域８３６の上にあるフローティングゲート８３４とを含む。各チャネル領域は、ワードライン方向に対して直角であるビットライン方向で、紙面に対して垂直に延びる領域として、ＮＡＮＤストリングの一部として視覚化できる。
【００５３】
最初に、及び図６に関連して言及されるように、プログラミングを完了した記憶素子のチャネルは、これらの記憶素子のさらなるプログラミングを回避するために、以後のプログラム反復が実行されるときに禁止される。例えば、記憶素子８１０が禁止されていると仮定する。この場合、チャネル領域８１６は、接続されたビットライン電圧を上昇させることによって数ボルトまで昇圧、つまりブーストされる。かかるブーストは、プログラム電圧がワードライン８００に印加されるときに、フローティングゲート８１４を跨ぐ電圧を削減することによって、フローティングゲート８１４のプログラミングを禁止する。また、記憶素子８２０が未だプログラミングされていると仮定する。矢印８１７で示すチャネルとフローティングゲート間の結合は、チャネル８２６が例えば０Ｖといった固定電圧で維持されていると、フローティングゲート８２４の電位を上昇させる傾向がある。プログラム電圧がワードライン８００に印加されると、フローティングゲート８２４の電位はさらに上昇する。ただし、フローティングゲート８２４によって見られる全プログラミング電圧は、結合８１７のために意図されるよりも大きく、それにより、フローティングゲート８２４は意図されるよりも高い閾値電圧にプログラミングされる。例えば、ステップサイズが０．２Ｖのプログラム電圧をワードライン８００に印加しても、チャネル８１６からの結合による影響により、フローティングゲート８２４の電位は、ステップサイズが例えば０．３Ｖのようにもっと高く、かつ、チャネル８１６からの結合がない場合に予想される量だけ、増加し得る。チャネル領域８３６からの結合は、同様にフローティングゲート８２４の電位も意図せず増加させ、それによい、フローティングゲートは予想以上に速くプログラミングされることがある。これによって、一組の記憶素子の閾値電圧分布が広くなってしまう。これは主に、隣接ビットライン／ＮＡＮＤストリングが同時にプログラミングされる全ビットラインプログラミング技法において懸念される事項である。
【００５４】
上述したように、チャネルとフローティングゲートとの結合は、例えば、フローティングゲート８２４に対してチャネル８１６及び／又は８３６というように、フローティングゲートに対して一方又は両方の隣接チャネルから発生することがある。フローティングゲートに隣接していないチャネルからの結合は、隣接チャネルからのものよりはるかに小さく、補償されない二次効果である。
【００５５】
かかるチャネルとフローティングゲートとの結合に対抗するために、未だプログラミングされている記憶素子のチャネル８２６は、隣接する記憶素子８１０が禁止されている間、フロートさせることができる。ただし、これは、図６に関連して説明したような、中速プログラミングの使用を不可にし得る。本明細書に説明される一つのプログラミング技法は、未だプログラミングされている記憶素子のチャネルを、中速プログラミング又は全速プログラミングをなし得る所望のレベルまで上昇させるものである。
【００５６】
図９は、図１０ａの回路において使用されるプログラム動作の時系列を示す。図１０ａの回路は、このプログラム動作が使用される回路の一つの実装例である。図１０ａの回路は、ビットラインごとに個別に図示され、図１０ａの回路は、ビットラインがプログラミングから禁止されるのか（図１０ｂを参照）、現在のプログラム反復において全速プログラミングを受けるのか（図１０ｃを参照）、又は、中速プログラミングを受けるのか（図１０ｄを参照）に応じて、接続されたビットラインごとに異なる構成となり得る。一つ又は複数の制御回路は、各回路に、回路を構成するためのコマンドを通信できる。時系列は、複数の反復処理を含むプログラム動作における一つの反復処理の期間を示す。さらに、時系列が示す期間に続いて、検証動作（不図示）が実行されてもよい。
【００５７】
波形９００は、選択された記憶素子が全度プログラミングされるＮＡＮＤストリング又は記憶素子の他の直列接続ストリングの、ビットライン又はチャネルの電圧を示す。波形９０２は、選択された記憶素子がプログラムを禁止された、例えば完全に禁止された、あるいは停止されたＮＡＮＤストリング又は記憶素子の他の直列接続ストリングの、ビットライン又はチャネルの電圧を示す。波形９０４は、選択された記憶素子が中速プログラミング（部分的に禁止された速度とも言える）されるＮＡＮＤストリング又は記憶素子の他の直列接続ストリングの、ビットライン又はチャネルの電圧を示す。波形９０６は、選択されたワードラインの電圧ＶＷＬを示す。ｔ６からｔ７では、二段のプログラムパルスが供給される。波形９０８は、図１０ａのＵＳＧＤトランジスタ１０９０に印加される電圧を示す。これは、ビットラインが制御回路と通信できるようにするために制御される選択ゲートドレイントランジスタである。波形９１０は、図１０ａの高圧ＢＬＳトランジスタＢＬＳ１０８０に印加される電圧を示す。波形９１２は、図１０ａの低圧ＢＬＣトランジスタ１０７８に印加される電圧を示す。波形９１４は、図１０ａのＢＬＹトランジスタ１０５２に印加される電圧を示す。
【００５８】
波形９１６は、図１０ａのＦＬＡトランジスタ１０２４に印加される電圧を示す。波形９１８は、図１０のＩＣＯトランジスタ１０３２に印加される電圧を示す。波形９２０は、図１０ａのＲＳＢトランジスタ１０１８に印加される電圧を示す。ＲＳＢは、プログラムパルスの最後でリセット信号を提供し、ＦＬＧを高にセットする。波形９２２は、図１０ａのＬＣＯトランジスタ１０４４に印加される電圧を示す。
【００５９】
縦線で示されるｔ０からｔ１０は、プログラムの一反復処理における各時点を表す。
【００６０】
期間ｔ１からｔ３は、ブースト、即ちプレチャージの期間を表す。禁止されたビットラインについては、図１０ｂを参照すること。最初、ｔ１において、ＢＬｉｎｈｉｂｉｔは上昇、即ち０Ｖから特定のレベルＶｄｄｓａ−ΔＶまでプレチャージされる。Ｖｄｄｓａは、ブーストを実行するのに十分に高い供給電力である。言い換えると、ＢＬｉｎｈｉｂｉｔは、プログラムパルスが選択されたワードラインに印加されたときに到達することが所望される最終レベルのＶｄｄｓａよりも、ΔＶだけ低いレベルまで昇圧される。ΔＶは、メモリ装置の形式に応じて適宜設定できる設計パラメータである。ΔＶは、シリコンにおいて最大補償を達成するために最適化できる。
【００６１】
一般に、禁止ビットラインの場合は、ｔ１からｔ３において、ＢＬｉｎｈｉｂｉｔは、点線の経路１０９１によって示すように、トランジスタＦＬＡ１０２４とＢＬＣ１０７８を通る導電経路を有効にすることによって、上昇させる。フラグ回路１００２の出力におけるＦＬＧ経路１０２８は低レベルに設定され、ＬＡＴ経路１０６２は高レベルに設定される。
【００６２】
具体的には、ＶＷＬ（波形９０６）は、プログラムパルスが印加される前のプレチャージの段階であるので、０Ｖに固定される。ＵＳＧＤ（波形９０８）は、ＵＳＧＤトランジスタ１０９０が非導電性となってビットライン１０８６で電荷が蓄積されるように、０Ｖに固定される。ＢＬＳ（波形９１０）は、ＢＬＣからビットライン１０８６に電圧がかかるように、十分なレベルまで上昇される。ＢＬＣ（波形９１２）は、Ｖｄｄｓａ−ΔＶ＋Ｖｔｈまで上昇され、ここでＶｔｈはＢＬＣトランジスタ１０７８の閾値電圧である。その結果、ＢＬＳトランジスタ１０８０を介してビットライン１０８６に通されるＢＬＣトランジスタ１０７８の出力は、Ｖｄｄｓａ−ΔＶとなる。
【００６３】
ＢＬＹ（波形９１４）は、ＢＬＹトランジスタ１０５２の閾値電圧（Ｖｔｈ）にＶｄｄｓａを加えた値まで上昇され、ＶｄｄｓａがＣＯＭ経路１０８２に印加される。ＦＬＡ（波形９１６）は、Ｖｄｄｓａから０Ｖに低下し、ＦＬＡトランジスタ１０２４（ｐＭＯＳ）を導通させる。ＩＣＯ（波形９１８）は、０Ｖから、フラグ回路１００２のＭＵＸ経路１０３６とＩＮＶ経路１０３０とを接続するレベルまで上昇される。これによって、ＢＬｐｒｏｇｒａｍ−全速と、ＢＬｐｒｏｇｒａｍ−中速は０Ｖに設定される。ＲＳＢ（波形９２０）は、ＲＳＢトランジスタ１０１８（ｐＭＯＳ）が非導電となるように、Ｖｄｄｓａで固定される。ＬＣＯ（波形９２２）は、ＬＡＴ経路１０６２がＭＵＸ経路１０３６から切り離されるように、０Ｖで固定される。
【００６４】
禁止ビットラインの場合、ｔ３からｔ４では、ＢＬｉｎｈｉｂｉｔはフロートされる。図９及び図１１における点線はフロート電圧を指す。この期間、ＢＬｉｎｈｉｂｉｔは、隣接ビットラインの電圧の上昇によって、一時的により結合されて高くなり得る。例えば、隣接ビットラインが、ＢＬｐｒｏｇｒａｍ−中速で示されるように、中速プログラミングの対象である場合、そのビットラインは、以下に説明されるように、０ＶからＶｂｌ＿ｑｐｗと呼ばれるレベルへの電圧の上昇を生じる。これは、矢印９０３で表される、ＢＬｉｎｈｉｂｉｔへの結合を引き起こす。禁止ビットラインの電位は、このようにして一瞬の間より高くブロートされ、次いで以前のレベルＶｄｄｓａ−ΔＶへ減衰して戻る。禁止ビットラインをｔ３からｔ４においてフロートさせることにより、ＢＬｉｎｈｉｂｉｔがＢＬｐｒｏｇｒａｍ−中速からの結合によって影響を受けないようにすることができる。また、ｔ３からｔ４において、一つの手法として、ＵＳＧＤをＶｄｄｓａとは異なる供給電圧であるが同じレベルであるＶｄｄに上昇させることができる。これは、ＵＳＧＤを有効にすることによって、ＢＬｉｎｈｉｂｉｔに結合されていた余分な電荷を未選択のブロックチャネルに放電できるようにする。この放電によって、ＢＬｉｎｈｉｂｉｔのＶｄｄｓａ−ΔＶへの減衰が生じる。
【００６５】
ｔ４からｔ５において、ＢＬｉｎｈｉｂｉｔは、再びＶｄｄｓａ−ΔＶで駆動される。ｔ５からｔ８において、ＢＬｉｎｈｉｂｉｔは、より高いレベルのＶｄｄｓａ、即ち、ΔＶだけ高いレベルで駆動される。具体的には、ｔ５で、ＢＬＣ（波形９１２）が、Ｖｄｄｓａ−ΔＶ＋ＶｔｈからＶｄｄｓａ＋ＶｔｈまでΔＶだけ上昇され、それにより、ＢＬｉｎｈｉｂｉｔの上昇ΔＶが生じる。ｔ８からｔ９で、ＢＬｉｎｈｉｂｉｔはフロートされる。ｔ８で、ＢＬｉｎｈｉｂｉｔは０Ｖに放電される。
【００６６】
ＢＬｐｒｏｇｒａｍ−全速（波形９００）は、ＢＬｐｒｏｇｒａｍ−中速（波形９０４）がｔ３からｔ４において上昇される期間を含むｔ１からｔ５において、０Ｖである。ＢＬｐｒｏｇｒａｍ−全速は、ｔ１で一時的で小さな増加、つまりブリップを生じることがある。ＢＬｐｒｏｇｒａｍ−全速はｔ５からｔ９においてフロートされ、それにより、ＢＬｐｒｏｇｒａｍ−全速は、ΔＶと矢印９０５で表される結合率ＣＲ１に基づくレベルまで結合されて高くなる。結合の量は、ＢＬｐｒｏｇｒａｍ−全速のビットラインがＢＬｉｎｈｉｂｉｔのビットラインにどの程度近いのかに依存する。ビットライン又は接続されたチャネルが隣接するとき、結合は最も強くなる。ｔ８で、ＢＬｐｒｏｇｒａｍ−全速は、０Ｖに放電される。
【００６７】
特に、フラグ回路１００２の出力においてＦＬＧ経路１０２８は高レベルに設定され、ＬＡＴ経路１０６２は低レベルに設定される。ＦＬＧを高レベルに設定することによって、トランジスタ１０２２は非導通となる。ＬＡＴを低レベルに設定することによって、トランジスタ１０４４は導通され、したがって点線経路１０９３（図１０ｃ）によって示されるように、接地への導電経路が形成される。
【００６８】
ＢＬｐｒｏｇｒａｍ−中速（波形９０４）は、ｔ１からｔ２で０Ｖであり、ｔ２からｔ３では、ＬＣＯトランジスタ１０４４（波形９２２）を非導通とすることによってフロートされる。ＢＬｐｒｏｇｒａｍ−中速は、ｔ３からｔ５における０Ｖから、接続されたビットラインに中速（迅速パス書き込み、つまりｑｐｗ）プログラミングを提供するために、所望されるレベルのＶｂｌ＿ｑｐｗまで上昇される。これは、ｔ３からｔ５においてＬＣＯトランジスタ１０４４（図１０ｄ）を０ＶからＶｂｌ＿ｑｐｗ＋Ｖｔｈまで上昇させることによって達成される。ＢＬｐｒｏｇｒａｍ−中速は、ｔ１で一時的に小さな増加、つまりブリップを生じることがある。ＢＬｐｒｏｇｒａｍ−中速は、ｔ５からｔ９でフロートされ、それにより、ＢＬｐｒｏｇｒａｍ−中速は、ΔＶ及び矢印９０７で表される結合率ＣＲ２に基づいたレベルまで結合されて高くなる。ＣＲ２はＣＲ１に等しくてもよい。結合の量は、ＢＬｐｒｏｇｒａｍ−中速のビットラインがＢＬｉｎｈｉｂｉｔのビットラインにどの程度近いのかに依存する。ビットライン又は結合されたチャネルが隣接するときに、結合は最も強くなる。ｔ８で、ＢＬｐｒｏｇｒａｍ−中速は、０Ｖに放電される。
【００６９】
特に、フラグ回路１００２の出力においてＦＬＧ経路１０２８は高レベルに設定され、ＬＡＴ経路１０６２は高レベルに設定される。ＦＬＧを高レベルに設定することによって、トランジスタ１０２２は非導通となる。また、ＬＡＴを高レベルに設定することによって、トランジスタ１０４４は非導通となり、それにより、電源ノード１０６８からの導電経路が、点線の経路１０９５（図１０ｄ）で示されるように形成される。ビットライン１０８６に接続されたＬＣＯトランジスタ１０４４の出力は、Ｖｂｌ＿ｑｐｗである。
【００７０】
トランジスタＢＬＸ１０５０、ＸＸ０１０５６、ＨＬＬ１０４０及びＨ００１０４２並びにクロックノードＣＬＫ１０８８は、プログラムの反復処理において０Ｖに固定される。
【００７１】
したがって、プログラミングの一反復処理は、以下のように要約できる。
パターン：    全速プログラム    中速プログラム      禁止
ＢＬ          Ｖｓｓ            Ｖｂｌｃ＿ｑｐｗ    Ｖｄｄｓａ
ＦＬＧ        高                高                  低
ＬＡＴ        低                高                  高
【００７２】
図１０ａは、プログラム動作で使用するための回路の１つの実装例を示す。図示されたトランジスタは、ＭＯＳＦＥＴＳ又はｐＭＯＳＦＥＴであってもよい。ｐＭＯＳは、円の付いたトランジスタ記号で識別される。フラグ回路１００２は、経路１０２８上のフラグＦＬＧを高レベル又は低レベルに設定する。経路１０３０上のＩＮＶはＦＬＧの反対である。ノード１００４及び１００６は、ローカル電源Ｖｄｄｓａ、つまり検出増幅器のためのＶｄｄを受信する。ＳＴＦトランジスタ１００８及びＦＲＢトランジスタ１０１０は、所望されるＦＬＧレベルを提供するために適切な制御信号を受信する。トランジスタ１００５のゲートは、接地経路のトランジスタ１０１２に接続される。同様に、トランジスタ１００７のゲートは、接地経路のトランジスタ１０１４に接続される。
【００７３】
ＦＬＧが高レベルであると、トランジスタ１０２２は非導通となる。トランジスタ１０２２は、導通であるとき、電源端子１０２０をＦＬＡトランジスタ１０２４に接続する。
【００７４】
ＮＣＯトランジスタ１０３４は、ＭＵＸ経路１０３６を、データの入力及び出力用の検出バス（ＳＢＵＳ）に接続する。ＩＣ０トランジスタ１０３２は、ＩＮＶ経路１０３０がＭＵＸ経路１０３６と接続するのか否かを制御する。ＦＣ０トランジスタ１０２６は、ＦＬＧ経路１０２８がＭＵＸ経路１０３６と接続するのか否かを制御する。
【００７５】
リセットつまりＲＳＢトランジスタ１０１８は、電源ノード１０１６がＦＬＧ経路１０２８と接続するのか否かを制御する。
【００７６】
ラッチ回路１０７６は、経路１０６２上のフラグＬＡＴを高レベル又は低レベルにセットする。経路１０６４上のＩＮＴは、ＬＡＴの逆である。
【００７７】
ノード１０６６及び１０６９はＶｄｄｓａを受け取る。ＳＴＬトランジスタ１０７２及びＰＲＳトランジスタ１０７４は、所望されるＬＡＴレベルを提供するために適切な制御信号を受信する。トランジスタ１０６８のゲートは、接地経路のトランジスタ１０７３に接続される。同様に、トランジスタ１０７０のゲートは、接地経路のトランジスタ１０７５に接続される。
【００７８】
ＬＣ０トランジスタ１０４４は、ＬＡＴ経路１０６２がＭＵＸ経路１０３６と接続するのか否かを制御する。ＬＲＳトランジスタ１０４６は、ＩＮＴ経路１０６４がＭＵＸ経路１０３６と接続するのか否かを制御する。
【００７９】
検証動作又は読み出し動作の間に使用される検出回路１０３７は、検出経路１０５４と、検出経路がＣＯＭ経路１０８２と接続するのか否かを制御するＸＸ０トランジスタと、検出経路が電源ノード１０３８と接続するのか否かを制御するＨＬＬトランジスタ１０４０と、検出回路がＭＵＸ経路１０３６と接続するのか否かを制御するＨ００トランジスタ１０４２とを含む。ＳＥＮ経路１０５４は、トランジスタ１０６０の制御ゲートに接続され、ＳＴＲトランジスタ１０５８は、トランジスタ１０６０がＭＵＸ経路１０３６と接続するのか否かを制御する。クロックＣＬＫ信号は、ノード１０８８でコンデンサ１０８４に提供される。
【００８０】
ＢＬＹトランジスタ１０５２は、ＭＵＸ経路１０３６がＣＯＭ経路１０８２と接続するのか否かを制御する。一方、ＢＬＸトランジスタ１０５０は、ＣＯＭ経路１０８２が電源ノード１０４８と接続するのか否かを制御する。ＢＬＣトランジスタ１０７８及びＢＬＳトランジスタ１０８０は、ＣＯＭ経路１０８２がビットラインＢＬＩ１０８６と接続するのか否かを制御する。ビットライン１０８６は、一つ又は複数のＮＡＮＤストリングと通信してよい。例のＮＡＮＤストリングは、ドレイン選択ゲート１０９０、並びに例えば、その制御ゲートがそれぞれワードラインＷＬ６３、ＷＬ６２及びＷＬ６１と接続された記憶素子１０９２、１０９４及び１０９６を含む。
【００８１】
図１０ａの回路は、１つの考えられる実施形態である。他の変形例も考えられる。
【００８２】
例えば、図１１は、図１２ａの回路において使用されるプログラム動作の時系列を示す。
【００８３】
図１２ａの回路の別個のコピーは、ビットラインごとに個別に図示され、図１２ａの回路は、現在のプログラムの一反復処理において、ビットラインが、プログラミングから禁止されているのか、全速プログラミングを受けるのか、それとも中速プログラミングを受けるのかに応じて、接続されたビットラインごとに異なる構成となり得る。具体的には、図１２ｂは、図１２ａの回路が、禁止ビットラインのための構成となった様子を示す。また、図１２ｂは、図１２ａの回路が、部分的に禁止される、即ち図１１のｔ１０からｔ１４で中速プログラミングされるビットラインのための構成となった様子を示す。図１２ｃは、図１２ａの回路が、禁止されず全速プログラミングされるビットラインのための構成となった様子を示す。また、図１２ｃは、図１２ａの回路が、図１１のｔ１０からｔ１４以外の期間で部分的に禁止される、即ち中速プログラミングされるビットラインのための構成となった様子も示す。時系列は、複数の反復処理を含むプログラム動作における一つの反復処理の期間を示す。さらに、時系列が示す期間に続いて、検証動作（不図示）が実行されてもよい。
【００８４】
波形１１００は、選択された記憶素子が全度プログラミングされるＮＡＮＤストリング又は記憶素子の他の直列接続ストリングの、ビットライン又はチャネルの電圧を示す。波形１１０２は、選択された記憶素子がプログラムを禁止された、例えば完全に禁止された、あるいは停止されたＮＡＮＤストリング又は記憶素子の他の直列接続ストリングの、ビットライン又はチャネルの電圧を示す。波形１１０４は、選択された記憶素子が中速プログラミング（部分的に禁止された速度とも言える）されるＮＡＮＤストリング又は記憶素子の他の直列接続ストリングの、ビットライン又はチャネルの電圧を示す。波形１１０６は、選択されたワードラインの電圧ＶＷＬを示す。ｔ１６からｔ１７では、二段のプログラムパルスが供給される。波形１１０８は、図１２ａのソース接地（ＳＲＣＧＮＤ）ノード１２５７に印加される電圧を示す。波形１１１０は、ストローブノード（ＳＴＢｎ）１２２０又は１２３８に印加される電圧を示す。波形１１１２は、図１２ａのリセットトランジスタ１２２８及び１２４２に印加される。波形１１１４は、図１２ａのＳＥＴトランジスタ１２４４に印加される。ＳＢＵＳ波形１１１６は、図１２ａのバスノード１２４５に印加される。この波形は、ｔ８からｔ９及びｔ１３からｔ１４の間の波形１１１２と同様に、データを走査するときに駆動される。それは、ＳＥＴが高レベルとなるときはいつも、接地電位にしっかりと設定される。それ以外の時は、それは、通常０Ｖ又は０Ｖ近くで、破線で示されるようにフロートしている。波形１１１８は、図１２ａのＢＬＳトランジスタ１２６２に印加される。トランジスタはｔ２８で放電される。波形１１２０は、図１２ａのＢＬＣトランジスタ１２５４に印加される。波形１１２２は、図１２ａのＸＸＬトランジスタ１２０８に印加される。波形１１２４は、図１２ａのＨＬＬトランジスタ１２０４に印加される。
【００８５】
ｔ０−ｔ２８で示される縦線は、プログラム動作の一反復処理における各時点を表す。このタイムスケールは、必ずしも図９のタイムスケールに一致しない。
【００８６】
期間ｔ１からｔ１０は、ブースト、即ちプレチャージの期間を表す。最初、ｔ１で、ＢＬｉｎｈｉｂｉｔは、０ＶからＶｄｄｓａ−ΔＶまで上昇、即ちプレチャージされる。通常、禁止ビットラインでは、ｔ１からｔ１０において、ＢＬｉｎｈｉｂｉｔは、点線の経路１２５３（図１２ｂ）によって示されるように、ＳＲＣＧＲＤ１２５７から、トランジスタＬＡＴ１２５６及びＩＮＶ１２６０を通る導電経路を有効にすることによって、上昇される。ＬＡＴは低レベル（０）に設定され、ＩＮＶは高レベル（１）に設定される。トランジスタ１２４６及び１２５０はオフである。
【００８７】
具体的には、ＶＷＬ（波形１１０６）は、ここではプログラムパルスが印加される前のプレチャージ段階であるため、０Ｖで固定されている。ＢＬＳ（波形１１１８）は、ＢＬＣからビットライン１２６４に電圧を渡すために十分なレベルまで上昇される。ＢＬＣ（波形１１２０）は、Ｖｄｄｓａ−ΔＶ＋Ｖｔｈまで上昇され、ここでＶｔｈはＢＬＣトランジスタ１２５４の閾値電圧である。その結果、ＢＬＳトランジスタ１２６２を介してビットライン１２６４に渡されるＢＬＣトランジスタ１２５４の出力は、Ｖｄｄｓａ−ΔＶである。
【００８８】
禁止ビットラインの場合、ｔ１０からｔ１３では、ＢＬｉｎｈｉｂｉｔがフロートされる。この期間で、ＢＬｉｎｈｉｂｉｔは、隣接ビットラインの電圧の上昇分だけ、結合されて高くなり得る。例えば、隣接ビットラインが、ＢＬｐｒｏｇｒａｍ−中速で示される中速プログラミングを受けると、そのビットラインでは、０ＶからＶｂｌ＿ｑｐｗと示されるレベルまで、電圧の増加が生じ得る。これにより、矢印１１０３で表されるＢＬｉｎｈｉｂｉｔへの結合が生じる。ＢＬｉｎｈｉｂｉｔは、より高くフロートするときにＮＭＯＳ（ＢＬＣトランジスタ１２５４）から荷電されるので、ＢＬｉｎｈｉｂｉｔは減衰せず、わずかなジャンクション漏れを無視する。すなわち、ＢＬｉｎｈｉｂｉｔ１１０２は、ＢＬＣがｔ１からｔ４（つまり、Ｖｂｌ＿ｑｐｗ＜Ｖｄｄｓａ−ΔＶ）の間よりもｔ１０からｔ１４で低いために、ｔ１０からｔ１４で減衰しない。これは、例えばＶｄｄｓａ−ΔＶが約２Ｖであり、Ｖｂｌ＿ｑｐｗが約０．６Ｖであるときに当てはまる。Ｖｂｌ＿ｑｐｗが約０．６Ｖの状態で、ＢＬｉｎｈｉｂｉｔの結合、つまり、結合エラーは大きくなく、Ｖｄｄｓａ−ΔＶをほんの少し低く設定することによってこのエラーを半減できる。ｔ１３からｔ１４で、ＢＬｉｎｈｉｂｉｔは再びＶｄｄｓａ−ΔＶで駆動される。ｔ１４からｔ２１で、ＢＬｉｎｈｉｂｉｔはより高いレベルＶｄｄｓａで駆動され、したがってΔＶの増分、より高く駆動される。
【００８９】
具体的には、ｔ１からｔ４で、ＢＬＣ（波形１１２０）は、０ＶからＶｄｄｓａ−ΔＶ＋Ｖｔｈに上昇し、それによってＶｄｄｓａ−ΔＶでＢＬｉｎｈｉｂｉｔを駆動する。ｔ１０からｔ１２で、ＢＬＣ（波形１１２０）は、０ＶからＶｂｌ＿ｑｐｗ＋Ｖｔｈに上昇し、それによってＶｂｌ＿ｑｐｗでＢＬｐｒｏｇｒａｍ−中速を駆動する。ｔ１４からｔ２１で、ＢＬＣ（波形１１２０）は、０ＶからＶｄｄｓａ＋Ｖｔｈに上昇し、それによってＶｄｄｓａでＢＬｉｎｈｉｂｉｔを駆動する。ｔ２５で、ＢＬＣがＶｄｄｓａに増加すると、全てのビットラインが０Ｖに放電される。
【００９０】
ＢＬｐｒｏｇｒａｍ−全速は、ｔ１４からｔ２１でフロートされ、それにより、ＢＬｐｒｏｇｒａｍ−全速は、矢印１１０５によって表されるように、ΔＶ及び結合率ＣＲ１に基づくレベルまで結合されて高くなる。また、ＢＬｐｒｏｇｒａｍ−中速は、ｔ１４からｔ２１でフロートされ、それにより、ＢＬｐｒｏｇｒａｍ−中速は、矢印１１０７によって表されるように、ΔＶ及び結合率ＣＲ２に基づくレベルまで結合により高くなる。ＣＲ２はＣＲ１に等しくてもよい。
【００９１】
図１２ａの回路では、ＮＡＮＤストリングは、例えばそれぞれワードラインＷＬ６３、ＷＬ６２及びＷＬ６１、並びにＵＳＧＤトランジスタ１２７０を介してビットライン（ＢＬＩ）１２６４に接続された記憶素子１２７２、１２７４及び１２７６を含む。ビットライン１２６４は、ＢＬＳトランジスタ１２６２及びＣＯＭ２経路１２５２に接続されたＢＬＣトランジスタ１２５４に接続される。ＩＮＶトランジスタ（例えばｎＭＯＳ）１２６０への入力は、端子１２５８を介して電源Ｖｄｄｓａを受け取るＬＡＴトランジスタ１２５６（例えばＰｉＦＥＴ）への入力の反対である。同様に、ＬＡＴトランジスタ１２４６（例えばｎＭＯＳ）への入力は、端子１２４８を介してＶｄｄｓａを受け取るＩＮＶトランジスタ１２５０（例えばＰｉＦＥＴ）への入力の反対である。一つの経路では、ＢＬＸトランジスタ１２０６は、ＣＯＭ１経路１２１０と電源端子１２０２との間に伸びる。別の経路では、ＨＬＬトランジスタ１２０４及びＸＸＬトランジスタ１２０８が、ＣＯＭ１経路１２１０と電源端子１２０２との間に伸びる。
【００９２】
ＣＭ１経路１２１０は、データの入力及び出力のために、ＳＥＴトランジスタ１２４４を介してバス端子１２４５に接続される。検出ＳＥＮ経路１２１２は、コンデンサ１２１４を介してクロック（ＣＬＫ）端子１２１６に接続される。ＳＥＮ経路１２１２は、ｐｉＦＥＴトランジスタ１２２２を介してＩＮＶ経路１２２４に結合され、ＩＮＶ経路１２２４はＲＳＴ＿ＮＣＯトランジスタ１２４２を介してバス端子１２４５に結合される。トランジスタ１２２２は、検出中ストローブ信号を受信するｐｉＦＥＴ  ＳＴＢｎトランジスタ１２２０を介して電源ノード１２１８に結合される。また、ＩＮＶ経路１２２４は、ＳＴＢｎトランジスタ１２３８及びプルダウントランジスタ１２４０を介して接地にも結合される。
【００９３】
ＬＡＴ経路１２３７は、ＩＮＶ経路１２２４の反対である。ＬＡＴ経路１２３７は、ｐｉＦＥＴトランジスタ１２３４を介して電源ノード１０３２に、並びにｐｉＦＥＴトランジスタ１２３０及びＲＳＴ＿ＰＣＯ  ｐｉＦＥＴトランジスタ１２２８を介して電源ノード１２２６に結合される。また、ＬＡＴ経路１２３７は、プルダウントランジスタ１２３６を介して接地に結合される。
【００９４】
プログラム動作の反復中、禁止ビットラインに対しては、ｔ１からｔ１０、ｔ１０からｔ１３及びｔ１４からｔ２１で、導電経路１２５３がアクティブである。
【００９５】
全速プログラミングされるビットライン、又は図１１のｔ１０からｔ１４以外（ｔ１０の前、且つｔ１４の後）の中速プログラミングされるビットラインに対しては、導電経路１２５５がアクティブである（図１２ｃ）。導電経路１２５３は、ＳＥＴが高レベルであるときに、プログラムビットライン又は中速プログラミングされたビットラインを接地するために使用される。ＳＥＴが低であるとき、ＢＬｐｒｏｇｒａｍ−全速及びＢＬｐｒｏｇｒａｍ−中速が、ｔ１４からｔ２１でフロートする。
【００９６】
図１２ａから図１２ｃの回路が一つしかラッチを有さないのに対し、図１０ａから図１０ｄの設計は二つのラッチを有する。トランジスタＩＮＶ１２６０及びＬＡＴ１２５６は、同時にオン又はオフになり、トランジスタ１２５０及びＬＡＴ１２４６は、同時にオン又はオフになる。ｔ１からｔ１０及びｔ１４からｔ２１のプログラム動作の一反復処理は、以下の通りに要約できる。
パターン      全速プログラム    中速プログラム    禁止
ＬＡＴ        高                高                低
ＩＮＶ        低                低                高
【００９７】
ｔ１０からｔ１３のプログラムの一反復処理は、以下の通りに要約できる。
パターン      全速プログラム    中速プログラム    禁止
ＬＡＴ        高                低                低
ＩＮＶ        低                高                高
【００９８】
ｔ５からｔ１０及びｔ１３からｔ１４（図１１）で、ＢＬＣは遮断され、ラッチ値が変化できるように、ビットラインをＣＯＭ２経路１２５２から分離する。
【００９９】
図１３は、プログラム動作を示す。プログラム動作はステップ１３００で始まる。プログラム動作の一反復は、ステップ１３０２で始まる。ステップ１３０４は、禁止されるビットラインの第１のグループを識別する処理を含む。これは、通常、プログラミングが完了したＮＡＮＤストリングに接続されたビットラインを含む。また、ステップ１３０４は、中速でプログラミングされるビットラインの第２のグループを識別する処理も含む。これは、通常、より低い検証レベルに達したが、より高い検証レベルには達していない記憶素子の接続されたビットラインを含む。例えば、図６で、これは、ＶｖａＬに達したが、ＶｖａＨには達していないＡ状態の記憶素子及びＶｖａＢには達したが、ＶｖｂＨには達していないＢ状態の記憶素子を含むことがあり得る。また、ステップ１３０４は、全速でプログラミングされるビットラインの第３のグループを識別する処理も含む。これは、通常、低い検証レベルが使用されるときはその低い検証レベルに達していない記憶素子、又は低い検証レベル及び高い検証レベルが使用されないときは通常の検証レベルに達していない記憶素子に接続されたビットラインを含む。例えば、図６では、これは、ＶｖａＬに達していないＡ状態記憶素子、ＶｖａＢに達していないＢ状態記憶素子及びＶｖｃに達していないＣ状態記憶素子を含むことがあり得る。
【０１００】
ステップ１３０６は、第１のグループのビットラインを初期レベルＶｄｄｓａ−ΔＶにプレチャージする処理、並びに第２のグループ及び第３のグループのビットラインの電位を０Ｖといった定常状態レベルＶｓｓに固定することを含む。これは、図９に示す例のｔ１からｔ３で、又は図１１に示す例のｔ１からｔ１０で生じる。ステップ１３０８は、第２のグループのビットラインを初期レベルＶｂｌ＿ｑｐｗにプレチャージする処理、第１のグループのビットラインをフロートさせる処理及び第３のグループのビットラインの電位を０Ｖといった定常状態レベルＶｓｓに固定する処理を含む。これは、図９に示す例のｔ３からｔ４、又は図１１に示す例のｔ１０からｔ１３で生じる。ステップ１３１０は、第２のグループのビットラインのＶｂｌ＿ｑｐｗへのプレチャージを継続する処理、並びに第１のグループ及び第３のグループのビットラインの電位を０Ｖといった定常状態レベルＶｓｓに固定する処理を含む。これは、図９に示す例のｔ４からｔ５で、又は図１１に示す例のｔ１３からｔ１４で生じる。ステップ１３１２は、第１のグループのビットラインの電位をＶｄｄｓａに駆動する処理、第２のグループ及び第３のグループのビットラインをフロートさせる処理及びプログラム電圧Ｖｐｇｍを選択されたワードラインに印加する処理を含む。これは、Ｖｐｇｍがｔ６からｔ７で印加される図９に示す例のｔ５からｔ８で、又はＶｐｇｍがｔ１６からｔ１９で印加される図１１に示す例のｔ１４からｔ２１で生じる。
【０１０１】
検証動作は、ステップ１３１４で実行される。これが同様に、図６に示されるさまざまなレベルでワードライン検証電圧を印加することを含んでよいことに留意されたい。決定ステップ１３１６で、全ての記憶素子が検証試験に合格しない場合、ステップ１３０２でプログラム動作の追加の反復処理が実行される。決定ステップ１３１６においてＹＥＳの場合、追加の反復が必要とされるのか否かについて、決定ステップ１３１８において決定がなされる。高い検証レベルと低い検証レベルの両者が使用されるときは、全ての記憶素子が高い検証レベルを満たし、状態ごとに一つの検証レベルだけが使用されるときには、全ての記憶素子が通常のレベルを満たすことが検証された場合、プログラム動作はステップ１３２０で終了する。いくつかの記憶素子について高い検証レベルに達したことが検証されない場合、ステップ１３０２でプログラム動作の追加の反復が実行される。
【０１０２】
本明細書に説明される技術の一実施形態において、不揮発性記憶装置を動作させるための方法は、一組の不揮発性記憶素子のための複数反復型のプログラム動作の一の反復処理の実行を含む。一組の不揮発性記憶素子は、少なくとも第１、第２及び第３の不揮発性記憶素子のストリングを含む。第１、第２及び第３の不揮発性記憶素子のストリングは、それぞれ第１のビットライン、第２のビットライン及び第３のビットラインに接続されている。一の反復処理の実行は、（ａ）第１の期間に、第２のビットライン及び第３のビットラインの電位を固定（Ｖｓｓ＝０Ｖ）しながら、第１のビットラインの電位を第１のレベル（Ｖｄｄｓａ−ΔＶ）にプレチャージすること、（ｂ）第１の期間後の第２の期間の少なくとも一部に、第１のビットラインをフロートさせつつ第３のビットラインの電位を固定（Ｖｓｓ＝０Ｖ）しながら、第２のビットラインを第２のレベル（Ｖｂｌ＿ｑｐｗ）にプレチャージすること及び（ｃ）第２の期間の後の第３の期間に、第２のビットライン及び第３のビットラインをフロートさせつつ、第１のストリングの不揮発性記憶素子、第２のストリングの不揮発性記憶素子及び第３のストリングの不揮発性記憶素子にプログラム電圧（Ｖｐｇｍ）を同時に印加しながら、第１のビットラインの電位を第１のレベル（Ｖｄｄｓａ−ΔＶ）よりも高い第３のレベル（Ｖｄｄｓａ）に駆動することを含む。
【０１０３】
別の実施形態では、不揮発性記憶システムは、基板上の一組の記憶素子を含む。一組の記憶素子は、少なくとも第１、第２及び第３の不揮発性記憶素子のストリングを含む。第１、第２及び第３のビットラインは、それぞれ第１、第２及び第３のストリングに接続されている。少なくとも一つの制御回路が、一組の記憶素子、並びに第１、第２及び第３のビットラインに接続されている。少なくとも一つの回路は、一組の不揮発性記憶素子のための複数反復型のプログラム動作の一の反復処理を実行するために、（ａ）第１の期間に、第１のビットラインの電位を第１のレベル（Ｖｄｄｓａ−ΔＶ）にプレチャージしつつ、同時に第２の及び第３のビットラインの電位を固定し（Ｖｓｓ＝０Ｖ）、（ｂ）第１の期間の後の第２の期間の少なくとも一部に、第２のビットラインを第２のレベル（Ｖｂｌ＿ｑｐｗ）にプレチャージしつつ、同時に第１のビットラインをフロートさせるとともに第３のビットラインの電位を固定し（Ｖｓｓ＝０Ｖ）、（ｃ）第２の期間の後の第３の期間に、第１のレベル（Ｖｄｄｓａ−ΔＶ）よりも高い第３のレベル（Ｖｄｄｓａ）に第１のビットラインの電位を駆動しつつ、同時に第２の及び第３のビットラインをフロートさせながら、第１のストリングの不揮発性記憶素子、第２のストリングの不揮発性記憶素子及び第３のストリングの不揮発性記憶素子にプログラム電圧（Ｖｐｇｍ）を印加する。
【０１０４】
別の実施形態では、不揮発性記憶システムを動作させるための方法は、（ａ）基板上に形成される一組の不揮発性記憶素子のなかから、プログラム動作の一の反復処理の間にプログラムが禁止されるべき第１の不揮発性記憶素子のストリングを特定すること、（ｂ）一組の不揮発性記憶素子のなかから、プログラム動作の一の反復処理の間に減速された速度でのプログラムが許容される第２の不揮発性記憶素子のストリングを特定すること、（ｃ）一組の不揮発性記憶素子のなかから、プログラム動作の一の反復処理の間に全速でのプログラムが許容される第３の不揮発性記憶素子のストリングを特定すること、（ｄ）それぞれ第２及び第３の不揮発性記憶素子のストリングに接続された基板内の第２及び第３のチャネルの電位を固定しながら、第１の不揮発性記憶素子のストリングに接続された基板内の第１のチャネルを第１のレベルにプレチャージすること、（ｅ）その後、第１のチャネルをフロートさせつつ、第３のチャネルの電位を固定しながら、第２のチャネルを第２のレベルにプレチャージすること及び（ｆ）その後、第２及び第３のチャネルをフロートさせつつ、且つ第１のストリングの不揮発性記憶素子、第２のストリングの不揮発性記憶素子及び第３のストリングの不揮発性記憶素子にプログラム電圧を印加しながら、第１のチャネルを第１のレベルよりも高い第３のレベルに駆動することを含む。
【０１０５】
本明細書に示される方法を実行するための、対応する方法、システム及びコンピュータ読み出し可能な記憶装置、又はプロセッサ読み出し可能な記憶装置も提供されてよい。
【０１０６】
前記発明を実施するための形態は、図解及び説明のために提示された。それは、網羅的であること、又は開示されている正確な形式に本技術を制限することを意図していない。上記の教示を鑑みて、多くの修正及び変形が考えられる。説明された実施形態は、本技術及びその実践的な用途の原則を最もよく説明し、それによって当業者が多様な実施例において及び意図された特定の使用に適するような多様な修正をもって本技術を最もよく活用できるようにするために選ばれた。本技術の範囲は、本明細書に添付される特許請求項の範囲により定められることが意図される。
【図１ａ】
0005470461.tif 000002
【図１ｂ】
0005470461.tif 000003
【図２】
0005470461.tif 000004
【図３】
0005470461.tif 000005
【図４】
0005470461.tif 000006
【図５】
0005470461.tif 000007
【図６】
0005470461.tif 000008
【図７】
0005470461.tif 000009
【図８】
0005470461.tif 000010
【図９】
0005470461.tif 000011
【図１０ａ】
0005470461.tif 000012
【図１０ｂ】
0005470461.tif 000013
【図１０ｃ】
0005470461.tif 000014
【図１０ｄ】
0005470461.tif 000015
【図１１】
0005470461.tif 000016
【図１２ａ】
0005470461.tif 000017
【図１２ｂ】
0005470461.tif 000018
【図１２ｃ】
0005470461.tif 000019
【図１３】
0005470461.tif 000020