SDH技術是最重要的寬帶傳輸技術,其在IP網絡中應用也十分廣泛,是最重要的骨干網傳輸鏈路類型,因此開發POS(Packet over SDH,SDH網上傳IP)線卡成為核心路由器等高端IP網絡設備開發中的重點。
在實際使用中,SDH信號有2種:一種是整體信號(concatenated mode,在其速率等級標識中以“c”結尾),這種信號直接采用高階虛容器進行數據映射,如STM-16c信號類型的含義就是其內部幀結構是按照2.5 Gb/s的速率虛容器進行字節間插,而不是由多個低階容器映射而得,因此無法將其明確的分為多個155 M或者622 M信號;另一種是通道化信號(channelized mode,在其速率等級結尾處沒有“c”),這種信號是由低階虛容器逐級映射而得到,因此對STM-16信號,它可通過區分幀結構內部的字節陣列來得到多個155 M信號或者622 M信號。
對應于上述2種SDH信號,在POS傳輸中有2類線卡,一類用于處理整體SDH信號,一類用于處理通道化POS信號,這里重點討論后者。通道化POS線卡在目前主要網絡設備供應商的產品目錄里較少提及,但是其應用領域卻越來越廣。隨著寬帶接入需求的不斷發展,許多企事業單位都需要租用獨享的鏈路,通道化的 POS不僅能夠滿足這一要求,而且由于其對信號的匯聚能力強,因此還有節省布線資源及維護升級和線路備份成本低等優點。因此,通道化線卡的應用前景非常好,而且已經在許多特種行業中得到廣泛的應用。
本文首先對通道化0C48(2.5 G)的設計需求進行分析,據此提出了基于PM5360和FPGA的整體設計方案,鑒于鏈路層處理器件PM5360在設計中的獨到之處以及使用中的難點,論文重點分析了其使用要點和難點,并給出了能夠靈活支持多種模式的芯片配置方法和軟件設計。
1 設計需求分析
0C48通道化線卡的設計除需要滿足通道化POS信號的處理需求外,還需要根據其可能的應用領域進一步確定,主要包括:1)能夠對通道化OC48信號進行最小粒度為0C3的處理,需要支持單一OC3、單一OCl2以及混合方式,通道化0C48模式下的每個0C12能夠進一步通道化為更細粒度的4個 0C3;2)兼容非通道化的0C3c、OCl2c、OC48c信號處理;3)支持上述工作模式的動態配置;4)支持IP包的線速處理。
2 整體方案
根據現代路由器等IP報文路由轉發設備的結構和功能需求,圖l給出了通道化0C48接口的整體設計方案。
由于需要滿足支持OC-3、OC-12和OC-48 3種不同速率的POS接口,因此選用Sumitomo Eleetric公司的SCP6802-GL和SCP6808-GL 2種型號的光器件,完成光電轉換功能。其中SCP6802-GL支持155 M/622M 2種POS接入速率,SCP6808-GL支持2.5 G POS接入速率,2種器件的封裝兼容,且支持熱插拔,可以根據接口需求方便的轉換。
鏈路層處理是線卡要完成的關鍵功能,根據需求分析,這里選用PMC公司的PM5360為主處理器,該器件采用“成幀器與物理接口一體化”設計思路,將鏈路層處理和物理層處理功能集成在單一芯片內部。
該器件支持l路OC48,或支持總速率不超過OC48的4路OC3與0C12的任意組合,并支持接口工作模式的動態改變;根據Internet工程任務組 (IETF)PPP工作組的RFC 2615(1619)/1662,執行基于SONET/SDH規范的點對點協議(PPP):為POS或ATM應用提供SATURN POS-PHY第3層32位系統接口(時鐘頻率高達104 MHz),即標準的SPl3接口;支持每個傳輸串行流的獨立環路時鐘工作方式;支持從每條線路端接收流至相應傳輸流的獨立線路環回,以及支持從線路端傳輸流至相應線路端接收流接口的獨立診斷環回;提供通用16位微處理器總線接口,用于配置、控制和狀態監控;低功耗1.8 V CMOS核心邏輯,具有3.3 V CMOS/TTL兼容性數字輸入和輸出功能,PECL輸入與輸出符合3.3 V標準。
報文處理模塊采用FPGA完成,根據對資源需求的估算,選擇Xilinx公司的Virtex-II XC2VP70實現。在FPGA內部完成對于PPP幀的處理,此外,板級處理機還利用FPGA完成對各關鍵器件的初始化及相關配置。
PM5360通過一組SPI-3接口經接口適配模塊進入FPGA內部。根據系統管理需求,線卡通過MPC860完成控制管理功能,基于VxWorks操作系統設計板級軟件,完成初始化、各模塊配置、運行狀態監測、統計信息上報等功能。
3 PM5360應用要點與難點
由于PM5360集成的功能豐富,其內部電路復雜,可配置寄存器數量超過2 000個,因此其應用難度較大。根據筆者的調試經驗,下面對該器件在通道化應用下的難點進行解釋,主要包括間接寄存器讀寫方法及調度機的設計等。
在PM5350的寄存器里,除了能夠直接按照訪存方式讀寫的寄存器外,還有大量間接寄存器,此類寄存器對POS模式下的器件工作方式尤為重要,但其配置方式特殊,因此本文對其使用要點進行總結,如圖2所示。
在PM5360內部有一個內置調度機,負責按照配置好的調度順序讀取各個通道的數據并放人接口緩存中,由于該芯片采用物理標識(PHID)和內部通道號同時存在的設計思路,而且通道化應用下單個物理通道內具有多個數據流,因此調度機的設計更復雜。
表1總結了調度機的設計要點,具體應用中,根據需要的模式將該表中的相應數值和對應的物理標識通過間接寄存器接口寫入地址為0x0335的寄存器。
另外,在應用中需要注意的是,PM5360在每個通道內都置有2組并行的模塊:xCFP和xTDP。其中xCFP包括RCFP(接收方向信元和幀處理器) 和TCFP(發送方向信元和幀處理器),xCFP用于0C12和OC48模式下的數據處理。xTDP包括RTDP(接收方向時間片數據通信處理器)和 TTDP(發送方向時間片數據通信處理器),用于OC3模式下的數據處理。在這兩個模塊的配置中,除了保證所有寄存器都按要求置位外,還需注意根據線路的實際特點完成各個通道以及內部子通道的加擾與解擾方式、使CRC校驗算式等與實際線路一致,這一點在實際中常被忽略而成為偽故障,從而導致開發周期延長。
值得指出的是,由于PM5360內部結構復雜,模塊眾多,同時數據處理路徑上的許多單元具有很強的關聯性,因此廠家建議了一個較為嚴格的復位與配置順序,基本原則可以總結為“按照數據流向,先完成邏輯單元配置,再完成物理單元配置,最后使能功能模塊”,在實際中應照此原則執行。
4 支持動態模式的PM5360配置軟件設計
本設計中的線卡支持多種工作模式,因此要求PM5360能夠根據需要動態改變其內部寄存器配置,本部分給出其配置函數的設計要點。圖3是支持動態模式的 PM5360配置函數。
該函數的基本形式為:PM5350_Config(unsigned charmode,unsigned char pathO_mode,unsigned char pathl_mode,unsigned char path2_mode,unsigned ehar path3_mode)。該函數的5個參數均為unsigned char類型,其中第1個參數mode用于指示器件處于通道化工作狀態還是非通道化狀態,其余4個函數分別代表其4個通道的工作狀態。
根據路由器的體系結構特點,線卡等功能部件通過內部通信系統與主控聯系,獲取配置信息,并實時上報自身的運行狀態信息和相關統計信息。因此,在圖3中,函數PM5350_Config()中的參數是由主控下發的,函數接收到參數后按照該流程進行解釋,從而完成配置。
5 性能測試
為了測試通道化單板的功能和性能,設計如圖4所示的測試方案。其基本原理是:按照該線卡在實際網絡中的應用特征,由測試控制臺發出命令控制網絡測試平臺 AX4000按照所需模式發送數據至待測線卡,線卡接收數據后按照其內部處理機制完成報文處理,并最終經輸出接口將數據送至測試儀,測試儀根據收到的報文情況給出丟包率等性能指標的測試結果。
測試的主要內容是通道化混合信道類型支持能力,具體指標包括丟包率、時延和時延抖動等。測試結果表明,所設計的線卡能夠支持需求分析所提出的全部功能指標,并且在100%鏈路利用率下,能夠線速處理全部報文,丟包率為0,且各種性能指標符合設計要求。表2給出了時延測試結果,表明實際的時延指標滿足設計要求。
6 結束語
本文基于PM5360和FPGA設計通道化OC48線卡,討論設計需求,給出總體設計方案,重點分析PM5360的使用要點和難點,并給出能夠動態變換工作模式的芯片配置方法。測試結果表明本文的設計能夠滿足實際需求。