999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于DSP的視頻編碼器設計與實現

2013-01-14 06:12:12高玉平
無線電工程 2013年5期
關鍵詞:信號

高玉平

(中國電子科技集團公司第五十四研究所,河北石家莊050081)

0 引言

圖像壓縮編碼器的實現主要有3種方法:①采用專用的圖像壓縮芯片來完成。使用專用圖像壓縮芯片的優點是系統實現簡單;缺點是靈活性差,只能選用標準算法,且一般都不滿足寬溫的需求。②采用FPGA來實現,這種方法的優點是系統實現簡單、成本低、圖像壓縮速度快;缺點是用FPGA來實現壓縮算法的設計難度大、周期長、且不容易修改。③采用DSP平臺進行視頻圖像的壓縮編碼,其特點是應用靈活可變、能夠滿足特殊視頻格式需求、擴展性好、升級容易、適應性好、用途廣泛。用DSP進行圖像壓縮編碼,首先要構造DSP硬件平臺,然后進行軟件設計,移植源代碼程序、進行程序優化等,實現實時編碼。

1 硬件設計

1.1 硬件平臺設計

編碼器DSP選用TI公司的高性能定點信號處理器TMS320C64XX系列芯片,采用了先進的超長指令字(VLIW)結構,核內有64個32位的通用寄存器、8個高度獨立的功能單元(2個32位乘法器和6個算術邏輯單元),能夠每秒做1 200兆個32位或4 800兆個8位乘加操作。采用了程序總線和數據總線分離的修正哈佛結構,能夠同時取數據和指令,減少了沖突,大大提高了內存的訪問速度。采用流水深度已經達到8級的流水結構,大大增強了處理器的并行處理能力。而且TI公司的C語言編譯器產生的代碼的平均效率是其他DSP編譯器的3倍[1]。

視頻編碼器硬件結構框圖如圖1所示。主要由視頻采集電路、FPGA、DSP、程序存儲器和數據存儲器組成。其中視頻采集電路采用專用視頻模擬信號處理芯片,外部數據存儲器采用同步動態數據存儲器(SDRAM),程序存儲器采用內閃存儲器(FLASH)。

圖1 視頻編碼器硬件結構

模擬視頻信號送到視頻采集處理芯片,視頻采集處理芯片對模擬視頻信號進行采集處理轉換成4∶2∶2格式YUV復合數據,然后送給 FPGA處理,輸出格式符合ITU-BT.656標準,分辨率為720×576。FPGA對復合YUV數據進行濾波、抽取和分離,形成Y分量、U分量和V分量數據,形成以適合數據壓縮的切片(SLICE)為單位的數據存送給DSP。

64XX系列DSP具有2個外部存儲器接口(EMIF),FPGA接口和FLASH接口的速率低,共用EMIFB接口,SDRAM是高速接口,用EMIFA接口。系統上電后,DSP從FLASH存儲器中加載程序,傳送到片內存儲器,視頻壓縮程序對FPGA送來的圖像數據進行壓縮編碼。程序運行過程中所需要的數據一部分存儲于片內存儲器,另一部分存儲于主板上的SDRAM中。生成的壓縮碼流通過DSP芯片的多通道緩沖串口(McBSP)發送出去。

數據傳輸利用DSP的增強性直接存儲器存取(EDMA)進行。圖像壓縮運算時需要大量的數據信息交換,利用CPU傳輸數據將會占用大量的CPU時間,影響CPU的運算能力。64X系列DSP具有64個EDMA通道,當CPU在前臺編碼時,在后臺使用EDMA完成數據傳送。

1.2 印制板疊層設計

外部存儲采用同步動態SDRAM存儲器,存取速度在100 MHz以上,信號的上升沿時間小于1 ns。這個上升沿沿著一條FR-4印刷電路板內層走線傳播時,其有效長度為5.6英寸,通常傳輸線長度大于有效長度的1/6時,電路表現為分布狀態[2]。顯然SDRAM的信號線長度遠遠大于有效長度的1/6,屬分布式系統,不能采用普通的點對點布線,而需采用傳輸線,也就是微帶線和帶狀線。在印制板設計中采用地平面和疊層設計;電路板采用8層印制板,疊層方案如圖2所示,其中4層為地/電源層,4層為信號線層。地平面和電源平面可以為數字信號的轉換提供穩定的參考電壓,為電路中的DSP、FPGA和SDRAM等期間分配電源,控制信號之間的串擾,為高速信號電流提供了最小路徑。采用傳輸線以后信號畸變小,電磁輻射小,各信號線之間串擾小。

圖2 印制板疊層實現方案

1.3 外部存儲器的信號完整性設計

外部存儲器存儲速高,高速信號傳輸時信號會出現上沖、下沖、振鈴和非單調等現象,不能再沿用低速電路設計方法,必須采用基于信號完整性分析的高速數字系統設計方法。為了防止信號反射,傳輸線上需要端接電阻,端接電阻有串行端接和末端端接2種方式。通常采用串行端接,串行端接可以減少電路的功耗,同時還可以減少電路的電磁輻射。DSP外部存儲器信號線主要包括數據線和地址線,數據線64位,地址線22位。由于一片SDRAM的數據線是32位,所以需要2片SDRAM芯片。數據線DSP和SDRAM之間一一對應連接,一個發送器驅動一個,傳輸線屬于單支路拓撲結構。地址線一個地址信號要同時驅動2個SDRAM接收,傳輸線屬于雙支路拓撲結構。單支路信號端接比較簡單,多支路比較困難。

信號線傳輸模型如圖3所示。圖3(a)是電路中數據線傳輸模型,采用串行端接方式。通過仿真驗證,信號波形很好,過沖和振鈴都很小。地址線傳輸模型屬于雙支路拓撲結構,確定合適的端接方式比較困難。用Mentor Graphics軟件進行仿真、測試,確定使用的傳輸模型。圖3(b)是比較常用的傳輸模型,端接電阻采用單電阻;仿真時發現信號波形很差,上沖、下沖、振鈴很嚴重。經過多次仿真,最后采用了圖3(c)所示的傳輸模型,雙支路雙電阻串行端接傳輸模型,模型中每個支路都用了一個串行端接電阻;經過仿真測試,波形比較好。圖3模型中傳輸線阻抗50 Ω,串行端接電阻都是33 Ω。

圖3 信號線傳輸模型

圖4為單支路串行端接信號仿真波形,信號在3.3~0 V變化,信號寬度5 ns。圖4(a)是沒有端接電阻的信號仿真波形,信號過沖很大,上沖達到5 V,下沖到-1.5 V,波形畸變很嚴重。圖4(b)采用串形電阻端接后的信號仿真波形,可以看出信號得到明顯改善,信號上沖最大到3.3 V,下沖到-0.8 V,波形畸變比較小。

圖4 單支路信號傳輸仿真波形

圖5為雙支路串行端接信號仿真波形,圖5(a)采用單電阻端接,圖5(b)采用雙電阻端接。從圖中可以看出,雙電阻端接信號波形比單電阻端接信號波形明顯改善。

圖5 雙支路串行端接信號傳輸仿真波形

2 軟件設計

2.1 軟件框架結構

編碼器采用H.264編碼方式,框架結構如圖6所示[3]。主要由變換編碼、量化、排序和熵編碼、幀內預測、環路濾波、運動估計和補償預測等模塊。

圖6 視頻編碼器軟件結構

2.1.1 變換編碼

變換編碼將圖像時域信號轉換為頻率域信號,在頻域中,圖像信號的能量大部分集中在低頻區域,這樣就可能只編碼和傳輸少數系數而不嚴重影響圖像質量。

2.1.2 量化

最后,在師資隊伍建設方面也存在很大的局限性。校內的電子信息科學與技術專業教師目前在知識結構、學術水平、實踐經歷等多方面存在諸多不足,阻礙了創新型人才的培養。另外,沒有積極引進其他高校、科研院所及公司企業的優秀人才作為電子信息科學與技術專業人才培養的兼職教師,從而缺乏對電子信息科學與技術專業創新型人才培養的現實可行的專業指導。

量化是針對變換后的系數進行的,量化步長越小,量化精度就越細,包含的信息越多,但所需的傳輸頻帶越高。DCT變換系數中,低頻系數對視覺感應的重要性較高,因此分配的量化精度較細;高頻系數對視覺感應的重要性較低,分配的量化精度較粗。

2.1.3 排序和熵編碼

經量化后,大多數非零系數集中于二維矩陣的左上角,即低頻分量區,經過重排序,這些非零DCT系數就集中于一維排列數組的前部,后面跟著長串的量化為零的系數,然后進行熵編碼,得到宏塊的壓縮編碼數據。

2.1.4 幀內預測

利用當前塊周圍已建立的圖像值對當前塊進行預測,然后對預測塊和實際塊的殘差進行變換、量化、熵編碼,從而消除空間冗余信息。

2.1.5 環路濾波

在基于塊的視頻編碼過程中,在編碼器進行反變換量化后經常會產生“塊效應”,環路濾波器可以消除或減弱快效應的影響。

由于接收端只能根據解碼的I、P幀(而不是原圖像)來恢復其他P幀,為了減少累計誤差,要求編碼端使用同樣的圖像進行運動估計和補償,也就是說當對一幀圖像壓縮后需要馬上對其解碼,以便作為下一幀的參考幀,該環節包括反量化、反變換和幀存。

2.1.7 運動估計與補償預測

通過利用已經重建的參考幀對當前幀進行預測編碼,可以對當前塊與參考塊的運動矢量以及相應的運動補償殘差值進行編碼,有效消除視頻編碼中的時間冗余,降低編碼碼率,提高編碼效率。

目前的運動估計算法主要采用方塊匹配算法,典型的運動估計算法有菱形搜索算法[4]、六邊形搜索算法[5]和非對稱十字多層六邊形搜索算法[6]。通過仿真比較,3種算法的編碼性能差別比較小,菱形搜索算法時間最短,這里選擇菱形搜索算法為運動搜索的方法。

2.1.8 流量控制

經過變換、量化和熵編碼后,產生的比特流的速率是變化的,隨著視頻圖像的統計特性變化,而信道的傳輸速率是恒定的,因此在編碼比特流進入信道前需設置緩存器。當編碼輸出的瞬時速率過高,增大量化步長以降低編碼數據速率,當然也相應增大了圖像的損失,當編碼器的瞬時輸出速率過低,減小量化步長以提高編碼數據速率。

2.2 軟件程序優化策略

圖像壓縮的源代碼是基于PC機的,經過刪減移植到DSP平臺,進行一定的調整,滿足DSP的語法規范,就可以初步運行。但這時編碼效率很低,只能每秒壓縮幾幀圖像,不能夠實時編碼,必須對程序進行優化。充分利用C64XX的特點,如軟件流水和芯片特性等可以有效地提高編碼效率。

軟件流水是一種安排循環內的指令運行方式、使循環的多次迭代能夠并行執行的一種技術。C64XX具有8個并行功能單元,一個時鐘周期可并行執行8條指令[7]。為了充分發揮指令并行執行功能,需要采用循環展開技術,把程序里的疊代次數較少的FOR循環體一一展開,雖然并行的指令數會有所增加,但是這樣有利于合理地編排循環的軟件流水,提高代碼的執行效率。如果循環內有條件判斷語句,將引入跳轉指令,進而破壞了軟件流水。因此在循環語句中不要加入復雜的條件判斷語句。

內聯函數是指用函數本身來代替函數調用這一過程。當調用內聯函數時,源代碼把此函數插入到調用點,而不采用傳統的跳轉。將函數設定為內聯函數后,可以去掉復雜的函數調用過程來提高函數的執行效率。

為了降低DSP開發難度,節省軟件開發時間,TI提供了專用的C64X系列DSP的圖像函數庫。這些函數經過TI優化后,代碼效率很高,可以直接拿來使用到編碼器中。如16*16的SAD計算函數,運行時間僅67個機器周期[8]。

采用函數合并。在編碼過程中變換、量化、排序、反變換、反量化調用非常頻繁,反復的調用會在函數調用上花費大量的時間,為了提高速度,可以將變換、量化、排序、反變換和反量化等進行優化,合并成一個函數,減少不必要的函數調用。

經過軟件優化以后,每秒壓縮達到25幀,滿足實時壓縮編碼的要求。

3 結束語

構造DSP硬件平臺的關鍵是高速數字信號傳輸問題,需要進行印制板疊層設計和信號完整性設計。信號線拓撲結構為單支路時信號完整性設計比較簡單,采用串行電阻端接一般都可以滿足要求;多支路時設計比較困難,需要采用專用的印制板設計軟件(Mentor Graphics、Cadence等)進行反復的仿真、測試和調整。本文提出的雙支路雙電阻串行端接傳輸模型,仿真效果好,實際應用穩定、可靠,不足之處是端接電阻較多。

程序優化是DSP視頻壓縮編碼的一個重要環節,需要進行大量、繁瑣的編程工作。本文涉及軟件優化主要是程序級優化。根據DSP的硬件特點,對編碼算法進行改進、優化,結合程序優化,可以進一步提高編碼效率。本編碼器已在多個工程項目中得到應用,性能穩定可靠。

[1]江思敏,劉 暢.TMS320C6000DSP應用開發教程[M].北京:機械工業出版社,2005.

[2]霍華德.約翰遜.高速數字設計[M].北京:電子工業出版社,2006.

[3]余兆明.圖像編碼標準H.264技術[M].北京:人民郵電出版社,2006.

[4] THAM J Y,RANGANATH S,RANGANATH M,et al.A Novel Unrestricted Center-biased Diamond Search Algorithm for Block Motion Estimation [J].Trans.Circuits Syst.Video TECHNOL,1998(8):369-377.

[5] ZHU C,LIN X,CHAU L.Hexagon-based Search Pattern for Fast Block Motion Estimation [J].IEEE Trans.Circuits Syst.Video Techn,2002,12(5):425-437.

[6] CHEN Z,ZHOU P,HE Y,et al.Fast Motion Estimation for JVT [C]∥ JVT-G016,7th Meeting,Pattaya,Thailand,2003:7-14.

[7] Texas Instruments.TMS320C6000 Programmer's Reference[R].USA:Texas Instruments,2002.

[8] Texas Instruments.TMS320C64X Image/video Processing Library Programmer's Reference[R].USA:Texas Instruments,2003.

猜你喜歡
信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
7個信號,警惕寶寶要感冒
媽媽寶寶(2019年10期)2019-10-26 02:45:34
孩子停止長個的信號
《鐵道通信信號》訂閱單
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
基于Arduino的聯鎖信號控制接口研究
《鐵道通信信號》訂閱單
基于LabVIEW的力加載信號采集與PID控制
Kisspeptin/GPR54信號通路促使性早熟形成的作用觀察
主站蜘蛛池模板: 国产麻豆福利av在线播放| 呦视频在线一区二区三区| 色成人综合| 综合五月天网| 欧美激情视频一区二区三区免费| 麻豆a级片| 97国产一区二区精品久久呦| 日韩精品久久无码中文字幕色欲| 亚洲综合一区国产精品| 99ri国产在线| 9啪在线视频| 婷婷色婷婷| 亚洲人成日本在线观看| 国产一级二级在线观看| 成人午夜天| 亚洲精品成人福利在线电影| 精品自窥自偷在线看| av性天堂网| 成人精品免费视频| 国产福利在线免费| 亚洲午夜福利在线| 欧美日韩久久综合| 国产精品一区二区在线播放| 亚洲欧美日韩成人在线| 日本道综合一本久久久88| 久久这里只有精品2| 中文字幕乱妇无码AV在线| 久久99热这里只有精品免费看| 国模粉嫩小泬视频在线观看| 亚洲国产中文在线二区三区免| 四虎在线观看视频高清无码| 色综合五月| 国产无码网站在线观看| 国产丝袜一区二区三区视频免下载| 午夜天堂视频| 高清色本在线www| 日韩小视频在线播放| 亚洲日本中文综合在线| 成人午夜网址| 国产一在线| 亚洲日韩精品伊甸| 国产视频你懂得| 中文字幕天无码久久精品视频免费| 国产视频你懂得| 亚洲视频a| 福利片91| 欧洲一区二区三区无码| 亚洲精品免费网站| 福利小视频在线播放| 91成人精品视频| 性网站在线观看| a毛片基地免费大全| 亚洲a免费| www.youjizz.com久久| 国产精品三区四区| 激情综合激情| 亚洲国产成人久久精品软件| 日韩国产综合精选| 国产精品毛片一区| 国产精品区网红主播在线观看| 91在线播放国产| 欧美一区二区福利视频| 欧美中文字幕一区| 免费国产无遮挡又黄又爽| 大学生久久香蕉国产线观看 | 亚洲天堂在线免费| 激情午夜婷婷| 波多野结衣一区二区三区四区| 亚洲视频无码| 欧美精品伊人久久| 色综合中文综合网| 亚洲视频色图| 中文无码毛片又爽又刺激| 2024av在线无码中文最新| 天天婬欲婬香婬色婬视频播放| 国产人成在线观看| 熟女成人国产精品视频| 中国黄色一级视频| 国产成人久久综合一区| 亚洲国产一区在线观看| 久久久久青草大香线综合精品| 精品国产美女福到在线不卡f|