《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > MPEG-4實時編碼器在ADSP-BF533 DSP上的實現
MPEG-4實時編碼器在ADSP-BF533 DSP上的實現
摘要: 本文介紹了CIF級別的MPEG-4 SP實時編碼在BF533 DSP;DSP片上的實現,該編碼器可以靈活地選用系統自帶CMOS傳感器及用戶自選PAL制模擬攝像機兩種視頻采集源。該系統可以用在IP可視電話、交通檢測、超市監視、智能小區安保等領域,具有很強的實用價值。
Abstract:
Key words :

引言

  MPEG-4" target="_blank">MPEG-4視頻編碼技術可以在較小的帶寬下傳輸高質量的視頻數據,節省大量存儲空間,但編碼復雜度也較高,目前豐要有3種實現方案:在通用PC上編程實現;通過ASIC硬件實現以及使用通用DSP" target="_blank">DSP芯片實現。與前兩者相比,通用DSP芯片實現方案具有以下優勢:運算性能強;可升級性好,與PC類似,通用DSP芯片的功能仍是通過編程來實現的,能快速、方便地進行軟件升級及添加新的功能,以適應技術發展和市場變化;成本低、功耗低、適應場合廣泛。

系統硬件設計

  編碼系統處理核心為ADSP-BF533(以下簡稱BF533),利用其多功能并行接口PPI采集視頻數據,該PPI具有DMA功能,無需內核干預便可進行高速數據傳輸,傳輸完成后可自動向內核發出DMA中斷。

  視頻采集部分選用0mniVision公司的CIF級彩色CMOS圖像傳感芯片OV6630,其最大分辨率為352×288,采集速率最高可達60fps,且片內硬件實現了原始RGB數據到4:2:2YUV格式數據的轉換,用戶無需自行編寫復雜的RGB轉YUV應用程序,大大減少了代碼量,很適合用作MPEG-4編碼。

  設置OV6630輸出為4:2:2 YUV視頻數據格式,BF533的PPI即可直接接收該格式視頻數據。二者可實現無縫連接,無需中間電路。

  考慮到目前還有大量模擬制式的攝像機仍在廣泛應用,系統中還增加了視頻ADC ADV7183,該芯片可以把PAL制模擬電視信號轉為ITU-R656標準4:2:2格式數字視頻,同樣將ADV7183輸出端口與BF533的PPI相連。這樣,既可以采用系統自帶CMOS圖像傳感器采集視頻,也可以外接PAL制模擬攝像機,用戶可自由選擇。

  由于BF533片內存儲空間有限,而視頻采集、編碼數據量巨大,選用一片Hynix公司的4MBSDRAM HY57V56162(內含4個內部子集)作為BF533片外大容量動態存儲器。同時,為存放程序啟動代碼,利用一片容量為1MB的閃存芯片PSD4256G6V構成BF533的片外非易失性存儲器。系統硬件構成如圖1所示。

系統硬件構成

編碼器設計實現

存儲器空間分配

  BF533采用統一的32位、共4GB可尋址空間,包括位于片內的L1高速SRAM,片外的同步存儲器空間SDRAMSpace,以及異步存儲器空間(A syn chronousMemory Space)。

  片內Ll SRAM包括:64KB指令SRAM、16KB指令Cache/SRAM、32KB數據SRAM、32KB數據Cache/SRAM,以及4KB便簽存儲器。

  L1 SRAM工作在內核時鐘頻率,內核可以對其進行高速帶寬訪問。它是所有存儲器中訪問速度最快的,但容量有限,因此,只應將那些最關鍵的代碼和數據存放在L1SRAM里。同時,指令Cache和數據Cache全部使能,這樣可以大大提高訪問片外存儲器的效率。Cache設置是通過相應的I M E M_C O N T R O L、DMEM_CONTROL,以及CPLB寄存器配置實現的。

  由于BF533片內存儲空間有限,而原始視頻數據量較大:CIF級4:2:2格式每幀圖像占用的空間為202752字節,如果采用模擬PAL制式視頻輸入,每幀占用空間更是高達829440字節,只能將其放至SDRAM中。同樣,視頻編碼數據也應存放在SDRAM中。此外,系統啟動完成Boot loader引導后,主要關鍵代碼放在片內L1程序SRAM中執行,但大部分程序代碼仍需從SDRAM中執行。由于SDRAM特殊的讀/寫方式,如果下次訪問內存頁與當前活動頁(Active Page)不同,即出現了頁錯失(Page Miss),SDRAM就必須首先關閉當前頁,再打開新的頁,大大降低了SDRAM讀寫速率。而該系統中SDRAM又需存儲多種數據,內核、DMA均需要頻繁訪問SDRAM,因此,應精心分配SDRAM空間,以使頁錯失現象盡量少發生。

  BF533的SDRAM控制器(SDC)可以支持SDRAM每個內部子集中的一個活動頁,且在這4個I-Bank中進行切換時無需任何延遲。這樣,將不同的數據、代碼映射至不同的I-Bank,可使頁錯失現象降到最少,進而改善訪問SDRAM的效率。

  由于需要實時編碼,為保證視頻采集和壓縮可以同步執行,采用乒乓緩沖技術:設置了兩塊視頻幀接收緩沖區BUF1和BUF2,采用BF533的DMA傳輸鏈方式進行傳輸。當某一DMA緩沖區填滿后,內核對其作MPEG-4編碼(同時也在構建參考幀),此時DMA開始對另一塊緩沖區進行填充。由于BUF1、BUF2、程序代碼以及參考幀均位于不同的I-Bank,減少了SDRAM頁面切換的機會,實現了對SDRAM的高效訪問。

MPEG-4
程序流程

  MPEG-4編碼是基于宏塊(Macro Block)進行的,每個宏塊包含4個8×8亮度子塊和2個8×8色度子塊。MPEG-4編碼原理主要包括對I幀和P幀的編碼,P幀比I幀多出了運動估計和補償模塊,二者編碼流程如圖2所示。

 

二者編碼流程

代碼編寫及優化

  BF533支持C/C++高級語言,但高級語言執行效率較低,為達到最大執行效率,采用全匯編語言實現MPEG-4編碼。

  對于I幀編碼,主要的運算量是前向離散余弦變換FDCT和反向離散余弦變換IDCT,這里采用了ADI提供的優化代碼,它基于chen氏快速DCT算法,大量運用了BF533特有的并行指令,完成一次8×8 DCT僅需293個時鐘周期。

  與I幀相比,P幀編碼相對復雜,其中,運動估計是P幀編碼最費時的部分,即在參考幀中搜索與當前編碼宏塊或子塊最匹配的位置。

  SAD(絕對誤差和)準則具有無需乘除運算、實現簡單方便等優點,選用它作為運動估計匹配準則。

  運動估計搜索算法則采用菱形搜索法(又稱鉆石搜索法),搜索精度為半像素,菱形搜索法具有簡單、魯棒、高效的特點。

  Blackfin匯編指令集中有專門用于SAD計算的指令S

 

AA(src_reg_O,src_reg_1),一條該指令即可同時完成4個字節的SAD計算。此外,綜合使用其它一些視頻專用操作指令,如BYTEPACK(_將4個字節打包至一個3 2位寄存器中)、BYTEUNPACK(與BYTEPACK功能相反)、BYTEOPl6M(對4個字節作減法處理),可以使代碼運行效率得到顯著改善。

  BF533集成開發環境VisualDSP++中還提供了Profile功能,可以利用該功能對程序代碼性能進行評估,發現程序執行的瓶頸,從而進行有針對性的優化。主要的優化方法有:1.盡量減少分支、條件判斷指令,因為這些指令會破壞BF533流水線,造成額外的時鐘延遲;同時,對部分較簡單的子程序用宏改寫,免去子程序調用過程中的堆棧操作和參數傳遞;

  2.采用并行執行指令,BF533并非超標量結構DSP,但仍能有限地支持最多3條指令并行執行,如:saa(r1:0,r3:2)Ⅱr0=[i0++]Ⅱr2=[i1++];使用該并行指令即可在一個時鐘周期內完成4個字節的SAD計算,同時完成r0、r2的數據更新,以便下次計算;

  3.在DCT/IDCT的量化過程及其它一些模塊中,要牽涉到除法,而BF533計算除法需要耗費大量時鐘周期,因此,這里將除法變為乘以量化因子的倒數,求倒數可以通過查找表方式實現。再結合移位操作,即可在基本不損失精度的同時達到高效計算除法的目的。

  經過前述的優化過程后,成功地在BF533上實現了MPEG-4 SP的CIF級實時編碼。此外,對于CIF級CMOS傳感器OV6630,系統可以直接對其實時編碼。但如果是外接PAL制式模擬攝像頭,經ADV7183作A/D轉換后,其分辨率為720×576,受BF533的性能限制,尚無法對該級別分辨率做到實時編碼,因此,應先使其分辨率降為352×288,然后再作:MPEG-4編碼。

實驗結果

  BF533內核時鐘(CLK)設為594MHz,系統時鐘(SLK)為118.8MHz。選取CIF級標準測試序列flower(幀速率為25fps,共75幀)對系統進行驗證。

  圖3、圖4給出了分別采用I幀編碼和P幀編碼后的重建圖像。I幀編碼壓縮率為11.5:1,重建圖像信噪比為33.43dB。P幀編碼壓縮率則達到了65.7:1,重建圖像信噪比為32.65dB。經采用BF533片內實時時鐘RTC精確計時,整個視頻序列共75幀,編碼耗費2.27s,平均編碼率達到了33fps,滿足實時編碼要求。

分別采用I幀編碼和P幀編碼后的重建圖像

結語

  本文介紹了CIF級別的MPEG-4 SP實時編碼在BF533 DSP;DSP片上的實現,該編碼器可以靈活地選用系統自帶CMOS傳感器及用戶自選PAL制模擬攝像機兩種視頻采集源。該系統可以用在IP可視電話、交通檢測、超市監視、智能小區安保等領域,具有很強的實用價值。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲免费高清| 久久er99精品| 好看不卡的中文字幕| 国产精品久久久久久久一区探花| 欧美ed2k| 免费在线亚洲| 蜜臀va亚洲va欧美va天堂| 久久久久一区| 久久精品国亚洲| 欧美中文在线观看| 欧美亚洲免费电影| 欧美一区二区高清在线观看| 亚洲一区一卡| 亚洲嫩草精品久久| 午夜精品亚洲一区二区三区嫩草| 亚洲影院免费观看| 亚洲欧美日本在线| 午夜亚洲性色福利视频| 亚洲自拍偷拍麻豆| 午夜久久久久久久久久一区二区| 午夜精品视频网站| 久久av最新网址| 久久久精品tv| 免费视频久久| 欧美精品在线免费观看| 欧美日韩二区三区| 欧美图区在线视频| 国产精品毛片a∨一区二区三区|国 | 欧美色欧美亚洲高清在线视频| 欧美日韩123| 欧美日韩在线三级| 国产精品日本| 国内精品久久久久伊人av| 一区二区在线不卡| 亚洲精品国产品国语在线app| 99成人免费视频| 亚洲在线1234| 久久成人免费电影| 亚洲精品五月天| 亚洲天堂免费在线观看视频| 欧美一区日本一区韩国一区| 久久资源在线| 欧美日韩中文字幕日韩欧美| 国产精品人人做人人爽| 韩国视频理论视频久久| 最新69国产成人精品视频免费| 9人人澡人人爽人人精品| 亚洲一区二区三区在线| 久久精品99国产精品酒店日本| 夜夜嗨av一区二区三区| 欧美一级视频一区二区| 欧美成人按摩| 国产精品久久国产三级国电话系列| 国产日产高清欧美一区二区三区| 在线播放亚洲| 亚洲图片在线观看| 亚洲国产成人精品久久| 亚洲一级在线| 久色成人在线| 国产精品成人v| 影音先锋在线一区| 亚洲一区二区三区免费视频| 亚洲国产成人tv| 亚洲欧美精品在线| 欧美成年视频| 国产免费观看久久| 91久久夜色精品国产九色| 午夜精品一区二区三区在线视| 亚洲精品一区二区三区婷婷月| 欧美尤物巨大精品爽| 欧美精品日韩一本| 国产一区二区高清不卡| 日韩午夜在线电影| 亚洲国产欧美一区| 午夜精品一区二区三区在线视| 欧美91福利在线观看| 国产精品亚洲一区| 日韩亚洲一区二区| 亚洲国产精品一区二区www在线| 亚洲欧美另类国产| 欧美激情一区二区三区在线视频 | 国产日韩精品综合网站| 亚洲九九爱视频| 久久精品欧美日韩精品| 亚洲欧美一区在线| 欧美另类亚洲| 亚洲电影免费在线观看| 午夜精品三级视频福利| 亚洲天堂免费在线观看视频| 欧美成人69| 狠狠做深爱婷婷久久综合一区| 亚洲欧美激情精品一区二区| 一区二区av在线| 欧美国产亚洲另类动漫| 国产综合香蕉五月婷在线| 亚洲一区二区三区精品在线| 亚洲视频一区二区免费在线观看| 欧美成人午夜77777| 国产一区日韩一区| 亚洲欧美电影院| 亚洲免费婷婷| 欧美日韩视频专区在线播放| 亚洲欧洲精品成人久久奇米网 | 最近中文字幕日韩精品| 久久国产99| 国产精品综合| 亚洲一区久久| 亚洲免费在线观看视频| 国产精品福利在线观看网址| 日韩一级精品视频在线观看| 日韩亚洲不卡在线| 欧美韩国一区| 91久久综合| 99国产精品久久| 欧美国产在线视频| 91久久久亚洲精品| 99热在这里有精品免费| 欧美啪啪一区| 亚洲免费黄色| 亚洲视频一区二区| 国产精品v欧美精品v日韩精品| 一区二区电影免费观看| 亚洲午夜电影在线观看| 欧美日韩在线播放一区| 一区二区三区蜜桃网| 亚洲一区二区成人| 欧美亚洲成人精品| 亚洲一区www| 欧美一区影院| 国产亚洲欧美一区在线观看| 欧美在线一级视频| 久久夜色精品| 亚洲国产黄色片| 日韩一区二区免费看| 欧美日韩在线影院| 亚洲少妇诱惑| 欧美一区二区三区在线观看 | 伊大人香蕉综合8在线视| 亚洲欧洲在线一区| 欧美精品一区视频| 亚洲开发第一视频在线播放| 亚洲午夜久久久久久久久电影院| 国产精品久久久久91| 亚洲欧美文学| 久久永久免费| 亚洲精品综合在线| 亚洲影院在线观看| 国产视频在线一区二区| 最新国产の精品合集bt伙计| 欧美人妖在线观看| 亚洲一区二区三区在线| 久久久久久97三级| 亚洲国产成人tv| 亚洲在线第一页| 国产自产在线视频一区| 亚洲精品视频一区| 国产精品v日韩精品| 欧美一区二区免费| 模特精品在线| 亚洲视频欧美视频| 久久久久在线观看| 亚洲美女少妇无套啪啪呻吟| 午夜久久99| 亚洲国产精品一区二区久| 亚洲一区二区综合| 国产一区二区黄| 夜夜嗨av色一区二区不卡| 国产麻豆精品视频| 亚洲精品在线观| 国产精品综合| 日韩亚洲欧美成人一区| 国产精品入口日韩视频大尺度| 亚洲国产精品视频| 国产精品mm| 最近中文字幕日韩精品| 国产精品美女一区二区在线观看| 久久狠狠久久综合桃花| 欧美色图五月天| 久久精品官网| 国产精品美女久久久久av超清| 亚洲激情影视| 国产精品亚洲成人| 99日韩精品| 国产一区二区三区久久悠悠色av| 亚洲伦理自拍| 国产亚洲精品bv在线观看| 在线亚洲成人| 在线国产亚洲欧美| 欧美一区91| 99精品免费网| 麻豆国产精品一区二区三区| 亚洲在线一区| 欧美日本国产精品| 久久精品一区二区国产| 国产精品美女xx| 一区二区三区精品在线| 在线播放中文字幕一区| 久久成人亚洲| 亚洲视频播放| 欧美日韩免费观看一区三区|