[發明專利]一種適合硬件實現的快速指數哥倫布碼解碼方法無效
| 申請號: | 200910099561.0 | 申請日: | 2009-06-18 |
| 公開(公告)號: | CN101707484A | 公開(公告)日: | 2010-05-12 |
| 發明(設計)人: | 劉亮;陳日儀 | 申請(專利權)人: | 杭州高特信息技術有限公司 |
| 主分類號: | H03M7/40 | 分類號: | H03M7/40;H04N7/26;H04N7/50 |
| 代理公司: | 浙江杭州金通專利事務所有限公司 33100 | 代理人: | 沈孝敬 |
| 地址: | 310012 浙江省杭州市西*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 適合 硬件 實現 快速 指數 哥倫布 解碼 方法 | ||
所屬技術領域
本方法用于在硬件ASIC上實現快速AVS、H.264等視頻編碼碼流中的的指數哥 倫布碼解碼。
背景技術
AVS和H.264標準中都采用自適應變長編碼技術——指數哥倫布碼。指數哥倫 布碼是一種變長碼,因此其碼長也是由其碼字內容決定的。然而指數哥倫布碼又有 區別于通常的變長碼,它具有對應于階數的固定形式,不像一般的變長碼具有對應 的碼表。這就是說當一個碼字是由指數哥倫布編碼時,不需要知道它的變長碼碼表, 而只要根據它的階數按照表的規則構造出一張碼表來。解析k階指數哥倫布碼時,首 先從比特流的當前位置開始尋找第一個非零比特,并將找到的零比特個數記為 leadingZeroBits,然后根據leadingZeroBits計算CodeNum。下表給出了0階、1階、2 階指數哥倫布碼的結構。指數哥倫布碼的比特串分為“前綴”和“后綴”兩部分。前綴 由leadingZeroBits個連續的‘0’和一個‘1’構成。后綴由leadingZeroBits+k個比特構成, 即表中的xn串,xn的值為‘0’或‘1’。
在ASIC上以通常的串行實現指數哥倫布碼解碼時,碼流逐位送入解碼器,解 碼器通過逐位匹配實現可變長碼的解碼。由于這種方式采用逐位操作方式,而可變 長碼的碼長又各不相同,使得碼字識別所需的運行周期也不相同。在解碼長較短、 階數低的碼字時,其解碼速度較快,而在解碼長較長、階數高的碼字時,其解碼速 度較慢。顯然,位串行解碼方案效率相對較低,解碼速度因碼字長度不同而不同, 無法滿足某些對實時性要求較高的應用場合。另一種常用的PLA解碼算法,其特點 是因為容易實現,且可靠。PLA是一種特殊的ROM,它用較少的存儲單元就能存儲 大量的信息。但用PLA實現解碼時,當碼字的CodeNum不大時可以很好地在硬件上 得到綜合并實現解碼功能;但是當該碼字的CodeNum的范圍超過210時,生成的PLA 碼表很難得到速度和面積上均令人滿意的結果結果,而且大的PLA碼表會導致電路 的關鍵路徑過長,因此,純粹的PLA并行解碼算法不適合解CodeNum大的指數哥倫 布碼。綜上所述,以完全串行或完全并行的方式都不能很好的在硬件上實現指數哥 倫布碼的解碼。
發明內容
為了解決純串行解碼在解碼長較長、階數高的碼字時,其解碼速度較慢、純并 行解碼速度和面積不理想,而且電路的關鍵路徑過長等問題,本方法提供一種適合 硬件實現,電路面積小、工作頻率低、存儲數據少的快速實現指數哥倫布碼解碼的 方法。
解決上述問題采用的技術方案是:一種適合硬件實現的快速指數哥倫布碼解碼 方法,其特征是按以下步驟進行:
(1)解碼器每次并行輸入32位定長的未解碼數據串;
(2)將該數據串中的高位數據與一組同樣長度的二進制數比較,確定零比特 個數,進而根據指數哥倫布碼的階數確定有效碼字長度;所述的一組二進制數的數 值分別為20、21、22......2n-1,其中,n是比較器的個數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于杭州高特信息技術有限公司,未經杭州高特信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910099561.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:校線燈
- 下一篇:耐磨性電液動扇形閘門





