[发明专利]一种LZ77解码电路及其工作方法在审
申请号: | 202111328583.7 | 申请日: | 2021-11-10 |
公开(公告)号: | CN113972916A | 公开(公告)日: | 2022-01-25 |
发明(设计)人: | 司浩;张洪柳;于秀龙;任勇强;梅绪明;隋荣全;罗去禧 | 申请(专利权)人: | 青岛方寸微电子科技有限公司;山东方寸微电子科技有限公司 |
主分类号: | H03M7/30 | 分类号: | H03M7/30;H03M7/40 |
代理公司: | 济南竹森知识产权代理事务所(普通合伙) 37270 | 代理人: | 吕利敏 |
地址: | 266114 山东省青岛市高新区*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 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进行更新;
进行解压时单个所匹配的字符串位置存在以下三种情形:
仅存在于RAM中;
或仅存在于输出缓存中;
或同时存在于RAM和输出缓存中。
5.如权利要求3所述解码电路的工作方法,其特征在于,
将所述literal数据和所述解压后的数据送入所述输出缓存,当一次待解压数据全部处理完成时,将输出缓存中的数据输出。
6.如权利要求4或5所述解码电路的工作方法,其特征在于,对RAM进行更新是滚动更新,包括:
将输出缓存中的数据写入RAM时,按照由低地址向高地址,或者由高地址向低地址的方向将每一笔数据依次写入。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛方寸微电子科技有限公司;山东方寸微电子科技有限公司,未经青岛方寸微电子科技有限公司;山东方寸微电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111328583.7/1.html,转载请声明来源钻瓜专利网。