Compressing data from multiple reads for error control management in memory systems
First Claim
1. A method of representing a N-bit binary sequence from a sequence of N memory read operations, the method comprising:
- in response to M initial read operations in a sequence of N read operations that read from a single memory location,populating the M single-bit buffer locations by setting each respective single-bit buffer location of the M single-bit buffer locations to a value corresponding to a read value obtained by a respective read operation of the M initial read operations; and
in response to the N−
M subsequent read operations, in accordance with a determination that the M single-bit buffer locations are in a corresponding predefined state after the M initial read operations, and at least one of the N−
M subsequent read operations produces a read value that is different from a first predefined read value,updating the state of the M single-bit buffer locations to a state that indicates which read operation in the sequence of N read operations is the first read operation in said sequence to produce a read value that is different from the first predefined read value.
3 Assignments
0 Petitions
Accused Products
Abstract
The various implementations described herein include systems, methods and/or devices that may enhance the reliability with which data can be stored in and read from a memory. Some implementations include a method of compressing a sequence of read data values into a bit-tuple of a predefined length to enable soft information decoding systems that use less power and/or less memory. In some implementations, the bit-tuple of a predefined length is produced using M single-bit buffer locations, where M corresponds to the predefined length of the bit-tuple. Some implementations utilize a collection of characterization vectors that include soft information values associated with the possible permutations of the bit-tuples. In turn, a sequence of bit-tuples is converted into a sequence of soft information values by retrieving a particular characterization vector, and selecting a respective soft information value from that characterization vector for each bit-tuple in the sequence.
-
Citations
28 Claims
-
1. A method of representing a N-bit binary sequence from a sequence of N memory read operations, the method comprising:
-
in response to M initial read operations in a sequence of N read operations that read from a single memory location, populating the M single-bit buffer locations by setting each respective single-bit buffer location of the M single-bit buffer locations to a value corresponding to a read value obtained by a respective read operation of the M initial read operations; and in response to the N−
M subsequent read operations, in accordance with a determination that the M single-bit buffer locations are in a corresponding predefined state after the M initial read operations, and at least one of the N−
M subsequent read operations produces a read value that is different from a first predefined read value,updating the state of the M single-bit buffer locations to a state that indicates which read operation in the sequence of N read operations is the first read operation in said sequence to produce a read value that is different from the first predefined read value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of representing a sequence of data values using a plurality of buffer locations, wherein there are fewer buffer locations than the total number of data values in the sequence, the method comprising:
-
for an initial sub-sequence of the data values, populating the plurality of buffer locations by setting each of the plurality of buffer locations based on a respective sequential one of the initial sub-sequence of data values; updating the collective state of the plurality of buffer locations for each remaining data value in a remaining sub-sequence of the sequence of data values in sequential order by; determining whether the plurality of buffer locations is in a first state; overwriting the first state of the plurality of buffer locations in accordance with a determination that the plurality of buffer locations is in the first state and the remaining data value has a predefined first value; and forgoing updating the collective state of the plurality of buffer locations in accordance with a determination that the plurality of buffer locations is not in the first state or the remaining data value does not have the predefined first value. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A device operable to compress a N-bit binary sequence, the N-bit binary sequence having an initial sub-sequence of M bits and a remaining sub-sequence of N−
- M bits, the device comprising;
M single-bit buffer locations, wherein N is greater than M; and a compression module configured to; populate the M single-bit buffer locations by setting each respective single-bit buffer location to a corresponding value from the initial sub-sequence of M bits; and update the state of the M single-bit buffer locations, in accordance with a determination that the populated M single-bit buffer locations are in a corresponding predefined state, to a state that indicates which bit in the remaining sub-sequence of N−
M bits is the first bit in the sub-sequence of N−
M bits to have a read value that is different from a first predefined value. - View Dependent Claims (25, 26, 27)
- M bits, the device comprising;
-
28. A device operable to compress a sequence of data values, the device comprising:
-
a plurality of buffer locations, wherein there are fewer buffer locations than the total number of data values in the sequence; a compression module configured to; populate each of the plurality of buffer locations by setting each buffer location to a corresponding value from an initial sub-sequence of sequence of data values; and
update the collective state of the plurality buffer locations for each data value of a remaining sub-sequence of the sequence of data values in sequential order by determining whether the plurality of buffer locations is in a first state;
overwriting the first state;overwriting the first state of the plurality of buffer locations in accordance with a determination that the plurality of buffer locations is in the first state and the remaining data value has a predefined first value; and forgoing updating the collective state of the plurality of buffer locations in accordance with a determination that the plurality of buffer locations is not in the the first state or the remaining data value does not have the predefined first value.
-
Specification