Performance based memory block usage
First Claim
1. An apparatus, comprising:
- a plurality of blocks of memory cells;
performance measurement logic configured to measure one or more performance characteristics of ones of the blocks, the performance measurement logic further configured to measure single bit per cell performance of the plurality of blocks of memory cells; and
block selection logic configured to select a block for use based on the measured one or more performance characteristics, the block selection logic further configured to select a block for single bit per cell use based on the measured single bit per cell performance of the respective blocks.
5 Assignments
0 Petitions
Accused Products
Abstract
Blocks of memory cells may be selected for use based on one or more measured performance characteristics that may include, but are not limited to, programming time or fail bit count. Blocks may be placed into a single level cell (SLC) block pool and one or more multi-level cell (MLC) block pools based on measured performance characteristic(s). For example, blocks that have a better SLC performance may be placed into the SLC block pool. Blocks may be targeted for garbage collection based on one or more measured performance characteristics. For example, blocks within an SLC block pool may be targeted for garbage collection based on a performance ranking of the SLC blocks, blocks within an MLC block pool may be targeted for garbage collection based on a performance ranking of the MLC blocks. Thus, the better performing blocks may be used more frequently, thereby improving performance.
12 Citations
18 Claims
-
1. An apparatus, comprising:
-
a plurality of blocks of memory cells; performance measurement logic configured to measure one or more performance characteristics of ones of the blocks, the performance measurement logic further configured to measure single bit per cell performance of the plurality of blocks of memory cells; and block selection logic configured to select a block for use based on the measured one or more performance characteristics, the block selection logic further configured to select a block for single bit per cell use based on the measured single bit per cell performance of the respective blocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method comprising:
-
determining, by a control circuit on a non-volatile storage device, one or more performance metrics for ones of a plurality of blocks of memory cells in the non-volatile storage device, the one or more performance metrics comprise a single bit per cell programming time metric; ranking, by the control circuit, the plurality of blocks based on the one or more performance metrics, the ranking the plurality of blocks comprises ranking the blocks based on the single bit per cell programming time metric; and selecting blocks for use, by the control circuit, based on the ranking, the selecting blocks for use comprises selecting blocks for single bit per cell use based on the single bit per cell programming time metric of the respective blocks. - View Dependent Claims (13, 14, 15)
-
-
16. A non-volatile memory device, comprising:
-
a plurality of blocks of memory cells; performance measurement means for measuring one or more performance characteristics of ones of the blocks of memory cells, the one or more performance characteristics comprise a single bit per cell fail bit count (FBC); ranking means for ranking the plurality of blocks based on the one or more performance characteristics, the ranking the plurality of blocks comprises ranking the blocks based on the single bit per cell FBC; and block selection means for selecting blocks for single level cell (SLC) use and for selecting blocks for multi-level cell (MLC) use based on the ranking, the block selection means further selecting blocks for single bit per cell use based on the single bit per cell FBC of the respective blocks. - View Dependent Claims (17, 18)
-
Specification