Data dispersion-based memory management
AssigneeMicron Technology, Inc.
InventorsAshutosh Malshe, Vamsi Pavan Rayaprolu, Kishore K. Muchherla
Life of this patent
Estimating the term…
Abstract
A method includes determining a respective number of and respective locations of valid data portions of a plurality of blocks of NAND memory cells, based on the respective locations of the valid data portions, determining respective dispersions of the valid data portions within the plurality of blocks of NAND memory cells, based at least on the respective dispersions, selecting a block of NAND memory cells from the plurality of blocks of NAND memory cells, and performing a folding operation on the selected block.
Claims20
A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to:
- determine candidate memory blocks based on respective valid translation counts (VTC) of a plurality of memory blocks;
- determine respective dispersions of valid data portions in pages in each candidate memory block;
- select a candidate memory block from the candidate blocks of NAND memory cells;
- and
- perform a folding operation on the selected candidate memory block.
An apparatus, comprising:
- a plurality of memory blocks;
- and
- a controller coupled to the plurality of memory blocks, wherein the controller is configured to:
- determine a respective number of and respective locations of valid translation units in the plurality of memory blocks;
- based on the respective number of the valid translation units, determine respective valid translation unit counts (VTC) of the plurality of memory blocks;
- determine candidate memory blocks based on the respective VTC;
- determine respective dispersions of the valid translation units in pages in each candidate memory block;
- select a candidate memory block;
- and
- perform a folding operation on a portion of the selected candidate block.
A system, comprising:
- a plurality of blocks of non-volatile memory cells;
- and
- a controller coupled to the plurality of blocks, wherein the controller is configured to:
- determine a respective valid translation unit count (VTC) of a subset of the memory blocks is less than a validity threshold;
- designate the subset as candidate memory blocks;
- determine respective dispersions of valid translation units in pages of each of the candidate memory blocks;
- select a candidate memory block based on the respective dispersions of the translation units;
- and
- perform a folding operation on the selected candidate memory block.
Dependencies are inferred from the claim text.