Patent ID: 11875038
Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 14:
15. A system for storing data, comprising:
one or more memory means; and
a controller means configured to perform a method for allocating blocks to replace one or more defective blocks in a solid state data storage device, the method comprising:
detecting a defective block in a Chip Enable (CE) location, wherein the CE location comprises a plurality of NAND group locations;
determining that a free block is available in a first free block list to replace the defective block, wherein:
the first free block list is refilled from a queue of free blocks from an unallocated block pool, wherein the first free block list is a subset of the unallocated block pool and distinct from the unallocated block pool;
refilling the first free block list comprises selecting a free block from the unallocated block pool that has a same CE location as a free block allocated from the first free block list to refill the free block list;

decreasing a remaining free block count associated with the first free block list;
determining that the remaining free block count of the first free block list is greater than or equal to a minimum remaining block count;
replacing the defective block with the free block from the first free block list when the free block is available from the free block list and the remaining free block count of the first free block list is greater than or equal to the minimum remaining block count, wherein the defective block remains in a read-write mode;
allocating the free block responsive to receiving a write command for the CE location; and
programming data to the allocated free block, wherein the data is associated with the write command.