资料压缩、解压缩方法及其装置制造方法及图纸

技术编号:5981214 阅读:195 留言:0更新日期:2012-04-11 18:40
本发明专利技术的实施例提供一种资料压缩方法。首先,对资料进行分块,以产生至少一个非动态装载资料块与至少一个动态装载资料块。接着,对非动态装载资料块进行压缩,以产生第一压缩资料块。之后,根据压缩非动态装载资料块时所产生的信息,对动态装载资料块所组成的资料块进行压缩,以产生第二压缩资料块。本发明专利技术还提供资料解压缩的方法,以及进行压缩和解压缩的装置。

【技术实现步骤摘要】

本专利技术是有关于一种资料压缩与解压缩方法,且特别是有关于一种分块压缩与解 压缩资料的方法及其装置。
技术介绍
电子产品通常需要将资料(包含程序、图表与字形档等)存储于非易失性存储器, 例如闪存(flash memory)中。为了节省闪存的储存空间,一般而言会对所要储存的资料进 行压缩。要对资料进行压缩时,可以使用基于字典的压缩方法,例如LZ77、LZ78或其变种配 合熵编码(entorpy encoding)的方式进行压缩,其中熵编码可以例如霍夫曼编码(Huffman encoding)、算术编石马(arithmeticencoding)或香农编石马(Shanno-Fano encoding)。基于字典的压缩方法的核心在于,如果资料中的某一段在一个滑动资料视窗或者 字典中存在,就用那段资料在滑动资料视窗中的位置和长度或者字典中的代替码字来代 替那段资料本身。要使用被压缩的资料时,则必需先对被压缩的资料进行解压缩后,才能 将经过解压缩的资料装入易失性存储器中,例如同步动态存储器(synchronous synamic random access memory,简称为SDRAM)。通常同步动态存储器需要能容纳解压后的整个程 序,如果整个程序很大,则意味着需要很大的储存空间,并会导致成本居高不下。美国公开号US2007016693A1的专利申请案揭露了一种分块压缩资料的方法,当 要使用被压缩后的资料的某部份时,则只需要解压缩要用到的部分所对应的几块资料,而 不需将整个资料进行解压缩,由此便能够节省同步动态存储器的空间。但是,把整个资料分 块压缩会造成压缩效率下降。例如,把整个资料分成A、B与C三块,并分别将A、B与C块资 料压缩得到a、b与c三块被压缩的资料,则a、b与c三块资料的大小总和通常会大于对整 个资料进行压缩所得到的资料的大小。前述压缩率下降的原因在于,分块后的每一块资料 不能在另一块资料的滑动资料视窗或者字典中寻找匹配资料段。
技术实现思路
本专利技术的实施例提供一种资料压缩方法。首先,对资料进行分块,以产生至少一个 非动态装载资料块与至少一个动态装载资料块。接着,对非动态装载资料块进行压缩,以产 生第一压缩资料块。之后,根据压缩非动态装载资料块时所产生的信息,对动态装载资料块 所组成的资料块进行压缩,以产生第二压缩资料块。本专利技术的实施例提供一种资料解压缩方法。首先,接收第一压缩资料块。接着,对 第一压缩资料块进行解压缩,以产生非动态装载资料块。之后,接收第二压缩资料块。然 后,根据解压缩第一压缩资料块时所产生的信息,对第二压缩资料块解压缩,以产生动态装 载资料块。本专利技术的实施例提供一种资料压缩装置,资料压缩装置包括资料分块装置、第一 压缩单元与第二压缩单元。第一压缩单元连接于资料分块装置,第二压缩单元连接于资料 分块装置。资料分块装置对资料进行分块,以产生至少一个非动态装载资料块与至少一个动态装载资料块。第一压缩单元对非动态装载资料块进行压缩,以产生第一压缩资料块。第 二压缩单元根据压缩非动态装载资料块时所产生的信息,对动态装载资料块所组成的资料 块进行压缩,以产生第二压缩资料块。本专利技术的实施例提供一种资料解压缩装置,资料解压缩装置包括第一解压缩单元 与第二解压缩单元。第一解压缩单元对第一压缩资料块进行解压缩,以产生非动态装载资 料块。第二解压缩单元根据解压缩第一压缩资料块时所产生的信息,对第二压缩资料块解 压缩,以产生动态装载资料块。基于上述,本专利技术的实施例所提供的资料压缩方法与资料压缩装置所压缩后的资 料的大小较传统的资料分块压缩方法来得小,且所对应的资料解压缩方法与资料解压缩装 置在解压缩被压缩的资料所花费的计算时间,又能够较传统一次解压缩整份资料的计算时 间来得少。附图说明为让本专利技术的上述目的、特征和优点能更明显易懂,以下结合附图对本专利技术的具 体实施方式作详细说明,其中图1是本专利技术的实施例所提供的资料压缩方法的流程图。图2是本专利技术的另一个实施例所提供的资料压缩方法的流程图。图3是本专利技术的另一个实施例所提供的资料压缩方法的流程图。图4是本专利技术的实施例所提供的资料解压缩方法的流程图。图5是本专利技术的另一个实施例所提供的资料解压缩方法的流程图。图6是本专利技术的另一个实施例所提供的资料解压缩方法的流程图。图7是本专利技术的实施例所提供的资料解压缩装置的方块图。图8是本专利技术的实施例所提供的资料解压缩装置的方块图。主要元件符号说明SlOl S106 步骤流程S201 S206 步骤流程S301 S306 步骤流程S401 S406 步骤流程S501 S506 步骤流程S601 S606 步骤流程700 资料压缩装置701 资料分块装置702 第一压缩单元703 第二压缩单元704 非易失性存储器800:资料解压缩装置801 第一解压缩单元802 第二解压缩单元803 易失性存储器具体实施例方式本专利技术的实施例提供了资料压缩方法与资料压缩装置,且特别是有关于一种分块 压缩资料的方法与装置。除此之外,本专利技术的实施例更介绍对应的资料解压缩方法与资料 解压缩装置。各实施例所提供的资料压缩方法、资料压缩装置资料解压缩方法与资料解 压缩装置皆可以应用于所有需要从非易失性存储器解压缩资料至易失性存储器的电子产 品,例如数字电视机顶盒(set-top box,简称为STB)、携带式影音播放器(portable media player,简称为PMP)与手机等。以下将用文字辅以图式来说明各种实施方式,图式采用相 同的图式编号的装置或流程为近似或相似的装置或流程。首先,请参照图1,图1是本专利技术的实施例所提供的资料压缩方法的流程图。首先, 在步骤S 101中,接收一个欲压缩的资料。接着,在步骤S102中,对资料进行分块,以产生 至少一个非动态装载资料块与至少一个动态装载资料块。在步骤S103中,对非动态装载资 料块进行压缩,以产生第一压缩资料块。在步骤S104中,储存第一压缩资料块至非易失性 存储器。例如,所要被压缩的资料为资料ABC在步骤SlOl中被接收,资料ABC在步骤S102 中被分为一个非动态装载资料块A与两个动态装载资料块B与C。接着,非动态装载资料块 A在步骤S103中被压缩为第一压缩资料块a。之后,第一压缩资料块a在步骤S104中被储 存在磁性硬盘或闪存中。在步骤S105中,根据基于字典压缩方式压缩非动态装载资料块时所产生的信息, 对动态装载资料块所组成的资料块进行压缩,以产生第二压缩资料块。在步骤S106,储存第 二压缩资料块至非易失性存储器。例如,在步骤S105中,将动态装载资料块B置于非动态 装载资料块A之后同时压缩(亦即压缩资料块AB),产生压缩资料块ab*,取压缩资料块b* 为第二压缩资料块,并在步骤S106中,将压缩资料块b*储存至磁性硬盘或闪存中;以及在 步骤S105中,将动态装载资料块C置于非动态装载资料块A之后同时压缩(亦即压缩资料 块AC),产生压缩资料块ac*,取压缩资料块c*为另一个第二压缩资料块,并在步骤S106中, 将压缩资料块c*储存至磁性硬盘或闪存中。实际上,上述所举的例子在实现步骤S105时,因为在压缩动态装载资料块B与C 要参考压缩非动态装载资料块A所产生的信息,因此才对资本文档来自技高网
...

【技术保护点】
1.一种资料压缩方法,包括:对资料进行分块,以产生至少一个非动态装载资料块与至少一个动态装载资料块;对所述非动态装载资料块进行压缩,以产生第一压缩资料块;以及根据基于字典压缩方式压缩所述非动态装载资料块时所产生的信息,对所述动态装载资料块所组成的资料块进行压缩,以产生第二压缩资料块。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈岳勇
申请(专利权)人:珠海扬智电子有限公司
类型:发明
国别省市:44[中国|广东]

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

1