Block-erasable non-volatile semiconductor memory which tracks and stores the total number of write/erase cycles for each block
First Claim
1. A processor-controlled method of file management for a nonvolatile semiconductor memory with a plurality of physical erase blocks, wherein bits of the memory cannot be overwritten from a first logical state to a second logical state without a prior erasure, wherein erasure is by physical erase block and not on an individual byte basis, the method comprising the steps of:
- (1) allocating a first physical erase block of the memory for storing an active file and a deleted file;
(2) allocating a second physical erase block of the memory for storing a copy of the active file;
(3) storing in an allocated first portion of a third physical erase block of the memory information as to whether a physical erase block of the memory has been allocated to store the active and deleted files or allocated to store the copy of the active file;
(4) reclaiming memory space by storing in the second physical erase block of the memory the copy of the active file and by erasing the entire first physical erase block of the memory in order to permit reuse of the first physical erase block of the memory for storage;
(5) tracking a number of times a physical erase block of the memory has been cycled and storing that number as a cycle count in an allocated second portion of the third physical erase block of the memory;
(6) storing in an allocated third portion of the third physical erase block of the memory a directory of active files;
(7) minimizing cycling distributions between physical erase blocks of the memory by choosing for reclamation a physical erase block of the memory with a lowest cycle count.
0 Assignments
0 Petitions
Accused Products
Abstract
A non-volatile semiconductor memory that is erasable only in blocks is described. Each bit of the non-volatile semiconductor memory cannot be overwritten from a first logical state to a second logical state without a prior erasure. Each bit of the non-volatile semiconductor memory can be overwritten from a second logical state to a first logical state without a prior erasure. The non-volatile semiconductor memory comprises an active block for storing a first file, a reserve block for storing a second file, and a directory block. The second file is a copy of the first file. The copy is made during a clean-up operation prior to erasure of the active block. The directory block comprises a directory entry for identifying the first file.
453 Citations
33 Claims
-
1. A processor-controlled method of file management for a nonvolatile semiconductor memory with a plurality of physical erase blocks, wherein bits of the memory cannot be overwritten from a first logical state to a second logical state without a prior erasure, wherein erasure is by physical erase block and not on an individual byte basis, the method comprising the steps of:
-
(1) allocating a first physical erase block of the memory for storing an active file and a deleted file; (2) allocating a second physical erase block of the memory for storing a copy of the active file; (3) storing in an allocated first portion of a third physical erase block of the memory information as to whether a physical erase block of the memory has been allocated to store the active and deleted files or allocated to store the copy of the active file; (4) reclaiming memory space by storing in the second physical erase block of the memory the copy of the active file and by erasing the entire first physical erase block of the memory in order to permit reuse of the first physical erase block of the memory for storage; (5) tracking a number of times a physical erase block of the memory has been cycled and storing that number as a cycle count in an allocated second portion of the third physical erase block of the memory; (6) storing in an allocated third portion of the third physical erase block of the memory a directory of active files; (7) minimizing cycling distributions between physical erase blocks of the memory by choosing for reclamation a physical erase block of the memory with a lowest cycle count. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A processor-controlled method of file management for a nonvolatile semiconductor first memory with a plurality of physical erase blocks, wherein bits of the first memory cannot be overwritten from a first logical state to a second logical state without a prior erasure, wherein erasure is by physical erase block and not on an individual byte basis, the method comprising the steps of:
-
(1) allocating a first physical erase block of the first memory for storing an active file and a deleted file; (2) allocating a second physical erase block of the first memory for storing a copy of the active file; (3) storing in an allocated first portion of a second memory information as to whether a physical erase block of the first memory has been allocated to store the active and deleted files or allocated to store the copy of the active file; (4) reclaiming memory space of the first memory by storing in the second physical erase block of the first memory the copy of the active file and by erasing the entire first physical erase block of the first memory in order to permit reuse of the first physical erase block of the first memory for storage; (5) tracking a number of times a physical erase block of the first memory has been cycled and storing that number as a cycle count in an allocated second portion of the second memory; (6) storing in an allocated third portion of the second memory a directory of active files; (7) minimizing cycling distributions between physical erase blocks of the first memory by choosing for reclamation a physical erase block of the first memory with a lowest cycle count. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A processor-controlled method of file management for a nonvolatile semiconductor memory with a plurality of physical erase blocks, wherein bits of the memory cannot be overwritten from a first logical state to a second logical state without a prior erasure, wherein erasure is by physical erase block and not on an individual byte basis, the method comprising the steps of:
-
(1) allocating a first sector of a first physical erase block of the memory for storing an active file and a second sector of the first physical erase block for storing a deleted file; (2) allocating a first sector of a second physical erase block of the memory for storing a copy of the active file; (3) storing in a first portion of an allocated third physical erase block of the memory information as to whether a sector of a physical erase block of the memory has been allocated to store one of the active and deleted files or allocated to store the copy of the active file; (4) reclaiming memory space by storing in the first sector of the second physical erase block of the memory the copy of the active file and by erasing the entire first physical erase block of the memory in order to permit reuse of the first physical erase block of the memory for storage; (5) tracking a number of time a physical erase block of the memory has been cycled and storing that number as a cycle count in a second portion of the allocated third physical erase block of the memory; (6) storing in a third portion of the allocated third physical erase block of the memory a directory of active files; (7) minimizing cycling distributions between physical erase blocks of the memory by choosing for reclamation a physical erase block of the memory with a lowest cycle court. - View Dependent Claims (21, 22, 23, 24)
-
-
25. A processor-controlled method of file management for a nonvolatile semiconductor first memory with a plurality of physical erase blocks, wherein bits of the memory cannot be overwritten from a first logical state to a second logical state without a prior erasure, wherein erasure is by physical erase block and not on an individual byte basis, the method comprising the steps of:
-
(1) allocating a first sector of a first physical erase block of the first memory for storing an active file and a second sector of the first physical erase block for storing a deleted file; (2) allocating a first sector of a second physical erase block of the first memory for storing a copy of the active file; (3) storing in an allocated first portion of a second memory separate from the first memory information as to whether a sector of a physical erase block of the memory has been allocated to store one of the active and deleted files or allocated to store the copy of the active file; (4) cleaning up the first memory by storing in the first sector of the second physical erase block of the first memory the copy of the active file and by erasing the entire first physical erase block of the first memory in order to permit reuse of the first physical erase block of the first memory for storage; (5) tracking a number of times a physical erase block of the first memory has been cycled and storing that number as a cycle count in an allocated second portion of the second memory; (6) storing in a allocated third portion of the second memory a directory of active files; (7) minimizing cycling distributions between physical erase blocks of the first memory by choosing for reclamation a physical erase block of the first memory with a lowest cycle count. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32)
-
-
33. A processor-controlled method of file management for a nonvolatile semiconductor memory with a plurality of physical erase blocks, wherein bits of the memory cannot be overwritten from a first logical state to a second logical state without a prior erasure, wherein erasure is by physical erase block and not on an individual byte basis, the method comprising the steps of:
-
(1) allocating a first portion of the memory in a first physical erase block for storing an active file and a deleted file; (2) allocating a second portion of the memory in a second physical erase block for storing a copy of the active file; (3) storing in an allocated third portion of the memory information as to whether a portion of the memory has been allocated to store the active and deleted files or allocated to store the copy of the active file; (4) reclaiming memory space by storing in the second portion of the memory the copy of the active file and by erasing the first physical erase block including the first portion of the memory in order to permit reuse of the first portion of the memory for storage; (5) tracking a number of times a portion of the memory has been cycled and storing the number as a cycle count in an allocated fourth portion of the memory; (6) minimizing cycling distributions between physical erase blocks of the memory by choosing for reclamation a portion of the memory with a lowest cycle count.
-
Specification