參數(shù)可配置的基于fpga的以太網(wǎng)udp/ip處理器的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于基于FPGA實現(xiàn)的網(wǎng)絡(luò)協(xié)議棧技術(shù)領(lǐng)域,更為具體地講,涉及一種參數(shù) 可配置的基于FPGA的以太網(wǎng)UDP/IP處理器。
【背景技術(shù)】
[0002] 以太網(wǎng)作為常用的通信方式,具有應(yīng)用廣泛,通信速率高,資源共享能力強等優(yōu) 點,普遍應(yīng)用于設(shè)備的互聯(lián)通信領(lǐng)域。要實現(xiàn)設(shè)備間網(wǎng)絡(luò)通信,其前提條件是設(shè)備中集成 了網(wǎng)絡(luò)協(xié)議棧,其協(xié)議棧的傳輸層協(xié)議主要有TCP協(xié)議和UDP協(xié)議兩種,UDP協(xié)議作為無連 接,不可靠,基于報文交互的協(xié)議,普遍應(yīng)用于音頻、視頻等應(yīng)用中。在過去,協(xié)議棧大多都 是基于軟件實現(xiàn),采用CPU串行執(zhí)行的方式,網(wǎng)絡(luò)傳輸速度低,系統(tǒng)資源開銷大。針對軟件 協(xié)議棧方式的不足,在大數(shù)據(jù)傳輸領(lǐng)域,越來越多的人開始研究基于FPGA的以太網(wǎng)UDP/IP 處理器?;贔PGA的以太網(wǎng)UDP/IP處理器的具體說明和實現(xiàn)可以參見文獻(xiàn)"Alachiotis N,Berger S A,Stamatakis A.Efficient PC-FPGA Communication over Gigabit Ethernet [C]//Proceedings of the 2010 10th IEEE International Conference on Computer and Information Technology. IEEE Computer Society,2010:1727-1734. "。
[0003] 目前的基于FPGA的以太網(wǎng)UDP/IP處理器,具有以下缺點:(1)只是實現(xiàn)了傳輸 層和網(wǎng)絡(luò)層的協(xié)議,而網(wǎng)絡(luò)接口層中的MAC控制器都依賴于三方的提供,增大了實現(xiàn)成本; (2)對以太網(wǎng)UDP/IP處理器的傳輸層、網(wǎng)絡(luò)層和網(wǎng)絡(luò)接口層中的MAC控制器不能做到用戶 自定義配置,使得傳輸只能和單一通信節(jié)點通信,并使整個系統(tǒng)配置麻煩,每次修改系統(tǒng)配 置都需要修改代碼并重新燒寫,應(yīng)用難度大,影響了整個系統(tǒng)的性能發(fā)揮;(3)對于網(wǎng)絡(luò)物 理層芯片,大多需要配置其寄存器才能發(fā)揮最大效能,而基于FPGA的以太網(wǎng)UDP/IP處理器 的配置較軟件配置更為復(fù)雜。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種參數(shù)可配置的基于FPGA的以 太網(wǎng)UDP/IP處理器,使用戶實現(xiàn)對基于FPGA的以太網(wǎng)UDP/IP處理器的參數(shù)配置。
[0005] 為實現(xiàn)上述發(fā)明目的,本發(fā)明參數(shù)可配置的基于FPGA的以太網(wǎng)UDP/IP處理器包 括UDP/IP協(xié)議棧模塊、MAC控制器,其中UDP/IP協(xié)議棧模塊包括幀發(fā)送組裝模塊、幀接收拆 封裝模塊和MAC接口模塊,MAC控制器包括IP接口模塊、發(fā)送緩沖模塊、發(fā)送控制器、接收 控制器、接收緩沖模塊和流控模塊,此外,以太網(wǎng)UDP/IP處理器還包括配置控制模塊和PHY 配置模塊,UDP/IP協(xié)議棧模塊還包括幀發(fā)送配置模塊、幀接收配置模塊,MAC控制器還包括 MAC控制器配置模塊;
[0006] 配置控制模塊中分別為UDP/IP協(xié)議棧配置參數(shù)和MAC控制配置參數(shù)設(shè)置了參數(shù) 寄存器,為PHY芯片配置參數(shù)設(shè)置地址寄存器和參數(shù)寄存器;當(dāng)配置控制模塊從用戶端接 收到UDP/IP協(xié)議棧配置數(shù)據(jù)或MAC控制配置數(shù)據(jù),寫入相應(yīng)的寄存器中,并向幀發(fā)送配置 模塊或幀接收配置模塊發(fā)送系統(tǒng)配置信號,當(dāng)配置控制模塊從用戶端接收到PHY芯片配置 參數(shù)及對應(yīng)的PHY寄存器地址,則寫入相應(yīng)的寄存器,并向PHY配置模塊發(fā)送系統(tǒng)配置信 號;當(dāng)配置控制模塊從用戶端接收配置查詢信號,分別向幀發(fā)送配置模塊、幀接收配置模 塊、MAC控制器配置模塊和PHY配置模塊發(fā)送配置查詢信號,然后將各個配置模塊反饋的配 置參數(shù)發(fā)送給用戶端;
[0007] 幀發(fā)送配置模塊中存儲所需參數(shù)在配置控制模塊中的寄存器地址和幀發(fā)送組裝 模塊中的存儲地址的映射表,在接收到系統(tǒng)配置信號后,按照寄存器地址從配置控制模塊 中讀取所需參數(shù),寫入幀發(fā)送組裝模塊的對應(yīng)存儲地址;接收配置控制模塊發(fā)送的配置查 詢信號,從幀發(fā)送組裝模塊中讀取配置參數(shù)反饋給配置控制模塊;
[0008] 幀接收配置模塊中存儲所需參數(shù)在配置控制模塊中的寄存器地址和幀接收拆封 裝模塊中的存儲地址的映射表,在接收到系統(tǒng)配置信號后,按照寄存器地址從配置控制模 塊中讀取所需參數(shù),寫入幀接收拆封裝模塊的對應(yīng)存儲地址;接收配置控制模塊發(fā)送的配 置查詢信號,從幀接收拆封裝模塊中讀取配置參數(shù)反饋給配置控制模塊;
[0009] MAC控制器配置模塊存儲所需參數(shù)在配置控制模塊中的寄存器地址和MAC控制器 的發(fā)送控制器、接收控制器和流控模塊中的存儲地址的映射表,在接收到系統(tǒng)配置信號后, 按照寄存器地址從配置控制模塊中讀取所需參數(shù),分別寫入發(fā)送控制器、接收控制器和流 控模塊的對應(yīng)存儲地址;接收配置控制模塊發(fā)送的配置查詢信號,從發(fā)送控制器、接收控制 器和流控模塊中讀取配置參數(shù)反饋給配置控制模塊;
[0010] PHY芯片配置模塊在接收到系統(tǒng)配置信號后,從配置控制模塊讀取所需參數(shù)和對 應(yīng)的PHY寄存器地址,將參數(shù)寫入與以太網(wǎng)UDP/IP處理器連接的PHY芯片的對應(yīng)寄存器; 接收配置控制模塊發(fā)送的配置查詢信號,從PHY芯片中讀取配置參數(shù)反饋給配置控制模 塊。
[0011] 本發(fā)明參數(shù)可配置的基于FPGA的以太網(wǎng)UDP/IP處理器,增加了配置控制模塊和 PHY配置模塊,然后在UDP/IP協(xié)議棧模塊中新增幀發(fā)送配置模塊、幀接收配置模塊,在MAC 控制器新增了 MAC控制器配置模塊;配置控制模塊從用戶端接收系統(tǒng)配置數(shù)據(jù),包括UDP/ IP協(xié)議棧配置數(shù)據(jù)、MAC控制配置數(shù)據(jù)和PHY芯片配置數(shù)據(jù),然后通過幀發(fā)送配置模塊、幀 接收配置模塊、MAC控制器配置模塊和PHY配置模塊將參數(shù)分別配置到相應(yīng)的模塊中,同時 實現(xiàn)對相應(yīng)模塊中配置參數(shù)的查詢。本發(fā)明通過配置控制模塊實現(xiàn)用戶對以太網(wǎng)UDP/IP 處理器的參數(shù)配置和查詢,方便快捷地實現(xiàn)處理器參數(shù)更改,從而提高以太網(wǎng)UDP/IP處理 器的適用性。
【附圖說明】
[0012] 圖1是采用本發(fā)明參數(shù)可配置的基于FPGA的以太網(wǎng)UDP/IP處理器的整體結(jié)構(gòu) 圖;
[0013] 圖2是圖1中系統(tǒng)配置模塊的結(jié)構(gòu)圖;
[0014] 圖3是圖1中UDP/IP協(xié)議棧模塊的結(jié)構(gòu)圖;
[0015] 圖4是圖1中MAC控制器的結(jié)構(gòu)圖;
[0016] 圖5是MDI0模塊的結(jié)構(gòu)圖;
[0017] 圖6是MDI0控制模塊的輸入輸出端口圖;
[0018] 圖7是MDI0接口模塊的結(jié)構(gòu)圖。
【具體實施方式】
[0019] 下面結(jié)合附圖對本發(fā)明的【具體實施方式】進(jìn)行描述,以便本領(lǐng)域的技術(shù)人員更好地 理解本發(fā)明。需要特別提醒注意的是,在以下的描述中,當(dāng)已知功能和設(shè)計的詳細(xì)描述也許 會淡化本發(fā)明的主要內(nèi)容時,這些描述在這里將被忽略。
[0020] 實施例
[0021] 圖1是采用本發(fā)明參數(shù)可配置的基于FPGA的以太網(wǎng)UDP/IP處理器的整體結(jié)構(gòu) 圖。如圖1所示,本發(fā)明參數(shù)可配置的基于FPGA的以太網(wǎng)UDP/IP處理器與普通的基于FPGA 的以太網(wǎng)UDP/IP處理器相比,其不同之處在于增加了一個系統(tǒng)配置模塊。
[0022] 圖2是圖1中系統(tǒng)配置模塊的結(jié)構(gòu)圖。如圖2所示,系統(tǒng)配置模塊包括配置控制 模塊和PHY芯片配置模塊。配置控制模塊中分別為UDP/IP協(xié)議棧配置參數(shù)或MAC控制配 置參數(shù)設(shè)置了參數(shù)寄存器,為PHY (Physical Layer,物理層)芯片配置參數(shù)設(shè)置地址寄存 器和參數(shù)寄存器。當(dāng)配置控制模塊從用戶端接收到UDP/IP協(xié)議棧配置數(shù)據(jù)或MAC控制配 置數(shù)據(jù),寫入相應(yīng)的寄存器中,并向幀發(fā)送配置模塊或幀接收配置模塊送系統(tǒng)配置信號,當(dāng) 配置控制模塊從用戶端接收到PHY芯片配置參數(shù)及對應(yīng)的PHY寄存器地址,則寫入相應(yīng)的 寄存器,并向PHY配置模塊發(fā)送系統(tǒng)配置信號。此外,配置控制模塊還從用戶端接收配置查 詢信號,然后分別向幀發(fā)送配置模塊、幀接收配置模塊、MAC控制器配置模塊和PHY配置模 塊發(fā)送系統(tǒng)發(fā)送配置查詢信號,將各個配置模塊反饋的配置參數(shù)反饋給用戶端。每個反饋 的參數(shù)會先更新至配置控制模塊對應(yīng)的寄存器中,然后由用