Method and apparatus for performing error correction on data read from a multistate memory
First Claim
1. A method of operating a multistate memory cell, the cell having one of 4 states, the method comprising:
- reading the cell to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 4, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 24 percent of X volts, L2 is approximately 25 percent of X volts, H2 is approximately 49 percent of X volts, L3 is approximately 50 percent of X volts, H3 is approximately 74 percent of X volts, L4 is approximately 75 percent of X volts, and H4 is approximately 100 percent of X volts;
encoding the voltage signal into one of a sequence of encoded signals E1, E2, E3, and E4, each of the encoded signals representing a unique ordered set of binary bits; and
performing error detection and correction on the encoded signal to detect errors in the encoded signal and to correct correctable errors in the encoded signal.
7 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for performing error correction on data read from a multistate memory are disclosed. According to one embodiment of the present invention a cell in a memory device is read to generate a read voltage determined by a state of the cell and one of an ordered succession of encoded signals is selected based on the read voltage, where each encoded signal corresponds to a field of bits and adjacent encoded signals correspond to respective fields of bits that are different only in a single bit. The selected encoded signal is decoded to generate a field of uncorrected bits and a field of syndrome bits indicating any error in the uncorrected bits. The syndrome bits are decoded to generate correction bits to correct the error, and the uncorrected bits are combined with the correction bits to generate a field of corrected bits.
-
Citations
25 Claims
-
1. A method of operating a multistate memory cell, the cell having one of 4 states, the method comprising:
-
reading the cell to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 4, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 24 percent of X volts, L2 is approximately 25 percent of X volts, H2 is approximately 49 percent of X volts, L3 is approximately 50 percent of X volts, H3 is approximately 74 percent of X volts, L4 is approximately 75 percent of X volts, and H4 is approximately 100 percent of X volts;
encoding the voltage signal into one of a sequence of encoded signals E1, E2, E3, and E4, each of the encoded signals representing a unique ordered set of binary bits; and
performing error detection and correction on the encoded signal to detect errors in the encoded signal and to correct correctable errors in the encoded signal. - View Dependent Claims (2)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 1.2 volts, L2 is approximately 1.25 volts, H2 is approximately 2.45 volts, L3 is approximately 2.5 volts, H3 is approximately 3.7 volts, L4 is approximately 3.75 volts, and H4 is approximately 5.0 volts;
the encoded signals E1, E2, E3, and E4 represent, respectively, 00, 01, 11, and 10;
reading the cell further comprises;
selecting the cell from a plurality of multistate flash memory cells in an array;
sensing a current in the cell indicative of the state of the cell that is represented by a charge stored on a floating gate of the cell; and
converting the current into the voltage signal;
encoding the voltage signal further comprises;
comparing the voltage signal with a plurality of reference voltages to generate a plurality of reference signals; and
converting the reference signals into the encoded signal; and
performing error detection and correction comprises;
decoding the encoded signal and other encoded signals to generate a field of uncorrected bits and fields of syndrome bits;
decoding the syndrome bits to identify bits in the field of uncorrected bits that are in error;
indicating non-correctable errors if two bits in the field of uncorrected bits are in error;
generating a correction bit to correct a bit in error; and
combining the field of uncorrected bits with the correction bit to generate a field of corrected bits.
-
-
3. A method of operating a multistate memory cell, the cell having one of 4 states, the method comprising:
-
reading the cell to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 4, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 24 percent of X volts, L2 is approximately 25 percent of X volts, H2 is approximately 49 percent of X volts, L3 is approximately 50 percent of X volts, H3 is approximately 74 percent of X volts, L4 is approximately 75 percent of X volts, and H4 is approximately 100 percent of X volts;
encoding the voltage signal into one of a sequence of encoded signals E1, E2, E3, and E4, each of the encoded signals representing a unique ordered set of binary bits and adjacent ones of the encoded signals being different in only a single bit; and
performing error detection and correction on the encoded signal to detect errors in the encoded signal and to correct correctable errors in the encoded signal. - View Dependent Claims (4)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 1.2 volts, L2 is approximately 1.25 volts, H2 is approximately 2.45 volts, L3 is approximately 2.5 volts, H3 is approximately 3.7 volts, L4 is approximately 3.75 volts, and H4 is approximately 5.0 volts;
the encoded signals E1, E2, E3, and E4 represent, respectively, 00, 01, 11, and 10;
reading the cell further comprises;
selecting the cell from a plurality of multistate flash memory cells in an array;
sensing a current in the cell indicative of the state of the cell that is represented by a charge stored on a floating gate of the cell; and
converting the current into the voltage signal;
encoding the voltage signal further comprises;
comparing the voltage signal with a plurality of reference voltages to generate a plurality of reference signals; and
converting the reference signals into the encoded signal; and
performing error detection and correction comprises;
decoding the encoded signal and other encoded signals to generate a field of uncorrected bits and fields of syndrome bits;
decoding the syndrome bits to identify bits in the field of uncorrected bits that are in error;
indicating non-correctable errors if two bits in the field of uncorrected bits are in error;
generating a correction bit to correct a bit in error; and
combining the field of uncorrected bits with the correction bit to generate a field of corrected bits.
-
-
5. A method of operating a multistate memory cell, the cell having one of 4 states, the method comprising:
-
reading the cell to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 4, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 24 percent of X volts, L2 is approximately 25 percent of X volts, H2 is approximately 49 percent of X volts, L3 is approximately 50 percent of X volts, H3 is approximately 74 percent of X volts, L4 is approximately 75 percent of X volts, and H4 is approximately 100 percent of X volts;
converting the voltage signal into a field of bits; and
performing error detection and correction on the field of bits to detect errors in the field of bits and to correct correctable errors in the field of bits. - View Dependent Claims (6)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 1.2 volts, L2 is approximately 1.25 volts, H2 is approximately 2.45 volts, L3 is approximately 2.5 volts, H3 is approximately 3.7 volts, L4 is approximately 3.75 volts, and H4 is approximately 5.0 volts;
reading the cell further comprises;
selecting the cell from a plurality of multistate flash memory cells in an array;
sensing a current in the cell indicative of the state of the cell that is represented by a charge stored on a floating gate of the cell; and
converting the current into the voltage signal;
converting the voltage signal further comprises;
comparing the voltage signal with a plurality of reference voltages to generate a plurality of reference signals; and
converting the reference signals into the field of bits; and
performing error detection and correction comprises;
decoding the field of bits and other fields of bits to generate a field of uncorrected bits and fields of syndrome bits;
decoding the syndrome bits to identify bits in the field of uncorrected bits that are in error;
indicating non-correctable errors if two bits in the field of uncorrected bits are in error;
generating a correction bit to correct a bit in error; and
combining the field of uncorrected bits with the correction bit to generate a field of corrected bits.
-
-
7. A memory system comprising:
-
an array of memory cells wherein each of the cells has one of 4 states;
a read circuit coupled to the array to read one of the cells and to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 4, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 24 percent of X volts, L2 is approximately 25 percent of X volts, H2 is approximately 49 percent of X volts, L3 is approximately 50 percent of X volts, H3 is approximately 74 percent of X volts, L4 is approximately 75 percent of X volts, and H4 is approximately 100 percent of X volts;
an encoding circuit coupled to the read circuit to encode the voltage signal into one of a sequence of encoded signals E1, E2, E3, and E4, each of the encoded signals representing a unique ordered set of binary bits; and
an error detection and correction circuit coupled to the encoding circuit to detect errors in the encoded signal and to correct correctable errors in the encoded signal. - View Dependent Claims (8)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 1.2 volts, L2 is approximately 1.25 volts, H2 is approximately 2.45 volts, L3 is approximately 2.5 volts, H3 is approximately 3.7 volts, L4 is approximately 3.75 volts, and H4 is approximately 5.0 volts;
the encoded signals E1, E2, E3, and E4, represent, respectively, 00, 01, 11, and 01;
the memory system comprises an integrated circuit memory system;
each of the cells comprises a multistate flash memory cell;
the read circuit comprises a sense amplifier circuit to convert a current in the cell into the voltage signal;
the encoding circuit comprises;
three comparator circuits, each comparator circuit coupled between the sense amplifier circuit and a reference voltage to receive the voltage signal and to compare the voltage signal with the reference voltage to generate a reference signal; and
a logic circuit coupled to receive the references signals and to generate the encoded signal;
the error detection and correction circuit comprises;
an ECC decoder circuit coupled to the logic circuit to receive the encoded signal and other encoded signals, to assert the encoded signal representing data bits, and to generate syndrome bits from the other encoded signals representing ECC check bits;
a syndrome decoder circuit coupled to receive and decode the syndrome bits, to generate correction bits based on the syndrome bits, and to assert a failure signal if the syndrome bits indicate an error in more than one of the data bits represented by the encoded signal; and
a correction circuit coupled to receive the data bits represented by the encoded signal and the correction bits, to replace one of the data bits that is in error based on the correction bits, and to generate corrected bits.
-
-
9. A memory system comprising:
-
an array of memory cells wherein each of the cells has one of 4 states;
a read circuit coupled to the array to read one of the cells and to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 4, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 24 percent of X volts, L2 is approximately 25 percent of X volts, H2 is approximately 49 percent of X volts, L3 is approximately 50 percent of X volts, H3 is approximately 74 percent of X volts, L4 is approximately 75 percent of X volts, and H4 is approximately 100 percent of X volts;
an encoding circuit coupled to the read circuit to encode the voltage signal into one of a sequence of encoded signals E1, E2, E3, and E4, each of the encoded signals representing a unique ordered set of binary bits and adjacent ones of the encoded signals being different in only a single bit; and
an error detection and correction circuit coupled to the encoding circuit to detect errors in the encoded signal and to correct correctable errors in the encoded signal. - View Dependent Claims (10)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 1.2 volts, L2 is approximately 1.25 volts, H2 is approximately 2.45 volts, L3 is approximately 2.5 volts, H3 is approximately 3.7 volts, L4 is approximately 3.75 volts, and H4 is approximately 5.0 volts;
the encoded signals E1, E2, E3, and E4, represent, respectively, 00, 01, 11, and 01;
the memory system comprises an integrated circuit memory system;
each of the cells comprises a multistate flash memory cell;
the read circuit comprises a sense amplifier circuit to convert a current in the cell into the voltage signal;
the encoding circuit comprises;
three comparator circuits, each comparator circuit coupled between the sense amplifier circuit and a reference voltage to receive the voltage signal and to compare the voltage signal with the reference voltage to generate a reference signal; and
a logic circuit coupled to receive the reference signals and to generate the encoded signal;
the error detection and correction circuit comprises;
an ECC decoder circuit coupled to the logic circuit to receive the encoded signal and other encoded signals, to assert the encoded signal representing data bits, and to generate syndrome bits from the other encoded signals representing ECC check bits;
a syndrome decoder circuit coupled to receive and decode the syndrome bits, to generate correction bits based on the syndrome bits, and to assert a failure signal if the syndrome bits indicate an error in more than one of the data bits represented by the encoded signal; and
a correction circuit coupled to receive the data bits represented by the encoded signal and the correction bits, to replace one of the data bits that is in error based on the correction bits, and to generate corrected bits.
-
-
11. A memory system comprising:
-
an array of memory cells wherein each of the cells has one of 4 states;
a read circuit coupled to the array to read one of the cells and to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 4, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 24 percent of X volts, L2 is approximately 25 percent of X volts, H2 is approximately 49 percent of X volts, L3 is approximately 50 percent of X volts, H3 is approximately 74 percent of X volts, L4 is approximately 75 percent of X volts, and H4 is approximately 100 percent of X volts;
an encoding circuit coupled to the read circuit to encode the voltage signal into a field of bits; and
an error detection and correction circuit coupled to the encoding circuit to detect errors in the field of bits and to correct correctable errors in the field of bits. - View Dependent Claims (12)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 1.2 volts, L2 is approximately 1.25 volts, H2 is approximately 2.45 volts, L3 is approximately 2.5 volts, H3 is approximately 3.7 volts, L4 is approximately 3.75 volts, and H4 is approximately 5.0 volts;
the memory system comprises an integrated circuit memory system;
each of the cells comprises a multistate flash memory cell;
the read circuit comprises a sense amplifier circuit to convert a current in the cell into the voltage signal;
the encoding circuit comprises;
three comparator circuits, each comparator circuit coupled between the sense amplifier circuit and a reference voltage to receive the voltage signal and to compare the voltage signal with the reference voltage to generate a reference signal; and
a logic circuit coupled to receive the reference signals and to generate the field of bits;
the error detection and correction circuit comprises;
an ECC decoder circuit coupled to the logic circuit to receive the field of bits and other fields of bits, to assert bits from the field of bits representing data bits, and to generate syndrome bits from bits from the other fields of bits representing ECC check bits;
a syndrome decoder circuit coupled to receive and decode the syndrome bits, to generate correction bits based on the syndrome bits, and to assert a failure signal if the syndrome bits indicate an error in more than one of the bits from the field of bits representing data bits; and
a correction circuit coupled to receive the bits representing data bits and the correction bits, to replace a bit that is in error based on the correction bits, and to generate corrected bits.
-
-
13. A method of operating a multistate memory cell, the cell having one of 8 states, the method comprising:
-
reading the cell to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 8, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 12 percent of X volts, L2 is approximately 12.2 percent of X volts, H2 is approximately 24 percent of X volts, L3 is approximately 24.2 percent of X volts, H3 is approximately 36 percent of X volts, L4 is approximately 36.2 percent of X volts, H4 is approximately 48 percent of X volts, L5 is approximately 48.2 percent of X volts, H5 is approximately 60 percent of X volts, L6 is approximately 60.2 percent of X volts, H6 is approximately 72 percent of X volts, L7 is approximately 72.2 percent of X volts, H7 is approximately 84 percent of X volts, L8 is approximately 84.2 percent of X volts, and H8 is approximately 100 percent of X volts;
encoding the voltage signal into one of a sequence of encoded signals E1, E2, E3, E4, E5, E6, E7, and E8, each of the encoded signals representing a unique ordered set of binary bits; and
performing error detection and correction on the encoded signal to detect errors in the encoded signal and to correct correctable errors in the encoded signal. - View Dependent Claims (14)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 0.6 volts, L2 is approximately 0.61 volts, H2 is approximately 1.2 volts, L3 is approximately 1.21 volts, H3 is approximately 1.8 volts, L4 is approximately 1.81 volts, H4 is approximately 2.4 volts, L5 is approximately 2.41 volts, H5 is approximately 3.0 volts, L6 is approximately 3.01 volts, H6 is approximately 3.6 volts, L7 is approximately 3.61 volts, H7 is approximately 4.2 volts, L8 is approximately 4.21 volts, and H8 is approximately 5.0 volts;
the encoded signals E1, E2, E3, E4, E5, E6, E7, and E8 represent, respectively, 000, 001, 011, 010, 110, 111, 101, and 100 or 000, 100, 101, 001, 011, 111, 110, and 010;
reading the cell further comprises;
selecting the cell from a plurality of multistate flash memory cells in an array;
sensing a current in the cell indicative of the state of the cell that is represented by a charge stored on a floating gate of the cell; and
converting the current into the voltage signal;
encoding the voltage signal further comprises;
comparing the voltage signal with a plurality of reference voltages to generate a plurality of reference signals; and
converting the reference signals into the encoded signal; and
performing error detection and correction comprises;
decoding the encoded signal and other encoded signals to generate a field of uncorrected bits and fields of syndrome bits;
decoding the syndrome bits to identify bits in the field of uncorrected bits that are in error;
indicating non-correctable errors if two bits in the field of uncorrected bits are in error;
generating a correction bit to correct a bit in error; and
combining the field of uncorrected bits with the correction bit to generate a field of corrected bits.
-
-
15. A method of operating a multistate memory cell, the cell having one of 8 states, the method comprising:
-
reading the cell to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 8, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 12 percent of X volts, L2 is approximately 12.2 percent of X volts, H2 is approximately 24 percent of X volts, L3 is approximately 24.2 percent of X volts, H3 is approximately 36 percent of X volts, L4 is approximately 36.2 percent of X volts, H4 is approximately 48 percent of X volts, L5 is approximately 48.2 percent of X volts, H5 is approximately 60 percent of X volts, L6 is approximately 60.2 percent of X volts, H6 is approximately 72 percent of X volts, L7 is approximately 72.2 percent of X volts, H7 is approximately 84 percent of X volts, L8 is approximately 84.2 percent of X volts, and H8 is approximately 100 percent of X volts;
encoding the voltage signal into one of a sequence of encoded signals E1, E2, E3, E4, E5, E6, E7, and E8, each of the encoded signals representing a unique ordered set of binary bits and adjacent ones of the encoded signals being different in only a single bit; and
performing error detection and correction on the encoded signal to detect errors in the encoded signal and to correct correctable errors in the encoded signal. - View Dependent Claims (16)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 0.6 volts, L2 is approximately 0.61 volts, H2 is approximately 1.2 volts, L3 is approximately 1.21 volts, H3 is approximately 1.8 volts, L4 is approximately 1.81 volts, H4 is approximately 2.4 volts, L5 is approximately 2.41 volts, H5 is approximately 3.0 volts, L6 is approximately 3.01 volts, H6 is approximately 3.6 volts, L7 is approximately 3.61 volts, H7 is approximately 4.2 volts, L8 is approximately 4.21 volts, and H8 is approximately 5.0 volts;
the encoded signals E1, E2, E3, E4,E5, E6, E7, and E8 represent, respectively, 000, 001, 011, 010, 110, 111, 101, and 100 or 000, 100, 101, 001, 011, 111, 110, and 010;
reading the cell further comprises;
selecting the cell from a plurality of multistate flash memory cells in an array;
sensing a current in the cell indicative of the state of the cell that is represented by a charge stored on a floating gate of the cell; and
converting the current into the voltage signal;
encoding the voltage signal further comprises;
comparing the voltage signal with a plurality of reference voltages to generate a plurality of reference signals; and
converting the reference signals into the encoded signal; and
performing error detection and correction comprises;
decoding the encoded signal and other encoded signals to generate a field of uncorrected bits and fields of syndrome bits;
decoding the syndrome bits to identify bits in the field of uncorrected bits that are in error;
indicating non-correctable errors if two bits in the field of uncorrected bits are in error;
generating a correction bit to correct a bit in error; and
combining the field of uncorrected bits with the correction bit to generate a field of corrected bits.
-
-
17. A method of operating a multistate memory cell, the cell having one of 8 states, the method comprising:
-
reading the cell to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 8, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 12 percent of X volts, L2 is approximately 12.2 percent of X volts, H2 is approximately 24 percent of X volts, L3 is approximately 24.2 percent of X volts, H3 is approximately 36 percent of X volts, L4 is approximately 36.2 percent of X volts, H4 is approximately 48 percent of X volts, L5 is approximately 48.2 percent of X volts, H5 is approximately 60 percent of X volts, L6 is approximately 60.2 percent of X volts, H6 is approximately 72 percent of X volts, L7 is approximately 72.2 percent of X volts, H7 is approximately 84 percent of X volts, L8 is approximately 84.2 percent of X volts, and H8 is approximately 100 percent of X volts;
converting the voltage signal into a field of bits; and
performing error detection and correction on the field of bits to detect errors in the field of bits and to correct correctable errors in the field of bits. - View Dependent Claims (18)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 0.6 volts, L2 is approximately 0.61 volts, H2 is approximately 1.2 volts, L3 is approximately 1.21 volts, H3 is approximately 1.8 volts, L4 is approximately 1.81 volts, H4 is approximately 2.4 volts, L5 is approximately 2.41 volts, H5 is approximately 3.0 volts, L6 is approximately 3.01 volts, H6 is approximately 3.6 volts, L7 is approximately 3.61 volts, H7 is approximately 4.2 volts, L8 is approximately 4.21 volts, and H8 is approximately 5.0 volts;
reading the cell further comprises;
selecting the cell from a plurality of multistate flash memory cells in an array;
sensing a current in the cell indicative of the state of the cell that is represented by a charge stored on a floating gate of the cell; and
converting the current into the voltage signal;
converting the voltage signal further comprises;
comparing the voltage signal with a plurality of reference voltages to generate a plurality of reference signals; and
converting the reference signals into the field of bits; and
performing error detection and correction comprises;
decoding the field of bits and other fields of bits to generate a field of uncorrected bits and fields of syndrome bits;
decoding the syndrome bits to identify bits in the field of uncorrected bits that are in error;
indicating non-correctable errors if two bits in the field of uncorrected bits are in error;
generating a correction bit to correct a bit in error; and
combining the field of uncorrected bits with the correction bit to generate a field of corrected bits.
-
-
19. A memory system comprising:
-
an array of memory cells wherein each of the cells has one of 8 states;
a read circuit coupled to the array to read one of the cells and to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 8, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 12 percent of X volts, L2 is approximately 12.2 percent of X volts, H2 is approximately 24 percent of X volts, L3 is approximately 24.2 percent of X volts, H3 is approximately 36 percent of X volts, L4 is approximately 36.2 percent of X volts, H4 is approximately 48 percent of X volts, L5 is approximately 48.2 percent of X volts, H5 is approximately 60 percent of X volts, L6 is approximately 60.2 percent of X volts, H6 is approximately 72 percent of X volts, L7 is approximately 72.2 percent of X volts, H7 is approximately 84 percent of X volts, L8 is approximately 84.2 percent of X volts, and H8 is approximately 100 percent of X volts;
an encoding circuit coupled to the read circuit to encode the voltage signal into one of a sequence of encoded signals E1, E2, E3, E4, E5, E6, E7, and E8, each of the encoded signals representing a unique ordered set of binary bits; and
an error detection and correction circuit coupled to the encoding circuit to detect errors in the encoded signal and to correct correctable errors in the encoded signal. - View Dependent Claims (20)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 0.6 volts, L2 is approximately 0.61 volts, H2 is approximately 1.2 volts, L3 is approximately 1.21 volts, H3 is approximately 1.8 volts, L4 is approximately 1.81 volts, H4 is approximately 2.4 volts, L5 is approximately 2.41 volts, H5 is approximately 3.0 volts, L6 is approximately 3.01 volts, H6 is approximately 3.6 volts, L7 is approximately 3.61 volts, H7 is approximately 4.2 volts, L8 is approximately 4.21 volts, and H8 is approximately 5.0 volts;
the encoded signals E1, E2, E3, E4, E5, E6, E7, and E8, represent, respectively, 000, 001, 011, 010, 110, 111, 101, and 100 or 000, 100, 101, 001, 011, 111, 110, and 010;
the memory system comprises an integrated circuit memory system;
each of the cells comprises a multistate flash memory cell;
the read circuit comprises a sense amplifier circuit to convert a current in the cell into the voltage signal;
the encoding circuit comprises;
a plurality of comparator circuits, each comparator circuit coupled between the sense amplifier circuit and a reference voltage to receive the voltage signal and to compare the voltage signal with the reference voltage to generate a reference signal; and
a logic circuit coupled to receive the reference signals and to generate the encoded signal;
the error detection and correction circuit comprises;
an ECC decoder circuit coupled to the logic circuit to receive the encoded signal and other encoded signals, to assert the encoded signal representing data bits, and to generate syndrome bits from the other encoded signals representing ECC check bits;
a syndrome decoder circuit coupled to receive and decode the syndrome bits, to generate correction bits based on the syndrome bits, and to assert a failure signal if the syndrome bits indicate an error in more than one of the data bits represented by the encoded signal; and
a correction circuit coupled to receive the data bits represented by the encoded signal and the correction bits, to replace one of the data bits that is in error based on the correction bits, and to generate corrected bits.
-
-
21. A memory system comprising:
-
an array of memory cells wherein each of the cells has one of 8 states;
a read circuit coupled to the array to read one of the cells and to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 8, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 12 percent of X volts, L2 is approximately 12.2 percent of X volts, H2 is approximately 24 percent of X volts, L3 is approximately 24.2 percent of X volts, H3 is approximately 36 percent of X volts, L4 is approximately 36.2 percent of X volts, H4 is approximately 48 percent of X volts, L5 is approximately 48.2 percent of X volts, H5 is approximately 60 percent of X volts, L6 is approximately 60.2 percent of X volts, H6 is approximately 72 percent of X volts, L7 is approximately 72.2 percent of X volts, H7 is approximately 84 percent of X volts, L8 is approximately 84.2 percent of X volts, and H8 is approximately 100 percent of X volts;
an encoding circuit coupled to the read circuit to encode the voltage signal into one of a sequence of encoded signals E1, E2, E3, E4, E5, E6, E7, and E8, each of the encoded signals representing a unique ordered set of binary bits and adjacent ones of the encoded signals being different in only a single bit; and
an error detection and correction circuit coupled to the encoding circuit to detect errors in the encoded signal and to correct correctable errors in the encoded signal. - View Dependent Claims (22)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 0.6 volts, L2 is approximately 0.61 volts, H2 is approximately 1.2 volts, L3 is approximately 1.21 volts, H3 is approximately 1.8 volts, L4 is approximately 1.81 volts, H4 is approximately 2.4 volts, L5 is approximately 2.41 volts, H5 is approximately 3.0 volts, L6 is approximately 3.01 volts, H6 is approximately 3.6 volts, L7 is approximately 3.61 volts, H7 is approximately 4.2 volts, L8 is approximately 4.21 volts, and H8 is approximately 5.0 volts;
the encoded signals E1, E2, E3, E4, E5, E6, E7, and E8, represent, respectively, 000, 001, 011, 010, 110, 111, 101, and 100 or 000, 100, 101, 001, 011, 111, 110, and 010;
the memory system comprises an integrated circuit memory system;
each of the cells comprises a multistate flash memory cell;
the read circuit comprises a sense amplifier circuit to convert a current in the cell into the voltage signal;
the encoding circuit comprises;
a plurality of comparator circuits, each comparator circuit coupled between the sense amplifier circuit and a reference voltage to receive the voltage signal and to compare the voltage signal with the reference voltage to generate a reference signal; and
a logic circuit coupled to receive the reference signals and to generate the encoded signal;
the error detection and correction circuit comprises;
an ECC decoder circuit coupled to the logic circuit to receive the encoded signal and other encoded signals, to assert the encoded signal representing data bits, and to generate syndrome bits from the other encoded signals representing ECC check bits;
a syndrome decoder circuit coupled to receive and decode the syndrome bits, to generate correction bits based on the syndrome bits, and to assert a failure signal if the syndrome bits indicate an error in more than one of the data bits represented by the encoded signal; and
a correction circuit coupled to receive the data bits represented by the encoded signal and the correction bits, to replace one of the data bits that is in error based on the correction bits, and to generate corrected bits.
-
-
23. A memory system comprising:
-
an array of memory cells wherein each of the cells has one of 8 states;
a read circuit coupled to the array to read one of the cells and to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 8, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 12 percent of X volts, L2 is approximately 12.2 percent of X volts, H2 is approximately 24 percent of X volts, L3 is approximately 24.2 percent of X volts, H3 is approximately 36 percent of X volts, L4 is approximately 36.2 percent of X volts, H4 is approximately 48 percent of X volts, L5 is approximately 48.2 percent of X volts, H5 is approximately 60 percent of X volts, L6 is approximately 60.2 percent of X volts, H6 is approximately 72 percent of X volts, L7 is approximately 72.2 percent of X volts, H7 is approximately 84 percent of X volts, L8 is approximately 84.2 percent of X volts, and H8 is approximately 100 percent of X volts;
an encoding circuit coupled to the read circuit to encode the voltage signal into a field of bits; and
an error detection and correction circuit coupled to the encoding circuit to detect errors in the field of bits and to correct correctable errors in the field of bits. - View Dependent Claims (24)
the minimum voltage comprises 0 volts and X comprises 5 volts;
L1 is approximately 0 volts, H1 is approximately 0.6 volts, L2 is approximately 0.61 volts, H2 is approximately 1.2 volts, L3 is approximately 1.21 volts, H3 is approximately 1.8 volts, L4 is approximately 1.81 volts, H4 is approximately 2.4 volts, L5 is approximately 2.41 volts, H5 is approximately 3.0 volts, L6 is approximately 3.01 volts, H6 is approximately 3.6 volts, L7 is approximately 3.61 volts, H7 is approximately 4.2 volts, L8 is approximately 4.21 volts, and H8 is approximately 5.0 volts;
the memory system comprises an integrated circuit memory system;
each of the cells comprises a multistate flash memory cell;
the read circuit comprises a sense amplifier circuit to convert a current in the cell into the voltage signal;
the encoding circuit comprises;
a plurality of comparator circuits, each comparator circuit coupled between the sense amplifier circuit and a reference voltage to receive the voltage signal and to compare the voltage signal with the reference voltage to generate a reference signal; and
a logic circuit coupled to receive the reference signals and to generate the field of bits;
the error detection and correction circuit comprises;
an ECC decoder circuit coupled to the logic circuit to receive the field of bits and other fields of bits, to assert bits from the field of bits representing data bits, and to generate syndrome bits from bits from the other fields of bits representing ECC check bits;
a syndrome decoder circuit coupled to receive and decode the syndrome bits, to generate correction bits based on the syndrome bits, and to assert a failure signal if the syndrome bits indicate an error in more than one of the bits from the field of bits representing data bits; and
a correction circuit coupled to receive the bits representing data bits and the correction bits, to replace a bit that is in error based on the correction bits, and to generate corrected bits.
-
-
25. A memory device comprising:
-
an array of memory cells wherein each of the cells has one of a plurality of states;
a read circuit coupled to the array to read one of the cells and to generate a voltage signal indicative of the state of the cell, the voltage signal being in one of a sequence of voltage subranges Li<
Hi in a voltage range of X volts defined from a minimum voltage, wherein i is an integer from 1 through 4, and wherein L1 is approximately 0 percent of X volts, H1 is approximately 24 percent of X volts, L2 is approximately 25 percent of X volts, H2 is approximately 49 percent of X volts, L3 is approximately 50 percent of X volts, H3 is approximately 74 percent of X volts, L4 is approximately 75 percent of X volts, and H4 is approximately 100 percent of X volts;
means for encoding the voltage signal into a field of bits representing the state of the cell; and
means for detecting and correcting a single erroneous bit in the field of bits and for asserting a failure signal upon detecting more than one erroneous bit in the field of bits.
-
Specification