BAD MEMORY UNIT DETECTION IN A SOLID STATE DRIVE
First Claim
1. An apparatus comprising:
- a memory configured to process a plurality of read/write operations, said memory comprising a plurality of memory unit granularities each having a size less than a total size of said memory; and
a controller configured to (i) process a plurality of I/O requests to said memory units of said memory that are not marked as bad on a memory unit list, (ii) track a plurality of bad blocks of said memory, and (iii) determine which of said memory units to mark as bad based on a test of whether a unit of memory larger than a block of said memory has failed, wherein said test is based on a threshold of said bad blocks in said unit of memory.
2 Assignments
0 Petitions
Accused Products
Abstract
An apparatus comprising a memory and a controller. The memory is configured to process a plurality of read/write operations. The memory comprises a plurality of memory unit granularities each having a size less than a total size of the memory. The controller is configured to process a plurality of I/O requests to the memory units of the memory that are not marked as bad on a memory unit list. The controller is configured to track a plurality of bad blocks of the memory. The controller is configured to determine which of the memory units to mark as bad based on a test of whether a unit of memory larger than a block of the memory has failed. The test is based on a threshold of the bad blocks in the unit of memory.
36 Citations
20 Claims
-
1. An apparatus comprising:
-
a memory configured to process a plurality of read/write operations, said memory comprising a plurality of memory unit granularities each having a size less than a total size of said memory; and a controller configured to (i) process a plurality of I/O requests to said memory units of said memory that are not marked as bad on a memory unit list, (ii) track a plurality of bad blocks of said memory, and (iii) determine which of said memory units to mark as bad based on a test of whether a unit of memory larger than a block of said memory has failed, wherein said test is based on a threshold of said bad blocks in said unit of memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. An apparatus comprising:
-
an interface configured to process a plurality of read/write operations to/from a memory; and a control circuit configured to (i) process a plurality of I/O requests to memory units of said memory that are not marked as bad on a memory unit list, (ii) track a plurality of bad blocks of said memory, and (iii) determine which of said memory units to mark as bad based on a test of whether a unit of memory larger than a block of said memory has failed, wherein said test is based on a threshold of said bad blocks in said unit of memory.
-
-
20. A method for detecting bad memory units in a solid-state drive (SSD), comprising the steps of:
-
(A) processing a plurality of read/write operations to/from a memory; (B) processing a plurality of I/O requests to memory units of said memory that are not marked as bad on a memory unit list; (C) tracking a plurality of bad blocks of said memory; and (D) determining which of said memory units to mark as bad based on a test of whether a unit of memory larger than a block of said memory has failed, wherein said test is based on a threshold of said bad blocks in said unit of memory.
-
Specification