IP Library Granted Patent US 10,545,819
Granted Patent B1
US 10,545,819 · App. 14/584,326 · Granted Jan 28, 2020

Soft-decision input generation for data storage systems

Inventor: Guangming Lu (Irvine, CA)
Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
G06F11/1004G06F11/1072G11C29/52G06F3/0679G06F3/0688G06F11/1068G06F12/0246G11C16/08H03M13/1111H03M13/3784H03M13/45
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,545,819
App. No.
14/584,326
Granted
Jan 28, 2020
Kind
B1
Abstract

An error management system for a data storage device can generate soft-decision log-likelihood ratios (LLRs) using multiple reads of memory locations. 0-to-1 and 1-to-0 bit flip count data provided by multiple reads of reference memory locations can be used to generate probability data that is used to generate possible LLR values for decoding target pages. Possible LLR values are stored in one or more look-up tables.

Claims (51)

1. A data storage device comprising:

a non-volatile solid-state memory array comprising a plurality of non-volatile solid-state memory devices configured to store data; and

a controller configured to generate multiple-bit log likelihood ratios (LLRs) by at least:

determining a reference bit stream stored in a reference memory location;

generating a plurality of read bit streams by performing a plurality of reads of the reference memory location, wherein each of the plurality of reads is performed at one of a plurality of voltage read levels;

comparing each read bit stream of the plurality of read bit streams and the reference bit stream to determine respective flipped-bit data, different than LLRs, for each read bit stream;

extrapolating flipped-bit data based on each of the determined respective flipped-bit data for the plurality of read bit streams;

generating new reference LLR values, different than the extrapolated flipped-bit data and associated with the reference memory location, using each of the determined respective flipped-bit data for the plurality of read bit streams and the extrapolated flipped-bit data;

storing the generated reference LLR values for use in future decoding operations; and

decoding target data using the stored reference LLR values.

2. The data storage device of claim 1 , wherein the controller is further configured to store the LLR values in the non-volatile solid-state memory array.

3. The data storage device of claim 1 , wherein the controller is further configured to:

generate a target read bit stream by performing a plurality of reads of a target memory location;

generate a sequence of LLR values for decoding the target memory location based at least in part on the reference LLR values and the target read bit stream; and

decode data from the target memory location using the generated sequence of LLR values.

4. The data storage device of claim 3 , wherein the target memory location and the reference memory location have similar age characteristics.

5. The data storage device of claim 3 , wherein the target memory location and the reference memory location are determined to have similar read/write cycling characteristics.

6. The data storage device of claim 3 , wherein the target memory location and the reference memory location are located in a same memory block of the non-volatile solid-state memory array.

7. The data storage device of claim 1 , wherein the controller is further configured to estimate the extrapolated flipped-bit data based on linear log domain extrapolation of a cumulative distribution function associated with the reference memory location.

8. The data storage device of claim 1 , wherein the controller is further configured to estimate interpolated flipped-bit data based at least in part on the determined respective flipped-bit data.

9. The data storage device of claim 8 , wherein the reference LLR values are generated based on the determined respective flipped-bit data for each read bit stream and the interpolated flipped-bit data.

10. In a data storage system comprising a non-volatile solid-state memory array and a controller, a method of generating multiple-bit log likelihood ratios (LLRs), the method comprising:

determining a reference bit stream stored in a reference memory location of a non-volatile solid-state memory array of a data storage system;

generating a plurality of read bit streams by performing a plurality of reads of the reference memory location, wherein each of the plurality of reads is performed at one of a plurality of voltage read levels;

comparing each read bit stream of the plurality of read bit streams and the reference bit stream to determine respective flipped-bit data, different than LLRs, for each read bit stream;

extrapolating flipped-bit data based on each of the determined respective flipped-bit data for the plurality of read bit streams;

generating new reference LLR values, different than the extrapolated flipped-bit data and associated with the reference memory location, using each of the determined respective flipped-bit data for the plurality of read bit streams and the extrapolated flipped-bit data;

storing the generated reference LLR values for use in future decoding operations; and

decoding target data using the stored reference LLR values.

11. The method of claim 10 , further comprising:

generating a target read bit stream by performing a plurality of reads of a target memory location;

generating a sequence of LLR values for decoding the target memory location based at least in part on the LLR values and on the target read bit stream; and

decoding data from the target memory location using the generated sequence of LLR values.

12. The method of claim 11 , wherein the target memory location and the reference memory location are determined to have similar read/write cycling characteristics.

13. The method of claim 11 , wherein the target memory location and the reference memory location are located in a same memory block of the non-volatile solid-state memory array.

14. A controller device comprising:

one or more processors; and

an electrical interface for communicating with a non-volatile solid-state memory array comprising a plurality of non-volatile solid-state memory devices configured to store data;

wherein the controller device is configured to:

determine a reference bit stream stored in a reference memory location of the non-volatile solid-state memory array;

generate a plurality of read bit streams by performing a plurality of reads of the reference memory location, wherein each of the plurality of reads is performed at one of a plurality of voltage read levels;

compare each read bit stream of the plurality of read bit streams and the reference bit stream to determine respective flipped-bit data, different than LLRs, for each read bit stream;

extrapolate flipped-bit data based on each of the determined respective flipped-bit data for the plurality of read bit streams;

generate new reference LLR values, different than the extrapolated flipped-bit data and associated with the reference memory location, using each of the determined respective flipped-bit data for the plurality of read bit streams and the extrapolated flipped-bit data;

store the generated reference LLR values for use in future decoding operations; and

decode target data using the stored reference LLR values.

15. The controller device of claim 14 , wherein the controller device is further configured to:

generate a target read bit stream by performing a plurality of reads of a target memory location;

generate a sequence of LLR values for decoding the target memory location based at least in part on the reference LLR values and on the target read bit stream; and

decode data from the target memory location using the generated sequence of LLR values.

16. The controller device of claim 15 , wherein the target memory location and the reference memory location are located in a same memory block of the non-volatile solid-state memory array.

Assignments (13)
SECURITY AGREEMENT (SUPPLEMENTAL) Recorded Nov 14, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 069411/0208 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2024
From: SANDISK TECHNOLOGIES, INC.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 069168/0273 →
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 - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
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 →
RELEASE OF SECURITY INTEREST AT REEL 038744 FRAME 0481 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0556 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045501/0714 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038744/0481 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038744/0281 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038722/0229 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2015
From: LU, GUANGMING
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 034701/0844 →
Continuity (1)
Continuation 13797923 · Mar 12, 2013