劉 蕓, 王紅春, 王 兵
(1.中航工業(yè)西安航空計(jì)算技術(shù)研究所,西安 710068; 2.西安應(yīng)用光學(xué)研究所,西安 710065)
航空電子系統(tǒng)[1]是飛機(jī)的重要組成部分,現(xiàn)代信息技術(shù)、微電子技術(shù)的高速發(fā)展使航空電子設(shè)備的智能化程度提高,規(guī)模擴(kuò)大,各設(shè)備之間的信息共享程度也越來(lái)越高。航電通信網(wǎng)絡(luò)[2]實(shí)現(xiàn)機(jī)載電子設(shè)備之間的互聯(lián)通信功能,需要傳輸各類命令、狀態(tài)數(shù)據(jù)、大量的中間結(jié)果以及各類傳感器實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)。這就對(duì)航電通信技術(shù)提出了更高的要求傳輸帶寬高、網(wǎng)絡(luò)延時(shí)確定、網(wǎng)絡(luò)傳輸可靠。
傳統(tǒng)的航電通信技術(shù)ARINC429和1553B[2],傳輸速率分別為100 kb/s和1 Mb/s,只能實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)或共享總線通信方式,已不能滿足現(xiàn)代航電系統(tǒng)規(guī)模擴(kuò)大以及傳輸信息種類增多后對(duì)互聯(lián)高速、分布的數(shù)據(jù)傳輸要求。商用的總線型以太網(wǎng)[3]采用 CSMA/CD方式共享網(wǎng)絡(luò)帶寬,雖然傳輸速率較高,但難以保證數(shù)據(jù)傳輸?shù)拇_定性,尤其是在網(wǎng)絡(luò)上多個(gè)端口同時(shí)通信時(shí),由于網(wǎng)絡(luò)擁擠,傳輸性能急劇下降。在這種情況下,航空標(biāo)準(zhǔn)化機(jī)構(gòu)——ARINC于2005年定制了AFDX網(wǎng)絡(luò)標(biāo)準(zhǔn)[4](Avionics Full Duplex Switched Ethernet,AFDX),該標(biāo)準(zhǔn)由工業(yè)標(biāo)準(zhǔn)以太網(wǎng)經(jīng)過(guò)適用性改進(jìn)形成,支持10(Mb·s-1)/100(Mb·s-1) 可配置的數(shù)據(jù)傳輸速率,具有更高的確定性、可靠性,能夠滿足現(xiàn)代航電系統(tǒng)對(duì)網(wǎng)絡(luò)傳輸?shù)募夹g(shù)要求。國(guó)際上,Rockwell Collins公司和Thales公司已研制出AFDX網(wǎng)絡(luò)產(chǎn)品,并成功應(yīng)用到 A350、A380、A400M、C-17 以及波音公司的B787等機(jī)型中[5]。目前國(guó)內(nèi)對(duì)AFDX技術(shù)還處于理論研究階段,為開發(fā)具有我國(guó)自主知識(shí)產(chǎn)權(quán)的新一代航電網(wǎng)絡(luò)平臺(tái),就需要深入研究該技術(shù)并開發(fā)相關(guān)軟硬件產(chǎn)品。
本文在深入研究AFDX標(biāo)準(zhǔn)的基礎(chǔ)上,分析AFDX協(xié)議的體系結(jié)構(gòu)及保證數(shù)據(jù)傳輸?shù)摹按_定性”和“可靠性”機(jī)制,提出了一種AFDX端系統(tǒng)協(xié)議軟件的設(shè)計(jì)方法,該方法實(shí)現(xiàn)了AFDX協(xié)議規(guī)定的端系統(tǒng)功能,具有確定性好、穩(wěn)定性高的特點(diǎn),能夠滿足實(shí)際應(yīng)用的技術(shù)需求,并為 AFDX端系統(tǒng)產(chǎn)品的研發(fā)提供基礎(chǔ)。
AFDX網(wǎng)絡(luò)[4]作為新一代航空電子網(wǎng)絡(luò)傳輸技術(shù),具有組網(wǎng)規(guī)模大和靈活性強(qiáng)的特點(diǎn),適用于大中型飛機(jī)的航空電子系統(tǒng)互聯(lián)。
AFDX網(wǎng)絡(luò)結(jié)構(gòu)[4]為可拓展的星型拓?fù)浣Y(jié)構(gòu),由端系統(tǒng)、交換機(jī)和傳輸鏈路組成,每個(gè)交換機(jī)允許連接若干個(gè)端系統(tǒng),多個(gè)交換機(jī)可以互聯(lián)組成更大的網(wǎng)絡(luò)。
AFDX交換機(jī)是AFDX網(wǎng)絡(luò)的核心,通過(guò)基于虛鏈路(Virtual Link,VL)的數(shù)據(jù)轉(zhuǎn)發(fā)機(jī)制,實(shí)現(xiàn)了網(wǎng)絡(luò)中各個(gè)設(shè)備之間的數(shù)據(jù)傳輸。相比于普通交換機(jī),AFDX交換機(jī)具有過(guò)濾功能、故障隔離和靜態(tài)功能等特點(diǎn)。AFDX端系統(tǒng)[4]是 AFDX網(wǎng)絡(luò)的重要組成部分,應(yīng)用于航電系統(tǒng)[6]AFDX網(wǎng)絡(luò)的每個(gè)設(shè)備中,為網(wǎng)絡(luò)中的不同設(shè)備提供與AFDX交換機(jī)連接的統(tǒng)一接口,實(shí)現(xiàn)AFDX網(wǎng)絡(luò)中各設(shè)備之間安全可靠的數(shù)據(jù)傳輸功能,具有全雙工、帶寬高、確定、可靠等特點(diǎn)。AFDX網(wǎng)絡(luò)“確定型網(wǎng)絡(luò)”的特性主要由端系統(tǒng)實(shí)現(xiàn)[4]。圖1所示為AFDX網(wǎng)絡(luò)應(yīng)用的一個(gè)實(shí)例,圖中多個(gè)具有冗余端口的AFDX端系統(tǒng),與兩個(gè)互為冗余的AFDX交換機(jī)連接,構(gòu)成雙余度的AFDX航電網(wǎng)絡(luò),實(shí)現(xiàn)網(wǎng)絡(luò)中多個(gè)航電設(shè)備之間可靠穩(wěn)定的數(shù)據(jù)通信。該冗余機(jī)制可以有效避免單條鏈路失效引起的通信錯(cuò)誤。
圖1 AFDX網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 AFDX network structure
AFDX網(wǎng)絡(luò)的確定性通過(guò)虛鏈路機(jī)制來(lái)實(shí)現(xiàn)[5]。VL是一個(gè)端系統(tǒng)到一個(gè)或多個(gè)端系統(tǒng)的單向邏輯通路,該機(jī)制將一條物理通路劃分為多個(gè)互相隔離的虛擬通路,提供各部件之間具有固定帶寬的邏輯隔離,保證了傳輸過(guò)程中每條虛鏈路的帶寬不受其他試圖占用帶寬的虛鏈路影響?;赩L的帶寬分配和流量控制機(jī)制保證了AFDX網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)拇_定性。
對(duì)每條VL,通過(guò)定義帶寬分配間隔(Bandwidth Alignment Gap,BAG)和最大幀長(zhǎng)度Lmax,為數(shù)據(jù)傳輸分配固定的帶寬(BandWidth=Lmax/GBA)。其中,GBA為同一條VL上相鄰兩幀之間的最小時(shí)間間隔,計(jì)算公式為:GBA=2kms(k=0,1,…,7)。
流量控制機(jī)制保證了數(shù)據(jù)傳輸?shù)拇_定性,該功能由BAG和抖動(dòng)實(shí)現(xiàn),VL的最大抖動(dòng)J服從
式中:Lmax為最大數(shù)據(jù)幀長(zhǎng)度,單位為B;N為傳輸帶寬,單位為b/s。
AFDX網(wǎng)絡(luò)的數(shù)據(jù)傳輸還具有固定的技術(shù)延時(shí),ARINC664 P7標(biāo)準(zhǔn)規(guī)定數(shù)據(jù)幀的傳輸技術(shù)延時(shí)小于150 μs加幀延時(shí),即滿足
式中:Ltec為技術(shù)延時(shí)(單位μs);D為數(shù)據(jù)幀延時(shí)(單位 μs)。
AFDX網(wǎng)絡(luò)的可靠性[3]通過(guò)完整性檢測(cè)、數(shù)據(jù)CRC校驗(yàn)和冗余管理來(lái)實(shí)現(xiàn)。
完整性檢測(cè)功能是保證通信中數(shù)據(jù)幀的順序正確且完整,并丟棄無(wú)效幀,該功能通過(guò)檢測(cè)數(shù)據(jù)幀的序列號(hào)是否連續(xù)來(lái)實(shí)現(xiàn)。發(fā)送端在要發(fā)送的數(shù)據(jù)幀中加入一個(gè)SN號(hào),SN號(hào)以1為步長(zhǎng)逐個(gè)遞增,相鄰兩個(gè)幀的序列號(hào)是連續(xù)的;接收端接收數(shù)據(jù)時(shí),依據(jù)SN號(hào)判斷收到的幀是否有效,并構(gòu)造一個(gè)有序的幀流。完整性檢測(cè)機(jī)制可有效避免數(shù)據(jù)順序混亂而導(dǎo)致的通信錯(cuò)誤。
數(shù)據(jù)CRC校驗(yàn)功能保證數(shù)據(jù)幀內(nèi)容的完整性,對(duì)無(wú)效幀進(jìn)行丟棄處理。該功能計(jì)算整個(gè)幀數(shù)據(jù)的校驗(yàn)和,并與數(shù)據(jù)幀尾部的標(biāo)準(zhǔn)校驗(yàn)和數(shù)據(jù)進(jìn)行比較,就可以檢測(cè)出該數(shù)據(jù)幀內(nèi)容是否正確。
冗余管理是指數(shù)據(jù)以VL為基礎(chǔ)在兩個(gè)獨(dú)立的網(wǎng)絡(luò)中通信,該機(jī)制可以有效抵御AFDX網(wǎng)絡(luò)系統(tǒng)因部分連接線路故障、交換機(jī)單點(diǎn)故障所引起的通信失效,保證了航空電子系統(tǒng)任務(wù)間數(shù)據(jù)通信的安全性和可靠性,其原理如圖2所示。
圖2 AFDX冗余網(wǎng)絡(luò)Fig.2 AFDX redundant network
在數(shù)據(jù)發(fā)送過(guò)程中,冗余管理負(fù)責(zé)將需要發(fā)送的數(shù)據(jù)幀復(fù)制成相同的兩個(gè),發(fā)送到兩個(gè)網(wǎng)絡(luò)中;具有冗余管理功能的目的端系統(tǒng)接收數(shù)據(jù)時(shí)采用“先到先有效”的策略[6],從不同網(wǎng)絡(luò)收到的數(shù)據(jù)幀中選擇一路正確的數(shù)據(jù)提交上層協(xié)議處理。
AFDX端系統(tǒng)的主要功能是為分區(qū)軟件提供安全可靠的數(shù)據(jù)傳輸。ARINC664 P7協(xié)議規(guī)定的端系統(tǒng)通信協(xié)議結(jié)構(gòu)[4]如圖3所示。
AFDX端系統(tǒng)模塊在具體的方案設(shè)計(jì)中,基于分層設(shè)計(jì)的思想,按功能將其劃分為4層:MAC層、IP協(xié)議層、UDP協(xié)議層以及主機(jī)服務(wù)接口層。具體的層次結(jié)構(gòu)及其對(duì)應(yīng)的實(shí)現(xiàn)方法如圖4所示。
MAC 層實(shí)現(xiàn)鏈路虛通道管理[7-8](VL 管理)和冗余管理(RM)功能。VL管理機(jī)制負(fù)責(zé)將每個(gè)MAC對(duì)應(yīng)的物理鏈路劃分為多個(gè)獨(dú)立的邏輯虛鏈路。冗余管理實(shí)現(xiàn)MAC層數(shù)據(jù)幀的冗余處理功能,發(fā)送數(shù)據(jù)時(shí),RM負(fù)責(zé)將數(shù)據(jù)通過(guò)兩個(gè)冗余的端口發(fā)送到兩個(gè)不同的網(wǎng)絡(luò);接收數(shù)據(jù)時(shí),RM從通過(guò)兩個(gè)端口收到的不同網(wǎng)絡(luò)的兩個(gè)數(shù)據(jù)中,選擇一個(gè)正確的數(shù)據(jù)提交給上層處理,該功能由硬件和FPGA邏輯部分實(shí)現(xiàn)。
IP協(xié)議層[3]提供無(wú)連接的數(shù)據(jù)報(bào)傳輸機(jī)制,對(duì)數(shù)據(jù)進(jìn)行“盡力傳遞”,主要實(shí)現(xiàn)數(shù)據(jù)的IP封裝和分片功能,并采用完整性檢測(cè)方法來(lái)保證數(shù)據(jù)的完整性。IP封裝負(fù)責(zé)對(duì)數(shù)據(jù)添加IP首部和尾部組成標(biāo)準(zhǔn)的IP數(shù)據(jù)包;分片功能實(shí)現(xiàn)了數(shù)據(jù)的片劃分、片重組、分片控制功能,使長(zhǎng)度大于AFDX數(shù)據(jù)包最大幀長(zhǎng)1518字節(jié)的IP數(shù)據(jù)包也能進(jìn)行傳輸。
圖3 端系統(tǒng)協(xié)議層次結(jié)構(gòu)Fig.3 End system protocol structure
UDP協(xié)議層[3]建立在IP協(xié)議之上,提供無(wú)連接的 數(shù)據(jù)報(bào)傳輸,實(shí)現(xiàn)用戶數(shù)據(jù)報(bào)文協(xié)議。為用戶提供3類協(xié)議端口采樣、隊(duì)列、SAP,通過(guò)端口機(jī)制保證了具有相同IP地址的不同進(jìn)程的數(shù)據(jù)通信。IP層和UDP層功能由驅(qū)動(dòng)軟件實(shí)現(xiàn)。
圖4 ES通信層次結(jié)構(gòu)Fig.4 ES communication structure
AFDX端系統(tǒng)協(xié)議軟件在設(shè)計(jì)[9]中,遵循模塊化、開放式的思想,基于IP/UDP協(xié)議實(shí)現(xiàn)了ARINC664 P7規(guī)定的3類端口的數(shù)據(jù)傳輸功能[10]。該軟件支持3類端口的AFDX標(biāo)準(zhǔn)數(shù)據(jù)傳輸,并提供應(yīng)用接口,可以不用修改軟件內(nèi)部結(jié)構(gòu),通過(guò)接口方便靈活地控制數(shù)據(jù)傳輸過(guò)程,實(shí)現(xiàn)特定數(shù)據(jù)的發(fā)送和接收功能。3類端口包括采樣、隊(duì)列、SAP端口,其中,AFDX采樣和隊(duì)列端口與ARINC653協(xié)議[11]規(guī)定的采樣和隊(duì)列端口對(duì)應(yīng),用來(lái)進(jìn)行AFDX網(wǎng)絡(luò)內(nèi)的數(shù)據(jù)通信;服務(wù)訪問(wèn)點(diǎn)(Service Access Point,SAP)用來(lái)進(jìn)行TFTP文件傳輸和AFDX與非AFDX系統(tǒng)之間的通信。
AFDX端系統(tǒng)協(xié)議軟件由初始化、加載配置表和數(shù)據(jù)通信這3個(gè)功能模塊來(lái)實(shí)現(xiàn)。
AFDX端系統(tǒng)軟件的初始化模塊實(shí)現(xiàn)硬件資源的打開、配置功能以及寄存器配置和存儲(chǔ)空間的分配功能。
待配置的寄存器包括MAC層和鏈路層芯片,配置方法為:按照相應(yīng)的硬件手冊(cè)在配置寄存器中寫入特定的值,使該芯片能夠正常工作。由于芯片地址已映射到系統(tǒng)內(nèi)存,所有對(duì)寄存器的操作就成了對(duì)內(nèi)存空間的操作。讀寄存器的操作為Data_value=*(unsigned int*)(REG_Base_Addr+offset);寫寄存器的操作為*(unsigned int*)(REG_Base_Addr+offset)=Data_value。
根據(jù)系統(tǒng)應(yīng)用需求,存儲(chǔ)空間分為控制命令區(qū)和數(shù)據(jù)區(qū)??刂泼顓^(qū)的存儲(chǔ)內(nèi)容為各個(gè)控制寄存器的控制參數(shù),如每個(gè) VL的 BAG、SkewMax、Jitter值等;數(shù)據(jù)區(qū)為端口的發(fā)送和接收數(shù)據(jù)緩沖區(qū),用于存儲(chǔ)各個(gè)端口的數(shù)據(jù)內(nèi)容及其標(biāo)志信息。這里按照端系統(tǒng)的配置表,為每個(gè)端口分配特定大小和深度的數(shù)據(jù)緩沖區(qū)。
加載配置表模塊在設(shè)計(jì)中為用戶提供接口,使用戶能夠按需求創(chuàng)建端系統(tǒng)配置表,并將其加載到端系統(tǒng)的控制命令區(qū),從而控制數(shù)據(jù)的發(fā)送和接收過(guò)程。較之于配置表固定的軟件設(shè)計(jì),該方法更加靈活,便于用戶根據(jù)不同的需求,實(shí)現(xiàn)數(shù)據(jù)傳輸功能。
創(chuàng)建端系統(tǒng)配置表的軟件實(shí)現(xiàn)為定義端系統(tǒng)、通信端口、VL的控制參數(shù),并按照實(shí)際需求對(duì)結(jié)構(gòu)體中的各個(gè)成員賦值。對(duì)象的結(jié)構(gòu)體應(yīng)該涵蓋其所有的屬性和參數(shù),例如端口的結(jié)構(gòu)體必須包含端口的IP地址、UDP號(hào)、方向、緩沖區(qū)深度、UDP消息長(zhǎng)度等信息,VL的結(jié)構(gòu)體中包含VL的方向、BAG、Jittter等信息。
加載配置表軟件將配置表的信息寫入端系統(tǒng)特定的控制區(qū)域。通過(guò)循環(huán)查找的方式,將配置表中端系統(tǒng)、端口和VL的全部配置,寫入相應(yīng)的控制命令區(qū)。在數(shù)據(jù)傳輸過(guò)程中,通過(guò)這些實(shí)現(xiàn)定義的配置參數(shù),就能夠控制數(shù)據(jù)的傳輸速率、傳輸VL、傳輸目的。
數(shù)據(jù)通信功能基于UDP/IP通信協(xié)議[4],該軟件模塊實(shí)現(xiàn)以3類端口(采樣、隊(duì)列、SAP)為基礎(chǔ)的數(shù)據(jù)發(fā)送和接收功能,并采用了VL管理、完整性檢測(cè)、數(shù)據(jù)CRC校驗(yàn)方法,有效提高了數(shù)據(jù)傳輸?shù)拇_定性和穩(wěn)定性。
軟件的數(shù)據(jù)發(fā)送單元負(fù)責(zé)將數(shù)據(jù)通過(guò)端口發(fā)送到鏈路層VL緩沖區(qū)。
數(shù)據(jù)發(fā)送的軟件設(shè)計(jì)方法為:主機(jī)發(fā)送數(shù)據(jù)時(shí),UDP層軟件將要發(fā)送的數(shù)據(jù)構(gòu)造成一個(gè)UDP數(shù)據(jù)報(bào),存儲(chǔ)在UDP端口的發(fā)送緩存中,并更新發(fā)送緩沖區(qū)的讀寫指針,該層支持SAP、采樣和隊(duì)列3類端口的數(shù)據(jù)發(fā)送。IP層軟件的功能通過(guò)創(chuàng)建發(fā)送任務(wù)來(lái)實(shí)現(xiàn),該任務(wù)以查詢或中斷的方式運(yùn)行,當(dāng)檢測(cè)到UDP的端口發(fā)送緩沖區(qū)有數(shù)據(jù)要發(fā)送時(shí),將UDP數(shù)據(jù)報(bào)劃分為一個(gè)或多個(gè)IP數(shù)據(jù)報(bào),并添加IP首部校驗(yàn)和、數(shù)據(jù)CRC校驗(yàn)以及SN號(hào),提交給指定的硬件鏈路VL發(fā)送,如果沒(méi)有則不做任何操作。通過(guò)該數(shù)據(jù)發(fā)送機(jī)制,主機(jī)應(yīng)用就可以調(diào)用3類端口的數(shù)據(jù)發(fā)送函數(shù),實(shí)現(xiàn)AFDX端系統(tǒng)的數(shù)據(jù)發(fā)送功能。具體的數(shù)據(jù)發(fā)送過(guò)程如圖5所示。
圖5 AFDX端系統(tǒng)協(xié)議軟件數(shù)據(jù)發(fā)送流程Fig.5 Data transmission flow of AFDX end system protocol software
軟件的數(shù)據(jù)接收單元負(fù)責(zé)將數(shù)據(jù)從鏈路層VL緩沖區(qū)接收到應(yīng)用層,提交給對(duì)應(yīng)的應(yīng)用程序。
數(shù)據(jù)接收的軟件設(shè)計(jì)方法為:IP協(xié)議層軟件負(fù)責(zé)從MAC層接收數(shù)據(jù),通過(guò)創(chuàng)建接收任務(wù)來(lái)實(shí)現(xiàn),該任務(wù)以查詢或中斷的方式運(yùn)行,當(dāng)檢測(cè)到MAC層的VL緩沖區(qū)收到數(shù)據(jù)時(shí),就接收該數(shù)據(jù)并檢查其SN號(hào)、CRC校驗(yàn)和分片標(biāo)志。如果SN號(hào)正確、CRC校驗(yàn)正確且分片標(biāo)志有效,將數(shù)據(jù)報(bào)根據(jù)分片標(biāo)志進(jìn)行重構(gòu)提交給UDP層,即解析出數(shù)據(jù)的IP目的地址和UDP目的地址,并將其拷貝到對(duì)應(yīng)UDP端口的接收緩沖區(qū)中,如果SN號(hào)、CRC校驗(yàn)值或SN號(hào)任何一項(xiàng)有誤,就對(duì)該數(shù)據(jù)做丟棄處理;如果MAC層沒(méi)有收到數(shù)據(jù)則不做任何操作。UDP層軟件負(fù)責(zé)接收UDP數(shù)據(jù)報(bào),通過(guò)比較端口的讀寫指針檢測(cè)端口是否有新數(shù)據(jù),如果有新數(shù)據(jù),就將UDP數(shù)據(jù)報(bào)從端口接收緩沖區(qū)中拷貝出來(lái),提交給上面的應(yīng)用層軟件,并更新UDP端口接收緩沖區(qū)的讀寫指針;否則返回“端口無(wú)新數(shù)據(jù)”標(biāo)志。通過(guò)該接收機(jī)制,主機(jī)應(yīng)用就可以調(diào)用3類端口的數(shù)據(jù)接收函數(shù)來(lái)實(shí)現(xiàn)AFDX端系統(tǒng)的數(shù)據(jù)接收功能。具體的數(shù)據(jù)接收過(guò)程如圖6所示。
圖6 AFDX端系統(tǒng)協(xié)議軟件數(shù)據(jù)接收流程Fig.6 Data reception flow of AFDX end system protocol software
AFDX端系統(tǒng)協(xié)議軟件的測(cè)試工作以ARINC664 P7協(xié)議為基礎(chǔ),基于國(guó)際權(quán)威機(jī)構(gòu)德國(guó)AIM公司的端系統(tǒng)測(cè)試平臺(tái)進(jìn)行,該端系統(tǒng)協(xié)議軟件通過(guò)了其全部測(cè)試項(xiàng)。這證明該軟件實(shí)現(xiàn)了ARINC664 P7協(xié)議規(guī)定的端系統(tǒng)功能,具有良好的確定性和可靠性,滿足航電系統(tǒng)實(shí)際應(yīng)用的技術(shù)需求。
ARINC664 P7協(xié)議嚴(yán)格規(guī)定了AFDX端系統(tǒng)的數(shù)據(jù)傳輸技術(shù)延時(shí)范圍。
端系統(tǒng)技術(shù)延時(shí)測(cè)試方法為:通過(guò)應(yīng)用層構(gòu)造測(cè)試用例,連續(xù)發(fā)送和接收不同長(zhǎng)度(1518 B、1000 B、500 B、64 B)、不同個(gè)數(shù)(10、50、500)的數(shù)據(jù)幀序列,多次測(cè)試并觀察測(cè)試結(jié)果,將第 2、8、20、100、200、400 幀的傳輸延時(shí)記錄于表1中。測(cè)試結(jié)果的最大值和最小值均滿足理論要求,表明數(shù)據(jù)幀傳輸延時(shí)的實(shí)際值小于式(2)規(guī)定的理論值,該端系統(tǒng)協(xié)議軟件滿足協(xié)議規(guī)定的傳輸技術(shù)延時(shí)要求。
表1 AFDX端系統(tǒng)數(shù)據(jù)傳輸技術(shù)延時(shí)Table 1 Data transmission technology latency of AFDX end system μs
ARINC664 P7協(xié)議規(guī)定AFDX端系統(tǒng)支持?jǐn)?shù)據(jù)的線速傳輸,即數(shù)據(jù)幀能夠以最小的幀間隔0.96 μs正確傳輸。
測(cè)試方法為:在應(yīng)用層以全速傳輸不同長(zhǎng)度、不同個(gè)數(shù)(N)的幀序列,測(cè)量VL上幀間隔,并記錄幀間隔達(dá)到0.96 μs的數(shù)據(jù)幀個(gè)數(shù)(Nv),計(jì)算該計(jì)數(shù)與整體的比率P。當(dāng)幀序列的個(gè)數(shù)為N時(shí),第1個(gè)幀為起始幀,從第2個(gè)幀開始才能測(cè)量幀間隔,即該序列只有N-1個(gè)幀間隔,即P的計(jì)算式為
多次測(cè)量并記錄測(cè)試結(jié)果,該結(jié)果表明,100%的測(cè)試數(shù)據(jù)幀幀間隔達(dá)到0.96 μs,端系統(tǒng)支持協(xié)議規(guī)定的數(shù)據(jù)線速傳輸功能。
本文介紹了AFDX端系統(tǒng)的整體結(jié)構(gòu),深入分析AFDX“確定性”和“可靠性”的數(shù)據(jù)傳輸機(jī)制,提出了一個(gè)可行的AFDX端系統(tǒng)協(xié)議軟件設(shè)計(jì)方法。該方法模塊化的設(shè)計(jì)思想、分層的體系架構(gòu),以及開放應(yīng)用接口的理念,增加了軟件的易擴(kuò)展性和靈活性。充分的測(cè)試表明,該軟件設(shè)計(jì)方法具有良好的確定性和可靠性,滿足具體應(yīng)用的需求,填補(bǔ)了國(guó)內(nèi)AFDX網(wǎng)絡(luò)技術(shù)的空白,對(duì)我國(guó)研發(fā)具有自主知識(shí)產(chǎn)權(quán)、并適用于現(xiàn)代航電系統(tǒng)的AFDX網(wǎng)絡(luò)平臺(tái)具有重要意義。
[1] 伊恩·莫伊爾.民用航空電子系統(tǒng)[M].范秋麗,譯.北京:航空工業(yè)出版社,2009.
[2] 支超有.機(jī)載數(shù)據(jù)總線技術(shù)及其應(yīng)用[M].北京:國(guó)防工業(yè)出版社,2009.
[3] STEVENS W R.TCP/IP 詳解[M].范建華,譯.北京:機(jī)械工業(yè)出版社,2000.
[4] ARINC664P7.Aircraft data networks,part 7:Avionics Full Duplex switched ethernet(AFDX)network[S].ARINC Airlines Electronic Engineering Committee,2005.
[5] 吳建魯,楊福彪,劉煜,等.AFDX技術(shù)特點(diǎn)及在艦載武器系統(tǒng)中的應(yīng)用分析[J].指揮控制與仿真,2010,32(4):112-115.
[6] 李哲,田澤,張榮華.AFDX網(wǎng)絡(luò)中 SkewMax的研究[J].計(jì)算技術(shù)與發(fā)展,2010,20(6):249-253.
[7] 任向隆,馬捷中,翟正軍.基于FPGA的AFDX端系統(tǒng)協(xié)議棧虛鏈路層的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)測(cè)量與控制,2010,18(1):157-160.
[8] 許燕婷.AFDX端系統(tǒng)協(xié)議棧虛擬鏈路層分析及仿真研究[D].上海:上海交通大學(xué),2011.
[9] KHAZALI L,BOULAIS M,COLE P.AFDX software network stack implementation — Practical lessons learned[C]//Digital avionics systems conference,DASC'09,IEEE/AIAA 28th,2009:1-5.
[10] 陳昕,周擁軍,萬(wàn)劍雄.AFDX端系統(tǒng)關(guān)鍵技術(shù)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2009,35(5):1-3.
[11] ARINC653.Avionics application software standard interface[S].ARINC Airlines Electronic Engineering Committee,2003.