IP Library Granted Patent US 8,990,668
Granted Patent B2
US 8,990,668 · App. 13/829,904 · Granted Mar 24, 2015

Decoding data stored in solid-state 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,990,668
App. No.
13/829,904
Granted
Mar 24, 2015
Kind
B2
Abstract

Embodiments of decoding data stored in solid-state memory arrays are disclosed. In one embodiment, multiple read operations are performed while taking inter-cell interference (ICI) into account. Soft-decision information, such as log-likelihood ratios (LLRs), is determined by using known data and its corresponding multi-read output. Soft-decision information is provided to a detector. Reliability is improved and performance is increased.

Claims (59)

1. A data storage system, comprising:

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

a controller configured to:

perform a plurality of read operations on a reference memory location to obtain a plurality of data patterns;

assign probability values based at least in part on the data patterns and on known data in the reference memory location; and

determine data stored in a target memory location based on the assigned probability values.

2. The storage system of claim 1 , wherein the controller is further configured to perform the plurality of read operations on the reference memory location using a plurality of voltage thresholds.

3. The storage system of claim 1 , wherein the controller is further configured to assign the probability values based on a number of occurrences of the data patterns.

4. The storage system of claim 3 , wherein:

the reference memory location stores bit values X 0 to X N−1 ; and

the assigned probability values include probability values determined based on the number of occurrences of the data patterns that is: (1) associated with X i and (2) correlated to a bit sequence including X i and one or more bit values neighboring X i .

5. The storage system of claim 1 , wherein the controller is configured to derive soft-information by applying a BCJR algorithm or a SOVA algorithm to the assigned probability values.

6. The storage system of claim 5 , wherein the controller is configured to use the derived soft information to decode data stored in the target memory location.

7. The storage system of claim 5 , wherein the soft information comprises log-likelihood ratios (LLRs).

8. The storage system of claim 1 , wherein the controller is further configured to perform a plurality of read operations on the target memory location to determine the data stored in the target memory location.

9. The storage system of claim 1 , wherein the known data comprises training data stored in the reference memory location prior to reading the target memory location.

10. The storage system of claim 1 , wherein the target memory location has one or more properties similar to those of the reference memory location.

11. In a data storage system comprising a non-volatile solid state memory array having a plurality of memory locations configured to store data and a controller, a method of reading data, the method comprising:

performing a plurality of read operations on a reference memory location to obtain a plurality of data patterns;

assigning probability values based at least in part on the data patterns and on known data in the reference memory location;

reading a target memory location; and

determining data stored in the target memory location based on the assigned probability values,

wherein the method is performed under control of the controller.

12. The method of claim 11 , wherein performing the plurality of read operations on the memory location comprises using a plurality of voltage thresholds.

13. The method of claim 11 , further comprising assigning the probability values based on a number of occurrences of the data patterns.

14. The method of claim 13 , wherein:

the reference memory location stores bit values X 0 to X N−1 ; and

the assigned probability values include probability values determined based on the number of occurrences of the data patterns that is: (1) associated with X i and (2) correlated to a bit sequence including X i and one or more bit values neighboring X i .

15. The method of claim 11 , further comprising deriving soft-information by applying a BCJR algorithm or a SOVA algorithm to the assigned probability values.

16. The method of claim 15 , further comprising decoding data stored in the target memory locations using the derived soft information.

17. The method of claim 15 , wherein the soft information comprises log-likelihood ratios (LLRs).

18. The method of claim 11 , further comprising performing a plurality of read operations on the target memory location to determine data stored in the target memory location.

19. The method of claim 11 , wherein the known data comprises training data stored in the reference memory location prior to reading the target memory location.

20. The method of claim 11 , wherein the target memory location has one or more properties similar to those of the reference memory location.

21. A data storage system, comprising:

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

a controller configured to determine log-likelihood ratios corresponding to data stored in the non-volatile memory array, the controller further configured to:

perform a plurality of read operations on a first memory location, the plurality of read data values forming a plurality of data patterns;

assign probability values based on the data patterns;

update a plurality of previously determined probability values using the assigned probability values; and

read a second memory location using the updated probability values.

22. The storage system of claim 21 , wherein:

the first memory location stores bit values X 1 to X N ; and

the assigned probability values include probability values determined based on the number of occurrences of the data patterns that is: (1) associated with X i and (2) correlated to a bit sequence including X i and one or more bit values neighboring X i .

23. The storage system of claim 21 , wherein the controller is further configured to perform the plurality of read operations on the first memory location using a plurality of voltage thresholds.

24. The storage system of claim 21 , wherein the first memory location comprises a first memory page and a second memory location comprises a second memory page neighboring the first memory page.

25. The storage system of claim 21 , wherein the controller is configured to read the second memory location without using information derived from training data stored in the non-volatile solid state memory array.

26. In a data storage system comprising a non-volatile solid state memory array having a plurality of memory locations configured to store data and a controller, a method of reading data, the method comprising:

performing a plurality of read operations on a first memory location, the plurality of read data values forming a plurality of data patterns;

assigning probability values based on the data patterns;

updating a plurality of previously determined probability values using the assigned probability values; and

reading a second memory location using the updated probability values,

wherein the method is performed under control of the controller.

27. The method of claim 26 , wherein:

the first memory location stores bit values X 1 to X N ; and

the assigned probability values include probability values determined based on the number of occurrences of the data patterns that is: (1) associated with X i and (2) correlated to a bit sequence including X i and one or more bit values neighboring X i .

28. The method of claim 26 , further comprising performing the plurality of read operations on the first memory location using a plurality of voltage thresholds.

29. The method of claim 26 , wherein the first memory location comprises a first memory page and a second memory location comprises a second memory page neighboring the first memory page.

30. The method of claim 26 , wherein reading the second memory location comprises reading without using information derived from training data stored in 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 Apr 2, 2013
From: KRISHNAN, ANANTHA RAMAN; GARANI, SHAYAN S.; ANDERSON, KENT D.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 030136/0959 →