首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 电子制作
PNG的硬件解码加速设计
来源:本站整理  作者:佚名  2009-05-07 10:00:38




4 PNG核心解码模块的硬件结构
    由于编码长度可变和编码长度不统一,解码时若按位比较来查找Huffman表会消耗很多时间,且PNG数据流中Huffman编码的最长码长为9。因此,为了实现快速查表解码,本算法中将码长小于9的Huffman树的叶结点作为父结点来扩展到9层,即扩展出来的叶结点信息都同父结点一样,每次用固定的9比特压缩数据作为地址去查表。这样可以保证在每一个时钟内都可以查找到相应的字符值,就可以极大地提高硬件解码的效率。以前面的Huffman树为例子(如图4所示),简单地将第4层以内的叶结点补充到第4层,即把整个Huffman二叉树补满,则在第4层的子叶结点的长度和字符信息都同父结点一样。

    这种扩展Huffman树的方法,可以实现迅速查找Huffman表,得到相应的字符值和匹配的组合信息值,对解出匹配的组合信息值,则根据LZ77原则还原出解码数据作为输出。
    该设计中的硬件解码核心模块可参考图5。这种硬件结构的优点是利用扩展码表的方法实现快速解码。核心解码的基本流程为:每次用固定的9 b压缩数据作为地址去查表,查出包含有码长和字符信息的叶结点,并根据码长信息从字符容器模块移出使用过的压缩数据,并等待新进的压缩数据与字符容器剩余的压缩数据组成新的9 b数据作为查表地址。在下一个时钟重复查表的过程,以此方式反复查表直至Huffman解码结束。

5 仿真和综合结果
   
经Modelsim 6.3仿真提取出解码后数据,在Matlab工具中进行对原图显示与该设计解码后提取出的图像数据进行对比,比较结果完全一致,并且在验证平台上比较其对应的原始图像数据也完全吻合,因此,该硬件设计能够完全不失真的恢复PNG图像数据。
    在设计中,使用台积电90 nlTl的工艺库,在100 MHz的频率下对PNG解码核心模块用DC进行综合,结果如表1所示。(其中面积大小和功耗不包括RAM的面积和读写RAM的功耗)

6 结 语
    这里讨论了PNG解码加速的硬件实现方法。其中分析了LZ77和Huffman两种算法的硬件解码原理,以及采用补满Huffman树的机制实现快速查表解码,并运用较优的软硬件协调机制,在节省功耗前的前提下实现PNG硬件解码加速。

上一页  [1] [2] [3]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:30,117.19000 毫秒