[发明专利]一种动态Huffman编码硬件实现系统及其实现方法有效
申请号: | 201210458012.X | 申请日: | 2012-11-14 |
公开(公告)号: | CN102983866A | 公开(公告)日: | 2013-03-20 |
发明(设计)人: | 汤晓东;郭彦锋;李冰 | 申请(专利权)人: | 无锡芯响电子科技有限公司 |
主分类号: | H03M7/40 | 分类号: | H03M7/40 |
代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 楼高潮 |
地址: | 214135 江苏省无锡市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公布了一种动态Huffman编码硬件实现系统,该系统包括:数据打包单元,频率缓存单元,码字长度缓存单元,三个数据选择器单元,码字值缓存单元,主控状态机,父亲节点缓存单元,深度缓存单元,最小堆缓存单元,数据统计单元,加法器单元和乘法器单元。动态Huffman编码硬件实现方法,包括:快速的字符统计;建立Huffman树;建立Huffman表;编码输出;频率缓存单元的提前清空等步骤。本发明通过硬件实现了Huffman编码,并在Huffman编码的硬件实现过程中,采用了快速的字符统计方法、频率缓存单元提前清空等技术使得数据吞吐率有了明显的提升。 | ||
搜索关键词: | 一种 动态 huffman 编码 硬件 实现 系统 及其 方法 | ||
【主权项】:
一种动态Huffman编码硬件实现系统,其特征在于,所述系统包括:一个频率缓存单元,用于存放数据流中每一个字符出现的频率;一个最小堆缓存单元,用于维护频率缓冲单元中频率不为0的字符,使得这些字符在存储方式上呈现连续的形式,而这些字符在逻辑关系上呈现二叉树的形式,并且使得这棵二叉树满足:左节点和右节点都大于或者等于本节点,为辅助构造Huffman树的过程做好准备;一个父亲节点缓存单元,用于存放Huffman树中每一个节点的父亲节点,根节点除外;一个深度缓存单元,用于存放整个Huffman树中每一个节点的深度,其中根节点的深度最大,叶子节点的深度是0;一个码字值缓存单元,用于存放每一个字符对应的Huffman编码的值;一个码字长度缓存单元,用于存放每一个字符对应的Huffman编码值所对应的码字长度;一个乘法器单元,用于计算对待压缩数据块采用动态Huffman编码之后数据块的大小;一个数据统计单元,用于统计待压缩数据流中每一个字符出现的频率,并将统计的结果存放在频率缓存单元中;一个主控状态机部分,根据频率缓存单元中存放的每一个字符的频率,通过最小堆缓存单元、父亲节点缓存单元、深度缓存单元来构造Huffman树及Huffman表,分别存放在码字值缓存单元及码字长度缓存单元中;三个多路选择器单元,分别用于控制频率缓存单元在不同的工作阶段由主控状态机或者是由数据统计单元控制,和码字值缓存单元、码字长度缓存单元在不同的工作阶段分别由主控状态机或者是由数据打包输出单元进行控制;一个数据打包输出单元,用于查询待编码的数据块中每一个字符查询码字值缓存单元及码字长度缓存单元得到每一个字符的Huffman编码并打包输出;一个加法器单元,用于快速的字符统计,统计结果存放在频率缓存单元中。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡芯响电子科技有限公司,未经无锡芯响电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210458012.X/,转载请声明来源钻瓜专利网。