JP2018018570A - 多重レベルnandメモリ装置及び多重レベルnandメモリセルの容量を利用する消去無し再プログラミング方法 - Google Patents

多重レベルnandメモリ装置及び多重レベルnandメモリセルの容量を利用する消去無し再プログラミング方法 Download PDF

Info

Publication number
JP2018018570A
JP2018018570A JP2017143644A JP2017143644A JP2018018570A JP 2018018570 A JP2018018570 A JP 2018018570A JP 2017143644 A JP2017143644 A JP 2017143644A JP 2017143644 A JP2017143644 A JP 2017143644A JP 2018018570 A JP2018018570 A JP 2018018570A
Authority
JP
Japan
Prior art keywords
memory cells
level
programming
state
value
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
JP2017143644A
Other languages
English (en)
Other versions
JP6757298B2 (ja
Inventor
チンナクリシュナン バラプラム,
Ballapuram Chinnakrishnan
チンナクリシュナン バラプラム,
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US15/256,494 external-priority patent/US9627049B1/en
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2018018570A publication Critical patent/JP2018018570A/ja
Application granted granted Critical
Publication of JP6757298B2 publication Critical patent/JP6757298B2/ja
Active 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/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0408Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
    • 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/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • 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/10Programming or data input circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5648Multilevel memory programming, reading or erasing operations wherein the order or sequence of the operations is relevant

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)

Abstract

【課題】中間の消去サイクル無しにNANDメモリセルで複数の再プログラム動作を遂行し、書込み時間、書込み増幅、消去、読出し、及び書込みサイクルを減らす。【解決手段】本発明のメモリ装置は、1つ以上のメモリページと、プログラムロジックセクション及びページレベル再プログラム状態メタデータを含むメモリ制御ロジックセクションとを備える。1つ以上のメモリページは複数のメモリセルを含み、複数のメモリメモリセルの各々は複数のプログラム可能な状態レベルを有する。プログラムロジックセクションは、ページレベル再プログラム状態メタデータに応じて複数のメモリセルをプログラムし、プログラミング動作中又はプログラミング動作の間に何らの消去動作又は読出し動作を必要とすることなく、ページレベル再プログラム状態メタデータに応じて、複数のメモリセルの連続的なプログラミング動作でメモリセルの各々の第1状態レベル、第2状態レベル、及び第3状態レベルをプログラムする。【選択図】図2

Description

本発明は半導体回路に係り、より詳しくは多重レベルNANDメモリ装置及び多重レベルNANDメモリセルの容量を利用して消去無しで再プログラムする方法に関する。
NANDメモリセルは、電源がセルから除去された後でも情報を格納(store)する不揮発性メモリセルの1タイプである。NANDメモリセルは、一般的に「Vth」と称される閾値電圧を変化させるトランジスタのフローティングゲートへの電荷注入によって、データ値を格納する。一部の種類のNANDメモリセルは、同時に複数ビットの情報を格納する。例えば、単一レベルセル(SLC)は、2つの状態レベル(即ち、論理0又は1)の中の1つを表す単一ビットを格納し、多重レベルセル(MLC)は、複数のビットを格納する。例えば、MLCは二進コードで00、01、10、及び11で表される論理0、1、2、又は3を表す4つの状態レベルを格納する。三重レベルセル(TLC)は、二進コードで000、001、010、011、100、101、110、及び111で表される論理0、1、2、3、4、5、6、又は7を表す8つの状態レベルを格納する。
大部分の一般的なNANDメモリ装置は、メモリセルに新しいデータをプログラムする前に、毎回メモリセルを消去する必要がある。各プログラムに対して消去を必要としないものも、次の書込みの前に状態情報を収集するために追加的な読出しを必要とする。追加的な消去及び読出し動作はエネルギー消費を増加させる。また、消去サイクルはメモリセルに劣化及び追加的な磨耗をもたらし、したがって当該装置の寿命が減少する。
書込み増幅(write amplification)は、従来のNANDメモリ装置に共通するもう一つの問題である。メモリセルがデータ値を再プログラムする前に毎回消去されるので、これらの動作を遂行するプロセスはデータ値を1回以上移動することになる。一部のケースでは、データ値を再プログラムすることは、メモリの既にプログラムされた部分を読み出し、更新し、そして新しい場所に書き込むことを必要とする。新しいデータ書込みを収容するために、メモリの異なる部分が消去され、そして再書き込みされなければならない。メモリの異なる部分は、元々新しいデータとして書き込まれていた部分よりも大きい。これはNANDメモリ装置の寿命の間に、必要とされる書込み回数を増加させる増幅効果を有する。このようなデータの乱れ(churning)は、NANDメモリ装置が確実に動作する時間を減らす。
米国特許第5815434号明細書 米国特許第6667903号明細書 米国特許第8917559号明細書 米国特許第9070453号明細書
本発明は、上記従来の問題点に鑑みてなされたものであって、本発明の目的は、中間の消去サイクル無しにNANDメモリセルで複数回の再プログラミング動作を遂行して書込み時間を短縮し、書込み増幅を低減し、そして消去、読出し、及び書込みサイクルを削減するメモリ装置及びその方法を提供することにある。
上記目的を達成するためになされた本発明の一態様によるメモリ装置は、各々複数のプログラム可能な状態レベルを有する複数のメモリセルを含む1つ以上のメモリページと、前記1つ以上のメモリページに結合され、プログラムロジックセクション及びページレベル再プログラム状態メタデータを含むメモリ制御ロジックセクションと、を備え、前記プログラムロジックセクションは、前記ページレベル再プログラム状態メタデータの第1値に応じて前記複数のメモリセルの第1プログラミングで前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上のビット位置に関連する第1状態レベルをプログラムし、前記複数のメモリセルのいずれの前記第1状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第2値に応じて前記複数のメモリセルの第2プログラミングで前記複数のメモリセルの各々の2の2乗〜2のN乗番目の中の1つ以上のビット位置に関連する第2状態レベルをプログラムすることを特徴とする。
上記目的を達成するためになされた本発明の一態様による多重レベル不揮発性メモリセルをプログラムする方法は、メモリ制御ロジックセクションによって、ページレベル再プログラム状態メタデータを格納する段階と、前記メモリ制御ロジックセクションのプログラムロジックセクションによって、前記ページレベル再プログラム状態メタデータに応じてメモリページの複数のメモリセルをプログラムする段階と、前記プログラムロジックセクションによって、前記ページレベル再プログラム状態メタデータの第1値に応じて前記複数のメモリセルの第1プログラミングで前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上のビット位置に関連する第1状態レベルをプログラムする段階と、前記プログラムロジックセクションによって、前記複数のメモリセルのいずれの前記第1状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第2値に応じて前記複数のメモリセルの第2プログラミングで前記複数のメモリセルの各々の2の2乗〜2のN乗番目の中の1つ以上のビット位置に関連する第2状態レベルをプログラムする段階と、を有することを特徴とする。
本発明によれば、中間の消去サイクル無しにNANDメモリセルで複数回の再プログラミング動作が遂行されることにより、書込み時間が短縮され、書込み増幅が低減され、そして消去、読出し、及び書込みサイクルが削減される。したがって、NANDメモリ装置の寿命が著しく長くなる効果を奏する。
様々なプログラム可能な状態レベルを有する不揮発性多重レベルNANDメモリセルの一例を示す断面図である。 様々なプログラム可能な状態レベルを有する不揮発性多重レベルNANDメモリセルの一例を示す断面図である。 様々なプログラム可能な状態レベルを有する不揮発性多重レベルNANDメモリセルの一例を示す断面図である。 様々なプログラム可能な状態レベルを有する不揮発性多重レベルNANDメモリセルの一例を示す断面図である。 様々なプログラム可能な状態レベルを有する不揮発性多重レベルNANDメモリセルの一例を示す断面図である。 様々なプログラム可能な状態レベルを有する不揮発性多重レベルNANDメモリセルの一例を示す断面図である。 様々なプログラム可能な状態レベルを有する不揮発性多重レベルNANDメモリセルの一例を示す断面図である。 様々なプログラム可能な状態レベルを有する不揮発性多重レベルNANDメモリセルの一例を示す断面図である。 本発明の一実施形態によるメモリページに関連するメモリ制御ロジックセクションのブロック図、及び対応する多重レベルNANDメモリの容量を利用する消去の無い再プログラムフローを示す概念図である。 本発明の一実施形態による多重レベルNANDメモリで容量を利用する消去の無い再プログラムフローの他の例を示す概念図である。 本発明の一実施形態による多重レベルNANDメモリで容量を利用する消去の無い再プログラムフローのさらに他の例を示す概念図である。 本発明の一実施形態による多重レベルメモリセルで容量を利用する消去無しプログラミングの方法を示すフローチャートである。 本発明の一実施形態による多重レベルメモリセルで容量を利用する消去無しプログラミング他の方法を示すフローチャートである。 本発明の一実施形態による多重レベルメモリセルから情報を読み出す方法を示すフローチャートである。 図2に示すメモリ制御ロジックセクションを含むコンピューティングシステムの例を示すブロック図である。
以下、本発明を実施するための形態の具体例を図面を参照しながら詳細に説明する。本発明の実施形態は、中間の消去サイクル無しにNANDメモリセルに複数回の再プログラム動作を遂行して書込み時間を短縮し、書込み増幅を低減し、消去、読出し、及び書込みサイクルを削減するメモリ装置及びその方法に関する。開示される実施形態によれば、読出し−修正−書込み動作を遂行する必要がない。代わりに、前のプログラミングレベルがページレベル再プログラム状態メタデータとして格納されて、次のプログラミングレベルのために参照される。多重レベルNANDメモリセルの容量(capacity)は、通常よりも少ない数のビットを格納するのに使用されるが、消去サイクル、読出しサイクル、及び書込みサイクルが減少する長所を有する。したがって、NANDメモリセルの全体的な寿命が著しく長くなる。
図1A〜図1Hは、様々なプログラム可能な状態レベルを有する不揮発性多重レベルNANDメモリセルの一例を示す断面図である。図1Aは、格納された電荷が無い状態の不揮発性多重レベルNANDメモリセル100を示す。図1B〜図1Hは、以下で説明する格納された電荷の様々な状態を有する不揮発性多重レベルNANDメモリセル100を示す。本明細書で使用する「多重レベル」の用語は、論議するセルの種類を4レベルタイプセルの「MLC」に限定するものではなく、むしろ、4レベル以上の複数の状態レベル及びビットを格納できるメモリセルをより幅広く参照するものである。
図1Aに示すように、不揮発性多重レベルNANDメモリセル100は、ソース105、ドレーン110、制御ゲート115、及びフローティングゲート120を含む。絶縁体125は、フローティングゲート120とソース105及びドレーン110との間に配置される。もう一つの絶縁体130は、フローティングゲート120と制御ゲート115との間に配置される。フローティングゲート120は電荷を格納する。電子は、印加電界に応答して、絶縁体125をトンネルリングすることによってフローティングゲート120に注入されるか又はフローティングゲート120から排出される。不揮発性多重レベルNANDメモリセル100の閾値電圧Vthは、フローティングゲート120に格納された電荷量に応じて変化する。不揮発性多重レベルNANDメモリセル100の異なる状態レベル(即ち、閾値電圧Vthの異なるレベル)は異なるデータ値を示す。
図1Aは、フローティングゲート120に格納された電荷を有しない不揮発性多重レベルNANDメモリセル100を示す。図1B〜図1Hは、フローティングゲート120に格納された電荷のレベルが順に増加している不揮発性多重レベルNANDメモリセル100を示す。この例では、不揮発性多重レベルNANDメモリセル100は8つの状態レベルを含む。不揮発性多重レベルNANDメモリセル100はこれらの状態レベルの中の任意の1つにプログラムされる。8つの状態レベルは、二進コードで000、001、010、011、100、101、110、及び111で表される。言い換えると、不揮発性多重レベルNANDメモリセル100の8つの状態レベルは、3ビットを使用して表されるか又は概念化される。各ビット位置は2のべき乗に対応する。最右側ビットはここでは1のビットと称される。中間ビットはここでは2のビットと称される。最左側ビットはここでは4のビットと称される。
不揮発性多重レベルNANDメモリセル100は、8つの状態レベルのみに限定されるものではなく、4のようなより少ない状態レベル、又は16のようなより多くの状態レベルを含み得る。不揮発性多重レベルNANDメモリセル100は、任意の適切な数の状態レベルを含み得る。例えば、16状態レベルの場合、状態レベルは二進コードで0000、0001、0010、0011、0100、0101、0110、0111、1000、1001、1010、1011、1100、1101、1110、及び1111で表される。上述した8つの状態レベルの場合と同様に、各ビット位置は2のべき乗に対応する。この例で、最右側ビットは1のビットと称され、次の右側ビットは2のビットと称され、さらに次の右側ビットは4のビットと称され、そして最左側ビットは8のビットと称される。この概念は2のN乗に拡張され、Nは任意の適切な正の整数である。例えば、Nが5である場合、不揮発性多重レベルNANDメモリセル100は、2の5乗、又は32の状態レベルを含む。以下の説明で、不揮発性多重レベルNANDメモリセルは、多重レベルNANDメモリセルと略記する。
図2は、本発明の一実施形態によるメモリページに関連するメモリ制御ロジックセクションのブロック図、及び対応する多重レベルNANDメモリの容量を利用する消去の無い再プログラムフローを示す概念図である。
メモリページ205は、図2に示すように、ページ0からページNのラベルによって、行に配列される。メモリ制御ロジックセクション210は、各メモリページ内のメモリセルの動作を制御する。各メモリページ内の各四角形は、多重レベルNANDメモリセル(例えば、メモリセル240)を表す。本実施形態において、各多重レベルNANDメモリセルは8レベルメモリセルである。8つの状態レベルは、二進コードで000、001、010、011、100、101、110、及び111で表される。
図2の概念図225は、3つのプログラミング動作(P1、P2、P3)と、これに続く単一の消去動作E1を示す。消去動作は、プログラミング動作中又はプログラミング動作の間に遂行される必要はない。また、読出し動作は、プログラミング動作中又はプログラミング動作の間に遂行される必要はない。言い換えると、新しいデータビットを更新するために、前のデータの読出しを必要としない。各多重レベルNANDメモリセル(例えば、メモリセル240)は、特定の閾値電圧Vthレベル(本実施形態では000〜111)で複数回(例えば、メモリセル240がTLCセルの例では3回)プログラム(例えば、再プログラム)されて、同一のアドレスに対して古いデータを消去することなく、新しいデータを表す。
メモリ制御ロジックセクション210は、プログラムロジックセクション215、ページレベル再プログラム状態メタデータ220、及び読出しロジックセクション235を含む。プログラムロジックセクション215は、後述するように、ページレベル再プログラム状態メタデータ220に応じて、各多重レベルNANDメモリセル(例えば、メモリセル240)をプログラムする。
第1プログラミング動作P1は、二進データ「001110」を、メモリセル240及びメモリセル240に隣接するメモリセルのような複数の関連する多重レベルNANDメモリセルに対応する各ビットにプログラムする動作である。言い換えると、データストリング「001110」の各データビットは、別個の多重レベルNANDメモリセルにプログラムされる。
プログラムロジックセクション215は、第1プログラミング動作P1の間に、ページレベル再プログラム状態メタデータ220の第1値V1に応じて、多重レベルNANDメモリセルの各々の2の1乗(a first power of two)番目のビット位置(例えば、1のビット)に関連する第1状態レベル(例えば、001、001、000、000、000、001)をプログラムする。NAND構成を用いて、実際の論理値の補数がメモリセルに格納され、そしてメモリセルから読み出される。例えば、論理0が格納される時、001の状態レベルが第1プログラミング動作P1の間に多重レベルNANDメモリセルに書き込まれる。別の例として、論理1が格納される時、000の状態レベルが第1プログラミング動作P1の間に多重レベルNANDメモリセルに書き込まれる。
より詳細には、ページレベル再プログラム状態メタデータ220の第1値V1は、特定のメモリページのメモリセルの各々(例えば、メモリセル240)に未だ情報が格納されていないこと(例えば、メモリセル240の閾値電圧Vthが消去されたばかりで、最も低い状態レベルであること)を示す。ページレベル再プログラム状態メタデータ220が第1値V1であることに応答して、プログラムロジックセクション215は、メモリセルの各々(例えば、メモリセル240)の1のビットが、プログラムされるデータストリング「001110」の各データビットを表すようにプログラムする。
本実施形態では、電荷がメモリセル240に追加されて、閾値電圧Vthが「001」を表す状態レベルに上昇する。同様に、メモリセル240の右側のメモリセルにも電荷が追加されて、閾値電圧Vthが「001」を示す状態レベルに上昇する。次の3つのメモリセルは、第1プログラミング動作P1の間に追加される電荷を有しない。さらに次のメモリセルは、最初の2つのメモリセルと同様に、電荷が追加されて、閾値電圧Vthが「001」を示す状態レベルに上昇する。
したがって、一部のメモリセルのフローティングゲート(例えば、図1の120)は追加電荷(+1)を受け取って、0の論理値を表す。また、一部のメモリセルは追加電荷を受け取らない(+0)で、1の論理値を表す。このような方法で、「001110」の論理値がメモリセルの各々の1のビット位置にプログラムされる。プログラムロジックセクション215は、第1プログラミング動作P1の間に、プログラムされるメモリセルの中のいずれのビットも消去することなく、メモリセルの各々の2の1乗番目のビット位置(例えば、1のビット)に関連する第1状態レベル(例えば、001、001、000、000、000、001)をプログラムする。第1プログラミング動作P1の一部として(又は以後に)、メモリ制御ロジックセクション210は、ページレベル再プログラム状態メタデータ220を、プログラミングの第1レベルが発生したことを示す第2値V2に設定する。
次に、第2プログラミングム動作P2を説明する。第2プログラミングム動作P2は、二進データ「010111」をメモリセル240及びメモリセル240に隣接するメモリセルのような複数の対応する多重レベルNANDメモリセルにプログラムする動作である。言い換えると、データストリング「010111」の各データビットは、別個の多重レベルNANDメモリセルにプログラムされる。
プログラムロジックセクション215は、プログラムされるメモリセルのいずれの2の1乗番目のビット位置(例えば、1のビット)に関連する第1状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータ220の第2値V2に応じて、第2プログラミング動作P2の間に多重レベルNANDメモリセルの各々の2の2乗番目のビット位置(例えば、2のビット)に関連する第2状態レベル(例えば、011、001、010、000、000、001)をプログラムする。
より詳細には、ページレベル再プログラム状態メタデータ220の第2値V2は、特定のメモリページのメモリセルの各々(例えば、メモリセル240)で第1レベルのプログラミングが既に発生していること(例えば、メモリセル240の閾値電圧Vthが、1のビットの情報がプログラムされていることを示す特定の状態レベルであること)を示す。ページレベル再プログラム状態メタデータ220が第2値V2であることに応答して、プログラムロジックセクション215は、メモリセルの各々(例えば、メモリセル240)の2のビットが、プログラムされるデータストリング「010111」の各データビットを表すようにプログラムする。
本実施形態では、電荷がメモリセル240に追加されて、閾値電圧Vthが「011」を表す状態レベルに上昇する。このようなプログラミング動作は付加的であり、メモリセル240の消去又は読出しを必要としない。言い換えると、第2プログラミング動作P2の間に、プログラムロジックセクション215は、追加電荷を加えて閾値電圧Vthを2レベルに上昇(+2)させるか(メモリセル240の場合のように)、そうでなければ、電荷を追加しない(+0)(メモリセル240の右側のメモリセルの場合のように)。
一方、メモリセル240の右側のメモリセルには電荷が追加されない。これは閾値電圧Vthに変化がないことを意味し、よって、状態レベルは「001」に維持される。右側の次のメモリセルは追加電荷が加えられて、閾値電圧Vthが「010」を表す状態レベルに対応する2レベルに上昇(+2)する。このように、追加電荷が追加されるか否かに拘わらず、1のビットの情報が保存される。次の3つのメモリセルは第2プログラミング動作P2の間に電荷が追加されない。したがって2のビットの情報は変更されないで、1のビットの情報が保存される。
したがって、一部のメモリセルのフローティングゲート(例えば、図1の120)は追加電荷(+2)を受け取って、2のビット位置に0の論理値を表す。また、一部のメモリセルは追加電荷を受け取らない(+0)で、2のビット位置に1の論理値を表す。このような方法で、「010111」の論理値がメモリセルの2のビット位置にプログラムされる。プログラムロジックセクション215は、第2プログラミング動作P2の間に、プログラムされるメモリセルの中のいずれのビットも消去することなく、メモリセルの各々の2の2乗番目のビット位置(例えば、2のビット)に関連する第2状態レベル(例えば、011、001、010、000、000、001)をプログラムする。第2プログラミング動作P2の一部として(又は以後に)、メモリ制御ロジックセクション210は、ページレベル再プログラム状態メタデータ220を、プログラミングの第2レベルが発生したことを示す第3値V3に設定する。
次に、第3プログラミングム動作P3を説明する。第3プログラミングム動作P3は、二進データ「101101」を、メモリセル240及びメモリセル240に隣接するメモリセルのような複数の対応する多重レベルNANDメモリセルにプログラムする動作である。言い換えると、データストリング「101101」の各データビットは、別個の多重レベルメモリセルにプログラムされる。
プログラムロジックセクション215は、プログラムされるメモリセルのいずれの2の1乗番目のビット位置(例えば、1のビット)に関連する第1状態レベル及び/又はいずれの2の2乗番目のビット位置(例えば、2のビット)に関連する第2状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータ220の第3値V3に応じて、第3プログラミング動作P3の間に多重レベルNANDメモリセルの各々の2の3乗番目のビット位置(例えば、4のビット)に関連する第3状態レベル(例えば、011、101、010、000、100、001)をプログラムする。
より詳細には、ページレベル再プログラム状態メタデータ220の第3値V3は、第1及び第2レベルのプログラミングが特定のメモリページのメモリセルの各々(例えば、メモリセル240)で既に発生していること(例えば、メモリセル240の閾値電圧Vthが、2のビットの情報がプログラムされていることを示す特定の状態レベルであること)を示す。ページレベル再プログラム状態メタデータ220が第3値V3であることに応答して、プログラムロジックセクション215は、メモリセルの各々(例えば、メモリセル240)の4のビットが、プログラムされるデータストリング「101101」の各データビットを表すようにプログラムする。
本実施形態では、メモリセル240に電荷が追加されない。これは閾値電圧Vthに変化がないことを意味し、よって、状態レベルは「011」に維持される。右側の次のメモリセルは追加電荷が加えられて、閾値電圧Vthが「101」を表す状態レベルに対応する4レベルに上昇(+4)する。このように、追加電荷が追加されるか否かに拘わらず、1のビット及び2のビットの情報が保存される。このようなプログラミング動作は付加的であり、メモリセル240の消去又は読出しを必要としない。言い換えると、第3プログラミング動作P3の間に、プログラムロジックセクション215は、追加電荷を加えて閾値電圧Vthを4レベルに上昇(+4)させるか(メモリセル240の右側のメモリセルの場合のように)、そうでなければ、メモリセルに電荷を追加しない(+0)(メモリセル240の場合のように)。
一方、メモリセル240の右側のメモリセルは追加される追加電荷を有する。これは閾値電圧Vthが変化することを意味し、よって、状態レベルは「101」に変化する。右側の次のメモリセルは第3プログラミング動作P3の間に追加される追加電荷を有しない。よって、4のビットの情報は変化することなく、1のビット及び2のビットの情報が保存される。このように、追加電荷が追加されるか否かに拘わらず、1のビット及び2のビットの情報が保存される。さらに次のメモリセルは第3プログラミング動作P3の間に追加される追加電荷(+4)を有し、よって、1のビット及び2のビットの情報が保存され、また4のビットの情報が更新される。
したがって、一部のメモリセルのフローティングゲート(例えば、図1の120)は追加電荷(+4)を受け取って、0の論理値を表す。また、メモリセルの一部は追加される電荷を受け取らない(+0)で、1の論理値を表す。このような方法で、「101101」の論理値がメモリセルの4のビット位置にプログラムされる。プログラムロジックセクション215は、第3プログラミング動作P3の間に、プログラムされるメモリセルの中のいずれのビットも消去することなく、メモリセルの各々の2の3乗番目のビット位置(例えば、4のビット)に関連する第3状態レベル(例えば、011、101、010、000、100、001)をプログラムする。第3プログラミング動作P3の一部として(又は以後に)、メモリ制御ロジックセクション210は、ページレベル再プログラム状態メタデータ220を、プログラミングの第3レベルが発生したことを示す第4値V4に設定する。
いくつかの実施形態で、ページレベル再プログラム状態メタデータ220は、4つの値(V1、V2、V3、及びV4)を表す2ビット値である。例えば、ページレベル再プログラム状態メタデータ220が、第1値V1又は「00」と等価である場合、これは特定のメモリページでプログラミングが発生しないこと、及び/又はメモリページが消去されたことを示す。ページレベル再プログラム状態メタデータ220が、第2値V2又は「01」と等価である場合、これは特定のメモリページでプログラミングの第1レベルが発生したことを示す。ページレベル再プログラム状態メタデータ220が、第3値V3又は「10」と等価である場合、これはプログラミングの第2レベルが特定のメモリページで発生したことを示す。ページレベル再プログラム状態メタデータ220が、第4値V4又は「11」と等価である場合、これはプログラミングの第3レベルが特定のメモリページで発生したことを示す。ページレベル再プログラム状態メタデータ220は、2ビット値に限定される必要は無く、任意の適切な二進表現を用いて格納されてアクセスされる。ページレベル再プログラム状態メタデータ220の値に対するビット値の他の組み合わせが、本明細書に開示された本発明の技術範囲から逸脱しない範囲で使用される。
したがって、プログラムロジックセクション215は、第1状態レベル、第2状態レベル、及び第3状態レベルのプログラミング中又はプログラミングの間に、メモリセルの中のいずれのビットも消去することなく、同一のアドレス(即ち、メモリセル240に関連するアドレス)に、2の1乗番目(a first power of two)のビット位置(例えば、1のビット)に関連する第1状態レベル(例えば、「001」)、2の2乗番目(a second power of two)のビット位置(例えば、2のビット)に関連する第2状態レベル(例えば、「011」)、及び2の3乗番目(a third power of two)のビット位置(例えば、4のビット)に関連する第3状態レベル(例えば、「111」)をプログラムする。また、プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第1プログラミング動作P1の間にメモリセルの各々の2の1乗番目のビット位置(例えば、1のビット)に関連する第1状態レベルをプログラムする。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第2プログラミング動作P2の間にメモリセルの各々の2の2乗番目のビット位置(例えば、2のビット)に関連する第2状態レベルをプログラムする。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第3プログラミング動作P3の間にメモリセルの各々の2の3乗番目のビット位置(例えば、4のビット)に関連する第3状態レベルをプログラムする。
メモリ制御ロジックセクション210は、読出しロジックセクション235を含む。メモリセルの各々の第1状態レベル(例えば、001、001、000、000、000、001)は閾値電圧Vthの第1値に対応する。閾値電圧Vthの第1値は、メモリセルの各々の2の1乗番目に関連するビット位置(例えば、1のビット)に格納された情報を含む。読出しロジックセクション235は、ページレベル再プログラム状態メタデータ220の第2値V2に応じて、メモリセルの各々の2の1乗番目に関連するビット位置(例えば、1のビット)に格納された情報を選択的(optionally)に読み出す。論理値は1のビットに格納された情報の補数である。言い換えると、読出しロジックセクション235は、ページレベル再プログラム状態メタデータ220にアクセスして、それが第2値V2であることを判別し、その判別に基づいて1のビットの情報を読み出す。このような読出し動作は、1のビットの情報がプログラムされた後であれば、いつでも発生できる。しかし、上述したプログラミング動作を成功裏に遂行するために読出しは必要とされない。
メモリセルの各々の第2状態レベル(例えば、011、001、010、000、000、001)は閾値電圧Vthの第2値に対応する。閾値電圧Vthの第2値は、メモリセルの各々の2の2乗番目に関連するビット位置(例えば、2のビット)に格納された情報を含む。読出しロジックセクション235は、ページレベル再プログラム状態メタデータ220の第3値V3に応じて、メモリセルの各々の2の2乗番目に関連するビット位置(例えば、2のビット)に格納された情報を選択的に読み出す。言い換えると、読出しロジックセクション235は、ページレベル再プログラム状態メタデータ220にアクセスして、それが第3値V3であることを判別し、その判別に基づいて2のビットの情報を読み出す。このような読出し動作は、2のビットの情報がプログラムされた後であれば、いつでも発生できる。しかし、上述したプログラミング動作を成功裏に遂行するために読出しは必要とされない。
メモリセルの各々の第3状態レベル(例えば、011、101、010、000、100、001)は閾値電圧Vthの第3値に対応する。閾値電圧Vthの第3値は、メモリセルの各々の2の3乗番目に関連するビット位置(例えば、4のビット)に格納された情報を含む。読出しロジックセクション235は、ページレベル再プログラム状態メタデータ220の第4値V4に応じて、メモリセルの各々の2の3乗番目に関連するビット位置(例えば、4のビット)に格納された情報を選択的に読み出す。言い換えると、読出しロジックセクション235は、ページレベル再プログラム状態メタデータ220にアクセスして、それが第4値V4であることを判別し、その判別に基づいて4のビットの情報を読み出す。このような読出し動作は4のビットの情報がプログラムされた後であれば、いつでも発生する。しかし、上述したプログラミング動作を成功裏に遂行するために読出しは必要とされない。
プログラミング動作(P1、P2、P3)が発生した後、ページは、ブロック全体が消去される時まで書き込まれないことを意味するダーティ(dirty)としてマーク(mark)される。その後、プログラミングプロセスは、場合によっては、同様のプログラミング動作(P1、P2、P3)及びページレベル再プログラム状態メタデータ220の値(V1、V2、V3、V4)を循環することによって反複される。したがって、3つのプログラミング動作(P1、P2、P3)に対して、一回の消去動作のみが必要である。データは、書込み動作の一部として又は書込み動作中に、消去動作を遂行することなくメモリページ内の複数の連続するメモリセルに書き込まれる。また、プログラミング動作中の任意の時点、プログラミング動作中、又はプログラミング動作の間に、読出し動作を必要としない。
再プログラムの動作は、書込み要請に応じて部分的又は全メモリページに対して行われる。新しい状態レベルは、入力される新しいデータビットから純粋に決定される。ページはさらに、部分更新を支援するために複数の小さな部分ページに分割される。ページレベル再プログラム状態メタデータ220は、第1部分ページの第1レベル値を表すV11、V12、・・・、V1nを格納する。ここで、nは部分ページの最大数である。ページレベル再プログラム状態メタデータ220はまた、第2部分ページの第2レベル値を表すV21、V22、・・・、V2nを格納する。同様に、Vn1、Vn2、・・・、Vnnは最後の部分ページの最終レベル値を表す。
このような方法で、連続的な書込みが、2のメモリセル数のべき乗の各々に関連付けられた電圧レベルを利用して遂行される。第1プログラミングが1のビット、第2プログラミングが2のビット、そして第3プログラミングが4のビットで遂行される。メタデータは、メモリページが何回書き込まれたかを判別するのに使用され、したがって新しいプログラムがどの電圧レベルで遂行されなければならないか又はデータのどのビットが読み出されるかを示す。各プログラミング動作後の比較レベルは、少なくとも前の2つのレベルの全体よりもさらに大きい。第1プログラミング動作P1、第2プログラミング動作P2、及び第3プログラミング動作P3は、これらが相互に排他的であり、適切に追跡される限り、2の任意のべき乗である。
従来、6ビットのデータ(例えば、「001110」)をプログラムするために、2つの3重レベルメモリセルが001及び110のデータビットを格納するのに必要である。これらのデータビットは初期書込みの後に2回更新される。初期書込みの後にこれらの6データビットを2回再プログラムするために、初期の書込み、2番目の書込み、及び3番目の書込みを含む合計18ビットのデータに対して6個の3重レベルメモリセルが必要である。さらに、初期の書込み及び第2番目の書込みに対する2回の消去サイクルが遂行される。
これに対し、以下に開示する本発明の実施形態を用いれば、同じ18ビット又は6個の多重レベルNANDメモリセル(即ち、データの1ビットを表すための3ビット)が使用されるが、消去動作を遂行する必要はない。本発明の方法は、消去の無い(当分の間)メモリセルの再プログラムを許容し、したがって、より速い書込み時間及び削減された消去サイクルを提供する。さらなる長所として、メモリセルの古いデータもまた保存され、いつでも読み出すことができる。例えば、複数チェックポイントシステムは、メモリセルの「古い」ビットを読み出すことによって、前に格納された情報を再び参照する。言い換えると、メモリセルの古いデータは保存され、いつでも読み出すことができる。別の例として、バージョニング(versioning)システムは、メモリセルの「古い」ビットを読み出すことによって、以前に格納された情報を再び参照する。
いくつかの実施形態で、再プログラム状態メタデータ220は、特定のメモリページに対して全域的(global)であり、特定のメモリページ内のすべてのメモリセルが同じメタデータ値を使用する。いくつかの実施形態で、再プログラム状態メタデータ220は、メモリページのブロックに全域的である。いくつかの実施形態で、再プログラム状態メタデータ220は、メモリページの複数のブロックに全域的である。いくつかの実施形態で、再プログラム状態メタデータ220は、メモリブロック内の複数のメモリページに全域的である。いくつかの実施形態で、再プログラム状態メタデータ220は、特定のメモリページ内の複数のメモリセルに全域的である。
従来、3重レベルメモリセルを使用して、データの3つのビットを更新する場合、2番目のセル位置を特定する必要がある。このデータの3つのビットを再び更新する場合、3番目のセル位置を特定する必要がある。事実上、9ビットの情報が、データの3つのビットを3回更新するために消費され、古いセルを回収するために消去動作が2回必要である。本明細書に開示された本発明の方法を用いれば、同じ9ビット(即ち、データの1ビットを表すための3ビット)が使用されるが、消去動作が遂行されない。本発明の方法は消去無しでメモリセルを再プログラムすることを許容し、したがって、より速い書込み時間及び削減された消去サイクルを提供する。
図3Aは、本発明の一実施形態による多重レベルNANDメモリで容量を利用する消去の無い再プログラムフローの他の例を示す概念図である。図3Aに示す概念図305において、構成要素及びフローの一部は図2を参照して説明したので、これらの詳細な説明は省略する。具体的な差異点として、図3Aに示す多重レベルNANDメモリセルの各々は、二進コードで0000、0001、0010、0011、0100、0101、0110、0111、1000、1001、1010、1011、1100、1101、1110、及び1111で表される16状態レベルを含む。本実施形態で、最右側ビットは1のビットと称され、最右側の次の右側ビットは2のビットと称され、その次の右側ビットは4のビットと称され、そして最左側のビットは8のビットと称される。
本実施形態で、4つのプログラミング動作(例えば、P1、P2、P3、及びP4)は、消去動作E1が必要とされる前に遂行される。最初の3つのプログラミング動作(例えば、P1、P2、P3)は、図2を参照して説明したものと同様の方式で遂行される。したがって、これらの段階の各々の詳細な説明は省略する。第3プログラミング動作P3が完了した後、第4プログラミング動作P4が遂行される。
以下で、第4プログラミングム動作P4を説明する。第4プログラミングム動作P4は、メモリセル240及びメモリセル240に隣接するメモリセルのような複数の対応する多重レベルNANDメモリセルに、「000111」の二進データをプログラムする動作である。言い換えると、データストリング「000111」の各データビットは別個の多重レベルNANDメモリセルにプログラムされる。
プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれの第1状態レベル、第2状態レベル、及び/又は第3状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータ220の第4値V4に応じて、第4プログラミング動作P4の間に多重レベルNANDメモリセルの各々の2の4乗番目のビット位置(例えば、8のビット)に関連する第4状態レベル(例えば、1011、1101、1010、0000、0100、0001)をプログラムする。
より詳細には、ページレベル再プログラム状態メタデータ220の第4値V4は、特定のメモリページのメモリセルの各々(例えば、メモリセル240)でプログラミングの第1、第2、及び第3レベルが既に発生していること(例えば、メモリセル240の閾値電圧Vthが、4のビットの情報がプログラムされていることを示す特定の状態レベルであること)を示す。ページレベル再プログラム状態メタデータ220が第4値V4であることに応答して、プログラムロジックセクション215は、メモリセルの各々(例えば、メモリセル240)の8のビットが、プログラムされるデータストリング「000111」の各データビットを表すようにプログラムする。
本実施形態では、メモリセル240に追加電荷が追加されて、閾値電圧Vthが「1011」を表す状態レベルに対応する8レベルに上昇(+8)する。このように、追加電荷が追加されるか否かに拘わらず、1のビット、2のビット、及び4のビットの情報が保存される。このようなプログラミング動作は付加的であり、メモリセル240の消去又は読出しを必要としない。言い換えると、第4プログラミング動作P4の間に、プログラムロジックセクション215は、追加電荷を加えて閾値電圧Vthを8レベルに上昇(+8)させるか(メモリセル240及びメモリセル240の右側の2つのメモリセルの場合のように)、そうでなければ、メモリセルに電荷を追加しない(+0)(最右側の3つのメモリセルの場合のように)。
追加電荷が追加されるこれらのメモリセルに対して、閾値電圧Vthが変更され、したがって、メモリセル240の状態レベルが、例えば、「1101」に変更される。右側の次の2つのメモリセルもまた追加される追加電荷を有する。これはこれらの閾値電圧Vthもまた変更されることを意味し、よって、これらの状態レベルは各々「1101」及び「1010」に変更される。次の3つのメモリセルは、第4プログラミング動作P4の間に追加される追加電荷を有しない。したがって、8のビットの情報が変更されることなく、1のビット、2のビット、及び4のビットの情報が保存される。このように、追加電荷が追加されるか否かに拘わらず、1のビット、2のビット、4のビット、及び8のビットの情報が保存される。
したがって、一部のメモリセルのフローティングゲート(例えば、図1の120)は追加電荷(+8)を受け取って、0の論理値を表す。また、メモリセルの一部は追加電荷を受け取らない(+0)で、1の論理値を表す。このような方法で、「000111」の論理値が各メモリセルの8のビット位置にプログラムされる。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第4プログラミング動作P4の間に、メモリセルの各々の2の4乗番目のビット位置(例えば、8のビット)に関連する第4状態レベル(例えば、1011、1101、1010、0000、0100、0001)をプログラムする。第4プログラミング動作P4の一部として(又は以後に)、メモリ制御ロジックセクション210は、ページレベル再プログラム状態メタデータ220を、プログラミングの第4レベルが発生したことを示す第5値V5に設定する。
いくつかの実施形態で、ページレベル再プログラム状態メタデータ220は、少なくとも5つの値(V1、V2、V3、V4、及びV5)を表すことができる3ビット値である。例えば、ページレベル再プログラム状態メタデータ220が、第1値V1又は「000」と等価である場合、これは特定のメモリページでプログラミングが発生しないこと、及び/又はメモリページが消去されたことを示す。ページレベル再プログラム状態メタデータ220が、第2値V2又は「001」と等価である場合、これはプログラミングの第1レベルが特定のメモリページで発生したことを示す。ページレベル再プログラム状態メタデータ220が、第3値V3又は「010」と等価である場合、これはプログラミングの第2レベルが特定のメモリページで発生したことを示す。ページレベル再プログラム状態メタデータ220が、第4値V4又は「011」と等価である場合、これはプログラミングの第3レベルが特定のメモリページで発生したことを示す。ページレベル再プログラム状態メタデータ220が、第5値V5又は「100」と等価である場合、これはプログラミングの第4レベルが特定のメモリページで発生したことを示す。ページレベル再プログラム状態メタデータ220は、3ビット値に限定される必要は無く、適切な二進表現を用いて格納され、そしてアクセスされる。ページレベル再プログラム状態メタデータ220値に対するビット値の他の組み合わせが、本明細書に開示された本発明の技術範囲から逸脱しない範囲で使用される。
したがって、プログラムロジックセクション215は、第1状態レベル、第2状態レベル、第3状態レベル、及び第4状態レベルのプログラミング中又はプログラミングの間に、メモリセルの中のいずれのビットも消去することなく、同一のアドレス(即ち、メモリセル240に関連するアドレス)に、2の1乗番目のビット位置(例えば、1のビット)に関連する第1状態レベル(例えば、「0001」)、2の2乗番目のビット位置(例えば、2のビット)に関連する第2状態レベル(例えば、「0011」)、2の乗3番目のビット位置(例えば、4のビット)に関連する第3状態レベル(例えば、「0011」)、及び2の4乗番目のビット位置(例えば、8のビット)に関連する第4状態レベル(例えば、「1011」)をプログラムする。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第1プログラミング動作P1の間にメモリセルの各々の2の1乗番目のビット位置(例えば、1のビット)に関連する第1状態レベルをプログラムする。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第2プログラミング動作P2の間にメモリセルの各々の2の2乗番目のビット位置(例えば、2のビット)に関連する第2状態レベルをプログラムする。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第3プログラミング動作P3の間にメモリセルの各々の2の3乗番目のビット位置(例えば、4のビット)に関連する第4状態レベルをプログラムする。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第4プログラミング動作P4の間にメモリセルの各々の2の4乗番目のビット位置(例えば、8のビット)に関連する第4状態レベルをプログラムする。
メモリセルの各々の第4状態レベル(例えば、1011、1101、1010、0000、0100、0001)は閾値電圧Vthの第4値に対応する。閾値電圧Vthの第4値は、メモリセルの各々の2の4乗番目に関連するビット位置(例えば、8のビット)に格納された情報を含む。読出しロジックセクション235は、ページレベル再プログラム状態メタデータ220の第5値V5に応じて、メモリセルの各々の2の4乗番目に関連するビット位置(例えば、8のビット)に格納された情報を選択的に読み出す。言い換えると、読出しロジックセクション235は、ページレベル再プログラム状態メタデータ220にアクセスして、それが第5値V5であることを判別し、その判別に基づいて8のビットの情報を読み出す。このような読出し動作は、8のビットの情報がプログラムされた後であれば、いつでも発生できる。しかし、上述したプログラミング動作を成功裏に遂行するために読出しは必要とされない。
したがって、24ビットストリングの単一書込みのみを許容し、次の書込み動作の前に付随する消去動作を有する一般的な方法と比較して、図3Aを参照した実施形態は書込み動作の間に挟まれた通常の消去又は読出し動作無しに、複数の6ビットストリングが4回まで書き込まれることを許容する。
図3Bは、本発明の一実施形態による多重レベルNANDメモリで容量を利用する消去の無い再プログラムフローのさらに他の例を示す概念図である。図3Bに示す概念図307において、構成要素及びフローの一部は図2を参照して説明したので、これらの詳細な説明は省略する。具体的な差異点として、図3Bに示す多重レベルNANDメモリセルの各々は、二進コードで0000、0001、0010、0011、0101、0110、0111、1000、1001、1010、1011、1100、1101、1110、及び1111で表される16状態レベルを含む。本実施形態で、最右側ビットは1のビットと称され、最右側の次の右側ビットは2のビットと称され、その次の右側ビットは4のビットと称され、そして最左側ビットは8のビットと称される。
いくつかの実施形態で、1のビット位置、2のビット位置、4のビット位置、及び8のビット位置は、4つの別個のプログラミング動作を利用して順にプログラムされる必要はない。例えば、2のビット位置及び4のビット位置は同一のプログラミング動作の間にプログラムされる。この例では、1のビットは第1プログラミング動作P1でプログラムされ、2のビット及び4のビットは第2プログラミング動作P2でプログラムされ、そして8のビットは第3プログラミング動作P3でプログラムされる。これは合わせて3回の書込みを遂行し、書込みの中の1つは他の2つのプログラミング動作より大きい(例えば、2ビット)。下位ビットが後の書込みのために再使用されない限り、1のビット、2のビット、4のビット、及び8のビットの任意の組み合わせが単一のプログラミング動作で書き込まれ、適切な状態維持が保たれる。これはより多目的の複数書込みシステム(Multiple write system)を提供する。
より詳細には、本実施形態で、3つのプログラミング動作(例えば、P1、P2、P3)は、消去動作E1が必要とされる前に遂行される。第1プログラミング動作(例えば、P1)は、図2を参照して上述した第1プログラミング動作P1と同様の方式で遂行される。したがって、この動作の詳細な説明は省略する。第1プログラミング動作P1が完了した後に、2ビットのプログラミング動作(例えば、P2)が遂行される。
以下で、「10、01、10、11、01、11」の二進データを、メモリセル240及びメモリセル240に隣接するメモリセルのような複数の対応する多重レベルNANDメモリセルにプログラムする第2プログラミング動作P2について説明する。言い換えると、「10、01、10、11、01、11」のデータストリングの各データビット対が、異なる多重レベルNANDメモリセル内の異なるビット位置に同時にプログラムされる。
プログラムロジックセクション215は、プログラムされるメモリセルのいずれの2の1乗番目のビット位置(例えば、1のビット)に関連する第1状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータ220の第2値V2に応じて、第2プログラミング動作P2の間に多重レベルNANDメモリセルの各々の2の2乗番目のビット位置(例えば、2のビット)及び2の3乗番目のビット位置(例えば、4のビット)に関連する第2状態レベル(例えば、0011、0101、0010、0000、0100、0001)をプログラムする。「10、01、10、11、01、11」のデータストリングは、チップ上で「01、10、01、00、10、00」のデータ値として格納される。言い換えると、第2プログラミング動作P2は、前の第1プログラミング動作P1の2倍のビットを有する1つの値をプログラムする。例えば、第2プログラミング動作P2は、選択的(optionally)に単一値(例えば、10、01、10、11、01、11)として読み出される多ビット値を単一のプログラミング動作の間にプログラムする。
より詳細には、ページレベル再プログラム状態メタデータ220の第2値V2は、特定のメモリページのメモリセルの各々(例えば、メモリセル240)でプログラミングの第1レベルが既に発生したこと(例えば、メモリセル240の閾値電圧Vthが、1のビットの情報がプログラムされていることを示す特定の状態レベルであること)を示す。ページレベル再プログラム状態メタデータ220が第2値V2であることに応答して、プログラムロジックセクション215は、プログラムされる「10、01、10、11、01、11」のデータストリングの各データビットを表すように、メモリセルの各々(例えば、メモリセル240)の2のビット及び4のビットをプログラムする。本実施形態で、電荷がメモリセル240に追加されて、メモリセルの閾値電圧Vthが「0011」を表す状態レベルに上昇する。
このようなプログラミング動作は付加的であり、メモリセル240の消去のみならず、読出しも必要としない。言い換えると、第2プログラミング動作P2の間に、プログラムロジックセクション215は、(i)追加電荷を2レベルに追加して閾値電圧Vthを上昇(+2)させるか(メモリセル240の場合のように)、そうでなければ、メモリセルに電荷を追加しない(+0)(メモリセル240の右側のメモリセルの場合のように)、そして(ii)追加電荷を4レベルに追加して閾値電圧Vthを上昇(+4)させるか(メモリセル240の右側のメモリセルの場合のように)、そうでなければ、メモリセルに電荷を追加しない(+0)(メモリセル240の場合のように)。
言い換えると、上述の説明は同時に2のビット位置及び4のビット位置に対する書込みとして構造化され、追加される電荷はチップに格納される11、10、01、及び00のデータビットに対応して、各々+0/+2/+4/+6を含む。いくつかの実施形態で11、10、01、及び00の値はチップから各々選択的に読み出される。
1のビットの情報は、追加電荷が追加されるか否かに拘わらず、保存される。したがって、一部のメモリセルのフローティングゲート(例えば、図1の120)は追加電荷(+2/+4/+6)を受け取って、2及び4のビット位置に格納された2ビット値を表す。また、メモリセルの一部は追加電荷を受け取らない(+0)で、1の論理値を表す。このような方法で、「01、10、01、00、10、00」の値はメモリセルの2のビット位置及び4のビット位置にプログラムされる。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第2プログラミング動作P2の間に、メモリセルの各々の2の2乗番目のビット位置(例えば、2のビット)及び2の3乗番目のビット位置(例えば、4のビット)に関連する第2状態レベル(例えば、0011、0101、0010、0000、0100、0001)をプログラムする。第2プログラミング動作P2の一部として(又は以後に)、メモリ制御ロジックセクション210は、ページレベル再プログラム状態メタデータ220を第4値V4に設定(即ち、V3値を省略)する。ここで、第4値V4は、プログラミングの第1及び第2レベルが発生し、これらの中の1つは2ビットプログラミング動作であることを示す。
次に、「000111」の二進データをメモリセル240及びメモリセル240に隣接するメモリセルのような複数の対応する多重レベルNANDメモリセルにプログラムする第3プログラミング動作P3を説明する。言い換えると、「000111」のデータストリングの各データビットは、別個の多重レベルメモリセルにプログラムされる。
プログラムロジックセクション215は、プログラムされるメモリセルのいずれの第1状態レベル及び/又はいずれの第2状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータ220の第4値V4に応じて、第3プログラミング動作P3の間に、多重レベルNANDメモリセルの各々の2の4乗番目のビット位置(例えば、8のビット)に関連する第3状態レベル(例えば、1011、1101、1010、0000、0100、0001)をプログラムする。
より詳細には、ページレベル再プログラム状態メタデータ220の第4値V4は、プログラミングの第1及び第2レベル(1のビット、2のビット、及び4のビットを含む)が特定のメモリページのメモリセルの各々(例えば、メモリセル240)で既に発生していること(例えば、メモリセル240の閾値電圧Vthが、少なくとも4のビットの情報がプログラムされていることを示す特定の状態レベルであること)を示す。ページレベル再プログラム状態メタデータ220が第4値V4であることに応答して、プログラムロジックセクション215は、プログラムされる「000111」のデータストリングの各データビットを表すように、メモリセルの各々(例えば、メモリセル240)の8のビットをプログラムする。
本実施形態では、追加電荷がメモリセル240に追加され、閾値電圧Vthが「1011」を表す状態レベルに対応する8レベルに上昇(+8)する。このように、追加電荷が追加されるか否かに拘わらず、1のビット、2のビット、及び4のビットの情報が保存される。このようなプログラミング動作は付加的であり、メモリセル240の消去のみならず、読出しもまた必要としない。言い換えると、第3プログラミング動作P3の間に、プログラムロジックセクション215は、追加電荷を加えて閾値電圧Vthを8レベルに上昇(+8)させるか(メモリセル240及びメモリセル240の右側の2つのメモリセルの場合のように)、そうでなければ、メモリセルに電荷を追加しない(+0)(最右側3つのメモリセルの場合のように)。
追加電荷が追加されるこれらのメモリセルに対して、閾値電圧Vthが変更され、したがって、メモリセル240の状態レベルが、例えば、「1011」に変更される。右側の次の2つのメモリセルもまた追加される追加電荷を有する。これはそれらの閾値電圧Vthもまた変更されることを意味し、よって、これらの状態レベルは各々「1101」及び「1010」に変更される。次の3つのメモリセルは、第3プログラミング動作P3の間に追加される追加電荷を有しない。したがって、1のビット、2のビット、及び4のビットの情報が保存され、また8のビットの情報も変更されずに残される。このように、追加電荷が追加されるか否かに拘わらず、1のビット、2のビット、4のビット、及び8のビットの情報が保存される。
したがって、一部のメモリセルのフローティングゲート(例えば、図1の120)は追加電荷(+8)を受け取って、0の論理値を表す。また、メモリセルの一部は追加電荷を受け取らない(+0)で、1の論理値を表す。このような方法で、「000111」の論理値が各メモリセルの8のビット位置にプログラムされる。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第3プログラミング動作P3の間にメモリセルの各々の2の4乗番目のビット位置(例えば、8のビット)に関連する第3状態レベル(例えば、1011、1101、1010、0000、0100、0001)をプログラムする。第3プログラミング動作P3の一部として(又は以後に)、メモリ制御ロジックセクション210は、ページレベル再プログラム状態メタデータ220を第5値V5に設定する。これはプログラミングの第4レベルが発生したことを示す。
いくつかの実施形態で、ページレベル再プログラム状態メタデータ220は、少なくとも5つの値(V1、V2、V3、V4、及びV5)を表すことができる3ビット値である。例えば、ページレベル再プログラム状態メタデータ220が、第1値V1又は「000」と等価である場合、これは特定のメモリページでプログラムが発生しないこと、及び/又はメモリページが消去されたことを示す。ページレベル再プログラム状態メタデータ220が、第2値V2又は「001」と等価である場合、これは1のビットのプログラミングが特定のメモリページで発生したことを示す。ページレベル再プログラム状態メタデータ220が、第3値V3又は「010」と等価である場合、これは2のビットのプログラミングが特定のメモリページで発生したことを示す。ページレベル再プログラム状態メタデータ220が、第4値V4又は「011」と等価である場合、これは4のビットのプログラミングが特定のメモリページで発生したことを示す。そして、ページレベル再プログラム状態メタデータ220が、第5値V5又は「100」と等価である場合、これは8のビットのプログラミングが特定のメモリページで発生したことを示す。ページレベル再プログラム状態メタデータ220は、3ビット値に限定される必要は無く、任意の適切な二進表現を用いて格納されてアクセスされる。ページレベル再プログラム状態メタデータ220値に対するビット値の他の組み合わせが、本明細書に記載された本発明の技術範囲から逸脱しない範囲で使用される。
したがって、プログラムロジックセクション215は、第1状態レベル、第2状態レベル、及び第3状態レベルのプログラミング中又はプログラミングの間にメモリセルの中のいずれのビットも消去することなく、同一のアドレス(即ち、メモリセル240に関連するアドレス)で、2の1乗番目のビット位置(例えば、1のビット)に関連する第1状態レベル(例えば、「0001」)をプログラムし、2の2乗番目のビット位置(例えば、2のビット)及び2の3乗番目のビット位置(例えば、4のビット)に関連する第2状態レベル(例えば、「0011」)を同時にプログラムし、そして2の4乗番目のビット位置(例えば、8のビット)に関連する第3状態レベル(例えば、「1011」)をプログラムする。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第1プログラミング動作P1の間に、メモリセルの各々の2の1乗番目のビット位置(例えば、1のビット)に関連する第1状態レベルをプログラムする。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第2プログラミング動作P2の間に、メモリセルの各々の2の2乗番目のビット位置(例えば、2のビット)及び2の3乗番目のビット位置(例えば、4のビット)に関連する第2状態レベルを同時にプログラムする。プログラムロジックセクション215は、プログラムされるメモリセルの中のいずれのビットも消去することなく、第3プログラミング動作P3の間に、メモリセルの各々の2の4乗番目のビット位置(例えば、8のビット)に関連する第3状態レベルをプログラムする。
メモリセルの各々の第3状態レベル(例えば、1011、1101、1010、0000、0100、0001)は閾値電圧Vthの第3値に対応する。閾値電圧Vthの第3値は、メモリセルの各々の2の4乗番目のビット位置(例えば、8のビット)に関連するビット位置に格納された情報を含む。読出しロジックセクション235は、ページレベル再プログラム状態メタデータ220の第5値V5に応じて、メモリセルの各々の2の4乗番目のビット位置(例えば、8のビット)に関連するビット位置に格納された情報を選択的に読み出す。言い換えると、読出しロジックセクション235は、ページレベル再プログラム状態メタデータ220にアクセスして、ページレベル再プログラム状態メタデータ220が第5値V5を有することを判別し、その判別に基づいて8のビットの情報を読み出す。このような読出し動作は、8のビットの情報がプログラムされた後であれば、いつでも発生するできる。しかし、上述したプログラミング動作を成功裏に遂行するために読出しは必要とされない。
したがって、6ビットストリングのみを4回まで書き込むことを許容する図3Aに示す実施形態と比較すると、図3Bに示す実施形態は、書込み動作の間に挟まれる通常の消去又は読出し動作無しで、はるかに大きい柔軟性を許容する。
図3Bを参照して詳細に説明したように、書き込まれるデータストリングは、複数のビット対(例えば、10、01、10、11、01、11)を含む。ビット三重対も同様の方式で書き込まれる。また、単一ビットも同様の方式で書き込まれる。実際に、単一ビット、ビット対、ビット三重対、ビット四重対等の任意の適切な組み合わせが、本明細書に記載の実施形態に従って、多重レベルメモリセルに同時に書き込まれる。
例えば、1つの24ビット書込み、2つの12ビット書込み、4つの6ビット書込み等が連続的に遂行される。2つの12ビット書込みの場合、例えば、第1番目の12ビット書込みは12ビットの同時プログラミングを含み、これに続く第2番目の12ビット書込みは、プログラミング動作の間に挟まれる通常の消去又は読出し動作無しで、別の12ビットの同時プログラミングを含む。他の例では、プログラミング動作の間に挟まれる通常の消去又は読出し動作無しに、2つの6ビット書込みに、1つの12ビット書込みが連続して遂行される。さら他の例では、プログラミング動作の間に挟まれる通常の消去又は読出し動作無しに、1つの6ビット書込みに、1つの18ビット書込みが後続する。
下位ビットが後の書込みに再使用されない限り、プログラミング動作の間に挟まれる通常の消去又は読出し動作無しに、異なるビット書込みの任意の適切な組み合わせが連続的に遂行され、適切な状態維持が保たれる。
図4は、本発明の一実施形態による多重レベルNANDメモリセルで容量を利用する消去無しプログラミングの方法を示すフローチャートである。
図4に示すフローチャート400において、段階405で、メモリ制御ロジックセクションは、ページレベル再プログラム状態メタデータを格納する。例えば、前のプログラミングレベルが、次のプログラミングレベルのために参照されるページレベル再プログラム状態メタデータとして格納される。より詳細には、ページレベル再プログラム状態メタデータは、特定のメモリページの複数のメモリセルに未だ情報が格納されないこと、又はプログラミングの第1、第2、第3、及び第4レベル等が特定のメモリページの複数のメモリセルで既に発生していることを示す。段階410で、プログラムロジックセクションは、ページレベル再プログラム状態メタデータの第1値に応じて、複数のメモリセルの各々の2の1乗〜N乗番目の中の1つ以上のビット位置に関連する第1状態レベルをプログラムする。段階415で、プログラムロジックセクションは、プログラムされるメモリセルのいずれの第1状態レベルも読み出すことなく、そしてプログラムされるメモリセルの中のいずれのビットも消去することなく、ページレベル再プログラム状態メタデータの第2値に応じて、複数のメモリセルの各々の2の2乗〜N乗番目の中の1つ以上のビット位置に関連する第2状態レベルをプログラムする。段階420で、プログラムロジックセクションは、プログラムされるメモリセルのいずれの第1状態レベル及び/又は第2状態レベルも読み出すことなく、そしてプログラムされるメモリセルの中のいずれのビットも消去することなく、ページレベル再プログラム状態メタデータの第3値に応じて、複数のメモリセルの各々の2の3乗乃至N乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムする。これらの段階は、図4に示した順序で遂行される必要は無く、他の順序及び/又は中間段階で遂行される。また、フラッシュセルが情報のより多くのレベルを保持することができる実施形態では、特定の段階が反複され得る。
図5は、本発明の一実施形態による多重レベルNANDメモリセルで容量を利用する消去無しプログラミングの他の方法を示すフローチャートである。
図5に示すフローチャート500において、段階505で、ページレベル再プログラム状態メタデータの現在の値に対する判別が行われる。判別された値が、メモリページが現在消去された状態であることを意味する第1値V1である場合、フローは複数のメモリセルの各々の第1状態レベルがプログラムされる段階510に進行する。値が、最後の消去動作以後に1つのプログラミングレベルが発生したことを意味する第2値V2である場合、フローはプログラムされる複数のメモリセルのいずれの第1状態レベルを読み出すことなく、そしてプログラムされるメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第2状態レベルがプログラムされる段階515に進行する。値が、最後の消去動作以後に2つのプログラミングレベルが発生したことを意味する第3値V3である場合、フローはプログラムされる複数のメモリセルのいずれの第1状態レベル及び/又は第2状態レベルも読み出すことなく、そしてプログラムされるメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第3状態レベルがプログラムされる段階520に進行する。値が、最後の消去動作以後に(N−1)個のプログラミングレベルが発生したことを意味する第N値VNである場合、フローはプログラムされる複数のメモリセルのいずれの前の(N−1)状態レベルを読み出すことなく、そしてプログラムされるメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第N状態レベルがプログラムされる段階525に進行する。これらの段階は、図5に示した順序で遂行される必要は無く、他の順序及び/又は中間段階で遂行される。また、類似の段階が、ページを構成するメモリセルの格納容量に基づいて追加又は除去される。
図6は、本発明の一実施形態による多重レベルメモリセルから情報を読み出す方法を示すフローチャートである。
図6に示すフローチャート600において、段階605で、ページレベル再プログラム状態メタデータの現在の値に対する判別が行われる。判別された値が、メモリページで1つのプログラミングレベルが発生したことを意味する第2値V2である場合、フローは各メモリセルの1のビットに格納された情報が読み出される段階610に進行し、段階625で補数が判別されて(complemented)元の論理値が獲得される。値が、メモリページで2つのプログラミングレベルが発生したことを示す第3値V3である場合、フローは各メモリセルの2のビットに格納された情報が読み出される段階615に進行し、段階625で補数が判別されて元の論理値が獲得される。値が、メモリページで3つのプログラミングレベルが発生したことを示す第4値V4である場合、フローは各メモリセルの4のビットに格納された情報が読み出される段階620に進行する。各メモリセルの1のビット、2のビット、又は4のビット等を読み出した後に、該当ビットの補数が段階625で判別されて、例えば図2及び図3Aに示す最終の論理値が獲得される。これらの段階は、図6に示した順に遂行される必要は無く、他の順序及び/又は中間段階で遂行される。また、上述したように、前に格納された値が読み出されて補数が判別される。
図7は、図2に示すメモリ制御ロジックセクションを含むコンピューティングシステムの例を示すブロック図である。
メモリ制御器745は、上述したメモリ制御ロジックセクション210を含む。メモリ制御器745はシステムバス705に電気的に連結される。コンピューティングシステム700は、また多重レベルNANDメモリ730、クロック710、ランダムアクセスメモリ(RAM)715、使用者インターフェイス720、ベースバンドチップセットのようなモデム725、及び/又は自動化されたテスト装置(ATE)735を含み、これらの全部又はいずれかはシステムバス705に電気的に結合される。
コンピューティングシステム700がモバイル装置である場合、コンピューティングシステム700に電源を供給するバッテリー740をさらに含む。図7に図示しないが、コンピューティングシステム700は、アプリケーションチップセット、カメライメージプロセッサ(CIS)、モバイルDRAM等をさらに含む。メモリ制御器745及び多重レベルNANDメモリ730は、データを格納するために不揮発性メモリを使用するソリッドステートドライブ/ディスク(SSD)を形成する。
本実施形態で、コンピューティングシステム700は、コンピュータ、ポータブルコンピュータ、ウルトラモバイルPC(UMPC)、ワークステーション、ネットブック、PDA、ウェブタブレット、無線電話、モバイル電話、スマートフォン、電子ブック、PMP(portable multimedia player)、デジタルカメラ、デジタルオーディオ記録器/再生器、デジタル画像/ビデオ記録器/再生器、ポータブルゲーム機、ナビゲーションシステム、ブラックボックス、3次元テレビジョン、無線環境で情報を送信及び受信することができる装置、ホームネットワークを形成する多様な電子装置の中の1つ、テレマティクスネットワークを形成する多様な電子装置の中の1つ、RFID、又はコンピューティングシステムを形成する多様な電子装置の中の1つに使用される。
いくつかの実施形態は、各々が複数のプログラム可能な状態レベルを有する複数のメモリセルを含む1つ以上のメモリページと、1つ以上のメモリページに結合され、プログラムロジックセクション及びページレベル再プログラム状態メタデータを含むメモリ制御ロジックセクションと、を備えるメモリ装置を含む。
いくつかの実施形態で、プログラムロジックセクションは、ページレベル再プログラム状態メタデータの第1値に応じて複数のメモリセルの第1プログラミングで、複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上のビット位置に関連する第1状態レベルをプログラムするように構成される。いくつかの実施形態で、プログラムロジックセクションは、複数のメモリセルのいずれの第1状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータの第2値に応じて、複数のメモリセルの第2プログラミングで、複数のメモリセルの各々の2の2乗〜2のN乗番目の中の1つ以上のビット位置に関連する第2状態レベルをプログラムするように構成される。
いくつかの実施形態で、プログラムロジックセクションは、複数のメモリセルのいずれの第1状態レベル及び第2状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータの第3値に応じて、複数のメモリセルの第3プログラミングにおいて、複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムするように構成される。いくつかの実施形態で、プログラムロジックセクションは、第1状態レベル、第2状態レベル、及び第3状態レベルのプログラミング中又はプログラミングの間に複数のメモリセルの中のいずれのビットも削除することなく、複数のメモリセルの各々の同一のアドレスで第1状態レベル、第2状態レベル、及び第3状態レベルをプログラムするように構成される。
上述した2の1乗〜2のN乗番目の中の2の1乗番目は1のビット位置に対応し、2の2乗番目は2のビット位置に対応し、2の3乗番目は4のビット位置に対応し、2のN乗番目は2(N−1)のビット位置に対応する。
いくつかの実施形態で、プログラムロジックセクションは、第1プログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第1状態レベルをプログラムするように構成される。いくつかの実施形態で、プログラムロジックセクションは、第2プログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第2状態レベルをプログラムするように構成される。
いくつかの実施形態で、プログラムロジックセクションは、複数のメモリセルのいずれの第1状態レベル及び第2状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータの第3値に応じて、複数のメモリセルの第3プログラミングで、複数のメモリセルの各々の第3状態レベルをプログラムするように構成される。いくつかの実施形態で、プログラムロジックセクションは、第1プログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第1状態レベルをプログラムするように構成される。いくつかの実施形態で、プログラムロジックセクションは、第2プログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第2状態レベルをプログラムするように構成される。いくつかの実施形態で、プログラムロジックセクションは、第3プログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第3状態レベルをプログラムするように構成される。
いくつかの実施形態で、メモリ制御ロジックセクションは読出しロジックセクションを含む。いくつかの実施形態で、複数のメモリセルの各々の第1状態レベルは閾値電圧の第1値に対応する。いくつかの実施形態で、閾値電圧の第1値は複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含む。いくつかの実施形態で、読出しロジックセクションはページレベル再プログラム状態メタデータの第2値に応じて、複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出すように構成される。
いくつかの実施形態で、複数のメモリセルの各々の第2状態レベルは閾値電圧の第2値に対応し、閾値電圧の第2値はメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含み、読出しロジックセクションはページレベル再プログラム状態メタデータの第3値に応じて、複数のメモリセルの各々の2の1乗乃至2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出すように構成される。
いくつかの実施形態で、プログラムロジックセクションは、複数のメモリセルのいずれの第1状態レベル又はいずれの第2状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータの第3値に応じて、複数のメモリセルの第3プログラミングで、複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムするように構成される。いくつかの実施形態で、複数のメモリセルの各々の第3状態レベルは閾値電圧の第3値に対応する。いくつかの実施形態で、閾値電圧の第3値は複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含む。いくつかの実施形態で、読出しロジックセクションはページレベル再プログラム状態メタデータの第4値に応じて、複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出すように構成される。
いくつかの実施形態で、メモリ制御ロジックセクションは、複数のメモリセルの各々の第1状態レベルのプログラミングの後に、ページレベル再プログラム状態メタデータを第2値に設定するように構成される。いくつかの実施形態で、メモリ制御ロジックセクションは、複数のメモリセルの各々の第2状態レベルのプログラミングの後に、ページレベル再プログラム状態メタデータを第3値に設定するように構成される。
いくつかの実施形態で、プログラムロジックセクションは、複数のメモリセルのいずれの第1状態レベル及び第2状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータの第3値に応じて、複数のメモリセルの第3プログラミングにおいて、複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上に関連する第3状態レベルをプログラムするように構成される。いくつかの実施形態で、メモリ制御ロジックセクションはメモリセルの各々の第3状態レベルのプログラムの後に、ページレベル再プログラム状態メタデータを第4値に設定するように構成される。
以下、本発明の一実施形態による多重レベル不揮発性メモリセルをプログラムする方法を詳細に説明する。
本発明の一実施形態による方法は、メモリ制御ロジックセクションによって、ページレベル再プログラム状態メタデータを格納する段階を含む。本方法は、メモリ制御ロジックセクションのプログラムロジックセクションによって、ページレベル再プログラム状態メタデータに応じてメモリページの複数のメモリセルをプログラムする段階を含む。本方法は、プログラムロジックセクションによって、ページレベル再プログラム状態メタデータの第1値に応じて、複数のメモリセルの第1プログラミングで、メモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上のビット位置に関連する第1状態レベルをプログラムする段階を含む。本方法は、プログラムロジックセクションによって、複数のメモリセルのいずれの第1状態レベルを読み出すことなく、ページレベル再プログラム状態メタデータの第2値に応じて、複数のメモリセルの第2プログラミングで、複数のメモリセルの各々の2の2乗〜2のN乗番目の中の1つ以上のビット位置に関連する第2状態レベルをプログラムする段階を含む。
本実施形態による方法は、プログラムロジックセクションによって、複数のメモリセルのいずれの第1状態レベル及び第2状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータの第3値に応じて複数のメモリセルの第3プログラミングで、複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムする段階を含む。本方法は、プログラムロジックセクションによって、第1状態レベル、第2状態レベル、及び第3状態レベルのプログラミング中又はプログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の同一のアドレスで第1状態レベル、第2状態レベル、及び第3状態レベルをプログラムする段階を含む。
本実施形態による方法は、プログラムロジックセクションによって、第1プログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第1状態レベルをプログラムする段階を含む。本方法は、プログラムロジックセクションによって、第2プログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第2状態レベルをプログラムする段階を含む。
本実施形態による方法は、プログラムロジックセクションによって、複数のメモリセルのいずれの第1状態レベル及び第2状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータの第3値に応じて、複数のメモリセルの第3プログラミングで、複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムする段階を含む。本方法は、プログラムロジックセクションによって、第1プログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第1状態レベルをプログラムする段階を含む。本方法は、プログラムロジックセクションによって、第2プログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第2状態レベルをプログラムする段階を含む。本方法は、プログラムロジックセクションによって、第3プログラミングの間に複数のメモリセルの中のいずれのビットも消去することなく、複数のメモリセルの各々の第3状態レベルをプログラムする段階を含む。
いくつかの実施形態で、複数のメモリセルの各々の第1状態レベルは閾値電圧の第1値に対応し、閾値電圧の第1値は複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含む。本方法は、メモリ制御ロジックセクションの読出しロジックセクションによって、ページレベル再プログラム状態メタデータの第2値に応じて、複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出す段階を含む。いくつかの実施形態で、複数のメモリセルの各々の第2状態レベルは閾値電圧の第2値に対応し、閾値電圧の第2値は2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含む。本方法は、読出しロジックセクションによって、ページレベル再プログラム状態メタデータの第3値に応じて、メモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出す段階を含む。
本実施形態による方法は、プログラムロジックセクションによって、複数のメモリセルのいずれの第1状態レベル及び第2状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータの第3値に応じて、複数のメモリセルの第3プログラミングで、複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムする段階を含む。いくつかの実施形態で、複数のメモリセルの各々の第3状態レベルは閾値電圧の第3値に対応する。いくつかの実施形態で、閾値電圧の第3値は複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含む。本方法は、読出しロジックセクションによって、ページレベル再プログラム状態メタデータの第4値に応じて、複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出す段階を含む。
本実施形態による方法は、メモリ制御ロジックセクションによって、複数のメモリセルの各々の第1状態レベルをプログラミングの後に、ページレベル再プログラム状態メタデータを第2値に設定する段階を含む。本方法は、メモリ制御ロジックセクションによって、複数のメモリセルの各々の第2状態レベルのプログラミングの後に、ページレベル再プログラム状態メタデータを第3値に設定する段階を含む。
本実施形態による方法は、プログラムロジックセクションによって、複数のメモリセルのいずれの第1状態レベル及び第2状態レベルも読み出すことなく、ページレベル再プログラム状態メタデータの第3値に応じて複数のメモリセルの第3プログラミングにおいて、複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムする段階を含む。本方法は、メモリ制御ロジックセクションによって、複数のメモリセルの各々の第3状態レベルのプログラミングの後に、ページレベル再プログラム状態メタデータを第4値に設定する段階を含む。
本発明の実施形態は、1つ以上のプロセッサによって実行可能な本発明の技術的思想の要素を遂行する命令を含む非一時的な機械読出し可能な媒体を含む。
100 不揮発性多重レベルNANDメモリセル
105 ソース
110 ドレーン
115 制御ゲート
120 フローティングゲート
125、130 絶縁体
205 メモリページ
210 メモリ制御ロジックセクション
215 プログラムロジックセクション
220 ページレベル再プログラム状態メタデータ
235 読出しロジックセクション
240 メモリセル
700 コンピューティングシステム
705 システムバス
710 クロック
715 ランダムアクセスメモリ(RAM)
720 使用者インターフェイス
725 モデム
730 多重レベルNANDメモリ
735 自動化されたテスト装置(ATE)
740 バッテリー
745 メモリ制御器

Claims (20)

  1. 各々複数のプログラム可能な状態レベルを有する複数のメモリセルを含む1つ以上のメモリページと、
    前記1つ以上のメモリページに結合され、プログラムロジックセクション及びページレベル再プログラム状態メタデータを含むメモリ制御ロジックセクションと、を備え、
    前記プログラムロジックセクションは、
    前記ページレベル再プログラム状態メタデータの第1値に応じて前記複数のメモリセルの第1プログラミングで前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上のビット位置に関連する第1状態レベルをプログラムし、
    前記複数のメモリセルのいずれの前記第1状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第2値に応じて前記複数のメモリセルの第2プログラミングで前記複数のメモリセルの各々の2の2乗〜2のN乗番目の中の1つ以上のビット位置に関連する第2状態レベルをプログラムすることを特徴とするメモリ装置。
  2. 前記プログラムロジックセクションは、
    前記複数のメモリセルのいずれの前記第1状態レベル及び前記第2状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第3値に応じて前記複数のメモリセルの第3プログラミングで前記複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムし、
    前記第1状態レベル、前記第2状態レベル、及び前記第3状態レベルのプログラミング中又はプログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の同一のアドレスで前記第1状態レベル、前記第2状態レベル、及び前記第3状態レベルをプログラムすることを特徴とする請求項1に記載のメモリ装置。
  3. 前記2の1乗〜2のN乗番目の中の2の1乗番目は、1のビット位置に対応し、
    前記2の1乗〜2のN乗番目の中の2の2乗番目は、2のビット位置に対応し、
    前記2の1乗〜2のN乗番目の中の2の3乗番目は、4のビット位置に対応し、
    前記2の1乗〜2のN乗番目の中の2のN乗番目は、2(N−1)のビット位置に対応することを特徴とする請求項2に記載のメモリ装置。
  4. 前記プログラムロジックセクションは、
    前記第1プログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の前記第1状態レベルをプログラムし、
    前記第2プログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の前記第2状態レベルをプログラムすることを特徴とする請求項1に記載のメモリ装置。
  5. 前記プログラムロジックセクションは、
    前記複数のメモリセルのいずれの前記第1状態レベル及び前記第2状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第3値に応じて前記複数のメモリセルの第3プログラミングで前記複数のメモリセルの各々の第3状態レベルをプログラムし、
    前記第1プログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の前記第1状態レベルをプログラムし、
    前記第2プログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の前記第2状態レベルをプログラムし、
    前記第3プログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の前記第3状態レベルをプログラムすることを特徴とする請求項1に記載のメモリ装置。
  6. 前記メモリ制御ロジックセクションは、読出しロジックセクションを含み、
    前記複数のメモリセルの各々の前記第1状態レベルは、閾値電圧の第1値に対応し、
    前記閾値電圧の第1値は、前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含み、
    前記読出しロジックセクションは、前記ページレベル再プログラム状態メタデータの第2値に応じて前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出すことを特徴とする請求項1に記載のメモリ装置。
  7. 前記複数のメモリセルの各々の前記第2状態レベルは、前記閾値電圧の第2値に対応し、
    前記閾値電圧の第2値は、前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含み、
    前記読出しロジックセクションは、前記ページレベル再プログラム状態メタデータの第3値に応じて前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出すことを特徴とする請求項6に記載のメモリ装置。
  8. 前記プログラムロジックセクションは、前記複数のメモリセルのいずれの前記第1状態レベル又はいずれの第2状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第3値に応じて前記複数のメモリセルの第3プログラミングで前記複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムし、
    前記複数のメモリセルの各々の前記第3状態レベルは、前記閾値電圧の第3値に対応し、
    前記閾値電圧の第3値は、前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含み、
    前記読出しロジックセクションは、前記ページレベル再プログラム状態メタデータの第4値に応じて前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出すことを特徴とする請求項7に記載のメモリ装置。
  9. 前記メモリ制御ロジックセクションは、
    前記複数のメモリセルの各々の前記第1状態レベルのプログラミングの後に、前記ページレベル再プログラム状態メタデータを前記第2値に設定し、
    前記複数のメモリセルの各々の前記第2状態レベルのプログラミングの後に、前記ページレベル再プログラム状態メタデータを第3値に設定することを特徴とする請求項1に記載のメモリ装置。
  10. 前記プログラムロジックセクションは、前記複数のメモリセルのいずれの前記第1状態レベル及び前記第2状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第3値に応じて前記複数のメモリセルの第3プログラミングで前記複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムし、
    前記メモリ制御ロジックセクションは、前記複数のメモリセルの各々の前記第3状態レベルのプログラミングの後に、前記ページレベル再プログラム状態メタデータを第4値に設定することを特徴とする請求項9に記載のメモリ装置。
  11. 多重レベル不揮発性メモリセルをプログラムする方法であって、
    メモリ制御ロジックセクションによって、ページレベル再プログラム状態メタデータを格納する段階と、
    前記メモリ制御ロジックセクションのプログラムロジックセクションによって、前記ページレベル再プログラム状態メタデータに応じてメモリページの複数のメモリセルをプログラムする段階と、
    前記プログラムロジックセクションによって、前記ページレベル再プログラム状態メタデータの第1値に応じて前記複数のメモリセルの第1プログラミングで前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上のビット位置に関連する第1状態レベルをプログラムする段階と、
    前記プログラムロジックセクションによって、前記複数のメモリセルのいずれの前記第1状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第2値に応じて前記複数のメモリセルの第2プログラミングで前記複数のメモリセルの各々の2の2乗〜2のN乗番目の中の1つ以上のビット位置に関連する第2状態レベルをプログラムする段階と、を有することを特徴とする方法。
  12. 前記プログラムロジックセクションによって、前記複数のメモリセルのいずれの前記第1状態レベル及び前記第2状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第3値に応じて前記複数のメモリセルの第3プログラミングで前記複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムする段階と、
    前記プログラムロジックセクションによって、前記第1状態レベル、前記第2状態レベル、及び前記第3状態レベルのプログラミング中又はプログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の同一のアドレスで前記第1状態レベル、前記第2状態レベル、及び前記第3状態レベルをプログラムする段階と、をさらに含むことを特徴とする請求項11に記載の方法。
  13. 前記2の1乗〜2のN乗番目の中の2の1乗番目は、1のビット位置に対応し、
    前記2の1乗〜2のN乗番目の中の2の2乗番目は、2のビット位置に対応し、
    前記2の1乗〜2のN乗番目の中の2の3乗番目は、4のビット位置に対応し、
    前記2の1乗〜2のN乗番目の中の2のN乗番目は、2(N−1)のビット位置に対応することを特徴とする請求項12に記載の方法。
  14. 前記プログラムロジックセクションによって、前記第1プログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の前記第1状態レベルをプログラムする段階と、
    前記プログラムロジックセクションによって、前記第2プログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の前記第2状態レベルをプログラムする段階と、をさらに含むことを特徴とする請求項11に記載の方法。
  15. 前記プログラムロジックセクションによって、前記複数のメモリセルのいずれの前記第1状態レベル及び前記第2状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第3値に応じて前記複数のメモリセルの第3プログラミングで前記複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムする段階と、
    前記プログラムロジックセクションによって、前記第1プログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の前記第1状態レベルをプログラムする段階と、
    前記プログラムロジックセクションによって、前記第2プログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の前記第2状態レベルをプログラムする段階と、
    前記プログラムロジックセクションによって、前記第3プログラミングの間に前記複数のメモリセルの中のいずれのビットも消去することなく、前記複数のメモリセルの各々の前記第3状態レベルをプログラムする段階と、をさらに含むことを特徴とする請求項11に記載の方法。
  16. 前記複数のメモリセルの各々の前記第1状態レベルは、閾値電圧の第1値に対応し、
    前記閾値電圧の第1値は、前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含み、
    前記方法は、
    前記メモリ制御ロジックセクションの読出しロジックセクションによって、前記ページレベル再プログラム状態メタデータの第2値に応じて前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出す段階をさらに含むことを特徴とする請求項11に記載の方法。
  17. 前記複数のメモリセルの各々の前記第2状態レベルは、前記閾値電圧の第2値に対応し、
    前記閾値電圧の第2値は、前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含み、
    前記方法は、
    前記読出しロジックセクションによって、前記ページレベル再プログラム状態メタデータの第3値に応じて前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出す段階をさらに含むことを特徴とする請求項16に記載の方法。
  18. 前記プログラムロジックセクションによって、前記複数のメモリセルのいずれの前記第1状態レベル及び前記第2状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第3値に応じて前記複数のメモリセルの第3プログラミングで前記複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムする段階をさらに含み、
    前記複数のメモリセルの各々の前記第3状態レベルは、前記閾値電圧の第3値に対応し、
    前記閾値電圧の第3値は、前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を含み、
    前記方法は、
    前記読出しロジックセクションによって、前記ページレベル再プログラム状態メタデータの第4値に応じて前記複数のメモリセルの各々の2の1乗〜2のN乗番目の中の1つ以上に関連するビット位置に格納された情報を読み出す段階をさらに含むことを特徴とする請求項17に記載の方法。
  19. 前記メモリ制御ロジックセクションによって、前記複数のメモリセルの各々の前記第1状態レベルのプログラミングの後に、前記ページレベル再プログラム状態メタデータを前記第2値に設定する段階と、
    前記メモリ制御ロジックセクションによって、前記複数のメモリセルの各々の前記第2状態レベルのプログラミングの後に、前記ページレベル再プログラム状態メタデータを第3値に設定する段階と、をさらに含むことを特徴とする請求項11に記載の方法。
  20. 前記プログラムロジックセクションによって、前記複数のメモリセルのいずれの前記第1状態レベル及び前記第2状態レベルも読み出すことなく、前記ページレベル再プログラム状態メタデータの第3値に応じて前記複数のメモリセルの第3プログラミングで前記複数のメモリセルの各々の2の3乗〜2のN乗番目の中の1つ以上のビット位置に関連する第3状態レベルをプログラムする段階と、
    前記メモリ制御ロジックセクションによって、前記複数のメモリセルの各々の前記第3状態レベルのプログラミングの後に、前記ページレベル再プログラム状態メタデータを第4値に設定する段階と、をさらに含むことを特徴とする請求項19に記載の方法。

JP2017143644A 2016-07-25 2017-07-25 多重レベルnandメモリ装置及び多重レベルnandメモリセルの容量を利用する消去無し再プログラミング方法 Active JP6757298B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201662366621P 2016-07-25 2016-07-25
US62/366,621 2016-07-25
US15/256,494 US9627049B1 (en) 2016-07-25 2016-09-02 Reprogram without erase using capacity in multi-level NAND cells
US15/256,494 2016-09-02
US15/436,755 US9818476B1 (en) 2016-07-25 2017-02-17 Reprogram without erase using capacity in multi-level NAND cells
US15/436,755 2017-02-17

Publications (2)

Publication Number Publication Date
JP2018018570A true JP2018018570A (ja) 2018-02-01
JP6757298B2 JP6757298B2 (ja) 2020-09-16

Family

ID=60255665

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017143644A Active JP6757298B2 (ja) 2016-07-25 2017-07-25 多重レベルnandメモリ装置及び多重レベルnandメモリセルの容量を利用する消去無し再プログラミング方法

Country Status (5)

Country Link
US (1) US9818476B1 (ja)
JP (1) JP6757298B2 (ja)
KR (1) KR102182225B1 (ja)
CN (1) CN107657982B (ja)
TW (1) TWI706248B (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10564890B2 (en) * 2017-07-07 2020-02-18 Seagate Technology Llc Runt handling data storage system
KR102530641B1 (ko) * 2018-03-21 2023-05-10 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
US11163482B2 (en) 2019-06-26 2021-11-02 International Business Machines Corporation Dynamic performance-class adjustment for storage drives
US11049570B2 (en) 2019-06-26 2021-06-29 International Business Machines Corporation Dynamic writes-per-day adjustment for storage drives
US11137915B2 (en) 2019-06-27 2021-10-05 International Business Machines Corporation Dynamic logical storage capacity adjustment for storage drives
US11550510B2 (en) * 2021-05-10 2023-01-10 Micron Technology, Inc. Encoding and decoding data bits stored in a combination of multiple memory cells

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5815434A (en) 1995-09-29 1998-09-29 Intel Corporation Multiple writes per a single erase for a nonvolatile memory
DE60102203D1 (de) 2000-12-15 2004-04-08 St Microelectronics Srl Programmierverfahren für eine Mehrpegelspeicherzelle
KR100791341B1 (ko) * 2006-09-04 2008-01-03 삼성전자주식회사 비휘발성 메모리 장치의 기입 방법 및 그 방법을 사용하는비휘발성 메모리 장치
KR100816155B1 (ko) * 2006-12-28 2008-03-21 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 불휘발성 메모리 장치의 멀티레벨 셀 프로그램 방법
KR101541736B1 (ko) * 2008-09-22 2015-08-04 삼성전자주식회사 멀티-레벨 셀 플래시 메모리 장치에서의 lsb 페이지 복구 방법
US8233324B2 (en) * 2010-03-25 2012-07-31 Sandisk Il Ltd. Simultaneous multi-state read or verify in non-volatile storage
KR101438072B1 (ko) 2010-04-15 2014-09-03 라모트 앳 텔-아비브 유니버시티 리미티드 소거 없는 플래시 메모리의 다중 프로그래밍
US8879319B1 (en) 2011-07-29 2014-11-04 Ecole Polytechnique Federale De Lausanne (Epfl) Re-writing scheme for solid-state storage devices
US8917559B2 (en) 2012-04-04 2014-12-23 Sandisk Technologies Inc. Multiple write operations without intervening erase
US20130343125A1 (en) * 2012-06-22 2013-12-26 Mosaid Technologies Incorporated Apparatus and methods for carrying out operations in a non-volatile memory cell having multiple memory states
KR20140021780A (ko) * 2012-08-10 2014-02-20 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 제어 방법
KR20160006343A (ko) * 2014-07-08 2016-01-19 에스케이하이닉스 주식회사 반도체 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법

Also Published As

Publication number Publication date
KR20180011703A (ko) 2018-02-02
CN107657982A (zh) 2018-02-02
KR102182225B1 (ko) 2020-11-25
CN107657982B (zh) 2022-12-20
TW201804327A (zh) 2018-02-01
US9818476B1 (en) 2017-11-14
JP6757298B2 (ja) 2020-09-16
TWI706248B (zh) 2020-10-01

Similar Documents

Publication Publication Date Title
JP6757298B2 (ja) 多重レベルnandメモリ装置及び多重レベルnandメモリセルの容量を利用する消去無し再プログラミング方法
US10714191B2 (en) Determining data states of memory cells
US9230658B2 (en) Method of storing data on a flash memory device
US8107287B2 (en) Method of programming nonvolatile memory device
JP6298249B2 (ja) 不揮発性メモリ装置とそれを含むメモリシステム及びそれらのメモリブロック管理、消去、及びプログラム方法
JP5259481B2 (ja) 不揮発性半導体記憶装置
US8467242B2 (en) Dynamically configurable MLC state assignment
KR20100010746A (ko) 읽기 전압 레벨이 설정가능한 플래시 메모리 시스템 및읽기 전압 레벨의 설정방법
JP2008009919A (ja) カードコントローラ
US9378823B2 (en) Programming a memory cell to a voltage to indicate a data value and after a relaxation time programming the memory cell to a second voltage to indicate the data value
US20150228332A1 (en) Method for writing data into flash memory and associated memory device and flash memory
TWI729903B (zh) 藉助於機器學習來針對記憶裝置的服務品質優化進行存取控制的方法、相關記憶裝置及其控制器
JP2010079774A (ja) 半導体記憶システム
KR100967001B1 (ko) 불휘발성 메모리 소자의 프로그램 방법
CN102197437B (zh) 存储器装置中的数据传送及编程
CN111540398B (zh) 用于对存储器装置的存储器单元进行编程的方法和相关存储器装置
JP2007220274A (ja) 不揮発性メモリ、そのためのデータ有効性を判断する装置及び方法
KR101227368B1 (ko) 낸드 플래시 메모리 소자의 프로그래밍 방법 및 데이터읽기 방법.
KR20110041285A (ko) 플래시 메모리 장치 그리고 그것의 채널 프리챠지 및 프로그램 방법들
US9627049B1 (en) Reprogram without erase using capacity in multi-level NAND cells
CN110908825B (zh) 一种数据读取方法、装置、存储设备及存储介质
KR20110001058A (ko) 불휘발성 메모리 소자의 동작 방법
US20120051142A1 (en) Soft Program Method and Computer Redable Medium Thereof
KR20100013947A (ko) 불휘발성 메모리 장치의 멀티 레벨 셀 프로그램 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200727

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200727

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200804

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200828

R150 Certificate of patent or registration of utility model

Ref document number: 6757298

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250