Data storage device and flash memory control method
AssigneeSilicon Motion, Inc.
InventorPo-Chia CHU
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 and some blocks are pushed into a jail queue to be inaccessible. When the jail queue is full and any block within the spare queue has an erase count greater than any block within the jail queue, for wear leveling between the different blocks within the FLASH memory, the controller releases a first block selected from the jail queue and pushes a second block selected from the spare queue into the jail queue.
Claims18
A data storage device, comprising:
- a FLASH memory, providing a physical storage space comprising a plurality of blocks;
- a controller, for management of the plurality of blocks as well as a spare queue and a jail queue for the plurality of blocks of the FLASH memory, and imprisoning some of the plurality of blocks into the jail queue,
- wherein:
- the controller further monitors erase counts of the blocks within the jail queue and the spare queue;
- and
- when the jail queue is full and any block within the spare queue has an erase count greater than any block within the jail queue, the controller releases a first block from the jail queue and pushes a second block selected from the spare queue into the jail queue.
A FLASH memory control method, comprising:
- managing a plurality of blocks of a FLASH memory as well as a spare queue and a jail queue for the plurality of blocks of the FLASH memory, and
- monitoring erase counts of the blocks within the jail queue and the spare queue;
- and
- releasing a first block from the jail queue and pushing a second block selected from the spare queue into the jail queue when the jail queue is full and any block within the spare queue has an erase count greater than any block within the jail queue.
Dependencies are inferred from the claim text.