Maintaining erase counts in non-volatile storage systems
DCFirst Claim
1. A data structure, the data structure being arranged in a non-volatile memory associated with a non-volatile memory system, the non-volatile memory system including a non-volatile memory which includes a plurality of blocks, the data structure comprising:
- a first indicator, the first indicator being arranged to provide an indication of a number of times a first block of the plurality of blocks has been erased; and
a header, the header being arranged to contain information relating to the plurality of blocks.
11 Assignments
Litigations
1 Petition
Accused Products
Abstract
Methods and apparatus for storing erase counts in a non-volatile memory of a non-volatile memory system are disclosed. According to one aspect of the present invention, a data structure in a non-volatile memory includes a first indicator that provides an indication of a number of times a first block of a plurality of blocks in a non-volatile memory has been erased. The data structure also includes a header that is arranged to contain information relating to the blocks in the non-volatile memory.
177 Citations
29 Claims
-
1. A data structure, the data structure being arranged in a non-volatile memory associated with a non-volatile memory system, the non-volatile memory system including a non-volatile memory which includes a plurality of blocks, the data structure comprising:
-
a first indicator, the first indicator being arranged to provide an indication of a number of times a first block of the plurality of blocks has been erased; and
a header, the header being arranged to contain information relating to the plurality of blocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
a second indicator, the second indicator being arranged to provide an indication of a number of times a second block of the plurality of blocks has been erased.
-
-
3. The data structure of claim 1 further including:
a second indicator, the second indicator being arranged to provide an indication that a second block of the plurality of blocks is an unusable block.
-
4. The data structure of claim 3 wherein the second indicator is arranged to indicate that the second block has a factory defect.
-
5. The data structure of claim 3 wherein the second indicator is arranged to indicate that the second block has a growing defect.
-
6. The data structure of claim 1 wherein the header includes an average erase count, the average erase count being arranged to indicate an average number of times each block in the plurality of blocks has been erased.
-
7. The data structure of claim 1 wherein the header includes an average erase count, the average erase count being arranged to indicate an average number of times each usable block in the plurality of blocks has been erased.
-
8. The data structure of claim 1 wherein the non-volatile memory is a NAND flash memory.
-
9. A block, the block being arranged in a non-volatile memory associated with a non-volatile memory system, the non-volatile memory system including a non-volatile memory which includes a plurality of physical blocks, wherein each physical block of the plurality of physical blocks has an associated identifier arranged to identify a number of times the physical block has been erased, the block comprising:
-
a first page, the first page being arranged to include a first identifier for a first physical block of the plurality of physical blocks, the first identifier being arranged to identify a number of times the first physical block has been erased; and
a second page, the second page being arranged to include a count, the count being arranged to indicate an average number of times the plurality of physical blocks has been erased. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
a third page, the third page being arranged to include a second identifier for a second physical block of the plurality of physical blocks, the second identifier being arranged to identify a number of times the second physical block has been erased.
-
-
16. The block of claim 9 wherein the second page is a header, the header further being arranged to include a signature arranged to identify the erase count block.
-
17. The block of claim 9 wherein the non-volatile memory is a NAND flash memory.
-
18. A non-volatile memory system comprising:
-
a non-volatile memory, the non-volatile memory including a plurality of blocks;
a system memory; and
means for indicating in the system memory a number of times each usable block included in the plurality of blocks has been erased. - View Dependent Claims (19, 20, 21, 22, 23, 24)
means for indicating in the system memory an average number of times each block included in the plurality of blocks has been erased.
-
-
20. The non-volatile memory system of claim 19 wherein the means for indicating in the system memory the number of times each usable block included in the plurality of blocks has been erased include means for indicating in a data structure of the system memory the number of times each usable block included in the plurality of blocks has been erased, and the means for indicating in the system memory the average number of times each block included in the plurality of blocks has been erased include means for indicating in the data structure the average number of times each block included in the plurality of blocks has been erased.
-
21. The non-volatile memory system of claim 20 wherein the data structure is an erase count block.
-
22. The non-volatile memory system of claim 21 further including:
means for indicating in the system memory when a first block included in the plurality of blocks is unusable.
-
23. The non-volatile memory system of claim 22 wherein the means for indicating in the non-volatile memory when the first block included in the plurality of blocks is unusable include means for indicating in the non-volatile memory when the first block includes a factory defect and means for indicating in the system memory when the first block includes a growing defect.
-
24. The non-volatile memory system of claim 18 wherein the non-volatile memory is a NAND flash memory.
-
25. A data structure, the data structure being arranged in a physical block of non-volatile memory associated with a non-volatile memory system, the non-volatile memory system including a non-volatile memory which includes a plurality of blocks, the data structure comprising:
-
a first plurality of indicators, the first plurality of indicators being arranged to provide indications of numbers of times blocks included in the plurality of blocks have been erased; and
a plurality of pages, the pages of the plurality of pages being substantially divided into groups of bytes arranged to contain the first plurality of indicators, wherein a first page of the plurality of pages includes a first group of the groups of bytes that is arranged to contain a first indicator of the first plurality of indicators which is associated with a first block of the plurality of blocks. - View Dependent Claims (26, 27, 28, 29)
a second plurality of indicators, the second plurality of indicators being arranged to indicate when blocks included in the plurality of blocks are substantially unusable.
-
-
27. The data structure of claim 26 wherein the groups of bytes are further arranged to contain the second plurality of indicators.
-
28. The data structure of claim 26 wherein the second plurality of indicators includes a second indicator which is arranged to identify when a second block of the plurality of blocks has a manufacturing defect and a third indicator which is arranged to identify when the second block has a growing defect.
-
29. The data structure of claim 26 wherein the non-volatile memory is a NAND flash memory.
Specification