基于Xilinx FPGA的千兆以太網(wǎng)控制器的開發(fā)
1.千兆以太網(wǎng)技術(shù)簡(jiǎn)介
以太網(wǎng)技術(shù)是當(dāng)今應(yīng)用廣泛的網(wǎng)絡(luò)技術(shù),千兆以太網(wǎng)技術(shù)繼承了以往以太網(wǎng)技術(shù)的許多優(yōu)點(diǎn),同時(shí)又具有許多新的特性,例如傳輸介質(zhì)包括光纖和銅纜,使用8B/10B的編解碼方案,采用載波擴(kuò)展和分組突發(fā)技術(shù)等。正是因?yàn)榫哂辛己玫睦^承性和許多優(yōu)秀的新特性,千兆以太網(wǎng)已經(jīng)成為目前局域網(wǎng)的主流解決方案。
千兆以太網(wǎng)利用了原以太網(wǎng)標(biāo)準(zhǔn)所規(guī)定的全部技術(shù)規(guī)范,其中包括CSMA/CD協(xié)議、以太網(wǎng)幀、全雙工、流量控制以及IEEE 802.3標(biāo)準(zhǔn)中所定義的管理對(duì)象。千兆以太網(wǎng)的關(guān)鍵技術(shù)是千兆以太網(wǎng)二層(MAC層)的交換與以太網(wǎng)接口的實(shí)現(xiàn)。隨著多媒體應(yīng)用的普及,千兆以太網(wǎng)必將成為各類以太網(wǎng)技術(shù)的主力軍。
2.Xilinx的千兆以太網(wǎng)解決方案
1)IP的支持
Xilinx提供了可參數(shù)化的10/1Gbps以太網(wǎng)媒體訪問控制器功能LogiCORE解決方案。該核設(shè)計(jì)用來同最新的Virtex-5、Virtex-4和Virtex-II Pro平臺(tái)FPGA一起工作,并可以無縫集成到Xilinx設(shè)計(jì)流程中。吉比特級(jí)以太網(wǎng)媒體訪問控制器核(GEMAC)是針對(duì)1Gb/s(Gbps)以太網(wǎng)媒體訪問控制器功能的可參數(shù)化的LogiCORE IP解決方案。GEMAC核的設(shè)計(jì)符合 IEEE 802.3-2002規(guī)范。GWMAC核支持兩個(gè)PHY端接口選項(xiàng):GMII或RGMII。并且,Xilinx 全面的1Gb/s以太網(wǎng)解決方案包含吉比特MAC和PCS/PMA IP核產(chǎn)品。Xilinx吉比特以太網(wǎng)MAC解決方案還包括帶有內(nèi)置處理器本地總線(PLB)接口(PLB GEMAC)的配置。該配置通過Xilinx嵌入式開發(fā)套件(EDK)提供。GEMAC LogiCORE IP可以實(shí)現(xiàn)與1000 Base-X PCS/PMA或SGMII核的無縫集成,并提供3種選項(xiàng)用來與PHY器件接口:1000 BASE-X或10位接口(TBI)或SGMII。
GEMAC核非常適合開發(fā)高密度吉比特級(jí)以太網(wǎng)通信和存儲(chǔ)設(shè)備,其關(guān)鍵特性有:
- 單速全雙工11 Gbps MAC控制器;
- 設(shè)計(jì)符合IEEE 802.3-2002規(guī)范;
- 具有最小緩沖的直通操作,以最大限度地實(shí)現(xiàn)客戶端接口的靈活性;
- 通過可選的獨(dú)立微處理器中的接口進(jìn)行配置和監(jiān)控;
- 直接與以太網(wǎng)統(tǒng)計(jì)數(shù)據(jù)核接口,以便實(shí)現(xiàn)功能強(qiáng)大的統(tǒng)計(jì)數(shù)據(jù)收集;
- 通過MAC控制暫停幀實(shí)現(xiàn)對(duì)稱的或非對(duì)稱的可選的流程控制;
- VLAN幀的可選技術(shù)支持符合IEEE 802.3-2002規(guī)范的要求;
- 支持任意長(zhǎng)度的“jumbo幀”(可選);
- 可選的地址濾波器,具有數(shù)量可選的地址表輸入。
2)相應(yīng)的開發(fā)板套件
Xilinx提供的千兆以太網(wǎng)開發(fā)套件為Virtex-5 ML505/ML506開發(fā)板(使用的FPGA芯片為:XC5VLX50T-1FF1136),該開發(fā)板支持10/100兆、1/10吉以太網(wǎng),加上Xilinx公開的基于ML505/506的設(shè)計(jì),可為基于以太網(wǎng)開發(fā)的設(shè)計(jì)提供全方位的參考。此外,ML505/506還具備SFP、PCI E、SATA以及SMA接口等其余吉比特接口,是學(xué)習(xí)和研發(fā)高速連接設(shè)備的理想平臺(tái)。
10.4.2 基于FPGA的千兆以太網(wǎng)MAC控制器實(shí)現(xiàn)方案
1.整體設(shè)計(jì)方案
以太網(wǎng)控制器的FPGA設(shè)計(jì)工作包括以太網(wǎng)MAC子層的FPGA設(shè)計(jì)、MAC子層與上層協(xié)議的接口設(shè)計(jì)以及MAC與物理層(PHY)的MII接口設(shè)計(jì)。該以太網(wǎng)控制器的總體結(jié)構(gòu)設(shè)計(jì)框圖如圖10-30所示。整個(gè)系統(tǒng)分為發(fā)送模塊、接收模塊、MAC狀態(tài)模塊、MAC控制模塊、MII管理模塊和主機(jī)接口模塊六部分。發(fā)送模塊和接收模塊主要提供MAC幀的發(fā)送和接收功能,其主要操作有MAC幀的封裝與解包以及錯(cuò)誤檢測(cè),它直接提供了到外部物理層芯片的并行數(shù)據(jù)接口。在實(shí)現(xiàn)中物理層處理直接利用商用的千兆PHY芯片,主要開發(fā)量集中在MAC控制器的開發(fā)上。
圖10-30 以太網(wǎng)控制器的結(jié)構(gòu)設(shè)計(jì)框圖
MAC控制模塊則用于執(zhí)行全雙工模式中的流量控制功能。MAC狀態(tài)模塊可用來監(jiān)視MAC操作過程的各種狀態(tài)信息,并作修改。MII管理模塊提供了標(biāo)準(zhǔn)的IEEE 802.3介質(zhì)獨(dú)立接口,可用于連接以太網(wǎng)的鏈路層與物理層。主機(jī)接口則提供以太網(wǎng)控制器與上層協(xié)議(如TCP/IP協(xié)議)之間的接口,以用于數(shù)據(jù)的發(fā)送、接收以及對(duì)控制器內(nèi)各種寄存器(控制、狀態(tài)和命令寄存器)的設(shè)置。
評(píng)論