JP2011519110A - Non-volatile multi-level memory with adaptive setting of reference voltage for programming, verification and reading - Google Patents

Non-volatile multi-level memory with adaptive setting of reference voltage for programming, verification and reading Download PDF

Info

Publication number
JP2011519110A
JP2011519110A JP2011506829A JP2011506829A JP2011519110A JP 2011519110 A JP2011519110 A JP 2011519110A JP 2011506829 A JP2011506829 A JP 2011506829A JP 2011506829 A JP2011506829 A JP 2011506829A JP 2011519110 A JP2011519110 A JP 2011519110A
Authority
JP
Japan
Prior art keywords
voltages
volatile storage
storage elements
storage
elements
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
JP2011506829A
Other languages
Japanese (ja)
Other versions
JP5410507B2 (en
Inventor
マーク ムーリン
メナヘム ラッセル
Original Assignee
サンディスク アイエル リミティド
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 US12/111,729 external-priority patent/US7808819B2/en
Priority claimed from US12/111,748 external-priority patent/US7808836B2/en
Application filed by サンディスク アイエル リミティド filed Critical サンディスク アイエル リミティド
Publication of JP2011519110A publication Critical patent/JP2011519110A/en
Application granted granted Critical
Publication of JP5410507B2 publication Critical patent/JP5410507B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • 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
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/021Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50004Marginal testing, e.g. race, voltage or current testing of threshold voltage
    • 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

Abstract

不揮発性記憶装置は、そのデバイス、及び/または、(不揮発性記憶素子のブロックやワードライン等の)そのデバイスの一部用にカスタマイズされた電圧を用いてアクセスされる。このアクセス処理は、プログラミング処理、検証処理、または読み出し処理を含んでもよい。電圧(Vpgtn−iV)をカスタマイズすることで、プログラムディスターブによって引き起こされる閾値電圧の変化に対応することを含めて性能を最適化することができる。1つのアプローチでは、記憶装置内の異なる組の記憶素子にはランダムテストデータでプログラムされる。異なる記憶素子の組について、閾値電圧分布が特定される。電圧のセット(VPGM、V)が閾値電圧分布に基づいて特定され、後で記憶素子の異なる組にアクセスする際に用いるために不揮発性記憶位置に記憶される。電圧のセットは、後にエンドユーザがデータにアクセスする際に用いるために、製造時に特定しておくことができる。The non-volatile storage device is accessed using a voltage customized for the device and / or part of the device (such as a block of non-volatile storage elements or a word line). This access process may include a programming process, a verification process, or a read process. By customizing the voltages (V pgtn-i , V V), performance can be optimized including accommodating for threshold voltage changes caused by program disturb. In one approach, different sets of storage elements in the storage device are programmed with random test data. A threshold voltage distribution is identified for different sets of storage elements. A set of voltages (V PGM , V V ) is identified based on the threshold voltage distribution and stored in a non-volatile storage location for later use in accessing different sets of storage elements. The set of voltages can be specified at the time of manufacture for later use by the end user to access the data.

Description

本発明は、メモリデバイスに関する。   The present invention relates to a memory device.

半導体メモリは、様々な電子デバイスで使われることが一般的になってきている。例えば、不揮発性半導体メモリは、携帯電話、デジタルカメラ、パーソナルデジタルアシスタント、モバイルコンピュータ、非モバイルコンピュータ、及び他の装置に使用されている。電気的消去・書き込み可能型読出専用メモリ(EEPROM)とフラッシュメモリは、最も普及している不揮発性半導体メモリである。フラッシュメモリでは、ある種のEEPROMもそうであるが、通常のフル装備のEEPROMとは異なり、全メモリアレイまたは一部分のメモリの内容を、1ステップで消去することができる。   Semiconductor memories are becoming more commonly used in various electronic devices. For example, non-volatile semiconductor memory is used in mobile phones, digital cameras, personal digital assistants, mobile computers, non-mobile computers, and other devices. Electrically erasable / writable read only memory (EEPROM) and flash memory are the most widespread nonvolatile semiconductor memories. In flash memory, as with some types of EEPROM, the contents of the entire memory array or a portion of the memory can be erased in one step, unlike a normal full-featured EEPROM.

通常のEEPROMとフラッシュメモリは、半導体基板内のチャネル領域上に配置され、そのチャネル領域から絶縁されているフローティングゲートを採用している。フローティングゲートは、ソース領域とドレイン領域の間に配置されている。フローティングゲートの上に、そのフローティングゲートから絶縁されている制御ゲートが設けられている。形成されているトランジスタの閾値電圧(VTH)は、フローティングゲート上に保持されている電荷量によって制御される。即ち、トランジスタをオンしてソースとドレインの間の導通させるために制御ゲートに印加すべき電圧の最小量は、そのフローティングゲート上の電荷量レベルにより制御される。 Ordinary EEPROM and flash memory employ a floating gate that is disposed on a channel region in a semiconductor substrate and is insulated from the channel region. The floating gate is disposed between the source region and the drain region. A control gate that is insulated from the floating gate is provided on the floating gate. The threshold voltage (V TH ) of the formed transistor is controlled by the amount of charge held on the floating gate. That is, the minimum amount of voltage that must be applied to the control gate to turn on the transistor and conduct between the source and drain is controlled by the charge level on the floating gate.

ある種のEEPROMとフラッシュメモリデバイスは、2つの範囲の電荷量を蓄えるために使われるフローティングゲートを備えており、それゆえ、その記憶素子は、2つの状態、即ち、消去状態とプログラムされた状態、の間でプログラム/消去が行われる。そのようなフラッシュメモリデバイスは、各記憶素子が1ビットデータを記憶することができるので、バイナリフラッシュメモリデバイスと呼ばれることがある。   Certain EEPROM and flash memory devices have a floating gate that is used to store two ranges of charge, and therefore the storage element is in two states: an erased state and a programmed state. , The program / erase is performed. Such flash memory devices are sometimes referred to as binary flash memory devices because each storage element can store 1-bit data.

一般に、1セルあたりに1ビットを記憶するメモリは、シングルレベルセル(SLC)メモリと呼ばれ、1セルあたりに2ビット以上を記憶するメモリは、マルチレベルセル(MLC)メモリと呼ばれる。例えば、各MLCメモリ素子は、4つの異なる閾値電圧範囲に対応する4つの異なる電荷帯のうちの1つをとることで、2ビットのデータを記憶することができる。   In general, a memory that stores one bit per cell is called a single level cell (SLC) memory, and a memory that stores two or more bits per cell is called a multi-level cell (MLC) memory. For example, each MLC memory element can store 2-bit data by taking one of four different charge bands corresponding to four different threshold voltage ranges.

通常、プログラム動作において制御ゲートに印加されるプログラム電圧VPGMは、時間の経過に伴って大きさが増大する一連のパルスとして印加される。一つのアプローチとしては、パルスの大きさは、連続するパルスの1つ毎に、例えば0.2−0.4Vの既定のステップサイズずつ増加する。VPGMは、フラッシュメモリ素子の制御ゲートに印加される。プログラムパルスとプログラムパルスの間の期間に検証動作が実行される。即ち、並列にプログラムされている素子グループの各素子のプログラムレベルは、連続するパルスとパルスの間に読み出され、素子がプログラムされている検証レベルと等しいか或いはそれ以上であるか否かが判定される。マルチステートフラッシュメモリ素子のアレイでは、素子の状態毎に検証処理が実行され、その素子がデータに対応する検証レベルに達したか否かが判定される。例えば、4つの状態のいずれかにデータを記憶可能なマルチステート記憶素子では、3つの比較点での検証動作が必要とされる。 Normally, the program voltage VPGM applied to the control gate in the program operation is applied as a series of pulses that increase in magnitude over time. As one approach, the pulse magnitude is increased by a predetermined step size of, for example, 0.2-0.4V for each successive pulse. V PGM is applied to the control gate of the flash memory device. A verification operation is performed during the period between program pulses. That is, the program level of each element in the element group programmed in parallel is read between successive pulses and whether the element is equal to or greater than the verification level programmed. Determined. In an array of multi-state flash memory elements, verification processing is performed for each element state to determine whether the element has reached a verification level corresponding to data. For example, a multi-state storage element that can store data in any of four states requires verification operations at three comparison points.

さらに、EEPROM、或いは、NANDフラッシュメモリデバイスのようなフラッシュメモリデバイスのNANDストリングをプログラミングする場合は、通常は、制御ゲートにVPGMが印加されるとともにビットラインが接地され、それによって、セル、或いはメモリ素子(即ち、記憶素子)のチャネルからフローティングゲートへ電子が注入される。フローティングゲートに電子が蓄積されると、フローティングゲートが負値に帯電し、メモリ素子の閾値電圧が上昇し、メモリ素子がプログラムされた状態となる。そのようなプログラミングに関するさらなる情報は、「Source Side Self Boosting Technique For Non-Volatile Memory」と題した米国特許第6,859,397号、及び、「Detecting Over Programmed Memory」と題した2005年2月3日公開の米国特許公開公報2005/0024939号に開示されている。両者の文献の内容は、その全体を参照することにより本明細書に組み込まれる。 Further, when programming a NAND string of a flash memory device, such as an EEPROM or NAND flash memory device, typically a V PGM is applied to the control gate and the bit line is grounded, thereby allowing the cell or Electrons are injected from the channel of the memory element (ie, the storage element) into the floating gate. When electrons are accumulated in the floating gate, the floating gate is charged to a negative value, the threshold voltage of the memory element is increased, and the memory element is programmed. Further information on such programming can be found in US Pat. No. 6,859,397 entitled “Source Side Self Boosting Technique For Non-Volatile Memory” and February 3, 2005 entitled “Detecting Over Programmed Memory”. This is disclosed in US Patent Publication No. 2005/0024939 published in Japan. The contents of both documents are incorporated herein by reference in their entirety.

さらに、読み出し動作中に、読み出される記憶素子の組に複数の読み出し基準電圧が印加され、どの読み出し基準電圧が記憶素子を導通させるのかについての判断がなされる。複数の読み出し基準電圧は、記憶素子のデータ状態が区別可能となるように設定される。   Further, during the read operation, a plurality of read reference voltages are applied to the set of read memory elements, and a determination is made as to which read reference voltage causes the memory elements to conduct. The plurality of read reference voltages are set so that the data states of the storage elements can be distinguished.

しかしながら、プログラミング、検証、読み出しに用いられる電圧は、通常は固定されており、閾値電圧分布がばらつく可能性があるという点について考慮していない。例えば、閾値電圧分布は、プログラムディスターブ等の問題によりばらつくことがある。この結果、固定されたプログラミング、検証、読み出し電圧の使用により、不適切な性能が生じることがある。   However, the voltages used for programming, verification, and reading are usually fixed, and no consideration is given to the possibility that the threshold voltage distribution may vary. For example, the threshold voltage distribution may vary due to problems such as program disturb. This can result in inadequate performance due to fixed programming, verification, and use of read voltages.

本発明は、パフォーマンスを最適化するために、書き込み、読み出し、検証動作等の電圧レベルを設定する不揮発性記憶システムを提供する。   The present invention provides a non-volatile storage system that sets voltage levels for write, read, verify operations, etc. to optimize performance.

一実施形態では、記憶システムは、マルチレベル記憶素子である不揮発性記憶素子の各組と、不揮発性記憶位置と、少なくとも1つの制御回路を備える。少なくとも1つの制御回路は、(a)不揮発性記憶素子の各組について、それぞれの閾値電圧分布を測定し、(b)各閾値電圧分布に基づいて、不揮発性記憶素子の各組について、不揮発性記憶素子の各組用にカスタマイズされている電圧の各セットを特定し、(c)電圧の各セットを不揮発性記憶位置に記憶し、(d)前述の記憶処理を行った後に、不揮発性記憶位置から電圧の各セットのうち少なくとも1つを取得して、電圧のセットのうちの前述の少なくとも1つを用いて、不揮発性記憶素子の各組のうち少なくとも1つについて書き込み動作を実行する。   In one embodiment, the storage system comprises each set of non-volatile storage elements that are multi-level storage elements, a non-volatile storage location, and at least one control circuit. At least one control circuit (a) measures each threshold voltage distribution for each set of non-volatile memory elements, and (b) non-volatiles for each set of non-volatile memory elements based on each threshold voltage distribution. Identify each set of voltages customized for each set of storage elements, (c) store each set of voltages in a non-volatile storage location, and (d) perform non-volatile storage after performing the storage process described above. At least one of each set of voltages is obtained from a position and a write operation is performed on at least one of each set of non-volatile storage elements using at least one of the aforementioned sets of voltages.

別の実施形態では、記憶システムは、マルチレベル記憶素子である不揮発性記憶素子の各組と、不揮発性記憶位置と、少なくとも1つの制御回路を備える。少なくとも1つの制御回路は、(a)不揮発性記憶素子の各組について、それぞれの閾値電圧分布を測定し(この測定は不揮発性記憶素子の各組にデータを書き込むことを含んでいる)、(b)各閾値電圧分布に基づいて、不揮発性記憶素子の各組について、不揮発性記憶素子の各組用にカスタマイズされている電圧の各セットを特定し、(c)電圧の各セットを不揮発性記憶位置に記憶し、(d)前述の記憶処理を行った後に、電圧のセットのうち少なくとも1つを不揮発性記憶位置から取得して、電圧のセットのうちの前述の少なくとも1つを用いて、不揮発性記憶素子の各組のうち少なくとも1つにアクセスする。   In another embodiment, the storage system comprises each set of non-volatile storage elements that are multi-level storage elements, a non-volatile storage location, and at least one control circuit. The at least one control circuit (a) measures a respective threshold voltage distribution for each set of non-volatile storage elements (this measurement includes writing data to each set of non-volatile storage elements); b) Based on each threshold voltage distribution, for each set of non-volatile memory elements, identify each set of voltages customized for each set of non-volatile memory elements, and (c) set each set of voltages to non-volatile (D) after performing the storage process described above, after obtaining at least one of the voltage sets from the non-volatile storage position and using at least one of the voltage sets described above Accessing at least one of each set of non-volatile storage elements.

別の実施形態は、1組の個別の記憶装置を備える。それぞれの記憶装置は、1組又は複数組のマルチレベル記憶素子である不揮発性記憶素子と、それぞれの不揮発性記憶位置と、少なくとも1つの制御回路を備える。少なくとも1つの制御回路は、(a)記憶装置に含まれる1組又は複数組の不揮発性記憶素子について、それぞれの閾値電圧分布を測定し、(b)各閾値電圧分布に基づいて、不揮発性記憶素子の各組について、それぞれの電圧のセットを特定し、(c)不揮発性記憶素子の各組の各電圧のセットをそれぞれの不揮発性記憶位置に記憶し、(d)前述の記憶処理を行った後に、電圧のセットのうち少なくとも1つを不揮発性記憶位置から取得して、電圧のセットのうちの前述の少なくとも1つを用いて、不揮発性記憶素子の各組のうち1組又は複数組にアクセスする。さらに、各電圧のセットはそれぞれの不揮発性記憶素子の組毎にカスタマイズされており、個別の記憶装置によって異なっている。   Another embodiment comprises a set of individual storage devices. Each storage device includes one or more sets of non-volatile storage elements that are multi-level storage elements, each non-volatile storage location, and at least one control circuit. At least one control circuit (a) measures each threshold voltage distribution for one or more sets of non-volatile memory elements included in the memory device, and (b) non-volatile memory based on each threshold voltage distribution. Identify each set of voltages for each set of elements, (c) store each set of voltages for each set of non-volatile storage elements in their respective non-volatile storage locations, and (d) perform the storage process described above Thereafter, at least one of the sets of voltages is obtained from a non-volatile storage location and one or more sets of each set of non-volatile storage elements is obtained using at least one of the aforementioned sets of voltages. To access. Furthermore, each set of voltages is customized for each set of non-volatile storage elements and varies with the individual storage device.

別の実施形態では、個別の記憶装置の組を備えている。それぞれの記憶装置は、1組又は複数組のマルチレベル記憶素子である不揮発性記憶素子と、それぞれの不揮発性記憶位置と、少なくとも1つの制御回路とを備えている。この少なくとも1つの制御回路は、(a)記憶装置の不揮発性記憶素子の1組又は複数組のそれぞれについて、1つ又は複数の閾値電圧分布を測定し、(b)各閾値電圧分布に基づいて、不揮発性記憶素子の各組について電圧のセットを特定し、(c)不揮発性記憶素子の各組のための電圧の各セットをそれぞれの不揮発性記憶位置に記憶し、(d)前述の記憶処理を行った後に、電圧のセットのうち少なくとも1つを不揮発性記憶位置から取得して、電圧のセットの少なくとも1つを用いて、不揮発性記憶素子の各組のうち少なくとも1つをそれぞれの不揮発性記憶位置から取得する。さらに、それぞれの電圧のセットは、不揮発性記憶素子の各組にカスタマイズされており、個別の記憶装置間で異なっている。   In another embodiment, a separate set of storage devices is provided. Each storage device includes one or more sets of non-volatile storage elements that are multi-level storage elements, each non-volatile storage location, and at least one control circuit. The at least one control circuit (a) measures one or more threshold voltage distributions for each of one or more sets of nonvolatile storage elements of the storage device, and (b) based on each threshold voltage distribution. Identify a set of voltages for each set of non-volatile storage elements; (c) store each set of voltages for each set of non-volatile storage elements in a respective non-volatile storage location; and (d) store the foregoing After performing the processing, at least one of the sets of voltages is obtained from a non-volatile storage location, and at least one of the sets of non-volatile storage elements is each Obtained from non-volatile storage location. Further, each set of voltages is customized for each set of non-volatile storage elements and varies between individual storage devices.

ここで提供される方法を実行するような対応する方法、システム及びコンピュータ又はプロセッサに読み出し可能な記憶装置を提供することもできる。   Corresponding methods, systems and computer or processor readable storage devices can also be provided that perform the methods provided herein.

NANDストリングの上面図である。It is a top view of a NAND string. 図1のNANDストリングの等価回路図である。FIG. 2 is an equivalent circuit diagram of the NAND string of FIG. 1. NANDフラッシュ記憶素子のアレイのブロック図である。1 is a block diagram of an array of NAND flash storage elements. FIG. 基板に設けられたNANDストリングの断面図である。It is sectional drawing of the NAND string provided in the board | substrate. 記憶素子のブロックを示す。A block of storage elements is shown. 1組の不揮発性記憶素子の初期の閾値電圧分布とこれに対応する検証及び読み出し電圧を示す。An initial threshold voltage distribution of a set of nonvolatile memory elements and corresponding verification and read voltages are shown. プログラムディスターブを受けている1組の不揮発性記憶素子の閾値電圧分布を示す。2 shows a threshold voltage distribution of a set of nonvolatile memory elements that are subjected to program disturb. 図6bの閾値電圧分布の測定とこれに対応する読み出し電圧のセッティングを示す。FIG. 6b shows the measurement of the threshold voltage distribution and the corresponding setting of the read voltage. プログラム電圧と検証電圧の一連のパルスを示す。Shows a series of pulses of program and verify voltages. プログラミングの間に利用可能な一連の書き込み又はプログラム電圧を示す。A series of write or program voltages available during programming is shown. 不揮発性記憶素子の組毎にカスタマイズされた書き込み、検証、読み出し電圧を含むデータを示す。Data including write, verify, and read voltages customized for each set of nonvolatile memory elements is shown. 1組の不揮発性記憶素子の電圧を特定するプロセスを表す。1 represents a process for identifying the voltage of a set of non-volatile storage elements. 図9aのプロセスによって特定された所定電圧を用いて1組の不揮発性記憶素子のユーザデータにアクセスするプロセスを表す。9a illustrates a process of accessing user data in a set of non-volatile storage elements using a predetermined voltage specified by the process of FIG. 9a. 複数組の不揮発性記憶素子の電圧を特定するプロセスを表す。4 represents a process for identifying voltages of a plurality of sets of nonvolatile memory elements. 図9cのプロセスによって特定された所定電圧を用いて複数組の不揮発性記憶素子のユーザデータにアクセスするプロセスを表す。9c illustrates a process of accessing user data of multiple sets of non-volatile storage elements using a predetermined voltage specified by the process of FIG. 9c. NANDフラッシュ記憶素子のアレイのブロック図である。1 is a block diagram of an array of NAND flash storage elements. FIG. ホストコントローラと記憶装置の概略を表す図である。It is a figure showing the outline of a host controller and a storage device. 単一の行/列デコーダと読み出し/書き込み回路を用いる不揮発性記憶システムのブロック図である。1 is a block diagram of a non-volatile storage system using a single row / column decoder and read / write circuitry.

本発明は、パフォーマンスを最適化するために、書き込み、読み出し、検証用の動作等の電圧レベルを設定する不揮発性記憶システムを提供する。   The present invention provides a non-volatile storage system that sets voltage levels for write, read, verify operations, etc. to optimize performance.

本発明を適用するのに適した一つの記憶システムの一例は、2つの選択ゲート間に複数のトランジスタを直列配置したNANDフラッシュメモリ構造を用いている。直列のトランジスタと選択ゲートは、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(ソース選択ゲート)に接続される。   An example of one storage system suitable for applying the present invention uses a NAND flash memory structure in which a plurality of transistors are arranged in series between two select gates. The transistor in series and the select gate are called a NAND string. FIG. 1 is a top view of one NAND string. FIG. 2 is an equivalent circuit diagram thereof. The NAND string shown in FIGS. 1 and 2 is connected in series and includes four transistors 100, 102, 104, and 106 sandwiched between a first select gate 120 and a second select gate 122. The select gate 120 opens and closes the connection to the bit line 126 of the NAND string. The select gate 122 opens and closes the connection to the source line 128 of the NAND string. The select gate 120 is controlled by applying an appropriate voltage to the control gate 120CG. The select gate 122 is controlled by applying an appropriate voltage to the control gate 122CG. Each transistor 100, 102, 104, 106 includes a control gate and a floating gate. The transistor 100 includes a control gate 100CG and a floating gate 100FG. Transistor 102 includes a control gate 102CG and a floating gate 102FG. Transistor 104 includes control gate 104CG and floating gate 104FG. Transistor 106 includes a control gate 106CG and a floating gate 106FG. The control gate 100CG is connected to the word line WL3, the control gate 102CG is connected to the word line WL2, the control gate 104CG is connected to the word line WL1, and the control gate 106CG is connected to the word line WL0. Yes. The control gate may be configured as part of the word line. In one embodiment, each of transistors 100, 102, 104, 106 is a storage element and may be referred to as a memory cell. In another embodiment, the storage element may comprise a plurality of transistors or may be different from the embodiment shown in FIGS. The select gate 120 is connected to a selection line SGD (drain selection gate). The select gate 122 is connected to a selection line SGS (source selection gate).

図3は、3つのNANDストリングの回路図である。NAND構造を用いたフラッシュメモリシステムの典型的なアーキテクチャは、複数のNANDストリングを備えている。例えば、多くのNANDストリングを備えたメモリアレイの中の3つのNANDストリング320、340、360が示されている。NANDストリングのそれぞれは、2つの選択ゲートと4つの記憶素子を備えている。4つの記憶素子は簡潔に図示されているものの、近年のNANDストリングは、例えば最大で32個又は64個の記憶素子を有することができる。   FIG. 3 is a circuit diagram of three NAND strings. A typical architecture of a flash memory system using a NAND structure includes a plurality of NAND strings. For example, three NAND strings 320, 340, 360 in a memory array with many NAND strings are shown. Each NAND string includes two selection gates and four storage elements. Although four storage elements are illustrated briefly, modern NAND strings can have, for example, up to 32 or 64 storage elements.

例えば、NANDストリング320は選択ゲート322、327と記憶素子323〜326を備えており、NANDストリング340は選択ゲート342、347と記憶素子343〜346を備えており、NANDストリング360は選択ゲート362、367と記憶素子363〜366を備えている。それぞれのNANDストリングは(例えば選択ゲート327、347、又は367等の)各自の選択ゲートによってソースラインに接続されている。選択ラインSGSは、ソース側選択ゲートを制御するのに用いられる。NANDストリング320、340、360は、選択ゲート322、342、362等の選択トランジスタによって、ビットライン321、341、361にそれぞれ接続されている。これらの選択トランジスタは、ドレイン選択ラインSGDによって制御される。他の実施形態では、選択ラインは複数のNANDストリングに共通とされている必要はない。すなわち、異なるNANDストリングに異なる選択ラインが接続されていてもよい。ワードラインWL3は、記憶素子323、343、363の制御ゲートに接続されている。ワードラインWL2は、記憶素子324、344、364の制御ゲートに接続されている。ワードラインWL1は、記憶素子325、345、365の制御ゲートに接続されている。ワードラインWL0は、記憶素子326、346、366の制御ゲートに接続されている。このように、各ビットラインとそれぞれのNANDストリングは、アレイあるいは1組の記憶素子の列を備えている。(WL3、WL2、WL1、WL0等の)ワードラインは、当該アレイ又は組の行を備えている。それぞれのワードラインは、行に含まれるそれぞれの記憶素子の制御ゲートを接続する。あるいは、制御ゲートは、ワードラインそのものによって構成されていてもよい。例えば、ワードラインWL2は、記憶素子324、344、364の制御ゲートを提供する。実際には、1つのワードラインに何千個もの記憶素子が存在しうる。   For example, the NAND string 320 includes selection gates 322 and 327 and storage elements 323 to 326, the NAND string 340 includes selection gates 342 and 347 and storage elements 343 to 346, and the NAND string 360 includes the selection gate 362, 367 and storage elements 363 to 366. Each NAND string is connected to the source line by its own select gate (eg, select gate 327, 347, or 367). The selection line SGS is used to control the source side selection gate. The NAND strings 320, 340, 360 are connected to the bit lines 321, 341, 361 by selection transistors such as selection gates 322, 342, 362, respectively. These selection transistors are controlled by a drain selection line SGD. In other embodiments, the select line need not be common to multiple NAND strings. That is, different selection lines may be connected to different NAND strings. The word line WL3 is connected to the control gates of the storage elements 323, 343, and 363. The word line WL2 is connected to the control gates of the storage elements 324, 344, and 364. The word line WL1 is connected to the control gates of the storage elements 325, 345, and 365. The word line WL0 is connected to the control gates of the storage elements 326, 346, and 366. Thus, each bit line and each NAND string comprises an array or a set of storage element columns. A word line (such as WL3, WL2, WL1, WL0) comprises the array or set of rows. Each word line connects the control gates of the respective storage elements included in the row. Alternatively, the control gate may be configured by the word line itself. For example, word line WL2 provides a control gate for storage elements 324, 344, 364. In practice, there can be thousands of storage elements in one word line.

それぞれの記憶素子はデータを記憶することができる。例えば、1ビットのデジタルデータを記憶するときは、記憶素子の利用可能な閾値電圧(VTH)の範囲は、論理データ「1」と「0」を割り当てられる2つの範囲に分割される。NANDタイプのフラッシュメモリの一例では、前記VTHは、記憶素子が消去された後に負となり、論理「1」として定義される。プログラム動作後の前記VTHは正であり、論理「0」として定義される。VTHが負であり、読み出しが試行されると、記憶素子がオンして論理「1」が記憶されていることが示される。前記VTHが正であり、読み出し動作が試行されると、記憶素子はオンにならず、論理「0」が記憶されていることが示される。また、記憶素子は、例えば複数ビットのデジタルデータ等の複数のレベルの情報も記憶できる。このケースでは、VTH値の範囲はデータレベルの数に分割される。例えば、4つのレベルの情報が記憶されている場合には、データ値「11」、「10」、「01」、及び、「00」に割り当てられる4つのVTH範囲がある。NANDタイプのメモリの一例では、消去動作後の前記VTHは負となり、「11」として定義される。正のVTH値は「10」、「01」及び「00」の状態のために使用される。記憶素子に書き込まれるデータと、素子の閾値電圧範囲との特定の関係は、記憶素子のために採用されるデータ符号化方式に依存する。例えば、両出願の全体を参照することにより本明細書に組み込まれる米国特許第6,222,762号及び米国特許第7,237,074号が、マルチステートフラッシュ記憶素子のための多様なデータ符号化方式を説明している。 Each storage element can store data. For example, when storing 1-bit digital data, the available threshold voltage (V TH ) range of the storage element is divided into two ranges to which logical data “1” and “0” are assigned. In an example of a NAND type flash memory, the V TH becomes negative after the storage element is erased, and is defined as logic “1”. The V TH after the program operation is positive and is defined as logic “0”. If V TH is negative and a read is attempted, the storage element is turned on indicating that a logic “1” is stored. When V TH is positive and a read operation is attempted, the storage element is not turned on, indicating that a logic “0” is stored. The storage element can also store information at a plurality of levels such as digital data of a plurality of bits. In this case, the range of VTH values is divided into the number of data levels. For example, if four levels of information are stored, there are four VTH ranges assigned to data values “11”, “10”, “01”, and “00”. In an example of a NAND type memory, the V TH after the erase operation becomes negative and is defined as “11”. Positive VTH values are used for the "10", "01" and "00" states. The specific relationship between the data written to the storage element and the threshold voltage range of the element depends on the data encoding scheme employed for the storage element. For example, US Pat. No. 6,222,762 and US Pat. No. 7,237,074, incorporated herein by reference in their entirety, describe various data codes for multi-state flash storage elements. Explains the conversion method.

NANDタイプのフラッシュメモリ及びその動作の関連性のある例は、それぞれが参照することにより本明細書に組み込まれる米国特許番号第5,386,422号、第5,570,315号、第5,774,397号、第6,046,935号、第6,456,528号、及び第6,522,580号に示されている。   Relevant examples of NAND type flash memory and its operation are described in US Pat. Nos. 5,386,422, 5,570,315, 5, respectively, each incorporated herein by reference. 774, 397, 6,046,935, 6,456,528, and 6,522,580.

フラッシュ記憶素子をプログラミングするときには、プログラム電圧が記憶素子の制御ゲートに印加されるとともに、記憶素子に接続されているビットラインが接地される。電子がチャネルからフローティングゲートに注入される。電子がフローティングゲートに蓄積すると、フローティングゲートは負に帯電し、記憶素子のVTHが上昇する。プログラミング中の記憶素子の制御ゲートにプログラム電圧を印加するために、そのプログラム電圧は適切なワードライン上に印加される。上述したように、各NANDストリング中の1つの記憶素子が同じワードラインを共有している。例えば、図3の記憶素子324をプログラミングするときには、プログラム電圧は記憶素子344と364の制御ゲートにも印加される。未選択の記憶素子344と364は、プログラムディスターブを受けることがある。プログラムディスターブは、比較的高いプログラム電圧を選択された記憶素子にかけることにより、選択された記憶素子と同じワードライン上の未選択の記憶素子が意図しないでプログラミングを受ける際に生じる。 When programming a flash storage element, a program voltage is applied to the control gate of the storage element and the bit line connected to the storage element is grounded. Electrons are injected from the channel into the floating gate. When electrons accumulate in the floating gate, the floating gate becomes negatively charged, V TH of the storage element is raised. In order to apply a program voltage to the control gate of the storage element being programmed, the program voltage is applied on the appropriate word line. As described above, one storage element in each NAND string shares the same word line. For example, when programming the storage element 324 of FIG. 3, the program voltage is also applied to the control gates of the storage elements 344 and 364. Unselected storage elements 344 and 364 may be subject to program disturb. Program disturb occurs when an unselected storage element on the same word line as the selected storage element is unintentionally programmed by applying a relatively high program voltage to the selected storage element.

図4は、基板上に形成されたNANDストリングの断面図を示す。図は簡略化されており、縮尺どおりではない。NANDストリング400は、ソース側選択ゲート406と、ドレイン側選択ゲート424と、基板490上に形成される8個の記憶素子408、410、412、414、416、418、420及び422とを有する。複数のソース/ドレイン領域(その一例はソース/ドレイン領域430である)が、各記憶素子と選択ゲート406及び424の両側に形成されている。一つのアプローチでは、基板490は、3重ウェル技術を採用しており、nウェル領域494の中にpウェル領域492が形成されており、これがp型基板領域496の中に形成されている。NANDストリングとその不揮発性記憶素子は、少なくとも部分的には、pウェル領域上に形成されている。ビットライン426にはVBLの電位が供給されるとともに、ソース供給ライン404にはVSOURCEの電位が供給される。端子403を介してnウェル領域494に電圧が印加され、端子402を介してpウェル領域492に電圧が印加される。 FIG. 4 shows a cross-sectional view of the NAND string formed on the substrate. The diagram is simplified and not to scale. The NAND string 400 includes a source side selection gate 406, a drain side selection gate 424, and eight storage elements 408, 410, 412, 414, 416, 418, 420 and 422 formed on the substrate 490. A plurality of source / drain regions (an example is a source / drain region 430) is formed on both sides of each storage element and select gates 406 and 424. In one approach, the substrate 490 employs triple well technology, with a p-well region 492 formed in the n-well region 494, which is formed in the p-type substrate region 496. The NAND string and its nonvolatile memory element are at least partially formed on the p-well region. The potential of V BL is a bit line 426 is supplied, the potential of V SOURCE is supplied to the source supply line 404. A voltage is applied to n-well region 494 through terminal 403, and a voltage is applied to p-well region 492 through terminal 402.

読み出し処理の間、記憶素子414及び図示しないそのほかの記憶素子に関係付けられた選択ワードライン(この例ではWL3である)に制御ゲート電圧VCGRが印加される。なお、記憶素子の制御ゲートは、ワードラインの一部として構成され得ることに留意されたい。例えば、WL0、WL1、WL2、WL3、WL4、WL5、WL6、及びWL7は、それぞれ、記憶素子408、410、412、414、416、418、420、及び422の制御ゲートを通じて伸びている場合があることに留意されたい。一つの可能な方式では、NANDストリング400に関係付けられた残りのワードラインに読み出しパス電圧VREADが印加される。選択ゲート406と424には夫々、VSGSとVSGDが印加される。 During the read process, the control gate voltage V CGR is applied to the selected word line (in this example, WL3) associated with the storage element 414 and other storage elements not shown. Note that the control gate of the storage element can be configured as part of the word line. For example, WL0, WL1, WL2, WL3, WL4, WL5, WL6, and WL7 may extend through the control gates of storage elements 408, 410, 412, 414, 416, 418, 420, and 422, respectively. Please note that. In one possible scheme, the read pass voltage V READ is applied to the remaining word lines associated with the NAND string 400. V SGS and V SGD are applied to the selection gates 406 and 424, respectively.

図5は、記憶素子のブロックを示す。1つの実施例では、NANDフラッシュEEPROMは1024個のブロックに区分することができる。各ブロックに記憶されるデータは、一斉に消去可能である。実施形態では、ブロックは一斉に消去可能な記憶素子の最小単位である。この例では、各ブロックに、ビットラインBL0、BL1、・・・BL4255に対応する4,256の列が存在する。全ビットライン(ABL)アーキテクチャと呼ばれる一実施形態では、ブロックの全ビットラインは、読み出し動作及びプログラミング動作中に同時に選択される。共通のワードラインに沿っており、任意のビットラインに接続される記憶素子は、同時にプログラミングされる。   FIG. 5 shows a block of the storage element. In one embodiment, the NAND flash EEPROM can be partitioned into 1024 blocks. Data stored in each block can be erased simultaneously. In the embodiment, a block is the smallest unit of memory elements that can be erased simultaneously. In this example, there are 4,256 columns corresponding to bit lines BL0, BL1,..., BL4255 in each block. In one embodiment, referred to as an all bit line (ABL) architecture, all bit lines of the block are selected simultaneously during read and programming operations. Storage elements along a common word line and connected to any bit line are programmed simultaneously.

図示された例では、8個の記憶素子が直列に連結され、NANDストリングを形成している。8本のデータワードラインWL0〜WL7が存在する。NANDストリングは、ダミー記憶素子とこれに対応するワードラインをさらに備えていてもよい。他の実施形態では、NANDストリングは、8個より多い、或いは少ない個数のデータ記憶素子を有していてもよい。データメモリセルは、ユーザデータ或いはシステムデータを記憶することができる。ダミーメモリセルは、通常、ユーザデータやシステムデータの記憶には使われない。   In the illustrated example, eight storage elements are connected in series to form a NAND string. There are eight data word lines WL0-WL7. The NAND string may further include a dummy storage element and a corresponding word line. In other embodiments, the NAND string may have more or less than eight data storage elements. The data memory cell can store user data or system data. The dummy memory cell is not normally used for storing user data or system data.

各NANDストリングの1つの端子は、(選択ゲートドレインラインSGDに接続される)ドレイン選択ゲートを介して対応するビットラインに接続されており、別の端子が(選択ゲートソースラインSGSに接続される)ソース選択ゲートを介して共通ソース505に接続されている。すなわち、共通ソース505は各NANDストリングに接続されている。   One terminal of each NAND string is connected to the corresponding bit line via a drain select gate (connected to the select gate drain line SGD), and another terminal (connected to the select gate source line SGS). ) It is connected to the common source 505 via the source selection gate. That is, the common source 505 is connected to each NAND string.

奇数−偶数アーキテクチャと呼ばれる一実施形態では、ビットラインは偶数ビットライン(BLe)と奇数ビットライン(BLo)に分割される。この場合、共通ワードラインに沿っており、奇数ビットラインに接続されている記憶素子群は同時にプログラミングされ、共通ワードラインに沿っており、偶数ビットラインに接続されている記憶素子群は別のタイミングで同時にプログラミングされる。各ブロックでは、列は偶数列と奇数列に分割される。   In one embodiment, referred to as an odd-even architecture, the bit lines are divided into even bit lines (BLe) and odd bit lines (BLo). In this case, the storage element groups along the common word line and connected to the odd bit lines are programmed at the same time, and the storage element groups along the common word line and connected to the even bit lines have different timings. Are programmed at the same time. In each block, the columns are divided into even columns and odd columns.

読み出し動作及びプログラミング動作の1つの構成の間に、4,256個の記憶素子が同時に選択される。選択された記憶素子は、同じワードラインを有しており、共通の物理ページの一部である。従って、1論理ページを形成する532バイトのデータを同時に読み出し、あるいは、プログラミングすることが可能であり、1ブロックのメモリが少なくとも8論理ページを記憶できる。この例では、物理ページと論理ページが同じであるものの、一般的にはこれは必須ではない。例えば、物理ページは複数の論理ページを含んでいてもよい。論理ページは、通常、同時に書き込み(プログラム)される記憶素子の最小の組である。マルチステート記憶素子の場合、各記憶素子が2ビットのデータを記憶し、これらの2ビットのそれぞれが別のページに記憶される場合、1ブロックは16の論理ページを記憶する。他のサイズのブロック及びページを使用することも可能である。   During one configuration of read and programming operations, 4,256 storage elements are selected simultaneously. The selected storage elements have the same word line and are part of a common physical page. Accordingly, 532 bytes of data forming one logical page can be simultaneously read or programmed, and one block of memory can store at least eight logical pages. In this example, the physical page and the logical page are the same, but generally this is not essential. For example, the physical page may include a plurality of logical pages. A logical page is usually the smallest set of storage elements that are written (programmed) simultaneously. In the case of a multi-state storage element, if each storage element stores 2 bits of data and each of these 2 bits is stored on a separate page, one block stores 16 logical pages. Other sized blocks and pages can also be used.

ABLアーキテクチャ又は奇数−偶数アーキテクチャの何れの場合も、p−ウェルを(例えば20Vの)消去電圧に上昇させ、選択されたブロックのワードラインを接地することによって、記憶素子を消去できる。ソースライン及びビットラインはフローティングされる。消去処理は、ブロックに対して一度に、または、ある種のフラッシュメモリデバイスでは、少数のブロックに対して一度に実行される。電子は、記憶素子のフローティングゲートからp−ウェル領域に移され、記憶素子のVTHが負となる。 In either the ABL architecture or the odd-even architecture, the storage element can be erased by raising the p-well to an erase voltage (eg, 20V) and grounding the word line of the selected block. The source line and bit line are floated. The erase process is performed once for a block or, for some flash memory devices, for a small number of blocks. Electrons from the floating gates of the storage elements transferred into p- well region, V TH of the storage elements becomes negative.

読出し及び検証動作では、選択ゲート(SGDとSGS)は2.5〜4.5Vの範囲の電圧に接続され、未選択ワードラインは(一般的に4.5〜6Vの範囲の)読出しパス電圧VREADまで上昇され、これによりトランジスタをパスゲートとして動作させる。選択ワードラインは各読出し及び検証動作について特定されているレベルの電圧に接続され、接続された記憶素子のVTHがそのレベル以上であるか以下であるかが判断される。例えば、2レベル記憶素子の読出し動作において、VTHが0Vより大きいか否かを検出するために、選択ワードラインは接地されていてもよい。2レベル記憶素子の検証動作において、例えば、VTHが少なくとも0.8Vに達したか否かを検証するために、選択ワードラインは0.8Vに接続されていてもよい。ソースとp−ウェルには0Vが印加される。選択ビットラインは、例えば0.7V等のレベルにプレチャージされる。VTHがワードラインの読出し又は検証レベルよりも大きい場合、対象の記憶素子に関連付けられているビットラインの電位レベルは、記憶素子が導通しないために、高レベルに維持される。一方で、VTHが読出し又は検証レベルよりも小さかった場合、記憶素子が導通してビットラインを放電するために、対象のビットラインの電位レベルは、(例えば0.5V等の)低レベルに減少する。このように、1つの実施可能な態様においては、記憶素子の状態はビットラインに接続された電圧コンパレータ検出アンプによって検出することができる。プログラミングと同様に、読出し動作はページ単位で行うことができる。 For read and verify operations, the select gates (SGD and SGS) are connected to a voltage in the range of 2.5-4.5V, and the unselected word lines are read pass voltages (typically in the range of 4.5-6V). The voltage is raised to V READ , thereby operating the transistor as a pass gate. The selected word line is connected to a voltage at a level specified for each read and verify operation, and it is determined whether the V TH of the connected storage element is above or below that level. For example, in a read operation of a two-level storage element, the selected word line may be grounded to detect whether VTH is greater than 0V. In a verify operation of a two-level storage element, for example, to V TH to verify whether it has reached at least 0.8 V, the selected word line may be connected to 0.8V. 0V is applied to the source and p-well. The selected bit line is precharged to a level such as 0.7V. When V TH is greater than the word line read or verify level, the potential level of the bit line associated with the subject storage element is maintained at a high level because the storage element is not conducting. On the other hand, if V TH is smaller than the read or verify level, the potential level of the target bit line is lowered to a low level (for example, 0.5 V, etc.) because the storage element conducts and discharges the bit line. Decrease. Thus, in one possible embodiment, the state of the storage element can be detected by a voltage comparator detection amplifier connected to the bit line. Similar to programming, read operations can be performed on a page-by-page basis.

上記の消去、読出し及び検証動作の詳細は、従来の既知の技法に従って実行される。よって、説明された詳細の多くの部分は、当業者によって変更可能である。その他の消去、読出し及び検証技術が用いられてもよい。   The details of the erase, read and verify operations described above are performed according to conventional known techniques. Thus, many of the details described can be varied by one skilled in the art. Other erase, read and verify techniques may be used.

図6a〜cは、プログラムディスターブが1組の不揮発性記憶素子の閾値電圧分布をどのように変更可能であるのか、また、この問題に対処するためのプロセスを表す。図6aは、1組の不揮発性記憶素子の初期の閾値電圧分布とこれに対応する検証電圧及び読み出し電圧を表わす。記憶素子の閾値電圧は、記憶素子の制御ゲートに印加された場合にチャネルの状態を非導通状態から導通状態へと変化させる最も低い電圧である。この電圧は、フローティングゲートにトラップされている負の電荷量に影響される。この電荷量が多いほど、セルの閾値電圧は上昇する。   FIGS. 6a-c illustrate how program disturb can change the threshold voltage distribution of a set of non-volatile storage elements and a process for addressing this issue. FIG. 6a represents the initial threshold voltage distribution of a set of non-volatile storage elements and the corresponding verify and read voltages. The threshold voltage of the storage element is the lowest voltage that, when applied to the control gate of the storage element, changes the channel state from a non-conductive state to a conductive state. This voltage is affected by the amount of negative charge trapped in the floating gate. The greater the amount of charge, the higher the threshold voltage of the cell.

最も一般的なマルチレベルセル(MLC)型のデバイスは、ゼロチャージを含むフローティングゲートの4つの電荷量を用いて、状態を4つの電圧レベルで表わすことができるように構成される。このため、MLC記憶素子は、2ビットのデータを記憶する。一般的に、記憶素子あたりのNビットを、2個の電圧レベルで表わすことができる。より最新のデバイスは、8個もしくはそれ以上の電圧レベルを用いることが期待される。記憶素子あたりのビット数を大きくすることで、高いデータ密度を有するフラッシュデバイスの製造が可能となり、フラッシュデバイスの全体的な単価コストを減少させることができる。マルチレベルデータストレージは、NROMデバイス等で用いられるマルチビットデータストレージからは区別されることに留意されたい。そのようなマルチビットデータストレージは、0または1にそれぞれ対応する電荷レベルを用いる。マルチレベルデータストレージは、例えば、MLC記憶素子が2ビットのデータを記憶する場合であれば、00、01、10、11に対応する電荷レベル範囲を用いる。 The most common multi-level cell (MLC) type device is configured such that the state can be represented by four voltage levels using four charge quantities of the floating gate including zero charge. Therefore, the MLC storage element stores 2-bit data. In general, N bits per storage element can be represented by 2 N voltage levels. More modern devices are expected to use 8 or more voltage levels. By increasing the number of bits per storage element, a flash device having a high data density can be manufactured, and the overall unit cost of the flash device can be reduced. Note that multi-level data storage is distinct from multi-bit data storage used in NROM devices and the like. Such multi-bit data storage uses charge levels corresponding to 0 or 1, respectively. Multi-level data storage uses, for example, charge level ranges corresponding to 00, 01, 10, and 11 when the MLC storage element stores 2-bit data.

4つの状態を有するMLCデバイスの読み出し動作では3つの基準電圧レベルを用いる。8つの状態を有するMLCデバイスの読み出し動作では7つの基準電圧レベルを用いる。一般的に、2個の状態で表される1つのセルあたりにNビットを記憶するデバイスでは、読み出し動作に2N−1個の基準電圧レベルを用いる。 In a read operation of an MLC device having four states, three reference voltage levels are used. A read operation of an MLC device having 8 states uses 7 reference voltage levels. In general, a device that stores N bits per cell represented by 2 N states uses 2 N-1 reference voltage levels for the read operation.

図6aでは、グラフは閾値電圧を表わすx軸と記憶素子の数を表わすy軸を有する。例示されたMLCデバイスは、0〜7の8個の状態と、これらに対応するVV1〜VV7の検証電圧と、VR1〜VR7の読み出し電圧とを有している。各状態の分布は比較的狭く、各記憶素子は所望の電圧グループにプログラムされている。さらに、例えばVR1〜VR7等の記憶素子の読み出しに対応する基準電圧は、これらの電圧グループの間に位置しており、特に1つ前の分布より少し高い値となっている。例えば、VR1は状態0と状態1の間の値であり、状態0の分布より少し高い。VR2は状態1と状態2の間の値であり、状態1の分布より少し高い。 In FIG. 6a, the graph has an x-axis representing the threshold voltage and a y-axis representing the number of storage elements. The illustrated MLC device has eight states 0 to 7, corresponding verification voltages V V1 to V V7 , and read voltages V R1 to V R7 . The distribution of each state is relatively narrow, and each storage element is programmed to a desired voltage group. Further, for example, the reference voltage corresponding to the reading of the storage elements such as V R1 to V R7 is located between these voltage groups, and is a little higher than the previous distribution. For example, VR1 is a value between state 0 and state 1, which is slightly higher than the distribution of state 0. VR2 is a value between state 1 and state 2 and is slightly higher than the distribution of state 1.

上述したように、プログラムディスターブは閾値電圧分布を大きく変化させてしまうことがある。プログラムディスターブは、比較的大きいプログラム電圧が選択されたワードラインに印加されるために、選択された記憶素子と同じワードライン上の未選択の記憶素子が意図しないプログラミングをうけるときに生じるものである。すなわち、プログラムディスターブは、記憶素子の閾値電圧を上昇させる傾向にある。さらに、例えば消去状態等の最も低い状態は最も上昇されやすく、このため、1組の記憶素子が経験したプログラムディスターブの量を表わすワーストケースの指標となる。フラッシュメモリデバイスに行われた測定では、プログラムディスターブの量は異なる記憶装置毎、同じデバイス内の異なるブロック毎、あるいは同じブロック内の異なるワードライン毎に大きくばらついていることが示されている。(例えば、最小エラー数等の)信頼性という観点から、全ての記憶装置の最良のパフォーマンスを確保するために、プログラムディスターブを全てのデバイスにおいて同じようなレベルでキープするか、あるいは、(検証及び/または読み出し)電圧レベルを、所定のデバイス、ブロック、及び/又はワードラインのプログラムディスターブの実際の値に適応させることが好ましい。以下で提供される技術はプログラムディスターブをコントロールし、プログラムディスターブを検証及び/または読み出し電圧レベルに一致させるためのものである。より一般的には、この技術は、記憶素子の組にアクセスするために用いられる検証及び/または読み出し電圧レベルをカスタマイズするものである。   As described above, the program disturb may greatly change the threshold voltage distribution. Program disturb occurs when an unselected storage element on the same word line as the selected storage element undergoes unintentional programming because a relatively large program voltage is applied to the selected word line. . That is, the program disturb tends to increase the threshold voltage of the storage element. Further, for example, the lowest state, such as the erased state, is most likely to be raised, thus providing a worst-case indicator of the amount of program disturb experienced by a set of storage elements. Measurements made on flash memory devices show that the amount of program disturb varies widely from one storage device to another, from different blocks in the same device, or from different word lines in the same block. To ensure the best performance of all storage devices (eg, minimum error count), keep program disturb at a similar level on all devices, or (verification and Preferably, the (or read) voltage level is adapted to the actual value of the program disturb for a given device, block and / or word line. The techniques provided below are for controlling program disturb and for matching program disturb to verify and / or read voltage levels. More generally, this technique customizes the verification and / or read voltage levels used to access the set of storage elements.

図6bは、プログラムディスターブを受けている1組の不揮発性記憶素子の閾値電圧分布を表わす。図示される読み出し基準電圧VR1〜VR7は、図6aに示したものと同一である。図6aに示した分布に比べて、ここでは、プログラムディスターブのために、より低い状態の閾値電圧分布ほど、分布が広くなっており、また、分布が高い方にシフトしている。プログラムディスターブは、主に低い電圧状態において顕著であり、一般的に高い方の状態はプログラムディスターブによる障害が起きにくい。いくつかの例では、隣接するデータ状態の分布がオーバーラップすることがある。ここでは、仮に、図6aに示したものと同じ読み出し電圧が、図6bに表わされるデータ状態を読み出すのに用いられた場合に、少なくともこの例における読み出し電圧VR1〜VR5について、読み出しエラーが起こり得ることが理解される。各読み出し電圧VR1〜VR5は、低い方の閾値電圧分布とオーバーラップする。反対に、この例における読み出し電圧VR6及びVR7は、低い方の閾値電圧分布とオーバーラップしない。 FIG. 6b represents the threshold voltage distribution of a set of non-volatile storage elements that are undergoing program disturb. The read reference voltages V R1 to V R7 shown are the same as those shown in FIG. 6a. Compared to the distribution shown in FIG. 6a, here, the threshold voltage distribution in a lower state is wider because of program disturb, and the distribution is shifted to a higher one. Program disturb is prominent mainly in a low voltage state, and generally a higher state is less likely to cause a failure due to program disturb. In some examples, adjacent data state distributions may overlap. Here, if the same read voltage as shown in FIG. 6a is used to read the data state shown in FIG. 6b, at least the read voltages V R1 to V R5 in this example will cause a read error. It is understood that this can happen. Each read voltage V R1 to V R5 overlaps with the lower threshold voltage distribution. Conversely, the read voltages V R6 and V R7 in this example do not overlap with the lower threshold voltage distribution.

さらに、プログラムディスターブの影響は、記憶素子の組ごとに異なることがある。例えば、異なる記憶素子の組の閾値電圧分布は、デバイス、ブロック、及び/又はワードラインを単位として異なっていることがある。よって、固定された同一の読み出し電圧が用いられる場合、これにより、読み出し動作中のエラー発生等の不適切な結果が生じてしまうことがある。さらに、温度変化やプログラム/消去サイクルの回数、NANDストリングのソース又はドレインに対する記憶素子の近さ等の、ブロック内の記憶素子の相対的位置等の、その他の要因がプログラムディスターブに影響することがある。   In addition, the effect of program disturb may vary from one set of storage elements to another. For example, the threshold voltage distributions for different sets of storage elements may differ on a device, block, and / or word line basis. Thus, when the same fixed read voltage is used, this may cause an inappropriate result such as an error during the read operation. In addition, other factors can affect program disturb, such as temperature changes, the number of program / erase cycles, and the relative position of the storage element within the block, such as the proximity of the storage element to the source or drain of the NAND string. is there.

図6cは、図6bの閾値電圧分布の測定とこれに対応する読み出し電圧のセッティングを示す。   FIG. 6c shows the measurement of the threshold voltage distribution of FIG. 6b and the corresponding read voltage setting.

実際の閾値分布の測定プロセスは、記憶装置を個別の読み出し動作で読み出す処理を含む。ここで、読み出し動作の回数は、要求される分布測定の分解能によって異なる。例えば、記憶装置が1つの記憶素子につき3ビットとして8個の状態を用いており、1つの状態につき10ポイントの分解能が要求される場合、79個の電圧閾値レベルのそれぞれについて読み出し動作が行われる。図6cでは、各点が読み出しポイントを示しており、実線は図6bのそれと同様である。各ビンの高さが、閾値電圧がそのビンにより特定される範囲内に存在する記憶素子の数を表わすヒストグラムが提供される。例えば、任意の記憶素子の組に最も適切な読み出しレベルを、隣接する状態の間の最小値として特定することができる。最小値の幅が存在する場合、2つのデータ状態の間における最も適切な読み出しレベルは、2つの状態のうち低い方の分布より少し高い値とすることができる。ここでは、読み出しレベルV´R1〜V´R5は、図6bのレベルに対して最適レベルにシフトされており、この一方で、VR6及びVR7は変化していない。仮に、図6bの読み出しレベルが用いられた場合、実際の読み出しエラーが生じ得る。一般的に、最大限のデータ保持シフトを許容するために、読み出しレベルは、1つ前のレベルにできる限り近くすることが好ましい。 The actual threshold distribution measurement process includes a process of reading the storage device in a separate read operation. Here, the number of read operations varies depending on the required resolution of distribution measurement. For example, if the storage device uses 8 states as 3 bits per storage element and a resolution of 10 points is required per state, a read operation is performed for each of 79 voltage threshold levels. . In FIG. 6c, each point represents a read point, and the solid line is similar to that of FIG. 6b. A histogram is provided in which the height of each bin represents the number of storage elements whose threshold voltage is within the range specified by that bin. For example, the read level most appropriate for any set of storage elements can be specified as the minimum value between adjacent states. If there is a minimum width, the most appropriate read level between the two data states can be a little higher than the lower of the two states. Here, the read levels V ′ R1 to V ′ R5 are shifted to the optimum level with respect to the level of FIG. 6b, while V R6 and V R7 are not changed. If the read level of FIG. 6b is used, an actual read error can occur. In general, it is preferred that the read level be as close as possible to the previous level in order to allow the maximum data retention shift.

一般的に、1組の記憶素子の「閾値電圧分布」を取得することは、記憶素子の閾値電圧範囲を複数のサブレンジに分割し、それから各サブレンジにおける記憶素子の発現数をそれぞれカウントする処理を含む。1組の記憶素子の中の全て、あるいは、一部の記憶素子の発現のみをカウントしてもよい。また、サブレンジ(例えば、1つ又は複数のサブレンジ等)の一部についての発現のみをカウントし、その結果から他のサブレンジについて予想することも可能である。   In general, acquiring the “threshold voltage distribution” of a set of storage elements is a process of dividing the threshold voltage range of the storage elements into a plurality of subranges and then counting the number of occurrences of the storage elements in each subrange. Including. The expression of all or some of the memory elements in a set of memory elements may be counted. It is also possible to count only the expression for a part of a subrange (for example, one or a plurality of subranges, etc.), and predict other subranges from the result.

1つのアプローチでは、電流デバイス、ブロック、及び/又はワードラインのプログラムディスターブのオンライン評価と、評価されたプログラムディスターブに対する電圧レベル設定の調整を行うことができる。製造された記憶装置のそれぞれの実際のプログラムディスターブは、例えば、ブロック単位で測定することができ、(異なるデータ状態のための読み出し、検証電圧の)電圧レベル設定とそのブロックにおいて測定されたプログラムディスターブとを適合させることができる。この「ブロック単位で適合された」電圧レベル設定は、後続のプログラム及び読み出し動作で用いることができる。プログラムディスターブに対処するために、検証電圧又は読み出し電圧、あるいはその両方を修正しなければならない。   In one approach, on-line evaluation of current device, block, and / or wordline program disturb and adjustment of voltage level settings for the evaluated program disturb can be performed. The actual program disturb of each manufactured storage device can be measured, for example, on a block-by-block basis, with the voltage level setting (for read and verify voltages for different data states) and the program disturb measured in that block. And can be adapted. This "block adapted" voltage level setting can be used in subsequent program and read operations. To address program disturb, the verify voltage and / or read voltage must be modified.

プログラムディスターブの値は、全てのデータ状態が存在するページにおける消去状態の閾値電圧分布の幅として定義することができる。即ち、そのページにプログラムされたデータは、全ての可能なデータ状態の表現を含んでいる。閾値電圧分布は、ECC訂正能力に応じて、セルの所定のパーセンテージとして考慮することができる。プログラムディスターブの値は、例えば、データを記憶装置にランダムにプログラミングし、全てのデータ状態の閾値電圧分布を読み出し、消去状態の幅を特定することによって得ることができる。このプログラミングには、デフォルトの電圧レベル設定を用いることができる。   The value of program disturb can be defined as the width of the threshold voltage distribution in the erased state in a page where all data states exist. That is, the data programmed into the page contains a representation of all possible data states. The threshold voltage distribution can be considered as a predetermined percentage of cells depending on the ECC correction capability. The program disturb value can be obtained by, for example, randomly programming data in the storage device, reading the threshold voltage distribution of all data states, and specifying the width of the erase state. Default voltage level settings can be used for this programming.

一旦消去レベル閾値電圧分布の幅を得ると、残りのデータ状態に対する電圧レベル設定が決定される。電圧レベルの計算には、「固定プログラムディスターブ」方式と「固定電圧ウィンドウ」方式の2つのアプローチが存在する。これらのアプローチはいずれも同じ原理を有している。   Once the width of the erase level threshold voltage distribution is obtained, the voltage level settings for the remaining data states are determined. There are two approaches for calculating the voltage level: a “fixed program disturb” method and a “fixed voltage window” method. Both of these approaches have the same principle.

第1に、消去状態以外のデータ状態のすべてについて利用可能な電圧ウィンドウを特定する。利用可能な電圧ウィンドウは、消去状態の「端部」(最も右寄りの)の電圧と最も高いデータ状態(8個のデータ状態の場合には、VV7である。)の検証電圧との間の距離で定義することができる。また、電圧ウィンドウは、消去状態の(最も左寄りの)最も低い電圧から開始されるものとして定義することもできる。 First, identify available voltage windows for all data states except the erased state. The available voltage window is between the “edge” (rightmost) voltage of the erased state and the verification voltage of the highest data state (V V7 for 8 data states). Can be defined by distance. The voltage window can also be defined as starting from the lowest voltage (leftmost) in the erased state.

第2に、データ状態の相対的なデータ保持シフトに応じた割合で、ウィンドウをデータ状態毎に分割する。(例えば、書き込み/消去サイクル等の)ブロックにおける特定の状況における記憶素子のデータ保持シフトと、所定の保持時間は、記憶素子の閾値電圧に依存しており、閾値が高いほどシフトが大きくなる。この依存の定量的特性は技術に特有のものであり、例えば、試験及び/または理論計算によって得ることができる。利用可能な電圧ウィンドウのデータ状態間での分割は、このような特性に従って行ってもよい。   Second, the window is divided for each data state at a rate corresponding to the relative data holding shift of the data state. The data retention shift of the storage element in a particular situation in the block (eg, a write / erase cycle) and the predetermined retention time depend on the threshold voltage of the storage element, and the shift increases as the threshold increases. This dependent quantitative characteristic is technically specific and can be obtained, for example, by testing and / or theoretical calculations. The division between the data states of the available voltage window may be performed according to such characteristics.

第3に、上記に基づいて、各状態に対する読み出しレベルと検証レベルを決定する。上述の2つのアプローチの違いか、以下の通りである。固定プログラムディスターブ方式では、プログラムディスターブの値は、(例えば、最も高いデータ状態の検証電圧レベルを修正することによって)電圧ウィンドウを修正することにより予め決められた固定値に調整される。プログラムディスターブ現象は、プログラミング中にワードラインに印加される高いプログラム電圧によって消去状態の記憶素子に与えられるストレスによって引き起こされる。さらに、プログラムディスターブは、例えば選択された記憶素子が最も高いデータ状態にプログラムされる場合等の、ワードラインに印加されるプログラム電圧が高い場合により高くなる。これは、プログラムディスターブは、最も高いデータ状態の検証レベルを変更することにより制御可能であることを意味する。所望のプログラムディスターブ値を得るために、繰り返し処理が用いられてもよい。例えば、プログラムディスターブが高すぎる場合には、最も高いデータ状態の検証レベルを減少させることができる。そして、(例えば、閾値電圧分布を判断することによって)プログラムディスターブを再度判断し、所望のレベルに近いか否かを判断することができる。仮に、プログラムディスターブが未だ高すぎる場合には、最も高いデータ状態の検証レベルを再度減少させることができる。   Third, based on the above, the read level and verification level for each state are determined. The difference between the above two approaches is as follows. In the fixed program disturb scheme, the program disturb value is adjusted to a predetermined fixed value by modifying the voltage window (eg, by modifying the verification voltage level of the highest data state). The program disturb phenomenon is caused by stress applied to the erased storage element by a high program voltage applied to the word line during programming. In addition, program disturb is higher when the program voltage applied to the word line is high, such as when the selected storage element is programmed to the highest data state. This means that program disturb can be controlled by changing the verification level of the highest data state. An iterative process may be used to obtain the desired program disturb value. For example, if the program disturb is too high, the verification level of the highest data state can be reduced. Then, the program disturb can be determined again (for example, by determining the threshold voltage distribution) to determine whether it is close to the desired level. If the program disturb is still too high, the verification level of the highest data state can be reduced again.

すべての状態の検証レベルは、線形又は非線形の既知の関数及び利用可能な電圧ウィンドウによって互いに関連付けられることに留意されたい。例えば、より高い状態ではデータ保持の損失が大きくなることから、概して、検証レベルは低い状態に対するものよりも高い状態に対するものの方が比較的大きいスペースを有するよう設定される。このため、一旦全体の電圧ウィンドウが既知となると、読み出し又は検証電圧を計算することができる。   Note that the verification levels of all states are related to each other by known functions, linear or nonlinear, and available voltage windows. For example, because the loss of data retention is greater at higher conditions, the verification level is generally set to have a relatively large space for the higher state than for the lower state. Thus, once the overall voltage window is known, the read or verify voltage can be calculated.

固定電圧ウィンドウ方式では、最も高い状態の検証レベルがデフォルト値で固定されたまま維持され、ワードライン間、ブロック間、及び/又はデバイス間で異なることがあるものの、プログラムディスターブが引き起こされ、これが測定される。プログラムディスターブの値は変化するので、残りのデータ状態の状態幅も変化する。   In the fixed voltage window method, the highest level of verification remains fixed at the default value, which may cause program disturb, which may vary between word lines, blocks, and / or devices, but this is measured Is done. Since the program disturb value changes, the state width of the remaining data state also changes.

例示したアプローチでは、電圧レベル設定を調整するプロセスは、記憶装置の製造段階で行われてもよいし、記憶装置がエンドユーザに向けて出荷されてから行われてもよい。さらに、必要であれば、調整は、異なる機会に繰り返し行われてもよい。あるいは、調整は、記憶装置の寿命のうちで一度だけ行われてもよい。実際、プログラムディスターブは記憶装置が追加的なプログラム/消去サイクルを経ていくにつれて減少するため、後続的な調整が不要である場合もある。   In the illustrated approach, the process of adjusting the voltage level setting may occur during the manufacturing stage of the storage device, or after the storage device is shipped to the end user. Further, if necessary, the adjustment may be repeated at different occasions. Alternatively, the adjustment may be performed only once during the lifetime of the storage device. Indeed, since program disturb decreases as the storage device goes through additional program / erase cycles, subsequent adjustments may not be necessary.

例えば、あるデバイスがエンドユーザに向けて出荷された後には、例えば温度変化、プログラムサイクルが所定回数行われる、最後のデータ書き込みから所定時間が経過する等のような異なるタイミングをきっかけとして調整が実行されてもよい。適切な追跡コンポーネント及び/又はプロセスが、この目的のために提供される。1つのアプローチでは、調整された電圧値を、フラッシュの内部パラメータをヒューズROMで記憶するのと同様の信頼性のあるプログラミング手法を用いて、デバイスブロックごとに記憶装置に記憶させることができる。これらのブロックに特有な値は、ブロックがプログラミングあるいは読み出しのために指定されているときに、記憶装置の通常動作において取得して用いることができる。   For example, after a device is shipped to an end user, adjustments are triggered by different timings, such as a temperature change, a program cycle is performed a predetermined number of times, or a predetermined time has elapsed since the last data write. May be. Appropriate tracking components and / or processes are provided for this purpose. In one approach, the adjusted voltage value can be stored in a storage device for each device block using a reliable programming technique similar to storing flash internal parameters in a fuse ROM. Values specific to these blocks can be obtained and used in normal operation of the storage device when the block is designated for programming or reading.

したがって、1つのアプローチでは、カスタマイズされた読み出し及び/又は検証電圧を、例えば製造時等に、記憶装置の記憶素子の組のために、一度に特定することができる。電圧のセットは、記憶装置内の不揮発性記憶位置に記憶することができ、読み出し又はプログラミング動作が実行されるたびに、後続してアクセスされる。詳細については、図9a〜9Cおよび図10を参照されたい。   Thus, in one approach, customized read and / or verify voltages can be specified at one time for a set of storage elements of a storage device, such as during manufacturing. The set of voltages can be stored in a non-volatile storage location within the storage device and subsequently accessed each time a read or programming operation is performed. See FIGS. 9a-9C and FIG. 10 for details.

図7は、プログラム電圧と検証電圧のパルストレイン700を示している。プログラミング電圧は、例えば、VPGM1の振幅を有するプログラムパルス705は、これに次いでVPGM2の振幅を有するプログラムパルス710、その次にVPGM3の振幅を有するプログラムパルス715等といったように、ステップサイズ毎にその大きさを増大させてゆく。各プログラムパルスの後に、波形720、725、730として表されるように、VV1〜VV7の検証電圧が印加される。これらの検証電圧は、図6a〜6cに関連して説明した任意の記憶素子の組のためにカスタマイズすることができる。 FIG. 7 shows a pulse train 700 of program and verify voltages. For example, the programming voltage may be set for each step size, such as a program pulse 705 having an amplitude of V PGM1 , followed by a program pulse 710 having an amplitude of V PGM2 , then a program pulse 715 having an amplitude of V PGM3 , and so on. The size will be increased. After each program pulse, verification voltages of V V1 to V V7 are applied as represented by waveforms 720, 725, and 730. These verification voltages can be customized for any of the storage element sets described in connection with FIGS.

書き込み電圧もまた、異なる組の不揮発性記憶素子ごとにカスタマイズすることができる。図8aは、プログラミング中に利用可能な一連の書き込み又はプログラム電圧を表す。中間検証電圧は、明確さのために省略している。上述したように、書き込み電圧は、初期レベルVPGM−INITIALからスタートし、記憶素子がそれぞれに対応する状態にプログラムされるか、又は、最終的な電圧VPGM−FINALに達するまで、ステップサイズ毎にその振幅が増大する。1つのアプローチでは、1つまたは複数の書き込み電圧パラメータを、記憶素子の特定の組のためにカスタマイズすることができる。例えば、低い状態の1組の記憶素子の閾値電圧分布が、そのような状態の閾値電圧の多くが期待値よりも大きいか、閾値分布の幅が期待よりも高いことを示す場合に、プログラミング効果が平均よりも強いと結論付けることができる。このような場合には、VPGM−INITIAL及び/又はステップサイズを小さくすることで、書き込み電圧を下げることができる。いくつかの例においては、最大許容VPGM−FINAL又はそれよりも低いレベルのパルスを繰り返してもよい。例えば、すべての記憶素子がそれぞれの対応する状態にプログラムされる以前にVPGM−FINALに達してしまった場合等の、1組の記憶素子のプログラミング効果が平均よりも弱い場合には、類似した調整を行うことができる。そのような調整は、VPGM−INITIAL、ステップサイズ、及び/又は最大許容VPGM−FINALを大きくすることを含む。ステップサイズは分布状態の幅に直接的に影響するため、各分布の幅が平均よりも広い場合にはステップサイズを減少させることができ、また、仮に、各分布の幅が平均よりも狭い場合にはステップサイズを増大させることができることに留意されたい。例えば、これにより、より早いプログラミングをすることができる。 The write voltage can also be customized for different sets of non-volatile storage elements. FIG. 8a represents a series of write or program voltages available during programming. Intermediate verification voltages are omitted for clarity. As described above, the write voltage starts from the initial level V PGM-INITIAL and is programmed for each step size until the storage elements are programmed to their respective states or reach the final voltage V PGM-FINAL. The amplitude increases. In one approach, one or more write voltage parameters can be customized for a particular set of storage elements. For example, if the threshold voltage distribution of a set of storage elements in a low state indicates that many of the threshold voltages in such a state are greater than expected or the width of the threshold distribution is higher than expected, the programming effect We can conclude that is stronger than average. In such a case, the write voltage can be lowered by reducing VPGM-INITIAL and / or the step size. In some examples, the maximum allowable VPGM-FINAL or lower level pulses may be repeated. Similar if the programming effect of a set of storage elements is weaker than average, for example, if VPGM-FINAL has been reached before all storage elements are programmed to their respective states Adjustments can be made. Such adjustments include increasing V PGM-INITIAL , step size, and / or maximum allowable V PGM-FINAL . Since the step size directly affects the width of the distribution state, the step size can be reduced if the width of each distribution is wider than the average, and if the width of each distribution is narrower than the average Note that the step size can be increased. For example, this allows faster programming.

図8bは、異なる不揮発性記憶素子の組のためにカスタマイズされた書き込み、検証及び読み出し電圧を含むデータを示す。上述したように、書き込み、検証及び/又は読み出し電圧は、異なる記憶素子の組のためにカスタマイズすることができる。各記憶素子にとって最適な電圧を、それ以降の使用のために決定し、記憶することができる。例えば、特定の記憶装置、ブロックワードライン及び/又は記憶装置のワードラインのグループのための電圧は、記憶装置の不揮発性記憶位置に記憶することができる。ここで、第1組の記憶素子「セット1」に対する書込み電圧がVPGM−1により表され、検証電圧がVV1−1、VV2−1等により表され、読み出し電圧がVR1−1、VR2−1等により表される。さらに、VPGM−1は、セット1のVPGM−INITIALとステップサイズとVPGM−FINALのうち1つ以上を表すことができる。3つの変数のそれぞれは、異なる記憶素子のために適合化されてもよい。同様に、第2組の記憶素子「セット2」の書き込み電圧はVPGM−2(例えば、セット2のVPGM−INITIALとステップサイズとVPGM−FINALのうち1つ以上を表す)により表され、検証電圧は、VV2−1、VV2−2等により表され、読み出し電圧はVR1−2、VR2−2等により表される。一般的に、i番目の組の記憶素子「セットi」のプログラム電圧はVPGM−i(例えば、セットiのVPGM−INITIALとステップサイズとVPGM−FINALのうち1つ以上を表す)により表され、検証電圧は、VV1−i、VV2−i等により表され、読み出し電圧はVR1−i、VR2−i等により表される。 FIG. 8b shows data including write, verify and read voltages customized for different sets of non-volatile storage elements. As described above, the write, verify and / or read voltages can be customized for different sets of storage elements. The optimum voltage for each storage element can be determined and stored for subsequent use. For example, the voltages for a particular storage device, block wordline and / or group of storage device wordlines can be stored in a non-volatile storage location of the storage device. Here, the write voltage for the first set of memory elements “set 1” is represented by V PGM-1 , the verification voltage is represented by V V1-1 , V V2-1, etc., and the read voltage is V R1-1 , It is represented by VR2-1 etc. Further, VPGM-1 may represent one or more of set 1, VPGM-INITIAL , step size, and VPGM-FINAL . Each of the three variables may be adapted for a different storage element. Similarly, the write voltage of the second set of storage elements “set 2” is represented by V PGM-2 (eg, representing one or more of V PGM-INITIAL , step size and V PGM-FINAL of set 2). The verification voltage is represented by V V2-1 , V V2-2, etc., and the read voltage is represented by V R1-2 , V R2-2, etc. In general, the program voltage of the i-th set of storage elements “set i” is represented by V PGM-i (eg, representing one or more of V PGM-INITIAL , step size and V PGM-FINAL of set i). The verification voltage is represented by V V1-i , V V2-i, etc., and the read voltage is represented by V R1-i , V R2-i, etc.

図9aは、1組の不揮発性記憶素子の電圧を決定するプロセスを表す。ステップ900では、1組の不揮発性記憶素子について、(例えば、読み出し、検証、及び/又は書き込み電圧等の)電圧のセットを得るためのプロセスを開始する。この組は、例えば、複数のワードラインを有するブロック内で1つ又は複数の特定のワードラインに関連付けられた記憶素子、複数のブロックを有する記憶装置内の特定のブロックに関連付けられた記憶素子、あるいは、特定の記憶装置全体に関連付けられた記憶素子を表すことができる。1つのアプローチでは、ステップ902で、1組の不揮発性記憶素子をランダムなテストデータでプログラムする。テストデータはすべてのデータ状態を含むべきである。例えば、そのようなテストデータは、記憶装置が製造サイトで出荷前に試験される際に利用することができる。記憶装置が出荷された後は、もしテストデータが利用可能でなければ、既存のユーザデータを変わりにプログラムしてもよい。ユーザデータは、すべてのデータ状態を比較的均一に表すように、スクランブルされていてもよい。例えば、任意のブロック等の記憶装置の所定の位置に存在するユーザデータは、例えば、読み出し/検証電圧を決定しようとしている記憶素子の特定の組を含む別のブロック等の別の位置にコピーされることができる。   FIG. 9a represents a process for determining the voltage of a set of non-volatile storage elements. Step 900 begins a process for obtaining a set of voltages (eg, read, verify, and / or write voltages) for a set of non-volatile storage elements. This set includes, for example, storage elements associated with one or more specific word lines in a block having a plurality of word lines, storage elements associated with a specific block in a storage device having a plurality of blocks, Alternatively, a storage element associated with an entire specific storage device can be represented. In one approach, at step 902, a set of non-volatile storage elements is programmed with random test data. Test data should include all data states. For example, such test data can be utilized when the storage device is tested at the manufacturing site prior to shipment. After the storage device is shipped, if the test data is not available, the existing user data may be programmed instead. User data may be scrambled to represent all data states relatively uniformly. For example, user data residing in a given location on a storage device, such as an arbitrary block, is copied to another location, eg, another block containing a specific set of storage elements for which a read / verify voltage is to be determined. Can.

ステップ902の後に、2つのパスのうち1つが実行される。第1のパスでは、ステップ904では、例えば、図6cに示すような異なる増加電圧閾値レベルで読み出し動作を行うことで、1組の記憶素子の閾値電圧分布を特定する。一般に、これはすべてのデータ状態の閾値電圧分布を判断することを含む。ステップ906では、閾値電圧分布に基づいて、1セットの電圧を特定する。例えば、1セットの読み出し電圧は、図6cに示すように、閾値電圧分布の最小値に基づいて決定されてもよい。1セットの検証電圧は、電圧ウィンドウに基づいて決定されてもよい。例えば、電圧ウィンドウは閾値電圧分布から特定することができ、検証電圧は、全体の電圧ウィンドウの制約内で検証電圧間に所望の相対的スペースを付与する関数によって決定することができる。ステップ912では、電圧のセットを識別するデータを不揮発性記憶位置に記憶する。例えば、電圧のセットのデータは、閾値電圧分布を得た記憶装置の記憶素子に記憶することができる。これらの記憶素子は、例えば、ユーザデータを記憶しない。1つのアプローチでは、データは、閾値電圧分布を得たブロックの記憶素子に記憶される。別のアプローチでは、データは、閾値電圧分布を得たワードラインの記憶素子に記憶される。あるいは、記憶装置のコントローラによって用いられる不揮発性記憶位置が用いられてもよい。その他の位置を用いてもよい。   After step 902, one of two passes is performed. In the first pass, in step 904, for example, the threshold voltage distribution of a set of storage elements is specified by performing a read operation at different increased voltage threshold levels as shown in FIG. 6c. In general, this involves determining the threshold voltage distribution for all data states. In step 906, a set of voltages is identified based on the threshold voltage distribution. For example, a set of read voltages may be determined based on the minimum value of the threshold voltage distribution, as shown in FIG. 6c. A set of verification voltages may be determined based on a voltage window. For example, the voltage window can be identified from the threshold voltage distribution, and the verification voltage can be determined by a function that provides the desired relative space between the verification voltages within the constraints of the overall voltage window. In step 912, data identifying the set of voltages is stored in a non-volatile storage location. For example, voltage set data can be stored in a storage element of a storage device that has obtained a threshold voltage distribution. These storage elements do not store user data, for example. In one approach, data is stored in the storage element of the block from which the threshold voltage distribution is obtained. In another approach, the data is stored in the storage elements of the word line from which the threshold voltage distribution is obtained. Alternatively, a non-volatile storage location used by the controller of the storage device may be used. Other positions may be used.

第2のパスでは、ステップ908ですべてのデータ状態よりも少ない記憶素子の組の閾値電圧分布を特定する。例えば、消去状態の閾値電圧分布が特定される。上述したように、消去状態がもっともプログラムディスターブに敏感であることから、この状態の閾値電圧分布の上側エッジを用いてプログラムディスターブのレベルを測定することができる。状態1の適切な読み出しレベルはこの上側エッジに基づいて決定することができ、残りの状態の適切な読み出しレベルは、状態の読み出しレベル間の既知の関係に基づいて決定することができる。すなわち、状態i(i>2)の適切な読み出しレベルを状態1の適切な読み出しレベルに関連付ける関数を用いることができる。また、例えば状態1、2等の、複数のデータ状態について1組の記憶素子の閾値電圧分布を特定し、これらをその他の状態と関連付けることも可能である。関数は、例えば、状態i(i>3)の適切な読み出しレベルを、状態1、2の適切な読み出しレベルに関連付けてもよい。そのような関数は、論理的関係及び/又は経験的試験結果から得ることができる。このため、ステップ910では、すべてのデータ状態よりも少ない数の状態の閾値電圧分布に基づいて電圧のセットを決定する。   In the second pass, step 908 identifies a threshold voltage distribution for a set of storage elements that is less than all data states. For example, the threshold voltage distribution in the erased state is specified. As described above, since the erase state is most sensitive to program disturb, the level of program disturb can be measured using the upper edge of the threshold voltage distribution in this state. The appropriate read level for state 1 can be determined based on this upper edge, and the appropriate read level for the remaining states can be determined based on a known relationship between the read levels of the states. That is, a function that associates an appropriate read level of state i (i> 2) with an appropriate read level of state 1 can be used. It is also possible to specify a threshold voltage distribution of a set of storage elements for a plurality of data states, such as states 1 and 2, and associate these with other states. The function may, for example, associate an appropriate read level for state i (i> 3) with an appropriate read level for states 1 and 2. Such functions can be obtained from logical relationships and / or empirical test results. For this reason, in step 910, a set of voltages is determined based on the threshold voltage distribution of a smaller number of states than all data states.

さらに、電圧のセットのデータは、如何なる態様で表されていてもよい。前述した図8bは、1つの事例を示している。いくつかのケースでは、図示するように、(例えば、セット1、2、...i等の)記憶素子の組の識別子を用いてもよい。例えば、コントローラは、異なる電圧のセットを、対応するデバイスの各ブロックについて、あるいは、デバイス内のブロックのグループについて記憶する記憶位置を有していてもよい。この場合、記憶素子の組の識別子と電圧の各セットとが関連付けられていてもよい。その他のケースでは、電圧のセットの位置は、電圧が印加される記憶素子の識別要素として機能する(例えば、あるブロックに記憶される電圧のセットがそのブロックに印加されるものであり、あるワードラインに記憶される電圧のセットがそのワードラインに印加されるものである。)。別の実施例では、異なるブロックのための電圧のセットが1つのブロックに記憶されていてもよい。この場合、ブロックとそれに対応する電圧のセットを関連付けるために、識別要素が必要とされる。いくつかのケースでは、電圧のセットは、記憶位置におけるそれらの相対的位置によって、それらが印加される記憶素子を識別するように記憶されてもよい。例えば、記憶位置の第1位置は第1ブロックに対応し、記憶位置の第2位置は第2ブロックに対応する等となるよう構成されていてもよい。あるいは、記憶位置はブロック内にあってもよく、この場合、記憶位置の第1位置は第1ワードラインもしくはブロック内のワードラインのセットに対応し、記憶位置の第2位置は第2ワードラインもしくはブロック内のワードラインのセットに対応する等となるよう構成されていてもよい。   Further, the voltage set data may be represented in any manner. FIG. 8b described above shows one case. In some cases, a set of storage element identifiers (eg, sets 1, 2,..., Etc.) may be used, as shown. For example, the controller may have a storage location that stores a different set of voltages for each block of the corresponding device, or for a group of blocks within the device. In this case, the identifier of the set of storage elements may be associated with each set of voltages. In other cases, the position of a set of voltages serves as an identification element for a storage element to which a voltage is applied (eg, a set of voltages stored in a block is applied to that block, and a word A set of voltages stored on a line is what is applied to that word line.) In another embodiment, a set of voltages for different blocks may be stored in one block. In this case, an identification element is required to associate a block with a corresponding set of voltages. In some cases, the set of voltages may be stored to identify the storage elements to which they are applied by their relative position at the storage location. For example, the first position of the storage position may correspond to the first block, the second position of the storage position may correspond to the second block, and the like. Alternatively, the storage location may be in a block, where the first location of the storage location corresponds to the first word line or set of word lines in the block, and the second location of the storage location is the second word line. Alternatively, it may be configured to correspond to a set of word lines in the block.

また、電圧の絶対値が記憶されていてもよく、基準となる電圧のセット又は単一の基準値からのオフセットを表すオフセット値が記憶されていてもよい。あるいは、例えば、デジタル−アナログコンバーターに入力されるバイナリコードワード等の、電圧回路を直接的に制御するのに用いられるデータが記憶されていてもよい。いずれの場合にも、そのようなデータは電圧のセットを表すものとして理解される。   Moreover, the absolute value of a voltage may be memorize | stored and the offset value showing the offset from the set of the voltage used as a reference | standard, or a single reference value may be memorize | stored. Alternatively, for example, data used to directly control the voltage circuit such as a binary code word input to the digital-analog converter may be stored. In any case, such data is understood as representing a set of voltages.

ここで提供される技術は、デバイスが経験した閾値電圧変化を追跡する目的で非ユーザデータを記憶する追加的な記憶素子である基準記憶素子の使用を必要としないという利点を有する。基準記憶素子は、記憶装置内で、ユーザデータを記憶する記憶素子に加えて余分なスペースを占有する。基準記憶素子は、データのページが読み出される度に調整が行われるように、典型的には「動作中」に読み出される。この場合、後に利用するために電圧のセットを不揮発性記憶位置に記憶することは行われない。さらに、一般に、基準記憶素子は閾値電圧分布の測定を行わない。基準記憶素子では、第2の非重複な記憶素子の組の電圧を決定するのに用いるために、例えば基準記憶素子等の、1組の記憶素子について測定が行われる。反対に、ここで提供される技術では、後に電圧を用いてアクセスされる同一の組の記憶素子のために、測定が行われ、電圧が決定される。   The technique provided herein has the advantage of not requiring the use of a reference storage element, which is an additional storage element that stores non-user data for the purpose of tracking threshold voltage changes experienced by the device. The reference storage element occupies extra space in the storage device in addition to the storage element for storing user data. The reference storage element is typically read “in operation” so that adjustments are made each time a page of data is read. In this case, the set of voltages is not stored in a non-volatile storage location for later use. Further, in general, the reference storage element does not measure the threshold voltage distribution. In the reference storage element, a measurement is performed on a set of storage elements, such as a reference storage element, for use in determining the voltage of the second non-overlapping set of storage elements. Conversely, in the technique provided herein, measurements are taken and voltages are determined for the same set of storage elements that are subsequently accessed using voltages.

図9bは、図9aのプロセスによってあらかじめ決められた電圧を用いて1組の不揮発性記憶素子のユーザデータにアクセスするプロセスを表す。1つのアプローチでは、アクセス処理は、記憶素子がユーザへ出荷されてから行われてもよい。すなわち、デバイスが製造され、ユーザに使用されるホストシステムにインストールされてからであってもよい。ステップ920では、1組の不揮発性記憶素子に対して(例えばプログラム、検証、又は読み出し等の)動作を開始する。ステップ922では、不揮発性記憶位置から電圧のセットを取得する。ステップ924では、その電圧のセットを用いて1組の不揮発性記憶素子のユーザデータにアクセスする。このようなアクセスは、プログラミング/検証又は読み出しを含んでいてもよい。   FIG. 9b represents a process for accessing user data in a set of non-volatile storage elements using voltages predetermined by the process of FIG. 9a. In one approach, the access process may occur after the storage element is shipped to the user. That is, it may be after the device is manufactured and installed in the host system used by the user. In step 920, an operation (eg, program, verify, or read) is started for a set of non-volatile storage elements. In step 922, a set of voltages is obtained from the non-volatile storage location. In step 924, the set of voltages is used to access user data in a set of non-volatile storage elements. Such access may include programming / verification or reading.

図9cは、複数組の不揮発性記憶素子の電圧を決定するプロセスを表す。上述したように、電圧は、単一の記憶装置内、又は異なる記憶装置間において、異なる組の記憶素子についてカスタマイズすることができる。これらのステップの多くは図9aのものと類似する。ステップ930では、記憶装置内の1組又は複数組の不揮発性記憶素子を選択する。ステップ932では、対応する電圧のセットを取得するプロセスを開始する。ステップ934では、前述した組の不揮発性記憶素子をランダムテストデータでプログラムする。ステップ936では、一又は複数組の不揮発性記憶素子の閾値電圧分布を特定する。ステップ938では、その閾値電圧分布に基づいて、電圧のセットを特定する。ステップ940では、現在選択されている1組又は複数組の不揮発性記憶素子に対応する電圧のセットを、不揮発性記憶位置に記憶する。判断ステップ942では、次の記憶素子が記憶装置内に存在する場合には、プロセスはステップ930へと進み、次の1組又は複数組の不揮発性記憶素子を選択する。次の記憶素子が記憶装置内に存在しない場合には、プロセスは判断ステップ946へと進む。例えば、製造する環境において複数の記憶装置が分析されるようなときであって、電圧を特定する必要のある次の記憶装置が存在する場合、プロセスはステップ930へと進む。ステップ946で次の記憶装置が存在しない場合には、プロセスはステップ948で終了する。   FIG. 9c represents a process for determining voltages for multiple sets of non-volatile storage elements. As described above, the voltage can be customized for different sets of storage elements within a single storage device or between different storage devices. Many of these steps are similar to those of FIG. 9a. In step 930, one or more sets of non-volatile storage elements in the storage device are selected. In step 932, the process of obtaining a corresponding set of voltages begins. In step 934, the set of non-volatile storage elements is programmed with random test data. In step 936, the threshold voltage distribution of one or more sets of nonvolatile memory elements is identified. In step 938, a set of voltages is identified based on the threshold voltage distribution. In step 940, a set of voltages corresponding to the currently selected set or sets of non-volatile storage elements is stored in a non-volatile storage location. At decision step 942, if the next storage element is present in the storage device, the process proceeds to step 930 to select the next set or sets of non-volatile storage elements. If the next storage element is not present in the storage device, the process proceeds to decision step 946. For example, when multiple storage devices are being analyzed in the manufacturing environment and there is a next storage device that needs to be identified, the process proceeds to step 930. If the next storage device does not exist at step 946, the process ends at step 948.

例えば、上記プロセスにおけるそれぞれのパスでは、記憶素子の1つのワードライン、1組のワードライン、1つのブロック、あるいは1組のブロックについて、電圧のセットが取得されてもよい。例えば、任意の電圧のセットを、単独のワードライン又はワードラインの組の記憶素子、あるいは単独のブロック又はブロックの組の記憶素子に印加してもよい。さらに、例えば、書き込み、検証、及び/又は、読み出しのための複数セットの電圧が特定される場合、それぞれのセットは異なる記憶素子のグループに印加することができる。例えば、記憶装置全体の検証電圧を1セット取得することができる一方で、その記憶装置内の異なるブロックについて、異なる読み出し電圧のセットが取得されてもよい。プロセスに含まれる複数のパスは、連続的に行われてもよいし、並列的に行われてもよい。   For example, in each pass in the above process, a set of voltages may be obtained for a word line, a set of word lines, a block, or a set of blocks of storage elements. For example, any set of voltages may be applied to a single word line or set of word line storage elements, or a single block or set of block storage elements. Further, for example, if multiple sets of voltages are specified for writing, verifying, and / or reading, each set can be applied to a different group of storage elements. For example, while one set of verification voltages for the entire storage device can be obtained, different sets of read voltages may be obtained for different blocks within the storage device. A plurality of passes included in the process may be performed continuously or in parallel.

図10は、図9cのプロセスによってあらかじめ決められた電圧を用いて複数組の不揮発性記憶素子のユーザデータにアクセスするプロセスを表す。ステップ1000では、記憶装置内の一又は複数組の不揮発性記憶素子を選択する。ステップ1002から1006は、概して、図9bのステップ920から924にそれぞれ対応している。ステップ1002では、一又は複数組の不揮発性記憶素子のための(例えばプログラム、検証、又は読み出し等の)動作を開始する。ステップ1004では、不揮発性記憶位置から対応する電圧のセットを取得する。ステップ1006では、その電圧のセットを用いて一又は複数組の不揮発性記憶素子のユーザデータにアクセスする。このようなアクセスは、プログラミング/検証又は読み出しを含んでいてもよい。判断ステップ1008では、アクセスすべき次の記憶素子が記憶装置内に存在する場合には、プロセスは、記憶装置内の次の一又は複数組の不揮発性記憶素子が選択されるステップ1000へと進む。判断ステップ1008で記憶装置内の次の記憶素子の組が存在しない場合には、プロセスはステップ1010で終了する。   FIG. 10 represents a process of accessing user data of multiple sets of non-volatile storage elements using voltages predetermined by the process of FIG. 9c. In step 1000, one or more sets of non-volatile storage elements in the storage device are selected. Steps 1002 to 1006 generally correspond to steps 920 to 924 of FIG. 9b, respectively. In step 1002, an operation (eg, program, verify, or read) for one or more sets of non-volatile storage elements is initiated. In step 1004, a corresponding set of voltages is obtained from the non-volatile storage location. In step 1006, the set of voltages is used to access user data in one or more sets of non-volatile storage elements. Such access may include programming / verification or reading. At decision step 1008, if the next storage element to be accessed exists in the storage device, the process proceeds to step 1000 where the next set or sets of non-volatile storage elements in the storage device are selected. . If at decision step 1008 there is no next set of storage elements in the storage device, the process ends at step 1010.

以前と同様に、上記プロセスにおけるそれぞれのパスでは、記憶素子の1つのワードライン、1組のワードライン、1つのブロック、あるいは1組のブロックについて電圧のセットを取得し、対応する記憶素子にアクセスしてもよい。任意の電圧のセットを、単独のワードライン又はワードラインの組の記憶素子、あるいは単独のブロック又はブロックの組に印加してもよい。プロセスに含まれる複数のパスは、連続的に行われてもよいし、並列的に行われてもよい。   As before, each pass in the above process takes a set of voltages for one word line, one set of word lines, one block, or one set of blocks of storage elements and accesses the corresponding storage element. May be. Any set of voltages may be applied to a single word line or a set of word line storage elements, or a single block or set of blocks. A plurality of passes included in the process may be performed continuously or in parallel.

図11は、例えば図1、2に示されるNANDフラッシュ記憶素子のアレイを表すブロック図である。各列に沿って、関連するNANDストリングのドレイン選択ゲートのドレイン端子に、ビットラインが接続されている。例えば、ビットライン1106は、NANDストリング1150のドレイン選択ゲートのドレイン端子1126に接続されている。NANDストリングの各行に沿って、ソースライン1104が、NANDストリングのソース選択ゲートのすべてのソース端子1128に接続されていてもよい。NANDアーキテクチャアレイと記憶システムの一部としてのその動作の一例は、米国特許第5,570,315号、第5,774,397号、第6,046,935号に示されている。   FIG. 11 is a block diagram illustrating an array of NAND flash storage elements, for example as shown in FIGS. Along each column, a bit line is connected to the drain terminal of the drain select gate of the associated NAND string. For example, the bit line 1106 is connected to the drain terminal 1126 of the drain select gate of the NAND string 1150. Along each row of the NAND string, a source line 1104 may be connected to all the source terminals 1128 of the source select gate of the NAND string. An example of a NAND architecture array and its operation as part of a storage system is shown in US Pat. Nos. 5,570,315, 5,774,397, 6,046,935.

記憶素子のアレイは、多数の記憶素子ブロックに分割される。フラッシュEEPROMシステムでよく見られるように、ブロックは、消去の単位である。即ち、各ブロックは、一度に消去される最小数の記憶素子を含んでいる。各ブロックは、概して複数のページに分割されている。ページは、プログラミングの単位である。1つ又は複数のデータのページは、概して1行の記憶素子に記憶されている。ページは、1つ又は複数のセクターを記憶することができる。セクターは、ユーザデータとオーバーヘッドデータを含む。オーバーヘッドデータは、概して、そのセクターのユーザデータから計算されたエラー訂正符号(ECC)を含む。(後述する)コントローラの一部は、アレイにデータがプログラムされるときにECCを計算し、そのアレイからデータが読み出されるときにこれをチェックする。代替的に、ECC及び/又はその他のオーバーヘッドデータは、それが関係するユーザデータとは異なるページか、あるいは、異なるブロックに記憶されてもよい。   The array of storage elements is divided into a number of storage element blocks. As is often seen in flash EEPROM systems, a block is a unit of erase. That is, each block includes the minimum number of storage elements that are erased at one time. Each block is generally divided into a plurality of pages. A page is a unit of programming. One or more pages of data are typically stored in a row of storage elements. A page can store one or more sectors. The sector includes user data and overhead data. Overhead data generally includes an error correction code (ECC) calculated from the user data for that sector. Some of the controllers (described below) calculate an ECC when data is programmed into the array and check this when data is read from the array. Alternatively, ECC and / or other overhead data may be stored on a different page or different block than the user data to which it pertains.

ユーザデータのセクターは概して512バイトであり、磁気ディスクドライブのセクターのサイズに対応している。オーバーヘッドデータは、概して、付加的に16〜20バイトとされている。例えば8ページから32,64,128ページ等の、多数のページがブロックを構成している。いくつかの実施例では、NANDストリングの1行がブロックを有している。   The sector of user data is generally 512 bytes and corresponds to the sector size of the magnetic disk drive. Overhead data is generally an additional 16-20 bytes. For example, a large number of pages such as 8 pages to 32, 64, and 128 pages constitute a block. In some embodiments, one row of NAND strings has blocks.

図12は、記憶システムの記憶装置のホストコントローラの概要を表す。記憶装置は、それ単体で記憶システムとみなすことができる。記憶素子1205は、プログラム/検証及び読み出し動作を行うための自身のコントローラ1210を有する記憶装置1200に設けられている。記憶装置は、例えば、ラップトップコンピュータ、デジタルカメラ、パーソナルデジタルアシスタント(PDA)、デジタルオーディオプレーヤー又は携帯電話等のホストデバイスに挿入される、脱着可能なメモリカード又はUSBフラッシュドライブに形成されていてもよい。ホストデバイスは、ユーザデータを読み出す、又は書き込むなど、記憶装置と相互動作するために、自身のコントローラ1225を備えている。例えば、データを読み出すときに、ホストコントローラは、記憶装置に取得すべきユーザデータのアドレスを指定するコマンドを送信することができる。記憶装置コントローラは、そのようなコマンドを、記憶装置内の制御回路で解釈及び処理可能なコマンド信号に変換する。コントローラ1210はまた、前述したように、電圧のセットを記憶する不揮発性記憶位置1215と、メモリアレイに書き込まれる(又は読み出される)ユーザデータを一時的に記憶するバッファメモリ1220とを備えていてもよい。ホストコントローラは、記憶装置の外部または外側の構成要素であるとみなすことができる。記憶装置は、例えば、1つ又は複数のメモリダイを備えていてもよく、ホストコントローラは、図13を参照して説明されるように、その1つ又は複数のメモリダイの外部に設けられていてもよい。   FIG. 12 shows an overview of the host controller of the storage device of the storage system. A storage device can be regarded as a storage system by itself. The storage element 1205 is provided in a storage device 1200 having its own controller 1210 for performing program / verify and read operations. The storage device may be formed on a removable memory card or USB flash drive that is inserted into a host device such as a laptop computer, digital camera, personal digital assistant (PDA), digital audio player or mobile phone, for example. Good. The host device includes its own controller 1225 for interoperating with the storage device, such as reading or writing user data. For example, when reading data, the host controller can send a command specifying the address of user data to be acquired to the storage device. The storage device controller converts such commands into command signals that can be interpreted and processed by control circuitry within the storage device. The controller 1210 may also include a non-volatile storage location 1215 that stores a set of voltages and a buffer memory 1220 that temporarily stores user data that is written (or read) to the memory array, as described above. Good. The host controller can be considered a component external or external to the storage device. The storage device may include, for example, one or more memory dies, and the host controller may be provided external to the one or more memory dies as described with reference to FIG. Good.

記憶装置は、記憶素子からデータを読み出し、ホストコントローラに利用可能にすることで、読み出しコマンドに応答する。1つの可能なアプローチでは、記憶装置は読み出しデータをバッファ1220に記憶しておき、データが読み出し可能となる時をホストコントローラに通知する。ホストコントローラは、データをバッファから読み出すことでこれに応答し、記憶装置にさらに別のアドレスからデータを読み出すための別のコマンドを送信する。例えば、データは、ページごとに読み出されてもよい。ホストコントローラは、読み出したデータを処理して、記憶装置の記憶素子の閾値電圧分布を特定してもよい。別のアプローチでは、記憶装置の制御回路が閾値電圧分布を特定してもよい。記憶装置のさらに詳細な実施例を以下に説明する。   The storage device responds to the read command by reading data from the storage element and making it available to the host controller. In one possible approach, the storage device stores the read data in the buffer 1220 and notifies the host controller when the data can be read. The host controller responds by reading the data from the buffer and sends another command to the storage device for reading the data from yet another address. For example, data may be read for each page. The host controller may process the read data to identify the threshold voltage distribution of the storage elements of the storage device. In another approach, the control circuit of the storage device may identify the threshold voltage distribution. A more detailed embodiment of the storage device will be described below.

一般的な記憶システムは、コントローラ1210を備える集積回路チップと、メモリアレイとこれに関連するコントロール、入力/出力及びステートマシン回路をそれぞれ備える1つ又は複数の集積回路チップとを備える。記憶装置は、ホストシステムの一部として組み込まれていてもよいし、ホストシステムの対応するソケットに挿脱可能なメモリカードに備えられていてもよい。そのようなカードは、記憶装置のすべてを含んでいてもよいし、コントローラとメモリアレイとこれに関連付けられた周辺回路が別のカードに設けられていてもよい。   A typical storage system includes an integrated circuit chip that includes a controller 1210 and one or more integrated circuit chips that each include a memory array and associated control, input / output, and state machine circuits. The storage device may be incorporated as a part of the host system, or may be provided in a memory card that can be inserted into and removed from a corresponding socket of the host system. Such a card may include all of the storage devices, or a controller, a memory array, and associated peripheral circuitry may be provided on a separate card.

図13は、単一の行/列デコーダと読み出し/書き込み回路を用いた不揮発性記憶システムのブロック図である。本発明の実施形態に係るこの図では、記憶装置1396は、記憶素子のページを平行に読み出し、またプログラムするための読み出し/書き込み回路を備えている。記憶装置1396は1つ又は複数のメモリダイ1398を備えている。メモリダイ1398は記憶素子1400の2次元アレイ、制御回路1310、及び、読み出し/書き込み回路1365を備えている。いくつかの実施例では、記憶素子のアレイは、3次元であってもよい。記憶アレイ1400は、行デコーダ1300を介してワードラインによって指定することができ、また、列デコーダ1360を介してビットラインによって指定することができる。読み出し/書き込み回路1365は、複数のセンスブロック1300を備えており、記憶素子のページが平行して読み出し又はプログラムされることを許容する。概して、コントローラ1350は、(例えば、脱着可能なストレージカード等の)、1つ又は複数のメモリダイ1398と同一の記憶装置1396に設けられている。コマンドとデータは、ホストとコントローラ1350との間をライン1320を介して送信されるとともに、コントローラと1つ又は複数のメモリダイ1398の間をライン1321を介して送信される。   FIG. 13 is a block diagram of a non-volatile storage system using a single row / column decoder and read / write circuitry. In this figure according to an embodiment of the invention, the storage device 1396 includes a read / write circuit for reading and programming pages of storage elements in parallel. Storage device 1396 includes one or more memory dies 1398. The memory die 1398 includes a two-dimensional array of storage elements 1400, a control circuit 1310, and a read / write circuit 1365. In some embodiments, the array of storage elements may be three dimensional. The storage array 1400 can be specified by word lines through the row decoder 1300 and can be specified by bit lines through the column decoder 1360. The read / write circuit 1365 includes a plurality of sense blocks 1300 and allows pages of storage elements to be read or programmed in parallel. In general, the controller 1350 is provided in the same storage device 1396 as one or more memory dies 1398 (eg, a removable storage card). Commands and data are transmitted between the host and controller 1350 via line 1320 and between the controller and one or more memory dies 1398 via line 1321.

制御回路1310は、読み出し/書き込み回路1365と協働して、メモリアレイ1100に対して記憶動作を実行する。制御回路1310は、ステートマシン1312と、オンチップアドレスデコーダ1314と、パワーコントロールモジュール1316とを備えている。ステートマシン1312は、チップレベルでの記憶動作のコントロールを可能とする。オンチップアドレスデコーダ1314は、ホスト又はメモリコントローラに用いられるものとデコーダ1330と1360によって用いられるハードウェアアドレスとの間のアドレスインターフェースを提供する。パワーコントロールモジュール1316は、電源と、記憶動作中にワードラインとビットラインに供給される電圧をコントロールする。例えば、パワーコントロールモジュール1316は、読み出し動作中に用いるために、制御ゲート読み出し電圧を選択されたワードラインに印加するとともに、非選択のワードラインに読み出しパス電圧を印加し、記憶素子の組の閾値電圧分布を特定することができる。また、パワーコントロールモジュール1316は、選択されたワードラインに電圧スイープをかけることができる。パワーコントロールモジュール1316は、例えば、この目的のために一つ又は複数のデジタル−アナログコンバーターを備えていてもよい。この場合、制御回路は、例えばメモリダイ1398の外部等の外部のテスト機器を必要とせずに、電圧スイープを発生させることができる。これは、記憶装置の製造後や、エンドユーザが記憶装置を入手した後等、電圧スイープをいつでも発生させることができるという点で有利である。さらに、記憶装置1396は記憶素子の閾値電圧分布を特定するための回路を備えていてもよく、これにより、このプロセスは、外部のテスト機器又は外部ホスト等を必要とせずに、メモリダイ1398の内部で行うことができる。これは、外部の機器を必要とせずに、いつでも閾値電圧分布を特定することができるという点で有利である。   The control circuit 1310 performs a storage operation on the memory array 1100 in cooperation with the read / write circuit 1365. The control circuit 1310 includes a state machine 1312, an on-chip address decoder 1314, and a power control module 1316. The state machine 1312 enables control of storage operation at the chip level. On-chip address decoder 1314 provides an address interface between those used in the host or memory controller and the hardware addresses used by decoders 1330 and 1360. The power control module 1316 controls the power supply and the voltage supplied to the word line and bit line during the storage operation. For example, the power control module 1316 applies a control gate read voltage to a selected word line and applies a read pass voltage to a non-selected word line for use during a read operation, and a threshold for a set of storage elements. The voltage distribution can be specified. The power control module 1316 can apply a voltage sweep to the selected word line. The power control module 1316 may comprise, for example, one or more digital-to-analog converters for this purpose. In this case, the control circuit can generate a voltage sweep without the need for external test equipment such as, for example, outside the memory die 1398. This is advantageous in that a voltage sweep can be generated at any time after the storage device is manufactured or after the end user obtains the storage device. Further, the storage device 1396 may include a circuit for identifying the threshold voltage distribution of the storage element, so that this process does not require external test equipment or an external host, etc. Can be done. This is advantageous in that the threshold voltage distribution can be specified at any time without the need for external equipment.

いくつかの適用例では、図13のいくつかの構成を組み合わせることができる。様々なデザインにおいて、記憶素子アレイ1100以外の1つ又は複数の構成は、それ単体で、あるいは組み合わせて管理回路又は制御回路とすることができる。例えば、1つ又は複数の管理回路又は制御回路は、制御回路1310、ステートマシン1312、デコーダ1314/1360、パワーコントロール1316、センスブロック1300、読み出し/書き込み回路1365、コントローラ1350、ホストコントローラ1399等のいずれか1つ、又は、これらの組み合わせを備えていてもよい。   For some applications, several configurations of FIG. 13 can be combined. In various designs, one or more configurations other than the storage element array 1100 can be single or combined into a management circuit or a control circuit. For example, the one or more management circuits or control circuits include any of the control circuit 1310, state machine 1312, decoder 1314/1360, power control 1316, sense block 1300, read / write circuit 1365, controller 1350, host controller 1399, etc. One or a combination of these may be provided.

メモリアレイに記憶されるデータは、列デコーダ1360によって読み出され、データI/Oラインとデータ入出力バッファ1352を介して外部I/Oラインに出力される。メモリアレイに記憶されるプログラムデータは、外部I/Oラインを介してデータ入出力バッファ1352に入力される。記憶装置を制御するコマンドデータは、コントローラ1350に入力される。コマンドデータは、どのような動作が要求されているのかをフラッシュメモリに通知する。入力されたコマンドは制御回路1310に送信される。ステートマシン1312は、例えば、READY/BUSY、PASS/FAIL等の、メモリのステータスを出力できる。記憶装置がビジーの場合、新しい読み出し又は書き込みコマンドを受信することができない。   Data stored in the memory array is read by the column decoder 1360 and output to the external I / O line via the data I / O line and the data input / output buffer 1352. Program data stored in the memory array is input to the data input / output buffer 1352 via an external I / O line. Command data for controlling the storage device is input to the controller 1350. The command data notifies the flash memory of what operation is requested. The input command is transmitted to the control circuit 1310. The state machine 1312 can output a memory status such as READY / BUSY or PASS / FAIL. If the storage device is busy, no new read or write commands can be received.

データ記憶位置1354は、図12の記憶位置1215と同様に、コントローラ1350に接続して設けられていてもよい。   The data storage location 1354 may be provided connected to the controller 1350, similar to the storage location 1215 of FIG.

別の実施可能な形態では、不揮発性記憶システムは、デュアル行/列デコーダと読み出し/書き込み回路を用いてもよい。この場合、様々な周辺回路からメモリアレイへのアクセスは、アレイの両側において対称的な形態で行われることになる。これにより、各側のアクセスラインと回路の密度を半分に減らすことができる。   In another possible embodiment, the non-volatile storage system may use dual row / column decoders and read / write circuits. In this case, access to the memory array from various peripheral circuits is performed in a symmetrical form on both sides of the array. This can reduce the density of access lines and circuits on each side in half.

本発明の前記の詳細な説明は図解及び説明のために提示されたものである。本発明が上記により網羅的となること、あるいは本発明を開示されている正確な形式に制限することを意図していない。前記教示を鑑みて多くの変型及び変更が可能である。説明された実施形態は、本発明及びその実際的な応用を最もよく説明し、それにより当業者が多様な実施形態において、及び意図されている特定の使用に適するように多様な変型を用いて本発明を最もよく活用できるようにするために選択された。本発明の範囲がここに添付される請求項により定められることが意図される。   The foregoing detailed description of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many variations and modifications are possible in light of the above teaching. The described embodiments best describe the invention and its practical application, so that those skilled in the art will be able to use the various embodiments and various modifications to suit the particular use intended. It was chosen to make the best use of the present invention. It is intended that the scope of the invention be defined by the claims appended hereto.

Claims (15)

記憶装置を構成する方法であって、
記憶装置内のマルチレベル記憶素子である不揮発性記憶素子(1205)の各組について、それぞれの閾値電圧分布を測定する工程と、
各閾値電圧分布に基づいて、不揮発性記憶素子の各組について、不揮発性記憶素子の各組用にカスタマイズされているそれぞれの電圧のセット(VPGM−i、VV1−i)を特定する工程と、
電圧の各セットを不揮発性記憶位置(1354)に記憶する工程と、
前記記憶する工程の後に、不揮発性記憶位置から電圧の各セットのうちの少なくとも1つを取得する工程と、
電圧の各セットのうちの前記少なくとも1つを用いて、不揮発性記憶素子の各組のうちの少なくとも1組について書き込み動作を実行する工程、
を備える方法。
A method of configuring a storage device, comprising:
Measuring each threshold voltage distribution for each set of non-volatile storage elements (1205) that are multi-level storage elements in the storage device;
Identifying each set of voltages (V PGM-i , V V1-i ) customized for each set of non-volatile storage elements for each set of non-volatile storage elements based on each threshold voltage distribution When,
Storing each set of voltages in a non-volatile storage location (1354);
After the storing step, obtaining at least one of each set of voltages from a non-volatile storage location;
Performing a write operation on at least one of each set of non-volatile storage elements using the at least one of each set of voltages;
A method comprising:
前記測定する工程と前記特定する工程と前記記憶する工程は、記憶装置がエンドユーザに向けて出荷されるよりも前に製造サイトで実行され、前記取得する工程と前記書き込み動作を実行する工程は、記憶装置がエンドユーザに向けて出荷された後に実行される請求項1に記載の方法。   The measuring step, the identifying step, and the storing step are performed at a manufacturing site before the storage device is shipped to an end user, and the obtaining step and the writing operation are performed. The method of claim 1, wherein the method is performed after the storage device is shipped to the end user. 記憶装置の不揮発性記憶素子の異なるブロックに対して異なる電圧のセット(VPGM−i、VV1−i)が特定され、不揮発性記憶素子の各ブロックは不揮発性記憶素子の他のブロックから独立して消去可能である請求項1又は2に記載の方法。 Different voltage sets (V PGM-i , V V1-i ) are specified for different blocks of the nonvolatile memory element of the memory device, and each block of the nonvolatile memory element is independent of the other blocks of the nonvolatile memory element. The method according to claim 1 or 2, wherein the method is erasable. 記憶装置の不揮発性記憶素子のブロックの異なるグループに対して異なる電圧のセットが特定され、不揮発性記憶素子の各ブロックは不揮発性記憶素子の他のブロックから独立して消去可能であり、各グループは1つ又は複数のブロックを備えており、1つのグループ内の各ブロックは同じ電圧のセットを用いる請求項1又は2に記載の方法。   Different sets of voltages are identified for different groups of non-volatile storage element blocks of the storage device, each block of non-volatile storage elements being erasable independently of other blocks of the non-volatile storage element, The method according to claim 1 or 2, comprising one or more blocks, wherein each block in a group uses the same set of voltages. 記憶装置の不揮発性記憶素子のワードラインの異なるグループに対して異なる電圧のセットが特定され、各グループは1つ又は複数のワードラインを備えている請求項1又は2に記載の方法。   The method according to claim 1 or 2, wherein different sets of voltages are identified for different groups of word lines of non-volatile storage elements of the storage device, each group comprising one or more word lines. 前記測定する工程、前記特定する工程、前記記憶する工程、前記取得する工程、前記書き込み動作を実行する工程は、記憶装置が製造サイトからエンドユーザへ出荷された後に実行される請求項1、3〜5のいずれか一項に記載の方法。   The step of measuring, the step of specifying, the step of storing, the step of acquiring, and the step of executing the write operation are performed after the storage device is shipped from a manufacturing site to an end user. The method as described in any one of -5. 電圧の各セットを用いて、不揮発性記憶素子の各組に対する複数の書き込み動作が実行される請求項1〜6のいずれか一項に記載の方法。   The method according to claim 1, wherein a plurality of write operations are performed on each set of non-volatile storage elements using each set of voltages. 不揮発性記憶素子は、前記測定する工程の段階ではテストデータを記憶しており、
不揮発性記憶素子は、前記書き込み動作後にはユーザデータを記憶している請求項1〜7のいずれか一項に記載の方法。
The nonvolatile memory element stores test data at the stage of the measuring step,
The method according to claim 1, wherein the nonvolatile memory element stores user data after the writing operation.
前記電圧は、検証基準電圧を含む請求項1〜8のいずれか一項に記載の方法。   The method according to claim 1, wherein the voltage includes a verification reference voltage. 前記電圧は、書き込み電圧を含む請求項1〜8のいずれか一項に記載の方法。   The method according to claim 1, wherein the voltage includes a write voltage. 不揮発性記憶位置は、記憶装置内にある請求項1〜10のいずれか一項に記載の方法。   The method according to claim 1, wherein the non-volatile storage location is in a storage device. 記憶システムであって、
マルチレベル記憶素子である不揮発性記憶素子(1205)の各組と、
不揮発性記憶位置(1354)と、
少なくとも1つの制御回路(1350)とを備えており、
前記少なくとも1つの制御回路は、
(a)不揮発性記憶素子の各組について、それぞれの閾値電圧分布を測定し、
(b)各閾値電圧分布に基づいて、不揮発性記憶素子の各組について、不揮発性記憶素子の各組用にカスタマイズされているそれぞれの電圧のセット(VPGM−i、VV1−i)を特定し、
(c)電圧の各セットを不揮発性記憶位置に記憶し、
(d)前記記憶する処理を行った後に、不揮発性記憶位置から電圧の各セットのうちの少なくとも1つを取得し、電圧の各セットのうちの前記少なくとも1つを用いて、不揮発性記憶素子の各組のうち少なくとも1組について書き込み動作を実行する、
記憶システム。
A storage system,
Each set of non-volatile storage elements (1205) that are multi-level storage elements;
A non-volatile storage location (1354);
At least one control circuit (1350),
The at least one control circuit comprises:
(A) measuring each threshold voltage distribution for each set of nonvolatile memory elements;
(B) Based on each threshold voltage distribution, for each set of non-volatile storage elements, a respective set of voltages (V PGM-i , V V1-i ) customized for each set of non-volatile storage elements. Identify,
(C) store each set of voltages in a non-volatile storage location;
(D) after performing the storing process, obtaining at least one of each set of voltages from a non-volatile storage location and using the at least one of each set of voltages to generate a non-volatile storage element A write operation is performed for at least one of each set of
Storage system.
前記少なくとも1つの制御回路は、記憶システムの不揮発性記憶素子の異なるブロックに対して異なる電圧のセット(VPGM−i、VV1−i)を特定し、不揮発性記憶素子の各ブロックは不揮発性記憶素子の他のブロックから独立して消去可能である請求項12に記載の記憶システム。 The at least one control circuit identifies different voltage sets (V PGM-i , V V1-i ) for different blocks of non-volatile storage elements of the storage system, and each block of the non-volatile storage elements is non-volatile The storage system of claim 12, wherein the storage system is erasable independently of other blocks of the storage element. 前記少なくとも1つの制御回路は、記憶システムの不揮発性記憶素子のブロックの異なるグループに対して異なる電圧のセットを特定し、不揮発性記憶素子の各ブロックは不揮発性記憶素子の他のブロックから独立して消去可能であり、各グループは1つ又は複数のブロックを備えており、1つのグループ内の各ブロックは同じ電圧のセットを用いる請求項12に記載の記憶システム。   The at least one control circuit identifies different sets of voltages for different groups of non-volatile storage element blocks of a storage system, each block of non-volatile storage elements being independent of other blocks of non-volatile storage elements. 13. The storage system of claim 12, wherein each group comprises one or more blocks, and each block within a group uses the same set of voltages. 前記少なくとも1つの制御回路は、記憶システムの不揮発性記憶素子のワードラインの異なるグループに対して、異なる電圧のセットを特定し、各グループは1つ又は複数のワードラインを備えている請求項12に記載の記憶システム。   13. The at least one control circuit identifies different sets of voltages for different groups of word lines of non-volatile storage elements of a storage system, each group comprising one or more word lines. The storage system described in 1.
JP2011506829A 2008-04-29 2009-04-27 Non-volatile multi-level memory with adaptive setting of reference voltage for programming, verification and reading Expired - Fee Related JP5410507B2 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US12/111,729 US7808819B2 (en) 2008-04-29 2008-04-29 Method for adaptive setting of state voltage levels in non-volatile memory
US12/111,748 2008-04-29
US12/111,748 US7808836B2 (en) 2008-04-29 2008-04-29 Non-volatile memory with adaptive setting of state voltage levels
US12/111,729 2008-04-29
PCT/IL2009/000449 WO2009133553A1 (en) 2008-04-29 2009-04-27 Non-volatile multilevel memory with adaptive setting of reference voltage levels for program, verify and read

Publications (2)

Publication Number Publication Date
JP2011519110A true JP2011519110A (en) 2011-06-30
JP5410507B2 JP5410507B2 (en) 2014-02-05

Family

ID=40929666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011506829A Expired - Fee Related JP5410507B2 (en) 2008-04-29 2009-04-27 Non-volatile multi-level memory with adaptive setting of reference voltage for programming, verification and reading

Country Status (6)

Country Link
EP (1) EP2274746A1 (en)
JP (1) JP5410507B2 (en)
KR (1) KR101606168B1 (en)
CN (1) CN102027548B (en)
TW (1) TWI410975B (en)
WO (1) WO2009133553A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009289352A (en) * 2008-05-30 2009-12-10 Elpida Memory Inc Semiconductor device
JP2013143155A (en) * 2012-01-06 2013-07-22 Powerchip Technology Corp Nonvolatile semiconductor memory device and write-in method thereof
JP2014132512A (en) * 2014-04-16 2014-07-17 Powerchip Technology Corp Nonvolatile semiconductor memory device and writing method thereof
JP2016028064A (en) * 2008-07-21 2016-02-25 プロビオドルグ エージー Diagnostic antibody assay
WO2017022700A1 (en) * 2015-08-05 2017-02-09 株式会社デンソー Semiconductor storage device and method of writing thereto
JP2019046526A (en) * 2017-09-05 2019-03-22 ローム株式会社 Nonvolatile semiconductor memory device
JP2019153366A (en) * 2018-03-06 2019-09-12 東芝メモリ株式会社 Memory system, reading method, program and memory controller

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8223556B2 (en) * 2009-11-25 2012-07-17 Sandisk Technologies Inc. Programming non-volatile memory with a reduced number of verify operations
CN102163461A (en) * 2011-05-03 2011-08-24 苏州聚元微电子有限公司 Method for improving yield and reading reliability of electrically erasable programmable read-only memory (EEPROM)
KR102069864B1 (en) * 2012-11-05 2020-01-23 에스케이하이닉스 주식회사 Semiconductor memory device and operating method thereof
CN104217761B (en) * 2013-05-31 2018-12-14 慧荣科技股份有限公司 Data storage device and error correction method thereof
KR102210961B1 (en) * 2013-06-12 2021-02-03 삼성전자주식회사 Memory system including nonvolatile memory device and dynamic access method thereof
JP6262063B2 (en) * 2014-03-18 2018-01-17 東芝メモリ株式会社 Nonvolatile memory and writing method
US10332593B2 (en) * 2015-09-14 2019-06-25 Toshiba Memory Corporation Semiconductor memory device configured to sense memory cell threshold voltages in ascending order
US9875811B2 (en) 2016-01-13 2018-01-23 Macronix International Co., Ltd. Method and device for reading a memory
TWI621125B (en) * 2016-01-26 2018-04-11 旺宏電子股份有限公司 Method and device for reading a memory
CN108733305B (en) * 2017-04-13 2021-09-03 旺宏电子股份有限公司 Memory device, system and operation method thereof
US10347344B2 (en) * 2017-08-29 2019-07-09 Micron Technology, Inc. Read voltage calibration based on host IO operations
KR102395196B1 (en) * 2017-10-17 2022-05-06 삼성전자주식회사 Storage device having parameter calibration function and method of operating the storage device
US10930355B2 (en) * 2019-06-05 2021-02-23 SanDiskTechnologies LLC Row dependent sensing in nonvolatile memory
CN110619919B (en) 2019-09-23 2021-08-13 上海华力微电子有限公司 Method for testing endurance performance of Flash device
WO2021081737A1 (en) 2019-10-29 2021-05-06 Yangtze Memory Technologies Co., Ltd. Methods of programming memory device
CN111341375B (en) * 2020-02-19 2020-12-01 哈尔滨工业大学 Threshold voltage obtaining method for TLC type NAND Flash
US11133062B1 (en) * 2020-05-07 2021-09-28 Micron Technology, Inc. Two memory cells sensed to determine one data value
CN114705973B (en) * 2022-06-01 2022-11-11 北京航空航天大学杭州创新研究院 Non-invasive complex environment integrated circuit aging monitoring method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6278633B1 (en) * 1999-11-05 2001-08-21 Multi Level Memory Technology High bandwidth flash memory that selects programming parameters according to measurements of previous programming operations
JP2002288988A (en) * 2001-03-28 2002-10-04 Mitsubishi Electric Corp Non-volatile semiconductor memory
JP2003263897A (en) * 2002-03-08 2003-09-19 Fujitsu Ltd Nonvolatile multi-level semiconductor memory device
JP2004071082A (en) * 2002-08-08 2004-03-04 Sharp Corp Non-volatile semiconductor memory device, and method for controlling data writing
US20070159891A1 (en) * 2006-01-12 2007-07-12 Loc Tu Trimming of analog voltages in flash memory devices
JP2007250133A (en) * 2006-03-17 2007-09-27 Sharp Corp Method for testing nonvolatile semiconductor storage device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6813194B2 (en) * 2002-01-10 2004-11-02 Silicon Storage Technology, Inc. Bias distribution network for digital multilevel nonvolatile flash memory
JP3889699B2 (en) * 2002-11-29 2007-03-07 株式会社東芝 Nonvolatile semiconductor memory device and data writing method thereof
US7177199B2 (en) * 2003-10-20 2007-02-13 Sandisk Corporation Behavior based programming of non-volatile memory
US7092290B2 (en) * 2004-11-16 2006-08-15 Sandisk Corporation High speed programming system with reduced over programming
US7254071B2 (en) * 2006-01-12 2007-08-07 Sandisk Corporation Flash memory devices with trimmed analog voltages

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6278633B1 (en) * 1999-11-05 2001-08-21 Multi Level Memory Technology High bandwidth flash memory that selects programming parameters according to measurements of previous programming operations
JP2002288988A (en) * 2001-03-28 2002-10-04 Mitsubishi Electric Corp Non-volatile semiconductor memory
JP2003263897A (en) * 2002-03-08 2003-09-19 Fujitsu Ltd Nonvolatile multi-level semiconductor memory device
JP2004071082A (en) * 2002-08-08 2004-03-04 Sharp Corp Non-volatile semiconductor memory device, and method for controlling data writing
US20070159891A1 (en) * 2006-01-12 2007-07-12 Loc Tu Trimming of analog voltages in flash memory devices
JP2007250133A (en) * 2006-03-17 2007-09-27 Sharp Corp Method for testing nonvolatile semiconductor storage device

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009289352A (en) * 2008-05-30 2009-12-10 Elpida Memory Inc Semiconductor device
JP2016028064A (en) * 2008-07-21 2016-02-25 プロビオドルグ エージー Diagnostic antibody assay
JP2013143155A (en) * 2012-01-06 2013-07-22 Powerchip Technology Corp Nonvolatile semiconductor memory device and write-in method thereof
US9064580B2 (en) 2012-01-06 2015-06-23 Powerchip Technology Corporation Nonvolatile semiconductor memory device and write-in method thereof
JP2014132512A (en) * 2014-04-16 2014-07-17 Powerchip Technology Corp Nonvolatile semiconductor memory device and writing method thereof
WO2017022700A1 (en) * 2015-08-05 2017-02-09 株式会社デンソー Semiconductor storage device and method of writing thereto
JP2017033619A (en) * 2015-08-05 2017-02-09 株式会社デンソー Semiconductor storage device and writing method for the same
JP2019046526A (en) * 2017-09-05 2019-03-22 ローム株式会社 Nonvolatile semiconductor memory device
JP2019153366A (en) * 2018-03-06 2019-09-12 東芝メモリ株式会社 Memory system, reading method, program and memory controller

Also Published As

Publication number Publication date
JP5410507B2 (en) 2014-02-05
CN102027548A (en) 2011-04-20
TWI410975B (en) 2013-10-01
EP2274746A1 (en) 2011-01-19
TW201007744A (en) 2010-02-16
KR20110018336A (en) 2011-02-23
KR101606168B1 (en) 2016-03-24
WO2009133553A1 (en) 2009-11-05
CN102027548B (en) 2014-01-01

Similar Documents

Publication Publication Date Title
JP5410507B2 (en) Non-volatile multi-level memory with adaptive setting of reference voltage for programming, verification and reading
KR101564399B1 (en) Read disturb mitigation in non-volatile memory
JP5444355B2 (en) Data state-based temperature compensation during detection in non-volatile memory
CN106688042B (en) Partial block erase for data refresh
US7808819B2 (en) Method for adaptive setting of state voltage levels in non-volatile memory
JP5250117B2 (en) Adaptive erase and soft programming for memory
KR101559088B1 (en) Sensing in non-volatile storage using pulldown to regulated source voltage to remove system noise
US7808836B2 (en) Non-volatile memory with adaptive setting of state voltage levels
JP5613663B2 (en) Erase confirmation processing of non-volatile storage device
CN101471135B (en) Flash memory device and operating method thereof
KR101373795B1 (en) Non-volatile storage with source bias all bit line sensing
JP5367697B2 (en) Reduction of power consumption during read operation in non-volatile memory devices
JP2009026436A (en) Method of measuring threshold voltage distribution in memory by using aggregate characteristic
JP5250103B2 (en) Method for increasing read throughput of non-volatile memory
JP2007533055A (en) Variable programming of non-volatile memory
JP2005129194A (en) Programming based on behavior of nonvolatile memory
KR20080016598A (en) Starting program voltage shift with cycling of non-volatile memory
JP2012531693A (en) Predicting program disturbance in memory by detecting natural threshold voltage distribution

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110307

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130508

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131106

R150 Certificate of patent or registration of utility model

Ref document number: 5410507

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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