[发明专利]利用相对和绝对增量值的数据压缩和解压缩有效
申请号: | 201110264956.9 | 申请日: | 2011-09-05 |
公开(公告)号: | CN102404564A | 公开(公告)日: | 2012-04-04 |
发明(设计)人: | 乔·多米尼克·迈克尔·塔帕利;埃万德·利兰;斯恩·特里斯拉姆·艾利斯 | 申请(专利权)人: | ARM有限公司 |
主分类号: | H04N7/26 | 分类号: | H04N7/26 |
代理公司: | 北京东方亿思知识产权代理有限责任公司 11258 | 代理人: | 李晓冬 |
地址: | 英国*** | 国省代码: | 英国;GB |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 利用 相对 绝对 增量 数据压缩 和解 压缩 | ||
技术领域
本发明涉及数据处理中的数据压缩和解压缩领域。
背景技术
随着现代处理器的处理功率的增加,它们可处理的数据量也增加。对这种增加的数据量在不同设备间的传输表现出了其自身的问题,并且,已利用各种不同的压缩机制来处理这些问题。这些压缩机制允许在发送之前将数据压缩成更加紧密的形式,然后,在需要数据的地方在接收时将其解压缩。
一种压缩数据的方法是增量(delta)压缩。已经发现,在代表如将要显示的图像的数据流中,一般而言,两个邻接数据项目之间的差异是相当小的,因此,仅发送第一数据项目然后发送代表与之前的值的差异的值而非发送每个数据项目是更加高效的。如果值是类似的,则很明显,通过这种方式可发送更少的数据。
但是,例如带有以任意次序来自屏幕的不同贴图(tile)的数据的图形数据正在流中发送时可出现问题。就其本性而言,如果计算增量的数据项目是类似的,增量压缩才高效。因此,在图形数据流中,应当在相关的数据项目(例如,在数据集中邻接的那些数据)之间计算增量。这些值可能不出现在彼此靠近的数据流汇总,因此,为了计算增量值,需要用以存储之前所接收的数据项目的数据仓库。存在可以任意次序访问的成千上万的数据集,可能未存储所需要的相关值,除非存储了非常大量的之前所接收的数据。
发明内容
从第一方面来看,本发明提供了一种用于接收包括多个数据项目并用于输出压缩数据流的数据压缩器,所述数据压缩器包括:用于接收所述数据流的数据输入端;用于生成压缩增量值的增量值计算器,所述增量值计算器被配置为从所述数据输入端接收所述多个数据项目,并被配置为针对接收的数据项目中的至少一些数据项目来访问数据仓库,以确定所述接收的数据项目的相关数据项目是否存储在所述数据仓库中,以及:响应于所述相关数据项目被存储了,从所述数据仓库获取所述相关数据项目,并且,从所述接收的数据项目和所述相关数据项目计算增量值并输出所述增量值;并且响应于所述相关数据项目未被存储在所述数据仓库中,从所述接收的数据项目和预定值计算增量值并输出所述增量值;所述数据仓库,用于存储在所述数据输入端接收的所述多个数据项目;所述数据压缩器还包括:数据仓库控制器,用于控制所述多个数项目在所述数据仓库中的存储,所述数据仓库控制器配置为响应于在所述数据输入端接收到数据项目而访问所述数据仓库,并确定是否给所述数据项目分配了存储位置,以及:如果是,则在所述分配的存储位置中存储所述数据项目;并且如果否,则给所述数据项目分配存储位置,收回并丢弃在所述分配的存储位置中存储的任何数据,并在所述分配的存储位置中存储所述数据项目。
本发明认识到利用某些数据流,可存在以任意次序接收的数据项目,使得在数据集或对象中,相邻值并不彼此相关。在数据项目之间形成增量值仅适用于压缩两个数据项目彼此类似的接收数据流,并且,一般出现为它们彼此相关,可能在数据集中邻接。但是,如果数据流包括以任意次序接收的数据项目,则在数据流中的相邻数据项目将是不相关的。为了能够在数据集中彼此相关的数据项目之间形成增量值,需要数据仓库,以存储之前所接收的值,使得当接收新值时,可从数据仓库获取相关值,并且,计算对应的增量值。但是,如果数据流包括以任意次序接收的许多数据项目,则数据仓库需要很大,以便确保存在所存储的相关值。
如果数据仓库是诸如缓存器之类的可很快访问的数据仓库,则从面积上讲是很昂贵的,并且,具有非常大的数据仓库不是有优势的。如果使用较小的数据仓库和更便宜的存储器,则系统的延迟将取决于是否需要从存储器中获取相关数据项目,并且,这将意味着系统的延迟不是恒定的,而是取决于所获取的实际数据项目,因此,不能存在输入数据的恒定吞吐量。
本发明通过允许从没有存储相关数据项目的预定值来计算“增量值”从而解决该问题。因此,当接收新数据项目时,确定是否存储了相关数据项目,并且,如果是,则从该相关值计算增量值。但是,如果不是,则仅关于预定的存储值来计算增量值。该值可以是零(在该情形中,实际数据项目是输出)或可以是对数据项目所计算的统计平均。这允许以相同的延迟来计算增量值,而不管是否存在已存储的相关值。因此,可存在数据的恒定吞吐量,仅在某些情况中(其中,没有存储相关数据项目),将不压缩数据,或者,将不很好地压缩该数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于ARM有限公司,未经ARM有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110264956.9/2.html,转载请声明来源钻瓜专利网。