Abstract
The main contribution of this paper is to present a new hardware architecture for accelerating LZW compression using an FPGA. In the proposed architecture, we efficiently use dual-port block RAMs embedded in the FPGA to implement a hash table that is used as a dictionary. Using independent two ports of the block RAM, reading and writing operations for the hash table are performed simultaneously. Additionally, we can read eight values in the hash table in one clock cycle by partitioning the hash table into eight tables. Since the proposed hardware implementation of LZW compression is compactly designed, we have succeeded in implementing 24 identical circuits in an FPGA, where the clock frequency of FPGA is 163.35 MHz. Our implementation of 24 proposed circuits attains a speed up factor of 23.51 times faster than a sequential LZW compression on a single CPU.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Adobe Developers Association: TIFF Revision, 6, June 1992. http://partners.adobe.com/public/developer/en/tiff/TIFF6.pdf
Funasaka, S., Nakano, K., Ito, Y.: Fast LZW compression using a GPU. In: Proceedings of International Symposium on Computing and Networking, pp. 303–308 (2015)
Helion Technology: LZRW3 Data Compression Core for Xilinx FPGA, October 2008
Klein, S.T., Wiseman, Y.: Parallel lempel Ziv coding. Discrete Appl. Math. 146(2), 180–191 (2005)
Lin, M.: A hardware architecture for the LZW compression and decompression algorithms based on parallel dictionaries. J. VLSI Sig. Process. Syst. Sig. Image Video Technol. 26(3), 369–381 (2000)
Lin, M., Lee, J., Jan, G.E.: A lossless data compression and decompression algorithm and its hardware architecture. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. 14(9), 925–936 (2006)
Mishra, M.K., Mishra, T.K., Pani, A.K.: Parallel Lempel-Ziv-Welch (PLZW) technique for data compression. Int. J. Comput. Sci. Inf. Technol. 3(3), 4038–4040 (2012)
Navqi, S., Naqvi, R., Riaz, R.A., Siddiqui, F.: Optimized RTL design and implementation of LZW algorithm for high bandwidth applications. Electr. Rev. 4, 279–285 (2011)
Prakash, S., Purohit, M., Raizada, A.: A novel approach of speedy-highly secured data transmission using cascading of PDLZW and arithmetic coding with cryptography. Int. J. Comput. Appl. 57(19), 1–7 (2012)
Shyni, K., Kumar, K.V.M.: Lossless LZW data compression algorithm on CUDA. IOSR J. Comput. Eng. 13, 122–127 (2013)
Welch, T.A.: A technique for high-performance data compression. IEEE Comput. 17(6), 8–19 (1984)
Xilinx Inc.: 7 Series FPGAs Configuration User Guide (2013)
Xilinx Inc.: 7 Series FPGAs Memory Resources User Guide, November (2014)
Xilinx Inc.: VC707 Evaluation Board for the Virtex-7 FPGA User Guide (2014)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing AG
About this paper
Cite this paper
Zhou, X., Ito, Y., Nakano, K. (2016). An Efficient Implementation of LZW Compression in the FPGA. In: Carretero, J., Garcia-Blas, J., Ko, R., Mueller, P., Nakano, K. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2016. Lecture Notes in Computer Science(), vol 10048. Springer, Cham. https://doi.org/10.1007/978-3-319-49583-5_39
Download citation
DOI: https://doi.org/10.1007/978-3-319-49583-5_39
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-49582-8
Online ISBN: 978-3-319-49583-5
eBook Packages: Computer ScienceComputer Science (R0)