IP Library Granted Patent US 8,693,257
Granted Patent B2
US 8,693,257 · App. 13/275,598 · Granted Apr 8, 2014

Determining optimal read reference and programming voltages for non-volatile memory using mutual information

Inventors: Arvind Sridharan (Longmont, CO); Ara Patapoutian (Hopkinton, MA)
Assignee: Seagate Technology LLC
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,693,257
App. No.
13/275,598
Granted
Apr 8, 2014
Kind
B2
Abstract

Approaches for operating a memory device comprising memory cells are disclosed. Optimal values for one or more of programming voltages used to program memory cells of the memory device and read reference voltages used to read the memory cells are determined using a mutual information function, I(X; Y), where X represents data values programmed to the memory cells and Y represents data values read from the memory cells. The read reference and/or programming voltages used for reading and/or programming the memory cells are adjusted using the optimal values.

Claims (22)

1. A method of operating a memory device, comprising:

jointly determining, using a mutual information function, I(X; Y), optimal values that provide predetermined bit error rate criteria for one or more of programming voltages used to program memory cells of the memory device and read reference voltages used to read the memory cells, where X represents data values programmed to the memory cells and Y represents data values read from the memory cells in the function I(X; Y), wherein the optimal values for one of the read reference voltages and programming voltages are determined while holding the other of the read reference voltages and programming voltages fixed; and

adjusting at least one of the read reference voltages and the programming voltages using the optimal values.

2. The method of claim 1 , wherein determining optimal values comprises determining optimal values for the programming voltages.

3. The method of claim 2 , wherein determining optimal values comprises determining the mutual information for each of a plurality of input/output channels, wherein each of the channels are constrained to have the same mutual information value.

4. The method of claim 2 , wherein determining optimal values comprises determining the mutual information for each of a plurality of input/output channels, wherein the channels are not constrained to have the same mutual information value.

5. The method of claim 2 , wherein determining the optimal programming voltages comprises determining mutual information for a channel that has M levels, wherein M is a number of possible voltage levels that can be stored in the memory cells and M is greater than 2.

6. The method of claim 1 , wherein determining optimal values comprises determining optimal values of the read reference voltages.

7. The method of claim 6 , wherein determining the optimal read reference voltages comprises determining mutual information for a channel that has M levels, wherein M is a number of possible voltage levels that can be stored in the memory cells and M is greater than 2.

8. The method of claim 1 , wherein jointly determining the read reference voltages and the programming voltages comprises determining optimal values for the read reference voltages while holding the programming voltages fixed.

9. The method of claim 1 , wherein jointly determining the read reference voltages and the programming voltages comprises determining optimal values for the programming voltages while holding the read reference voltages fixed.

10. The method of claim 1 , wherein determining the optimal values comprises maximizing I(X; Y).

11. The method of claim 1 , wherein determining the optimal values comprises determining if a sum of mutual information values for all programming voltages is maximum.

12. An apparatus, comprising:

a controller configured to control a memory, the controller configured to

jointly determine, using a mutual information function, I(X; Y), optimal values that achieve predetermined bit error rate criteria for one or more of programming voltages used to program memory cells of the memory and read reference voltages used to read the memory cells, where X represents data values programmed to the memory cells and Y represents data values read from the memory cells in the function I(X; Y), wherein the optimal values for one of the read reference voltages and programming voltages are determined while holding the other of the read reference voltages and programming voltages fixed, and

generate signals to control adjustment of at least one of the read reference voltages and the programming voltages to the optimal values.

13. The apparatus of claim 12 , wherein the controller is configured to determine the optimal values for multipage memory architecture.

14. The apparatus of claim 12 , wherein the controller is configured to determine the optimal values for full sequence memory architecture.

15. The apparatus of claim 12 , wherein the controller is configured to determine the optimal values by maximizing I(X; Y).

16. The apparatus of claim 12 , wherein the controller is configured to determine if a sum of mutual information values for all programming voltages is maximum without constraint that the mutual information values for all programming voltages are equal.

17. The apparatus of claim 12 , wherein the controller is configured to estimate noise used in determining the mutual information using asymmetrical noise distributions.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Feb 28, 2025
From: THE BANK OF NOVA SCOTIA
To: SEAGATE TECHNOLOGY US HOLDINGS, INC.; EVAULT, INC. (F/K/A I365 INC.); SEAGATE TECHNOLOGY LLC
Reel/Frame 070363/0903 →
RELEASE OF SECURITY INTEREST Recorded Jul 23, 2024
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: SEAGATE TECHNOLOGY LLC; EVAULT INC
Reel/Frame 068457/0076 →
RELEASE OF SECURITY INTEREST Recorded May 20, 2024
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: SEAGATE TECHNOLOGY LLC; EVAULT, INC. (F/K/A I365 INC.); SEAGATE TECHNOLOGY US HOLDINGS, INC.
Reel/Frame 067471/0955 →
SECURITY AGREEMENT Recorded Oct 15, 2012
From: SEAGATE TECHNOLOGY LLC; EVAULT, INC. (F/K/A I365 INC.); SEAGATE TECHNOLOGY US HOLDINGS, INC.
To: THE BANK OF NOVA SCOTIA, AS ADMINISTRATIVE AGENT
Reel/Frame 029127/0527 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 15, 2012
From: SEAGATE TECHNOLOGY LLC; EVAULT, INC. (F/K/A I365 INC.); SEAGATE TECHNOLOGY US HOLDINGS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 029253/0585 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2011
From: SRIDHARAN, ARVIND; PATAPOUTIAN, ARA
To: SEAGATE TECHNOLOGY LLC
Reel/Frame 027079/0319 →
Continuity (1)
Related Publication 20130094286A1 · Apr 18, 2013