《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 基于Xilinx FPGA的千兆以太網(wǎng)及 E1信號的光纖傳輸
基于Xilinx FPGA的千兆以太網(wǎng)及 E1信號的光纖傳輸
摘要: 目前,隨著多媒體應(yīng)用的普及,千兆位以太網(wǎng)已經(jīng)發(fā)展成為主流網(wǎng)絡(luò)技術(shù)。大到成千上萬人的大型企業(yè),小到幾十人的中小型企業(yè),在建設(shè)企業(yè)局域網(wǎng)時都會把千兆位以太網(wǎng)技術(shù)作為首選的高速網(wǎng)絡(luò)技術(shù)。千兆位以太網(wǎng)技術(shù)甚
Abstract:
Key words :

目前,隨著多媒體應(yīng)用的普及,千兆位以太網(wǎng)已經(jīng)發(fā)展成為主流網(wǎng)絡(luò)技術(shù)。大到成千上萬人的大型企業(yè),小到幾十人的中小型企業(yè),在建設(shè)企業(yè)局域網(wǎng)時都會把千兆位以太網(wǎng)技術(shù)作為首選的高速網(wǎng)絡(luò)技術(shù)。千兆位以太網(wǎng)技術(shù)甚至正在取代ATM技術(shù),成為城域網(wǎng)建設(shè)的主力軍。

E1 接口采用PCM 編碼方式。符合G.703標(biāo)準(zhǔn),通過75Ω同軸電纜或120Ω雙絞線進行非對稱或?qū)ΨQ傳輸。在電信網(wǎng)中有著廣泛應(yīng)用。

將高速的千兆位以太網(wǎng)信號與低速的E1信號結(jié)合起來,實現(xiàn)以太網(wǎng)與E1信號的復(fù)用。既滿足了用戶對大帶寬、高容量數(shù)據(jù)的傳輸要求,又提供了E1信號接入功能,實現(xiàn)電話業(yè)務(wù)及其他專用通信系統(tǒng)的接入功能。

系統(tǒng)構(gòu)成
整個系統(tǒng)主要由E1接口單元、以太網(wǎng)接口單元、FPGA單元以及光接口單元構(gòu)成。E1接口單元主要完成E1信號的接口轉(zhuǎn)換,以太網(wǎng)接口單元主要通過外部PHY芯片實現(xiàn)物理層功能,再通過GMII接口實現(xiàn)與FPGA以太網(wǎng)媒體接入控制器對接。吉比特收發(fā)器通過用戶接口將以太網(wǎng)數(shù)據(jù)和經(jīng)過碼速調(diào)整后的E1信號形成16b并行數(shù)據(jù),再經(jīng)過16b/20b編碼形成2.5G b/s的數(shù)據(jù)流送入到光接口單元,光接口單元完成光/電轉(zhuǎn)化,實現(xiàn)信號的光纖傳輸。系統(tǒng)框圖如圖1所示。

E1接口單元的設(shè)計
在E1信道中,一般每8位組成一個時隙,32個時隙組成一個幀,16個幀組成一個復(fù)幀。在一個幀中,TS0主要用于傳送幀定位信號(FAS)、CRC - 4 ( 循環(huán)冗余校驗) 和對端告警指示,TS16主要傳送隨路信令( CAS)、復(fù)幀定位信號和復(fù)幀對端告警指示,TS1 ~ T S15 和T S17 ~T S31共30個時隙則用來傳送話音或數(shù)據(jù)等信息。如果采用公共信道信令(CCS)模式,T S16就失去了傳送信令等信號的用途,TS1~TS31共31個時隙可傳送話音或數(shù)據(jù)等信息。如果采用無幀模式,E1信道將不成幀,而作為一個透明的話音或數(shù)據(jù)等信息傳輸通道。一個E1信道可傳送N個
64K b/s的話音或數(shù)據(jù)等信息通道。在隨路信令(CAS)模式,N為1~30;在公共信道信令(CCS)模式,N為1~31,而在無幀模式時,N為32。

發(fā)送方向:E1信號首先經(jīng)過接口變壓器,然后送入單/雙變換電路,完成單雙變換后送入FPGA芯片。FPGA將E1線路接口單元送來的HDB3數(shù)據(jù)送入時鐘提取模塊,提取出E1時鐘,并且將HDB3數(shù)據(jù)轉(zhuǎn)換成NRZ數(shù)據(jù),NRZ數(shù)據(jù)經(jīng)碼速調(diào)整后復(fù)用成一路125M b/s數(shù)據(jù)流,然后送入RocketIO GTP Transceiver 發(fā)送接口單元中,和千兆位以太網(wǎng)信號一起進行線路編碼,最后形成2.5G b/s的數(shù)據(jù)流送入到激光器進行光線路編碼進行傳輸。

接收方向:信號經(jīng)光纖傳輸后到達接收端,首先恢復(fù)成電信號送入到RocketIO GTP Transceiver接收單元中,經(jīng)時鐘提取、信號同步、解碼、信號分接,時鐘平滑后分接出E1數(shù)據(jù)流,再經(jīng)HDB3編碼后送入到單雙變換電路完成雙/單變化,經(jīng)接口變壓器后進行傳輸。原理框圖如圖2所示。

千兆位以太網(wǎng)接口單元設(shè)計
千兆位以太網(wǎng)利用原以太網(wǎng)標(biāo)準(zhǔn)所規(guī)定的全部技術(shù)規(guī)范,其中包括CSMA/CD 協(xié)議、以太網(wǎng)幀、全雙工、流量控制以及IEEE802.3標(biāo)準(zhǔn)中所定義的管理對象。千兆位以太網(wǎng)的關(guān)鍵技術(shù)是千兆位以太網(wǎng)的MAC層和以太網(wǎng)接口的實現(xiàn)。

1 GMII (Gigabit MII)
GMII采用8位接口數(shù)據(jù),工作時鐘1 2 5 M H z , 因此傳輸速率可達1000Mb/s。同時兼容MII所規(guī)定的10/100M b/s工作方式。接口信號定義如表1所示。

2 Virtex-5以太網(wǎng)媒體接入控制器
在V i r t e x-5 FPGA中,以太網(wǎng)媒體接入控制器(以太網(wǎng)MAC)模塊提供了專用的以太網(wǎng)功能,它和Virtex-5
RocketIO GTP收發(fā)器以及SelectIO技術(shù)相結(jié)合,能夠讓用戶與各種網(wǎng)絡(luò)設(shè)備進行連接。在Virtex-5器件中,以太網(wǎng)MAC模塊作為一個硬件塊集成在FPGA內(nèi)部。吉比特以太網(wǎng)MAC功能框圖如圖3所示。

(1)客戶端接口
發(fā)送器的客戶端接口將幀傳送給以太網(wǎng)MAC。當(dāng)接收到的數(shù)據(jù)小于最短的以太網(wǎng)幀長度時,發(fā)送器將該數(shù)據(jù)加長,并且保持最小的幀間距;可以增加間隔的長度,還可以通過配置發(fā)送器在幀中添加一個幀檢驗序列。一個單獨的流控制接口允許你生成暫停幀。在半雙工模式下,信號發(fā)送之間存在沖突,在有效沖突情況下,需要進行幀重發(fā)。

接收器接口檢驗傳入幀和信號幀誤差。這里分別提供了好幀信號和壞幀信號。還可以通過配置以太網(wǎng)MAC以便在檢測到有效的暫停幀之后,暫停和重新啟動幀傳輸。

客戶端接口的數(shù)據(jù)的寬度通常是8位或者16位。8位接口主要針對標(biāo)準(zhǔn)的以太網(wǎng)應(yīng)用,它利用一個125MHz的時鐘產(chǎn)生1000M b/s的數(shù)據(jù)傳輸速率。當(dāng)使用16位模式時,可以在不提高客戶端接口時鐘頻率的條件下將數(shù)據(jù)傳輸速率提高到2000Mb/s。

(2)控制接口
每個以太網(wǎng)MAC有一個可選的管理數(shù)據(jù)I/O(MDIO)接口。它允許對外部PHY的管理寄存器和以太網(wǎng)MAC中PCS /PMA內(nèi)部的物理接口管理寄存器進行訪問。

3 Virtex-5以太網(wǎng)MAC封裝
圖4 顯示了一個HDL 封裝的模塊結(jié)構(gòu)圖,它可以從Xilinx的COR EGenerator工具中獲得。

以太網(wǎng)MAC是一個具有162個端口和79個參數(shù)的復(fù)雜組件。封裝文件讓你可以僅對特定應(yīng)用所需端口的參數(shù)和接口輕松進行設(shè)置。它們的另外一個優(yōu)勢是簡化了時鐘和物理I/O資源的使用。

以太網(wǎng)MAC 封裝。在最低級別,實體化一個單獨的或者雙以太網(wǎng)MAC,同時在CORE Generator GUI中將它的屬性設(shè)置成你偏好的選項。所有未使用的輸入端口接地,未使用的輸出端口保持開路狀態(tài)。

模塊級別的封裝。在下一層級,對物理接口以及所要求的時鐘資源進行實體化。這包括用于串行接口的RocketIO GTP收發(fā)器。同時針對你的配置對時鐘進行優(yōu)化,并且利用時鐘將輸出同步到你的設(shè)計。

Local Link級別的封裝。在該級別,將FIFO添加到客戶端發(fā)送器和接收器接口。FIFO能夠處理接收時壞幀的丟失并且以半雙工模式對幀重新傳輸。Local Link可以作為后端接口使用。

RocketIO GTP Transceiver
RocketIO是一種高速的串行收發(fā)器,采用兩對差分對來進行數(shù)據(jù)的發(fā)送和接收,可以實現(xiàn)兩個單工或一對全雙工的數(shù)據(jù)傳輸。RocketIO支持622Mb/s ~3.75G b/s的全雙工傳輸速率,還具有8b/10b編解碼(平衡編碼)、時鐘生成及恢復(fù)等功能。Aurora協(xié)議是為專有上層協(xié)議或行業(yè)標(biāo)準(zhǔn)的上層協(xié)議提供透明接口的第一款串行互連協(xié)議,可用于高速線性通路之間的點到點串行數(shù)據(jù)傳輸,同時其可擴展的帶寬,為系統(tǒng)設(shè)計人員提供了所需要的靈活性。

1 PMA和PCS層
RocketIO包括PMA(物理媒介適配層)和PCS(物理編碼子層)兩個子層,其內(nèi)部結(jié)構(gòu)如圖5所示。其中PMA子層主要用于串行化和解串,PCS主要包括線路編碼和CRC校驗編碼。

PMA 子層中集成了SERDES,發(fā)送和接收緩沖,時鐘發(fā)生器及時鐘恢復(fù)電路。SERDES是一個串并轉(zhuǎn)換器,負責(zé)FPGA中本地的32位并行數(shù)據(jù)(也可以是16位或8位)與RocketIO接口的串行數(shù)據(jù)之間的轉(zhuǎn)換。采用串行數(shù)據(jù)收發(fā),可以在高頻條件下很好地避免數(shù)據(jù)間的串?dāng)_。時鐘發(fā)生器及時鐘恢復(fù)電路用于將時鐘與數(shù)據(jù)綁定發(fā)送,以及將時鐘從接收到的數(shù)據(jù)流中恢復(fù)出來,從而避免了在高速傳輸條件下時鐘與數(shù)據(jù)分開傳輸所帶來的時鐘抖動等問題。

PCS子層負責(zé)8b/10b編碼解碼和CRC校驗,并集成了負責(zé)channel綁定和時鐘修正的彈性緩沖。8b/10b編碼可以避免數(shù)據(jù)流中出現(xiàn)連0連1的情況,便于時鐘的恢復(fù)。channel綁定通過在發(fā)送數(shù)據(jù)流中加入P字符來將幾個RocketIO通道綁定成一個一致的并行通道,從而來提高數(shù)據(jù)的吞吐率。最多支持24個通道的綁定。彈性緩沖可以解決恢復(fù)時鐘與本地時鐘的不一致問題,并進行數(shù)據(jù)率的匹配,從而使得channel綁定成為可能。對RocketIO模塊的配置,可以通過下面兩種方式進行:靜態(tài)特性可以通過HDL代碼設(shè)置;動態(tài)特性可以通過RocketIO的原語端口進行配置。

2 時鐘合成器
在實際設(shè)計中,高性能的通信質(zhì)量要求有高穩(wěn)定性和高精度的時鐘源,而抖動和頻偏是衡量時鐘源的兩個重要指標(biāo)。RocketIO內(nèi)部的工作時鐘需要將輸入時鐘經(jīng)過數(shù)十倍的倍頻,但其可容忍的時鐘偏差為40ps,因此建議選擇高精度的差分時鐘。當(dāng)RocketIO在2.5Gb/s以上時,參考時鐘應(yīng)采用差分輸入方式(例如LVDS、LVP ECL),由專用差分時鐘引腳輸入,然后引到相同或相鄰?fù)ǖ乐蠷ocketIO的參考時鐘輸入端;當(dāng)RocketIO在2.5Gb/s以下時,不要使用FPGA內(nèi)部的DCM模塊來產(chǎn)生參考時鐘,因為經(jīng)過DCM倍頻的時鐘會引入較大的抖動,使RocketIO的接收鎖相環(huán)無法穩(wěn)定地鎖定發(fā)送時鐘。

當(dāng)高精度時鐘輸入到FPGA中后,吉比特發(fā)送器對參考時鐘輸入管腳REFCLK的信號完成20倍倍頻操作后,來作為自己的工作時鐘。同樣,該倍頻器已集成在芯片中,不需要額外的組件。RXRECCLK和REFCLK二者之間沒有固定的相位關(guān)系,且都為專用時鐘信號,不能連接到其他管腳上作為他用。當(dāng)使用4字節(jié)或1字節(jié)數(shù)據(jù)接收路徑時,RXUSRCLK和RX U SRCLK2具有不同的頻率,但是頻率低的時鐘下降沿要和頻率高的時鐘下降沿對齊。同樣的關(guān)系也適用于TXUSRCLK和TXUSRCLK2信號。

RocketIO采集數(shù)據(jù)的同步時鐘則是通過時鐘/數(shù)據(jù)恢復(fù)電路來提取的,該電路由一個單片的PLL集成塊實現(xiàn),不需要任何外部組件?;謴?fù)電路從接收的數(shù)據(jù)流中提取出時鐘的頻率和相位,并通過20倍分頻后送到輸出管腳RXRECCLK上。

時鐘和數(shù)據(jù)恢復(fù)器:如果沒有數(shù)據(jù)存在,時鐘/數(shù)據(jù)恢復(fù)器(CDR)電路會自動鎖相到參考時鐘上。為了使操作達到最優(yōu)性能,參考時鐘的精度必須在100×10-6之內(nèi)。同時要滿足供電系統(tǒng)的低噪聲。如果有數(shù)據(jù),則恢復(fù)電路會自動同步鎖相到輸入數(shù)據(jù)上。

發(fā)送器:發(fā)送器模塊包括發(fā)送接口、8b/10b編碼器、不均勻控制、發(fā)送FIFO、串行器、發(fā)送終端以及預(yù)加重電路。

接收器:接收器模塊主要包括解串器、接收終端和8b/10b解碼器。

光接口單元
光接口單元主要包括光發(fā)射模塊和數(shù)字光接收放大器模塊。它們的功能分別是將電脈沖信號變換成光脈沖信號和將接收到的衰減變形的微弱光脈沖信號通過光/電轉(zhuǎn)換成電脈沖信號。光發(fā)射模塊把符合數(shù)字光纖通信系統(tǒng)傳輸性能要求的光脈沖波形從光源組件的尾纖發(fā)射出去。光接收放大器模塊由PIN+FET和放大電路組成。它將微弱光脈沖信號經(jīng)O/E轉(zhuǎn)換,并給予足夠的放大,還原成原來的數(shù)字脈沖信號。

本設(shè)計選用飛通2 . 5 Gb/s 光模塊,中心波長1550n m。傳輸距離可達40km。參考電路如圖6所示。

結(jié)束語
本文設(shè)計的基于Xilinx FPGA的千兆位以太網(wǎng)及E1信號的光纖傳輸系統(tǒng)采用Xilinx X C5VLX30T芯片,通過以太網(wǎng)測試儀和數(shù)據(jù)誤碼儀對本系統(tǒng)分別進行性能測試,測試結(jié)果滿足設(shè)計要求,系統(tǒng)工作穩(wěn)定。從而實現(xiàn)了千兆位以太網(wǎng)信號和E1信號的接入功能,為用戶搭建了一個大容量、多業(yè)務(wù)的傳輸平臺。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。