范新明,王 梅,艾 莉,陳亞玲,龐 鵬
(1.航空工業(yè)西安航空計(jì)算技術(shù)研究所,陜西 西安 710068;2.北京計(jì)算機(jī)技術(shù)及應(yīng)用研究所,北京 100854)
飛機(jī)機(jī)電系統(tǒng)是飛機(jī)中執(zhí)行飛行保障功能子系統(tǒng)的總稱(chēng),是保障飛機(jī)各項(xiàng)功能發(fā)揮的必要條件和基礎(chǔ)條件,其可靠性和技術(shù)的先進(jìn)性直接影響著飛機(jī)的整體性能,同時(shí)對(duì)飛機(jī)的安全性產(chǎn)生重要影響[1-7]。遠(yuǎn)程接口單元作為目前飛機(jī)架構(gòu)中機(jī)電系統(tǒng)參數(shù)采集、集中解算和控制輸出的終端,在飛機(jī)中扮演著越來(lái)越重要的角色。不同飛機(jī)對(duì)于遠(yuǎn)程接口單元的需求不同,在一些飛機(jī)架構(gòu)中,僅僅將遠(yuǎn)程接口單元作為數(shù)據(jù)采集和控制輸出的執(zhí)行終端,遠(yuǎn)程接口單元將采集到的數(shù)據(jù)通過(guò)總線傳給飛管計(jì)算機(jī),飛管計(jì)算機(jī)經(jīng)解算處理后,再通過(guò)總線下發(fā)輸出控制指令,遠(yuǎn)程接口單元執(zhí)行相應(yīng)的輸出動(dòng)作。有些飛機(jī)架構(gòu),將遠(yuǎn)程接口單元作為機(jī)電系統(tǒng)的大腦,遠(yuǎn)程接口單元不僅僅完成機(jī)電系統(tǒng)數(shù)據(jù)采集功能,而且機(jī)電系統(tǒng)的數(shù)據(jù)處理、余度表決等功能也在遠(yuǎn)程接口單元中完成,同時(shí)遠(yuǎn)程接口單元還兼顧完成機(jī)電系統(tǒng)的健康管理功能,實(shí)時(shí)監(jiān)測(cè)機(jī)電系統(tǒng)的運(yùn)行狀況。該架構(gòu)下,飛機(jī)對(duì)于遠(yuǎn)程接口單元的計(jì)算性能要求相對(duì)較高,針對(duì)該需求,本文以PowerPC作為處理器,設(shè)計(jì)了一種雙余度遠(yuǎn)程接口單元(簡(jiǎn)稱(chēng)DRIU)。該DRIU采用PowerPC作為處理器,采用國(guó)產(chǎn)天脈2實(shí)時(shí)多任務(wù)分區(qū)操作系統(tǒng),不同的分區(qū)處理不同的任務(wù),各分區(qū)使用端口通信方式進(jìn)行信息交互,共同完成機(jī)電系統(tǒng)的控制和健康管理功能。
DRIU以PowerPC作為處理器,選用FPGA作為IO接口管理單元,處理器采用PCIe總線與FPGA進(jìn)行通訊。PowerPC處理器,主頻800 MHz,配置2 GB的DDR3 SDRAM、256 MB的NOR Flash以及溫控芯片等外設(shè),同時(shí)處理器提供1 000/100/10 MHz以太網(wǎng)、RS232等對(duì)外接口,方便產(chǎn)品調(diào)試。DRIU架構(gòu)見(jiàn)圖1。
圖1 雙余度遠(yuǎn)程接口單元架構(gòu)
CCDL功能主要用于DRIU內(nèi)部雙通道之間的數(shù)據(jù)交互,是余度之間溝通的重要橋梁,由于雙通道位于同一機(jī)箱內(nèi)部,CCDL設(shè)計(jì)應(yīng)盡量滿(mǎn)足簡(jiǎn)單、可靠,且當(dāng)通道故障時(shí)應(yīng)將故障隔離,防止故障蔓延。DRIU采用雙CCDL設(shè)計(jì)和CCDL自動(dòng)轉(zhuǎn)發(fā)技術(shù)以滿(mǎn)足高效和可靠性要求,RS422總線通過(guò)數(shù)字隔離器與對(duì)方通道RS422驅(qū)動(dòng)器進(jìn)行交互并進(jìn)行隔離,SPI總線通過(guò)數(shù)字隔離器實(shí)現(xiàn)雙通道之間的隔離。CCDL的主要功能組成如圖2所示。
圖2 CCDL功能組成
CCDL采用RS422總線和SPI總線兩種總線進(jìn)行實(shí)現(xiàn),RS422總線實(shí)現(xiàn)CPU發(fā)起的CCDL傳輸任務(wù);SPI總線實(shí)現(xiàn)采集數(shù)據(jù)的自動(dòng)轉(zhuǎn)發(fā)。自動(dòng)轉(zhuǎn)發(fā)技術(shù)的實(shí)現(xiàn)使得CPU對(duì)底層數(shù)據(jù)的訪問(wèn)實(shí)現(xiàn)透明化操作,通道內(nèi)FPGA采集到所有數(shù)據(jù)后,按照固定周期將數(shù)據(jù)自動(dòng)發(fā)送到對(duì)方通道,這樣每個(gè)通道的CPU均可以訪問(wèn)到兩個(gè)通道的所有數(shù)據(jù)。由于SPI總線可以實(shí)現(xiàn)10 M到20 M的傳輸速率,根據(jù)現(xiàn)有的接口數(shù)據(jù)量,傳輸周期可以達(dá)到0.5 ms,這樣雙通道數(shù)據(jù)異步度可以保持在0.5 ms,可以滿(mǎn)足系統(tǒng)實(shí)時(shí)性要求。
DRIU軟件層次結(jié)構(gòu)由下到上主要包括系統(tǒng)軟件層、資源管理層、數(shù)據(jù)管理層、數(shù)據(jù)轉(zhuǎn)換層、調(diào)度控制層和應(yīng)用管理軟件六大部分,如圖3所示。
圖3 雙余度遠(yuǎn)程接口單元軟件架構(gòu)
系統(tǒng)支持軟件層需要提供標(biāo)準(zhǔn)硬件驅(qū)動(dòng)軟件,向產(chǎn)品提出標(biāo)準(zhǔn)的硬件接口同時(shí)形成規(guī)范。系統(tǒng)支持軟件層以上由應(yīng)用軟件開(kāi)發(fā)人員進(jìn)行設(shè)計(jì),設(shè)計(jì)原則是底層應(yīng)盡量設(shè)計(jì)為可配置軟件,這樣可以使得開(kāi)發(fā)人員的精力更多集中到更高層的業(yè)務(wù)邏輯中;同時(shí)各層次之間的接口應(yīng)定義清楚,定義原則是由高層決定接口需求。
系統(tǒng)軟件層主要負(fù)責(zé)訪問(wèn)硬件底層交互,資源管理通過(guò)系統(tǒng)軟件實(shí)現(xiàn)與對(duì)計(jì)算機(jī)資源的管理。系統(tǒng)軟件應(yīng)實(shí)現(xiàn)為標(biāo)準(zhǔn)化接口,由上層資源管理模塊根據(jù)需要配置為不同的接口功能。
資源管理層根據(jù)各計(jì)算機(jī)所具有的能力實(shí)現(xiàn)對(duì)不同資源的分類(lèi)管理,主要應(yīng)包括資源初始化、數(shù)據(jù)讀取操作、數(shù)據(jù)寫(xiě)入操作和工作狀態(tài)監(jiān)測(cè)。該部分應(yīng)設(shè)計(jì)為可配置通用模塊,對(duì)于硬件資源的變化部分應(yīng)設(shè)計(jì)為可配置參數(shù),軟件實(shí)現(xiàn)部分通過(guò)可變參數(shù)實(shí)現(xiàn)相應(yīng)功能,這樣根據(jù)不同的資源需求可以通過(guò)配置參數(shù)實(shí)現(xiàn)快速開(kāi)發(fā)應(yīng)用。
數(shù)據(jù)管理層分為四大類(lèi)數(shù)據(jù):總線數(shù)據(jù)、接口數(shù)據(jù)、余度數(shù)據(jù)和故障數(shù)據(jù)。總線數(shù)據(jù)(HB6096總線數(shù)據(jù)、1394B總線數(shù)據(jù)、CCDL數(shù)據(jù))需根據(jù)總線通訊協(xié)議定義相關(guān)數(shù)據(jù)結(jié)構(gòu),調(diào)用資源管理數(shù)據(jù)讀取操作獲取輸入數(shù)據(jù),同時(shí)根據(jù)數(shù)據(jù)管理中各數(shù)據(jù)以及應(yīng)用管理的解算數(shù)據(jù)進(jìn)行數(shù)據(jù)組包,調(diào)用資源管理數(shù)據(jù)寫(xiě)操作輸出數(shù)據(jù);接口數(shù)據(jù)(離散量數(shù)據(jù)和模擬量數(shù)據(jù))需根據(jù)接口資源定義相應(yīng)數(shù)據(jù)結(jié)構(gòu),該部分功能應(yīng)調(diào)用資源管理接口實(shí)現(xiàn)數(shù)據(jù)采集、接口數(shù)據(jù)解析(針對(duì)輸入數(shù)據(jù))和組包(針對(duì)輸出數(shù)據(jù))、數(shù)據(jù)的濾波、調(diào)用資源管理進(jìn)行數(shù)據(jù)輸出等;該部分中數(shù)據(jù)濾波模塊應(yīng)設(shè)計(jì)成通用模塊,建立索引號(hào)和配置表,對(duì)需要濾波的信號(hào)在配置表中修改濾波參數(shù)即可實(shí)現(xiàn)快速應(yīng)用。余度數(shù)據(jù)主要實(shí)現(xiàn)對(duì)雙余度輸入數(shù)據(jù)和輸出數(shù)據(jù)的余度管理功能,需根據(jù)系統(tǒng)需求定義雙余度輸入輸出信號(hào),通過(guò)調(diào)用接口數(shù)據(jù)和CCDL數(shù)據(jù)實(shí)現(xiàn)對(duì)余度數(shù)據(jù)的比較并將比較數(shù)據(jù)供上層應(yīng)用使用;該部分應(yīng)將比較模塊設(shè)計(jì)成通用模塊,主要包括離散量輸入比較模塊、模擬量輸入比較模塊和離散量輸出比較模塊三大部分,建立余度信號(hào)索引號(hào)和配置表,將需要變化的部分設(shè)置為可配置參數(shù),代碼實(shí)現(xiàn)重復(fù)利用,以實(shí)現(xiàn)快速開(kāi)發(fā)。故障數(shù)據(jù)主要實(shí)現(xiàn)對(duì)資源故障和應(yīng)用故障進(jìn)行管理,并根據(jù)這些數(shù)據(jù)實(shí)現(xiàn)系統(tǒng)重構(gòu)功能。故障數(shù)據(jù)需向應(yīng)用管理提供相應(yīng)標(biāo)準(zhǔn)接口(主要是MFL、PFL、語(yǔ)音告警等)設(shè)置相應(yīng)故障,同時(shí)可以獲取資源管理中的故障信息。
數(shù)據(jù)轉(zhuǎn)換主要實(shí)現(xiàn)應(yīng)用層數(shù)據(jù)和數(shù)據(jù)管理層數(shù)據(jù)的相互轉(zhuǎn)換功能。
調(diào)度控制層主要實(shí)現(xiàn)對(duì)任務(wù)的調(diào)度運(yùn)行功能,實(shí)現(xiàn)對(duì)軟件各模塊的運(yùn)行控制。
應(yīng)用管理主要實(shí)現(xiàn)各分系統(tǒng)應(yīng)用邏輯、控制率的解算功能以及各分系統(tǒng)的健康管理功能,通過(guò)數(shù)據(jù)管理獲取輸入數(shù)據(jù),解算完成后調(diào)用數(shù)據(jù)管理相應(yīng)接口實(shí)現(xiàn)對(duì)數(shù)據(jù)的輸出功能。
本文設(shè)計(jì)了一種基于PowerPC的雙余度遠(yuǎn)程接口單元,該遠(yuǎn)程接口單元計(jì)算性能強(qiáng),工作穩(wěn)定可靠,不僅能夠完成機(jī)電系統(tǒng)的數(shù)據(jù)采集、解算、處理以及控制輸出功能,同時(shí)作為機(jī)電系統(tǒng)健康管理功能的控制中心,可以實(shí)時(shí)對(duì)機(jī)電系統(tǒng)的運(yùn)行狀況進(jìn)行健康監(jiān)測(cè),具備一定的工程實(shí)用價(jià)值。