孟 軍,江 濤,周 龍,樊 偉,陳 英
(航空工業(yè)洪都,江西 南昌,330024)
機(jī)載數(shù)據(jù)總線技術(shù)是指機(jī)載設(shè)備、子系統(tǒng)直至模塊之間的互連技術(shù)??偩€技術(shù)本質(zhì)上是一種實(shí)時(shí)網(wǎng)絡(luò)互連技術(shù)??偩€技術(shù)的出現(xiàn)是從系統(tǒng)工程的角度統(tǒng)籌設(shè)計(jì)航空電子系統(tǒng)的結(jié)果,目的是通過數(shù)據(jù)總線將飛機(jī)上各計(jì)算機(jī)構(gòu)成信息網(wǎng)絡(luò),實(shí)現(xiàn)信息的有效傳輸、共享,實(shí)現(xiàn)座艙的綜合顯示和控制,從而形成綜合化的航空電子系統(tǒng)。
機(jī)載數(shù)據(jù)總線作為航空電子系統(tǒng)的“骨架”和“神經(jīng)”,對(duì)航空電子系統(tǒng)起著至關(guān)重要的作用,與航空電子技術(shù)的發(fā)展同步進(jìn)行,相互促進(jìn)。因此,數(shù)據(jù)總線技術(shù)在很大程度上提高了飛機(jī)的性能,而且也擴(kuò)大和提高了飛機(jī)完成任務(wù)的能力[1],是航空電子技術(shù)領(lǐng)域研究的熱點(diǎn)[2-6]。
本文闡述了航空機(jī)載數(shù)據(jù)總線兩種典型代表——1553B總線與AFDX總線,并不是從協(xié)議、技術(shù)特點(diǎn)及應(yīng)用現(xiàn)狀進(jìn)行泛泛的對(duì)比,而是對(duì)兩者的信息傳輸方式、網(wǎng)絡(luò)結(jié)構(gòu)、網(wǎng)絡(luò)設(shè)計(jì)要點(diǎn)進(jìn)行詳細(xì)討論,并從工程實(shí)踐的具體實(shí)施角度對(duì)其進(jìn)行比較,特別是和航電系統(tǒng)的接口控制文件、總線表/配置表的設(shè)計(jì)相結(jié)合,以期對(duì)航電系統(tǒng)頂層設(shè)計(jì)提供一些借鑒和啟示。
1553B總線由美國(guó)自動(dòng)化工程師協(xié)會(huì)于1978年發(fā)布,全稱為飛機(jī)內(nèi)部時(shí)分制指令/響應(yīng)型多路傳輸數(shù)據(jù)總線,我國(guó)與之對(duì)應(yīng)的標(biāo)準(zhǔn)是GJB289A-97。該總線采用冗余的總線型拓?fù)浣Y(jié)構(gòu),傳輸數(shù)據(jù)率為1Mb/s。該總線技術(shù)首先被應(yīng)用于美國(guó)空軍F-16戰(zhàn)斗機(jī),在過去的近40年中,它被成功應(yīng)用于多種戰(zhàn)機(jī)以及導(dǎo)彈控制、艦船控制等領(lǐng)域。1553B總線網(wǎng)絡(luò)的基本結(jié)構(gòu)如圖1所示,由終端和屏蔽雙絞線組成。
圖1中,總線控制器(BC)控制總線操作,且通過數(shù)據(jù)總線與最多30個(gè)遠(yuǎn)程終端(RT)通信。
圖1 1553B總線網(wǎng)絡(luò)典型結(jié)構(gòu)圖
1553B主要特點(diǎn)有:
1)網(wǎng)絡(luò)的消息傳輸由BC的總線表統(tǒng)一控制,嚴(yán)格定義了全網(wǎng)絡(luò)中每條消息的長(zhǎng)度,以及發(fā)送和接收的順序、過程;
2)傳輸方式為半雙工方式,一個(gè)終端不能實(shí)現(xiàn)同時(shí)接收與發(fā)送數(shù)據(jù);
3)總線可掛接32個(gè)終端,各終端之間信息傳輸方式有:BC到RT,RT到BC,RT到RT,廣播方式和系統(tǒng)控制方式;
4)總線上的信息流由3種類型的字消息組成:命令字、數(shù)據(jù)字(最長(zhǎng)為32字節(jié))和狀態(tài)字,并有同步位和校驗(yàn)位;
5)采用雙冗余工作方式,第二條屬于備份,即當(dāng)前路徑不通才啟用第二條;
6)傳輸速率為1 Mb/s;
AFDX(Avionics Full Duplex Switched Ethernet航空電子全雙工交換式以太網(wǎng))是空客公司在商用交換以太網(wǎng)的基礎(chǔ)上建立起來的??湛凸靖鶕?jù)航空電子的需求,在實(shí)時(shí)性、可靠性等方面進(jìn)行了改進(jìn),從而形成了旨在航空子系統(tǒng)之間數(shù)據(jù)交換而定義的一種電子特殊協(xié)議標(biāo)準(zhǔn)(ARINC664 Part7)[6]。AFDX網(wǎng)絡(luò)為星型拓?fù)浣Y(jié)構(gòu),總線網(wǎng)絡(luò)的基本結(jié)構(gòu)如圖2所示,主要由端系統(tǒng)(end-system)、AFDX交換機(jī)(switch)以及傳輸鏈路(邏輯上的虛擬鏈路,消息傳輸?shù)妮d體)組成。
AFDX的主要特點(diǎn)如下:
圖2 AFDX總線網(wǎng)絡(luò)結(jié)構(gòu)圖
1)網(wǎng)絡(luò)的消息傳輸參數(shù)由交換機(jī)中的配置表定義,配置表在啟動(dòng)時(shí)裝入交換機(jī)中,即消息的路由是靜態(tài)分布的,消息的傳輸由各端系統(tǒng)自由獨(dú)立發(fā)起;
2)物理層的連接介質(zhì)是兩個(gè)雙絞線對(duì),一對(duì)用于發(fā)送,一對(duì)用于接收,從而實(shí)現(xiàn)全雙工通信;
3)網(wǎng)絡(luò)連接采用星型拓?fù)浣Y(jié)構(gòu),每個(gè)交換機(jī)最多連接24個(gè)終端節(jié)點(diǎn),交換機(jī)可以級(jí)聯(lián)以實(shí)現(xiàn)更大規(guī)模的網(wǎng)絡(luò);
4)AFDX的虛擬鏈路都有帶寬分配間隔和最大的幀長(zhǎng)度(最多支持1471字節(jié)),傳輸過程中引起的抖動(dòng)有一定的范圍限制,網(wǎng)絡(luò)的最大傳輸延遲都可以得到控制,從而保證了傳輸?shù)拇_定性;
5)AFDX網(wǎng)絡(luò)引入了余度的概念,數(shù)據(jù)幀可以同時(shí)在兩條獨(dú)立的路徑上傳輸,接收端系統(tǒng)只接收先到達(dá)的有效幀,這就顯著提升了系統(tǒng)的可靠性;
6)帶寬高,網(wǎng)絡(luò)傳輸速率可選擇10 Mb/s或者100 Mb/s,缺省為 100 Mb/s。
數(shù)據(jù)總線的功能就是在航電系統(tǒng)的設(shè)備/模塊之間傳輸消息,該功能的完成需要總線的協(xié)議和航電系統(tǒng)各設(shè)備/模塊之間的接口控制文件來共同支撐。協(xié)議只是定義了傳輸?shù)囊?guī)則,根據(jù)功能定義的接口控制文件則包含了傳輸消息內(nèi)容。
1553B總線是一個(gè)指令-響應(yīng)系統(tǒng),在這種系統(tǒng)中,消息傳輸總是在總線控制器的控制下進(jìn)行。設(shè)計(jì)人員根據(jù)接口控制文件的消息內(nèi)容和屬性,編制總線表,總線表里嚴(yán)格定義了每一條消息的長(zhǎng)度、發(fā)送控制、接收處理、數(shù)據(jù)地址等參數(shù)??偩€控制器在運(yùn)行總線表過程中,順序執(zhí)行(時(shí)分制的含義所在,這也決定了其通信方式為半雙工)總線表中的每一條指令,每一條指令完成一次消息的傳輸(如果該條消息需要被傳輸,即BC查詢到RT有傳輸請(qǐng)求或BC發(fā)起傳輸過程)。由于協(xié)議的特點(diǎn),每條消息包含的數(shù)據(jù)最多為32字節(jié),且每個(gè)RT發(fā)送/接收的消息地址最多為30個(gè)。這對(duì)接口控制文件的設(shè)計(jì)提出了較高的要求:1)如果需要傳輸?shù)淖止?jié)長(zhǎng)度超過了32字節(jié),必須將消息拆分,這就會(huì)更多的占用僅有的30個(gè)存儲(chǔ)地址;2)如果該RT需要傳輸?shù)南?shù)量超過了30,則必須采用邏輯消息的設(shè)計(jì)方式,即多個(gè)邏輯消息共用一個(gè)存儲(chǔ)地址,但是必須在功能上確保這些邏輯消息不會(huì)同時(shí)傳輸,否則會(huì)發(fā)生數(shù)據(jù)覆蓋。
AFDX總線在本質(zhì)上是交換式網(wǎng)絡(luò),消息傳輸完全是各端系統(tǒng)發(fā)起,由1.2節(jié)可知,采用了兩對(duì)物理接線,每個(gè)端系統(tǒng)都可以實(shí)現(xiàn)同時(shí)發(fā)送、接收消息,即實(shí)現(xiàn)全雙工通信而不會(huì)碰撞。AFDX接口控制文件設(shè)計(jì)的所有數(shù)據(jù)塊在網(wǎng)絡(luò)中傳輸時(shí),需要進(jìn)行網(wǎng)絡(luò)配置,即產(chǎn)生每一個(gè)數(shù)據(jù)塊的源UDP、源IP、虛擬鏈路(VL)、目的IP、目的UDP。網(wǎng)絡(luò)配置以配置表形式駐留在每一個(gè)AFDX設(shè)備端系統(tǒng)中,交換機(jī)駐留有全網(wǎng)絡(luò)的規(guī)劃通信通路,因此AFDX網(wǎng)絡(luò)采用靜態(tài)路由機(jī)制,以交換配置表為依據(jù),實(shí)現(xiàn)網(wǎng)絡(luò)通信和數(shù)據(jù)轉(zhuǎn)發(fā)。AFDX的這種網(wǎng)絡(luò)特性從很大程度上給接口控制文件的設(shè)計(jì)帶來了便利:1)消息的長(zhǎng)度不再受限制,AFDX數(shù)據(jù)幀一次可以傳輸1471字節(jié),即使超過了,也可以采用分片的方法進(jìn)行多次傳輸;2)單個(gè)端系統(tǒng)傳輸?shù)南€(gè)數(shù)不再受限制(考慮硬件實(shí)際性能,一般不超過128條虛擬鏈路,考慮到每條消息的長(zhǎng)度很大,全部消息的容量完全滿足使用需求)。
通過上面分析可以看出,1553B總線在消息的傳輸控制上十分嚴(yán)格,這樣的優(yōu)點(diǎn)在于網(wǎng)絡(luò)通信具有高穩(wěn)定性,但是其對(duì)接口控制文件的設(shè)計(jì)具有較高的要求,且消息的設(shè)計(jì)不夠靈活。例如,如果一個(gè)RT發(fā)送同樣的內(nèi)容至另外多個(gè)RT,需要在總線表里分別定義指令來分時(shí)傳輸;而AFDX網(wǎng)絡(luò)憑借虛擬鏈路“一源多址”的特點(diǎn)可同時(shí)轉(zhuǎn)發(fā)。
這里的控制器是從航電系統(tǒng)的功能角度來描述的,控制器在航電系統(tǒng)中承擔(dān)大量的飛行任務(wù)執(zhí)行、管理以及全網(wǎng)絡(luò)的數(shù)據(jù)傳輸調(diào)度(如果總線類型為集中控制式,如1553B)等工作,如果控制器一旦失效,則會(huì)對(duì)整個(gè)飛行任務(wù)造成不可估量的損失,所以系統(tǒng)大多會(huì)將關(guān)鍵的控制器設(shè)計(jì)成雙備份,以提高整個(gè)系統(tǒng)的可靠性。
在1553B總線網(wǎng)絡(luò)里,總線控制器(BC)同時(shí)又是航電系統(tǒng)的控制器,這樣整個(gè)總線系統(tǒng)的通信是在航電控制器的指揮下進(jìn)行的,這給總線網(wǎng)絡(luò)帶來潛在的單點(diǎn)故障,一旦總線控制器失效,將造成整個(gè)總線系統(tǒng)的癱瘓。因此,1553B總線一般采用雙機(jī)冗余的設(shè)計(jì)方案,即指定總線上的一個(gè)遠(yuǎn)程終端為備份BC,正常情況下備份BC執(zhí)行RT功能,當(dāng)BC發(fā)生故障時(shí),備份BC重新進(jìn)行初始化并執(zhí)行BC功能。由于BC和備份BC的軟件不同,執(zhí)行的功能不同,需要在系統(tǒng)設(shè)計(jì)中考慮兩者的故障檢測(cè)、狀態(tài)監(jiān)控和數(shù)據(jù)同步等。
AFDX網(wǎng)絡(luò)中由于沒有集中式的通信控制器,因此每個(gè)端系統(tǒng)都可以作為航電系統(tǒng)的控制器,從而控制器余度設(shè)計(jì)可以采用熱備份,即兩臺(tái)控制器任一臺(tái)均可成為主控制器或備份控制器,兩者運(yùn)行的軟件完全一致??紤]熱備份數(shù)據(jù)的備份與恢復(fù)需要,在系統(tǒng)正常運(yùn)行的情況下將數(shù)據(jù)進(jìn)行實(shí)時(shí)保存處理。在網(wǎng)絡(luò)配置時(shí),將其他端系統(tǒng)狀態(tài)數(shù)據(jù)同時(shí)發(fā)送至兩個(gè)控制器,依據(jù)虛擬鏈路的特性,允許從一個(gè)源到多個(gè)目的端系統(tǒng),在AFDX網(wǎng)絡(luò)中完全可以實(shí)現(xiàn)。并且,在控制器切換中,由于不需要重新初始化與數(shù)據(jù)恢復(fù),切換的時(shí)間更短。
為了提高1553B數(shù)據(jù)總線工作可靠性,通常采用雙冗余方式,如圖1所示。實(shí)際使用中,第二條總線處于熱備份狀態(tài),即總線控制器根據(jù)遠(yuǎn)程終端響應(yīng)的狀態(tài)字情況來決定使用哪一個(gè)余度,如果初始化的那條余度一直有狀態(tài)字應(yīng)答,BC會(huì)一直使用該余度來管理消息傳輸;如果該余度狀態(tài)字無應(yīng)答,則BC會(huì)切換至另一條余度來管理消息傳輸。
AFDX網(wǎng)絡(luò)采用另一種意義上的雙余度方式傳輸,如圖2所示,每一個(gè)端系統(tǒng)均有兩個(gè)物理端口,分別連接網(wǎng)絡(luò)中的A和B兩個(gè)余度網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)傳輸。端系統(tǒng)發(fā)送數(shù)據(jù)時(shí),由通信協(xié)議堆棧為每一個(gè)數(shù)據(jù)幀增加一個(gè)序號(hào),序號(hào)連續(xù)遞增。數(shù)據(jù)幀在兩個(gè)余度網(wǎng)絡(luò)上傳輸,在接收端,通信堆棧按照先到原則,將任一網(wǎng)絡(luò)上接收到的帶有有效序號(hào)的第一個(gè)幀傳輸至應(yīng)用程序,接收到的帶有相同序號(hào)的第二個(gè)幀被忽略。這樣,對(duì)于任何的網(wǎng)絡(luò)組件的失效,例如:一段鏈路或一臺(tái)交換機(jī)的失效,數(shù)據(jù)流可以得到保護(hù),從而實(shí)現(xiàn)AFDX網(wǎng)絡(luò)的余度通信。
航電系統(tǒng)是飛機(jī)上發(fā)展更新最為活躍的系統(tǒng),航電系統(tǒng)升級(jí)是維持飛機(jī)先進(jìn)性的重要手段,除此之外,航電系統(tǒng)功能特別是人機(jī)界面的更改是非常頻繁的,因此要求總線網(wǎng)絡(luò)具有良好的擴(kuò)展性。這里的擴(kuò)展性不僅僅是指網(wǎng)絡(luò)節(jié)點(diǎn)的增加,實(shí)際上更多的是關(guān)注消息的增加和更改。
對(duì)于1553B總線來說,最多支持31個(gè)遠(yuǎn)程終端,如果再增加遠(yuǎn)程終端,則需要進(jìn)行二級(jí)總線的設(shè)計(jì),較為復(fù)雜;對(duì)于AFDX總線,每臺(tái)交換機(jī)可以連接24個(gè)端系統(tǒng),通過交換機(jī)的級(jí)聯(lián)可實(shí)現(xiàn)擴(kuò)展,級(jí)聯(lián)只是物理鏈路上的實(shí)現(xiàn),不會(huì)額外增加系統(tǒng)設(shè)計(jì)復(fù)雜度。
至于更加常見的消息改動(dòng),對(duì)于1553B總線來說,需要謹(jǐn)慎設(shè)計(jì)接口控制文件和修改總線表,尤其是考慮不能超過消息長(zhǎng)度的限制和消息個(gè)數(shù)的限制,且總線表修改了以后,整個(gè)網(wǎng)絡(luò)的消息在總線表里會(huì)重新組織排布,需要重新驗(yàn)證整個(gè)航電系統(tǒng)的通信與功能;對(duì)于AFDX總線,則需要將新增的消息路徑參數(shù)定義在配置表里,會(huì)影響參與通信的端系統(tǒng)的配置表和交換機(jī)的配置表,無需重新測(cè)試整個(gè)網(wǎng)絡(luò)的功能。從這個(gè)角度來說,AFDX網(wǎng)絡(luò)的功能擴(kuò)展更加方便。
從實(shí)踐的角度比較結(jié)果來看,AFDX在高帶寬、冗長(zhǎng)傳輸、冗余鏈接、重構(gòu)能力、設(shè)計(jì)的靈活性等方面具有優(yōu)勢(shì),1553B在穩(wěn)定性和可靠性 (從消息的控制角度)方面具有較大的優(yōu)勢(shì),仍可用于分布距離較短的機(jī)載、艦載環(huán)境以及對(duì)數(shù)據(jù)傳輸要求一般的環(huán)境。
因此,在機(jī)載數(shù)據(jù)總線的選擇和使用上,除了考慮其功能、性能指標(biāo)、可靠性、維修性和價(jià)格等因素,更重要的是結(jié)合飛機(jī)自身的任務(wù)特點(diǎn)與信息構(gòu)成,作出適合飛機(jī)的選擇。