国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于W5300 的以太網(wǎng)高速數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)

2021-04-20 09:30:38王雨婷薛志超
電子設(shè)計(jì)工程 2021年6期
關(guān)鍵詞:數(shù)據(jù)通信傳輸速率寄存器

王雨婷,薛志超,文 豐

(1.中北大學(xué)儀器與電子學(xué)院電子測(cè)試技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,山西太原 030051;2.中國(guó)運(yùn)載火箭技術(shù)研究院空間物理重點(diǎn)實(shí)驗(yàn)室,北京 100076)

以太網(wǎng)如今已經(jīng)走入千家萬(wàn)戶、各行各業(yè),應(yīng)用范圍非常廣泛。通過對(duì)使用集成TCP/IP 協(xié)議的以太網(wǎng)芯片W5300進(jìn)行寄存器、存儲(chǔ)器、端口等配置,就可以實(shí)現(xiàn)高速度的數(shù)據(jù)傳輸。其優(yōu)點(diǎn)是,傳輸數(shù)據(jù)穩(wěn)定,系統(tǒng)造價(jià)較低,開發(fā)時(shí)長(zhǎng)較短,設(shè)計(jì)者易于上手操作[1]。

同時(shí),本設(shè)計(jì)中選用的百兆以太網(wǎng)協(xié)議芯片W5300,實(shí)測(cè)傳輸數(shù)據(jù)的速率達(dá)到90 Mb/s 以上,極大地滿足了實(shí)際應(yīng)用中的多種需求。

1 系統(tǒng)硬件設(shè)計(jì)方案

設(shè)計(jì)選用FPGA 控制W5300 實(shí)現(xiàn)以太網(wǎng)通信,接收上位機(jī)軟件指令并執(zhí)行相應(yīng)操作,在不同網(wǎng)絡(luò)間建立可靠連接。

FPGA 內(nèi)部包括普通I/O 口和高速I/O 口,接口傳輸速率可達(dá)到10 Gb/s 以上[2],具有良好的傳輸穩(wěn)定性,所以選用FPGA 作為主控芯片。為了達(dá)到90 Mb/s以上傳輸速率的設(shè)計(jì)要求,W5300 采用16 位數(shù)據(jù)總線,配置全功能自動(dòng)握手運(yùn)行模式[2]。16 位數(shù)據(jù)位均與FPGA 的I/O 口相連,接收到的數(shù)據(jù)存入兩片F(xiàn)lash中,使用雙備份方式保證數(shù)據(jù)的準(zhǔn)確性。為了讓W(xué)5300 在傳輸數(shù)據(jù)的過程中具有更好的抑制高頻電壓的能力,將W5300 內(nèi)部產(chǎn)生的電壓信號(hào)與外部電壓信號(hào)進(jìn)行隔離,該設(shè)計(jì)摒棄了傳統(tǒng)以太網(wǎng)電路設(shè)計(jì)中選用的變壓器TT1-6,而是選用了網(wǎng)口變壓器H1102NL。它的作用與選頻電路相通,使通帶中的信號(hào)通過,極大抑制阻帶中的信號(hào),并且阻帶的電壓增益更接近零,通帶的電壓增益為常數(shù)。系統(tǒng)硬件電路設(shè)計(jì)如圖1所示。

圖1 系統(tǒng)硬件電路設(shè)計(jì)

1.1 傳輸模式

為了將不同的計(jì)算機(jī)設(shè)備連接到一起,國(guó)際各大公司和機(jī)構(gòu)定義了一系列基于以太網(wǎng)的軟件和硬件協(xié)議標(biāo)準(zhǔn)。當(dāng)前,在主流的以太網(wǎng)接口協(xié)議中,主要有TCP/IP 協(xié)議和UDP 協(xié)議[3]。相較于TCP/IP 協(xié)議,UDP 協(xié)議的傳輸速率較快,但數(shù)據(jù)沒有握手驗(yàn)證,不能很好地保證高速數(shù)據(jù)的穩(wěn)定性。而TCP/IP 協(xié)議具有優(yōu)良的雙向傳輸機(jī)制,將TCP 與IP 協(xié)同工作,在建立連接前需進(jìn)行3 次握手,以達(dá)到客戶端和服務(wù)器進(jìn)行3 次確認(rèn)性連接[4],在滿足數(shù)據(jù)傳輸速度的基礎(chǔ)上又保證了數(shù)據(jù)傳輸?shù)姆€(wěn)定性。

1.2 介質(zhì)接口信號(hào)設(shè)置

使用W5300 內(nèi)部PHY 模式,設(shè)置TEST_MODE[0:3]引腳均置0。配置OP_MODE[2:0]=001,既為自動(dòng)握手模式。為了盡量消除導(dǎo)線阻抗不一致對(duì)信號(hào)傳輸?shù)呢?fù)面影響,設(shè)計(jì)采取TXON 與TXOP,以及TXON 與TXOP 的導(dǎo)線均為差分線。介質(zhì)接口信號(hào)表如表1 所示。

表1 介質(zhì)接口信號(hào)表

2 系統(tǒng)軟件設(shè)計(jì)方案

該系統(tǒng)通過直接尋址方式控制FPGA 操控W5300,對(duì)其寄存器進(jìn)行配置。設(shè)計(jì)者在ISE14.7 軟件下編寫相關(guān)程序。W5300 的控制時(shí)序包括復(fù)位時(shí)序和寄存器讀、寫時(shí)序。復(fù)位時(shí)序產(chǎn)生復(fù)位信號(hào)并控制時(shí)序的復(fù)位邏輯;寄存器讀時(shí)序和寄存器寫時(shí)序控制W5300 的主機(jī)讀、寫數(shù)據(jù)的邏輯[5]。復(fù)位信號(hào)周期最小為2 μs,鎖相環(huán)鎖定最短時(shí)間為50 μs,最長(zhǎng)時(shí)間為10 ms[6]。系統(tǒng)軟件設(shè)計(jì)流程分為3 個(gè)步驟:W5300 初始化、數(shù)據(jù)通信模式配置、數(shù)據(jù)接收和發(fā)送。

2.1 W5300初始化

W5300 初始化分為3 個(gè)步驟:主機(jī)接口設(shè)置、網(wǎng)絡(luò)信息設(shè)置、TX/RX 存儲(chǔ)器分配[7]。

2.1.1 主機(jī)接口設(shè)置

W5300 接口設(shè)置包括模式寄存器配置和中斷配置。

W5300 的MR 寄 存 器、COMMON 寄 存 器 和SOCKET 寄存器映射在主機(jī)存儲(chǔ)空間。當(dāng)中斷寄器和中斷屏蔽寄存器對(duì)應(yīng)位都為1 時(shí),/INT 輸出低電平產(chǎn)生中斷;當(dāng)中斷寄存器寫入16 位0 時(shí),/INT 變?yōu)楦唠娖讲划a(chǎn)生中斷[8]。

2.1.2 網(wǎng)絡(luò)信息設(shè)置

系統(tǒng)設(shè)置主機(jī)接口為TCP/IP 模式,為了合理的分配好重傳的次數(shù)和時(shí)間,使網(wǎng)絡(luò)數(shù)據(jù)通信的可靠性提高,我們對(duì)RTR 寄存器和RCR 寄存器進(jìn)行設(shè)置[9]。TCP 數(shù)據(jù)包傳輸超時(shí)流程如圖2 所示。

圖2 TCP數(shù)據(jù)包傳輸超時(shí)流程圖

2.1.3 分配TX/RX存儲(chǔ)器空間

W5300 內(nèi)部128K 字節(jié)的存儲(chǔ)單元依次映射在發(fā)送存儲(chǔ)器(TX)和接收存儲(chǔ)器(RX)當(dāng)中[10],該設(shè)計(jì)定義了內(nèi)部TX 和RX 存儲(chǔ)量均為64K。

2.2 數(shù)據(jù)通信模式配置

在完成對(duì)W5300 初始化的配置之后,還需要分別對(duì)8 個(gè)獨(dú)立的SOCKET 通信端口進(jìn)行不同的設(shè) 置[11]。“TCP 客戶 端”主動(dòng)發(fā) 送SYS 數(shù)據(jù)包 到對(duì)端進(jìn)行連接請(qǐng)求,對(duì)SOCKET 進(jìn)行初始化配置并打開[12]。其中,數(shù)據(jù)通信連接狀態(tài)圖如圖3 所示。

圖3 數(shù)據(jù)通信連接狀態(tài)圖

2.3 數(shù)據(jù)接收和發(fā)送

在完成W5300 的初始化和數(shù)據(jù)通信模式配置之后,便可建立連接進(jìn)行接收數(shù)據(jù)處理和發(fā)送數(shù)據(jù)處理。當(dāng)檢測(cè)到RX 存儲(chǔ)器中有數(shù)據(jù)時(shí),W5300 開始接收數(shù)據(jù)。可通過判斷ALIGN 位的狀態(tài)來確定數(shù)據(jù)包中是否存在PACKET_INFO 和數(shù)據(jù)[13]。

當(dāng)Sn_MR 的ALIGN 位為0 時(shí),數(shù)據(jù)包中存在PACKET_INFO 和數(shù)據(jù);當(dāng)Sn_MR 的ALIGN 位為1時(shí),只存在數(shù)據(jù)包而沒有PACKET_INFO[14]。當(dāng)數(shù)據(jù)全部讀取完成后,將執(zhí)行RECV 命令,W5300 的數(shù)據(jù)接收完成。

經(jīng)多次實(shí)驗(yàn)驗(yàn)證發(fā)現(xiàn),每次發(fā)送1 460 byte 數(shù)據(jù)時(shí),傳輸速率最快。所以設(shè)置數(shù)據(jù)包的大小為730 byte,每次同時(shí)發(fā)送兩包數(shù)據(jù)。在每次發(fā)送數(shù)據(jù)之前,都應(yīng)先檢查上次的SEND 命令是否完成,如完成則繼續(xù)發(fā)送數(shù)據(jù),以確保發(fā)送數(shù)據(jù)的進(jìn)程無誤。

圖4、圖5 分別為數(shù)據(jù)的接收、發(fā)送流程圖。

圖4 數(shù)據(jù)接收流程圖

圖5 數(shù)據(jù)發(fā)送流程圖

3 斷網(wǎng)重連

在傳輸數(shù)據(jù)的過程中,會(huì)出現(xiàn)網(wǎng)絡(luò)異常中斷導(dǎo)致傳輸中斷的現(xiàn)象[15]。為了避免發(fā)送或接收數(shù)據(jù)過程中“斷網(wǎng)”導(dǎo)致數(shù)據(jù)丟失或傳輸異常,進(jìn)行了以太網(wǎng)斷網(wǎng)重連設(shè)計(jì)。加入E_LINK_D 信號(hào),當(dāng)初始化完成時(shí),判斷E_LINK_D 是否置0。如置0 則可進(jìn)行數(shù)據(jù)收發(fā)[16],如網(wǎng)絡(luò)異常則置1,返回重新進(jìn)行初始化,直到E_LINK_D 狀態(tài)為0 時(shí)可進(jìn)行下一步操作。也可通過配置Sn_KPALVTR 寄存器,在TCP 狀態(tài)下,當(dāng)Sn_KPALVTR>0,W5300 每5秒發(fā)送一個(gè)數(shù)據(jù)包[17]。而我們?cè)O(shè)置Sn_KPALVTR=10,既每隔50 s 發(fā)送一次心跳包,以檢查網(wǎng)絡(luò)連接狀態(tài)。

4 實(shí)驗(yàn)驗(yàn)證

為了實(shí)現(xiàn)客戶端與服務(wù)器之間的高速數(shù)據(jù)傳輸,系統(tǒng)使用10 m 的六類四對(duì)屏蔽雙絞線,一端連接地面測(cè)試臺(tái),另一端連接計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信[18]。測(cè)試臺(tái)通過以太網(wǎng)將遞增數(shù)傳輸?shù)接?jì)算機(jī)并保存在Flash 中,遞增數(shù)結(jié)構(gòu)如圖6 所示。使用上位機(jī)軟件對(duì)數(shù)據(jù)進(jìn)行分解校驗(yàn)。通過上位機(jī)軟件校驗(yàn)的結(jié)果可以看出,數(shù)據(jù)傳輸穩(wěn)定,數(shù)據(jù)結(jié)果完整,無丟幀現(xiàn)象。上位機(jī)軟件測(cè)試結(jié)果如圖7 所示。

圖6 遞增數(shù)測(cè)試結(jié)果

圖7 上位機(jī)軟件測(cè)試結(jié)果

實(shí)驗(yàn)時(shí)間內(nèi)共傳輸347 831 85 個(gè)幀數(shù),730 個(gè)數(shù)據(jù)為一個(gè)包,共計(jì)24 215 Mb 數(shù)據(jù),傳輸時(shí)的啟動(dòng)記錄與停止記錄相隔時(shí)間為35 分24 秒,計(jì)算得出傳輸速率可達(dá)91.21 Mb/s,與設(shè)計(jì)要求的高速傳輸數(shù)據(jù)速率達(dá)到90 Mb/s 以上的條件相符。經(jīng)多次采集調(diào)試,傳輸速率均可達(dá)到90 Mb/s 以上。

5 結(jié)論

設(shè)計(jì)采用基于W5300 的以太網(wǎng)高速數(shù)據(jù)傳輸系統(tǒng),傳輸速率達(dá)到90 Mb/s 以上;選用TCP/IP 協(xié)議保障了傳輸?shù)目煽啃?。?duì)TCP/IP 協(xié)議的交互方式以及W5300 設(shè)計(jì)流程進(jìn)行了較為詳盡的敘述。最后通過實(shí)驗(yàn)驗(yàn)證了該設(shè)計(jì)有助于傳輸速率的提高,且軟件開發(fā)成熟度高,系統(tǒng)實(shí)際操作靈活便捷,目前該系統(tǒng)已經(jīng)在地面有線測(cè)量數(shù)據(jù)傳輸工程中得到良好應(yīng)用。

猜你喜歡
數(shù)據(jù)通信傳輸速率寄存器
Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
基于快牙平臺(tái)實(shí)現(xiàn)全站儀與計(jì)算機(jī)的數(shù)據(jù)通信
監(jiān)測(cè)系統(tǒng)接口數(shù)據(jù)通信方式
分簇結(jié)構(gòu)向量寄存器分配策略研究*
跨山通信中頻段選擇與傳輸速率的分析
黑龍江電力(2017年1期)2017-05-17 04:25:16
數(shù)據(jù)傳輸速率
CHIP新電腦(2016年9期)2016-09-21 10:31:09
一種高效可靠的串行數(shù)據(jù)通信協(xié)議及處理算法
新一代全球衛(wèi)星通信網(wǎng)絡(luò)將百倍提升傳輸速率
TCN實(shí)時(shí)協(xié)議棧過程數(shù)據(jù)通信研究
新一代全球衛(wèi)星通信網(wǎng)絡(luò)將百倍提升傳輸速率
肇州县| 兴化市| 宜昌市| 宁海县| 都匀市| 湘潭县| 轮台县| 平和县| 固镇县| 屏东县| 宿迁市| 安龙县| 积石山| 建平县| 舒城县| 吉木乃县| 婺源县| 老河口市| 应城市| 崇义县| 涿鹿县| 峨山| 天柱县| 大余县| 宁武县| 读书| 鄱阳县| 科尔| 惠东县| 大城县| 东丽区| 衡南县| 嘉义县| 辉县市| 射洪县| 宜川县| 鄂托克前旗| 株洲县| 常宁市| 嫩江县| 五台县|