《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 一種基于TMS320C6678多核處理器的JPEG實時解碼優化算法
一種基于TMS320C6678多核處理器的JPEG實時解碼優化算法
2017年電子技術應用第6期
彭益智
江蘇自動化研究所,江蘇 連云港222061
摘要: 針對電子信息系統應用中數字視頻的實時處理要求,在解析JPEG解碼原理的基礎上,針對多核DSP的系統架構,提出了多核DSP任務并行設計方法,設計了基于TMS320C6678的JPEG解碼系統,實現了解碼任務并行流水和核間高效通信。實驗結果表明,基于TMS320C6678的JPEG解碼系統的實時處理能力有很大提升,在電子信息系統數字視頻傳輸與處理領域有廣泛應用前景。
中圖分類號: TP317
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.06.011
中文引用格式: 彭益智. 一種基于TMS320C6678多核處理器的JPEG實時解碼優化算法[J].電子技術應用,2017,43(6):45-47.
英文引用格式: Peng Yizhi. A JPEG real-time decoding optimization algorithm based on multicore DSP TMS320C6678[J].Application of Electronic Technique,2017,43(6):45-47.
A JPEG real-time decoding optimization algorithm based on multicore DSP TMS320C6678
Peng Yizhi
Jiangsu Automation Research Instisute,Lianyungang 222061,China
Abstract: Focus on the real-time processing requirement for digital video in electronic information system applications, based on the analysis of JPEG decoding, proposes a method of multicore DSP task-level parallel implementation for the system architecture of multicore DSP, and design a JPEG decoding system based on TMS320C6678, implement decoding task-level parallel pipeline and efficient inter-core communication. Experimental results show that the real-time processing capability of JPEG decoding system based on TMS320C6678 has improved so much and broaded application prospect in the field of digital video transmission and processing of electronic information systems.
Key words : digital video;JPEG;multicore DSP;TMS320C6678;real-time

0 引言

    在艦船指揮控制系統中,要求數字視頻信號準確、實時地傳輸,共享圖像資源。隨著微電子技術的發展,DSP廠商嘗試采用多核處理器構架來滿足電子信息系統日益增長的實時處理性能要求。針對數字視頻在電子信息系統應用中的實時處理要求,本文基于TI公司TMS320C6678(簡稱C6678)多核DSP的系統架構,提出了多核DSP任務并行設計方法,設計了基于C6678的JPEG解碼系統,實現了核間高效通信和解碼任務并行流水,提高了JPEG解碼系統的實時處理能力。

1 JPEG解碼算法原理

    JPEG是成熟的圖像壓縮標準,根據人眼視覺特性,去除數據冗余信息,達到壓縮圖像的目的。JPEG編碼算法先將源圖像數據分塊,經前向離散余弦變換(FDCT)、量化和熵編碼處理,輸出壓縮數據[1]。

    JPEG解碼算法流程是編碼算法的逆過程。壓縮數據輸入解碼器,按位讀取以識別Huffman碼字,對照編碼表進行熵解碼,輸出8×8的DCT系數矩陣,經反量化、反向離散余弦變換(IDCT),8×8的DCT系數矩陣變換為8×8的數據塊,經反向層平移、色彩模型轉換,重建圖像[2]。JPEG編解碼算法流程如圖1所示。

wdz3-t1.gif

2 基于TMS320C6678多核處理器的JPEG實時解碼優化算法

2.1 多核DSP任務并行設計方法

    多核DSP任務并行設計方法適用于解決復雜算法在多核DSP平臺的設計問題,包含算法模塊化分解、模塊間通信分析、模塊間通信優化和模塊的多核加載4個步驟。任務并行方式主要有主從模式和數據流模式[3]。

    主從模式的特點是集中控制和分散執行。一個處理核設為Master,它調度所有的任務,其他的處理核都為Slave。該模式要解決好處理核之間實時負載平衡問題。主從模式如圖2所示。

wdz3-t2.gif

    數據流模式的特點是分散控制和分散執行。處理核加載不同的運算法則處理數據,再將數據傳遞到下一個處理核,通過查詢數據的有效性或發送消息來激活處理核。適用數據流模式的程序通常包含較高計算復雜度的模塊,且模塊間存在緊密的數據依賴。運用該模式時,各個處理核之間有大量的數據要傳輸,要求系統帶寬高,并且難以平衡核間負載,處理性能受限于計算負載最大的核[2]。數據流模式如圖3所示。

wdz3-t3.gif

2.2 實時解碼優化算法設計

    TMS320C6678是基于先進的KeyStone處理器構架,集成8個C66x核,運算能力強,網絡性能優越,支持圖像、視頻等信號處理應用。運用多核DSP任務并行設計方法,在C6678平臺上設計JPEG解碼算法,主要步驟包括算法分解、通信分析、通信優化和多核加載。

2.2.1 算法分解

    將算法盡可能分解為小的模塊,有利于發現算法的并行性。分解時,要結合考慮模塊計算量以及模塊之間的結合性、耦合性,分解點一般選擇在結合性較高、耦合性較低的地方[2]。JPEG解碼算法可分為下面8個模塊[1]:(1)初始化;(2)熵解碼;(3)DC系數解碼;(4)AC系數解碼;(5)反Z字形掃描;(6)反量化;(7)逆向離散余弦變換(IDCT);(8)色彩空間轉換。

    模塊之間數據聯系緊密,且熵解碼和IDCT模塊的計算復雜度較高,所以為JPEG解碼算法選擇數據流任務并行模式。壓縮圖像數據經熵解碼,輸出解碼中間符號,然后經DC系數、AC系數解碼,輸出64個DCT系數,經反Z字形掃描、反量化、IDCT和色彩空間轉換,最后重建圖像。解碼過程中發現,DC系數解碼和AC系數解碼模塊存在數據聯系,模塊間耦合性較強,Z字形掃描、反量化、IDCT和色彩空間轉換模塊間結合性較強。

2.2.2 通信分析

    算法分解后,一般這些模塊不能獨立執行,因為模塊之間需要傳輸命令和數據,這是模塊間的通信需求。

    控制流程表示模塊的執行順序,加載到不同處理核的模塊通過發送消息來實現同步,模塊間還有數據傳輸需求,這些通信會給系統帶來延遲時間,控制流程的設計目的是系統處理能力最大化。數據流程表示模塊間數據傳輸的方向,描述數據與模塊的關系,數據流程的設計目的是模塊間數據通信量最小化。

    JPEG解碼算法通信分析如圖4所示,分為模塊層和數據層,實線箭頭代表數據傳輸,虛線箭頭代表命令傳輸。

wdz3-t4.gif

2.2.3 通信優化

    通信分析后,為了實現多核DSP內核間高效通信,使算法高效執行,模塊間通信需要優化。模塊計算量小且與其他模塊耦合性較強,可將模塊與其他模塊合并為子系統,模塊間數據傳輸轉變為子系統內數據讀寫。

    針對JPEG解碼算法,DC系數解碼和AC系數解碼模塊共同處理DCT系數的DC系數和AC系數,這兩個模塊間耦合性較強,且模塊的計算量較小,將DC系數解碼、AC系數解碼和熵解碼合并為解碼子系統。反Z字形掃描、反量化、IDCT和色彩空間轉換模塊結合性較強,在解碼過程中,這4個模塊間傳輸的數據量相當龐大,除了IDCT,其他3個模塊的計算量都很小,將它們合并為DCT子系統,這樣模塊間通信變為子系統內數據讀取,減少了模塊間通信。優化后的JPEG解碼算法分為初始化模塊、解碼子系統和DCT子系統3部分,減少了模塊數量,優化了模塊間通信。

    通信優化后的模塊通信如圖5所示,分為模塊層和數據層,實線箭頭代表數據傳輸,虛線箭頭代表控制命令的傳輸。

wdz3-t5.gif

2.2.4 多核加載

    通信優化后,根據算法適合的任務并行模式,將模塊、子系統加載到不同處理核,實現算法的任務級并行流水處理。

    將初始化模塊、解碼子系統和DCT子系統加載到不同處理核,實現算法的任務級流水。由于解碼和DCT子系統計算復雜度較高,限制了任務級流水的處理速度,為了充分發揮多核處理器性能,也對應于JPEG編碼算法采用的映射方式,將這兩個子系統映射到多個處理核,以核級并行流水來提升系統的解碼速度。C6678的8個C66x核的編號為0~7,核0負責系統初始化,核1、2、3執行解碼子系統,解碼后的數據分別傳遞到核4、5、6,并執行DCT子系統,核1與4、2與5、3與6組成3條處理核級的并行流水線,如圖6所示。

wdz3-t6.gif

2.3 設計實現

    利用CCS5.0提供的SYS/BIOS和IPC組件,SYS/BIOS組件用于任務調度,IPC組件用于核間通信。

    C6678的8個處理核為CORE0~CORE7,處理核初始化完成后等待同步消息。為實現內核間高效通信,CORE0與CORE1、2、3間的通信采用最小通信模式,CORE1與CORE4、CORE2與CORE5、CORE3與CORE6間的通信采用數據傳輸模式?;贑6678的并行JPEG解碼系統的整個處理流程如圖7所示。

wdz3-t7.gif

3 實驗結果分析

    為檢驗基于C6678的JPEG解碼系統的處理能力,將相同的算法運行在C6416、C6678的單C66x核上比較,實驗數據如表1所示。

wdz3-b1.gif

    根據測試結果可知,優化前,JPEG解碼算法具有基本相同的復雜度,基于C66x內核的系統處理能力是基于C6416的系統的4.03倍;基于C6678的JPEG解碼系統的處理能力是基于C66x內核的系統的4.65倍,是基于C6416的系統18.77倍。優化后,JPEG解碼算法復雜度略有不同,基于C66x內核的系統處理能力是基于C6416的系統的2.93倍;基于C6678的并行JPEG解碼系統的運行時間為11 ms,系統的處理能力是基于C66x內核的系統的5.36倍,是基于C6416的系統的15.73倍。

4 結束語

    隨著先進視頻處理技術在電子信息裝備中的應用,本文針對TI公司TMS320C6678多核DSP的系統架構,提出了基于TMS320C6678的多核DSP解碼任務并行處理算法,提升了視頻處理實時能力。由于本文只采用了編譯器優化途徑,后續可以在流水線設計、內存調整控制等方面進一步優化,基于C6678的JPEG解碼系統的實時處理能力將進一步增強。

參考文獻

[1] WALLACE G K.The JPEG still picture compression standard[J].IEEE Transaction on Consumer Electronics,1992,38:18-34.

[2] 彭益智,霍家道,徐偉.一種基于TMS320C6678的JPEG編碼算法并行實現方法[J].指揮控制與仿真,2012,34(1):119-122.

[3] 劉波,孫書為,孫永節.H.264視頻編碼器的并行性分析[C].第十一屆全國計算機工程與工藝學術年會論文集,合肥,2007:194.



作者信息:

彭益智

(江蘇自動化研究所,江蘇 連云港222061)

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲国产日韩欧美一区二区三区| 国产午夜精品久久久久久久| 日韩一区二区免费高清| 亚洲综合日韩在线| 一色屋精品亚洲香蕉网站| 亚洲视频精选| 悠悠资源网亚洲青| 亚洲欧美一区二区在线观看| 亚洲国产高清在线| 欧美一区二区三区在线视频| 亚洲国产精品va在线看黑人动漫| 午夜精品久久久久99热蜜桃导演| 亚洲电影网站| 久久亚洲高清| 欧美一区=区| 国产精品女主播| 一区二区精品在线| 亚洲经典自拍| 欧美一区午夜精品| 国产丝袜美腿一区二区三区| 91久久精品网| 激情小说另类小说亚洲欧美 | 午夜精品区一区二区三| 亚洲欧美日本日韩| 国产乱码精品1区2区3区| 一区二区高清| 最新国产精品拍自在线播放| 农夫在线精品视频免费观看| 欧美中在线观看| 国产一区深夜福利| 久久精品国产亚洲一区二区| 亚洲专区免费| 国产精品久久久久一区二区三区| 亚洲中无吗在线| 午夜免费在线观看精品视频| 国产午夜精品一区二区三区视频| 欧美一区二区三区视频在线| 一区二区三区欧美在线| 欧美无乱码久久久免费午夜一区| 亚洲特黄一级片| 亚洲欧美日韩精品在线| 在线播放亚洲一区| 国产精品免费一区二区三区在线观看 | 欧美三级网址| 国产精品99久久久久久久vr| 亚洲一区二区久久| 精品91视频| 国产精品家教| 欧美xart系列高清| 久久国产精品久久w女人spa| 欧美在线影院在线视频| 亚洲激情婷婷| 国产精品激情| 欧美1区免费| 午夜精品久久久久久久99水蜜桃| 亚洲精品乱码久久久久久| 亚洲三级影院| 在线视频成人| 黄色一区二区在线| 国内精品久久久久影院优| 国产一区二区三区在线播放免费观看| 久久久久久欧美| 亚洲欧美另类综合偷拍| 亚洲伦理在线| 亚洲国产高清aⅴ视频| 一区二区三区日韩欧美精品| 国内成人精品视频| 国产精品久久久久久久久久尿| 欧美日韩午夜在线视频| 久久综合图片| 欧美一区二区三区免费视频| 亚洲欧美日韩第一区| 欧美私人啪啪vps| 欧美日韩综合在线| 欧美在线中文字幕| 亚洲欧美另类国产| 欧美一站二站| 亚洲国产综合91精品麻豆| 亚洲激情啪啪| 亚洲精品一级| 亚洲性夜色噜噜噜7777| 亚洲人成啪啪网站| 红桃视频成人| 久久精品道一区二区三区| 欧美在线你懂的| 亚洲卡通欧美制服中文| 国产精品xvideos88| 亚洲欧美一区二区三区久久| 性色av香蕉一区二区| 在线欧美小视频| 国产精品手机视频| 久久久久久久999| 羞羞视频在线观看欧美| 亚洲国产一区二区三区a毛片| 国产精品theporn| 欧美一区二区精品久久911| 亚洲第一区色| 亚洲一区久久久| 雨宫琴音一区二区在线| 欧美色网在线| 美国成人直播| 欧美一二三视频| 亚洲一区二区免费视频| 一卡二卡3卡四卡高清精品视频| 国产精品视频| 免费高清在线一区| 亚洲深夜福利网站| 亚洲福利视频二区| 欧美不卡在线视频| 亚洲一区二区三区777| 久久se精品一区二区| 亚洲美女毛片| 欧美91视频| 亚洲国产高清aⅴ视频| 亚洲伊人伊色伊影伊综合网| 亚洲国产精品成人精品| 久久精品一区二区三区四区 | 亚洲高清视频在线观看| 一区二区三区视频免费在线观看| 性做久久久久久久久| 亚洲一区二区三区午夜| 一区二区成人精品| 亚洲人精品午夜在线观看| 国产亚洲a∨片在线观看| 欧美成人免费视频| 久久日韩粉嫩一区二区三区| 欧美专区在线播放| 久久免费高清视频| 久久亚洲影音av资源网| 欧美三区免费完整视频在线观看| 久久国产日韩| 91久久精品国产91久久性色| 亚洲欧洲精品一区二区三区 | 亚洲娇小video精品| 久久精品国产91精品亚洲| 久久激情综合网| 亚洲国内精品在线| 日韩一级精品| 欧美在线资源| 久久综合国产精品台湾中文娱乐网| 欧美成人亚洲成人| 午夜国产一区| 亚洲在线视频一区| 在线视频欧美日韩精品| 亚洲国产专区| 国产精品爽黄69| 亚洲激情在线观看| 亚洲国产日韩欧美在线99| 久久综合久久综合久久| 亚洲国产精品毛片| 中文一区二区在线观看| 欧美午夜三级| 欧美在线不卡视频| 欧美国产日韩一区| 一区二区不卡在线视频 午夜欧美不卡在| 在线中文字幕一区| 欧美xx视频| 国产精品日韩专区| 在线观看亚洲精品视频| 一区二区三区视频在线看| 久久高清福利视频| 亚洲午夜高清视频| 久久亚洲国产精品日日av夜夜| 欧美国产一区二区三区激情无套| 国产嫩草影院久久久久 | 午夜精品在线视频| 亚洲电影天堂av| 亚洲婷婷国产精品电影人久久| 欧美专区在线| 久久人人看视频| 国产精品人人爽人人做我的可爱| 国产一区二区三区在线观看免费视频| 黄色欧美成人| 国产乱肥老妇国产一区二 | 欧美精品在线观看91| 裸体歌舞表演一区二区| 欧美激情小视频| 国产精品午夜视频| 日韩香蕉视频| 午夜亚洲影视| 亚洲欧美国产高清| 久久香蕉国产线看观看网| 一区二区三区四区五区视频| 久久九九精品| 国产精品女人久久久久久| 欧美一区日韩一区| 国产伦精品一区二区三区高清| 亚洲无亚洲人成网站77777| 91久久线看在观草草青青| 欧美精品入口| 亚洲日本电影| 午夜精品久久久久久久| 亚洲高清自拍| 亚洲伦伦在线| 国产精品美女xx| 亚洲国产一成人久久精品| 国产精品一卡二| 亚洲精品免费观看| 国产精品蜜臀在线观看| 久久精品亚洲一区二区三区浴池|