Partial block erase architecture for flash memory
First Claim
1. A method for wear leveling control in a memory device having a memory bank, the memory bank including memory blocks and each of the memory blocks including at least two sub-blocks, wherein a memory block is defined by a NAND memory cell string and sequentially programmable from a first wordline to a last wordline, and a lowest ranking sub-block includes a set of wordlines including the first wordline, the method comprising:
- programming modified data to an empty sub-block of a new memory block; and
erasing a sub-block of the memory block containing an unmodified version of the modified data.
11 Assignments
0 Petitions
Accused Products
Abstract
A method and system for increasing the lifespan of a flash memory device by selectively erasing sub-blocks of a memory block. Each physical memory block of the flash memory device is dividable into at least two logical sub-blocks, where each of the at least two logical sub-blocks is erasable. Therefore, only the data of the logical sub-block is erased and reprogrammed while unmodified data in the other logical sub-block avoids unnecessary program/erase cycles. The logical sub-blocks to be erased are dynamically configurable in size and location within the block. A wear leveling algorithm is used for distributing data throughout the physical and logical sub-blocks of the memory array to maximize the lifespan of the physical blocks during programming and data modification operations.
63 Citations
28 Claims
-
1. A method for wear leveling control in a memory device having a memory bank, the memory bank including memory blocks and each of the memory blocks including at least two sub-blocks, wherein a memory block is defined by a NAND memory cell string and sequentially programmable from a first wordline to a last wordline, and a lowest ranking sub-block includes a set of wordlines including the first wordline, the method comprising:
-
programming modified data to an empty sub-block of a new memory block; and erasing a sub-block of the memory block containing an unmodified version of the modified data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A flash memory device, comprising:
-
a memory bank having rows of memory cells connected to wordlines and arranged as memory blocks, each of the memory blocks being defined by a respective NAND memory cell string; a first memory block within the memory bank including at least two sub-blocks; a second memory block within the memory bank including at least two sub-blocks, the second memory block configured to be sequentially programmed from a first wordline to a last wordline; a lowest ranking sub-block of the second memory block including a set of wordlines that includes the first wordline; an empty sub-block of the second memory block configured to be programmed to include modified data; and
,a sub-block of the first memory block configured to contain an unmodified version of the modified data, and being further configured to be erased after the modified data is programmed to the empty sub-block. - View Dependent Claims (24, 25, 26, 27, 28)
-
Specification