IP Library Granted Patent US 8,365,039
Granted Patent B2
US 8,365,039 · App. 12/283,832 · Granted Jan 29, 2013

Adjustable read reference for non-volatile memory

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,365,039
App. No.
12/283,832
Granted
Jan 29, 2013
Kind
B2
Abstract

In a non-volatile memory that reads a binary value from a storage cell by comparing the voltage level of a stored charge in that cell against a reference voltage, the accumulated errors in a range of memory locations may be analyzed to determined if there are more errors in one direction than the other (for example, more 0-to-1 errors than 1-to-0 errors). If so, the reference voltage may be adjusted up or down so that subsequent reads from that range may produce approximately the same number of errors in each direction. For multiple-bits-per-cell memories, where there are multiple reference voltages for each cell, each reference voltage may be adjusted separately by keeping track of the errors related to that particular threshold.

Claims (52)

1. An apparatus, comprising:

a non-volatile memory array;

a memory controller coupled to the memory array, wherein the memory controller is to perform operations with the memory array comprising:

reading data from multiple sequential storage locations in the memory array;

performing an error checking and correction algorithm on the data to identify multiple correctable errors;

separating the errors into a first quantity of 0-to-1 errors and a second quantity of 1-to-0 errors;

comparing the first quantity with the second quantity to determine a difference between the first quantity and the second quantity that exceeds a threshold;

determining an amount and direction of a correction to a reference voltage, based on the difference, the amount and the direction of the correction being determined so as to permit the difference to become closer to zero for a subsequent reading of the locations; and

performing the correction to the reference voltage.

2. The apparatus of claim 1 , wherein the non-volatile memory array is a NAND flash memory array.

3. The apparatus of claim 1 , wherein the multiple sequential storage locations represent a page in the non-volatile memory.

4. The apparatus of claim 1 , wherein said comparing comprises at least one of:

1) determining a numerical difference between the first quantity and the second quantity;

2) determining a percentage difference between the first quantity and the second quantity; and

3) determining a total number of errors in the first quantity and the second quantity.

5. The apparatus of claim 1 , wherein said performing the correction comprises changing the reference voltage by a predetermined amount.

6. The apparatus of claim 1 , wherein said performing the correction comprises changing the reference voltage by a variable amount dependent on the result.

7. The apparatus of claim 1 , wherein said performing the correction comprises changing the reference voltage by an amount selected from among multiple predetermined amounts.

8. The apparatus of claim 1 , further comprising a processor coupled to the memory controller.

9. The apparatus of claim 1 , wherein:

the non-volatile memory array is a multiple-bits-per-cell memory array; and

the operations of separating, comparing, determining, and performing the correction are performed for each of multiple reference voltages.

10. A method, comprising:

reading data from multiple sequential storage locations in a non-volatile memory;

performing an error checking and correction algorithm on the data to identify multiple correctable errors;

separating the errors into a first quantity of 0-to-1 errors and a second quantity of 1-to-0 errors;

comparing the first quantity with the second quantity to determine a difference between the first quantity and the second quantity that exceeds a threshold;

determining an amount and direction of a correction to a reference voltage, based on the difference, the amount and the direction of the correction being determined so as to permit the difference to become closer to zero for a subsequent reading of the locations; and

performing the correction to the reference voltage.

11. The method of claim 10 , wherein the multiple sequential storage locations represent a page in the non-volatile memory.

12. The method of claim 10 , wherein said comparing comprises at least one of:

1) determining a numerical difference between the first quantity and the second quantity;

2) determining a percentage difference between the first quantity and the second quantity; and

3) determining a total number of errors in the first quantity and the second quantity.

13. The method of claim 10 , wherein said performing the correction comprises changing the reference voltage by a predetermined amount.

14. The method of claim 10 , wherein said performing the correction comprises changing the reference voltage by a variable amount dependent on the result.

15. The method of claim 10 , wherein said performing the correction comprises changing the reference voltage by an amount selected from among multiple predetermined amounts.

16. An article comprising a tangible computer-readable medium that contains instructions, which when executed by one or more processors result in performing operations comprising:

reading data from multiple sequential storage locations in a non-volatile memory;

performing an error checking and correction algorithm on the data to identify multiple correctable errors;

separating the errors into a first quantity of 0-to-1 errors and a second quantity of 1-to-0 errors;

comparing the first quantity with the second quantity to determine a difference between the first quantity and the second quantity that exceeds a threshold;

determining an amount and direction of a correction to a reference voltage, based on the difference, the amount and the direction of the correction being determined so as to permit the difference to become closer to zero for a subsequent reading of the locations; and

performing the correction to the reference voltage.

17. The article of claim 16 , wherein the multiple sequential storage locations represent a page in the non-volatile memory.

18. The article of claim 16 , wherein said comparing comprises at least one of:

1) determining a numerical difference between the first quantity and the second quantity;

2) determining a percentage difference between the first quantity and the second quantity; and

3) determining a total number of errors in the first quantity and the second quantity.

19. The article of claim 16 , wherein said performing the correction comprises changing the reference voltage by a predetermined amount.

20. The article of claim 16 , wherein said performing the correction comprises changing the reference voltage by an amount dependent on the result.

21. The article of claim 16 , wherein said performing the correction comprises changing the reference voltage by an amount selected from among multiple predetermined amounts.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2023
From: INTEL CORPORATION
To: SK HYNIX NAND PRODUCT SOLUTIONS CORP.
Reel/Frame 062437/0329 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2008
From: MAN, CHUN FUNG; SCHMIDT, JONATHAN E.
To: INTEL CORPORATION
Reel/Frame 021920/0186 →