[发明专利]一种用于VLSI设计的Huffman编码系统的实现方法有效
申请号: | 201710276556.7 | 申请日: | 2017-04-25 |
公开(公告)号: | CN107094022B | 公开(公告)日: | 2023-02-10 |
发明(设计)人: | 魏榕山;张鑫刚;张晟;马智愚;胡志杰 | 申请(专利权)人: | 福州大学 |
主分类号: | H03M7/40 | 分类号: | H03M7/40;H04N19/91 |
代理公司: | 福州元创专利商标代理有限公司 35100 | 代理人: | 蔡学俊 |
地址: | 350002 福*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 vlsi 设计 huffman 编码 系统 实现 方法 | ||
本发明涉及一种用于VLSI设计的Huffman编码系统及其实现方法,系统包括复位信号检测单元、开始信号检测单元、输入数据扫描单元、输入数据缓存单元、码字频数缓存单元、数据拼接单元、拼接数据缓存单元、Huffman树节点生成单元、构造Huffman树并编码单元、识别叶子节点单元、去掉根节点编码位单元、建立Huffman码表单元、编码输出单元、编码输出结束标志单元、返回开始信号检测单元;实现方法包括:码字频数统计;按照数据格式拼接数据;递归生成Huffman树中所有节点;构造Huffman树的同时得到所有节点对应的编码;从所有节点中识别出叶子节点及其对应的编码;去掉每个叶子节点所对应编码中的根节点编码位;建立Huffman码表并得到每个叶子节点所对应编码的长度;编码输出及其格式。
技术领域
本发明涉及编码系统领域,特别是涉及一种用于VLSI设计的Huffman编码实现系统及其实现方法。
背景技术
目前,在对芯片面积、编码速率和压缩效率要求较高的数据无损压缩系统如视频和图像编码系统等一些领域,基于动态Huffman编码或者传统静态Huffman编码芯片已经很难满足要求。Huffman编码属于最佳熵编码法的同时也是一种前缀码,其数据压缩效率最高。为了提高编码压缩效率的需要通常可采用动态Huffman编码或者静态Huffman编码二种方案。
动态Huffman编码对输入字符的统计是动态进行的,随着待压缩数据的输入,逐步构造Huffman树,因此随着编码的进行,同一个字符的编码可能发生改变(变得更长或更短)。动态Huffman编码算法中每输入一个字符就要更新一次Huffman树,这也导致动态Huffman编码算法非常复杂,需要更多的寄存器和逻辑运算电路。在待压缩数据量不大时,由于不用预先统计待压缩数据中每种字符的频数,相对静态Huffman编码可以节约时钟周期,但随着待压缩数据量的增加,消耗在更新Huffman树上的时钟周期数急剧增加,降低了系统编码速率,不适合对编码速率要求较高且数据量巨大的编码系统。
此外,编码系统通常应该具有与之对应的同样优秀的解码系统才更具有实用价值,然而动态Huffman编码系统每编码完一个字符,解码系统都必须使用和编码系统相同的算法更新Huffman树后才能解压缩一个字符,解压缩效率的低下也导致动态Huffman编码实际应用并不广泛。
静态Huffman编码系统通过对待压缩数据的一次扫描,统计每种字符的出现频数后构造Huffman树并得到每个字符对应的的编码,再对一次扫描中存储的待压缩数据进行遍历得到输出码流。在具备高速率编码功能的同时无需额外的存储器或复杂逻辑运算电路结构,节约芯片面积的同时也保证了整体编码系统的稳定性,这些特点使得其在对编码速率要求较高且数据量巨大的编码系统应用中成为一个很好的选择方案。
然而传统静态Huffman编码系统一般是利用高级编程语言如C/C++语言中丰富的数据结构(如结构体变量和枚举变量)来描述构造Huffman树过程中每一个节点的数据特性(如频数、节点位置关系、在Huffman树中所处层数)并在软件开发平台上完成。在VHDL/Verilog HDL硬件描述语言中并没有高级编程语言中类似结构体或枚举的数据结构,无法将传统静态Huffman编码直接移植到VLSI设计中。
因此,若想要实现适用于VLSI设计的Huffman编码系统,首先必须要在兼顾编码速率、芯片面积和系统功能稳定性的前提下,结合静态Huffman树的构造过程提出了一种新的适合Huffman编码器电路实现的数据格式
另一个问题是传统静态Huffman编码系统中采用先构造Huffman树后编码的算法不适合硬件电路实现且效率很低,因此必须改进静态Huffman编码系统中构造Huffman树的算法。新算法必须要在构造Huffman树的过程中完成每次从队列里递归找到最小的两个节点,并且前一次的递归运算结果作为后一次的输入的同时完成对节点的编码,即在构造Huffman树的过程中完成所有节点的编码。最后根据新的数据格式特点,在Huffman树所有节点中快速匹配找到叶子节点及其对应的编码。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福州大学,未经福州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710276556.7/2.html,转载请声明来源钻瓜专利网。