IP Library Granted Patent US 8,982,619
Granted Patent B2
US 8,982,619 · App. 14/486,974 · Granted Mar 17, 2015

Managing non-volatile media

Inventors: John Strasser (Kaysville, UT); David Flynn (Sandy, UT); Jeremy Fillingim (Salt Lake City, UT); Robert Wood (Niwot, CO); Jea Hyun (South Jordan, UT); Hairong Sun (Superior, CO)
Assignee: Intelligent Intellectual Property Holdings 2 LLC
G11C16/26G11C16/3404G11C29/028G06F11/26
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,982,619
App. No.
14/486,974
Granted
Mar 17, 2015
Kind
B2
Abstract

Apparatuses, systems, and methods are disclosed to manage non-volatile media. A method includes determining a configuration parameter for a set of storage cells of a non-volatile recording medium. A method includes reading data from a set of storage cells using a determined configuration parameter. A method includes adjusting a configuration parameter based on read data.

Claims (32)

1. A method comprising:

determining a configuration parameter for a set of storage cells of a solid state recording medium;

reading data from the set of storage cells using the determined configuration parameter; and

adjusting the configuration parameter based on the read data.

2. The method of claim 1 , further comprising:

re-reading the data from the set of storage cells using the adjusted configuration parameter; and

readjusting the configuration parameter based on the re-read data.

3. The method of claim 1 , wherein adjusting the configuration parameter based on the read data is performed reactively in response to a trigger and the read data comprises closed loop feedback data from the set of storage cells.

4. The method of claim 1 , wherein determining the configuration parameter is based on one or more media characteristics for the set of storage cells such that the configuration parameter is determined proactively in an open loop manner without feedback from the set of storage cells.

5. The method of claim 1 , wherein the configuration parameter comprises a read voltage threshold for the set of storage cells.

6. The method of claim 1 , further comprising:

storing different configuration parameters for different sub-groupings of the set of storage cells; and

reconfiguring the entire set of storage cells to use one of the different configuration parameters in response to a storage request for a sub-grouping associated with the one of the different configuration parameters.

7. The method of claim 1 , wherein adjusting the configuration parameter comprises adjusting a guard band, the guard band comprising a separation distance between voltage abodes for the set of storage cells.

8. The method of claim 1 , wherein adjusting the configuration parameter comprises adjusting multiple read voltage thresholds for each storage cell of the set of storage cells.

9. The method of claim 8 , wherein the multiple read voltage thresholds are adjusted using a single command.

10. The method of claim 1 , wherein adjusting the configuration parameter comprises reducing a program voltage for the set of storage cells over time.

11. The method of claim 1 , further comprising decreasing a data refresh interval for the set of storage cells over time, the data refresh interval comprising an interval at which a storage capacity recovery operation is performed for the set of storage cells.

12. An apparatus comprising:

a configuration parameter module configured to determine a read voltage threshold for one or more NAND flash storage cells;

a storage cell configuration module configured to configure the one or more storage cells to use the determined read voltage threshold; and

an adjustment module configured to adjust the read voltage threshold based on closed loop feedback from the one or more NAND flash storage cells.

13. The apparatus of claim 12 , wherein the adjustment module is configured to make a same adjustment to the read voltage threshold for one or more of an erase block, a page, a set of pages, an error-correcting code (ECC) codeword, a division within a page, a die, a plane of a die, and a chip comprising the one or more NAND flash storage cells.

14. The apparatus of claim 12 , further comprising a data set read module configured to read data from the one or more NAND flash storage cells in response to a trigger, the read data comprising the closed loop feedback.

15. The apparatus of claim 14 , wherein the trigger comprises one or more of a read request for the set of storage cells, an uncorrectable error for the data of the set of storage cells, a startup operation for a device comprising the set of storage cells, a time interval, and a regular shutdown operation for a device comprising the set of storage cells.

16. The apparatus of claim 12 , wherein the adjustment module is configured to stop adjusting the read voltage threshold in response to a retry threshold being satisfied.

17. The apparatus of claim 12 , wherein the adjustment module is configured to determine whether to make an adjustment to the read voltage threshold based on one or more risk factors associated with the adjustment, the one or more risk factors comprising one or more of an error rate, an erase cycle count, a storage request latency, an age, and a number of previous adjustments for the one or more NAND flash storage cells.

18. An apparatus comprising:

means for detecting an uncorrectable error in data read from a set of non-volatile memory cells; and

means for iteratively adjusting one or more read voltage thresholds for the set of memory cells and re-reading the data from the set of memory cells until the uncorrectable error in the data is correctable.

19. The apparatus of claim 18 , further comprising means for determining an initial value for the one or more read voltage thresholds based on one or more media characteristics for the set of memory cells, the initial value being iteratively adjusted.

20. The apparatus of claim 18 , wherein the data read from the set of non-volatile memory cells comprises a subset of data stored by the set of non-volatile memory cells and the one or more read voltage thresholds are adjusted based on the subset of data.

Assignments (7)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2024
From: SANDISK TECHNOLOGIES LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069796/0423 →
CHANGE OF NAME Recorded May 25, 2016
From: SANDISK TECHNOLOGIES INC
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 038807/0948 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2016
From: INTELLIGENT INTELLECTUAL PROPERTY HOLDINGS 2 LLC
To: PS12 LUXCO S.A.R.L.
Reel/Frame 038362/0575 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2016
From: PS12 LUXCO S.A.R.L.
To: LONGITUDE ENTERPRISE FLASH S.A.R.L.
Reel/Frame 038362/0604 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2016
From: LONGITUDE ENTERPRISE FLASH SARL
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 038324/0628 →
Continuity (8)
Continuation 14106566 · Dec 13, 2013
Continuation 13719045 · Dec 18, 2012
Continuation In Part 13189402 · Jul 22, 2011
Continuation In Part 13015458 · Jan 27, 2011
Continuation In Part 13175637 · Jul 1, 2011
Provisional Application 61298861 · Jan 27, 2010
Provisional Application 61305205 · Feb 17, 2010
Related Publication 20150006984A1 · Jan 1, 2015