| 研究生: |
方得龍 Te-Lung Fang |
|---|---|
| 論文名稱: |
符合低功率與高吞吐量考慮的自適應可變長度解碼器架構設計 Architecture Design of CAVLC Decoder with Low Power and High Throughput Considerations |
| 指導教授: |
蔡宗漢
Tsung-Han Tsai |
| 口試委員: | |
| 學位類別: |
碩士 Master |
| 系所名稱: |
資訊電機學院 - 電機工程學系 Department of Electrical Engineering |
| 畢業學年度: | 96 |
| 語文別: | 英文 |
| 論文頁數: | 58 |
| 中文關鍵詞: | 熵解碼 、平行架構 、低功率考量 |
| 外文關鍵詞: | H.264 decoder, CAVLC decoder, multi-symbol, low power consideration |
| 相關次數: | 點閱:10 下載:0 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
熵解碼器在MPEG-4 AVC/H.264基線標準中採用的是自適應可變長度解碼器。因為資料相依性的原因,傳統的自適應可變長度解碼器在解碼時會消耗大量的時脈週期、降低解碼器的效能。透過分析子模組的運算量與編碼規則,我們發現其中兩個係數的解碼運算會耗費將近百分之八十的運算時間,分別是非零係數(Level)與非零係數前零的數目(Run_before)。因此,此篇論文提出一套適用於Run_before解碼器的快速演算法和Level解碼器的平行架構設計,大量地提升了解碼的效率。根據這兩種方法的特色,我們分別稱為MLD(Multiple Level Decoding)和NZS(Non-Zero Skipping for run_before decoding)。首先,使用平行處理的架構設計非零係數(Level)解碼器,MLD的方法可以在大部分的情況下以一個時脈週期解出兩個係數(Level),而NZS方法更可以達到在同一時脈週期內產生多組係數(Run_before)。這兩種方法各自具有規則性和低複雜度設計的優點。根據比較的結果,一個Macroblock的解碼,我們的設計所需要的運算時脈最少,平均只有137個時脈週期。而估算的結果顯示,我們設計的自適應可變長度解碼器在操作頻率33.5MHz的條件下就可以達到解析度1920×1088及每秒30張的H.264影像解碼需求。相較於之前的自適應可變長度解碼器設計,此電路可以降低操作頻率約29.1% ~ 71.5%,便可達到相同規格的需求,同時合成的結果也顯示在邏輯閘的個數上並無明顯的增加。藉由降低操作頻率這樣的方式,此設計將適用於多數低功率消耗的應用。最後我們使用TSMC 0.18um標準元件庫做電路合成,將設計付諸實現成硬體。合成結果顯示,在125MHz的時脈頻率限制下,電路使用了13189個邏輯閘,而且最高操作頻率可達160MHz。
在研究期間我們也彙整了相關的研究成果並投稿2007年的IEEE亞洲固態電路會議,同年該論文於韓國濟洲發表。論文題目名稱為A Novel Design of CAVLC Decoder with Low Power Consideration,論文編號為P1236。
The entropy decoder in MPEG-4 AVC/H.264 baseline standard adopts Content Adaptive Variable Length Decoder (CAVLD). Because of symbol-to-symbol dependency, a traditional CAVLC decoder consumes lots of clock cycles in decoding and brings down the performance. We discover the decoding of two parameters spending almost eighty percent of computing time through profiling the computation of sub-modules and analyzing the encoding rules, which are non-zero coefficient (Level) and run_before. Thus this paper proposes a fast algorithm adapted for run_before decoder and the parallel architecture for level decoder, to improve the decoding performance. According to the features of these two methods, we name these two new methods as MLD (Multiple Level Decoding) and NZS (Non-Zero Skipping for run_before decoding). By performing parallel operation on level decoder, MLD can decode two levels in one cycle at most situations, and NZS can produce several values of run_before in the same cycle. These two methods have the advantages of low complexity and regularity design. According to the result of evaluation, our design needs least cycle time, 137 cycles in average, for one macroblock decoding. Moreover, the proposed CAVLC decoder can run at 33.5 MHz to meet the real time requirement for H.264 video decoding on 1920×1088 resolution. Compared with the previous designs, it can reduce around 29.1% to 71.5% on operation frequency for the same requirement, but even no increase on the gate count. With an aid on a lower operation frequency, it will be suitable for many low power applications. Our proposed design has been implemented and synthesized with TSMC 0.18um Standard Cell Library. The synthesis result shows that the gate count is 13189 gates with the clock constraint of 125 MHz, and the maximum frequency is up to 160 MHz.
[1] ITU-T Rec.H.264/ISO/IEC 11496-10, “Advanced Video Coding “, Final Committee Draft, Document JVT-E022, September 2002.
[2] V. Lappalainen, A. Hallapuro, and T. D. Hämäläinen, “Complexity of optimized H.26L video decoder,” IEEE Trans. Circuits and Syst. Video Technol., vol. 13, no.7 pp.717-725, July 2003.
[3] M. Horowitz, A. Joch, F. Kossentini, and A. Hallapuro, “H.264/AVC baseline profile decoder complexity analysis,” IEEE Trans. Circuits and Syst. Video Technol., vol. 13, no.7 pp.704-716, July 2003.
[4] Xue Quan; Liu Jilin; Wang Shijie; Zhao Jiandong, “H.264/AVC baseline profile decoder optimization on independent platform”, WCNM, pp. 1253 – 1256, Sept. 2005.
[5] X. Qin, X. Yan, “A memory and speed efficient CAVLC decoder”, Proc. of SPIE, vol.5960, pp.1418 – 1426, Jul. 2005.
[6] Yi-Chih Chao, Shih-Tse Wei, Jar-Ferr Yang and Bin-Da Liu, “Combined CAVLC Decoder and Inverse Quantizer for Efficient H.264/AVC Decoding”, APCCAS, pp. 259 – 262, Dec. 2006.
[7] Shau-Yin Tseng; Tien-Wei Hsieh, “A Pattern-Search Method for H.264/AVC CAVLC Decoding”, ICME, pp. 1073 – 1076, July 2006.
[8] Yong Ho Moon, “A New Coeff-Token Decoding Method With Efficient Memory Access in H.264/AVC Video Coding Standard”, IEEE Trans. Circuits and Syst. Video Technol., vol. 17, issue 6, pp.729 – 736, June 2007.
[9] D. W, G. Wen, M. H., and Z. Ji, “A VLSI architecture design of CAVLC decoder”, ASIC 2003. Proceedings. 5th International Conference, pp. 962-965, Oct. 2003.
[10] Mythri Alle, J Biswas, and S. K. Nandy, “High Performance VLSI Architecture Design for H.264 CAVLC Decoder”, ASAP, pp. 317 – 322, Sept. 2006.
[11] Guo-Shiuan Yu, and Tian-Sheuan Chang, “A Zero-Skipping Multi-symbol CAVLC Decoder for MPEG-4 AVC/H.264”, ISCAS, pp. 5583 – 5586, May 2006.
[12] Ya-Nan Wen, Guan-Lin Wu, Sao-Jie Chen and Yu-Hen Hu, “Multiple-Symbol Parallel CAVLC Decoder for H.264/AVC”, APCCAS, pp. 1240 – 1243, Dec. 2006.
[13] Tsa, Tsung-Han; Fang, De-Lung; Pan, Yu-Nan, “A Hybrid CAVLD Architecture Design with Low Complexity and Low Power Considerations”, IEEE ICME, pp:1910 – 1913, July 2007.
[14] H-C Chang, C-C Lin, J-I Guo, “A Novel Low-Cost High-Performance VLSI Architecture for MPEG-4 AVC/H.264 CAVLC Decoding”, ISCAS, pp. 6110 – 6113, May 2005.
[15] Yong Ho Moon, Gyu Yeong Kim, and Jae Ho Kim, “An Efficient Decoding of CAVLC in H.264/AVC Video Coding Standard”, Consumer Electronics, IEEE Transactions on, Volume 51, Issue 3, pp. 933 – 938, Aug. 2005.
[16] Heng-Yao Lin, Ying-Hong Lu, Bin-Da Liu, and Jar-Ferr Ynag, “Low Power Design of H.264 CAVLC Decoder”, ISCAS, pp. 2689 – 2692, May 2006.
[17] Iain E.G. Richardson, H.264 and MPEG-4 Video Compression – video coding for next generation multimedia, John Wiley & Sons, pp. 198 – 207, 2003.
[18] Tai-Lun Chang; Ying-Ming Tsai; Chih-Da Chien; Chien-Chang Lin; Jiun-In Guo, “A high-performance MPEG4 bitstream processing core”, ICME, pp. 467 – 470, June 2004.
[19] K. Sühring, Ed., (2007) JVT Reference Software JM 11.0, [Online]. Available: http://bs.hhi.de/~suehring/tml
[20] Tony Gladvin George, and Dr.N.Malmurugan, “A New Fast Architecture for HD H.264 CAVLC Multi-syntax Decoder and its FPGA Implementation”, ICCIMA, pp.118 – 122, Dec. 2007.
[21] Jeonhak Moon and Seongsoo Lee, “Design of H.264 AVC Entropy Decoder without Internal ROMRAM Memories”, ISCCSP, pp. 1464 – 1467, March 2008.