(57)【要約】  非揮発性記憶装置をプログラミングするシステムにおいて、より高精度でリーズナブルなプログラム時間でプログラミングするための技術を開示する。一実施形態では、第１非揮発性記憶要素のためのビットラインに第１電圧を供給することによって、この第１非揮発性記憶要素を禁止する。第１非揮発性記憶要素に第１プログラム電圧を供給する。例えば、第１非揮発性記憶要素の制御ゲートにプログラムパルスを供給する。プログラムパルスの間に、ビットラインが第１電圧から第２電圧に変更され、この第２電圧が第１非揮発性記憶要素のプログラムを許容する。
2007536681.tif 000002
【特許請求の範囲】
【請求項１】
非揮発性記憶装置をプログラミングする方法であり、
第１非揮発性記憶要素のためのビットラインに第１電圧を供給することと、
第１非揮発性記憶要素のための前記ビットラインに第１電圧を供給する間に、第１非揮発性記憶要素の制御ゲートに第１プログラム電圧を供給することと、
第１非揮発性記憶要素のための前記ビットラインに第１電圧を供給する間に、第１非揮発性記憶要素の前記制御ゲートに供給された第１プログラム電圧を低下させることと、
第１プログラム電圧を低下させる間に、前記ビットラインに第２電圧を供給することと、
第１非揮発性記憶要素のための前記ビットラインに第２電圧を供給する間に、第１非揮発性記憶要素の制御ゲートに供給された第１プログラム電圧を上昇させること
を備える方法。
【請求項２】
非揮発性記憶装置をプログラミングする方法であり、
第１セットの非揮発性記憶要素群が雑プログラミングモードにあるとともに第２セットの非揮発性記憶要素群がファインプログラミングモードにある複数の非揮発性記憶要素に第１プログラム電圧を供給することと、
第１プログラム電圧の間に、前記第１セットの非揮発性記憶要素群のためのビットラインにプログラミングビットライン電圧を供給することと、
第１プログラム電圧の間に、前記第２セットの非揮発性記憶要素群のためのビットラインに禁止ビットライン電圧を供給することと、
前記第２セットの非揮発性記憶要素群のプログラミングを許容するために、第１プログラム電圧の間に、前記第２セットの非揮発性記憶要素群のためのビットラインを変更すること
を備える方法。
【請求項３】
前記「第１プログラム電圧を供給すること」は、第１ワードラインにプログラムパルスを供給することを含んでおり、
前記「ビットラインを変更すること」は、前記第２セットの非揮発性記憶要素群のためのビットラインを、前記パルスの間に、禁止レベルからプログラムレベルまで低下させることを含んでいる
ことを特徴とする請求項２の方法。
【請求項４】
前記「第１プログラム電圧を供給すること」は、第１ワードラインにプログラムパルスを供給することを含んでおり、
前記「ビットラインを変更すること」は、前記第２セットの非揮発性記憶要素群のためのビットラインを、現在の閾電圧レベルと目標閾電圧レベルの間の差に基づいて、前記パルスの間に異なる時間で前記禁止ビットライン電圧からプログラムレベルまで低下させることを含んでいる
ことを特徴とする請求項２の方法。
【請求項５】
非揮発性記憶システムであり、
第１非揮発性記憶要素と、制御回路とを備え、
その制御回路は、
第１非揮発性記憶要素のための第１ビットラインに第１電圧を供給し、
第１ビットラインに第１電圧を供給する間に、第１非揮発性記憶要素の制御ゲートに第１プログラム電圧を供給し、
第１プログラム電圧を低下させ、
第１プログラム電圧を低下させる間に、第１ビットラインを第１電圧から第２電圧に変更し、
その後に第１プログラム電圧を上昇させる
ことを特徴とする非揮発性記憶システム。
【請求項６】
制御回路は、コントローラ、状態マシン、デコーダ、及び、センス増幅器を含んでいる
ことを特徴とする請求項５の非揮発性記憶システム。
【請求項７】
第１非揮発性記憶要素は、ＮＡＮＤストリングの一部であり、
非揮発性記憶システムは、ビットラインに対応する複数のＮＡＮＤストリングを含んでおり、
非揮発性記憶システムは、複数のＮＡＮＤストリングに接続されている複数のワードラインを含んでおり、
制御回路は、複数のワードラインの第１ワードラインに第１パルスを供給することによって、前記第１プログラム電圧を供給し、
制御回路は、第１パルスの間に、前記第１プログラム電圧を低下させ、
制御回路は、第１パルスのための時間の間に、前記第１ビットラインを変更する
ことを特徴とする請求項５の非揮発性記憶システム。
【請求項８】
制御回路は、第１セットの非揮発性記憶要素群が雑モードでプログラムされるようにし、
制御回路は、第２セットの非揮発性記憶要素群がファインモードでプログラムされるようにし、
第２セットの非揮発性記憶要素群は、前記第１非揮発性記憶要素を含んでいる
ことを特徴とする請求項５の非揮発性記憶システム。
【請求項９】
非揮発性記憶システムであり、
第１非揮発性記憶要素と、制御回路とを備え、
その制御回路は、以下の次の方法、即ち、
第１セットの非揮発性記憶要素群が雑プログラミングモードにあるとともに第２セットの非揮発性記憶要素群がファインプログラミングモードにある複数の非揮発性記憶要素に第１プログラム電圧を供給することと、
第１プログラム電圧の間に、第１セットの非揮発性記憶要素群のためのビットラインにプログラミングビットライン電圧を供給することと、
第１プログラム電圧の間に、第２セットの非揮発性記憶要素群のためのビットラインに禁止ビットライン電圧を供給することと、
第２セットの非揮発性記憶要素群のプログラミングを許容するために、第１プログラム電圧の間に、第２セットの非揮発性記憶要素群のための前記ビットラインを変更すること
を実行する
ことを特徴とする非揮発性記憶システム。
【発明の詳細な説明】
【技術分野】
【０００１】
下記の出願の全体の内容は、本願明細書に組み込まれる。
【０００２】
本出願と同日に出願された米国特許出願第１０／８３９７６４号（事件番号：ＳＡＮＤ−０１０２８ＵＳ０）の「BOOSTING TO CONTROL PROGRAMMING OF NON-VOLATILE MEMORY」。発明者「Daniel C. Guterman、Nima Mokhlesi、及びYupin Fong」
【背景技術】
【０００３】
本発明は、非揮発性メモリをプログラミングするための技術に関する。
【０００４】
半導体メモリ装置は、様々な電子装置に使用されてポピュラーになっている。例えば、非揮発性半導体メモリは、携帯電話、デジタルカメラ、パーソナルデジタルアシスタント、モバイルコンピュータ、非モバイルコンピュータ、及びその他の装置に使用されている。最も普及している非揮発性半導体メモリは、電気的消去プログラミングが可能な読み取り専用メモリ（ＥＥＰＲＯＭ）とフラッシュメモリである。
【０００５】
ＥＥＰＲＯＭとフラッシュメモリの両方は、半導体基板のチャネル領域から絶縁されているとともにチャネル領域の上に配置されているフローティングゲートを利用する。フローティングゲートは、ソース領域とドレイン領域の間に配置されている。制御ゲートは、フローティングゲートの上に設けられているとともに、フローティングゲートから絶縁されている。トランジスタの閾電圧は、フローティングゲートに保持される電荷量によって制御される。即ち、トランジスタがソースとドレインの間を導通してターンオンする前に制御ゲートに付加されるべき最小限の電圧が、フローティングゲートの電荷レベルによって制御される。
【０００６】
いくつかのＥＥＰＲＯＭとフラッシュメモリは、２つの電荷範囲を保持するために使用されるフローティングゲートが設けられている。このために、メモリセルを２つの状態（消去された状態とプログラムされた状態）の間でプログラミング／消去することができる。ＥＥＰＲＯＭ又はフラッシュメモリ装置のオールトンネリングにプログラミングする場合、典型的には、制御ゲートにプログラミング電圧が供給され、ビットラインが接地される。チャネルからの電子がフローティングゲートに注入される。フローティングゲート内に電子が蓄積すると、フローティングゲートが負電荷状態となり、メモリセルの閾電圧が上昇して、メモリセルがプログラム状態になる。プログラミングに関するさらなる情報は、２００３年３月５日出願の米国特許出願第１０／３７９６０８号の「Self Boosting Technique」と、２００３年７月２９日出願の米国特許出願第１０／６２９０６８号の「Detecting Over Programmed Memory」から得ることができる。両出願の全体は、本願明細書に組み込まれる。
【０００７】
マルチ状態フラッシュメモリセルは、禁止された電圧範囲によって分離された複数の異なる許容された閾電圧範囲を特定することによって実現される。それぞれの異なる閾電圧範囲は、データビット群のセットの所定値に対応している。
【０００８】
一般的に、制御ゲートに供給されるプログラミング電圧は、一連のパルスとして付加される。パルスの大きさは、連続パルス毎に所定のステップサイズ（例えば０．２ｖ）増加する。パルスとパルスの間の期間において、ベリファイ動作（証明動作）が実行される。プログラマブル状態の数が増えるに従ってベリファイ動作の数も増え、より多くの時間が必要になる。ベリファイの時間的負荷を低減するための１つの手段では、より効率的なベリファイプロセスを利用する。例えば、２００２年１２月５日出願の米国特許出願第１０／３１４０５５号の「Smart Verify for Multi-State Memories」には、スマートなベリファイプロセスが開示されている。この全体は、本願明細書に組み込まれる。しかしながら、可能な限り高速にプログラミングを実行するメモリ装置を要求する顧客の声がある。例えば、フラッシュメモリカードに画像を記憶するデジタルカメラのユーザは、写真と写真の間の切り替え時間が長いと感じている。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
リーズナブルな速度でプログラミングすることに加えて、マルチ状態メモリセルによる適切なデータの記憶を実現するためには、マルチ状態メモリセルの閾電圧レベルの複数の範囲を、十分なマージンで相互に離間させるべきである。これにより、明確なマナーでメモリセルのレベルのプログラミングと読み出しを実行することができる。さらに、タイトな閾電圧分布が奨励される。タイトな閾電圧分布の達成には、一般的に小さなプログラミングステップが使用されるために、セルの閾電圧のプログラミングがさらに遅くなる。所望の閾分布がタイトであるほど、ステップが小さくなり、プログラミングプロセスが遅くなる。
【００１０】
プログラミングプロセスがそれ程遅くならずにタイトな閾分布を達成するための１つの解決法では、２フェーズのプログラミングプロセスが利用される。第１フェーズ、即ち雑プログラミングフェーズは、閾電圧をより高速なマナーで上昇させ、タイトな閾分布の達成をそれ程意識していない。第２フェーズ、即ちファインプログラミングフェーズは、目標の閾電圧に達するよう閾電圧をより遅いマナーで上昇させ、よりタイトな閾分布を達成する。雑／ファインプログラミング方法の例は、２００４年１月２７日出願の米国特許出願第１０／７６６２１７号の「Efficient Verification for Coarse/Fine Programming of Non-Volatile Memory」、２００２年１月２２日出願の米国特許出願第１０／０５１３７２号の「Non-Volatile Semiconductor Memory Device Adapted to Store A Multi-Valued Data in a Single Memory Cell」、米国特許第６３０１１６１号、米国特許第５７１２８１５号、米国特許第５２２０５３１号、及び、米国特許第５７６１２２２号から得られる。これらの全体は、本願明細書に組み込まれる。
【００１１】
メモリ装置がより小型化かつ高密度化するに従ってよりタイトな閾分布及び妥当なプログラミング時間の必要性が増加する。雑／ファインプログラミング方法は既存のいくつかの事案を解決するが、望ましいタイトな閾分布及び妥当なプログラミング時間を提供することができるように、雑／ファインプログラミング方法をさらに改善する必要がある。
【課題を解決するための手段】
【００１２】
本発明は、簡単に言うと、より高い精度とリーズナブルなプログラミング時間で非揮発性メモリをプログラミングするための技術に関する。本発明は、雑／ファインプログラミング方法を改善すること、及び／又は、雑／ファインプログラミングを実現せずに単独で使用されることができる。
【００１３】
本発明の一実施形態は、第１非揮発性記憶要素のためのビットラインに第１電圧を供給することと、第１非揮発性記憶要素のための前記ビットラインに第１電圧を供給する間に、第１非揮発性記憶要素の制御ゲートに第１プログラム電圧を供給することと、第１非揮発性記憶要素のための前記ビットラインに第１電圧を供給する間に、第１非揮発性記憶要素の前記制御ゲートに供給された第１プログラム電圧を低下させることと、第１プログラム電圧を低下させる間に、前記ビットラインに第２電圧を供給することと、第１非揮発性記憶要素のための前記ビットラインに第２電圧を供給する間に、第１非揮発性記憶要素の制御ゲートに供給された第１プログラム電圧を上昇させることを含んでいる。
【００１４】
例えば、一実施形態では、第１非揮発性記憶要素は、ＮＡＮＤストリングの一部であるＮＡＮＤ型フラッシュメモリ装置である。第１プログラム電圧の供給では、ＮＡＮＤ型フラッシュメモリ装置の制御ゲートにプログラムパルスを供給する。ビットラインに供給される第１電圧は、プログラミングを禁止する電圧レベルにあり、ビットラインに供給される第２電圧は、プログラミングを許容する電圧レベルにある。プログラムパルスを供給する時間の間に、ビットラインが第１電圧から第２電圧に変更される。このプロセスは、さらなるプログラムパルスについて繰り返すことができる。
【００１５】
本発明の別の実施形態では、第１セットの非揮発性記憶要素群が雑プログラミングモードにあるとともに第２セットの非揮発性記憶要素群がファインプログラミングモードにある複数の非揮発性記憶要素に第１プログラム電圧を供給する。このプロセスでは、第１プログラム電圧の間に、第１セットの非揮発性記憶要素群のためのビットラインにプログラミングビットライン電圧を供給し、第１プログラム電圧の間に、第２セットの非揮発性記憶要素群のためのビットラインに禁止ビットライン電圧を供給し、第１プログラム電圧の間に、第２セットの非揮発性記憶要素群のためのビットラインを変更して第２セットの非揮発性記憶要素群をプログラミングすることを許容する。
【００１６】
本発明の一又は複数の実施例においては、一又は複数の非揮発性記憶要素のプログラミングを含むことができる。例えば、本発明を使用してフラッシュメモリ装置のアレイをプログラムすることができる。いくつかの実施例では、一又は複数の非揮発性記憶要素のプログラミングは、制御回路によって又は制御回路の側によって実行される。制御回路の構成要素は、特定の用途に従って異なる。例えば、制御回路は、コントローラ、命令回路、状態マシン、行制御部、列制御部、ソース制御部、ｐウェル又はｎウェル制御部、又は、これ以外の同様の機能を実行する回路のうちのいずれか又は任意の組み合わせを含むことができる。
【００１７】
本発明のこれらの目的とその他の目的と利点は、図面を参照して説明される以下の本発明の好適な実施形態からより明確となるだろう。
【発明を実施するための最良の形態】
【００１８】
本発明の内容は、限定されることなく例示として示されている添付の図面を参照して説明される。図面では、類似の要素を類似の参照符号で示している。この開示で参照している一又は複数の実施形態は必ずしも同じ実施形態である必要はなく、このような参照は少なくとも１つの手段を意味する点について留意するべきである。
【００１９】
以降の説明では、本発明の様々な局面について説明する。しかしながら、当業者は、本発明開示の局面のいくつか又は全てを用いて本発明を実施できることが明白となるだろう。特定の数、材料、形状は、本発明を完全に理解するために説明の目的で述べられている。しかしながら、当業者は、本発明は特定の詳細部が全て揃わなくても実施できる点が明白であろう。本発明を不明瞭にしないために、よく知られた特徴を省略又は簡略化している例もある。
【００２０】
以下では、様々な実施形態を複数の別個のステップとして、本発明を理解する上で最も助けとなる方法で順に説明する。しかしながら、この説明の順序は、これらのオペレーションが順序に依存するものであると思わせるものとして解釈されるべきではない。
【００２１】
本発明が具現化されたフラッシュメモリシステムの一例では、ＮＡＮＤ構造を利用する。このＮＡＮＤ構造は、２つの選択ゲートの間に複数のトランジスタを直列に配置することが含まれる。直列に配置されたトランジスタと選択ゲートはＮＡＮＤストリングと呼ばれる。図１は、１つのＮＡＮＤストリングを示す平面図である。図２は、図１の等価回路である。図１と図２に示されたＮＡＮＤストリングは、第１選択ゲート１２０と第２選択ゲート１２２の間に挟まれた４つのトランジスタ１００，１０２，１０４，１０６を備えている。選択ゲート１２０は、ＮＡＮＤストリングをビットライン１２６に接続する。選択ゲート１２２は、ＮＡＮＤストリングをソースライン１２８に接続する。選択ゲート１２０は、制御ゲート１２０ＣＧに適切な電圧を印加することによって制御される。選択ゲート１２２は、制御ゲート１２２ＣＧに適切な電圧を印加することによって制御される。各トランジスタ１００，１０２，１０４，１０６は、制御ゲートとフローティングゲートを有する。トランジスタ１００は、制御ゲート１００ＣＧとフローティングゲート１００ＦＧを有する。トランジスタ１０２は、制御ゲート１０２ＣＧとフローティングゲート１０２ＦＧを有する。トランジスタ１０４は、制御ゲート１０４ＣＧとフローティングゲート１０４ＦＧを有する。トランジスタ１０６は、制御ゲート１０６ＣＧとフローティングゲート１０６ＦＧを有する。制御ゲート１００ＣＧは、ワードラインＷＬ３に接続しており、制御ゲート１０２ＣＧは、ワードラインＷＬ２に接続しており、制御ゲート１０４ＣＧは、ワードラインＷＬ１に接続しており、制御ゲート１０６ＣＧは、ワードラインＷＬ０に接続している。一実施形態では、トランジスタ１００，１０２，１０４，１０６は全てメモリセルである。別の実施形態では、これらのメモリセルは複数のトランジスタを有するか、又は、図１及び図２に示されたものとは異なるものであってもよい。選択ゲート１２０は、選択ラインＳＧＤに接続しており、選択ゲート１２２は、選択ラインＳＧＳに接続している。
【００２２】
図３は、上述のＮＡＮＤストリングの断面図を提供する。図３に示すように、ＮＡＮＤストリングのトランジスタは、ｐウェル領域１４０内に形成されている。各トランジスタは、制御ゲート（１００ＣＧ，１０２ＣＧ，１０４ＣＧ，１０６ＣＧ）とフローティングゲート（１００ＦＧ，１０２ＦＧ，１０４ＦＧ，１０６ＦＧ）によって構成される積層ゲート構造を含んでいる。フローティングゲートは、酸化膜上のｐウェルの表面上に形成されている。制御ゲートはフローティングゲートの上に配置され、間に挟まれた中間ポリシリコン誘電層が制御ゲートとフローティングゲートを分離している。メモリセル（１００，１０２，１０４，１０６）の制御ゲートは、ワードラインを形成している。隣接するセルの間で、Ｎ＋拡散層１３０，１３２，１３４，１３６，１３８が共有されていることによって、セル同士が直列に接続されてＮＡＮＤストリングを形成している。これらのＮ＋拡散層は、それぞれのセルのソースとドレインを形成している。例えば、Ｎ＋拡散層１３０は、トランジスタ１２２のドレインとして機能し、トランジスタ１０６のソースとして機能する。Ｎ＋拡散層１３２は、トランジスタ１０６のドレインとして機能し、トランジスタ１０４のソースとして機能する。Ｎ＋拡散領域１３４は、トランジスタ１０４のドレインとして機能し、トランジスタ１０２のソースとして機能する。Ｎ＋拡散領域１３６は、トランジスタ１０２のドレインとして機能し、トランジスタ１００のソースとして機能する。Ｎ＋拡散層１３８は、トランジスタ１００のドレインとして機能し、トランジスタ１２０のソースとして機能する。Ｎ＋拡散層１２６は、ＮＡＮＤストリングのためのビットラインに接続している。Ｎ＋拡散層１２８は、複数のＮＡＮＤストリングのための共通ソースラインに接続している。
【００２３】
図１〜図３は、ＮＡＮＤストリング内の４つのメモリセルを示している。しかしながら、この４つのトランジスタの利用は単に一例として提供されたものである。ＮＡＮＤストリングは、４つ未満、又は４つ以上のメモリセルを含むことができる。例えば、８個のメモリセル、１６個のメモリセル、３２個のメモリセル、又はその他を含むＮＡＮＤストリングも存在する。なお、この説明によってＮＡＮＤストリング内のメモリセルの数は限定されない。
【００２４】
それぞれのメモリセルは、アナログ又はデジタル形式のデータを記憶することができる。１ビットのデジタルデータを記憶する場合、メモリセルの使用可能な閾電圧の範囲が２つの範囲に分割され、これらの範囲には論理データ「１」と「０」がそれぞれ割り当てらる。ＮＡＮＤ型フラッシュメモリの一例では、メモリセル消去後に閾電圧が負になり、論理「１」と定義される。プログラム動作後には閾電圧が正になり、論理「０」と定義される。閾電圧が負の場合に読み取りを試みると、メモリセルがターンオンし、論理「１」が記憶されたことを示す。閾電圧が正の場合には、読み出しオペレーションを試みても、論理「０」が記憶されたことを示すためにメモリセルがターンオンすることはない。メモリセルは、例えば複数のレベルの情報を記憶できる。即ち、複数ビットのデジタルデータを記憶することができる。複数レベルのデータを記憶する場合、使用可能な閾電圧の範囲が記憶レベルの数に分割される。例えば、４つのレベルの情報を記憶する場合、データ値「１１」，「１０」，「０１」，「００」が割り当てられた４つの閾電圧範囲に分割される。ＮＡＮＤ型メモリの一例では、消去オペレーション後に閾電圧が負になり、「１１」と定義される。「１０」，「０１」，「００」の状態に対しては正の閾電圧が使用される。
【００２５】
ＮＡＮＤ型フラッシュメモリ及びその動作の関連例は、米国特許第５５７０３１５号、米国特許第５７７４３９７号、米国特許第６０４６９３５号、米国特許第５３８６４２２号、米国特許第６４５６５２８号、及び米国特許出願第０９／８９３２７７号（公開公報第ＵＳ２００３／０００２３４８号）から得られ、これらの全体は、本願明細書に組み込まれる。セルフブースティング技術を含むＮＡＮＤフラッシュメモリのプログラミングに関する情報は、２００３年３月５日出願の米国特許出願第１０／３７９６０８号の「Self Boosting Technique」、及び、２００３年７月２９日出願の米国特許出願第１０／６２９０６８号の「Detecting Over Programmed Memory」から得られる。両出願の全体は、本願明細書に組み込まれる。フラッシュメモリ装置の他のタイプも、本発明において用いることができる。例えば、ＮＯＲ型フラッシュメモリについての説明は、米国特許第５０９５３４４号、第５１７２３３８号、第５８９０１９２号、第６１５１２４８号から得られ、これらの全体は、本願明細書に組み込まれる。別タイプのフラッシュメモリの例は、米国特許第６１５１２４８号から得られる。これらの全体は、本願明細書に組み込まれる。
【００２６】
図４は、本発明を実行するために使用できるフラッシュメモリシステムの一実施形態のブロック線図である。メモリセルアレイ３０２は、列制御回路３０４、行制御回路３０６、ｃソース制御回路３１０、及びｐウェル制御回路３０８によって制御される。列制御回路３０４は、メモリセルに記憶されているデータを読み出すため、プログラムオペレーション中のメモリセルの状態を決定するため、又は、ビットラインのポテンシャルレベルを制御してプログラミングを促進又は禁止するために、メモリセルアレイ３０２のビットラインに接続されている。行群制御回路３０６は、複数のワードラインから１つを選択するため、読み出し電圧を印加するため、プログラム電圧を印加するため、又は、消去電圧を印加するために、ワードラインに接続されている。Ｃソース制御回路３１０は、メモリセルに接続された共有ソースライン（図５中に「Ｃソース」として示す）を制御する。ｐウェル制御回路３０８は、ｐウェル電圧を制御する。
【００２７】
メモリセルに記憶されたデータが列制御回路３０４によって読み出され、データ入力／出力バッファ３１２を介して外部Ｉ／Ｏラインへ出力される。メモリセルに記憶されるべきプログラムデータが、外部Ｉ／Ｏラインを介してデータ入力／出力バッファ３１２に入力され、列制御回路３０４に転送される。外部Ｉ／Ｏラインは、コントローラ３１８に接続されている。
【００２８】
フラッシュメモリ装置を制御するための命令データがコントローラ３１８に入力される。命令データは、どのオペレーションが要求されたのかをフラッシュメモリに知らせる。入力された命令が状態マシン３１６に転送され、列制御回路３０４、行制御回路３０６、ｃソース制御３１０、ｐウェル制御回路３０８、データ入力／出力バッファ３１２を制御する。状態マシン３１６は、ＲＥＡＤＹ／ＢＵＳＹやＰＡＳＳ／ＦＡＩＬのようなフラッシュメモリの状態データを出力することができる。
【００２９】
コントローラ３１８は、ホストシステムに接続されているか、接続されることができる。このホストシステムは、パーソナルコンピュータ、デジタルカメラ、パーソナルデジタルアシスタント、その他である。コントローラ３１８は、ホストと通信して、ホストから命令を受信し、データを受信し、ホストにデータを供給し、状態情報を供給する。コントローラ３１８は、ホストからの命令を命令信号に変換する。この命令信号は、状態マシン３１６と通信している命令回路３１４によって解釈及び実行されることができる。一般的に、コントローラ３１８には、メモリアレイに書き込み又はメモリアレイから読み出しされるユーザデータのためのバッファメモリが内蔵されている。
【００３０】
１つの例証的なメモリシステムは、コントローラ３１８を有する１つの集積回路と、それぞれがメモリアレイに対応する制御とを含んでいる一又は複数の集積回路チップと、入力／出力、及び、状態機械回路とを備えている。一又は複数の集積回路チップ上でシステムのメモリアレイとコントローラ回路を統合することがトレンドである。メモリシステムは、ホストシステムの部分として組み込むか、又は、ホストシステム内に取り外し可能に挿入されるメモリカード（または他のパッケージ）内に内蔵することができる。このような取り外し可能なカードには、メモリシステム全体（例えばコントローラを含む）が実装されているか、又は、単にメモリアレイ（一又は複数）と関連する周辺回路が実装されていてよい（ホストにコントローラが組み込まれた状態）。したがって、コントローラ（又は制御機能）をホスト内に組み込むか、取り外し可能なメモリシステム内に実装することが可能である。
【００３１】
図４のいくつかの構成要素を組み合わせることができる実施形態もある。様々な設計において、図４中のメモリセルアレイ３０２以外の一又は複数の構成要素は、制御回路として考慮することができる。
【００３２】
図５には、メモリセルアレイ３０２の構造の一例が示されている。一例として、１０２４個のブロックに区分されたＮＡＮＤフラッシュＥＥＰＲＯＭについて説明する。各ブロックに記憶されたデータが同時に消去される。一実施形態では、ブロックは、同時に消去されるセルの最小単位である。この場合、各ブロック内には、偶数列群と奇数列群に分割された８５１２個の列群が存在する。ビットラインも偶数ビットライン（ＢＬｅ）と奇数ビットライン（ＢＬｏ）に分割されている。図５は、直列に接続されてＮＡＮＤストリングを形成している４つのメモリセルを示す。４つのセルは、それぞれのＮＡＮＤストリング内に内蔵されて示されているが、４つ以上又は４つ未満のメモリセルを利用することができる。ＮＡＮＤストリングの一方のターミナルは、第１選択トランジスタＳＧＤを介して対応するビットラインに接続しており、他方のターミナルは、第２選択トランジスタＳＧＳを介してｃソースに接続している。
【００３３】
読み出し及びプログラミングオペレーションの一実施形態の間に、４２５６個のメモリセルが同時に選択される。選択されたメモリセルは、同一のワードラインと、同タイプのビットライン（例えば偶数ビットライン又は奇数ビットライン）を有する。したがって、５３２バイトのデータを同時に読み出し又はプログラムすることができる。同時に読み出し又はプログラムできる５３２バイトのデータによって論理ページが形成される。したがって、１つのブロックは、少なくとも８個の論理ページ（それぞれが奇数と偶数のページを備える４つのワードライン）を記憶することができる。各メモリセルが２ビットのデータを記憶し（例えばマルチレベルセル）、これら２ビットのそれぞれが異なるページに記憶されている場合、１つのブロックが１６個の論理ページを記憶する。本発明では、これ以外のサイズのブロック及びページを利用することもできる。なお、本発明の実現には、図４及び図５に示した構造以外の構造を利用することもできる。
【００３４】
メモリセルは、ｐウェルを消去電圧まで上昇させて（例えば２０ボルト）、選択されたブロックのワードラインをグラウンドすることによって消去される。ソースとビットラインは浮遊している。消去はメモリアレイ全体、別個のブロック、又は別の単位で実行することができる。電子がフローティングゲートからｐウェル領域に伝達されて、閾電圧が負になる（一実施形態の場合）。
【００３５】
読み出し及びベリファイ動作では、選択ゲート（ＳＧＤ，ＳＧＳ）と、非選択ワードライン（例えばＷＬ０，ＷＬ２，ＷＬ３）が読み出しパス電圧（例えば４．５ボルト）まで上昇され、トランジスタがこの電圧によってパスゲートとして動作する。選択ワードライン（例えばＷＬ１）が、読み出し動作及びベリファイ動作のそれぞれのレベルの電圧に接続されることで、メモリセルの閾電圧がこのレベルを上回るか又は下回るかが決定される。例えば、２レベルのメモリセルを読み出すオペレーションでは、選択ワードラインＷＬ１をグラウンドすることで、閾電圧が０Ｖよりも高いかどうかを検出することができる。２レベルのメモリセルのベリファイオペレーションでは、選択ワードラインＷＬ１を例えば０．８Ｖに接続することで、閾電圧が少なくとも０．８Ｖに達したかどうかをベリファイすることができる。ソースとｐウェルはゼロボルトである。選択ビットライン（ＢＬｅ）は、例えば０．７Ｖのレベルにプレチャージされる。閾電圧がワードラインの読み出し又はベリファイレベルよりも高い場合は、非導通メモリセルになり、セルに関連したビットライン（ＢＬｅ）のポテンシャルレベル（例えばセル３３０のＢＬｅ１）が高レベルを維持する。閾電圧が読み出し又はベリファイレベルよりも低い場合は、導通メモリセルになり、接続されたビットライン（ＢＬｅ）のポテンシャルレベルが、例えば０．５Ｖ未満の低レベルに低下する。このようにして、メモリセルの状態がビットラインに接続されている電圧コンパレータセンス増幅器によって検出される。
【００３６】
上述した消去、読み出し、及びベリファイオペレーションは、周知の技術に従って実施される。そのために、説明した詳細の多くは当業者によって変更されることが可能である。上記した以外の読み出し及びベリファイ技術を利用することもできる。
【００３７】
図６は、２ビットのデータ（例えば４つのデータ状態）を記憶するメモリセルのための閾電圧の分布を示す。一実施形態では、分布４６０は、消去状態にある（例えば「１１」を記憶している）セルの閾電圧の分布を示す。この閾電圧は負の閾電圧レベルにある。分布４６２は、「１０」を記憶しており、正の閾電圧レベルを有するセルの閾電圧の分布を示す。分布４６４は、「００」を記憶しているメモリセルの閾電圧の分布を示す。分布４６６は、「０１」を記憶しているセルの閾電圧の分布を示す。別の実施形態では、それぞれの分布を、上述したものとは異なるデータ状態に関連させることができる。いくつかの実施形態では（上記で例示したように）、これらのデータ値（例えば論理状態）は、グレーコードアサインメント（gray code assignment）を利用して、閾範囲に割り当てられる。フローティングゲートの閾電圧が誤ってその近くのフィジカル状態にシフトしても、１論理ビットしか影響を受けない。メモリセルにプログラムされるデータとセルの閾電圧範囲の間の特定の関係は、メモリセルに採用されるデータエンコーディングスキーム（data encoding scheme）に依存する。例えば、米国特許第６２２２７６２号と、２００３年６月１３日出願の米国特許出願第１０／４６１２４４号の「Tracking Cells For A Memory System」は、マルチ状態フラッシュメモリセルのための様々なデータエンコーディングスキームを開示している。これらの全体は、本願明細書に組み込まれる。さらに、本発明は、２ビット以上のデータを記憶するメモリセルに適用することもできる。
【００３８】
１つの実施例においては、消去状態（例えば分布４６０）にあるメモリセルをあらゆるプログラム状態（分布４６２、４６４、４６６）にプログラムすることができる。別の実施形態では、消去状態にあるメモリセルが２ステップ方法でプログラムされる。この２ステップ方法では、１つのデータ状態に記憶されたそれぞれのビットが異なる論理ページに対応している。即ち、１つのメモリセルに記憶されているそれぞれのビットは、下方論理ページと上方論理ページに関連している異なる論理ページアドレスを設けている。例えば、状態「１０」では、下方論理ページについて「０」が記憶され、上方論理ページについて「１」が記憶される。第１プログラミングステップでは、セルの閾電圧レベルが、下方論理ページにプログラミングされるべきビットに従って設定される。このビットが論理「１」であれば、初期に消去された結果として適切な状態にあるので、閾電圧は変化しない。しかしながら、ビットが論理「０」にプログラムされるものである場合には、セルの閾電圧が閾電圧分布４６２内に達するように上昇する。
【００３９】
第２プログラミングステップでは、メモリセルの閾電圧レベルが、上方論理ページ内にプログラムされるビットに従って設定される。上方論理ページビットが論理「１」となるべきものである場合、このセルは閾電圧分布４６０又は４６２のいずれかの状態にあるため、これ以上のプログラミングは実行されない。これらの閾電圧分布の両方は、上方論理ページビット「１」を含んでいる。上方論理ページビットが論理「０」となるべきものであり、第１ステップを実施してもこのセルが閾範囲４６０の消去状態にある場合には、プログラミング工程の第２ステップにおいて、閾電圧を閾分布４６６内に達するべく上昇させる。上方論理ページビットが論理「０」となるべきものであり、第１プログラミングステップの結果、セルが閾分布４６２の状態にプログラムされた場合には、プログラミング工程の第２ステップにおいて、閾電圧を閾電圧分布４６４内に達するべく上昇させる。この２ステップ方式は、マルチ状態メモリをプログラミングする方法の一例である。これ以外の方法、例えば１ステップ工程、２ステップ以上の工程を含む方法を利用することもできる。図６には、４つの状態（２ビット）が示されている。しかしながら、本発明は、これ以外にも、８つの状態、１６個の状態、３２個の状態、その他の数を含むマルチ状態構造に適用することが可能である。
【００４０】
オールトンネリング（all tunneling）ベースＥＥＰＲＯＭ又はフラッシュメモリ装置をプログラミングする場合、一般的に、制御ゲートにプログラム電圧が印加され、ビットラインがグラウンドされる。チャネルからの電子がフローティングゲート内に注入される。フローティングゲート内に電子が蓄積すると、フローティングゲートは負電荷となり、メモリセルの閾電圧が上述した閾電圧分布のいずれかにまで上昇する。一般的に、制御ゲートに付加されるプログラム電圧は、パルス群として付加される。一実施形態では、このパルスの大きさが、それぞれの連続的なパルスによって、所定のステップサイズ（例えば０．４ｖ、０．２ｖ、その他）だけ上昇する。図７は、フラッシュメモリセルの制御ゲート（場合によってはステアリングゲート）に付加されるプログラム電圧信号Ｖｐｇｍを示している。プログラム電圧信号Ｖｐｇｍは、時間と共に大きさが増加するパルス群を含んでいる。
【００４１】
プログラムパルス間の期間内に、ベリファイ動作が実行される。即ち、セル群のそれぞれのセルのパラレルにプログラミングされているプログラミングレベルが、連続するプログラミングパルスの間に読み出され、プログラミングされているベリファイレベルと等しいのか、又は、これよりも大きいのかが決定される。マルチ状態フラッシュメモリセルのアレイについて、メモリセル群が各状態のベリフィケーションステップを実行し、セルがそのデータに関連したベリファイレベルに達しているのかどうかを決定する。例えば、データを４つの状態で記憶できるマルチ状態メモリセルは、３つの比較点についてベリファイ動作を実行する必要があるかもしれない。図８は、３つのプログラミングパルス１０ａ、１０ｂ、１０ｃを示す（これらは図７にも示されている）。プログラミングパルスの間には、３つのベリファイ動作を実行するための３つのベリファイパルスが設けられている。システムは、これら３つのベリファイ動作に基づいて、メモリセルが対応するデータ状態ベリファイレベルに到達しているのか否かを決定することができる。このベリファイレベルのうちの１つは、０ボルトにあることを述べておく。
【００４２】
図９は、雑／ファインプログラミング工程を利用したプログラミング工程の一実施形態を説明するためのフローチャートである。ステップ５０２では、メモリのプログラムされるべき部分が選択される。１つの実施例においては、これは、メモリ構造に適した一又は複数の書き込みユニットであってよい。書き込みユニットの一例は、ページと呼ばれる。別のユニット及び／又は構造を利用してもよい。ステップ５０４では、プレプログラミング（又はプレ消去）工程が利用される。アドレス先のメモリセルに非データ依存プログラミングが付与され、記憶要素を一様にし、後の消去における開始点をより一様にする。ステップ５０６では、このタイプの記憶要素を適宜に利用して、消去工程が実行される。スマート消去工程の一例は、米国特許第５０９５３４４号に開示されている。この内容の全体は、本発明の明細書に組み込まれる。ステップ５０８は、実際の書き込みフェーズのためのより一様な開始範囲内に、消去されたメモリセルの閾電圧を供給するように設計されたソフトプログラミング工程を含む。一実施形態では、消去中に（又はソフトプログラミング中に）メモリセルのいずれかがベリファイに失敗した場合には、このメモリセルを論理アドレス空間からマップアウトすることができる。この時点では、メモリはデータコンディショニング・プログラミングフェーズの準備ができている。
【００４３】
ステップ５１０では、プログラム電圧（Ｖｐｇｍ）が初期値に設定される。例えば、いくつかの実施形態では、図７の形状をした階段波を使用している。ステップ５１０には初期パルスの設定が含まれている。さらにステップ５１０でも、プログラムカウンタ（ＰＣ）がゼロに初期化され、（一般的に）プログラミング動作及び関連するレジスタが雑モードに設定される。ステップ５２０では、ＮＡＮＤストリングのブースティングが実行され、プログラムパルスが付加される。ステップ５２０の詳細については、後で述べる。ステップ５２２で、ベリフィケーション工程が実行される。要求に応じて、雑プログラミングについて、ゼロ、１つ、又は複数のメモリセルがベリファイされ、ファインプログラミングについて、ゼロ、１つ、又は複数のメモリセルがベリファイされる。例えば、バイナリメモリセル（例えば２つの状態）では、いくつかのメモリセルが雑プログラミングのためにベリファイされるのと同時に、別のメモリセルがファインプログラミングのためにベリファイされる。マルチ状態メモリセルでは、特定状態の雑プログラミングについていくつかのメモリセルがベリファイされるのと同時に、別のメモリセルが同じ特定状態のファインプログラミングについてベリファイされる。マルチ状態メモリセルに関連した別の実施形態では、異なるメモリセルを異なる状態に同時にプログラム／ベリファイすることができる。これらの状態では、いくつかのメモリセルが雑プログラミングのためにベリファイされるのと同時に、他のメモリセルがファインプログラミングのためにベリファイされる。さらにステップ５２２では、システムが、プログラミングの雑モードからファインモードへの切り替えが必要なのはどのメモリセルであるのかを決定する。ステップ５２２のさらなる詳細は後で説明する。
【００４４】
ステップ５２４では、全てのメモリセルの閾電圧が、最終的な又は目標とするそれぞれの閾電圧を満たしたことを、全てのメモリセルにおいてベリファイされたのか否かが決定される。ベリファイされた場合、ステップ５２６において、プログラミング工程が完了する（状態＝パス）。全てのメモリセルがベリファイされていない場合、プログラムカウンタ（ＰＣ）が２０未満であるのか否かが決定される。プログラムカウンタ（ＰＣ）が２０未満でない場合（ステップ５２８）、そのプログラム工程は失敗である（ステップ５３０）。プログラムカウンタ（ＰＣ）が２０未満である場合、ステップ５３２において、プログラムカウンタ（ＰＣ）が１だけ増加され、プログラム電圧が次のパルスに上昇される。ステップ５３２の後に再びステップ５２０に戻り、メモリセルに次のプログラムパルスが付加される。
【００４５】
図１０は、プログラミングモードをベリファイ及び決定する工程（図９のステップ５２２）の一実施形態を、より詳細に説明するフローチャートである。図１０のステップ５６２では、システムが、特定のフラッシュメモリセルが雑プログラミングモード又はファインプログラミングモードのどちらにあるのかを決定するために、レジスタ（又は別の記憶装置）をチェックする。メモリセルが雑フェーズにある場合（ステップ５６４）、ステップ５６６において雑ベリフィケーションが実行される。例えば、図６を見ると、メモリセルの閾電圧が閾電圧レベルＶＣと比較される。閾電圧レベルＶＣは、プログラミング動作の最終的な又は目標である閾電圧レベルＶＦよりも少し低い。図６では閾電圧分布４６２のＶＣとＶＦを示しているが、多くの実施形態において、メモリセルをプログラムすることができるそれぞれの閾電圧分布にＶＣとＶＦが設けられている点に留意するべきである。メモリセルの閾電圧がその目標の状態についてＶＣにあるか、又は、これを超えていれば、メモリセルは雑ベリフィケーションテストにパスしている（ステップ５６８）。メモリセルの閾電圧がその目標の状態についてＶＣ未満の場合、メモリセルはベリフィケーションテストにパスしていない。メモリセルが雑ベリフィケーションテストにパスしていない場合（ステップ５６８を参照）、メモリセルは雑プログラミングモードに留まる（ステップ５７０）。メモリセルが雑ベリフィケーションテストにパスした場合、メモリセルはプログラミングモードをファイプログラミングモードに変更する（ステップ５７２）。
【００４６】
ステップ５６４で、メモリセルがファインプログラミングモードにあると決定された場合、ステップ５８０でファインベリフィケーション工程が実行される。例えば、図６を見ると、メモリセルの閾電圧を最終目標閾電圧ＶＦと比較することができる。メモリセルの閾電圧が目標の電圧ＶＦにあるか、又は、これを超える場合（ステップ５８２）、ファインベリフィケーションテストにパスしており、メモリセルにおいてはそのプログラミングセッション中のこれ以降のプログラミングが禁止されるか終了される（ステップ５８４）。メモリセルのそれ以上のプログラミングを禁止する一実施形態では、プログラミング動作中にビットラインをＶｄｄにまで上昇させる。メモリセルを禁止又はロックアウトする別の手段を利用することもできる。ステップ５８２において、ベリフィケーションテストにパスしなかったと決定された場合（例えば、メモリセルの閾電圧が目標の電圧ＶＦ未満である場合）、メモリセルに対してそれ以上のプログラミングが禁止されることはない（ステップ５８６）。
【００４７】
図１０の工程が個々のセルに実行される。多くの実施形態では、複数のメモリセルが同時にプログラムされる。したがって、図１０の工程は複数のメモリセルに同時に実行される。このようなプログラミングの間において、メモリセルのいくつかが雑プログラミング工程にある一方において、別のセルはファインプログラミング工程にあり、さらに別のメモリセルはプログラミングが禁止されている。
【００４８】
上述したように、一実施形態においてプログラミングが実行されている間に、１つ置きのビットラインがプログラミングのために選択される。例えば、プログラミングのために全ての偶数ビットラインを選択し、全ての奇数ラインをプログラミングのために選択しないことが可能である。別の実施形態では、プログラミングのために異なるグループのビットラインを選択することが可能である。ビットラインの選択は、特定のプログラミング動作においてどのＮＡＮＤストリングをプログラムするのかを選ぶための１つの手段である。任意のプログラミング動作について、ＮＡＮＤストリング上のメモリセルの１つが選択される。例えば、図５において、プログラミングのためにメモリセル３３０が選択されているものと仮定する。これにより、プログラミングのために偶数ビットラインが選択され、又は、ワードラインＷＬ１が選択される。図５からわかるように、ＷＬ１は、メモリセル３３０とメモリセル３３２の両方に接続されている。メモリセル３３０はプログラミングのために選択されており、メモリセル３３２は選択されていないが、この接続によって、ワードラインプログラムパルスがメモリセル３３０とメモリセル３３２の両方に供給される。ワードライン上の１つのセルを、同じワードラインに接続されている他の全てのセルをプログラムせずにプログラムすることが望ましい場合に、問題が生じることが技術上知られている。１つのワードラインに接続されている全てのセルにプログラム電圧が印加されるため、選択されていないセル（例えばメモリセル３３２）が誤ってプログラムされてしまう（又は一部プログラムされてしまう）可能性がある。選択されていないセルの同時プログラミングは「プログラムディスターブ」と呼ばれる。
【００４９】
いくつかの技術を採用して、プログラムディスターブを防止することができる。「セルフブースティング」として知られている１つの方法では、プログラミング中に、非選択ビットラインが禁止電圧（例えばＶｄｄ）にまで上昇され、非選択ワードラインにパス電圧（例えば９ボルト）が付加される。これにより、その下にあるチャネルと相互に接続される拡散領域（開始状態をプレチャージされた状態に初期化することができる。この状態は例えば１．５ボルトである）を、約７．５ボルトの電位にカップリングさせる。その結果、プログラミング制御ゲートに対応したメモリセルのチャネル（その電位は、約２０ボルトにまで最大で上昇させることができる）が、この７．５ボルトレベルにまで上昇し、トンネリングオキシド（tunneling oxide）にわたって電圧が低下し、プログラミングディスターブが禁止される。
【００５０】
より詳細には、ＶＧ−ＶＳ＞ＶＴＨである場合、ＮＡＮＤストリング内のトランジスタがターンオンされることを考慮する。この場合、ＶＧはゲートに印加された電圧であり、ＶＳはソースにおける電圧であり、ＶＴＨはトランジスタの閾電圧である。ＮＡＮＤトランジスタは対称的であり、どちら側もソース又はドレインとなり得る。一般的に、下方電圧を有する側はソースと呼ばれる。そのために、電圧が変化すると、どちら側がソースでどちら側がドレインであるのかが変化する。ＶＧ−ＶＳがＶＴＨより小さい場合には、装置が停止する（ソースとドレインの間に導通はない）。所定のＶＧによって、ＶＳとＶＤの両方が十分に増加してＶＧ−ＶＳ＜ＶＴＨ（ＶＤ≧ＶＳである点に留意）となった場合にも装置が停止する。
【００５１】
ＮＡＮＤストリングのプログラミングを禁止するためには、非選択ビットラインがＶｄｄにまで上昇される。一実施形態では、ドレイン側の選択ゲート（図２のＳＧＤ）の選択制御ゲートもＶｄｄに設定される。選択ゲートが、そのＮＡＮＤストリングに接続されている下方にバイアスされたソースに導通する。次に、非選択ビットラインに対応する非選択ＮＡＮＤストリングが、これに対応する非選択ワードラインに印加されたパス電圧によってブーストされ、これによってＮＡＮＤストリング内の電圧が静電的（capacitively）に上昇される。ＮＡＮＤストリング内の電圧がＶＧ−ＶＴＨに達すると、選択ゲートが停止し、ＮＡＮＤストリングがビットラインから隔離する。これにより、ＮＡＮＤストリングにカップルされている電圧がビットライン内に放電することはない。その後、ＮＡＮＤストリング上の電圧がパス電圧とともに、ＶＧより高くなるように上昇を続ける。しかしながら、ビットラインバイアスはＶＧ−ＶＴＨを下回ることはなく、選択ゲートは停止したままであるために、ＮＡＮＤストリング内の電圧が約７．５ボルトにまで上昇を続けることができる。チャネル内の電圧が７．５ボルトに達しても、選択ワードラインのトンネル誘電体にわたる電圧差は、電子がフローティングゲート内にトンネリングできるほど大きくない。これ以外のプログラムディスターブを低減する方法は、局所的なセルフブースティングと消去範囲セルフブースティングを含む。これらのブースティングアプローチの多くは、２００３年３月５日出願の米国特許出願第１０／３７９６０８号「Self-Boosting Technique」に説明されている。この内容の全体は、本願明細書に組み込まれる。
【００５２】
図１１Ａ、図１１Ｂ、図１１Ｃは、図９のブースティング及びプログラムパルスステップ５２０を実行するための様々な実施形態を説明するためのタイミング図である。水平軸は、μ秒単位の時間に対応する。図１１Ａは、１つのプログラミングパルスを含むステップ５２０の１回の反復のために、非選択ビットライン（例えば、図５のメモリセル３３２に対応する奇数ビットライン）に対応する様々な信号の態様を示す。図１１Ａは、５〜４０μ秒の間にＶｄｄ（例えば２．５ボルト）にあるビットライン電圧ＶＢＬを示している。これにより、ＮＡＮＤストリングがこの特定のビットラインに関連することが禁止される。選択ゲート電圧ＶＳＧＤ（選択トランジスタＳＧＤの制御ゲートにおける電圧）は、５μ秒の時点で５ボルトに上昇され、１０μ秒の時点で２．５ボルト（例えばＶｄｄ）に降下され、この状態が４０μ秒の時点まで維持される。ＶＳＧＤが５ボルトにある５〜１０μ秒の間の時間が、ＮＡＮＤストリングのプレチャージ電圧を増加させるために使用される。上述したように、この例では、メモリセル３３０をプログラミングするべく選択したものと仮定する。そのため、ＷＬ１は選択されたワードラインであり、ＷＬ０、ＷＬ２、ＷＬ３は選択されていないワードラインである。非選択ワードライン上の電圧ＶＵＷＬは、その非選択ワードラインに接続されたメモリセルに対応する制御ゲート上の電圧（パス電圧と呼ばれる）に対応している。電圧ＶＵＷＬは、５μ秒の時点でプレチャージを可能にするべくＶｄｄにまで上昇され、その後に１０μ秒の時点で非選択ビットラインに対応するＮＡＮＤストリングをブーストするために約９ボルトにまで上昇される。９ボルトのパス電圧は、約３５μ秒まで非選択ワードライン上に維持される。５μ秒の時点でプレチャージを可能にするために、選択ワードライン（例えばＷＬ１）上の電圧ＶＳＷＬがＶｄｄにまで上昇される。１５μ秒の時点でプログラミングパルスが付加され、３５μ秒の時点で終了する（実線）。１つの例では、プログラミングパルスは１２〜２０ボルトの間で変えることができる。ソース側の選択ゲート（ＶＳＧＳ）の制御ゲートは、全体を通して０ボルトであり、ソース電圧ＶＳは、２．５μ秒の時点でＶｄｄにまで上昇されて４０μ秒の時点で終了する。その結果、ＮＡＮＤストリングの電圧ＶＮＡＮＤがまずプレチャージレベルになり、続いて、非選択メモリセルのプログラミングを防止するために、約７．５ボルトにまでブーストされる。
【００５３】
図１１Ｂは、雑プロミングフェーズにある選択ビットラインに関連する様々な信号の様子を説明するためのタイミング図を示す。この例では、ビットライン電圧ＶＢＬは、プログラミングを可能にするために、関連する時間の全体にわたって０ボルトにある。ドレイン側の選択ゲートトランジスタが、図１１Ａのものと同じ電圧ＶＳＧＳを受ける。これは、全てのビットラインに同じ選択ゲート電圧が印加されるためである。同様に、一実施形態では、全てのＮＡＮＤストリングが、雑プログラミング又はファインプログラミングを禁止されているのか否かに関係なく、同じ非選択ワードライン電圧ＶＵＷＬと同じ選択ワードライン電圧ＶＳＷＬを受ける。したがって、ＶＵＷＬとＶＳＷＬは、図１１Ａに示されるように、図１１Ｃと同様に図１１Ｂにおいても同じであり、ＶＳＧＤとＶＳも類似している。しかしながら、ビットライン電圧は０ボルトであるために、ブースティング電位からの電圧が、グラウンドビットラインに戻る導通によって消失し、ＮＡＮＤストリングが約０ボルトの電圧に留まる。その結果、１５μ秒の時点でプログラミングパルスが受け取られると、電子が発生し、この電子がフローティングゲート内にトンネリングされ、選択メモリセルがプログラムされる。
【００５４】
図１１Ｃは、一実施形態のファインプログラミングモードにある選択ビットラインに関連した様々な信号の様子を説明するためのタイミング図を示す。プログラミングのファイン制御を実現するために、一実施形態では、関連するそれぞれのプログラミングパルスの間に、フローティングゲート内にトンネリングされる累積電荷量を低減させる。一実施形態では、ビットライン制御を使用して実行される。ファイン制御の実現の一例では、プログラミングパルスの最初に、プログラム禁止状態で開始する。次に、プログラミングパルスの一部にわたって（例えば２０μ秒プログラミングパルスの１０μ秒）、ビットラインをそのファインプログラミングレベル（例えば０ボルト、１/２ボルト、その他のボルト）にまで低下させ、残りのプログラミングパルスについて、ビットラインをこのレベルに保持する。これにより、ＮＡＮＤストリング電圧が、約７．５ボルトからビットライン電圧に近い値（例えば、０ボルト、１/２ボルト、その他のボルト）にまで降下される。
【００５５】
プログラムパルスを禁止モードのビットラインで開始し、このビットラインをプログラムパルスの一部にわたって低下させることで、有効プログラミング時間が短縮され、プログラムパルスの効果を低減する効果が得られる。図１１Ｄは、プログラムパルス短縮の効果を示すグラフである。同図に見られるように、プログラムパルスが長いほど（例えば２０μ秒）、短いプログラムパルス（例えば１０μ秒）より閾電圧が高くなる。
【００５６】
いくつかの実施形態では、ビットラインが禁止レベルから低い値（例えば０．５ボルト、又は、ゼロボルト以外の適切な低電圧）に低減されることで、雑／ファインプログラミングのファインフェーズのためのプログラムパルスの非禁止部分の間に、ＮＡＮＤストリングの電位が０ボルトよりも高くなる。以降で説明するように、ＮＡＮＤストリングの値を０ボルトより上であって禁止レベルより下にすることによって、よりゆっくりと精密なプログラミング工程が可能になる。例えば、図１１Ｅと図１１Ｆは、チャネル（ＮＡＮＤストリング）電圧の様々な組み合わせについてプログラミング速度を低減し、プログラミング時間を低減した（即ち、プログラムパルスの部分のための禁止）場合の実験結果を曲線で示している。図１１Ｅは、雑プログラミング直後のファインプログラミングＶｔの４本の曲線を示す。これらの曲線のうち３本（チャネルが０ボルト、０．６ボルト、１ボルトにあるもの）は、２０μ秒間禁止されず、パルスステップサイズが４００ｍｖ増加するプログラミングパルスのものである。４本目の曲線は、チャネルが０．６ボルトのものであり、プログラムパルスが１０μ秒間禁止されず、パルスステップサイズの増加が４００ｍｖのものである。第１パルス（即ち一連の雑パルスの最後）では全ての曲線が同一の状態にあり、変化は第２パルス（又はオンセット・ファインプログラミングの直後）で開始していることに留意するべきである。同様に、図１１Ｆも４本の曲線を示している。そのうちの２本（チャネルが０ボルトと１．６ボルト）は、プログラムパルスが４０μ秒間禁止されず、パルスステップサイズの増加が４００ｍｖのものである。第３曲線は、チャネルが０．６ボルトであり、プログラムパルスが２０μ秒間禁止されず、パルスステップサイズの増加が４００ｍｖのものである。第４曲線は、チャネルが０．６ボルトであり、プログラムパルスが１０μ秒間禁止されず、パルスステップサイズの増加が４００ｍｖのものである。第１パルスは、各曲線の雑モードプログラミングパルスの最後を示し、ファインプログラミングに関連する変化は第２パルスから開始していることに留意するべきである。
【００５７】
上述の説明によれば、図１１Ｃのタイミング図は、５μ秒の時点でＶｄｄにまで上昇され、そのＶｄｄがプログラミングパルスの中間の２５μ秒まで維持されているビットライン電圧を示している。別の実施形態では、パルスの中間以外の時間（例えば、パルスの１/４、パルスの３/４、その他）に、ビットラインをＶｄｄから０ボルトにまで降下させることができる。別の実施形態では、プログラミングパルスの中間、又は、他の選択された時間に、ビットラインをＶｄｄから０ｖ以外（例えば０．６ｖ）の低電圧に降下させることができる。選択ゲートにおける電圧ＶＳＧＤ、非選択ワードラインにおける電圧ＶＵＷＬ、選択ワードラインにおける電圧ＶＳＷＬは、図１１Ａ、図１１Ｂに関連して上述したものと同様である。ＮＡＮＤストリング内の電圧は、まず５μ秒の時点でプレチャージされ、次に１０μ秒の時点で約７．５ボルトにまでブーストされる。ビットライン電圧がパルスの一部にわたって降下する際に、ＮＡＮＤ電圧が７．５Ｖからその対応する時間における約０Ｖ（又は他の所定の低ビットライン電圧）にまで低下する。選択されたワードラインプログラミングパルスは、１５μ秒の時点から３５μ秒の時点まで付加されることを述べておく。
【００５８】
図１２は、図９〜図１１の工程の一実施形態を実現するために使用される構成要素を示すブロック線図である。図１２は、１ビットラインの回路を示す。一実施形態では、アレイの各ビットラインにこの回路が１つ設けられている。別の実施形態では、ビットラインの対（即ち奇数／偶数の対）にこの回路が１つ設けられている。図１２は、スイッチ６００とキャパシタ６０２とに接続されたビットラインを示す。キャパシタの他端は、グラウンドのような基準電位に接続されている。キャパシタンスは、ビットライン自体のキャパシタンスからも得られる点に留意するべきである。スイッチ６００は、プレチャージ電圧回路（Ｖｐｒｅｃｈａｒｇｅ）に接続されており、センス増幅回路６１０の入力部にも接続されている。信号Ｖｒｅｆは、センス増幅回路６１０の入力部に接続されている。センス増幅回路６１０の出力部は、Ｃ／Ｆレジスタ６２０とロックアウトレジスタ６２２にデータを供給する。Ｃ／Ｆレジスタ６２０の出力部は、マルチプレクサ６３０とマルチプレクサ６０４にデータを供給する。マルチプレクサ６３０は、ストロボ信号Ｔｃ，Ｔｆを受信し、Ｃ／Ｆレジスタ６２０からのデータに基づいてこの２つの信号のうちの一方を選択する。マルチプレクサ６３０の出力は、センス増幅回路６１０に接続されており、センシング関連の時間を制御する。
【００５９】
図１２に示す構成要素のベリフィケーション動作は、ビットライン放電ベリフィケーション工程に基づいている。最初にビットラインがプレチャージされる。次に、このビットラインに取り付けられているメモリセルの制御ゲートにベリフィケーションパルスが提供される。その後、ビットラインが放電可能となる。放電速度に基づいて、メモリセルが特定の閾電圧レベルより上にあるのか下にあるのかを決定することができる。
【００６０】
図１２Ａは、時間に対するビットライン電圧（Ｖｂ１）のグラフを示す。１つの実施形態では、ビットラインは、プレチャージ状態から開始し、時間Ｔにわたって放電を続けることができる。時間Ｔにおいて、ビットラインの電圧が基準電圧Ｖｒｅｆと比較される。ビットライン電圧がＶｒｅｆよりも高い場合には、そのメモリセルはより遅い駆動能力を有し、目標の閾電圧よりも多くのプログラム容量を有する。この時間Ｔにおいてビットライン電圧がＶｒｅｆより低い場合は、メモリセルの閾電圧は目標の閾値より低い。雑／ファイン手法を利用してプログラムされているメモリセルの場合では、一実施形態において（図１２参照）、雑プログラミングに関連する放電のための１つの時間Ｔｃと、ファインプログラミングの間の放電に関連する別の時間Ｔｆとが存在するように、時間Ｔの長さを変更することができる。他の実施形態では、雑プログラミングに１つのＶｒｅｆを設け、ファインプログラミングに別のＶｒｅｆを設けることで、雑とファインの間で比較点を変更することができる。
【００６１】
図１２に示される装置の一実施形態では、Ｃ／Ｆレジスタ６２０は、特定のメモリセルが雑プログラミングモードとファインプログラミングモードのどちらにあるのかを表す１ビットレジスタ（又はラッチ）である。Ｃ／Ｆレジスタ６２０によって記憶される値がマルチプレクサ６３０に通信される。センス増幅器６１０は、マルチプレクサ６３０によって示される基準時間ストロボにおいて、ビットライン電圧を基準電圧Ｖｒｅｆと比較する回路を含む。プログラミングの間においてメモリセルが雑プログラミングモードにある場合には、マルチプレクサ６３０が、雑モードプログラミング基準時間ストロボＴｃをセンス増幅器６１０に送信する。雑モードの間において符号Ｔｃで表される時間内にビットラインが固定の基準値Ｖｒｅｆ以下に放電しなかったために、雑ベリフィケーション工程が無事にパスしたことをセンス増幅回路６１０が決定した場合、センス増幅器６１０が、Ｃ／Ｆレジスタ６２０を雑状態Ｃからファイン状態Ｆに切り替える。メモリセルがファインプログラミングモードにある場合、マルチプレクサ６３０がファインモードプログラミング基準時間ストロボＴｆをセンス増幅器６１０に送信する。ファインモードの間において符合Ｔｆで表される時間内にビットラインが固定の基準値Ｖｒｅｆ以下に放電しなかったために、ファインベリフィケーション工程が無事にパスしたことをセンス増幅回路６１０が決定した場合、センス増幅器６１０は、メモリセルがさらなるプログラミングからロックアウト（禁止）されるべきであることをロックアウトレジスタ６２２に示させる。
【００６２】
さらに、スイッチ６００は、マルチプレクサ６０４から入力を受信する。マルチプレクサ６０４は、選択可能な２つの入力部、即ち、０ボルト（プログラミングを可能にする）とＶｄｄ（プログラミングを禁止する）とを備えている。別の実施形態では、異なる電圧を使用したり、２つ以上の電圧を使用したりすることができる（即ち、２つ以上の入力部を装備したマルチプレクサ）。マルチプレクサ６０４は、選択論理回路６３６によって制御される。選択論理回路６３６は、Ｃ／Ｆレジスタ６２０、ロックアウトレジスタ６２２、タイマ（又はカウンタ）６３４からデータを受信する。Ｃ／Ｆレジスタ６２０は、メモリセルが雑モード又はファインモードのいずれにあるのかを示す。ロックアウトレジスタ６６２は、メモリセルがさらなるプログラミングからロックアウト（禁止）されるべきであるかの否かを示す。一実施形態では、タイマ６３４は、プログラムパルスの最初にカウントダウンを開始するプログラム可能タイマである。タイマ６３４は、プログラムパルスの中間にゼロに到達するように（さらにその出力部にその旨を示すように）プログラムされている。別の実施形態では、タイマがパルスの間以外の期間にも、時々レポートを報告する。
【００６３】
選択論理回路６３６は、メモリセルをさらなるプログラミングからロックアウトすべき際に、マルチプレクサ６０４からビットラインにＶｄｄを印加させる。選択論理回路６３６は、メモリセルが雑モードでプログラムされている間に、マルチプレクサ６０４からビットラインに０ボルトを印加させる。選択論理回路６３６は、メモリセルがファインモードでプログラムされている間にマルチプレクサ６０４からＶｄｄをビットラインに印加させる。選択論理回路６３６は、（タイマ６３４の管理下にある）マルチプレクサ６０４に送信される選択を変更して、プログラムパルス全体の一部分（例えば中間）でマルチプレクサ６０４の出力部がＶｄｄから０ボルトに変更するようにすることで、ビットライン電圧を変更させる。
【００６４】
多数のメモリセルが一斉にパラレルにプログラムされるいくつかの（全てではない）実施形態では、プログラムパルス中にビットライン電圧を変更することで、著しい電圧ノイズをその上にある制御ゲートに非常に短い期間だけカップルさせる。これは、（場合によっては）プログラム制御に潜在的に衝撃を与え、又は、妨害への脆弱性を増加させる。これがどの程度の制限になるのかは、特定の設計の詳細によって異なる。この問題に対応する１つの方法では、ビットラインを低下させる直前に、プログラム電圧ＶＳＷＬを２．５ボルトにまで降下させ、次に、ビットラインを低下させた後でプログラム電圧を再び最高値にまで上昇させる。例えば、図１１Ａ〜図１１Ｃの破線５９０は、２３μ秒の時点でプログラム電圧ＶＳＷＬを２．５ボルトにまで降下させ、その後、２７μ秒の時点で（ビットライン低下後）プログラム電圧を再び最高値に戻して上昇させる工程を示す。
【００６５】
本発明の別の実施形態は、ＮＡＮＤストリング内の電圧レベルの制御に関連している。上述の２つの限定された状況（ＮＡＮＤストリングの完全ブースティングと、０ボルト又はその付近にあるＮＡＮＤストリングのプログラミング状況）は、可能な電圧状況の連続であり、その値はＮＡＮＤストリング内で維持される電圧（例えば、０ボルトから７．５ボルトまでの範囲）により規定されることができる。所定の制御ゲート電圧状態では、ＮＡＮＤストリング内で電圧を上昇させるとプログラミングが遅くなる。例えば、図１３Ａは、異なるビットライン電圧のための雑／ファインプログラミングについて、雑フェーズ直後におけるファインフェーズ中に付加されるプログラムパルスの閾電圧の変化を示すグラフである。上昇したビットライン電圧（通常は雑プログラミング中の０ボルト）がＮＡＮＤストリング内を通ると、チャネル電位が上昇し、これにより、プログラムされたセルのトンネルオキサイド（tunnel oxide）にわたって電圧が降下する。そのため、メモリセルのプログラミングが遅くなる。図１３Ａは、プログラムパルスに０．４ｍｖのステップサイズを有する制御ゲート階段の場合において（例えば図７を参照）、遅くなったプログラム速度を示す。図１３Ａは、０ボルト、０．４ボルト、０．８ボルト、１．２ボルト、１．６ボルト、２ボルトに等しいビットライン電圧（Ｖｂ１）について、雑／ファインプログラミングの雑フェーズ直後のファインフェーズ（Ｖｂ１は０ボルトに等しい）におけるプログラミングパルス数に対する閾電圧の累積的な増加を曲線で示している。例えば、ビットライン電圧を１．２ボルトにまで上昇させるとプログラミング速度が遅くなる。ビットライン電圧が０ボルトに維持されるのであればファインモード中の１つのパルスの後にメモリセルが閾電圧を３５９ｍｖに上昇させるところ、ビットライン電圧が１．２ボルトの場合は、３４ｍｖに上昇させる。即ち、１０倍減速する。
【００６６】
制御ゲートカップリングを介してＮＡＮＤストリング上の任意の電圧レベル（即ち、潜在的な完全ブーストされた７．５ボルト未満）を実現するためには、（一実施形態において）ＮＡＮＤストリングが直面する純カップリング量を制御する必要がある。これを実施するための１つの例証的な方法では、カップルされた電荷の一部分を放電する。これを実施する方法を説明するためには（例証の目的で）、制御ゲートのブースティング波形を階段形状によって視覚化することが有効である。実際の実現は、設計による必要性に応じて、この概念的なアプローチとは異なっていてよい。例えば、９ボルトのブースト波形は、各段につき１ボルトを有し、対応する９個のタイムビンを設けた９段の階段として形成することができる。制御ゲート上で１ボルト上昇する毎にＮＡＮＤストリング電圧が約０．８ボルト上昇できると仮定すると、関連するビットライン電圧がその禁止レベル（例えばＶｄｄ）に維持される限り、ＮＡＮＤストリングもこれと類似の階段形状を得る（１段毎に０．８ボルト上昇する）。しかしながら、ビットライン電圧が０ボルトに維持された場合、電圧ブーストは発生しない（即ちＮＡＮＤストリングは０ボルトに維持される）。部分的なブーストを実現するには、ブースト電圧階段のどこかの地点において、ビットライン電圧を０ボルトレベルから禁止レベルにまで上昇させることができる。第１段目以降でこのように上昇された場合には、制御ゲートとの間に８ボルトのカップリングが起こるか、あるいは約６．４ボルトにまでブーストされる。同様に、第２段目以降に上昇された場合には、ＮＡＮＤストリングが約５．６ボルト及び他のボルト数にまで上昇され、０．８ボルト、１．６ボルト、２．４ボルト、・・・完全ブースト電位のカップルされた電圧レベルを提供する。禁止状態が階段の最後の後で発生するようなタイミングである場合には、０ボルト電位も可能であることに留意するべきである。
【００６７】
このアプローチを、雑／ファインプログラミング工程のファインプログラミングフェーズに適用することができる。十分なファインプログラミングを得るために、（一実施形態では）ＮＡＮＤストリング内に（一実施形態では）約１．６ボルトを必要とする。制御ゲートブースティング電圧は、２つのステップによって構成されている。第１ステップでは、ブースティング電圧を７ボルトに上昇させる。第２ステップでは、ブースト電圧を７ボルトから９ボルトに上昇させる。雑プログラミングの場合、両ステップにわたってビットラインがグラウンドに維持される。プログラムを禁止するために、両ステップにわたってビットラインが禁止電圧に維持される。しかしながら、メモリセルがファインプログラミングフェーズに入る場合には、ブースティングの第１ステップの間に、対応するビットラインがグラウンドに保持され、第２ステップでこのビットラインが禁止レベルにまで上昇される。残りの２ボルトの電圧をブーストした結果、１．６ｖ電圧レベルがＮＡＮＤストリングにカップルされた。
【００６８】
１つの問題は、制限されたリザーバＮＡＮＤストリング（例えば、８、１６、３２、その他の個数のセルで構成されている）が、有効なトンネリングを上述の状態にてサポートすることができるかどうかである。約０．８ｆＦの総静電容量を得るように計画された１６個のセルＮＡＮＤストリングを例証の目的で利用する。この静電容量の２つの主要構成要素は、（１）バイパスされている１５個のＮＡＮＤセルからのゲート静電容量を制御するチャネル（例えば、トンネルオキサイド静電容量を介したフローティングゲートまでのチャネルの群及び組み合わせ、又、セル毎に約０．０５ｆＦと想定されるインターポリＯＮＯ静電容量を介した制御ゲートまでのフローティングゲート）、基板／ウェルまでの累積ＮＡＮＤストリング接合とチャネル静電容量である。シングルフローティングゲートの静電容量は、約０．２ｆＦと想定される。セルの閾電圧をシングルプログラミングパルスによって（例えばファインプログラミングのために）約１００ｍｖシフトする目的のために、制御ゲートカップル比を６０％と仮定した場合、ＮＡＮＤストリング陰極からトンネリングされた電荷のために負圧６０ｍｖの増加に変換される。ＮＡＮＤストリング静電容量とフローティングゲート静電容量の比率を４：１とした場合、ＮＡＮＤストリング電位における６０／４＝１５ｍｖの増加に変換される。カソード電位の増加がトンネリング電流を低減させるが、このような比較的小さい増加によって、プログラミングがこれに比例する小さい衝撃を受ける。
【００６９】
プログラミング制御ゲートの静電容量カップリング（約２０ボルトにまで上昇できる）からＮＡＮＤストリングまでは、より大きな衝撃を受ける。約６．２５％（約０．０５ｆＦ÷０．８ｆＦ）のカップリングを想定した場合、２０ボルトの制御ゲートスイング（例えば０ボルトより開始する）がＮＡＮＤストリングをフルの１．２Ｖで静電的に上昇させると、トンネリング電流を低減するためのより大きな衝撃が得られる。カップルの大きさを低減するには電圧スイングを減少させる必要がある。これを達成するためには、プログラミング制御ゲートをなんらかの中間電圧から開始させるようにする。これを実施するための１つのアプローチでは、ブースティングフェーズの間に、選択制御ゲート（又はその一部）が非選択制御ゲートの波形を流れることで、追加電圧増加量を低減させ、２０ボルトの電圧レベルを得る。いずれの場合にも、選択制御ゲート（その全部又は一部）を初期ブースティングに参加させ、ビットラインから、指定されたメモリセルを通りＮＡＮＤストリングのリマインダ（ソース側）まで延びる通信パスを確保することが有益である。
【００７０】
データパターン感度の問題は、ＮＡＮＤストリング全体にわたって通信できる問題に関連する。特に、プログラムされた目標のセルとソース側のセルとの間でセル同士の通信を確保する必要がある。これらのセルが既にプログラムされている可能性があるためである。通信とは、どのブースティング電位がＮＡＮＤストリングの目標にされていようとも、このＮＡＮＤストリングに伴う全てのメモリセルは、（一実施形態では）データパターンに関係なく値をサポートすることに関与しなくてはならないことを意味する。どのメモリセルにも許容される最大閾電圧が存在するために、ビットラインがグラウンドから禁止電位までされる際に、ブースティング制御ゲートが少なくともこの最大閾電圧（さらにガード禁止のためのいくらかの追加）のフロアレベルに達する。これにより、ＮＡＮＤストリング内の全てのバイパスメモリセルに対して、そのデータパターンに関係なく、同量のチャネルブースティングが確実に実行される。閾電圧フロアが約４．２５ボルトであり、最大制御ゲートブースティングレベルが９ボルトであると仮定すると、１つの電位ブースティングについて約４．７５ボルトとなり、雑／ファインプログラミングに必要な量を十分に上回る。
【００７１】
図１３Ｂは、雑／ファインプログラミングのファインフェーズ中に印加された異なるブースティング電圧について、プログラムパルスのための閾電圧の変化を示すグラフである。図１３Ｂに示すデータは、ＮＡＮＤストリングの電圧を増加させるためにブースティング電位を使用するという考えを、ファイン制御プログラミングに利用できることを裏付けるものである。例えば、図１３Ｂは６本の曲線を示しており、これらは、雑／ファインプログラミングの雑プログラミング直後のファインモードにおけるパルスの閾電圧の変化を表す。つまり、パルス番号１は、雑モードに続くファインモードの第１パルスである。６本の曲線のそれぞれは、プログラムパルスを供給する前のＮＡＮＤストリングの異なるブースティング電圧に対応している。データポイントが示されていない第１曲線は、プログラムパルスを供給する前のＮＡＮＤストリングの０ボルトのブースティング電圧に対応している。第２曲線は、プログラムパルスを供給する前のＮＡＮＤストリングの０．５ボルトのブースティング電圧に対応している。第３曲線は、プログラムパルスを供給する前のＮＡＮＤストリングの１．０ボルトのブースティング電圧に対応している。第４曲線は、プログラムを供給する前のＮＡＮＤストリングの１．５ボルトのブースティング電圧に対応している。第５曲線は、プログラムパルスを供給する前のＮＡＮＤストリングの２．０ボルトのブースティング電圧に対応している。第６曲線は、プログラムパルスを供給する前のＮＡＮＤストリングの２．５ボルトのブースティング電圧に対応している。この図からわかるように、ＮＡＮＤストリングのブースティング電位を増加することによってプログラミングが遅くなる。例えば、ファインモードにおける２つのパルス後に、１ボルトのブースティング電位が供給されたメモリセルの閾電圧がファインモード中に３８５ｍｖ上昇する一方で、２．５ボルトのブースティング電位が供給されたメモリセルの閾電圧はファインモード中に３１ｍｖ上昇する。図１３Ｂの動作の場合、選択ワードラインはブースティングフェーズ中に０ボルトに維持されたものであり、パスワードラインのブースティング電圧レベルにまで上昇されたものではない点に留意するべきである。
【００７２】
図１４Ａ、図１４Ｂ、図１４Ｃは、上述したように、チャネル／ＮＡＮＤストリングを部分的にブースティングすることによって、非揮発性メモリセルをブースティング及びプログラミングする実施形態（図９のステップ５２０）を示すタイミング図である。特に、図１４Ａは、ファインプログラミングモードをプログラミング及び経験するように選択されたＮＡＮＤストリングのための様々な信号の様子を示す。選択トランジスタの制御ゲートにおける電圧ＶＳＧＤは、要求があれば、全ＮＡＮＤストリングプレチャージを可能にするために、５μ秒の時点でまず５ボルトにまで急上昇する。ＶＳＧＤは、禁止の実行に必要なバイアスレベルを維持するために、１０μ秒の時点においてＶｄｄにまで降下され、約４３μ秒の時点までこの状態が維持される。非選択ワードラインの電圧ＶＵＷＬは、５μ秒の時点において約７ボルトに上昇され、この状態を１５μ秒の時点まで継続してから約９ボルトにまで上昇され、約４０μ秒の時点までこの状態が続く。選択ワードラインの電圧ＶＳＷＬは、５μ秒の時点において約５ボルトにまで上昇され、プログラムパルスの開始時までこの状態に維持される。２０μ秒の時点においてプログラムパルスが開始され、約４０μ秒の時点で終了する。ソース側の選択トランジスタＶＳＧＳの制御ゲートが接地され、ソース電圧ＶＳはＶｄｄにある。第１ブースティングフェーズ中（ＶＵＷＬが０から７ボルトに上昇される際）にビットラインが接地されているために、ＮＡＮＤストリングの電圧ＶＮＡＮＤが最初は０ボルトである。第２ブースティングフェーズにおいて約１２μ秒の時点（例えばＶＵＷＬが９ボルトに上昇される直前）でビットラインがＶｄｄにまで上昇されるので、ＮＡＮＤストリングの電圧は、１５μ秒の時点において約１．６ボルトにまでブーストされる。２０μ秒の時点においてプログラムパルスが開始する際に、ＮＡＮＤストリングの電圧が若干上昇し（先述したカップリングとトンネリング機構による。上昇の大きさは、実際の電圧と静電容量によって異なるが、１ボルトであってもよい）、約４０μ秒の時点までこの状態が維持される。ＮＡＮＤストリングの少なくとも一部がブーストされることによって、プログラミングが遅くなる。即ち、フローティングゲート内にトンネリングされる電子の数が減少し、雑プログライングの時より小さい増加量で閾電圧が上昇する。
【００７３】
図１４Ｂは、雑プログラミングモードにある選択ビット及びワードライン上の信号の様子を示すタイミング図である。関連する時間フレームの間において、ビットラインは接地されている。ドレイン側の選択ゲートトランジスタ制御ゲートの電圧ＶＳＧＤ、非選択ワードラインの電圧ＶＵＷＬ、選択ワードラインの電圧ＶＳＷＬ、ソース側の選択トランジスタにおけるソース電圧及び電圧ＶＳＧＳ（プログラミングの対象である選択セルのブロックの全てのセルについて共通である）は、全て図１４Ａのものと同一である。ビットラインが接地されているために、ＮＡＮＤストリング電位がグラウンド又はその付近に維持されて、雑モードプログラミングが開始する。
【００７４】
図１４Ｃは、非選択ビットラインに対応する信号の様子を示すタイミング図である。このビットラインは、プログラミングのために選択されていないために、Ｖｄｄに維持される。ドレイン側の選択トランジスタの電圧、非選択ワードラインの電圧、選択ワードラインの電圧、ソース側の選択トランジスタの電圧、及び、ソースの電圧は、全て図１４Ａのものと同じである。ビットラインがブースティング工程の全体にわたってＶｄｄに維持されるために、ＮＡＮＤストリングは、その特定のブースティング信号に従って最大ポテンシャルレベルにまでブーストされ、プログラミングが禁止される。例えば、ＮＡＮＤストリングは、ブースティング信号の第１フェーズによって５．６ボルトにまでブーストされ、その後にブースティング信号の第２フェーズによって約７．２ボルトにまでブーストされる。２０μ秒の時点においてプログラムパルスが開始すると、ＮＡＮＤストリングの電圧が若干上昇し（カップリングによる。上昇の大きさは実際の電圧と静電容量によって異なる）、約４０μ秒の時点まで禁止状態が維持され、プログラム動作が終了する。
【００７５】
先述した実施形態の１つの局面は、第２ブーストの直前におけるＮＡＮＤストリングプレチャージ電位の導入である。これは、対応ビットラインを０ボルトから禁止レベル（例えばＶｄｄ）にまで上昇させることによって、第２ブースティングが可能となるために起こる。このビットライン電圧の上昇工程の間に、ＮＡＮＤストリング電圧も、バイアスされた選択ゲートのソースフォロア動作によって命令されたレベルであるＶＳＧＤにまで上昇する。この場合、これと同等量だけＮＡＮＤ電圧も増加する。さらなるＮＡＮＤ電圧の増加を最小限に（望ましくない程度にまで）抑えるために、選択ゲートの選択電圧を最小に抑えることができる。
【００７６】
図１５は、ドレイン側の選択トランジスタの制御ゲートに印加された電圧ＶＳＧＤを低減するための別の実施形態を示す。図１５は、プログラミングのファインフェーズにおける選択ＮＡＮＤストリングの信号の様子を示す。図１５と図１４Ａの主な相違点は、選択ゲートＶＳＧＤの波形である。ＮＡＮＤストリングとこれに対応するビットラインとの間の通信を制御する選択ゲート信号ＶＳＧＤが、図１４Ａの実施形態と同様に、まず５μ秒の時点で５ボルトにまで上昇される。選択ゲート電圧ＶＳＧＤは、約１０μ秒の時点でその電圧が０ボルトに降下され、この状態を約１７μ秒の時点まで維持した後にＶｄｄに変更されている。１０μ秒の時点から１７μ秒の時点までの期間の間に選択ゲート電圧ＶＳＧＤを降下させることによって、ＮＡＮＤストリングが対応ビットラインから切断されるとともに、この期間中にビットライン電圧が０ボルト（初期ブーストの放電に使用される）から禁止電圧（第２ブーストを可能にするための準備）にまで上昇され、第２ブースティングステップが実行される。ＶＳＧＤ装置とこれに対応するソースフォロア動作をターンオンする前に、このブースティングを最初に実行することによって、ＮＡＮＤストリングが、その第２ブーストの前に、上述したソースフォロア電圧開始状態にまで上昇することがなくなる。したがって、このブースティングアプローチでは、選択ゲート電圧から閾電圧を引いた電圧をカップルされた電圧が超えた場合、静電的なカップルを超えて追加の電圧がＮＡＮＤストリングに加わることがない。
【００７７】
図１２の装置（又はその応用形）を使用して、図１４〜図１５の実施形態を実現することができる点に留意するべきである。カウントダウンタイマ６３４を使用して、ブースティング電圧のフェーズ間で、ビットライン電圧ＶＢＬを上昇させるタイミングを決定することができる。あるいは、ビットラインを上昇させるタイミングは、ソフトウェアによって実行することができる。非選択ワードライン電圧をコンパレータと比較して、これに応じて動作させることによって実行することができる。また、当業者に周知である又は将来周知となる他の手段によって実行することができる。図９と図１０の工程は、図１４〜図１５の実施形態にも適用することができる。
【００７８】
上述の実施形態は、雑／ファインプログラミングのファインフェーズを実現するために、プログラミングの速度及び／又は精度を、プログラム時間制御又はＮＡＮＤストリング電圧（若しくはチャネル電圧）制御によってコントロールするものである。これと同じ技術を、雑／ファインプログラミングを使用していないメモリセルの精度とタイミングを制御するためにも利用できる。例えば、上述のアプローチを使用すれば、データ状態が命令されたプログラミングＮＡＮＤストリング電圧又は時間を提供することによって、カスタマイズされたプログラミングのデータ状態を提供することができる。一実施形態では、この概念は、それぞれのデータ状態に最適なＮＡＮＤストリング（又はチャネル）電圧又はプログラム時間を提供するためのものである。
【００７９】
ブーストされたＮＡＮＤストリング電圧技術を利用することによって、最も高い閾電圧状態のプログラミングが最も低いブーストされた電圧（統計的に０ボルトに維持されたＮＡＮＤストリングを有する）を利用する一方において、プログレッシブに低下する閾電圧状態がより高いブースト電圧を利用する。これは、全ての状態を同時にプログラミングする間に、異なる閾電圧状態の全てをプログラムするために必要とされるパルス数を低減することができる。これと同様の考え方が、可変ビットライン電圧の実現と直接的に通信する場合の強制ＮＡＮＤストリング電圧（forced NAND string voltage）の利用にも適用される。
【００８０】
プログラムパルス中のタイミングが使用される場合、特定のメモリセルがどのデータ状態にプログラムされているのかに応じて、異なる時間においてビットラインをＶｄｄから０ボルトに低下させることができる。上方閾電圧状態はより早期に低下するビットラインを有し、下方状態はより遅く低下するビットラインを有する。例えば、４つの状態を有するメモリセルでは、最も多くプログラムされた状態（図６の閾分布４６６参照）が、供給されたプログラムパルスよりも前にビットラインを低下させることができる。中間状態にプログラムされたメモリセルの場合（図６の閾電圧分布４６４参照）、プログラムパルスの２５％の時点において（２０μ秒のパルスの５μ秒）、ビットラインをＶｄｄからゼロに低下させることができる。最も低いプログラム状態にプログラムされたメモリセルの場合（図６の閾電圧分布４６２を参照）、プログラムパルスの５０％（２０μ秒パルス内に１０μ秒）の時点においてビットラインが低下させることができる。
【００８１】
図１６は、この別の実施形態のプログラミング工程を示すフローチャートである。ビットラインを上述したように適切に調整することによって、複数のメモリセルが複数のプログラミング状態に同時にプログラムされる。ステップ６５２〜６６０は、図９のステップ５０２〜５１０と同様である。ステップ６７０では、適切なビットライン時間が設定される。例えば、プログラムパルスの間にビットライン電圧が変更される実施形態では、ビットラインをＶｄｄから０までのパルス内にどれだけ低下させるべきかを示すために、各ビットラインについて時間値が保存される。複数のブースティングフェーズを使用する実施形態では、ブースティングフェーズ中のビットラインを上昇させるべきタイミング値が各ビットラインについて保存される。ステップ６７２では、ブースティングが実行され、プログラムパルスが供給される。ステップ６７４では、閾電圧が目標のレベルに達したか否かを決定するために、メモリセルがベリファイされる。図１６のステップ６７６〜６８４は、図９のステップ５２４〜５３２とほぼ同様である。ステップ６８４の後に、次のプログラムパルスのためにステップ６７２に戻る。
【００８２】
図１７Ａは、図１６のステップ６７２の一実施形態を示す。この実施形態では、複数のブースティングフェーズを使用してプログラミング量が制御される。図１７Ａは、プログラム中の３つの異なるメモリセルに利用される３つのビットライン電圧を示す。ビットライン電圧Ｓ２−ＶＢＬは、図６の閾電圧分布４６６にプログラムされているメモリセルに対応している。ビットライン電圧Ｓ１−ＶＢＬは、閾電圧分布４６４にプログラムされているメモリセルに対応している。ビットラインＳ０−ＶＢＬは、閾分布４６２にプログラムされているメモリセルに対応している。選択ゲート波形ＶＳＧＤと選択ワードライン波形ＶＳＷＬは、図１４Ａのものと同様である点に留意するべきである。しかしながら、非選択ワードライン電圧ＶＵＷＬは、３つのブースティングフェーズを備えた階段に分割される。第１ブースティングフェーズは、５μ秒の時点において非選択ワードライン電圧ＶＵＷＬが０ボルトから３ボルトに上昇された際に生じる。第２ブースティングフェーズは、１０μ秒の時点において非選択ワードライン電圧ＶＵＷＬが３ボルトから６ボルトに上昇された際に生じる。第３ブースティングフェーズは、１５μ秒の時点において非選択ワードライン電圧ＶＵＷＬが６ボルトから９ボルトに上昇された際に生じる。これら以外の値も利用することができる点に留意するべきである。最も多くプログラムされる閾電圧分布（例えば図６の分布４６６）にプログラムされているメモリセルでは、ビットラインは、第３ブースティングフェーズが終了するまでＶｄｄに上昇されない。別の実施形態では、この特定の状態Ｓ２−ＶＢＬを全期間に亘って０ｖに維持することができる点にも留意するべきである。閾分布４６４（Ｓ１−ＶＢＬに対応）にプログラムされているメモリセルは、第２ブースティングフェーズの後にそのビットラインを上昇させることによって、第３ブースティングフェーズに関与する。閾分布４６２（Ｓ０−ＶＢＬに対応）にプログラムされているメモリセルは、第１ブースティングフェーズの後にそのビットライン電圧を上昇させることによって、第２及び第３ブースティングフェーズに関与する。非選択ワードラインのブースティング信号は図示のように階段状である。しかしながら、ブースティング信号は、単に直線の部分又は曲線の部分の一部である様々なブースティングフェーズが設けられた直線又は曲線として示すこともできる点に留意するべきである。
【００８３】
図１７Ｂは、図１６のステップ６７２の別の実施形態であり、プログラムパルス中にビットライン電圧を変化させることによってプログラミングを制御する技術を実現する。図１７Ｂは、３つのメモリセルのためのビットライン電圧を示す。ビットライン電圧Ｖ２ＢＬは、図６の閾分布４６６にプログラムされているメモリセルに対応している。ビットライン電圧Ｖ１ＢＬは、閾電圧分布４６４にプログラムされているメモリセルに対応している。ビットライン電圧Ｖ０ＢＬは、閾電圧分布４６２にプログラムされているメモリセルに対応している。ビットライン電圧Ｖ２ＢＬは、２０μ秒の時点においてＶｄｄから０ボルトに変化する。これは、プログラムパルスＶＳＷＬの中の２５％の時点での変化である。プログラムパルス（ＶＳＷＬを参照）は、１５μ秒の時点から開始し、３５μ秒の時点で終了する。ビットライン電圧Ｖ１ＢＬは、２５μ秒の時点においてＶｄｄから０ボルトへ変化する。これは、電圧パルス全体の半分の時点である。ビットライン電圧Ｖ０ＢＬは、３０μ秒の時点においてＶｄｄから０ボルトへ変化する。これは、電圧パルスの７５％に関連する。Ｖ２ＢＬは、時間内のより早いタイミングで変化するために、Ｖ２ＢＬに対応したメモリセルは、Ｖ１ＢＬ及びＶ０ＢＬに対応したメモリセルより多くのプログラムパルスを受け、より多くプログラムされる。なお、これ以外の時間を利用して同じプログラミング重量関係を維持することも可能である。
【００８４】
図１８は、図１７Ａと図１７Ｂの実施形態のプログラミング及びベリフィケーションの実現に使用できる構成要素の一実施形態のブロック線図である。図１８中の構成要素の多くは、図１２の構成要素と同様である。図１８は、スイッチ７００とキャパシタ７０２に接続されたビットラインを示す。キャパシタの他端は、グラウンドのような基準電位に接続されている。スイッチ７００は、プレチャージ電圧（Ｖｐｒｅｃｈａｒｇｅ）回路に接続しており、さらに、センス増幅回路７０４の入力部、マルチプレクサ７１４の出力部にも接続している。信号ＶＲＥＦは、センス増幅回路７０４の入力部に接続している。センス増幅回路７０４の出力部は、ロックアウトレジスタ７０６にデータを供給する。ロックアウトレジスタ７０６の出力は、選択論理回路７０８に提供される。一実施形態では、図１８の装置は、（図１２で実現されるように）雑／ファインプログラミングを実行せず、２つの異なる時間ストロボを受信する必要もない。むしろ、時間ストロボをセンス増幅器７０４の内部に設けることができる。別の実施形態では、雑／ファインプログラミングを実行するように図１８の構成要素を使用することによって、一又は複数のプログラマブル状態の雑／ファインプログラミングのファインモードにも図１７Ａと図１７Ｂで説明した実施形態を利用することができる。この場合には、マルチプレクサを使用することによって、異なる時間ストロボ又は異なる基準電圧を雑又はファインベリファイ状態に提供することができる。カウンタ７１０は、選択論理回路７０８に接続されている。データレジスタ７１２は、カウンタ７１０に接続されている。選択論理回路７０８の出力部は、マルチプレクサ７１４に接続されている。マルチプレクサ７１４は、選択論理回路７０８の出力に基づいて０ボルトとＶｄｄを受信し、これらのどちらかを選択する。
【００８５】
一実施形態では、プログラムされるべきデータが、データレジスタ７１２内にロードされる。このデータは、カウンタ７１０内のカウントを、プログラムパルス（図１７Ｂを参照）の間においてビットライン電圧をいつ降下させるのかを選択論理回路７０８に知らせるために利用される。別の実施形態では、データレジスタ７１２は、カウンタ７１０内のカウントを、様々なブースティングフェーズ（図１７Ａを参照）の間においてビットライン電圧をいつ上昇させるかを選択論理７０８に知らせるために使用される。これにより、マルチプレクサ７１４が提供した適切な電圧レベルを確立することができる。
【００８６】
別の実施形態では、メモリセルがファインプログラミングに入ると、プログラムパルスの間にビットラインを低下させるタイミング、又は、様々なブースティングフェーズの間にビットラインを上昇させるタイミングが、パルス群中のパルス数に基づいて変更される。例えば、プログラムパルスの間の連続的な後期に、ファインプログラミングフェーズにおけるそれぞれの連続したパルスによって、ビットラインをＶｄｄから０ボルトに低下させる。同様に、ファインフェーズの間において、それぞれの連続したパルスについて、より早いブースティングフェーズにおいてビットラインを０からＶｄｄに上昇させることができる。この実施形態では、ファインプログラミングフェーズが進むに従って制御の精密度が増加する。
【００８７】
別の実施形態では、非揮発性メモリのプログラミングの完全な比例制御を含んでいる。この実施形態は、メモリセルのプログラミングの間のベリフィケーション工程に基づいたアナログエラー信号を予想する。エラー信号は、後続のプログラミングをセル毎に比例制御し、より短いプログラミング時間によってより大規模なプログラミング分布のタイトさを達成するために利用される。例えば、ベリフィケーション中に生成されたアナログ感知された電圧信号を、次のプログラミングパルスでＮＡＮＤブースティングの量を制御するためのエラー又はタイミング信号に変換することができる。その後、このエラー信号を、より高くブーストされたＮＡＮＤストリング電圧を生成するために使用でき（例えば、ブースティングフェーズ中における時間の短縮。この場合、ビットライン電圧は０から停止電圧レベルへ移動する）、その結果、次のプログラミングパルス中のプログラミングを低減することができる。プログラミング状態を達成するこのような段階的なアプローチには、最も近い隣り合うセルのロックアウトから生じるプログラミングキック効果を、プログラミングから禁止へ移行する際に減衰させる傾向もある。２００３年９月１７日出願のRaul-Adrian Cernea、Yan Li、Mehrdad Mofidi、Shahzad Khalidによる米国特許出願第１０／６６７２２２号の「Non-Volatile Memory And Method With Bit Line To Bit Line Coupled Compensation」、及び、２００３年９月１７日出願のShahzad Khalid、Yan Li、Raul-Adrian Cernea、Mehrdad Mofidiによる米国特許出願第１０／６６７２２３号の「Non-Volatile Memory and Method with Bit Line Compensation Dependent on Neighboring Operating Modes」を参照することができる。上記の両方の出願の全体は、本願明細書中に組み込まれる。さらに、このエラー信号を使用して、図１１Ａ〜図１１Ｃの実施形態のプログラムパルスの間に、ビットライン電圧をＶｄｄから０ボルトに降下させるタイミングを変更することもできる。閾電圧が目標の閾電圧に近づくに従って、ビットラインがＶｄｄから０ボルトに降下する時間が遅くなる。電圧対時間変換回路は、キャパシタを、チャージ電流源を介して、センス電圧からより高いトリップ電圧レベルにまでチャージすることによって実現することができる。センス電圧が低いほど、トリップに要する時間が長くなる。
【００８８】
図１９は、エラー信号を使用する実施形態、又は、パルス群のプログラミングを減少させる実施形態のプログラミング工程を説明するためのフローチャートである。図１９のステップ８０２〜８１０は、図９のステップ５０２〜５１０と同様である。ステップ８２０では、上述のようにブースティングが実行され、プログラムパルスが供給される。ステップ８２２では、ベリフィケーションが実行される。一実施形態では、雑／ファインプログラミングを使用しない実施例に図１９の工程を適用することができる。別の実施形態では、雑／ファインプログラミングが実現され、上述のようにステップ８２２はモードを決定するのに利用される。ステップ８２４〜８３２は、ステップ５２４〜５３２と同様である。ステップ８３２の後のステップ８３４において、システムがエラー信号に基づいてビットラインタイミングを調整する。ステップ８２２では、ベリフィケーションの間にエラー信号が作成される。このエラー信号は、特定のメモリセルのための目標閾電圧と閾電圧の電流レベルの間の差の指標になる。エラー信号は、ステップ８３４において、ビットライン電圧のタイミングを調整するために使用される（上述のとおり）。ステップ８３４の後にステップ８２０に戻り、ステップ８３４のタイミング設定に基づいてビットラインが制御されるとともに、ブースティング及びプログラム電圧が供給される。パルス群についてビットラインタイミングが自動的に調整される実施形態では、この調整は、ステップ８３４において、エラー信号なしで作成される（この場合、ステップ８３４はパルス数に基づいてビットラインタイミングを調整する）。
【００８９】
図２０は、図１９の実施形態に利用できる構成要素の一実施形態を説明するためのブロック線図である。図２０は、スイッチ８５０とキャパシタ８５２に接続されたビットラインを示す。キャパシタの他端は、グラウンドのような基準電位に接続されている。スイッチ８５０は、プレチャージ電圧回路（ＶＰＲＥＣＨＡＲＧＥ）に接続され、さらに、センス増幅回路８６０の入力部に接続されている。信号ＶＲＥＦもセンス増幅回路８６０の入力部に接続されている。センス増幅回路８６０の出力が制御論理８８２に供給される。センス増幅回路８６０は、メモリの閾電圧が目標のレベルに達したかどうかをベリファイし、達している場合には、制御部８８２にロックアウト状態を提供する。目標レベルに達していない場合は、上述のように、センス増幅回路８６０がエラー信号を決定する。センス増幅回路がこのエラー信号を制御論理８８２に供給する。制御論理８８２は、このエラー信号に基づいて、マルチプレクサ８５４への選択ラインを適切に制御し、０ボルトとＶｄｄの入力から一方を選択する。これにより、次のプログラムパルスの間に、スイッチ８５０を介して、適切な時間に適切なビットライン電圧をビットラインに印加することができるようになる。
【００９０】
上記の本発明の詳細な説明は、例証及び説明の目的で提示されたものである。これらは、包括的なものではなく、又、上記に開示された形態に本発明を制限することを意図するものでもない。上記の示唆を考慮した多くの改良及び応用が可能である。上記の実施形態は、当業者が本発明を様々な実施形態において考えられる特定の使用に適した様々な改良を加えて利用できるように、本発明の原理とその実用的な用途を最良に説明するものとして選択された。本発明の技術的範囲は、添付された特許請求の範囲によって定義されるものとする。
【図面の簡単な説明】
【００９１】
【図１】ＮＡＮＤストリングの平面図である。
【図２】ＮＡＮＤストリングの等価回路線図である。
【図３】ＮＡＮＤストリングの断面図である。
【図４】本発明の様々な実施例が実現される非揮発性メモリシステムの一実施形態のブロック線図である。
【図５】メモリアレイの一例を示す。
【図６】マルチ状態非揮発性メモリ装置の閾電圧分布を示す。
【図７】時間が経過するにつれて大きさが増加するプログラミングパルスのセットを表すプログラミング電圧信号を示す。
【図８】図７の信号からの３つのプログラミングパルスとプログラミングパルス間のベリフィケーションパルスとを示す。
【図９】フラッシュメモリのプログラミング工程の一実施形態を示すフローチャートである。
【図１０】ベリフィケーション及び雑／ファインモードの決定を実行する工程の一実施形態を示すフローチャートである。
【図１１Ａ】プログラミング工程の様々な実施形態を示すタイミング図である。
【図１１Ｂ】プログラミング工程の様々な実施形態を示すタイミング図である。
【図１１Ｃ】プログラミング工程の様々な実施形態を示すタイミング図である。
【図１１Ｄ】チャネル（ＮＡＮＤストリング）電圧及び／又は短縮したプログラミング時間の様々な組み合わせについて、プログラミング速度を遅くした実験結果を曲線で示す。
【図１１Ｅ】チャネル（ＮＡＮＤストリング）電圧及び／又は短縮したプログラミング時間の様々な組み合わせについて、プログラミング速度を遅くした実験結果を曲線で示す。
【図１１Ｆ】チャネル（ＮＡＮＤストリング）電圧及び／又は短縮したプログラミング時間の様々な組み合わせについて、プログラミング速度を遅くした実験結果を曲線で示す。
【図１２】非揮発性メモリセルをベリファイ及びプログラムするために使用される構成要素の一実施形態のブロック線図である。
【図１２Ａ】ビットライン電圧に対するセンシング時間を示すグラフである。
【図１３Ａ】異なるビットライン電圧について雑／ファインプログラミングのファインフェーズ中に印加されたプログラムパルスの閾電圧の変化を示すグラフである。
【図１３Ｂ】異なるブースティング電圧について雑／ファインプログラミングのファインフェーズ中に印加されたプログラムパルスの閾電圧の変化を示すグラフである。
【図１４Ａ】プログラミング工程の様々な実施形態を表すタイミング図である。
【図１４Ｂ】プログラミング工程の様々な実施形態を表すタイミング図である。
【図１４Ｃ】プログラミング工程の様々な実施形態を表すタイミング図である。
【図１５】プログラミング工程の様々な実施形態を表すタイミング図である。
【図１６】フラッシュメモリのプログラミング工程の一実施形態を示すフローチャートである。
【図１７Ａ】プログラミング工程の様々な実施形態を示すタイミング図である。
【図１７Ｂ】プログラミング工程の様々な実施形態を示すタイミング図である。
【図１８】非揮発性メモリセルをベリファイ及びプログラムするために使用される構成要素の一実施形態のブロック線図である。
【図１９】フラッシュメモリのプログラミング工程の一実施形態を示すフローチャートである。
【図２０】非揮発性メモリセルをベリファイ及びプログラムするために使用される構成要素の一実施形態を示すブロック線図である。
【図１】
2007536681.tif 000003
【図２】
2007536681.tif 000004
【図３】
2007536681.tif 000005
【図４】
2007536681.tif 000006
【図５】
2007536681.tif 000007
【図６】
2007536681.tif 000008
【図７】
2007536681.tif 000009
【図８】
2007536681.tif 000010
【図９】
2007536681.tif 000011
【図１０】
2007536681.tif 000012
【図１１Ａ】
2007536681.tif 000013
【図１１Ｂ】
2007536681.tif 000014
【図１１Ｃ】
2007536681.tif 000015
【図１１Ｄ】
2007536681.tif 000016
【図１１Ｅ】
2007536681.tif 000017
【図１１Ｆ】
2007536681.tif 000018
【図１２】
2007536681.tif 000019
【図１２Ａ】
2007536681.tif 000020
【図１３Ａ】
2007536681.tif 000021
【図１３Ｂ】
2007536681.tif 000022
【図１４Ａ】
2007536681.tif 000023
【図１４Ｂ】
2007536681.tif 000024
【図１４Ｃ】
2007536681.tif 000025
【図１５】
2007536681.tif 000026
【図１６】
2007536681.tif 000027
【図１７Ａ】
2007536681.tif 000028
【図１７Ｂ】
2007536681.tif 000029
【図１８】
2007536681.tif 000030
【図１９】
2007536681.tif 000031
【図２０】
2007536681.tif 000032
【手続補正書】
【提出日】平成19年3月29日(2007.3.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
非揮発性記憶装置をプログラミングする方法であり、
第１セットの非揮発性記憶要素群が雑プログラミングモードにあるとともに第２セットの非揮発性記憶要素群がファインプログラミングモードにある複数の非揮発性記憶要素に第１プログラム電圧を供給することと、
第１プログラム電圧の間に、前記第１セットの非揮発性記憶要素群のためのビットラインにプログラミングビットライン電圧を供給することと、
第１プログラム電圧の間に、前記第２セットの非揮発性記憶要素群のためのビットラインに禁止ビットライン電圧を供給することと、
前記第２セットの非揮発性記憶要素群のプログラミングを許容するために、第１プログラム電圧の間に、前記第２セットの非揮発性記憶要素群のためのビットラインを変更すること
を備える方法。
【請求項２】
前記「第１プログラム電圧を供給すること」は、第１ワードラインにプログラムパルスを供給することを含んでおり、
前記「ビットラインを変更すること」は、前記第２セットの非揮発性記憶要素群のためのビットラインを、前記パルスの間に、前記禁止ビットライン電圧から前記プログラミングビットライン電圧まで低下させることを含んでいる
ことを特徴とする請求項１の方法。
【請求項３】
前記「第１プログラム電圧を供給すること」は、第１ワードラインにプログラムパルスを供給することを含んでおり、
前記「ビットラインを変更すること」は、前記第２セットの非揮発性記憶要素群のためのビットライン群を、現在の閾電圧レベルと目標閾電圧レベルの間の差に基づいて、前記パルスの間に異なる時間で前記禁止ビットライン電圧からプログラムレベルまで低下させることを含んでいる
ことを特徴とする請求項１の方法。
【請求項４】
前記プログラミングビットライン電圧はゼロボルトである
ことを特徴とする請求項１の方法。
【請求項５】
前記「ビットラインを変更すること」は、前記ビットラインに対して１回の変更を実行することを含んでいる
ことを特徴とする請求項１の方法。
【請求項６】
前記第１プログラム電圧を供給する前に、前記非揮発性記憶要素群にプレチャージ電圧を供給することをさらに備える
ことを特徴とする請求項１の方法。
【請求項７】
前記第１プログラム電圧を低下させることと、
前記第１プログラム電圧を上昇させることをさらに備え、
前記「ビットラインを変更すること」は、前記第１プログラム電圧を低下させた後であって前記第１プログラム電圧を上昇させる前に実行される
ことを特徴とする請求項１の方法。
【請求項８】
前記複数の非揮発性記憶要素は、フラッシュメモリ装置である
ことを特徴とする請求項１の方法。
【請求項９】
前記複数の非揮発性記憶要素は、マルチ状態フラッシュメモリ装置である
ことを特徴とする請求項１の方法。
【請求項１０】
前記複数の非揮発性記憶要素は、ＮＡＮＤフラッシュメモリ装置である
ことを特徴とする請求項１の方法。
【請求項１１】
非揮発性記憶システムであり、
第１非揮発性記憶要素と、その第１非揮発性記憶要素に接続される制御回路とを備え、
その制御回路は、以下の方法、即ち、
第１セットの非揮発性記憶要素群が雑プログラミングモードにあるとともに第２セットの非揮発性記憶要素群がファインプログラミングモードにある複数の非揮発性記憶要素に第１プログラム電圧を供給することと、
第１プログラム電圧の間に、第１セットの非揮発性記憶要素群のためのビットラインにプログラミングビットライン電圧を供給することと、
第１プログラム電圧の間に、第２セットの非揮発性記憶要素群のためのビットラインに禁止ビットライン電圧を供給することと、
第２セットの非揮発性記憶要素群のプログラミングを許容するために、第１プログラム電圧の間に、第２セットの非揮発性記憶要素群のための前記ビットラインを変更すること
を実行する
ことを特徴とする非揮発性記憶システム。
【請求項１２】
前記「第１プログラム電圧を供給すること」は、第１ワードラインにプログラムパルスを供給することを含んでおり、
前記「ビットラインを変更すること」は、前記第２セットの非揮発性記憶要素群のためのビットラインを、前記パルスの間に、前記禁止ビットライン電圧から前記プログラミングビットライン電圧まで低下させることを含んでいる
ことを特徴とする請求項１１の非揮発性記憶システム。
【請求項１３】
前記「第１プログラム電圧を供給すること」は、第１ワードラインにプログラムパルスを供給することを含んでおり、
前記「ビットラインを変更すること」は、前記パルスの間に実行される
ことを特徴とする請求項１１の非揮発性記憶システム。
【請求項１４】
前記第１非揮発性記憶要素は、ＮＡＮＤマルチ状態フラッシュメモリ装置である
ことを特徴とする請求項１１の非揮発性記憶システム。
【請求項１５】
前記第１非揮発性記憶要素は、フラッシュメモリ装置である
ことを特徴とする請求項１１の非揮発性記憶システム。
【請求項１６】
非揮発性記憶装置をプログラミングする方法であり、
第１非揮発性記憶要素が雑プログラミングモードにあるのかファインプログラミングモードにあるのかを決定することと、
第１非揮発性記憶要素の制御ゲートに第１プログラム電圧を供給することと、
第１非揮発性記憶要素がファインプログラミングモードにある場合、前記制御ゲートに第１プログラミング電圧を供給している間に、第１非揮発性記憶要素のためのビットライン電圧に対して第１の変更を実行するとともに、第１非揮発性記憶要素が雑プログラミングモードにある場合、前記制御ゲートに第１プログラミング電圧を供給している間に、前記第１の変更を実行しないこと
を備える方法。
【請求項１７】
前記第１の変更を実行することは、前記ビットライン電圧を第１電圧レベルから第２電圧レベルに変更することを含んでいる
ことを特徴とする請求項１６の方法。
【請求項１８】
前記第１の変更を実行することは、前記ビットライン電圧を禁止レベルからプログラムレベルに変更することを含んでいる
ことを特徴とする請求項１６の方法。
【請求項１９】
制御ゲートに第１プログラム電圧を供給することは、パルスを供給することを含んでおり、
前記ビットライン電圧に対する前記第１の変更は、前記パルスの間に実行される
ことを特徴とする請求項１６の方法。
【請求項２０】
前記パルスは、第１部分と第２部分と第３部分を含んでおり、
前記パルスは、第１部分と第３部分の間に高強度であり、
前記パルスは、第２部分の間に低強度であり、
前記ビットライン電圧に対する前記第１の変更は、第２部分の間に実行される
ことを特徴とする請求項１９の方法。
【国際調査報告】
2007536681.tif 000033
2007536681.tif 000034