陳冬梅,許峰,孫旭朋,施發(fā)健,王群勇,白樺
(1.北京圣濤平試驗(yàn)工程技術(shù)研究院有限責(zé)任公司,北京 100089;2.中國(guó)航空工業(yè)集團(tuán)雷華電子技術(shù)研究所,無(wú)錫 214000)
大氣層內(nèi)大約2.5萬(wàn)米高空以下的空間輻射粒子源主要為大氣中子[1-4]。其中高能中子(通常為大于10 MeV的中子)單個(gè)粒子打擊先進(jìn)半導(dǎo)體集成電路時(shí),會(huì)產(chǎn)生“1”變“0”,或“0”變“1”的現(xiàn)象,從而導(dǎo)致數(shù)據(jù)篡改或指令丟失,這種現(xiàn)象稱為單粒子現(xiàn)象,其后果稱為單粒子效應(yīng)(SEE,Single Event Effect)。大氣層內(nèi)從地面至2.5萬(wàn)米高空范圍內(nèi)工作的電子設(shè)備中的先進(jìn)半導(dǎo)體集成電路,每天日常工作時(shí)就浸泡在大氣中子雨中,時(shí)時(shí)刻刻都有產(chǎn)生單粒子效應(yīng)(SEE)的可能,嚴(yán)重時(shí)會(huì)影響飛機(jī)的安全性、可靠性與維修性。航空電子設(shè)備單粒子效應(yīng)的防控已經(jīng)成為一項(xiàng)國(guó)際技術(shù)難題。航空電子設(shè)備單粒子效應(yīng)防控指標(biāo)要求如何做到不遺漏、不錯(cuò)誤、不沖突,已經(jīng)成為國(guó)際研究的熱點(diǎn)問(wèn)題之一。
2000年前,波音與空客等大型飛機(jī)制造商以及IBM等計(jì)算機(jī)生產(chǎn)商就已經(jīng)認(rèn)識(shí)到單粒子效應(yīng)這一問(wèn)題會(huì)嚴(yán)重影響安全性、可靠性與維修性,制定了相應(yīng)補(bǔ)課措施。2000年之后,半導(dǎo)體新技術(shù)進(jìn)步加速,集成電路更新?lián)Q代迅猛發(fā)展,存儲(chǔ)位從Mbit發(fā)展至Gbit,飛機(jī)機(jī)群總存儲(chǔ)位可能達(dá)到Tbit。這樣,在大氣中子雨中浸泡的存儲(chǔ)位數(shù)量,或“敏感面積”,一下增加了幾個(gè)數(shù)量級(jí),敏感節(jié)點(diǎn)增多。為此,單粒子效應(yīng)的產(chǎn)生來(lái)源增多。
同時(shí),綜合集成模塊航電系統(tǒng)(IMA)中集成的智能化控制指令數(shù)量大幅度增加,先進(jìn)半導(dǎo)體集成電路中流動(dòng)的軟件代碼行數(shù)也大幅度增加,隨著復(fù)雜度的增加,通過(guò)IMA的交叉功能、鏈?zhǔn)絺鬟f后放大的單粒子效應(yīng)影響后果也增多。多重因素的疊加,導(dǎo)致關(guān)鍵設(shè)備在短短幾秒內(nèi)對(duì)多個(gè)錯(cuò)誤的軟件容錯(cuò)糾錯(cuò)能力就明顯力不從心。半導(dǎo)體新技術(shù)帶來(lái)的這一單粒子效應(yīng)難題,國(guó)際上早已察覺(jué)[5-10]。國(guó)際上出現(xiàn)過(guò)多次大氣數(shù)據(jù)慣性參考單元(ADIRU)的故障事故,歸因?yàn)檐浖娜蒎e(cuò)糾錯(cuò)能力,歸因?yàn)檐浖O(shè)計(jì)不當(dāng),或歸因?yàn)槲ㄒ粺o(wú)法排除的故障原因?yàn)閱瘟W有?yīng)[11,12]。本文認(rèn)為,軟件只是設(shè)備故障容錯(cuò)糾錯(cuò)的下半場(chǎng)工作,而其上半場(chǎng)工作,即設(shè)備故障的源頭防控才更為重要。本文探索性地分析了航空電子設(shè)備單粒子效應(yīng)防控歷程中的重要案例,供廣大工程師參考,期望共同探討航空電子設(shè)備單粒子效應(yīng)防控指標(biāo)要求的正確制定方法,以避免指標(biāo)要求的遺漏、錯(cuò)誤與沖突。
2008年10月7日,一架空客A330-303從新加坡飛往澳大利亞佩思的過(guò)程中,在巡航高度大約11 200 m(37 000英尺),飛機(jī)3個(gè)大氣數(shù)據(jù)慣性參考單元(ADIRU)中的1個(gè)開(kāi)始在所有的飛行參數(shù)表中輸出間歇性的不正確的數(shù)值(脈沖),發(fā)往其他飛行系統(tǒng)。2 min后,為響應(yīng)攻角(AOA)數(shù)據(jù)的異常脈沖,飛機(jī)的飛控主計(jì)算機(jī)(FCPC)命令飛機(jī)俯沖。至少,303位乘客中的110位與12位機(jī)組人員中的9位受傷;其中12位重傷,另外39位接受住院治療。
盡管飛控主計(jì)算機(jī)(FCPC)處理攻角(AOA)數(shù)據(jù)的算法通常非常有效,但是,它不能處理ADIRU發(fā)出的攻角(AOA)中相隔1.2 s的多個(gè)異常脈沖。在A330/A340飛機(jī)近2 800萬(wàn)飛行小時(shí)中由于設(shè)計(jì)局限導(dǎo)致俯沖命令僅此一例。飛機(jī)制造商后續(xù)重新設(shè)計(jì)了攻角(AOA)算法以防止同類(lèi)事件再次出現(xiàn)。
每一個(gè)間歇性數(shù)據(jù)脈沖的出現(xiàn),可能是LTN-101 ADIRU的中央處理單元(CPU)模塊將一個(gè)參數(shù)的數(shù)據(jù)值與另一個(gè)參數(shù)的標(biāo)識(shí)混在一起了。該失效模式可能是由一種單個(gè)的少見(jiàn)的內(nèi)部或外部誘發(fā)事件,加上硬件器件對(duì)其敏感而引起。在該單元1.28億飛行小時(shí)工作中發(fā)現(xiàn)僅有3例已知同類(lèi)失效模式。依據(jù)飛機(jī)制造商的要求,ADIRU制造商已經(jīng)修改了LTN-101 ADIRU,提高其對(duì)數(shù)據(jù)傳輸失效的探測(cè)能力。
主要調(diào)查結(jié)果:
2008年10月7日的空中翻轉(zhuǎn)(in-flight upset)是由空客A330/A340飛控主計(jì)算機(jī)(FCPC)的軟件設(shè)計(jì)局限,與一種影響飛機(jī)3個(gè)大氣數(shù)據(jù)慣性參考單元(ADIRU)中的1個(gè)的一種失效模式共同引起的。設(shè)計(jì)局限是指,在一種非常少見(jiàn)的特定場(chǎng)景下,其中1個(gè)ADIRU出現(xiàn)攻角(AOA)多個(gè)異常脈沖,會(huì)導(dǎo)致飛控主計(jì)算機(jī)(FCPC)命令飛機(jī)俯沖。澳大利亞交通安全局(ATSB)經(jīng)過(guò)3年的調(diào)查,2011年12月認(rèn)為以下幾類(lèi)故障原因經(jīng)多方證據(jù)表明是不可能的(“unlikely”)。
1)軟件篡改
2)軟件“bug”
3)硬件故障
4)物理環(huán)境
5)來(lái)自飛機(jī)系統(tǒng)的EMI
6)來(lái)自機(jī)上的EMI
7)來(lái)自外部的EMI
而調(diào)查組認(rèn)為,另一個(gè)潛在的誘發(fā)事件是SEE,來(lái)自于高能大氣中子打擊CPU模塊中的集成電路,SEE對(duì)機(jī)載設(shè)備的風(fēng)險(xiǎn)是存在的。經(jīng)澳大利亞運(yùn)輸安全局(ATSB)調(diào)查小組評(píng)估分析認(rèn)為唯一無(wú)法排除的原因是大氣中子單粒子效應(yīng)(SEE)。該小組調(diào)查溯源分析時(shí)發(fā)現(xiàn),2003年-2008年期間該類(lèi)ADIRU發(fā)生116次大氣中子單粒子效應(yīng)。事故現(xiàn)場(chǎng)圖片如圖1。
圖1 ADIRU案例中的事故現(xiàn)場(chǎng)[12]
ADIRU中的數(shù)據(jù)包的處理工作通常涉及CPU模塊中的幾個(gè)器件,包括CPU芯片,應(yīng)用專(zhuān)用集成電路ASIC,隨機(jī)訪問(wèn)存儲(chǔ)器RAM芯片,CPU通用應(yīng)用RAM芯片等。已經(jīng)知道2002年前的問(wèn)題CPU模塊未采用EDAC設(shè)計(jì)。
當(dāng)飛機(jī)制造商意識(shí)到這個(gè)問(wèn)題后,發(fā)布了飛行人員程序,以處理任何未來(lái)出現(xiàn)的同類(lèi)ADIRU失效模式。該飛機(jī)制造商后續(xù)評(píng)審并提高了飛控主計(jì)算機(jī)(FCPC)算法以處理攻角(AOA)與其他大氣數(shù)據(jù)慣性參考單元(ADIRU)參數(shù)。該調(diào)查幫助制造商們識(shí)別了復(fù)雜安全關(guān)鍵系統(tǒng)的多個(gè)教訓(xùn)與提醒事項(xiàng)。已經(jīng)知道航空電子系統(tǒng)正日益復(fù)雜,需要設(shè)計(jì)工程師與安全分析師開(kāi)展更多研究,改進(jìn)減少設(shè)計(jì)錯(cuò)誤。
美國(guó)Los Alamos是國(guó)際上最權(quán)威的大氣中子單粒子效應(yīng)試驗(yàn)室,2012年2月公開(kāi)發(fā)布“看不見(jiàn)的中子危害”一文[13],以澳大利亞2008年10月7日的事故為例,強(qiáng)調(diào)SEE是唯一無(wú)法排除的原因。2013年巴西航空技術(shù)研究所在國(guó)際核大西洋會(huì)議(INAC2013)[14]也針對(duì)2008年10月7日的事故為例,發(fā)表文章認(rèn)為:?jiǎn)瘟W有?yīng)是最可能的原因。2014年5月澳大利亞政府民航安全機(jī)構(gòu)咨詢通告AC 21-50《軟件與電子硬件部件的批準(zhǔn)》第4章RTCA/DO-254 4.6節(jié)單粒子翻轉(zhuǎn)中要求任何飛行關(guān)鍵的項(xiàng)目(DAL A與B)必須(must)考慮單粒子翻轉(zhuǎn)(SEU)。
國(guó)際上以波音相關(guān)的3個(gè)適航指令(FAA AD 2005-18-51補(bǔ)充規(guī)定、FAA AD 2014-06-04、FAA AD 2012-21-08)為例開(kāi)展了研究[15],提出了需要考慮單粒子效應(yīng)對(duì)指標(biāo)的錯(cuò)誤、遺漏與沖突的問(wèn)題的考慮與分析,以及相應(yīng)軟件的思考。我們需要認(rèn)真思考這些問(wèn)題的內(nèi)在關(guān)系。
國(guó)際上專(zhuān)家研究表明,隨著航空電子系統(tǒng)復(fù)雜性或系統(tǒng)集成度的增加,頂層指標(biāo)要求會(huì)出現(xiàn)遺漏、錯(cuò)誤與沖突。尤其是多個(gè)機(jī)構(gòu)和/或公司必須共同合作開(kāi)發(fā)指標(biāo)要求時(shí)。那么,為什么國(guó)際專(zhuān)家在研討指標(biāo)的遺漏、錯(cuò)誤與沖突時(shí),會(huì)以單粒子效應(yīng)為案例? 國(guó)際專(zhuān)家指出,單粒子效應(yīng)是在新技術(shù)環(huán)境下導(dǎo)致指標(biāo)要求出現(xiàn)遺漏、錯(cuò)誤與沖突的典型實(shí)例,需要回答以下問(wèn)題:
1)您將如何發(fā)現(xiàn)環(huán)境變化的假設(shè)是否仍然有效?硬件對(duì)SEE敏感嗎?對(duì)哪幾種SEE效應(yīng)敏感?系統(tǒng)設(shè)計(jì)處理了全部這些SEE效應(yīng)嗎?評(píng)價(jià)了SEE系統(tǒng)減緩措施的二次效應(yīng)嗎?在設(shè)計(jì)冗余時(shí)其假設(shè)是什么?評(píng)價(jià)了冗余管理措施的二次效應(yīng)嗎?
2)當(dāng)一個(gè)或多個(gè)部件變更時(shí),開(kāi)發(fā)者知道LRU硬件/應(yīng)用軟件/飛機(jī)系統(tǒng)/飛機(jī)兼容性等會(huì)出現(xiàn)的問(wèn)題嗎?
事實(shí)上,單粒子效應(yīng)上述問(wèn)題的出現(xiàn),通常具體表現(xiàn)在硬件與軟件的設(shè)計(jì)開(kāi)發(fā)過(guò)程的前期思考深度與知識(shí)面廣度的不夠。硬件方面,技術(shù)人員對(duì)數(shù)字集成電路領(lǐng)域的認(rèn)知不足,會(huì)導(dǎo)致用例抽樣考慮不足。如果理解更深,則問(wèn)題不會(huì)遺漏至試驗(yàn)時(shí)才被發(fā)現(xiàn)而需要減緩。軟件方面,軟件是基于硬件行為假設(shè)而設(shè)計(jì)編制的。如果硬件并不如期望的假設(shè)而動(dòng)作行為,那么就會(huì)出現(xiàn)源于航空電子硬件(AEH)而體現(xiàn)在軟件容錯(cuò)糾錯(cuò)能力的軟硬件綜合問(wèn)題。而單粒子效應(yīng)的上述問(wèn)題的出現(xiàn),加重了大氣數(shù)據(jù)慣性參考單元(ADIRU)等在幾秒內(nèi)處理多個(gè)錯(cuò)誤數(shù)據(jù)的壓力,從而體現(xiàn)為軟件容錯(cuò)糾錯(cuò)能力明顯力不從心的軟硬件綜合問(wèn)題。
半導(dǎo)體新技術(shù)帶來(lái)的單粒子效應(yīng)難題[16],國(guó)際上早有察覺(jué)[5-10]。Honeywell制造ADIRU、發(fā)動(dòng)機(jī)控制系統(tǒng)。2004年《隨著芯片尺寸縮小,輻射威脅航空電子系統(tǒng)》認(rèn)為[17],大氣中子SEU對(duì)于航空電子系統(tǒng)來(lái)說(shuō)是最可怕(most dire)的,其對(duì)飛機(jī)控制系統(tǒng)的破壞是致命(deadly)的。例如,Honeywell的航空電子系統(tǒng)分包商開(kāi)始采用小尺寸芯片,但是未通知Honeywell的工程師,因?yàn)槿匀粷M足Honeywell的功能形式尺寸等規(guī)范要求。然后,飛行員就開(kāi)始報(bào)告飛行中出現(xiàn)存儲(chǔ)器失效,Honeywell不得不以很大的代價(jià)替換了所有的器件。而微處理器的輻射失效比存儲(chǔ)器的失效更加嚇人(more scary),因?yàn)?,微處理器中有大量?jī)?nèi)部緩存存儲(chǔ)器,這些緩存存儲(chǔ)器是不容易糾錯(cuò)的。而復(fù)雜集成電路一塊芯片上有1 000萬(wàn)門(mén),是不可能充分測(cè)試的。
2010年11月16日,Honeywell專(zhuān)家公開(kāi)了“電子控制與意外加速”的專(zhuān)題研究報(bào)告[18]。在關(guān)注EMI/HIRF的同時(shí),提出SEU必須成為設(shè)計(jì)策略的一部分,是SSA的一部分,須實(shí)現(xiàn)10-8~5×10-10/fh的指標(biāo)要求。實(shí)施策略包括:存儲(chǔ)器冗余、存儲(chǔ)器驗(yàn)證(CRC)、ECU冗余、容錯(cuò)、策略性地存儲(chǔ)關(guān)鍵數(shù)據(jù)(如選用不敏感的器件)等。
基于Honeywell的這一指標(biāo)要求,我們來(lái)對(duì)比分析一下ADIRU的事故案例。澳大利亞2008年的事故表明,飛機(jī)近2 800萬(wàn)飛行小時(shí)中由于設(shè)計(jì)局限導(dǎo)致俯沖命令僅此一例,即故障率為3.57×10-8/fh。其ADIRU 的中央處理單元(CPU)1.28億飛行小時(shí)工作中發(fā)現(xiàn)僅有3例已知同類(lèi)失效模式,即故障率為2.34×10-8/fh。顯然,與上述故障率對(duì)比分析,Honeywell提出的須實(shí)現(xiàn)10-8~5×10-10/fh的指標(biāo)要求具有一定的參考意義。
通過(guò)對(duì)航空電子設(shè)備單粒子效應(yīng)故障率的防控指標(biāo)要求與現(xiàn)實(shí)故障案例的對(duì)比分析,可以逐步避免指標(biāo)制定的內(nèi)涵的遺漏、錯(cuò)誤與沖突。目前,國(guó)際上航空電子設(shè)備單粒子效應(yīng)的頂層指標(biāo)要求、關(guān)鍵電子器件的管理計(jì)劃(ECMP)與選用控制要求、設(shè)備級(jí)試驗(yàn)評(píng)價(jià)要求、系統(tǒng)級(jí)架構(gòu)設(shè)計(jì)保證要求、維修故障記錄與報(bào)告要求、維修數(shù)據(jù)共享要求、可靠性控制委員會(huì)(RCB)對(duì)《可靠性項(xiàng)目手冊(cè)》的執(zhí)行運(yùn)行狀態(tài)數(shù)據(jù)的監(jiān)控與審批要求、局方的授權(quán)放行監(jiān)管要求、以及飛行員的知識(shí)培訓(xùn)與應(yīng)急反應(yīng)要求等基礎(chǔ)數(shù)據(jù)尚待逐步積累,分散且不便公開(kāi),因而,基礎(chǔ)數(shù)據(jù)的對(duì)比分析尚在漸近積累進(jìn)步。全壽命周期航空電子設(shè)備單粒子效應(yīng)指標(biāo)制定如何避免遺漏、錯(cuò)誤與沖突? 還有待國(guó)內(nèi)外科研工作者共享上述全壽命周期的基礎(chǔ)數(shù)據(jù),共同探索前進(jìn)。