亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于FPGA的視頻播放器

        2010-06-25 09:38:36趙小歡夏靖波郭威武
        電視技術(shù) 2010年4期
        關(guān)鍵詞:視頻信號(hào)時(shí)序時(shí)鐘

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

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

        1 引言

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

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

        2 總體設(shè)計(jì)思想

        2.1 系統(tǒng)介紹

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

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

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

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

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

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

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

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

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

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

        3.1 視頻解碼模塊

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

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

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

        3.2 視頻圖像緩沖模塊

        SAA7111A場(chǎng)同步信號(hào)VREF、行同步信號(hào)HREF、奇偶場(chǎng)信號(hào)RTS0、像素時(shí)鐘信號(hào)LLC2的時(shí)序見(jiàn)圖3。

        圖3 FPGA圖像采集時(shí)序圖

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

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

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

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

        3.3 TFT LCD控制模塊

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

        圖4 LCD顯示框圖

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

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

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

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

        1)S0為幀同步脈寬階段。INT_Syn到來(lái),標(biāo)志一幀的開(kāi)始,此時(shí)VSYNC為1,幀有效信號(hào)VDEN為0,對(duì)HSYNC計(jì)數(shù)從0到VSPW。

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

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

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

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

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

        圖6 TFT LCD顯示仿真時(shí)序

        3.4 雙緩存控制模塊

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

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

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

        圖8 LCD顯示視頻

        4 小結(jié)

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

        筆者將視頻的采集以及TFT LCD的驅(qū)動(dòng)集成在一塊FPGA中,實(shí)現(xiàn)了視頻播放的功能。同時(shí),該方案與其他方案相比,不僅減小了視頻采集與顯示時(shí)鐘同步的難度,又縮小了系統(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ì)與驗(yàn)證[J].計(jì)算機(jī)與數(shù)字工程,2004,32(1):5-8.

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

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

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

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

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

        猜你喜歡
        視頻信號(hào)時(shí)序時(shí)鐘
        時(shí)序坐標(biāo)
        基于Sentinel-2時(shí)序NDVI的麥冬識(shí)別研究
        別樣的“時(shí)鐘”
        古代的時(shí)鐘
        淺析新一代視頻信號(hào)ICtCp
        短距視頻信號(hào)無(wú)線通信網(wǎng)絡(luò)
        有趣的時(shí)鐘
        一種毫米波放大器時(shí)序直流電源的設(shè)計(jì)
        電子制作(2016年15期)2017-01-15 13:39:08
        時(shí)鐘會(huì)開(kāi)“花”
        DPBUS時(shí)序及其設(shè)定方法
        河南科技(2014年15期)2014-02-27 14:12:36
        色偷偷av男人的天堂| 国产精品国产三级国产剧情| 日本xxxx色视频在线观看免费| 少妇无码av无码一区| 国产AV边打电话边出轨| 男女激情床上视频网站| 护士人妻hd中文字幕| 婷婷色在线视频中文字幕| 亚洲中字永久一区二区三区| 一区二区三区四区国产99| 亚洲国产精品第一区二区| 国产精品久久码一区二区| 蜜桃精品国产一区二区三区 | 国产精品福利影院| 国产在线精品亚洲视频在线 | 中文字幕在线看精品乱码| 99久久超碰中文字幕伊人| 亚洲日韩欧美国产高清αv| 国产美女黄性色av网站| 91精品国产乱码久久中文| 人人爽久久涩噜噜噜丁香| 中日韩欧美在线观看| 一本久道视频无线视频试看| 天天综合天天爱天天做| 三年片免费观看大全国语| 国产成人福利在线视频不卡| 日本免费久久高清视频| 精品久久久久久成人av| 狠狠狠色丁香婷婷综合激情 | 精品人妻日韩中文字幕| 亚洲av无码一区东京热 | 国产成人精品午夜二三区波多野| 亚洲区在线| 亚洲成生人免费av毛片| 邻居少妇张开腿让我爽了一夜| 99久久99久久精品国产片果冻| 国产对白刺激在线观看| 亚洲综合第一页中文字幕| аⅴ资源天堂资源库在线| 亚洲av日韩片在线观看| 高清中文字幕一区二区三区|