周 華 肖練剛 張繼生 陳 昌 田 豐
北京航天自動控制研究所,北京 100854
?
航天光纖數(shù)據(jù)交換網(wǎng)絡(luò)設(shè)計(jì)
周 華 肖練剛 張繼生 陳 昌 田 豐
北京航天自動控制研究所,北京 100854
隨著高速光纖總線技術(shù)的逐漸成熟,具備高傳輸速率、高可靠性、低響應(yīng)延遲、低線纜總重等特點(diǎn)的光纖總線開始在航天領(lǐng)域得到應(yīng)用。在航天光纖總線的研究中,光纖通道是研究的熱點(diǎn)。本文研究了光纖通道的交換式拓?fù)?,并結(jié)合航天器的實(shí)際工作要求,提出了基于FPGA的光纖通道交換式拓?fù)涞膶?shí)現(xiàn)方案,重點(diǎn)設(shè)計(jì)了光纖通道的交換結(jié)構(gòu)和交換器。通過Quartus II 的仿真以及硬件實(shí)物實(shí)驗(yàn)驗(yàn)證了該方案的可行性。
航天;光纖通道;交換結(jié)構(gòu);交換器
隨著高速光纖總線技術(shù)的逐漸成熟,具備高傳輸速率、高可靠性、低響應(yīng)延遲、低線纜總重等特點(diǎn)的光纖總線開始在航天領(lǐng)域得到應(yīng)用。光纖通道(Fibre channel,F(xiàn)C)作為高速光纖總線的一種,具有極高的傳輸速率、靈活的拓?fù)浣Y(jié)構(gòu)以及適用于航空航天環(huán)境的FC-AE協(xié)議。它在航天上的應(yīng)用,將大大改善現(xiàn)在航天器上電纜網(wǎng)數(shù)據(jù)傳輸帶寬低及線纜總重過重的情況。對于航天器的設(shè)計(jì)及制造將帶來極大的便利。
光纖通道具有點(diǎn)對點(diǎn)、仲裁環(huán)和交換式拓?fù)?種拓?fù)浣Y(jié)構(gòu)。其中,交換式拓?fù)淇蛇B接的設(shè)備數(shù)量遠(yuǎn)比前面二者多,且故障隔離性好。國內(nèi)相關(guān)學(xué)者在光纖通道交換式拓?fù)渖嫌胁簧傺芯?,如付建川[1]等研究了光纖通道交換結(jié)構(gòu)及其配置功能。但目前對光纖通道交換式拓?fù)涠嘁詷?biāo)準(zhǔn)的研究為主,缺少基于實(shí)際工程應(yīng)用背景的方案研究。本文注重于航天系統(tǒng)上的實(shí)際需求,在光纖通道交換網(wǎng)絡(luò)的設(shè)計(jì)上,適當(dāng)刪減了標(biāo)準(zhǔn)中一些不必要的部分,對光纖通道數(shù)據(jù)交換中起重要作用的交換結(jié)構(gòu)進(jìn)行了軟硬件設(shè)計(jì),并通過仿真對設(shè)計(jì)進(jìn)行了初步驗(yàn)證。
1.1 光纖通道交換式拓?fù)浜喗?/p>
光纖通道在采用交換式拓?fù)鋾r,各終端節(jié)點(diǎn)之間的通信是通過交換結(jié)構(gòu)的轉(zhuǎn)發(fā)來完成的。如圖1,所有的節(jié)點(diǎn)終端都與交換結(jié)構(gòu)直接相連,整個光纖總線成星形結(jié)構(gòu)。而交換結(jié)構(gòu)可以看成內(nèi)部交換元件所構(gòu)成的一個交換式網(wǎng)絡(luò),它由交換元件和內(nèi)部交換連接(ISL)2部分構(gòu)成。從圖中可以看出,交換結(jié)構(gòu)內(nèi)的交換元件之間通過ISL相連[2],可用多種拓?fù)浞绞阶杂傻亟M成交換結(jié)構(gòu)。最簡單的也是目前研究得最多的交換結(jié)構(gòu)是基于交換器的交換結(jié)構(gòu)。這種交換結(jié)構(gòu)以光纖通道交換器(SWITCH)作為交換元件,最簡單的交換結(jié)構(gòu)可以只由一個交換器構(gòu)成。本文研究的重點(diǎn)是基于交換器的交換結(jié)構(gòu)的方案實(shí)現(xiàn),主要有2個方面:1)光纖通道交換器的設(shè)計(jì);2)光纖交換器組建交換結(jié)構(gòu)的方案。
圖1 光纖通道的交換式拓?fù)浣Y(jié)構(gòu)
1.2 光纖通道交換器的方案設(shè)計(jì)
光纖通道交換器可分為6個部分:交換器端口、交換實(shí)現(xiàn)模塊、路徑選擇器、路由模塊、交換控制器、地址管理器[3]。其結(jié)構(gòu)圖如圖2所示。
1.2.1 交換器端口
交換器端口作為交換器與外部連接的部件,在交換器的構(gòu)成中相當(dāng)重要。它要完成信號的光電轉(zhuǎn)換及傳輸,對數(shù)據(jù)的編解碼、數(shù)據(jù)幀、命令幀、狀態(tài)幀(3種幀在下文中用消息幀來代替)等進(jìn)行解、組幀等工作。此外,它還需要有一定的差錯控制及原語(Primitive)收發(fā)功能來獲取相關(guān)信息以保證交換的正常進(jìn)行。
圖2 交換機(jī)的結(jié)構(gòu)圖
交換器端口在交換器復(fù)位之后,將順序完成鏈路建立、登陸、端口配置等工作來達(dá)到正常工作狀態(tài)。在鏈路建立過程中,端口通過收發(fā)原語與連接的其它端口建立鏈路連接。在登錄過程中,2個端口會進(jìn)行參數(shù)交換[4],比如流量控制所用的信用、端口種類和端口ID等信息。成功登錄后,交換器端口將根據(jù)連接到自己的其它端口種類來進(jìn)行配置。如果連接的端口為N端口(即普通終端節(jié)點(diǎn)的端口),則交換器的端口會配置成F端口,專門用于和N端口進(jìn)行通信。類似地,對應(yīng)L端口將配置成FL端口。對應(yīng)交換器端口,則2個交換器的端口都會配置E端口,這時它們之間的連接就是ISL。在登錄以及端口配置后,交換器端口才能正常工作。
1.2.2 交換實(shí)現(xiàn)模塊
交換實(shí)現(xiàn)模塊是實(shí)現(xiàn)交換器內(nèi)部端口間數(shù)據(jù)傳輸?shù)闹黧w。所有經(jīng)過交換器的有效幀都是通過它來連接交換器的接收端口和轉(zhuǎn)發(fā)端口。FC-SW協(xié)議中未規(guī)定交換實(shí)現(xiàn)模塊的軟硬件實(shí)現(xiàn)形式。在本文中,交換建造模塊只支持幀復(fù)用交換(專用連接式交換不被支持)及阻塞式的交換方式(交換器在同一時間只能進(jìn)行一個交換,其它的交換請求將被阻塞)。
1.2.3 路徑選擇器和路由模塊
路徑選擇器和路由模塊功能緊密結(jié)合,負(fù)責(zé)為交換器內(nèi)消息幀轉(zhuǎn)發(fā)選擇正確的輸出端口。
1.2.4 交換控制器與地址管理器
交換控制器負(fù)責(zé)對整個交換器的管理,地址管理器在交換器組網(wǎng)時管理交換器的地址分配。文中交換器的地址預(yù)先指定。
1.3 交換結(jié)構(gòu)的組建方案
文中主要依靠基本交換器、基本交換連接以及F 服務(wù)幀來建立交換結(jié)構(gòu)。
在構(gòu)成交換結(jié)構(gòu)的交換器中,有一個交換器會被選為基本交換器,所有其它的交換器都會通過一條路徑與基本交換器相連接,組成這些路徑的ISL就叫做基本交換連接(Principal ISL)。一條基本交換連接,對于與之相連的2個交換器來說,有上行和下行的不同說法。從圖3中可以看出,每一個交換器所連接的上行基本交換連接只能有1個(基本交換器則沒有),下行基本連接能有多個。如果只考慮基本交換連接,基本交換器能且只能通過下行基本連接到達(dá)任意一個其它交換器。同理,任意一個其它交換器也只能通過上行基本連接到達(dá)基本交換器。
F服務(wù)幀是在交換結(jié)構(gòu)中使用的專門與交換器間交換參數(shù)、協(xié)調(diào)控制所用的幀結(jié)構(gòu)。
考慮到航天上使用的光纖總線終端數(shù)目不多且確定。在交換結(jié)構(gòu)組建中,預(yù)先指定基本交換器及基本交換連接,省去了光纖總線上基本交換器以及基本交換連接的產(chǎn)生過程。在交換結(jié)構(gòu)組建時以基本交換器為中心,依靠基本交換連接,發(fā)送以及轉(zhuǎn)發(fā)包含相關(guān)信息的F服務(wù)幀來完成交換結(jié)構(gòu)的初始化。
1.4 交換結(jié)構(gòu)的轉(zhuǎn)發(fā)機(jī)制
交換結(jié)構(gòu)在初始化完成后即可進(jìn)行節(jié)點(diǎn)終端間的消息幀轉(zhuǎn)發(fā)。消息幀在交換器之間的轉(zhuǎn)發(fā),將全部通過基本交換連接來完成,具體過程如下:當(dāng)一個交換器在收到消息幀,并驗(yàn)證無錯誤時,將在它所有的F端口里搜尋有無ID地址與目的地址對應(yīng)的端口。若有,則將消息幀從此端口發(fā)送出去;反之,且交換器有其它具有基本交換連接的(E)端口,則將消息幀通過此基本交換連接轉(zhuǎn)發(fā)給其它交換器。與該交換器相連的其它內(nèi)部交換連接作為交換鏈路故障后的備用連接,在交換結(jié)構(gòu)正常工作時不參與數(shù)據(jù)轉(zhuǎn)發(fā)。
2.1 硬件設(shè)計(jì)
交換器的硬件原理如圖4所示,主要采用AVAGO的SFP光電模塊AFBR-57R5APZ,TI的串并SERDES芯片(串并轉(zhuǎn)換芯片)TLK3132以及ALTERA的FPGA芯片EP2S60,DSP芯片TMS320-C6747組成。光電模塊實(shí)現(xiàn)光電轉(zhuǎn)換及光通信功能。文中光電模塊采用850nm波長的短波,連接2條LC接口多模光纖,可以實(shí)現(xiàn)全雙工的數(shù)據(jù)收發(fā)并且單路數(shù)據(jù)吞吐量高達(dá)1G速率。
圖4 硬件設(shè)計(jì)框架圖
圖5 交換器端口初始化流程
SERDES芯片的串行接口端與光電模塊相連,接口采用CML電平,以106.25MHz的時鐘頻率進(jìn)行數(shù)據(jù)收發(fā)。SERDES芯片的并行接口通過8位并行數(shù)據(jù)線、1位控制線和1位時鐘線與FPGA相連,發(fā)送和接收并行數(shù)據(jù)。SERDES芯片在進(jìn)行串并/并串轉(zhuǎn)換發(fā)送數(shù)據(jù)時,同時截獲8B10B編碼數(shù)據(jù)流的數(shù)據(jù)起始標(biāo)志K28.5逗號[5],以轉(zhuǎn)換得到正確的并行數(shù)據(jù)。FPGA與SERDES芯片的并行接口以及配置接口相連接,其既有配置SERDES芯片的功能,又有進(jìn)行光纖通道高層協(xié)議的功能,發(fā)送與接收并行的光纖通道有效幀。FPGA是實(shí)現(xiàn)交換器功能的主要部件。
圖6 交換結(jié)構(gòu)初始化流程
DSP與FPGA相連,方便與上位機(jī)的連接以及對整個交換器的調(diào)試與監(jiān)控。同時,為方便進(jìn)一步調(diào)試,DSP可作為終端節(jié)點(diǎn),并可將一些交換器的交換端口也設(shè)置成F端口。
2.2 軟件設(shè)計(jì)
交換器的交換功能主要是通過FPGA實(shí)現(xiàn)。文中采用VHDL硬件描述語言來進(jìn)行編程。程序的設(shè)計(jì),主要包括交換器端口的初始化、交換器的初始化及組網(wǎng)、交換結(jié)構(gòu)正常工作時交換器的交換流程。
2.2.1 交換器端口的初始化
交換器端口的初始化過程是按順序建立鏈路連接,完成登錄、交換參數(shù)并進(jìn)行端口配置,并將配置結(jié)果傳給交換控制器。交換器端口的初始化流程如圖5所示。
2.2.2 交換器的初始化及組建交換結(jié)構(gòu)
交換器的初始化主要包括控制器的初始化及交換器端口的初始化。當(dāng)超過一個交換器端口初始化完成后,就標(biāo)志著交換器初始化完成,同時交換器初始化完成的標(biāo)志置1。初始化完成后,交換器進(jìn)行交換結(jié)構(gòu)的組建,圖6顯示了交換器進(jìn)行交換結(jié)構(gòu)組建的流程。
2.2.3 正常工作時交換器的交換流程
在程序的設(shè)計(jì)上,首先假設(shè)交換結(jié)構(gòu)由多個交換器構(gòu)成。因此一個消息幀的交換可能需要多個交換器來實(shí)現(xiàn)。對于交換結(jié)構(gòu)中的每個交換器,其交換流程如圖7所示。
圖7 交換器正常工作流程
對交換結(jié)構(gòu)各部分實(shí)現(xiàn)進(jìn)行描述后,即可使用仿真平臺間接測試。本文的設(shè)計(jì)仿真平臺采用Altera公司的FPGA/CPLD開發(fā)工具Quartus II ,6.0版本。
在仿真中,仿真對象為4個F端口以及4個交換器組成的網(wǎng)絡(luò),驗(yàn)證交換器的設(shè)計(jì)及其組成交換結(jié)構(gòu)的效果。驗(yàn)證交換結(jié)構(gòu)能正常實(shí)現(xiàn)交換功能:
在仿真中, F端口0輸出幀中的一個字節(jié)Transmit_word_F_port0可以被修改。所有F端口中接收的幀中相應(yīng)位置的字節(jié)receive_word_F_port可以被監(jiān)控。且當(dāng)Port_receiver_active中有位是1時,表示對應(yīng)的F端口(0位指示F端口0)正在接收數(shù)據(jù)。
由圖8中可知在17ms附近的clk下降沿,Port_receiver_active的第2位置1。且receive_word_F_port2變?yōu)?x0Bh 。與F端口0在9.19ms時Transmit_word_F_port0發(fā)送的數(shù)據(jù)一樣。表明F端口2收到了F端口0發(fā)送的幀。且F端口0發(fā)送幀的目的地址Destination_port_id_4port0=0x03h,是F端口2的地址。上述表明,交換結(jié)構(gòu)正常工作,實(shí)現(xiàn)了幀交換的功能。
在仿真驗(yàn)證通過之后,將制作實(shí)物交換器進(jìn)行驗(yàn)證。交換器實(shí)物圖如圖9。在實(shí)物驗(yàn)證時,通過DSP的JTAG調(diào)試檢測,發(fā)現(xiàn)從F端口發(fā)送的消息幀能夠通過交換結(jié)構(gòu)發(fā)送給預(yù)定的接收端的F端口,且具有較低的時延。因此,本方案能夠?qū)崿F(xiàn)交換結(jié)構(gòu)的功能,也即實(shí)現(xiàn)光纖總線中的幀交換。同時, 在實(shí)物驗(yàn)證時,發(fā)現(xiàn)了設(shè)計(jì)的交換結(jié)構(gòu)在錯誤處理上的不足。因此,本設(shè)計(jì)在軟件上需要進(jìn)一步完善。
圖8 仿真結(jié)果圖-交換結(jié)構(gòu)初始化完成
圖9 交換器硬件實(shí)物圖
光纖通道作為新一代高速光纖總線,其傳輸速率高、可靠性高、響應(yīng)延遲低、重量體積小等特點(diǎn)非常適合在航天上應(yīng)用,將有效解決目前航天器上總
線帶寬低,線纜網(wǎng)過重等問題。本文針對了其交換式拓?fù)?,結(jié)合航天器上系統(tǒng)的實(shí)際需要,提出了基于交換器的交換結(jié)構(gòu)的軟硬件實(shí)現(xiàn)方案,并通過仿真、實(shí)物檢驗(yàn),初步驗(yàn)證了方案的可行性。
[1] 付建川,周東.光纖通道交換結(jié)構(gòu)及其配置功能研究[J].光通信技術(shù),2008,7:26-28.(Fu Jianchuan,Zhou Dong .Research on Fibre Channel Fabric and Its Configuration[J]. Optical Communication Technology,2008,7:26-28.)
[2] ANSI INCITS. Fibre Channel Fabric Generic Requirements(FC-FG) [S].REV3.5,1996 .
[3] ANSI INCITS. Fibre Channel Switch Fabric(FC-SW) [S].Rev 3.3,1997.
[4] ANSI INCITS. Fibre Channel Physical and Signaling Interface (FC-PH) [S].REV4.3,1994.
[5] TLK3132 Data Manual[Z].Texas Instruments Inc.,2009.
Design of Fiber Optic Bus Exchange Network in Spacecraft
ZHOU Hua XIAO Liangang ZHANG Jisheng CHEN Chang TIAN Feng
Beijing Aerospace Automatic Control Institution, Beijing 100854, China
Withthegradualmaturationofhigh-speedfiberopticbustechnology,fiberopticalbuswithhightransmissionrate,highreliability,lowresponselatencyandlowcableweightbeginstobeusedinthefieldofAerospace.Andfiberchannelisahotspotinthestudyofaerospacefiberopticalbus.Bycombiningwiththespacecraftpracticalrequirements,theexchangetopologyoffiberchannelisstudiedandaschemeoffiberchannelswitchedtopologybasedonFPGAisgivenwhichfocusesonthedesignofthefiberchannelexchangestructureandswitch.ThroughthesimulationofQuartus IIandhardwareverification,thefeasibilityoftheexchangestructureoftheproposedschemeisverifiedinthispaper.
Aerospace;Fiberchannel;Fiber;Switch
2013-03-12
周 華(1989-),男,湖南衡陽人,碩士研究生,主要研究方向?yàn)楹教炜偩€;肖練剛(1973-),男, 四川資中人,博士生導(dǎo)師,研究員,主要研究方向?yàn)閷?dǎo)航、制導(dǎo)與控制;張繼生(1980-),男,河北人,工程師,主要研究方向?yàn)榭刂葡到y(tǒng)綜合;陳 昌(1983-),男,河北人,工程師,主要研究方向?yàn)榭刂葡到y(tǒng)綜合;田 豐(1985-),男,江蘇人,工程師,主要研究方向控制系統(tǒng)綜合。
TN929.11;V448.2
A
1006-3242(2014)03-0071-05