張旭洲,車炯暉,李 林
(中國航空工業(yè)集團(tuán)公司西安航空計(jì)算技術(shù)研究所,陜西 西安 710065)
隨著航空電子產(chǎn)業(yè)的飛速發(fā)展,例如全程自動(dòng)駕駛儀、綜合模塊化航電系統(tǒng)、人工模擬自然燈光等這些信息化產(chǎn)品已成為現(xiàn)代飛機(jī)的標(biāo)準(zhǔn)配置,可以說解開一架現(xiàn)代飛機(jī)的蒙皮,就會(huì)發(fā)現(xiàn)下面分布著密密麻麻的電線和各種電子部件[1]。隨之而來的是航空電子產(chǎn)品的復(fù)雜度和綜合化程度的不斷提高,向著體積小、功耗低、重量輕的方向發(fā)展過程中,航空機(jī)載設(shè)備中FPGA的應(yīng)用領(lǐng)域和規(guī)模逐步擴(kuò)大[2],F(xiàn)PGA幾乎成了機(jī)載設(shè)備必不可少的核心元器件。隨著包含F(xiàn)PGA的機(jī)載設(shè)備的大量使用,發(fā)現(xiàn)了多起在全機(jī)加電的過程中,某機(jī)載設(shè)備中的FPGA邏輯加載失敗的故障現(xiàn)象。
1) 機(jī)載設(shè)備FPGA邏輯加載失敗的表現(xiàn)
FPGA(Field Programmable Gate Array)于1985年由Xilinx創(chuàng)始人之一Ross Freeman發(fā)明[3],發(fā)展至今,F(xiàn)PGA在機(jī)載設(shè)備中得到廣泛應(yīng)用,其地位一般屬于控制電路的核心部件。如果其在啟動(dòng)過程中,邏輯加載失敗,則該機(jī)載設(shè)備將無法正常啟動(dòng),往往給機(jī)務(wù)人員帶來的感覺是該設(shè)備沒有正常啟動(dòng),“設(shè)備不工作”、“輸入信號(hào)采集異?!薄拜敵鲂盘?hào)不能正常受控”等是機(jī)務(wù)人員通常對(duì)該類故障的描述,并會(huì)重點(diǎn)提到“給設(shè)備下電后,再次上電,故障現(xiàn)象消失,設(shè)備工作正?!薄?/p>
2) 機(jī)載設(shè)備FPGA邏輯加載失敗故障的排查
該類故障排查的過程中,往往苦惱于故障僅僅是在很偶然的情況下發(fā)生,并且給設(shè)備下電后,再次上電,故障現(xiàn)象消失,設(shè)備工作正常;更加困難的是,如果將該故障設(shè)備從飛機(jī)上拆下了,在實(shí)驗(yàn)室進(jìn)行測(cè)試,故障并不復(fù)現(xiàn)。
經(jīng)過對(duì)故障進(jìn)行分析,以及對(duì)飛機(jī)現(xiàn)場(chǎng)的工作情況的詳細(xì)了解,注意到一個(gè)較為相關(guān)的描述,該類故障經(jīng)常發(fā)生在氣溫較低的氣候條件下,并且是在清晨第一次加電的過程中。經(jīng)詳細(xì)排查發(fā)現(xiàn),氣溫較低及清晨第一次加電的情況下,供電電源電壓建立的過程更加“緩慢”,機(jī)載直流設(shè)備的供電電源來自機(jī)外供電設(shè)備或機(jī)上直流電源,其啟動(dòng)方式可分為兩種:一種是通過機(jī)外供電設(shè)備啟動(dòng)機(jī)載直流設(shè)備,待機(jī)載直流設(shè)備工作穩(wěn)定后再切換為機(jī)上直流電源供電;也可以是直接用機(jī)上直流電源啟動(dòng)機(jī)載直流設(shè)備,但無論是哪種啟動(dòng)方式,在電源啟動(dòng)的瞬間,其供電電壓建立的過程,直接影響給FPGA供電的二次電源的品質(zhì),當(dāng)FPGA在進(jìn)行邏輯加載的過程中,二次電源不穩(wěn)定,會(huì)導(dǎo)致FPAG邏輯加載失敗。
28VDC供電系統(tǒng)多為飛行控制、應(yīng)急通訊以及數(shù)據(jù)處理等關(guān)鍵用電設(shè)備供電[4],當(dāng)供電電源啟動(dòng)后,28VDC開始爬升,機(jī)載設(shè)備內(nèi)部的二次電源變換電路也隨之開始工作,輸出二次電源(5VDC),當(dāng)28VDC電壓波形上升緩慢或者波動(dòng)劇烈的情況下,5VDC的波形也會(huì)出現(xiàn)較為劇烈的波動(dòng),這種波動(dòng)如果恰巧出現(xiàn)在FPGA邏輯加載的過程中,則會(huì)導(dǎo)致其邏輯加載失敗,如圖1所示。
圖1 28VDC電壓波形上升緩慢或波動(dòng)劇烈的
針對(duì)上述情況,改善二次電源啟動(dòng)波形是一個(gè)解決方法:可考慮在二次電源的輸出電路中增加延時(shí)輸出的功能,“避開”機(jī)上28VDC建立的過程,即在28VDC穩(wěn)定后,再輸出5VDC。
增加了延時(shí)功能之后的二次電源啟動(dòng)波形如圖2所示。
圖2 增加延時(shí)功能后5VDC的波形改善情況
由于該類故障中FPGA邏輯加載失敗后,不能進(jìn)行二次加載,只有通過設(shè)備下電后再次上電實(shí)現(xiàn)邏輯的重新加載,因此可以考慮設(shè)計(jì)邏輯的多次加載功能,從而解決FPGA邏輯一次加載失敗后設(shè)備無法正常工作的故障。
如圖3所示,在原有流程的基礎(chǔ)上增加了使用CPU模塊對(duì)FPGA芯片邏輯是否加載成功的判斷,若FPGA芯片邏輯加載失敗,則由CPU模塊控制其再次進(jìn)行邏輯加載(該過程可反復(fù)執(zhí)行3次),直至FPGA芯片成功加載,產(chǎn)品進(jìn)入正常工作狀態(tài)。通過增加使用CPU模塊監(jiān)控FPGA芯片邏輯加載是否成功,并控制FPGA芯片重新進(jìn)行加載,可有效解決當(dāng)前狀態(tài)的產(chǎn)品因外部28V供電擾動(dòng)導(dǎo)致的FPGA芯片加載失敗,產(chǎn)品啟動(dòng)工作異常的故障現(xiàn)象,增強(qiáng)產(chǎn)品的抗干擾能力。
圖3 FPGA芯片邏輯多次加載策略
圖4中,(a)圖模擬的是設(shè)備在飛機(jī)上正常啟動(dòng)的情況,28VDC及5VDC的波形穩(wěn)定,F(xiàn)PGA邏輯加載成功;(b)圖模擬的是28VDC出現(xiàn)波動(dòng),從而導(dǎo)致5VDC出現(xiàn)波動(dòng),最終導(dǎo)致FPGA邏輯加載失敗;(c)圖模擬的是“FPGA增加邏輯多次加載功能”后,在28VDC出現(xiàn)同樣的波動(dòng)情況下,邏輯加載成功的驗(yàn)證結(jié)果;(d)圖模擬的是“5VDC增加延時(shí)功能”后,在28VDC出現(xiàn)劇烈波動(dòng)情況下,邏輯加載成功的驗(yàn)證結(jié)果。
圖4 解決方案驗(yàn)證效果波形實(shí)測(cè)圖
本文針對(duì)機(jī)載設(shè)備在啟動(dòng)過程中,當(dāng)供電網(wǎng)絡(luò)中存在電壓不穩(wěn)定的情況下,設(shè)備內(nèi)部FPGA芯片邏輯加載失敗的故障,提出了兩種解決方案,即“二次電源電路中增加延時(shí)功能”、“FPGA芯片設(shè)計(jì)邏輯多次加載功能”,經(jīng)過驗(yàn)證,上述兩種方案均能有效解決機(jī)載設(shè)備FPGA芯片邏輯加載失敗的問題。