Back to results
US 10,120,753 B2Granted
Methods and apparatuses for error correction
AssigneeMicron Technology, Inc.
InventorChandra C. Varanasi
Life of this patent
Estimating the term…
Abstract
Embodiments of the present invention disclose methods and apparatuses for correcting errors in data stored in a solid state device. The solid state device may have a plurality of bits stored in multi-level memory cells. The method may include identifying one or more errors in a plurality of memory cells. The method may further include converting the erroneous cells to erasures. The method may further include correcting the one or more erasures.
Claims18
An apparatus comprising:
- a memory device having a plurality of multi-level cells;
- an encoder circuit coupled to the memory device and configured to store a first plurality of data bits in first multi-level cells of the plurality of multi-level cells and to store a second plurality of data bits in second multi-level cells of the plurality of multi-level cells, and further configured to store parity check bits in the second multi-level cells with the second plurality of data bits, wherein the parity check bits are based on first parity bits and the second plurality of data bits and the first parity bits are based on second parity bits for the first plurality of data bits, and wherein the first and second plurality of data bits, and the parity check bits are stored in the plurality of multi-level cells in a tensor product code configuration;
- and
- a decoder circuit coupled to the memory device and configured to identify one or more erroneous cells in the plurality of multi-level cells, erase data bits stored in the one or more erroneous cells, convert a flash channel associated with the plurality of multi-level cells from an errors channel to an erasures channel, and perform low density parity check decoding.
1 more element
An apparatus comprising:
- a memory device having a first plurality of data bits stored in first plurality of multi-level memory cells, a second plurality of data bits stored in a second plurality of multi-level memory cells, and further having parity check bits stored with the second plurality of data bits in the second plurality of multi-level memory cells, wherein the first and second plurality of data bits and the parity check bits are stored in the first and second plurality of multi-level cells in a tensor product code configuration;
- and
- a controller coupled to the memory device and configured to identify one or more erroneous multi-level memory cells, erase data bits stored in the one or more erroneous multi-level memory cells, convert a flash channel associated with the plurality of multi-level memory cells from an errors channel to an erasures channel, and perform low density parity check decoding.
A method comprising:
- identifying one or more errors in a plurality of memory cells having a plurality of data bits encoded thereon in a tensor product code, wherein the tensor product code includes a first plurality of data bits stored in first memory cells of the plurality of memory cells, a second plurality of data bits stored in second memory cells of the plurality of memory cells, and parity check bits stored in the second memory cells of the plurality of memory cells with the second plurality of data bits, and wherein fewer data bits are stored in the second memory cells of the plurality of memory cells than the data bits stored in the first memory cells of the plurality of memory cells;
- and
- erasing data bits stored in one or more erroneous cells of the plurality of memory cells, converting a flash channel associated with the plurality of memory cells from an errors channel to an erasures channel, and performing low density parity check decoding.
A method comprising:
- storing a first set of data bits in a first plurality of memory cells;
- determining a first set of parity bits for the first plurality of memory cells;
- determining a Bose-Chaudhuri-Hocquenghem (BCH) parity bit for each of the parity bits in the first set of parity bits;
- storing a second set of data bits in a second plurality of memory cells;
- determining a second set of single parity check (SPC) parity-bits for the second set of data bits and the BCH parity bits;
- storing the second set of single parity check (SPC) bits in the second plurality of memory cells;
- decoding the second set of parity bits to generate a BCH code word;
- identifying one or more erroneous cells in the first and second plurality of memory cells based on the BCH code word;
- erasing data bits stored in the one or more erroneous cells;
- converting a flash channel associated with the first and second plurality of memory cells from an errors channel to an erasures channel;
- and
- performing low density parity check decoding.
9 more elements
A method comprising:
- storing a first plurality of data bits in a first plurality of multi-level memory cells;
- encoding the first plurality of bits according to a tensor product code to generate a first plurality of parity bits;
- encoding a second plurality of data bits and the first plurality of parity bits according to the tensor product code to generate a second plurality of parity bits;
- storing the second plurality of data bits and the second plurality of parity bits in a second plurality of multi-level memory cells;
- identifying one or more erroneous cells in at least one of the first and second plurality of multi-level memory cells;
- erasing data bits stored in the one or more erroneous cells;
- converting a flash channel associated with the first and second plurality of multi-level memory cells from an errors channel to an erasures channel;
- and
- performing low density parity check decoding.
6 more elements
Dependencies are inferred from the claim text.