IP Library Granted Patent US 8,699,287
Granted Patent B2
US 8,699,287 · App. 13/962,779 · Granted Apr 15, 2014

Techniques for increasing a lifetime of blocks of memory

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,699,287
App. No.
13/962,779
Granted
Apr 15, 2014
Kind
B2
Abstract

Techniques are described for increasing a lifetime of a plurality of blocks of memory by equalizing a variation between the blocks. In operation, blocks to be written are allocated from a set of blocks having a lifetime factor below a threshold. The threshold is reset as required to resupply the set of blocks available for allocation.

Claims (33)

1. A method comprising:

determining that one or more blocks of a memory needs to be reclaimed in accordance with equalizing a variation between the blocks;

allocating at least one of the blocks, to be written in accordance with the equalizing, in response to the determining, and selected from a subset of the blocks wherein a respective lifetime factor is below a threshold set prior to the allocating;

selectively setting the threshold anew, in accordance with a predetermined criteria, to resupply the subset of the blocks; and

wherein the determining, allocating, and selectively setting are performed on a continuing basis in accordance with the equalizing.

2. The method of claim 1 , wherein the predetermined criteria is that the subset of the blocks are exhausted.

3. The method of claim 1 , wherein the subset of blocks is a first subset of the blocks and the predetermined criteria is that all of the blocks previously in the first subset of the blocks are now comprised in a second subset of the blocks wherein the respective lifetime factor is above the threshold.

4. The method of claim 1 , wherein the determining comprises monitoring at least one factor that affects a lifetime of the blocks.

5. The method of claim 4 , wherein the blocks to be written are selected based at least in part on how many times a block is erased and programmed.

6. The method of claim 4 , wherein the blocks to be written are selected based at least in part on one or more of how many reads were executed, how much time has lapsed from a program operation to a read, how much time the blocks have been used, a frequency of writes, a rate of operations, and a total permitted number of operations.

7. The method of claim 1 , wherein the equalizing is based on one or more of a number of errors detected during a read/write, a number of errors corrected during a read/write, a length of time to erase a block, a length of time for a block to program, a number of entries utilized during programming, a number of intervening reads of a page, a number of intervening reads in a neighboring page, and a number of erases and program cycles of a block.

8. A system comprising:

means for determining that one or more blocks of a memory needs to be reclaimed in accordance with equalizing a variation between the blocks;

means for allocating at least one of the blocks, to be written in accordance with the equalizing, in response to the determining, and selected from a subset of the blocks wherein a respective lifetime factor is below a threshold set prior to the allocating;

means for selectively setting the threshold anew, in accordance with a predetermined criteria, to resupply the subset of the blocks; and

means for wherein the determining, allocating, and selectively setting are performed on a continuing basis in accordance with the equalizing.

9. The system of claim 8 , wherein the predetermined criteria is that the subset of the blocks are exhausted.

10. The system of claim 8 , wherein the subset of blocks is a first subset of the blocks and the predetermined criteria is that all of the blocks previously in the first subset of the blocks are now comprised in a second subset of the blocks wherein the respective lifetime factor is above the threshold.

11. The system of claim 8 , wherein the determining comprises monitoring at least one factor that affects a lifetime of the blocks.

12. The system of claim 11 , wherein the blocks to be written are selected based at least in part on how many times a block is erased and programmed.

13. The system of claim 11 , wherein the blocks to be written are selected based at least in part on one or more of how many reads were executed, how much time has lapsed from a program operation to a read, how much time the blocks have been used, a frequency of writes, a rate of operations, and a total permitted number of operations.

14. The system of claim 8 , wherein the equalizing is based on one or more of a number of errors detected during a read/write, a number of errors corrected during a read/write, a length of time to erase a block, a length of time for a block to program, a number of entries utilized during programming, a number of intervening reads of a page, a number of intervening reads in a neighboring page, and a number of erases and program cycles of a block.

15. A non-transitory computer readable medium having a set of instructions stored therein which when executed by a processing element causes the processing element to perform functions comprising:

determining that one or more blocks of a memory needs to be reclaimed in accordance with equalizing a variation between the blocks;

allocating at least one of the blocks, to be written in accordance with the equalizing, in response to the determining, and selected from a subset of the blocks wherein a respective lifetime factor is below a threshold set prior to the allocating;

selectively setting the threshold anew, in accordance with a predetermined criteria, to resupply the subset of the blocks; and

wherein the determining, allocating, and selectively setting are performed on a continuing basis in accordance with the equalizing.

16. The non-transitory computer readable medium of claim 15 , wherein the predetermined criteria is that the subset of the blocks are exhausted.

17. The non-transitory computer readable medium of claim 15 , wherein the subset of blocks is a first subset of the blocks and the predetermined criteria is that all of the blocks previously in the first subset of the blocks are now comprised in a second subset of the blocks wherein the respective lifetime factor is above the threshold.

18. The non-transitory computer readable medium of claim 15 , wherein the determining comprises monitoring at least one factor that affects a lifetime of the blocks.

19. The non-transitory computer readable medium of claim 18 , wherein the blocks to be written are selected based at least in part on how many times a block is erased and programmed.

20. The non-transitory computer readable medium of claim 18 , wherein the blocks to be written are selected based at least in part on one or more of how many reads were executed, how much time has lapsed from a program operation to a read, how much time the blocks have been used, a frequency of writes, a rate of operations, and a total permitted number of operations.

21. The non-transitory computer readable medium of claim 15 , wherein the equalizing is based on one or more of a number of errors detected during a read/write, a number of errors corrected during a read/write, a length of time to erase a block, a length of time for a block to program, a number of entries utilized during programming, a number of intervening reads of a page, a number of intervening reads in a neighboring page, and a number of erases and program cycles of a block.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2015
From: LSI CORPORATION
To: SEAGATE TECHNOLOGY LLC
Reel/Frame 034776/0363 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS INCLUDED IN SECURITY INTEREST PREVIOUSLY RECORDED AT REEL/FRAME (032856/0031) Recorded Nov 6, 2014
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 034177/0257 →