数据压缩方法及数据解压缩装置的制造方法_3

文档序号:8415267阅读:来源:国知局
压数据,直至完成全部解压。
[0079]数据处理器34,用于将解压出的数据添加到动态字典的尾部,作为新的动态字典,并将动态字典起始位置后移,后移长度为数据分析器中分析出的被压缩数据的字符数,以此完成动态字典的更新操作;
[0080]第二输出单元35,用于输出解压数据。
[0081]本发明实施例中,解压采用实施例一的数据压缩方法压缩得到的压缩数据,由于压缩数据时标记了待压缩数据中被压缩的字符数和被压缩数据的起始位置,或者,含有不匹配数据、字符数,或含有不匹配数据、字符数以及连续字符重复特性的信息,因此结合压缩数据时采用的动态字典能快速解压数据。
[0082]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【主权项】
1.一种数据压缩方法,其特征在于,所述方法包括下述步骤: 接收待压缩数据; 将接收的待压缩数据分为第一部分数据和第二部分数据,所述第一部分数据作为压缩所述第二部分数据的动态字典,所述动态字典的长度为预先设定; 将第二部分数据与所述动态字典匹配,若匹配成功,将所述待压缩数据转换成匹配成功对应的格式,若匹配失败,分析所述第二部分数据的格式,并将分析了格式的具有重复特性的第二部分数据转换成匹配失败对应的格式,所述匹配成功对应的格式含有所述待压缩数据中被压缩的字符数和被压缩数据的起始位置的信息;所述匹配失败对应的格式含有不匹配数据、字符数,或含有不匹配数据、字符数以及连续字符重复特性的信息; 更新动态字典; 输出压缩数据。
2.如权利要求1所述的方法,其特征在于,所述将第二部分数据与所述动态字典匹配,若匹配成功,将所述待压缩数据转换成匹配成功对应的格式的步骤具体为: 在动态字典中查找与所述第二部分数据的首字节相同的字符; 若在动态字典中查找到与所述第二部分数据的首字节相同的字符,则标记从首字节开始相同的最长字符串在所述动态字典的起始点位置以及所述最长字符串的字符数,若在动态字典中没有查找到与所述第二部分数据的首字节相同的字符,则在动态字典中查找与所述第二部分数据的次字节相同的字符; 若在动态字典中查找到与所述第二部分数据的次字节相同的字符,则标记从次字节开始相同的最长字符串在所述动态字典的起始点位置、所述最长字符串的字符数以及不匹配字符,若在动态字典中没有查找到与所述第二部分数据的次字节相同的字符,则在动态字典中查找与所述第二部分数据的次字节的下一字节相同的字符; 逐位查找,直到在动态字典中查找到与第二部分数据的某个字节相同的字符,并标记从所述某个字节开始相同的最长字符串在所述动态字典的起始点位置、所述最长字符串的字符数、所述第二部分数据与动态字典不相同的字符数以及不匹配的字符。
3.如权利要求1所述的方法,其特征在于,所述更新动态字典的步骤具体为: 在与第二部分数据匹配后,将所述动态字典后移一个或多个字符,后移的字符数与第二部分匹配或不匹配的最长字符串的字符数相同。
4.如权利要求1所述的方法,其特征在于,所述动态字典的长度为256,匹配长度为128,重复长度和非重复长度均为64。
5.一种数据压缩装置,其特征在于,所述装置包括: 第一接收器,用于接收待压缩数据; 第一数据划分单元,用于将接收的待压缩数据分为第一部分数据和第二部分数据,所述第一部分数据作为压缩所述第二部分数据的动态字典,所述动态字典的长度为预先设定; 第一匹配器,用于将第二部分数据与所述动态字典匹配,若匹配成功,将所述待压缩数据转换成匹配成功对应的格式,若匹配失败,分析所述第二部分数据的格式,并将分析了格式的具有重复特性的第二部分数据转换成匹配失败对应的格式,所述匹配成功对应的格式含有所述待压缩数据中被压缩的字符数和被压缩数据的起始位置的信息;所述匹配失败对应的格式含有不匹配数据、字符数,或含有不匹配数据、字符数以及连续字符重复特性的信息; 第一数据处理器,用于更新动态字典; 第一输出单元,用于输出压缩数据。
6.如权利要求5所述的装置,其特征在于,所述第一匹配器包括: 第一查找模块,用于在动态字典中查找与所述第二部分数据的首字节相同的字符;若在动态字典中没有查找到与所述第二部分数据的首字节相同的字符,则在动态字典中查找与所述第二部分数据的次字节相同的字符;用于在动态字典中没有查找到与所述第二部分数据的次字节相同的字符时,则在动态字典中查找与所述第二部分数据的次字节的下一字节相同的字符;逐位查找,直到在动态字典中查找到与第二部分数据的某个字节相同的字符; 第一标记模块,用于在动态字典中查找到与所述第二部分数据的首字节相同的字符时,标记从首字节开始相同的最长字符串在所述动态字典的起始点位置以及所述最长字符串的字符数;用于在动态字典中查找到与所述第二部分数据的次字节相同的字符时,则标记从次字节开始相同的最长字符串在所述动态字典的起始点位置、所述最长字符串的字符数以及不匹配字符;用于在动态字典中查找到与第二部分数据的某个字节相同的字符时,标记从所述某个字节开始相同的最长字符串在所述动态字典的起始点位置、所述最长字符串的字符数、所述第二部分数据与动态字典不相同的字符数以及不匹配的字符。
7.如权利要求5所述的装置,其特征在于,所述动态字典的长度为256,匹配长度为128,重复长度和非重复长度均为64。
8.一种数据解压缩装置,其特征在于,所述装置包括: 第二接收器,用于接收待解压缩数据,所述待解压缩数据含有被压缩的字符数和被压缩数据的起始位置的信息;或者,所述待解压缩数据含有不匹配数据、字符数,或含有不匹配数据、字符数以及连续字符重复特性的信息; 第二数据划分单元,用于将接收的待解压缩数据分为第一部分数据和第二部分数据,所述第一部分数据作为解压缩所述第二部分数据的动态字典,所述动态字典的长度为预先设定; 数据分析器,用于分析待解压数据的首字符,判断待解压数据是否为匹配的压缩数据;若为匹配的压缩数据,根据待解压缩数据所包含的被压缩数据的字符数和被压缩数据的起始位置的信息,在动态字典中,标示出对应位置的字符串,标示的字符串作为解压出的数据;若为不匹配的压缩数据,则分析待解压数据中首字符后的数据是否具有重复特性,若无重复特性,根据待解压缩数据所包含的被压缩数据的不匹配数据、字符数直接将待解压数据作为解压出的数据,若有重复特性,则根据待解压缩数据所包含的被压缩数据的不匹配数据、字符数以及连续字符重复特性将重复的待解压数据展开,作为解压出的数据; 第二数据处理器,用于将解压出的数据添加到动态字典的尾部,作为新的动态字典,并将动态字典起始位置后移,后移长度为数据分析器中分析出的被压缩数据的字符数,以此完成动态字典的更新操作; 第二输出单元,用于输出解压数据。
9.如权利要求8所述的装置,其特征在于,所述动态字典的长度为256,匹配长度为 . 128,重复长度和非重复长度均为64。
【专利摘要】本发明适用于数据压缩领域,提供了一种数据压缩方法及数据解压缩装置。所述方法包括:接收待压缩数据;将接收的待压缩数据分为第一部分数据和第二部分数据,所述第一部分数据作为压缩所述第二部分数据的动态字典;将第二部分数据与所述动态字典匹配,若匹配成功,将所述待压缩数据转换成匹配成功对应的格式,若匹配失败,分析所述第二部分数据的格式,并将分析了格式的具有重复特性的第二部分数据转换成匹配失败对应的格式;更新动态字典;输出压缩数据。本发明实施例能够确保高效率压缩,达到高效的压缩性能。
【IPC分类】H03M7-30, G06F17-30
【公开号】CN104734722
【申请号】CN201310720067
【发明人】李暄, 钟永红, 毛景雄, 刘宇骐, 郭左兴
【申请人】深圳市国微电子有限公司
【公开日】2015年6月24日
【申请日】2013年12月23日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1