一种LZ77解码电路及其工作方法技术

技术编号:32033034 阅读:31 留言:0更新日期:2022-01-27 13:14
一种LZ77解码电路,按照pair数据流方向包括:输入/输出控制电路、输入缓存、输入预处理电路、地址映射电路、RAM输入/输出控制电路、RAM、输出预处理电路、输出缓存,所述RAM和输出缓存共同构成了查找窗;其中,通过所述RAM输入/输出控制电路向查找窗的RAM查找pair需要的数据;按照literal数据流方向,所述LZ77解码电路包括:输入缓存、输入预处理电路和输出缓存,输出缓存中的数据更新所述RAM。本发明专利技术通过改进的查找窗结构、对输入、输出数据分别进行预处理,进而有效提高LZ77解码速度。进而有效提高LZ77解码速度。进而有效提高LZ77解码速度。

【技术实现步骤摘要】
一种LZ77解码电路及其工作方法


[0001]本专利技术公开一种LZ77解码电路及其工作方法,属于数据解码的


技术介绍

[0002]所述LZ77是一种基于字典的算法,就是将已经编码的信息作为字典,如果要编码的字符曾经出现过,就用该字符串的出现位置以及长度来替代这个字符串,从而达到压缩的目的。几乎我们日常使用的所有通用压缩工具,如ARJ,PKZip,WinZip,LHArc,RAR,GZip,和许多硬件中内置的压缩算法,都有LZ77算法的应用。
[0003]经过LZ77压缩后的数据有两种形式,literal、pair(length,distance),literal是未经压缩处理的字符,pair是一个二维元组,包含length和distance两个信息,代表的是不定长的字符串序列,在进行数据解压时literal不需要进行特殊处理,而pair则需要通过查找窗(search_window)进行数据恢复,所以电路对pair的处理速度决定了整个电路的解码速度。
[0004]中国专利文献:CN109716659A高性能单流LZ77本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种LZ77解码电路,其特征在于,其中待解压数据为可被恢复为包含literal和pair的数据;按照pair数据流方向,所述LZ77解码电路包括:输入/输出控制电路、输入缓存、输入预处理电路、地址映射电路、RAM输入/输出控制电路、RAM、输出预处理电路、输出缓存,所述RAM和输出缓存共同构成了查找窗;其中,通过所述RAM输入/输出控制电路向查找窗的RAM查找pair需要的数据;按照literal数据流方向,所述LZ77解码电路包括:输入缓存、输入预处理电路和输出缓存;输出缓存中的数据更新所述RAM;其中,所述输入/输出控制电路用于控制待解压数据的输入和解压后的数据输出;所述输入缓存,用于缓存通过输入/输出控制电路输入的数据;所述输入预处理电路,用于将待解压数据预处理为literal数据和/或pair数据;所述地址映射电路,用于对pair数据进行解析:将所述pair数据中的distance映射为RAM可识别的地址(ram_rd_st_addr),根据所述pair数据中的length计算出需要去RAM中读取数据的次数(ram_rd_cnt),根据输出缓存中数据的个数(out_buf_cnt),根据RAM当前指向的地址(ram_cur_addr),以确定待查找数据的位置、读取次数和长度信息;所述输出预处理电路,根据数据的位置、读取次数和长度信息从RAM读回的数据,并对数据进行裁剪、拼接,最终形成解压后的数据;所述输出缓存,用于缓存解压后的数据;所述RAM输入/输出控制电路,用于控制RAM内的数据写入和读出;所述查找窗,包括:RAM和输出缓存,所述输出缓存对RAM进行更新。2.根据权利要求1所述的一种LZ77解码电路,其特征在于,所述查找窗包括双口RAM和输出缓存;所述查找窗的最小架构中双口RAM的与使用LZ77压缩时的“字典”的大小一致;所述输出缓存本身的大小大于等于RAM每个地址对应的数据宽度。3.如权利要求1或2所述解码电路的工作方法,其特征在于,包括:1)解码电路读入一笔待解压数据放至输入缓存;2)将待解压数据预处理为literal数据和/或pair数据,并将literal数据送入输出缓存、将pair数据送入地址映射电路;3)将pair数据中的distance映射为查找窗可识别的地址(ram_rd_st_addr),根据pair数据中的length计算出需要去查找窗中读取数据的次数(ram_rd_cnt),根据输出缓存中数据的个数(out_buf_cnt),根据RAM当前指向的地址(ram_cur_addr),以确定待查找数据的位置、读取次数和长度信息;4)按照待查找数据的位置、读取次数和长度信息从查找窗中读回数据;5)对读回的数据进行输出预处理:进行裁剪、拼接,最终得到解压后的数据;6)重复步骤1)

5),直至所有待解压数据解压完成。4.如权利要求3所述解码电路的工作方法,其特征在于,所述工作方法还包括:将所述literal数据和所述解压后的数据送入所述输出缓存,对数据进行计数,当数据量到达预设阈值后,输出缓存将对应数据写入RAM进行保存,同时对RAM进行更新;进行解压时单个所匹配的字符串位置存在以下三...

【专利技术属性】
技术研发人员:司浩张洪柳于秀龙任勇强梅绪明隋荣全罗去禧
申请(专利权)人:山东方寸微电子科技有限公司
类型:发明
国别省市:

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

1