Management of non-volatile memory systems having large erase blocks
First Claim
1. In a non-volatile memory having memory cells organized in groups of one or more blocks of a minimum number of cells that are simultaneously erasable and wherein a given number of pages of data are programmed into individual ones of the groups of blocks, a method of updating data in less than all pages of a given group of one or more blocks, comprising:
- determining whether at least one predefined condition of the data update is satisfied, andif it is determined that the condition is satisfied, thereafter writing the updated pages of data into pages of a first other group of one or more blocks having page numbers selected independently of the page numbers of the pages of data within the given group of blocks that are being updated, orif it is determined that the condition is not satisfied, thereafter writing the updated pages of data into correspondingly numbered pages of a second other group of one or more blocks.
2 Assignments
0 Petitions
Accused Products
Abstract
A non-volatile memory system of a type having blocks of memory cells erased together and which are programmable from an erased state in units of a large number of pages per block. If the data of only a few pages of a block are to be updated, the updated pages are written into another block provided for this purpose. The valid original and updated data are then combined at a later time, when doing so does not impact on the performance of the memory. If the data of a large number of pages of a block are to be updated, however, the updated pages are written into an unused erased block and the unchanged pages are also written to the same unused block. By handling the updating of a few pages differently, memory performance is improved when small updates are being made.
84 Citations
12 Claims
-
1. In a non-volatile memory having memory cells organized in groups of one or more blocks of a minimum number of cells that are simultaneously erasable and wherein a given number of pages of data are programmed into individual ones of the groups of blocks, a method of updating data in less than all pages of a given group of one or more blocks, comprising:
-
determining whether at least one predefined condition of the data update is satisfied, and if it is determined that the condition is satisfied, thereafter writing the updated pages of data into pages of a first other group of one or more blocks having page numbers selected independently of the page numbers of the pages of data within the given group of blocks that are being updated, or if it is determined that the condition is not satisfied, thereafter writing the updated pages of data into correspondingly numbered pages of a second other group of one or more blocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
Specification