[发明专利]一种基于并行和流水线设计的LZ过程硬件压缩方法及系统有效
申请号: | 201811182742.5 | 申请日: | 2018-10-11 |
公开(公告)号: | CN109361398B | 公开(公告)日: | 2022-12-30 |
发明(设计)人: | 潘玉彪;侯济恭;林运国;吴清顺 | 申请(专利权)人: | 南威软件股份有限公司 |
主分类号: | H03M7/30 | 分类号: | H03M7/30 |
代理公司: | 北京天盾知识产权代理有限公司 11421 | 代理人: | 张彩珍 |
地址: | 362000 福建省*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 并行 流水线 设计 lz 过程 硬件 压缩 方法 系统 | ||
本发明属于计算机存储数据压缩领域,公开了一种基于并行和流水线设计的LZ过程硬件压缩方法及系统,将LZ过程划分为六个模块,它们分别是计算哈希模块、查找哈希表模块、更新哈希表模块、匹配模块、与上一拍结果合并模块和输出模块。模块内部采用并行设计,即模块内一次性同时处理多个字节;六个模块通过每个模块在一个时钟周期内完成的设计,形成一个六级流水。本发明避免了同一条流水线的模块内进行合并操作;在与上一拍结果合并模块中,设计与上一条流水线的匹配结果和本条流水线的匹配结果进行合并生产了更长的匹配结果。
技术领域
本发明属于计算机存储数据压缩领域,尤其涉及一种基于并行和流水线设计的LZ过程硬件压缩方法及系统。
背景技术
目前,业内常用的现有技术是这样的:
随着现代科学技术的发展,特别是云计算、大数据的爆发,使得海量数据传输和存储成为计算机领域越来越关注的问题。因此,压缩算法为减少传输带宽、增加存储效率提供了技术可能。一般来说,压缩算法分为无损压缩和有损压缩,对于数据敏感的应用,一般采用无损压缩将数据量减小,当需要使用时再采用相应的解压缩算法恢复出原始数据。
由于采用软件实现压缩算法将消耗CPU的宝贵资源,尤其对于CPU密集型的应用来说,软件压缩将和应用抢占CPU,造成系统性能下降。因此,较好的解决方式则是通过专门的硬件(FPGA/ASIC)实现压缩算法,即当开启压缩功能时,所有需要压缩的数据从CPU卸载到专门的硬件上进行压缩,此时CPU可以继续处理相应应用程序。
部署硬件压缩功能的系统为了保证系统的鲁棒性,一般会也会部署软件压缩和解压功能,以防止硬件压缩失效的场景。因此,在压缩算法的选择上,偏向于性能较高的压缩算法。LZ(Lempel-Ziv)系列的压缩提供了一种压缩率尚可,但软件压缩和解压性能较快的算法,该系统算法的实现是为当前位置开始的多个字节(GZIP中的LZ为3个字节,LZ4为4字节)计算一个哈希值,并在哈希表中查找该哈希值是否之前记录过,如果已经记录则在对应位置进行字节比对,找出匹配信息——匹配长度和偏移量(即当前字节往前多少字节能找到匹配),当然也有可能因为哈希冲突造成匹配失败;接着用当前的哈希值和位置更新哈希表;当LZ找到一个匹配时,相当于找到一组信息:(未能匹配的字节长度,未能匹配的原始字节,匹配的长度、匹配位置的偏移),然后按照相应算法的方式进行封装处理;接着处理下一个位置。例如对于字符串ABCDEABCDF……,当LZ4处理到第6个位置A处时,找到一个4字节的匹配,即找的一组信息是:(5,ABCDE,4,5),最后按照LZ4封装要求进行输出。该算法的过程按照串行思路逐字节(如遇到匹配则跳到匹配之后的字节)进行。
综上所述,现有技术存在的问题是:
(1)现有技术一般采用软件实现,LZ压缩过程的性能因被压缩文件的压缩率不同而产生较大波动;
(2)当前最快的基于LZ的压缩算法性能也只能达到百兆每秒(例如LZ4),而对于内存,超高速传输等应用场景,该压缩性能无法达到要求(例如GB/s以上);
(3)现有技术针对LZ过程没有制定同时基于并行和流水线设计的硬件压缩,导致不能极大提升LZ系列压缩的性能。
解决上述技术问题的难度和意义:
(1)本发明通过并行和流水线设计的LZ硬件压缩过程,能够保证稳定的压缩性能,即一个周期处理特定字节数;
(2)本发明通过并行和流水线设计的LZ硬件压缩过程,能够得到GB/s以上的性能,例如对于ASIC而言,时钟主频800MHz,其LZ硬件压缩一个周期处理4个字节,则该LZ硬件压缩性能能够取得3.2GB/s;
(3)本发明通过同时采用并行和流水线设计,会略微损失压缩率,因此本发明采用流水线内固定匹配数(保证并行和流水特征),流水线间合并匹配结果的设计尽可能找出更长的匹配,弥补压缩率的损失;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南威软件股份有限公司,未经南威软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811182742.5/2.html,转载请声明来源钻瓜专利网。