JP5174829B2 - 隣接メモリセルの記憶状態を考慮した不揮発性メモリセルの読み出し - Google Patents

隣接メモリセルの記憶状態を考慮した不揮発性メモリセルの読み出し Download PDF

Info

Publication number
JP5174829B2
JP5174829B2 JP2009544243A JP2009544243A JP5174829B2 JP 5174829 B2 JP5174829 B2 JP 5174829B2 JP 2009544243 A JP2009544243 A JP 2009544243A JP 2009544243 A JP2009544243 A JP 2009544243A JP 5174829 B2 JP5174829 B2 JP 5174829B2
Authority
JP
Japan
Prior art keywords
state
read operations
read
memory element
subset
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.)
Expired - Fee Related
Application number
JP2009544243A
Other languages
English (en)
Other versions
JP2010515202A (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 Technologies LLC
Original Assignee
SanDisk Technologies LLC
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/618,569 external-priority patent/US7495962B2/en
Priority claimed from US11/618,578 external-priority patent/US7440324B2/en
Application filed by SanDisk Technologies LLC filed Critical SanDisk Technologies LLC
Publication of JP2010515202A publication Critical patent/JP2010515202A/ja
Application granted granted Critical
Publication of JP5174829B2 publication Critical patent/JP5174829B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • 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/26Sensing or reading circuits; Data output circuits
    • 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/30Power supply circuits
    • 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
    • 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/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Non-Volatile Memory (AREA)

Description

本発明は、不揮発性記憶装置のための技術に関する。
半導体メモリは、様々な電子デバイスに使用されることが一般的になってきている。例えば、不揮発性半導体メモリは、携帯電話、デジタルカメラ、パーソナルデジタルアシスタント、モバイルコンピュータ、非モバイルコンピュータ及び他の装置に使用されている。電気的消去・再書込み可能型読取専用メモリ(EEPROM)とフラッシュメモリは、最も普及している不揮発性半導体メモリの1つである。
EEPROMとフラッシュメモリの多くのタイプは、半導体基板内のチャネル領域上に配置され、そのチャネル領域から絶縁されているフローティングゲートを使っている。フローティングゲートは、ソース領域とドレイン領域の間に配置されている。フローティングゲートの上に、そのフローティングゲートから絶縁されている制御ゲートが設けられている。トランジスタの閾値電圧は、フローティングゲート上に保持される電荷量によって制御される。即ち、そのソースとドレインの間の導通を可能にするためにトランジスタをオンするために制御ゲートに印加すべき電圧の最小量は、そのフローティングゲート上の電荷レベルにより制御される。
EEPROMやNAND型フラッシュメモリなどのフラッシュメモリに書き込みを行う場合、典型的には、ビットラインが接地されるとともに、制御ゲートに書き込み電圧が加えられる。電子がチャネルからのフローティングゲートへ注入される。フローティングゲートに電子が蓄積されると、フローティングゲートが負値に帯電し、メモリセルの閾値電圧が上昇し、メモリセルが書き込まれた状態となる。書き込みに関するさらなる情報は、「不揮発性メモリのソース側自己ブースト技術」(“Source Side Self Boosting Technique for Non-Volatile Memory”)と題した米国特許第6,859,397号、及び、「書込み状態メモリの検出」(“Detecting Over Programmed Memory”)と題した米国特許第6,917,542号に開示されている。これらの文献の内容は、その全体を参照することにより本明細書に組み込まれる。
あるタイプのEEPROM及びフラッシュメモリは、2つの範囲で電荷を蓄積するのに使用されるフローティングゲートを備えており、そのようなメモリセルは、2つの状態(消去状態と書き込み状態)の間で書き込み/消去が可能である。そのようなフラッシュメモリは、バイナリフラッシュメモリデバイスと呼ばれることがある。
マルチステートフラッシュメモリと呼ばれるデバイスは、複数の区別された、許可/有効書き込み閾値電圧範囲を特定することで実現される。これらの閾値電圧範囲は、禁止帯によって分離される。区別された閾値電圧のそれぞれは、メモリデバイス内で符号化されるデータビットの組の既定値に対応する。このため、閾値電圧範囲は、データ状態を表わしているということができる。
フローティングゲートに蓄積された見かけ上の電荷量の変化が起こることがある。この電荷量の変化は、隣接するフローティングゲートのそれぞれに蓄積された電荷に起因する電場の相互作用(カップリング)によって生じる。このフローティングゲート対フローティングゲートのカップリング現象については、米国特許第5,867,429号に記述があり、その文献の全体は参照によって本明細書に組み込まれる。対象のフローティングゲートに隣接するフローティングゲートには、同じビットライン上で隣接したフローティングゲート、同じワードライン上で隣接したフローティングゲート、又は、対象のフローティングゲートと対角の位置にあるフローティングゲートが含まれる。これらのフローティングゲートは、対象のフローティングゲートに対して、ビットラインとワードラインについて隣接していると換言することができる。
このフローティングゲート対フローティングゲートのカップリング現象は、異なる時間に書き込まれた隣接メモリセルの組の間で最も顕著に発生する。例えば、第1メモリセルに対して、そのフローティングゲートに1つのデータセットに対応する所定の電荷レベルが加えられて書き込みが行われる。続いて、一つ又は複数の隣接メモリセルに対して、それらのフローティングゲートに2番目のデータセットに対応した所定の電荷レベルが加えられて書き込みが行われる。前述の一つ又は複数の隣接メモリセルへの書き込みが行われると、第1のメモリセルから読み出す際の電荷レベルが書き込み時の電荷レベルと異なって見えることがある。この現象は、第1メモリセルにカップリングしている隣接メモリセルの荷電量の影響に起因して生じる。隣接メモリセルからのカップリング(相互作用)は、読み取り動作において読み取られる見かけ上の電荷レベルが、記憶されているデータの読み間違いを生じ得るほどに変化させてしまうことがある。
マルチステートデバイスでは許可された閾値電圧範囲と禁止帯の幅がバイナリデバイスのものよりも狭いので、フローティングゲート間のカップリングの影響はマルチステートデバイスにとっては大きな問題である。フローティングゲート間のカップリングは、メモリセルの状態を許可された閾値電圧範囲から禁止帯へ、或いは他の許可閾値電圧範囲へとシフトさせてしまうことがある。
メモリセルの小型化が進行する中で、短チャネル効果、酸化物厚み/カップリング比率の変化、及び、更なるチャネルドーパントの変動によって、書き込み/消去の閾値電圧の区分(distribution)の増加が見込まれている。閾値電圧区分の増加は、隣接するデータ状態間の有効な分離幅を減少させる。それゆえ、閾値電圧区分の増加は、隣接フローティングゲート間のカップリング問題の悪化をもたらす。
その上、ワードライン間の間隔の狭小化とビットライン間の間隔の狭小化もまた、隣接フローティングゲート間のカップリングの影響増大をもたらす。
それゆえ、フローティングゲート間のカップリングの影響を低減する技術が望まれている。
隣接するフローティングゲート(或いは他の蓄電素子)に蓄積された電荷によるカップリングを考慮するために、対象メモリセルの読み出し処理は、隣接メモリセル(或いは他のメモリセル)に対して、隣接メモリセルが対象メモリセルへ与えるカップリングの影響を低減するための補償を提供する。適用される補償は、隣接メモリセルの状態に基づくものである。的確な補償を適用するために、この読み出し処理は、対象メモリセルの読み出し工程に、隣接メモリセルに対する読み出し工程を少なくとも部分的に混在させる。
一つの実施形態は、対象の不揮発性記憶素子に記憶された特定データ値を読み出すための共通試行として対象の不揮発性記憶素子に一組の読み出し動作を実行するステップと、隣接不揮発性記憶素子への一群の読み出し動作を実行するステップと、一群の読み出し動作に基づいて一組の読み出し動作のサブセットから情報を選択するステップと、選択された情報に基づいて対象不揮発性記憶素子に記憶されたデータ値を通知するステップとを含む。上記一群の読み出し動作は、少なくとも部分的に、かつ一時的に上記一組の読み出し動作に混在される。上記一組の読み出し動作の少なくとも1つのサブセットは、隣接不揮発性記憶素子に異なる電圧群を加える。
一つの実施形態は、特定の不揮発性記憶素子に対する一群の読み出し動作に基づいてその特定の不揮発性記憶素子の記憶状態(perceived condition)を判定するステップと、対象の不揮発性メモリセルへの一組の読み出し動作を実行するステップと、を含む。上記特定の不揮発性記憶素子は、上記対象の不揮発性記憶素子の次に位置している素子に相当する。一組の読み出し動作の少なくとも1つのサブセットは、一群の読み出し動作の間に実行される。一組の読み出し動作のそれぞれに異なるサブセットは、上記特定の不揮発性記憶素子に異なる電圧を各々印加する。それぞれに異なる電圧は、上記特定の不揮発性記憶素子の異なる電位状態に各々関連している。この処理はまた、一組の読み出し動作のサブセット群の一つであって、記憶状態(perceived condition)に対応するサブセットに基づいて対象不揮発性記憶素子内のデータを特定するステップ含む。
一実施形態は、特定不揮発性記憶素子に対する第1状態の検査を実行するステップと、対象不揮発性記憶素子に対する第1読み出し処理を実行するステップと、上記特定不揮発性記憶素子が第1状態を満足する場合には第1読み出し処理に基づいて対象不揮発性記憶素子からのデータを特定するステップと、第1読み出し処理の後に実行される特定不揮発性記憶素子に対する第2状態の検査を実行するステップと、対象不揮発性記憶素子に対する第2読み出し処理を実行するステップと、上記特定不揮発性記憶素子が第2状態を満足する場合には第2読み出し処理に基づいて対象不揮発性記憶素子からのデータを特定するステップを含む。第1読み出し処理は、上記特定不揮発性記憶素子への第1電圧の印加処理を含む。上記特定不揮発性記憶素子は、対象不揮発性記憶素子の次に位置している。第2読み出し処理は、上記特定不揮発性記憶素子への第2電圧の印加ステップを含む。一つの実施形態では、第1状態の検査は、第1読み出し処理の前に実行され、第2状態の検査は、第1読み出し処理に基づく対象不揮発性記憶素子からのデータの特定の後に、そして、第2読み出し処理の前に行われる。第1電圧は、第1状態に対応しており、第2電圧は第2状態に対応している。
一実施形態は、複数の不揮発性記憶素子と、一つ又は複数の管理回路を備えている。複数の管理回路は、後述する処理を実行するために、複数の不揮発性記憶素子と通信することができる。
図1は、NANDストリングの平面図である。 図2は、NANDストリングの等価回路図である。 図3は、不揮発性メモリシステムのブロック図である。 図4は、センスブロックの一例を示すブロック図である。 図5は、メモリアレイの一例を示すブロック図である。 図6は、一組の閾値電圧区分の一例と、不揮発性メモリへの書き込み処理を説明する図である。 図7Aは、様々な閾値電圧区分と、不揮発性メモリへの書き込み処理を説明する図である。 図7Bは、様々な閾値電圧区分と、不揮発性メモリへの書き込み処理を説明する図である。 図7Cは、様々な閾値電圧区分と、不揮発性メモリへの書き込み処理を説明する図である。 図8は、不揮発性メモリへの書き込みの順の一例を示す表である。 図9は、不揮発性メモリへの書き込み処理の一例を示すフローチャート図である。 図10は、不揮発性メモリの読み出し動作の一例を説明するタイミング図である。 図11は、不揮発性メモリの読み出し処理の一例を示すフローチャート図である。 図12は、不揮発性メモリを読み出すときに用いる処理の一例を説明するフローチャート図である。 図13は、不揮発性メモリを読み出すときに用いる処理の一例を説明するフローチャート図である。 図14は、不揮発性メモリを読み出すときに用いる処理の一例を説明するフローチャート図である。 図15は、不揮発性メモリを読み出すときに用いる処理の一例を説明するフローチャート図である。 図16は、不揮発性メモリを読み出すときに用いる処理の一例を説明するフローチャート図である。 図17は、不揮発性メモリを読み出すときに用いる処理の一例を説明するフローチャート図である。 図18は、不揮発性メモリを読み出すときに用いる処理の一例を説明するフローチャート図である。 図19は、不揮発性メモリを読み出すときに用いる処理の一例を説明するフローチャート図である。
フラッシュメモリシステムの一例は、複数のトランジスタの直列接続を含む、2つの選択ゲートに挟まれたNAND構造を用いている。直列に接続されたトランジスタと選択ゲートは、NANDストリングと呼ばれる。図1は、1つのNANDストリングを示す平面図である。図2は、その等価回路である。図1と図2に示すNANDストリングは、第1(或いはドレイン)選択ゲート120と第2(或いはソース)選択ゲート122の間に挟まれているとともに直列に接続されている4つのトランジスタ100、102、104及び106を有する。選択ゲート120は、ビットラインコンタクト126を介してNANDストリングをビットラインに接続している。選択ゲート122は、NANDストリングをソースライン128に接続している。選択ゲート120は、選択ラインSGDに適切な電圧を加えることによって制御される。選択ゲート122は、選択ラインSGSに適切な電圧を加えることによって制御される。トランジスタ100、102、104、及び106の夫々は、制御ゲートとフローティングゲートを備えている。例えば、トランジスタ100は、制御ゲート100CGとフローティングゲート100FGを備えている。トランジスタ102は、制御ゲート102CGとフローティングゲート102FGを備えている。トランジスタ104は、制御ゲート104CGとフローティングゲート104FGを備えている。トランジスタ106は、制御ゲート106CGとフローティングゲート106FGを備えている。制御ゲート100CGはワードラインWL3に接続されており、制御ゲート102CGはワードラインWL2に接続されており、制御ゲート104CGはワードラインWL1に接続されており、制御ゲート106CGはワードラインWL0に接続されている。
図1と図2は、NANDストリング内の4個のメモリセルを示しているが、4個のトランジスタの使用は単に一例として提示されている点に留意されたい。NANDストリングは、4個よりも少ない、或いは、4個よりも多いメモリセルを有していてよい。例えば、NANDストリングによっては8個、16個、32個、64個、128個などのメモリセルを有していてよい。本明細書の説明は、いかなる特定個数のメモリセルを有するNANDストリングにも限定されない。
NAND構造を用いたフラッシュメモリシステムの一般的なアーキテクチャは、いくつかのNANDストリングを含んでいる。各NANDストリングは、選択ラインSGSによって制御されるソース選択ゲートによってソースラインに接続されているとともに、選択ラインSGDによって制御されるドレイン選択ゲートによってそれに対応するビットラインと接続されている。ビットラインコンタクトを介して上記ビットラインと接続されている各ビットラインとそれぞれのNANDストリングは、メモリセルのアレイの列を構成している。ビットラインは、複数のNANDストリングに共用されている。典型的には、そのビットラインは、NANDストリングの上側でワードラインと直交する方向に伸びているとともに、1つ以上のセンスアンプに接続されている。
各メモリセルは、データ(アナログデータまたはデジタルデータ)を記憶することが可能である。1ビットのデジタルデータ(バイナリメモリセルとして参照されるデータ)を記憶する場合には、このメモリセルの可能な閾値電圧の範囲は2つの範囲に分割され、それぞれの範囲が論理データの「1」と「0」に割り当てられる。NANDタイプのフラッシュメモリの一例では、この閾値電圧は、メモリセルが消去された後では負の値となり、論理データの「1」と定義される。書き込み後の閾値電圧は、正の値となり、論理データの「0」と定義される。閾値電圧が負値のときに制御ゲートに0ボルトを加えることによって読み出しが試みられた場合、メモリセルはオンとなり、これは論理データの「1」が記憶されていることを示す。閾値電圧が正の値のときに制御ゲートに0ボルトを加えることによって読み出しが試みられた場合、メモリセルはオンにならず、これは論理データの「0」が記憶されていることを示す。
メモリセル(マルチステートメモリセルともいう)はまた、複数レベルの情報を記憶することが可能である。複数レベルのデータを記憶する場合、可能な閾値電圧の範囲は、このデータのレベルの数に分割される。例えば、4つのレベルの情報を記憶する場合(2ビットのデータ)、4つの閾値電圧範囲が存在し、それぞれがデータ値「11」、「10」、「01」、及び「00」に割り当てられる。NANDタイプのメモリの一例では、消去動作の後の閾値電圧は負の値となり、論理「11」と定義される。正値の閾値電圧群が「10」、「01」、「00」というデータ状態に対して用いられる。8つのレベルの情報が記憶される場合(3ビットのデータ)、データ値「000」、「001」、「010」、「011」、「100」、「101」、「110」、及び「111」に割り当てられる8つの閾値電圧範囲がある。メモリセルに書き込まれるデータとセルの閾値電圧レベルの間の具体的な関係は、セルに採用されるデータ符号化方式によって決まる。例えば、両方ともその全体を参照することにより本明細書に組み込まれる米国特許第6,222,762号及び米国特許出願公開公報第2004/0255090号は、マルチステートフラッシュメモリセルのための様々なデータ符号化方式を説明している。一実施形態においては、フローティングゲートの閾値電圧が誤ってその近傍の物理状態にシフトした場合に1つのビットだけが影響を受けるように、グレイコード割当を用いてデータ値が閾値電圧範囲に割り当てられる。
NANDタイプのフラッシュメモリおよびそれらの動作に関連する例は、以下の米国特許/特許出願に記載されている。米国特許第5,570,315号、米国特許第5,774,397号、米国特許第6,046,935号、米国特許第6,456,528号、米国公開公報第US2003/0002348号。これらの引用文献は、その全体が参照により本明細書に組み込まれる。本明細書における説明は、他のタイプの不揮発性記憶素子と同様に、NANDを加えた他のタイプのフラッシュメモリにも利用可能である。
NANDフラッシュメモリに加えて、不揮発性記憶装置の他のタイプもまた用いることができる。例えば、基本的に(フローティングゲートの代わりに)窒化物層内に電荷をトラッピングするメモリセルである、いわゆるTANOS構造(TaN−Al−SiN−SiOの積層から構成される構造)にも本発明は適用できる。フラッシュEEPROMシステムで有用な別のタイプのメモリセルは、不揮発方式で電荷を蓄積するために、導電性フローティングゲートの代わりに非導電性の誘電物質を活用する。そのようなセルは、Chanらによる記事、「A True Single-Transistor Oxide-Nitride-Oxide EEPROM Device」、IEEE ELECTRON DEVICE Letters、EDL−8巻、第3号、1987年3月の93から95ページに説明されている。酸化ケイ素、窒化ケイ素、及び酸化ケイ素(「ONO」)から形成される三層の誘電体が、メモリセルチャネル上で半導電性基板の表面と導電性制御ゲートとの間に挟まれている。セルは、セルチャネルから窒化物の中に電子を注入することにより書込みが行われ、窒化物内において電子が制限領域内にトラッピングされ蓄積される。この蓄積された電荷は、次に、検出可能な方法で、セルのチャネルの一部の閾値電圧を変更する。セルは、窒化物中にホットホールを注入することによって消去される。Nozakiら、「A 1-Mb EEPROM with MONOS Memory Cell for Semiconductor Disk Application」、IEEE Journal of Solid−State Circuits、第26巻、第4号、1991年4月、497から501ページに、分離した選択トランジスタを形成するためにドーピングされたポリシリコンゲートがメモリセルチャネルの一部に拡がっている分割ゲート構成における同様のセルが説明されている。その文献も参照されたい。前記2つの記事は、その全体を参照することにより本明細書に組み込まれる。参照することにより本明細書に組み込まれるWilliam D. Brown及びJoe E. Brewerによって編集された「Nonvolatile Semiconductor Memory Technology」、IEEE出版1998年の第1.2項にも、誘電電荷トラップ装置に適用可能である書き込み技法が説明されている。他のタイプのメモリ素子も使用できる。
図3は、メモリセル(例えば、NANDマルチステートフラッシュメモリ)の1ページを並列に読み出し及び書き込みするためのリード/ライト回路を備えたメモリデバイス210を示している。メモリデバイス210は、1つ以上のメモリダイ又はチップ212を有する。メモリダイ212は、メモリセルの(2次元又は3次元の)アレイ200、制御回路220、及び、リード/ライト回路230Aと230Bを有する。一実施形態では、様々な周辺回路によるメモリアレイ200へのアクセスはアレイの両側で対称的に実装されており、これにより、各側のアクセスライン及び回路の密度が半分に低減されている。リード/ライト回路230A及び230Bは、複数のセンスブロック300を有しており、それらのセンスブロック300は1ページのメモリセルを並列に読み出し又は書き込みすることができる。メモリアレイ100は、行デコーダ240Aと240Bを介したワードラインと、列デコーダ242Aと242Bを介したビットラインによってアドレス指定される。典型的な実施形態では、コントローラ244は、1つ以上のメモリダイ212のような同じメモリデバイス210(例えば、取り外し可能なストレージカード又はパッケージ)内に含まれる。命令、及びデータは、ライン232を介してホストとコントローラ244の間で転送され、また、ライン234を介してコントローラと1つ以上のメモリダイ212の間で転送される。
制御回路220は、リード/ライト回路230Aと230Bと協調して、メモリアレイ200に対してメモリ動作を実行する。制御回路220は、ステートマシン222、オンチップアドレスデコーダ224、及び電力制御モジュール226を有している。ステートマシン222は、メモリ動作のチップレベルの制御を提供する。オンチップアドレスデコーダ224は、ホスト又はメモリコントローラによって用いられるアドレスと、デコーダ240A、240B、242A及び242Bによって用いられるハードウェアアドレスの間のアドレスインタフェースを提供する。電力制御モジュール226は、メモリ動作中のワードライン及びビットラインに供給される電力及び電圧を制御する。一実施形態では、電力制御モジュール226は、供給電力より大きな電圧を作り出すことができる一つ以上のチャージポンプを有する。
一実施形態では、制御回路221、電力制御回路226、デコーダ回路224、ステートマシン回路222、デコーダ回路242A、デコーダ回路242B、デコーダ回路240A、デコーダ回路240B、リード/ライト回路230A、リード/ライト回路230B、及び/又はコントローラ244の一つ又は幾つかの組合せは、1つの管理回路、或いは複数の管理回路群と称されることがある。
図4は、センスモジュール480と呼ばれるコア部と、共通部490に分割された個々のセンスブロック300のブロック図である。一実施形態では、各ビットラインに対して個別のセンスモジュール480を用意し、一組のセンスモジュール480に対して一つの共通部490を用意してもよい。一例として、1個のセンスブロックは、1個の共通部490と8個のセンスモジュール480を有している。グループ内の各センスモジュールは、データバス472を介して協働する共通部と通信する。さらなる詳細としては、その全体を参照することにより本明細書に組み込まれる米国特許出願公開公報2006/0140007号を参照されたい。
センスモジュール480は、接続されたビットライン内の伝導電流が予め決められた閾値レベルより高いか低いかを判定するセンス回路470を備えている。ある実施形態では、センスモジュール480は、センスアンプと一般に呼ばれる回路を有する。センスモジュール480は、さらに、接続されたビットラインに電圧状態を設定するために用いられるビットラインラッチ482を有している。例えば、ビットラインラッチ482内で予め決められた状態がラッチされることによって、接続されたビットラインを、書き込み禁止を指定する状態(例えば、Vdd)に引き上げる(プル)する。
共通部490は、プロセッサ492、1組のデータラッチ494、及び、1組のデータラッチ494とデータバス420の間を接続するI/Oインタフェース496を備えている。プロセッサ492は計算を実行する。例えば、その機能の1つは、センスされたメモリセル内に記憶されているデータを特定し、特定したデータを1組のデータラッチ内に記憶することである。1組のデータラッチ494は、読み出し動作において、プロセッサ492によって特定されたデータビット群を記憶するために用いられる。一組のデータラッチ494は、書き込み動作において、データバス420から取り込んだデータビット群を記憶するためにも用いられる。取り込まれるデータビット群は、メモリ内に書き込む予定のライトデータ(書き込みデータ)を表す。I/Oインタフェース496は、データラッチ494とデータバス420の間のインタフェースを提供する。
読み出し又はセンス中には、システムの動作はステートマシン222の制御下にあり、ステートマシン222はアドレス指定されたセルへの種々の制御ゲート電圧の供給を制御する。メモリに用意された様々なメモリ状態に対応する様々な既定制御ゲート電圧のステップを進む毎に、センスモジュール480はこれらの電圧の1つに遷移し、バス472を介してセンスモジュール480からプロセッサ492に出力が提供される。その時点で、プロセッサ492は、センスモジュールの遷移イベントと、ステートマシンから入力ライン493を介して加えられた制御ゲート電圧についての情報によって、結果としてのメモリ状態を特定する。それから、プロセッサは、メモリ状態に対するバイナリ符号化を計算し、得られたデータビット群をデータラッチ494に格納する。コア部の別の実施形態では、ビットラインラッチ482は、センスモジュール480の出力をラッチするラッチ、及び、上記のようなビットラインラッチの二つの役割を持つ。
当然のことながら、いくつかの実装形態では複数のプロセッサ492を有することができる。一実施形態では、各プロセッサ492は出力ライン(図4には示されていない)を有し、各出力ラインは共にワイヤードOR(配線論理和)接続される。いくつかの実施形態では、出力ラインは、ワイヤードORラインに接続される前段階で反転される。ワイヤードORの結果を受け取るステートマシンは、書き込まれる全てのビットがいつ所望のレベルに到達したかを判断できる。したがって、この構成は、書き込み処理の完了時点を判定する書き込み検証処理における素早い判定を可能にする。例えば、各ビットがその所望のレベルに到達すると、そのビット用の論理「0」がワイヤードORラインに送られる(又はデータ「1」が反転される)。全てのビットがデータ「0」を出力すると(又はデータ「1」が反転されると)、ステートマシンは書き込み処理の完了を知る。各プロセッサが8個のセンスモジュールと通信する実施形態では、(いくつかの実施形態において)ステートマシンはワイヤードORラインを8回読み出す必要があってもよいし、あるいは、協働するビットラインの結果を蓄積するための論理をプロセッサ492に追加し、ステートマシンがワイヤードORラインを一度だけ読み出せば良いようにしてもよい。
書き込み又は検証処理の間、書き込まれるべきデータはデータバス420から1組のデータラッチ494内に記憶される。ステートマシン制御下の書き込み動作は、アドレス指定されるメモリセルの制御ゲートに加えられる一連の(値の増加を伴う)書き込み電圧パルスを伴う。各書き込みパルスに続いて検証処理が実行され、メモリセルが所望の状態に書き込まれたかどうかを判定する。プロセッサ492は、所望のメモリ状態に対する検証メモリ状態を監視する。その2つが一致したとき、プロセッサ492は、書き込み禁止を指定する状態にビットラインを引き上げる(プルする)ようにビットラインラッチ482を設定する。これにより、たとえ書き込みパルスがその制御ゲートに影響しても、ビットラインに接続したセルがさらに書き込みされないようにすることができる。他の実施形態では、プロセッサが最初にビットラインラッチ482をロードし、センス回路が検証処理中にそれに禁止値を設定する。
データラッチスタック494は、センスモジュールに対応するデータラッチのスタックを有する。一実施形態では、センスモジュール480毎に3個の(又は4個の、又はその他の数の)データラッチが存在する。センスモジュールはビットライン(及び、特定ブロック内のNANDストリング)と対応付けられているので、NANDストリング毎に3個のデータラッチ(例えば、L1、L2、及びL3)が存在する。それゆえ、同じNANDストリング内で特定のメモリセルとこれに隣接するセルは、3個のラッチの共通組を共有する。一実施形態では、ラッチ群のそれぞれは1ビットである。
いくつかの実装形態では、(必須ではないが)データラッチはシフトレジスタとして実装され、内部に記憶されたパラレルデータをデータバス420用にシリアルデータに変換したり、その逆を行ったりする。好適な一実施形態では、m個のメモリセルのリード/ライトブロックに対応する全てのデータラッチを相互にリンクしてブロックシフトレジスタを構成し、シリアル転送によってデータのブロックを入力または出力できるようにする。特に、リード/ライトモジュールの一群のデータラッチのそれぞれが、データバスへ或いはデータバスからデータを順に転送するようにリード/ライトモジュールのバンクを構成し、一群のデータラッチがあたかもリード/ライトブロック全体のシフトレジスタの一部であるかのようにしてもよい。
不揮発性記憶デバイスの多様な実施形態の構造及び/または動作についてのさらなる情報は次の文献に記載されている。(1)米国特許出願公開2004/0057287号、「Non-Volatile Memory And Method With Reduced Source Line Bias Errors」、2004年3月25日公開、(2)米国特許出願公開2004/0109357号、「Non-Volatile Memory And Method with Improved Sensing」、2004年6月10日公開、(3)米国特許出願公開2005/0169082号、(4)米国特許出願第11/099,133号、「Compensating for Coupling During Read Operations of Non-Volatile Memory」、発明者Jian Chen、2005年4月5日出願、及び、(5)米国特許出願第11/321,953号、「Reference Sense Amplifier For Non-Volatile Memory」、発明者Siu Lung Chan及びRaul−Adrian Cernea、2005年12月28日出願。これら5個の特許文献の全ては、その全体を参照することにより本明細書に組み込まれる。
図5は、メモリセルアレイ200の例示的な構造を示す。一実施形態においては、メモリセルのアレイは、メモリセル群の多数のブロックに分割される。フラッシュEEPROMシステムに一般的であるように、ブロックは消去の単位である。すなわち、各ブロックは共に消去される最小数のメモリセルを含む。各ブロックは、通常、複数のページに分割される。ページは書き込みの単位である。通常、1個又は複数ページのデータが1列のメモリセルに記憶される。ページは、1つ又は複数のセクタを記憶できる。セクタはユーザデータ及びオーバヘッドデータを含む。オーバヘッドデータは、通常、セクタのユーザデータから算出される誤り訂正符号(Error Correction Code:ECC)を含む。コントローラ(後述)の一部が、データがアレイに書き込まれているときにECCを計算し、データがアレイから読み出されているときにECCのチェックも行う。代わりに、ECC及び/又は他のオーバヘッドデータはそれらが関係するユーザデータとは異なるページに記憶され、または異なるブロックに記憶されることがある。ユーザデータのセクタは通常、磁気ディスクドライブ内のセクタサイズに相当する512バイトである。例えば8ページから32、64、128、或いはそれ以上のページまでの多数のページが1ブロックを形成する。
別の実施形態では、ビットラインは偶数のビットラインと奇数のビットラインに分けられる。奇数/偶数ビットラインアーキテクチャでは、共通ワードラインに沿っており奇数ビットラインに接続されたメモリセル群は、同時に書き込みが行われる。これに対し、共通ワードラインに沿っており偶数ビットラインに接続されたメモリセル群は、奇数ビットラインに接続されたメモリセル群の書き込みとは別のタイミングで同時に書き込みが行われる。
図5は、NANDストリングを形成する直列に接続された4個のメモリセルを示す。それぞれのNANDストリングに4個のセルが含まれるとして示されているが、4個より多い、または少ない数(例えば、16個、32個、64個、128個、或いは別の数、或いはNANDストリング上に存在し得るメモリセル)を使用できる。NANDストリングの一端は(選択ゲートドレインラインSGDに接続されている)ドレイン選択ゲートを介して対応するビットラインに接続され、他端は(選択ゲートソースラインSGSに接続されている)ソース選択ゲートを介してソースラインに接続される。
(検証を行って)成功した書き込み処理の最後では、メモリセルの閾値電圧は書き込まれたメモリセルの閾値電圧の1つ以上の区分内、又は、必要に応じて消去したメモリセルの閾値電圧区分内にあるべきである。図6は、各メモリセルが2ビットのデータを記憶する場合のメモリセルアレイの閾値電圧区分の例を示している。しかしながら、他の実施形態では、(例えば、1メモリセル当り3ビットデータのような)1メモリセル当り2ビットより多い、又は少ないデータを使用してもよい。図6は、消去されたメモリセル用の第1の閾値電圧区分Eを示している。書き込まれたメモリセル用の3つの閾値電圧区分A、B及びCも示している。一実施形態では、区分E内の閾値電圧は負値であり、区分A、B及びC内の閾値電圧は正値である。
図6の異なる閾値電圧範囲の各々は、データビットの組み所定の値に対応する。メモリセルに書き込まれたデータとセルの閾値電圧レベルの間の具体的な対応関係は、セルに対して採用されるデータ符号化方式に依存する。一実施形態では、データ値は、グレイコード割当を用いて閾値電圧範囲に割り当てられる。グレイコード割当を採用することによって、フローティングゲートの閾値電圧がその隣接する物理状態へ誤ってシフトした場合であってもその影響が1ビットだけに留まるようにすることができる。一例として、「11」が閾値電圧範囲E(状態E)に割り当てられ、「10」が閾値電圧範囲A(状態A)に割り当てられ、「00」が閾値電圧範囲B(状態B)に割り当てられ、「01」が閾値電圧範囲C(状態C)に割り当てられる。他の実施形態ではグレイコードが用いられずともよい。
一実施形態では、それぞれの状態に対する2ビットデータは異なるページに記憶される。図6の処理における状態Eに関して言えば、2個のページのそれぞれが「1」を記憶する。状態Aに関しては、上位ページがビット「1」を記憶し、下位ページがビット「0」を記憶する。状態Bに関しては、2個のページのそれぞれが「0」を記憶する。状態Cに関しては、上位ページがビット「0」を記憶し、下位ページがビット「1」を記憶する。
他の実施形態では、各状態の2ビットデータは、同一のページに記憶される。図11は4個の状態を示しているが、本発明は、4個より少ない或いは4個より多い状態数を有する他のマルチステート構造にも適用することができる。
図6はまた、メモリセルからデータを読み出すための3つの読み出し参照電圧、Vra、Vrb、及びVrcを示している。メモリセルの閾値電圧がVra、Vrb、及びVrcのいずれよりも小さいか、或いはいずれよりも大きいかを検査することによって、システムはそのメモリセルがどの状態にあるかを判定することができる。Vra、Vrb、及びVrcの値は例えば、Vra=0V、Vrb=1.25V、及び、Vrc=2.65Vである。他の例としては、Vra=0V、Vrb=1.35V、及び、Vrc=2.6Vである。さらに他の例としては、Vra、Vrb、及びVrcはそれぞれ、0.0V、1.25V、及び、2.5Vである。これら以外の値を用いることもできる。
図6はまた、3つの検証参照電圧Vva、Vvb、及びVvcを示している。メモリセルに状態Aを書き込むとき、システムは、そのメモリセルがVva以上の閾値電圧を有しているか否かを検証する。メモリセルに状態Bを書き込むときは、システムは、そのメモリセルがVvb以上の閾値電圧を有しているか否かを検証する。メモリセルに状態Cを書き込むときは、システムは、そのメモリセルがVvc以上の閾値電圧を有しているか否かを検証する。Vva、Vvb、及びVvcの値は例えば、Vva=0.40V、Vvb=1.80V、及び、Vvc=3.35Vである。他の例としては、Vva=0.5V、Vrb=1.9V、及び、Vrc=3.3Vである。さらに他の例としては、Vva、Vvb、及びVvcはそれぞれ、0.5V、1.8V、及び、3.2Vである。これら以外の値を用いることもできる。
一実施形態では、メモリセルは消去状態Eから書き込み状態A、B、或いはCのいずれへもダイレクトに書き込まれることができる。このことはフルシーケンス書き込みとして知られている。例えば、書き込まれるべきメモリセルの集団が、集団内の全メモリセルが消去状態Eとなるように最初に消去される。幾つかのメモリセルが状態Eから状態Aへと書き込まれている間に、他のメモリセルが状態Eから状態Bへ、及び/または、状態Eから状態Cへと書き込まれる。フルシーケンス書き込みは、図6において曲線矢印で表されている。
図7A〜Cは、不揮発性メモリをプログラムする(書き込む)別の処理を開示している。その処理は、前のページの隣接メモリセルへの書き込みに続いて、特定のページに対して特定のメモリセルに書き込みを行うことによって、その特定のメモリセルに対するフローティングゲート間カップリングの影響を低減する。図7A〜Cによって開示された処理の実施形態の一例では、不揮発性メモリセルは、4つのデータ状態を用いてメモリセル毎に2ビットのデータを記憶する。例えば、状態Eが消去状態であり、状態A、B、及びCが書き込み状態であると仮定する。状態Eはデータ11を記憶する。状態Aはデータ01を記憶する。状態Bはデータ10を記憶する。状態Cはデータ00を記憶する。両方のビットは隣接する状態A及びBの間で変化するので、これは非グレイコード化の一例である。データの物理的データ状態への他の符号化を用いることもできる。各メモリセルはデータを2ページへ記憶する。参照目的のために、以下ではこれらのデータのページは上位ページ及び下位ページと呼ぶが、他の呼び名を与えることもできる。図7A〜Cの処理の状態Aに関しては、上位ページはビット0を記憶し、下位ページはビット1を記憶している。状態Bに関しては、上位ページはビット1を記憶し、下位ページはビット0を記憶している。状態Cに関しては、両方のページがビットデータ0を記憶している。
図7A〜Cの書き込み処理は、2つのステップの処理である。第1ステップでは、下位ページが書き込まれる。下位ページがデータ1のままである場合、メモリセルの状態は状態Eに留まる。書き込まれるべきデータが0の場合、メモリセルの閾値電圧は上昇し、メモリセルは状態B’に書き込まれる(プログラムされる)。従って図7Aは、状態Eから状態B’へのメモリセルの書き込みを示している。図7Aに示した状態B’は暫定的状態Bであり、従って、検証ポイントはVvb’として示され、その検証点はVvbより低い。
一実施形態では、状態Eから状態B’にメモリセルが書き込まれた後、NANDストリング内の(WLn+1に接続されている)隣接メモリセルがその下位ページに対して書き込まれる。例えば、WL0に接続されたメモリセルの下位ページが書き込まれた後、同じNANDストリング上のメモリセルであるがWL1に接続されているメモリセル(隣接メモリセル)用の下位ページが書き込まれる。隣接メモリセルを書き込んだ後、先のメモリセルが状態Eから状態B’に上昇した閾値電圧を有していた場合、フローティングゲート間のカップリングの影響は書き込まれる先のメモリセルの見かけの閾値電圧を上昇させる。これは、図7Bに示されているように、状態B’の閾値電圧区分を拡大する影響を及ぼす。閾値電圧区分のこの見かけの拡大は、上位ページを書き込む際に修正される。
図7Cは、上位ページを書き込む処理を示している。メモリセルが消去状態Eであって上位ページが1のままである場合、メモリセルは状態Eに留まる。メモリセルが状態Eであって、書き込まれるべき上位ページデータが0の場合、メモリセルの閾値電圧は上昇し、メモリセルは状態Aになる。メモリセルが中間の閾値電圧区分550であって上位ページデータが1のままでよい場合、メモリセルは最終的な状態Bに書き込まれる。メモリセルが中間の閾値電圧区分550であって上位ページデータを0にすべき場合、メモリセルの閾値電圧は上昇し、メモリセルは状態Cになる。図7A〜Cに示されている処理は、フローティングゲート間のカップリングの影響を低減する。なぜならば、隣接メモリセルの上位ページへの書き込みだけが、与えられたメモリセルの見かけ上の閾値電圧に影響を与えるからである。
図7A〜Cは、2つのデータページと4つのデータ状態についての一例を提供するが、図7A〜Cによって開示される概念は、4つ以外の状態を有し2ページ以外であり、及び/または他のデータ符号化を採用する他の実施形態にも適用することができる。
図8は、図7A〜7Cのプログラミング方法を使用してメモリセルに書き込みするための順序の一実施形態を説明する表である。ワードラインWL0に接続されたメモリセルの場合、下位ページがページ0を形成し、上位ページがページ2を形成する。ワードラインWL1に接続されたメモリセルの場合、下位ページがページ1を形成し、上位ページがページ4を形成する。ワードラインWL2に接続されたメモリセルの場合、下位ページがページ3を形成し、上位ページがページ6を形成する。ワードラインWL3に接続されたメモリセルの場合、下位ページがページ5を形成し、上位ページがページ7を形成する。メモリセルは、ページ番号に従って、ページ0からページ7まで書き込まれる。他の実施形態では、他の書き込み順序も使用できる。
一実施形態では、ワードラインを満たすのに十分なデータが書き込まれた場合、システムはフルシーケンス書き込みを実行するように構築される。十分ではないデータが書き込まれた場合、書き込み処理は、受け取ったデータを下位ページに書き込む。次のデータを受け取ったとき、システムは、上位ページに書き込む。さらに別の実施形態では、システムは、下位ページに書き込みするモードで書き込みを開始し、これに続いてワードラインのメモリセルの全体(又は大部分)を満たすのに十分なデータを受け取った場合にフルシーケンス書き込みモードに移行する。このような実施形態のさらなる詳細は、発明者Sergy Anatolievich Gorobets及びYan Liの米国特許公開公報第2006/0126390号、米国特許出願第11/013,125号、出願日2004年12月14日、発明の名称「Pipelined Programming of Non-Volatile Memories Using Early Data」に開示されている。その全体は、参照により本明細書に組み込まれる。
図6〜8は、一メモリセル当り2ビットデータを記憶するための4個のデータ状態の手法を説明しているが、他の実施形態では、一メモリセル当り異なる数(又は同数)のビットデータを記憶するための異なる数のデータ状態を用いることができる。一例では、3ビットデータを記憶するために8個のデータ状態が用いられる。本明細書で説明する方法は、一メモリセル当り3ビットデータであり8個のデータ状態の場合であっても適用することができる。
図9は、選択されたワードラインに接続されているメモリセルに書き込む場合の書き込み処理を説明するフローチャートである。従って、図9の処理は、図6のフルシーケンス書き込み、あるいは、図7A〜Cのツーパス書き込み技術における一つのパス(第1パスと第2パスのいずれか一方)を実現するために使用される。一実施形態においては、図9の処理は、制御回路220の管理下で実行される(ステートマシン222が制御を与え、電力制御226が適切な信号を与える)。書き込み処理は複数ページの書き込みを内包していてもよいので、書き込み処理は、図9の処理を複数回に亘って実行するものであってもよい。
幾つかの実施形態(全てでなくともよい)では、メモリセルはソース側からドレイン側へ向けて書き込まれる。例えば、図5の場合、ワードラインWL0が最初に書き込まれ、次いでWL1が書き込まれ、次いでWL2が書き込まれるなどする。
図9の処理の一つの実施形態では、メモリセルは書き込みに先立って(ブロック単位又は他の単位で)消去される(ステップ620)。一実施形態では、メモリセルは、十分な時間p−ウェルを消去電圧(例えば20ボルト)に上げ、ソースラインとビットラインがフローティング状態にある間に選択されたブロックのワードラインを接地させることによって消去される。容量カップリングのため、未選択のワードライン、ビットライン、選択ライン、及びソースラインも消去電圧のかなりの割合の電圧に引き上げられる。従って、選択されたメモリセルのトンネル酸化物層に強力な電場が加わり、主としてファウラ−ノルドハイムトンネル効果によってフローティングゲートの電子が基板側に放出されて、選択されたメモリセルのデータが消去される。電子がフローティングゲートからp−ウェル領域に移動するにつれて、選択されたセルの閾値電圧が低下する。消去は、メモリアレイ全体、別々のブロック、又はセルの他の単位で行うことができる。メモリセルのブロックが消去された後、本明細書に説明されるように、種々のメモリセルに(場合によっては部分的に)書き込みを行うことができる。ステップ620で実行される消去は、ブロックの各ワードラインが書き込みされる前には実行される必要がないことに留意されたい。むしろ、ブロックを消去することができ、その後、これに続く消去を行わずに各ワードラインを書き込みすることができる。
ステップ622では、消去されたメモリセルの消去閾値電圧の区分を狭めるために、ソフト書き込みが実行される。いくつかのメモリセルは、消去処理の結果として必要以上に低い消去状態にあってよい。ソフト書き込みは、消去されたメモリセルの閾値電圧を一層狭い閾値電圧区分に移行させるために低い書き込みパルスを印加できる。消去とソフト書き込みは、各ページが書き込まれるのに先立って、1ブロックに1回実行されることに留意されたい。
ステップ624では、「データロード」命令がコントローラ244によって発行され、ステートマシン222に入力される。ステップ626では、ページアドレスを指定するアドレスデータがデコーダ回路に供給される。ステップ628では、アドレス指定されたページに対して、1ページの書き込みデータが書き込みのために入力される。そのデータは、選択されたビットラインのための適切なレジスタ/ラッチでラッチされる。いくつかの実施形態では、そのデータは、検証動作に用いるために選択されたビットライン用の第2レジスタでもラッチされる。ステップ630では、「書き込み」命令がコントローラ244から受け取られ、ステートマシン222に提供される。
「書き込み」命令によってトリガされ、ステップ628でラッチされたデータは、適切なワードラインに加えられる一連のパルスを使用してステートマシン222によって制御される選択されたメモリセルに書き込まれる。ステップ632では、Vpgm、即ち書込み電圧信号(例えば一連のパルス)が開始規模(例えば、〜12V又は他の適当なレベル)に初期化され、ステートマシン222によって維持される書込カウンタPCが0で初期化される。ステップ634では、書込み信号Vpgmのパルスが選択されたワードラインに加えられる。
ステップ636では、適切な目標レベルの組(即ち、Vva、Vvb、Vvc)を使って、選択されたメモリセルのデータ状態が検証される。選択されたメモリセルの閾値電圧が適切な目標レベルに達したことが検知されると、ビットラインの電圧を上げ、図9の検証の残りのためにそのメモリセルは後の書込みがロックアウトされる。書き込みが行われているメモリセルの全てが目標データレベルに達すると(ステップ638)、全ての選択されたメモリセルが書き込まれ、目標レベルに達したことが検証されるので、書き込み処理は成功裡に終了する。ステップ540では「合格」のステータスが通知される。ステップ638の幾つかの実施形態では、少なくとも既定数のメモリセルが目標状態に達したか否かがチェックされることに留意されたい。この既定数は、メモリセルの全数よりも少なくてよく、その場合、全てのメモリセルが適切な検証レベルに達する前に書き込み処理が停止することを許容する。書込みに成功しなかったメモリセルは、読み出し処理において誤り訂正を使って訂正され得る。
ステップ638において、全てのメモリセルがそれらの目標の状態に達していないと判断されると書き込み処理は継続される。ステップ650では、書込カウンタPCは、書込み制限値PLIMITに対してチェックされる。書込み制限値の一例は20である。ただし、実装形態に応じて書込み限界値は種々の値が採用され得る。書込カウンタPCが書込み制限値PLIMIT未満でない場合には、ステップ656において、書き込みが不成功だったメモリセルの数が、予め決められた数以下であるか否かが判定される。書き込みが不成功だったメモリセルの数が予め決められた数以下の場合、書き込み処理には合格のフラグが立てられ、合格のステータスがステップ658にて通知される。多くの場合、書き込みが不成功だったメモリセルは、読み出し処理において誤り訂正を使って訂正され得る。しかしながら、書き込みに不成功だったメモリセルの数が予め決められた数よりも多かった場合、書き込み処理には失敗のフラグが立てられ、ステップ660にて失敗のステータスが通知される。書込カウンタPCが書込み制限値未満の場合、Vpgmパルスの大きさがステップサイズ(例えば、0.2〜0.4ボルトステップサイズ)分増加され、書込カウンタPCが増分される。ステップ652の後、処理は、次のVpgmパルスを加えるためにステップ634へ戻る。
一般的には、検証動作(例えば図9のステップ636において実行される検証動作)、及び、読み出し動作において、選択されたワードラインは電圧に接続され、その電圧レベルは読み出し動作ごと(例えば、Vra、Vrb、Vrc)及び検証動作ごと(例えば、Vva、Vvb、Vvc)に指定されて、注目するメモリセルの閾値電圧がそのようなレベルに到達しているかどうかが判断される。ワードライン電圧を加えた後、ワードラインに加えられた電圧に応答してメモリセルがオンになったかどうかを判断するためにメモリセルの伝導電流が測定される。所定値よりも大きい伝導電流が測定される場合、メモリセルがオンになり、ワードラインに加わる電圧がメモリセルの閾値電圧より大きいと推定される。所定値より大きい伝導電流が測定されない場合には、メモリセルがオンにならず、ワードラインに加わる電圧がメモリセルの閾値電圧よりも大きくないと推定される。
読み出し動作又は検証動作におけるメモリセルの伝導電流を測定するための多くの方法がある。一例では、メモリセルの伝導電流は、そのメモリセルがセンスアンプ内の専用のコンデンサを放電する、或いは充電する速度で測定される。別の例では、選択されたメモリセルの伝導電流は、そのメモリセルを含むNANDストリングが対応するビットラインを放電することを許容する(あるいは許容することに失敗する)。ビットライン(又はコンデンサ)の電圧は、それが放電されたかどうかを確かめるために一定の期間の後に測定される。
図10は、1回の読み出し又は検証処理における種々の信号の変化を示すタイミング図である。例えば、メモリセルがバイナリメモリセルの場合、図10の処理は、ステップ636の繰り返し1回の間にメモリセル毎に一度実行される。メモリセルが4個の状態(例えばE、A、B、及びC)を取り得るマルチステートメモリセルの場合、図10の処理はステップ636の繰り返し1回の間にメモリセル毎に3回(例えば、Vvaで1回、Vvbで1回、及び、Vvcで1回)実行される。
図10は、センスアンプ内の専用コンデンサを放電させる速度によってメモリセルの伝導電流を計測する読み出し又は検証動作におけるソース、選択されたBL、SGS、WLn、WLn+1、WL_unesl、SGDの各信号を示している。SGDは、ドレイン側選択ゲートのゲートに与えられる信号を表している。SGSは、ソース側選択ゲートのゲートに与えられる信号である。WLnは、読み出し/検証のために選択された/目標のワードラインに与えられる信号である。WLn+1は、WLnにドレイン側で隣接する非選択のワードラインに与えられる信号である(例えば、WL2は、WL1のドレイン側隣接ワードラインである:図5参照のこと)。WL_unselは、ドレイン側の隣接ワードライン以外の非選択ワードラインに与えられる信号を表している。これらのワードラインは、適切なメモリセルの制御ゲートに接続されている。選択されたBLは、読み出し/検証で選択されたビットラインである。ソースは、メモリセルのためのソースラインに与えられる信号である。
全ての信号は、Vss(概ね0ボルト)で始まる。図10の時刻t1において、SGDがVdd(これは、DACによって駆動される変更可能な値である)に引き上げられ、非選択ワードライン(WL_unsel)がVread(これは、全ての非選択メモリセルをオンすることができるオーバードライブ電圧であり、その値は概ね5.5ボルトである)に引き上げられ、ドレイン側隣接ワードライン(WLn+1)がVreadX(後述する別のオーバードライブ電圧)に引き上げられ、選択ワードライン(WLn)が、読み出し動作のときはVcgr(例えば、図11のVra、Vrb、又はVrc)に引き上げられ、検証動作のときはVcgv(例えば、図11のVva、Vvb、又はVvc)に引き上げられる。一実施形態では、センスアンプは、NANDストリングの状態に関わらずにビットライン電圧を一定に保持し、センスアンプは、ビットラインをその電圧に「固定」したまま電流を計測する。時刻t1後の幾点かにおいて、かつ、時刻t3(実装に応じて定まる)よりも前に、センスアンプは、センスアンプ内のコンデンサが十分な量だけエネルギを消散したか否かを判定する。時刻t3において、図に示された信号は、Vss(又はスタンバイ或いはリカバリのための別値)まで引き下げられる。他の実施形態では、幾つかの信号のタイミングは変更し得ることに留意されたい。
読み出し動作とセンスアンプに関するさらなる情報は、次の文献に開示されている:(1)米国特許出願公開第2004/0057287号、「Non-Volatile Memory And Method With Reduced Source Line Bias Errors」、公開日2004年3月25日、(2)米国特許出願公開第2004/0109357号、「Non-Volatile Memory And Method with Improved Sensing」、公開日2004年6月10日、(3)米国特許出願公開第2005/0169082号、(4)米国特許出願第11/099,133号、「Compensating for Coupling During Read Operations of Non-Volatile Memory」、発明者Jian Chen、出願日2005年4月5日、及び、(5)米国特許出願第11/321,953号、「Reference Sense Amplifier For Non-Volatile Memory」、発明者Siu Lung Chan及びRaul−Adrian Cernea、出願日2005年12月28日。直前に示したこれら5つの特許文書の全ては、その全体を参照することにより本明細書に組み込まれる。
1組のデータ(例えば、ファイル、デジタル写真、ページデータ、ブロックデータ、或いは他の単位のデータ)を読み出す際、多くの場合は図10の読み出し動作を複数回実行する。図11は、データ読み出しの要求に応じて実行される読み出し処理の上位レベルのフローチャートを示す。ステップ750では、コントローラ244によって読み出し命令が発行され、その命令がステートマシン222に入力される。ステップ752では、ページアドレスを指定するアドレスデータがデコーダ回路に用意される。ステップ754では、以下で説明するように、1回又は複数回の読み出し動作(例えば、図10の読み出し動作或いは他の適切な代替動作)が実行される。読み出し動作の結果は、適切なラッチ494に格納される。そのデータは、ステップ756で通知される。データ通知の様々な実施形態は、ラッチからステートマシンへのデータ転送、コントローラへのデータ転送、ホストへのデータ転送、出力ファイルへのデータの格納、要求した装置へのデータの提供、などを含む。
上述したように、不揮発性メモリセルのフローティングゲート(或いは他の電荷蓄積要素)の見かけ上の閾値電圧のシフトは、隣接するフローティングゲート(或いは他の隣接する電荷蓄積素子)に蓄積されている電荷に起因する電界のカップリングによって生じる。この問題は、異なるタイミングで書き込まれた隣接メモリセルの組の間で、最も顕著に発生する。このカップリングに対応するため、対象メモリセルへの読み出し処理は、隣接メモリセルに補償を提供し、隣接メモリセルが特定のメモリセルに及ぼすカップリング効果を低減する。一実施形態では、検証処理における、隣接メモリセルに対する補償の後の適用のための要求条件のセットアップを含む。そのような実施形態では、WLn+1に加えられるオーバーライド電圧(図10に示したVreadX)が、典型的な値、例えば5.5Vから、例えば3Vに減じられる。それゆえ、検証処理において、VreadXは3ボルト(或いは、実装に応じて定まる適切な値)である。次の読み出しにおいて提供される補償は、WLnに対して実行される読み出し動作の間のWLn+1に対する、検証フェイズにおいて加えられる電圧と比較してそれより高い電圧の印加で構成されてよい。多くの従来のデバイスでは、全ての非選択のワードラインはVreadを受ける。図10の実施形態では、ドレイン側隣接ワードラインを除く全ての非選択ワードラインはVreadを受け、ドレイン側の隣接ワードラインはVreadXを受ける。Vreadの一例は5.5ボルトであるが、他の値も用い得る。
対象メモリセルを読み出す際に隣接メモリセルにどの程度の補償を供給すべきか決定するために、ここで説明するシステムは、前もって計画された電位状態の組からメモリセルの記憶状態(perceived condition)を判定する。例えば、図6と7を参照すると、システムは、隣接メモリセルが状態E、A、B、又はCのいずれであるかを特定する。補償の大きさと使用は、隣接メモリセルの状態に依存する。
対象のメモリセルを読み出す際の隣接メモリセルの状態を検査する一つの方法は、隣接メモリセルの状態を検査する読み出し動作を、対象のメモリセルのデータ状態を検出する読み出し動作に少なくとも部分的かつ一時的に混在させることである。即ち、WLn+1に対する読み出し動作を少なくとも部分的かつ一時的にWLnに対する読み出し動作に混在させることである。
図12は、図6の処理によって書き込まれたページデータを読み出す処理の一実施形態を説明するフローチャートである。図12の処理は、図11のステップ754を実行する際に用いることができる。図12の処理は、対象のメモリセルを読み出すときに、「所定の技法」を使った隣接メモリセルへの補償(その隣接メモリセルの記憶状態に基づく補償)を与える一例を示す。「所定の技法」とは、対象のメモリセルのデータ状態をセンスする読み出し動作に、隣接メモリセルの状態を検査する読み出し動作を少なくとも部分的かつ一時的に混在させるやり方によって隣接メモリセルの状態を検査する技法である。上述した2つの読み出し動作は、少なくとも部分的かつ一時的に混在される。なぜならば、幾つかの実施形態では、これらの読み出し動作は完全に代替され得るからであり、他方、他の実施形態では、その代替は、一群の読み出し動作の間で、或いは、一群と単独の読み出し動作の間で起こり得るからである。図17、18、及び19(後述)は、読み出し動作の少なくとも部分的で一時的な混在の付加的な例を提供する。
図12の処理は、データを読み出すための全体的な処理として実装し得る。ここで、データの読み出しは、ECCと連動して、或いは分離して、或いは先立って、特定の一つ又は複数のページデータ(又は他のグループ化されたデータ)に対する読み出し要求に応答して実行される。他の実施形態では、図12の処理は、データ回復ステップの一部として実行され得る。
図12のステップ802では、読み出し動作はワードラインWLn+1に対して実行される。即ち、図10に示される処理は、ワードラインWLn+1(図12の読み出し処理で注目している選択されたワードワインWLnに隣接するワードライン)に接続された全てのメモリセルに対して実行される。例えば、図12の処理が読み出す対象としてワードラインWL2を選択した場合、ステップ802では、ワードラインWL3に接続されたメモリセルに対して読み出し動作が実行される。ステップ802の処理を実行する際、WLn+1に加えられる読み出し比較電圧はVraである。従って、ステップ802は、WLn+1に接続されたメモリセルが状態E(図6参照)にあるデータを記憶しているか否かを判定する読み出し動作(図10)である。他のワードラインがVreadを受けるとき、VraがWLn+1に加えられる。ステップ802の読み出し動作の結果は、各ビットラインに対する1ラッチ(ラッチ494)に記憶される(ステップ804)。一実施形態では、各ビットラインは、3個のラッチを有しており、それらは、L1、L2、及びL3と称される。ステップ802の結果は、L1に記憶される。他の実施形態では、結果は他のラッチに記憶されてもよい。即ち、一実施形態では、ステップ802の読み出し命令に応答してメモリセルがオンしたならば、ラッチL1に「1」が格納される。ステップ806では、選択ワードラインWLnに対してマルチステートの読み出し処理が実行される。そのマルチステートの読み出し処理は、仮に4個の取り得るデータ状態が存在する場合には3つの読み出し動作(図10参照)の実行を含む。第1読み出し動作では、読み出し比較ポイントVcgrはVraである。第2の読み出し動作では、読み出し比較ポイントVcgrはVrbである。第3の読み出し動作では、読み出し比較ポイントVcgrはVrcである。ステップ806のマルチステート読み出し処理の各読み出し動作において、ドレイン側隣接ワードラインWLn+1はVreadEを受け、他の非選択ワードラインはVread(例えば5.5V)を受ける。一実施形態では、VreadEは3ボルトに等しい。VreadEが検証処理において用いられる同一オーバードライブ電圧に等しいので、補償は実行されてはいない。このことは、隣接メモリセル内の状態E(消去状態)にあるデータに関係する。VreadEは、フローティングゲート間のカップリングに対する補償を与えない。ステップ808では、ステップ804でL1が設定されていたならば、ステップ806のマルチステート読み出し処理の結果がラッチL1とL2に格納される。従って、ステップ808では、状態Eにある隣接セルを有するメモリセルは、マルチステート読み出し処理の結果をラッチL1とL2に格納する。各メモリセルは2ビットデータを記憶しているので、そのデータを記憶するためには2個のシングルビットラッチが必要とされる。ステップ806の結果は、隣接メモリセルが状態Eのときは「11」であり、隣接メモリセルが状態Aのときは「10」であり、隣接メモリセルが状態Bのときは「00」であり、隣接メモリセルが状態Cのときは「01」である。ステップ808においてラッチL1とL2に有効データがロードされた場合、ステップ810においてラッチL3に論理「1」がセットされ、このことは、ラッチL1とL2が有効データを有することを示す。そうでない場合は、L3に論理「0」が記憶される。
ステップ812では、ドレイン側隣接ワードラインWLn+1に接続されているメモリセルに対して、ドレイン側隣接ワードラインWLn+1を(比較ポイントとして)Vrbに維持することを含む読み出し動作が実行される。ステップ814では、メモリセルがオンしたら、そのメモリセルは状態E又はAである。ステップ812においてメモリセルがオンしており、それに対応するラッチL3が「0」である場合、対応するラッチL1に「1」が設定される。ステップ816では、マルチステート読み出しプロセスが選択ワードラインWLnに対して実行される。その読み出しプロセスにおいて、ドレイン側隣接ワードラインWLn+1はVreadAを受ける。ステップ816は、ステップ806と類似するものであるが、ドレイン側隣接ワードラインWLn+1がステップ806ではVreadEを受けるのに対してステップ816ではVreadAを受ける点で異なる。一実施形態では、VreadAは4.25ボルトに等しい。VreadAは、フローティングゲート間のカップリングに対して僅かな補償を提供する。ステップ814においてラッチL1に「1」に設定されており、ラッチL3の現在値が「0」であるならば、ステップ816の結果はラッチL1とL2に格納される。ステップ812においてL1とL2に有効データがロードされたならば、ステップ820においてラッチL3に「1」が設定される。
ステップ822では、ドレイン側隣接ワードラインWLn+1に接続されているメモリセルに対して、WLn+1にVrcを加えることを含む読み出し動作(図10)が実行される。ステップ822は、ステップ802と類似しているが、WLn+1にVraの代わりにVrcを加える点が異なる。ステップ824では、ステップ822でオンしたメモリセルであって対応するラッチL3に「0」が設定されているメモリセルに対応するラッチL1に「1」が設定される。ステップ826では、ドレイン側隣接ワードラインWLn+1がVreadBを受けながら、マルチステート読み出し処理がWLnに対して実行される。ステップ826はステップ806と類似であるが、ドレイン側隣接ワードラインWLn+1に対してVreadEの代わりにVreadBを用いる点で異なる。一実施態様では、VreadBは4.75ボルトに等しい。VreadBは、カップリングに対して中程度の補償を与える。ステップ828では、前もってステップ824においてL1に「1」が設定されているとともにラッチL3が現在「0」を格納している場合に、ステップ826の結果がラッチL1とL2に格納される。ステップ830では、ステップ828においてラッチL1とL2に有効データがロードされている場合にラッチL3に「1」が設定される。
ステップ832では、ドレイン側隣接ワードラインWLn+1がVreadCを受けながら、選択WLnに接続しているメモリセル対してマルチステート読み出し処理が実行される。ステップ832は、ステップ806と類似であるが、VreadEの代わりにステップ832ではVreadCを用いる点が異なる。一実施形態では、VreadCは5.5ボルトに等しい。VreadCは、VreadE、VreadA、及びVreadBと比べて最も大きい補償を与える。VreadCは、隣接するメモリセルが状態Cにある対象メモリセルに対して適切な補償を与える。ステップ834では、ラッチL3が「0」の場合にステップ832の結果がラッチL1とL2に格納される。図12に示されている処理において実行される全ての読み出し動作は、ワードラインWLnに接続されているメモリセルに記憶されたデータを読み出す共通の試行の一部であることに留意されたい。
図13は、選択されたワードラインのデータを読み出すためのマルチステート読み出し処理を説明するフローチャートである。このマルチステート読み出し処理は、その選択されたワードラインに接続しているメモリセルの(取り得るデータ状態群の中の)データ状態を特定する。図13の処理は、図12のステップ806、816、826、及び、832の一実装例であるが、隣接ワードライン(WLn+1)に加えるオーバードライブ電圧は、ステップ806、816、826、及び832のそれぞれで異なる。
図13のステップ940では、読み出し参照電圧Vraが選択ワードラインWLnに加えられる。ステップ942では、そのページに対応付けられたビットラインがセンスされ(即ち、前述したように、センスアンプ内のコンデンサをセンスする)、その制御ゲートへのVraの印加によって、アドレス指定されたメモリセルがオンするか否かが判定される。導通したビットラインはメモリセルがオンしたことを示しており、従って、そのメモリセルの閾値電圧はVraより低い(即ち状態Eにある)。ステップ944では、ビットラインのセンス結果がそれらのビットラインに対応するラッチに記憶される。ステップ940〜944は、図10で説明した処理を実行する。
ステップ946では、読み出し参照電圧Vrbが選択ワードラインWLnに加えられる。ステップ948では、上述の説明と同様にビットラインがセンスされる。ステップ950では、ビットラインに対応するラッチに結果が記憶される。ステップ946〜950は図10で説明した処理を実行する。
ステップ952では、読み出し参照電圧Vrcが選択ワードラインWLnに加えられる。ステップ954では、上述の説明と同様に、メモリセルがオンしたか否かを判定するためにビットラインがセンスされる。ステップ956では、ビットラインに対応したラッチにセンスステップの結果が記憶される。ステップ940〜944は、図10で説明した処理を実行する。
ステップ958では、各ビットラインに対するデータ値が決定される。例えば、メモリセルがVraで導通した場合、そのメモリセルは状態Eにある。メモリセルがVrbとVrcで導通し、Vraで導通しなかった場合、そのメモリセル状態Aにある。メモリセルがVrcで導通し、VraとVrbで導通しなかった場合、そのメモリセルは状態Bにある。メモリセルがVra、Vrb、Vrcで導通しなかった場合、そのメモリセルは状態Cにある。一実施形態では、データ値は、この処理の最後にプロセッサ492で決定される。他の実施形態では、プロセッサ492は、検査サイクルごとにデータ値を決定し、センス動作が実行される毎にデータ値の結果が更新される。ステップ960では、プロセッサ492は、各ビットラインに対応する適切なラッチに決定されたデータ値を格納する。他の実施形態では、種々のレベル(Vra、Vrb、及びVrc)のセンスは異なる順序で起こり得る。
図13の処理は、3回の読み出し動作(図10参照)を実施する。第1の読み出し動作(ステップ940〜944)は、WLnにVraを印加し、WLn+1にVreadXを印加し、他の非選択ワードラインにVreadを加える。第2の読み出し動作(ステップ946〜950)は、WLnにVrbを印加し、WLn+1にVreadXを印加し、他の非選択ワードラインにVreadを加える。第3の読み出し動作(ステップ952〜956)は、WLnにVrcを印加し、WLn+1にVreadXを印加し、他の非選択ワードラインにVreadを加える。VreadXの値は、図13の処理の繰り返し毎に変更される。例えば、図13の処理が図12のステップ806で実行されている場合は、VreadX=VreadEである。図13の処理が図12のステップ816で実行されている場合は、VreadX=VreadAである。図13の処理が図12のステップ826で実行されている場合は、VreadX=VreadBである。図13の処理が図12のステップ832で実行されている場合は、VreadX=VreadCである。
図14〜20は、図7A〜Cに関連する方法で書き込まれたものである読み出しデータを使った処理を説明している。図14の処理は、データ読み出しのための全体的な処理として実装することができる。そのデータ読み出しのための全体的な処理は、ECCの使用と併せて、或いは別個に、或いは先立って、特定の1又は複数のページ(又は他のグループ化された)データに対する読み出し要求に応答して実行される。他の実施形態では、図14の処理は、データ回復ステップの一部として実行され得る。
図7A〜Cの処理によって書き込まれたデータを読み出す際、メモリセルの上位ページを不確実性の下で書き込んだときの隣接メモリセルの下位ページへの書き込みに起因するフローティングゲート間のカップリングによる摂動が訂正されるべきである。それゆえ、隣接セルからのフローティングゲート間カップリングの影響に対する補償を行う際、処理の一実施形態では、隣接メモリセルの上位ページへの書き込みに起因するカップリングの影響を考慮することのみが必要とされる。それ故、図14のステップ1060では、処理は、隣接ワードラインが上位ページデータで書き込まれたか否かを判定する。隣接ワードラインの上位ページが書き込まれていない場合(ステップ1062)、今注目しているページは、フローティングゲート間のカップリングの影響に対する補償なしに読み出すことができる(ステップ1064)。隣接ワードラインの上位ページが書き込まれていた場合(ステップ1062)、今注目しているページは、ステップ1066において、フローティングゲート間のカップリングの影響に対する何らかの補償を使いながら読み出す必要がある。
一実施形態では、図7A〜Cの書き込み処理を実装しているメモリアレイは、1つ以上のフラグを記憶する一組のメモリセルを確保している。例えば、メモリセルの各行のための上位ページが書き込まれているか否かを示すフラグを記憶するために、1列のメモリセルを用いることができる。他の実施形態では、フラグのコピーを記憶するために冗長セルを用いることができる。適切なフラグをチェックすることによって、隣接ワードラインの上位ページが書き込まれているか否かが判定できる。
一実施形態では、フラグを格納するメモリセルは、フラグが立てられていない場合には状態Eのデータを格納し、フラグが立てられている場合には状態Cのデータが格納される。それゆえ、その特定のメモリセルをセンスしたとき、その制御ゲートへのVrcの印加に応答してそのメモリセルが導通したならば(オンしたならば)、そのメモリセルは状態Cのデータを格納していないことになり、フラグが立てられていないことが判明する。Vrcに応答してメモリセルが導通しなかったならば、そのメモリセルは、上位ページが書き込まれていることを示していると推定される。それ故、一実施形態では、ステップ1060は、比較ポイントとしてVrcを使ったWLn+1に対する読み出し動作(図10参照)を実行することによってフラグが立てられているか否かを確認する処理を行う。
他の実施形態では、フラグは1バイトに格納され得る。全てのビットに状態Cを格納するのに対して、1バイトは、フラグを表す一意に決まる8ビットコードを含み、それによってステートマシン222は、例えば、8ビットコードが状態Eにある少なくとも1ビット、状態Aにある少なくとも1ビット、状態Bにある少なくとも1ビット、及び、状態Cにある少なくとも1ビットを有することを知ることができる。上位ページが書き込まれていなかった場合、メモリセルのそのバイトは全て状態Eとなる。上位ページが書き込まれていた場合、メモリセルのそのバイトは、そのコードを格納する。一実施形態では、フラグは、コードを格納しているバイトのメモリセルのいずれかが、Vrcに応答してオンしないか否かを判定することによってチェックされ得る。他の実施形態では、フラグを格納しているメモリセルのバイトは、センスされてステートマシンへ送られ、ステートマシンが、ステートマシンが予測しているコードとメモリセルに格納されたコードが一致しているか否かを検証する。一致していれば、ステートマシンは上位ページが書き込み済みであると結論する。
そのようなフラグと書き込み処理のより詳しい説明は、米国特許第6,657,891、Shibataら、“Semiconductor Memory Device For Storing Multi-Valued Data,”に開示されており、その全体は参照により本明細書に組み込まれる。
図15は、隣接ワードラインからのフローティングゲート間カップリングに対する補償をシステムが必要としない場合における、注目するワードラインのデータを読み出すための処理(図14のステップ1064参照)の一実施形態を説明するフローチャートである。ステップ1150では、注目しているワードラインWLnに関してその上位ページと下位ページのいずれに対する読み出しであるかが判定される。下位ページに対する読み出しの場合、ステップ1152において、読み出し対象のページに関する選択ワードラインWLnへ電圧Vrbが加えられる。ステップ1154では、ビットラインがセンスされる(前述)。ステップ1156では、センスステップ1154の結果が適切なラッチに格納される。ステップ1152〜1156は、図10の読み出し動作を実行する。
ステップ1158では、フラグがチェックされ、そのページが上位ページのデータを含んでいるか否か判断される。フラグがない場合、現在のデータはいずれも中間状態(例えば状態550)であり、Vrbは用いるのには不適切な比較電圧であり、処理はステップ1160へ続く。ステップ1160では、ワードラインにVraが加えられ、ステップ1162でビットラインが再びセンスされ、ステップ1164でその結果が格納される。ステップ1160〜1164は、図10の読み出し動作を実行する。
ステップ1166(ステップ1164とフラグが立てられていた場合のステップ1158のいずれかに続いて)では、プロセッサ492は、格納すべきデータの値を決定する。一実施形態では、下位ページを読み出すとき、ワードラインに加えられたVrb(またはVra:いずれであるかはステップ1158に依存する)に応答してメモリセルがオンした場合には下位ページデータは「1」であり、そうでなければ下位ページデータは「0」である。ページアドレスが上位ページに相当する場合(図15のステップ1150)、ステップ1170において上位ページの読み出し処理が実行される。一実施形態では、図15の処理は、読み出し動作におけるドレイン側隣接ワードラインへのVreadEの印加を含む(図10参照、VreadX=VreadE)。
図16は、補償なしの上位ページ読み出し処理(図15のステップ1170)を実行するための一実施形態を説明するフローチャートである。ステップ1200では、読み出すページに対応した選択ワードラインに読み出し参照電圧Vrcが加えられる。ステップ1202では、上述したようにビットラインがセンスされる。ステップ1204では、ステップ1202の結果が適切なラッチに格納される。ステップ1200〜1204は、図10の読み出し動作を実行する。ステップ1206では、システムは、読み出すページに対応した上位ページの書き込みを示すフラグをチェックする。上述したように、ステップ1206の一実施形態は、コードを格納したバイトのメモリセルのいずれかがVrcに応答してオンしないか否かをチェックすることによって実行される。フラグが立てられていなかった場合(ステップ1208)、図16の処理は、上位ページが書き込まれていなかったという結果を得て終了する。
フラグが立てられていた場合(ステップ1208)、上位ページは書き込まれていたと推定され、ステップ1220で読み出し対象のページに対応する選択ワードラインにVrbが加えられる。ステップ1222では、上述したようにビットラインがセンスされる。ステップ1224では、ステップ1222の結果が適切なラッチに格納される。ステップ1220〜1224は、図10の読み出し処理を実行する。
ステップ1226では、読み出し対象のページに対応するワードラインに電圧Vraが加えられる。ステップ1228では、ビットラインがセンスされる。ステップ1230では、ステップ1228の結果が適切なラッチに格納される。ステップ1226〜1230は、図10の読み出し動作を実行する。
ステップ1232では、プロセッサ222は、ステップ1202、1222、及び、1228の3個のセンス処理の結果に基づいて読み出す対象の各メモリセルに格納されているデータ値を特定する。ステップ1234において、ステップ1232で特定されたデータ値は、ホスト/ユーザへの最終的な通信のための適切なラッチに格納される。一実施形態では、図16の処理は、読み出し動作中におけるドレイン側隣接ワードラインへのVreadEの印加を含む。
図14に戻り、ドレイン側隣接ワードラインの上位ページが書き込まれた状態である場合(ステップ1062を参照)、ステップ1066にて、注目している選択ワードラインが補償付きで読み出される。ステップ1066の一部として上位ページデータが読み出されているのであれば図17の処理が実行される。下位ページデータが読み出されているのであれば図19の処理が実行される。
図17のステップ1300では、ドレイン側隣接ワードラインWLn+1にVraを印加しながら、ドレイン側隣接ワードラインWLn+1に接続されているメモリセルに対して読み出し動作(図10)が実行される。メモリセルがオンした場合、対応するラッチL1に「1」が設定される。即ち、図10の処理が、ワードラインWLn+1に接続されている全てのメモリセル(又はメモリセル群のサブセット)に対して実施される。それらのメモリセルのそれぞれは、対応するラッチの組(L1、L2、及びL3)を有する。ステップ1300で読み出し動作の対象となるメモリセルのそれぞれに対して、そのメモリセルが状態Eにあればステップ1302にて対応するラッチL1に「1」が設定される。ステップ1304では、マルチステート読み出し処理(図13参照)が実行される。そのマルチステート読み出し処理の間、各読み出し動作においてドレイン側隣接ワードラインWLn+1はVreadNを受ける(VreadX=VreadN)。一実施形態では、VreadNは4.5ボルトである。一実施形態では、図7A〜Cの処理による書き込みが実行されるとき、検証はVreadX=4.5ボルトを使って実行される。状態Eの隣接メモリセルを有するメモリセルは、補償される必要がなく、それゆえ、検証中にオーバーライド電圧としてのVreadNを用いることによる補償を与える必要がない。ステップ1306では、ラッチL1に「1」が設定されている場合、ステップ1304のマルチステート読み出し処理の結果がラッチL2に格納される。
ステップ1308では、ドレイン側隣接ワードラインWLn+1にVrbを印加しながら、ドレイン側隣接ワードラインWLn+1に接続されているメモリセルに対して読み出し動作(図10参照)が実行される。ステップ1310では、L1が現在「0」に等しく、ステップ1308の処理において対応するメモリセルがオンしたならば、各ラッチL1に「1」が設定される。ステップ1310に先立ってL1が既に「1」であり、メモリセルがオンしたならば、L1を「0」にリセットする。メモリセルがオンしなかった場合は、L1は「0」に維持される。それゆえ、ステップ1310の最後において、隣接メモリセルが状態Aに設定されているメモリセルに対応するL1は「1」に設定される。同一ビットライン上のメモリセルとその隣接メモリセルは、同一のラッチL1、L2、及びL3を共有する。
ステップ1312では、ドレイン側隣接ワードラインWLn+1に読み出し比較電圧Vrcを印加しながら、ドレイン側隣接ワードラインWLn+1に対して読み出し動作(図10)が実行される。ステップ1314では、ラッチL1に既に「1」が設定されている場合、そのラッチはデータ「1」に維持される。ラッチL1がそのとき「0」であり、対応するメモリセルがオンしなかった場合、ラッチL1は「0」に維持される。ステップ1314の最後では、ドレイン側隣接メモリセルが状態A又は状態Cにあるならば、ラッチL1は「1」となる。ステップ1316では、選択ワードラインWLnに対してマルチステート読み出し処理(図13)が実行される。そのマルチステート読み出し処理の間、各読み出し動作においてドレイン側隣接ワードラインWLn+1はVreadX=VreadLを受ける。一実施形態では、VreadLは6.0ボルトである。従って、隣接メモリセルが状態A又はCであるメモリセルは、4.375ボルトのオーバードライブ電圧に対応した大きな補償を受ける。ラッチL1が「1」に設定されていた場合、ステップ1316のマルチステート読み出し処理の結果はラッチL2に格納される。
ステップ1320では、ドレイン側隣接ワードラインWLn+1を読み出し比較値Vrbに維持することを含み、ドレイン側隣接ワードラインWLn+1に接続されたメモリセルに対して読み出し動作(図10参照)が実行される。ステップ1322では、ラッチL1が既に「1」に設定されておりステップ1320で対応するメモリセルがオンしなかった場合、ラッチL1を「0」にリセットする。ラッチL1が「0」でありメモリセルがオンしなかった場合、L1に「1」を設定する。メモリセルがオンしたならば、L1に「0」を設定する。それゆえ、ステップ1322の終わりでは、状態Bにあるメモリセルに対応するラッチL1は「1」となる。ステップ1324では、ドレイン側隣接ワードラインWLn+1にVreadS(VreadX=VreadS)を印加しながら、選択ワードラインWLnに対してマルチステート読み出し処理(図13)が実行される。一実施形態では、VreadSは5.0ボルトである。このことは、小さい補償に相当する。ステップ1326では、ラッチL1が「1」に等しいメモリセルに対して、ステップ1324のマルチステート読み出し処理の結果がラッチL2に格納される。図17に示されている処理で実行される全ての読み出し動作は、ワードラインWLn上のメモリセルに格納された上位ページデータを読み出す際の共通した試行の一部である。
図7A〜7Cに戻り、フローティングゲート間のカップリングは、状態Eから状態Aへの、或いは中間状態550から状態Cへの隣接メモリセルの上位ページの書き込みから生じる。このフローティングゲートカップリングは、VreadLを用いて補償される。隣接メモリセルが状態Eにある場合は、補償が必要であるカップリングは生じていない。上位ページへの書き込みが中間状態550から状態Bへの変更であるメモリセルは、閾値電圧が僅かながら変化し、そのため、影響量が小さいカップリングは、VreadSを使って補償すればよい。
図18は、補償を用いた上位ページ読み出しのための他の実施形態の処理のフローチャートである。図18の処理と図17の処理の相違の一つは次の通りである。図17の処理では隣接メモリセルが状態Bにあるメモリセルを補償するのに対して、図18の処理では隣接メモリセルが状態Bにあるメモリセルに対する補償は与えない。ステップ1420では、ドレイン側隣接ワードラインWLn+1にVraを加えながら、ドレイン側隣接ワードラインWLn+1に接続されたメモリセルに対して読み出し動作(図10参照)が実行される。メモリセルがオンした場合、メモリセルに対応するラッチに「1」が設定される。従って、状態EにあるWLn+1に接続されたメモリセルの全てについて、それらのビットラインに対応するラッチには「1」が設定される。ステップ1424では、選択ワードラインWLnに対してマルチステート読み出し処理(図13)が実行される。そのマルチステート読み出し処理の間、ドレイン側隣接ワードラインWLn+1はVreadNを受ける(補償なし)。ステップ1426では、そのメモリセルに対するステップ1424のマルチステート読み出し処理の結果がそのメモリセルの各ラッチL2に格納される。ステップ1424は、VreadX=VreadNである図16の処理の実行を含むことに留意されたい。
ステップ1428では、ドレイン側隣接ワードラインWLn+1にVrbを加えながら、ドレイン側隣接ワードラインWLn+1に接続されたメモリセルに対して読み出し処理(図10)が実行される。ステップ1430では、ラッチL1が「0」であり、ステップ1428に応答してメモリセルがオンした場合、対応するラッチL1に「1」を設定する。ラッチL1に既に「1」が設定されており、メモリセルがオンした場合、対応するラッチL1を「0」にリセットする。メモリセルがオンしない場合、ラッチL1を「0」に維持する。それゆえ、ステップ1430の後では、状態Aにあるメモリセルに対応するラッチL1は「1」である。ステップ1432では、ドレイン側隣接ワードラインWLn+1にVrcを加えながら、ドレイン側隣接ワードラインWLn+1に接続されたメモリセルに対して読み出し動作(図10)が実行される。ステップ1434では、ラッチL1が「1」の場合、ラッチL1を「1」のままに維持する。ラッチL1が「0」であり対応するメモリセルがオンしなかった場合、ラッチL1に「1」を設定する。ラッチL1が「0」であり対応するメモリセルがオンしなかった場合、ラッチL1を「1」に維持する。ステップ1434の後、状態A又はCにあるメモリセルは、「0」に設定されたラッチL1を有する。ステップ1436では、ドレイン側隣接ワードラインWLn+1にVreadLを印加しながら、選択ワードラインWLnに対してマルチステート読み出し処理(図13)が実行される。ステップ1436は、VreadX=VreadLとして図13の処理を実行することを含む。ステップ1438では、ラッチL1に「1」が設定されていた場合、ステップ1436の結果がラッチL2に格納される。それゆえ、状態AとCにあるメモリセルでは、L2に既に格納されているデータは上書きされる。図18の処理はそれゆえ、隣接メモリセルが状態EとBにある上位ページデータを有しているメモリセルに対しては補償を行わず、隣接メモリセルが状態AとCにあるメモリセルに対して何らかの補償を行う。図18に示した処理において実行される全ての読み出し動作は、ワードラインWLn上のメモリセルに記憶された上位ページデータの読み出しの共通試行の一部であることに留意されたい。
図19の処理は、フローティングゲート間カップリングに対して補償を与えながら下位ページからデータを読み出すときに用いられる。図19のステップ1510では、ドレイン側隣接ワードラインWLn+1にVraを加えながら、ドレイン側隣接ワードラインWLn+1に対して読み出し動作(図10)が実行される。ステップ1510の読み出し動作に応じてメモリセルがオンしたならば、ステップ1512にてラッチL1に「1」が設定される。ステップ1514では、選択ワードラインWLnに接続されたメモリセルに対して読み出し動作(図10)が実行される。ステップ1514の読み出し動作は、選択ワードラインWLnにVrbを加えること、隣接ワードラインWLn+1にVreadNを加えること、及び、他の非選択ワードラインにVreadを加えること、を含む。従って、Vcgr=Vrb、VreadX=VreadNである。ステップ1516では、ラッチL1に「1」が設定されていた場合に、ステップ1514の結果がラッチL2に格納される。
ステップ1518では、ドレイン側隣接ワードラインWLn+1にVrbを印加しながら、ドレイン側隣接ワードラインWLn+1に接続されたメモリセルに対して読み出し動作(図10)が実行される。ステップ1520では、ラッチL1にデータ「0」が格納されており、ステップ1518に応答してメモリセルがオンした場合、その対応するラッチL1に「1」を設定する。ラッチL1が「1」であり、ステップ1518に応答してメモリセルがオンした場合、そのラッチL1を「0」にリセットする。ステップ1518に対してメモリセルがオンしなかった場合、ラッチL1を「0」に維持する。ステップ1520の後では、ドレイン側隣接メモリセルが状態Aであるところのメモリセルに対応するラッチL1は「1」である。ステップ1522では、ドレイン側隣接ワードラインWLn+1にVrcを印加しながら、ドレイン側隣接ワードラインWLn+1に接続しているメモリセルに対して読み出し動作(図10)が実行される。ステップ1524では、ラッチL1に既に「1」が設定されていた場合、L1を「1」に維持する。ラッチL1に「0」が格納されており、対応するメモリセルがオンしなかった場合、L1に「1」を設定する。L1が「0」であり、対応するメモリセルがオンした場合は、L1を「0」に維持する。ステップ1524の後では、状態AとCにあるメモリセルに対応するラッチL1には「0」が設定されている。ステップ1526では、選択ワードラインWLnに対して読み出し動作(図10)が実行される。ステップ1526の読み出し動作は、WLnにVrbを加えること(Vcgr=Vrb)、WLn+1にVreadL(VreadX=VreadL)を加えること(大きな補償を与えること)を、を含む。ステップ1528では、ラッチL1に「1」が設定されていた場合、ステップ1526の結果がラッチL2に格納される(Vrbに応答してメモリセルがオンした場合、データ「1」がラッチL2に格納される)。
ステップ1530では、ドレイン側隣接ワードラインWLn+1にVrbを印加しながら、ドレイン側隣接ワードラインWLn+1に接続されているメモリセルに対して読み出し動作(図10)が実行される。ステップ1532では、ステップ1530に応答してメモリセルがオンせず、そのメモリセルに対応するL1に既に「1」が設定されていた場合、L1を「0」にリセットする。メモリセルがオンせず、L1には「0」が設定されていた場合には、L1に「1」をセットする。ステップ1530に応えてメモリセルがオンした場合には、L1に「0」をセットする。ステップ1532の後では、ドレイン側メモリセルが状態Bであるところのメモリセルに対応するラッチL1は「1」である。ステップ1534では、選択ワードラインWLnに接続されたメモリセルに対して読み出し動作(図10)が実行される。ステップ1534の読み出し動作の間、選択ワードラインWLnには読み出し比較電圧Vrbが加えられ(Vcgr=Vrb)、ドレイン側隣接ワードラインWLn+1にはVreadS(小さい補償)が加えられる(VreadX=VreadS)。ステップ1536では、ラッチL1に現在「1」が設定されている場合に、ステップ1534の結果がラッチL2に格納される。図19の処理は、隣接メモリセルが状態A又はCにあるときには大きな補償を与え、隣接メモリセルが状態Bにあるときには小さな補償を与える。
図19の変形例では、隣接メモリセルが状態A又はCにあるときには補償を実行し、隣接メモリセルが状態E又はBにあるときには補償を実行しないようにしてもよい。この変形例では、ステップ1516では全てのメモリセルに対してデータを格納し、ステップ1528では、その時点でラッチL1が「1」を格納しているメモリセルに対してデータを上書きし、ステップ1530〜1536はスキップする。図19で示されている処理の一部として実行される全ての読み出し動作は、ワードラインWLn上のメモリセルに格納されている下位ページデータの読み出しの共通試行の一部であることに留意されたい。
本発明の前記の詳細な説明は、図解及び説明のために提示された。網羅的となること、あるいは本発明を開示されている正確な形式に制限することは意図されていない。上記の提示を鑑みて多くの変型及び変形が可能である。説明した実施形態は、本発明の原理及びその実際的な応用例を最もよく説明し、それにより当業者が多様な実施形態で、及び意図された特定の用途に適するような多様な変型で本発明を最もうまく活用できるようにするために選ばれた。本発明の範囲が本明細書に添付される請求項により定められることが意図される。

Claims (15)

  1. 不揮発性記憶装置からデータを読み出す方法であり、
    対象の不揮発性記憶素子に記憶された特定データ値を読み出すための共通試行の一部として、前記対象の不揮発性記憶素子に一組の読み出し動作を実行するステップであり、前記一組の読み出し動作の少なくとも1つのサブセットが、隣接する不揮発性記憶素子に複数の異なる電圧を加えるステップと、
    前記隣接不揮発性記憶素子に一群の読み出し動作を実行するステップであり、前記一群の読み出し動作が、少なくとも部分的かつ一時的に前記一組の読み出し動作に混在されているステップと、
    前記一群の読み出し動作に基づいて前記一組の読み出し動作の1つのサブセットから情報を選択するステップと、
    前記選択された情報に基づいて前記対象の不揮発性記憶素子に記憶されている前記特定データ値を通知するステップと、
    を含む方法。
  2. 前記複数の異なる電圧のそれぞれが前記隣接不揮発性記憶素子の複数の異なる状態のそれぞれに対応付けられていることを特徴とする請求項1の方法。
  3. 前記一群の読み出し動作は、前記隣接不揮発性記憶素子の第1状態を検査するステップと、前記隣接不揮発性記憶素子の第2状態を検査するステップと、前記隣接不揮発性記憶素子の第3状態を検査するステップを含んでおり、
    前記一組の読み出し動作は、読み出し動作の第1サブセットと、読み出し動作の第2サブセットと、読み出し動作の第3サブセットと、読み出し動作の第4サブセットを含んでおり、
    読み出し動作の前記第1サブセットは、前記第1状態に対応付けられた第1電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第2サブセットは、前記第2状態に対応付けられているが第1状態には対応付けられていない第2電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第3サブセットは、前記第3状態に対応付けられている第3電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第4サブセットは、前記隣接不揮発性記憶素子に第4電圧を加える複数の読み出し動作を含んでいる、
    ことを特徴とする請求項1又は2の方法。
  4. 前記一群の読み出し動作は、前記隣接不揮発性記憶素子の第1状態を検査するステップと、前記隣接不揮発性記憶素子の第2状態であって第1状態の閾値電圧よりも高い閾値電圧を有する第2状態を検査するステップと、前記隣接不揮発性記憶素子の第3状態であって第2状態の閾値電圧よりも高い閾値電圧を有する第3状態を検査するステップを含んでおり、
    前記隣接不揮発性記憶素子は、第3状態の閾値電圧よりも高い閾値電圧を有する第4状態となることが可能であり、
    前記一組の読み出し動作は、読み出し動作の第1サブセットと、第2サブセットを含んでおり、
    読み出し動作の前記第1サブセットは、前記第1状態と前記第4状態に対応付けられた第1電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第2サブセットは、前記第2状態と前記第3状態に対応付けられた第2電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第1サブセットは、前記第1状態の検査の後であって前記第2状態の検査の前に実行され、
    読み出し動作の前記第2サブセットは、前記第2状態の検査と前記第3状態の検査の後に実行される、
    ことを特徴とする請求項1又は2の方法。
  5. 前記一群の読み出し動作は、前記隣接不揮発性記憶素子の第1状態を検査するステップと、前記隣接不揮発性記憶素子の第2状態であって第1状態の閾値電圧よりも高い閾値電圧を有する第2状態を検査するステップと、前記隣接不揮発性記憶素子の第3状態であって第2状態の閾値電圧よりも高い閾値電圧を有する第3状態を検査するステップと、前記隣接不揮発性記憶素子の第4状態であって第3状態の閾値電圧よりも高い閾値電圧を有する第4状態を検査するステップを含んでおり、
    前記一組の読み出し動作は、第1読み出し動作、第2読み出し動作、及び、第3読み出し動作を含んでおり、
    前記第1読み出し動作は、前記第1状態に対応付けられた第1電圧を前記隣接不揮発性記憶素子に加えるステップを含んでおり、
    前記第2読み出し動作は、前記第2状態と前記第3状態に対応付けられた第2電圧を前記隣接不揮発性記憶素子に加えるステップを含んでおり、
    前記第3読み出し動作は、前記第4状態に対応付けられた第3電圧を前記隣接不揮発性記憶素子に加えるステップを含んでおり、
    前記第1読み出し動作は、前記第1状態の検査の後であって前記第2状態の検査の前に実行され、
    前記第2読み出し動作は、前記第2状態の検査と第3状態の検査の後であって前記第4状態の検査の前に実行され、
    前記第3読み出し動作は、前記第4状態の検査の後に実行される、
    ことを特徴とする請求項1又は2の方法。
  6. 前記対象の不揮発性記憶素子が、他の不揮発性記憶素子を含むNANDストリングで前記隣接不揮発性記憶素子の次に位置しており、
    前記一組の読み出し動作の少なくとも1つの読み出し動作が、前記対象の不揮発性記憶素子に読み出し比較電圧を加え、前記隣接不揮発性記憶素子に第1電圧を加え、前記他の不揮発性記憶素子に他の電圧を加え、
    前記一組の読み出し動作の少なくとも他の1つの読み出し動作が、前記対象の不揮発性記憶素子に前記読み出し比較電圧を加え、前記隣接不揮発性記憶素子に第2電圧を加え、前記他の不揮発性記憶素子に前記他の電圧を加え、
    前記他の電圧が前記第1電圧と異なる、
    ことを特徴とする請求項1又は2の方法。
  7. 前記一組の読み出し動作が、読み出し動作の第1サブセットと第2サブセットを含んでおり、
    読み出し動作の前記第1サブセットが、前記隣接不揮発性記憶素子に第1電圧を加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第2サブセットが、前記隣接不揮発性記憶素子に第2電圧を加える複数の読み出し動作を含んでいることを特徴とする請求項1又は2の方法。
  8. 対象の不揮発性記憶素子とこれの次に位置する隣接不揮発性記憶素子を含む一組の不揮発性記憶素子と、
    前記一組の不揮発性記憶素子と通信する1以上の管理回路と、を備えており、
    前記対象の不揮発性記憶素子からデータを読み出す試行の一部として、前記1以上の管理回路は、前記対象の不揮発性記憶素子に一組の読み出し動作を実行するとともに、前記隣接不揮発性記憶素子に一群の読み出し動作を実行し、
    1以上の前記一群の読み出し動作は、前記一組の読み出し動作の少なくとも一部と一時的に混在され、
    前記一組の読み出し動作は、前記隣接不揮発性記憶素子に複数の異なる電圧を加えるステップを含み、
    前記1以上の管理回路は、前記一群の読み出し動作に基づいて前記一組の読み出し動作のサブセットを選択するとともに、選択されたサブセットに基づいて前記対象の不揮発性記憶素子に記憶されたデータを特定する、
    ことを特徴とする不揮発性記憶システム。
  9. 前記複数の異なる電圧のそれぞれは、前記隣接不揮発性記憶素子の複数の異なる状態のそれぞれに対応付けられている、
    ことを特徴とする請求項8の不揮発性記憶システム。
  10. 前記一群の読み出し動作は、前記隣接不揮発性記憶素子の第1状態を検査するステップと、前記隣接不揮発性記憶素子の第2状態であって第1状態の閾値電圧よりも高い閾値電圧を有する第2状態を検査するステップと、前記隣接不揮発性記憶素子の第3状態であって第2状態の閾値電圧よりも高い閾値電圧を有する第3状態を検査するステップを含んでおり、
    前記一組の読み出し動作は、読み出し動作の第1サブセットと、読み出し動作の第2サブセットと、読み出し動作の第3サブセットと、読み出し動作の第4サブセットを含んでおり、
    読み出し動作の前記第1サブセットは、前記第1状態に対応付けられた第1電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第2サブセットは、前記第2状態に対応付けられているが第1状態には対応付けられていない第2電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第3サブセットは、前記第3状態に対応付けられている第3電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第4サブセットは、前記隣接不揮発性記憶素子に第4電圧を加える複数の読み出し動作を含んでおり、
    前記1以上の管理回路は、前記第1状態の検査の後であって前記第2状態の検査の前に読み出し動作の前記第1サブセットを実行し、
    前記1以上の管理回路は、前記第2状態の検査の後であって前記第3状態の検査の前に読み出し動作の前記第2サブセットを実行し、
    前記1以上の管理回路は、前記第3状態の検査の後に読み出し動作の前記第3サブセットを実行する、
    ことを特徴とする請求項8又は9の不揮発性記憶システム。
  11. 前記一群の読み出し動作は、前記隣接不揮発性記憶素子の第1状態を検査するステップと、前記隣接不揮発性記憶素子の第2状態であって第1状態の閾値電圧よりも高い閾値電圧を有する第2状態を検査するステップと、前記隣接不揮発性記憶素子の第3状態であって第2状態の閾値電圧よりも高い閾値電圧を有する第3状態を検査するステップと、前記隣接不揮発性記憶素子の第4状態であって第3状態の閾値電圧よりも高い閾値電圧を有する第4状態を検査するステップを含んでおり、
    読み出し動作の前記第1セットは、読み出し動作の第1サブセットと、読み出し動作の第2サブセットと、読み出し動作の第3サブセットを含んでおり、
    読み出し動作の前記第1サブセットは、前記第1状態に対応付けられた第1電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第2サブセットは、前記第2状態と前記第3状態に対応付けられた第2電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第3サブセットは、前記第4状態に対応付けられた第3電圧を前記隣接不揮発性記憶素子に加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第1サブセットは、前記第1状態の検査の後であって前記第2状態の検査の前に実行され、
    読み出し動作の前記第2サブセットは、前記第2状態の検査と前記第3状態の検査の後であって前記第4状態の検査の前に実行され、
    読み出し動作の前記第3サブセットは、前記第4状態の検査の後に実行される、
    ことを特徴とする請求項8又は9の不揮発性記憶システム。
  12. 前記一群の読み出し動作は、前記隣接不揮発性記憶素子の第1状態を検査するステップと、前記隣接不揮発性記憶素子の第2状態であって第1状態の閾値電圧よりも高い閾値電圧を有する第2状態を検査するステップと、前記隣接不揮発性記憶素子の第3状態であって第2状態の閾値電圧よりも高い閾値電圧を有する第3状態を検査するステップと、前記隣接不揮発性記憶素子の第4状態であって第3状態の閾値電圧よりも高い閾値電圧を有する第4状態を検査するステップを含んでおり、
    前記一組の読み出し動作は、第1読み出し動作と、第2読み出し動作と、第3読み出し動作を含んでおり、
    前記第1読み出し動作は、前記第1状態に対応付けられた第1電圧を前記隣接不揮発性記憶素子に加えることを含んでおり、
    前記第2読み出し動作は、前記第2状態と前記第3状態に対応付けられた第2電圧を前記隣接不揮発性記憶素子に加えることを含んでおり、
    前記第3読み出し動作は、前記第4状態に対応付けられた第3電圧を前記隣接不揮発性記憶素子に加えることを含んでおり、
    前記第1読み出し動作は、前記第1状態の検査の後であって前記第2状態の検査の前に実行され、
    前記第2読み出し動作は、前記第2状態の検査と第3状態の検査の後であって前記第4状態の検査の前に実行され、
    前記第3読み出し動作は、前記第4状態の検査の後に実行される、
    ことを特徴とする請求項8又は9の不揮発性記憶システム。
  13. 前記一組の読み出し動作は、読み出し動作の第1サブセットと第2サブセットを含んでおり、
    読み出し動作の前記第1サブセットは、前記隣接不揮発性記憶素子に第1電圧を加える複数の読み出し動作を含んでおり、
    読み出し動作の前記第2サブセットは、前記隣接不揮発性記憶素子に第2電圧を加える複数の読み出し動作を含んでいる、
    ことを特徴とする請求項8又は9の不揮発性記憶システム。
  14. 前記対象の不揮発性記憶素子と前記隣接不揮発性記憶素子は、他の不揮発性記憶素子を含むNANDストリングの一部であり、
    前記一組の読み出し動作の少なくとも1つの読み出し動作は、前記対象の不揮発性記憶素子に読み出し比較電圧を加え、前記隣接不揮発性記憶素子に第1電圧を加え、前記他の不揮発性記憶素子に他の電圧を加え、
    前記一組の読み出し動作の少なくとも1つの他の読み出し動作は、前記対象の不揮発性記憶素子に前記読み出し比較電圧を加え、前記隣接不揮発性記憶素子に第2電圧を加え、前記他の不揮発性記憶素子に前記他の電圧を加え、
    前記他の電圧が前記第1の電圧と異なる、
    ことを特徴とする請求項8又は9の不揮発性記憶システム。
  15. 前記一組の不揮発性記憶素子は、マルチステートNANDフラッシュメモリデバイスであることを特徴とする請求項8から14のいずれか1項に記載の不揮発性記憶システム。
JP2009544243A 2006-12-29 2007-12-24 隣接メモリセルの記憶状態を考慮した不揮発性メモリセルの読み出し Expired - Fee Related JP5174829B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US11/618,569 US7495962B2 (en) 2006-12-29 2006-12-29 Alternating read mode
US11/618,578 US7440324B2 (en) 2006-12-29 2006-12-29 Apparatus with alternating read mode
US11/618,578 2006-12-29
US11/618,569 2006-12-29
PCT/US2007/088787 WO2008083137A1 (en) 2006-12-29 2007-12-24 Reading of a nonvolatile memory cell by taking account of the stored state of a neighboring memory cell

Publications (2)

Publication Number Publication Date
JP2010515202A JP2010515202A (ja) 2010-05-06
JP5174829B2 true JP5174829B2 (ja) 2013-04-03

Family

ID=39358350

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009544243A Expired - Fee Related JP5174829B2 (ja) 2006-12-29 2007-12-24 隣接メモリセルの記憶状態を考慮した不揮発性メモリセルの読み出し

Country Status (8)

Country Link
EP (1) EP2078303B1 (ja)
JP (1) JP5174829B2 (ja)
KR (1) KR101100359B1 (ja)
CN (1) CN101627443B (ja)
AT (1) ATE475186T1 (ja)
DE (1) DE602007007974D1 (ja)
TW (1) TWI397075B (ja)
WO (1) WO2008083137A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7499319B2 (en) 2006-03-03 2009-03-03 Sandisk Corporation Read operation for non-volatile storage with compensation for coupling
US7813181B2 (en) * 2008-12-31 2010-10-12 Sandisk Corporation Non-volatile memory and method for sensing with pipelined corrections for neighboring perturbations
US8050092B2 (en) * 2009-05-29 2011-11-01 Seagate Technology Llc NAND flash memory with integrated bit line capacitance
KR101678888B1 (ko) * 2010-08-06 2016-12-07 삼성전자주식회사 비휘발성 메모리 장치의 데이터 판독 방법
KR101810640B1 (ko) 2010-11-26 2017-12-20 삼성전자주식회사 불휘발성 메모리 장치 및 메모리 시스템 그리고 그것의 읽기 방법
KR102089532B1 (ko) 2013-02-06 2020-03-16 삼성전자주식회사 메모리 컨트롤러, 메모리 시스템 및 메모리 시스템의 동작 방법
KR102318561B1 (ko) 2014-08-19 2021-11-01 삼성전자주식회사 스토리지 장치, 스토리지 장치의 동작 방법
KR102294352B1 (ko) 2015-04-20 2021-08-26 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법과 독출 방법
JP6779838B2 (ja) * 2017-06-28 2020-11-04 キオクシア株式会社 メモリシステムおよび制御方法
CN107481758B (zh) * 2017-08-09 2020-05-01 上海华虹宏力半导体制造有限公司 一种存储器的操作方法
KR102531995B1 (ko) * 2018-03-29 2023-05-15 에스케이하이닉스 주식회사 반도체 메모리 장치, 이를 포함하는 저장 장치 및 메모리 컨트롤러의 동작 방법

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60012081T2 (de) * 1999-05-11 2004-11-18 Fujitsu Ltd., Kawasaki Nichtflüchtige Halbleiterspeicheranordnung, die eine Datenleseoperation während einer Datenschreib/lösch-Operation erlaubt
US6771536B2 (en) * 2002-02-27 2004-08-03 Sandisk Corporation Operating techniques for reducing program and read disturbs of a non-volatile memory
US6781877B2 (en) * 2002-09-06 2004-08-24 Sandisk Corporation Techniques for reducing effects of coupling between storage elements of adjacent rows of memory cells
US7046568B2 (en) * 2002-09-24 2006-05-16 Sandisk Corporation Memory sensing circuit and method for low voltage operation
US7196931B2 (en) * 2002-09-24 2007-03-27 Sandisk Corporation Non-volatile memory and method with reduced source line bias errors
JP3913704B2 (ja) 2003-04-22 2007-05-09 株式会社東芝 不揮発性半導体記憶装置及びこれを用いた電子装置
JP3884448B2 (ja) * 2004-05-17 2007-02-21 株式会社東芝 半導体記憶装置
US7372730B2 (en) 2004-01-26 2008-05-13 Sandisk Corporation Method of reading NAND memory to compensate for coupling between storage elements
US7196928B2 (en) * 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling during read operations of non-volatile memory
US7187585B2 (en) * 2005-04-05 2007-03-06 Sandisk Corporation Read operation for non-volatile storage that includes compensation for coupling
WO2007103038A1 (en) 2006-03-03 2007-09-13 Sandisk Corporation Read operation for non-volatile storage with compensation for floating gate coupling

Also Published As

Publication number Publication date
EP2078303B1 (en) 2010-07-21
DE602007007974D1 (de) 2010-09-02
WO2008083137A1 (en) 2008-07-10
KR101100359B1 (ko) 2011-12-30
TWI397075B (zh) 2013-05-21
KR20090117709A (ko) 2009-11-12
ATE475186T1 (de) 2010-08-15
JP2010515202A (ja) 2010-05-06
TW200849263A (en) 2008-12-16
CN101627443A (zh) 2010-01-13
EP2078303A1 (en) 2009-07-15
CN101627443B (zh) 2012-10-03

Similar Documents

Publication Publication Date Title
JP5174829B2 (ja) 隣接メモリセルの記憶状態を考慮した不揮発性メモリセルの読み出し
JP4954223B2 (ja) フローティングゲート結合に対する補償を伴う不揮発性記憶装置に対する読み出し動作
JP5439488B2 (ja) 不揮発性メモリアレイの最終ワードラインのデータ保持力改善
US7440324B2 (en) Apparatus with alternating read mode
JP5113195B2 (ja) 閾値電圧区分に基づく動的検証
EP2577671B1 (en) Programming non-volatile storage with synchronized coupling
TWI402856B (zh) 用於在非揮發性儲存器中增加通道升壓之加強位元線預充電方案
EP2446443B1 (en) Forecasting program disturb in memory by detecting natural threshold voltage distribution
EP1964127B1 (en) Method for programming non-volatile memory with reduced program disturb using modified pass voltages
JP4855474B2 (ja) スマート検証を利用してマルチステート不揮発性メモリをプログラミングする方法
WO2008083131A2 (en) Method for programming with initial programming voltage based on trial
KR101428767B1 (ko) 비휘발성 저장소자의 판독 동작 동안에 파워 소모의 감소
JP2012531003A (ja) 不揮発性記憶装置においてチャネルブーストを改良するための縮小されたプログラミングパルス幅
JP4995273B2 (ja) 異なる電圧を使用する不揮発性記憶装置のための検証動作
WO2010044993A1 (en) Multi-pass programming for memory using word line coupling
KR101130332B1 (ko) 비휘발성 메모리에 대한 최상위 다중-레벨 상태의 고속 프로그래밍
JP4995264B2 (ja) 読み出し中におけるプログラム外乱による影響の軽減
US7495962B2 (en) Alternating read mode
JP4995265B2 (ja) 読み出し中におけるプログラム外乱による影響の軽減
JP4950299B2 (ja) 複数のブーストモードを使用した不揮発性メモリ内のプログラム妨害の低減

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120313

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120601

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20120713

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121204

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121228

R150 Certificate of patent or registration of utility model

Ref document number: 5174829

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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

LAPS Cancellation because of no payment of annual fees