IP Library Granted Patent US 10,659,084
Granted Patent B1
US 10,659,084 · App. 16/205,924 · Granted May 19, 2020

Soft decoding for flash memory

Inventors: Magnus Stig Torsten Sandell (Bristol, GB); Amr Ismail (Bristol, GB)
Assignees: Kabushiki Kaisha Toshiba; Toshiba Memory Corporation
H03M13/45G06F11/1004
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,659,084
App. No.
16/205,924
Granted
May 19, 2020
Kind
B1
Abstract

A method of soft decoding received signals. The method comprises defining quantisation intervals for a signal value range, determining a number of bits detected in each quantisation interval, a number of bits in each quantisation interval that are connected to unsatisfied constraints and a probability that the error correction code is unsatisfied, determining an overall bit error rate based on the probability that the error correction code is unsatisfied, determining a log likelihood ratio for each quantisation interval based on the overall bit error rate, the number of bits detected in each quantisation interval and the number of bits in each quantisation interval that are connected to unsatisfied constraints and performing soft decoding using the log likelihood ratios.

Claims (41)

1. A method of soft decoding received signals, the method comprising:

defining quantisation intervals for a signal value range;

determining a number of bits detected in each quantisation interval, a number of bits in each quantisation interval that are connected to unsatisfied constraints and a probability that an error correction code is unsatisfied;

determining an overall bit error rate based on the probability that the error correction code is unsatisfied;

determining a log likelihood ratio for each quantisation interval based on the overall bit error rate, the number of bits detected in each quantisation interval and the number of bits in each quantisation interval that are connected to unsatisfied constraints; and

performing soft decoding using the log likelihood ratios.

2. The method of claim 1 , further comprising:

determining an error in each quantisation interval based on the overall bit error rate and the number of bits in each quantisation interval that are connected to unsatisfied constraints; and

thereafter determining said log likelihood ratio further using said overall bit error rate.

3. The method of claim 1 , further comprising:

determining one or more or all of:

a probability that a constraint is unsatisfied when an associated bit is correct based on said overall bit error rate and a constraint degree of the error correction code;

a probability that a constraint is unsatisfied when an associated bit is incorrect based on said overall bit error rate and a constraint degree of the error correction code;

a probability that a correct bit is connected to a predetermined number of unsatisfied constraints based on a variable degree of the error correction code, the number of unsatisfied constraints and a probability that a constraint is unsatisfied when an associated bit is correct; and

a probability that an incorrect bit is connected to a number of unsatisfied constraints based on a variable degree of the error correction code, the number of unsatisfied constraints and a probability that a constraint is unsatisfied when an associated bit is incorrect.

4. The method of claim 1 , further comprising setting said log likelihood ratio to a predetermined value for a or any quantisation interval in which one or more of the number of bits detected is zero or in which an error is determined to be lower or equal to zero.

5. The method of claim 1 , wherein data is stored using a multicell write once storage technique, wherein said log likelihood ratios are determined for an array, wherein the quantisation intervals for individual cells used in combination in the multicell write once storage technique individually define dimensions of the array.

6. The method of claim 1 , further comprising a step of attempting to hard decode data by repeatedly reading memory cells storing said data with a changing read threshold parameter, said quantisation intervals being defined by said change in the read threshold parameter.

7. The method of claim 1 , further comprising outputting soft decoded data from a controller that has performed said soft decoding to an output port or to a connected device.

8. A non-transitory storage medium storing computer program instructions for execution by a processor and that, when executed by a processor, cause the processor to perform the method of claim 1 .

9. A device for soft decoding received signals comprising a processor and memory storing instructions for execution by the processor, the instruction causing the processor when executing the instruction to:

define quantisation intervals for a signal value range;

determine a number of bits detected in each quantisation interval, a number of bits in each quantisation interval that are connected to unsatisfied constraints and a probability that an error correction code is unsatisfied;

determine an overall bit error rate based on the probability that the error correction code is unsatisfied;

determine a log likelihood ratio for each quantisation interval based on the overall bit error rate, the number of bits detected in each quantisation interval and the number of bits in each quantisation interval that are connected to unsatisfied constraints; and

perform soft decoding using the log likelihood ratios.

10. The device of claim 9 , the instruction causing the processor when executing the instruction to:

determine an error in each quantisation interval based on the overall bit error rate and the number of bits in each quantisation interval that are connected to unsatisfied constraints; and

thereafter determine said log likelihood ratio further using said overall bit error rate.

11. The device of claim 9 , the instruction causing the processor when executing the instruction to:

determine one or more or all of:

a probability that a constraint is unsatisfied when an associated bit is correct based on said overall bit error rate and a constraint degree of the error correction code;

a probability that a constraint is unsatisfied when an associated bit is incorrect based on said overall bit error rate and a constraint degree of the error correction code;

a probability that a correct bit is connected to a predetermined number of unsatisfied constraints based on a variable degree of the error correction code, the number of unsatisfied constraints and a probability that a constraint is unsatisfied when an associated bit is correct; and

a probability that an incorrect bit is connected to a number of unsatisfied constraints based on a variable degree of the error correction code, the number of unsatisfied constraints and a probability that a constraint is unsatisfied when an associated bit is incorrect.

12. The device of claim 9 , the instruction causing the processor when executing the instruction to set said log likelihood ratio to a predetermined value for a or any quantisation interval in which one or more of the number of bits detected is zero or in which an error is determined to be lower or equal to zero.

13. The device of claim 9 , wherein data is stored using a multicell write once storage technique, wherein said log likelihood ratios are determined for an array, wherein the quantisation intervals for individual cells used in combination in the multicell write once storage technique individually define dimensions of the array.

14. The device of claim 9 , the instruction causing the processor when executing the instruction to perform a step of attempting to hard decode data by repeatedly reading memory cells storing said data with a changing read threshold parameter, said quantisation intervals being defined by said change in the read threshold parameter.

15. The device of claim 9 , the instruction causing the processor when executing the instruction to output soft decoded data from a controller that has performed said soft decoding to an output port or to a connected device.

16. The device of claim 9 , wherein the device is a flash memory storage device.

17. The device of claim 9 , wherein the device is a wireless communications device.

Assignments (2)
CHANGE OF NAME AND ADDRESS Recorded Jan 31, 2022
From: TOSHIBA MEMORY CORPORATION
To: KIOXIA CORPORATION
Reel/Frame 058905/0582 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2019
From: SANDELL, MAGNUS STIG TORSTEN; ISMAIL, AMR
To: KABUSHIKI KAISHA TOSHIBA; TOSHIBA MEMORY CORPORATION
Reel/Frame 047892/0150 →