中文字幕第二一区_久久久久在线视频_精品国产自在现线看久久_亚洲精品一区二区三区电影网

產(chǎn)品分類

當前位置: 首頁 > 行業(yè)動態(tài)

基于TMS320C64x/DM64x的視頻編碼優(yōu)化

發(fā)布日期:2022-07-14 點擊率:47

ay: block;">

數(shù)字視頻編碼在諸如數(shù)字視頻監(jiān)控系統(tǒng)與視頻會議系統(tǒng)等眾多應用中發(fā)揮著重要作用。本文將對以TMS320C64x/DM64xDSP為基礎的通用視頻編碼器優(yōu)化技術(shù)進行介紹。基于DM64x的視頻編碼優(yōu)化結(jié)合了多種技術(shù),其中包括算法/系統(tǒng)優(yōu)化、存儲器緩沖優(yōu)化、EDMA及高速緩存利用率優(yōu)化等。

TMS320C64x/DM64x器件建立在德州儀器(TI)開發(fā)的第二代高性能VLIW架構(gòu)(VelociTI.2)基礎之上。該器件具有VLIW架構(gòu)、2級存儲器/高速緩存層次結(jié)構(gòu)以及EDMA引擎等關(guān)鍵特性,從而使其成為計算強度較大的視頻/影像應用(如視頻編碼與分析)的最佳選擇之一。利用DM64x進行應用開發(fā)時,需要全面了解其特性與開銷以實現(xiàn)最佳性能。下面以DM642為例在此列出其所有DSP關(guān)鍵特性:

1. 增強功能單元


DM64x的8個功能單元中的VelociTI.2擴展包括加速視頻與影像應用性能的新指令。

2. L1/L2分級存儲器結(jié)構(gòu)

圖1:視頻編碼結(jié)構(gòu)圖。


16KB直接映射的L1P程序高速緩存,帶有32字節(jié)的高速緩存管線(8周期L1P高速緩存缺失損失)。


16KB雙路關(guān)聯(lián)L1D數(shù)據(jù)高速緩存,帶有64字節(jié)的高速緩存管線(6循環(huán)L1D高速緩存缺失損失)。


256KBL2統(tǒng)一映射RAM/高速緩存(靈活的RAM/緩存分配)


L2四路關(guān)聯(lián)高速緩存,帶有128字節(jié)的高速緩存管線。

3. 位優(yōu)先原則:低位優(yōu)先(Little Endian),高位優(yōu)先(Big Endian)。

4.64位外部存儲器接口(EMIF):至異步與異步存儲器的無膠合邏輯接口。

5.1024MB總的可尋址外部存儲器空間。

6.增強型直接存儲器存取(EDMA)控制器(64個獨立通道)。

片上外設集包括:三個可配置的視頻端口,一個10/100Mbps以太網(wǎng)MAC(EMAC),一個管理數(shù)據(jù)輸入/輸出(MDIO)模塊,一個VCXO內(nèi)插控制端口(VIC)。視頻端口外設提供與通用視頻解碼器和編碼器相連的無縫接口,以支持多種視頻分辨率及標準,如、、SMPTE125M/260M/274M/296M等。

上面的功能特性對包括視頻編碼在內(nèi)的所有算法的執(zhí)行都相當重要。二級存儲器/高速緩存分級結(jié)構(gòu)與EDMA引擎基本決定了視頻編碼器實現(xiàn)的架構(gòu)。在算法實現(xiàn)過程中,我們需要弄清一些有關(guān)存儲器/高速緩存層次結(jié)構(gòu)以及EDMA引擎的基本概念。如果代碼大于L1P,就可能發(fā)生L1P高速緩存缺失,CPU停止運行至到讀取到所需代碼。類似地,如果數(shù)據(jù)與L1D不符,就會出現(xiàn)L1D高速緩存缺失并且CPU停止運行。所有的L1P與L1D缺失問題均由L2高速緩存/SRAM來解決。如果代碼與數(shù)據(jù)的大小均大于L2高速緩存的容量,那么就可能出現(xiàn)L2高速緩存缺失。與L1P/L1D高速緩存缺失損失相比,L2缺失損失通常更嚴重,因為L2高速緩存需要與速度較低的片外存儲器相互傳遞數(shù)據(jù)/代碼。

確保視頻編碼器最佳性能的兩大重要因素是進行有利于高速緩存的程序分區(qū)(program partitioning)以及數(shù)據(jù)傳輸處理(如減少L1/L2缺失)。盡管L2 SRAM可用于解決L1D/L1P缺失問題,我們通常還是更傾向于采用EDMA來傳輸L2 SRAM與片外存儲器之間的代碼/數(shù)據(jù),因為EDMA的傳輸效率通常高于L2高速緩存。

視頻編碼器系統(tǒng)/算法優(yōu)化

圖1給出了通用視頻編碼算法結(jié)構(gòu)圖,MPEG2、及MPEG4等許多視頻編碼標準都可從該算法結(jié)構(gòu)圖衍生而來。在圖1中,DCT與量化(Q)去除了視頻的空間冗余;運動估計(ME)降低了視頻的時間冗余;VLC進行熵編碼(entropycoding),以將數(shù)據(jù)有效地進行分組。

通常,視頻編碼器的實現(xiàn)是以宏模塊(MB)為基礎。這就是說,只有在當前MB完成所有處理步驟后,視頻編碼器才讀取下一個MB。這種靠直覺進行操作的方法存在兩大缺點:

1.視頻編碼器的整體代碼尺寸通常大于L1P。在每個MB讀取階段,代碼都需要在L1P和L2P之間進行交換,這會造成嚴重的高速緩存缺失問題。


2.用EDMA從外部視頻幀存儲器向內(nèi)部存儲器傳輸小塊數(shù)據(jù)(如一個MB)的效率不高。

為了避免造成大量高速緩存缺失損失和CPU停止響應問題,我們可將算法分為三個小循環(huán)/模塊,每部分都能在L1P中容下。每個循環(huán)中每次同時操作M個宏模塊(MB串),而不是只操作一個宏模塊。M是宏模塊串的大小,只受可用L1D大小的限制。M越大,就能獲得的越高的EDMA數(shù)據(jù)吞吐量性能。

三個小循環(huán)為:


1. 宏模塊編碼環(huán)路


2. 運動估計環(huán)路


3. 宏模塊重建環(huán)路

正如上面強調(diào)指出的那樣,每次都讀取M個宏模塊,一起經(jīng)過三個環(huán)路中的一個來處理。舉例來說,在宏模塊編碼循環(huán)中,如果將M個宏模塊讀入內(nèi)部存儲器,那么將對其進行DCT轉(zhuǎn)換、量化以及熵編碼。只有當宏模塊編碼環(huán)路結(jié)束時,這一組宏模塊才離開L1D。相應的程序包括DCT、量化以及VLC內(nèi)核,其會在所有M個宏模塊在L1P中完全處理之后才脫離該環(huán)路。EDMA引擎驅(qū)動的乒乓存儲器緩沖方案有助于減少執(zhí)行一組宏模塊時環(huán)路初始的設置時間,同時還可確保最小化的CPU停止周期,這是由于傳輸與處理并行進行的原因。

視頻編碼器的存儲器緩沖方案

為了獲得最佳性能,許多與關(guān)鍵內(nèi)核相關(guān)的查找表格、狀態(tài)變量以及數(shù)據(jù)緩沖都必須位于內(nèi)部存儲器之中。除了上述基本數(shù)據(jù)所占用的存儲器之外,部分TMS320DM64x仍有足夠的內(nèi)部存儲器可容納整個視頻幀,以供編碼器處理。但有的器件則不行,因為內(nèi)部SRAM在不同的C64x/DM64x器件間有所差異。有些應用只需運行視頻編碼器,而其它應用則要運行其他算法,其中包括視頻編碼等。為了針對大多數(shù)視頻應用情況下的所有DM64x器件提供通用的視頻緩沖方案,全部視頻幀應位于外部存儲器,而非內(nèi)部存儲器中。EDMA每次將M個MB帶從外部視頻緩沖傳輸?shù)絻?nèi)部緩沖。正如我們在上一節(jié)中談到的那樣,M只受L1D大小的限制。

圖片群(GOP)是視頻編碼中的重要概念,因為其確定了每個視頻幀的編碼方案。通常,在GOP中定義所有視頻編碼標準的I幀和P幀。B幀只包含在高級視頻編碼配置文件(profile)中,如MPEG4高級簡單配置文件以及MPEG2主配置文件等。對于I幀而言,我們可采用類似JPEG的編碼方案來去除空間冗余。對于P幀來說,我們采用前向運動估計(forward motion estimation),并以此前的I/P作為參考。對于B幀而言,前向ME(forward ME)不僅需要此前的I/P幀,而且還需要隨后的I/P幀用于后向ME(backward ME)。視頻編碼器必須在兩個P幀之間對所有B幀進行緩沖,這是由于B幀采用雙向ME方案的緣故。圖2給出了視頻幀的數(shù)據(jù)依賴性。

圖2:視頻編碼器中視頻幀的數(shù)據(jù)依賴性。

我們已經(jīng)熟知,對于B幀GOP而言,視頻捕獲/顯示的順序不同于視頻編碼順序。例如,GOP= IBBP BBP BBP BBP BB的順序適用于捕獲/顯示,而GOP編碼順序則為GOP'= IPBB PBB PBB PBB……。視頻編碼算法分區(qū)的關(guān)鍵在于使CPU負載盡可能暫時不變。

EDMA的使用

TMS320C64x器件的增強型DMA(EDMA)控制器是一種高效率的數(shù)據(jù)傳輸引擎,每個EDMA周期都可處理多達8個字節(jié),從而可在CPU速率為600MHz時實現(xiàn)每秒的總數(shù)據(jù)吞吐量。為了使我們的視頻編碼器應用能充分受益于傳輸引擎的帶寬,充分利用可用的總線寬度非常重要。換言之,我們應該盡量使用32位大小的傳輸單元。為了有效利用EDMA,我們應當很好地了解EDMA的傳輸過程。在EDMA通信方面,每次數(shù)據(jù)傳輸都由傳輸請求(TR)發(fā)起,該請求包含執(zhí)行傳輸所需的所有信息,如源地址、目標地址、傳輸屬性、傳輸單元的數(shù)量等。TR根據(jù)優(yōu)先級的不同分為不同的隊列。如果TR達到隊列頭(head of queue),那么它將轉(zhuǎn)移到EDMA傳輸控制器隊列寄存器中,該寄存器執(zhí)行由TR定義的實際數(shù)據(jù)移動。

傳輸控制器(TC)是EDMA引擎處理TR并執(zhí)行實際數(shù)據(jù)移動的部分。在TC中,TR被轉(zhuǎn)移至傳輸請求隊列之一,等待處理。傳輸優(yōu)先級決定了該隊列應被提交到哪個隊列,一共有四個隊列,對應于四種優(yōu)先級,每種深度為16項。這四種隊列分別為緊急(Q0)、高(Q1)、中(Q2)以及低(Q3)。可對每個TMS320C64X傳輸請求發(fā)出者進行編程,使其可發(fā)出任意優(yōu)先級的TR。地址生成/傳輸邏輯一次只能為每個優(yōu)先隊列的一個TR提供服務。傳輸邏輯可并行處理不同優(yōu)先級的傳輸。為了最大化視頻編碼器中的數(shù)據(jù)傳輸帶寬,只要可能,就應在所有四種優(yōu)先級上對傳輸進行分配。TC包含四組隊列寄存器,每種對應一個優(yōu)先級隊列,監(jiān)控傳輸過程。在特定隊列的寄存器組中,其會保持傳輸?shù)漠斍霸吹刂贰⒛繕说刂芬约皵?shù)量等。這些寄存器不在器件的存儲器映射中,對CPU不可用。傳輸過程中的實際數(shù)據(jù)移動發(fā)生在寄存器中。

EDMA也能通過使用CPU發(fā)出的QDMA請求執(zhí)行非同步傳輸。換言之,QDMA傳輸是通過CPU實現(xiàn)同步的。在視頻編碼器中,EDMA傳輸由算法的數(shù)據(jù)流實現(xiàn)同步,而非通過外部事件實現(xiàn)。QDMA更適合發(fā)出單個的獨立傳輸,以便快速移動數(shù)據(jù),而不適合像其它EDMA通道那樣執(zhí)行周期性或重復性傳輸。每次發(fā)出的傳輸請求均由EDMA處理。根據(jù)優(yōu)先級對請求進行排隊,最先處理優(yōu)先級較高的請求。由于EDMA的結(jié)構(gòu)使然,要通過不同的隊列提出傳輸請求(但根據(jù)優(yōu)先級提交)。所有QDMA傳輸都采用幀同步提交。因此,QDMA總是請求傳輸數(shù)據(jù)的完整幀。對于任何QDMA提交而言,發(fā)出的請求只有一個。良好的視頻編碼器應并行采用所有三種優(yōu)先級隊列(低、中和高)以便在外部存儲器與內(nèi)部片上緩沖之間進行數(shù)據(jù)傳輸。

高速緩存優(yōu)化

最大化高速緩存的效率是實現(xiàn)總體視頻編碼性能目標的關(guān)鍵因素之一。高效的高速緩存可減少由于存儲器活動而造成的CPU停止響應,從而提高處理器的吞吐量。正如我們在第一節(jié)中介紹的那樣,包括DM64x等在內(nèi)的TM320C64xDSP使用高效的二級存儲器架構(gòu)實現(xiàn)片上程序與數(shù)據(jù)存取。在這種結(jié)構(gòu)層次中,CPU直接與專用一級程序(L1P)和數(shù)據(jù)(L1D)高速緩存相連。L1高速緩存工作的速度與CPU相同。直接映射的L1P高速緩存是只讀的,而卻可對雙路關(guān)聯(lián)相關(guān)高速緩存L1D進行讀寫。將L1存儲器與稱作L2的二級片上存儲器連接。L2是一種統(tǒng)一的存儲器塊,其包括程序與數(shù)據(jù)。L2高速緩存作為L1和片外存儲器之間連接的橋梁。如欲獲得本高速緩存架構(gòu)的詳細文檔,敬請參閱C6000外設參考指南(SPRU190f)。

參考文獻:


[1] Anurag Jain, Ratna Reddy, Jeremiah Golston, Jagadeesh Sankaran, Programmable Real-time MPEG-2 Encoding, GSPx 2002.


[2] Kyoung Won Lim, Jong Beom Ra. Improved hierarchical search block matching algorithm by using multiple motion vector candidates. Electronic Letters, Volume: 33 Issue:21, 9 Oct. 1997 Page(s): 1771-1772.


[3] Ismaeil, I.R.; Docef, A., Kossentini, F., Ward, R. Motion estimation using long-term motion vector prediction. Data Compression Conference, Proc. 1999 Page(s): 531.

[4] J. Lee and B.W. Dickinson. Temporally adaptive motion interpolation exploiting temporal asking in
visual perception. IEEE Trans. Image Proc., 3(5): 513-526, Sep 1994.

作者:彭程博士


德州儀器公司

下一篇: 網(wǎng)絡DVR是大勢所趨

上一篇: 基于Eclipse平臺的工

中文字幕第二一区_久久久久在线视频_精品国产自在现线看久久_亚洲精品一区二区三区电影网

      美女精品在线观看| 裸体素人女欧美日韩| 小黄鸭精品aⅴ导航网站入口| 亚洲视频在线视频| 欧美一区二区| 免费观看一区| 欧美色综合网| 国产伦精品一区二区三区免费 | 欧美日韩一区综合| 国产精品草莓在线免费观看| 国产视频自拍一区| 亚洲第一福利在线观看| 日韩视频一区二区三区| 亚洲一级一区| 久久激五月天综合精品| 美女999久久久精品视频| 欧美日在线观看| 国内欧美视频一区二区| 最新日韩在线| 亚洲一区综合| 噜噜噜久久亚洲精品国产品小说| 欧美日韩亚洲高清| 国产亚洲综合性久久久影院| 亚洲激情国产| 欧美中文在线观看| 欧美国产先锋| 国产一区久久久| 亚洲天堂男人| 欧美91精品| 国产日韩欧美在线一区| 日韩视频在线观看免费| 久久久久久久综合| 国产精品亚洲网站| 一本色道久久综合狠狠躁篇怎么玩 | 免费观看国产成人| 国产精品系列在线播放| 最新亚洲视频| 麻豆精品在线播放| 国产一区观看| 亚洲欧美激情一区二区| 欧美紧缚bdsm在线视频| 影音先锋久久资源网| 亚洲欧美bt| 欧美日韩亚洲国产一区| 亚洲国产精品成人| 久久天天躁狠狠躁夜夜爽蜜月 | 亚洲国产婷婷香蕉久久久久久99| 亚洲欧美精品一区| 欧美日本簧片| 亚洲激情视频网站| 欧美亚洲视频| 国产精品久久久久久亚洲毛片 | 欧美一区二区三区视频| 欧美丝袜一区二区| 一区二区激情视频| 欧美极品一区二区三区| 亚洲大片在线| 久久男人资源视频| 娇妻被交换粗又大又硬视频欧美| 欧美在线一二三区| 国产日韩欧美日韩大片| 久久精品二区| 好吊日精品视频| 久久综合一区二区三区| 亚洲盗摄视频| 欧美v日韩v国产v| 91久久精品视频| 欧美激情第一页xxx| 亚洲国产综合91精品麻豆| 老牛嫩草一区二区三区日本| 狠狠色丁香久久综合频道| 久久久夜精品| 亚洲黄色有码视频| 欧美日韩亚洲视频| 亚洲欧美成人在线| 国产在线观看91精品一区| 久热精品在线视频| 日韩视频精品在线| 国产酒店精品激情| 久久久久青草大香线综合精品| 亚洲动漫精品| 欧美午夜a级限制福利片| 亚洲一区视频在线观看视频| 韩国一区二区三区在线观看| 农夫在线精品视频免费观看| 一本久道久久综合中文字幕| 国产精品久久久久久久7电影| 欧美在线首页| 亚洲日产国产精品| 国产精品一国产精品k频道56| 欧美亚洲免费| 亚洲韩国精品一区| 国产精品女人久久久久久| 久久一区二区三区四区五区| 一区二区高清视频| 国产一区二区高清视频| 欧美日韩国产一级片| 欧美一区视频| 亚洲美女电影在线| 国产精品女主播一区二区三区| 欧美影院午夜播放| 亚洲精品视频在线播放| 国产一区二区三区在线观看视频| 欧美精品久久一区| 久久久久高清| 亚洲无线观看| 亚洲精选在线观看| 精品粉嫩aⅴ一区二区三区四区| 国产精品第一区| 欧美成人一区二区三区在线观看| 香蕉久久a毛片| 日韩午夜电影在线观看| 好看的av在线不卡观看| 国产精品久久久久久久久| 免费欧美在线| 久久综合中文色婷婷| 欧美制服丝袜第一页| 亚洲图片在线| aaa亚洲精品一二三区| 亚洲日本电影| 最近中文字幕日韩精品 | 亚洲美女毛片| 亚洲国产精品视频一区| 好吊日精品视频| 国产女主播视频一区二区| 国产精品高潮呻吟久久av无限| 欧美成人午夜激情| 噜噜噜噜噜久久久久久91| 久久视频在线免费观看| 久久精品人人| 久久成人精品无人区| 欧美一区二区三区日韩视频| 亚洲欧美日韩一区在线| 亚洲欧美激情视频| 午夜宅男欧美| 久久激情网站| 久久久女女女女999久久| 久久中文字幕一区| 欧美超级免费视 在线| 欧美成人久久| 欧美日韩国产一区精品一区| 欧美精品尤物在线| 欧美日韩在线视频一区| 国产精品久久久一区二区| 国产伦理精品不卡| 国产香蕉97碰碰久久人人| 狠狠久久亚洲欧美专区| 在线观看国产日韩| 亚洲美女在线视频| 亚洲午夜精品一区二区三区他趣| 亚洲在线一区二区| 欧美一区二区三区视频免费| 久久婷婷av| 欧美精品在线免费播放| 国产精品久久久久久亚洲调教| 国产精品黄页免费高清在线观看| 国产美女一区二区| 亚洲成色最大综合在线| 99精品久久免费看蜜臀剧情介绍| 亚洲一品av免费观看| 久久久久久久一区二区三区| 欧美日韩91| 国产日韩欧美精品| 亚洲人体影院| 亚洲欧美日韩在线| 蜜臀av在线播放一区二区三区| 欧美日韩一区二区视频在线观看| 国产精品你懂的在线| 影音先锋日韩有码| 亚洲一区二区三区久久| 久久久免费av| 欧美日韩亚洲网| 精品va天堂亚洲国产| 一区二区三欧美| 久久综合99re88久久爱| 国产精品wwwwww| 影音先锋久久精品| 亚洲欧美日韩另类精品一区二区三区| 久久一区二区三区av| 国产精品日韩一区二区三区| 亚洲欧洲精品一区二区三区| 午夜在线观看欧美| 欧美久久久久久| 亚洲成人在线| 久久国产精品72免费观看| 欧美日韩一区二区三区| 在线观看三级视频欧美| 校园激情久久| 欧美午夜精品久久久久久浪潮| 激情久久久久| 欧美一区二区三区精品电影| 欧美日韩精品二区| 亚洲国产精品综合| 久久久五月婷婷| 国产欧美日韩三级| 国产精品99久久久久久www| 蜜桃av综合| 在线观看成人网| 久久午夜电影网| 国内外成人在线|