潘 波,朱 偉,袁 靜
(重慶金美通信有限責任公司,重慶400030)
基于SerDes的千兆以太網設計與實現
潘 波,朱 偉,袁 靜
(重慶金美通信有限責任公司,重慶400030)
采用SerDes作為物理層來實現背板互聯,使各個插接到背板上的單元板通過千兆以太網協議互聯起來。簡要介紹了系統的基本架構和互聯方式后,運用Altera公司的CycloneIV芯片實現的千兆以太網接口通過SerDes與Broadcom公司的千兆以太網交換芯片互聯。最后給出了該設計的測試結果和結論。
高速串行接口;高速收發器;千兆以太網;背板
千兆以太網技術運用于背板互聯已經得到了廣泛應用,但是傳統的基于1000BASE-T的雙絞線作為傳輸介質的方式越來越受到局限。因為傳統的1000BASE-T需要使用“PHY+變壓器”的結構,這樣單元板的小型化就受到了很大限制。
隨著人們對信息流量需求的不斷增長,傳統并行接口越來越難以滿足系統對傳輸帶寬的要求,過去主要用于光纖通信的串行通信技術SerDes正在取代傳統并行總線而成為高速接口設計的主流。SerDes是英文SERializer(串行器)/DESerializer(解串器)的簡稱。它是一種時分多路復用(TDM)、點對點的通信技術,即在發送端多路低速并行信號被轉換成高速串行信號,經過傳輸媒體(光纜或銅線),最后在接收端高速串行信號重新轉換成低速并行信號。這種點對點的串行通信技術充分利用傳輸媒體的信道容量,減少所需的傳輸信道和器件引腳數目,從而大大降低通信成本。
該設計選用SerDes作為物理層,使用差分信號線來傳輸千兆以太網數據。CycloneIVGX系列FPGA集成了高速收發器硬核,其單路傳輸速率可以支持3.125Gb/s的速率。運用Altera公司提供的IP核輕松搭建起千兆以太網接口。
一個千兆以太網交換板與多個單元板插接到背板上,多個單元板通過星型總線連接到交換板上。這樣各個單元板之間和單元板通過交換板可以互通數據。傳統的數據總線采用標準的千兆以太網。這種方式在交換側和單元板側都會使用變壓器和以太網PHY芯片作為物理層。這部分電路的功耗會比較高,且占用很多印制板面積。提出使用一種不使用變壓器和以太網PHY芯片作為傳輸層,直接采用高速串行總線SerDes作為傳輸層。交換板的交換芯片采用Broadcom公司的BCM56334芯片,該芯片接口支持SGMII和SerDes兩種方式。SGMII主要用于傳統的標準以太網與PHY連接,SerDes模式可以用作背板互聯。單元板使用Altera公司的cycloneIVGX系列FPGA來實現(見圖1)。

圖1 整機架構
Altera公司的CycloneIV GX器件內嵌多達八個全雙工收發器,支持600Mbps到3.125 Gbps的串行數據速率。
如圖2所示,每個收發器通道均由一個發送數據通路和一個接收數據通路組成。每個數據通路又由以下兩部分構成。
物理介質附加子層(PMA):包括I/O緩沖器的模擬電路、時鐘數據恢復(CDR)、串行器/解串器(SerDes)以及用于優化串行數據通道性能的可編程預加重與均衡。
物理編碼子層(PCS):包括兼容所支持協議的收發器中數字功能的硬核邏輯實現。主要包括8/10bit編解碼,數據緩沖等功能。

圖2 高速收發器結構
FPGA架構中的輸出并行數據通過發送器PCS和PMA進行傳輸,并作為串行數據被發送。接收到的輸入串行數據通過接收器PMA和PCS傳輸到FPGA邏輯中。
使用Altera公司提供的三速以太網IP核構建物理層,對外傳輸方式選擇使用SerDes,物理層傳輸協議選用1000BASE-X。使用用戶邏輯實現的GMAC與CPU相連實現數據鏈路層的處理。使用的高速收發器速率為1.25Gbps。如圖3所示。
在CPU接收端,從背板側收到的串行數據通過PMA+PCS的物理層處理轉換為并行的GMII接口數據。GMAC通過GMII接口將數據收下來,去掉前導碼,進行CRC校驗,并完成MAC地址匹配。將MAC地址匹配且通過CRC校驗正確的數據包寫入到SDRAM進行緩存,然后CPU通過FIFO接口從SDRAM讀取數據。將收到的數據放入SDRAM進行緩存是因為從網絡側收到的數據包會有突發性。對大數據量的突發數據包,CPU會處理不過來。所以需要將其緩存下來等待CPU讀取。在CPU發送端,CPU將數據寫入到FIFO緩存,GMAC將數據加上前導碼和CRC校驗數據,通過GMII接口將數據傳送給PMA+PCS物理層處理。最后通過SerDes在背板上傳輸。

圖3 千兆以太網邏輯框圖
該系統中CPU使用軟核NIOS處理器來實現的,CPU通過中斷方式來讀取或發送數據。CPU上運行UC/OS操作系統,使用操作系統自帶的TCP/IP協議棧。軟件需要完成驅動層的數據處理,也就是GMAC接口與協議棧之間的數據交互。這樣NIOS就可以完成千兆以太網的上層數據處理。
測試框圖如圖4所示。將交換板和單元板插接到背板上,交換板前面板上的以太網口與計算機連接。分別在交換板和單元板的SerDes接收端設置測試點TEST1和TEST2,用于測試線路質量。

圖4 測試框圖
將計算機的IP地址設置為192.168.1.2,單元板的IP地址設置為192.168.1.1。交換板與計算機之間用網線進行連接,單元板與交換板之間用SerDes進行連接。加電啟動完畢后,通過交換芯片的管理網頁查看到,與計算機和單元板連接的網口都為1000M連接。在計算機上發起ping包測試,測試結果如下表所示。通過測試可以看出,丟包率滿足小于0.1%的要求。

表1 ping包測試結果
使用安捷倫公司生產的高速示波器分別在TEST1和TEST2處測試高速信號眼圖。如圖5所示。從眼圖定性來看,經過背板傳輸后的信號質量可靠。

圖5 眼圖測試
本設計采用SerDes技術來實現背板互聯,傳輸的是千兆以太網數據。作為機內互聯方式,在不需要遠距離傳輸的情況下,拋棄了原來的千兆以太網架構,達到了簡化設計、降低功耗的目的,使系統的可靠性得到提高。在實現SerDes傳輸千兆以太網后,為考慮采用4對SerDes來傳輸萬兆以太網打下了基礎。
[1]糜正琨,楊國民.交換技術[M].北京:清華大學出版社,2006.
[2]Cyclone IV Device Handbook[M].Altera,2011.
[3]李優杏,周先敏,呂軍紅.基于FPGA的SERDES接口設計與實現[J].中國通信學會第五屆學術年會,2010(1):11-14.
[4]胡錦,彭成,譚明.基于RocketIO的高速串行協議設計與實現[J].微計算機信息,2008,24(6-3):196-227.
[5]李江濤.RocketIO高速串行傳輸原理和實現[J].雷達與對抗,2004(3):48-50.
Gigabit Ethernet’s Design and Im plementation Based on SerDes
PAN Bo,ZHUWei,YUAN Jing
(Chongqing Jin Mei Communication Co.,LTD,Chongqing 400030,China)
The backplane's interconnection is achieved by using SerDes as the PHYsical layer so that each unit isplugged into the backplane board interconnects by Gigabit Ethernet protocol.This paper describes the basic architecture and interconnectionmethod.The interface of Gigabit Ethernet is realized by using the chip of cycloneIV from Altera and is interconnected with Broadcom's Gigabit Ethernet switch chip via SerDes.The test results and conclusions of the design are completely given in the paper.
SerDes;Transceiver;GbE;Backplane
10.3969/j.issn.1002-2279.2014.01.010
TP274
:A
:1002-2279(2014)01-0032-03
潘波(1984-),男,重慶市人,碩士研究生,主研方向:有線通信設備整機架構研究。
2013-07-22