CRC error detection system and method
First Claim
1. A method for protecting erroneous data from being stored in a memory, such DATA comprising a series of data words terminating in a Cyclic Redundancy Check (CRC), such method comprising:
- checking the CRC of the data words while delaying the DATA from passing to an output, each data word in the series being associated with a clock pulse, such delay comprising a plurality of clock pulses;
corrupting the delayed data words if such checking determines a CRC error, such corruption of one of the data words being performed prior to the data words pass to said output;
detecting whether such data word at the output is corrupt;
inhibiting storage of such data words in the memory if such one of the data words at the output is detected as being corrupt.
9 Assignments
0 Petitions
Accused Products
Abstract
A method and system for protecting erroneous data from being stored in a memory, such DATA comprising a series of data words terminating in a Cyclic Redundancy Check (CRC). The method includes: checking the CRC of the data words while delaying the DATA from passing to an output; corrupting the delayed data words if such checking determines a CRC error, such corruption of one of the data words being performed prior to the data words pass to said output; detecting whether such data word at the output is corrupt; and inhibiting storage of such data words in the memory if such one of the data words at the output is detected as being corrupt.
92 Citations
5 Claims
-
1. A method for protecting erroneous data from being stored in a memory, such DATA comprising a series of data words terminating in a Cyclic Redundancy Check (CRC), such method comprising:
-
checking the CRC of the data words while delaying the DATA from passing to an output, each data word in the series being associated with a clock pulse, such delay comprising a plurality of clock pulses;
corrupting the delayed data words if such checking determines a CRC error, such corruption of one of the data words being performed prior to the data words pass to said output;
detecting whether such data word at the output is corrupt;
inhibiting storage of such data words in the memory if such one of the data words at the output is detected as being corrupt.
-
-
2. A method for protecting erroneous data from being stored in a memory, such DATA comprising a series of data words terminating in a Cyclic Redundancy Check (CRC), such method comprising:
-
checking the CRC of the data words while delaying the DATA from passing to an output;
corrupting the delayed data words if such checking determines a CRC error, such corruption of one of the data words being performed prior to the data words pass to said output;
detecting whether such data word at the output is corrupt;
inhibiting storage of such data words in the memory if such one of the data words at the output is detected as being corrupt; and
wherein the corrupting comprising corrupting a parity bit of one of such data words.
-
-
3. A system for protecting erroneous data from being stored in a memory, such DATA comprising a series of data words terminating in a Cyclic Redundancy Check (CRC), comprising:
-
a source of DATA, such DATA comprising a series of bytes each byte having a parity bit, such series of bytes terminating in a Cyclic Redundancy Check (CRC) portion associated with the series of bytes of the DATA;
a source of a the CRC portion;
a CRC checker fed by the series of bytes of the DATA and the source of the CRC portion, for determining a CRC from the series of bytes and for comparing such determined CRC with the CRC fed by the CRC source;
a delay fed by the series of bytes and the parity bits thereof;
a selector having a first input thereof fed by the parity bits and a second input thereof fed by the complement of such parity bits, such selector coupling the first input thereof to an output of such selector when the determined CRC is the same as the CRC fed by the CRC source and for coupling the second input thereof to the output when the determined CRC is different from the CRC fed by the CRC source, the output of the selector providing an appended parity bit for the data bytes after such data bytes pass through the delay;
a detector and control logic for detecting whether such data word at the output is corrupt and for inhibiting storage of such data words in the memory if such one of the data words at the output is detected as being corrupt.
-
-
4. A system for protecting erroneous data from being stored in a memory, such DATA comprising a series of data words terminating in a Cyclic Redundancy Check (CRC), comprising:
-
a source of DATA, such DATA comprising a series of data words, each data word having a parity bit, each data word in the series being associated with a clock pulse, such series of data words terminating in a Cyclic Redundancy Check (CRC) portion associated with the series of bytes of the DATA, such CRC portion comprising a predetermined number of CRC words, each one of such CRC words being associated with one of the clock pulses;
a source of a the CRC portion;
a CRC checker fed by the series of data words and the source of the CRC portion, for determining a CRC from the series of data words and for comparing such determined CRC with the CRC fed by the CRC source;
a delay fed by the series of DATA, such delay delaying the DATA by at least the number of CRC words;
a selector having a first input thereof fed by the parity bits and a second input thereof fed by the complement of such parity bits, such selector coupling the first input thereof to an output of such selector when the determined CRC is the same as the CRC fed by the CRC source and for coupling the second input thereof to the output when the determined CRC is different from the CRC fed by the CRC source, the output of the selector providing an appended parity bit for the data words after such DATA has passed through the delay; and
a detector and control logic for detecting whether such data word at the output is corrupt and for inhibiting storage of such data words in the memory if such one of the data words at the output is detected as being corrupt. - View Dependent Claims (5)
-
Specification