Detection and handling of unbalanced errors in interleaved codewords
First Claim
1. A method of estimating error propensities of two or more portions of memory, wherein the two or more portions of memory are each used to store respective portions of each codeword in a set of codewords, the method comprising:
- reading data from memory comprising one or more codewords in the set of codewords, each codeword of the one or more codewords read from memory including two or more portions that are each read from a distinct portion of the two or more portions of memory; and
computing two or more error propensity metrics, each error propensity metric corresponding to a respective portion of memory, wherein each error propensity metric is computed using a corresponding sub-matrix of a parity check matrix associated with the set of codewords and the respective portions of the one or more codewords read from the corresponding portion of memory.
3 Assignments
0 Petitions
Accused Products
Abstract
Mechanisms are provided for detecting whether at least one of two or more portions of memory (e.g. chips, blocks, sectors, planes, pages, word lines, etc.) are more error-prone than the others, when portions of codewords are interleaved across the two or more portions of memory. Some implementations also enable various remedial operations that can be selectively employed in response to detecting an unbalanced error condition in order to reduce the risks associated with interleaving portions of codewords across two or more portions of memory.
303 Citations
30 Claims
-
1. A method of estimating error propensities of two or more portions of memory, wherein the two or more portions of memory are each used to store respective portions of each codeword in a set of codewords, the method comprising:
-
reading data from memory comprising one or more codewords in the set of codewords, each codeword of the one or more codewords read from memory including two or more portions that are each read from a distinct portion of the two or more portions of memory; and computing two or more error propensity metrics, each error propensity metric corresponding to a respective portion of memory, wherein each error propensity metric is computed using a corresponding sub-matrix of a parity check matrix associated with the set of codewords and the respective portions of the one or more codewords read from the corresponding portion of memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer readable medium including instructions for estimating error propensities of two or more portions of memory, wherein the two or more portions of memory are each used by to store respective portions of each codeword in a set of codewords, the instructions when executed by a processor cause a device to:
-
read data from memory comprising one or more codewords in the set of codewords, each codeword of the one or more codewords read from memory including two or more portions that are each read from a distinct portion of the two or more portions of memory; and compute two or more error propensity metrics, each error propensity metric corresponding to a respective portion of memory, wherein each error propensity metric is computed using a corresponding sub-matrix of a parity check matrix associated with the set of codewords and the respective portions of the one or more codewords read from the corresponding portion of memory.
-
-
20. A memory controller configured to estimating error propensities of two or more portions of memory, wherein the two or more portions of memory are each used to store respective portions of each codeword in a set of codewords, the memory controller comprising:
-
a storage medium interface configured to read data from memory comprising one or more codewords in the set of codewords, each codeword of the one or more codewords read from memory including two or more portions that are each read from a distinct portion of the two or more portions of memory; and a sub-matrix error detection module configured to identify whether one of the two or more portions of memory has a relatively higher error propensity than the others by determining a corresponding error propensity metric for each of the two or more portions of memory based on a corresponding sub-matrix of a parity check matrix associated with the set of codewords and the respective portions of the one or more codewords read from the corresponding portion of memory. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
Specification