IP Library Granted Patent US 8,982,653
Granted Patent B2
US 8,982,653 · App. 13/128,812 · Granted Mar 17, 2015

Method and device for temperature-based data refresh in non-volatile memories

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,653
App. No.
13/128,812
Granted
Mar 17, 2015
Kind
B2
Abstract

The invention relates to a method comprising measuring the temperature of at least one location of a non-volatile memory; determining if said temperature measurement indicates that the data retention time of data stored at said at least one location is reduced below a threshold; and re-writing said data to said non-volatile memory in response to a positive determination.

Claims (58)

1. A method comprising:

determining a temperature threshold based at least in part on a number of program-erase (P/E) cycles performed on at least one location of a non-volatile memory;

measuring one or more temperatures associated with the at least one location of the non-volatile memory;

determining whether at least one measured temperature of the one or more measured temperatures meets or exceeds the temperature threshold; and

re-writing data stored at the at least one location to the non-volatile memory in response to determining that the at least one measured temperature meets or exceeds the temperature threshold.

2. The method according to claim 1 , further comprising:

tracking a number of P/E cycles performed on individual locations of the non-volatile memory;

wherein the temperature threshold is dependent on at least one of:

the number of P/E cycles performed on the at least one location,

a local or a global peak number of P/E cycles performed on a plurality of locations, or

an average number of P/E cycles performed on the plurality of locations.

3. The method according to claim 1 , wherein the re-writing comprises:

reading the data stored in the at least one location of the non-volatile memory; and

writing the data to a different location of the non-volatile memory.

4. The method according to claim 3 , wherein the different location is selected based on information about a number of P/E cycles performed on the different location.

5. The method according to claim 1 , wherein the re-writing comprises:

buffering the data stored in the at least one location of the non-volatile memory;

erasing the at least one location; and

rewriting the buffered data to the at least one erased location.

6. A module comprising

a non-volatile memory;

a data interface configured to access the non-volatile memory;

at least one temperature sensor configured to measure one or more temperatures associated with at least one location of the non-volatile memory; and

a controller connected to the non-volatile memory and the at least one temperature sensor, the controller being configured to:

define a temperature threshold related to the at least one location of the non-volatile memory based at least in part on a number of program-erase (P/E) cycles performed on the at least one location;

determine whether the one or more measured temperatures meet or exceed the temperature threshold; and

re-write data to the non-volatile memory in response to determining that the one or more measured temperatures meet or exceed the temperature threshold.

7. The module according to claim 6 , wherein:

the controller is further configured to track a number of P/E cycles performed on individual locations of the non-volatile memory; and

the temperature threshold is dependent on one or more of:

the number of P/E cycles performed on the at least one location,

a local or a global peak number of P/E cycles performed on a plurality of locations, or

an average number of P/E cycles performed on the plurality of locations.

8. The module according to claim 6 , wherein the re-writing comprises:

reading the data stored in the at least one location of the non-volatile memory; and

writing the data to a different location of the non-volatile memory.

9. The module according to claim 8 , wherein the controller is configured to select the different location based on information about a number of P/E cycles performed on the different location.

10. The module according to claim 6 , further comprising:

a buffer interface configured to write the data to and read the data from a buffer memory;

wherein the re-writing comprises:

buffering the data stored in the at least one location of the non-volatile memory in the buffer memory;

erasing the at least one location; and

re-writing the buffered data to the at least one erased location.

11. The module according to claim 10 , wherein the buffer memory is connected to the buffer interface.

12. The module according to claim 11 , wherein the buffer memory is a volatile memory.

13. The module according to claim 6 , wherein the temperature sensor is implemented:

in the non-volatile memory;

in the controller; or

in the module separate from the non-volatile memory and the controller.

14. An apparatus, comprising the module according to claim 6 , and a host controller configured to access the non-volatile memory via a data interface.

15. The method according to claim 1 , wherein the temperature threshold decreases as the number of P/E cycles increases.

16. The method according to claim 1 , further comprising:

calculating an average temperature based on the one or more measured temperatures;

determining if the average temperature meets or exceeds the temperature threshold; and

re-writing the data stored at the at least one location to the non-volatile memory in response to determining that the average temperature meets or exceeds the temperature threshold.

17. The module according to claim 6 , wherein the temperature threshold decreases as the number of P/E cycles increases.

18. The module according to claim 6 , wherein the controller is further configured to re-write the data to the non-volatile memory in response to determining that the one or more measured temperatures meet or exceed the temperature threshold per time interval.

19. The module according to claim 6 , wherein the controller is further configured to re-write the data to the non-volatile memory in response to determining that a sum of differences between the one or more measured temperatures and the temperature threshold meets or exceeds a predetermined value.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2013
From: NOKIA CORPORATION
To: NOKIA INC.
Reel/Frame 030189/0381 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2013
From: NOKIA INC.
To: MEMORY TECHNOLOGIES LLC
Reel/Frame 030190/0043 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 11, 2011
From: NURMINEN, JANNE TAPANI; MYLLY, KIMMO JUHANI; FLOMAN, MALLI KALEVI
To: NOKIA CORPORATION
Reel/Frame 026263/0261 →