IP Library Granted Patent US 10,381,073
Granted Patent B1
US 10,381,073 · App. 15/926,986 · Granted Aug 13, 2019

Converged structure supporting buffering of recent writes and overwrite disturb remediation

Inventor: Samuel E. Bradshaw (Sacramento, CA)
Assignee: MICRON TECHNOLOGY, INC.
G11C13/0033G11C13/003G11C13/0004G11C13/004G11C13/0061
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,381,073
App. No.
15/926,986
Granted
Aug 13, 2019
Kind
B1
Abstract

A computer-implemented method for remediating disruptions to memory cells is described. The method includes writing user data to an aggressor memory cell and determining one or more of a write timestamp and an overwrite count associated with the aggressor memory cell. The write timestamp indicates a last write to the aggressor memory cell and the overwrite count indicates the number of writes to the aggressor memory cell during a time period. Based on one or more of the write timestamp and the overwrite count, an increment value is determined for use with a disturb counter associated with a neighbor memory cell of the aggressor memory cell. In particular, the determined increment value is used, in response to the write, to increment the disturb counter associated with the neighbor memory cell. When the disturb counter is greater than or equal to a disturb threshold, remediation for the neighbor memory cell is performed.

Claims (67)

1. A computer-implemented method for remediating memory cells, comprising:

writing user data to an aggressor memory cell;

locating a first entry for the aggressor memory cell in a first data structure, wherein the first data structure includes entries for each memory cell in a first set of memory cells, including a neighbor memory cell of the aggressor memory cell and the aggressor memory cell, and each entry in the first data structure includes a disturb counter corresponding to an associated memory cell;

determining, based on the first entry, whether a second data structure includes a second entry corresponding to the aggressor memory cell, wherein the second data structure includes entries for a second set of memory cells written during a first time period, wherein the second set of memory cells is a subset of the first set of memory cells and wherein each entry in the second data structure includes a write timestamp and overwrite count corresponding to an associated memory cell;

determining, based on the second entry, one or more of a write timestamp and an overwrite count associated with the aggressor memory cell, wherein the write timestamp indicates a last write to the aggressor memory cell and the overwrite count indicates the number of writes to the aggressor memory cell during a time period;

determining, based on one or more of the write timestamp and the overwrite count, an increment value of a disturb counter associated with the neighbor memory cell;

incrementing, in response to the write, the disturb counter associated with the neighbor memory cell based on the increment value; and

performing, in response to the disturb counter being greater than or equal to a disturb threshold, remediation for the neighbor memory cell.

2. The computer-implemented method of claim 1 , wherein the aggressor memory cell and the neighbor memory cell are directly adjacent on a memory device.

3. The computer-implemented method of claim 1 , wherein the determining the increment value comprises:

determining a difference between a current time and the write timestamp;

comparing the difference with a plurality of ranges, wherein each range in the plurality of ranges corresponds to a value; and

setting the increment value to a value of a range in the set of ranges within which the difference falls.

4. The computer-implemented method of claim 3 , wherein the determining the increment value further comprises:

mapping the overwrite count to a multiplier value; and

multiplying the increment value by the multiplier value.

5. The computer-implemented method of claim 1 , wherein each entry in the second data structure includes a flag that indicates whether user data of a corresponding memory cell is buffered in a third data structure,

wherein the third data structure buffers user data for a third set of memory cells written during a second time period,

wherein the second time period is a subset of the first time period and the third set of memory cells is a subset of the second set of memory cells.

6. The computer-implemented method of claim 1 , wherein the aggressor memory cell and the neighbor memory cell are phase change memory cells, and

wherein writes to the aggressor memory cell dissipate heat to the neighbor memory cell.

7. The computer-implemented method of claim 1 , wherein the performing remediation comprises:

determining whether errors experienced by the neighbor memory cell are greater than or equal to a threshold value;

rewriting, in response to determining that the errors experienced by the neighbor memory cell are greater than or equal to the threshold value, data to the neighbor memory cell; and

resetting, in response to rewriting data to the neighbor memory cell, the disturb counter associated with the neighbor memory cell.

8. A non-transitory machine-readable storage medium, which stores instructions that, when executed by a processor, cause the processor to:

write user data to an aggressor memory cell;

locate a first entry for the aggressor memory cell in a first data structure, wherein the first data structure includes entries for each memory cell in a first set of memory cells, including a neighbor memory cell of the aggressor memory cell and the aggressor memory cell, and each entry in the first data structure includes a disturb counter corresponding to an associated memory cell;

determine, based on the first entry, whether a second data structure includes a second entry corresponding to the aggressor memory cell, wherein the second data structure includes entries for a second set of memory cells written during a first time period, wherein the second set of memory cells is a subset of the first set of memory cells and wherein each entry in the second data structure includes a write timestamp and overwrite count corresponding to an associated memory cell;

determine, based on the second entry, one or more of a write timestamp and an overwrite count associated with the aggressor memory cell, wherein the write timestamp indicates a last write to the aggressor memory cell and the overwrite count indicates the number of writes to the aggressor memory cell during a time period;

determine, based on one or more of the write timestamp and the overwrite count, an increment value of a disturb counter associated with the neighbor memory cell;

increment, in response to the write, the disturb counter associated with the neighbor memory cell based on the increment value; and

perform, in response to the disturb counter being greater than or equal to a disturb threshold, remediation for the neighbor memory cell.

9. The non-transitory machine-readable storage medium of claim 8 , wherein the aggressor memory cell and the neighbor memory cell are directly adjacent on a memory device.

10. The non-transitory machine-readable storage medium of claim 8 , wherein the determining the increment value comprises:

determining a difference between a current time and the write timestamp;

comparing the difference with a plurality of ranges, wherein each range in the plurality of ranges corresponds to a value; and

setting the increment value to a value of a range in the set of ranges within which the difference falls.

11. The non-transitory machine-readable storage medium of claim 10 , wherein the determining the increment value further comprises:

mapping the overwrite count to a multiplier value; and

multiplying the increment value by the multiplier value.

12. The non-transitory machine-readable storage medium of claim 8 , wherein each entry in the second data structure includes a flag that indicates whether user data of a corresponding memory cell is buffered in a third data structure,

wherein the third data structure buffers user data for a third set of memory cells written during a second time period,

wherein the second time period is a subset of the first time period and the third set of memory cells is a subset of the second set of memory cells.

13. The non-transitory machine-readable storage medium of claim 8 , wherein the aggressor memory cell and the neighbor memory cell are phase change memory cells, and

wherein writes to the aggressor memory cell dissipate heat to the neighbor memory cell.

14. The non-transitory machine-readable storage medium of claim 8 , wherein the performing remediation comprises:

determining whether errors experienced by the neighbor memory cell are greater than or equal to a threshold value;

rewriting, in response to determining that the errors experienced by the neighbor memory cell are greater than or equal to the threshold value, data to the neighbor memory cell; and

resetting, in response to rewriting data to the neighbor memory cell, the disturb counter associated with the neighbor memory cell.

15. A system comprising:

a memory device comprising a first memory cell and a second memory cell, wherein the second memory cell is a neighbor of the first memory cell in the memory device; and

a processor, coupled to the memory device, the processor to write user data to the first memory cell and to:

locate a first entry for the first memory cell in a first data structure, wherein the first data structure includes entries for each memory cell in a first set of memory cells, including the second memory cell and the first memory cell, and each entry in the first data structure includes a disturb counter corresponding to an associated memory cell,

determine, based on the first entry, whether a second data structure includes a second entry corresponding to the first memory cell, wherein the second data structure includes entries for a second set of memory cells written during a first time period, wherein the second set of memory cells is a subset of the first set of memory cells and wherein each entry in the second data structure includes a write timestamp and overwrite count corresponding to an associated memory cell,

determine, based on the second entry, one or more of a write timestamp and an overwrite count associated with the first memory cell, wherein the write timestamp indicates a last write to the first memory cell and the overwrite count indicates the number of writes to the first memory cell during a time period,

determine, based on one or more of the write timestamp and the overwrite count, an increment value of a disturb counter associated with the second memory cell,

increment, in response to the write, the disturb counter associated with the second memory cell based on the increment value, and

perform, in response to the disturb counter being greater than or equal to a disturb threshold, remediation for the second memory cell.

16. The system of claim 15 , wherein the first memory cell and the second memory cell are directly adjacent on the memory device.

17. The system of claim 15 , wherein the determining the increment value comprises:

determining a difference between a current time and the write timestamp;

comparing the difference with a plurality of ranges, wherein each range in the plurality of ranges corresponds to a value; and

setting the increment value to a value of a range in the set of ranges within which the difference falls.

18. The system of claim 17 , wherein the determining the increment value further comprises:

mapping the overwrite count to a multiplier value; and

multiplying the increment value by the multiplier value.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 11, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050713/0001 →
SUPPLEMENT NO. 9 TO PATENT SECURITY AGREEMENT Recorded Aug 9, 2018
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 047282/0463 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2018
From: BRADSHAW, SAMUEL E.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 045295/0042 →