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

基于FPGA的UDP點對點傳輸協(xié)議實現(xiàn)

2017-03-01 10:56:27付高原潘進(jìn)勇
電子設(shè)計工程 2017年2期
關(guān)鍵詞:系統(tǒng)

付高原,郭 臣,潘進(jìn)勇,施 雪

(河海大學(xué) 計算機與信息學(xué)院,江蘇 南京211100)

基于FPGA的UDP點對點傳輸協(xié)議實現(xiàn)

付高原,郭 臣,潘進(jìn)勇,施 雪

(河海大學(xué) 計算機與信息學(xué)院,江蘇 南京211100)

基于提升數(shù)據(jù)傳輸速率,提高數(shù)據(jù)傳輸實時性的目的,提出了一種基于UDP協(xié)議的點到點數(shù)據(jù)傳輸方案,并采用現(xiàn)場可編程邏輯門整列(FPGA)和以太網(wǎng)PHY芯片RTL8211EG實現(xiàn)點到點的UDP高速數(shù)據(jù)傳輸。通過對比傳統(tǒng)TCP/IP協(xié)議的工作原理,并結(jié)合相應(yīng)的理論分析,得出該系統(tǒng)在數(shù)據(jù)傳輸速率上具有一定的優(yōu)勢,且系統(tǒng)復(fù)雜度低,便于實現(xiàn)的結(jié)論。

UDP;FPGA;點到點;高速數(shù)據(jù)傳輸

隨著高清視頻影像,及視頻監(jiān)控等領(lǐng)域的需求越來越大,涉及高清視頻,音頻等大數(shù)據(jù)量數(shù)據(jù)傳輸?shù)膽?yīng)用項目越來越多,在這一類對實時性及傳輸速率有一定要求的項目當(dāng)中,網(wǎng)絡(luò)終端對于數(shù)據(jù)傳輸?shù)奶幚砟芰Τ闪酥萍s此類項目發(fā)展的重要因素,對比發(fā)現(xiàn),UDP協(xié)議相較于TCP協(xié)議而言,在可靠性上雖有欠缺,但在傳輸速率上占有一定優(yōu)勢,更加適合高速率數(shù)據(jù)傳輸?shù)膱鼍癧1-2]。而基于FPGA的應(yīng)用相較于傳統(tǒng)的軟件實現(xiàn)而言可以節(jié)省CPU資源,并且可使系統(tǒng)集成度得到一定的提升。

1 UDP協(xié)議及基于FPGA實現(xiàn)的優(yōu)點

TCP協(xié)議與UDP協(xié)議同屬于TCP/IP結(jié)構(gòu)體系的傳輸層協(xié)議,但相比于UDP協(xié)議,TCP協(xié)議不適合高速遠(yuǎn)距離網(wǎng)絡(luò)[3]。研究人員在TCP協(xié)議的基礎(chǔ)上提出了許多改進(jìn)方案,用以提高其傳輸性能,但受限于TCP協(xié)議本身復(fù)雜的擁塞控制機制和流量控制機制,TCP協(xié)議的改進(jìn)型在高速遠(yuǎn)距離網(wǎng)絡(luò)中的傳輸性能并不理想[4]。相比于TCP協(xié)議,UDP協(xié)議是一種不可靠的傳輸協(xié)議,數(shù)據(jù)傳輸?shù)目煽啃孕枰蠈咏涌谥械膽?yīng)用程序保證,在數(shù)據(jù)傳輸開始前,UDP協(xié)議不需要像TCP協(xié)議那樣通過三次握手建立連接,也沒有TCP協(xié)議復(fù)雜的擁塞控制機制和流量控制機制,UDP協(xié)議只保證通信間進(jìn)程的最基本要求,所以采用UDP這種非面向鏈接的不可靠傳輸協(xié)議能夠很好的解決數(shù)據(jù)傳輸?shù)膶崟r性及傳輸速率問題。與受內(nèi)部CPU控制的串行結(jié)構(gòu)不同,F(xiàn)PGA的并行結(jié)構(gòu)不受指令周期的影響,可以進(jìn)一步提高終端對于數(shù)據(jù)傳輸?shù)奶幚砟芰ΑMㄟ^Verilog語言靈活編寫UDP協(xié)議棧的控制結(jié)構(gòu),物理連接簡單且不需要外設(shè)驅(qū)動與大量的外圍控制電路,大大簡化了系統(tǒng)實現(xiàn)的難易程度,且運用靈活,可移植性強,系統(tǒng)集成度高。

2 系統(tǒng)原理及具體實現(xiàn)方法

2.1 系統(tǒng)原理

基于UDP/IP模型的層次劃分及收發(fā)流程如圖1所示。

圖1 UDP/IP協(xié)議棧收發(fā)過程示意圖

在整個收發(fā)過程中,傳輸層協(xié)議按照前面所分析的結(jié)論,為提高數(shù)據(jù)傳輸速率,只采用UDP協(xié)議。因?qū)崿F(xiàn)的是點到點的單一路徑數(shù)據(jù)傳輸,因此在不存在路徑選擇的問題,因此,也就不用實現(xiàn)ARP及RARP協(xié)議,降低了系統(tǒng)實現(xiàn)難度。

發(fā)送過程:發(fā)送過程實際是一個數(shù)據(jù)打包的過程,按照以太網(wǎng)幀結(jié)構(gòu)由內(nèi)到外的順序,以及TCP/IP模型各層協(xié)議的規(guī)定依次添加應(yīng)用程序端口號、UDP首部、IP首部、以太網(wǎng)幀首部等結(jié)構(gòu)。當(dāng)源主機的應(yīng)用程序需要發(fā)送數(shù)據(jù)給目的主機時,會將數(shù)據(jù)包發(fā)送到UDP/IP協(xié)議棧中進(jìn)行處理,首先數(shù)據(jù)包在傳輸層添加傳輸層首部信息,然后將添加了傳輸層首部的UDP數(shù)據(jù)包發(fā)送到網(wǎng)絡(luò)層添加網(wǎng)絡(luò)層首部生成IP數(shù)據(jù)包,然后將IP數(shù)據(jù)包發(fā)送給數(shù)據(jù)鏈路層添加以太網(wǎng)幀首部及尾部,然后將打包好的以太網(wǎng)幀發(fā)送到物理層通過網(wǎng)絡(luò)發(fā)送出去。

接收過程:當(dāng)目的主機接收到網(wǎng)絡(luò)中的以太網(wǎng)幀時,目的主機將接收到的以太網(wǎng)幀中所帶的地址信息與自身地址信息進(jìn)行匹配,并對匹配的以太網(wǎng)幀進(jìn)行解包處理。以太網(wǎng)驅(qū)動程序首先根據(jù)以太網(wǎng)幀首部中的相關(guān)字段確定該數(shù)據(jù)幀的類型,然后交給相應(yīng)的協(xié)議進(jìn)行解包處理,解出相應(yīng)的網(wǎng)絡(luò)層數(shù)據(jù)包,然后將網(wǎng)絡(luò)層數(shù)據(jù)包發(fā)送到網(wǎng)絡(luò)層進(jìn)行相應(yīng)的解包,解出相應(yīng)的傳輸層數(shù)據(jù)包然后發(fā)送到傳輸層進(jìn)行下一步處理,直到根據(jù)數(shù)據(jù)段中封裝的端口號將封裝的用戶數(shù)據(jù)交給相應(yīng)的應(yīng)用程序,整個接收過程結(jié)束。

2.2 具體實現(xiàn)方法

根據(jù)各層協(xié)議的相關(guān)規(guī)定及收發(fā)流程,將整個系統(tǒng)劃分為以下4個模塊[5]:

發(fā)送模塊:發(fā)送模塊主要包含UDP發(fā)送狀態(tài)機及發(fā)送數(shù)據(jù)緩存兩部分功能組成。針對本文所設(shè)計的點到點的數(shù)據(jù)傳輸,目的IP地址和MAC地址及源IP地址和MAC地址均為已知,所以不需要ARP協(xié)議等相關(guān)的尋址解析協(xié)議,只需要將已知的IP地址及MAC地址在發(fā)送模塊中直接添加到UDP數(shù)據(jù)包外層即可[6]。經(jīng)過發(fā)送模塊處理后的數(shù)據(jù)包就是一個完整的以太網(wǎng)數(shù)據(jù)幀,其格式如圖1中發(fā)送部分所示。UDP發(fā)送狀態(tài)機包含七個狀態(tài),分別是空閑狀態(tài)、起始狀態(tài)、生成首部校驗和、發(fā)送MAC地址、發(fā)送IP首部、發(fā)送UDP數(shù)據(jù)包及發(fā)送CRC校驗碼。Verilog程序流程圖如圖2所示。

接收模塊:接收模塊主要包含UDP接收狀態(tài)機及接收數(shù)據(jù)緩存兩部分功能組成,其中UDP接收狀態(tài)機包含8個狀態(tài),分別是空閑狀態(tài)、等待狀態(tài)、起始狀態(tài)、接收MAC地址、接收IP類型碼、接收IP地址、接收UDP數(shù)據(jù)包、CRC校驗及數(shù)據(jù)存儲,其中數(shù)據(jù)存儲狀態(tài)要求對不滿4byte的數(shù)據(jù)進(jìn)行補0處理,并將這4byte數(shù)據(jù)存入RAM中。Verilog程序流程圖如圖2所示。

CRC檢驗?zāi)K[11]:本系統(tǒng)在數(shù)據(jù)傳輸?shù)乃俣壬嫌幸欢ǖ囊螅虼薈RC校驗?zāi)K相較于傳統(tǒng)的串行CRC校驗,為提高校驗碼生成的速度,采用并行CRC校驗,數(shù)據(jù)每次一個字節(jié)8位并行輸入進(jìn)行校驗。CRC校驗的生成多項式采用CRC-32標(biāo)準(zhǔn)形式[12],具體為:

圖2 收發(fā)流程圖

頂層模塊:頂層模塊對發(fā)送模塊,接收模塊及CRC校驗?zāi)K進(jìn)行例化,將3個模塊整合,形成一個統(tǒng)一的系統(tǒng),同時例化一個雙端口RAM,讀寫的位寬是32bit,深度是512,雙端口RAM用來做數(shù)據(jù)緩存用。按照前述要求編寫各模塊Verilog代碼[15]。具體UDP/IP協(xié)議棧結(jié)構(gòu)框圖如圖3所示。

圖3 UDP/IP協(xié)議棧結(jié)構(gòu)框圖

3 FPGA仿真測試及硬件調(diào)試

編寫測試程序,得到測試波形如圖4所示。

圖4 仿真波形

從圖中可以看出,測試程序給發(fā)送模塊以相應(yīng)激勵,在接收計數(shù)器的相應(yīng)計數(shù)單位上可以看到接收到的發(fā)送數(shù)據(jù)波形,仿真結(jié)果符合系統(tǒng)要求。

結(jié)合上述分析及各模塊Verilog代碼及編寫的UCF約束文件設(shè)計系統(tǒng)原理圖,硬件電路設(shè)計主要將芯片RTL8211EG的外部接口引出,同時配置好相應(yīng)的外部電阻電容以及外部晶振。芯片的外部接口主要有兩類:一類為FPGA通信的接口,通過40針排針連接;另一類為與RJ45通信接口的相連接口。模塊由3.3 V電源供電,通過40針排針的上下兩端的接口提供電壓。芯片要求外部25 M晶振,且一直處于工作狀態(tài),只要有信號需要傳輸,就可以立即傳輸。根據(jù)設(shè)計的原理圖繪制PCB板并制板,然后將編寫好的程序燒寫到FPGA中,并將制好的板與PC通過網(wǎng)線鏈接,通過網(wǎng)絡(luò)調(diào)試助手向FPGA發(fā)送數(shù)據(jù),可以在接收端窗口接收到發(fā)送的數(shù)據(jù),系統(tǒng)功能正常。

4 結(jié)束語

相比于TCP協(xié)議而言,UDP協(xié)議在可靠性上有所欠缺,但其在傳輸速率及系統(tǒng)復(fù)雜度上的優(yōu)勢十分明顯。而基于FPGA的網(wǎng)絡(luò)傳輸系統(tǒng)開發(fā)相較于傳統(tǒng)的由軟件來實現(xiàn)傳輸協(xié)議的項目開發(fā)來說,節(jié)約了CPU的資源,提升了系統(tǒng)的整體性能,并且便于移植,系統(tǒng)的集成度也得到了一定的提高。基于FPGA的UDP點到點傳輸協(xié)議在點到點的高速遠(yuǎn)距離數(shù)據(jù)傳輸?shù)倪\用中有著一定的優(yōu)勢。

[1]王軍,呂海寶,許國梁.基于UDP協(xié)議的視頻圖像傳輸?shù)难芯颗c實現(xiàn)[J].現(xiàn)代計算機:專業(yè)版,2002(9):18-20.

[2]張維勇,錢軍,王建新.基于UDP協(xié)議的視頻圖像可靠傳輸?shù)难芯亢蛯崿F(xiàn) [J].合肥工業(yè)大學(xué)學(xué)報:自然科學(xué)版,2008,31(5):698-700.

[3]趙飛,葉震.UDP協(xié)議與TCP協(xié)議的對比分析與可靠性改進(jìn) [J].計算機技術(shù)與發(fā)展,2006,16(9):219-221.

[4]李勇,戴瑜興.基于UDP協(xié)議的實時監(jiān)控系統(tǒng)[J].電子技術(shù),2003,30(11):37-40.

[5]Hsiao Y M,Chen M J,Huang K C,et al.High speed UDP/IP ASIC design[C]//Intelligent Signal Processing and Communication Systems, 2009. ISPACS 2009.International Symposium on.IEEE,2009:405-408.

[6]張愷.基于UDP的可靠文件傳輸協(xié)議的設(shè)計與實現(xiàn)[D].西安電子科技大學(xué),2014.

[7]靳建平,楊紅雨.基于UDP的可靠數(shù)據(jù)傳輸協(xié)議仿真研究[J].計算機技術(shù)與發(fā)展,2010,20(5):1-4.

[8]Wolfinger B E,Zaddach M,Heidtmann K D,et al.Analytical modeling of primary and secondary load as induced by video applications using UDP/IP[J].Computer Communications,2002,25(s 11-12):1094-1102.

[9]富元,呂建新.基于UDP的可靠傳輸協(xié)議的研究與實現(xiàn)[J].光通信研究,2009(5):17-19.

[10]Alachiotis N, Berger S A, Stamatakis A.A versatile UDP/IP based PC?FPGA communication platform [C]//Reconfigurable Computing and FPGAs(ReConFig),2012 International Conference on.IEEE,2012:1-6.

[11]伍方輝,方安安.CRC的FPGA設(shè)計與實現(xiàn)[J].中國新通信,2009(13):63-65.

[12]Herrmann F L,Perin G,De Freitas J P J,et al. A Gigabit UDP/IP network stack in FPGA.[C]//Electronics,Circuits,and Systems,2009.ICECS 2009.16th IEEE International Conference on.IEEE,2009:836-839.

[13]王玨,何秋燕,王露凱.基于UDP改進(jìn)的可靠傳輸協(xié)議研究與實現(xiàn) [J].電腦知識與技術(shù),2015(9):71-73.

[14]Lofgren A,Lodesten L,Sjoholm S,et al.An analysis of FPGA-based UDP/IP stack parallelism for embedded Ethernet connectivity[C]//NORCHIP Conference,2005.23rd.IEEE,2005:94-97.

[15]徐文波,田耘.Xilinx FPGA開發(fā)實用教程[M].2版.清華大學(xué)出版社,2012.

Implementation of point-to-point transmission based on UDP protocol with FPGA

FU Gao-yuan,GUO Chen,PAN Jin-yong,SHI Xue
(School of Computer and Information,Hohai University,Nanjing 211100,China)

In order to enhance the data transmission rate and improve real-time performance of data transmission,propose a point-to-point data transmission scheme based on UDP protocol.And use the Field-Programmable Gate Array(FPGA)and PHY chip(RTL8211EG)to achieve the point-to-point UDP high speed data transmission.Compared the traditional TCP/IP protocol working principle,and combined with the corresponding theoretical analysis.It is concluded that the system has some advantages in data transmission rate,low complexity of the system,and convenient to realize.

UDP;FPGA;point-to-point;high speed data transmission

TN99

:A

:1674-6236(2017)02-0181-04

2016-01-21稿件編號:201601195

付高原(1990—),男,湖北宜昌人,碩士。研究方向:信號與信息處理。

猜你喜歡
系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
基于UG的發(fā)射箱自動化虛擬裝配系統(tǒng)開發(fā)
半沸制皂系統(tǒng)(下)
FAO系統(tǒng)特有功能分析及互聯(lián)互通探討
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統(tǒng) 德行天下
PLC在多段調(diào)速系統(tǒng)中的應(yīng)用
主站蜘蛛池模板: 亚洲精品无码AV电影在线播放| 尤物在线观看乱码| 亚洲国产看片基地久久1024| 77777亚洲午夜久久多人| 久久香蕉国产线看观看式| 婷婷综合缴情亚洲五月伊| 国产成人一二三| 精品第一国产综合精品Aⅴ| 黄片一区二区三区| 免费国产不卡午夜福在线观看| 国产精品尹人在线观看| 久久久久亚洲精品成人网 | 国产成人乱无码视频| 被公侵犯人妻少妇一区二区三区| 999精品视频在线| 国产午夜福利亚洲第一| 91黄视频在线观看| 久久久精品国产SM调教网站| 国产免费观看av大片的网站| 亚洲中文字幕无码mv| 国产成人精品亚洲日本对白优播| 在线观看免费人成视频色快速| 麻豆AV网站免费进入| 免费国产小视频在线观看| 任我操在线视频| 在线国产你懂的| 全免费a级毛片免费看不卡| 国产一区二区免费播放| 午夜日韩久久影院| 国产精品私拍99pans大尺度| 亚洲精品第一在线观看视频| 亚洲视频影院| 欧美一级大片在线观看| 国产欧美日韩91| 午夜激情婷婷| 日韩最新中文字幕| 欧美精品亚洲二区| 国产jizz| 日韩专区第一页| 日本a∨在线观看| 无码日韩精品91超碰| 69国产精品视频免费| 成人在线不卡| 亚洲无码37.| 97视频在线观看免费视频| 国产精品网址在线观看你懂的| 国产精品思思热在线| 2020国产免费久久精品99| 伊人久久久久久久久久| AV色爱天堂网| 高清无码手机在线观看 | 日韩欧美国产三级| 日韩欧美视频第一区在线观看| 欧美激情第一欧美在线| 亚洲国产成人在线| 九色在线视频导航91| 九色91在线视频| 高清欧美性猛交XXXX黑人猛交| 在线看片中文字幕| 亚洲综合18p| 欧美一区二区啪啪| 久久国产av麻豆| 国内精品九九久久久精品| 麻豆国产精品一二三在线观看| 国产无吗一区二区三区在线欢| 蜜臀AV在线播放| 国产又黄又硬又粗| 国产精品私拍99pans大尺度| 丰满人妻久久中文字幕| 91午夜福利在线观看| 国产成人欧美| 伊人久久精品无码麻豆精品 | 国产成人精品免费视频大全五级| 日本不卡在线视频| 91精品啪在线观看国产91九色| 精品国产网| 99久久成人国产精品免费| 91九色国产porny| 亚洲AⅤ永久无码精品毛片| 欧美成人综合视频| 无码电影在线观看| 2021国产精品自拍|