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

一種基于FPGA的視頻播放器

2010-06-25 09:38:36趙小歡夏靖波郭威武
電視技術(shù) 2010年4期
關(guān)鍵詞:信號設(shè)計

趙小歡,夏靖波,趙 旭,郭威武

(中國人民解放軍空軍工程大學(xué) 電訊工程學(xué)院,陜西 西安 710077)

1 引言

視頻圖像信號的突出特點是信息量巨大,以我國數(shù)字廣播中廣泛采用的PAL制式為例,標準的數(shù)字化PAL電視分辨力為720×576,24 bit的色彩位深,1幀圖像的信息量為 720×576×24 bit=9.95328 Mbit,而 PAL 標準中每秒掃描25幀圖像,則每秒傳送的信息量為9.95328×25=248.832 Mbit。另一方面,視頻信號需要嚴格的時鐘同步,在視頻的采集與顯示過程中,即使僅一個像素錯位,整幅畫面也會失步。CPLD與FPGA等可編程邏輯器件集成度與速度都有很大的提高,而且價格較低,在圖像顯示控制方面有較多應(yīng)用。文獻[1],[2]采用可編程邏輯器件完成LCD控制電路設(shè)計,文獻[3]設(shè)計了一種LCD控制器的IP核,基于FPGA的LCD控制器在靈活性與價格方面都比專用顯卡芯片具有優(yōu)勢。

本設(shè)計基于“FPGA+SAA7111A”的結(jié)構(gòu),利用 FPGA的硬件并行處理和在線可編程能力解決視頻信號信息量大和制式繁多的問題,通過Verilog HDL編程實現(xiàn)視頻采集以及TFT LCD驅(qū)動等各種復(fù)雜時序信號的產(chǎn)生與控制,實現(xiàn)了高質(zhì)量、小體積、低成本的視頻播放器。

2 總體設(shè)計思想

2.1 系統(tǒng)介紹

電視信號除了需要傳送輝度信號Y以外,還必須用次載波來傳送色差信號BY及RY。復(fù)合視頻信號將BY及RY以3.58 MHz的次載波載送在Y信號里,同時還包括了行同步信號、行消隱信號、場同步信號、場消隱信號等同步信號。為了得到圖像信號,首先需要采用梳狀濾波器將3.58 MHz的色度信號與Y信號分離,得到Y(jié),C信號(即S-Video),然后以不同的速率對這兩路信號采樣、編碼就得到各種標準的圖像信號。

本設(shè)計采用Philips公司的SAA7111A來完成復(fù)合視頻信號的解碼。SAA7111A是一種增強型視頻輸入處理器芯片,它能夠完成視頻制式自動識別、A/D變換、同步時序信號分離、亮度色度調(diào)整、色彩空間變換等功能,極大地減輕了設(shè)計的復(fù)雜度和體積。同時,SAA7111A是一種標準的I2C器件,需要通過I2C總線對其初始化。為了減小視頻播放器的體積及成本,設(shè)計中采用FPGA模擬I2C主控制器來完成SAA7111A的配置過程。

設(shè)計中采用的TFT LCD為光聯(lián)科技的UMSH-8044MD-T。該TFT LCD分辨力為320×240,支持RGB(5∶6∶5)格式圖像顯示。本設(shè)計通過FPGA產(chǎn)生LCD需要的各種時序信號,驅(qū)動該TFT LCD完成視頻播放。

2.2 系統(tǒng)結(jié)構(gòu)

該系統(tǒng)結(jié)構(gòu)如圖1所示,它主要完成對視頻信號的采集并實時播放。整個視頻系統(tǒng)由3部分組成。

圖1 系統(tǒng)結(jié)構(gòu)框圖

1)視頻解碼模塊,該部分通過FPGA來配置視頻處理芯片SAA7111A,實現(xiàn)模擬視頻信號的數(shù)字化,為系統(tǒng)后面的模塊提供RGB(5∶6∶5)格式的標準數(shù)字視頻信號。

2)圖像緩存與控制模塊。該部分是整個系統(tǒng)的關(guān)鍵,它協(xié)調(diào)著采集與顯示的同步。一方面通過FPGA編程控制SRAM存儲所需分辨力的數(shù)字視頻信號;另一方面,采用2塊SRAM實現(xiàn)雙緩存,通過乒乓機制,確保FPGA向一塊SRAM寫圖像數(shù)據(jù)的同時,LCD能夠接收到另一塊SRAM的數(shù)據(jù),始終保證LCD接收到連續(xù)、穩(wěn)定的視頻流。

3)TFT LCD驅(qū)動模塊,該部分通過FPGA產(chǎn)生LCD顯示時序,實現(xiàn)TFT LCD顯卡的功能,確保SRAM中的數(shù)據(jù)正確輸出到LCD。

3 系統(tǒng)具體設(shè)計及實現(xiàn)

3.1 視頻解碼模塊

SAA7111A解碼芯片需要通過I2C總線對其初始化才能正常工作。由于I2C總線時序比較簡單,并且該設(shè)計僅涉及到單主控制器、單從器件的情況,不需要仲裁過程,更加降低了難度,因此這里采用FPGA模擬I2C主控制器來完成SAA7111A的配置過程。I2C總線時序如圖2所示,每次傳送完1 byte后,需要接收到從器件的響應(yīng)后再傳送下一字節(jié)。

圖2 I2C數(shù)據(jù)傳送時序

為了判斷SAA7111A是否解碼正確,建議同時編寫對SAA7111A的讀程序,通過讀取SAA7111A的狀態(tài)寄存器0x1F的值來判斷解碼芯片的工作狀態(tài)。值得注意的是,SAA7111A對晶振精度要求較高,稍有偏差就會造成顏色分量的失真。前兩次采用無源晶振,SAA7111A均解碼不正確,建議采用精度更高的有源晶振。

3.2 視頻圖像緩沖模塊

SAA7111A場同步信號VREF、行同步信號HREF、奇偶場信號RTS0、像素時鐘信號LLC2的時序見圖3。

圖3 FPGA圖像采集時序圖

當(dāng)RTS0為1時,表明輸出為奇數(shù)場,當(dāng)場同步信號VREF有效時,對行同步信號HREF計數(shù)到83時,啟動行有效信號。同理當(dāng)行同步信號HREF有效時,對像素時鐘信號LLC2計數(shù)到200時,啟動數(shù)據(jù)有效信號,開始采集圖像數(shù)據(jù)[4]。采用該方式可以靈活的控制采集信號的分辨力,這里將分辨力設(shè)為320×240,是為了滿足TFT LCD分辨力的需要。由于SAA7111A解碼出來的數(shù)字視頻信號采用隔行掃描的方式,而TFT LCD是逐行顯示,所以該奇數(shù)場采集了120行數(shù)據(jù)。

在這里FPGA接收4個輸入時鐘,即VREF,HREF,RTS0和LLC2。為了保證時鐘的可靠性,將像素時鐘信號LLC2引入FPGA的全局時鐘引腳作為全局時鐘。

對圖像數(shù)據(jù)的定位,采用下列方法:調(diào)用FPGA的ROM宏模塊,建立1個表,保存行首地址,每次存儲數(shù)據(jù)時,行首地址采用查表得到,行內(nèi)地址采用計數(shù)的方式[5-6]。

這樣做的好處是:1)可消除隔行掃描信號與逐行掃描信號的差異,由于行首地址已固定,行內(nèi)地址都采用計數(shù)的方式,奇偶場信號的存儲方法完全一樣。2)可準確定位整幅圖像每行的行首地址,即使某一個數(shù)據(jù)受到干擾,則失步只存在于該像素所在行,其他行仍然同步。

3.3 TFT LCD控制模塊

如圖4所示,像素數(shù)據(jù)需要在行同步信號HSYNC、幀同步信號VSYNC、像素時鐘CLK以及使能信號ENAB(圖中由V_EN和H_EN)的配合下才得以在LCD上正確顯示。一副圖像被各種時序信號分成了若干區(qū)域,只有圖中有效像素區(qū)的數(shù)據(jù)會被顯示到LCD上。當(dāng)行同步信號HSYNC、幀同步信號VSYNC均處于有效像素區(qū)時,輸出使能信號ENAB有效,使數(shù)據(jù)輸出;而當(dāng)HSYNC和VSYNC處于消隱期間,關(guān)閉使能信號,禁止數(shù)據(jù)輸出。

圖4 LCD顯示框圖

圖5顯示了VSYNC與HSYNC的時序關(guān)系。由于該時序關(guān)系比較復(fù)雜,而且LCD對時序要求比較嚴格,這里采用有限狀態(tài)機來產(chǎn)生各種時序信號[7]。

圖5 VSYNC產(chǎn)生時序圖

系統(tǒng)采用的TFT LCD標準像素時鐘為6.4 MHz,為了便于時鐘同步,這里將LLC2二分頻作為顯示時的像素時鐘(即CLK=LLC2/2=6.25 MHz)。系統(tǒng)中采用的攝像頭輸出的是PAL信號,則顯示1屏圖像需要0.0204 s。而SAA7111A可在1 s采集25幀圖像,即采集1幀圖像需要0.04 s時間。這樣采集1幀圖像的同時LCD大約需要刷新2次。不妨采用奇偶場信號RTS0的時鐘變化來產(chǎn)生INT_Syn標志表示1幀的開始,這樣需要LCD每次讀SRAM中的數(shù)據(jù)2次后才能切換到讀另一塊SRAM。

從圖5可以看出,VSYNC的產(chǎn)生可以分為4個狀態(tài):S0,S1,S2 和 S3。 各狀態(tài)之間的轉(zhuǎn)換為 S0→S1→S2→S3→S0,通過狀態(tài)機描述如下:

1)S0為幀同步脈寬階段。INT_Syn到來,標志一幀的開始,此時VSYNC為1,幀有效信號VDEN為0,對HSYNC計數(shù)從0到VSPW。

2)S1為垂直后掃階段。此時VSYNC為0,幀有效信號VDEN為0,對HSYNC計數(shù)從0到VBPD。

3)S2為幀有效階段。此時VSYNC為0,幀有效信號VDEN為1,對HSYNC計數(shù)從0到LINEVAL。

4)S3為垂直前掃階段。此時VSYNC為0,幀有效信號VDEN為0,對HSYNC計數(shù)從0到VFPD。

行同步HSYNC信號的產(chǎn)生過程同VSYNC類似,只不過HSYNC的各個狀態(tài)是對CLK計數(shù)。當(dāng)幀有效信號VDEN與行有效信號HDEN均為1時,打開LCD數(shù)據(jù)使能端ENAB,LCD接收SRAM送來的數(shù)據(jù)。當(dāng)然,由于LCD的差異,可能在時序產(chǎn)生時需要對前消隱、后消隱信號有所調(diào)整才能顯示出無錯位的圖像。

通過Verilog HDL編程語言來描述以上狀態(tài)機,在Quartus II 6.0開發(fā)環(huán)境中仿真得到TFT LCD顯示時序(見圖6)。通過該仿真可以看出,采用有限狀態(tài)機較好地解決了視頻顯示復(fù)雜時序的問題,得到了TFT LCD顯示所需的各種時序信號。

圖6 TFT LCD顯示仿真時序

3.4 雙緩存控制模塊

以上分別介紹了視頻采集以及TFT LCD顯示驅(qū)動功能的實現(xiàn),但由于采集與顯示都是連續(xù)不間斷的,故需要協(xié)調(diào)采集與顯示的同步才能正常播放視頻。這里采用雙緩存結(jié)構(gòu),通過乒乓緩存操作確保LCD不間斷地接收數(shù)據(jù)[8]。當(dāng)FPGA向SRAM1寫入數(shù)據(jù)時,LCD接收來自SRAM2的數(shù)據(jù),這時LCD數(shù)據(jù)口和SRAM2相接,卻必須和SRAM1隔離;反過來,當(dāng)FPGA向SRAM2寫入數(shù)據(jù)時,LCD接收來自SRAM1的數(shù)據(jù),這時LCD數(shù)據(jù)口和SRAM1相接,卻必須和SRAM2隔離。這里采用如圖7所示電路解決這一問題。

圖7 雙緩存切換控制電路示意圖

圖7中,引入switch控制信號作為緩存切換標志,其中switch信號每當(dāng)RTS0上升沿到來時翻轉(zhuǎn)一次。當(dāng)switch 為 1 時,vpo[15∶0]與 sram1_data[15∶0]接通,而由于三態(tài)門為高組態(tài),vpo[15∶0]與 sram2_data[15∶0]隔離,而在數(shù)據(jù)輸出端通過多路選擇器使DATAB即sram2_data[15∶0]輸出到 lcd_data[15∶0]。同理,當(dāng) switch 為 0 時,vpo[15∶0]與 sram2_data[15∶0]接通而與 sram1_data[15∶0]隔離,lcd_data[15∶0]接收SRAM1的數(shù)據(jù)。而SRAM地址產(chǎn)生則比較簡單,只需要在每幀到來時從零開始計數(shù)即可。通過此種方案可以很好地解決視頻采集與顯示的切換,視頻播放效果如圖8所示,視頻播放比較流暢,清晰度較好。

圖8 LCD顯示視頻

4 小結(jié)

筆者設(shè)計并實現(xiàn)了一種基于FPGA的視頻播放器,經(jīng)過仿真與測試,每秒能夠播放25幀視頻,且適用于分辨力在720×576以下的各種TFT LCD。

筆者將視頻的采集以及TFT LCD的驅(qū)動集成在一塊FPGA中,實現(xiàn)了視頻播放的功能。同時,該方案與其他方案相比,不僅減小了視頻采集與顯示時鐘同步的難度,又縮小了系統(tǒng)的體積,更為重要的是該方案完全在線可編程,具有非常好的靈活性。另外,隨著數(shù)字圖像處理技術(shù)的日益發(fā)展及成熟,該方案也可作為圖像處理系統(tǒng)中的前端視頻采集部分,為數(shù)字圖像處理部分提供高速、可控的視頻流。

[1]LEI Jingming,ZHOU Xuechen.Dynamic dithering algorithm and frame rate control technique for liquid crystal display controller[C]//Proc.ASICON2003.[S.l.]:IEEE Press,2003:740-743.

[2]ITAKURA T, MINAMIZAKI H,SAITO T,et al.A 402-output TFTLCD driver IC with power control based on the number of colors selected[J].Solid-State Circuits,2003,38(3):503-510.

[3]程佺,沈緒榜.一種LCD顯示控制器IP核的設(shè)計與驗證[J].計算機與數(shù)字工程,2004,32(1):5-8.

[4]程穎,王銳.SAA7111A芯片在視頻圖像處理FPGA設(shè)計中的應(yīng)用[J].合肥工業(yè)大學(xué)學(xué)報:自然科學(xué)版,2007,30(11):1399-1403.

[5]武乾永,陳賓.基于FPGA的實時圖像數(shù)據(jù)采集模塊設(shè)計[J].微電子學(xué),2008,38(3):453-456.

[6]陳彬.基于FPGA的視頻圖像處理系統(tǒng)設(shè)計[D].重慶∶重慶大學(xué),2006.

[7]方勇,呂國強,彭良清,等.3D顯示器視頻轉(zhuǎn)換系統(tǒng)設(shè)計及其FPGA實現(xiàn)[J].液晶與顯示,2007,22(1):94-98.

[8]周劍波,鞏憲鋒,王長松,等.利用FPGA和USB總線的視頻圖像的采集與處理系統(tǒng)設(shè)計[J].北京科技大學(xué)學(xué)報,2006,28(9):886-889.

猜你喜歡
信號設(shè)計
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
何為設(shè)計的守護之道?
《豐收的喜悅展示設(shè)計》
流行色(2020年1期)2020-04-28 11:16:38
孩子停止長個的信號
瞞天過海——仿生設(shè)計萌到家
設(shè)計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計的信號盲抽取算法
主站蜘蛛池模板: 亚洲无线国产观看| 草逼视频国产| 亚洲av无码片一区二区三区| 尤物亚洲最大AV无码网站| 亚洲第一成人在线| 麻豆精品在线| 992tv国产人成在线观看| 97se亚洲| 国产第一页免费浮力影院| 一本一本大道香蕉久在线播放| 在线观看视频99| 九九热视频精品在线| 精品国产一区二区三区在线观看| 国产亚洲精品在天天在线麻豆 | 亚洲第一极品精品无码| 欧美高清国产| 98精品全国免费观看视频| 亚洲中文字幕精品| 国产91透明丝袜美腿在线| 欧美色视频网站| 不卡无码h在线观看| 国产精品19p| 国产探花在线视频| 日本欧美视频在线观看| 久久国产成人精品国产成人亚洲| 伊人精品视频免费在线| 国产内射一区亚洲| 欧美高清三区| 婷婷99视频精品全部在线观看| 国产成人福利在线| 沈阳少妇高潮在线| 精品福利视频网| 久久鸭综合久久国产| 中文字幕66页| 亚洲一区无码在线| 国产成人三级| 中文字幕一区二区人妻电影| 亚洲精品视频免费观看| 国产美女丝袜高潮| 国产拍揄自揄精品视频网站| 色九九视频| 国产高清不卡视频| 国产色偷丝袜婷婷无码麻豆制服| 在线观看亚洲天堂| 青青草国产在线视频| 伊人色在线视频| 精品久久久久久中文字幕女| 亚洲天堂777| 99精品免费欧美成人小视频 | 国产人成在线视频| 亚洲欧美综合另类图片小说区| 日韩一区二区在线电影| 538国产视频| 国产素人在线| 亚洲欧美不卡中文字幕| 国产精品妖精视频| 高清无码手机在线观看| 韩国福利一区| 91久久青青草原精品国产| 国内精品小视频福利网址| 亚洲黄色成人| 久久香蕉国产线看观| 亚洲自偷自拍另类小说| 欧美三级日韩三级| 欧美激情视频一区| 香蕉视频在线观看www| 国产第一页屁屁影院| 97在线视频免费观看| 日韩乱码免费一区二区三区| 亚洲欧洲日产国码无码av喷潮| 国产91高跟丝袜| 成人字幕网视频在线观看| 亚洲男人的天堂在线观看| 精品视频福利| 国产成人欧美| 伊人五月丁香综合AⅤ| 久久久久无码精品国产免费| a级毛片免费网站| 国产菊爆视频在线观看| 久久久久久久97| 国产午夜无码专区喷水| 亚洲精选高清无码|