《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > H.265/HEVC熵解碼的分組并行流水線實現
H.265/HEVC熵解碼的分組并行流水線實現
電子技術應用
王世豪,周志剛,郭 旭,殷先英,薛曉娜,趙靖宇
(杭州電子科技大學 電子信息學院,浙江 杭州 310018)
摘要: 針對高效視頻編碼(H.265/HEVC)中CABAC熵解碼模塊的高資源消耗和數據依賴性,設計了一種多路并行的高效FPGA實現結構。根據不同類型語法元素特性,采用分組并行數據調度方法,減少數據處理等待時間和內部存儲器訪問次數,同時利用流水線技術實現運算加速。評估驗證結果表明,熵解碼模塊吞吐量可以達到1.64位元/時鐘周期,滿足當下超高清視頻實時解碼的要求。
關鍵詞: H.265HEVC CABAC FPGA
中圖分類號:TN919.81 文獻標志碼:A DOI: 10.16157/j.issn.0258-7998.223285
中文引用格式: 王世豪,周志剛,郭旭,等. H.265/HEVC熵解碼的分組并行流水線實現[J]. 電子技術應用,2023,49(10):59-64.
英文引用格式: Wang Shihao,Zhou Zhigang,Guo Xu,et al. Parallel pipeline implementation of H.265/HEVC entropy decoding[J]. Application of Electronic Technique,2023,49(10):59-64.
Parallel pipeline implementation of H.265/HEVC entropy decoding
Wang Shihao,Zhou Zhigang,Guo Xu,Yin Xianying,Xue Xiaona,Zhao Jingyu
(School of Electronics and Information, Hangzhou Dianzi University, Hangzhou 310018, China)
Abstract: To reduce the high resource consumption and high data dependency of the CABAC entropy decoding module in the new generation of High Efficiency Video Coding (H.265/HEVC), a multiple parallel CABAC decoding hardware circuit architecture is designed. According to the characteristics of different types of grammar elements in the decoding process, grouped parallel data scheduling is used to reduce the waiting time and the number of internal memory accesses for data processing, while pipeline technology is used to achieve acceleration of the arithmetic module. The design results show that the entropy decoding module has a throughput of 1.84 bins/clock cycle, meeting the current requirements for real-time decoding of UHD video.
Key words : H.265/HEVC;CABAC;FPGA

0 引言

與H.264/AVC相比,視頻壓縮標準H.265/HEVC能夠在相同的圖像質量下實現更低的碼率,即更高的壓縮比[1]。基于上下文的二進制自適應算術編碼(Context-Adaptive Binary Arithmetic Coding, CABAC)是H.265/HEVC支持的熵編碼方案。CABAC在熵編碼方案中具有極高的數據壓縮率,相對于另一種熵編碼方案基于上下文的自適應可變長編碼(Context-Adaptive Variable Length Coding, CAVLC),在同等編碼質量下,CABAC可節約10%~15%的比特率。

在CABAC中,上下文建模的保持與更新需要大量的計算和內部存儲器件的訪問。在解碼過程中,語法元素需要其前面的語法元素來確定上下文地址,在每個binVal被解碼獲得時,解碼過程需要檢查流是否被更改或保持在相同的語法元素中。因此,解碼過程比編碼過程具有更多的依賴性。同時,在標準的熵解碼流程中,由于位流指針(binIdx)的存在,導致熵解碼過程串行程度過高,占用了較長的解碼時間。導致CABAC模塊成為視頻解碼器的吞吐量瓶頸。因此,有必要針對以上問題設計一種高并行、高吞吐量的硬件結構。

目前CABAC解碼器的工作可以分為3類,分別是基于流水線的時域并行性擴展、基于單周期的多位解碼、基于預測的解碼和基于子區間重排序的解碼。文獻[2-3]通過流水線的方式擴展時域并行性,但碼流之間的高數據依賴使反饋環路串行程度過高,導致在流水線架構中過多的時鐘冗余。文獻[4-9]通過增加額外的解碼邏輯來增加每周期的解碼輸出位,但該種方法實現的時鐘速率較低。文獻[8-9]通過使用基于預測解碼的方法節省了預存解碼信息的硬件開銷,但帶來了額外的關鍵路徑延遲,且有較高的預測失誤懲罰,導致了較低的吞吐量。文獻[10]提出適用于HEVC的多路并行硬件CABAC解碼器架構。該CABAC解碼器采用multi-bin解碼方式,其吞吐量可達到3 026 Mbins/s。這種結構改進算術編碼(子區間重排序),縮短了關鍵路徑,但這種架構前端的碼流控制容易出現性能瓶頸。文獻[11]在算術編碼子區間重排序的基礎上,采用5級流水線的結構,進一步使用鎖存器來減少熵解碼的面積開銷,布局布線后可實現峰值為1 696 Mbins/s的解碼性能。但使用子區間排序后,編碼器和解碼器必須同時使用才能保證編解碼一致性,實用性不高。

針對上述方法存在的不足,本文根據CABAC解碼算法特點和FPGA硬件高并行的特性,提出了一種多路并行的CABAC解碼器。通過將語法元素分組并行處理,減少了內部寄存器使用與訪問次數,優化了關鍵路徑,增加了CABAC解碼器的吞吐量,并且在編碼端不需做任何特殊配置,所提出的結構實用性很高。



本文詳細內容請下載:http://www.j7575.cn/resource/share/2000005714




作者信息:

王世豪,周志剛,郭旭,殷先英,薛曉娜,趙靖宇

(杭州電子科技大學 電子信息學院,浙江 杭州 310018)

微信圖片_20210517164139.jpg

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 视频一区二区三区自拍 | 狠狠干五月 | 久久国产精品麻豆映画 | 全国男人的天堂天堂网 | 四虎地址8848jia | 国内精品久久久久久久久久久久 | 成人欧美1314www色视频 | 可以免费看毛片的网站 | 一级全免费视频播放 | 久久久综合色 | 看片一区 | 四虎影片国产精品8848 | 九七视频在线观看 | 欧美视频一级 | 伊人精品在线 | 久青草视频免费观看青 | 狠狠五月天 | 国产一级毛片电影 | 四虎影视库国产精品一区 | www.成人网| 久久精品视频一区 | 亚洲狠狠97婷婷综合久久久久 | 久久久久久久男人的天堂 | 王朝的女人在线观看免费完整 | 99在线视频免费 | 春色视频一区二区三区 | 99视频在线观看视频 | 亚州综人网 | 日韩在线看免费高清完整版 | 婷婷丁香六月天 | 国产在线视频国产永久视频 | 国产一级性片 | 五月天丁香婷婷综合 | 欧美无专区 | 久久亚洲精品视频 | 四虎免费看 | 国产精品理论电影 | 激情五月开心婷婷 | 国产成人一区二区三区影院免费 | 国产一级免费视频 | 精品suv一区二区三区 |