High-Throughput FPGA-Based Hardware Accelerators for Deflate Compression and Decompression Using High-Level Synthesis

The Deflate compression algorithm provides one of the most widely used solutions for lossless data compression. Field-programmable gate arrays (FPGAs) are commonly used to implement hardware accelerators that speed up computation-intensive applications. In this article, FPGA-based accelerators for D...

Full description

Bibliographic Details
Main Authors: Morgan Ledwon, Bruce F. Cockburn, Jie Han
Format: Article
Language:English
Published: IEEE 2020-01-01
Series:IEEE Access
Subjects:
Online Access:https://ieeexplore.ieee.org/document/9050498/
id doaj-929156829b294e8e88976ed4c414ca8a
record_format Article
spelling doaj-929156829b294e8e88976ed4c414ca8a2021-03-30T03:07:23ZengIEEEIEEE Access2169-35362020-01-018622076221710.1109/ACCESS.2020.29841919050498High-Throughput FPGA-Based Hardware Accelerators for Deflate Compression and Decompression Using High-Level SynthesisMorgan Ledwon0https://orcid.org/0000-0003-0897-6078Bruce F. Cockburn1Jie Han2Department of Electrical and Computer Engineering, University of Alberta, Edmonton, AB, CanadaDepartment of Electrical and Computer Engineering, University of Alberta, Edmonton, AB, CanadaDepartment of Electrical and Computer Engineering, University of Alberta, Edmonton, AB, CanadaThe Deflate compression algorithm provides one of the most widely used solutions for lossless data compression. Field-programmable gate arrays (FPGAs) are commonly used to implement hardware accelerators that speed up computation-intensive applications. In this article, FPGA-based accelerators for Deflate compression and decompression are described. These accelerators were specified in C++ and synthesized using Vivado High-Level Synthesis (HLS) for a Xilinx Virtex UltraScale+ series FPGA and a system clock frequency of 250 MHz. The proposed compressor processes data at a fixed input throughput of 4.0 GB/s and achieves a geometric mean compression ratio of 1.92 on the Calgary corpus benchmark files using static Huffman encoding. While not the first compressor synthesized using high-level synthesis, our design achieves a 25% greater throughput and an 11% greater compression ratio than the only other published design that uses Vivado HLS. The proposed decompressor design achieves average input throughputs of 196.61 MB/s and 97.40 MB/s, for statically and dynamically encoded Calgary corpus files, respectively. This is the first published decompressor design that is synthesized using high-level synthesis and provides performance that is comparable to that of the best published designs, having static throughputs 11% higher and dynamic throughputs only 10% lower than the expertly-optimized design sold by Xilinx.https://ieeexplore.ieee.org/document/9050498/Deflate algorithmlossless compressionLZ77 compressionhardware acceleratorFPGAbased acceleratorhigh-level synthesis
collection DOAJ
language English
format Article
sources DOAJ
author Morgan Ledwon
Bruce F. Cockburn
Jie Han
spellingShingle Morgan Ledwon
Bruce F. Cockburn
Jie Han
High-Throughput FPGA-Based Hardware Accelerators for Deflate Compression and Decompression Using High-Level Synthesis
IEEE Access
Deflate algorithm
lossless compression
LZ77 compression
hardware accelerator
FPGAbased accelerator
high-level synthesis
author_facet Morgan Ledwon
Bruce F. Cockburn
Jie Han
author_sort Morgan Ledwon
title High-Throughput FPGA-Based Hardware Accelerators for Deflate Compression and Decompression Using High-Level Synthesis
title_short High-Throughput FPGA-Based Hardware Accelerators for Deflate Compression and Decompression Using High-Level Synthesis
title_full High-Throughput FPGA-Based Hardware Accelerators for Deflate Compression and Decompression Using High-Level Synthesis
title_fullStr High-Throughput FPGA-Based Hardware Accelerators for Deflate Compression and Decompression Using High-Level Synthesis
title_full_unstemmed High-Throughput FPGA-Based Hardware Accelerators for Deflate Compression and Decompression Using High-Level Synthesis
title_sort high-throughput fpga-based hardware accelerators for deflate compression and decompression using high-level synthesis
publisher IEEE
series IEEE Access
issn 2169-3536
publishDate 2020-01-01
description The Deflate compression algorithm provides one of the most widely used solutions for lossless data compression. Field-programmable gate arrays (FPGAs) are commonly used to implement hardware accelerators that speed up computation-intensive applications. In this article, FPGA-based accelerators for Deflate compression and decompression are described. These accelerators were specified in C++ and synthesized using Vivado High-Level Synthesis (HLS) for a Xilinx Virtex UltraScale+ series FPGA and a system clock frequency of 250 MHz. The proposed compressor processes data at a fixed input throughput of 4.0 GB/s and achieves a geometric mean compression ratio of 1.92 on the Calgary corpus benchmark files using static Huffman encoding. While not the first compressor synthesized using high-level synthesis, our design achieves a 25% greater throughput and an 11% greater compression ratio than the only other published design that uses Vivado HLS. The proposed decompressor design achieves average input throughputs of 196.61 MB/s and 97.40 MB/s, for statically and dynamically encoded Calgary corpus files, respectively. This is the first published decompressor design that is synthesized using high-level synthesis and provides performance that is comparable to that of the best published designs, having static throughputs 11% higher and dynamic throughputs only 10% lower than the expertly-optimized design sold by Xilinx.
topic Deflate algorithm
lossless compression
LZ77 compression
hardware accelerator
FPGAbased accelerator
high-level synthesis
url https://ieeexplore.ieee.org/document/9050498/
work_keys_str_mv AT morganledwon highthroughputfpgabasedhardwareacceleratorsfordeflatecompressionanddecompressionusinghighlevelsynthesis
AT brucefcockburn highthroughputfpgabasedhardwareacceleratorsfordeflatecompressionanddecompressionusinghighlevelsynthesis
AT jiehan highthroughputfpgabasedhardwareacceleratorsfordeflatecompressionanddecompressionusinghighlevelsynthesis
_version_ 1724183998272372736