簡易檢索 / 詳目顯示

研究生: 林國瑋
Lin, Kuo-Wei
論文名稱: 雙核心嵌入式系統上視訊解碼器優化與平行處理之研究
Video Decoder Optimization and Parallelization for Dual-Core Embedded Systems
指導教授: 郭致宏
Kuo, Chih-Hung
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 電機工程學系
Department of Electrical Engineering
論文出版年: 2010
畢業學年度: 98
語文別: 中文
論文頁數: 95
中文關鍵詞: 數位訊號處理器平行處理離散餘弦轉換係數
外文關鍵詞: DSP, parallel, DCT coefficients
相關次數: 點閱:141下載:3
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 在本篇論文中,研究H.264/AVC視訊解碼器移植到雙核心嵌入式平台後,針對處理器的特性來對視訊解碼器的核心演算法做最佳化,以內嵌有進階精簡指令集機器(ARM)和數位訊號處理器(DSP)的嵌入式平台為例,來探討此嵌入式軟體優化的技術。
    將視訊解碼器移植到ARM嵌入式平台後,由於大量的記憶體存取和複雜的演算法,導致整體解碼效能不佳的主因。為了克服這問題,我們提出軟體優化技巧來優化H.264/AVC視訊解碼器的解碼流程,並將H.264/AVC視訊解碼器中的核心演算法交給DSP去處理,並針對DSP處理器的特性對演算法做最佳化,使DSP處理器可以發揮最大的效能。而且,為了減少多餘的運算,我們判斷離散餘弦轉換(DCT)後的係數對H.264/AVC視訊解碼器中的離散餘弦逆轉換(IDCT)之矩陣運算做化簡。最後,我們使用多執行緒機制來達成兩個核心之間的平行處理,以增加整體系統的解碼效率。
    根據移植到雙核心嵌入式平台的實驗結果顯示,我們所提出的軟體優化方法可以改善嵌入式系統上之視訊解碼器的效能。

    In this thesis, we focus on the algorithm optimization based on the feature of processor after the implementation of H.264/AVC decoder on dual-core embedded system. We use the dual-core embedded platform with ARM and DSP processors for example to illustrate the software optimization. The performance of video decoder is not good on ARM embedded system. The major problems are the amount of memory access and high computational complexity. To overcome these problems, we proposed several optimization techniques to optimize the decoding flow of H.264/AVC. Moreover, the main algorithms of H.264/AVC are excuted using DSP core. In order to reduce the redundant computaition, we simplify the matrix computation of inverse transform based on detecting nonzero DCT coefficients. Finally, we apply a modified H.264/AVC decoder on a dual-core embedded system with parallel processing based on multithread technique. Through these methods, the decoding efficiency of H.264/AVC is improved. Simulation results on the dual-core embedded system show that our proposed methods can actually improve the decoding efficiency of H.264/AVC decoder.

    中文摘要 II ABSTRACT III 致謝 IV 目錄 V 圖目錄 VIII 表目錄 XII 第一章 緒論 1 1-1 研究動機 2 1-2 研究貢獻 4 1-3 論文架構 4 第二章 研究背景 5 2-1 H.264/AVC視訊解碼器 5 2-1-1 畫框內預測 6 2-1-2 動態補償 8 2-1-3 離散餘弦逆轉換 10 2-1-4 去方塊濾波器 10 2-2 雙核心平台環境 13 2-2-1 DM6446硬體架構 13 2-2-2 ARM與DSP溝通架構 14 2-3 Linux多執行緒概念 18 2-4 原始程式碼優化技巧 19 2-4-1 資料劃分法(Data Partation) 19 2-4-2 巢狀迴圈分離法(Loop Nests Splitting) 19 2-4-3 常見的迴圈分離法(Conventional Loop Splitting) 20 2-4-4 常見的迴圈判斷外提(Conventional Loop Unswitching) 21 2-4-5 內建指令(Intrinsic) 22 2-5 其他優化方法介紹 22 2-5-1 超長指令集字元(VLIW)架構處理器優化方法 23 2-5-2 DSP處理器優化方法 24 2-5-3 去方塊濾波器優化方法 27 2-5-4 離散餘弦逆轉換優化方法 31 第三章 軟體優化與平行處理 32 3-1 去方塊濾波器的優化方法(Deblocking Filter) 33 3-1-1 最佳近似濾波順序 33 3-1-2 垂直邊界濾波實現方式 35 3-1-3 橫向封裝像素值之水平邊界濾波實現方式 41 3-2 畫面內預測優化(Intra Prediction) 42 3-3 動態補償優化(Motion Compensation) 44 3-4 離散餘弦逆轉換優化(IDCT) 47 3-4-1 離散餘弦轉換係數分析 48 3-4-2 判斷方式 50 3-4-3 蝴蝶運算流程 52 3-5 雙核心之平行處理架構(Parallelization) 56 3-5-1 巨方塊單位處理流程(MB-level) 56 3-5-2 畫面單位處理流程(Frame-level) 57 3-5-3 多執行緒實現平行處理(Parallelism) 59 3-6 ARM優化方法 60 3-7 共享記憶體配置方法 61 第四章 模擬環境設定與實驗結果 64 4-1 H.264/AVC編解碼器設定 64 4-2 雙核心平台開發環境 65 4-3 實驗結果分析與比較 65 4-3-1 去方塊濾波器優化結果 66 4-3-2 畫面內預測/動態補償優化結果 67 4-3-3 離散餘弦逆轉換優化結果 68 4-3-4 各部分節省時間之比較 70 4-3-5 解碼速度與執行時間 71 第五章 結論與未來展望 79 5-1 結論 79 5-2 未來展望 81 參考文獻 83 附錄A 87 附錄B 90

    [1] T. Wiegand, G.J. Sulivan, G. Bjntegaard, and A. Luthra, “Overview of the H.264/AVC video coding standard,” IEEE Trans. Circuit Syst. Video Tech., vol. 13, no. 7, pp. 560-576, July 2003.
    [2] http://www.ti.com.tw
    [3] Texas Instrument Inc., “TMS320DM6446 Digital Media System-on-Chip,” Literature Number: SPRS283F, Dec. 2005.
    [4] M. Horowitz, A. Joch, F. Kossentini, and A. Hallapuro, “H.264/AVC baseline profile decoder complexity analysis,” IEEE Trans. Circuit Syst. Video Tech., vol. 13, no. 7, pp. 715-727, July 2003.
    [5] P. Li, Y. Lu, H. Wei, and S. Li, “Realization of embedded multimedia system based on dual-core processor OMAP5910,” IMACS CESA, Oct. 2006, pp. 85-91.
    [6] Texas Instrument Inc., “TMS320DM644x DMSoC ARM Subsystem Reference Guide,” Literature Number: SPRUE14B, Mar. 2009.
    [7] Texas Instrument Inc., “Codec Engine Algorithm Creator User’s Guide,” Literature Number: SPRUED6C, Sep. 2007.
    [8] Texas Instrument Inc., “Codec Engine Server Integrator User's Guide,” Literature Number: SPRUED5B, Sep. 2007.
    [9] Texas Instrument Inc., “Codec Engine Application Developer User's Guide,” Literature Number: SPRUE67D, Sep. 2007.
    [10] Texas Instrument Inc., “xDAIS-DM (Digital Media) User Guide,” Literature Number: SPRUEC8B, Jan. 2007.

    [11] POSIX thread (pthread) libraries. Available online at: http://www.yolinux.com/TUTORIALS/LinuxTutorialPosixThreads.html
    [12] Texas Instrument Inc., “TMS320C6000 Programmer’s Guide,” Literature Number: SPRU198I, Mar. 2006.
    [13] X. Zhou, E. Q. Li, and Y. K. Chen, “Implementation of H.264 decoder on general-purpose processors with media instructions,” in Proc. SPIE Symp. Image and Video Commun. and Processing, May 2003, pp. 224-235.
    [14] J. Lee, S. Moon, and W. Sung, “H.264 decoder optimization exploiting SIMD instructions,” in Proc. Circuits and Syst., IEEE Asia-Pacific Symp., Dec. 2004, pp. 1149-1152.
    [15] S. Warrington, H. Shojania, and S. Sudharsanan, “Performance improvement of the H. 264/AVC deblocking filter using SIMD instructions,” IEEE Int. Symp. Circuits Syst., Sep. 2006, pp. 2697-2700.
    [16] P. P. Dang, “An efficient implementation of in-loop deblocking filters for H.264 using VLIW architecture and predication,” in Proc. IEEE Int. Symp. Consumer Electron., Jan. 2005, pp. 291-292.
    [17] F. Pescador, C. Sanz, M. J. Garrido, C. Santos, and R. Antoniello, “A DSP based IP set-top box for home entertainment,” in Proc. IEEE Int. Symp. Consumer Electron., vol. 52, pp. 254-262, Jan. 2006.
    [18] F. Pescador, M. J. Garrido, C. Sanz, E. Juarez, A. M. Groba, and D. Samper, ”A real-time H.264 BP decoder based on a DM642 DSP”, Int. Symp. Signal Process. Commun., Nov. 2007, pp. 1491-1494.
    [19] F. Pescador, C. Sanz, M. J. Garrido, E. Juarez, and D. Samper, “A DSP based H.264 decoder for a multi-format IP set-top box,” IEEE Trans. Consumer Electron., vol 54, pp. 145-153, Feb. 2008.
    [20] F. Pescador, G. Maturana, M.J. Garrido, E. Juarez, and C. Sanz, “An H.264 video decoder based on a DM6437 DSP,” in Proc. IEEE Int. Symp. Consumer Electron., May 2009, pp. 1-2.
    [21] F. Pescador, G. Maturana, M. J. Garrido, E. Juarez, and C. Sanz, “An H.264 video decoder based on a latest generation DSP,” IEEE Trans. Consumer Electron., vol. 55, no. 1, pp. 205-212, Feb. 2009.
    [22] Texas Instruments. TMS320DM642 Video/Imaging Fixed-Point Digital Signal Processor. Available online at:
    http://focus.ti.com/docs/prod/folders/print/tms320dm642.html.
    [23] Texas Instrument Inc., “EDMA v3.0 (EDMA3) Migration Guide for TMS320DM644x DMSoC,” Literature Number: SPRAAA6, Dec. 2005.
    [24] L. Hui, X. Ru, and L. Zhi, “Implementation of H.264 on TMS320DM642,” in Proc. Embedded Software and Syst., July 2008, pp. 605-609.
    [25] V. Ramadurai, S. Jinturkar, M. Moudgill, and J. Glossner, “Implementation of H.264 decoder on Sandblaster DSP,” in Proc. IEEE Int. Symp. Multimedia and Expo, July 2005.
    [26] Sandbridge Technologies, “Sandblaster DSP Overview”, www.sandbridgetech.com
    [27] Y. Moshe and N. Peleg, “Implementations of H.264/AVC baseline decoder on different digital signal processors,” in Proc. 47th Int. Symp. ELMAR, Jun. 2005, pp. 37-40.
    [28] H. Chen, R. Hu, and Y. Gao, "An effective method of deblocking filter for H.264/AVC", Int. Symp. Commun. Information Tech., Oct. 2007, pp. l092-1095.
    [29] Z. Yang, W. Gao, Y. Liu, and D. Zhao, “Deeply pipelined DSP solution to deblocking filter for H.264/AVC,” IEEE Trans. Consumer Electron., vol. 52, no. 4, pp. 1267-1274, Nov. 2006.
    [30] W. C. Lin, “The memory access optimization techniques for video decoders on embedded system platforms,” M.S. thesis, Nat. Cheng Kung Univ., Tainan, Taiwan, Jun. 2009.
    [31] Texas Instrument Inc., “DVEVM Getting Started Guide,” Literature Number: SPRUE66, Mar. 2006.
    [32] T. M. Liu, W. P. Lee, T. A. Lin and C. Y. Lee, “A memory-efficient deblocking filter for H.264/AVC video coding,” IEEE Int. Symp. Circuits Syst., May 2005, pp. 23-26.

    下載圖示 校內:2013-09-06公開
    校外:2013-09-06公開
    QR CODE