李 磊,劉 宇,于 帥
(西安應(yīng)用光學(xué)研究所 陜西 西安 710065)
基于FPGA的千兆以太網(wǎng)實現(xiàn)
李 磊,劉 宇,于 帥
(西安應(yīng)用光學(xué)研究所 陜西 西安 710065)
隨著技術(shù)的迅速發(fā)展,越來越多的工程應(yīng)用對以太網(wǎng)嵌入式設(shè)備提出了需求,因此對以太網(wǎng)MAC層數(shù)據(jù)處理系統(tǒng)的研究具有重要的現(xiàn)實意義。本文介紹利用以太網(wǎng)物理層(PHY)芯片和FPGA實現(xiàn)的硬件千兆網(wǎng)模塊。其中PHY芯片作為數(shù)據(jù)傳輸?shù)母咚俟?jié)點,處理物理層數(shù)據(jù),而FPGA完成對MAC層數(shù)據(jù)的處理。本文研究的方法結(jié)合了FPGA的強大處理能力和PHY芯片的驅(qū)動能力,比常規(guī)CPU+MAC層模塊+PHY芯片的方式有更高的效率。本文通過實驗測試驗證了設(shè)計的可靠性與快速性。
MAC層;PHY層;FPGA;千兆網(wǎng)
千兆以太網(wǎng)技術(shù)和如今已廣泛應(yīng)用的10 Mbps和100 Mbps技術(shù)一樣,都使用以太網(wǎng)所定義的技術(shù)規(guī)范,成熟的技術(shù)規(guī)范保證了其發(fā)展的可能性。比如:CSMA/CD協(xié)議、以太網(wǎng)幀、全雙工、流量控制以及IEEE802.3標(biāo)準(zhǔn)中所定義的管理對象等[1]。
隨著技術(shù)的不斷發(fā)展,千兆以太網(wǎng)技術(shù)作為一種高速數(shù)據(jù)傳輸技術(shù),越來越多地被應(yīng)用于工程之中[2-4]。同時FPGA由于其具備成本低、資源豐富以及靈活性高等特點,被廣泛應(yīng)用于各類應(yīng)用領(lǐng)域的電子系統(tǒng)設(shè)計中。FPGA廠商為其產(chǎn)品提供了許多具備專用功能的核,諸如存儲器、PLL、DSP核以及特定算法功能核。
使用PC平臺的千兆以太網(wǎng)設(shè)計發(fā)已十分成熟,而嵌入式芯片的性能在近年來迅速提升,基于它們的千兆以太網(wǎng)設(shè)計也正處于迅速發(fā)展階段[5]。將千兆以太網(wǎng)的MAC層操作使用硬核實現(xiàn),可以有效提高傳輸性能,縮小電路面積。而目前國內(nèi)外工程應(yīng)用中千兆以太網(wǎng)主要以面向特定應(yīng)用而設(shè)計的,并不通用,而cpu+軟核配置MAC的方式本身又類似于PC端的開發(fā)。因此,本課題研究的全硬件實現(xiàn)的千兆以太網(wǎng)將具有很好的應(yīng)用前景。
本文研究內(nèi)容是基于FPGA的千兆網(wǎng)實現(xiàn)方案,主要包含以下內(nèi)容:
1)MAC層數(shù)據(jù)處理;
2)PHY層數(shù)據(jù)處理;
其中MAC層數(shù)據(jù)處理和TCP/IP協(xié)議采用FPGA實現(xiàn),PHY層數(shù)據(jù)處理以及RJ45接口采用專用物理層芯片實現(xiàn)。因為物理層芯片的功耗較大,所以本文設(shè)計中為PHY層設(shè)計了獨立的電源電路。系統(tǒng)結(jié)構(gòu)圖如圖1所示。

圖1 系統(tǒng)結(jié)構(gòu)圖
2.1FPGA
基于FPGA的開發(fā)設(shè)計中,F(xiàn)PGA的選取十分重要[6]。通常需要考慮的因素有:開發(fā)工具、電氣接口標(biāo)準(zhǔn)、硬件資源、封裝形式、價格等方面[7]。本文使用的FPGA選取了Altera公司Cyclone IV系列的EP4CE115F23I7。具體考慮因素如下:
1)開發(fā)工具
Xilinx公司的ISE和Altera公司的QuartusⅡ兩款開發(fā)工具,功能強大、操作簡單,同時可以支持其所有器件的設(shè)計開發(fā)和很多第三方軟件的應(yīng)用,如ModleSim等,為設(shè)計者提供了便捷的設(shè)計環(huán)境。而Altera公司的QuartusII智能程度要稍微高一些。
2)價格
Altera Cyclone系列其自身定位為以更低的價格實現(xiàn)最強的性能。
改善獨立微網(wǎng)頻率動態(tài)特性的虛擬同步發(fā)電機模型預(yù)測控制//陳來軍,王任,鄭天文,司楊,梅生偉//(3):40
3)硬件資源
Cyclone IV的I/O接口眾多,足以支持大部分工程設(shè)計接口需求,11萬邏輯單元也可以支持較大規(guī)模的HDL代碼[8]。
故本文選取了BGA封裝的EP4CE115F23I7。
本文設(shè)計中FPGA功能包括MAC層功能實現(xiàn)以及TCP/IP收發(fā)協(xié)議實現(xiàn)。本文采用的是Quartus II 13.1開發(fā)工具,其工具M(jìn)egaWizard_Plug-In提供了許多IP核[9],本文采用了三速以太網(wǎng) IP核,即TSE(triple speed Ethernet)[10],實現(xiàn) MAC 層數(shù)據(jù)處理。 其配置界面如圖2所示。

圖2 TSE核配置界面
主要配置包括以下3個配置頁面:
1)Core Configuration:核類型選擇,包括傳輸速率以及小模塊組成,如MAC、PCS。接口類型,以及是否使用內(nèi)部FIFO。本文選擇了三速自適應(yīng)MAC以及MII/GMII接口。
2)MAC Options:MAC配置選項,配置MAC模塊功能,本文使用了自帶的MDIO模塊[11];
3)FIFO Options:FIFO存儲器選項,根據(jù)應(yīng)用需求的吞吐量選擇深度與位寬。
本文編寫了HDL代碼對PHY模塊和TSE核進(jìn)行了初始配置,同時設(shè)計了收發(fā)代碼模塊執(zhí)行TCP/IP協(xié)議[12],方便用戶進(jìn)行數(shù)據(jù)處理。
FPGA網(wǎng)絡(luò)模塊接口如圖3所示:
2.2 物理層芯片
物理層芯片的生產(chǎn)商有Marvell、Broadcom公司等,其主流產(chǎn)品為100/10 M和1000 M物理層芯片,國內(nèi)雖然也有相關(guān)廠商,但技術(shù)相對滯后一些,有待發(fā)展[13]。
文中選取了Marvell公司的88E1111芯片[14],它是一款千兆以太網(wǎng)收發(fā)器,支持10Base-T、100Base-TX、1000Base-T的網(wǎng)絡(luò)應(yīng)用,同時可以實現(xiàn)多種MAC接口模式,如GMII/MII、RGMII等。88E1111具備強大的混合信號處理能力,滿足去反射、去串?dāng)_、誤碼糾正等功能的需求。88E1111可以支持RJ45和SFP接口,即雙絞線和光纖標(biāo)準(zhǔn)接口,本文選擇了RJ45接口。本文組建的數(shù)據(jù)通路如圖4所示。

圖3 頂層模塊及接口

圖4 88E1111接入雙絞線網(wǎng)絡(luò)
本文設(shè)計的硬件平臺如圖5所示,其中SDRAM和PAL接口為具體應(yīng)用所需。

圖5 硬件平臺
通過設(shè)置Loopback結(jié)合Modelsim進(jìn)行仿真驗證[15],可通過 TCPUDPDbg、WireShark等工具對該系統(tǒng)硬件進(jìn)行測試。本文首先使用TCPUDPDbg工具按照640個字符“W”一包進(jìn)行數(shù)據(jù)發(fā)送,對系統(tǒng)的可靠性進(jìn)行了測試,未發(fā)現(xiàn)丟包。最終經(jīng)背景項目實驗測試可得本文設(shè)計千兆網(wǎng)硬件平臺可穩(wěn)定工作在600 Mb傳輸速率下。
千兆網(wǎng)系統(tǒng)越來越多地應(yīng)用于工程設(shè)計當(dāng)中,使用FPGA+PHY芯片的方案不僅提高了系統(tǒng)的靈活性,也加強了系統(tǒng)的可靠性和適用性,尤其接口更具擴展性。實驗證明,本文的千兆以太網(wǎng)設(shè)計有效的實現(xiàn)了全硬件電路工作,是一種高效的傳輸方案。
[1]高展.以太網(wǎng)介質(zhì)訪問控制器(MAC)的研究[D].西安:西北工業(yè)大學(xué),2004.
[2]IEEE LAN/MAN Standards Committee[R].IEEE Standard 802.3 Part 3:Carrier sense multiple access with collision detection (CSMA/CD)access method and physical layer specifications,2005:149-250.
[3]李璇,敖光良.基于FPGA的千兆以太網(wǎng)設(shè)計[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2008(5):63-64.
[4]孫守昌.網(wǎng)絡(luò)光功率計的研究[D].哈爾濱:哈爾濱工程大學(xué),2004.
[5]柳利軍,熊良芳.基于FPGA的千兆以太網(wǎng)交換芯片的設(shè)計[J].微電子學(xué)與計算機,2006,23(3):80-82.
[6]童鵬.FPGA器件選型研究[J].現(xiàn)代電子技術(shù),2007:20.
[7]葉祎恒.基于FPGA的UDP/IP硬件協(xié)議棧的研究與實現(xiàn)[D].西安:西安電子科技大學(xué),2010.
[8]Altera Corportion.Cyclone IV Device Handbook[DB/OL].2014.http://www.altera.com.cn.
[9]關(guān)可,梁文家,張曉博,等.EDA技術(shù)與應(yīng)用[M].北京:清華大學(xué)出版社,2012.
[10]Altera Corportion.Triple speed ethernet mega core function user guide[DB/OL].2008.http://www.altera.com.cn
[11]NS,LVDS Owner’s Manual Low-Voltage DifferentialSignaling[DB/OL].2008..http://www.national.com.
[12]W.Richard Stevens,范建華.TCP/IP詳解(卷 1:協(xié)議)[M].北京:機械工業(yè)出版社,2007.
[13]徐洪波,余成芳.基于FPGA的以太網(wǎng)MAC子層協(xié)議設(shè)計實現(xiàn)[J].復(fù)旦學(xué)報:自然科學(xué)版,2004(2):50-53.
[14]Marvell.Marvell-Alaska-Ultra-88E1111-GbE[DB/OL].2013.http://www.marvell.com.
[15]于斌.ModelSim電子系統(tǒng)分析及仿真[M].北京:電子工業(yè)出版社,2014.
Realization of gigabit ethernet based on FPGA
LI Lei,LIU Yu,YU Shuai
(Xi’an Institute of Applied Optics, Xi’an 710065,China)
With the rapid development of technology,more and more engineering applications have put forward the requirement of embedded Ethernet device.It is of great importance to research the data processing system of the Ethernet MAC layer.This paper describes a method which make use of PHY chip and FPGA to achieve the hardware gigabit network module.In this paper,PHY chip and FPGA respectively completes the data processing of PHY layer and the MAC layer.The method researched in this paper combines the powerful processing capabilitiy of FPGA and drive capability of PHY chip,which bring higher efficiency compared with the method using CPU,MAC layer module and PHY chip.In this paper,the reliability and rapidity of the design are verified by experiments.
MAC;PHY;FPGA;Gigabit ethernet
TN91
A
1674-6236(2017)12-0186-03
2016-04-07稿件編號:201604068
李 磊(1991—),男,四川成都人,碩士研究生。研究方向:光電系統(tǒng)測控。