Correlated multi-codeword error correction coding
AssigneeRambus Inc.
InventorMichael Alexander Hamburg
Life of this patent
Estimating the term…
Abstract
Aspects and implementations include systems and techniques for efficient detection and correction of errors in stored and communicated data. On encoding, data is partitioned into multiple portions of data symbols and corresponding codewords having one or more error correction (EC) symbols are generated. A mixing transformation is then applied to obtain mixed codewords. On decoding, an unmixing transformation is applied to the mixed codewords before one or more EC codes are applied to identify locations of error(s) in the plurality of codewords. Responsive to determining whether a number of the locations of error(s) is above a threshold number, an EC decoder determines if decoding has been successful or declares an uncorrectable decoding error.
Claims21
A method comprising:
- obtaining data;
- partitioning the data into a plurality of portions, each of the plurality of portions comprising a plurality of data symbols;
- generating a plurality of codewords, wherein each of the plurality of codewords comprises one or more error correction (EC) symbols generated using a respective plurality of data symbols;
- applying a mixing transformation to the plurality of codewords to obtain a plurality of mixed codewords;
- and
- performing an operation using the plurality of mixed codewords, wherein the operation comprises at least one of:
- storing the plurality of mixed codewords in a memory device, or
- transmitting the plurality of mixed codewords over a network.
A method comprising:
- obtaining a plurality of mixed codewords;
- applying an unmixing transformation to the plurality of mixed codewords to obtain a plurality of codewords;
- applying one or more error correction (EC) codes to the plurality of codewords to identify locations of one or more errors in the plurality of codewords;
- responsive to determining whether a number of the locations of the one or more errors is above a first threshold number, selecting a processing operation from a plurality of processing operations comprising:
- generating, using the plurality of codewords and the one or more errors, an output data, or
- declaring an uncorrectable error associated with the output data;
- and
- executing the selected processing operation.
A system comprising:
- a memory system;
- and
- one or more processing units operatively coupled to the memory system, the one or more processing units to:
- obtain a plurality of mixed codewords;
- apply an unmixing transformation to the plurality of mixed codewords to obtain a plurality of codewords;
- apply one or more error correction (EC) codes to the plurality of codewords to identify locations of one or more errors in the plurality of codewords;
- responsive to determining whether a number of the locations of the one or more errors is above a first threshold number, select a processing operation from a plurality of processing operations comprising:
- generating, using the plurality of unmixed codewords and the one or more errors, an output data, or
- declaring an uncorrectable error associated with the output data;
- and
- execute the selected processing operation.
Dependencies are inferred from the claim text.