本發(fā)明屬于高清視頻采集傳輸,尤其涉及一種基于fpga的視頻傳輸設(shè)計方法及系統(tǒng)。
背景技術(shù):
1、現(xiàn)階段,隨著微電子、光電通信、數(shù)字視頻、多媒體技術(shù)以及現(xiàn)代傳感技術(shù)的不斷提高,集成電路的廣泛應(yīng)用以及高速發(fā)展,特別是fpga(可編程門陣列)的廣泛普及,使得模擬視頻系統(tǒng)向著數(shù)字視頻系統(tǒng)的方向發(fā)展并逐步取代,同時數(shù)字視頻系統(tǒng)也向著高集成度、靈活性、通用性、可拓展性、兼容性、高分辨率、智能化以及超遠距離傳輸?shù)姆较虬l(fā)展,促使視頻系統(tǒng)在采集、緩存、處理、傳輸以及顯示技術(shù)不斷更新,基于fpga的視頻系統(tǒng)已逐步流行。
2、以太網(wǎng)傳輸技術(shù)因其傳輸距離遠、高抵抗力、超遠距離傳輸損耗低等優(yōu)點在一些軍工企業(yè)以及一些民用企業(yè)得到了廣泛的應(yīng)用,高速視頻傳輸技術(shù)的發(fā)展更是帶動了千兆以太網(wǎng)技術(shù)的廣泛普及。
3、通過上述分析,現(xiàn)有技術(shù)存在的問題及缺陷為:現(xiàn)有技術(shù)視頻數(shù)據(jù)的傳輸中,硬件板卡的面積和成本高,系統(tǒng)的通用性、靈活性以及兼容性差。
技術(shù)實現(xiàn)思路
1、為克服相關(guān)技術(shù)中存在的問題,本發(fā)明公開實施例提供了一種基于fpga的視頻傳輸設(shè)計方法及系統(tǒng)。
2、所述技術(shù)方案如下:基于fpga的視頻傳輸?shù)脑O(shè)計方法,該方法通過udp/ip/mac接收模塊、udp/ip/mac發(fā)送模塊、phy芯片工作模式配置模塊,ddr3?sdram控制器以及hdmi控制模塊的設(shè)計,在不調(diào)用ip核的情況下,用硬件描述語言verilog?hdl實現(xiàn)以太網(wǎng)視頻傳輸控制器數(shù)字電路底層驅(qū)動;在無外接物理層芯片下,通過verilog?hdl搭建verilog?hdl驅(qū)動電路完成hdmi物理層發(fā)送功能,最終完成與上位機的數(shù)據(jù)交互。
3、進一步,所述udp/ip/mac接收模塊的設(shè)計包括:接收端數(shù)據(jù)采樣轉(zhuǎn)換模塊、跨時鐘域時鐘同步模塊以及像素點信息提取模塊的設(shè)計;
4、所述接收端數(shù)據(jù)采樣轉(zhuǎn)換模塊設(shè)計包括:用fpga內(nèi)部的原語iddr將雙沿4bit數(shù)據(jù)轉(zhuǎn)換成單沿8bit數(shù)據(jù);
5、所述跨時鐘域時鐘同步模塊的設(shè)計包括:對接收端數(shù)據(jù)采樣轉(zhuǎn)換模塊接收的phy芯片端傳來的隨路時鐘phy_clk與fpga內(nèi)的系統(tǒng)時鐘存在的相位不匹配或時鐘頻率不一致,進行跨時鐘域的處理,將數(shù)據(jù)從物理層時鐘域跨越到fpga系統(tǒng)時鐘域;
6、所述像素點信息提取模塊的設(shè)計包括:對數(shù)據(jù)和使能信號經(jīng)過跨時鐘域處理模塊傳輸?shù)臄?shù)據(jù)進行rgb圖像信息提取。
7、進一步,進行像素點信息提取模塊的設(shè)計中,還添加乘法器電路,根據(jù)乘法器電路編寫的例化代碼模板,將圖像長寬的信息w與h相乘得到的結(jié)果作為ddr3?sdram控制器的緩存地址門限。
8、進一步,所述udp/ip/mac發(fā)送模塊設(shè)計包括網(wǎng)絡(luò)層ip協(xié)議、傳輸層udp協(xié)議、以及數(shù)據(jù)鏈路層mac子層的數(shù)據(jù)打包發(fā)送模塊、校驗和計算模塊、crc校驗算法模塊以及發(fā)送端數(shù)據(jù)采樣轉(zhuǎn)換模塊的設(shè)計;
9、所述數(shù)據(jù)打包發(fā)送模塊的設(shè)計包括:在發(fā)送數(shù)據(jù)之前填充前導(dǎo)碼、mac地址、ip首部以及udp的首部信息,填充為pc機能夠識別的協(xié)議數(shù)據(jù)包;
10、所述校驗和計算模塊設(shè)計包括:在數(shù)據(jù)的編碼上加檢驗或者糾錯的算法;
11、所述發(fā)送端數(shù)據(jù)采樣轉(zhuǎn)換模塊設(shè)計包括:將單沿8bit數(shù)據(jù)轉(zhuǎn)換成雙沿4bit數(shù)據(jù),與外部物理層phy芯片rgmii接口對接。
12、進一步,所述phy芯片工作模式配置模塊設(shè)計包括:
13、cmode0、cmode1、cmode2以及cmode3配置管腳連接不同數(shù)值的電阻,通過cmode2的外接電阻值和cmode3的外接電阻值,確定phy芯片的地址,并喚醒phy芯片正常工作;所述phy芯片還配置mdc和mdio兩個管腳,其中mdc為時鐘線,mdio為雙向數(shù)據(jù)線;
14、所述phy芯片進行硬件配置或者寄存器配置后,按照配置正常工作,物理層芯片向數(shù)據(jù)鏈路層mac子層提供多種接口的標(biāo)準(zhǔn),包括mii介質(zhì)無關(guān)接口、reduced?mii接口、gmii千兆介質(zhì)無關(guān)接口以及reduced?gmii接口。
15、進一步,所述mdc與mdio按照讀寫時序配置phy芯片內(nèi)特定功能寄存器,將phy芯片配置為restart_auto_negatiation(自動協(xié)商)工作模式,按照讀寫時序?qū)懭胩囟üδ芗拇嫫鞯闹怠?/p>
16、進一步,所述hdmi控制模塊設(shè)計包括vga控制模塊、8b10b編碼模塊以及并行轉(zhuǎn)串行模塊的設(shè)計,設(shè)計完成后實現(xiàn)hdmi發(fā)送端與上位機數(shù)據(jù)交互。
17、進一步,所述vga控制模塊的設(shè)計包括:使用640*480@60hz的vga接口時序,計算像素時鐘clk=800*525*60=25.2mhz,支持熱插拔以及音頻傳輸;
18、所述8bit轉(zhuǎn)10bit模塊設(shè)計包括:編碼后的二進制數(shù)據(jù)1和0的數(shù)量保持一致,使直流均衡;
19、所述并行轉(zhuǎn)串行模塊設(shè)計包括:在處理并串轉(zhuǎn)換時,使用xilinx提供的原語oserdese2,oserdese2支持把并行數(shù)據(jù)轉(zhuǎn)換成2、8、10以及14bit的串行序列化數(shù)據(jù),將oserdese2配置為并行數(shù)據(jù)轉(zhuǎn)換成10bit的模式,將兩個oserdese2原語進行級聯(lián)得到10bit的視頻數(shù)據(jù),其中一個作為主機,另一個作為從機。
20、本發(fā)明的另一目的在于提供一種基于fpga的視頻傳輸?shù)脑O(shè)計系統(tǒng),該系統(tǒng)實施所述的基于fpga的視頻傳輸?shù)脑O(shè)計方法,該系統(tǒng)包括:
21、udp/ip/mac接收模塊、udp/ip/mac發(fā)送模塊、phy芯片工作模式配置模塊,ddr3sdram控制器以及hdmi控制模塊實現(xiàn)數(shù)據(jù)自環(huán)收發(fā),在不調(diào)用ip核的情況下,用硬件描述語言verilog?hdl實現(xiàn)以太網(wǎng)視頻傳輸控制器數(shù)字電路底層驅(qū)動;在無外接物理層芯片下,通過verilog?hdl搭建verilog?hdl驅(qū)動電路完成hdmi物理層發(fā)送功能,最終完成與上位機的數(shù)據(jù)交互。
22、結(jié)合上述的所有技術(shù)方案,本發(fā)明所具備的有益效果為:本發(fā)明提供了基于fpga的千兆以太網(wǎng)數(shù)據(jù)傳輸控制器與hdmi發(fā)送端控制器的設(shè)計與實現(xiàn)過程,在不調(diào)用ip核的情況下,用verilog?hdl完成數(shù)據(jù)鏈路層mac子層、傳輸層udp協(xié)議以及網(wǎng)絡(luò)層ip協(xié)議的數(shù)字邏輯電路設(shè)計,在無外接hdmi物理層芯片的情況下,直接用verilog?hdl在fpga內(nèi)部搭建驅(qū)動電路完成物理層發(fā)送功能,最終實現(xiàn)視頻數(shù)據(jù)的高速傳輸及顯示。本發(fā)明節(jié)省了硬件板卡的面積和成本,提高了系統(tǒng)的通用性、靈活性以及兼容性。
1.一種基于fpga的視頻傳輸?shù)脑O(shè)計方法,其特征在于,該方法通過udp/ip/mac接收模塊(1)、udp/ip/mac發(fā)送模塊(2)、phy芯片工作模式配置模塊(3),ddr3?sdram控制器(4)以及hdmi控制模塊(5)的設(shè)計,在不調(diào)用ip核的情況下,用硬件描述語言verilog?hdl實現(xiàn)以太網(wǎng)視頻傳輸控制器數(shù)字電路底層驅(qū)動;在無外接物理層芯片下,通過verilog?hdl搭建verilog?hdl驅(qū)動電路完成hdmi物理層發(fā)送功能,最終完成與上位機的數(shù)據(jù)交互。
2.根據(jù)權(quán)利要求1所述的基于fpga的視頻傳輸?shù)脑O(shè)計方法,其特征在于,所述udp/ip/mac接收模塊(1)的設(shè)計包括:接收端數(shù)據(jù)采樣轉(zhuǎn)換模塊、跨時鐘域時鐘同步模塊以及像素點信息提取模塊的設(shè)計;
3.根據(jù)權(quán)利要求2所述的基于fpga的視頻傳輸?shù)脑O(shè)計方法,其特征在于,進行像素點信息提取模塊的設(shè)計中,還添加乘法器電路,根據(jù)乘法器電路編寫的例化代碼模板,將圖像長寬的信息w與h相乘得到的結(jié)果作為ddr3?sdram控制器(4)的緩存地址門限。
4.根據(jù)權(quán)利要求1所述的基于fpga的視頻傳輸?shù)脑O(shè)計方法,其特征在于,所述udp/ip/mac發(fā)送模塊(2)設(shè)計包括網(wǎng)絡(luò)層ip協(xié)議、傳輸層udp協(xié)議、以及數(shù)據(jù)鏈路層mac子層的數(shù)據(jù)打包發(fā)送模塊、校驗和計算模塊、crc校驗算法模塊以及發(fā)送端數(shù)據(jù)采樣轉(zhuǎn)換模塊的設(shè)計;
5.根據(jù)權(quán)利要求1所述的基于fpga的視頻傳輸?shù)脑O(shè)計方法,其特征在于,所述phy芯片工作模式配置模塊(3)設(shè)計包括:
6.根據(jù)權(quán)利要求5所述的基于fpga的視頻傳輸?shù)脑O(shè)計方法,其特征在于,所述mdc與mdio按照讀寫時序配置phy芯片內(nèi)特定功能寄存器,將phy芯片配置為restart_auto_negatiation(自動協(xié)商)工作模式,按照讀寫時序?qū)懭胩囟üδ芗拇嫫鞯闹怠?/p>
7.根據(jù)權(quán)利要求1所述的基于fpga的視頻傳輸?shù)脑O(shè)計方法,其特征在于,所述hdmi控制模塊(5)設(shè)計包括vga控制模塊、8b10b編碼模塊以及并行轉(zhuǎn)串行模塊的設(shè)計,設(shè)計完成后實現(xiàn)hdmi發(fā)送端與上位機數(shù)據(jù)交互。
8.根據(jù)權(quán)利要求7所述的基于fpga的視頻傳輸?shù)脑O(shè)計方法,其特征在于,所述vga控制模塊的設(shè)計包括:使用640*480@60hz的vga接口時序,計算像素時鐘clk=800*525*60=25.2mhz,支持熱插拔以及音頻傳輸;
9.一種基于fpga的視頻傳輸?shù)脑O(shè)計系統(tǒng),其特征在于,該系統(tǒng)實施如權(quán)利要求1-8任意一項所述的基于fpga的視頻傳輸?shù)脑O(shè)計方法,該系統(tǒng)包括: