压缩数据的方法和用于执行该方法的设备技术

技术编号:10211050 阅读:116 留言:0更新日期:2014-07-12 16:32
一种数据压缩方法,包括:接收包括先前数据块和当前数据块的输入数据流;执行先前数据块的一部分与先前参考数据块的一部分的第一比较,以及当前数据块与当前参考数据块的第二比较,其中,第一比较和第二比较被并行执行。所述方法还包括基于第一比较和第二比较的结果,选择性地输出当前数据块或者压缩扩展数据块,其中,扩展数据块包括先前数据块的所述部分和当前数据块。

【技术实现步骤摘要】
压缩数据的方法和用于执行该方法的设备
本专利技术构思的实施例涉及数据压缩技术,更具体地,涉及用于数据压缩加速和用于补偿数据压缩加速期间损失的数据压缩率的数据压缩方法以及设备。
技术介绍
一般采用数据压缩技术来提高通信设备和/或数据存储设备中的有效的数据传输速率和/或有效的数据存储容量。此外,由于数据压缩减小了要被存储在数据存储设备(例如,快闪存储设备)中的数据量,所以在存储设备中写的数量和/或读的数量被降低,藉此提高存储设备的预期寿命。一般地,数据压缩可以被分类为无损压缩或者有损压缩。无损数据压缩特征在于原始数据的精确再生,而有损数据压缩允许原始数据的近似。无损数据压缩算法的例子包括被称为“LZ77”和“LZ78”的技术,它们被公开于Abraham Lempel和Jacob Ziv于1977和1978年所写的论文中。无损数据压缩算法的另一例子被称为“LZW”或者 mpel-Ziv Ross Williams ( “LZRW”),其被公开于 Abraham Lempel>Jacob Ziv和Terry Welch写于1984年的论文中。
技术实现思路
根据本专利技术构思的某些实施例,提供了一种数据压缩方法,其包括:接收包括先前数据块和当前数据块的输入数据流;执行先前数据块的一部分与先前参考数据块的一部分的第一比较,以及当前数据块与当前参考数据块的第二比较,其中,第一比较和第二比较被并行执行。所述方法还包括:基于第一比较和第二比较的结果,选择性地输出当前数据块或者压缩扩展数据块,其中,扩展数据块包括先前数据块的所述部分和当前数据块。根据本专利技术构思的其他实施例,提供了一种数据压缩方法,其包括:接收包括先前数据块和当前数据块的输入数据流。所述方法还包括:从存储器读取先前参考数据块的一部分,并且从所述存储器并行地读取当前参考数据块。所述方法还包括:比较先前数据块的一部分与先前参考数据块的所述部分,并且并行地比较当前数据块和当前参考数据块。所述方法还包括:当先前数据块的所述部分和先前参考数据块的所述部分匹配,并且当前数据块匹配当前参考数据块时,压缩扩展数据块,其中,扩展数据块包括先前数据块的所述部分和当前数据块。根据本专利技术构思的其他实施例,提供了一种数据压缩电路,其包括:缓冲存储器,包括第一存储器区域、第二存储器区域和第三存储器区域;和,缓冲存储器控制器,被配置成响应于地址,输出存储在第一存储器区域中的先前参考数据块的一部分和存储在第二存储器区域中的当前参考数据块。数据压缩电路还包括:比较电路,被配置成确定先前数据块的一部分是否和先前参考数据块的所述部分匹配,以及当前数据块是否和当前参考数据块匹配,并根据确定结果,产生控制信息。数据压缩电路还包括:压缩数据产生电路,被配置成基于控制信息,选择性地输出当前数据块或者压缩数据,其中,通过压缩包括先前数据块的所述部分和当前数据块的扩展数据块来产生压缩数据。根据本专利技术构思进一步的实施例,提供了一种数据处理系统,其包括:数据存储设备;主机,被配置成输出包括先前数据块和当前数据块的数据流;和,存储器控制器,被配置成确定来自主机的数据流中的每一数据块或者每一扩展数据块的匹配属性,根据确定结果压缩数据流中的数据块或者扩展数据块,并把压缩数据输出到数据存储设备。存储器控制器确定先前数据块的匹配属性,然后确定包括先前数据块的一部分和当前数据块的扩展数据块的匹配属性。【附图说明】结合附图,从下面的详细描述,本专利技术构思的上述以及其他方面和特征将变得清晰,在附图中:图1A是根据本专利技术构思某些实施例的数据处理系统的框图;图1B和图1C是本专利技术构思其他实施例的数据处理系统的框图;图2是示出图1A中所示的数据压缩电路的例子的框图;图3是示出图2中所示的哈希键产生电路的例子的框图;图4是用于说明图2中所示的哈希键产生电路的工作例子的概念图;图5是示出图2中所示的缓冲存储器和缓冲存储器控制器的例子的框图;图6是示出图2中所示的缓冲存储器控制器的例子的框图;图7是示出图2中所示的比较电路的例子的框图;图8是示出图2中所示的压缩数据产生电路的例子的框图;图9是示出图2中所示的数据解压缩电路的例子的框图;图10是供描述根据本专利技术构思的某些实施例的数据压缩方法时参考的流程图;图11是供描述根据本专利技术构思的其他实施例的数据压缩方法时参考的流程图;和图12是用于说明图11中所示的数据压缩方法的例子的概念图。【具体实施方式】此后将参考附图更全面地描述本专利技术构思,在附图中示出了本专利技术的实施例。但是,本专利技术可被以很多不同形式具体实施,并且不应被理解为只限于这里给出的实施例。相反,提供这些实施例以使本公开将是透彻的和完整的,并且将向本领域技术人员全面传达本专利技术的范围。在附图中,为了清晰可能夸大层和区域的尺寸和相对尺寸。相同的数字通篇指示相同的元件。将会理解,当一元件被称为被“连接”或者“耦合”到另一元件时,其可以直接连接或者耦合到另一元件,或者,可能存在居间的元件。相反,当一元件被称为被“直接连接”或者“直接耦合”到另一元件时,不存在居间的元件。如这里所使用的,术语“和/或”包括相关联的被列出项目中的一个或多个的任意和所有组合,并可以被缩写为“/”。将会理解,尽管这里可能使用术语第一、第二等来描述各种元件,但是这些元件不应被这些术语限制。这些术语只被用来将一个元件与另一个加以区分。例如,第一信号可以被称为第二信号,并且类似地,第二信号可以被称为第一信号而不偏离本公开的教导。这里使用的术语仅仅是为了描述特定实施例,并非旨在限制本专利技术。如这里所使用的,单数形式“一”、“一个”和“该”预期也包括复数形式,除非上下文清楚地另有指示。还将会理解,例如“包含”和/或“包括”在本说明书中被使用时,指定了存在所陈述的特征、区域、部分、步骤、操作、元件,和/或部件,但是不排除存在或者添加一个或多个其他的特征、区域、部分、步骤、操作、元件、部件,和/或其组。除非另外定义,否则这里使用的所有术语(包括技术术语和科学术语)具有和本专利技术所属
的技术人员通常理解的相同的含义。还将会理解,例如在常用词典中定义的那些的术语应该被解释为具有与其在相关技术和/或本申请的上下文中的含义相符的含义,并且将不会以理想化或者过于形式化的意义解释,除非这里明确地如此定义。图1A是本专利技术构思其他实施例的数据处理系统100的框图。数据处理系统100包括主机110、存储器控制器200、第一存储设备130和第二存储设备150。存储器控制器200和第一存储设备130可以被单独封装,或者被一起封装在单个封装中,例如层叠封装(package on package, PoP)或者多芯片封装。数据处理系统100可以被实施为例如个人计算机(PO、数据服务器或者便携式电子设备。便携式电子设备的例子包括膝上型计算机、移动电话机、智能电话机、平板PC、个人数字助理(PDA)、企业数字助理(enterprise digital assistant, EDA)、数字静态相机、数字摄像机、便携式多媒体播放器(PMP)、个人(或者便携式)导航设备(personal (orportable)navigation device,PND)、手持游戏控制台、移动互联网设备(m本文档来自技高网
...

【技术保护点】
一种数据压缩方法,包含:接收包括先前数据块和当前数据块的输入数据流;执行先前数据块的一部分与先前参考数据块的一部分的第一比较,以及当前数据块与当前参考数据块的第二比较,其中,第一比较和第二比较被并行执行;和基于第一比较和第二比较的结果,选择性地输出当前数据块或者对扩展数据块进行压缩,其中,扩展数据块包括先前数据块的所述部分和当前数据块。

【技术特征摘要】
2013.01.02 KR 10-2013-00000741.一种数据压缩方法,包含: 接收包括先前数据块和当前数据块的输入数据流; 执行先前数据块的一部分与先前参考数据块的一部分的第一比较,以及当前数据块与当前参考数据块的第二比较,其中,第一比较和第二比较被并行执行;和 基于第一比较和第二比较的结果,选择性地输出当前数据块或者对扩展数据块进行压缩,其中,扩展数据块包括先前数据块的所述部分和当前数据块。2.如权利要求1所述的数据压缩方法,其中,在使用交叉方法分配并且可独立地存取的不同存储器中分别实施其中存储当前参考数据块的第一存储器区域和其中存储先前参考数据块的第二存储器区域。3.如权利要求1所述的数据压缩方法,其中,扩展数据块尺寸和当前数据块尺寸的比例是带小数的数。4.如权利要求1所述的数据压缩方法,还包含从缓冲存储器并行地读取先前参考数据块的所述部分和当前数据块。5.一种数据压缩方法,包含: 接收包括先前数据块和当前数据块的输入数据流; 从存储器读取先前参考数据块的一部分,并且从所述存储器并行地读取当前参考数据块; 比较先前数据块的一部分与先前参考数据块的所述部分,并且并行地比较当前数据块和当前参考数据块; 当先前数据块的所述部分和先前参考数据块的所述部分匹配,并且当前数据块匹配当前参考数据块时,压缩扩展数据块,其中,扩展数据块包括先前数据块的所述部分和当前数据块。6.如权利要求5所述的数据压缩方法,还包含当先前数据块的所述部分的至少一个和先前参考数据块的所述部分不匹配,并且当前数据块和当前参考数据块不匹配时,选择性地压缩或者不压缩当前数据块。7.如权利要求5所述的数据压缩方法,其中,存储器是包括其中存储当前数据块的第一存储器区域和其中存储先前参考数据块的第二存储器区域的缓冲存储器,并且第一区域和第二区域分别在使用交叉方法分配并且可独立地存取的不同存储器中实施。8.如权利要求5所述的数据压缩方法,其中,扩展数据块尺寸和当前数据块尺寸的比例是带小数的数。9.一种数据压缩电路,包含: 缓冲存储器,包括第一存储器区域、第二存储器区域和第三存储器区域; 缓冲存储器控制器,被配置成响应于地址,输出存储在第一存储器区域中的先前参考数据块的一部分和存储在第二存储器区域中的当前参考数据块; 比较电路,被配置成确定先前数据块的一部分是否和先前参考数据块的所述部分匹配,以及当前数据块是否和当前参考数据块匹配,并根据确定结果,产生控制信息;和 压缩数据产生电路,被配置成基于控制信息,选择性地输出当前数据块或者压缩数据,其中,通过压缩包括先前数据块的所述部分和当前数据块的扩展数据块来产生压缩数据。10.如权利要求9所述的数据压缩电路,其中,第一存储器区域、第二存储器区域和第三存储器区域被分别实施在使用交叉方法分配并且可独立地存取的不同存储器中。11.如权利要求9所述的数据压缩电路,其中,缓冲存储器控制器并行地从第一存储器区域读取先前参考数据块的所述部分,从第二存储器区域读取当前参考数据块,然后把当前数据块写到第三存储器区域。12.如权利要求9所述的数据压缩电路,其中,缓冲存储器控制器包含: 地址产生器,被配置成使用所述地址产生第一存储器区域的第一地址和第二存储器区域的第二地址;和 缓冲存储器访问控制电路,被配置成并行地使用第一地址从第一存储器区域读取先前参考数据块的所述部分,并使用第二地址从第二存储器区域读取当前参考数据块,并基于当前数据块的第三地址把当前数据块写到第三存储器区域。13.如权利要求9所述的数据压缩电路,其中,压缩电路并行地确定先前数据块的所述部分是否和先前参考数据块的所述部分匹配,以及当前数据块是否和当前参考数据块匹配。14.如权利要求9所述的数据压缩电路,其中,比较电路包含: 寄存器,被配置成存储先前数据块的所述部分; 第一比较器,被配置成确定从寄存器输出的先前数据块的所述部分是否和从缓冲存储器控制器输出的先前参考数据块的所...

【专利技术属性】
技术研发人员:徐万根金大旭孙弘乐孔骏镇
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:韩国;KR

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

1