Cyclic redundancy code (CRC) polynomial selection for embedded networks

  title={Cyclic redundancy code (CRC) polynomial selection for embedded networks},
  author={Philip Koopman and Tridib Chakravarty},
  journal={International Conference on Dependable Systems and Networks, 2004},
  • P. KoopmanT. Chakravarty
  • Published 28 June 2004
  • Computer Science
  • International Conference on Dependable Systems and Networks, 2004
Cyclic redundancy codes (CRCs) provide a first line of defense against data corruption in many networks. Unfortunately, many commonly used CRC polynomials provide significantly less error detection capability than they might. An exhaustive exploration reveals that most previously published CRC polynomials are either inferior to alternatives or are only good choices for particular message lengths. Unfortunately these shortcomings and limitations often seem to be overlooked. This paper describes… 

Figures and Tables from this paper

CRC Codes for Error Control 1

The exhaustive exploration reveals that most previously published CRC polynomials are either inferior to alternatives or are only good choices for particular message lengths, which leads to the conclusion that computing and collecting of all the necessary data to evaluate the error detection performance of a CRC code is of big importance for the future applications.

New Heuristic Model for Optimal CRC Polynomial

This paper evaluates performance of CRC-polynomials generated with Genetic Algorithms and compares the resultant polynomials, both with and without encryption headers against a benchmark polynomial.

Efficient High Hamming Distance CRCs for Embedded Networks

  • Justin RayP. Koopman
  • Computer Science
    International Conference on Dependable Systems and Networks (DSN'06)
  • 2006
This work evaluates the options for speeding up CRC computations on 8-bit processors, including comparing variants of table lookup approaches for memory cost and speed and recommends classes of CRC generator polynomials which have the same computational cost as 24- or 16-bit CRCs, but provide 32- bit CRC levels of error detection.

Coverage and the use of cyclic redundancy codes in ultra-dependable systems

This paper identifies some examples of CRC usage that compromise ultra-dependable system design goals, and recommends alternate ways to improve system dependability via architectural approaches rather than error detection coding approaches.

Joint optimum message length and generator polynomial selection in cyclic redundancy check (CRC) coding

Goodput of a communication link is analyzed under varying network conditions to demonstrate that the proposed framework can be effectively used to select the best performing CRC generator polynomial along with the optimum message length.

A sieving method for the optimization of embedded CRC codes

A sieving method is proposed, which can be used to find the best embedded CRC for a given standard CRC, and applied to common industry standards for field buses.

Generalized parallel CRC computation on FPGA

This paper presents and investigates a generalized CRC formulation that incorporates negative degree terms and concludes that the proposed approach is most effective when the digit size is greater than the generator polynomial degree.


This paper focuses on developing a generalized CRC code where the user can vary the size of the generator polynomial such as 9 bits, 17 bits, 33 bits, 65 bits, and so on.

Analysis of Combinations of CRC in Industrial Communication

It is shown that residual error probability can be decreased by choosing the right combination and explained how the residual error probabilities of already existing cascades has to be determined in order to reduce the number of worst case assumptions in the overall safety proof.

1 Investigating CRC Polynomials that Correct Burst Errors

An optimized method for finding error-correcting CRC polynomials as maximum data length per frame increases is described, which shows that the CCITT-16 polynomial can correct 5-bit bursts in up to 156 bits of data as well as 4-bit burst errors in as high as 1500 bit of data.



32-bit cyclic redundancy codes for Internet applications

  • P. Koopman
  • Computer Science
    Proceedings International Conference on Dependable Systems and Networks
  • 2002
A new class of polynomials is identified that provides HD=6 up to nearly 16K bit and HD=4 up to 114K bit message lengths, providing the best achievable design point that maximizes error detection for both legacy and new applications, including potentially iSCSI and application-implemented error checks.

Undetected error probability performance of cyclic redundancy-check codes of 16-bit redundancy

The authors investigate the performance of cyclic redundancy check (CRC) codes generated by polynomials of degree 16 over GF(2) which can be used for pure error detection in communication systems.

Optimization of cyclic redundancy-check codes with 24 and 32 parity bits

Using this method implemented on a high-speed special-purpose processor, several classes of cyclic redundancy-check (CRC) codes with 24 and 32 parity bits are investigated and the d/sub min/ profiles of the resulting codes are presented and compared with recent suggestions.

Fast calculation of the number of minimum-weight words of CRC codes

  • P. Kazakov
  • Computer Science
    IEEE Trans. Inf. Theory
  • 2001
The most important parameter of the function of undetected error probability for shortened binary cyclic codes, the number of minimum-weight words, is investigated and a fast method for calculation of A/sub d/ is presented.

Analysis of the Train Communication Network Protocol Error Detection Capabilities

The results of a general review of the specification for error detection properties as an important factor of overall system safety are discussed, and it is important that designers pay close attention to receiver circuitry to minimize vulnerability to ibit slipsi.

RObust Header Compression (ROHC): Framework and four profiles: RTP, UDP, ESP, and uncompressed

A highly robust and efficient header compression scheme for RTP/UDP/IP, UDP/IP and ESP/IP headers is specified in this document, done in a framework designed to be extensible.

Applied Coding and Information Theory for Engineers

This chapter discusses Shannon's Coding Theorems, which describe the construction of codes based on discrete sources and entropy, and their applications in information theory and Cryptography.

Error Control Coding

Error Control Coding (2nd Edition) by Shu Lin, Shu, Costello, Daniel J. Costello Jr. and a great selection of similar New, Used and Collectible.

General Aspects of Digital Transmission Systems: Synchronous frame structures used at 1544

  • 6312, 2048, 8488 and 44 736 kbit/s hierarchical levels, ITU-T Recommendation G.704 (previously “CCITT Recommendation”), July
  • 1995