查 翔,南建國,羅海英
(1.空軍工程大學(xué) 工程學(xué)院,陜西 西安710038;2.中國人民解放軍94070部隊,陜西西安710014)
在現(xiàn)有的軍用航空電子系統(tǒng)中,大量的設(shè)備終端采用的是MIL-STD-1553總線協(xié)議,這種總線在當(dāng)今航空電子系統(tǒng)中占有重要的地位[1]。由于越來越多的航空電子系統(tǒng)被綜合集成,來自系統(tǒng)內(nèi)外的電磁干擾、靜電放射以及電磁脈沖等對這種電傳輸?shù)目偩€系統(tǒng)的影響會愈加嚴(yán)重。另一方面,隨著軍用I/O數(shù)據(jù)量的增加,航電系統(tǒng)的數(shù)據(jù)傳輸量也因此增大,傳統(tǒng)的1553B總線的1Mb/s的速率已遠(yuǎn)不能滿足要求[2]。光纖通道 (fibre channel,F(xiàn)C)是美國國家標(biāo)準(zhǔn)委員會 (ANSI)制定的一種為適應(yīng)高性能數(shù)據(jù)傳輸需要而設(shè)計的串行傳輸協(xié)議,具有高帶寬、低延遲、低錯位率等特性,已開始廣泛應(yīng)用于航空電子設(shè)備互聯(lián)中。針對航空電子應(yīng)用的需要,產(chǎn)生了專門的FC航空電子環(huán)境 (FC-AE)方向的應(yīng)用研究,例如在以F-35為代表的飛機上開始采用FC作為機載網(wǎng)絡(luò)系統(tǒng)。FC-AE的子集主要關(guān)注FC協(xié)議在航空電子環(huán)境下的應(yīng)用,特別是支持實時控制和響應(yīng),以及高可靠性、容錯性的需要[3]?;?553協(xié)議的上層映射FC-AE-1553屬于FC-AE子集的一種,它的出現(xiàn)解決了1553總線與高速FC拓?fù)渫瑫r并存、相互融合的問題。它利用了FC的諸多技術(shù)優(yōu)勢,又可兼容原有的1553設(shè)備終端,既保留和繼承了原有的硬件設(shè)施,又實現(xiàn)了系統(tǒng)的平滑升級,對航電系統(tǒng)的更新?lián)Q代具有重要的意義[4-5]。本文在研究兩種協(xié)議網(wǎng)絡(luò)之間的結(jié)構(gòu)差異基礎(chǔ)上,從兩種信息單元格式的映射出發(fā),致力于設(shè)計一種實現(xiàn)兩種協(xié)議轉(zhuǎn)換的方案,以適應(yīng)當(dāng)前航電網(wǎng)絡(luò)的發(fā)展要求。
FC-AE-1553是一個命令/響應(yīng)式協(xié)議[6],由于采用光纖通道技術(shù),性能在1553基礎(chǔ)上有了很大擴展,如一個FC-AE-1553網(wǎng)絡(luò)最大可允許終端數(shù)為224,最大可允許傳送字 (32bit)數(shù)為232,可采用FC提供的所有網(wǎng)絡(luò)拓?fù)?,允許數(shù)據(jù)在網(wǎng)絡(luò)和多個網(wǎng)絡(luò)控制器之間同時交叉?zhèn)魉汀M瑫rFC-AE-1553還支持遠(yuǎn)程直接內(nèi)存存?。≧DMA)[7]。
一個典型的FC-AE-1553網(wǎng)絡(luò)主要包括以下集中元素:網(wǎng)絡(luò)終端 (NT)、網(wǎng)絡(luò)控制器 (NC)、FC網(wǎng)絡(luò)自身、FCAE-1553協(xié)議橋和1553B總線等[8]。NT由存在于FC網(wǎng)絡(luò)的子系統(tǒng)或傳感器內(nèi)的FC接口組成,能響應(yīng)NC發(fā)出的命令幀,完成子系統(tǒng)與FC網(wǎng)絡(luò)間的數(shù)據(jù)傳輸。NC負(fù)責(zé)管理所有FC-AE-1553消息在網(wǎng)絡(luò)上的傳輸,這要使用協(xié)議提供的模式代碼來完成。FC-AE-1553協(xié)議橋可實現(xiàn)不同數(shù)據(jù)格式的控制網(wǎng)絡(luò)和和FC網(wǎng)絡(luò)之間的數(shù)據(jù)格式的轉(zhuǎn)換,通過協(xié)議橋FC-AE-1553幀能轉(zhuǎn)換成1553B總線支持的字,1553B的字能轉(zhuǎn)換成 FC-AE-1553幀[9]。
FC-AE-1553定義了兩類信息單元:NC向NT傳輸?shù)亩喾N信息單元和NT向NC或其它NT傳輸?shù)亩喾N信息單元。每一個FC-AE-1553交換都是由NC的一個或一對命令幀發(fā)起的。FC-AE-1553協(xié)議主要是在FC幀載荷區(qū)的前幾個字中增加了控制信息,MIL-STD-1553的命令字和狀態(tài)字被映射到FC-AE-1553的命令幀頭和狀態(tài)幀頭[10]。
(1)狀態(tài)字到狀態(tài)幀的映射:根據(jù)FC-AE-1553狀態(tài)幀的格式,MIL-STD-1553狀態(tài)字直接映射到狀態(tài)幀第6個字的第11位,位12和位11只在協(xié)議橋中的轉(zhuǎn)換過程用到,為連接到橋上的 MIL-STD-1553的RT提供 “No Response by MIL-STD-1553RT”和 “MIL-STD-1553Format error”條件標(biāo)志。若N_Port和NL_Port沒有連接到橋上,那么此兩位不使用,前19位作保留。在傳輸時這19位的值均為0。
(2)命令字到命令幀的映射:FC-AE-1553在每個交換過程開始時由NC發(fā)出單個的命令幀序列,其中每個命令幀均包含F(xiàn)C-AE-1553命令幀頭。FC-AE-1553命令幀頭包含12個字,F(xiàn)C標(biāo)準(zhǔn)幀頭在前6個字,后面緊跟的6個字是FC-AE-1553幀頭的擴展,通常是載荷區(qū)的前6個字。FC-AE-1553命令幀的第5個字可能作為相對偏移參數(shù),可作為計數(shù)器。
(3)數(shù)據(jù)字到數(shù)據(jù)幀的映射:數(shù)據(jù)字的映射最為簡單,因為數(shù)據(jù)幀的幀頭不需要進行擴展,幀頭部分與FC標(biāo)準(zhǔn)幀頭相同。
通過分析FC-AE-1553和 MIL-STD-1553協(xié)議,若消息的通信是在 MIL-STD-1553或者是 FC-AE-1553本網(wǎng)絡(luò)內(nèi),那么就不需要協(xié)議轉(zhuǎn)換;若兩網(wǎng)絡(luò)之間的設(shè)備終端需要通信,則必須要有協(xié)議轉(zhuǎn)換模塊的存在[11]。根據(jù)兩網(wǎng)絡(luò)各自的特點,可以設(shè)計一個同時兼容1553總線控制器BC和FC-AE-1553網(wǎng)絡(luò)NT的通信適配器來實現(xiàn)兩個網(wǎng)絡(luò)間的映射,其實質(zhì)就是創(chuàng)建一個網(wǎng)關(guān),在FC-AE-1553和 MILSTD-1553網(wǎng)絡(luò)間充當(dāng)消息傳遞的中介。
兩種網(wǎng)絡(luò)的橋接方案如圖1所示,它描述了將傳統(tǒng)的1553總線中的設(shè)備終端橋接到FC-AE-1553網(wǎng)絡(luò)的方法。在橋接模塊的左端,1553總線控制器BC將FC-AE-1553命令幀序列轉(zhuǎn)換為 MIL-STD-1553消息片 (命令字或命令字加數(shù)據(jù)字),然后通過1553總線傳遞給RT。RT以 MILSTD-1553狀態(tài)字 (也可能帶數(shù)據(jù))響應(yīng),橋接模塊在右端把狀態(tài)字響應(yīng)轉(zhuǎn)換成FC-AE-1553狀態(tài)幀,并在FC-AE-1553網(wǎng)絡(luò)上傳輸。
圖1 光纖網(wǎng)絡(luò)與1553總線間的橋接
一個FC-AE-1553網(wǎng)絡(luò)中允許存在多個橋,并且每個橋可連接不同的1553總線,但每條1553總線上同一時刻只允許一個橋起作用,即只有一個BC處于活動狀態(tài)[12-13]。為了使MIL-STD-1553的RT能與協(xié)議轉(zhuǎn)換模塊進行通信,NC使用 了 FC-AE-1553擴展幀頭的子地址域(Subaddress),前22位用作協(xié)議橋的子地址,后面的低0-4位用來標(biāo)識 MIL-STD-1553的 RT。MIL-STD-1553的 RT 可以接收NT到RT或RT到RT的消息。FC-AE-1553協(xié)議轉(zhuǎn)換方案的各功能層次如圖2所示。
在圖2中,前置處理模塊負(fù)責(zé)完成 MIL-STD-1553消息總線接口的控制處理,協(xié)議轉(zhuǎn)換模塊負(fù)責(zé)消息片和幀的轉(zhuǎn)換處理,后置處理模塊主要負(fù)責(zé)與FC-AE-1553網(wǎng)絡(luò)間的數(shù)據(jù)交換。根據(jù)各自模塊的功能,可設(shè)計一種協(xié)議轉(zhuǎn)換的方案,實現(xiàn)這種橋接的功能。
圖2 協(xié)議轉(zhuǎn)換方案的各功能層次
根據(jù)對協(xié)議轉(zhuǎn)換方案各功能的分析,若將幀轉(zhuǎn)換為消息字稱作下行,將消息字轉(zhuǎn)換為幀稱作上行,那么可考慮將兩種數(shù)據(jù)格式的轉(zhuǎn)換放到上、下行模塊中實現(xiàn)。此外,在協(xié)議轉(zhuǎn)換模塊與后置處理模塊的幀傳輸過程中還要考慮數(shù)據(jù)出錯的情況,這就需要設(shè)計一個對幀的有效性判定的模塊。另外,協(xié)議轉(zhuǎn)換模塊與前置處理模塊之間卻不需要考慮出錯和超時的問題,因為前置處理模塊的BC協(xié)議處理單元本身就具有差錯處理功能。協(xié)議轉(zhuǎn)換方案的子模塊功能劃分如圖3所示。從圖3中可以看出,這里包含3個子模塊:有效性判定模塊和上、下行處理模塊。
圖3 協(xié)議轉(zhuǎn)換方案的子模塊功能劃分
在NT到NT通信中,有消息交互時端口進入激活狀態(tài),首先是NT1發(fā)送命令幀,然后等待要反饋的狀態(tài)序列。NT2接收到命令幀后,發(fā)送狀態(tài)幀,若沒有傳輸差錯,NT1則收到正確的狀態(tài)序列。該設(shè)計的處理過程略微復(fù)雜,命令幀、數(shù)據(jù)幀和狀態(tài)幀有效性判定的設(shè)計可歸結(jié)為以下過程:
(1)命令幀序列的處理過程:判斷狀態(tài)幀的返回是否超時,若在時間閾值范圍內(nèi) (即不超過ULP_NT_CS_TOV),則進入到處理流程。首先進行8B/10B解碼,確保輸出的有效性,再判斷幀頭 (SOF)是否合法以及CRC校驗,最后將處理后的數(shù)據(jù)存入FIFO中。
(2)狀態(tài)幀的處理過程:首先是端口進入到激活狀態(tài),一旦進入激活狀態(tài),端口就通過IDLE原語保持現(xiàn)有狀態(tài)。然后進入到處理階段,傳輸幀先經(jīng)過8B/10B解碼,若有效則進行輸出。再判斷命令幀的幀頭 (SOF)是否合法,并用CRC校驗,最后將轉(zhuǎn)換后的數(shù)據(jù)存入到異步FIFO中
(3)數(shù)據(jù)幀的處理過程:處理過程與狀態(tài)幀相似,不同之處就是多了數(shù)據(jù)幀的計數(shù)以及幀頭內(nèi)容的不同。接收過程為:判斷數(shù)據(jù)幀開始的時間與狀態(tài)幀結(jié)束時間的時間間隔是否超出時間閾值 (即不超過E_D_TOV)。若不超時則清零數(shù)據(jù)幀計數(shù)器,然后檢驗8B/10B解碼的有效性、FC幀頭和擴展幀頭,以及CRC校驗,最后數(shù)據(jù)幀處理完成,計數(shù)器值加1。接收下一數(shù)據(jù)幀時,再重復(fù)此過程。
在對整個協(xié)議流程的分析后,可以確定整個處理過程分兩個階段:一是端口初始化,建立連接;二是進行數(shù)據(jù)傳輸。
3.3.1 下行模塊的設(shè)計
根據(jù)通信的處理流程,確定NT發(fā)往RT的完整流程(下行),基本的設(shè)計思路是:判斷幀類型→判斷幀有效性→幀頭解碼→擴展幀頭解碼→幀轉(zhuǎn)換為消息→經(jīng)BC發(fā)至RT。設(shè)計處理流程如圖4所示。
3.3.2 上行模塊的設(shè)計
上行模塊的處理過程相對簡單,主要涉及到命令字和狀態(tài)字的映射處理。從命令字與命令幀的映射規(guī)則來看,命令字到命令幀轉(zhuǎn)換的主要工作是各個字段的填充,這是在數(shù)據(jù)區(qū)實現(xiàn)的。命令字轉(zhuǎn)換的設(shè)計步驟為:
(1)模塊初始化,將控制字填充,命令字的T/R位映射到命令字的第2位,其它為0;
(2)模塊填充子地址/模式字 (第7個字),映射命令字的RT地址、RT子地址;
(3)模塊填充數(shù)據(jù)字節(jié)計數(shù)/模式碼字 (第8個字),映射命令字模式碼。
參考狀態(tài)字到狀態(tài)幀的映射關(guān)系,對于NT發(fā)出的狀態(tài)字,如果1553的RT在時間限制內(nèi)無響應(yīng),那么No Response by MIL-STD-1553RT置1,NT不會發(fā)送任何數(shù)據(jù)字,否則置0。如果消息錯誤位為1,則表明接收RDMA、發(fā)送RDMA、T/R*位、子地址、字節(jié)計數(shù)/模式碼域的組合對當(dāng)前交換非法,這是一種存在的情況。Service Request位是可選的,若預(yù)定了NT或相關(guān)子系統(tǒng)的網(wǎng)絡(luò)控制器行為的話,此位設(shè)為1;為0則表示NT沒有實現(xiàn)這些特征,或者是服務(wù)請求不存在。狀態(tài)字的轉(zhuǎn)換主要涉及到相關(guān)的條件判斷以及做出相應(yīng)的位操作[14]。設(shè)計狀態(tài)字的具體轉(zhuǎn)換流程如圖5所示。
在對FC-AE-1553與 MIL-STD-1553協(xié)議轉(zhuǎn)換方案各模
塊的設(shè)計進行描述后,使用開發(fā)平臺間接地測試各模塊的性能。采用Altera公司的FPGA/CPLD開發(fā)工具 QuartusII,版本為6.0。QuartusII軟件完全支持VHDL和Verilog的設(shè)計流程,同時也具備仿真功能,提供第三方仿真工具的接口,可以直接調(diào)用第三方仿真工具[15-16]。測試過程使用verilog編程,用QuartusII進行編譯和仿真。
將測試程序反復(fù)調(diào)試,運行得到有效性判定模塊的仿真結(jié)果,如圖6所示。
圖6 有效性判定模塊仿真結(jié)果
從圖6可以看出,當(dāng)ReqA為高電平時,當(dāng)時鐘上升沿到達(dá)時,會立即收到一個AcKA,此時地址總線AddBus_ProcA上的地址信息將會被寫入到地址總線緩沖器AddBus_RAM中,因此數(shù)據(jù)寫總線DataWriteBus_ProA的信息被存入數(shù)據(jù)寫總線緩存器DataWriteBus_RAM中。由此可知仿真測試結(jié)果符合模塊的設(shè)計流程。類似的上、下行模塊的仿真結(jié)果分別如圖7、圖8所示。
對當(dāng)前航空電子系統(tǒng)的現(xiàn)狀作了分析與研究,針對光纖通道給機載網(wǎng)絡(luò)通信帶來的巨大優(yōu)勢而設(shè)計了FC-AE-1553與MIL-STD-1553兩種協(xié)議轉(zhuǎn)換的方案,以實現(xiàn)現(xiàn)有的1553總線系統(tǒng)的平滑升級。以具體流程圖的形式對各個子模塊的功能和設(shè)計思路給出了具體描述,建立了相關(guān)的模型,并通過相關(guān)的仿真實驗驗證了模塊設(shè)計的有效性和實時性,可以很好的完成協(xié)議橋功能,同時也適合于網(wǎng)絡(luò)間數(shù)據(jù)的傳輸控制,因此對實際軟硬件設(shè)計提供一種有效途徑,也具有一定的通用性。FC-AE-1553的應(yīng)用是當(dāng)前航空電子網(wǎng)絡(luò)的一個發(fā)展趨勢,它可以很好的滿足將來航空電子系統(tǒng)的高性能要求,有著良好的應(yīng)用前景。
[1]XU Yajun,ZHANG Xiaolin,XIONG Huagang.Research of avionics networks based on fibre channel [J].Telemetry and Telecontrol,2006,27 (3):7-9 (in Chinese).[徐亞軍,張曉林,熊華鋼.基于光纖通道的航空電子網(wǎng)絡(luò)研究 [J].遙測遙控,2006,27 (3):7-9.]
[2]YAN Hao,WU Yong,SONG Yanhui.Research of FC-AE-1553Bprotocol based on avionic device system [J].Fire Control and Command Control,2009,34 (3):116-118 (in Chinese).[閏浩,吳勇,宋彥輝.基于FC-AE-1553B通信協(xié)議的網(wǎng)絡(luò)仿真 [J].火力與指揮控制,2009,34 (3):116-118.]
[3]XIONG Huagang,WANG Zhonghua.Advanced integrated avionics technologies[M].Beijing:National Defense Industry Press,2009:180-183 (in Chinese).[熊華鋼,王中華.先進航空電子綜合技術(shù) [M].北京:國防工業(yè)出版社,2009:180-183.]
[4]CAO Suzhi,ZHANG Shancong.Analysis on advanced features of FC-AE-1553 [J].Optical Communication Technology,2010,34 (2):49-51 (in Chinese).[曹素芝,張善從.FCAE-1553高級特性介紹 [J].光通信技術(shù),2010,34 (2):49-51.]
[5]DING Fan,XIONG Huagang,SONG Liru.Modeling and simulation for FC-AE-1553 network [J].Computer Engineering and Applications,2008,44 (31):20-24 (in Chinese).[丁凡,熊華鋼,宋麗茹.FC-AE-1553網(wǎng)絡(luò)的建模仿真研究 [J].計算機工程與應(yīng)用,2008,44 (31):20-24.]
[6]LIU Fei.The application of fibre channel to MIL-STD-1553 based on avionics system networks [J].Aircraft Design,2007,27 (3):74-80 (in Chinese).[劉飛.光纖通道在基于MIL-STD-1553的航空電子系統(tǒng)網(wǎng)絡(luò)中的應(yīng)用 [J].飛機設(shè)計,2007,27 (3):74-80.]
[7]CHEN Zhengjie,LIN Hongjiang,CHEN Zhihao.Development of data transmission technology for military computer in foreign country [J].Ordnance Industry Automation,2010,29 (4):25-29 (in Chinese).[陳正捷,藺宏江,陳志昊.國外軍用計算機數(shù)據(jù)交換技術(shù)的發(fā)展 [J].兵工自動化,2010,29 (4):25-29.]
[8]LI Ying,ZONG Zhulin.FC-AE-1553protocol bridge research and design of controlling program [J].Chinese Journal of Scientific Instrument,2009,30 (10):330-334 (in Chinese).[李穎,宗竹林.FC-AE-1553協(xié)議橋研究與控制程序設(shè)計[J].儀器儀表學(xué)報,2009,30 (10):330-334.]
[9]XU Yajun,ZHANG Xiaolin,XIONG Huagang.Study on reliability of FC fabic in avionic [J].Acta Aeronautica Et Astronautica Sinica,2007,28 (2):402-406 (in Chinese).[徐亞軍,張曉林,熊華鋼.航空電子系統(tǒng)FC交換式網(wǎng)絡(luò)的可靠性研究 [J].航空學(xué)報,2007,28 (2):402-406.]
[10]ZHANG Xue,F(xiàn)AN Xiaoguang,TAN Dongge,et al.Design and implementation of MIL-STD-1553-to-FC bridge [J].Control and Automation,2009,25 (22):31-35 (in Chinese).[張雪,樊曉光,譚東歌,等.FC-AE-1553與 MILSTD-1553橋設(shè)計與實現(xiàn) [J].微計算機信息,2009,25(22):31-35.]
[11]CAO Suzhi,ZHANG Shancong.Compatibility design of fibre channel and MIL-STD-1553Bprotocol[J].Computer Measurement and Control,2010,18 (7):110-113 (in Chinese).[曹素芝,張善從.光纖通道與 MIL-STD-1553B協(xié)議的兼容性設(shè)計 [J].計算機測量與控制,2010,18 (7):110-113.]
[12]LIU Fei.A new generation of avionics networks-fibre channel[J].Aeronautical Engineering,2005(3):19-24 (in Chinese).[劉飛.新一代航空電子系統(tǒng)網(wǎng)絡(luò)-光纖通道 [J].航空工程,2005 (3):19-24.]
[13]ZHANG Jiandong,SHI Yangyang,TIAN Haibao,et al.Applying DSPN (deterministic and stochastic Petri nets)to performance analysis of FC-AE-1553integrated avionics bus system [J].Journal of Northwestern Polytechnical University,2010,28 (3):388-392 (in Chinese).[張建東,時洋洋,田海寶,等.基于Petri網(wǎng)理論的FC-AE-1553性能分析 [J].西北工業(yè)大學(xué)學(xué)報,2010,28 (3):388-392.]
[14]Gaska T D.COTS fibre channel network technology insertion into avionics systems [C].Proceeding of the IEEE National Aerospace and Electronics Conference,1998:120-127.
[15]ZHOU Runjing,SU Liangbi.Detailed design examples of digital system verilog HDL based on QuartusⅡ [M].Beijing:Electronic Industry Press,2010:188-194 (in Chinese).[周潤景,蘇良碧.基于QuartusⅡ的數(shù)字系統(tǒng)Verilog HDL設(shè)計實例詳解[M].北京:電子工業(yè)出版社,2010:188-194.]
[16]CHEN Zhongping,GAO Jinding,GAO Jianfang.FPGA/CPLD design and practice based on QuartusⅡ [M].Beijing:Electronic Industry Press,2010:99-106 (in Chinese).[陳忠平,高金定,高見芳.基于QuartusⅡ的FPGA/CPLD設(shè)計與實踐 [M].北京:電子工業(yè)出版社,2010:99-106.]