雷婉星,曹興岡
(航空工業(yè)西安航空計算技術(shù)研究所,陜西 西安 710065)
機載記錄儀工作在飛行狀態(tài),工作環(huán)境復(fù)雜多變,常會出現(xiàn)數(shù)據(jù)失真、數(shù)據(jù)不連續(xù)和數(shù)據(jù)丟失等問題,影響數(shù)據(jù)傳輸?shù)挠行浴?553B總線是專為飛機設(shè)備制定的一種信息傳輸總線,自身傳輸效果強,且具有強大的抗干擾能力,通信靈活且可靠,冗余容錯能力強等眾多優(yōu)點,非常適合應(yīng)用于機載數(shù)據(jù)記錄儀設(shè)計??梢?,實現(xiàn)機載數(shù)據(jù)記錄儀的1553B總線接口設(shè)計,對提升記錄儀準(zhǔn)確性與可靠性具有重要意義。
在記錄儀設(shè)計中,采用模塊化設(shè)計思想。進行1553B總線接口相應(yīng)模塊設(shè)計中,主要將其設(shè)計成一個具有獨立功能的單一模塊,通過自定義形式的總線接口,實現(xiàn)接口模塊與基板之間的有效連接。其中,使用的接插件型號是HJ30J-18TJWP58航空接插件[1]。實際工作中,該系統(tǒng)主要是利用1553B接口模塊接收機載計算機中相應(yīng)信息數(shù)據(jù)后反饋到記錄儀上,之后將相應(yīng)的消息數(shù)據(jù)進行解析,獲得16位的數(shù)據(jù)字,并將該數(shù)據(jù)字向基板發(fā)送,在基板實現(xiàn)相應(yīng)數(shù)據(jù)字接收后,對其他相關(guān)記錄模塊實際工作實現(xiàn)統(tǒng)一化管理。系統(tǒng)結(jié)構(gòu)如圖1所示。
該系統(tǒng)中,總線控制器是機載計算機,1553B總線接口模塊屬于遠程終端。將遠程終端地址和子地址都設(shè)定為1,通過總線控制器發(fā)送BC→RT指令進行1553B總線實際的數(shù)據(jù)傳輸。記錄儀依據(jù)遠程終端中自定義的相應(yīng)控制指令進行信息數(shù)據(jù)的接收。
圖1 系統(tǒng)結(jié)構(gòu)
1553B總線接口模塊最主要的作用是實現(xiàn)機載計算機和記錄儀之間相互通信的連接,能夠依據(jù)1553B總線協(xié)議對信息數(shù)據(jù)進行有效處理,同時將通過解析獲得的相關(guān)數(shù)據(jù)向基板發(fā)送。1553B總線接口模塊結(jié)構(gòu)中,硬件電路包括時鐘管理、電源管理、FPGA配置接口、FPGA控制以及1553B總線接口等模塊。多種模塊組成下,實現(xiàn)了硬件電路的構(gòu)建[2]。
1553B總線接口模塊由電氣接口、1553B耦合變壓器和1553B總線收發(fā)器構(gòu)成,主要功能是將1553B總線中的相應(yīng)數(shù)據(jù)通過總線變壓器實現(xiàn)碼型轉(zhuǎn)換,再將轉(zhuǎn)換后的數(shù)據(jù)傳輸?shù)紽PGA功能模塊。1553B總線相應(yīng)電氣接口為BUSA/BUSB,屬于單通道雙冗余。這種模式實現(xiàn)通信功能的效率高,且具有很強的容錯能力,使用的主要插件是1553B總線專用的CJ450連接器。實現(xiàn)BUSA/BUSB通道和總線控制器相互連接,主要通過變壓器耦合方式實現(xiàn)。對雙冗余通道中1553B相關(guān)消息數(shù)據(jù)實現(xiàn)收發(fā)功能,主要通過收發(fā)器將需要向終端傳輸?shù)臄?shù)據(jù)總線上的雙電平曼徹斯特碼直接轉(zhuǎn)換為單電平曼徹斯特碼,還可以把即將向總線發(fā)送的相應(yīng)單電平曼徹斯特碼向雙電平曼徹斯特碼轉(zhuǎn)換。設(shè)計使用了HI-1573收發(fā)芯片,其中包含兩個相互獨立的收發(fā)模塊,完全能夠滿足設(shè)計需求。
結(jié)合記錄儀實際操作功能的具體要求,此次設(shè)計有效利用FPGA,對總線協(xié)議實現(xiàn)選擇性的處理,即1553B接口模塊僅接收BC-RT類型的相關(guān)命令,系統(tǒng)響應(yīng)后返回BC端狀態(tài)字和數(shù)據(jù)字[3]。這種方法實現(xiàn)了對傳統(tǒng)1553B相應(yīng)協(xié)議芯片的替換,價格低,有效節(jié)約了開發(fā)成本,實現(xiàn)了外圍電路的全面簡化,電路穩(wěn)定性更強,設(shè)計也更具靈活性。
對FPGA相應(yīng)控制模塊進行內(nèi)部設(shè)計,主要是對編碼器、譯碼器、協(xié)議處理以及控制功能進行有效設(shè)計。在總線上實現(xiàn)傳輸?shù)南鄳?yīng)串行數(shù)據(jù)傳輸?shù)阶g碼器后進行有效解碼,解碼出一系列相關(guān)被譯信息。之后,相關(guān)信息會被傳輸?shù)絽f(xié)議處理和控制功能模塊,由其對相應(yīng)信息進行更加準(zhǔn)確的辨別和有效處理,然后結(jié)合信息相應(yīng)情況作出不同回應(yīng)。向編碼器發(fā)送獲得的相應(yīng)數(shù)據(jù)字、狀態(tài)字和字格式信號,最后通過與1553B總線相符合的數(shù)據(jù)格式,將信息數(shù)據(jù)有效傳輸至BC端。
2.2.1 設(shè)計譯碼器
在進行譯碼器的設(shè)計過程中,主要包括對串并轉(zhuǎn)換和奇偶校驗、同步頭檢測和碼型轉(zhuǎn)換三個模塊的設(shè)計。它主要的功能設(shè)計是把1553B總線相應(yīng)收發(fā)器中的串行數(shù)據(jù)在通過譯碼器各個模塊之后,有效提取指令字的格式、16位的并行數(shù)據(jù)、同步頭檢測和奇偶校驗中得到的各種錯誤信息,以此為后續(xù)模塊使用做鋪墊。
2.2.2 設(shè)計控制功能及協(xié)議處理模塊
設(shè)計控制功能及協(xié)議處理模塊的時候,主要對模塊下數(shù)據(jù)整合、協(xié)議處理以及狀態(tài)字寄存器三個模塊進行具體設(shè)計[4]。實現(xiàn)該模塊設(shè)計主要是為了準(zhǔn)確辨認譯碼器發(fā)送的相應(yīng)信息,并對信息加以處理,結(jié)合不同信息具體情況作出相關(guān)回應(yīng),之后實現(xiàn)數(shù)據(jù)字和狀態(tài)字的準(zhǔn)確生成,并將這兩種字向編碼器傳輸與發(fā)送,同時向基板模塊發(fā)送16位的數(shù)據(jù)字。
2.2.3 設(shè)計編碼器
設(shè)計編碼器就是設(shè)計譯碼器相應(yīng)的逆過程。該設(shè)計主要是在協(xié)議處理和控制功能相應(yīng)模塊獲得16位的數(shù)據(jù)字和狀態(tài)字,并在碼型轉(zhuǎn)換、并串轉(zhuǎn)換后獲得曼徹斯特Ⅱ型碼,之后進行奇校驗位和同步頭的相應(yīng)添加,向1553B總線進行數(shù)據(jù)傳輸。采用串行傳輸方式,傳輸速度為1 Mb/s。
除了上述相關(guān)模塊,硬件模塊還有FGPA配置接口、電源管理以及時鐘管理等相關(guān)模塊[5]。設(shè)計電源管理模塊時,主要是綜合考慮不同元器件相應(yīng)供電要求后,把原先為5 V的相應(yīng)輸入電壓進行轉(zhuǎn)換,通過電源轉(zhuǎn)換芯片將相應(yīng)電壓轉(zhuǎn)換成1.5 V和3.3 V的所需電壓值。進行時鐘管理相應(yīng)模塊的設(shè)計,主要是將20 MHz相應(yīng)時鐘提供給FPGA。對FPGA配置接口進行模塊設(shè)計,主要是通過JTAG這種配置方式進行有效配置,其中將EPCS4N選定為配置芯片。
系統(tǒng)測試設(shè)計時,主要通過地面站有效測試記錄儀。具體測試中,將包含設(shè)置1553B通信板卡相應(yīng)的計算機當(dāng)做BC端,之后把0029h自檢命令發(fā)送至記錄儀中的0001h的RT地址,同時向0001h的子地址發(fā)送,通過消息配置得到0821h的命令字。在有效發(fā)送消息命令后,記錄儀會將數(shù)據(jù)字和狀態(tài)字反饋到BC端,獲得0029h的數(shù)據(jù)字和0800h的狀態(tài)字[6]。之后通過科學(xué)計算得出記錄儀實際返回的相應(yīng)狀態(tài)字完全正確,證明記錄儀和BC端能夠正常通信。
對FPGA中相應(yīng)的1553B協(xié)議處理進行正確性驗證,通過QuartusⅡ集成的相應(yīng)軟件觀察和檢測FPGA中的譯碼器、協(xié)議處理和控制功能模塊的實際工作狀態(tài)。通過BC段發(fā)送0821h命令字,觀測相應(yīng)譯碼器的數(shù)據(jù)轉(zhuǎn)譯,譯出數(shù)據(jù)0821h。同時,與之同步的類型信號屬于1,代表命令字是0821h,證明譯碼過程完全正確。
分析觀測協(xié)議處理和控制功能模塊中的主要信號后發(fā)現(xiàn),發(fā)送0821h的命令字和0029的數(shù)據(jù)字后,系統(tǒng)中的協(xié)議處理和控制功能相應(yīng)模塊最先進行0800h的狀態(tài)字回復(fù),之后實現(xiàn)0029h的數(shù)據(jù)字回復(fù),這和BC端收到的相應(yīng)狀態(tài)字和數(shù)據(jù)字一樣,同時狀態(tài)字和數(shù)據(jù)字兩者同步頭類型顯示的分別是1和0,表明設(shè)計模塊完全正確。
多次試驗機載測試后發(fā)現(xiàn),每一次記錄儀都可以對機載計算機中相關(guān)的信息數(shù)據(jù)實現(xiàn)準(zhǔn)確、穩(wěn)定且完整的接收并作出正確響應(yīng),證明設(shè)計的機載數(shù)據(jù)記錄儀的1553B總線接口具有高度有效性和可利用性。
實際中,由于總線通信中包含的技術(shù)較為有限,多是通過USB2.0或者RS232總線接口實現(xiàn)通信,以此實時記錄測試數(shù)據(jù)。該方法雖然操作簡單、成本低且方便可行,但是在實際飛行環(huán)境中經(jīng)常出現(xiàn)數(shù)據(jù)失真、傳輸不穩(wěn)定等問題。因此,本文通過模塊化設(shè)計理念對機載數(shù)據(jù)記錄儀的1553B總線接口實現(xiàn)創(chuàng)新設(shè)計,并通過科學(xué)方法進行測試,得出了該設(shè)計具有高度可操作性與有效性,能夠使數(shù)據(jù)傳輸更加準(zhǔn)確、穩(wěn)定與完整,達到了理想效果。
[1] 張明珠.基于FPGA的CAN、1553B與USB總線的協(xié)議轉(zhuǎn)換模塊的研究與實現(xiàn)[D].長春:吉林大學(xué),2016.
[2] 穆蔚然,靳 鴻,張志偉.基于自定義協(xié)議的機載數(shù)據(jù)記錄儀控制系統(tǒng)設(shè)計[J].自動化與儀表,2018,(2):82.
[3] 楊 寒,范祥輝.一種主備自主切換1553B總線接口模塊設(shè)計與實現(xiàn)[J].信息通信,2016,(5):92-93.
[4] 李 昊,管立瓊,張 瑩.基于HI-6130的1553B總線遠程終端設(shè)計[J].兵工自動化,2016,35(5):29-32.
[5] 陳 偉,蔣范明.基于1553B總線接口的星載機構(gòu)驅(qū)動器設(shè)計[J].電子產(chǎn)品可靠性與環(huán)境試驗,2016,34(5):34-41.
[6] 試設(shè)備的設(shè)計與實現(xiàn) [J]. 電腦知識與技術(shù), 2016, 12(9): 168-170.