《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于DVI和FPGA的視頻疊加器設計
基于DVI和FPGA的視頻疊加器設計
來源:電子技術應用2011年第6期
趙艷軍,何其銳,施錫濤
電子科技大學 光電信息學院,四川 成都610054
摘要: 利用FPGA作為主控單元,以數字視頻接口DVI為視頻接口、TI公司的TFP401和TFP410為視頻信號的編解碼芯片、ISSI公司的SRAM IS61LV10248-8TI為存儲單元完成視頻疊加器的設計。通過該系統,從路圖像的非黑像素能夠覆蓋主路圖像相同坐標的像素。
中圖分類號: TP391.4
文獻標識碼: A
文章編號: 0258-7998(2011)06-0031-04
Implementation of the device for video overlay based on DVI and FPGA
Zhao Yanjun,He Qirui,Shi Xitao
(School of Optoelectronic Information, University of Electronic Science and Technology of China, Chengdu 610054,China
Abstract: With FPGA as the master controller, DVI as the video interface, TFP401 and TFP410 of TI company respectively as the decoder and encoder chip, the SRAM IS61LV10248-8TI of ISSI company as the storage unit, the device for video overlay is implemented. Through this device, the non-black pixels of the slave image can overlay the pixels at the same location of the master image.
Key words : digital video overlay;FPGA;T.M.D.S


 飛機研發過程中,需要對包含目標信息和地圖信息的機載視頻信號進行調試。但是機載顯示終端普遍存在價格昂貴、使用壽命短等缺點,如果使用它不斷地調試機載視頻信號,則機載顯示終端的消耗會增大,研發成本將大幅提高。
    本文介紹了一種DVI視頻信號疊加器的設計方案,可以對兩組相同分辨率和刷新頻率的DVI視頻信號轉化、合成并輸出。通過該系統,從路圖像的非黑像素能夠覆蓋主路圖像相同坐標的像素,從而完成對機載顯示終端的模擬。該方案主要以1024×768@60Hz的視頻源為研究對象,可根據實際需要調節,并可支持多種分辨率和刷新頻率(640×480@60Hz,800×600@60Hz,1024×768@60Hz)。
    由于設計了這種模擬裝置,因此不必用機載顯示終端調試機載視頻信號,從而減少對機載顯示終端的消耗。DVI視頻信號疊加器的使用,節約了開發成本。
1 DVI接口
    數字視頻接口(DVI)是一種適應數字顯示器飛速發展而產生的顯示接口。DVI 標準由 DDWG(Digital Display Working Group)于1999年4月正式推出,該組織包括了Intel、IBM、HP、Silicon Image、NEC等眾多芯片及整機的生產廠家,因而 DVI 標準具有廣泛的業界支持[1]。DVI的接口主要有兩種類型:DVI-Digital(DVI-D),只支持數字式顯示器,共 24 個 引 腳;DVI-Integrated(DVI-I),兼容模擬和數字的連接,共29個引腳。計算機顯卡一般有DVI-I和VGA兩個接口。本設計選用的是 DVI-I 接口,相對于VGA(Video Graphics Array)接口,其優勢突出,DVI傳輸的是數字信號,數字圖像信息不需經過數字→模擬→數字繁瑣的轉換過程,就會直接被傳送到顯示設備上,大大節省了時間,因此它的速度更快,能有效消除拖影現象。而且VGA模擬信號易受干擾,DVI信號則抗干擾能力強,圖像信號沒有衰減,色彩更純凈、逼真。
2 VESA標準介紹
    VESA(Video Electronics Standards Association)即視頻電子標準協會,主要致力于制訂并推廣顯示相關標準。它規定了各種分辨率和刷新頻率的顯示監視器定時標準(簡稱VESA標準)。
2.1 VESA標準時序圖與參數定義
    從圖 1可以看出[2],VESA標準包括場同步(VSYNC)、行同步(HSYNC)、像素數據有效(DE)、像素時鐘(CLK)、像素數據(Data,一般為24 bit)五組信號。

 

 

    VESA標準的五組視頻信號之間有嚴格的定時參數,場(行)掃描包括場(行)消隱期和場(行)有效顯示期(即Addr Time)。場(行)消隱期又包括同步期(Sync)、后肩(Back Porch)、頂(左)邊(Top (Left)Border)、底(右)邊(Bottom (Right)Border)、前肩(Front Porch)。圖 1以行同步極性和場同步極性都是負極性為例,即同步期為低電平[2]。關于同步極性的規定(如在1 024×768@60Hz的視頻格式下),如圖2中“Hor Sync Polarity=NEGATIVE”,“Ver Sync Polarity= NEGATIVE”所示。

2.2 VESA參數值舉例(1 024×768@60Hz)
    VESA同樣規定了各種參數在不同分辨率和刷新頻率的具體值,例如1 024×768@60Hz的定時參數值如圖2所示[2]。結合圖 1與圖2便可容易地用VHDL語言生成1 024×768@60Hz的時序信號。
3 系統框圖
    系統總體框圖如圖 3所示,大致可分為五個部分:DVI接口、DVI解碼電路、FPGA主控制器及存儲器電路、DVI編碼電路。本設計只選取了兩路綠色數據輸入信號進行處理,故以下的像素數據信號(Data)無特殊說明都是綠色的8位信號。

    連接DVI接口的計算機顯卡,通過DDC[3,4]接口讀取存儲在EEPROM中的EDID[3]數據,在通信握手成功后,向DVI接口發出T.M.D.S視頻信號。DVI接口傳輸的T.M.D.S時序碼流,經過T.M.D.S解碼電路可以被解碼為VESA標準的數字視頻信號。SRAM1(SRAM3)與SRAM2(SRAM4)構成VESA1(VESA2)鏈路的一組乒乓RAM,輪流存儲VESA1(VESA2)鏈路的像素數據。FPGA讀取已存儲的像素數據進行疊加操作并產生VESA標準的視頻信號,然后通過VESA3鏈路發送到T.M.D.S編碼電路。T.M.D.S編碼電路將VESA3鏈路的VESA標準的信號編碼成T.M.D.S時序碼流,最后將其傳送到DVI接口,供顯示器顯示。引入乒乓RAM是由于即使兩路VESA視頻信號分辨率和刷新頻率相同,兩者一般也存在非零的相位差,所以需要存儲器對它們的像素數據進行存儲。
    T.M.D.S解碼電路的解碼芯片采用TFP401,T.M.D.S編碼電路的編碼芯片采用TFP410。SRAM選用IS61LV-
10248-8TI,其讀寫周期為8 ns,存儲空間為1 M×8 bit,能夠滿足系統像素時鐘最高為65 MHz、最高分辨率為1024×768的要求。
4 工作流程
    FPGA內部工作模塊如圖4所示。下面簡要闡述關鍵信號的數據流向。

    場同步極性判斷模塊的功能是根據輸入的VESA1信號判斷出場同步極性(VSP),因VESA1和VESA2視頻格式相同,只需判斷VESA1的場同步極性。VESA1(VESA2)寫地址生成模塊的功能是利用場同步極性實現寫地址和像素位置的合理對應。輸出時序、寫地址生成模塊的功能是利用場同步極性、VESA1寫地址生成模塊生成的寫地址a_write1和VESA1中的場同步信號,實現分辨率的判斷,進而結合其他信號完成輸出時序的生成和讀地址的生成。SRAM控制模塊負責根據上述生成的讀地址和寫地址,寫入兩路VESA信號的新的像素數據,讀出先前存儲的兩路VESA信號像素數據。被讀出的兩個像素點將用于輸出時序、寫地址生成模塊的像素疊加操作,產生的像素作為輸出像素。
4.1 場同步極性(Ver Sync Polarity)判斷
    由于DE1=1期間,VSYNC1信號必然處于非同步期,此時的電平與同步期相反。所以,在DE1=1時,若VSYNC1=1,則記為VSP=0(Ver Sync Polarity=NEGATIVE),否則,記為VSP=1(Ver Sync Polarity=POSITIVE)。在實現該模塊的編程中,采用VESA1視頻信號中的CLK1像素時鐘信號上升沿來同步此進程,可以保證產生的信號穩定。
4.2 VESA1和VESA2寫地址生成
    因為VESA1寫地址生成與VESA2寫地址生成類似,這里只介紹VESA1的寫地址(a_write1)生成。由于系統中SRAM的地址總線為20位(尋址能力1M),所以a_write1為20位。若將輸入視頻信號的分辨率記為def,則VESA1一幀像素數據所需SRAM空間范圍是0~def-1。因此,在場同步期間(VSYNC1=VSP),可令a_write1<=220-1。在非場同步期間,若處于像素數據有效期(DE1=1),則當像素時鐘(CLK1)上升沿到來時,對a_write1實行自加一操作(假設已設置T.M.D.S解碼器1輸出的控制信號及像素數據在CLK1的上升沿前后穩定);若處于像素數據無效期(DE1&ne;0),則a_write1保持不變。這樣,在一幀圖像期間,對應從圖像左上角開始計數的每個像素數據,便可形成0~def-1的地址范圍。
4.3 輸出時序、讀地址生成
4.3.1 分辨率判斷

      a_write1(VESA1寫地址)的范圍是0~def-1,而a_write1完成從def-1到0跳變的觸發源正是場同步信號(VSYNC1)從非同步期到同步期的跳變。因此,可定義一信號def_clk,當VSYNC1&ne;VSP時,def_clk<=0,否則,def_clk<=1。這樣,當def_clk上升沿到來時,正是場同步信號從非同步期到同步期的跳變,此時若令20位信號def_1<= a_write1(等于def-1),且令def<=def_1+1,則可得真正的分辨率,。
4.3.2 暫時輸出時序控制信號生成
    VESA標準的控制信號包括VSYNC、HSYNC、DE。由于已知兩路視頻信號的分辨率(def),這時將VESA1的像素時鐘(CLK1)作為暫時的輸出時序像素時鐘(CLK33),再結合VESA標準的介紹,便可生成分辨為def的暫時的輸出時序控制信號VSYNC33、HSYNC33、DE33。
4.3.3 VESA3讀地址生成
    由于此地址生成方法與VESA1和VESA2寫地址生成方法相同,只是此處生成的地址是SRAM控制器用來讀取像素數據而已,故不再贅述。
4.3.4 換場信號生成
    當主時序換場時,每一路視頻信號的兩片SRAM需要交換讀寫方式,即若換場前讀SRAM1、SRAM3,寫SRAM2、SRAM4,則換場后讀SRAM2、SRAM4,寫SRAM1、SRAM3。因此需要一個信號在主時序相鄰兩場的電平不同,即換場信號,記為v_trans。此信號用來控制圖 4中SRAM控制模塊的讀寫方式。
    v_trans的生成方式比較簡單,只需在VSYNC33的上升沿到來時將v_trans取反即可。
4.3.5 輸出時序同步處理和疊加像素生成
    由于信號在FPGA生成的電路存在延遲,主時序控制信號和像素時鐘信號可能產生不同步現象。因此需要對控制信號進行同步處理,同步期間同時生成像素數據Data3(VESA3像素數據)并輸出。VESA3中的像素時鐘直接短接CLK33即可。Data11(Data22)是從SRAM中讀取的VESA1(VESA2)鏈路像素數據。
    同步過程為CLK33下降沿到來時輸出控制信號和像素數據。由于本文將VESA1作為主路、VESA2作為從路,所以要將VESA2信號疊加在VESA1上。疊加算法為:若VESA2第i個像素點(Data22)為黑色(Data22=0),則輸出的VESA3第i個像素為VESA1的第i個像素(Data11),即Data3<=Data11;否則,輸出的VESA3第i個像素為VESA2的第i個像素,即Data3<=Data22。
4.4 SRAM控制
    將SRAM1和SRAM2分為一組,對應VESA1鏈路;將SRAM3和SRAM4分為一組,對應VESA2鏈路。SRAM控制模塊需要對每一組中的兩塊SRAM輪流進行讀寫操作。若v_trans=0,則用VESA3讀地址生成模塊產生的地址a_read來讀取SRAM1、SRAM3,分別得像素數據Data11、Data22,同時用VESA1、VESA2寫地址生成模塊產生的地址a_write1、a_write2分別將Data1、Data2寫入SRAM2、SRAM4;否則,用地址a_read讀取SRAM2、SRAM4,分別得像素數據Data11、Data22,同時用地址a_write1和a_write2分別將Data1和Data2寫入SRAM1、SRAM3。Data11、Data22被送至輸出時序、讀地址生成模塊進行疊加像素生成。
5 實驗結果
    對于1 024&times;768@60Hz的VESA時序,控制信號(vsync,hsync,de)和像素時鐘(idck)的仿真結果如圖 5所示,其他分辨率的仿真圖不再給出。經過測量場同步信號和行同步信號的周期分別為16.7 ms、20.7 ?滋s,與VESA標準[2]一致,其他參數經測量也吻合,不再列舉。

    由于只對兩路視頻中的綠色信號進行了疊加,顯示色數有些不足。后期研究可向全彩色視頻疊加方向努力。但彩色信號疊加與綠色信號疊加在原理上相同,只是意味著要選用引腳數更多的FPGA。
參考文獻
[1] Digital Display Working Group.Digital visual interface DVI,Revision1.0.1999,4.
[2] Video Electronics Standards Association.VESA and industry standards and guidelines for computer display monitor  timing(DMT).Version 1.0,Revision 10,2004.
[3] Video Electronics Standards Association.VESA E-EDID  implementation guide.Version1.0,2001.
[4] Video Electronics Standards Association.Display data channel  (DDC) specification.Version 3,1997.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 久久精品国产这里是免费| 人妻免费一区二区三区最新| 国产激爽大片高清在线观看| 国产视频第一页| av在线手机播放| 少妇激情av一区二区| 中文字幕视频免费在线观看| 日韩一区二区三区电影| 亚洲aⅴ男人的天堂在线观看 | 一级做a爱片特黄在线观看| 色噜噜狠狠一区二区| 国产成人不卡亚洲精品91| 视频二区调教中字知名国产| 国产超级乱淫视频播放免费| aaaaaa精品视频在线观看| 女人张开腿让男桶喷水高潮| 三级在线看中文字幕完整版| 欧美午夜伦理片| 亚洲熟女综合一区二区三区| 色片免费在线观看| 国产孕妇孕交大片孕| 久碰人澡人澡人澡人澡人视频| 国产精品任我爽爆在线播放| 69视频在线观看| 国语自产精品视频在线看| 中文字幕日韩wm二在线看| 日本免费色网站| 久久午夜夜伦鲁鲁片免费无码 | 日本夜爽爽一区二区三区| 久久精品亚洲综合专区| 日韩欧美卡一卡二卡新区| 久青草久青草视频在线观看| 最近中文电影在线| 乱小说欧美综合| 最新日韩在线观看| 五月婷婷六月天| 最新精品亚洲成a人在线观看| 亚洲AV无码成人网站在线观看| 最近更新中文字幕第一电影| 亚洲JIZZJIZZ中国少妇中文| 李小璐三级在线视频|