新聞中心

        EEPW首頁 > 消費電子 > 設計應用 > PNG的硬件解碼加速設計

        PNG的硬件解碼加速設計

        作者: 時間:2009-05-07 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/166979.htm

        4 核心模塊的結構
        由于編碼長度可變和編碼長度不統一,時若按位比較來查找Huffman表會消耗很多時間,且數據流中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工具中進行對原圖顯示與該解碼后提取出的圖像數據進行對比,比較結果完全一致,并且在驗證平臺上比較其對應的原始圖像數據也完全吻合,因此,該硬件能夠完全不失真的恢復圖像數據。
        在設計中,使用臺積電90 nlTl的工藝庫,在100 MHz的頻率下對PNG解碼核心模塊用DC進行綜合,結果如表1所示。(其中面積大小和功耗不包括RAM的面積和讀寫RAM的功耗)

        6 結 語
        這里討論了PNG解碼的硬件實現方法。其中分析了LZ77和Huffman兩種算法的硬件解碼原理,以及采用補滿Huffman樹的機制實現快速查表解碼,并運用較優的軟硬件協調機制,在節省功耗前的前提下實現PNG硬件解碼


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 丘北县| 石门县| 体育| 镇巴县| 玉门市| 大渡口区| 通化市| 祥云县| 榆社县| 新宁县| 来宾市| 仁布县| 林芝县| 潼南县| 淮阳县| 古田县| 无锡市| 宣化县| 墨脱县| 咸宁市| 衢州市| 容城县| 伊吾县| 怀集县| 永安市| 乐都县| 汝城县| 棋牌| 曲水县| 葫芦岛市| 英吉沙县| 扶沟县| 洛隆县| 扎兰屯市| 长春市| 广饶县| 温宿县| 手机| 嘉荫县| 文登市| 南投市|