JP4726958B2 - プログラム外乱を低減させたnandタイプの不揮発性メモリをプログラムするラスト―ファーストモードと方法 - Google Patents

プログラム外乱を低減させたnandタイプの不揮発性メモリをプログラムするラスト―ファーストモードと方法 Download PDF

Info

Publication number
JP4726958B2
JP4726958B2 JP2008530168A JP2008530168A JP4726958B2 JP 4726958 B2 JP4726958 B2 JP 4726958B2 JP 2008530168 A JP2008530168 A JP 2008530168A JP 2008530168 A JP2008530168 A JP 2008530168A JP 4726958 B2 JP4726958 B2 JP 4726958B2
Authority
JP
Japan
Prior art keywords
word line
line
voltage
memory element
bit line
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008530168A
Other languages
English (en)
Other versions
JP2009508286A (ja
Inventor
ジュン ワン
ジェフリー ダブリュー. ルッツェ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SanDisk Corp
Original Assignee
SanDisk Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/223,623 external-priority patent/US7218552B1/en
Priority claimed from US11/223,273 external-priority patent/US7170788B1/en
Application filed by SanDisk Corp filed Critical SanDisk Corp
Publication of JP2009508286A publication Critical patent/JP2009508286A/ja
Application granted granted Critical
Publication of JP4726958B2 publication Critical patent/JP4726958B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L27/00Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
    • H01L27/02Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
    • H01L27/04Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body
    • H01L27/10Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers the substrate being a semiconductor body including a plurality of individual components in a repetitive configuration
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3427Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5648Multilevel memory programming, reading or erasing operations wherein the order or sequence of the operations is relevant

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Non-Volatile Memory (AREA)
  • Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明は、不揮発性メモリのプログラミングに関する。
半導体メモリは、さまざまな電子装置内で、ますます多く使用されるようになっている。例えば、不揮発性半導体メモリは、携帯電話、デジタルカメラ、パーソナルデジタルアシスタント、モバイルコンピューティングデバイス、非モバイルコンピューティングデバイス、およびその他のデバイスの中で使用されている。電気的に消去可能でプログラム可能な読み出し専用メモリ(EEPROM)およびフラッシュメモリは、特に普及している不揮発性半導体メモリである。フラッシュメモリもまたEEPROMの一種であるが、全メモリアレイまたはメモリの一部の内容は、従来のフル機能を備えたEEPROMとは異なり、一度に消去できる。
従来のEEPROMとフラッシュメモリは共に、半導体基板中のチャネル領域の上方に位置するとともにチャネル領域から絶縁されている浮遊ゲートを利用している。この浮遊ゲートは、ソース領域とドレイン領域の間に位置している。制御ゲートが、浮遊ゲートの上方に設けられているとともに浮遊ゲートから絶縁されている。このようにして形成されたトランジスタの閾値電圧は、浮遊ゲートに保持されている電荷の量によって制御される。すなわち、ソースとドレイン間を導通させてトランジスタをオンさせる前に制御ゲートに印加しなければならない電圧の最小値は、浮遊ゲート上の電荷のレベルによって制御される。
EEPROMデバイスおよびフラッシュメモリデバイスの中には、2つの範囲の電荷を記憶させるために使う浮遊ゲートを有しているものがある。したがって、メモリ素子は、2つの状態(消去された状態とプログラムされた状態)のどちらかとしてプログラム/消去することが可能である。このようなフラッシュメモリは、バイナリフラッシュメモリデバイスと呼ばれることもある。その理由は、各メモリ素子が1ビットのデータを記憶するからである。
マルチステート(マルチレベルとも呼ばれる)フラッシュメモリデバイスは、複数の異なる許容/有効プログラム閾値電圧範囲を特定することによって実現される。これらの異なる閾値電圧範囲はそのそれぞれが、メモリデバイスの中に符号化されたデータビットの集合の所定の値に対応している。例えば、素子が4つの異なる閾電圧範囲に対応する4つの異なる電荷帯のうちの1つの状態にあるときに、各メモリ素子が2ビットのデータを記憶できる。
一般的に、プログラムが動作している間に制御ゲートに印加されるプログラム電圧Vpgmは、一連のパルスとして印加される。一実施形態では、これらパルスの大きさは、連続するパルスごとに所定のステップサイズだけ(例えば、0.2〜0.4V)だけ増加する。Vpgmは、フラッシュメモリ素子の制御ゲート(または、場合によってはステアリングゲート)に印加することが可能である。プログラムパルス間の期間に、検証動作が実行される。すなわち、並列にプログラムされている素子グループ中の各素子のプログラミングレベルを、連続するプログラミングパルス間で読み取って、このレベルによって、素子がプログラムすべき検証レベル以上であるか否かを判定する。マルチステートフラッシュメモリ素子を含むアレイの場合、これらメモリ素子は、各々の状態に対する検証ステップを実行して、素子が自身のデータに関連する検証レベルに到達したかどうかを判定可能とする。例えば、データを4つの状態で記憶することが可能なマルチステートメモリ素子は、3つの比較ポイントに対して検証動作を実行する必要がある。
さらに、例えばNANDストリングの中のNANDフラッシュメモリデバイスのように、EEPROMデバイスまたはNANDフラッシュメモリデバイスなどのフラッシュメモリデバイスをプログラムするときには、一般的には、制御ゲートにプログラム電圧を印加するとともにビット線を接地する。すると、例えば、記憶素子のようなセルまたはメモリ素子のチャネルから浮遊ゲートに電子が注入される。電子が浮遊ゲート中に蓄積されると、浮遊ゲートは負に帯電して、メモリセルの閾値電圧が引き上げられ、これによって、メモリセルはプログラムされた状態になる。プログラミングに関するさらなる情報は、双方ともそれらの全体を参照してここに組み込む「Source Side Self Boosting Technique For Non−Volatile Memory」という名称の米国特許第6,859,397号および2003年7月29日に出願された「Detecting Over Programmed Memory」という名称の米国特許出願公開第2005/0024939号に見受けられる。
プログラムされているメモリ素子の制御ゲートにVpgmを印加するには、Vpgmを該当するワード線に印加する。しかしながら、各NANDストリング中の1つのメモリ素子は同じワード線を用いており、したがって、プログラム電圧を受ける。選択されていないメモリ素子(これはプログラムすることを意図されていない)は、「プログラム外乱」と呼ばれるプロセスで意図せずにプログラムされることがある。
プログラム外乱を防止するよりよいメカニズムが求められている。
抑止されているメモリ素子に対するプログラム外乱の発生率を減少させるように不揮発性メモリ素子をプログラムする方法が提供される。1つの実施形態では、チャネルを昇圧(電圧上昇)させてプログラム外乱を低減することによって、抑止されているメモリ素子が受けるプログラム外乱の高い発生率を解決しようとしている。しかし、昇圧による利点は、そのワード線の配置のために減少してしまう。この目的を達成するために、メモリ素子がプログラムされるワード線の順序を調整する。さらに、この昇圧技術は、ワード線の位置に合わせて調整可能である。加えて、抑止されているメモリ素子のチャネルを予備充電する。これによって、下位のワード線上のメモリ素子をプログラムする際に、ビット線の電荷が上位のワード線上のすでにプログラムされているメモリ素子を通り過ぎるようにすることが可能である。
1つの実施形態においては、不揮発性記憶装置をプログラムする方法は、不揮発性記憶素子の集合中の不揮発性記憶素子のさまざまな部分集合を、関連するさまざまなワード線の部分集合を用いてプログラムするステップを有する。ここで、これらのワード線は、最初のワード線から最後のワード線まで順に配列されている。これら不揮発性記憶素子は、例えば、いくつかのNANDストリング中に配置されており、ワード線が配列されている順序に従っていない所定のワード線の順序を用いてプログラムされる。例えば、プログラミングは、ビット線または集合のドレイン側の位置または近くにある1つ以上のワード線を用いて実行されるが、その後は、プログラミングは残りのワード線を用いて実行され、集合の共通側またはソース側の位置から開始される。
本方法は、判定に基づいて、順序に従わないワード線を特定するデータを記憶するステップをさらに有する。前記判定は、ワード線が配列されている順序に従って集合中の不揮発性記憶素子がプログラムされるとした場合に、集合中のどの不揮発性記憶素子が一定レベルのフェイルビットを受けるかを予測する決定である。
加えて、順序に従わないワード線によってプログラムされる不揮発性記憶素子を、自己昇圧モードなどの第1の抑止モードを用いて抑止してプログラム外乱を低減することができる。同時に、残りのワード線でプログラムされる不揮発性記憶素子を、消去領域自己昇圧モードや修正消去領域自己昇圧モードなどの第2の抑止モードを用いて抑止して、プログラム外乱を低減することができる。抑止された不揮発性記憶素子のチャネルを予備充電する動作も、最初のワード線と結合している不揮発性記憶素子の後でプログラムされる不揮発性記憶素子に対する自己昇圧動作より先に実行される。
本発明の実施に適した不揮発性メモリシステムの一例では、NANDフラッシュメモリ構造を使用する。NANDフラッシュメモリ構造では、2つの選択ゲートの間にNANDストリングとして複数のトランジスタが直列に配置されている。図1は、1つのNANDストリングを示す上面図である。図2は、その等価回路である。図1および図2に示すNANDストリングは、直列の4つのトランジスタ100、102、104、106を備え、第1の選択ゲート120と第2の選択ゲート122との間に挟まれている。選択ゲート120は、NANDストリングをビット線コンタクト126に接続する。選択ゲート122は、NANDストリングをソース線コンタクト128に接続する。選択ゲート120は、制御ゲート120CGに適切な電圧を印加することによって制御される。選択ゲート122は、制御ゲート122CGに適切な電圧を印加することによって制御される。トランジスタ100、102、104、106のそれぞれは、制御ゲートと浮遊ゲートを有する。トランジスタ100は、制御ゲート100CGと浮遊ゲート100FGを有する。トランジスタ102は、制御ゲート102CGと浮遊ゲート102FGを有する。トランジスタ104は、制御ゲート104CGと浮遊ゲート104FGを有する。トランジスタ106は、制御ゲート106CGと浮遊ゲート106FGを有する。制御ゲート100CG、102CG、104CG、106CG、は、ワード線WL3、WL2、WL1、WL0にそれぞれ接続されている。1つの実施形態では、トランジスタ100、102、104、106のそれぞれがメモリセルあるいはメモリ素子となる。他の実施形態では、メモリ素子が複数のトランジスタを含んでいてもよく、図1および図2に示した構成と異なっていてもよい。選択ゲート120は、選択線SGDに接続され、選択ゲート122は、選択線SGSに接続される。
図3は、上記のNANDストリングの断面図を示す。NANDストリングのトランジスタはp−ウェル領域140内に形成されている。各トランジスタは、制御ゲート(100CG、102CG、104CG、および106CG)と浮遊ゲート(100FG、102FG、104FG、および106FG)からなるスタックゲート構造を備えている。浮遊ゲートは、酸化膜または他の誘電体膜上のp−ウェルの表面上に形成されている。制御ゲートは、浮遊ゲート上に位置しており、制御ゲートと浮遊ゲートは、ポリシリコン間誘電体層によって分離されている。メモリ素子(100、102、104、106)の制御ゲートは、ワード線を形成している。N+拡散層130、132、134、136、138は隣接する素子間で共有されており、これにより素子は相互に直列に接続されてNANDストリングを形成している。これらのN+拡散層は、各素子のソースおよびドレインを形成している。例えば、N+拡散層130は、トランジスタ122のドレイン、および、トランジスタ106のソースとして働く。N+拡散層132は、トランジスタ106のドレイン、および、トランジスタ104のソースとして働く。N+拡散層134は、トランジスタ104のドレイン、および、トランジスタ102のソースとして働く。N+拡散層136は、トランジスタ102のドレイン、および、トランジスタ100のソースとして働く。N+拡散層138は、トランジスタ100のドレイン、および、トランジスタ120のソースとして働く。N+拡散層126は、NANDストリングのビット線につながっており、N+拡散層128は、複数のNANDストリングの共通ソース線につながっている。
図1〜図3では、NANDストリング内に4つのメモリ素子を示しているが、4つのトランジスタを使用する構成は、一例であることに留意されたい。ここに記載される技術によって使用されるNANDストリングは、4つ未満のメモリ素子を有していてもよく、又は、4つを超えるメモリ素子を有していてもよい。例えば、一部のNANDストリングは、8、16、32、64あるいはそれ以上の数のメモリ素子等を含むことができる。本明細書における説明は、NANDストリング内のメモリ素子がいかなる数でも有効である。
各メモリ素子は、アナログ又はデジタル形式で表されたデータを記憶することが可能である。1ビットのデジタルデータを記憶する場合、メモリ素子の可能な閾値電圧の範囲は、論理データ「1」および「0」が割り当てられる2つの範囲に分割される。NAND型フラッシュメモリの一例では、メモリ素子の消去された後の閾値電圧は負となり、論理「1」と定義される。プログラム後の閾値電圧は正となり、論理「0」と定義される。閾値電圧が負の状態で制御ゲートに0Vを印加することによって読み出しが試みられた場合、メモリ素子はオンになり、論理1が記憶されていることを示す。閾値電圧が正の状態で制御ゲートに0Vを印加することによって読み出しが試みられた場合、メモリ素子はオンにならず、これは論理「0」が記憶されていることを示す。
また、メモリ素子は、複数の状態を記憶することも可能であり、それにより例えば複数ビットのデジタルデータを記憶することも可能である。複数の状態のデータを記憶する場合、可能な閾値電圧の範囲は、記憶する状態の数に分割される。例えば、4つの状態の情報が使用される場合、4つの閾値電圧範囲が存在し、それぞれにデータ値「11」、「10」、「01」、「00」が割り当てられる。NAND型メモリの一例では、消去動作の後の閾値電圧は負となり、「11」と定義される。正の閾値電圧は、「10」、「01」、「00」の状態のために使用される。一部の実施例では、これらのデータ値(例えば論理状態)を、グレイコード割り当て方法を用いて閾値範囲に割り当て、これで、浮遊ゲートの閾値電圧が間違ってその隣接する物理状態にずれても、1つの論理ビットのみしか影響されないようにしている。メモリ素子にプログラムされたデータとこの素子の閾値電圧範囲との間の具体的な関係は、メモリ素子に対して採用されるデータ符号化スキームによって異なる。例えば、その双方の全体を参照してここに組み込む、2003年6月13日に出願された「Tracking Cells For A Memory System」という名称の米国特許第6,222,762号および米国特許出願第10/461,244号と、2004年12月16日に公開された米国公開特許出願第2004/0255090号には、マルチステート式フラッシュメモリ素子のさまざまなデータ符号化スキームが記載されている。
NAND型フラッシュメモリおよびそれらの動作に関連する例は、次の米国特許/特許出願で提供されており、それぞれの全体が参照により本明細書に援用される。米国特許第5,386,422号明細書、第5,570,315号明細書、米国特許第5,774,397号明細書、米国特許第6,046,935号明細書、米国特許第6,456,528号明細書、および米国出願第6,522,580号明細書である。NAND型フラッシュメモリに加え、その他のタイプの不揮発性フラッシュメモリも本発明とともに使用されてもよい。
フラッシュEEPROMシステムで役に立つ別のタイプのメモリ素子は、導電性の浮遊ゲートの代わりに非導電性の誘電性材料を利用して、電荷を不揮発式に蓄積している電荷トラップ素子である。このような素子が、1987年3月に発行されたIEEEのエレクトロン・デバイス・レターの第EDL−8巻の第3号の、チャンらによる「A True Single−Transistor Oxide−Nitride−Oxide EEPROM Device」という記事の93〜95ページに記載されている。シリコン酸化物、シリコン窒化物、シリコン酸化物(“ONO”)で形成された三層誘電体を、メモリ素子のチャネル上で、導電性の制御ゲートと半導体基板の表面とで挟んでいる。この素子は、素子のチャネルから窒化物中に電子を注入し、この窒化物中でこれらの電子が限られた領域中に捕獲されて蓄積されることによってプログラムされる。すると、この蓄積された電荷のため、この素子のチャネルのある部分の閾値電圧が変化するが、この変化は検出可能である。この素子は、ホットホールを窒化物中に注入することによって消去される。また、1991年4月に発行されたソリッドステート回路に関するIEEEジャーナルの第26巻の第4号のノザキらによる「A 1−Mb EEPROM with MONOS Memory Cell for Semiconductor Disk Application」の497〜501ページを読めば、ドーピングされた多結晶シリコンゲートがメモリ素子チャネルのある部分上を伸張して、互いに分離された選択トランジスタを形成している分離ゲート構造の類似の素子が記述されている。前述の2つの記事の全体を参照してここに組み込む。参照して個々に組み込む、1998年のIEEEプレスのウイリアム・D・ブラウン(William D. Brown)とジョー・E・ブルーワ(Joe E. Brewer)によって編集された「Nonvolatile Semiconductor Memory Technology」の1.2章に言及されているプログラミング手法もまた、誘電性電荷捕獲デバイスに応用可能であるとこの章に記述されている。このパラグラフに記述されているメモリ素子もまた、本発明で用いることが可能である。したがって、本書に記載する技術もまた、互いに異なったメモリ素子の誘電体領域間でのカップリングに当てはまる。
各々の素子に2ビットを記憶する別の方式が、2000年11月に発行されたIEEEのエレクトロン・デバイス・レターの第21巻の第11号のエイタン(Eitan)らによる「NROM:A Novel Localized Trapping, 2−Bit Nonvolatile Memory Cell」の543〜545ページに記載されており、ONO誘電体層が、ソース拡散層とドレイン拡散層間のチャネル上を伸張していることが記載されている。一方のデータビットに対する電荷がドレインに隣り合った誘電体層中で局所化され、他方のデータビット用の電荷がソースに隣り合った誘電体層中で局所化される。マルチステートデータ記憶装置は、誘電体内部の空間的に分離された電荷蓄積領域のバイナリ状態を別々に読み取ることによって記憶される。このパラグラフに記述するメモリ素子もまた、本発明で用いることが可能である。
図4は、3つのNANDストリングを示す回路図である。NAND構造を用いたフラッシュメモリシステムの一般的なアーキテクチャは、いくつかのNANDストリングを含んでいる。例えば、3つのNANDストリング201、203、205が、多くのNANDストリングを有するメモリアレイ中に示されている。各NANDストリングは、2つの選択トランジスタと4つのメモリ素子を含んでいる。例えば、NANDストリング201は、選択トランジスタ220および230ならびにメモリ素子222、224、226および228を含んでいる。NANDストリング203は、選択トランジスタ240および250ならびにメモリ素子242、244、246および248を含んでいる。NANDストリング205は、選択トランジスタ260および270ならびにメモリ素子262、264、266および268を含んでいる。各NANDストリングは、その選択トランジスタ(例えば選択トランジスタ230、250または270)によってソース線に接続されている。選択線SGSは、ソース側の選択ゲートを制御するために用いられる。NANDストリング201、203および205は、ドレイン選択線SGDによって制御される選択トランジスタ220、240、260などによってビット線202、204、206のそれぞれに接続されている。他の実施形態では、選択線を必ずしも共通とする必要はない。ワード線WL3は、メモリ素子222と242の制御ゲートに接続されている。ワード線WL2は、メモリ素子224と244の制御ゲートに接続されている。ワード線WL1は、メモリ素子226と246の制御ゲートに接続されている。ワード線WL0は、メモリ素子228と248の制御ゲートに接続されている。図示するように、各ビット線と個々のNANDストリングは、列のアレイやメモリ素子の集合を備えている。ワード線(WL3、WL2、WL1およびWL0)は、行のアレイや集合を備えている。各ワード線は、行の中の各メモリ素子の制御ゲートに接続されている。例えば、ワード線WL2は、メモリ素子224、244、264の制御ゲートに接続されている。
各メモリ素子はデータ(アナログデータまたはデジタルデータ)を記憶することが可能である。1ビットのデジタルデータを記憶するときには、メモリ素子の可能な閾値電圧の範囲が2つの範囲に分割されて、これらの範囲に論理データ「1」および論理データ「0」が割り当てられる。NANDタイプのフラッシュメモリの一例では、メモリ素子が消去されると、電圧閾値が負となり、論理「1」が定義される。プログラム動作後は、電圧閾値が正となり、論理「0」が定義される。閾値電圧が負であるときに読み取り動作を試みると、メモリ素子がオンして、論理1が記憶されていることが示される。閾値電圧が正であるときに読み取り動作を試みると、メモリ素子がオンせず、論理0が記憶されていることが示される。また、メモリ素子は、例えば複数ビットのデジタルデータのような複数レベルの情報を記憶することも可能である。この場合、可能な閾値電圧の範囲は、データのレベル数に分割される。例えば、4レベルの情報が記憶される場合には、データ値「11」、「10」、「01」、「00」に対して4つの閾値電圧範囲が割り当てられる。NANDタイプのメモリの一例では、消去動作後の閾値電圧は負であり、「11」と定義される。正の閾値電圧は、状態「10」、「01」、「00」に対して用いられる。
NANDタイプのフラッシュメモリとその動作に関連する例は、その各々を参照してここに組み込む米国特許第5,522,580号、第5,570,315号、第5,774,397号、第6,046,935号および第6,456,528号の明細書に提供されている。
フラッシュメモリ素子をプログラムするときには、プログラム電圧がその素子の制御ゲートに印加され、その素子と接続しているビット線が接地される。チャネルからの電子が浮遊ゲート中に注入される。電子が浮遊ゲート中に蓄積されると、この浮遊ゲートが負に帯電し、この素子の閾値電圧が上昇する。プログラム電圧をプログラムされている素子の制御ゲートに印加するときには、そのプログラム電圧を該当するワード線に印加する。上述したように、ワード線は、同じワード線を共有する他の各NANDストリングの中の1つの素子に接続されている。例えば、図4の素子224をプログラムする場合、プログラム電圧は素子244の制御ゲートにも印加される。ワード線上の1つの素子を、同じワード線に接続されている他の素子をプログラムすることなくプログラムしようとする場合には、問題が生じる。例えば、素子224をプログラムしたいが他の素子244はプログラムしたくない場合である。プログラム電圧はワード線に接続されているすべての素子に印加されるため、このワード線上の選択されていない素子(プログラムすべきでない素子)、特に、プログラムするように選択された素子に隣接する素子が、プログラム外乱と呼ばれるプロセスで誤ってプログラムされることがある。例えば、素子224をプログラムするとき、隣接する素子244が誤ってプログラムされてしまう可能性がある。
プログラム外乱を防止することが可能な手法はいくつか存在する。「自己昇圧方法」として知られている方法では、選択されていないビット線を電気的に絶縁し、プログラム中にパス電圧(例えば10V)を選択されていないワード線に印加する。選択されていないワード線は選択されていないビット線にカップリングされる。このため、選択されていないビット線のチャネルに電圧(例えば8V)が印加され、これによってプログラム外乱が抑制される。したがって、自己昇圧によってチャネルの電圧が上昇し、これによって、トンネル酸化物に印加される電圧が減少し、プログラム外乱が低減される。
NANDストリングは一般的には(常にではないが)、ソース側からドレイン側に、例えば、メモリ素子228からメモリ素子222に向かって順にプログラムされる。例えば、NANDストリング203をNANDストリング201より前にプログラムする場合を考える。プログラミングプロセスがNANDストリング201の最後の(または最後に近い)メモリ素子をプログラムする準備ができているときに、抑止されているNANDストリング(例えばNANDストリング203)上のすでにプログラムされているメモリ素子のすべてまたはほとんどがプログラムされた場合、これらすでにプログラムされているメモリ素子の浮遊ゲートは負に帯電している。その結果、NANDストリング203の一部では電位が十分に上昇しないために、最後のいくつかのワード線と接続されているNANDストリング203中の素子には引き続きプログラム外乱が生じる可能性がある。例えば、NANDストリング201上の素子222をプログラムするときに、NANDストリング203上の素子248、246および244がすでにプログラムされていれば、これらのトランジスタ(244、246、248)の各々の浮遊ゲートには負の電荷が存在しており、このために自己昇圧プロセスでの昇圧レベルが制限され、素子242にプログラム外乱が発生する可能性がある。
ローカル自己昇圧法(「LSB」)および消去領域自己昇圧法(「EASB」)は、すでにプログラムされている素子のチャネルを抑止されている素子のチャネルから絶縁することによって、従来の自己昇圧法の欠点を解決しようとするものである。例えば、図4の素子224をプログラムする場合、LSBとEASBでは、素子244のチャネルをすでにプログラムされている素子(246と248)から絶縁することによって素子244へのプログラムを抑止しようとする。LSB手法では、プログラムされる素子のビット線は接地され、抑止されている素子のNANDストリングのビット線はVddに接続される。プログラム電圧Vpgm(例えば20ボルト)を、選択されたワード線に印加する。選択されたワード線に隣接するワード線にはゼロボルトが印加され、残りの選択されていないワード線にはVpassが印加される。例えば、ビット線202にはゼロボルトが印加され、ビット線204にはVddが印加される。ドレイン選択線SGDにはVddが印加され、ソース選択線SGSにはゼロボルトが印加される。(素子224をプログラムするための)選択されたワード線WL2にはVpgmが印加される。隣接するワード線WL1とWL3にはゼロボルトが印加され、他のワード線(例えばWL0)にはVpassが印加される。
EASBはLSBと似ているが、ソース側で隣接するワード線だけにゼロボルトが印加されることが異なっている。ドレイン側で隣接するワード線にはVpassが印加される。Vpassが低すぎると、チャネル中での昇圧が、プログラム外乱を防止するには不十分となる。Vpassが高すぎると、選択されていないワード線がプログラムされてしまう。例えば、WL1にVpassではなくてゼロボルトが印加され、WL3にVpassが印加される。1つの実施形態では、Vpassは7〜10Vである。
LSBとEASBによれば自己昇圧が改善されるが、ソース側で隣接する素子(素子246は素子244のソース側の隣にある)がプログラムされているまたは消去されているかによって相違が発生するという問題がある。ソース側の隣接する素子がプログラムされていると、その浮遊ゲートには負の電荷が存在する。そのうえ、制御ゲートにゼロボルトが印加されると、負に帯電しているゲートの下のジャンクションが極端に逆バイアスされ、このため、昇圧されたチャネル内に向けて電子がリークするゲート誘導漏れ電流(GIDL)が引き起こされることがある。GIDLは、ジャンクションへ大きなバイアスと低いまたは負のゲート電圧によって発生し、まさに、ソース側の隣接する素子がプログラムされていて、ドレインジャンクションが昇圧された場合に当てはまる。GIDLが生じると、昇圧された電圧が急速にリークして消滅し、この結果、プログラミングエラーとなる。この現象は、サイズが小さい素子で必要とされる急速かつ高濃度にドーピングされたジャンクションではより厳しい問題となる。漏れ電流が非常に高いと、チャネル領域中での昇圧電位が減少して、その結果、プログラム外乱となりかねない。さらに、プログラムされているワード線がドレインに近いほど、昇圧されたジャンクションに存在する電荷量は少なくなる。したがって、昇圧されたジャンクションにおける電圧は急速に降下して、プログラム外乱を引き起こす。
ソース側の隣接するメモリ素子が消去されていると、浮遊ゲートには正の電荷が存在し、このため、トランジスタの閾値電圧は負になることが多い。トランジスタは、ゼロボルトがワード線に印加されてもオフとならない。メモリ素子がオンしている場合には、NANDストリングはEASBモードでは動作しない。その替わりに、NANDストリングは自己昇圧モードで動作し、このため、上記の問題が生じる。このシナリオは、他のソース側の素子がプログラムされていて、このため、ソース側の昇圧を制限される場合にはもっとも発生する確率が高い。この問題は、チャネル長さがより短い場合にもっとも問題となる。
図5は、図1のNANDストリングの断面図であり、さらに、自己昇圧が利用されている場合における、選択されていない不揮発性記憶素子のチャネルの昇圧のワード線に対する依存性を示す図である。この例では、NANDストリングはすでにプログラムされており、負の電荷(e−)が浮遊ゲート106FG、104FG、102FG中にプログラムされている。選択されていないNANDストリング中の浮遊ゲート100FGを有するメモリ素子と同じワード線を共有している選択されたNANDストリング中のメモリ素子に電荷をプログラムする場合、電圧Vpassを用いて自己昇圧を行うことによって、選択されていないNANDストリング中の浮遊ゲート100FGの近くにあるチャネルの電圧を昇圧する。しかしながら、浮遊ゲート106FG、104FG、102FG上に負電荷があるため、昇圧電位Vboostが減少する。すると、ワード線上のプログラミング電圧Vpgmのために浮遊ゲート100FG中に負の電荷(−)が発生し、これによってプログラム外乱が発生する。Vddは、ドレイン側の制御ゲート120CGに印加される電圧を表す。この電圧は、プログラミングのために、適切な制御ゲートをオンさせ、選択されているNANDストリングを接地させるのに十分な電圧であり、さらに、選択されていないNANDストリングを絶縁するために、適切な制御ゲートのオフを維持するのに十分な低い電圧である。自己昇圧のためのチャネル昇圧電位とワード線との関係は図6に示されている。
図6は、上位のワード線に対してチャネル昇圧電位がどのように減少するかを示すグラフである。上述したように、選択されていないメモリ素子、すなわち、プログラムすべきでないが、プログラムされているメモリ素子と同じワード線上にあるメモリ素子は、プログラム電圧が印加されることによって誤ってプログラムされてしまうことがある。これを防止するために、プログラム中において、自己昇圧を利用して、選択されていないビット線を電気的に絶縁し、選択されていないワード線にパス電圧Vpassを印加する。これによって、選択されていないビット線のチャネルに電圧Vboostが印加される。しかしながら、選択されていないビット線上にある所定のメモリ素子においては、すでにプログラムされているメモリ素子の浮遊ゲート上に存在する負の電荷によってVboostは減衰される。この効果には累積性があり、このため、下位のワード線に接続されているメモリ素子の後にプログラムされる上位のワード線に接続されているメモリ素子のほうがVboostが減衰される度合いが高い。その結果、昇圧電位が十分高くならず、最後のいくつかのワード線上ではプログラム外乱が発生する場合がある。昇圧電位の減少は、上位のワード線で顕著に認められる。ワード線が16個あるメモリデバイスのデータを提示したが、ワード線の数がこれより多いまたは少ないデバイスの場合にも、同じような傾向が発生するものと予想される。
図7は、図1のNANDストリングの断面図であり、さらに、消去領域自己昇圧(EASB)が利用されている場合における、そのソース側の隣接するメモリ素子がプログラムされている状態における選択されていない不揮発性記憶素子のGIDLを示す図である。この例では、NANDストリングは既にプログラムされているので、浮遊ゲート106FGと104FG中に負電荷(e−)がプログラムされている。選択されていないNANDストリング中の浮遊ゲート102FGを有するメモリ素子と同じワード線を共有している選択されたNANDストリング中のメモリ素子に電荷をプログラムする場合、電圧Vpassを用いた従来のEASBを適用することによって、選択されていないNANDストリング中の浮遊ゲート102FGの近くにあるチャネルの電圧を昇圧させる。しかしながら、すでに述べたように、カップリングを低減させるために、浮遊ゲート104FGに接続されている隣接するソース側のワード線に0Vが印加される。このソース側の隣接する素子はプログラムされているため、浮遊ゲート104FG上には負電荷が存在する。制御ゲートに0Vが印加されると、負に帯電しているゲートの下のジャンクションが極端に逆バイアスされ、矢印で示すようにGIDLが引き起こされることがある。
この問題を解決するには、改良型のEASBやREASBを用いればよいが、この場合、浮遊ゲート106FGに接続されているワード線に印加される電圧がVpassから0Vに変更され、浮遊ゲート104FGに接続されているワード線に印加される電圧が0VからVddに変更される。上述したように、標準的なEASBでは、ソース側の隣接する素子をプログラムして0Vを印加すると、GIDLが発生して、昇圧されたジャンクション領域から電荷が失われることがある。そのうえ、プログラムされているワード線がドレインに近いほど、昇圧されたジャンクション中に存在する電荷は少なくなるが、これは、その容量が小さくなるからである。したがって、昇圧されたジャンクション中の電圧が急速に降下して、プログラム外乱が発生する。REASBの場合、例えば、WL4がプログラミングのために現在使用している下位のワード線である場合を考える。REASBモードは、次の下位のワード線WL3には0Vの代わりにVddを印加し、さらに次の下位のワード線WL2にはVpassの替わりに0Vを印加することによってEASBを改良したものである。Vpassは、WL1とその他の下位のワード線に印加される。標準のEASBモードと改良型のEASBモードのどちらにおいても、Vpassが次に上位のワード線WL5と残りの上位のワード線に印加される。
REASBでのプログラム外乱フェイルモードはEASBでのそれと類似している。図6に関連して説明したように、どちらの昇圧モードでも、抑止されているNANDストリング上のメモリ素子が、そのNANDストリング上の後でプログラムされるメモリ素子のチャネル昇圧電位を減少させることがある。
図8は、本発明を実施するために使用できるフラッシュメモリシステムの一実施形態のブロック図である。このシステムでは、メモリ素子アレイ302は、列制御回路304と、行制御回路306と、C−ソース制御回路210と、p−ウェル制御回路308によって制御される。列制御回路304は、メモリ素子内に記憶されたデータを読み出すために、プログラム動作中のメモリ素子の状態を判定するために、および、ビット線(BLs)の電位レベルを制御してプログラミングを促進又はプログラミングを抑止するために、メモリ素子アレイ302のビット線に接続されている。行制御回路306は、ワード線のうちのいずれかを選択するために、および、読み出し電圧とプログラム電圧と消去電圧を印加するために、ワード線に接続されている。例えば、EPROMおよびフラッシュメモリ回路で使用されるプログラム電圧レベルは、メモリ回路で一般に使用される電圧より高い。これらは回路に供給される電圧より高いことが多い。これらの高い電圧は、行制御回路306(あるいは別の場所)内の電荷ポンプによって生成される。一例においては、行制御回路306は、原則的には容量性ワード線に電荷を投入し、電圧を上昇させる。電荷ポンプは入力を電圧Vinで受け取り、入力された電圧を電圧増幅の過程において徐々に上昇させ、より高い電圧Voutを出力する。出力された電圧は負荷、例えばEPROMメモリ回路のワード線に供給される。いくつかの実施例においては、負荷から電荷ポンプへフィードバック信号が送られる。電荷ポンプは、負荷が所定の電圧に達したことを示す信号に応答して停止する。また、負荷が所定の電圧に達すると、過電荷を防ぐために分路が使用される。しかし、これはより多くの電力を消費し、低電圧印加の際には望ましくない。電荷ポンプに関する詳細な情報は、その全体が参照として本発明に組み込まれる米国特許第6,734,718号に記載されている。
C−ソース制御回路310は、メモリ素子に接続された共通ソース線(図9に「C−ソース」として示す)を制御する。P−ウェル制御回路308は、p−ウェル電圧を制御する。
メモリ素子内に記憶されたデータは、列制御回路304によって読み出され、データ入力/出力バッファ312を経由して、外部入力/出力線に出力される。メモリ素子内に記憶されるプログラムデータは、外部入力/出力線を経由してデータ入力/出力バッファ312に入力され、列制御回路304に転送される。外部入力/出力線は、コントローラ318に接続される。
フラッシュメモリデバイスを制御するためのコマンドデータは、コントローラ318に入力される。コマンドデータは、どのような動作が要求されているのかをフラッシュメモリに通知する。入力コマンドは、列制御回路304と、行制御回路306と、C−ソース制御回路310と、p−ウェル制御回路308と、データ入力/出力バッファ312とを制御する状態マシン316に転送される。状態マシン316は、さらに、レディ(READY)/ビジー(BUSY)や、パス(PASS)/フェイル(FAIL)などの、フラッシュメモリのステータスデータを出力してもよい。いくつかの実施例において、状態マシン316は、後述するフローチャートに描かれる工程を含むプログラミングプロセスの管理を担う。
コントローラ318は、パーソナルコンピュータ、デジタルカメラ、パーソナルデジタルアシスタントなどのホストシステムに接続されているか、あるいは、接続可能である。コントローラ318は、ホストからコマンドをおよびデータを受信するために、および、ホストにデータおよびステータス情報を提供するために、ホストと通信を行う。コントローラ318は、ホストからのコマンドを、状態マシン316と通信するコマンド回路314が解読して実行可能なコマンド信号に変換する。通常、コントローラ318は、メモリアレイに書き込まれるか、あるいは、メモリアレイから読み出されるユーザデータのためのバッファメモリを有している。いくつかの実施例においては、プログラミングプロセスはこのコントローラによって管理できる。
一例のメモリシステムは、コントローラ318を含む1つの集積回路と、1つ以上の集積回路チップ(それぞれがメモリアレイと、関連する制御、入力/出力、および状態マシン回路とを含む)を備えている。メモリアレイとシステムのコントローラ回路は、1つ以上の集積回路チップ上に一緒に統合される傾向にある。メモリシステムは、ホストシステムの一部として組み込まれていてもよく、又は、ホストシステムに着脱可能に挿入されるメモリカード(又はその他のパッケージ)内に含まれていてもよい。そのような着脱可能なカードは、メモリシステム全体(例えば、コントローラを含む)を含んでいてもよく、又は、メモリアレイおよび関連する周辺回路のみを含んでいてもよい(コントローラはホスト内に組み込まれる)。このように、コントローラ(または制御機能)は、ホスト内に組み込まれることも、又は着脱可能なメモリシステム内に含まれることも可能である。
いくつか実施形態では、図8のコンポーネントのいくつかは、組み合わせることが可能である。さまざまな設計で、図8のコンポーネントのうちで、メモリ素子アレイ302以外の1つ以上のコンポーネントが、制御回路と考えることが可能である。例えば、1つ以上の制御回路は、コマンド回路、状態マシン、行制御回路、列制御回路、ウェル制御回路、ソース制御回路およびデータ入/出力回路のうちのどれか1つまたはこれらを組み合わせたものを含んでいる。
図9を参照して、メモリ素子アレイ302の構造の例を説明する。一例として、1,024個のブロックに区分けされているNAND型フラッシュEEPROMを説明する。消去動作においては、各ブロックに記憶されたデータは同時に消去される。1つの形態では、ブロックは、同時に消去される素子の最小単位である。本実施形態において、各ブロックには8,512列あり、偶数および奇数列に分割される。ビット線も偶数のビット線(BLe)と奇数のビット線(BLo)に分割される。図9は、直列に接続され、NANDストリングを形成する4つのメモリ素子を示す。4つの素子は各NANDストリングに含まれるように図示されているが、使用する素子の数は4つ以上でも4つ以下でもよい。NANDストリングの一方の端子は、選択トランジスタSGDを介して対応するビット線に接続され、他方の端子は、第二の選択トランジスタSGSを介してC−ソース線に接続されている。
読み出しおよびプログラミング動作の一実施形態の間は、4,256のメモリ素子が同時に選択される。選択されるメモリ素子は、同じワード線と、同じ種類のビット線(例えば、偶数ビット線又は奇数ビット線)とを有する。したがって、論理ページを形成する532バイトのデータを、同時に読み出し又はプログラムすることが可能であり、1つのメモリブロックは、少なくとも8つの論理ページを記憶することが可能である(4本のワード線、それぞれが奇数および偶数ページを有する)。マルチステートメモリ素子の場合、各メモリ素子が2ビットのデータを記憶し、これら2ビットがそれぞれ異なったページに記憶される場合、1つのブロックは16の論理ページを記憶する。他のサイズのブロックおよびページも、本発明とともに使用されてもよい。さらに、図8および図9に示す構造以外の構造を、本発明を実施するために使用することもできる。例えば、1つの形態においては、ビット線は、全てのビット線がプログラムされかつ同時に(あるいは非同時に)読み取られるように奇数と偶数の線に分割されない。
メモリ素子の消去は、p−ウェルを消去電圧(例えば、20ボルト)まで引き上げるとともに、選択されたブロックのワード線を接地することによって行われる。ソースおよびビット線はフローティングとする。消去は、メモリアレイ全体、独立したブロック、又はメモリデバイスの一部である別の単位のメモリ素子に対して実行することができる。1つの実施形態においては、浮遊ゲートから電子がp−ウェル領域に移動し、閾値電圧は負になる。
読み出しおよび検証動作では、トランジスタをパスゲートとして動作させるために、選択ゲート(SGDおよびSGS)と、選択されないワード線(例えば、WL1が選択されるワード線の場合には、WL0、WL2、およびWL3)が、読み出しパス電圧(例えば、4.5ボルト)まで引き上げられる。選択されたワード線WL1は、各読み出しおよび検証動作について指定されたレベルの電圧に接続され、対応するメモリ素子の閾値電圧が指定されたレベルの電圧より上なのか下なのかが判定される。例えば、2レベル型のメモリ素子の読み出し動作では、選択されたワード線WL1を接地してもよく、それによって閾値電圧が0Vよりも高いのか否かが検出される。2レベル型のメモリ素子の検証動作では、選択されたワード線WL1を例えば0.8Vに接続し、それによって閾値電圧が少なくとも0.8Vに到達しているのか否かが検証される。ソースおよびp−ウェルは0ボルトである。選択されたビット線は、偶数のビット線(BLe)と考えられるが、例えば0.7Vのレベルにプリチャージされる。閾値電圧が、ワード線上の読み出し又は検証レベルよりも高い場合には、該当する素子に接続されているビット線(BLe)の電位レベルは、非導電性のメモリ素子であるために、ハイレベルに維持される。他方、閾値電圧が、読み出し又は検証レベルよりも低い場合には、対応するビット線(BLe)の電位レベルは、導電性のメモリ素子がビット線を放電するため、例えば0.5V未満のローレベルに低下する。これによって、メモリ素子の状態が、ビット線に接続された電圧比較器センス増幅器により検出される。
上記の消去、読み出し、および検証動作は、当業界で知られた技術に従って実行される。したがって、説明した詳細の多くについては、当業者によって変更されることが可能である。当業界で知られた他の消去、読み出しおよび検証技術を使用することもできる。
上述したように、各々のブロックを多くのページに分割することが可能である。一実施形態では、1ページがプログラミングの単位である。いくつかの実施例では、個々のページをセグメントに分割されてもよい。セグメントは、基本的なプログラミング動作として一度に書き込まれる最小数の素子を有している。一般的に、1ページ以上のデータが1行のメモリ素子に記憶される。1ページに1つ以上のセクターを記憶することが可能である。セクターには、ユーザデータとオーバヘッドデータが含まれる。オーバヘッドデータは、セクターのうちのユーザデータから計算されたエラー訂正符号(ECC)を含んでいる。コントローラの一部が、データがアレイ中にプログラムされている間にECCを計算し、また、データがアレイから読み出されている間にこのECCを用いてチェックする。代替例では、ECCおよび/または他のオーバヘッドデータを、自身が属するユーザデータとは異なったページ、さらには異なったブロックに記憶する。他の形態では、メモリデバイスの他の部分(例えば状態マシン)がECCを計算可能である。
ユーザデータを含むセクターは、一般に、磁気ディスクドライブ中のセクターのサイズに対応して512バイトである。オーバヘッドデータは、一般的には追加の16〜20バイトである。多くのページがブロックを形成しているが、その数値は、例えば、8ページから32ページ、64ページ、さらにこれ以上の数値の間のいずれかの数値である。
図10に、それぞれのメモリ素子が2ビットのデータを記憶している場合のメモリ素子アレイの閾値電圧分布を示す。Eは、消去されたメモリ素子に対する第1の閾値電圧分布を示している。A、B、Cは、プログラムされたメモリ素子に対する3つの閾値電圧分布を示している。1つの設計では、分布E中の閾値電圧は負であり、分布A、B、C中の閾値電圧は正である。
異なる閾値電圧範囲はそのそれぞれが、データビットの集合の所定の値に対応している。メモリ素子にプログラムされたデータとこの素子の閾値電圧レベルとの間の具体的な関係は、素子に対して採用されるデータ符号化スキームによって異なる。1つの例では、“11”を閾値電圧範囲E(状態E)に割り当て、“10”を閾値電圧範囲A(状態A)に割り当て、“00”を閾値電圧範囲B(状態B)に割り当て、“01”を閾値電圧範囲C(状態C)に割り当てている。しかしながら、他のスキームを用いている実施形態もある。
メモリ素子からデータを読み出すために3つの基準電圧Vra、Vrb、Vrcが使用される。任意のメモリ素子の閾値電圧がVra、VrbおよびVrcより大きいか小さいかをテストすることによって、システムはメモリ素子がどの状態にあるかを判定することが可能である。3つの検証基準電圧Vva、Vvb、Vvcも示されている。メモリ素子を状態A、B、Cにプログラムする際には、本システムは、これらのメモリ素子の閾値電圧がVva、Vvb、Vvc以上であるかどうかテストする。
一実施形態では、フルシーケンスプログラミングとして知られているが、メモリ素子を、消去状態Eからプログラムされた状態A、B、C(曲線矢印で示されている)のうちのどれにでも直接的にプログラムすることが可能である。例えば、プログラムされるメモリ素子の母集団を最初に消去し、これで、この母集団中のすべてのメモリ素子が消去状態Eとなるようにする。一部のメモリ素子が状態Eから状態Aにプログラムされている間に、他のメモリ素子を状態Eから状態Bにプログラムしたり、および/または、状態Eから状態Cにプログラムしたりする。
図11に、互いに異なった2つのページ、すなわち、下位ページと上位ページ分のデータを記憶するマルチステートメモリ素子をプログラムする2パス式手法の例を示す。4つの状態、すなわち、状態E(11)、状態A(10)、状態B(00)および状態C(01)が示されている。状態Eの場合、両ページとも“1”を記憶している。状態Aの場合、下位ページは“0”を記憶し、上位ページは“1”を記憶している。状態Bの場合、両ページとも“0”を記憶している。状態Cの場合、下位ページは“1”を記憶し、上位ページは“0”を記憶している。ここで、特定のビットパターンがそれぞれの状態に割り当てられているが、別のビットパターンを割り当ててもよい。第1のプログラミングパスでは、素子の閾値電圧レベルが、下位の論理ページにプログラムされるビットにしたがって設定される。このビットが論理“1”であれば、この閾値電圧は変更されないが、これは、前に消去されている結果として適切な状態にあるからである。しかしながら、このプログラムされるビットが論理“0”であれば、この素子の閾値電圧は、矢印430で示すように状態Aにまで引き上げられる。これで、第1のプログラミングパスが完結する。
第2のプログラミングパスでは、素子の閾値電圧レベルが、上位の論理ページにプログラムされるビットにしたがって設定される。この上位論理ページビットが論理“1”を記憶するのであれば、なんらプログラムされない。これは、素子が、下位ページビットのプログラミングに基づいて決まる状態EまたはAの内の一方の状態にあるからである(状態EとAの双方が“1”という上位ページビットを有している)。上位ページビットが論理“0”となるのであれば、閾値電圧はシフトする。第1のパスの結果、素子が消去状態Eのままであれば、第2のフェーズで、素子は、閾値電圧が矢印434で示すように状態C内に移るようにプログラムされる。素子が、第1のプログラミングパスの結果として状態Aにプログラムされている場合、メモリ素子は、矢印432で示すように閾値電圧が状態B内に移るように、第2のパスでさらにプログラムされる。第2のパスの結果、下位ページのデータを変更することなく、上位ページの論理“0”を記憶するように指定された状態に素子をプログラムすることになる。
一実施形態では、2ページ全体を満たすのに十分なデータが書き込まれた場合に、フルシーケンス書き込みを実行するようにシステムをセットアップすることが可能である。2ページ全体を満たすのに十分なデータが書き込まれない場合、プログラミングプロセスは、受信したデータによる下位ページのプログラミングをプログラムすることが可能である。さらにその後にデータが受信されると、本システムは、上位ページをプログラムする。別の実施形態では、このシステムは、下位ページをプログラムするモードで書き込みを始め、次に、ワード線のメモリ素子の全部(またはほとんど)を満たすに十分なデータがその後に受信されればフルシーケンスプログラミングモードに変換することが可能である。このような実施形態のより詳細が、その全体を参照してここに組み込む、発明者サージー・アナトリビッチ・ゴロベッツ(Sergy Anatolievich Gorobets)とヤン・リー(Yan Li)による、2004年12月14日に出願された「Pipelined Programming of Non−Volatile Memories Using Early Data」という名称の米国特許出願第11/013,125号に開示されている。
図12A〜12Cに、浮遊ゲート間のカップリングを低減する不揮発性メモリをプログラムする別のプロセスを開示する。このプロセスは、前のページの隣り合ったメモリ素子に書き込んだ後に、特定のページに対する特定のメモリ素子に書き込み動作を実行する。一実施例では、不揮発性メモリ素子はそのそれぞれが、4つのデータ状態を用いて2ビットのデータを記憶する。例えば、状態Eが消去された状態で、状態A、BおよびCがプログラムされた状態と仮定する。状態Eはデータ11を、状態Aはデータ01を、状態Bはデータ10を、状態Cはデータ00を記憶している。隣り合った状態Aと状態Bの間で双方のビットが変化するので、これはノングレイコーディングの例である。データをデータの物理状態に符号化する他の方法も用いることが可能である。それぞれのメモリ素子が2ページ分のデータを記憶している。参照目的で、これらのページのデータを上位ページと下位ページと呼ぶが、別のラベルを付けることも可能である。状態Aを参照すると、上位ページはビット0を記憶し、下位ページはビット1を記憶する。状態Bを参照すると、上位ページはビット1を記憶し、下位ページはビット0を記憶する。状態Cを参照すると、双方のページはビットデータ0を記憶する。プログラミングプロセスは、2つのステップのプロセスである。第1のステップでは、下位ページをプログラムする。この下位ページがデータ1の状態にとどまることになっている場合、メモリ素子の状態は状態Eのままである。このデータが0にプログラムされることになっている場合、メモリ素子が状態B’にプログラムされるように、メモリ素子の閾値電圧VTHを引き上げる。図12Aに、状態Eから状態B’にメモリ素子をプログラムする様子を示す。図12Aに示す状態B’は中間状態B’である。したがって、図12に示すように検証ポイントを、Vvbより低いVvb’として示す。
1つの形態では、あるメモリ素子が状態Eから状態B’にプログラムされると、隣り合ったワード線上のその隣接するメモリ素子がその下位ページに関してプログラムされる。その隣接するメモリ素子をプログラムした後で、浮遊ゲート間のカップリング作用によって、状態B’である検討中のメモリ素子の見かけ上の閾値電圧が引き上げられる。これによって、状態B’の閾値電圧分布の幅を図12Bの閾値電圧分布450として示す分布にまで広げる作用がある。この閾値電圧分布の見かけ上の拡大は、上位ページをプログラムするときに修正される。
図12Cは、上位ページをプログラムするプロセスを示している。メモリ素子が消去された状態Eにあって上位ページが1のままとどまるのであれば、このメモリ素子は状態Eのままである。メモリ素子が状態Eにあってその上位ページデータを0にプログラムすることになっているのであれば、このメモリ素子の閾値電圧を引き上げて、メモリ素子が状態Aとなるようにする。メモリ素子が中間閾値電圧分布450を示す状態B’にあって、上位ページデータが1にとどまることになっている場合、このメモリ素子は最終状態Bにプログラムされる。メモリ素子が中間閾値電圧分布450を示す状態B’にあって、上位ページデータがデータ0になることになっている場合、このメモリ素子の閾値電圧を引き上げて、メモリ素子が状態Cとなるようにする。図12A〜12Cに示すプロセスによって浮遊ゲート間のカップリング作用が低減されるが、これは、隣接するメモリ素子の上位ページをプログラムした場合にしか、所与のメモリ素子の見かけ上の閾値電圧が影響されないからである。別の状態のコーディングの例として、上位ページデータが1のときに閾値電圧分布450から状態Cへ移動する、および、上位ページデータが0のときには状態Bへ移動することが挙げられる。図12A〜12Cに4つのデータ状態と2ページ分のデータに関する例を示すが、ここで教示する概念は、状態が4つより多いまたは少なく、あるいは、2ページではない他の実施例にも適用可能である。様々なプログラミング方法および浮遊ゲート間のカップリングについては、2005年4月5日に出願された米国特許第11/099,133号の「Compensating For Coupling During Read Operations Of Non−Volatile Memory」に記載されている。
選択されていないメモリ素子に対するプログラム外乱の発生率を減少させるために、メモリ素子がプログラムされるワード線の順序を調整し、このワード線の位置に基づいて昇圧手法を調整し、チャネルを予備充電することが提案されている。
図13は、プログラム外乱の発生率を減少させながら、不揮発性記憶装置をプログラムするプロセスを説明するフローチャートである。ステップ460では、データをプログラムする要求が、例えばメモリデバイスの1つ以上の管理回路などによって受信される。ステップ462では、1つ以上の利用可能なブロック、ページ、セクターおよび/または他のデータ記憶単位が特定される。ステップ464では、メモリ素子の第1の部分集合が、上位のワード線などのような対応する第1のワード線の部分集合を用いてプログラムされる。1つの可能な方式では、このプログラミングの間、選択されていないメモリ素子は、自己昇圧によって抑止される(ステップ466)。すでに述べたように、自己昇圧によって、選択されていないメモリ素子のチャネル昇圧電位が増加し、これによって、メモリ素子がプログラム外乱を起こし難くなる。最後の1つ以上のワード線が最初にプログラムされれば、これらのワード線と接続されている選択されていないメモリ素子のチャネル電位が、プログラム外乱が発生しやすいポイントにまで減少する心配はない。ここに提案する手法によって、抑止されているNANDストリング上の下位のワード線のプログラムされた素子の浮遊ゲート上では負の電荷が蓄積され、この影響によって上位のワード線に接続されているメモリ素子のチャネル電位が減少するという従来の問題が回避される。上位のワード線に接続されているメモリ素子をプログラムするときに下位のワード線と接続されているメモリ素子はどれもプログラムされていないので、1つの実施形態では、累積の影響が生じない。上位のワード線に接続されているメモリ素子より先に下位のワード線に接続されているメモリ素子の一部をプログラムする実施形態の場合では、上位のワード線と接続されているメモリ素子にプログラム外乱が発生するのを回避するためには、これらの下位のワード線の数を制限しなければならない。
加えて、ステップ468では、図18に関連して以下に説明するように、最初のワード線(例えば、ワード線の集合のうちの他のすべてより先に用いられるワード線)がプログラミングに用いられた後で予備充電が実施される。最初のワード線をプログラミングで用いる場合には予備充電は不要であるが、これは、抑止されたNANDストリングでは、ビット線の電位からチャネルを遮断されるプログラム済のドレイン側の隣接するメモリ素子がないからである。残りのワード線をプログラミングに用いる場合には、抑止されたNANDストリングを予備充電することが可能である。
次いで、残りのメモリ素子(例えば第2のメモリ素子の部分集合中のメモリ素子)を、対応する第2のワード線の部分集合を用いてプログラムするプロセスが開始される。ステップ470では、下位のワード線などの第2のワード線の部分集合を用いて、第2のメモリ素子の部分集合をプログラムする。ステップ472では、選択されていない記憶素子が、EASBやREASB等の1つの可能な方式を用いて抑止される。したがって、さらなる別の実施形態では、第1のワード線の部分集合に対して自己昇圧を利用し、同時に、残りのワード線に対してEASBやREASBを用いることが可能である。その上、EASBとREASBを、残りのワード線の異なる部分集合に対して使い分けるようにしてもよい。加えて、図18に関連して以下に説明する予備充電を、EASBおよび/またはREASBと共に用いてもよい。ステップ474では、予備充電を実施する。
図14は、プログラム外乱の発生率を減少させるように不揮発性記憶素子の第1と第2の部分集合をプログラムするワード線の順序を示している。この図は、図9に示す集合に類似した、例えばメモリデバイスのブロックのような、記憶素子とワード線480の集合を示している。ワード線についている「n」という番号はこの集合の一方の端(すなわち、ワード線WL0の位置)からこの集合のもう一方の端(すなわち、WLn−1の位置)まで伸張している。1つの実施形態では、WL0をメモリ素子の集合のソースすなわち共通の端部にあると考え、WLn−1をこのメモリ素子集合のドレインすなわちビット線の端部にあると考えてもよい。
1つの実施形態では、上位のワード線と接続されているメモリ素子が最初にプログラムされる。例えば、上位のワード線または最後のワード線のうちの1つ以上を下位のまたは最初のワード線より先にプログラミングに用いる「ラスト―ファースト」モード(LFモード)を用いてもよい。例えば、上位のワード線をメモリ素子の集合のドレイン側すなわちビット線側に最も近いワード線とし、下位のワード線をその集合のソース側すなわち共通側に最も近いワード線とすることが可能である。一般的には、ワード線はソース側のゼロから番号をつけられる。例えば、WL0からWLn−1まで番号を付けられたn個のワード線では、ソース側の最初のワード線(WL0)からスタートし、多くの中間のワード線を介してドレイン側の最後のワード線(WLn−1)まで順に番号が付けられる。このときのプログラミングの順序は、WLn−1、WLn−2、WL0、WL1、...、WLn−4、WLn−3となる。例えば、ワード線が32ある場合、順序は、WL31、WL30、WL0〜WL29となる。この場合、最後の2つのワード線は、例えば、WL0からWLn−1までの順序のように、集合中のワード線が配列されている順序とことなる順序でプログラムされる。破線のボックス482で示すように、WLn−1およびWLn−2と接続されているメモリ素子がプログラムされる第1のメモリ素子の部分集合を構成しており、ワード線WLn−1とWLn−2がプログラミングで用いられる第1のワード線の部分集合を構成している。同様に、破線のボックス484で示すように、WL0〜WLn−3と接続されているメモリ素子が、プログラムされる第2のメモリ素子の部分集合を構成しており、ワード線WL0〜WLn−3が、プログラミングで用いられる第2のワード線の部分集合を構成している。
別の方式では、上位のワード線から分離されている下位のワード線の部分集合は上位のワード線より先にプログラムされ、上位のワード線は下位のワード線と上位のワード線の間にある中間のワード線の部分集合より先にプログラムされる。例えば、WL0〜15、WL31、WL30、WL16〜29というワード線が32個あるときの順序では、下位のワード線の部分集合はWL0〜15であり、上位のワード線の部分集合はWL31とWL30であり、中間のワード線の部分集合はWL16〜29である。したがって、上位のワード線は、必ずしも最初のプログラミングで用いられる必要はないが、プログラム外乱を引き起こすのに十分近いところにある隣接するワード線よりも先にプログラムされる必要がある。1つの実施形態では、ワード線の順序は、最初にプログラムされるワード線のメモリ素子が、最初から最後へという従来の順序でワード線がプログラムされた場合にもっともプログラム外乱を起こしやすいメモリ素子を有するワード線となるように選ばれる。また、プログラミングで最初に用いられる1つ以上のワード線の中においては、プログラミングの順序は、例えば、WLn−1、WLn−2またはWL31、WL30という順序のように、NANDストリング中のドレイン側などのように不揮発性素子の集合のビット線側に最も近いワード線からスタートして、NANDストリング中のソース側などのように不揮発性素子の集合の共通側に向かって進行する。これよって、異なるタイミングでプログラムされる隣同士の素子間の容量性カップリングが低減されることがわかっている。
異なる順序でプログラムされるワード線の数は、メモリデバイス中でワード線が配列されている順序にしたがったワード線の順序で不揮発性記憶素子がプログラムされるとした場合に一定レベルのプログラム外乱を受けると予測される各ワード線上にある不揮発性記憶素子の数に基づいて(例えばフェイルビットの数に基づいて)定めることが可能である。例えば、現在のいくつかのデバイスでは、最後の2つのワード線は、他のワード線よりフェイルビットの数がかなり多い。さらに、以下に述べるように、特定のメモリデバイスでは、その性能を測定することによって、どのワード線をワード線の第1の部分集合(すなわち、異なる順序でプログラムされる部分集合)に含むべきであるかを判定することが可能である。いったん判定されたら、1つ以上の管理回路が、対応するワード線のプログラミングの順序を定めるデータを記憶する。
図15は、不揮発性記憶素子の使用量に基づいて不揮発性記憶素子をプログラミングするワード線の順序を調整するプロセスを説明するフローチャートである。例えば、異なる順序でプログラムされるワード線の第1の部分集合のワード線の数を、メモリデバイスが体験したプログラミングサイクルの数に基づいて調整することが可能である。例えば、未使用のデバイスに対しては第1の部分集合中の2つのワード線をプログラムし、繰り返し使用されたデバイスに対しては第1の部分集合中の3つのワード線をプログラムする。サイクルカウント値(図16のステップ504を参照)を用いて、いつ調整するかを決定してもよい。プログラミングサイクルの数または異なる順序でプログラムされる第1の部分集合のワード線の数等の他の使用量測定基準に関する表または式を展開して、この手法を実施することが可能である。
例示のプロセスでは、ステップ486で、メモリ素子の集合の使用量を、メモリ素子が経験したプログラミングサイクルの数を追跡したりすることによって追跡する。この使用量にはまた、動作温度や動作湿度、メモリデバイスの使用年数などの要因が考慮される。使用量閾値に達すると(ステップ488)、ステップ490において、ワード線の第1の部分集合中のワード線の数を増加させる等して調整する。例えば、第1の部分集合中のワード線の数を、プログラミングサイクルが0〜3,000に対しては2に設定し、プログラミングサイクルが3,001〜6,000に対しては3に設定し、プログラミングサイクルが6,001〜10,000に対しては4に設定することが可能である。この例では、ワード線を調整する閾値は3,000と6,000である。ステップ492では、メモリ素子の第1の部分集合を、現時点で使用量に基づいて定められているように第1のワード線の部分集合を用いてプログラムする。ステップ494では、残りのメモリ素子を残りのワード線を用いてプログラムする。このプロセスを、その後のサイクルを追跡する度に繰り返す。プログラム外乱以外にも他の要因によってフェイルビットが発生することがあるが、プログラム外乱によるすべてのフェイルビットの比率は予測可能である。
図16は、プログラム外乱を低減しながらも、不揮発性記憶装置をプログラムするプロセスを説明するフローチャートである。このプロセスは、一般的には、図13のプログラミングステップ464と470を詳細化したものであり、ステップ460に示すように、データプログラム要求を受信すると、これに応答して実行することが可能である。また、ステップ462に示すように、メモリのどの部分をプログラムすると適切であるかを選択する。図16を参照すると、ステップ504で、サイクルカウントがインクリメントされる。プログラミングサイクルの数のカウント値であるこのサイクルカウントは、フラッシュメモリアレイや、状態マシンや、コントローラや、その他の場所に記憶して、図15に関連して述べたように、ステップ486でメモリ素子の使用量を追跡することが可能である。1つの実施形態では、サイクルカウントは、状態マシンと接続されているレジスタに記憶される。ステップ506で、メモリの選択された部分をオプションとして予備プログラムするが、これは、フラッシュメモリを均等に消耗させるためである。選択されたセクターまたはページ内のメモリ素子はすべて、同じ閾値電圧範囲にプログラムされる。ステップ508では、プログラムされるすべてのメモリ素子が消去される。例えば、ステップ508は、すべてのメモリ素子を状態E(図10〜12を参照)に移すステップを含むことができる。ステップ510では、ソフトプログラミングプロセスを実行することによって、消去プロセス中にこれらメモリ素子のうちの一部の素子の閾値電圧が分布E(図10〜12を参照)を下回る値にまで下降する問題を解消する。このソフトプログラミングプロセスでは、プログラム電圧パルスをメモリ素子に印加することによって、これらの素子の閾値電圧が閾値電圧分布Eの範囲内まで増加させる。ステップ512で、例えば、電荷ポンプを適切にプログラムすることよって、初期プログラムパルスの大きさを設定する。ステップ514では、プログラムカウントPCをゼロに初期設定する。
ステップ516では、プログラムパルスを1つ以上の該当するワード線に印加する。ステップ518では、このワード線上のメモリ素子が目標とする閾値電圧レベルに到達したかどうかを検証する。これらメモリ素子がすべて目標閾値電圧レベルに到達した場合には(ステップ520)、ステップ522でプログラミングプロセスは成功裏に完了する(ステータス=パス)。これらメモリ素子のうちの何れかが目標閾値電圧レベルに到達したと検証されなかった場合、プログラムカウントPCが20等の制限値未満であるかどうかをステップ524で判定する。プログラムカウントが20未満でなければ、プログラミングプロセスはフェイルとなる(ステップ526)。プログラムカウントが20未満であれば、ステップ528において、次のパルスのプログラム電圧信号Vpgmの大きさをステップサイズ(例えば0.3V)だけインクリメントして、プログラムカウントPCをインクリメントする。目標閾値電圧に達したこれらメモリ素子は、現在のプログラミングサイクル以降ではプログラムされないことに留意されたい。ステップ528の後、ステップ516に移行し、次のプログラムパルスが印加される。このプロセスは、メモリ素子のすべてに対して、パス状態またはフェイル状態が宣言されるまで繰り返される。
図17は、従来のプログラミングモードと比較してラスト―ファーストプログラミングモードを用いた場合の上位のワード線に対するフェイルビットの数の減少を示すグラフである。このデータは、90nm設計基準のマルチステート型メモリデバイスの約10億個のメモリ素子から得られたものである。ワード線はx軸上で特定されており、この場合、最初のワード線は記憶素子の集合のソース側に最も近いところのワード線であり、最後のワード線はこの集合のドレイン側に最も近いワード線である。フェイルビットの数を、対数目盛のy軸上に示す。X印は、改良されたEASB昇圧法による従来のワード線プログラミング順序を用いて得られたデータを示しており、O印は、ラスト―ファースト(LF)ワード線プログラミング順序、すなわち、WL31、WL30、WL0〜29という順序により得られたデータを示している。異なる順序でプログラムされるワード線WL30とWL31に対しては従来の自己昇圧法を用い、残りのワード線に対しては改良されたEASB法を用いている。最初のワード線のあとのすべてのワード線に対しては予備充電を適用した。従来のモードとLFモードの場合の最悪のケースの状態を見れば分かるように、LFモードによって、このグラフでは、フェイルビットの数が約1/10に有利に減少している。加えて、フェイルビットはワード線間で比較的均一に分布している。
図18は、予備充電を利用した場合における、抑止されたNANDストリングに対する電圧波形を示すタイムラインを示している。本明細書に記載するラスト―ファーストモードに伴う1つの問題点は、NANDストリングでは、下位のワード線上のメモリ素子をプログラムするときに、ビット線電圧が上位のワード線上のすでにプログラムされているメモリ素子を通過することができない場合があることである。ビット線電圧を通過させるには、図13のステップ468と474に関連して説明したオプションとしての予備充電手法を用いればよい。この手法は、例えばプログラムのサブシーケンスとしてメモリチップに組み込んで設計することが可能である。予備充電動作では、昇圧する前にソースおよび/またはドレインからチャネルを充電し、これによって抑止されたときにこのチャネルの電位が最初からグランドより高い電位となる。
一般に、予備充電動作は、最初のワード線と結合しているメモリ素子がプログラムされた後で実行可能となる。このタイムラインでは、x軸は時間を示し、y軸は波形電圧レベルを示している。x軸は、その詳細を示すために、部分ごとに拡大、縮小されている。予備充電は、tとtの間の期間中に発生する。ソース選択ゲートには、オフ状態のままとなるようにゼロボルトまたは定常電圧Vssが印加される。予備充電中、ドレイン選択ゲートには、tとtの間に第1の高電圧が印加される。この高電圧は十分に高い値であるので、ゲートがオンし、ビット線電圧Vbitlineがtとtの間で対応するNANDストリングに印加され、その結果、NANDストリング電圧VNANDがtとtの間でVddとなる。ドレイン選択ゲート電圧はtでVddまで降下し、これによって、選択ゲートが閉じ、NANDストリングがビット線から絶縁され、昇圧されたチャネルの電圧がビット線中に消散することがなくなる。tとtの間では、Vddと0V間の中間電圧がNANDストリング中にとどまる。選択されたWLとドレイン側にある選択されなかったWLの電位はtとtの間におけるプログラミングパルスVpgmの印加より前にVreadにまで上昇しているため、下位のワード線上のメモリ素子をプログラムするときに、ビット線の電荷は、上位のワード線上のすでにプログラムされているメモリ素子中を通過することが可能である。
とtの間では、ソース側の選択されていないワード線にVpassが印加される。この電圧はNANDストリングのチャネルと結合し、その結果、NANDストリングのチャネル中の電圧が昇圧電圧Vboostとなる。tとtの間では、プログラム電圧Vpgmを選択されたワード線に印加して、プログラムされるNANDストリング中の対応するメモリ素子をプログラムする。tでは、電圧Vpassがソース側の選択されていないワード線からなくなるので、NANDストリング中の昇圧レベルは約Vddまで降下する。
図19は、プログラムされたNANDストリングに対する電圧波形を示すタイムラインである。それぞれのタイミングポイントは図18と同じである。プログラムされたNANDストリングでは、ビット線が接地され(Vbit line=0)、その結果、VNAND=0となる。具体的には、ドレイン選択ゲートに印加される電圧Vddがこの時点では十分に高いのでドレイン選択ゲートがオンしており、これによってストリングがビット線と導通する。さらに、このストリングは抑止されていないため、tとtの間に印加されるVpgmによって、現在のワード線と接続されているプログラム対象のNANDストリング中のメモリ素子がプログラムされる。
本発明に関する前述の詳細な説明は、例証と説明のために提示されたものである。本発明を開示する形態そのもので尽きるとかこれに限るとかを意図するものではない。上記の教示に照らし合わせて、多くの修正例や変更例が可能である。説明した実施形態は、本発明とその実際の応用例の原理がもっともよく説明され、これによって、他の当業者が、想定される特定の用途に適しているさまざまな実施形態で、また、さまざまな修正をもって、本発明をもっとも良く利用することが可能となるように選ばれたものである。本発明の範囲は添付クレームによって定義されることを意図するものである。
図1は、NANDストリングの上面図である。 図2は、図1のNANDストリングの等価回路図である。 図3は、図1のNANDストリングの断面図である。 図4は、3つのNANDストリングを示す回路図である。 図5は、図1のNANDストリングの断面図であり、さらに、自己昇圧が利用されている場合における、選択されていない不揮発性記憶素子のチャネルの昇圧のワード線に対する依存性を示す図である。 図6は、チャネル昇圧電位のワード線に対する依存性を示すグラフである。 図7は、図1のNANDストリングの断面図であり、さらに、消去領域自己昇圧を利用した場合における、そのソース側の隣接するメモリ素子がプログラムされている選択されていない不揮発性記憶素子のゲート誘導漏れ電流をさらに示す図である。 図8は、不揮発性メモリシステムのブロック図である。 図9は、不揮発性メモリアレイのブロック図である。 図10は、消去状態からプログラム状態への直接プログラミングによるマルチステートデバイス中の閾値電圧分布の例示の集合を示す図である。 図11は、消去状態からプログラム状態への2パス式プログラミングによるマルチステートデバイス中の閾値電圧分布の例示の集合を示す図である。 図12Aは、さまざまな閾値電圧分布を示して、不揮発性メモリをプログラムするプロセスを説明する図である。 図12Bは、さまざまな閾値電圧分布を示して、不揮発性メモリをプログラムするプロセスを説明する図である。 図12Cは、さまざまな閾値電圧分布を示して、不揮発性メモリをプログラムするプロセスを説明する図である。 図13は、プログラム外乱の発生率を減少させながらも、不揮発性記憶装置をプログラムするプロセスを説明するフローチャートである。 図14は、プログラム外乱の発生率を減少させるように不揮発性記憶素子の第1と第2の部分集合をプログラムするためのワード線の順序を示す図である。 図15は、不揮発性記憶素子の使用量に基づいた不揮発性記憶素子をプログラムするワード線の順序を調整するプロセスを説明するフローチャートである。 図16は、あるワード線と結合している不揮発性記憶素子をプログラムするプロセスを説明するフローチャートである。 図17は、従来のプログラミングモードと比較してラスト―ファーストプログラミングモードを用いた場合の上位のワード線に対するフェイルビットの数の減少を示すグラフである。 図18は、予備充電を利用した場合における、抑止されたNANDストリングに対する電圧波形を示す時系列を示す図である。 図19は、プログラムされるNANDストリングに対する電圧波形を示す時系列である。

Claims (20)

  1. 不揮発性記憶装置をプログラムする方法であって、
    不揮発性記憶装置は、
    複数のビット線と、
    共通ソース線と、
    各々が対応するビット線と共通ソース線の間に接続されている複数のNANDストリングと、
    複数のワード線を備えており、
    各NANDストリングは、対応するビット線に接続されているドレイン側選択ゲートと、共通ソース線に接続されているソース側選択ゲートと、ドレイン側選択ゲートとソース側選択ゲートの間に直列に接続されている複数の不揮発性記憶素子を備えており、
    複数のワード線はソース側からドレイン側に向かって配列されており、各ワード線は各NANDストリングの中の対応する不揮発性記憶素子の制御ゲートに接続されており、
    前記方法は、
    最もドレイン側に位置する最後のワード線を含むドレイン側の複数のワード線の部分集合である上位部分集合に接続されている不揮発性記憶素子をドレイン側から順に選択的にプログラムする第1ステップと、
    第1ステップに続いて、最もソース側に位置する最初のワード線を含むソース側の複数のワード線の部分集合である下位部分集合に接続されている不揮発性記憶素子をソース側から順に選択的にプログラムする第2ステップ、
    を有することを特徴とする方法。
  2. 上位部分集合中のワード線の数が、全ての不揮発積記憶素子をソース側から順にプログラムした場合に生じるフェイルビットに基づいて決められていることを特徴とする請求項1に記載の方法。
  3. 第1ステップでは、第1モードを用いて、選択された不揮発性記憶素子をプログラムするとともに選択されていない不揮発性記憶素子に対するプログラム外乱を抑制し、
    第2ステップでは、第1モードと異なる第2モードを用いて、選択された不揮発性記憶素子をプログラムするとともに選択されていない不揮発性記憶素子に対するプログラム外乱を抑制する、
    ことを特徴とする請求項1または2に記載の方法。
  4. 第1ステップでは、自己昇圧モードを用いて不揮発性記憶素子をプログラムし、
    第2ステップでは、消去領域自己昇圧モードを用いて不揮発性記憶素子をプログラムする、
    ことを特徴とする請求項1〜3の何れか一項に記載の方法。
  5. 第2ステップでは、下位部分集合の中から1つのワード線を選択してその選択されたワード線に接続されている不揮発性記憶素子の中の選択された不揮発性記憶素子をプログラムするプロセスを、下位部分集合の中の各ワード線に対して実行し、
    第2ステップの消去領域自己昇圧モードでは、
    選択されたワード線に接続されている選択された不揮発性記憶素子を含んでいるNANDストリングに接続されているビット線である選択されたビット線に電圧Vssを印加し、
    選択されたビット線以外のビット線である選択されていないビット線に電圧Vssよりも高い電圧Vddを印加し、
    選択されたワード線に電圧Vddよりも高いプログラム電圧Vpgmを印加し、
    選択されたワード線に対してソース側で隣接する隣接ワード線に電圧Vssを印加し、
    隣接ワード線を除く選択されていないワード線にプログラム電圧Vpgmより低く、かつ、電圧Vssより高い電圧Vpassを印加する、
    ことを特徴とする請求項4に記載の方法。
  6. 第2ステップの消去領域自己昇圧モードでは、
    各ドレイン側選択ゲートに接続されているドレイン側選択線に電圧Vddを印加し、
    各ソース側選択ゲートに接続されているソース側選択線に電圧Vssを印加する、
    ことを特徴とする請求項5に記載の方法。
  7. 第1ステップでは、上位部分集合の中から1つのワード線を選択してその選択されたワード線に接続されている不揮発性記憶素子の中の選択された不揮発性記憶素子をプログラムするプロセスを、上位部分集合の中の各ワード線に対して実行し、
    第1ステップの自己昇圧モードでは、
    選択されたワード線に接続されている選択された不揮発性記憶素子を含んでいるNANDストリングに接続されているビット線である選択されたビット線に電圧Vssを印加し、
    選択されたビット線以外のビット線である選択されていないビット線に電圧Vddを印加し、
    選択されたワード線にプログラム電圧Vpgmを印加し、
    選択されていないワード線に電圧Vpassを印加する、
    ことを特徴とする請求項5または6に記載の方法。
  8. 第1ステップの自己昇圧モードでは、
    各ドレイン側選択ゲートに接続されたドレイン側選択線に電圧Vddを印加し、
    各ソース側選択ゲートに接続されたソース側選択線に電圧Vssを印加する、
    ことを特徴とする請求項7に記載の方法。
  9. 自己昇圧モードと消去領域自己昇圧モードの少なくとも一方の実行前に、選択されたワード線に接続されている選択されていない不揮発性記憶素子のチャネルを予備充電することによって、そのチャネルの電位を上昇させるステップをさらに備えていることを特徴とする請求項4〜8の何れか一項に記載の方法。
  10. 第1ステップでは、自己昇圧モードを用いて不揮発性記憶素子をプログラムし、
    第2ステップでは、改良型の消去領域自己昇圧モードを用いて不揮発性記憶素子をプログラムする、
    ことを特徴とする請求項1〜3の何れか一項に記載の方法。
  11. 第2ステップでは、下位部分集合の中から1つのワード線を選択してその選択されたワード線に接続されている不揮発性記憶素子の中の選択された不揮発性記憶素子をプログラムするプロセスを、下位部分集合の中の各ワード線に対して実行し、
    第2ステップの改良型の消去領域自己昇圧モードでは、
    選択されたワード線に接続されている選択された不揮発性記憶素子を含んでいるNANDストリングに接続されているビット線である選択されたビット線に電圧Vssを印加し、
    選択されたビット線以外のビット線である選択されていないビット線に電圧Vssよりも高い電圧Vddを印加し、
    選択されたワード線に電圧Vddよりも高いプログラム電圧Vpgmを印加し、
    選択されたワード線に対してソース側で隣接する第1隣接ワード線に電圧Vddを印加し、
    第1隣接ワード線に対してソース側で隣接する第2隣接ワード線に電圧Vssを印加し、
    第1隣接ワード線と第2隣接ワード線を除く選択されていないワード線にプログラム電圧Vpgmより低く、かつ、電圧Vssより高い電圧Vpassを印加する、
    ことを特徴とする請求項10に記載の方法。
  12. 第2ステップの改良型の消去領域自己昇圧モードでは、
    各ドレイン側選択ゲートに接続されているドレイン側選択線に電圧Vddを印加し、
    各ソース側選択ゲートに接続されているソース側選択線に電圧Vssを印加する、
    ことを特徴とする請求項11に記載の方法。
  13. 不揮発性記憶システムであって、
    複数のビット線と、
    共通ソース線と、
    各々が対応するビット線と共通ソース線の間に接続されている複数のNANDストリングと、
    複数のワード線と、
    管理回路を備えており、
    各NANDストリングは、対応するビット線に接続されているドレイン側選択ゲートと、共通ソース線に接続されているソース側選択ゲートと、ドレイン側選択ゲートとソース側選択ゲートの間に直列に接続されている複数の不揮発性記憶素子を備えており、
    複数のワード線はソース側からドレイン側に向かって配列されており、各ワード線は各NANDストリングの中の対応する不揮発性記憶素子の制御ゲートに接続されており、
    管理回路は、
    データをプログラムする要求を受信するステップと、
    その要求に応じて、最もドレイン側に位置する最後のワード線を含むドレイン側の複数のワード線の部分集合である上位部分集合に接続されている不揮発性記憶素子をドレイン側から順に選択的にプログラムする第1ステップと、
    第1ステップに続いて、最もソース側に位置する最初のワード線を含むソース側の複数のワード線の部分集合である下位部分集合に接続されている不揮発性記憶素子をソース側から順に選択的にプログラムする第2ステップ、
    を実行することを特徴とするシステム。
  14. 上位部分集合中のワード線の数が、全ての不揮発積記憶素子をソース側から順にプログラムした場合に生じるフェイルビットに基づいて決められていることを特徴とする請求項13に記載の不揮発性記憶システム。
  15. 第1ステップでは、管理回路が、第1モードを用いて、選択された不揮発性記憶素子をプログラムするとともに選択されていない不揮発性記憶素子に対するプログラム外乱を抑制し、
    第2ステップでは、管理回路が、第1モードと異なる第2モードを用いて、選択された不揮発性記憶素子をプログラムするとともに選択されていない不揮発性記憶素子に対するプログラム外乱を抑制する、
    ことを特徴とする請求項13または14に記載の方法。
  16. 第1ステップでは、管理回路が、自己昇圧モードを用いて不揮発性記憶素子をプログラムし、
    第2ステップでは、管理回路が、消去領域自己昇圧モードを用いて不揮発性記憶素子をプログラムする、
    ことを特徴とする請求項13〜15の何れか一項に記載の不揮発性記憶システム。
  17. 第2ステップでは、管理回路が、下位部分集合の中から1つのワード線を選択してその選択されたワード線に接続されている不揮発性記憶素子の中の選択された不揮発性記憶素子をプログラムするプロセスを、下位部分集合の中の各ワード線に対して実行し、
    第2ステップの消去領域自己昇圧モードでは、
    選択されたワード線に接続されている選択された不揮発性記憶素子を含んでいるNANDストリングに接続されているビット線である選択されたビット線に電圧Vssを印加し、
    選択されたビット線以外のビット線である選択されていないビット線に電圧Vssよりも高い電圧Vddを印加し、
    選択されたワード線に電圧Vddよりも高いプログラム電圧Vpgmを印加し、
    選択されたワード線に対してソース側で隣接する隣接ワード線に電圧Vssを印加し、
    隣接ワード線を除く選択されていないワード線にプログラム電圧Vpgmより低く、かつ、電圧Vssより高い電圧Vpassを印加する、
    ことを特徴とする請求項16に記載の不揮発性記憶システム。
  18. 第1ステップでは、管理回路が、上位部分集合の中から1つのワード線を選択してその選択されたワード線に接続されている不揮発性記憶素子の中の選択された不揮発性記憶素子をプログラムするプロセスを、上位部分集合の中の各ワード線に対して実行し、
    第1ステップの自己昇圧モードでは、
    選択されたワード線に接続されている選択された不揮発性記憶素子を含んでいるNANDストリングに接続されているビット線である選択されたビット線に電圧Vssを印加し、
    選択されたビット線以外のビット線である選択されていないビット線に電圧Vddを印加し、
    選択されたワード線にプログラム電圧Vpgmを印加し、
    選択されていないワード線に電圧Vpassを印加する、
    ことを特徴とする請求項17に記載の方法。
  19. 第1ステップでは、管理回路が、自己昇圧モードを用いて不揮発性記憶素子をプログラムし、
    第2ステップでは、管理回路が、改良型の消去領域自己昇圧モードを用いて不揮発性記憶素子をプログラムする、
    ことを特徴とする請求項13〜15の何れか一項に記載の不揮発性記憶システム。
  20. 第2ステップでは、管理回路が、下位部分集合の中から1つのワード線を選択してその選択されたワード線に接続されている不揮発性記憶素子の中の選択された不揮発性記憶素子をプログラムするプロセスを、下位部分集合の中の各ワード線に対して実行し、
    第2ステップの改良型の消去領域自己昇圧モードでは、
    選択されたワード線に接続されている選択された不揮発性記憶素子を含んでいるNANDストリングに接続されているビット線である選択されたビット線に電圧Vssを印加し、
    選択されたビット線以外のビット線である選択されていないビット線に電圧Vssよりも高い電圧Vddを印加し、
    選択されたワード線に電圧Vddよりも高いプログラム電圧Vpgmを印加し、
    選択されたワード線に対してソース側で隣接する第1隣接ワード線に電圧Vddを印加し、
    第1隣接ワード線に対してソース側で隣接する第2隣接ワード線に電圧Vssを印加し、
    第1隣接ワード線と第2隣接ワード線を除く選択されていないワード線にプログラム電圧Vpgmより低く、かつ、電圧Vssより高い電圧Vpassを印加する、
    ことを特徴とする請求項19に記載の方法。
JP2008530168A 2005-09-09 2006-09-06 プログラム外乱を低減させたnandタイプの不揮発性メモリをプログラムするラスト―ファーストモードと方法 Active JP4726958B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US11/223,273 2005-09-09
US11/223,623 2005-09-09
US11/223,623 US7218552B1 (en) 2005-09-09 2005-09-09 Last-first mode and method for programming of non-volatile memory with reduced program disturb
US11/223,273 US7170788B1 (en) 2005-09-09 2005-09-09 Last-first mode and apparatus for programming of non-volatile memory with reduced program disturb
PCT/US2006/034711 WO2007030536A1 (en) 2005-09-09 2006-09-06 Last-first mode and method for programming of non-volatile memory of nand type with reduced program disturb

Publications (2)

Publication Number Publication Date
JP2009508286A JP2009508286A (ja) 2009-02-26
JP4726958B2 true JP4726958B2 (ja) 2011-07-20

Family

ID=37596287

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008530168A Active JP4726958B2 (ja) 2005-09-09 2006-09-06 プログラム外乱を低減させたnandタイプの不揮発性メモリをプログラムするラスト―ファーストモードと方法

Country Status (7)

Country Link
EP (1) EP1943652B1 (ja)
JP (1) JP4726958B2 (ja)
KR (1) KR100984563B1 (ja)
AT (1) ATE486350T1 (ja)
DE (1) DE602006017866D1 (ja)
TW (1) TWI312155B (ja)
WO (1) WO2007030536A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7949821B2 (en) 2008-06-12 2011-05-24 Micron Technology, Inc. Method of storing data on a flash memory device
US7983078B2 (en) * 2008-09-24 2011-07-19 Sandisk Technologies Inc. Data retention of last word line of non-volatile memory arrays
KR101586047B1 (ko) * 2009-03-25 2016-01-18 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법
KR101734204B1 (ko) * 2010-06-01 2017-05-12 삼성전자주식회사 프로그램 시퀀서를 포함하는 플래시 메모리 장치 및 시스템, 그리고 그것의 프로그램 방법
KR102003930B1 (ko) * 2012-07-31 2019-07-25 삼성전자주식회사 불휘발성 메모리 장치의 데이터 라이팅 제어방법 및 웨어레벨링 제어 기능을 가지는 메모리 콘트롤러
KR102393323B1 (ko) * 2015-08-24 2022-05-03 삼성전자주식회사 재사용 주기를 이용하여 사용자 데이터를 쓰기 위한 워드라인을 결정하는 저장 장치의 동작 방법
US9728262B2 (en) 2015-10-30 2017-08-08 Sandisk Technologies Llc Non-volatile memory systems with multi-write direction memory units
US10910061B2 (en) * 2018-03-14 2021-02-02 Silicon Storage Technology, Inc. Method and apparatus for programming analog neural memory in a deep learning artificial neural network

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004185690A (ja) * 2002-11-29 2004-07-02 Toshiba Corp 不揮発性半導体記憶装置
JP2005235260A (ja) * 2004-02-17 2005-09-02 Toshiba Corp Nand型フラッシュメモリ

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100272037B1 (ko) * 1997-02-27 2000-12-01 니시무로 타이죠 불휘발성 반도체 기억 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004185690A (ja) * 2002-11-29 2004-07-02 Toshiba Corp 不揮発性半導体記憶装置
JP2005235260A (ja) * 2004-02-17 2005-09-02 Toshiba Corp Nand型フラッシュメモリ

Also Published As

Publication number Publication date
TWI312155B (en) 2009-07-11
ATE486350T1 (de) 2010-11-15
EP1943652B1 (en) 2010-10-27
EP1943652A1 (en) 2008-07-16
WO2007030536A1 (en) 2007-03-15
JP2009508286A (ja) 2009-02-26
KR20080100416A (ko) 2008-11-18
DE602006017866D1 (de) 2010-12-09
KR100984563B1 (ko) 2010-10-01
TW200735106A (en) 2007-09-16

Similar Documents

Publication Publication Date Title
JP4754631B2 (ja) 不揮発性メモリを自己調整式の最大プログラムループでプログラムする方法
EP1886319B1 (en) Starting program voltage shift with cycling of non-volatile memory
JP4808784B2 (ja) 改善されたパス電圧を用いてプログラム阻害を低減した不揮発性記憶メモリのプログラミング方法
US7170788B1 (en) Last-first mode and apparatus for programming of non-volatile memory with reduced program disturb
US7218552B1 (en) Last-first mode and method for programming of non-volatile memory with reduced program disturb
KR101519081B1 (ko) 비휘발성 저장소에서 채널 부스팅을 증가시키기 위한 강화된 비트라인 프리챠지 방식
JP5439488B2 (ja) 不揮発性メモリアレイの最終ワードラインのデータ保持力改善
KR101600551B1 (ko) 고해상도의 가변 초기 프로그램 펄스를 이용한 비휘발성 메모리의 프로그램
EP2122627B1 (en) Dynamic verify based on threshold voltage distribution
KR101314306B1 (ko) 스마트 검증을 이용한 다중 상태 비휘발성 메모리프로그래밍 방법
JP4726958B2 (ja) プログラム外乱を低減させたnandタイプの不揮発性メモリをプログラムするラスト―ファーストモードと方法
JP4938020B2 (ja) タイミング情報による逆結合効果
JP4723000B2 (ja) ビット線結合を生じる不揮発性メモリを制御してプログラムする方法
EP2256748B1 (en) Reducing read disturb for non-volatile storage
TWI386944B (zh) 具有利用通道隔離切換之提升的非揮發性儲存器及其方法
JP4820879B2 (ja) 非選択ワード線を効果的に制御して不揮発性メモリを読み出す方法
JP4950299B2 (ja) 複数のブーストモードを使用した不揮発性メモリ内のプログラム妨害の低減

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101020

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101026

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110120

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110405

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110412

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250