Abstract :
Binary CRCs are very effective for error detection, but their software implementation is not very efficient. Thus, many binary nonCRC codes (which are not as strong as CRCs, but can be more efficiently implemented in software) are proposed as alternatives to CRCs. The nonCRC codes include WSC, CXOR, one´s-complement checksum, Fletcher checksum, and block-parity code. We present a general algorithm for constructing a family of binary error-detection codes. This family is large because it contains all these nonCRC codes, CRCs, perfect codes, as well as other linear and nonlinear codes. In addition to unifying these apparently disparate codes, our algorithm also generates some nonCRC codes that have minimum distance 4 (like CRCs) and efficient software implementation.
Keywords :
Hamming codes; binary codes; block codes; communication complexity; cyclic redundancy check codes; error detection codes; hardware-software codesign; linear codes; message passing; nonlinear codes; parity check codes; polynomials; CXOR; Fletcher checksum; Hamming code; WSC; binary error-detection codes; binary nonCRC codes; block-parity code; complementary checksum codes; linear codes; message transfer; nonlinear codes; perfect codes; software implementation; Block codes; Complexity theory; Error detection coding; Hamming codes; Linear codes; Message passing; Polynomials; CRC; Hamming code; Index Terms- Fast error-detection code; checksum.;