IP Library Granted Patent US 11,606,105
Granted Patent B2
US 11,606,105 · App. 17/529,193 · Granted Mar 14, 2023

Dynamic multi-stage decoding

Inventors: Jun Tao (Ladera Ranch, CA); Niang-Chu Chen (Irvine, CA)
Assignee: Western Digital Technologies, Inc.
H03M13/3746G06F11/1012G06F11/1068G11C29/52H03M13/1108H03M13/1111H03M13/3715H03M13/3738H03M13/6325H03M13/1105
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,606,105
App. No.
17/529,193
Granted
Mar 14, 2023
Kind
B2
Abstract

Methods and systems for decoding raw data may include determining a sequence of a plurality of read-level voltages based on previous decoding data and executing a multi-stage decoding operation to decode raw data read from the plurality of memory cells using the determined sequence of the plurality of read-level voltages. Decoded data is returned from the multi-stage decoding operation upon completion of the multi-stage decoding operation and the previous decoding data is updated based on results of the multi-stage decoding operation.

Claims (70)

1. A data storage system, comprising:

memory comprising memory cells; and

one or more controllers configured to cause:

determining a sequence of read-level voltages based on decoding data, wherein the decoding data indicates which one or more read-level voltages have been used for one or more decoding operations;

executing a multi-stage decoding operation to decode raw data read from the memory cells;

providing decoded data from the multi-stage decoding operation upon completion of the multi-stage decoding operation; and

updating a decoding data indication,

wherein:

the multi-stage decoding operation comprises one or more hard decoding operations and one or more soft decoding operations;

the one or more hard decoding operations are configured to use the determined sequence of read-level voltages for decoding;

the one or more soft decoding operations are configured to use a second sequence of read-level voltages for decoding; and

the second sequence of read-level voltages is different from the determined sequence of read-level voltages.

2. The data storage system of claim 1 , wherein:

a first counter corresponds to a first group of read-level voltages, and the first counter has a first value;

a second counter corresponds to a second group of read-level voltages, and the second counter has a second value; and

the determining comprises determining the sequence of read-level voltages based on switching between the first group and the second group.

3. The data storage system of claim 2 , wherein the switching is based on the first value and the second value.

4. The data storage system of claim 2 , wherein the read-level voltages of the first group are different from the read-level voltages of the second group.

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

each unsuccessful hard decoding operation of the multi-stage decoding operation to be followed by up to multiple soft decoding operations regardless of availability of another hard decoding operation; and

executing two or more consecutive soft decoding operations without re-reading the memory cells.

6. The data storage system of claim 1 , wherein:

after an unsuccessful first hard decoding operation on a first data using a first read-level voltage and after an unsuccessful second hard decoding operation on the first data using a second read-level voltage, when a read-level voltage of a third hard decoding operation of a particular stage of the multi-stage decoding operation is same as the first read-level voltage of the unsuccessful first hard decoding operation, the one or more controllers are configured to skip the third hard decoding operation on the first data and configured to execute one or more soft decoding operations of the particular stage.

7. The data storage system of claim 1 , wherein each stage of the multi-stage decoding operation is associated with one respective read-level voltage from another sequence.

8. The data storage system of claim 1 , wherein:

the decoding data indication comprises counter values of respective counters corresponding to the read-level voltages; and

determining the sequence of read-level voltages comprises ordering the read-level voltages according to the counter values of the respective counters.

9. The data storage system of claim 1 , wherein:

updating the decoding data indication comprises incrementing a counter value corresponding to a read-level voltage of the read-level voltages used to obtain successfully decoded data; and

the one or more controllers are configured to cause determining the sequence of read-level voltages based on the counter value.

10. A method for a data storage system, the method comprising:

determining a sequence of read-level voltages based on decoding data, wherein the decoding data indicates which one or more read-level voltages have been used for one or more decoding operations;

executing a multi-stage decoding operation to decode raw data read from memory cells;

providing decoded data from the multi-stage decoding operation upon completion of the multi-stage decoding operation; and

updating a decoding data indication,

wherein:

the multi-stage decoding operation comprises one or more hard decoding operations and one or more soft decoding operations;

the one or more hard decoding operations are configured to use the determined sequence of read-level voltages for decoding;

the one or more soft decoding operations are configured to use a second sequence of read-level voltages for decoding; and

the second sequence of read-level voltages is different from the determined sequence of read-level voltages.

11. The method of claim 10 , wherein:

a first counter corresponds to a first group of read-level voltages, and the first counter has a first value;

a second counter corresponds to a second group of read-level voltages, and the second counter has a second value; and

the determining comprises determining the sequence of read-level voltages based on switching between the first group and the second group.

12. The method of claim 11 , wherein the switching is based on the first value and the second value.

13. The method of claim 11 , wherein the read-level voltages of the first group are different from the read-level voltages of the second group.

14. The method of claim 10 , wherein:

each unsuccessful hard decoding operation of the multi-stage decoding operation is followed by up to multiple soft decoding operations regardless of availability of another hard decoding operation; and

two or more consecutive soft decoding operations are executed without re-reading the memory cells.

15. The method of claim 10 , wherein:

after an unsuccessful first hard decoding operation on a first data using a first read-level voltage and after an unsuccessful second hard decoding operation on the first data using a second read-level voltage, when a read-level voltage of a third hard decoding operation of a particular stage of the multi-stage decoding operation is same as the first read-level voltage of the unsuccessful first hard decoding operation, the third hard decoding operation on the first data is skipped, and one or more soft decoding operations of the particular stage are executed.

16. The method of claim 10 , wherein each stage of the multi-stage decoding operation is associated with one respective read-level voltage from another sequence.

17. The method of claim 10 , wherein:

the decoding data indication comprises counter values of respective counters corresponding to the read-level voltages; and

determining the sequence of read-level voltages comprises ordering the read-level voltages according to the counter values of the respective counters.

18. An apparatus, comprising:

means for determining a sequence of read-level voltages based on decoding data, wherein the decoding data indicates which one or more read-level voltages have been used for one or more decoding operations;

means for executing a multi-stage decoding operation to decode raw data read from memory cells;

means for providing decoded data from the multi-stage decoding operation upon completion of the multi-stage decoding operation; and

means for updating a decoding data indication,

wherein:

the multi-stage decoding operation comprises one or more hard decoding operations and one or more soft decoding operations;

the one or more hard decoding operations are configured to use the determined sequence of read-level voltages for decoding;

the one or more soft decoding operations are configured to use a second sequence of read-level voltages for decoding; and

the second sequence of read-level voltages is different from the determined sequence of read-level voltages.

19. The apparatus of claim 18 , wherein:

a first counter corresponds to a first group of read-level voltages, and the first counter has a first value;

a second counter corresponds to a second group of read-level voltages, and the second counter has a second value; and

the means for determining comprises means for determining the sequence of read-level voltages based on switching between the first group and the second group.

20. The apparatus of claim 19 , wherein the switching is based on the first value and the second value.

Assignments (8)
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 - 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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2021
From: TAO, JUN; CHEN, NIANG-CHU
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058247/0982 →