自适应速率压缩散列处理装置制造方法及图纸

技术编号:15294925 阅读:78 留言:0更新日期:2017-05-11 12:10
根据相对于前面的文字集参考多个文字集的散列算法来处理输入文件以促进拷贝‑偏移命令产生。通过产生所述文字集的散列及查找散列表中的对应条目而识别前面的实例。可通过将查找请求置于FIFO缓冲区中而存取所述散列表。当所述FIFO缓冲区填满时,暂停散列链的产生直到所述FIFO缓冲区不再填满为止。当发现重复文字时,同样地暂停所述散列链的产生。所述散列链用于例如根据LZ算法而产生命令文件。用行程长度命令替换连续文字的行程。可接着使用霍夫曼编码对所述命令文件进行编码。

Adaptive rate compression hash processing device

According to the previous text set hash algorithm reference multiple text set to process the input file to facilitate copy offset command is generated. The preceding instance is identified by generating a hash of the text set and finding the corresponding entry in the hash table. The hash table can be accessed by placing the lookup request in the FIFO buffer. When the FIFO buffer is filled, the production of the hash chain is suspended until the FIFO buffer is no longer filled. When the duplicate text is found, the hash chain is similarly suspended. The hash chain is used to generate a command file, for example, based on the LZ algorithm. Replace the stroke of the continuous text with the stroke length command. The command file can then be encoded using the Hoffman code.

【技术实现步骤摘要】
【国外来华专利技术】相关申请案本申请案主张2014年8月12日提出申请的且标题为“自适应速率压缩散列处理器(AdaptiveRateCompressionHashProcessor)”的第62/036,453号美国临时案的权益。
本专利技术涉及用于压缩数据的系统及方法。
技术介绍
软件压缩很好理解且在公用域中可易于存取用于如GZIP等程序的源代码。考虑到GZIP压缩是基于DEFLATE[2]算法及霍夫曼(Huffman)编码[3],因此针对高带宽应用在硬件中进行用以实施压缩的算法是相对复杂的。压缩的意图是后期在数据流中使用所述数据流中早期出现的拷贝命令。因此,所有压缩实施方案均需要一搜索历史缓冲区及某一类型的比较长度函数以确定可用于拷贝命令的最长长度。用以在先前历史中实施搜索匹配的一种方法是实施散列函数,所述散列函数将可变长度字符串映射到可用于比较正压缩的数据流的固定值。图1表示GZip的压缩算法的功能性硬件框图。输入数据102由实施(举例来说)LZ7/LZ78算法的模块108的散列模块104散列。将散列数据进行比较以由LZCMD模块108按蓝波-立夫[4]算法或类似算法产生拷贝或文字命令。一旦收集对待压缩数据的统计,所述统计便被进行霍夫曼译码且接着被压缩以作为经压缩输出数据110而被发送出去。本文中所揭示的系统及方法提供用于散列输入数据的经改进方法。附图说明为了将易于理解本专利技术的优点,将参考所附图式中所图解说明的具体实施例再现以上简略描述的对本专利技术的较特定说明。应理解,这些图式仅描绘本专利技术的典型实施例且因此并非被视为对本专利技术的范围的限制,透过使用附图将运用额外特异性及细节来描述及阐释本专利技术,在附图中:图1是根据现有技术的用于实施压缩方案的组件的示意性框图;图2是根据本专利技术的实施例的图解说明散列及散列链的产生的图式;图3是根据本专利技术的实施例的用于产生散列链的方法的过程流程图;图4是根据本专利技术的实施例的用于实施散列的电路的示意性框图;图5是根据本专利技术的实施例的用于实施散列抑制的装置的示意性框图;图6是根据本专利技术的实施例的用于散列抑制的方法的过程流程图;且图7是适于实施根据本专利技术的实施例的方法的计算机系统的示意性框图。具体实施方式将易于理解,可将如在本文中大体描述及各图中图解说明的本专利技术的组件布置并设计成各种各样的不同配置。因此,如各图中所表示的对本专利技术的实施例的以下较详细说明并不打算限制如所主张的本专利技术的范围,而是仅表示根据本专利技术的目前所涵盖实施例的某些实例。参考图式将最佳地理解目前所描述实施例,其中通篇中相似部件由相似编号标示。响应于此项技术的目前状态且(特定来说)响应于此项技术中通过当前可用设备及方法尚未完全解决的问题及需要已开发本专利技术。可利用一或多个计算机可用或计算机可读媒体的任何组合,包含非暂时性媒体。举例来说,计算机可读媒体可包含以下各项中的一或多者:便携式计算机磁盘、硬盘、随机存取存储器(RAM)装置、只读存储器(ROM)装置、可擦除可编程只读存储器(EPROM或快闪存储器)装置、便携式光盘只读存储器(CDROM)、光学存储装置及磁性存储装置。在选定实施例中,计算机可读媒体可包括可含有、存储、传递、传播或传输供由指令执行系统、设备或装置使用或连同指令执行系统、设备或装置一起使用的程序的任何非暂时性媒体。用于实施本专利技术的操作的计算机程序代码可以一或多种编程语言的任何组合而写入,所述编程语言包含面向对象的编程语言(例如Java、Smalltalk、C++等等)及常规过程编程语言(例如“C”编程语言或类似编程语言)。所述程序代码可作为独立软件封装在计算机系统上整体地执行、在独立硬件单元上执行、在与所述计算机相隔某一距离的远程计算机上部分地执行,或者在远程计算机或服务器上整体地执行。在于远程计算机或服务器上整体地执行的情景中,远程计算机可透过任何类型的网络(包含局域网络(LAN)或广域网络(WAN))连接到所述计算机,或者可与外部计算机进行连接(举例来说,使用因特网服务提供者透过因特网而进行)。下文参考根据本专利技术的实施例的方法、设备(系统)及计算机程序产品的流程图图解及/或框图而描述本专利技术。将理解,所述流程图图解及/或框图的每一框及所述流程图图解及/或框图中的框的组合可由计算机程序指令或代码实施。这些计算机程序指令可被提供到通用计算机、专用计算机或其它可编程数据处理设备的处理器以产生机器,使得所述指令(其经由计算机或其它可编程数据处理设备的处理器执行)形成用于实施所述流程图及/或框图的一或若干框中所规定的功能/行为的手段。这些计算机程序指令还可存储于非暂时性计算机可读媒体中,所述非暂时性计算机可读媒体可引导计算机或其它可编程数据处理设备以特定方式起作用,使得存储于计算机可读媒体中的指令产生包含指令手段的制品,所述指令手段实施流程图及/或框图的一或若干框中所规定的功能/行为。还可将计算机程序指令加载到计算机或其它可编程数据处理设备上以致使在计算机或其它可编程设备上执行一系列操作步骤,以产生计算机实施的处理程序,使得在计算机或其它可编程设备上执行的指令提供用于实施流程图及/或框图的一或若干框中所规定的功能/动作的处理程序。参考图2及3,使用散列200来迅速对稍后将按蓝波-立夫(LZ)算法及其它压缩衍生物压缩的文件、字符串或其它数据集202的大部分或全部可能参考编索引。图2中展示可产生的散列表204及散列链206的实例。散列表204及散列链206的填充可使用图3的方法300执行。如根据本文中所揭示的方法而产生的散列表204及散列链206可经处理以根据此项技术中已知的任何方法(明确地,LZ算法)而压缩原始数据集202。在步骤302处,检索当前位置P处的文字对N。首次地,文字对P可等于零。在图2的实例中,位置P等于X且N等于‘ab’。方法300可包含确定304相对于文字N是否应抑制散列链的产生。此可包含执行图5的方法600。如果未发现304散列受到抑制,那么方法300可包含产生306文字对N的散列(即,Hash(N)),其中Hash()是散列函数。图4中展示实例性散列函数及实施电路。接着可查找308散列表204中在地址Hash(N)处的条目E。在图2的实例中,针对第一次出现的文字对‘ab’,E的值为零。举例来说,针对根据方法300而处理的每一扇区或数据文件,可将散列表204初始化为零。接着可将E的值存储310于散列链206中的位置P处。在图2的实例中,值0存储于散列链206中用于‘ab’的第一实例的位置X处。还可将P的值写入312散列表204中的地址Hash(N)处。在所图解说明实例中,可将X的值写入散列表204中的地址Hash(‘ab’)处。如果位置P是最后文字或文字对的位置,那么将发现314数据文件被完成且方法将结束。否则,将递增P的值以指向下一文字(即,P=P+1文字位置),且方法将在步骤302处继续进行。举例来说,对于字符串‘abcd’,在P=0处将首先处理文字对‘ab’。在P=1处,将处理文字对‘bc’,以此类推。即使在确定304散列受到抑制时,仍可执行步骤314及316,如图3中所展示。在图2的实例中,步骤304到312的下一迭代将致使响应于检测到‘ab’下一次出现在位置Y处而从地本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/61/201580047069.html" title="自适应速率压缩散列处理装置原文来自X技术">自适应速率压缩散列处理装置</a>

【技术保护点】
一种方法,其包括:由电子装置接收输入数据集;由所述电子装置设定当前位置P;(a)由所述电子装置从所述输入数据集检索所述当前位置处的文字集N;(b)由所述电子装置产生散列值Hash(N),其中Hash()是具有输出的散列函数,所述输出具有比N少的位;(c)评估与散列表相关联的先进先出FIFO缓冲区的状态;(d)如果与所述散列表相关联的所述FIFO缓冲区填满,那么避免将对Hash(N)的查找请求添加到所述FIFO缓冲区、递增所述当前位置P以参考所述输入数据集中的下一文字集N且重复(a)到(d),否则,如果与所述散列表相关联的所述FIFO缓冲区未填满,那么(i)查找所述散列表中的地址Hash(N)处的条目E;(ii)将所述条目E存储于散列链中的所述位置P处;(iii)将用以将位置P写入为所述散列表中的所述地址Hash(N)处的所述条目E的写入请求添加到所述FIFO缓冲区;(iv)处理来自所述FIFO缓冲区的用以将位置P写入为所述散列表中的所述地址Hash(N)处的所述条目E的所述写入请求;及(v)递增所述当前位置P以参考所述数据集中的下一文字位置;及(e)重复(a)到(e)直到到达所述数据集的末尾为止;及由所述电子装置使用所述散列链来压缩所述输入数据集。...

【技术特征摘要】
【国外来华专利技术】2014.08.12 US 62/036,4531.一种方法,其包括:由电子装置接收输入数据集;由所述电子装置设定当前位置P;(a)由所述电子装置从所述输入数据集检索所述当前位置处的文字集N;(b)由所述电子装置产生散列值Hash(N),其中Hash()是具有输出的散列函数,所述输出具有比N少的位;(c)评估与散列表相关联的先进先出FIFO缓冲区的状态;(d)如果与所述散列表相关联的所述FIFO缓冲区填满,那么避免将对Hash(N)的查找请求添加到所述FIFO缓冲区、递增所述当前位置P以参考所述输入数据集中的下一文字集N且重复(a)到(d),否则,如果与所述散列表相关联的所述FIFO缓冲区未填满,那么(i)查找所述散列表中的地址Hash(N)处的条目E;(ii)将所述条目E存储于散列链中的所述位置P处;(iii)将用以将位置P写入为所述散列表中的所述地址Hash(N)处的所述条目E的写入请求添加到所述FIFO缓冲区;(iv)处理来自所述FIFO缓冲区的用以将位置P写入为所述散列表中的所述地址Hash(N)处的所述条目E的所述写入请求;及(v)递增所述当前位置P以参考所述数据集中的下一文字位置;及(e)重复(a)到(e)直到到达所述数据集的末尾为止;及由所述电子装置使用所述散列链来压缩所述输入数据集。2.根据权利要求1所述的方法,其中(d)进一步包括:如果N包含相同于紧接的前面文字且小于所述文字的第16个连续实例的文字,那么避免将对Hash(N)的所述查找请求添加到所述FIFO缓冲区且递增所述当前位置P以参考所述数据集中的文字位置。3.根据权利要求1所述的方法,其中由所述电子装置使用所述散列链来压缩所述输入数据集包括:根据蓝波-立夫算法来产生拷贝或文字命令。4.根据权利要求2所述的方法,根据所述蓝波-立夫算法来产生拷贝或文字命令包括:针对每一字符串通过以下操作用参考相同字符串及先前出现的字符串的拷贝及偏移命令来替换命令集中的所述数据集中的字符串:识别所述每一字符串的初始文字集;识别对应于所述初始文字集的散列链;在所述散列链中所参考的对应于所述初始文字集的位置处专门地搜索一或多个相同字符串。5.根据权利要求3所述的方法,其进一步包括对所述命令集进行霍夫曼译码。6.一种用于压缩数据的设备,其包括:存储器组;电子装置,其经编程以:接收输入文件;以所述输入文件中的初始文字位置作为当前位置开始,通过以下操作针对所述输入文件中的多个文字集中的每一文字集从所述输入文件产生散列链:(a)产生所述当前位置处的文字集的散列值,(b)在所述存储器组中以所述散列值检索条目,(c)将所述条目写入到所述散列链中映射到所述当前位置的位置,(d)将所述当前位置以所述散列值写入所述存储器组中,(e)使所述当前位置前进到所述输入文件中的下一文字位置且重复(a)到(e)直到到达所述输入文件的末尾为止;在所述散列链的产生期间,响应于检测到所述文字集包含为所述输入文件中的前面文字的复制品的文字而暂停执行(a)到(d);及输出所述散列链。7.根据权利要求6所述的设备,其中所述电子装...

【专利技术属性】
技术研发人员:亚历山大·贺布利司吴英全
申请(专利权)人:泰德系统股份有限公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1