Using DSP blocks to compute CRC hash in FPGA (abstract only)

  • Authors:
  • Viktor Puš;Lukáš Kekely;Tomáš Závodník

  • Affiliations:
  • CESNET, Prague, Czech Rep;CESNET, Prague, Czech Rep;CESNET, Prague, Czech Rep

  • Venue:
  • Proceedings of the 2014 ACM/SIGDA international symposium on Field-programmable gate arrays
  • Year:
  • 2014

Quantified Score

Hi-index 0.00

Visualization

Abstract

Hash table and its variations are common ways to implement lookup operations in FPGA. The process of adding to, deleting from, and searching in the hash table uses one or more hash functions to compute the address to the table. A suitable hash function must meet statistical properties such as uniform distribution, use of all input bits, large change of output based on small change of input. Other desirable parameters are high throughput and low FPGA resources usage. We propose a novel approach to the CRC hash computation in FPGA. The method is suitable for applications such as hash tables, which use parallel inputs of fixed size and require high throughput. We employ DSP blocks present in modern FPGAs to perform all the necessary XOR operations, therefore our solution does not use any LUTs. We propose a Monte Carlo based heuristic to reduce the number of DSP blocks required. Our experimental results show that one DSP block capable of 48 XOR operations can replace around eleven 6-input LUTs. Our results further show that our solution performs less XOR operations than the solution with LUTs optimized by the synthesizer.