JP2008535144A - 結合の補償を含む不揮発性記憶のための読み出し動作 - Google Patents

結合の補償を含む不揮発性記憶のための読み出し動作 Download PDF

Info

Publication number
JP2008535144A
JP2008535144A JP2008505382A JP2008505382A JP2008535144A JP 2008535144 A JP2008535144 A JP 2008535144A JP 2008505382 A JP2008505382 A JP 2008505382A JP 2008505382 A JP2008505382 A JP 2008505382A JP 2008535144 A JP2008535144 A JP 2008535144A
Authority
JP
Japan
Prior art keywords
data
volatile storage
page
state
storage element
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.)
Granted
Application number
JP2008505382A
Other languages
English (en)
Other versions
JP4778553B2 (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
Application filed by SanDisk Corp filed Critical SanDisk Corp
Publication of JP2008535144A publication Critical patent/JP2008535144A/ja
Application granted granted Critical
Publication of JP4778553B2 publication Critical patent/JP4778553B2/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
    • 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
    • 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
    • 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/3422Circuits or methods to evaluate read or write disturbance in nonvolatile memory, without steps to mitigate the problem

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)
  • Non-Volatile Memory (AREA)

Abstract

不揮発性メモリセルのフローティングゲート(又は他の電荷蓄積要素)上に蓄積される見かけの電荷内のシフトは、隣接フローティングゲート(又は他の隣接電荷蓄積要素)内に蓄積される電荷に基づく電界の結合のために発生する可能性がある。この問題は、異なる時間にプログラムされる隣接メモリセルの集合の間で最も顕著に発生する。この結合を補償するために、所定のメモリセル用の読み出し処理は、隣接メモリセルのプログラムされた状態を考慮することができる。

Description

本発明は、不揮発性メモリの技術に関する。
(関連出願の相互参照)
本出願は、この出願と同日に出願に出願されたJian Chenによる米国特許出願、発明の名称「Compensating For Coupling During Read Operations Of Non−Volatile Memory」、代理人ドケット番号SAND−01040US0に関連付けられ、その全体は参照により本明細書に組み込まれる。
本出願は、この出願と同日に出願されたYan Lie及びJian Chenによる米国特許出願、発明の名称「Read Operation For Non−Volatile Storage That Includes Compensation For Coupling」、代理人ドケット番号SAND−01045US0に関連付けられ、その全体は参照により本明細書に組み込まれる。
半導体メモリは、様々な電子装置に使用されることが一般的になってきている。例えば、不揮発性半導体メモリは、携帯電話、デジタルカメラ、パーソナルデジタルアシスタント、モバイルコンピュータ、非モバイルコンピュータ及び他の装置の中で使用されている。とりわけ一般的な不揮発性半導体メモリは、電気的消去・プログラム可能型読取専用メモリ(EEPROM)やフラッシュメモリである。
EEPROMとフラッシュメモリは両方ともに、フローティングゲートを利用している。フローティングゲートは、半導体基板内のチャネル領域上に配置されているとともに、そのチャネル領域から絶縁されている。フローティングゲートは、ソース領域とドレイン領域の間に配置されている。制御ゲートがフローティングゲートの上方に設けられており、そのフローティングゲートから絶縁されている。トランジスタの閾値電圧は、フローティングゲート上に保持される電荷量によって制御される。つまり、トランジスタのソース−ドレイン間を導通してトランジスタをオンする前に制御ゲートに印加しなければならない電圧の最小値は、フローティングゲート上の電荷のレベルによって制御される。
NANDフラッシュメモリ装置などのEEPROM又はフラッシュメモリ装置をプログラムする場合、一般的に制御ゲートにはプログラム電圧が印加され、ビットラインは接地される。チャネルからの電子は、フローティングゲートに注入される。電子がフローティングゲート内に蓄積すると、フローティングゲートは負に帯電する。そして、メモリセルの閾値電圧が上昇して、メモリセルがプログラムされた状態になる。プログラミングについてのさらなる情報は、米国特許出願第10/379,608号、発明の名称「Self−Boosting Technique」、出願日2003年3月5日と、米国特許出願第10/629,068号、発明の名称「Detecting Over Programmed Memory」、出願日2003年7月29日に見られる。両方の出願は、その全体を参照により本明細書に組み込まれる。
いくつかのEEPROM及びフラッシュメモリ装置はフローティングゲートを有しており、そのフローティングゲートを用いて二つの範囲の電荷を蓄積する。その結果、メモリセルは二つの状態(消去状態とプログラム状態)の間でプログラム/消去することができる。このようなフラッシュメモリ装置は、二値フラッシュメモリ装置と呼ばれることもある。
マルチ状態フラッシュメモリ装置は、禁止範囲によって分離された複数の異なる許容/有効プログラム閾値電圧範囲を識別することによって実現される。異なる閾値電圧範囲の各々は、メモリ装置内に符号化されたデータビットの集合の所定の値に対応している。
隣接するフローティングゲート内に蓄積される電荷に基づく電界の結合のため、フローティングゲート上に蓄積される見かけの電荷内にシフトが発生する可能性がある。このフローティングゲート間の結合現象は、米国特許第5,867,429号に記載されている。米国特許第5,867,429号は、その全体を参照により本明細書に組み込まれる。対象のフローティングゲートに隣接するフローティングゲートとは、同じビットライン上で隣接するフローティングゲート、同じワードライン上で隣接するフローティングゲート、又は対象のフローティングゲートから筋向かいのフローティングゲート(それらは、隣のビットラインと隣のワードライン上にあるので)を含むことができる。
フローティングゲート間の結合現象は、異なる時間にプログラムされる隣接するメモリセルの集合の間で最も顕著に発生する。例えば、第1メモリセルは、1つのデータの集合に対応するフローティングゲートに、あるレベルの電荷を印加することによってプログラムされる。次に、1つ以上の隣接するメモリセルは、データの第2集合に対応するフローティングゲートに、あるレベルの電荷を印加することによってプログラムされる。1つ以上の隣接するメモリセルがプログラムされた後は、第1メモリセルの電荷が、第1メモリセルに結合している隣接メモリセル上の電荷の影響を受ける。そのために、第1メモリセルから読み出される電荷のレベルが、プログラムされたものとは異なるようなものとなる。隣接メモリセルからの結合は、十分な量を読み出す見かけの電荷レベルをシフトさせ、記憶されたデータの誤った読み出しをもたらす。
マルチ状態装置では、許容閾値電圧範囲と禁止範囲は二値装置よりも狭い。そのため、マルチ状態装置にとって、フローティングゲート間の結合の影響はより大きな問題である。従って、フローティングゲート間の結合によって、メモリセルが許容閾値電圧範囲から禁止範囲にシフトする可能性がある。
メモリセルのサイズが縮小するにつれて、短いチャネルの影響や、大きな酸化物の厚さや、結合率のバラツキや、多くのチャネル添加物の変動のために、閾値電圧の本来のプログラミング及び消去分布が増大することが予想され、隣接状態間の利用可能な分離を減少させる。この影響は、二つの状態のみを用いるメモリ(二値メモリ)よりマルチ状態メモリの方がいっそう重大になる。さらに、ワードラインの間の間隔とビットラインの間の間隔の減少も、隣接するフローティングゲート間の結合を増大させる。
従って、フローティングゲート間の結合の影響を低減する必要がある。
フローティングゲート間結合を補償するために、所定のメモリセルの読み出し処理は、隣接するメモリセルのプログラム状態を考慮する。様々な実施形態が開示される。
一実施形態では、不揮発性記憶要素の少なくとも部分集合の不揮発性記憶要素の各々に対して、隣接する記憶要素内に蓄積される電荷レベルに基づいて所定のオフセット集合からあるオフセットを決定する。ある読み出し処理の集合が実行され、異なる1つの所定オフセット集合を用いて、全ての不揮発性記憶要素上で各読み出し処理を実行する。各オフセットに対して、少なくとも1つの読み出し処理がある。各不揮発性記憶要素は、各々の不揮発性記憶要素に対して決定したオフセットに関連した読み出し処理の適切なものから最終的なデータを提供する。
いくつかの実施形態は、少なくとも第1ページと第2ページのデータを記憶しているマルチ状態不揮発性記憶要素の第1集合からデータを読み出す方法を含んでいる。本方法は、マルチ状態不揮発性記憶要素の第1集合に隣接するマルチ状態不揮発性記憶要素の第2集合のための電荷レベルのデータを決定することを含んでいる。第1基準値に対して複数の読み出し処理を実行し、隣接する2つのデータ状態に対する閾値電圧を区別する。各読み出し処理では、第1基準値を備えた所定オフセット集合の異なるものを用いる。不揮発性記憶要素の第1集合の各々は、1つのオフセットに対応する読み出し処理の適切なものから最終的なデータを提供する。その1つのオフセットは、隣接する不揮発性記憶要素の各々に関連している。他の対の隣接データ状態の間の基準値に対する非ゼロオフセットに基づいてユーザのデータ読み出し処理から他のデータを用いることなく、最終的なデータに基づいて第1ページのデータ値が決定される。
いくつかの実施形態は、第1と第2グループのデータを記憶する、不揮発性記憶要素の第1集合と不揮発性記憶要素の第2集合をプログラミングすることを含んでいる。そのプログラミングは、第1グループのデータの隣接不揮発性記憶要素に書き込んだ後、第2グループのデータに対して特定の不揮発性記憶要素に書き込むことを含んでいる。不揮発性記憶要素の第1集合からデータを読み出そうとするときに、システムは、不揮発性記憶要素の第2集合からデータを読み出すこともできる。不揮発性記憶要素の第2集合からの読み出しでは正確なデータを読み出す必要はない。むしろその読み出し動作では、電荷レベル又は見かけの電荷レベルの指示を得るだけでよい。読み出し動作は、不揮発性記憶要素の第1集合上で実行される。これらの読み出し動作は、第1指示を提供する不揮発性記憶要素の第2集合の不揮発性記憶要素に隣接している不揮発性記憶要素の第1集合の不揮発性記憶要素のために第1補償を使用する。これらの読み出し動作は、第1指示を提供しない不揮発性記憶要素の第2集合の不揮発性記憶要素に隣接している不揮発性記憶要素の第1集合の不揮発性記憶要素のために第1補償を使用しない。
本発明の実施に適したメモリシステムの一例は、NANDフラッシュメモリ構造を用いることである。そのNANDフラッシュメモリ構造は、2つの選択ゲートの間に複数のトランジスタが直列に接続される構成することを含んでいる。直列に接続されたトランジスタと選択ゲートは、NANDストリングと呼ばれる。図1は、1つのNANDストリングを示す平面図である。図2は、それらの等価回路である。図1と2に示すNANDストリングは、第1選択ゲート120と第2選択ゲート122の間に挟まれているとともに、直列に接続されている4つのトランジスタ100、102、104及び106を備えている。選択ゲート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は、ワードラインWL3に接続されている。制御ゲート102CGは、ワードラインWL2に接続されている。制御ゲート104CGは、ワードラインWL1に接続されている。制御ゲート106CGは、ワードラインWL0に接続されている。一実施形態では、トランジスタ100、102、104及び106の各々がメモリセルである。他の実施形態では、メモリセルは複数のトランジスタを有していてもよく、図1と2に示したものと異なっていてもよい。選択ゲート120は、選択ラインSGDに接続される。選択ゲート122は、選択ラインSGSに接続される。
図3は、上記NANDストリングの断面図を示す。図3に示すように、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メモリセルなどを有することができる。本明細書における説明では、NANDストリング内のメモリセルは、特定の数に限定されるものではない。
各メモリセルは、アナログ又はデジタル形式で表されたデータを記憶することができる。1ビットのデジタルデータを記憶するときに、メモリセルの可能な閾値電圧の範囲は、2つの範囲に分割されて論理データ「1」と「0」が割り当てられる。NAND型フラッシュメモリの一例では、メモリセルが消去された後の閾値電圧は負になり、論理「1」として定義される。プログラム動作後の閾値電圧は正になり、論理「0」として定義される。閾値電圧が負のときに、制御電圧に0Vを印加することによって読み出しが試みられると、メモリセルがオンして論理1を記憶していることを示す。閾値電圧が正のときに、制御電圧に0Vを印加することによって読み出し動作が試みられると、メモリセルがオンしないで論理0を記憶していることを示す。
メモリセルは複数の状態を記憶することもでき、それによって複数のビットのデジタルデータを記憶できる。複数の状態のデータを記憶する場合、閾値電圧ウィンドウは複数の状態に分割される。例えば、4つの状態が使用される場合、データ値「11」、「10」、「01」、及び「00」に割り当てた4つの閾値電圧範囲が存在してもよい。NAND型メモリの一例では、消去動作後の閾値電圧は負であって「11」として定義される。「10」、「01」、及び「00」の状態に対しては正の閾値電圧が用いられる。いくつかの実施形態では、データ値(例えば、論理状態)はグレイ符号割り当てを用いて閾値範囲に割り当て、フローティングゲートの閾値電圧がその隣接する物理状態に誤ってシフトした場合に、1つのビットだけが影響を受けるようにする。メモリセルにプログラムされたデータとセルの閾値電圧範囲の間の特定関係は、メモリセルに対して採用されるデータ符号化方式に依存する。例えば、米国特許第6,222,762号及び2003年6月13日出願の米国特許出願第10/461,244号、「Tracking Cells For A Memory System」は、マルチ状態フラッシュメモリセルの様々なデータ符号化方式を説明している。両方の出願は、それらの全体を参照により本明細書に組み込まれる。
NAND型フラッシュメモリ及びそれらの動作に関連する例は、以下の米国特許/特許出願内に提供されており、それらの全ては、その全体を参照により本明細書に組み込まれる。米国特許第5,570,315号、米国特許第5,774,397号、米国特許第6,046,935号、米国特許第5,386,442号、米国特許第6,456,528号、及び米国特許出願第09/893,277号(公開番号第US2003/0002348号)。NANDフラッシュメモリに加えて他の種類の不揮発性メモリも、本発明とともに使用されてもよい。
フラッシュEEPROMシステム内で役立つ別の種類のメモリセルは、導電性フローティングゲートの代わりに非導電性誘電体材料を利用して、不揮発的な方法で電荷を蓄積する。このようなセルは、Chanらによる論文、「A True Single−Transistor Oxide−Nitride−Oxide EEPROM Device」、IEEE Electron Device Letters,Vol.EDL−8,No.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,Vol.26,No.4,1991年4月、497〜501ページを参照すると、分割ゲート構成内の同様のセルを説明しており、ここではドープされたポリシリコンゲートがメモリセルチャネルの一部上に延び、別個の選択トランジスタを構成している。以上の2つの論文は、それらの全体を参照により本明細書に組み込まれる。William D.Brown及びJoe E.Brewerによって編集された「Nonvolatile Semoconductor Memory Technology」,IEEE Press,1998のセクション1.2で言及されているプログラミング技術(参照によって本明細書に組み込まれる)も、誘電体電荷捕捉装置に適用可能であることをそのセクションに記載している。このパラグラフに記載されているメモリセルを、本発明とともに使用することもできる。従って、本明細書で説明される技術は、異なるメモリセルの誘電体領域間の結合にも適用される。
各セルに2つのビットを記憶する別の方式は、Eitanらの「NROM:A Novel Localized Trapping,2−Bit Nonvolatile Memory Cell」,IEEE Electron Device Letters,vol.21,no.11,2000年11月、543〜545ページに記載されている。ONO誘電体層は、ソース及びドレイン拡散部の間のチャネルに亘って延びている。1つのデータビットの電荷はドレインに隣接する誘電体層内に局所化され、他のデータビットの電荷はソースに隣接する誘電体層内に局所化される。マルチ状態データストレージは、誘電体内で空間的に分離した電荷ストレージ領域の二値状態を別個に読み出すことによって得られる。この段落で説明したメモリセルも、本発明とともに使用されることができる。
図4は、図1〜3に示したようなNANDセルのアレイの一例を示している。各列に沿って、ビットライン206は、NANDストリング150のドレイン選択ゲートのドレイン端子126を接続している。NANDストリングの各行に沿って、ソースライン204はNANDストリングのソース選択ゲートの全てのソース端子128に接続できる。メモリシステムの一部としてのNANDアーキテクチャアレイ及びその動作の一例は、米国特許第5,570,315号、第5,774,397号、及び第6,046,935号内に記載されている。
メモリセルのアレイは、メモリセルの多数のブロックに分割されている。フラッシュEEPROMシステムでは一般的なように、ブロックは消去のユニットである。つまり、各ブロックは、共に消去される最小数のメモリセルを有する。各ブロックは、一般的に複数のページに分割される。1つのページは、プログラミングのユニットである。一実施形態では、個々のページはセグメントに分割されて、そのセグメントは基本プログラミング動作として1度に書き込まれる最小数のセルを有することができる。一般的に、メモリセルの1行に1ページ以上のデータを記憶する。1ページは、1つ以上のセクタを記憶できる。1つのセクタは、ユーザデータとオーバヘッドデータを有する。オーバヘッドデータは一般的に、そのセクタのユーザデータから計算された誤り訂正符号(ECC)を有する。後述する制御部の一部は、データがアレイ内にプログラムされるときにECCを計算し、さらにデータがアレイから読み出されるときにそれをチェックする。また、ECC及び/又は他のオーバヘッドデータは、それらが関連するユーザデータ以外の異なるページ、もしくは異なるブロックにさえ記憶される。
ユーザデータのセクタは一般的に512バイトであり、磁気ディスクドライブ内のセクタのサイズに対応する。オーバヘッドデータは一般的に、追加の16〜20バイトである。多数のページがブロックを構成し、それは8ページから最大32、64又はそれ以上のページのいずれであってもよい。いくつかの実施形態では、NANDストリングの行がブロックを備えている。
一実施形態では、メモリセルは、十分な時間で消去電圧(例えば、20V)までpウェルを上昇させて、ソースラインとビットラインをフローティングさせながら選択ブロックのワードラインを接地することによって消去される。容量性結合によって、非選択ワードライン、ビットライン、選択ライン、及びcソースも消去電圧のかなりの割合まで上昇させられる。従って、選択メモリセルのトンネル酸化物層に強電界が印加され、フローティングゲートの電子が基板側に放出されるときに選択メモリセルのデータが消去される。電子がフローティングゲートからpウェル領域に送られると、選択セルの閾値電圧は低下する。メモリアレイ全体、別個のブロック又は別のセルのユニット上で、消去を実行することができる。
図5は、本発明の一実施形態による1ページのメモリセルを並列に読み出し及びプログラミングする読み出し/書き込み回路を備えたメモリ装置296を示している。メモリ装置296は、1つ以上のメモリダイ298を有している。メモリダイ298は、2次元のメモリセルアレイ300、制御回路310、及び読み出し/書き込み回路365を有する。メモリアレイ300は、行復号部330を介してワードラインによって、及び列復号部360を介してビットラインによってアクセスすることができる。読み出し/書き込み回路365は複数の検出ブロック400を有しており、1ページのメモリセルを並列に読み出し又はプログラムすることができる。一般的に制御部350は、1つ以上のメモリダイ298のように同じメモリ装置296(例えば、取り外し可能なストレージカード)内に含まれる。コマンド及びデータは、ライン320を介してホストと制御部350の間、及びライン318を介して制御部と1つ以上のメモリダイ298の間で送られる。
制御回路310は、読み出し/書き込み回路365と協調して、メモリアレイ300上でメモリ動作を実行する。制御回路310は、状態マシン312、オンチップアドレス復号部314及び電力制御モジュール316を有している。状態マシン312は、メモリ動作のチップレベル制御を提供する。オンチップアドレス復号部314は、ホスト又はメモリ制御部によって用いられるものと、復号部330及び360によって用いられるハードウェアアドレスの間のアドレスインタフェースを提供する。電力制御モジュール316は、メモリ動作中にワードライン及びビットラインに供給される電力及び電圧を制御する。
図6は、図5に示したメモリ装置296の別の構成を示している。様々な周辺回路によるメモリアレイ300へのアクセスはアレイの両側で対称的に実装されており、各側のアクセスライン及び回路の密度が半分に低減されている。従って、行復号部は行復号部330Aと330Bに分割され、列復号部は列復号部360Aと360Bに分割されている。同様に、読み出し/書き込み回路は、アレイ300の底部からビットラインに接続する読み出し/書き込み回路365Aと、アレイ300の上部からビットラインに接続する読み出し/書き込み回路365Bに分割されている。この方法により、読み出し/書き込みモジュールの密度は基本的に2分の1に低減される。図6の装置は、図5の装置で上述したような制御部を有することもできる。
図7は、検出モジュール380、及び共通部390と呼ばれるコア部分に分割された個々の検出ブロック400の概略図である。一実施形態では、各ビットラインの別個の検出モジュール380と、複数の検出モジュール380の集合の1つの共通部390があってもよい。一例では、検出ブロックは、1つの共通部390と8個の検出モジュール380を有することができる。グループ内の検出モジュールの各々は、データバス372を介して関連する共通部と通信できる。さらなる詳細としては、米国特許出願第11/026,536号、「Non−Volatile Memory & Method with Shared Processing for an Aggregate of Sense Amplifier」、出願日2004年12月29日を参照する。その全体は参照により本明細書に組み込まれる。
検出モジュール380は検出回路370を有しており、検出回路370は接続されたビットライン内の伝導電流が所定の閾値レベルより高いか低いかを決定する。検出モジュール380はさらにビットラインラッチ382を有しており、ビットラインラッチ382は接続されたビットライン上の電圧条件を設定するために用いられる。例えば、ビットラインラッチ382内にラッチされる所定の状態によって、接続されたビットラインはプログラム禁止を指定する状態(例えば、Vdd)に引っ張られる。
共通部390は、処理装置392、データラッチ集合394、及びデータラッチ集合394とデータバス320の間を接続するI/Oインタフェース396を有する。処理装置392は計算を実行する。例えば、その機能の1つは、検出されたメモリセル内に記憶されたデータを決定して、決定されたデータをデータラッチ集合内に記憶することである。データラッチ集合394は、読み出し動作中に処理装置392によって決定されたデータビットを記憶するために用いられる。それは、プログラム動作中にデータバス320から取り込まれたデータビットを記憶するためにも用いられる。取り込まれたデータビットは、メモリ内にプログラムされる予定の書き込みデータを表す。I/Oインタフェース398は、データラッチ394とデータバス320の間のインタフェースを提供する。
読み出し又は検出中、システムの動作は状態マシン312の制御下にあり、状態マシン312は、アドレスされたセルへの異なる制御ゲート電圧の供給を制御する。メモリによってサポートされた様々なメモリ状態に対応する様々な所定制御ゲート電圧のステップを進む際に、検出モジュール380はこれらの電圧の1つに移動し、バス372を介して検出モジュール380から処理装置392に出力が提供される。その時点で、処理装置392は、検出モジュールの移動イベントと入力ライン393を介して状態マシンから印加された制御ゲート電圧についての情報を考慮することによって得られたメモリ状態を決定する。それから、メモリ状態に対する二値符号化を計算し、得られたデータビットをデータラッチ394に記憶する。コア部の別の実施形態では、ビットラインラッチ382は、検出モジュール380の出力をラッチするラッチ、及び上記のようなビットラインラッチの両方としてダブルデューティを提供する。
当然のことながら、いくつかの実装形態では複数の処理装置392を有することができる。一実施形態では、各処理装置392は出力ライン(図7には示されていない)を有し、各出力ラインは共にワイヤードOR接続される。いくつかの実施形態では、出力ラインは、ワイヤードORラインに接続する前に反転される。ワイヤードORを受け取る状態マシンはプログラムされる全てのビットがいつ所望のレベルに到達するかを決定できるので、この構成はプログラミング処理がいつ完了するかについてのプログラム検証処理中の素早い決定を可能にする。例えば、各ビットがその所望のレベルに到達すると、そのビットの論理0がワイヤードORラインに送られる(又はデータ1を反転させる)。全てのビットがデータ0を出力する(又はデータ1を反転させる)と、状態マシンはプログラミング処理を終了することを認識する。各処理装置は8個の検出モジュールと通信するので、状態マシンはワイヤードORラインを8回読み出す必要があるか、又は状態マシンがワイヤードORラインを1度読み出すだけでよいように、処理装置392にロジックを追加して関連のビットラインの結果を記憶する。同様に、論理レベルを正確に選択することによって、グローバル状態マシンは、いつ第1ビットがその状態を変更して、それに応じてアルゴリズムを変更したかを検出することができる。
プログラム又は検証中に、プログラムされるデータはデータバス320からデータラッチの集合394内に記憶される。状態マシンの制御下のプログラム動作は、アドレスされるメモリセルの制御ゲートに印加される一連のプログラミング電圧パルスを有する。各プログラミングパルスに続いて読み戻し(検証)が実行され、セルが所望するメモリ状態にプログラムされたかどうかを決定する。処理装置392は、所望のメモリ状態に対する読み戻しメモリ状態を監視する。その2つが一致する場合、処理装置222はビットラインラッチ214を設定し、プログラム禁止を指定する状態にビットラインを引っ張る。これは、たとえプログラミングパルスがその制御ゲートに現れても、ビットラインに接続したセルがさらにプログラムされないようにする。他の実施形態では、処理装置が最初にビットライン382をロードし、検出回路が検証処理中にそれを禁止値に設定する。
データラッチスタック394は、検出モジュールに対応するデータラッチのスタックを有する。一実施形態では、検出モジュール380毎に3つのデータラッチが存在する。いくつかの実装形態では(必須ではないが)データラッチはシフトレジスタとして実装され、内部に記憶されたパラレルデータをデータバス320のシリアルデータに変換したり、その逆を行ったりする。好ましい実施形態では、m個のメモリセルの読み出し/書き込みブロックに対応する全てのデータラッチをともにリンクさせてブロックシフトレジスタを構成し、シリアル転送によってデータのブロックを入力又は出力できるようにする。特に、r個の読み出し/書き込みモジュールのバンクを調整し、そのデータラッチの集合が読み出し/書き込みブロックの全体のシフトレジスタの1部であっても、各々のデータラッチの集合が順にデータバスの内外にデータをシフトできるようにする。
図8は検出モジュール380の一例を示しているが、他の実装形態を用いることもできる。検出モジュール380は、ビットライン分離トランジスタ512、ビットライン引き下げ回路520、ビットライン電圧クランプ610、読み出しバス転送ゲート530及び検出増幅部600を有している。本実装形態では、検出増幅部600はビットラインラッチ382を含んでいる。なお、図8のメモリセル10とページ制御部540は、検出モジュール380に関連しているが構造的にその1部ではない。
一般的に、1ページのメモリセルは並列に動作する。従って、対応する数の検出モジュールが並列に動作中になる。一実施形態では、好ましくはページ制御部540は、並列に操作される検出モジュールに制御及びタイミング信号を提供する。
ビットライン分離トランジスタ512が信号BLSによって起動されると、検出モジュール380はメモリセルのビットライン36に接続可能になる。検出モジュール380は、検出増幅部600によってメモリセルの伝導電流を検出し、その読み出し結果を検出ノード501においてデジタル電圧レベルSEN2としてラッチし、ゲート530を介して読み出しバス532にそれを出力する。
検出増幅部600は基本的に、第2電圧クランプ620、事前充電回路640、識別又は比較回路650及びラッチ660を有する。識別回路650は、専用キャパシタ652を有する。一実施形態では、基準電圧は、読み出されるメモリセルの制御ゲートに印加される。基準電圧がメモリセルの閾値電圧より大きい場合は、メモリセルがオンしてそのソースとドレインの間で電流を導通させる。基準電圧がメモリセルの閾値電圧より大きくない場合は、メモリセルはオンしないでそのソースとドレインの間で電流を導通させない。多くの実装形態では、オン/オフは連続的な遷移であってもよく、メモリセルは異なる制御ゲート電圧に応じて異なる電流を導通することができる。メモリセルがオンであり電流を導通させている場合、導通させた電流によってノードSEN631上の電圧は低下し、他方の端子がVddであるキャパシタ652を効率的に充電し、そこにかかる電圧を増大させる。ノードSEN上の電圧が所定の検出期間中に所定のレベルまで放電すると、検出増幅部600はメモリセルが制御ゲート電圧に応じてオンしたことを報告する。
検出モジュール380の一つの特徴は、検出中にビットラインに定電圧の供給を含むことである。これは、ビットライン電圧クランプ610によって好ましく実施される。ビットライン電圧クランプ610は、ビットライン36と直列のトランジスタ612を備えたダイオードクランプのように動作する。そのゲートは、その閾値電圧VTよりも所望のビットライン電圧VBL高い電圧に等しい定電圧BLCにバイアスされる。このように、それは検出ノード501からビットラインを分離して、プログラム検証又は読み出し中に、所望のVBL=0.5〜0.7V等の定電圧レベルをビットラインに設定する。一般的に、ビットライン電圧レベルは、長い事前充電時間を避けるために十分に低く、さらに地動雑音や他の因子を避けるために十分に高いレベルに設定される。
検出増幅部600は検出ノード501を介して伝導電流を検出し、伝導電流が所定値より高いか低いかを決定する。検出増幅部は、その検出結果を検出ノード501における信号SEN2としてデジタル形式で読み出しバス532に出力する。
デジタル制御信号INV(基本的に、読み出し後の信号SEN2を反転させた状態)は、引き下げ回路520を制御するためにも出力される。検出した伝導電流が所定値よりも高い場合、INVはHIGHになりSEN2はLOWになる。この結果は、引き下げ回路520によって増幅される。引き下げ回路520は、制御信号INVによって制御されるnトランジスタ522と、制御信号GRSによって制御される別のnトランジスタ550を有する。GRS信号はLOWのとき、INV信号の状態にかかわらずビットライン36を浮遊させることができる。プログラミング中、GRS信号はHIGHになってビットライン36を引いて接地し、INVによって制御される。ビットラインを浮遊させる必要がある場合、GRS信号はLOWになる。
図10(H)〜10(O)は、図8に示した好ましい検出モジュールのタイミングを示している。他の特徴に関する検出モジュールの動作の追加の記述は、Raul−Adrian Cernea及びYan Liによる米国特許出願第10/254,830号、「Non−Volatile Memory And Method With Reduced Source Line Bias Errors」、出願日2002年9月24日、出願公開第2004/0057287号として2004年3月25日に公開、及びRaul−Adrian Cernea及びYan Liによる米国特許出願第10/665,828号、「Non−Volatile Memory And Method with Improved Sensing」、出願日2003年9月17日、出願公開第2004/0109357号として2004年6月10日に記載されている。これらの2つの参照した出願の全開示内容は、その全体を参照により本明細書に組み込まれる。
一実施形態では、ビットラインバイアスは、ビットライン電圧補償部560によって供給される。信号INVLとINVRの形態でその左の隣接部及び右の隣接部からINV信号を検出し、図9のバイアス電圧表に従ってバイアス電圧ΔVBLを各々供給する。バイアス電圧はノード532に供給され、ノード532はビットライン36に切り替え可能なように接続する。プログラミング中、信号BLSとINVはどちらもHIGHであるが、信号GRSはLOWである。これらは、ビットライン電圧補償部560へのビットライン36のアクセスを可能にする。
図9は、その左の隣接部と右の隣接部のプログラム禁止モードの関数として、ビットラインに供給されるオフセット電圧を列挙したバイアス電圧表である。中央の列は、その左の隣接部と右の隣接部のモードの関数として、プログラミング下の記憶ユニットのビットラインに印加されるオフセット又はバイアス電圧を列挙している。一般的に、プログラム禁止モードにある隣接部が多いほど、隣接ビットラインのフローティングゲートからの結合の摂動効果をオフセットするために、より多くのビットラインバイアスが必要とされる。
図10(A)〜10(G)は、本発明の第一実施形態に従ってプログラム動作中の電圧補償方式を示すタイミング図である。
図の電圧は、プログラミング状態及びプログラム禁止状態のNANDストリングのメモリアレイの様々なワードライン及びビットラインに印加される。プログラム動作は、ビットライン事前充電段階、プログラム段階及び放電段階にグループ化することができる。
ビットライン事前充電段階において
(1)ソース選択トランジスタが0VにおいてSGSによってオフになる(図10(A))が、ドレイン選択トランジスタはSGDがVSGに高くなることによってオンになり(図10(B))、それによってビットラインはNANDストリングにアクセスできる。
(2)プログラム禁止NANDストリングのビットライン電圧は、VDDによって与えられた所定電圧まで上昇できる(図10(F))。プログラム禁止NANDストリングのビットライン電圧がVDDまで上昇すると、ドレイン選択トランジスタ上のゲート電圧SGDがVDDに低下したときに、プログラム禁止NANDストリングは浮遊する。同時に、プログラミングNANDストリングのビットライン電圧は、能動的に0Vに引き下げられる(図10(G))。
(3)プログラミングNANDストリングのビットライン電圧は、ビットライン電圧補償部560によって供給されたΔVBLでバイアスされる(図10(G))。電圧補償部560から出力したΔVBLの値は、その隣接部の1方又は両方がプログラム禁止モードであるかどうかに依存する。
(4)NANDストリングのある行のドレイン選択トランジスタに接続したドレインワードラインは、VDDに低下させた電圧を有する。これはそれらのプログラム禁止NANDストリングのみを浮遊させ、それらのドレイン選択トランジスタはオフになるので(図10(B)及び10(F))、それらのビットライン電圧はVDDと同等になる。プログラムされるメモリトランジスタを含むNANDストリングについては、それらのドレイン選択トランジスタは、それらのドレインにおける0Vに近いビットライン電圧に対してオフにならない。
(5)アドレスされないNANDストリング内のメモリトランジスタは、それらを完全にオンにするためにVPASSに設定した制御ゲート電圧を有する(図10(C))。プログラム禁止NANDストリングは浮遊しているので、アドレスされていないメモリトランジスタの制御ゲートに印加される高いVPASSとVPGM(プログラム電圧)は、それらのチャネルと電荷蓄積要素の電圧を押し上げ、それによってプログラミングを禁止する。VPASSは一般的に、VPGM(例えば、〜15−24V)に対してある中間の電圧(例えば、〜10V)に設定される。
プログラム段階において
(6)プログラミング電圧VPGMは、プログラミングに選択されたメモリトランジスタの制御ゲートに印加される(図10(D))。プログラム禁止状態の(つまり、押し上げられたチャネル及び電荷蓄積ユニットを備えた)蓄積ユニットはプログラムされない。プログラミング状態の蓄積ユニットは、プログラム禁止モードである隣接部の1方又は両方による任意の摂動をオフセットするために、バイアスされたビットライン電圧(図10(G))を用いてプログラムされる。プログラミング蓄積ユニット上の摂動は、ワードラインからの高い制御ゲート電圧によって、容量的に押し上げられた浮遊チャネル及び電荷蓄積ユニットを備えたワードライン方向の隣接蓄積ユニットによる。これは、NANDストリングがプログラム禁止モードに置かれたときに発生する。これは、プログラムされるメモリトランジスタの電荷蓄積ユニット上の電圧を撹乱する(増大させる)不要な影響も有する。その隣接部が蓄積ユニットのプログラミング中に何を実行しているかを検出することによって、その隣接部の摂動は適切なビットライン電圧バイアスに応じて補償される。
放電段階において
(7)様々な制御ラインとビットラインが放電可能になる。
検出メモリセルに関連する一つの潜在的な問題は、ソースラインバイアスである。多数のメモリセルを並列に検出する場合、それらを組み合わせた電流は、有限の抵抗を備えた接地ループ内にかなりの電圧上昇をもたらす可能性がある。これがソースラインバイアスをもたらし、閾値電圧検出を用いる読み出し動作中に誤差を発生させる。
図11は、接地に対して有限の抵抗を備えたソースライン内の電流によるソース電圧誤差の問題を示している。読み出し/書き込み回路365は、1ページのメモリセル上で同時に動作する。読み出し/書き込み回路365内の各検出モジュール380は、ビットラインを介して対応するセルに接続されている。例えば、検出モジュール380は、メモリセル(例えば、セル1)の伝導電流i1(ソース−ドレイン電流)を検出する。伝導電流は検出モジュールからビットラインを介してメモリセルのドレインに流れ、ソースライン204を介して接地する前にソースから流れ出る。集積回路チップでは、メモリアレイ内のセルのソースは、メモリチップのある外部接地パッド(例えば、Vssパッド)に接続したソースライン204の複数の分岐として、ともに全て結合されている。ソースラインの抵抗を低減するために金属ストラップを用いている場合でも、メモリセルのソース電極と接地パッドの間には有限の抵抗Rが残る。一般的に、接地ループ抵抗Rは、およそ50Ωである。
並列に検出されるメモリのページ全体に対して、ソースライン204を介して流れる全電流は伝導電流の全ての合計、つまりiTOT=i+i+…+iとなる。一般的に、各メモリセルは、電荷蓄積要素内にプログラムされる電荷の量に応じて伝導電流を有する。メモリセルの所定の制御ゲート電圧に対して小さな電荷を与えることで、比較的大きな伝導電流を生成できる。メモリセルのソース電極と接地パッドの間に有限の抵抗が存在すると、抵抗を介した電圧降下はVdrop=iTOTRで特定される。
例えば、4,256ビットラインが同時に放電する(各々が1μAの電流を備えている)場合、ソースラインの電圧降下は4,000ライン×1μA/ライン×50Ω=0.2Vと等しくなる。メモリセルの閾値電圧を検出する際、このソースラインバイアスは0.2Vの検出誤差に寄与する。
図12は、ソースライン電圧降下によって生じるメモリセルの閾値電圧レベル内の誤差を示している。メモリセルの制御ゲートに供給される閾値電圧VTは、GNDに対するものである。しかしながら、メモリセルで見られる実質的なVTは、その制御ゲートとソースの間の電位差である。供給されるVTと実質的なVTの間には約Vdropの差がある(ソース14からソースラインへの電圧降下の小さな寄与は無視する)。このVdropつまりソースラインバイアスは、メモリセルの閾値電圧を検出するときに、例えば、0.2Vの検出誤差に寄与する。
本発明の一様態によると、ソースラインバイアスを低減する方法は、多経路検出の特徴と技術を備えた読み出し/書き込み回路によって実現される。各経路は、所定の限界電流値より高い伝導電流を備えたメモリセルを識別して遮断するために役立つ。一般的に、各経路では、所定の限界電流値は、既存の単一経路検出の破断点電流値に徐々に収束する。このように、より高い電流セルは遮断されるので、以降の経路内の検出はソースラインバイアスにほとんど影響されない。
図13は、4状態メモリのメモリセルの1ページの集団分布例を示している。メモリセルの各クラスタは、互いに明確に分離された伝導電流ISDの範囲内でプログラムされる。例えば、破断点381は、各々が「A」と「B」のメモリ状態を表す2つのクラスタ間の限界電流値である。既存の単一経路検出では、「B」のメモリ状態に対して必要な条件は、破断点381より小さい伝導電流を有することである。ソースラインバイアスがない場合、供給された閾値電圧VTに対する集合分布は、実線の曲線によって示される。しかしながら、ソースラインバイアス誤差のために、その制御ゲート電圧における各メモリセルの閾値電圧はソースラインバイアスによって増大される。これは、バイアスを補償するために、より高い制御ゲート電圧を印加する必要があることを意味する。図13では、ソースラインバイアスは、より高い見かけのVTに向かって分布がシフト(破線)する結果をもたらす。高いワードライン電圧が印加されるほど多くの全アレイ電流が流れるため、より高い閾値(より低い電流)メモリ状態を検出する場合、シフトはより大きくなる。ソースライン誤差がない場合に対して破断点381が設計されると、ソースライン誤差の存在によって、伝導電流を備えた「A」状態の末端の一部は非伝導領域に現れることになり、それは破断点381より高くなることを意味する。これによって、「A」(高い伝導)状態の1部は「B」(低い伝導)状態として誤って区分されることになる。
例えば、この多経路検出は2つの経路(j=1〜2)で実装される。第1経路の後、破断点381より高い伝導電流を備えているこれらのメモリセルは、それらの伝導電流をオフにすることによって識別されて取り除かれる。これらの伝導電流をオフにする好ましい方法は、それらのビットライン上のドレイン電圧を接地に設定することである。第2経路(j=2)では、ソースラインバイアスに寄与する高い電流状態を取り除くため、破線の分布は実線の分布に近づく。従って、限界電流値として破断点381を用いる検出は、「A」状態を「B」状態とする間違いをもたらさない。
既存の1経路方式と比べて、この2経路法は、「A」セルの1部を「B」又はより高いセルとして誤認する可能性を大幅に低減する。2経路より多い経路も想定されるが、経路数を増大させることによる見返りは減少する。さらに、各経路は同じ限界電流を有することができ、もしくは連続的な各経路では、用いられる限界電流は既存の単一経路検出で通常用いられる破断点の限界電流に収束する。さらに、破断点は、状態EとAの間、及び状態BとCの間で用いることもできる。
一般的に、多経路検出ブロック400の対応する数によって操作される1ページのメモリセルが存在する。ページ制御部540は、各検出モジュールに制御及びタイミング信号を供給する。一実施形態では、ページ制御部540は、制御回路310内の状態マシン312の1部として実装される。別の実施形態では、ページ制御部540は、読み出し/書き込み回路365の1部である。ページ制御部540は、所定数の経路(j=1〜N)を通して多経路検出ブロック400の各々をサイクルし、さらに各経路に対して所定の限界電流値I(J)を供給する。限界電流値は、検出期間として実装することもできる。最後の経路の後、ページ制御部540によって、信号NCOを備えた転送ゲート488は、読み出しバス532への検出データとしてSENノード631の状態を読み出すことができる。全体では、1ページの検出データが、検出モジュールの全てから読み出される。
読み出し/検証動作中の検出モジュール380の追加の動作及びタイミングは、図14(A)〜14(K)のタイミング図に説明されており、それは段階(1)〜(9)に区分されている。
段階(0):設定
検出モジュール380(図8を参照)は、起動信号BLS(図14(A))によってビットライン36に接続される。電圧クランプは、BLC(図14(B))によって起動される。事前充電回路640は、制御信号FLT(図14(C))を備えた制限電流源として起動される。
段階(1):制御された事前充電
検出増幅部600は、トランジスタ658を介して信号INVを接地させるリセット信号RST(図14(D))によって初期化される。従って、リセットのときに、INVはLOWに設定される。同時に、pトランジスタ663は相補信号LATをVdd、つまりHIGH(図14(H))に引き上げる。
分離ゲート630は、nトランジスタ632によって形成されており、信号LATによって制御される。従って、リセット後、分離ゲートが起動して、検出ノード501を検出増幅部の内部検出ノード631に接続し、信号SEN2が内部検出ノード631における信号SENと同じになる。
事前充電回路640は、内部検出ノード631と検出ノードSEN2(501)を介して、ビットライン36を所定時間の間事前充電する。これは、ビットラインを、内部の導通を検出するための最適な電圧にする。
事前充電回路640は、制御信号FLT(FLOAT)によって制御される引き上げpトランジスタ642を有する。ビットラインは、ビットライン電圧クランプ610によって設定されたように、所望のビットライン電圧に向かって引き上げられる。引き上げの速度は、ビットラインの伝導電流に依存する。伝導電流が小さいほど引き上げは速くなる。
既に説明したように、所定値より高い伝導電流を備えたこれらのメモリセルがオフすると、ソースラインバイアスによる検出誤差が最小になり、それらのソースラインバイアスへの寄与が取り除かれる。事前充電回路640は、2つの機能を提供するように実装される。一方は、最適な検出電圧までビットラインを事前充電することである。他方は、ソースラインバイアスへの寄与から取り除けるように、DC(直流)検出のための所定値よりも高い伝導電流を備えているそれらのメモリセルの識別に役立たせることである。
DC検出は、ビットラインに所定の電流を供給するための電流源として振る舞う事前充電回路を提供することによって実現される。pトランジスタ642を制御する信号FLTは、事前充電回路640を介して流れる所定の電流を「プログラム」するようにする。一例では、FLT信号は、500nAに設定した基準電流を備えたカレントミラーから生成される。pトランジスタ642がカレントミラーの対称の脚部を構成する場合、それにも同じ500nAの電流が流れる。
図14(I1)〜14(I4)は、700nA、400nA、220nA及び40nAの伝導電流を備えたメモリセルの各々に接続した4つのビットライン上の電圧を示している。事前充電回路640が500nAの制限を備えた電流源である場合、例えば、500nAを超える伝導電流を備えたメモリセルは、蓄積可能なものより速く排出されるビットライン上の電荷を有する。その結果、700nAの伝導電流を備えたビットラインの場合、内部検出ノード631における電圧又は信号SENは、0V近く(0.1V等、図14(I1)参照)に留まる。一方、メモリセルの伝導電流が500nA未満の場合、事前充電回路640はビットライン上に充電を開始し、その電圧はクランプされたビットライン電圧に向かって上昇し始める(例えば、電圧クランプ610によって設定された0.5V)(図14(I2)〜14(I4))。それに応じて、内部検出ノード631は0V近くに留まるか、又はVddまで引き上げられる(図14(G))。一般的に、伝導電流が小さいほど、ビットライン電圧はクランプされたビットライン電圧まで素早く充電される。従って、制御された事前充電段階後にビットライン上の電圧を調べることによって、接続されたメモリセルが所定レベルよりも高い伝導電流を有しているのか、低い伝導電流を有しているのかを識別することができる。
段階(2):以降のストローブからの高い電流セルのDCラッチ及び除去
制御された事前充電段階後、最初のDC高電流検出段階が始まり、信号SENが識別回路650によって検出される。検出では、所定レベルよりも高い伝導電流を備えているメモリセルを識別する。識別回路650は2つのpトランジスタ654と656を直列に備えており、それらは信号INVを記録するノード657の引き上げとして機能する。pトランジスタ654はLOWになる読み出しストローブ信号STBによって起動され、pトランジスタ656はLOWになる内部検出ノード631におけるSEN信号によって起動される。高電流メモリセルは、信号SENを0V近くにするか、もしくは、少なくともビットラインがpトランジスタ656をオフにするほど十分に高く事前充電されること不可能にする。例えば、弱い引き上げが500nAの電流に制限された場合、700nAの伝導電流を備えたセルは引き上げない(図14(G1))。STBがラッチするためにLOWにストローブすると、ノード657におけるINVはVddに引き上げられる。これは、ラッチ回路660のINVをHIGH、LATをLOWに設定する(図14(H1))。
INVがHIGHでLATがLOWのとき、分離ゲート630は停止され、検出ノード481は内部検出ノード631から遮断される。同時に、ビットラインは引き下げ回路520によって接地される(図8及び図14(I1))。これはビットライン内の任意の伝導電流を実質的にオフにし、ソースラインバイアスへの寄与から除去する。
従って、検出モジュール380の好ましい一実施形態では、制限電流源事前充電回路が用いられる。これは、高電流を保持するビットラインを識別してそれらをオフし、以降の検出におけるソースラインバイアスの誤差を最小化する追加又は代替法(DC検出)を提供する。
別の実施形態では、事前充電回路は高電流ビットラインの識別に役立つように具体的には構成されないが、メモリシステムで利用可能な最大電流の許容量内で、できるだけ速くビットラインを引き上げて事前充電するように最適化される。
段階(3):回復/事前充電
前もって引き下げられていないビットライン内の伝導電流を検出する前に、事前充電回路は信号FLTをLOWにすることによって起動され、内部検出ノード631をVddに事前充電し(図14(C)と図14(I2)〜14(I4))、隣接ビットライン上の電圧低下のために部分的に下に結合されたかもしれないビットラインに事前充電する。
段階(4):第1AC検出
一実施形態では、AC(交流、過渡電流)検出は、浮遊させた内部検出ノード631における電圧降下を決定することによって実行される。これは、内部検出ノード631に接続したキャパシタCSA652を利用し、伝導電流がそれを充電する(ノードSEN上の電圧を低減する)速度を考慮する識別又は比較回路650によって実現される。集積回路環境では、キャパシタ652は一般的にトランジスタとともに実装されるが、他の実装形態であってもよい。キャパシタ652は所定の静電容量(例えば、30fF)を有し、それは最適な電流を決定するために選択される。限界電流値(一般的に、100〜1000nAの範囲内)は、充電期間の適切な調整によって設定される。
識別回路650は、内部検出ノード631内の信号SENを検出する。各検出の前に、内部検出ノード631における信号SENは、事前充電回路640によってVddまで引き上げられる。これは最初に、キャパシタ652にかかる電圧を0に設定する。
検出増幅部600が検出しようとすると、事前充電回路640は、FLTをHIGHにすることによって停止させられる(図14(C))。第1検出期間T1は、ストローブ信号STBのアサーションによって終了する。検出期間中、導通中のメモリセルによって誘導された伝導電流はキャパシタを充電する。キャパシタ652がビットライン内の伝導電流の排出動作によって充電されると、SENにおける電圧はVddから低下する。図14(G)(曲線G2〜G4を参照)は、400nA、220nA及び40nAの伝導電流を備えたメモリセルに各々接続された残りの3例のビットラインに対応するSEN信号を示しており、その減少は伝導電流が高いほどより急速になる。
段階(5):以降の検出からのより高電流セルの第1ACラッチ及び除去
第1の所定検出期間の最後で、SENは、ビットライン内の伝導電流に依存するある電圧まで減少する(図14(G)の曲線G2〜G4を参照)。一例として、この第1段階の限界電流は、300nAとなるように設定される。キャパシタCSA652、検出期間T1及びpトランジスタ656の閾値電圧は、限界電流(例えば、300nA)よりも高い伝導電流に対応する信号SENが、識別回路650内のトランジスタ656をオンにするのに十分な低さになるようにする。ラッチ信号STBがLOWにストローブすると、出力信号INVはHIGHに引っ張られ、ラッチ660によってラッチされる(図14(E)と図14(H)(曲線H2))。一方、限界電流より低い伝導電流に対応する信号SENは、トランジスタ656をオン状態にできない信号SENを生成する。この場合、ラッチ660は変化しないままであり、その場合はLATはHIGHに留まる(図14(H3)と14(H4))。従って、識別回路650は、検出期間によって設定された基準電流に対して、ビットライン内の伝導電流の大きさを実質的に決定することが分かる。
検出増幅部600はさらに第2電圧クランプ620を有しており、その目的は、トランジスタ612のドレイン電圧を十分に高く維持し、ビットライン電圧クランプ610が適切に機能できるようにすることである。これまで説明したように、ビットライン電圧クランプ610は、ビットライン電圧を所定値VBL(例えば、0.5V)にクランプする。これはトランジスタ612のゲート電圧BLCをVBL+V(ここでVはトランジスタ612の閾値電圧である)に設定し、検出ノード501に接続したドレインをソースより大きくする(つまり、信号SEN2>VBL)ことを要求する。特に、電圧クランプ610と620の構成を与えると、SEN2は(LAT−V)又は(BLX−V)のより小さい方以下で、SENはそれ以上であるべきである。検出中、分離ゲート630は、通過モードにある。しかしながら、検出中、内部検出ノード631における信号SENはVddから低下した電圧を有する。第2電圧クランプ620は、SENが(LAT−V)又は(BLX−V)のどちらか低い方よりも低下しないようにする。これは信号BLXによって制御されたnトランジスタ612によって実現され、ここでBLXは(VBL+V)以上である(図14(F))。従って、電圧クランプ610と620の動作によって、ビットライン電圧VBLは検出中、一定に保持される(例えば、〜0.5V)。
ビットライン静電容量の既存の使用の代わりに専用キャパシタ652を用いて電流を測定することは、いくつかの点で有利である。第1に、ビットライン上の定電圧源が可能になり、それによってビットライン間のクロストークが避けられる。第2に、専用キャパシタ652によって、検出に最適な静電容量が選択可能になる。例えば、約2pFのビットライン静電容量に比べて、約30fFの静電容量を有することができる。充電が速くなるので、静電容量が小さいほど検出速度を増大できる。最後に、ビットラインの静電容量を用いる従来技術の方法に比べて、専用の静電容量に対する検出では、検出回路をメモリアーキテクチャやサイズから独立させることができる。
別の実施形態では、電流決定は基準電流と比較することによって実現され、その基準電流は基準メモリセルの伝導電流によって提供される。これは、カレントミラーの一部としての比較電流を用いて実装される。
電流決定の出力は、ラッチ回路660によってラッチされる。ラッチ回路は、トランジスタ666と668とともに、トランジスタ661、662、663及び664による設定/リセットラッチとして構成される。pトランジスタ666は信号RST(リセット)によって制御され、nトランジスタ668は信号STBによって制御される。低電圧動作に適した上記の検出増幅部の変形態様は、発明者Raul−Adrian Cerneaの米国特許出願第11/015,199号、発明の名称「Improved Memory Sensing Circuit And Method For Low Voltage Operation」、出願日2004年12月16日に記載されており、その全体を参照により本明細書に組み込まれる。
一般的に、多経路検出モジュール380(図8)の対応する数によって操作される1ページのメモリセルが存在する。第1限界電流レベルより高い伝導電流を備えているそれらのメモリセルに対して、LAT信号はLOWにラッチされる(INVはHIGHにラッチされる)。これはさらにビットライン引き下げ回路520を起動して対応するビットラインを接地し、それによって電流をオフにする。
段階(6):回復/事前充電
予め引き下げられていないビットライン36などのビットライン内の伝導電流の次の検出の前に、事前充電回路が信号FLTによって起動され、内部検出ノード631をVddまで事前充電する(図14(C)(6)及び図14(I3)(6)〜14(I4)(6))。
段階(7):第2検出
検出増幅部600が検出しようとすると、事前充電回路642は、FLTがHIGHなることによって停止させられる(図14(C))。第2検出期間T2は、ストローブ信号STBのアサートによって設定される。検出期間中、伝導電流は(もしあれば)、キャパシタを充電する。キャパシタ652がビットライン36内の伝導電流の排出動作を介して充電しているときに、SENはVddから低下する。
前の例に従って、300nAよりも高い伝導電流を備えたメモリセルは、より早い段階で既に識別され遮断されている。図14(G)(曲線G3とG4)は、220nAと40nAの伝導電流を備えているメモリセルに各々接続されている2例のビットラインに対応するSEN信号を各々示している。
段階(8):読み出しの第2ラッチ
第2の所定検出期間T2の最後で、SENはビットライン36内の伝導電流に依存して同じ電圧まで低下する(図14(G)(曲線G3とG4))。1例として、第2段階の限界電流は、100nAとなるように設定される。この場合、220nAの伝導電流を備えたメモリセルは、そのINVをHIGHにラッチし(図14(H))、次にビットラインを接地させる(図14(I3))。一方、40nAの伝導電流を備えたメモリセルは、ラッチの(LATをHIGHに設定した)状態に影響を与えない。
段階(9):バスへの読み出し
最後に、読み出し段階では、転送ゲート488における制御信号NCOは、ラッチした信号SEN2を読み出して、バス499に読み出すことを可能にする(図14(J)と14(K))。
図14(I1)〜14(I4)から分かるように、ビットライン電圧は、各検出期間の間一定に留まる。従って、これまでの説明から、ビットライン間の容量結合は除去される。
上記の検出モジュール380は3つの経路を用いて検出を実行する一実施形態であり、最初の2経路は、高電流のメモリセルを識別し遮断するために実装されている。ソースラインバイアスへの高電流の寄与を除去することで、最後の経路はより低い範囲の伝導電流を備えたセルをより正確に検出することができる。
他の実施形態では、検出動作はDC及びAC経路の異なる組み合わせを用いて実装され、一部は2つ以上のAC経路だけ、又は1つの経路だけを用いる。異なる経路に対して、用いられる限界電流値は毎回同じであっても、最後の経路に用いられる限界電流値に向かって徐々に収束していてもよい。
図15は、不揮発性メモリをプログラムする方法の一実施形態を説明するフローチャートである。一実装形態では、メモリセルはプログラミング前にメモリセルを(ブロック又は他のユニットで)消去する。図15のステップ700では、「データロード」コマンドが制御部によって発行され、制御回路310で入力を受け取る。ステップ702では、ページアドレスを指定するアドレスデータを、制御部又はホストから復号部314に入力する。ステップ704では、アドレスされたページのプログラムデータの1ページを、プログラミングのためにデータバッファに入力する。そのデータは、適切なラッチの集合内にラッチされる。ステップ706では、「プログラム」コマンドが、制御部によって状態マシン312に発行される。
「プログラム」コマンドによってトリガされ、ステップ704でラッチしたデータは、適切なワードラインに印加した図16のステップパルスを用いて、状態マシン312によって制御された選択メモリセル内にプログラムされる。ステップ708では、プログラム電圧Vpgmを開始パルス(例えば、12V)に初期化し、状態マシン312によって維持されるプログラムカウンタPCを0に初期化する。ステップ710では、第1Vpgmパルスを選択ワードラインに印加する。対応するメモリセルをプログラムすべきことを示す論理「0」が特定のデータラッチ内に記憶された場合、対応するビットラインを接地する。一方、対応するメモリセルがその電流データ状態に留まるべきことを示す論理「1」が特定のラッチ内に記憶された場合、プログラミングを禁止するために、対応するビットラインをVddに接続する。
ステップ712では、選択メモリセルの状態を検証する。選択セルの対象閾値電圧が適切なレベルに到達したことが検出された場合、対応するデータラッチ内に記憶したデータは論理「1」に変更される。閾値電圧が適切なレベルに到達していないことが検出された場合、対応するデータラッチ内に記憶したデータは変更されない。このように、その対応するデータラッチ内に記憶した論理「1」を有するビットラインは、プログラムする必要はない。全てのデータラッチが論理「1」を記憶しているときに、状態マシンは(上記のワイヤードOR型機構によって)全ての選択セルがプログラムされたことを認識する。ステップ714では、全てのデータラッチが論理「1」を記憶しているかどうかを確認する。そうであれば全ての選択メモリセルがプログラムされ、そして検証されたので、プログラミング処理を完了し成功とする。ステップ716では、「成功」の状態を報告する。
ステップ714において、全てのデータラッチが論理「1」を記憶しているとは限らないことが決定された場合、プログラミング処理は継続する。ステップ718では、プログラム限界値PCMAXに対してプログラムカウンタPCを確認する。プログラム限界値の一例は20であるが、他の数字を用いることもできる。プログラムカウンタPCが20以上であればプログラム処理は失敗であり、ステップ720で「失敗」の状態を報告する。プログラムカウンタPCが20未満であればVpgmレベルをステップサイズだけ増大させ、ステップ722でプログラムカウンタPCを増加させる。ステップ722の後、処理ループはステップ710に戻り、次のVpgmパルスを印加する。
成功したプログラム処理の最後では、メモリセルの閾値電圧はプログラムしたメモリセルの閾値電圧の1つ以上の分布内、又は必要に応じて消去したメモリセルの閾値電圧分布内にあるべきである。図17は、各メモリセルが2ビットのデータを記憶している場合の、メモリセルアレイの閾値電圧分布を示している。図17は、消去したメモリセルの第1閾値電圧分布Eを示している。プログラムしたメモリセルの3つの閾値電圧分布A、B及びCも示している。一実施形態では、分布E内の閾値電圧は負であり、分布A、B及びC内の閾値電圧は正である。
図17の異なる閾値電圧範囲の各々が、データビットの集合の所定の値に対応する。メモリセルにプログラムされたデータとセルの閾値電圧レベルの間の具体的な関係は、セルに対して採用されるデータ符号化方式に依存する。例えば、米国特許第6,222,762号及び米国特許出願第10/461,244号、「Tracking Cells For A Memory System」、出願日2003年6月14日(両方とも全体として参照によって本明細書に組み込まれる)は、マルチ状態フラッシュメモリセルの様々なデータ符号化方式を説明している。一実施形態では、データ値はグレイ符号割り当てを用いて閾値電圧範囲に割り当てられ、フローティングゲートの閾値電圧がその隣接する物理状態に誤ってシフトしても、1ビットだけが影響を受けるようにする。一例では、「11」を閾値電圧範囲E(状態E)、「10」を閾値電圧範囲A(状態A)、「00」を閾値電圧範囲B(状態B)、「01」を閾値電圧範囲C(状態C)に割り当てる。しかし、他の実施形態ではグレイ符号は用いられない。図17は4つの状態を示しているが、本発明は4つより多い、又は少ない状態を含む他のマルチ状態構造とともに用いることもできる。
図17はさらに、メモリセルからデータを読み出すための3つの読み出し基準電圧Vra、Vrb及びVrcを示している。所定のメモリセルの閾値電圧がVra、Vrb及びVrcよりも高いか、低いかをテストすることによって、システムはメモリセルがどの状態にあるかを決定することができる。図17はさらに、3つの検証基準電圧Vva、Vvb及びVvcを示している。メモリセルを状態Aにプログラムする場合、システムは、それらのメモリセルがVva以上の閾値電圧を有するか否かをテストする。メモリセルを状態Bにプログラムする場合、システムは、メモリセルがVvb以上の閾値電圧を有するか否かをテストする。メモリセルを状態Cにプログラムする場合、システムは、メモリセルがVvc以上の閾値電圧を有するか否かをテストする。
全シーケンスプログラミングとして知られる一実施形態では、メモリセルは、消去状態Eからプログラム状態A、B又はCのいずれにも直接プログラムすることができる。例えば、プログラムされるメモリセルの集合は、最初に消去されることによって、集合内の全てのメモリセルが消去状態Eになるようにする。それから、図16に示した制御ゲート電圧シーケンスを用いる図15に示した処理を用いて、メモリセルを直接状態A、B又はCにプログラムする。いくつかのメモリセルは状態Eから状態Aにプログラムされる間に、他のメモリセルは状態Eから状態B及び/又は状態Eから状態Cにプログラムされる。WLn上で状態Eから状態Cにプログラムするとき、WLnの下でのフローティングゲート上の電圧変化は大きいので、WLn−Iの下での隣接フローティングゲートとの結合量は最大になる。状態Eから状態Bにプログラムするとき、隣接フローティングゲートとの結合量は低減されるがなお大きい。状態Eから状態Aにプログラムするとき、結合量はさらにいっそう低減される。従って、各状態のWLn−Iを次に読み出すために必要な補正量は、WLn上の隣接セルの状態に依存して変化する。
図18は、2つの異なるページ(下側ページと上側ページ)に対してデータを記憶するマルチ状態メモリセルをプログラムする2経路技術の一例を示している。状態E(11)、状態A(10)、状態B(00)及び状態C(01)の4つの状態が示されている。状態Eの場合、両方のページが「1」を記憶する。状態Aの場合、下側ページが「0」を記憶し、上側ページが「1」を記憶する。状態Bの場合、両方のページが「0」を記憶する。状態Cの場合、下側ページが「1」を記憶し、上側ページが「0」を記憶する。なお、各状態に対して特定のビットパターンが割り当てられているが、異なるビットパターンを割り当てることもできる。第1プログラミング経路では、セルの閾値電圧レベルは下側の論理ページにプログラムされるビットに従って設定される。そのビットが論理「1」であれば、以前に消去された結果として適切な状態にあるので閾値電圧は変更されない。しかしながら、プログラムされるビットが論理「0」であれば、矢印730で示したように、セルの閾値レベルは状態Aになるように増大される。それは、第1プログラミング経路を結論付ける。
第2プログラミング経路では、セルの閾値電圧レベルは、上側論理ページ内にプログラムされるビットに従って設定される。上側論理ページビットが論理「1」を記憶する場合、セルは下側ページビットのプログラミングに依存する状態E又はAの一方であり、どちらも上側ページビットは「1」を保持するのでプログラミングは生じない。上側ページビットが論理「0」となる場合、閾値電圧はシフトされる。第1経路によってセルが消去状態Eに留まっていれば第2段階でセルをプログラムし、矢印734で示したように閾値電圧が状態C内になるように増大させる。第1プログラミング経路の結果としてセルが状態A内にプログラムされれば、メモリセルはさらに第2経路でプログラムし、矢印732で示したように閾値電圧が状態B内になるように増大させる。第2経路の結果は、下側ページのデータを変更することなく、上側ページの論理「0」を記憶するように指定した状態にセルをプログラムすることである。図17と図18の両方において、隣接ワードライン下のフローティングゲートとの結合量は最終的な状態に依存する。
一実施形態では、ページ全体を充填するのに十分なデータが書き込まれた場合、システムは全シーケンス書き込みを実行するように設定される。全ページに対して十分ではないデータが書き込まれた場合、プログラミング処理は、受け取ったデータを用いて下側ページプログラミングを実行できる。次のデータを受け取ったとき、システムは上側ページをプログラムする。さらに別の実施形態では、システムは、下側ページをプログラムするモードで書き込みを開始し、ワードラインのメモリセルの全体(又は大部分)を充填するために次の十分なデータを受け取った場合、全シーケンスプログラミングモードに変換する。このような実施形態のさらなる詳細は、発明者Sergy Anatolievich Gorobets及びYan Liの米国特許出願第11/013,125号、発明の名称「Pipelined Programming of Non−Volatile Memories Using Early Data」、出願日2004年12月14日で開示されている。その全体は参照によって本明細書に組み込まれる。
図19A〜Cは、前のページの隣接メモリセルに書き込んだ後で、特定のページに対する特定のメモリセルに書き込むことによって、そのメモリセルに対するフローティングゲート間結合を低減する不揮発性メモリをプログラムする別の方法を開示している。図19A〜Cによって開示された処理の実装形態の一例にでは、不揮発性メモリセルは、4つのデータ状態を用いてメモリセル毎に2ビットのデータを記憶する。例えば、状態Eが消去状態であり、状態A、B及びCがプログラム状態であると仮定する。状態Eはデータ11を記憶している。状態Aはデータ01を記憶している。状態Bはデータ10を記憶している。状態Cはデータ00を記憶している。両方のビットは隣接する状態A及びBの間で変化するので、これは非グレイ符号化の一例である。データの物理的データ状態への他の符号化を用いることもできる。各メモリセルは、2つのページのデータを記憶している。参照目的のために、これらのページのデータは上側ページ及び下側ページと呼ばれるが、他のラベルを与えることもできる。図19の処理の状態Aを参照すると、上側ページはビット0を記憶し、下側ページはビット1を記憶している。状態Bを参照すると、上側ページはビット1を記憶し、下側ページはビット0を記憶している。状態Cを参照すると、両方のページがビットデータ0を記憶している。図19のプログラミング処理は、2つのステップの処理である。第1ステップでは、下側ページをプログラムする。下側ページがデータ1のままである場合、メモリセル状態は状態Eに留まる。データが0にプログラムされる場合、メモリセルの閾値電圧は上昇し、メモリセルは状態B’にプログラムされる。従って、図19Aは、状態Eから状態B’へのメモリセルのプログラミングを示している。図19Aに示した状態B’は暫定的状態Bであり、従って、検証点はVvb’として示され、その検証点はVvbより低い。
一実施形態では、状態Eから状態B’にメモリセルをプログラムした後、NANDストリング内の隣接メモリセル(WLn+1)をその下側ページに対してプログラムする。例えば、図2を見直すと、メモリセル106の下側ページをプログラムした後、メモリセル104の下側ページをプログラムする。メモリセル104をプログラムした後、メモリセル104が状態Eから状態B’に上昇した閾値電圧を有していた場合、フローティングゲート間結合効果は、メモリセル106の見かけの閾値電圧を上昇させる。これは、図19Bの閾値電圧分布750として示されたものに対して、状態B’の閾値電圧分布を拡大する影響を有する。閾値電圧分布のこの見かけの拡大は、上側ページをプログラムするときに修正される。
図19Cは、上側ページをプログラムする処理を示している。メモリセルが消去状態Eであって上側ページが1に留まる場合、メモリセルは状態Eに留まる。メモリセルが状態Eであり、その上側ページデータが0にプログラムされる場合、メモリセルの閾値電圧は上昇し、メモリセルは状態Aになる。メモリセルが中間の閾値電圧分布750であって上側ページデータが1に留まる場合、メモリセルは最終的な状態Bにプログラムされる。メモリセルが中間の閾値電圧分布750であって上側ページデータがデータ0になる場合、メモリセルの閾値電圧は上昇し、メモリセルは状態Cになる。隣接メモリセルの上側ページプログラミングだけが所定のメモリセルの見かけの閾値電圧に影響を与えるので、図19A〜Cで示した処理はフローティングゲート間結合効果を低減する。別の状態符号化の一例は、上側ページデータが1であるとき分布750から状態Cに移動することであり、上側ページデータが0であるとき状態Bに移動することである。
図19A〜19Cは4つのデータ状態と2つのページデータに対する1例を提供するが、図19A〜19Cによって開示された概念は4つより多い、又は少ない状態、及び2つのページとは異なるページを備えた他の実装形態に適用することもできる。
図20A〜20Fは、図17、18及び19で説明した方法の様々な実施形態によるプログラミング順を説明する様々な表を示している。これまで説明したように、各ブロックは列を構成する1組のビットラインと、行を構成する1組のワードラインを有する。一実施形態では、ビットラインは奇数ビットラインと偶数ビットラインに分割される。共通ワードラインに沿って奇数ビットラインに接続されたメモリセルは1度にプログラムされ、共通ワードラインに沿って偶数ビットラインに接続されたメモリセルは別の時点でプログラムされる(奇数/偶数プログラミング)。別の実施形態では、メモリセルは、ブロック内の全てのビットラインの1つのワードラインに沿ってプログラムされる(全ビットラインプログラミング)。他の実施形態では、ビットライン又はブロックは他のグループに分解される(例えば、左及び右、2つ以上のグループなど)。
図20Aは、全ビットラインプログラミングの1つのビットラインに沿ってメモリセルをプログラムする順番を説明する表である。本実施形態では、4つのワードラインを備えたブロックが4つのページ(ページ0〜3)を有する。ページ0が最初に書き込まれ、次にページ1、次にページ2、それから続いてページ3が書き込まれる。ページ0内のデータは、ワードラインWL0に接続した全てのメモリセルによって記憶されたデータを有する。ページ1内のデータは、ワードラインWL1に接続したメモリセルによって記憶されたデータを有する。ページ2内のデータは、ワードラインWL2に接続したメモリセルによって記憶されたデータを有する。ページ3内のデータは、ワードラインWL3に接続したメモリセルによって記憶されたデータを有する。図20Aの実施形態は、図17について上述したような全シーケンスプログラミングを仮定している。
全シーケンスプログラミングの別の実施形態では、データは最初に偶数のビットラインに書き込まれ、それから奇数のビットラインに書き込まれる。図20Bは、図17についてこれまでに説明した全シーケンスプログラミングを用いる際、偶数と奇数のビットラインをプログラムする順番を示している。本実施形態では、4つのワードラインを備えたブロックが8ページのデータを有する。ワードラインWL0に接続した偶数のビットライン上のメモリセルは、ページ0のデータを記憶する。ワードラインWL0に接続した奇数のビットライン上のメモリセルは、ページ1のデータを記憶する。ワードラインWL1に接続した偶数のビットライン上のメモリセルは、ページ2のデータを記憶する。ワードラインWL1に接続した奇数のビットライン上のメモリセルは、ページ3のデータを記憶する。ワードラインWL2に接続した偶数のビットライン上のメモリセルは、ページ4のデータを記憶する。ワードラインWL2に接続した奇数のビットライン上のメモリセルは、ページ5のデータを記憶する。ワードラインWL3に接続した偶数のビットライン上のメモリセルは、ページ6のデータを記憶する。ワードラインWL3に接続した奇数のビットライン上のメモリセルは、ページ7のデータを記憶する。データは、ページ0からページ7までページ数に従って番号順にプログラムされる。
図20Cの表は、全ビットラインプログラミングを実行するメモリアレイに対して、図18の2段階プログラミング処理に従うプログラミング順を示している。4つのワードラインを備えたブロックが、8ページを有するように示されている。ワードラインWL0に接続したメモリセルに対して、下側ページのデータがページ0を構成し、上側ページのデータがページ1を構成する。ワードラインWL1に接続したメモリセルに対して、下側ページのデータがページ2を構成し、上側ページのデータがページ3を構成する。ワードラインWL2に接続したメモリセルに対して、下側ページのデータがページ4を構成し、上側ページのデータがページ5を構成する。ワードラインWL3に接続したメモリセルに対して、下側ページのデータがページ6を構成し、上側ページのデータがページ7を構成する。データは、ページ0からページ7までページ数に従って番号順にプログラムされる。
図20Dは、奇数/偶数プログラミングを実行するメモリアーキテクチャに対して、図18の2段階プログラミング処理をプログラムする順番を説明する表を提供する。4つのワードラインを備えたブロックが16ページを有し、それらのページはページ0からページ15のページ数に従う番号順にプログラムされる。ワードラインWL0に接続した偶数ビットライン上のメモリセルに対して、下側ページのデータがページ0を構成し、上側ページのデータがページ2を構成する。ワードラインWL0に接続した奇数ビットライン上のメモリセルに対して、下側ページのデータがページ1を構成し、上側ページのデータがページ3を構成する。ワードラインWL1に接続した偶数ビットライン上のメモリセルに対して、下側ページがページ4を構成し、上側ページがページ6を構成する。ワードラインWL1に接続した奇数ビットライン上のメモリセルに対して、下側ページがページ5を構成し、上側ページがページ7を構成する。ワードラインWL2に接続した偶数ビットライン上のメモリセルに対して、下側ページがページ8を構成し、上側ページがページ10を構成する。ワードラインWL2に接続した奇数ビットライン上のメモリセルに対して、下側ページがページ9を構成し、上側ページがページ11を構成する。ワードラインWL3に接続した偶数ビットライン上のメモリセルに対して、下側ページがページ12を構成し、上側ページがページ14を構成する。ワードラインWL3に接続した奇数ビットライン上のメモリセルに対して、下側ページがページ13を構成し、上側ページがページ15を構成する。また、図20Eのように、この同じワードラインの奇数ビットラインの両方のページをプログラムする前に、偶数ビットラインの各ワードライン下の下側ページと上側ページの両方がプログラムされる。
図20Fと20Gは、図19A〜19Cのプログラミング方法を用いてメモリセルをプログラムする順番を示している。図20Fは、全ビットラインプログラミングを実行するアーキテクチャに関連する。ワードラインWL0に接続したメモリセルに対して、下側ページがページ0を構成し、上側ページがページ2を構成する。ワードラインWL1に接続したメモリセルに対して、下側ページがページ1を構成し、上側ページがページ4を構成する。ワードラインWL2に接続したメモリセルに対して、下側ページがページ3を構成し、上側ページがページ6を構成する。ワードラインWL3に接続したメモリセルに対して、下側ページがページ5を構成し、上側ページがページ7を構成する。メモリセルは、ページ0からページ7までページ数に従って番号順にプログラムされる。
図20Gの表は、奇数/偶数プログラミングを実行するアーキテクチャに関連する。ワードラインWL0に接続した偶数ビットライン上のメモリセルに対して、下側ページがページ0を構成し、上側ページがページ4を構成する。ワードラインWL0に接続した奇数ビットライン上のメモリセルに対して、下側ページがページ1を構成し、上側ページがページ5を構成する。ワードラインWL1に接続した偶数ビットライン上のメモリセルに対して、下側ページがページ2を構成し、上側ページがページ8を構成する。ワードラインWL1に接続した奇数ビットライン上のメモリセルに対して、下側ページがページ3を構成し、上側ページがページ9を構成する。ワードラインWL2に接続した偶数ビットライン上のメモリセルに対して、下側ページがページ6を構成し、上側ページがページ12を構成する。ワードラインWL2に接続した奇数ビットライン上のメモリセルに対して、下側ページがページ7を構成し、上側ページがページ13を構成する。ワードラインWL3に接続した偶数ビットライン上のメモリセルに対して、下側ページがページ10を構成し、上側ページがページ14を構成する。ワードラインWL3に接続した奇数ビットライン上のメモリセルに対して、下側ページがページ11を構成し、上側ページがページ15を構成する。メモリセルは、ページ0からページ15までページ数に従って番号順にプログラムされる。最後に、偶数ビットラインと奇数ビットラインの両方を備えたアーキテクチャは各々、例えば、チップの左側に物理的にともに配置した全ての偶数ビットラインと、例えば、チップの右側にともに配置した全ての奇数ビットラインを用いて実装される。
なお、図20A〜20Gの実施形態では、メモリセルはソース側からドレイン側にNANDストリングに沿ってプログラムされる。また、表は、4つのワードラインを備えた実施形態のみを示している。表内に示した様々な方法は、4つより多い、又は少ないワードラインを備えたシステムに適用することもできる。奇数/偶数プログラミングを用いるアーキテクチャの例は米国特許第6,522,580号及び6,643,188号内に見出される。両方ともに全体を参照によって本明細書に組み込まれる。全ビットラインプログラミングを用いるアーキテクチャについてのさらなる情報は、全体を参照によって本明細書に組み込まれる以下の米国特許文書内に見出される。米国特許出願公開US2004/0057283号、米国特許出願公開US2004/0060031号、米国特許出願公開US2004/0057285号、米国特許出願公開US2004/0057287号、米国特許出願公開US2004/0057318号、米国特許第6,771,536号、米国特許第6,781,877号。
一般的に、全ビットラインをともにプログラムするアーキテクチャは、全ビットラインからのデータをともに読み出す。同様に、奇数及び偶数ビットラインを別々にプログラムするアーキテクチャは一般的に、奇数及び偶数ビットラインを別々に読み出す。しかし、このような制限は必須ではない。データの読み出しについて本明細書で説明される技術は、全ビットラインプログラミング又は奇数/偶数ビットラインプログラミングとして用いることもできる。
図21は、不揮発性メモリセルからデータを読み出す一実施形態を説明するフローチャートである。検出モジュールについてのこれまでの説明では、特定のビットラインからどのようにデータを読み出すかについて説明している。図21は、システムレベルにおける読み出し処理を提供する。データを読み出す要求(ステップ798)に応じて、ステップ800において特定のページに対して読み出し動作を実行する。一実施形態では、1ページに対するデータをプログラムする際、システムは誤り訂正符号(ECC)も生成し、それらのECCをデータのページと共に書き込む。ECC技術は、技術的によく知られている。用いられるECC処理は、技術的に知られている任意の適切なECC処理を含むことができる。1ページからデータを読み出すときに、ECCはデータ内に任意の誤りがあるかどうかを決定するために用いられる(ステップ802)。ECC処理は、コントローラ、状態マシン又はシステム内の他の場所で実行される。データ内に誤りがない場合、ステップ804においてデータはユーザに報告される。例えば、データは、データI/Oライン320を介して制御部又はホストに通信される。ステップ802で誤りが見つかると、その誤りが訂正可能かどうかが決定される(ステップ806)。誤りは、フローティングゲート間結合効果による場合も、他の物理的機構による場合もある。様々なECC法が、データの集合内の所定数の誤りを訂正する能力を有する。ECC処理がデータを訂正可能であれば、ECC処理を用いてステップ808でそのデータを訂正し、データは訂正したとおりにステップ810でユーザに報告される。データがECC処理では訂正不可能な場合、ステップ820でデータ回復処理が実行される。いくつかの実施形態ではステップ820の後、ECC処理が実行される。データ回復処理についてのさらなる詳細は以降で説明する。データを回復した後、そのデータはステップ822において報告される。なお、図21の処理は、全ビットラインプログラミング、又は奇数/偶数ビットラインプログラミングを用いてプログラムしたデータとともに用いられる。
図22は、1ページに対して読み出し動作を実行する処理(図21のステップ800を参照)の一実施形態を説明するフローチャートである。図22の処理は、1ブロックの全てのビットライン、1ブロックの奇数ビットラインのみ、1ブロックの偶数ビットラインのみ、又は1ブロックのビットラインの他のサブセットを含む1ページに対して実行される。ステップ840では、読み出し基準電圧Vraをそのページに関連した適切なワードラインに印加する。ステップ842では、そのページに関連したビットラインを検出し、アドレスされたメモリセルが、それらの制御ゲートへのVraの印加に基づいて導通するか否かを決定する。導通するビットラインはメモリセルがオンになったことを示し、その結果、それらのメモリセルの閾値電圧はVra未満になる(例えば、状態E)。ステップ844では、ビットラインに対する検出結果をそれらのビットラインの適切なラッチ内に記憶する。ステップ846では、読み出されるページに関連したワードラインに、読み出し基準電圧Vrbを印加する。ステップ848では、これまで説明したようにビットラインを検出する。ステップ850では、そのビットラインの適切なラッチ内に、結果を記憶する。ステップ852では、そのページに関連したワードラインに、読み出し基準電圧Vrcを印加する。ステップ854では、ビットラインを検出し、これまで説明したようにメモリセルが導通しているか否かを決定する。ステップ856では、そのビットラインの適切なラッチ内に、検出ステップからの結果を記憶する。ステップ858では、各ビットラインに対してデータ値を決定する。例えば、メモリセルがVraで導通する場合、メモリセルは状態Eである。メモリセルがVrb及びVrcで導通するが、Vraでは導通しない場合、メモリセルは状態Aである。メモリセルがVrcで導通するが、Vra及びVrbでは導通しない場合、メモリセルは状態Bである。メモリセルがVra、Vrb又はVrcで導通しない場合、メモリセルは状態Cである。一実施形態では、データ値は処理装置392によって決定される。ステップ860では、処理装置392は、決定したデータ値を、各ビットラインの適切なラッチ内に記憶する。他の実施形態では、様々なレベル(Vra、Vrb及びVrc)の検出が、異なる順番で発生することがある。
図23は、データを回復するための処理(ステップ820)の一実施形態を説明するフローチャートである。データは、フローティングゲート間結合効果による誤差を含む可能性がある。図23の処理はフローティングゲート間結合効果を補償しながら、データの読み出しを試みる。補償は、隣接ワードラインを調べ、隣接ワードラインの過去のプログラムがどれぐらいフローティングゲート間結合効果を生成したかを決定することを含んでいる。例えば、ワードラインWLn上でデータを読み出す際、処理はワードラインWn+1のデータも読み出す。ワードラインWLn+1上のデータがWLn上のデータを撹乱する場合、読み出し処理はその撹乱を補償する。一般的に、ここで提案される方法は隣接ワードライン上のメモリセルの状態の関数として、読み出し基準電圧に異なるオフセット(例えば、0V、0.1V、0.2V、0.3V)を用いる。
図23に示した処理は図17について上で説明した全シーケンスプログラミングに適用し、そこでは1つの論理ページの2つのビットを各セル内に記憶し、ともに読み出して報告する。隣接ワードライン上のメモリセルが状態Eであれば、フローティングゲート間結合効果は存在しない。隣接ワードライン上のメモリセルが状態Aであれば、小さな結合効果が存在する。隣接ワードライン上のメモリセルが状態Bであれば、中程度のフローティングゲート間結合効果が存在する。隣接ワードライン上のメモリセルが状態Cであれば、大きなフローティングゲート間結合効果が存在する。隣接ワードラインによる正確な結合効果はアレイ実装形態によって異なり、素子を特徴付けることによって決定される。一実施形態では、状態Aである隣接セルによるフローティングゲート間結合効果は、見かけの閾値電圧を0.1Vシフトさせる。状態Bの隣接セルによるフローティングゲート間結合効果は、見かけの閾値電圧を0.2Vシフトさせる。状態Cの隣接セルによるフローティングゲート間結合効果は、見かけの閾値電圧を0.3Vシフトさせる。本明細書で説明される技術は、この効果に対する任意の一組の値に限定されず、実装形態に基づいて異なっていてもよい。
図23のステップ870は、隣接ワードラインWLn+1に対して読み出し動作を実行することを含んでいる。これは、隣接ワードラインに対して図22の処理を実行することを含んでいる。例えば、ワードラインWL1内のページを読み出す場合、ステップ870はワードラインWL2上で図22の処理を実行することを含んでいる。ステップ870の結果は、ステップ872で適切なラッチ内に記憶する。いくつかの実施形態では、WLn+1に対して実行される読み出し動作によって、WLn+1上に記憶される実際のデータを決定する。他の実施形態では、WLn+1に対して実行される読み出し動作によってWLn+1上の電荷レベルを決定し、それはWLn+1上に記憶されたデータを正確に反映していても反映していなくてもよい。ステップ874では、通常の読み出し点において、所望のWLnのワードラインに対して読み出し動作が実行される。これは、Vra、Vrb及びVrcを用いて図22の処理を実行することを含んでいる。いくつかの実施形態では、WLn+1を読み出すために用いられるレベル及び/又はレベル数は、WLnを読み出すために最初に用いられるものと正確に同じでなくてもよく、フローティングゲート閾値の単なる近似でもWLnの補正目的として十分である。ステップ874の結果は、(ステップ870で)隣接セルWLn+1が状態Eであると決定されたメモリセルを備えているビットラインの適切なラッチ内に記憶する。他のビットラインの場合、データは無視される。ステップ878では、読み出し点に対する第1のオフセット集合を用いて、所望のワードラインに対して読み出し動作が実行される。つまり、図22の処理が実行されるが、Vra、Vrb及びVrcを用いるのではなく、システムはVra+0.1V、Vrb+0.1V及びVrc+0.1Vを用いる。ステップ880では、状態Aの隣接メモリセル(例えば、WLn+1)を有するメモリセルを備えているビットラインに対して、ステップ878の結果を記憶する。他のビットラインに対するデータは無視される。ステップ882では、第2オフセットを用いて、所望のワードラインに対して読み出し動作が実行される。図22の処理が実行されるが、読み出し基準点はVra+0.2V、Vrb+0.2V及びVrc+0.2Vとなる。ステップ884では、状態Bの隣接メモリセル(例えば、WLn+1)を有するメモリセルを備えているビットラインのラッチ内に、ステップ882の結果を記憶する。ステップ886では、第3オフセットを用いて、所望のワードラインに対して読み出し動作が実行される。従って、図22の処理は、読み出し比較点としてVra+0.3V、Vrb+0.3V及びVrc+0.3Vを用いる。ステップ888では、隣接セル(例えば、WLn+1)が状態Cであるメモリセルを備えているビットラインに対して、ステップ886の結果を記憶する。
これまでの説明では、図23の処理は、図21のデータ回復ステップ820の一部として実行される。別の実施形態では、図23の処理は、データの読み出し要求に応じて実行される最初の読み出し処理として用いられる。
図24は、プログラムされる最後のワードラインを除くブロックの全ワードラインに対して、データ回復処理(図23の方法)を実行できることを示すフローチャートである。例えば、x+1本のワードラインがある場合、ワードラインWL0〜WLx−1に対して回復処理が用いられる。ワードラインWLx(例えば、ドレインに最も近いワードライン)はその後プログラムされ、フローティングゲート間結合効果を引き起こす隣接部を有していないので、そのワードラインに対して回復処理を実行する必要はない。図24は、図21に対してこれまでに説明した一実施形態において、全ワードラインに対して順に実行される回復処理を備えた実施形態を示しているが、その回復処理は、別個の時点で訂正可能ではないECC誤りが存在する場合だけ、ワードラインに対して回復処理を実行することもできる。
図22と23の上記の方法では、図17の1つの論理ページに2つのビットを記憶する全シーケンスプログラミングに対して説明した。2つの論理ページの各々から1つのビットを記憶する図18の2ステップ処理に従ってプログラムされたデータを読み出すときに、これらの処理はやや修正される。例えば、標準的な読み出し動作(図21のステップ800)を実行する場合、下側ページの読み出しはメモリセルの制御ゲートにVraとVrcを印加し、これらの読み出し点において検出を実行し、データが下側ページに対して状態E/C(データ1)にあるか、状態A/B(データ0)にあるかを決定することを要求する。従って、図22は、下側ページの読み出しに対して、ステップ840、842、844及びステップ852〜860を実行することによって修正される。上側ページの読み出しを実行するために、読み出し比較点Vrbを用いて、上側ページのデータが状態E/A(データ1)であるか、状態B/C(データ0)であるかを決定する。従って、上側ページの読み出しに対して、図22の処理はステップ846、848、850、858及び860を実行するように修正される。さらに、データを回復する際(ステップ820)、処理は下側ページのデータを回復するための図25の方法と、上側ページのデータを回復するための図26の処理を実行する。
図25のステップ930では、図22の方法に従って隣接ワードラインWLn+1に対して読み出し動作を実行する。いくつかの実施形態では、WLn+1に対して実行される読み出し動作によって、WLn+1上に記憶された実際のデータを決定する。他の実施形態では、WLn+1に対して実行される読み出し動作によってWLn+1上の電荷レベルを決定し、それはWLn+1上に記憶されたデータを正確に反映していても反映していなくてもよい。その読み出し動作の結果は、ステップ932で適切なラッチ内に記憶する。ステップ934では、ワードラインに読み出し基準電圧Vraを印加する。ステップ936では、ビットラインに対するデータを検出する。ステップ938では、適切なラッチ内に結果を記憶する。ステップ940では、ワードラインに読み出し基準電圧Vrcを印加する。ステップ942では、これまでに説明したようにデータを検出する。ステップ944では、状態Eのデータを記憶している隣接セルに関連したビットラインに対して、検出ステップ942の結果を記憶する。ステップ946では、読み出されるページのワードラインにVrc+第1オフセット(例えば、0.1V又は別の適切な値)を印加する。ステップ948では、これまでに説明したようにデータを検出する。ステップ950では、状態Aのデータを記憶している隣接セルに関連したビットラインに対して、ステップ948の結果を記憶する。他のビットラインのデータは破棄される。ステップ952では、読み出されるページに関連したワードラインにVrc+第2オフセット(例えば、0.2V又は他の適切な値)を印加する。ステップ954では、これまで説明したように検出モジュールを用いてデータを検出する。ステップ956では、状態Bのデータを記憶している隣接セルに関連したビットラインに対して、ステップ954の結果を記憶する。ステップ958では、読み出されるページに関連したワードラインにVrc+第3オフセット(0.3V又は他の適切な電圧)を印加する。ステップ960では、検出モジュールを用いてこれまで説明したようにデータを検出する。ステップ962では、状態Cのデータを記憶している隣接セルに関連したビットラインに対して、ステップ960の結果を記憶する。ステップ964では、処理装置392は、検出ステップから記憶されたデータに基づいてデータ値を決定する。ステップ966では、読み出しデータを要求するユーザとの最終的な通信のラッチ内に、ステップ964から決定したデータ値を記憶する。別の実施形態では、状態Aに関連したステップ934〜938は、ステップ962と964の間で実行することもできる。
なお、図25で説明した処理では、オフセットは、状態Cから状態Bを分離するためにVrcに印加されるだけである。それは、通常負の閾値の消去状態はWLn+1によって影響されるが、状態Aからは十分遠くに分離されており補正の必要はないので、Vraを読み出すときに、オフセットは必要ないことが暗示的に仮定されている。これは現世代のメモリに対しては実用的な仮定であるが、次世代のメモリには当てはまらない可能性があり、ステップ946〜962でVrcに対して説明したオフセット処理は、ステップ940の前にVraを追加することもできる。
ステップ964でデータ値を決定する際、メモリセルがVraに応じて導通する場合は、下側ページのデータは「1」である。メモリセルがVraに応じて導通せずVrc(又はVrc+適切なオフセット)に応じて導通しない場合も、下側ページのデータは「1」である。メモリセルがVraに応じて導通しないがVrc(又はVrc+適切なオフセット)に応じて導通する場合は、下側ページのデータは「0」である。
図26の処理は、上側ページのデータの読み出し/回復のために用いられる。ステップ1000では、図22の方法を用いて、隣接ワードラインWLn+1に対して、読み出し動作を実行する。いくつかの実施形態では、WLn+1に対して実行される読み出し動作によって、WLn+1上に記憶された実際のデータを決定する。他の実施形態では、WLn+1に対して実行される読み出し動作によって、WLn+1上の電荷レベルを決定し、それはWLn+1上に記憶されたデータを正確に反映していても反映していなくてもよい。ステップ1002では、ステップ1000の結果を、各ビットラインの適切なラッチ内に記憶する。ステップ1004では、読み出されるページに関連したワードラインに読み出し基準電圧Vrbを印加する。ステップ1006では、検出モジュールを用いて、これまで説明したようにデータを検出する。ステップ1008では、状態Eのデータを記憶している隣接メモリセルに関連したビットラインに対して、ステップ1006の結果を記憶する。ステップ1010では、Vrb+第1オフセット(例えば、0.1V又はいくつかの他の適切な値)をワードラインに印加する。ステップ1012では、これまでに説明したようにデータを検出する。ステップ1014では、状態Aのデータを記憶している隣接セルに関連したビットラインに対して、検出ステップ1012からの結果を記憶する。ステップ1016では、読み出されるページに関連したワードラインにVrb+第2オフセット(例えば、0.2V又は別の適切な値)を印加する。ステップ1018では、これまで説明したようにデータを検出する。ステップ1020では、状態Bの隣接セルに関連したビットラインに対して、ステップ1018の結果を記憶する。ステップ1022では、読み出されるページに関連したワードラインにVrb+第3オフセット(例えば、0.3V又は他の適切な値)を印加する。ステップ1024では、これまで説明したようにデータを検出する。ステップ1026では、状態Cのデータを記憶している隣接メモリセルに関連したビットラインに対して、ステップ1024の結果を記憶する。ステップ1028では、処理装置392は、記憶した検出データに基づいてデータ値を決定する。メモリセルがVrb(又はVrb+適切なオフセット)に応じてオンになる場合、上側ページのデータは「1」である。メモリセルがVrb(又はVrb+適切なオフセット)に応じてオンにならない場合、上側ページのデータは「0」である。ステップ1030では、ユーザと通信するためのデータラッチ内に、処理装置392によって決定されたデータ値を記憶する。
別の実施形態では、データを回復するために図25と26の方法を用いるのではなく、データを読み出す要求に応じて行った最初のデータ読み出しに対して図25と26の方法が用いられる。
図25と26は、図18の上側ページと下側ページを用いて、プログラムされるデータを読み出すためのものである。図25と26のこれらの2つの方法は、全ビットラインプログラミング、又は奇数/偶数ビットラインプログラミングによってプログラムされたデータを読み出すために用いられる。全ビットラインプログラミングと共に用いられる場合、全ビットラインが同時に読み出される。奇数/偶数ビットラインプログラミングと共に用いられる場合、第1の時点で偶数ビットラインを同時に読み出し、異なる時点で奇数ビットラインを同時に読み出す。
図27〜36は、図19A〜19Cに関連した方法に従ってプログラムしたデータを読み出すために用いられる処理を説明している。図27の処理は、ECCを用いる前に、それとは別個に及び/又はそれとともにデータの1つ以上のページ(又は他のグループ)に対する読み出し要求に応じて実行されるデータを読み出すための処理全体として実施される。他の実施形態では、図27の処理は、図21のデータ回復ステップ820の1部として実行される。図19の処理に従ってプログラムしたようなデータを読み出す場合、問い合わせ中のセルの上側ページをプログラムするときに、隣接セルの下側ページをプログラムするためのフローティングゲート間結合による任意の摂動が補正される。従って、隣接セルからのフローティングゲート間結合効果を補償しようとするときに、処理は、隣接セルの上側ページのプログラムによる結合効果を考慮するだけでよい。従って、図27のステップ1060では、処理は、隣接ワードラインの上側ページのデータを読み出す。隣接ワードラインの上側ページがプログラムされていなかった場合(ステップ1062)、フローティングゲート間結合効果を補償することなく、考慮中のページが読み出される(ステップ1064)。隣接ワードラインの上側ページがプログラムされていた場合(ステップ1062)、ステップ1066でフローティングゲート間結合効果の補償を用いて、考慮中のページを読み出すべきである。いくつかの実施形態では、隣接ワードラインに対して実行される読み出し動作によって、隣接ワードライン上の電荷レベルを決定し、それは前記隣接ワードライン上に記憶されたデータを正確に反映していても反映していなくてもよい。
一実施形態では、図19のプログラミング処理を実施したメモリアレイは、1つ以上のフラグを記憶するためのメモリセルの集合を確保できる。例えば、1列のメモリセルを用いて、メモリセルの各行の下側ページがプログラムされたか否かを示すフラグを記憶でき、別の列のメモリセルを用いて、メモリセルの各行の上側ページがプログラムされたか否かを示すフラグを記憶できる。いくつかの実施形態では、重複セルを用いてフラグのコピーを記憶できる。適切なフラグを確認することによって、隣接ワードラインの上側ページがプログラムされたか否かを決定できる。プログラミングのこのようなフラグ及び処理についてのさらなる詳細は、Shibataらの米国特許第6,657,891号、「Semiconductor Memory Device For Storing Multi−Valued Data」に記載されている。その全体は、参照により本明細書に組み込まれる。
図28は、隣接ワードラインの上側ページのデータを読み出す処理の一実施形態を説明している(図27のステップ1060)。ステップ1100では、読み出されるページに関連したワードラインに、読み出し基準電圧Vrcを印加する。ステップ1102では、これまで説明したようにビットラインを検出する。ステップ1104では、ステップ1102の結果を適切なラッチ内に記憶する。下側ページのデータは通常は既にWLn+1内に書き込まれているので、上側ページのデータを一意的な決定するために最初にVrcを読み出すことが選択され、分布750(図19C)はVra又はVrbの値と重なっていてもよいので、Vra又はVrbの値を読み出すことは一意的な結果を保証しない。
ステップ1106では、システムは読み出されるページに関連した上側ページのプログラミングを示すフラグを確認する。一実施形態では、フラグを記憶するメモリセルは、フラグが設定されていない場合は状態Eにデータを記憶し、フラグが設定されている場合は状態Cに記憶する。従って、ステップ1102において特定のメモリセルを検出するときに、メモリセルが導通している(オンになっている)場合、メモリセルは状態Cにデータを記憶しないでフラグは設定されない。メモリセルが導通していない場合、ステップ1106において、上側ページがプログラムされていることをメモリセルが示していると仮定される。
別の他の実施形態では、フラグは1バイト内に記憶する。状態Cに全てのビットを記憶するのではなく、そのバイトはフラグを表し、状態マシン312にとって既知の1意的な8ビットコードを含み、8ビットコードは状態Eに少なくとも1ビット、状態Aに少なくとも1ビット、状態Bに少なくとも1ビット、状態Cに少なくとも1ビットを有する。上側ページがプログラムされていない場合、メモリセルのバイトは全て状態Eである。上側ページがプログラムされていれば、メモリセルのバイトはそのコードを記憶する。一実施形態では、ステップ1106は、コードを記憶するバイトの任意のメモリセルが、Vrcに応じてオンにならないか否かを確認することによって実行される。別の実施形態では、ステップ1106は、フラグを記憶するメモリセルのバイトのアドレス及び読み出しを行って状態マシンにデータを送ることを含み、それはメモリセル内に記憶したコードが状態マシンによって期待されるコードに一致するか否かを検証する。一致すれば、状態マシンは上側ページがプログラムされていると結論付ける。
フラグが設定されていない場合(ステップ1108)、図28の処理は上側ページがプログラムされていないという結論で終了する。フラグが設定されていれば(ステップ1108)、上側ページがプログラムされていると仮定し、ステップ1120において、読み出されるページに関連したワードラインに読み出し電圧Vrbを印加する。ステップ1122では、これまでの説明のようにビットラインを検出する。ステップ1124では、ステップ1122の結果を適切なラッチ内に記憶する。ステップ1126では、読み出されるページに関連したワードラインに読み出し基準電圧Vraを印加する。ステップ1128ではビットラインを検出する。ステップ1130では、適切なラッチ内にステップ1128の結果を記憶する。ステップ1132では、処理装置392は3つの検出ステップ1102、1122及び1128の結果に基づいて、読み出されるメモリセルの各々によって記憶されたデータ値を決定する。ステップ1134では、ユーザへの最終的な通信用の適切なデータラッチ内に、ステップ1132で決定したデータ値を記憶する。ステップ1132では、処理装置392は、選択した特定の状態符号化に依存してよく知られた簡単なロジック技術を用いて、上側ページ及び下側ページのデータ値を決定する。例えば、図19で説明した符号化の場合、下側ページのデータはVrb(Vrbを読み出す際に記憶される値の補数)であり、上側ページのデータはVraOR(VrbとVrc)である。図20の処理は(ここではWLn+1を読み出すために用いられるように説明されているが)、以降に説明するようにWLnを読み出すために用いることもできる。図27のステップ1160のようにWLn+1を読み出すために用いる場合、望まれるものは単なるデータだけではなく、上側ページのデータの存在を決定することである。この決定は、以降の図31で説明する方法を用いて実行される。当然のことながら、WLn+1を読み出す際にVra、Vrb、及びVrcに対して選択される値は、WLnを読み出す際に選択されるものとは異なっていてもよい。
図29は、システムが、隣接ワードラインからのフローティングゲート間結合を補償する必要がない場合(図27のステップ1064を参照)に、考慮中のワードラインのデータを読み出す処理の一実施形態を説明するフローチャートである。ステップ1150では、読み出しが、考慮中のワードラインに関連した上側ページであるのか下側ページであるのかを決定する。読み出しが下側ページである場合、ステップ1152では、読み出されるページに関連したワードラインに、読み出し基準電圧Vrbを印加する。ステップ1154では、ビットラインを検出する。ステップ1156では、検出ステップ1154の結果を適切なラッチ内に記憶する。ステップ1158では、フラグを確認し、そのページが上側ページのデータを含むか否かを決定する。フラグがない場合、現在の任意のデータは中間状態であり、Vrbは誤って使用した閾値であり、処理はステップ1160に続く。ステップ1160ではワードラインにVraを印加し、ステップ1162でビットラインを再検出し、ステップ1164で結果を記憶する。ステップ1166(ステップ1164又はステップ1158でフラグが設定されている場合のいずれかの後)では、処理装置392は記憶されるデータ値を決定する。一実施形態では、下側ページを読み出すときに、メモリセルがワードラインに印加されるVrb(又はVra)に応じてオンになる場合は、下側ページのデータは「1」であり、そうでない場合は、下側ページのデータは「0」である。
ページアドレスが上側ページに対応することが決定された場合(ステップ1150)、ステップ1170において上側ページの読み出し処理が実行される。一実施形態では、ステップ1170の上側ページの読み出し処理は、図28で説明したものと同じ方法を含み、書き込まれていない上側ページが読み出し又は他の理由でアドレスされる可能性があるので、それはフラグ及び3つの全ての状態の読み出しを含んでいる。
図30は、フローティングゲート間結合効果を補償しながら、データを読み出す処理の一実施形態を説明するフローチャートを示している(図27のステップ1066を参照)。図30のステップ1200では、システムは、フローティングゲート間結合を補償するためにオフセットを用いるか否かを決定する。これは、各ビットラインに対して別個に実行される。適切な処理装置392は、隣接ワードラインからのデータに基づいて、どのビットラインがオフセットを用いる必要があるかを決定する。隣接ワードラインが状態E又はBである(又は状態E又はBを明らかに示す電荷を有する)場合、読み出される特定のワードラインは、フローティングゲート間結合効果を補償する必要はない。その仮定は、状態Eであれば、現在のワードラインが書き込まれてから閾値が移動していないので、結合に寄与していないということである。状態Bであれば、それはB’からそこに到達し、B’からBへの移動は小さく、そして無視できる。一実施形態では、ステップ1200の処理はステップ1060と同時に実行される。例えば、図31は、特定のビットラインに対してオフセットを用いるか否かを決定するためのステップを説明するチャートを提供する。ステップ1は、Vraを用いて読み出し処理を実行することである。ステップ2は、Vrbを用いて読み出しを実行することである。Vraを読み出す際、メモリセルが状態Eであればラッチは1を記憶し、メモリセルが状態A、B、又はCであれば0を記憶する。Vrbを読み出す際、状態EとAに対してはラッチは1を記憶し、状態BとCに対しては0を記憶する。図31のステップ3は、ステップ1からの結果とステップ2からの結果を反転させたものについてXOR演算を実行することを含んでいる。ステップ4では、そのワードラインにおいてVrcを用いて読み出しを実行する。ラッチは状態E、A及びBに対しては1を記憶し、状態Cに対しては0を記憶する。ステップ5では、ステップ4とステップ3の結果を、論理AND演算によって演算する。なお、ステップ1、2及び4は、図28の一部として実行することもできる。図31のステップ3と5は、専用ハードウェア又は処理装置392によって実行される。ステップ5の結果はラッチ内に記憶し、オフセットが不要な場合は1を記憶し、オフセットが必要な場合は0を記憶する。オフセットは、フローティングゲート間結合を補償するために用いられる。従って、WLn上で読み出されるセルに対して読み出しオフセットが要求され、それらのセルは状態A又はCであるWLn+1上に隣接メモリセルを有する。本方式は、WLnを補正するか否かを決定するために1つのラッチしか必要としないが、WLn+1からの全データを記憶する従来の方法では2つ以上のラッチを必要とする。
図30のステップ1202を見直すと、読み出されるページが上側ページであるか下側ページであるかが決定される。読み出されるページが下側ページであれば、読み出されるページに関連したワードラインにVrbを印加する(ステップ1204)。なお、図19で説明した二値状態符号化の場合、下側ページのデータの決定にはVrbの読み出しで十分であるが、図17及び18で説明した二値状態符号化では、上側ページのデータを決定するためにVrbの読み出しが使用される。ステップ1206では、ビットラインを検出する。ステップ1208では、ビットラインに関連した適切なラッチ内にステップ1206の結果を記憶する。ステップ1210では、読み出されるワードラインにVrb+オフセットを印加する。ステップ1212では、ビットラインを検出する。ステップ1214では、オフセットを用いるためにステップ1200において決定したビットラインに対してステップ1208で記憶した結果を上書きするために、ステップ1212の検出結果が用いられる。特定のビットラインがオフセットを用いる必要がないと決定された場合、ステップ1212からのデータは記憶されない。ステップ1216では、処理装置392は、下側ページに対するデータが1であるか0であるかを決定する。メモリセルがVrb(又は、適切な場合はVrb+オフセット)に応じてオンになる場合は、下側ページは1であり、そうでない場合は、下側ページは0である。ステップ1218において、ユーザと通信するための適切なラッチ内に下側ページのデータを記憶する。
ステップ1202において、読み出されるページが上側ページであることが決定されれば、ステップ1220で上側ページ補正処理が実行される。図32は、上側ページ補正処理を説明するフローチャートを提供する。図32のステップ1250では、読み出されるページに関連したワードラインに読み出し基準電圧Vrcを印加する。ステップ1252ではビットラインを検出する。ステップ1254では、適切なラッチ内に検出ステップの結果を記憶する。ステップ1256では、読み出されるページに関連したワードラインにVrc+オフセット(例えば、0.1V)を印加する。ステップ1258ではビットラインを検出する。ステップ1260では、検出ステップ1258の結果を用いて、オフセットを必要とする(ステップ1200を参照)任意のビットラインに対して、ステップ1254で記憶した結果を上書きする。ステップ1270ではワードラインにVrbを印加する。ステップ1272ではビットラインを検出する。ステップ1274では、検出ステップ1272の結果を記憶する。ステップ1276では、読み出されるページに関連したワードラインにVrb+オフセットを印加する。ステップ1278ではビットラインを検出する。ステップ1280では、ステップ1278の結果を用いて、オフセットを必要とする(ステップ1200を参照)ビットラインに対して、ステップ1274で記憶した結果を上書きする。ステップ1282では、読み出されるページに関連したワードラインにVraを印加する。ステップ1284ではビットラインを検出する。ステップ1286では、検出ステップ1284の結果を適切なラッチ内に記憶する。ステップ1288では、読み出されるページに関連したワードラインにVra+オフセットを印加する。なお、ステップ1288、1280及び1256で用いられるオフセットは同じであり、状態Eから状態Aに移動する際のWLn+1の上側ページをプログラムすることに起因するWLnの結合は、状態B’からCに移動する際とほぼ同じことを暗示的に仮定している。他の実施形態では、オフセットは異なっていてもよい。ステップ1290ではビットラインを検出する。ステップ1292では、ステップ1290の結果を用いて、オフセットを必要とする(ステップ1200を参照)ビットラインに対して、ステップ1286で記憶した結果を上書きする。いくつかの実施形態では、状態Eと状態Aの間のマージンは、Vraに関連したオフセットが不要なほど十分であり、ステップ1288から1292は省略できる。ステップ1294では、処理装置392は、図28に対して既に説明したものと同様に、又は技術的に知られている別の方法でデータ値を決定する。ステップ1296では、ユーザと通信するための適切なデータラッチ内に処理装置392で決定したデータ値を記憶する。他の実施形態では、読み出し順(Vrc、Vrb、Vra)は変更できる。
図27に対してのこれまでの説明では、1ページのデータを読み出すことを含むような一例を議論している。データを読み出す要求が、複数のページのデータを読み出すことを求める可能性もあるが必須ではない。一実施形態では、複数のページを読み出す処理を高速化するために、ユーザが前のページのデータを転送しながら状態マシンが次のページの検出を実行するように、読み出し処理をパイプラインすることができる。このような実装では、フラグフェッチ処理(例えば、図28のステップ1006を参照)は、パイプライン型読み出し処理を遮断する可能性がある。このような遮断を避けるために、一実施形態では、所定のページを読み出す際にそのページのフラグを読み出し、上記のワイヤードOR検出処理を用いてフラグを確認する(フラグを読み出し、それを状態マシンに送るのではない)ことを想定している。例えば、図27のステップ1060(隣接ワードラインを読み出す)間に、処理は、まず基準電圧としてVrcを用いてデータを読み出す。その時点で、各状態がデータ1を記憶していることをワイヤードORラインが示している場合、上側ページはプログラムされておらず、従って補償は必要とされず、システムはフローティングゲート間結合を補償することなく読み出す(ステップ1064)。フラグが各データ状態内にデータを含む1バイトコードである場合、フラグが設定されていれば、少なくともフラグのメモリセルは状態Cのデータを有する。どのメモリセルも状態Cのデータを有していないことをワイヤードORラインが示す場合、フラグが設定されていないと状態マシンは結論付け、従って、隣接ワードラインの上側ページはプログラムされておらず、フローティングゲート間結合の補償は必要とされない。
図32Aは、これまでに説明したようにパイプライン型の読み出しを実行する一実施形態を説明するタイミング図である。図32Aは、2つの信号を示している。信号1300はメモリシステムから制御部(又はホスト/ユーザ)に通信される準備/ビジー信号を表しており、低のときはメモリシステムがI/Oライン320にデータを送る準備がまだできていないことを示し、高のときはデータを転送できることを示している。図32Aは、ワードラインWLn、WLn+1、WLn+2、…に沿ったメモリセルの下側ページと上側ページに関する読み出し要求に応じたパイプライン型の読み出し処理を示している。信号1300は最初に期間1300Aを有し、それはユーザに通信するために準備される第1のデータの集合を待機させることに対応する。期間1300Bの間は、ワードラインWLnに接続したメモリセルの下側ページに記憶したデータが、I/Oライン320を介してユーザに転送される。期間1300Cの間は、ワードラインWLnに接続したメモリセルの上側ページに記憶したデータが、I/Oライン320を介してユーザに転送される。次の期間の間は、ワードラインWLn+1に接続したメモリセルの下側ページに記憶したデータが、転送される等となる。
図32Aの信号1302は、メモリシステム内で発生するものの象徴である。読み出される第1データは、ワードラインWLnに接続したメモリセルの下側ページである。期間1302Aの間に、隣接ワードラインWLn+1が読み出される(例えば、Vra、Vrb及びVrcの3つの読み出し動作)。期間1302Bの間に、フラグをフェッチして状態マシンに通信し、上側ページがプログラムされたかどうかを決定する。なお、パイプラインは開始していないので状態マシンは読み出しフェッチを実行できる。また、Vrcの読み出し後に、(これまでに説明した)ワイヤードOR処理を用いてフラグを確認できる。ステップ1302Cでは、フラグの状態によって決定されるように、必要であれば補償を用いてWLnの下側ページを読み出す。期間1302Dの間、WLnの下側ページのデータを出力レジスタに配置する。
期間1302Eでは、隣接ワードラインWLn+1を読み出す(例えば、Vra、Vrb及びVrcの3つの読み出し動作)。このステップは、前に既に実行されているので必要とされない場合もある。しかし、1302E、1302F、及び1302Gに関連した時間はステップ1300Bに関連したものより一般的に短いので、動作の整合性のために実行される場合もある。さらに、いくつかの実施形態では、WLnとWLn+1の両方に関連したデータを同時に保存するために利用可能なラッチは十分なくてもよい。期間1302Fの間、Vrcの読み出し後にワイヤードOR処理を実行することによってWLn+1のフラグを読み出し、それによってパイプラインを停止する全フラグフェッチを避ける。期間1302Gの間に、必要に応じて補償を用いてWLnの上側ページを読み出す。期間1302Hの間に、内部ラッチから出力レジスタにWLnの上側ページのデータを転送しながら信号1302を低下させる。
WLnの下側ページと上側ページを読み出した後、読み出しデータの全てがユーザに提供されるまで、システムはWLn+1などの下側ページと上側ページを読み出す。期間1302Iの間に、新しい隣接ワードラインWLn+2を読み出す(例えば、Vra、Vrb及びVrcの3つの読み出し動作)。期間1302Jの間、Vrcにおける読み出し後にワイヤードOR処理を実行することによってWLn+2のフラグを読み出し、それによってパイプラインを停止する全フラグフェッチを避ける。期間1302Kの間に、必要に応じて補償を用いてWLn+1の下側ページを読み出す。処理は、これまでに議論したように継続する。いくつかの実施形態では、WLn+1のデータを1度読み出し、その後、WLnの上側ページと下側ページのデータを読み出し、上側ページを後で再読み出しするのではなくそれを保存しておくことによって、読み出し回数を低減することも有用である。読み出しステップの回数を低減する1つの利点として、消費電力を最小限にすることができる。
これまでの実施形態は、異なる基準点において複数の読み出しを用いる。これはフローティングゲート間結合を補償するための正確な手段を提供するが、読み出し処理に余計な時間を加える。別の実施形態は、検出増幅部を修正して補正機能を追加することである。隣接ワードラインのデータに依存して異なる起動点を検出するように検出増幅部を修正できる場合、単一の検出動作で最終的な補正データを与えることができる。本方法は、確実であり時間も節約できる。欠点は、検出増幅部のレイアウト面積が増大することでる。
図8を見直すと、検出起動点は検出増幅部600のキャパシタCSA652に基づいて設定される。隣接ワードラインからのデータに依存してSENノード上の異なるキャパシタを用いることによって、同じ検出処理に対して異なる起動点が設定される。補正が必要とされない場合、大きなキャパシタを用いる。補正が必要とされる場合、より小さなキャパシタを用いる。図33は、図8の検出モジュール380と同様の検出モジュール380’を示している。しかしながら、検出増幅部600’は、隣接ワードラインからのデータに基づいて接続されたり接続されなかったりする追加のキャパシタ1382を有する。キャパシタ1382は、トランジスタ1380を介してSENモードに接続する。トランジスタ1380は、トランジスタ1384とゲート530を介して読み出しバス532に接続する。隣接ワードラインからのデータは、読み出しバス532とトランジスタ1384を介してトランジスタ1380のノードCに提供される。データ1がノードCに提供される場合、隣接メモリセルからのフローティングゲート間結合による補正は必要とされない。データ0がノードCに提供される場合、補正が必要とされる。補正が必要とされない場合、キャパシタ1382は、SENノードに電気的に接続される。補正が必要とされる場合、キャパシタ1382は、SENノードから切断される。余分なキャパシタがSENノードに接続されない場合、より高い(撹乱された)閾値を備えたより小さなセル電流が、より高いキャパシタを充電するより低い(撹乱されていない)閾値状態と等価的にキャパシタ上の電圧を充電する。
図33は追加のキャパシタを選択的に追加することを示しているが、他の実施形態では異なる補償効果を実現するためにより多くのキャパシタを選択的に追加できる。さらに、いくつかの実施形態は、各々の可能性(例えば、補償なし、補償1、補償2、…)で異なるキャパシタの集合を接続するように、SENノードに接続される全てのキャパシタを選択的に結合させる。いくつかの実装形態では、他の容量性素子を用いることもできる。
図34は、図33の2つのキャパシタを用いる一実施形態を説明するフローチャートを提供する。図34の方法は、図30の方法に対する代替実施形態を提供する。図34のステップ1320では、その特定のビットラインに対してオフセットを用いるか否かに基づく決定を、ビットライン上で実行する。これは、図30のステップ1200と同様である。ステップ1322では、読み出し処理が下側ページであるか上側ページであるかを決定する。読み出し処理が下側ページであれば、方法はステップ1324に続く。オフセットが必要であれば、SEN2ノードから追加のキャパシタが切断される。オフセットが必要とされない場合、追加のキャパシタはSEN2ノードに接続されたままである。ステップ1326では、読み出されるページに関連したワードラインにVrbを印加する。ステップ1328ではビットラインを検出する。ステップ1330では検出ステップ1328の結果を記憶する。ステップ1332では、処理装置392は記憶されるデータ値を決定する。一実施形態では、下側ページを読み出す際、メモリセルがワードラインに印加されるVrbに応じてオンになる場合は、下側ページのデータは「1」であり、そうでなければ、下側ページのデータは「0」である。ステップ1334では、ユーザが読み出すための適切なラッチ内に、プロセッサによって決定されたデータ値を記憶する。
読み出し処理が上側ページに対するものであることが決定された場合(ステップ1322)、処理はステップ1340に継続する。オフセットが必要とされることをステップ1320で結論付けた場合、追加のキャパシタは切断される(ステップ1340)。オフセットが必要とされない場合、追加のキャパシタはSEN2ノードに接続されたままである。ステップ1342では、図28に対してこれまで説明したように、上側ページ読み出し処理を実行する。
これまで説明したように、多数のメモリセルを並列に検出する際、それらを組み合わせた電流は、著しい電圧降下と有限の抵抗を備えた接地ループをもたらす可能性がある。これは、ソースラインバイアスをもたらす。一実施形態では、このソースラインバイアスを用いてフローティングゲート間結合効果を補償する。ソースラインバイアスを考慮するこれまで説明した一実施形態は、複数の検出ステップ(ストローブとも呼ばれる)を含んでいる。第1ストローブの間、全ての適切なビットラインをソースラインに接続する。第2ストローブの間、より小さなサブセットのビットラインをソースラインに接続する。第1ストローブは高いソースラインオフセット電圧を用いて実行され、それは導通しているセルが、ソースライン電圧オフセットがないものよりも実際には導通していないことを示す。これは、より高い値への閾値電圧のシフトと等価である。提案された処理は、第1ストローブでデータラッチ内にデータを無条件で保存することである。第2ストローブでは、読み出されるワードライン上のいくつかのセルが、隣接ワードラインとのフローティングゲート間結合効果による補償を必要とするか否かを確認する。必要な場合は、補正を必要とするセルに対する第2ストローブからのデータを用いて、第1ストローブからのデータを上書きする。補正を必要としないセルに対してはデータを上書きせず、第2ストローブからのデータは破棄する。本方法を用いる1つの利点は、データ補正が通常の読み出しルーチン内に隠されるので読み出し時間を低減することである。
ソースラインバイアス法の欠点は、オフセットの値がデータパターンに依存することである。所定の検出レベルにおける導通セルが多いほどソース電圧は大きくなり、より多くの補正が実行される。所定の検出レベルにおける導通セルが少ないほどソース電圧は小さくなり、より少ない補正が実行される。各ページが完全にランダムなデータを有すると仮定すると、シフトは各ページに対してほぼ一定値となる。メモリセル毎に2つのビットを用いる場合、25%のビットラインが状態E、25%が状態A、25%が状態B、25%が状態Cとなる。Vraを読み出すと、ビットラインの25%が導通している。Vrcを読み出すと、ビットラインの75%が導通しており、状態Aを読み出す場合より状態Cを読み出す場合の方がより多くの補正となる。
図35は、これまでに説明した2つのストローブサイクルを用いることに基づく補償(ステップ1066を参照)を備えた読み出しの一実施形態を説明するフローチャートを提供する。ステップ1400では、システムは特定のビットラインに対するオフセットを選択するかどうかを決定する。これは、これまでに説明したステップ1200と同様である。読み出し処理が下側ページに対する場合(ステップ1402)、処理はステップ1404に継続する。読み出し処理が上側ページに対する場合、処理はステップ1424に継続する。ステップ1404では、読み出されるページに関連したワードラインに基準電圧Vrbを印加する。ステップ1406ではビットラインを検出する。ステップ1408では、適切なラッチ内に検出ステップ1406の結果を記憶する。ステップ1404〜1408は第1ストローブである。ステップ1410では、第1ストローブ中に高電流を有すると決定されたビットラインは、第2ストローブに対してオフにされる。ステップ1412では、ワードラインにVrbを印加することによって第2ストローブを開始する。ステップ1414ではビットラインを検出する。ステップ1416では、補正を必要とするビットラインは、ステップ1414からのデータを用いてステップ1408からのデータを上書きする。ステップ1418では、処理装置392は記憶されるデータ値を決定する。一実施形態では、下側ページを読み出す際、メモリセルがワードラインに印加されるVrbに応じてオンになる場合は、下側ページのデータは「1」であり、そうでなければ、下側ページのデータは「0」である。ステップ1420では、ユーザとの通信の適切なラッチ内に、決定したデータ値を記憶する。
図36は、ソース電流に基づく補正ありで上側ページの読み出し(図35のステップ1424)を実行する処理の一実施形態を説明するフローチャートを提供する。ステップ1502では、読み出されるページに関連したワードラインに基準電圧Vrcを印加する。ステップ1504ではビットラインを検出する。ステップ1506では適切なラッチ内に結果を記憶する。ステップ1508では、高電流を備えたビットラインを第2ストローブに対してオフにする。第1ストローブは、ステップ1502〜1506を含んでいる。ステップ1510では、同じワードラインにVrcを印加することによって第2ストローブを開始する。ステップ1512では、ビットラインを検出する。ステップ1514では、補正を必要とするビットラインに対するステップ1512の結果によって、ステップ1506内に記憶された結果を上書きする。ステップ1516では、システムは、これまで説明したように上側ページのプログラミング用のフラグを確認する。フラグが設定され、上側ページにプログラムされたデータがあることを示す場合、処理はステップ1522に継続する。フラグが設定されていない場合、ステップ1520において図36の処理は終了し、上側ページはプログラムされていないと結論付ける。これまでに説明したフラグを確認するための他の処理又はタイミングを用いることもできる。
ステップ1522では、読み出されるページに関連したワードラインにVrbを印加することによって第1ストローブを実行する。ステップ1524ではビットラインを検出する。ステップ1526では適切なラッチ内に結果を記憶する。ステップ1528では、第1ストローブ内の高電流を備えたビットラインを、第2ストローブに対してオフにする。ステップ1540では、ワードラインにVrbを印加することによって第2ストローブを開始する。ステップ1542ではビットラインを検出する。ステップ1544では、オフセットを必要とするビットラインに対するステップ1542からの結果によって、ステップ1526からの結果を上書きする。ステップ1546では、読み出されるページに関連したワードラインにVraを印加することによって、第1ストローブを実行する。ステップ1548ではビットラインを検出する。ステップ1550ではステップ1548からの結果を記憶する。ステップ1552では、第1ストローブ中の高電流を備えたビットラインを第2ストローブに対してオフにする。ステップ1554では、ワードラインにVraを印加することによって第2ストローブを開始する。ステップ1556ではビットラインを検出する。ステップ1558では、オフセットを必要とするビットラインに対するステップ1556からの結果によって、ステップ1550で記憶した結果を上書きする。いくつかの実施形態では、状態Eと状態Aの間のマージンはVraに関連したオフセットが不要なほど十分であり、ステップ1552から1558を省略できる。ステップ1560では、処理装置392は、ラッチ内に記憶された結果に基づいて記憶されるデータ値を決定する。これは、ステップ1132に対してこれまでに説明したように実行される。処理装置392によって決定されたデータ値は、ステップ1562で適切なラッチ内に記憶する。
フローティングゲート間結合効果を反転させることができる結果、閾値電圧分布の間のマージンをより小さくできるか、又はメモリシステムをより高速にプログラムできる。
これまでの実施形態では、4つの状態で記憶されたデータを読み出すために、隣接ワードラインに対して3つの追加の読み出しがあった。他の実施形態では、3つ未満の読み出しを実行することができ、それによって用いられる異なるオフセットの数を低減できる。これは、オフセットの分解能を低減することをもたらす。さらに、3つより多い読み出しを用いて、オフセットのより精密な調整を有することができる。いくつかの実施形態では、これまで説明した処理の一部はチップ外で実行することもできる。
本発明の以上の詳細な説明は、例示及び説明の目的で提示してきた。それは包括的なものではなく、開示された正確な形態に本発明を限定するものでもない。以上の開示内容の観点から、多くの修正及び変更が可能である。開示した実施形態は、本発明の原理及びその実際の用途を最も説明するように選択し、それによって当業者は様々な実施形態で、及び想定される特定の用途に適応するように様々な修正とともに本発明を利用できる。本発明の範囲は、ここに添付される請求項によって定義されるものとする。
NANDストリングの平面図を示す。 NANDストリングの等価回路図を示す。 NANDストリングの断面図を示す。 NANDフラッシュメモリセルアレイのブロック図を示す。 不揮発性メモリシステムのブロック図を示す。 不揮発性メモリシステムのブロック図を示す。 検出ブロックの一実施形態を表すブロック図を示す。 検出モジュールの一実施形態の概略図を示す。 検出モジュールの動作の一部を説明する表を示す。 検出モジュールの動作を説明するタイミング図を示す。 共通ソースライン上の電圧を説明するブロック図を示す。 ソースラインに接続したメモリセルを示す。 様々な閾値電圧分布を示す。 検出モジュールの動作の一部を説明するタイミング図を示す。 不揮発性メモリをプログラムする処理の一実施形態を説明するフローチャートを示す。 不揮発性メモリセルの制御ゲートに印加される波形の一例を示す。 閾値電圧分布の集合の一例を示す。 閾値電圧分布の集合の一例を示す。 様々な閾値電圧分布を示して不揮発性メモリをプログラムする処理を説明する図を示す。 様々な閾値電圧分布を示して不揮発性メモリをプログラムする処理を説明する図を示す。 様々な閾値電圧分布を示して不揮発性メモリをプログラムする処理を説明する図を示す。 様々な実施形態における不揮発性メモリのプログラム順を説明する表を示す。 様々な実施形態における不揮発性メモリのプログラム順を説明する表を示す。 様々な実施形態における不揮発性メモリのプログラム順を説明する表を示す。 様々な実施形態における不揮発性メモリのプログラム順を説明する表を示す。 様々な実施形態における不揮発性メモリのプログラム順を説明する表を示す。 様々な実施形態における不揮発性メモリのプログラム順を説明する表を示す。 様々な実施形態における不揮発性メモリのプログラム順を説明する表を示す。 不揮発性メモリを読み出す処理の一実施形態を説明するフローチャートを示す。 不揮発性メモリの読み出し動作を実行する処理の一実施形態を説明するフローチャートを示す。 データを回復する処理の一実施形態を説明するフローチャートを示す。 複数のワードラインからのデータを回復する処理の一実施形態を説明するフローチャートを示す。 下側ページからデータを読み出す処理の一実施形態を説明するフローチャートを示す。 上側ページからデータを読み出す処理の一実施形態を説明するフローチャートを示す。 データを読み出す処理の一実施形態を説明するフローチャートを示す。 上側ページからデータを読み出す処理の一実施形態を説明するフローチャートを示す。 補償を用いることなくデータを読み出す処理の一実施形態を説明するフローチャートを示す。 フローティングゲート間(又は誘電体領域間)の結合を補償しながら、データを読み出す処理の一実施形態を説明するフローチャートを示す。 データ値を決定する処理を示す表を示す。 補正ありで上側ページのデータを読み出す処理の一実施形態を説明するフローチャートを示す。 パイプライン型の読み出し処理を説明するタイミング図を示す。 検出モジュールの概略図を示す。 データを読み出す処理の一実施形態を説明するフローチャートを示す。 データを読み出す処理の一実施形態を説明するフローチャートを示す。 図35の処理に関連した上側ページのデータを読み出す処理の一実施形態を説明するフローチャートを示す。

Claims (18)

  1. 不揮発性記憶からデータを読み出す方法であって、
    第1不揮発性記憶要素からデータを読み出すための要求を受け取る工程と、
    前記要求に応じて第2不揮発性記憶要素で読み出し動作を実行する工程と、
    前記第2不揮発性記憶要素内に記憶可能なグループ化データのサブセットに基づいて、前記第1不揮発性記憶要素を読み出すための基準値を決定する工程と、
    前記基準値を用いて、前記要求に応じて前記第1不揮発性記憶要素内に記憶したデータを読み出す工程と、を備えており、
    前記第2不揮発性記憶要素は、前記第1不揮発性記憶要素に隣接しており、複数のグループ化データを記憶可能である方法。
  2. データの前記複数のグループ化データが、下側ページと上側ページを備えている請求項1に記載の方法。
  3. 基準値を決定する工程が、前記第2不揮発性記憶要素の上側ページのデータを読み出す工程を備えており、
    前記基準値が、前記第2不揮発性記憶要素の前記上側ページのデータに基づいており、下側ページのデータには基づいていない請求項2に記載の方法。
  4. 基準値を決定して、前記第1不揮発性記憶要素内に記憶したデータを読み出す工程が、
    前記第2不揮発性記憶要素の上側ページのデータがプログラムされたか否かを決定する工程と、
    前記第2不揮発性記憶要素の上側ページのデータがプログラムされていないときに、前記第2不揮発性記憶要素からのフローティングゲート結合効果を補償しない第1基準値を用いて前記第1不揮発性記憶要素内のデータを読み出す工程と、
    前記第2不揮発性記憶要素の上側ページのデータが第1サブセットのデータ状態にプログラムされているか否かを決定する工程と、
    前記第2不揮発性記憶要素の上側ページのデータが前記第1サブセットのデータ状態にプログラムされていないときに、前記第1基準を用いて前記第1不揮発性記憶要素内のデータを読み出す工程と、
    前記第2不揮発性記憶要素の上側ページのデータが前記第1サブセットのデータ状態にプログラムされているときに、前記第1基準+オフセットを用いて前記第1不揮発性記憶要素内のデータを読み出す工程と、を備えている請求項2に記載の方法。
  5. 前記第1不揮発性記憶要素が、第1データ状態、第2データ状態、第3データ状態及び第4データ状態を含む4つのデータ状態でデータを記憶可能であり、
    前記第1基準が、前記第2データ状態と前記第3データ状態の間の閾値電圧を示しており、
    前記第1基準+オフセットを用いた前記第1不揮発性記憶要素内のデータの前記読み出し工程が、
    前記第1不揮発性記憶要素の制御ゲートに前記第1基準に対応する電圧を印加する工程と、
    前記第1不揮発性記憶要素による導通を検出する工程と、
    前記第1不揮発性記憶要素の前記制御ゲートに前記第1基準+オフセットに対応する電圧を印加する工程と、
    前記第1不揮発性記憶要素による導通を検出する工程と、
    適切な結果を記憶する工程と、を備えている請求項4に記載の方法。
  6. 前記第1不揮発性記憶要素が、第1データ状態、第2データ状態、第3データ状態及び第4データ状態を含む4つのデータ状態でデータを記憶可能であり、
    前記第1不揮発性記憶要素内に記憶されたデータを読み出す工程が、さらに、第2基準値、前記第2基準値+オフセット、第3基準値、及び前記第3基準値+オフセットを用いて読み出し動作を実行する工程を備えている請求項4に記載の方法。
  7. 前記第1不揮発性記憶要素が、第1グループ化データの隣接する不揮発性記憶要素への書き込みに続いて、第2グループ化データに対してプログラムされたデータを備えている請求項1に記載の方法。
  8. 前記第1不揮発性記憶要素が、マルチ状態NANDフラッシュメモリ素子である請求項1に記載の方法。
  9. 前記第1不揮発性記憶要素が、フローティングゲートを備えている請求項1に記載の方法。
  10. 前記第1不揮発性記憶要素が、電荷を蓄積するための誘電体領域を備えている請求項1に記載の方法。
  11. 複数の不揮発性記憶要素と1つ以上の管理回路を備えている不揮発性記憶システムであって、
    複数の不揮発性記憶要素は、
    第1不揮発性記憶要素の集合と、
    前記第1不揮発性記憶要素の集合に隣接する第2不揮発性記憶要素の集合と、を備えており、
    前記第1不揮発性記憶要素と前記第2不揮発性記憶要素が、複数のグループ化データを記憶しており、
    1つ以上の管理回路は、
    前記複数の不揮発性記憶要素と通信しており、
    前記第2不揮発性記憶要素の集合からの第1読み出しの後に前記第1不揮発性記憶要素の集合から読み出しており、
    前記第2不揮発性記憶要素内に記憶可能な前記グループ化データのサブセットに基づいて前記第1不揮発性記憶要素を読み出す基準値を決定しており、
    続いて前記基準値を用いて、前記第1不揮発性記憶要素内に記憶されたデータを読み出している不揮発性記憶システム。
  12. 前記1つ以上の管理回路が、状態マシンと復号部と検出増幅部を備えている請求項11に記載の不揮発性記憶システム。
  13. 前記検出増幅器の各々が、
    読み出される不揮発性記憶要素と通信し、前記検出増幅部が前記検出ノードにおける電流の導通を測定し、読み出される前記不揮発性記憶要素内に記憶されたデータを検出する検出ノードと、
    前記検出ノードに接続される第1容量性素子と、
    前記検出ノードに選択的に接続される第2容量性素子と、
    前記第2容量性素子を選択的に接続する選択回路と、を備えており、
    前記選択回路は、前記第2容量性素子に接続されており、隣接する不揮発性記憶要素からの指示を受け取って、前記隣接する不揮発性記憶要素からの前記指示に基づいて前記検出ノードに前記第2容量性素子を選択的に接続する請求項12に記載の不揮発性記憶システム。
  14. 前記不揮発性記憶要素が、マルチ状態NANDフラッシュメモリ素子である請求項11に記載の不揮発性記憶システム。
  15. 前記複数のグループのデータが、下側ページと上側ページを備えており、
    前記1つ以上の管理回路は、前記第2不揮発性記憶要素の上側ページのデータを読み出すことによって基準値を決定する手段を備えており、
    前記基準値は、前記第2不揮発性記憶要素の前記上側ページに基づいており、前記下側ページには基づいていない請求項11に記載の不揮発性記憶システム。
  16. 前記第1不揮発性記憶要素の集合が、第1グループのデータの隣接する不揮発性記憶要素への書き込みに続いてプログラムされた第2グループのデータを備えている請求項11に記載の不揮発性記憶システム。
  17. 前記複数の不揮発性記憶要素が、フローティングゲートを備えている請求項11に記載の不揮発性記憶システム。
  18. 前記複数の不揮発性記憶要素が、電荷を蓄積する誘電体領域を備えている請求項11に記載の不揮発性記憶システム。
JP2008505382A 2005-04-05 2006-03-31 結合の補償を含む不揮発性記憶のための読み出し動作 Expired - Fee Related JP4778553B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/099,049 US7187585B2 (en) 2005-04-05 2005-04-05 Read operation for non-volatile storage that includes compensation for coupling
US11/099,049 2005-04-05
PCT/US2006/011813 WO2006107731A1 (en) 2005-04-05 2006-03-31 Read operation for non-volatile storage that includes compensation for coupling

Publications (2)

Publication Number Publication Date
JP2008535144A true JP2008535144A (ja) 2008-08-28
JP4778553B2 JP4778553B2 (ja) 2011-09-21

Family

ID=36637026

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008505382A Expired - Fee Related JP4778553B2 (ja) 2005-04-05 2006-03-31 結合の補償を含む不揮発性記憶のための読み出し動作

Country Status (7)

Country Link
US (6) US7187585B2 (ja)
EP (1) EP1866931A1 (ja)
JP (1) JP4778553B2 (ja)
KR (1) KR100934496B1 (ja)
CN (1) CN101218650B (ja)
TW (4) TWI370454B (ja)
WO (1) WO2006107731A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010516015A (ja) * 2007-01-12 2010-05-13 マーベル ワールド トレード リミテッド 改良したマルチレベルメモリ
JP2011008838A (ja) * 2009-06-23 2011-01-13 Toshiba Corp 不揮発性半導体記憶装置およびその書き込み方法
US10818358B2 (en) 2017-09-22 2020-10-27 Toshiba Memory Corporation Memory system including a semiconductor memory having a memory cell and a write circuit configured to write data to the memory cell

Families Citing this family (356)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7490283B2 (en) 2004-05-13 2009-02-10 Sandisk Corporation Pipelined data relocation and improved chip architectures
US7158421B2 (en) * 2005-04-01 2007-01-02 Sandisk Corporation Use of data latches in multi-phase programming of non-volatile memories
US7849381B2 (en) 2004-12-21 2010-12-07 Sandisk Corporation Method for copying data in reprogrammable non-volatile memory
US7463521B2 (en) 2005-04-01 2008-12-09 Sandisk Corporation Method for non-volatile memory with managed execution of cached data
US7206230B2 (en) * 2005-04-01 2007-04-17 Sandisk Corporation Use of data latches in cache operations of non-volatile memories
US7447078B2 (en) * 2005-04-01 2008-11-04 Sandisk Corporation Method for non-volatile memory with background data latch caching during read operations
US7196928B2 (en) * 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling during read operations of non-volatile memory
US7196946B2 (en) * 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling in non-volatile storage
US7187585B2 (en) * 2005-04-05 2007-03-06 Sandisk Corporation Read operation for non-volatile storage that includes compensation for coupling
US7349260B2 (en) 2005-12-29 2008-03-25 Sandisk Corporation Alternate row-based reading and writing for non-volatile memory
US7443726B2 (en) * 2005-12-29 2008-10-28 Sandisk Corporation Systems for alternate row-based reading and writing for non-volatile memory
ITRM20060074A1 (it) * 2006-02-15 2007-08-16 Micron Technology Inc Circuito per dati a latch singolo in un dispositivo di memoria volatile e delle a piu livelli
KR100703806B1 (ko) * 2006-02-16 2007-04-09 삼성전자주식회사 비휘발성 메모리, 이를 위한 데이터 유효성을 판단하는장치 및 방법
US7400532B2 (en) 2006-02-16 2008-07-15 Micron Technology, Inc. Programming method to reduce gate coupling interference for non-volatile memory
EP1991989B1 (en) * 2006-03-03 2011-01-05 Sandisk Corporation Read operation for non-volatile storage with compensation for floating gate coupling
US7499319B2 (en) 2006-03-03 2009-03-03 Sandisk Corporation Read operation for non-volatile storage with compensation for coupling
US7436733B2 (en) 2006-03-03 2008-10-14 Sandisk Corporation System for performing read operation on non-volatile storage with compensation for coupling
DE102006018245A1 (de) * 2006-04-13 2007-10-18 Aurenz, Hans-Peter System zur Ansteuerung von Endgeräten
EP2016590B1 (en) 2006-05-05 2011-10-26 SanDisk Corporation Non-volatile memory with background data latch caching during read operations and methods therefor
WO2007132457A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
WO2007132453A2 (en) * 2006-05-12 2007-11-22 Anobit Technologies Ltd. Distortion estimation and cancellation in memory devices
WO2007132456A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device with adaptive capacity
US7457163B2 (en) 2006-06-01 2008-11-25 Sandisk Corporation System for verifying non-volatile storage using different voltages
US7440331B2 (en) 2006-06-01 2008-10-21 Sandisk Corporation Verify operation for non-volatile storage using different voltages
WO2008097320A2 (en) * 2006-06-01 2008-08-14 Virginia Tech Intellectual Properties, Inc. Premixing injector for gas turbine engines
US7450421B2 (en) 2006-06-02 2008-11-11 Sandisk Corporation Data pattern sensitivity compensation using different voltage
US7310272B1 (en) 2006-06-02 2007-12-18 Sandisk Corporation System for performing data pattern sensitivity compensation using different voltage
US7606084B2 (en) * 2006-06-19 2009-10-20 Sandisk Corporation Programming differently sized margins and sensing with compensations at select states for improved read operations in non-volatile memory
US7352628B2 (en) * 2006-06-19 2008-04-01 Sandisk Corporation Systems for programming differently sized margins and sensing with compensations at select states for improved read operations in a non-volatile memory
US7599229B2 (en) * 2006-06-21 2009-10-06 Macronix International Co., Ltd. Methods and structures for expanding a memory operation window and reducing a second bit effect
US7471568B2 (en) * 2006-06-21 2008-12-30 Macronix International Co., Ltd. Multi-level cell memory structures with enlarged second bit operation window
US7443729B2 (en) * 2006-07-20 2008-10-28 Sandisk Corporation System that compensates for coupling based on sensing a neighbor using coupling
US7894269B2 (en) * 2006-07-20 2011-02-22 Sandisk Corporation Nonvolatile memory and method for compensating during programming for perturbing charges of neighboring cells
US7885119B2 (en) 2006-07-20 2011-02-08 Sandisk Corporation Compensating for coupling during programming
US7400535B2 (en) * 2006-07-20 2008-07-15 Sandisk Corporation System that compensates for coupling during programming
US7330376B1 (en) * 2006-07-27 2008-02-12 Macronix International Co., Ltd. Method for memory data storage by partition into narrower threshold voltage distribution regions
US7366017B2 (en) * 2006-08-22 2008-04-29 Micron Technology, Inc. Method for modifying data more than once in a multi-level cell memory location within a memory array
JP5052070B2 (ja) * 2006-08-23 2012-10-17 ルネサスエレクトロニクス株式会社 データ読み出し回路及びデータ読み出し方法
US8060806B2 (en) * 2006-08-27 2011-11-15 Anobit Technologies Ltd. Estimation of non-linear distortion in memory devices
KR100822560B1 (ko) * 2006-09-04 2008-04-16 주식회사 하이닉스반도체 낸드 플래시 메모리의 전류 측정 회로
US7423476B2 (en) * 2006-09-25 2008-09-09 Micron Technology, Inc. Current mirror circuit having drain-source voltage clamp
JP2008084485A (ja) * 2006-09-28 2008-04-10 Toshiba Corp 不揮発性半導体記憶装置及びデータ読出方法
WO2008042605A1 (en) * 2006-09-29 2008-04-10 Sandisk Corporation Reverse reading in non-volatile memory with compensation for coupling
US7684247B2 (en) * 2006-09-29 2010-03-23 Sandisk Corporation Reverse reading in non-volatile memory with compensation for coupling
US7447076B2 (en) 2006-09-29 2008-11-04 Sandisk Corporation Systems for reverse reading in non-volatile memory with compensation for coupling
WO2008053472A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US7924648B2 (en) * 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
US8151163B2 (en) 2006-12-03 2012-04-03 Anobit Technologies Ltd. Automatic defect management in memory devices
US7900102B2 (en) 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
US7616505B2 (en) * 2006-12-28 2009-11-10 Sandisk Corporation Complete word line look ahead with efficient data latch assignment in non-volatile memory read operations
US7701765B2 (en) * 2006-12-28 2010-04-20 Micron Technology, Inc. Non-volatile multilevel memory cell programming
US7616499B2 (en) * 2006-12-28 2009-11-10 Sandisk Corporation Retention margin program verification
WO2008083162A1 (en) * 2006-12-28 2008-07-10 Sandisk Corporation Retention margin program verification
US7616506B2 (en) * 2006-12-28 2009-11-10 Sandisk Corporation Systems for complete word line look ahead with efficient data latch assignment in non-volatile memory read operations
US7652918B2 (en) * 2006-12-28 2010-01-26 Sandisk Corporation Retention margin program verification
WO2008083132A2 (en) * 2006-12-28 2008-07-10 Sandisk Corporation Complete word line look ahead with efficient data latch assignment in non-volatile memory read operations
TWI380311B (en) * 2006-12-29 2012-12-21 Sandisk Technologies Inc Systems and methods for margined neighbor reading for non-volatile memory read operations including coupling compensation
US7495962B2 (en) 2006-12-29 2009-02-24 Sandisk Corporation Alternating read mode
WO2008083137A1 (en) * 2006-12-29 2008-07-10 Sandisk Corporation Reading of a nonvolatile memory cell by taking account of the stored state of a neighboring memory cell
US7518923B2 (en) 2006-12-29 2009-04-14 Sandisk Corporation Margined neighbor reading for non-volatile memory read operations including coupling compensation
US7440324B2 (en) 2006-12-29 2008-10-21 Sandisk Corporation Apparatus with alternating read mode
US7606070B2 (en) 2006-12-29 2009-10-20 Sandisk Corporation Systems for margined neighbor reading for non-volatile memory read operations including coupling compensation
US7751240B2 (en) 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
US7679965B2 (en) * 2007-01-31 2010-03-16 Sandisk Il Ltd Flash memory with improved programming precision
US7499320B2 (en) * 2007-03-07 2009-03-03 Sandisk Corporation Non-volatile memory with cache page copy
US7502255B2 (en) * 2007-03-07 2009-03-10 Sandisk Corporation Method for cache page copy in a non-volatile memory
US8369141B2 (en) 2007-03-12 2013-02-05 Apple Inc. Adaptive estimation of memory cell read thresholds
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US7924616B2 (en) * 2007-05-04 2011-04-12 Micron Technology, Inc. Word line voltage boost system and method for non-volatile memory devices and memory devices and processor-based system using same
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
US8429493B2 (en) * 2007-05-12 2013-04-23 Apple Inc. Memory device with internal signap processing unit
US8073648B2 (en) * 2007-05-14 2011-12-06 Sandisk Il Ltd. Measuring threshold voltage distribution in memory using an aggregate characteristic
ITRM20070273A1 (it) 2007-05-16 2008-11-17 Micron Technology Inc Lettura di celle di memoria non volatile a livello mutiplo.
KR100892583B1 (ko) * 2007-06-08 2009-04-08 삼성전자주식회사 커플링을 고려한 메모리 셀의 데이터 프로그램 장치 및 그방법
KR101303177B1 (ko) * 2007-06-22 2013-09-17 삼성전자주식회사 불휘발성 메모리 소자 및 그 동작 방법
US20080320366A1 (en) * 2007-06-25 2008-12-25 Lin Jason T Methods of reading nonvolatile memory
US7849383B2 (en) * 2007-06-25 2010-12-07 Sandisk Corporation Systems and methods for reading nonvolatile memory using multiple reading schemes
US7471567B1 (en) 2007-06-29 2008-12-30 Sandisk Corporation Method for source bias all bit line sensing in non-volatile storage
US7545678B2 (en) * 2007-06-29 2009-06-09 Sandisk Corporation Non-volatile storage with source bias all bit line sensing
WO2009006275A1 (en) * 2007-06-29 2009-01-08 Sandisk Corporation Non-volatile storage with source bias all bit line sensing
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US8259497B2 (en) 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
JP4510060B2 (ja) * 2007-09-14 2010-07-21 株式会社東芝 不揮発性半導体記憶装置の読み出し/書き込み制御方法
US7652929B2 (en) * 2007-09-17 2010-01-26 Sandisk Corporation Non-volatile memory and method for biasing adjacent word line for verify during programming
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
US8527819B2 (en) 2007-10-19 2013-09-03 Apple Inc. Data storage in analog memory cell arrays having erase failures
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
US7675772B2 (en) * 2007-10-26 2010-03-09 Micron Technology, Inc. Multilevel memory cell operation
KR101509836B1 (ko) 2007-11-13 2015-04-06 애플 인크. 멀티 유닛 메모리 디바이스에서의 메모리 유닛의 최적화된 선택
US7613045B2 (en) * 2007-11-26 2009-11-03 Sandisk Il, Ltd. Operation sequence and commands for measuring threshold voltage distribution in memory
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US7924587B2 (en) 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US7864573B2 (en) * 2008-02-24 2011-01-04 Anobit Technologies Ltd. Programming analog memory cells for reduced variance after retention
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US7808819B2 (en) * 2008-04-29 2010-10-05 Sandisk Il Ltd. Method for adaptive setting of state voltage levels in non-volatile memory
US7808836B2 (en) * 2008-04-29 2010-10-05 Sandisk Il Ltd. Non-volatile memory with adaptive setting of state voltage levels
US7848144B2 (en) * 2008-06-16 2010-12-07 Sandisk Corporation Reverse order page writing in flash memories
US7821839B2 (en) * 2008-06-27 2010-10-26 Sandisk Il Ltd. Gain control for read operations in flash memory
US8059447B2 (en) 2008-06-27 2011-11-15 Sandisk 3D Llc Capacitive discharge method for writing to non-volatile memory
WO2010002948A1 (en) * 2008-07-01 2010-01-07 Lsi Corporation Methods and apparatus for soft demapping and intercell interference mitigation in flash memories
US20100027340A1 (en) * 2008-07-31 2010-02-04 Ercole Rosario Di Iorio Pattern dependent string resistance compensation
US7995388B1 (en) 2008-08-05 2011-08-09 Anobit Technologies Ltd. Data storage using modified voltages
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US7876611B2 (en) * 2008-08-08 2011-01-25 Sandisk Corporation Compensating for coupling during read operations in non-volatile storage
US8130528B2 (en) 2008-08-25 2012-03-06 Sandisk 3D Llc Memory system with sectional data lines
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
CN102203877B (zh) 2008-09-30 2016-07-06 Lsi公司 使用解码器性能反馈的用于存储器器件的软数据生成的方法和装置
US8027209B2 (en) * 2008-10-06 2011-09-27 Sandisk 3D, Llc Continuous programming of non-volatile memory
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8713330B1 (en) 2008-10-30 2014-04-29 Apple Inc. Data scrambling in memory devices
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
KR101642465B1 (ko) 2008-12-12 2016-07-25 삼성전자주식회사 불휘발성 메모리 장치의 액세스 방법
US7813181B2 (en) * 2008-12-31 2010-10-12 Sandisk Corporation Non-volatile memory and method for sensing with pipelined corrections for neighboring perturbations
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US7944754B2 (en) 2008-12-31 2011-05-17 Sandisk Corporation Non-volatile memory and method with continuous scanning time-domain sensing
US8397131B1 (en) 2008-12-31 2013-03-12 Apple Inc. Efficient readout schemes for analog memory cell devices
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
KR101074539B1 (ko) * 2009-02-04 2011-10-17 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그 동작 방법
US8228701B2 (en) 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8279650B2 (en) 2009-04-20 2012-10-02 Sandisk 3D Llc Memory system with data line switching scheme
US8139418B2 (en) * 2009-04-27 2012-03-20 Micron Technology, Inc. Techniques for controlling a direct injection semiconductor memory device
US7898864B2 (en) * 2009-06-24 2011-03-01 Sandisk Corporation Read operation for memory with compensation for coupling based on write-erase cycles
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8130544B2 (en) * 2009-08-17 2012-03-06 Skymedi Corporation Method of reducing bit error rate for a flash memory
US8077515B2 (en) * 2009-08-25 2011-12-13 Micron Technology, Inc. Methods, devices, and systems for dealing with threshold voltage change in memory devices
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8677203B1 (en) 2010-01-11 2014-03-18 Apple Inc. Redundant data storage schemes for multi-die memory systems
US8775913B2 (en) 2010-03-31 2014-07-08 Lsi Corporation Methods and apparatus for computing soft data or log likelihood ratios for received values in communication or storage systems
US8429500B2 (en) 2010-03-31 2013-04-23 Lsi Corporation Methods and apparatus for computing a probability value of a received value in communication or storage systems
US8504885B2 (en) 2010-03-31 2013-08-06 Lsi Corporation Methods and apparatus for approximating a probability density function or distribution for a received value in communication or storage systems
US8218366B2 (en) 2010-04-18 2012-07-10 Sandisk Technologies Inc. Programming non-volatile storage including reducing impact from other memory cells
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8451664B2 (en) 2010-05-12 2013-05-28 Micron Technology, Inc. Determining and using soft data in memory devices and systems
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8767459B1 (en) 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
KR101703279B1 (ko) 2010-08-05 2017-02-06 삼성전자 주식회사 플래시 메모리 장치 및 플래시 메모리 장치의 독출 방법
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
KR101774471B1 (ko) 2010-11-25 2017-09-05 삼성전자주식회사 불 휘발성 메모리 장치 및 그것의 읽기 방법
US8472280B2 (en) 2010-12-21 2013-06-25 Sandisk Technologies Inc. Alternate page by page programming scheme
US8099652B1 (en) * 2010-12-23 2012-01-17 Sandisk Corporation Non-volatile memory and methods with reading soft bits in non uniform schemes
US8498152B2 (en) 2010-12-23 2013-07-30 Sandisk Il Ltd. Non-volatile memory and methods with soft-bit reads while reading hard bits with compensation for coupling
US8782495B2 (en) * 2010-12-23 2014-07-15 Sandisk Il Ltd Non-volatile memory and methods with asymmetric soft read points around hard read points
US9898361B2 (en) 2011-01-04 2018-02-20 Seagate Technology Llc Multi-tier detection and decoding in flash memories
US9292377B2 (en) 2011-01-04 2016-03-22 Seagate Technology Llc Detection and decoding in flash memories using correlation of neighboring bits and probability based reliability values
US8374028B2 (en) * 2011-01-19 2013-02-12 Micron Technology, Inc. Sense operation in a memory device
TWI427354B (zh) 2011-01-20 2014-02-21 Largan Precision Co 攝像用光學透鏡組
US8972650B2 (en) 2011-01-28 2015-03-03 Apple Inc. Methods and systems for performing efficient page reads in a non-volatile memory
JP5330421B2 (ja) * 2011-02-01 2013-10-30 株式会社東芝 不揮発性半導体記憶装置
US9502117B2 (en) 2011-03-14 2016-11-22 Seagate Technology Llc Cell-level statistics collection for detection and decoding in flash memories
US8472266B2 (en) 2011-03-31 2013-06-25 Sandisk Technologies Inc. Reducing neighbor read disturb
US8395936B2 (en) 2011-05-09 2013-03-12 Sandisk Technologies Inc. Using channel-to-channel coupling to compensate floating gate-to-floating gate coupling in programming of non-volatile memory
US8750042B2 (en) 2011-07-28 2014-06-10 Sandisk Technologies Inc. Combined simultaneous sensing of multiple wordlines in a post-write read (PWR) and detection of NAND failures
US8775901B2 (en) 2011-07-28 2014-07-08 SanDisk Technologies, Inc. Data recovery for defective word lines during programming of non-volatile memory arrays
US8891297B2 (en) 2011-11-01 2014-11-18 Micron Technology, Inc. Memory cell sensing
KR101856136B1 (ko) 2011-11-15 2018-06-21 삼성전자주식회사 비휘발성 메모리 장치의 동작 제어방법, 그 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
US8687421B2 (en) * 2011-11-21 2014-04-01 Sandisk Technologies Inc. Scrub techniques for use with dynamic read
US8730722B2 (en) 2012-03-02 2014-05-20 Sandisk Technologies Inc. Saving of data in cases of word-line to word-line short in memory arrays
TWI497497B (zh) * 2012-03-19 2015-08-21 Macronix Int Co Ltd 記憶體中動態感測區間的方法與裝置
US9171627B2 (en) 2012-04-11 2015-10-27 Aplus Flash Technology, Inc. Non-boosting program inhibit scheme in NAND design
US8923041B2 (en) 2012-04-11 2014-12-30 Everspin Technologies, Inc. Self-referenced sense amplifier for spin torque MRAM
US9087595B2 (en) 2012-04-20 2015-07-21 Aplus Flash Technology, Inc. Shielding 2-cycle half-page read and program schemes for advanced NAND flash design
US8937837B2 (en) 2012-05-08 2015-01-20 Sandisk Technologies Inc. Bit line BL isolation scheme during erase operation for non-volatile storage
US9001577B2 (en) 2012-06-01 2015-04-07 Micron Technology, Inc. Memory cell sensing
US9323608B2 (en) * 2012-06-07 2016-04-26 Micron Technology, Inc. Integrity of a data bus
KR20140018517A (ko) * 2012-08-02 2014-02-13 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그것의 동작 방법
US9076545B2 (en) 2013-01-17 2015-07-07 Sandisk Tecnologies Inc. Dynamic adjustment of read voltage levels based on memory cell threshold voltage distribution
US9158667B2 (en) 2013-03-04 2015-10-13 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
TWI511156B (zh) * 2013-05-13 2015-12-01 Winbond Electronics Corp 參考記憶胞的偏壓產生器及偏壓提供方法
US9183940B2 (en) 2013-05-21 2015-11-10 Aplus Flash Technology, Inc. Low disturbance, power-consumption, and latency in NAND read and program-verify operations
WO2014210424A2 (en) 2013-06-27 2014-12-31 Aplus Flash Technology, Inc. Novel nand array architecture for multiple simultaneous program and read
WO2015013689A2 (en) 2013-07-25 2015-01-29 Aplus Flash Technology, Inc. Nand array hiarchical bl structures for multiple-wl and all -bl simultaneous erase, erase-verify, program, program-verify, and read operations
US8964496B2 (en) 2013-07-26 2015-02-24 Micron Technology, Inc. Apparatuses and methods for performing compare operations using sensing circuitry
US8971124B1 (en) 2013-08-08 2015-03-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9153305B2 (en) 2013-08-30 2015-10-06 Micron Technology, Inc. Independently addressable memory array address spaces
US9293205B2 (en) 2013-09-14 2016-03-22 Aplus Flash Technology, Inc Multi-task concurrent/pipeline NAND operations on all planes
US9019785B2 (en) 2013-09-19 2015-04-28 Micron Technology, Inc. Data shifting via a number of isolation devices
US9165683B2 (en) 2013-09-23 2015-10-20 Sandisk Technologies Inc. Multi-word line erratic programming detection
US9449675B2 (en) 2013-10-31 2016-09-20 Micron Technology, Inc. Apparatuses and methods for identifying an extremum value stored in an array of memory cells
US9430191B2 (en) 2013-11-08 2016-08-30 Micron Technology, Inc. Division operations for memory
WO2015100434A2 (en) 2013-12-25 2015-07-02 Aplus Flash Technology, Inc A HYBRID NAND WITH ALL-BL m-PAGE OPERATION SCHEME
US20150270015A1 (en) * 2014-03-19 2015-09-24 Micron Technology, Inc. Memory mapping
US9934856B2 (en) 2014-03-31 2018-04-03 Micron Technology, Inc. Apparatuses and methods for comparing data patterns in memory
US9552251B2 (en) * 2014-04-22 2017-01-24 Sandisk Technologies Llc Neighboring word line program disturb countermeasure for charge-trapping memory
US8886877B1 (en) * 2014-05-15 2014-11-11 Sandisk Technologies Inc. In-situ block folding for nonvolatile memory
US9455020B2 (en) 2014-06-05 2016-09-27 Micron Technology, Inc. Apparatuses and methods for performing an exclusive or operation using sensing circuitry
US10074407B2 (en) 2014-06-05 2018-09-11 Micron Technology, Inc. Apparatuses and methods for performing invert operations using sensing circuitry
US9711207B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9704540B2 (en) 2014-06-05 2017-07-11 Micron Technology, Inc. Apparatuses and methods for parity determination using sensing circuitry
US9449674B2 (en) 2014-06-05 2016-09-20 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9830999B2 (en) 2014-06-05 2017-11-28 Micron Technology, Inc. Comparison operations in memory
US9711206B2 (en) 2014-06-05 2017-07-18 Micron Technology, Inc. Performing logical operations using sensing circuitry
US9779019B2 (en) 2014-06-05 2017-10-03 Micron Technology, Inc. Data storage layout
US9496023B2 (en) 2014-06-05 2016-11-15 Micron Technology, Inc. Comparison operations on logical representations of values in memory
US9786335B2 (en) 2014-06-05 2017-10-10 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US9910787B2 (en) 2014-06-05 2018-03-06 Micron Technology, Inc. Virtual address table
US9443612B2 (en) 2014-07-10 2016-09-13 Sandisk Technologies Llc Determination of bit line to low voltage signal shorts
US9484086B2 (en) 2014-07-10 2016-11-01 Sandisk Technologies Llc Determination of word line to local source line shorts
US9460809B2 (en) 2014-07-10 2016-10-04 Sandisk Technologies Llc AC stress mode to screen out word line to word line shorts
US9514835B2 (en) 2014-07-10 2016-12-06 Sandisk Technologies Llc Determination of word line to word line shorts between adjacent blocks
WO2016014731A1 (en) 2014-07-22 2016-01-28 Aplus Flash Technology, Inc. Yukai vsl-based vt-compensation for nand memory
US9971647B2 (en) * 2014-07-31 2018-05-15 Winbond Electronics Corporation Apparatus and method for programming ECC-enabled NAND flash memory
US9202593B1 (en) 2014-09-02 2015-12-01 Sandisk Technologies Inc. Techniques for detecting broken word lines in non-volatile memories
US9240249B1 (en) 2014-09-02 2016-01-19 Sandisk Technologies Inc. AC stress methods to screen out bit line defects
US9740607B2 (en) 2014-09-03 2017-08-22 Micron Technology, Inc. Swap operations in memory
US10068652B2 (en) 2014-09-03 2018-09-04 Micron Technology, Inc. Apparatuses and methods for determining population count
US9589602B2 (en) 2014-09-03 2017-03-07 Micron Technology, Inc. Comparison operations in memory
US9904515B2 (en) 2014-09-03 2018-02-27 Micron Technology, Inc. Multiplication operations in memory
US9847110B2 (en) 2014-09-03 2017-12-19 Micron Technology, Inc. Apparatuses and methods for storing a data value in multiple columns of an array corresponding to digits of a vector
US9747961B2 (en) 2014-09-03 2017-08-29 Micron Technology, Inc. Division operations in memory
US9898252B2 (en) 2014-09-03 2018-02-20 Micron Technology, Inc. Multiplication operations in memory
US9449694B2 (en) 2014-09-04 2016-09-20 Sandisk Technologies Llc Non-volatile memory with multi-word line select for defect detection operations
US9940026B2 (en) 2014-10-03 2018-04-10 Micron Technology, Inc. Multidimensional contiguous memory allocation
US9836218B2 (en) 2014-10-03 2017-12-05 Micron Technology, Inc. Computing reduction and prefix sum operations in memory
KR102233074B1 (ko) 2014-10-08 2021-03-30 삼성전자주식회사 저장 장치 및 그것의 신뢰성 검증 방법
US10163467B2 (en) 2014-10-16 2018-12-25 Micron Technology, Inc. Multiple endianness compatibility
US10147480B2 (en) 2014-10-24 2018-12-04 Micron Technology, Inc. Sort operation in memory
US9779784B2 (en) 2014-10-29 2017-10-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry
US10073635B2 (en) 2014-12-01 2018-09-11 Micron Technology, Inc. Multiple endianness compatibility
US9747960B2 (en) 2014-12-01 2017-08-29 Micron Technology, Inc. Apparatuses and methods for converting a mask to an index
US10061590B2 (en) 2015-01-07 2018-08-28 Micron Technology, Inc. Generating and executing a control flow
US10032493B2 (en) 2015-01-07 2018-07-24 Micron Technology, Inc. Longest element length determination in memory
US9583163B2 (en) 2015-02-03 2017-02-28 Micron Technology, Inc. Loop structure for operations in memory
WO2016126472A1 (en) 2015-02-06 2016-08-11 Micron Technology, Inc. Apparatuses and methods for scatter and gather
WO2016126478A1 (en) 2015-02-06 2016-08-11 Micron Technology, Inc. Apparatuses and methods for memory device as a store for program instructions
WO2016126474A1 (en) 2015-02-06 2016-08-11 Micron Technology, Inc. Apparatuses and methods for parallel writing to multiple memory device locations
US10522212B2 (en) 2015-03-10 2019-12-31 Micron Technology, Inc. Apparatuses and methods for shift decisions
US9741399B2 (en) 2015-03-11 2017-08-22 Micron Technology, Inc. Data shift by elements of a vector in memory
US9898253B2 (en) 2015-03-11 2018-02-20 Micron Technology, Inc. Division operations on variable length elements in memory
CN107430874B (zh) 2015-03-12 2021-02-02 美光科技公司 用于数据移动的设备及方法
US10146537B2 (en) 2015-03-13 2018-12-04 Micron Technology, Inc. Vector population count determination in memory
US10049054B2 (en) 2015-04-01 2018-08-14 Micron Technology, Inc. Virtual register file
US10140104B2 (en) 2015-04-14 2018-11-27 Micron Technology, Inc. Target architecture determination
US9959923B2 (en) 2015-04-16 2018-05-01 Micron Technology, Inc. Apparatuses and methods to reverse data stored in memory
US10073786B2 (en) 2015-05-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for compute enabled cache
US9704541B2 (en) 2015-06-12 2017-07-11 Micron Technology, Inc. Simulating access lines
US9921777B2 (en) 2015-06-22 2018-03-20 Micron Technology, Inc. Apparatuses and methods for data transfer from sensing circuitry to a controller
US9996479B2 (en) 2015-08-17 2018-06-12 Micron Technology, Inc. Encryption of executables in computational memory
US9659666B2 (en) 2015-08-31 2017-05-23 Sandisk Technologies Llc Dynamic memory recovery at the sub-block level
US9721652B2 (en) 2015-11-17 2017-08-01 Sandisk Technologies Llc State dependent sensing for wordline interference correction
US9905276B2 (en) 2015-12-21 2018-02-27 Micron Technology, Inc. Control of sensing components in association with performing operations
US9952925B2 (en) 2016-01-06 2018-04-24 Micron Technology, Inc. Error code calculation on sensing circuitry
US10048888B2 (en) 2016-02-10 2018-08-14 Micron Technology, Inc. Apparatuses and methods for partitioned parallel data movement
US9892767B2 (en) 2016-02-12 2018-02-13 Micron Technology, Inc. Data gathering in memory
US9971541B2 (en) 2016-02-17 2018-05-15 Micron Technology, Inc. Apparatuses and methods for data movement
US10956439B2 (en) 2016-02-19 2021-03-23 Micron Technology, Inc. Data transfer with a bit vector operation device
US9899070B2 (en) 2016-02-19 2018-02-20 Micron Technology, Inc. Modified decode for corner turn
US9697876B1 (en) 2016-03-01 2017-07-04 Micron Technology, Inc. Vertical bit vector shift in memory
US9997232B2 (en) 2016-03-10 2018-06-12 Micron Technology, Inc. Processing in memory (PIM) capable memory device having sensing circuitry performing logic operations
US10262721B2 (en) 2016-03-10 2019-04-16 Micron Technology, Inc. Apparatuses and methods for cache invalidate
US10379772B2 (en) 2016-03-16 2019-08-13 Micron Technology, Inc. Apparatuses and methods for operations using compressed and decompressed data
US9910637B2 (en) 2016-03-17 2018-03-06 Micron Technology, Inc. Signed division in memory
US10120740B2 (en) 2016-03-22 2018-11-06 Micron Technology, Inc. Apparatus and methods for debugging on a memory device
US11074988B2 (en) 2016-03-22 2021-07-27 Micron Technology, Inc. Apparatus and methods for debugging on a host and memory device
US10388393B2 (en) 2016-03-22 2019-08-20 Micron Technology, Inc. Apparatus and methods for debugging on a host and memory device
US10474581B2 (en) 2016-03-25 2019-11-12 Micron Technology, Inc. Apparatuses and methods for cache operations
US10977033B2 (en) 2016-03-25 2021-04-13 Micron Technology, Inc. Mask patterns generated in memory from seed vectors
US10430244B2 (en) 2016-03-28 2019-10-01 Micron Technology, Inc. Apparatuses and methods to determine timing of operations
US10074416B2 (en) 2016-03-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for data movement
US10453502B2 (en) 2016-04-04 2019-10-22 Micron Technology, Inc. Memory bank power coordination including concurrently performing a memory operation in a selected number of memory regions
US10607665B2 (en) 2016-04-07 2020-03-31 Micron Technology, Inc. Span mask generation
US9818459B2 (en) 2016-04-19 2017-11-14 Micron Technology, Inc. Invert operations using sensing circuitry
US10153008B2 (en) 2016-04-20 2018-12-11 Micron Technology, Inc. Apparatuses and methods for performing corner turn operations using sensing circuitry
US9659605B1 (en) 2016-04-20 2017-05-23 Micron Technology, Inc. Apparatuses and methods for performing corner turn operations using sensing circuitry
US10042608B2 (en) 2016-05-11 2018-08-07 Micron Technology, Inc. Signed division in memory
US9659610B1 (en) 2016-05-18 2017-05-23 Micron Technology, Inc. Apparatuses and methods for shifting data
US10049707B2 (en) 2016-06-03 2018-08-14 Micron Technology, Inc. Shifting data
US10008273B2 (en) * 2016-06-13 2018-06-26 Sandisk Technologies Llc Cell current based bit line voltage
US10387046B2 (en) 2016-06-22 2019-08-20 Micron Technology, Inc. Bank to bank data transfer
US10037785B2 (en) 2016-07-08 2018-07-31 Micron Technology, Inc. Scan chain operation in sensing circuitry
US10388360B2 (en) 2016-07-19 2019-08-20 Micron Technology, Inc. Utilization of data stored in an edge section of an array
US10733089B2 (en) 2016-07-20 2020-08-04 Micron Technology, Inc. Apparatuses and methods for write address tracking
US10387299B2 (en) 2016-07-20 2019-08-20 Micron Technology, Inc. Apparatuses and methods for transferring data
US9767864B1 (en) 2016-07-21 2017-09-19 Micron Technology, Inc. Apparatuses and methods for storing a data value in a sensing circuitry element
US9972367B2 (en) 2016-07-21 2018-05-15 Micron Technology, Inc. Shifting data in sensing circuitry
US10303632B2 (en) 2016-07-26 2019-05-28 Micron Technology, Inc. Accessing status information
US10468087B2 (en) 2016-07-28 2019-11-05 Micron Technology, Inc. Apparatuses and methods for operations in a self-refresh state
US9990181B2 (en) 2016-08-03 2018-06-05 Micron Technology, Inc. Apparatuses and methods for random number generation
US11029951B2 (en) 2016-08-15 2021-06-08 Micron Technology, Inc. Smallest or largest value element determination
US10606587B2 (en) 2016-08-24 2020-03-31 Micron Technology, Inc. Apparatus and methods related to microcode instructions indicating instruction types
US10466928B2 (en) 2016-09-15 2019-11-05 Micron Technology, Inc. Updating a register in memory
US10387058B2 (en) 2016-09-29 2019-08-20 Micron Technology, Inc. Apparatuses and methods to change data category values
US10014034B2 (en) 2016-10-06 2018-07-03 Micron Technology, Inc. Shifting data in sensing circuitry
US10529409B2 (en) 2016-10-13 2020-01-07 Micron Technology, Inc. Apparatuses and methods to perform logical operations using sensing circuitry
US9805772B1 (en) 2016-10-20 2017-10-31 Micron Technology, Inc. Apparatuses and methods to selectively perform logical operations
US10373666B2 (en) 2016-11-08 2019-08-06 Micron Technology, Inc. Apparatuses and methods for compute components formed over an array of memory cells
US10423353B2 (en) 2016-11-11 2019-09-24 Micron Technology, Inc. Apparatuses and methods for memory alignment
US9761300B1 (en) 2016-11-22 2017-09-12 Micron Technology, Inc. Data shift apparatuses and methods
US10402340B2 (en) 2017-02-21 2019-09-03 Micron Technology, Inc. Memory array page table walk
US10268389B2 (en) 2017-02-22 2019-04-23 Micron Technology, Inc. Apparatuses and methods for in-memory operations
US10403352B2 (en) 2017-02-22 2019-09-03 Micron Technology, Inc. Apparatuses and methods for compute in data path
US10838899B2 (en) 2017-03-21 2020-11-17 Micron Technology, Inc. Apparatuses and methods for in-memory data switching networks
US10185674B2 (en) 2017-03-22 2019-01-22 Micron Technology, Inc. Apparatus and methods for in data path compute operations
US11222260B2 (en) 2017-03-22 2022-01-11 Micron Technology, Inc. Apparatuses and methods for operating neural networks
US10049721B1 (en) 2017-03-27 2018-08-14 Micron Technology, Inc. Apparatuses and methods for in-memory operations
US10147467B2 (en) 2017-04-17 2018-12-04 Micron Technology, Inc. Element value comparison in memory
US10043570B1 (en) 2017-04-17 2018-08-07 Micron Technology, Inc. Signed element compare in memory
US9997212B1 (en) 2017-04-24 2018-06-12 Micron Technology, Inc. Accessing data in memory
US10942843B2 (en) 2017-04-25 2021-03-09 Micron Technology, Inc. Storing data elements of different lengths in respective adjacent rows or columns according to memory shapes
US10236038B2 (en) 2017-05-15 2019-03-19 Micron Technology, Inc. Bank to bank data transfer
US10068664B1 (en) 2017-05-19 2018-09-04 Micron Technology, Inc. Column repair in memory
US10013197B1 (en) 2017-06-01 2018-07-03 Micron Technology, Inc. Shift skip
US9928126B1 (en) 2017-06-01 2018-03-27 Apple Inc. Recovery from cross-temperature read failures by programming neighbor word lines
US10152271B1 (en) 2017-06-07 2018-12-11 Micron Technology, Inc. Data replication
US10262701B2 (en) 2017-06-07 2019-04-16 Micron Technology, Inc. Data transfer between subarrays in memory
US10318168B2 (en) 2017-06-19 2019-06-11 Micron Technology, Inc. Apparatuses and methods for simultaneous in data path compute operations
US10115464B1 (en) * 2017-07-27 2018-10-30 Sandisk Technologies Llc Electric field to reduce select gate threshold voltage shift
US10162005B1 (en) 2017-08-09 2018-12-25 Micron Technology, Inc. Scan chain operations
US10534553B2 (en) 2017-08-30 2020-01-14 Micron Technology, Inc. Memory array accessibility
US10416927B2 (en) 2017-08-31 2019-09-17 Micron Technology, Inc. Processing in memory
US10346092B2 (en) 2017-08-31 2019-07-09 Micron Technology, Inc. Apparatuses and methods for in-memory operations using timing circuitry
US10741239B2 (en) 2017-08-31 2020-08-11 Micron Technology, Inc. Processing in memory device including a row address strobe manager
US10409739B2 (en) 2017-10-24 2019-09-10 Micron Technology, Inc. Command selection policy
US10522210B2 (en) 2017-12-14 2019-12-31 Micron Technology, Inc. Apparatuses and methods for subarray addressing
US10332586B1 (en) 2017-12-19 2019-06-25 Micron Technology, Inc. Apparatuses and methods for subrow addressing
CN108133730B (zh) * 2017-12-22 2020-09-11 联芸科技(杭州)有限公司 快闪存储器的读取控制方法、存储器读取装置和存储器系统
US10614875B2 (en) 2018-01-30 2020-04-07 Micron Technology, Inc. Logical operations using memory cells
US10437557B2 (en) 2018-01-31 2019-10-08 Micron Technology, Inc. Determination of a match between data values stored by several arrays
US11194477B2 (en) 2018-01-31 2021-12-07 Micron Technology, Inc. Determination of a match between data values stored by three or more arrays
US10725696B2 (en) 2018-04-12 2020-07-28 Micron Technology, Inc. Command selection policy with read priority
US10440341B1 (en) 2018-06-07 2019-10-08 Micron Technology, Inc. Image processor formed in an array of memory cells
US10769071B2 (en) 2018-10-10 2020-09-08 Micron Technology, Inc. Coherent memory access
US11175915B2 (en) 2018-10-10 2021-11-16 Micron Technology, Inc. Vector registers implemented in memory
US10741262B2 (en) * 2018-10-12 2020-08-11 Macronix International Co., Ltd. NAND flash operating techniques mitigating program disturbance
US10483978B1 (en) 2018-10-16 2019-11-19 Micron Technology, Inc. Memory device processing
US11184446B2 (en) 2018-12-05 2021-11-23 Micron Technology, Inc. Methods and apparatus for incentivizing participation in fog networks
US10867655B1 (en) 2019-07-08 2020-12-15 Micron Technology, Inc. Methods and apparatus for dynamically adjusting performance of partitioned memory
US11360768B2 (en) 2019-08-14 2022-06-14 Micron Technolgy, Inc. Bit string operations in memory
KR20210034274A (ko) 2019-09-20 2021-03-30 삼성전자주식회사 비휘발성 메모리 장치의 구동 방법 및 이를 수행하는 비휘발성 메모리 장치
US11449577B2 (en) 2019-11-20 2022-09-20 Micron Technology, Inc. Methods and apparatus for performing video processing matrix operations within a memory array
US11853385B2 (en) 2019-12-05 2023-12-26 Micron Technology, Inc. Methods and apparatus for performing diversity matrix operations within a memory array
US11227641B1 (en) 2020-07-21 2022-01-18 Micron Technology, Inc. Arithmetic operations in memory
KR20220015245A (ko) * 2020-07-30 2022-02-08 삼성전자주식회사 프로그래밍 동안 양방향 채널 프리차지를 수행하는 비휘발성 메모리 장치
CN114093408A (zh) * 2020-10-20 2022-02-25 长江存储科技有限责任公司 存储器的读取方法以及电压补偿装置
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11557334B2 (en) 2021-05-05 2023-01-17 Sandisk Technologies Llc Nonvolatile memory with combined reads
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory
TWI813498B (zh) * 2022-11-07 2023-08-21 群聯電子股份有限公司 資料讀取方法、記憶體儲存裝置及記憶體控制電路單元

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867429A (en) * 1997-11-19 1999-02-02 Sandisk Corporation High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates
JP2004192789A (ja) * 2002-11-29 2004-07-08 Toshiba Corp 半導体記憶装置
JP2004326866A (ja) * 2003-04-22 2004-11-18 Toshiba Corp 不揮発性半導体記憶装置及びこれを用いた電子装置
JP2007519162A (ja) * 2004-01-26 2007-07-12 サンディスク コーポレイション 記憶要素間のカップリングを補償する否定積メモリの読み出し方法

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5268319A (en) * 1988-06-08 1993-12-07 Eliyahou Harari Highly compact EPROM and flash EEPROM devices
DE69033262T2 (de) 1989-04-13 2000-02-24 Sandisk Corp EEPROM-Karte mit Austauch von fehlerhaften Speicherzellen und Zwischenspeicher
US5258958A (en) * 1989-06-12 1993-11-02 Kabushiki Kaisha Toshiba Semiconductor memory device
US6222762B1 (en) 1992-01-14 2001-04-24 Sandisk Corporation Multi-state memory
US5532962A (en) 1992-05-20 1996-07-02 Sandisk Corporation Soft errors handling in EEPROM devices
JP2684980B2 (ja) * 1993-12-24 1997-12-03 日本電気株式会社 半導体記憶装置及びその製造方法
US5539690A (en) 1994-06-02 1996-07-23 Intel Corporation Write verify schemes for flash memory with multilevel cells
US5680347A (en) * 1994-06-29 1997-10-21 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device
GB9423036D0 (en) 1994-11-15 1995-01-04 Sgs Thomson Microelectronics An integrated circuit memory device
EP0734024B1 (en) 1995-03-23 2000-01-26 STMicroelectronics S.r.l. Sensing circuit for serial dichotomic sensing of multiple-levels non-volatile memory cells
TW389909B (en) 1995-09-13 2000-05-11 Toshiba Corp Nonvolatile semiconductor memory device and its usage
US5642407A (en) * 1995-12-29 1997-06-24 Mci Corporation System and method for selected audio response in a telecommunications network
US5903495A (en) 1996-03-18 1999-05-11 Kabushiki Kaisha Toshiba Semiconductor device and memory system
JP3976839B2 (ja) * 1996-07-09 2007-09-19 株式会社ルネサステクノロジ 不揮発性メモリシステムおよび不揮発性半導体メモリ
KR100323554B1 (ko) * 1997-05-14 2002-03-08 니시무로 타이죠 불휘발성반도체메모리장치
US6956779B2 (en) * 1999-01-14 2005-10-18 Silicon Storage Technology, Inc. Multistage autozero sensing for a multilevel non-volatile memory integrated circuit system
US6975539B2 (en) * 1999-01-14 2005-12-13 Silicon Storage Technology, Inc. Digital multilevel non-volatile memory system
US7031214B2 (en) * 1999-01-14 2006-04-18 Silicon Storage Technology, Inc. Digital multilevel memory system having multistage autozero sensing
IT1306963B1 (it) 1999-01-19 2001-10-11 St Microelectronics Srl Circuito a compensazione capacitativa per la regolazione dellatensione di lettura di riga in memorie non-volatili
US6462998B1 (en) * 1999-02-13 2002-10-08 Integrated Device Technology, Inc. Programmable and electrically configurable latch timing circuit
JP3863330B2 (ja) 1999-09-28 2006-12-27 株式会社東芝 不揮発性半導体メモリ
US6426893B1 (en) * 2000-02-17 2002-07-30 Sandisk Corporation Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks
FR2805653A1 (fr) * 2000-02-28 2001-08-31 St Microelectronics Sa Memoire serie programmable et effacable electriquement a lecture par anticipation
US6396742B1 (en) * 2000-07-28 2002-05-28 Silicon Storage Technology, Inc. Testing of multilevel semiconductor memory
US6535423B2 (en) 2000-12-29 2003-03-18 Intel Corporation Drain bias for non-volatile memory
JP3631463B2 (ja) 2001-12-27 2005-03-23 株式会社東芝 不揮発性半導体記憶装置
US6377507B1 (en) * 2001-04-06 2002-04-23 Integrated Memory Technologies, Inc. Non-volatile memory device having high speed page mode operation
TW559814B (en) 2001-05-31 2003-11-01 Semiconductor Energy Lab Nonvolatile memory and method of driving the same
US6522580B2 (en) 2001-06-27 2003-02-18 Sandisk Corporation Operating techniques for reducing effects of coupling between storage elements of a non-volatile memory operated in multiple data states
US6717847B2 (en) * 2001-09-17 2004-04-06 Sandisk Corporation Selective operation of a multi-state non-volatile memory system in a binary mode
JP4454896B2 (ja) * 2001-09-27 2010-04-21 シャープ株式会社 仮想接地型不揮発性半導体記憶装置
US6542407B1 (en) 2002-01-18 2003-04-01 Sandisk Corporation Techniques of recovering data from memory cells affected by field coupling with adjacent memory cells
US6771536B2 (en) 2002-02-27 2004-08-03 Sandisk Corporation Operating techniques for reducing program and read disturbs of a non-volatile memory
KR100476888B1 (ko) 2002-04-04 2005-03-17 삼성전자주식회사 온도보상기능을 가진 멀티비트 플래쉬메모리
US6785169B1 (en) 2002-04-05 2004-08-31 T-Ram, Inc. Memory cell error recovery
US6594181B1 (en) * 2002-05-10 2003-07-15 Fujitsu Limited System for reading a double-bit memory cell
US6894931B2 (en) * 2002-06-20 2005-05-17 Kabushiki Kaisha Toshiba Nonvolatile semiconductor memory device
US6950342B2 (en) * 2002-07-05 2005-09-27 Impinj, Inc. Differential floating gate nonvolatile memories
JP4260434B2 (ja) * 2002-07-16 2009-04-30 富士通マイクロエレクトロニクス株式会社 不揮発性半導体メモリ及びその動作方法
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
US6983428B2 (en) 2002-09-24 2006-01-03 Sandisk Corporation Highly compact non-volatile memory and method thereof
US6891753B2 (en) 2002-09-24 2005-05-10 Sandisk Corporation Highly compact non-volatile memory and method therefor with internal serial buses
US7443757B2 (en) 2002-09-24 2008-10-28 Sandisk Corporation Non-volatile memory and method with reduced bit line crosstalk errors
US6987693B2 (en) 2002-09-24 2006-01-17 Sandisk Corporation Non-volatile memory and method with reduced neighboring field errors
US7196931B2 (en) 2002-09-24 2007-03-27 Sandisk Corporation Non-volatile memory and method with reduced source line bias errors
US6657891B1 (en) 2002-11-29 2003-12-02 Kabushiki Kaisha Toshiba Semiconductor memory device for storing multivalued data
US6829167B2 (en) * 2002-12-12 2004-12-07 Sandisk Corporation Error recovery for nonvolatile memory
US6816403B1 (en) * 2003-05-14 2004-11-09 International Business Machines Corporation Capacitively coupled sensing apparatus and method for cross point magnetic random access memory devices
US6956770B2 (en) 2003-09-17 2005-10-18 Sandisk Corporation Non-volatile memory and method with bit line compensation dependent on neighboring operating modes
US7012835B2 (en) 2003-10-03 2006-03-14 Sandisk Corporation Flash memory data correction and scrub techniques
KR20050033996A (ko) * 2003-10-07 2005-04-14 삼성전자주식회사 이동 통신 시스템에서 채널 수신 장치 및 방법
JP2005166741A (ja) * 2003-11-28 2005-06-23 Sharp Corp 半導体記憶素子の特性評価方法及びモデルパラメータ抽出方法
US6888758B1 (en) * 2004-01-21 2005-05-03 Sandisk Corporation Programming non-volatile memory
US7020017B2 (en) * 2004-04-06 2006-03-28 Sandisk Corporation Variable programming 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
US7196928B2 (en) * 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling during read operations of non-volatile memory
US7196946B2 (en) 2005-04-05 2007-03-27 Sandisk Corporation Compensating for coupling in non-volatile storage
US7193898B2 (en) * 2005-06-20 2007-03-20 Sandisk Corporation Compensation currents in non-volatile memory read operations
JP4907925B2 (ja) * 2005-09-09 2012-04-04 株式会社東芝 不揮発性半導体記憶装置
JP4614131B2 (ja) * 2005-09-14 2011-01-19 カシオ計算機株式会社 波形発生装置および波形発生プログラム
US7206235B1 (en) 2005-10-14 2007-04-17 Sandisk Corporation Apparatus for controlled programming of non-volatile memory exhibiting bit line coupling

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867429A (en) * 1997-11-19 1999-02-02 Sandisk Corporation High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates
JP2004192789A (ja) * 2002-11-29 2004-07-08 Toshiba Corp 半導体記憶装置
JP2004326866A (ja) * 2003-04-22 2004-11-18 Toshiba Corp 不揮発性半導体記憶装置及びこれを用いた電子装置
JP2007519162A (ja) * 2004-01-26 2007-07-12 サンディスク コーポレイション 記憶要素間のカップリングを補償する否定積メモリの読み出し方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010516015A (ja) * 2007-01-12 2010-05-13 マーベル ワールド トレード リミテッド 改良したマルチレベルメモリ
JP2011008838A (ja) * 2009-06-23 2011-01-13 Toshiba Corp 不揮発性半導体記憶装置およびその書き込み方法
US10818358B2 (en) 2017-09-22 2020-10-27 Toshiba Memory Corporation Memory system including a semiconductor memory having a memory cell and a write circuit configured to write data to the memory cell
US11410729B2 (en) 2017-09-22 2022-08-09 Kioxia Corporation Memory system including a semiconductor memory having a memory cell and a write circuit configured to write data to the memory cell
US11657875B2 (en) 2017-09-22 2023-05-23 Kioxia Corporation Semiconductor memory device configured to output write parameter and memory system including the same
US11869596B2 (en) 2017-09-22 2024-01-09 Kioxia Corporation Memory system including a semiconductor memory having a memory cell and a write circuit configured to write data to the memory cell

Also Published As

Publication number Publication date
TW200901203A (en) 2009-01-01
KR20080016544A (ko) 2008-02-21
US20060221714A1 (en) 2006-10-05
US20070103982A1 (en) 2007-05-10
CN101218650B (zh) 2012-08-08
US20070109850A1 (en) 2007-05-17
US20070103975A1 (en) 2007-05-10
US20070109846A1 (en) 2007-05-17
US20070103987A1 (en) 2007-05-10
TWI370451B (en) 2012-08-11
TW200901202A (en) 2009-01-01
EP1866931A1 (en) 2007-12-19
KR100934496B1 (ko) 2009-12-30
TW200703341A (en) 2007-01-16
US7301808B2 (en) 2007-11-27
TWI370454B (en) 2012-08-11
US7301839B2 (en) 2007-11-27
JP4778553B2 (ja) 2011-09-21
TWI380308B (en) 2012-12-21
US7301816B2 (en) 2007-11-27
CN101218650A (zh) 2008-07-09
US7187585B2 (en) 2007-03-06
TWI323465B (en) 2010-04-11
TW200845015A (en) 2008-11-16
US7414886B2 (en) 2008-08-19
WO2006107731A1 (en) 2006-10-12
US7321510B2 (en) 2008-01-22

Similar Documents

Publication Publication Date Title
JP4778553B2 (ja) 結合の補償を含む不揮発性記憶のための読み出し動作
JP4665029B2 (ja) 不揮発性メモリの読み出し動作中の結合の補償
JP4892552B2 (ja) 不揮発性メモリの読み出し動作中の電流補償
EP1866930B1 (en) Compensating for coupling in non-volatile strorage
JP4940300B2 (ja) プログラミング中における結合の補償
JP4918136B2 (ja) 結合を使用する隣接素子の検出に基づく結合の補償

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100608

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100906

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100913

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101109

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110209

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110302

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110520

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: 20110628

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: 20110701

R150 Certificate of patent or registration of utility model

Ref document number: 4778553

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

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