IP Library Granted Patent US 10,965,321
Granted Patent B2
US 10,965,321 · App. 16/714,601 · Granted Mar 30, 2021

Transformation of binary data to non-binary data for storage in 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 10,965,321
App. No.
16/714,601
Granted
Mar 30, 2021
Kind
B2
Abstract

A data storage system and method are provided for storing data in non-volatile memory devices. Binary data is received for storage in a non-volatile memory device. The binary data is converted into non-binary data comprising base-X values, where X is an integer greater than two. The non-binary data is encoded to generate a codeword and the codeword is written to a wordline of the non-volatile memory device.

Claims (44)

1. A data storage system, comprising:

a non-volatile memory; and

a controller configured to cause:

transforming binary data into non-binary data for storing in the non-volatile memory;

generating a codeword based on the non-binary data;

storing the codeword in the non-volatile memory; and

reading the codeword from the non-volatile memory, without utilizing gray coding, to prevent a loss of cell-level information resulting from a use of gray coding,

wherein the non-binary data has a number base, which is based on a number of program levels available for programming the non-volatile memory.

2. The data storage system of claim 1 , wherein the number base of the non-binary data is based on a number of program levels available for programming and reading the non-volatile memory.

3. The data storage system of claim 1 , wherein the codeword comprises the non-binary data and a non-binary low-density parity-check code.

4. The data storage system of claim 1 , wherein the controller is configured to cause:

decoding the codeword to retrieve the non-binary data; and

transforming the non-binary data into the binary data.

5. The data storage system of claim 1 , wherein transforming the binary data into the non-binary data comprises transforming base-two values of the binary data into base-X values, where X is an integer greater than two.

6. The data storage system of claim 5 , wherein X is a non-power-of-two integer.

7. The data storage system of claim 1 , wherein storing the codeword in the non-volatile memory comprises programming memory cells of a wordline of the non-volatile memory to respective program levels selected from X available program levels based on values of the non-binary data, where X is an integer greater than two.

8. A method implemented for a non-volatile memory, comprising:

transforming binary data into non-binary data for storing in the non-volatile memory;

generating a codeword based on the non-binary data;

storing the codeword in the non-volatile memory; and

reading the codeword from the non-volatile memory, without utilizing gray coding, to prevent a loss of cell-level information resulting from a use of gray coding,

wherein a number base of the non-binary data is based on a number of program levels available for programming the non-volatile memory.

9. The method of claim 8 , wherein the number base of the non-binary data is based on a number of program levels available for programming and reading the non-volatile memory.

10. The method of claim 8 , wherein the codeword comprises the non-binary data and a non-binary low-density parity-check code.

11. The method of claim 8 , further comprising:

decoding the codeword to retrieve the non-binary data; and

transforming the non-binary data into the binary data.

12. The method of claim 8 , wherein transforming the binary data into the non-binary data comprises transforming base-two values of the binary data into base-X values, where X is an integer greater than two.

13. The method of claim 12 , wherein Xis a non-power-of-two integer.

14. The method of claim 12 , wherein storing the codeword in the non-volatile memory comprises programming memory cells of a wordline of the non-volatile memory to respective program levels selected from X available program levels based on values of the non-binary data.

15. A data storage system, comprising:

a non-volatile memory;

means for transforming binary data into non-binary data for the non-volatile memory;

means for generating a codeword based on the non-binary data;

means for storing the codeword in the non-volatile memory; and

means for reading the codeword from the non-volatile memory, without utilizing gray coding, to prevent a loss of cell-level information resulting from a use of gray coding,

wherein the non-binary data has a number base, which is based on a number of program levels available for programming the non-volatile memory.

16. The data storage system of claim 15 , wherein the number base of the non-binary data is based on a number of program levels available for programming and reading the non-volatile memory at a particular error rate.

17. The data storage system of claim 15 , further comprising:

means for decoding the codeword to retrieve the non-binary data; and

means for transforming the non-binary data into the binary data.

18. The data storage system of claim 15 , wherein the codeword comprises the non-binary data and a non-binary low-density parity-check code.

19. The data storage system of claim 15 , wherein the means for transforming the binary data into the non-binary data comprises means for transforming base-two values of the binary data into base-X values, where X is an integer greater than two.

20. The data storage system of claim 19 , wherein means for storing the codeword in the non-volatile memory comprises means for programming memory cells of a wordline of the non-volatile memory to respective program levels selected from X available program levels based on values of the non-binary data.

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 052025 FRAME 0088 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058965/0699 →
SECURITY INTEREST Recorded Feb 26, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052025/0088 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2020
From: GALBRAITH, RICHARD LEO; GOODE, JONAS ANDREW; RAVINDRAN, NIRANJAY
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 051471/0485 →