huffman编码的程序流程图_Xilinx哈夫曼编码系统设计

本文介绍了在Xilinx平台上设计并实现的哈夫曼编码硬件电路,该电路包括数据排序、编码和输出三个核心模块。通过流水线结构实现数据排序,自顶向下的方式完成哈夫曼编码,保证了高效的数据编码和输出。经过验证,该电路编码正确,具有较高的工作频率和编码效率。
摘要由CSDN通过智能技术生成

作者 孟欢 包海燕 潘飞 电子科技大学 微电子与固体电子学院(四川 成都 610054)本文引用地址:http://www.eepw.com.cn/article/201710/370668.htm

*集成电路创新创业大赛三等奖

孟欢(1991-),女,硕士生,研究方向:数字系统设计。

摘要:在图像处理、文件传真、视频压缩编码中,哈夫曼编码是最常用的一种编码方式。本文设计并实现了对一段数字序列进行哈夫曼编码并将编码结果串行输出的电路模块,电路由输入数据的排序、数据的哈夫曼编码、数据序列编码的结果输出三个核心模块组成,在Xilinx平台上通过硬件描述语言实现该电路。仿真结果表明,该电路编码正确,并具有较高的工作频率和编码效率。

引言

哈夫曼编码是一种可变字长的无损编码方式。对于出现概率大的元素编以短字长的码,对于出现概率小的元素编以长字长的码,来实现平均码长最短。多媒体技术的广泛应用导致数据量的迅速增大,对哈夫曼编码在速度上有了更高的需求。利用硬件设计的大流量和并行性处理的优势,可以大大地提高编码效率和传输速度。哈夫曼编码的核心即建立最优二叉树,各元素的路径就是它所对应的编码结果。主要内容包括数据的排序和元素的编码两个方面。

本文是完全在硬件条件下实现哈夫曼编码设计的,在排序部分采用流水线结构,通过流水线实现对数据频数比较,控制数据按照频数大小由小到大排序。在编码模块创新性地采用自顶而下的查找方式,由状态机寻址得到父节点的哈夫曼编码,进而得到左右子节点的哈夫曼编码结果。在输出模块中通过4个寄存器对编码结果进行缓存,控制寄存器读写指针进行编码结果的缓存与输出,保证数据输出的连续性。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值