Coding circuit and memory device including the same
View Patent ↗A coding circuit includes an encoder circuit configured to generate an input codeword by concatenating an input data and a parity generated by processing the input data using an odd parity generator matrix; and a decoder circuit configured to correct a double error from an output codeword, and to detect a triple error using a syndrome generated by processing the output codeword using the odd parity generator matrix, wherein each column of the odd parity generator matrix has a respective odd number of 1's.
1. A coding circuit comprising:
an encoder circuit configured to generate an input codeword by concatenating an input data and a parity generated by processing the input data using an odd parity generator matrix; and
a decoder circuit configured to correct a double error from an output codeword, and to detect a triple error using a syndrome generated by processing the output codeword using the odd parity generator matrix,
wherein each column of the odd parity generator matrix has a respective odd number of 1's, and
wherein the odd parity generator matrix corresponds to a plurality of selected columns selected from a generator matrix corresponding to a predetermined generator function for Bose-Chauduri-Hocquenghem (BCH) coding on a finite field GF (2 m ), each selected column having a respective odd number of 1's.
2. The coding circuit of claim 1 , wherein the encoder circuit includes:
a first concatenation circuit configured to concatenate the input data and padding data;
a selection circuit configured to select an output of the first concatenation circuit or the output codeword;
a parity generator configured to process an output of the selection circuit using the odd parity generator matrix; and
a second concatenation circuit configured to concatenate the input data and an output of the parity generator to generate the input codeword.
3. The coding circuit of claim 2 ,
wherein the selection circuit is configured to select the output of the first concatenation circuit during an encoding operation, and select the output codeword during a decoding operation, and
wherein the parity generator generates the syndrome during the decoding operation.
4. The coding circuit of claim 1 , wherein the decoder circuit includes:
a syndrome generation circuit configured to generate a plurality of syndromes from the output codeword;
an error detection circuit configured to detect error locations from the plurality of syndromes;
an error correction circuit configured to correct errors of data included in the output codeword according to the error locations and to provide the output data; and
a multiple error detection circuit configured to output a detection signal indicating whether an odd number of bit errors greater than or equal to three is detected using the syndrome.
5. The coding circuit of claim 4 , wherein the multiple error detection circuit includes:
a comparison circuit configured to compare the syndrome with the odd parity generator matrix;
a first logic circuit configured to detect number of 1's included in the syndrome; and
a second logic circuit configured to generate the detection signal using an output of the comparison circuit and an output of the first logic circuit.
6. The coding circuit of claim 5 ,
wherein the comparison circuit outputs a low-level signal when there is no column matching with the syndrome,
wherein the first logic circuit outputs a high-level signal when number of 1's in the syndrome is odd, and
wherein the second logic circuit generates the detection signal by performing a logical AND operation on the output of the comparison circuit and the output of the first logic circuit.
7. A memory device comprising:
a memory cell array; and
a coding circuit configured to provide an input codeword to the memory cell array by encoding input data, and to generate output data and a detection signal by decoding an output codeword output from the memory cell array,
wherein the coding circuit includes:
an encoder circuit configured to generate the input codeword by concatenating the input data and a parity generated by processing the input data using an odd parity generator matrix; and
a decoder circuit configured to correct a double error from the output codeword, and to detect a triple error using a syndrome generated by processing the output codeword using the odd parity generator matrix,
wherein each column of the odd parity generator matrix has a respective odd number of 1's, and
wherein the odd parity generator matrix corresponds to a plurality of columns selected from a generator matrix corresponding to a predetermined generator function for Bose-Chauduri-Hocquenghem (BCH) coding on a finite field GF (2 m ), each selected column having a respective odd number of 1's.
8. The memory device of claim 7 , wherein the encoder circuit includes:
a first concatenation circuit configured to concatenate the input data and padding data;
a selection circuit configured to select an output of the first concatenation circuit or the output codeword;
a parity generator configured to process an output of the selection circuit using the odd parity generator matrix; and
a second concatenation circuit configured to concatenate the input data and an output of the parity generator to generate the input codeword.
9. The memory device of claim 8 , wherein the selection circuit is configured to select the output of the first concatenation circuit during an encoding operation, and selects the output codeword during a decoding operation, and
wherein the parity generator generates the syndrome during the decoding operation.
10. The memory device of claim 7 , wherein the decoder circuit includes:
a syndrome generation circuit configured to generate a plurality of syndromes from the output codeword;
an error detection circuit configured to detect error locations from the plurality of syndromes;
an error correction circuit configured to correct errors of data included in the output codeword according to the error locations and to provide the output data; and
a multiple error detection circuit configured to output a detection signal indicating whether an odd number of bit errors greater than or equal to three is detected using the syndrome.
11. The memory device of claim 10 , wherein the multiple error detection circuit includes:
a comparison circuit configured to compare the syndrome with the odd parity generator matrix;
a first logic circuit configured to detect number of 1's included in the syndrome; and
a second logic circuit configured to generate the detection signal using an output of the comparison circuit and an output of the first logic circuit.
12. The memory device of claim 11 ,
wherein the comparison circuit outputs a low-level signal when there is no column matching with the syndrome,
wherein the first logic circuit outputs a high-level signal when number of 1's in the syndrome is odd, and
wherein the second logic circuit generates the detection signal by performing a logical AND operation on the output of the comparison circuit and the output of the first logic circuit.