Lossless Decompression Accelerator for Embedded Processor with GUI
Abstract
:1. Introduction
2. Inflate Algorithm
3. Related Work
4. Lossless Decompression Accelerator
4.1. Configuration
4.2. Pre-Processing
4.3. Decompression
4.4. Post-Processing
5. Realization
5.1. Chip Fabrication
5.2. Performance Analysis
6. Conclusions
Author Contributions
Funding
Conflicts of Interest
References
- Yoon, S.; Jun, S.; Cho, Y.; Lee, K.; Jang, H.; Han, T.H. Optimized Lossless Embedded Compression for Mobile Multimedia Applications. Electronics 2020, 9, 868. [Google Scholar] [CrossRef]
- Kim, J.K.; Oh, J.H.; Yang, J.H.; Lee, S.E. 2D Line Draw Hardware Accelerator for Tiny Embedded Processor in Consumer Electronics. In Proceedings of the 2019 IEEE International Conference on Consumer Electronics (ICCE), Las Vegas, NV, USA, 11–13 January 2019; pp. 1–2. [Google Scholar]
- Chen, C.; Su, T.; Meng, G.; Xing, Z.; Liu, Y. From UI Design Image to GUI Skeleton: A Neural Machine Translator to Bootstrap Mobile GUI Implementation. In Proceedings of the 40th International Conference on Software Engineering (ICSE), Gothenburg, Sweden, 27 May–3 June 2018; pp. 665–676. [Google Scholar]
- Lin, Y.; Chu, E.T.; Yu, S.; Lai, Y. Improving the Accuracy of Automated GUI Testing for Embedded Systems. IEEE Softw. 2014, 31, 39–45. [Google Scholar] [CrossRef] [Green Version]
- Yu, F.; Li, L.; Zhao, Y.; Wang, M.; Liu, G.; Chen, G. Lossless Data Compression Based on Adaptive Linear Predictor for Embedded System of Unmanned Vehicles. J. Atmos. Ocean. Technol. 2017, 34, 2499–2508. [Google Scholar] [CrossRef]
- Kim, J.H.; Yeo, S.; Kim, J.W.; Kim, K.; Song, T.-K.; Yoon, C.; Sung, J. Real-Time Lossless Compression Algorithm for Ultrasound Data Using BL Universal Code. Sensors 2018, 18, 3314. [Google Scholar] [CrossRef] [Green Version]
- Ledwon, M.; Cockburn, B.F.; Han, J. Design and Evaluation of an FPGA-Based Hardware Accelerator for Deflate Data Decompression. In Proceedings of the 2019 IEEE Canadian Conference of Electrical and Computer Engineering (CCECE), Edmonton, AB, Canada, 5–8 May 2019; pp. 1–6. [Google Scholar]
- Antonopoulos, C.P.; Voros, N.S. A Data Compression Hardware Accelerator Enabling Long-Term Biosignal Monitoring Based on Ultra-Low Power IoT Platforms. Electronics 2017, 6, 54. [Google Scholar] [CrossRef] [Green Version]
- Kim, J.K.; Oh, J.H.; Hwang, G.B.; Gwon, O.S.; Lee, S.E. Design of Low-Power SoC for Wearable Healthcare Device. J. Circuits Syst. Comput. 2020, 29, 2050085. [Google Scholar] [CrossRef]
- Sridhara, S.R.; DiRenzo, M.; Lingam, S.; Lee, S.; Blazquez, R.; Maxey, J.; Ghanem, S.; Lee, Y.; Abdallah, R.; Singh, P. Microwatt Embedded Processor Platform for Medical System-on-Chip Applications. IEEE J. Solid-State Circuits 2011, 46, 721–730. [Google Scholar] [CrossRef]
- Koch, D.; Beckhoff, C.; Teich, J. Hardware Decompression Techniques for FPGA-Based Embedded Systems. ACM TRETS 2009, 2, 1–23. [Google Scholar] [CrossRef]
- Rahman, M.A.; Hamada, M. Lossless Image Compression Techniques: A State-of-the-Art Survey. Symmetry 2019, 11, 1274. [Google Scholar] [CrossRef] [Green Version]
- Khan, T.H.; Wahid, K.A. Design of a Lossless Image Compression System for Video Capsule Endoscopy and Its Performance in In-Vivo Trials. Sensors 2014, 14, 20779–20799. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Choi, S.; Kim, Y.; Lee, D.; Lee, S.; Park, K.; Song, Y.H.; Song, Y.H. Design of FPGA-Based LZ77 Compressor with Runtime Configurable Compression Ratio and Throughput. IEEE Access 2019, 7, 149583–149594. [Google Scholar] [CrossRef]
- Gao, Y.; Ye, H.; Wang, J.; Lai, J. FPGA Bitstream Compression and Decompression Based on LZ77 Algorithm and BMC Technique. In Proceedings of the 2015 IEEE 11th International Conference on ASIC (ASICON), Chengdu, China, 3–6 November 2015; pp. 1–4. [Google Scholar]
- DEFLATE Compressed Data Format Specification Version 1.3. Available online: https://www.w3.org/Graphics/PNG/RFC-1951 (accessed on 10 December 2020).
- Zaretsky, D.C.; Mittal, G.; Banerjee, P. Streaming implementation of the ZLIB decoder algorithm on an FPGA. In Proceedings of the 2009 IEEE International Symposium on Circuits and Systems (ISCAS), Taipei, Taiwan, 24–27 May 2009; pp. 2329–2332. [Google Scholar]
- Harnik, D.; Khaitzin, E.; Sotnikov, D.; Taharlev, S. A Fast Implementation of Deflate. In Proceedings of the 2014 Data Compression Conference (DCC), Snowbird, UT, USA, 26–28 March 2014; pp. 223–232. [Google Scholar]
- Satpathy, S.; Suresh, V.; Kumar, R.; Gopal, V.; Guilford, J.; Yap, K.; Anders, M.; Kaul, H.; Agarwal, A.; Hsu, S.; et al. A 220–900 mV 179 Mcode/s 36 pJ/code Canonical Huffman Encoder for DEFLATE Compression in 14 nm CMOS. In Proceedings of the 2019 IEEE Custom Integrated Circuits Conference (CICC), Austin, TX, USA, 14–17 April 2019; pp. 1–4. [Google Scholar]
- Fowers, J.; Kim, J.Y.; Burger, D.; Hauck, S. A Scalable High-Bandwidth Architecture for Lossless Compression on FPGAs. In Proceedings of the 2015 IEEE 23rd Annual International Symposium on Field-Programmable Custom Computing Machines, Vancouver, BC, Canada, 2–6 May 2015; pp. 52–59. [Google Scholar]
- Abdelfattah, M.S.; Hagiescu, A.; Singh, D. Gzip on a Chip: High Performance Lossless Data Compression on FPGAs using OpenCL. In Proceedings of the International Workshop on OpenCL (IWOCL), Bristol, UK, 12–13 May 2014; pp. 1–9. [Google Scholar]
- Qiao, W.; Du, J.; Fang, Z.; Lo, M.; Chang, M.C.; Cong, J. High-Throughput Lossless Compression on Tightly Coupled CPU-FPGA Platforms. In Proceedings of the 2018 International Symposium on Field-Programmable Custom Computing Machines (FCCM), Boulder, CO, USA, 29 April–1 May 2018; pp. 37–44. [Google Scholar]
- Patel, R.A.; Zhang, Y.; Mak, J.; Davidson, A.; Owens, J.D. Parallel lossless data compression on the GPU. In Proceedings of the 2012 Innovative Parallel Computing (InPar), San Jose, CA, USA, 13–14 May 2012; pp. 1–9. [Google Scholar]
- Yamamoto, N.; Nakano, K.; Ito, Y.; Takafuji, D.; Kasagi, A. Huffman Coding with Gap Arrays for GPU Acceleration. In Proceedings of the 2020 International Conference on Parallel Processing (ICPP), Edmonton, AB, Canada, 17–20 August 2020; pp. 1–11. [Google Scholar]
- Jang, H.B.; Kim, C.N.; Lee, J.W. Practical speculative parallelization of variable-length decompression algorithms. ACM SIGPLAN Not. 2013, 48, 55–64. [Google Scholar] [CrossRef]
- Sitaridi, E.; Mueller, R.; Kaldewey, T.; Lohman, G.; Ross, K. Massively-Parallel Lossless Data Decompression. In Proceedings of the 2016 International Conference on Parallel Processing (ICPP), Philadelphia, PA, USA, 16–19 August 2016; pp. 242–247. [Google Scholar]
- Weißenberger, A.; Schmidt, B. Massively Parallel Huffman Decoding on GPUs. In Proceedings of the 2018 International Conference on Parallel Processing (ICPP), Boston, MA, USA, 29 July–3 August 2018; pp. 1–10. [Google Scholar]
- Lazaro, J.; Arias, J.; Astarloa, A.; Bidarte, U.; Zuloaga, A. Decompression dual core for SoPC applications in high speed FPGA. In Proceedings of the 2007 Conference of the IEEE Industrial Electronics Society (IECON), Taipei, Taiwan, 5–8 November 2007; pp. 738–743. [Google Scholar]
- Satpathy, S.; Mathew, S.; Suresh, V.; Gopal, V.; Guilford, J.; Anders, M.; Kaul, H.; Agarwal, A.; Hsu, S.; Krisnnamurthy, K. 34.4 Mbps 1.56 Tbps/W DEFLATE Decompression Accelerator Featuring Block-Adaptive Huffman Decoder in 14 nm Tri-Gate CMOS for IoT Platforms. In Proceedings of the European Solid State Circuits Conference (ESSCIRC), Dresden, Germany, 3–6 September 2018; pp. 90–93. [Google Scholar]
- Ledwon, M.; Cockburn, B.F.; Han, J. High-Throughput FPGA-Based Hardware Accelerators for Deflate Compression and Decompression Using High-Level Synthesis. IEEE Access 2020, 8, 62207–62217. [Google Scholar] [CrossRef]
No | Raw Data (Bytes) | CR of Dynamic (%) | CR of Static (%) | Gap (%) |
---|---|---|---|---|
1 | 65,664 | 92.2 | 91.7 | 0.52 |
2 | 16,512 | 88.5 | 88.2 | 0.25 |
3 | 16,512 | 95.0 | 94.4 | 0.61 |
4 | 16,512 | 94.9 | 94.3 | 0.54 |
5 | 16,512 | 93.6 | 93.0 | 0.55 |
6 | 16,512 | 94.8 | 94.2 | 0.53 |
7 | 16,512 | 94.1 | 93.4 | 0.67 |
8 | 16,512 | 88.6 | 88.1 | 0.66 |
9 | 16,512 | 95.2 | 94.5 | 0.71 |
10 | 16,512 | 92.0 | 90.9 | 1.18 |
11 | 65,664 | 93.8 | 93.4 | 0.44 |
Average | - | 93.0 | 92.4 | 0.61 |
No | Throughput of 8-Bits (MB/s) | Throughput of 32-Bits (MB/s) |
---|---|---|
1 | 10.9 | 31.7 |
2 | 12.0 | 21.6 |
3 | 12.2 | 37.4 |
4 | 12.2 | 36.9 |
5 | 12.2 | 38.3 |
6 | 12.2 | 36.8 |
7 | 12.1 | 33.2 |
8 | 11.9 | 40.4 |
9 | 12.2 | 38.0 |
10 | 12.0 | 28.4 |
11 | 11.2 | 32.6 |
Average | 11.9 | 34.1 |
File | Raw Data (Bytes) | CR (%) | Time (us) | Throughput (MB/s) |
---|---|---|---|---|
alice29 | 152,089 | 57.4 | 24,323 | 6.3 |
Asyoulik | 125,179 | 52.7 | 22,217 | 5.6 |
Cp | 24,604 | 62.2 | 3524 | 7.0 |
Fields | 11,150 | 68.0 | 1341 | 8.3 |
Grammar | 3721 | 61.1 | 543 | 6.9 |
Kennedy | 1,029,744 | 71.9 | 108,447 | 9.5 |
lcet10 | 426,754 | 59.7 | 64,572 | 6.6 |
plrabn12 | 481,861 | 50.2 | 89,945 | 5.4 |
ptt5 | 513,216 | 87.6 | 24,797 | 20.7 |
Sum | 38,240 | 63.2 | 5275 | 7.2 |
Xargs | 4227 | 50.5 | 783 | 5.4 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Hwang, G.B.; Cho, K.N.; Han, C.Y.; Oh, H.W.; Yoon, Y.H.; Lee, S.E. Lossless Decompression Accelerator for Embedded Processor with GUI. Micromachines 2021, 12, 145. https://doi.org/10.3390/mi12020145
Hwang GB, Cho KN, Han CY, Oh HW, Yoon YH, Lee SE. Lossless Decompression Accelerator for Embedded Processor with GUI. Micromachines. 2021; 12(2):145. https://doi.org/10.3390/mi12020145
Chicago/Turabian StyleHwang, Gwan Beom, Kwon Neung Cho, Chang Yeop Han, Hyun Woo Oh, Young Hyun Yoon, and Seung Eun Lee. 2021. "Lossless Decompression Accelerator for Embedded Processor with GUI" Micromachines 12, no. 2: 145. https://doi.org/10.3390/mi12020145
APA StyleHwang, G. B., Cho, K. N., Han, C. Y., Oh, H. W., Yoon, Y. H., & Lee, S. E. (2021). Lossless Decompression Accelerator for Embedded Processor with GUI. Micromachines, 12(2), 145. https://doi.org/10.3390/mi12020145