Data storage device and flash memory control method
AssigneeSilicon Motion, Inc.
InventorsPo-Chia CHU, Yen-Hung LIN
Life of this patent
Estimating the term…
Abstract
A FLASH memory control technique with wear leveling between the different blocks of the FLASH memory. By a controller managing the blocks of a FLASH memory within a data storage device, some of the blocks are pushed into a spare queue waiting to be allocated as data blocks or system blocks. When the number of blocks within the spare queue is lower than a clean threshold and any block within the spare queue has an erase count greater than an overused lower threshold, the controller performs a garbage correction operation with wear leveling between the different blocks.
Claims20
A data storage device, comprising:
- a flash memory;
- and
- a controller, for management of a spare queue for the flash memory, blocks within the spare queue contain no valid data and are waiting for allocation,
- wherein:
- the controller further manages a jail queue to freeze blocks whose erase counts are greater than an overused higher threshold;
- the controller checks whether any of two specific conditions is true to perform a garbage collection operation with wear leveling accordingly;
- one of the two specific conditions shows that the blocks frozen within the jail queue are more than a predetermined amount and another of the two specific condition shows that the flash memory is in a power-cycle routine;
- and
- when performing the garbage collection operation with wear leveling, the controller selects one block from higher erase count blocks in the spare queue to collect valid data.
A flash memory control method, comprising:
- managing a spare queue for a flash memory, wherein blocks within the spare queue contain no valid data and are waiting for allocation;
- managing a jail queue for the flash memory to freeze blocks whose erase counts are greater than an overused higher threshold;
- and
- checking whether any of two specific conditions is true to perform a garbage collection operation with wear leveling accordingly,
- wherein:
- one of the two specific conditions shows that the blocks frozen within the jail queue are more than a predetermined amount and another of the two specific condition shows that the flash memory is in a power-cycle routine;
- and
- when the garbage collection operation with wear leveling is performed, one block is selected from higher erase count blocks in the spare queue to collect valid data.
Dependencies are inferred from the claim text.