徐玉杰 孟博
摘要:該文針對千兆以太網SerDes接口(1000 BASE-X)和電接口(1000 BASE-T)轉換的問題,給出了一種基于FPGA的千兆以太網SerDes接口和電接口轉換的方法。詳細介紹了該方法的硬件架構和邏輯設計,工程應用證明該方法穩定可靠,邏輯設計簡單易行,達到了設計的預期目標。
關鍵詞:千兆以太網;高速串行接口;現場可編程門陣列
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2016)03-0047-02
千兆以太網以其技術先進、使用靈活、便于單元板小型化等優點已廣泛應用于背板結構產品,特別是采用信號數量較少的SerDes接口進行單元板間互聯已成為主流[1]。而在XX應用環境中,千兆以太網交換設備接口數量受限,在系統調試過程需要調試網口(電接口)與外部計算機進行通信,為了不增加額外以太網接口,本文根據具體的應用設計了一種千兆以太網SerDes接口與電接口的轉換方法[2],該方法使一路以太網接口同時具備調試與數據傳輸的功能,既減少了千兆以太網接口數量又實現了千兆以太網SerDes接口與電接口轉換。
1 方案的總體分析
接口轉換及其應用的系統結構示意圖如圖1所示,該系統使用SerDes作為物理層的千兆以太網實現各單元板、接口板和交換板互聯。交換板與接口板之間的數據通路在系統調試過程中作為調試網口使用,同時在接口板中完成千兆以太網SerDes接口與電接口的轉換,這樣即可實現與外部計算機通信;調試完成后通過更改FPGA邏輯將該接口用于數據傳輸。
該轉換方法主要由物理層芯片、FPGA和千兆以太網收發部分組成,其中在調試過程FPGA主要實現兩片物理層芯片的配置及互聯,在調試完成后按系統要求實現數據傳輸,本文主要討論調試過程接口轉換的方法。
2 方案詳細設計
該轉換方法先將千兆以太網SerDes接口轉化為GMII接口,調試使用時FPGA主要完成對物理層芯片的GMII接口互聯和配置,然后再將GMII轉換成傳統的千兆以太網電接口;作為數據傳輸接口使用時,直接在FPGA中增加一個MAC核完成數據傳輸。方案中使用的主要元器件為物理層收發器88E1111和Xilinx公司的Vertex-5系列FPGA。
2.1 關鍵元器件介紹
2.1.1 物理層收發器
Marvell的88E1111是一款千兆以太網收發器物理層芯片,采用標準的CMOS工藝制造。88E1111支持用于直接連接到MAC/Switch接口的MII、GMII、RGMII和SGMII四種以太網接口模式。內部集成了一個可選的1.25Ghz的SerDes接口,它包括了千兆以太網物理層PCS、PMA和PDM子層所有的功能,這個接口可直接連接到光纖收發器,器件采用了先進的回聲消除、近端串擾抑制等多種手段提高信號質量在經過接收PCS層解碼后交付MAC層[3]。其發送端集成了一個多功能的D/A轉換器,可以支持4D PAM5、MLT3和曼徹斯特編碼,分別支持1000BASE-T、100BASE-TX和10BASE-T的編碼[4]。
2.1.2 可編程邏輯器件
該方案中接口轉換功能對FPGA的資源要求高,為了不改變原有的系統結構,該方案中FPGA選用Xilinx公司的Virtex-5系列,該系列芯片內部資源豐富,性價比較高。Xilinx公司提供嵌入式以太網MAC核,符合IEEE Std 802.3標準[5],滿足該設計的應用需求。
2.2 硬件詳細設計
千兆以太網SerDes接口與電接口的轉換是由物理層芯片和FPGA芯片之間交互實現的,其硬件設計的關鍵在于元器件之間的接口互連,圖2為關鍵元器件接口互聯的示意圖。
第一個物理層芯片對外傳輸方式選擇使用SerDes接口,物理層傳輸協議使用1000BASE-X,使用GMII接口和FPGA相連,其工作模式設置為強制1000BASE-X全雙工模式。
第二個物理層芯片工作模式設置為強制1000BASE-T全雙工模式,物理層傳輸協議使用1000BASE-T,使用GMII接口和FPGA相連,電接口通過變壓器后與RJ45(外部PC機)相連。
這種轉換方法硬件設計較為復雜,但設計中兩個物理層芯片均與FPGA相連,可根據具體的應用在調試階段將交換板與接口板之間的數據通路作為調試使用,待調試完成后只需要在FPGA中增加MAC層,該數據通路即可作為數據傳輸使用。
2.3 FPGA邏輯設計
本文描述的方法中FPGA邏輯主要實現兩個物理層芯片的復位、GMII接口互聯和配置功能。其中兩個GMII接口直接進行互聯,復位通過對物理層芯片的RST控制完成,配置通過串行管理接口(MDC/MDIO)完成,圖3為復位和配置的控制時序示意圖:
復位和配置的流程如下:
a.上電后分別對兩個物理層芯片進行復位。
b.復位完成后對兩個物理層芯片進行配置,本文配置時序示意圖中兩個配置接口的時鐘MDC均為4Mhz,將第一個物理層芯片配置成1000 BASE-X 全雙工模式,將第二個物理層芯片配置成1000 BASE-X全雙工模式。
c.通過第二步將配置信息寫入配置寄存器,再對兩個物理層芯片進行軟復位,軟復位完成后配置即可生效,整個配置過程完成。
在實際應用中,系統在上電復位完成后可根據具體的應用對物理層芯片進行配置。為了查看配置是否正確,可在對芯片軟復位之前讀取配置信息,確認配置無誤后再進行軟復位,使配置生效。
3 實驗與驗證
對本文提出的接口轉換方法進行功能和性能驗證,根據圖4搭建了系統驗證測試平臺:
將計算機的IP 地址設置為192.168.1.1,第N個單元板的IP 地址設置為192.168.1.N,將調試接口和計算機使用網線進行連接。單元板與交換板之間用SerDes進行連接。加電啟動完畢后,通過查看交換板的網絡管理和計算機的網絡連接,發現計算機和交換機連接的網口都為1000Mbps 連接。在計算機上發起ping 包測試,測試結果如下表所示。通過測試可以看出,丟包率滿足小于0.1%的要求。
驗證測試平臺中計算機通過接口板和交換板向系統中的其它模塊發送數據,各模塊接收到數據后返回給計算機,在計算機中進行數據比較并統計速率,經測試,數據傳輸正確,速率達到了76MB/s。
上述測試表明本文所提出的方法可以實現SerDes信號與電接口的轉換。
4 結束語
經過工程應用驗證,使用該方法的硬件平臺工作穩定可靠、FPGA邏輯設計簡單易行,使用靈活。雖然該方法硬件電路比較復雜,但該方法減少了千兆以太網接口數量又實現了千兆以太網SerDes接口與電接口轉換,達到了設計的預期目的。
參考文獻:
[1] 潘波,朱偉,袁靜.基于SerDes 的千兆以太網設計與實現[J].微處理機,2014(2).
[2] 于洪濤,丁鐵夫,鄭喜鳳,等.基于FPGA的千兆以太網光纖轉換器的設計[J].中國光學與應用光學.2009(8).
[3] 張磊.基于千兆網口的星敏感器圖像顯示和存儲[J].液晶與顯示,2014(6).
[4] 88E1111 Datasheet Integrated 10/100/1000 Ultra Gigabit Ethernet. USA: Marvell February 2006,10.
[5] Virtex-5 FPGA Embedded Tri-Mode Ethernet MAC user guide. USA: Xilinx February 2011,14.