一种LZ4无损压缩电路设计
2022年电子技术应用第12期
刘 勇,郭建刚,方 震
中国电子科技集团公司第五十八研究所,江苏 无锡214035
摘要: 为缓解存储系统中软件压缩算法对计算资源的大量占用,使用LZ4算法设计了一种无损压缩电路。提出了一种循环队列结构的滑动字典,结合散列表模块构建LZ4无损压缩电路,最后使用Calgary和Canterbury语料库,在Xilinx KC705 FPGA平台对电路进行验证并与软件压缩对比。结果表明所设计的LZ4无损压缩电路保持了软件压缩相同的压缩率的同时,在压缩效率上远超过软件压缩。
中图分类号: TN46
文献标识码: A
DOI:10.16157/j.issn.0258-7998.222840
中文引用格式: 刘勇,郭建刚,方震. 一种LZ4无损压缩电路设计[J].电子技术应用,2022,48(12):59-64.
英文引用格式: Liu Yong,Guo Jiangang,Fang zhen. The design of the lossless compression circuit based on LZ4 algorithm[J]. Application of Electronic Technique,2022,48(12):59-64.
文献标识码: A
DOI:10.16157/j.issn.0258-7998.222840
中文引用格式: 刘勇,郭建刚,方震. 一种LZ4无损压缩电路设计[J].电子技术应用,2022,48(12):59-64.
英文引用格式: Liu Yong,Guo Jiangang,Fang zhen. The design of the lossless compression circuit based on LZ4 algorithm[J]. Application of Electronic Technique,2022,48(12):59-64.
The design of the lossless compression circuit based on LZ4 algorithm
Liu Yong,Guo Jiangang,Fang Zhen
No.58 Institute,China Electronic and Technology Corporation,Wuxi 214035,China
Abstract: To decrease the costs of the implementation of compression by software in a storage system, the lossless compression circuit based on LZ4 algorithm is proposed in this paper. The sliding dictionary with circulating queue structure is used, together with the Hash Table module to design the lossless compression circuit based on LZ4. Finally, the design is tested and verified with Calgary corpus and Canterbury corpus on Xilinx KC705 FPGA platform. The results are compared with LZ4 software method and it can be concluded that the compression efficiency of LZ4 circuit method greatly faster than the software method obviously, while the compress ratios keep the same.
Key words : LZ4;lossless compression;sliding dictionary
0 引言
随着计算机和网络技术的飞速发展和用户的激增,互联网产生的数据量也呈现爆发式增长的态势。如何提高存储器利用效率,存储不断产生的海量数据,成为存储系统领域的一大难题。自两位以色列研究者Ziv和Lempel在1977年提出了LZ77压缩算法[1]以来,各种基于字典匹配的LZ压缩算法的变体相继被提出,其中包括LZ78、LZW、LZO、LZSS等。其中,基于LZ77的变体被广泛用于文本和位图的无损压缩,其压缩编码的效率可以很大程度上逼近信源的信息熵值[2]。LZ4正是LZ77压缩算法面向处理速度进行优化所得的变体算法,其处理速度可达传统LZ77压缩算法的6倍以上[3],目前已被广泛用于高吞吐量的存储系统[4-5]。LZ4压缩算法的速度优势在于建立字典的过程中,减少了计算散列值和更新散列表单元的次数,并且采用直接编码的方式输出编码,减小了输出延迟[6-7]。但同样由于降低散列表更新次数,导致LZ4压缩算法的压缩率会高于其他变体压缩算法。
与此同时,现有的LZ4压缩算法基本基于x86架构计算机的软件实现,处理效率低。而且在存储系统的访问过程中,后台运行的压缩程序将会占用大量中央处理器(CPU)的运算资源,造成存储系统请求响应延迟上升,严重情况下甚至抵消LZ4压缩算法的速度优势。因此需要设计一种专用硬件电路实现LZ4无损压缩,以释放存储系统中的运算资源,提高系统实时性。
本文详细内容请下载:https://www.chinaaet.com/resource/share/2000005041。
作者信息:
刘 勇,郭建刚,方 震
(中国电子科技集团公司第五十八研究所,江苏 无锡214035)
此内容为AET网站原创,未经授权禁止转载。