[发明专利]用于使用硬件和软件进行压缩的系统、方法和装置有效
申请号: | 201680055588.8 | 申请日: | 2016-09-23 |
公开(公告)号: | CN108028665B | 公开(公告)日: | 2022-05-10 |
发明(设计)人: | V.戈帕尔;J.D.吉尔福德;G.M.沃尔里希;D.F.库特 | 申请(专利权)人: | 英特尔公司 |
主分类号: | H03M7/30 | 分类号: | H03M7/30 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 吕传奇;闫小龙 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 使用 硬件 软件 进行 压缩 系统 方法 装置 | ||
本文中所详述的是用于使用硬件和软件进行压缩的系统、方法和装置的实施例。实施例包括用于对两个流操作的压缩器硬件,其中所述流中的一个是另一个流的偏移。附加地,在一些实施例中,所述压缩器硬件的输出被提交给软件以用于进一步处理。
技术领域
本文中所描述的各种实施例涉及压缩技术。
背景技术
LZ77压缩器的成本主要由保持滑动历史缓冲器、各种散列和溢出表所需要的本地存储器量支配。需要良好压缩比的典型实施方式使用为算法中定义的历史大小的约3至5倍存储器。现今使用中的不同的基于LZ77的算法遗憾地在历史缓冲器大小方面具有巨大差异(现今例如LZS - 2KB、LZRW - 4KB、LZF - 8KB、Deflate - 32KB、LZO/LZ4 - 64KB、Snappy- 64KB,但是可以更大) - 如果需要实现更高的压缩比,则当前方法必须在硬件方面提供最坏情况实施方式。
发明内容
按照本发明第一方面的一种硬件装置,其包括:
历史缓冲器,其用于存储多个文字;以及
匹配电路,其用于
对第一输入流和第二输入流操作第一传递以在所述第二输入流中的一串文字与所述历史缓冲器中的一串文字匹配时输出文字和向后引用,
对所述第一输入流和所述第二输入流操作第二传递以在所述第二输入流中的一串文字与所述历史缓冲器中的一串文字匹配时输出文字和向后引用,其中,所述第一输入流和所述第二输入流在所述第一传递中是相同的流并且所述第二流在所述第二传递中是所述第一流的偏移,使得在所述第二传递中找到的引用具有远离所述历史缓冲器为所述历史缓冲器的大小乘以传递数的偏移,其中,所述历史缓冲器将从所述第一输入流构造。
按照本发明第二方面的一种用于使用硬件和软件进行压缩的方法,其包括:
在硬件加速器中,
在硬件加速器中接收第一输入流和第二输入流,
将来自所述第一流的文字存储到历史缓冲器中,
对所述第一输入流和所述第二输入流执行多个传递以在所述第二输入流中的一串文字与所述历史缓冲器中的一串文字匹配时输出文字和向后引用,其中,对于每个连续传递所述第二输入流是与所述第一流的偏移,使得在第二传递中找到的引用具有远离所述历史缓冲器为所述历史缓冲器的大小乘以传递数的偏移,以及
将每一传递的结果存储在输出缓冲器中。
按照本发明第三方面的一种硬件装置,其包括:
历史缓冲器装置,其用于存储多个文字;以及
匹配装置,其用于
对第一输入流和第二输入流操作第一传递以在所述第二输入流中的一串文字与所述历史缓冲器中的一串文字匹配时输出文字和向后引用,
对所述第一输入流和所述第二输入流操作第二传递以在所述第二输入流中的一串文字与所述历史缓冲器中的一串文字匹配时输出文字和向后引用,其中,所述第一输入流和所述第二输入流在所述第一传递中是相同的流并且所述第二流在所述第二传递中是所述第一流的偏移,使得在所述第二传递中找到的引用具有远离所述历史缓冲器为所述历史缓冲器的大小乘以传递数的偏移,其中,所述历史缓冲器将从所述第一输入流构造。
附图说明
本发明在附图的图中作为示例而非限制被图示,在附图中相同的标记指示类似的元件,并且在附图中:
图1图示了简化压缩器的实施例和输入流的视图。
图2图示了使用LZ77作为基础的示例性压缩架构。
图3图示了用于LZ77压缩的系统的实施例。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680055588.8/2.html,转载请声明来源钻瓜专利网。