IP Library › Granted Patent US 9,141,534
Granted Patent B2
US 9,141,534 · App. 13/756,946 · Granted Sep 22, 2015

Tracking read accesses to regions of non-volatile memory

Inventors: Manuel Antonio D'Abreu (El Dorado Hills, CA); Stephen Skala (Fremont, CA)
Assignee: SANDISK TECHNOLOGIES INC.
G06F12/0246G11C16/3431
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 9,141,534
App. No.
13/756,946
Granted
Sep 22, 2015
Kind
B2
Abstract

A data storage device includes a memory and a controller and may perform a method that includes updating, in the controller, a value of a particular counter of a set of counters in response to a read access to a particular region of the non-volatile memory that is tracked by the particular counter. Read accesses to a first region of the non-volatile memory are tracked by a first counter of the set of counters and read accesses to a second region of the non-volatile memory are tracked by a second counter of the set of counters. The method includes, in response to the value of the particular counter indicating that a count of read accesses to the particular region equals or exceeds a first threshold, initiating a remedial action to the particular region of the non-volatile memory.

Claims (28)

1. A method comprising:

in a data storage device that includes a controller and a non-volatile memory that is logically partitioned into a first set of multiple regions, performing:

updating, in the controller of the data storage device, a value of a first counter of a set of counters in response to a read access to a first region of the non-volatile memory, wherein read accesses to the first region of the non-volatile memory are tracked by the first counter of the set of counters and wherein read accesses to a second region of the non-volatile memory are tracked by a second counter of the set of counters;

in response to the value of the first counter indicating that a count of read accesses to the first region equals or exceeds a first threshold, initiating a remedial action to the first region of the non-volatile memory; and

in response to a triggering event:

modifying logical partitioning of the non-volatile memory to form a second set of multiple regions, wherein a first number of regions in the first set of multiple regions is less than a second number of regions in the second set of multiple regions; and

updating a mapping of regions to counters to track each region of the second set of multiple regions with a respective counter of the set of counters.

2. The method of claim 1 , wherein the remedial action includes at least one of a data move operation or a data refresh operation.

3. The method of claim 1 , further comprising, in response to completion of the remedial action to the first region, resetting the value of the first counter.

4. The method of claim 1 , further comprising, during a session shut-down operation of the data storage device, storing values of the set of counters to the non-volatile memory.

5. The method of claim 1 , further comprising, during a session initialization operation of the data storage device, retrieving stored counter values from the non-volatile memory and initializing counters of the set of counters according to the stored counter values.

6. The method of claim 1 , further comprising:

modifying the logical partitioning of the non-volatile memory to form a third set of multiple regions, wherein a third number of regions in the third set of multiple regions is greater than the second number of regions in the second set of multiple regions; and

updating the mapping of regions to counters to track each region of the third set of multiple regions with a respective counter of the set of counters.

7. The method of claim 1 , wherein the triggering event corresponds to a count of erase cycles equaling or exceeding an erase threshold.

8. The method of claim 1 , wherein the non-volatile memory includes a flash memory.

9. A data storage device comprising:

a non-volatile memory; and

a controller including a set of counters, wherein the controller is configured to update a value of a first counter of the set of counters in response to a read access to a first region of the non-volatile memory, wherein read accesses to the first region of the non-volatile memory are tracked by the first counter of the set of counters and wherein read accesses to a second region of the non-volatile memory are tracked by a second counter of the set of counters,

wherein, in response to the value of the first counter indicating that a count of read accesses to the first region equals or exceeds a first threshold, the controller is configured to initiate a remedial action to the first region of the non-volatile memory, and

wherein the controller is further configured to logically partition the non-volatile memo into a first set of multiple regions and, in response to a triggering event, to modify logical partitioning of the non-volatile memory to form a second set of multiple regions wherein a first number of regions in the first set of multiple regions is less than a second number of regions in the second set of multiple regions, and to update a mapping of regions to counters to track each region of the second set of multiple regions with a respective counter of the set of counters.

10. The data storage device of claim 9 , wherein the remedial action includes at least one of a data move operation or a data refresh operation.

11. The data storage device of claim 9 , wherein the controller is configured to, in response to completion of the remedial action to the first region, reset the value of the first counter.

12. The data storage device of claim 9 , wherein the controller is further configured to store values of the set of counters to the non-volatile memory during a session shut-down operation of the data storage device.

13. The data storage device of claim 9 , wherein the controller is further configured to retrieve stored counter values from the non-volatile memory and initialize counters of the set of counters according to the stored counter values during a session initialization operation of the data storage device.

14. The data storage device of claim 9 , wherein the controller is further configured to modify the logical partitioning of the non-volatile memory to form a third set of multiple regions, wherein a third number of regions in the third set of multiple regions is greater than the second number of regions in the second set of multiple regions, and to update the mapping of regions to counters to track each region of the third set of multiple regions with a respective counter of the set of counters.

15. The data storage device of claim 9 , wherein the triggering event corresponds to a count of erase cycles equaling or exceeding an erase threshold.

16. The data storage device of claim 9 , wherein the non-volatile memory includes a flash memory.

Assignments (5)
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/0898 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2013
From: D'ABREU, MANUEL ANTONIO; SKALA, STEPHEN
To: SANDISK TECHNOLOGIES INC.
Reel/Frame 029739/0932 →
Continuity (2)
Provisional Application 61737668 · Dec 14, 2012
Related Publication 20140173180A1 · Jun 19, 2014