IP Library Granted Patent US 10,467,134
Granted Patent B2
US 10,467,134 · App. 15/247,910 · Granted Nov 5, 2019

Dynamic anneal characteristics for annealing non-volatile memory

Inventors: Navneeth Kankani (Fremont, CA); Linh Truong (San Jose, CA); Sarath Puthenthermadam (San Jose, CA); Deepanshu Dutta (San Jose, CA)
Assignee: SANDISK TECHNOLOGIES LLC
G06F12/0246G06F2212/1036G06F2212/7205G06F2212/7206G06F2212/7207
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 10,467,134
App. No.
15/247,910
Granted
Nov 5, 2019
Kind
B2
Abstract

Apparatuses, systems, methods, and computer program products are disclosed for annealing non-volatile memory. A controller identifies one or more life cycle characteristics of a non-volatile storage element. The controller selects an anneal duration and an anneal temperature for annealing the non-volatile storage element. The anneal duration and the anneal temperature are based on the one or more life cycle characteristics. The controller anneals the non-volatile storage element using the selected anneal duration and anneal temperature.

Claims (35)

1. A method comprising:

determining one or more life cycle characteristics of a non-volatile memory element;

determining a set of anneal characteristics for the non-volatile memory element, the set of anneal characteristics based on the one or more life cycle characteristics, the set of anneal characteristics comprising one or more of an anneal duration and an anneal temperature; and

annealing the non-volatile memory element using the set of anneal characteristics.

2. The method of claim 1 , wherein determining the set of anneal characteristics comprises referencing a predetermined correspondence between anneal characteristics and life cycle characteristics, the predetermined correspondence based on anneal performance of another non-volatile memory element.

3. The method of claim 1 , wherein determining the set of anneal characteristics is based on results of one or more previous anneals for the non-volatile memory element.

4. The method of claim 1 , wherein determining the set of anneal characteristics comprises determining whether to perform one of a partial anneal and a full anneal for the non-volatile memory element.

5. The method of claim 1 , wherein the one or more life cycle characteristics comprise a pattern of use for the non-volatile memory element, the pattern of use identified by a driver operating on a host, the driver monitoring data flow between the host and the non-volatile memory element.

6. The method of claim 1 , wherein the one or more life cycle characteristics include one or more of a number of previous anneals, an age, a program/erase count, a failed bit count, and an error rate for the non-volatile memory element.

7. The method of claim 1 , wherein the one or more of the anneal temperature and the anneal duration increases for successive anneals of the non-volatile memory element.

8. The method of claim 1 , further comprising performing a garbage collection operation that moves valid data off of the non-volatile memory element in response to determining that a time remaining before annealing the non-volatile memory element satisfies a threshold, the threshold based on a time to move remaining valid data off of the non-volatile memory element.

9. The method of claim 8 , wherein determining that the remaining time before annealing satisfies the threshold is in response to determining that the remaining time before annealing does not exceed the time to move remaining valid data off of the non-volatile memory element, plus a predetermined margin.

10. The method of claim 1 , further comprising delaying annealing the non-volatile memory element in response to determining that an endurance gain for annealing the non-volatile memory element does not exceed write amplification caused by moving valid data off of the non-volatile memory element.

11. The method of claim 10 , further comprising determining the endurance gain for annealing the non-volatile memory element based on one or more of the anneal duration, the anneal temperature and the one or more life cycle characteristics.

12. A system comprising:

an array of non-volatile memory elements;

a heating element for annealing one or more of the non-volatile memory elements; and

a controller configured to

select a non-volatile memory element for annealing, from the array of non-volatile memory elements, based on one or more life cycle characteristics of the selected non-volatile memory element,

determine an anneal duration for annealing the selected non-volatile memory element, the anneal duration based on the one or more life cycle characteristics, and

control the heating element to anneal the selected non-volatile memory element for the determined anneal duration.

13. The system of claim 12 , wherein the controller is further configured to:

determine an anneal temperature, based on the one or more life cycle characteristics, for annealing the selected non-volatile memory element; and

control the heating element to anneal the selected non-volatile memory element for the determined anneal temperature.

14. The system of claim 12 , wherein the controller is further configured to perform a garbage collection operation that moves valid data off of the selected non-volatile memory element in response to determining that a time remaining before annealing the selected non-volatile memory element satisfies a threshold, the threshold based on a time to move remaining valid data off of the selected non-volatile memory element.

15. An apparatus comprising:

a controller configured to,

identify one or more life cycle characteristics of a non-volatile storage element;

select an anneal duration and an anneal temperature for annealing the non-volatile storage element, the anneal duration and the anneal temperature both selected based on the one or more life cycle characteristics; and

anneal the non-volatile storage element using the selected anneal duration and anneal temperature.

16. The apparatus of claim 15 , wherein selecting an anneal duration and an anneal temperature comprises determining whether to perform one of a partial anneal and a full anneal for the non-volatile storage element.

17. The apparatus of claim 15 , wherein the controller is further configured to perform a garbage collection operation that moves valid data off of the non-volatile storage element in response to determining that a time remaining before annealing the non-volatile storage element satisfies a threshold, the threshold based on a time to move remaining valid data off of the non-volatile storage element.

18. The apparatus of claim 15 , wherein the controller is further configured to delay annealing the non-volatile storage element in response to determining that an endurance gain for annealing the non-volatile storage element does not exceed write amplification caused by moving valid data off of the non-volatile storage element.

19. The apparatus of claim 15 , wherein the controller comprises a hardware controller for a storage device, the storage device comprising the non-volatile storage element.

20. The apparatus of claim 15 , wherein the controller comprises a device driver for a storage device, the storage device comprising the non-volatile storage element, the device driver comprising one or more of logic hardware and executable code, the executable code stored on one or more computer readable storage media.

Assignments (4)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2016
From: KANKANI, NAVNEETH; TRUONG, LINH; PUTHENTHERMADAM, SARATH; DUTTA, DEEPANSHU
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 039550/0299 →
Continuity (1)
Related Publication 20180060230A1 · Mar 1, 2018
Cited By (1)
US 12,190,966