Method and apparatus for retaining flash block structure data during erase operations in a flash EEPROM memory array
First Claim
1. A method for reliably storing management data in the event of a power loss in a memory array including a plurality of devices which are capable of retaining data when power is removed, wherein the array is divided into a plurality of individually-erasable blocks of memory cells and each of the blocks of memory cells has stored thereon data regarding management of the array, the method, during a process in which valid data stored in a first block is written to another block of the array, and then the first block is erased, comprising the steps of:
- storing management data regarding management of the array from the first block onto a second block before erasure of the first block;
providing a detectable identification to the management data on the second block;
storing the detectable identification onto the second block;
seeking the detectable identification when power is applied to a system after the power loss;
reading the management data from the second block;
erasing the first block; and
writing the management data to the first block.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for reliably storing management data in a flash EEPROM memory array, which array is divided into a plurality of individually-erasable blocks of memory cells and in which each of the blocks of memory cells has stored thereon data regarding management of the array during a cleanup process in which valid data stored in a first block is written to another block of the array, and then the first block is erased. The process includes the steps of storing data regarding management of the array from the first block in random access memory and, in an enhanced process, on another block before erasure of the first block. The data may then be rewritten to the first block after the erase. With the enhanced process, a special identification is provided to the data regarding the management of the array stored on another block which is outside the normal identification range for the host computer so that the specially identified data is not lost during a power loss during an erase process and may be detected after power is restored to the system.
212 Citations
16 Claims
-
1. A method for reliably storing management data in the event of a power loss in a memory array including a plurality of devices which are capable of retaining data when power is removed, wherein the array is divided into a plurality of individually-erasable blocks of memory cells and each of the blocks of memory cells has stored thereon data regarding management of the array, the method, during a process in which valid data stored in a first block is written to another block of the array, and then the first block is erased, comprising the steps of:
-
storing management data regarding management of the array from the first block onto a second block before erasure of the first block; providing a detectable identification to the management data on the second block; storing the detectable identification onto the second block; seeking the detectable identification when power is applied to a system after the power loss; reading the management data from the second block; erasing the first block; and writing the management data to the first block. - View Dependent Claims (2, 3, 4)
-
-
5. A process for use with a memory array having a plurality of blocks of EEPROM memory cells, wherein each of the plurality of blocks stores data provided by a host as well as data relating to management of the array, the process for preserving the data relating to management of the array in the event of a power loss during erasure of a first block of the plurality of blocks comprising the steps of:
-
writing valid data provided by the host from the first block to a second block of the memory array; reading the data relating to management of the array from the first block; writing the data relating to management of the array to a third block of the memory array; writing an identification outside a range accessible by the host to the third block; reading the data relating to management of the array from the third block after erasing the first block; and writing the data relating to management of the array to the first block. - View Dependent Claims (6, 7)
-
-
8. A method for reliably identifying an incomplete erasure of blocks of an EEPROM memory array in a memory array having a plurality of blocks of EEPROM memory cells due to a power loss, wherein each of the plurality of blocks stores data provided by a host as well as data relating to management of the array, and wherein invalid data is removed from the memory cells of the array by a process of writing valid data provided by the host from the first block to another block of the memory array, and then the first block is erased, the method comprising the steps of:
-
writing the data relating to management of the array from the first block to a second block of the memory array after all of the valid data provided by the host has been written to a third block of the memory array; writing a special identification outside a range accessible by the host to the second block; seeking data having the special identification stored with the data relating to management of the array on application of power to the host after the power loss; identifying the first block if the special identification is found; erasing the first block; and writing the data relating to management of the array to the first block after erasure is complete. - View Dependent Claims (9)
-
-
10. A method for preserving management data in a memory array in the event of a power loss, wherein the memory array includes a plurality of memory cells which are capable of retaining data when power is removed, wherein the array is divided into a plurality of individually-erasable blocks of memory cells and each of the blocks of memory cells has stored thereon data regarding management of the array, the method, during a process in which valid data stored in a first block is written to another block of the array, and then the first block is erased, comprising the steps of:
-
storing management data regarding management of the array from the first block onto a second block of the array before erasure of the first block; providing a detectable identification to the management data; updating the management data before rewriting that data to the first block; and rewriting the management data to the first block after the erasure of the first block. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A process for use with a memory array having a plurality of blocks of EEPROM memory cells, wherein each of the plurality of blocks stores data provided by a host as well as data relating to management of the array, the process for preserving the data relating to management of the array in the event of a power loss during erasure of a first block of the plurality of blocks comprising the steps of:
-
writing valid data provided by the host from the first block to a second block of the memory array; writing the data relating to management of the array from the first block to random access memory; writing the data relating to management of the array from the first block to a third block of the memory array; writing an identification outside a range accessible by the host with the data relating to management of the array; updating the data relating to management of the array stored in random access memory; and rewriting the data relating to management of the array stored in random access memory to the first block after the erasure of the first block. - View Dependent Claims (16)
-
Specification