張?zhí)煺眨ㄖ袊娮涌萍技瘓F公司第五十研究所 上?!?00331)
一種基于FPGA的EoPDH傳輸系統(tǒng)
張?zhí)煺?br/>(中國電子科技集團公司第五十研究所 上海200331)
為了滿足某戰(zhàn)術(shù)通信系統(tǒng)終端IP化接入的發(fā)展要求,提出了一種基于FPGA的EoPDH(Ethernet over PDH)傳輸系統(tǒng);該系統(tǒng)采用邏輯編程的方式實現(xiàn)接口協(xié)議、數(shù)據(jù)格式轉(zhuǎn)換等主要處理環(huán)節(jié),融合既有功能組件實現(xiàn)話音業(yè)務(wù)的傳輸、鏈路的管理控制等功能;仿真和試驗表明,系統(tǒng)的處理核心可以線速處理數(shù)據(jù)業(yè)務(wù),處理延時相對固定可控,支持用戶直接通過以太網(wǎng)口進行數(shù)據(jù)業(yè)務(wù)的透明傳輸,支持數(shù)話同傳,與既有的通信系統(tǒng)融合度高。
EoPDH;FPGA;數(shù)話同傳;通信系統(tǒng)
在某戰(zhàn)術(shù)通信系統(tǒng)中,通信節(jié)點之間的傳輸帶寬較窄、變化范圍大,傳輸協(xié)議多為非標(biāo)準(zhǔn)的專用協(xié)議,業(yè)務(wù)種類多、實時性要求高,傳輸體制以PDH為主;采用基于CPU轉(zhuǎn)換接入IP化終端的方式[1]難以滿足未來的發(fā)展要求;面向電信、互聯(lián)網(wǎng)領(lǐng)域開發(fā)的一系列規(guī)范化的EoPDH技術(shù)[2-3],無法直接加以應(yīng)用。針對這些情況,本文設(shè)計了一種IP化終端可以直接接入的有線傳輸系統(tǒng);數(shù)據(jù)處理過程參考標(biāo)準(zhǔn)技術(shù)規(guī)范,提高系統(tǒng)的通用性;采用FPGA作為信息處理的核心,以其邏輯可編程、處理速度快的特點提高系統(tǒng)的靈活性、實時性;整合既有的話音、管理控制等功能組件,提高與戰(zhàn)術(shù)通信系統(tǒng)的融合度。
如圖1所示,在傳輸系統(tǒng)的用戶側(cè),計算機終端上通常運行一系列數(shù)據(jù)處理軟件、網(wǎng)絡(luò)管理軟件,通過以太網(wǎng)口與系統(tǒng)進行各類數(shù)據(jù)業(yè)務(wù)、管理控制命令的交互;模擬話音終端通常采用兼容電信標(biāo)準(zhǔn)的模擬音頻設(shè)備,經(jīng)由話音模塊數(shù)字化處理后接入系統(tǒng)。在網(wǎng)絡(luò)側(cè),通信節(jié)點之間采用符合戰(zhàn)術(shù)通信系統(tǒng)規(guī)范的xDSL(Digital Subscriber Line)模塊構(gòu)建有線鏈路[4],根據(jù)被覆線纜鋪設(shè)環(huán)境、誤碼率要求等因素確定線路速率。在用戶側(cè)和網(wǎng)絡(luò)側(cè)之間的模塊構(gòu)成傳輸系統(tǒng)的核心,其基本工作原理是對用戶信息進行一系列復(fù)雜的處理,實現(xiàn)在既有鏈路上的傳輸。其中,采用Xilinx公司的FPGA芯片XC5VFX70T-2作為處理核心,實現(xiàn)各類信息的接入,數(shù)據(jù)的格式轉(zhuǎn)換、封裝、映射,流量的管理控制等功能;采用Micron公司的DDR2芯片MT47H64M16HW作為FPGA的外部緩存[5-6];采用 Marvell公司的以太網(wǎng)物理層芯片(以下簡稱 PHY芯片)88E1111實現(xiàn)數(shù)據(jù)用戶以 10/100/ 1000Mbps速率、全/半雙工模式接入系統(tǒng);采用既有的CPU模塊解析各類命令/信令、管理控制其它各個模塊、實時監(jiān)測維護傳輸鏈路;采用壓控時鐘源、高精度時鐘源、頻率比較電路構(gòu)成的時鐘模塊向系統(tǒng)提供各類工作時鐘、維護網(wǎng)絡(luò)同步。
圖1 傳輸系統(tǒng)構(gòu)成框圖
如圖 2所示,F(xiàn)PGA處理核心的預(yù)處理單元、GFP (Generic Framing Procedure)單元、流量管控單元對數(shù)據(jù)進行緩沖與解析、封裝/解封裝等處理;其它單元結(jié)合對應(yīng)的模塊進行接口協(xié)議的處理;主要工作過程涉及初始化、信息收發(fā)、管理控制等方面。
圖2 FPGA邏輯電路主要構(gòu)成框圖
2.1初始化
在初始化過程中依次經(jīng)歷CPU模塊自舉、以太網(wǎng)口初始化、系統(tǒng)設(shè)置3個階段。第一階段主要實現(xiàn)CPU模塊自身的啟動以及對FPGA的程序加載。在第二階段,CPU模塊先與CPU接口單元進行適配,然后通過8位并行本地總線讀寫FPGA的相關(guān)寄存器,啟動其它各單元;PHY管控單元通過MDC/MDIO串行口讀取PHY芯片自動協(xié)商后的工作速率、模式等信息,并存入PHY狀態(tài)寄存器;CPU模塊讀取該寄存器信息并進行解析,生成MAC[7-9]單元的設(shè)置參數(shù);通過MAC控制寄存器設(shè)置MAC單元,完成與PHY芯片的匹配,使以太網(wǎng)口進入正常工作狀態(tài)。在第三階段,用戶通過計算機終端發(fā)出設(shè)置系統(tǒng)的管理控制命令,經(jīng)過以太網(wǎng)口送入MAC單元后首先進行前導(dǎo)碼、幀起始符的檢查以確定幀的起始,然后進行CRC校驗[10-11]、長度檢查、地址檢查;符合條件的幀送往CPU模塊,不符合的丟棄;CPU模塊對收到的命令解析并生成設(shè)置參數(shù),通過相應(yīng)的控制寄存器設(shè)置各單元,通過SPI總線配置話音模塊、xDSL模塊,使傳輸系統(tǒng)進入預(yù)期的工作狀態(tài)。
2.2用戶發(fā)送信息
1)數(shù)據(jù)業(yè)務(wù)的發(fā)送:用戶數(shù)據(jù)經(jīng)以太網(wǎng)口、MAC單元送入預(yù)處理單元后依次進行分類、凈載荷生成、緩存;通過檢測以太網(wǎng)幀的源目地址值區(qū)分幀類型,管理控制幀送往CPU模塊;對數(shù)據(jù)業(yè)務(wù)幀,根據(jù)用戶數(shù)據(jù)報文中的優(yōu)先級字段進行優(yōu)先級分類,根據(jù)用戶設(shè)置情況去除地址、長度/類型、CRC序列等字段中的一種或幾種后形成凈載荷,并計算出凈載荷的長度;協(xié)同流量管控單元,將凈載荷及其長度值存入DDR2分配的緩沖空間,并標(biāo)識該緩沖空間的優(yōu)先級、處理狀態(tài)。在流量管控單元的協(xié)調(diào)下,GFP單元將待處理的凈載荷取出后轉(zhuǎn)換為32位寬,以G.7041規(guī)定的GFP-F方法[12-13]為基礎(chǔ)進行封裝;根據(jù)凈載荷的長度、擴展頭要求等信息,計算出載荷長度指示 PLI及其 CRC校驗序列 cHEC,然后與 32’hb6ab31e0序列異或生成加擾的核心頭;結(jié)合凈載荷的數(shù)據(jù)類型等信息,生成載荷類型標(biāo)識PTI、載荷校驗序列標(biāo)識PFI、擴展頭標(biāo)識EXI、用戶載荷標(biāo)識UPI等控制、校驗字段,嵌入凈載荷后采用x43+1多項式進行自同步擾碼生成載荷;將核心頭、載荷拼接后形成GFP幀,再經(jīng)過并串轉(zhuǎn)換、碼速調(diào)整后送入復(fù)分接[14]單元;其中,用戶可以通過設(shè)置開啟或關(guān)閉擾碼、比特翻轉(zhuǎn)、載荷校驗等處理環(huán)節(jié)。復(fù)分接單元根據(jù)時隙分配情況將數(shù)據(jù)業(yè)務(wù)和話音業(yè)務(wù)復(fù)接,對復(fù)接后的數(shù)據(jù)流進行交織、TDM(Time Division Multiplexing)接口適配,經(jīng)xDSL模塊輸出至網(wǎng)絡(luò)。傳輸系統(tǒng)中以太網(wǎng)幀、GFP幀、TDM流的數(shù)據(jù)格式及其之間的映射關(guān)系如圖3所示。
圖3 傳輸系統(tǒng)中主要數(shù)據(jù)格式及其之間的映射關(guān)系
2)話音業(yè)務(wù)的發(fā)送:話音接口單元對TDM總線送入的話音業(yè)務(wù)進行碼速、時隙調(diào)整后直接送入復(fù)分接單元,經(jīng)過與數(shù)據(jù)業(yè)務(wù)相似的處理后送入網(wǎng)絡(luò)。
2.3用戶接收信息
1)數(shù)據(jù)業(yè)務(wù)的接收:接收過程是與發(fā)送相似的逆過程,主要區(qū)別在解封裝環(huán)節(jié);GFP單元對分接的數(shù)據(jù)業(yè)務(wù)流根據(jù)PLI與cHEC的相關(guān)性逐字節(jié)的搜索核心頭,當(dāng)確定第一個幀的核心頭后根據(jù)PLI值查找下一幀的核心頭,連續(xù)多次正確檢測到核心頭后幀的捕獲進入同步狀態(tài),然后進行載荷解擾、校驗、字段去除等一系列解封裝處理,并根據(jù)UPI值分離出遠端管理控制命令幀。此外,用戶側(cè)帶寬一般遠高于網(wǎng)絡(luò)側(cè),在預(yù)處理環(huán)節(jié)通過減少緩沖空間的數(shù)量、取消優(yōu)先級控制簡化設(shè)計、減少處理延時。
2)話音業(yè)務(wù)的接收:話音接口單元對復(fù)分接單元分接的話音業(yè)務(wù)進行碼速、時隙調(diào)整,在話音信令控制下經(jīng)話音模塊送入模擬話音終端。
2.4管理與控制
1)用戶的管理與控制:通過網(wǎng)絡(luò)管理軟件產(chǎn)生的管理控制命令對本地的各個模塊進行設(shè)置,各個模塊的狀態(tài)信息以管理控制命令的形式實時上報;對需要傳送到遠端的管理控制命令,經(jīng)過CPU模塊的解析后封裝成IP包,并存入DDR2分配的緩沖空間,經(jīng)過與數(shù)據(jù)業(yè)務(wù)相似的GFP封裝、復(fù)接后送入網(wǎng)絡(luò),遠端再經(jīng)過相應(yīng)的逆處理后對命令進行解析、執(zhí)行;其中,在封裝過程中UPI值為8’h10,表示封裝的是IP包。
2)數(shù)據(jù)業(yè)務(wù)的管理與控制:主要包括基于優(yōu)先級的延時控制和基于流量的鏈路管理兩方面[15-16]。系統(tǒng)對于具有最高優(yōu)先級的數(shù)據(jù)業(yè)務(wù)無條件的優(yōu)先處理;對于其他優(yōu)先級業(yè)務(wù),在用戶規(guī)定的時間內(nèi),以優(yōu)先級高低為處理順序,超過規(guī)定時間,以等待處理時間為處理順序;著重控制高優(yōu)先級業(yè)務(wù)、均衡系統(tǒng)整體的傳輸延時。用戶根據(jù)延時要求、接口帶寬、流量突發(fā)等因素設(shè)置緩沖空間的數(shù)量、開啟流量管控單元的流量控制機制;在傳輸過程中,流量管控單元檢測到發(fā)送方向使用的緩沖空間數(shù)量達到預(yù)設(shè)值的3/4或收到遠端的流量管理控制命令,使MAC單元向用戶側(cè)發(fā)送暫停幀,無有效緩沖空間時,使GFP單元發(fā)送空閑幀;檢測到接收方向無有效緩沖空間時,使MAC單元發(fā)送空閑幀,檢測到接收方向異常時,使CPU模塊向遠端發(fā)送流量管理控制命令。用戶可以通過改變緩沖空間的數(shù)量改善系統(tǒng)平滑流量突發(fā)的能力;也可以結(jié)合上層的優(yōu)先級調(diào)整、流量控制等機制,調(diào)整處理核心的工作參數(shù)。
3)話音業(yè)務(wù)的管理與控制:采用與戰(zhàn)術(shù)通信系統(tǒng)相同的基于信令的話音業(yè)務(wù)管理控制機制。系統(tǒng)中模擬話音終端產(chǎn)生的雙音多頻信號經(jīng)過話音模塊數(shù)字化處理后送入CPU模塊解析,對需要傳送到遠端的話音信令,采用與傳送遠端管理控制命令相同的方法進行處理;對其他信令,根據(jù)既有方法處理。
如圖4所示,F(xiàn)PGA的開發(fā)環(huán)境為ISE13.1,采用ModelSim對數(shù)據(jù)業(yè)務(wù)的流轉(zhuǎn)過程進行仿真。為了方便表示,設(shè)置系統(tǒng)工作于本地環(huán)回模式,MII/GMII處以固定的速率發(fā)送固定內(nèi)容的以太網(wǎng)幀0x55...d5 a1...b1...00 2e 01 02...2e...,間隔為9個時鐘周期,用戶數(shù)據(jù)共46字節(jié),CRC序列為32’h2f 0f 7c 89。MAC單元工作于1 000 Mbps、全雙工模式。預(yù)處理單元處理后形成的凈載荷為0xa1...b1...00 2e 01 02...2e,共60字節(jié),為方便環(huán)回測試將源目地址對調(diào)。凈載荷經(jīng)過GFP單元封裝后為0x004048c4 00011021 b1b2b3b4...2b2c2d2e;在GFP幀中,PLI為16’h40,表示載荷長度為64字節(jié);PTI為3’h0,表示屬于用戶數(shù)據(jù)幀;PFI為1’h0,表示沒有載荷校驗序列;EXI 為4’h0,表示沒有擴展頭;UPI為8’h01,表示封裝的是以太網(wǎng)幀;未進行擾碼、比特翻轉(zhuǎn)、載荷校驗。在復(fù)分接單元處環(huán)回,MII/GMII處收到的以太網(wǎng)幀為0x55...d5 b1...a1...00 2e 01 02...2e...,CRC序列為32’h3e 65 20 ca。
圖4 數(shù)據(jù)業(yè)務(wù)環(huán)回測試仿真波形
在實驗室環(huán)境下,采用文中設(shè)計的系統(tǒng)在兩個通信節(jié)點之間進行數(shù)話同傳試驗。用戶計算機和Spirent公司的STP-2U網(wǎng)絡(luò)分析儀通過二層交換機接入系統(tǒng);設(shè)置以太網(wǎng)口工作于100 Mbps、全雙工模式,緩沖空間的數(shù)量為128個,有線鏈路的工作速率為2.048 Mbps,話音時隙為1個;SPT-2U根據(jù)相關(guān)規(guī)范進行流量生成、RFC2544測試。模擬話音終端采用模擬二線電話機,在節(jié)點之間進行呼叫、應(yīng)答、通話等操作。試驗過程中,數(shù)據(jù)業(yè)務(wù)和話音業(yè)務(wù)同時獨立的傳輸;數(shù)據(jù)業(yè)務(wù)的平均錯包率約為十萬分之一,最大可平滑流量突發(fā)時間約為10 ms;話音業(yè)務(wù)的呼叫流程與既有方式相同,話音清晰可懂。
在本文設(shè)計的傳輸系統(tǒng)中,處理核心的幀處理延時達到微秒量級且相對固定可控;模塊化、參數(shù)化的設(shè)計方法方便了用戶根據(jù)實際需求快速進行接口適配、工作模式和方式的調(diào)整;使系統(tǒng)兼有了ASIC的實時性、CPU的靈活性。仿真和試驗表明,系統(tǒng)的處理核心可以線速處理數(shù)據(jù)業(yè)務(wù);支持數(shù)據(jù)業(yè)務(wù)透明傳輸、數(shù)話同傳、鏈路管理控制等功能;與既有通信系統(tǒng)的融合度高,能夠較好解決IP化終端接入問題。
[1]彭來獻,趙文棟,張磊,等.基于MPC860T的TDM與以太網(wǎng)業(yè)務(wù)的適配[J].軍事通信技術(shù),2007,28(增刊):44-48.
[2]ITU-T.G.7041/Y.1303.Generic framing procedure(GFP)[S]. 2002.
[3]ITU-T.G.8040/Y.1340.GFP frame mapping into plesiochronous digital hierarchy(PDH)[S].2005.
[4]宋春晨,宋清宇,張瑞,等.高速有線數(shù)話同傳技術(shù)[J].火力與指揮控制,2014,39(增刊):59-63.
[5]唐嵐.基于Xilinx V5的DDR2數(shù)據(jù)解析功能實現(xiàn)[J].電子設(shè)計工程,2014,22(9):124-130.
[6]Xilinx,Inc.Memory interface solutions user guide,UG086 (v3.6)[EB/OL].[2010-09-21].http://www.xilinx.com/support /documentation/ip_documentation/ug086.pdf.
[7]曹云鵬,錢敏,楊翠軍.雙速自適應(yīng)以太網(wǎng)MAC設(shè)計及FPGA驗證[J].通信技術(shù),2010,43(11):87-92.
[8]董繼承,劉健,王瑞.一種帶優(yōu)先級隊列的千兆以太網(wǎng)MAC設(shè)計[J].電子設(shè)計工程,2011,19(8):116-119.
[9]侯義合,張冬冬,丁雷.基于FPGA+MAC+PHY的千兆以太網(wǎng)數(shù)傳系統(tǒng)設(shè)計[J].科學(xué)技術(shù)與工程,2014,14(19):275-279.
[10]閆軍虎,張明社,郗海燕.HDLC協(xié)議IP核的設(shè)計與實現(xiàn)[J].電子設(shè)計工程,2014,22(11):181-184.
[11]闞佳沖,潘文明,鄭堅澤,等.基于FPGA全參數(shù)化CRC的推導(dǎo)及實現(xiàn)[J].現(xiàn)代電子技術(shù),2015,38(8):154-158.
[12]牛燚坤,徐智勇,喬廬峰,等.高速專用GFP處理器的FPGA實現(xiàn)[J].光通信技術(shù),2009,11:39-41.
[13]曹鵬飛,韓英娜.基于FPGA實現(xiàn)千兆以太網(wǎng)業(yè)務(wù)在SDH上的傳輸[J].現(xiàn)代電子技術(shù),2012,35(1):59-64.
[14]趙怡,但濤.基于FPGA的多路數(shù)字信號復(fù)接系統(tǒng)設(shè)計與實現(xiàn)[J].電子科技,2013,26(12):37-39.
[15]柯鵬,金姍姍,李文翔.面向多業(yè)務(wù)通信調(diào)度的優(yōu)先級排隊模型研究[J].計算機科學(xué),2013,40(3):159-162.
[16]吳東.控制時延的主動隊列管理算法[J].計算機應(yīng)用,2014,34(3):632-639.
An EoPDH transmission system based on FPGA
ZHANG Tian-zhao
(No.50 Research Institute of CETC,Shanghai 200331,China)
An Ethernet over PDH transmission system based on FPGA is established,to meet the requirement of the IP-based tactical communication terminal.The system implement the main processing parts such as interface specifications and data format conversion by logic programming method,and combine with the present component to realize the voice transmission and link management.The simulation and experiment show that the data processing core can offer sufficient processing capability and fixed processing delay.It has transparent transmission for Ethernet and data-voice co-transmission functions,good compatibility with the present tactical communication system.
EoPDH;FPGA;data-voice co-transmission;communication system
TN911.72;TN915.19
A
1674-6236(2016)11-0071-03
2015-11-06稿件編號:201511065
張?zhí)煺眨?981—),男,河南南陽人,碩士。研究方向:通信系統(tǒng)。