Novel Table Lookup-Based Algorithms for High-Performance CRC Generation

@article{Kounavis2008NovelTL,
  title={Novel Table Lookup-Based Algorithms for High-Performance CRC Generation},
  author={Michael E. Kounavis and Frank L. Berry},
  journal={IEEE Transactions on Computers},
  year={2008},
  volume={57},
  pages={1550-1560}
}
A framework for designing a family of novel fast cyclic redundancy code (CRC) generation algorithms is presented. [...] Key Method We use this framework to design two efficient algorithms that run in the popular Intel IA32 processor architecture. First, a "slicing-by-4" algorithm doubles the performance of existing software-based table-driven CRC implementations based on the Sarwate [12] algorithm while using a 4-Kbyte cache footprint.Expand
Cyclic Redundancy Check Generation Using Multiple Lookup Table Algorithms
The primary goal of this paper is to generate cyclic redundancy check (CRC) using multiple lookup table algorithms. A compact architecture of CRC algorithm (Slicing-by-N algorithm) based on multiple
High performance table-based architecture for parallel CRC calculation
TLDR
A high performance table-based architecture implementation for CRC (cyclic redundancy check) algorithms is proposed, designed based on a highly parallel CRC algorithm that can accelerate different CRC algorithms with high parallelism and flexibility.
High Performance Table-Based Algorithm for Pipelined CRC Calculation
In this paper, we present a fast cyclic redundancy check (CRC) algorithm that performs CRC computation for an arbitrary length of message in parallel. For a given message with any length, the
Fast Software-based Table-less Algorithm for CRC Generation
  • Mucong Chi, Dazhong He, J. Liu
  • Computer Science
    2018 21st International Symposium on Wireless Personal Multimedia Communications (WPMC)
  • 2018
TLDR
The proposed software-based CRC algorithm, which can be applied to CRCs with check values of different lengths, is suitable for processors with limited memory resources and quadruples the throughput of the Slicing-by-4 algorithm at best.
High Performance Table-Based Algorithm for Pipelined CRC Calculation
TLDR
This paper presents a fast cyclic redun- dancy check (CRC) algorithm that performs CRC compu- tation for an arbitrary length of message in parallel using lookup tables and pipelining the feedback loop.
A Table-Based Algorithm for Pipelined CRC Calculation
  • Y. Sun, Min Kim
  • Computer Science
    2010 IEEE International Conference on Communications
  • 2010
TLDR
A fast cyclic redundancy check (CRC) algorithm that performs CRC computation for any length of message in parallel and the results are combined together by XOR operations that is more efficient than the current CRC implementations.
VACA: A high-performance variable-length adaptive CRC algorithm
  • Mucong Chi, Jun Liu
  • Computer Science
    2017 IEEE 28th Annual International Symposium on Personal, Indoor, and Mobile Radio Communications (PIMRC)
  • 2017
TLDR
This paper proposes a coarse-grained parallel CRC algorithm for efficient n-core processor implementation and shows that the proposed algorithm can achieve a speedup of a factor of almost n.
Design of high speed CRC algorithm for ethernet on FPGA using reduced lookup table algorithm
TLDR
The design and development of modified CRC algorithm for the hardware implementation on FPGA to meet the speed constraint for Ethernet, using the reduced lookup table algorithm, and the entire design is functionally verified using ModelSim SE Plus 6.3g.
Fast parallel CRC implementation in software
  • J. R. Engdahl, D. Chung
  • Computer Science
    2014 14th International Conference on Control, Automation and Systems (ICCAS 2014)
  • 2014
TLDR
A fast CRC computation is presented using a software based parallelization scheme and in an ARM Cortex-A15 implementation of the proposed methodology, it achieves 2.6 times faster speed compared to a conventional table lookup CRC computation.
...
1
2
3
4
...

References

SHOWING 1-10 OF 22 REFERENCES
A Systematic Approach for Parallel CRC Computations
TLDR
The approach is to systematically decompose the original input message into a set of subsequences based on the theory of Galois field so that parallel CRC computations can be achieved by inputting those subsequences at the same time and employing the lookahead technique for those sequences to speedup computation.
A new parallel algorithm for CRC generation
  • S. Joshi, P. Dubey, M. Kaplan
  • Computer Science
    2000 IEEE International Conference on Communications. ICC 2000. Global Convergence Through Communications. Conference Record
  • 2000
TLDR
A new parallel algorithm for CRC generation and its software as well as hardware implementation is described, which yields an unlimited speed-up potential over the bit-wise serial algorithm.
Fast software implementation of error detection codes
TLDR
Techniques for, and measure the performance of, fast software implementation of the cyclic redundancy check (CRC), weighted sum codes (WSC), one's-complement checksum, Fletcher (1982) Checksum, CXOR checksum and block parity code are discussed.
Optimization of cyclic redundancy-check codes with 24 and 32 parity bits
TLDR
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.
Parallel CRC generation
TLDR
A method of designing hardware parallel encoders for CRCs that is based on digital system theory and z-transforms is presented, which allows designers to derive the logic equations of the parallel encoder circuit for any generator polynomial.
A tutorial on CRC computations
The theory of cyclic redundancy codes (CRS) is reviewed. Four software algorithms for performing CRC computations are described: table lookup, reduced table lookup, on-the-fly, and wordwise. They are
Fast incremental CRC updates for IP over ATM networks
  • F. Braun, Marcel Waldvogel
  • Computer Science
    2001 IEEE Workshop on High Performance Switching and Routing (IEEE Cat. No.01TH8552)
  • 2001
TLDR
A mechanism to defer CRC verification without compromising reliability is presented, which opens the possibility of incremental updates of the CRC and applies to a much wider set of network protocols.
Fast and flexible CRC calculation
An algorithm for software or hardware implementation is presented, allowing fast computation of cyclic redundancy checks with arbitrary polynomials and a high flexibility, such as updating of
Computation of cyclic redundancy checks via table look-up
TLDR
Use of a table look-up in computing the CRC bits will efficiently implement these codes in software.
Byte-Wise CRC Calculations
TLDR
A cyclic redundancy code can be calculated on bytes instead of bits to reduce calculation time by a factor of almost four.
...
1
2
3
...