IP Library › Granted Patent US 8,767,475
Granted Patent B2
US 8,767,475 · App. 13/546,120 · Granted Jul 1, 2014

Method of programming a nonvolatile memory device

Inventors: Yong-Sung Cho (Suwon-si, KR); Nam-hee Lee (Seoul, KR); Sang-Yong Yoon (Seoul, KR)
Assignee: Samsung Electronics Co., Ltd.
G11C16/34G11C16/3431G11C16/3436G11C16/3454G11C11/5628G11C16/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,767,475
App. No.
13/546,120
Granted
Jul 1, 2014
Kind
B2
Abstract

In method of programming a nonvolatile memory device, multi-bit data are loaded into a plurality of page buffers. Multi-level cells included in a multi-level cell block are programmed to a plurality of intermediate program states including a first intermediate program state and a second intermediate program state which is higher than the first intermediate program state based on the multi-bit data. Whether the multi-level cells are programmed to the plurality of intermediate program states is verified. Cell group information for the first intermediate program state is generated by checking whether a result of the verification for the second intermediate program state satisfies a predetermined criterion. The multi-level cells are programmed to a plurality of target program states corresponding to the multi-bit data based on the cell group information.

Claims (33)

1. A method of programming a nonvolatile memory device, the method comprising:

loading multi-bit data into a plurality of page buffers;

programming multi-level cells included in a multi-level cell block to a plurality of intermediate program states based on the multi-bit data, the plurality of intermediate program states including a first intermediate program state and a second intermediate program state which is higher than the first intermediate program state;

verifying whether the multi-level cells are programmed to the plurality of intermediate program states;

generating cell group information for the first intermediate program state by checking whether a result of the verification for the second intermediate program state satisfies a predetermined criterion; and

programming the multi-level cells to a plurality of target program states corresponding to the multi-bit data based on the cell group information.

2. The method of claim 1 , wherein the predetermined criterion includes whether a number of off-cells of the second intermediate program state is greater than a predetermined value.

3. The method of claim 1 , wherein the predetermined criterion includes whether a number of program loops performed after at least one multi-level cell of the second intermediate program state becomes an off-cell is greater than a predetermined value.

4. The method of claim 1 , wherein the cell group information represents whether each of the multi-level cells belongs to a fast cell group including multi-level cells having threshold voltages which increase relatively fast and a slow cell group including multi-level cells having threshold voltages which increase relatively slowly.

5. The method of claim 4 , wherein programming the multi-level cells to the plurality of target program states comprises:

applying a first program voltage to the multi-level cells that belong to the fast cell group; and

applying a second program voltage which is higher than the first program voltage to the multi-level cells that belong to the slow cell group.

6. The method of claim 4 , wherein programming the multi-level cells to the plurality of target program states comprises:

applying a voltage of a low level to bitlines coupled to the multi-level cells that belong to the slow cell group;

applying a forcing voltage which is higher than the voltage of the low level to bitlines coupled to the multi-level cells that belong to the fast cell group; and

applying a program voltage to a selected wordline.

7. The method of claim 1 , wherein generating the cell group information comprises:

counting off-cells having threshold voltages which are higher than a second intermediate verify voltage among the multi-level cells to be programmed to the second intermediate program state; and

when a number of the counted off-cells is greater than a predetermined value, marking, as slow cells, on-cells having threshold voltages which are lower than a first intermediate verify voltage among the multi-level cells to be programmed to the first intermediate program state.

8. The method of claim 1 , wherein generating the cell group information comprises:

counting off-cells having threshold voltages which are higher than a second intermediate verify voltage among the multi-level cells to be programmed to the second intermediate program state; and

when a number of the counted off-cells is greater than a predetermined value, marking, as fast cells, off-cells having threshold voltages which are higher than a first intermediate verify voltage among the multi-level cells to be programmed to the first intermediate program state.

9. The method of claim 1 , wherein generating the cell group information comprises:

counting off-cells having threshold voltages which are higher than a second intermediate verify voltage among the multi-level cells to be programmed to the second intermediate program state; and

until a number of the counted off-cells becomes greater than a predetermined value, marking, as fast cells, off-cells having threshold voltages which are higher than a first intermediate verify voltage among the multi-level cells to be programmed to the first intermediate program state.

10. The method of claim 1 , wherein generating the cell group information comprises:

counting program loops that are performed after at least one of the multi-level cells to be programmed to the second intermediate program state becomes an off-cell having a threshold voltage which is higher than a second intermediate verify voltage; and

when a number of the counted program loops is greater than a predetermined value, marking, as slow cells, on-cells having threshold voltages which are lower than a first intermediate verify voltage among the multi-level cells to be programmed to the first intermediate program state.

11. The method of claim 1 , further comprising programming the multi-bit data provided from a host to at least one single level cell block,

wherein loading the multi-bit data into the plurality of page buffers comprises loading the multi-bit data from the at least one single level cell block into the plurality of page buffers.

12. The method of claim 11 , further comprising:

programming the cell group information to the at least one single level cell block; and

loading the multi-bit data and the cell group information from the at least one single level cell block into the plurality of page buffers to program the multi-level cells to the plurality of target program states.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2012
From: CHO, YONG-SUNG; LEE, NAM-HEE; YOON, SANG-YONG
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 028527/0748 →
Priority Claims (1)
KR 10-2011-0073416 · Jul 25, 2011 · national
Continuity (1)
Related Publication 20130028018A1 · Jan 31, 2013