IP Library Granted Patent US 11,107,522
Granted Patent B2
US 11,107,522 · App. 16/912,588 · Granted Aug 31, 2021

Multi-level cell programming using optimized multiphase mapping with balanced gray code

Inventors: Mostafa El Gamal (Worcester, MA); Niranjay Ravindran (Rochester, MN); James Fitzpatrick (Laguna Niguel, CA)
Assignee: Western Digital Technologies, Inc.
G11C11/5628G11C11/5642H03K23/005G11C2211/562G11C2211/5641G11C2211/5644
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 11,107,522
App. No.
16/912,588
Granted
Aug 31, 2021
Kind
B2
Abstract

Disclosed are systems and methods for providing programming of multi-level memory cells using an optimized multiphase mapping with a balanced Gray code. A method includes programming, in a first phase, a first portion of data into memory cells in a first-level cell mode. The method may also include reading, from the memory cells, the programmed first portion of the data. The method may also include programming, in a second phase, a second portion of the data into the memory cells in a second-level cell mode, wherein programming the second phase is based on applying, to the read first portion of the data, a mapping from the first-level cell mode to the second-level cell mode. The mapping may be selected based on minimizing an average voltage change of the memory cells from the first to second phase while maintaining a balanced Gray code.

Claims (74)

1. A data storage system, comprising:

memory cells; and

one or more controllers configured to cause:

writing, in a first phase, a first data portion into the memory cells in a first-level cell mode; and

writing, in a second phase, a second data portion into the memory cells in a second-level cell mode, based on a mapping between the first-level cell mode and the second-level cell mode,

wherein:

a difference between transition counts of any two pages of memory pages in the second-level cell mode does not exceed a transition count difference,

a sum of the transition counts for the memory pages in the second-level cell mode does not exceed a maximum number of programming levels in the second-level cell mode,

a number of transition counts for each page of multiple pages associated with the first phase is different from a number of transition counts for a corresponding page of multiple pages associated with the second phase, and

the transition count difference is an integer.

2. The data storage system of claim 1 ,

wherein for the first phase, the one or more controllers are configured to cause writing the first data portion into the memory cells in the first-level cell mode, to provide a first set of significant bits for at least multiple pages of the memory cells, across a first voltage distribution having a first plurality of states, and

wherein for the second phase, the one or more controllers are configured to cause writing the first data portion of the memory cells in the second-level cell mode, to provide a second set of significant bits for pages corresponding to the at least multiple pages associated with the first phase, across a second voltage distribution having a second plurality of states.

3. The data storage system of claim 1 , wherein the one or more controllers are configured to cause:

setting the memory cells into the first-level cell mode, to configure the memory cells in the first-level cell mode to store a first number of bits per cell;

setting the memory cells into the second-level cell mode, to configure the memory cells in the second-level cell mode to store a second number of bits per cell, wherein the second number of bits per cell is greater than the first number of bits per cell;

programming the memory cells in the first-level cell mode to provide a first voltage distribution having a first maximum voltage; and

programming the memory cells in the second-level cell mode to provide a second voltage distribution having a second maximum voltage,

wherein the second maximum voltage is greater than the first maximum voltage.

4. The data storage system of claim 1 , wherein a width of a state distribution in the memory cells in the first phase is different from a sum of widths of corresponding state distributions in the memory cells in the second phase according to the mapping.

5. The data storage system of claim 1 , wherein widths of state distributions of the memory cells in the first phase are not uniform.

6. The data storage system of claim 5 , wherein the one or more controllers are configured to cause reading, from the memory cells, at least a subset of the written first data portion without using error correction.

7. The data storage system of claim 1 , wherein the one or more controllers are configured to cause not storing the first data portion in a buffer separate from the memory cells.

8. The data storage system of claim 1 , wherein the one or more controllers are configured to cause retrieving the mapping as a predetermined value stored in the data storage system.

9. The data storage system of claim 1 ,

wherein the mapping is based on minimizing an average voltage change of the memory cells from the first phase to the second phase while maintaining a balanced Gray code for the memory pages in the second-level cell mode, and

wherein minimizing the average voltage change comprises:

determining a total voltage change caused by the second phase with respect to all of the programming levels in the second-level cell mode;

dividing the total voltage change by the maximum number of programming levels in the second-level cell mode; and

determining that the divided total voltage satisfies a threshold voltage range.

10. The data storage system of claim 9 , wherein determining the total voltage change comprises weighting at least one programming level of the programming levels.

11. A method, comprising:

writing, in a first phase, a first data portion into memory cells in a first-level cell mode; and

writing, in a second phase, a second data portion into the memory cells in a second-level cell mode, based on a mapping between the first-level cell mode and the second-level cell mode,

wherein:

a difference between transition counts of any two pages of memory pages in the second-level cell mode does not exceed a transition count difference,

a sum of the transition counts for the memory pages in the second-level cell mode does not exceed a maximum number of programming levels in the second-level cell mode,

a number of transition counts for each page of multiple pages associated with the first phase is different from a number of transition counts for a corresponding page of multiple pages associated with the second phase, and

the transition count difference is an integer.

12. The method of claim 11 ,

wherein for the first phase, writing the first data portion into the memory cells in the first-level cell mode causes providing a first set of significant bits for at least multiple pages of the memory cells, across a first voltage distribution having a first plurality of states, and

wherein for the second phase, writing the first data portion of the memory cells in the second-level cell mode causes providing a second set of significant bits for pages corresponding to the at least multiple pages associated with the first phase, across a second voltage distribution having a second plurality of states.

13. The method of claim 11 , comprising:

setting the memory cells into the first-level cell mode, to configure the memory cells in the first-level cell mode to store a first number of bits per cell;

setting the memory cells into the second-level cell mode, to configure the memory cells in the second-level cell mode to store a second number of bits per cell, wherein the second number of bits per cell is greater than the first number of bits per cell;

programming the memory cells in the first-level cell mode to provide a first voltage distribution having a first maximum voltage; and

programming the memory cells in the second-level cell mode to provide a second voltage distribution having a second maximum voltage,

wherein the second maximum voltage is greater than the first maximum voltage.

14. The method of claim 11 , wherein a width of a state distribution in the memory cells in the first phase is different from a sum of widths of corresponding state distributions in the memory cells in the second phase according to the mapping.

15. The method of claim 11 , wherein widths of state distributions of the memory cells in the first phase are not uniform.

16. The method of claim 11 , comprising retrieving the mapping as a predetermined value stored in a data storage system.

17. The method of claim 11 ,

wherein the mapping is based on minimizing an average voltage change of the memory cells from the first phase to the second phase while maintaining a balanced Gray code for the memory pages in the second-level cell mode, and

wherein minimizing the average voltage change comprises:

determining a total voltage change caused by the second phase with respect to all of the programming levels in the second-level cell mode;

dividing the total voltage change by the maximum number of programming levels in the second-level cell mode; and

determining that the divided total voltage satisfies a threshold voltage range.

18. An apparatus, comprising:

means for writing, in a first phase, a first data portion into memory cells in a first-level cell mode; and

means for writing, in a second phase, a second data portion into the memory cells in a second-level cell mode, based on a mapping between the first-level cell mode and the second-level cell mode,

wherein:

a difference between transition counts of any two pages of memory pages in the second-level cell mode does not exceed a transition count difference,

a sum of the transition counts for the memory pages in the second-level cell mode does not exceed a maximum number of programming levels in the second-level cell mode,

a number of transition counts for each page of multiple pages associated with the first phase is different from a number of transition counts for a corresponding page of multiple pages associated with the second phase, and

the transition count difference is an integer.

19. The apparatus of claim 18 , comprising:

means for setting the memory cells into the first-level cell mode, to configure the memory cells in the first-level cell mode to store a first number of bits per cell;

means for setting the memory cells into the second-level cell mode, to configure the memory cells in the second-level cell mode to store a second number of bits per cell, wherein the second number of bits per cell is greater than the first number of bits per cell;

means for programming the memory cells in the first-level cell mode to provide a first voltage distribution having a first maximum voltage; and

means for programming the memory cells in the second-level cell mode to provide a second voltage distribution having a second maximum voltage,

wherein the second maximum voltage is greater than the first maximum voltage.

20. The apparatus of claim 18 ,

wherein for the first phase, the means for writing the first data portion into the memory cells in the first-level cell mode is configured to cause providing a first set of significant bits for at least multiple pages of the memory cells, across a first voltage distribution having a first plurality of states, and

wherein for the second phase, means for writing the first data portion of the memory cells in the second-level cell mode is configured to cause providing a second set of significant bits for pages corresponding to the at least multiple pages associated with the first phase, across a second voltage distribution having a second plurality of states.

Assignments (10)
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 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 053926 FRAME 0446 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058966/0321 →
SECURITY INTEREST Recorded Sep 29, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 053926/0446 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2020
From: EL GAMAL, MOSTAFA; RAVINDRAN, NIRANJAY; FITZPATRICK, JAMES
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 053308/0202 →