杜英梅 童萬烽 趙金華
(黑龍江省軍區(qū) 黑龍江省哈爾濱市 150001)
隨著我國(guó)電子科技的發(fā)展和經(jīng)濟(jì)實(shí)力增強(qiáng),加之擁有大量的科技人才,以及電子、控制、計(jì)算機(jī)技術(shù)的發(fā)展和普及,使得數(shù)字化設(shè)備中的數(shù)控系統(tǒng)成本越來越低,容錯(cuò)技術(shù)融入系統(tǒng)設(shè)計(jì)過程中具有可能。這種方法主要解決數(shù)字化設(shè)備在電磁環(huán)境下不能正常工作的難題,使得信息設(shè)備的成本提高千分之一左右,但卻能夠使得數(shù)字化設(shè)備可靠性從99%提高到99.5%-99.8%。容錯(cuò)技術(shù)是防護(hù)電磁軟破壞的最好方法之一,容錯(cuò)技術(shù)有效防止數(shù)字化設(shè)備在電磁干擾、各種輻射環(huán)境中運(yùn)行出錯(cuò)及失敗,提高系統(tǒng)可靠性。
復(fù)雜電磁環(huán)境對(duì)信息系統(tǒng)也有很大的影響。因?yàn)榻?jīng)濟(jì)生產(chǎn)、生活的過程之中,需要借助于電磁環(huán)境,完善數(shù)據(jù)信息的傳輸。從過往經(jīng)驗(yàn)來看,信息在通過電磁環(huán)境進(jìn)行交互傳播的同時(shí),其自身的穩(wěn)定性也受到電磁環(huán)境的影響,導(dǎo)致穩(wěn)定性、完整性下降。從過往經(jīng)驗(yàn)來看,電磁環(huán)境的影響是一個(gè)長(zhǎng)期性、復(fù)雜性的過程,例如信息在電磁環(huán)境的干擾下,其會(huì)出現(xiàn)信息傳輸中斷、丟失的情況,影響了信息的使用。同時(shí)在使用環(huán)節(jié)數(shù)據(jù)信息出現(xiàn)差錯(cuò)的概率增加,這種情況的出現(xiàn),導(dǎo)致信息失真,影響了信息的實(shí)用性。
如圖1 所示,從電磁信號(hào)對(duì)通信系統(tǒng)相關(guān)設(shè)備的耦合路徑可以其對(duì)于征信信息平臺(tái)的危害極大,影響了正常設(shè)備運(yùn)行的成效。
容錯(cuò)技術(shù)作為一種技術(shù)手段,其能夠在系統(tǒng)出現(xiàn)故障的情況下,系統(tǒng)仍舊可以正常運(yùn)轉(zhuǎn)。容錯(cuò)技術(shù)在信息系統(tǒng)中的應(yīng)用,能夠增強(qiáng)信息系統(tǒng)的運(yùn)行成效與穩(wěn)定性,防范各類突發(fā)事件的發(fā)生,確保各項(xiàng)活動(dòng)的有序進(jìn)行。容錯(cuò)技術(shù)正是用于構(gòu)造一種能夠自動(dòng)排除非致命性故障的系統(tǒng),即容錯(cuò)系統(tǒng)。容錯(cuò)技術(shù)的基礎(chǔ)在于硬件設(shè)備的容錯(cuò)能力,隨著硬件技術(shù)的快速發(fā)展,相關(guān)理論的逐步成熟,硬件容錯(cuò)能力穩(wěn)步提升。軟件作為硬件配合驅(qū)動(dòng)的重要途徑,通過硬件的有效容錯(cuò),保證了突發(fā)狀態(tài)下,硬件組成的有序運(yùn)轉(zhuǎn)。從二十世紀(jì)七十年代開始,軟件容錯(cuò)的作用逐步被重視,作用發(fā)揮日益明顯。例如出現(xiàn)了數(shù)據(jù)備份技術(shù)等相關(guān)技術(shù)手段。在2002 年,我國(guó)成功發(fā)射的神州飛船船載控制計(jì)算機(jī),就是利用容錯(cuò)技術(shù)進(jìn)行設(shè)計(jì)的,它也是我國(guó)容錯(cuò)技術(shù)應(yīng)用的典范。容錯(cuò)技術(shù)從冗余設(shè)計(jì)的角度出發(fā),通過資源交互路徑的適當(dāng)增加,來實(shí)現(xiàn)信息的穩(wěn)定共享。考慮到信息資源的差役,冗余技術(shù)呈現(xiàn)出差異化的特性,形成硬件、軟件冗余處理機(jī)制。具體來看,硬件冗余主要依托硬件,來實(shí)現(xiàn)部分循環(huán),保證容錯(cuò)效能。軟件則主要將不同的軟件進(jìn)行同一功能的使用,通過這種方式,保證軟件能夠適應(yīng)多種場(chǎng)景之下的使用需求。信息冗余是利用在數(shù)據(jù)中外加的一部分信息位來檢測(cè)或糾正信息在運(yùn)算或傳輸中的錯(cuò)誤而達(dá)到容錯(cuò);時(shí)間冗余是通過消耗時(shí)間資源來實(shí)現(xiàn)容錯(cuò),其基本思想是重復(fù)運(yùn)算以檢測(cè)故障。冗余設(shè)計(jì)可以是元器件級(jí)的冗余設(shè)計(jì),也可以是部件級(jí)的、分系統(tǒng)級(jí)的、或系統(tǒng)級(jí)的冗余設(shè)計(jì)。冗余要消耗資源,應(yīng)當(dāng)在可靠性與資源消耗之間進(jìn)行權(quán)衡和折衷。
圖1:通信系統(tǒng)受電磁環(huán)境干擾的耦合路徑
從實(shí)際情況來看,電磁輻射對(duì)于電氣設(shè)備的影響主要表現(xiàn)在4個(gè)方面的內(nèi)容。具體來看,當(dāng)出現(xiàn)電壓擊穿的情況時(shí),設(shè)備中的電磁能被接收設(shè)備逐漸放大,轉(zhuǎn)變?yōu)檩^大的電流,這些較大電流在經(jīng)過高電阻時(shí),局部出現(xiàn)高壓,高壓區(qū)域的出現(xiàn),導(dǎo)致電子元器件回路發(fā)生擊穿的情況。電子元器件的燒毀,主要表現(xiàn)在元器件結(jié)構(gòu)出發(fā)熔斷等永久性損傷,在這種情況下,電子元器件的功能完全喪失,相關(guān)作用難以正常發(fā)揮。同時(shí)在電磁環(huán)境下,大量存在的微波,使得金屬溫度上升,溫度環(huán)境的變化,無疑使得電子設(shè)備的運(yùn)行環(huán)境發(fā)生深刻變化,導(dǎo)致整個(gè)電子元器件性能的下降。盡管現(xiàn)階段技術(shù)人員對(duì)于電子設(shè)備做好了相應(yīng)技術(shù)處理,應(yīng)對(duì)電涌沖擊的影響。但是從實(shí)際情況來看,這種技術(shù)處理方式并不完善,例如部分電流會(huì)沿著縫隙,涌入電子元器件之中,導(dǎo)致敏感元器的性能的喪失。同時(shí),當(dāng)信息系統(tǒng)的功率處于較低水平的過程中,系統(tǒng)損傷較低,但是瞬間干擾的程度仍舊較大,如果沒有采取必要的處理,勢(shì)必造成系統(tǒng)無法正常運(yùn)轉(zhuǎn)。
數(shù)字化設(shè)備的電磁防護(hù)主要是進(jìn)行設(shè)備和設(shè)備使用環(huán)境的屏蔽,積極有效的屏蔽可以最大限度地保護(hù)數(shù)字化設(shè)備免遭電磁干擾的破壞,但只靠屏蔽技術(shù)來防止電磁干擾的破壞是不夠的。在系統(tǒng)設(shè)計(jì)時(shí),就應(yīng)該考慮到復(fù)雜電磁環(huán)境對(duì)數(shù)字化設(shè)備運(yùn)行造成的軟破壞,還要考慮針對(duì)電磁環(huán)境對(duì)數(shù)字化設(shè)備的“瞬時(shí)干擾”造成的運(yùn)行錯(cuò)誤和瞬時(shí)失效而采取的防護(hù)策略。
設(shè)計(jì)一個(gè)容錯(cuò)系統(tǒng),首先要根據(jù)電磁環(huán)境和各種可能的情況分析各種失效模式,然后,采用合理的冗余管理技術(shù),有針對(duì)性的加以預(yù)防和保護(hù),使可靠性等綜合性能指標(biāo)最優(yōu)。
3.2.1 信息系統(tǒng)的雙機(jī)容錯(cuò)體系結(jié)構(gòu)
雙機(jī)容錯(cuò)系統(tǒng)采用的是系統(tǒng)冗余方式,因其構(gòu)造簡(jiǎn)單,容易實(shí)現(xiàn),成本小,對(duì)一般應(yīng)用其可靠性完全可以滿足系統(tǒng)要求。
(1)系統(tǒng)結(jié)構(gòu)。待命儲(chǔ)備雙機(jī)系統(tǒng),因其結(jié)構(gòu)簡(jiǎn)單,是聯(lián)機(jī)系統(tǒng)中用的最多的一種結(jié)構(gòu),一臺(tái)機(jī)器工作,另一臺(tái)機(jī)器處于待命狀態(tài),工作機(jī)故障時(shí)將任務(wù)切換到備用機(jī)上執(zhí)行,從而延長(zhǎng)系統(tǒng)的壽命。待命儲(chǔ)備雙機(jī)系統(tǒng)應(yīng)采用雙機(jī)協(xié)同容錯(cuò)方式,該系統(tǒng)是用兩臺(tái)計(jì)算機(jī)分別獨(dú)立的處理同一任務(wù),處理結(jié)果進(jìn)行比較,如果一致便由主機(jī)輸出。此種結(jié)構(gòu)切換容易,可靠性較高,尤其適用于較難檢測(cè)的偶然性故障。在電磁環(huán)境比較惡劣的環(huán)境下使用這種體系結(jié)構(gòu)是必要的。
(2)故障檢測(cè)和恢復(fù)??焖贉?zhǔn)確檢測(cè)到系統(tǒng)故障是提高系統(tǒng)可用性的關(guān)鍵,容錯(cuò)系統(tǒng)設(shè)計(jì)通常采用以下幾種故障檢測(cè)手段。一是截獲異常。硬件錯(cuò)誤和軟件錯(cuò)誤都可能造成系統(tǒng)異常,例如,在瞬時(shí)故障干擾下而發(fā)生地址、指令等的跳變而造成除零錯(cuò)。利用截獲異常的手段,可以檢測(cè)多數(shù)軟件錯(cuò),也能檢測(cè)一部分硬件錯(cuò)。二是心跳檢測(cè)。主機(jī)通過高速串口向從機(jī)定時(shí)發(fā)送查詢信息或備份數(shù)據(jù),若主機(jī)或從機(jī)在規(guī)定時(shí)間內(nèi)沒有聽到對(duì)方的“心跳”或“響應(yīng)”,則認(rèn)為對(duì)方已發(fā)生嚴(yán)重故障。三是監(jiān)視定時(shí)器(Watchdog)。主機(jī)CPU 一般自帶看門狗電路,通過編程實(shí)現(xiàn)對(duì)系統(tǒng)的監(jiān)測(cè)。四是I/O回路檢測(cè)。I/O 設(shè)備主要包括A/D,D/A,D/D,其中主要對(duì)A/D,D/A 進(jìn)行檢測(cè),將采用I/O 回路自試驗(yàn)方法進(jìn)行檢測(cè),進(jìn)行檢測(cè)時(shí)將對(duì)接口的每一個(gè)通路進(jìn)行檢測(cè),通常結(jié)合信號(hào)采集而實(shí)施。五是CPU 自檢測(cè)。CPU 是控制主機(jī)的心臟,控制著整個(gè)系統(tǒng)的正常工作,其功能正確與否至關(guān)重要。
(3)故障機(jī)的隔離。已查出異常狀態(tài)的主機(jī),可以人工干預(yù),手動(dòng)切換,或由軟件自動(dòng)切換,系統(tǒng)則進(jìn)入單機(jī)工作模式,隔離故障機(jī)可以防止錯(cuò)誤的蔓延。
(4)系統(tǒng)重構(gòu)條件。一是降級(jí)。從宏觀上看,當(dāng)某一臺(tái)控制主機(jī)出現(xiàn)故障,不能正常工作時(shí),信息系統(tǒng)應(yīng)該降級(jí)為單模使用。在具體實(shí)現(xiàn)時(shí),判斷系統(tǒng)降級(jí)的條件是:對(duì)方頻繁地復(fù)位、根據(jù)對(duì)方復(fù)位次數(shù)判斷出對(duì)方已經(jīng)切斷電源、心跳檢測(cè)認(rèn)為對(duì)方不在活著、發(fā)現(xiàn)系統(tǒng)信息總線上長(zhǎng)期空閑、對(duì)方請(qǐng)求降級(jí)。二是升級(jí)。從宏觀上看,當(dāng)某一臺(tái)控制主機(jī)認(rèn)為故障已經(jīng)排除,可以正常工作時(shí),信息系統(tǒng)應(yīng)該升級(jí)為多模使用。三是切換。切換與恢復(fù)過程是系統(tǒng)實(shí)現(xiàn)高可用性的關(guān)鍵步驟,也是系統(tǒng)最后的故障處理手段,只有在主機(jī)出現(xiàn)嚴(yán)重故障時(shí)才使用。
3.2.2 信息系統(tǒng)存儲(chǔ)模塊的容錯(cuò)設(shè)計(jì)
存儲(chǔ)器是一種靠電荷移動(dòng)形成雙穩(wěn)態(tài)的元件,對(duì)空間電磁輻射和電磁干擾比較敏感,容易出現(xiàn)翻轉(zhuǎn)現(xiàn)象,即受電磁干擾后由一個(gè)穩(wěn)態(tài)翻轉(zhuǎn)到另一個(gè)穩(wěn)態(tài)。存儲(chǔ)單元內(nèi)容的變化對(duì)軟件的運(yùn)行非常不利,造成死機(jī)或輸出錯(cuò)誤結(jié)果,必須用技術(shù)手段加以解決。國(guó)內(nèi)外通常采用檢錯(cuò)糾錯(cuò)編碼的策略來應(yīng)對(duì)存儲(chǔ)單元的翻轉(zhuǎn)。
目前,存儲(chǔ)系統(tǒng)包括RAM、ROM、PROM、EEPROM、SSD等。由于電磁干擾對(duì)RAM 的影響遠(yuǎn)比ROM 嚴(yán)重,所以各種常數(shù)、參數(shù)應(yīng)盡量固化于ROM 中,將引導(dǎo)程序與上層軟件交互的一些參數(shù)存放在EEPROM 中,并且在多處存放,可以進(jìn)行三模表決。三摸表決就是三個(gè)模塊同時(shí)執(zhí)行一樣的操作,以多數(shù)相同的輸出作為該表決系統(tǒng)的正確輸出,通常稱為三中取二,是基于“少數(shù)服從多數(shù)”的一種糾錯(cuò)原理,表決系統(tǒng)也稱為一種故障掩蓋系統(tǒng)(Fault Masking)。由于PROM 是只讀存儲(chǔ)器,并具有固化后不能改變的特點(diǎn),它的抗干擾能力特別是抗電磁輻射能力遠(yuǎn)比RAM 強(qiáng)。系統(tǒng)的引導(dǎo)程序部分和固定的常數(shù)部分都固化于PROM 中。引導(dǎo)程序的程序區(qū)、可變數(shù)據(jù)區(qū)和固定數(shù)據(jù)區(qū)分開存放。在運(yùn)行時(shí)把程序和數(shù)據(jù)復(fù)制到RAM 中運(yùn)行,這樣,即使PROM 中的可變數(shù)據(jù)區(qū)受到破壞,仍可以把數(shù)據(jù)常量復(fù)制到RAM 中運(yùn)行,不影響引導(dǎo)程序的執(zhí)行。專用操作系統(tǒng)可以存放在EEPROM 中,而系統(tǒng)應(yīng)用程序、控制參數(shù)、工程參數(shù)等存放在更可靠、高性能的固態(tài)存儲(chǔ)器SSD 中,這是目前解決電磁環(huán)境干擾的最好策略。
3.2.3 信息系統(tǒng)的容錯(cuò)總線設(shè)計(jì)
作為一種成熟的CAN 總線,其技術(shù)規(guī)范性較好,有著較好的實(shí)用性。具體來看,CAN 總線的運(yùn)算效果較強(qiáng),可以采取主動(dòng)式的管理機(jī)制,進(jìn)行信息數(shù)據(jù)的快速共享。并且這種技術(shù)控制方式,其靈活性較強(qiáng),可以滿足不同場(chǎng)景下的使用需求。例如建立起不同的控制節(jié)點(diǎn),完成不同優(yōu)先級(jí)的控制任務(wù),實(shí)現(xiàn)控制任務(wù)的順利完成,在整個(gè)控制過程中,多個(gè)節(jié)點(diǎn)同時(shí)進(jìn)行信息數(shù)據(jù)的發(fā)送,這種情況可以避免數(shù)據(jù)的沖突,可以進(jìn)行不同點(diǎn)、直通點(diǎn)的傳播方式。 CAN 總線的容錯(cuò)方案采用軟件控制的備份冗余方式,其基本思路是使用兩個(gè)CAN 總線控制器,每個(gè)總線控制器配備一個(gè)CAN 總線驅(qū)動(dòng)器,通過兩對(duì)差分線路構(gòu)成總線BUS1 和BUS2。正常情況下,由軟件設(shè)置總線控制器從BUS1 和BUS2 接收數(shù)據(jù),從BUS1 發(fā)送數(shù)據(jù),當(dāng)BUS1 發(fā)生故障時(shí)則切換至BUS2 發(fā)送數(shù)據(jù)。這時(shí)總線的故障檢測(cè)是一個(gè)關(guān)鍵,總線控制器中存在兩個(gè)錯(cuò)誤計(jì)數(shù)器(接收錯(cuò)誤計(jì)數(shù)器和發(fā)送錯(cuò)誤計(jì)數(shù)器),當(dāng)接收錯(cuò)誤和發(fā)送持續(xù)存在時(shí),錯(cuò)誤計(jì)數(shù)器溢出,該節(jié)點(diǎn)被置為“總線脫離”狀態(tài)。這時(shí)總線控制器中斷以通知處理器,處理器就應(yīng)執(zhí)行切換操作。當(dāng)某一節(jié)點(diǎn)切換至BUS2 后,應(yīng)通知其余節(jié)點(diǎn)進(jìn)行切換,該節(jié)點(diǎn)應(yīng)循環(huán)向其余節(jié)點(diǎn)發(fā)送信息,直至所有節(jié)點(diǎn)都切換到BUS2 并向其發(fā)回應(yīng)答,此后再進(jìn)行正常信息。
3.2.4 信息系統(tǒng)的容錯(cuò)軟件設(shè)計(jì)
不管是引導(dǎo)程序還是上層軟件,都必須進(jìn)行可靠性設(shè)計(jì),使系統(tǒng)更加完善。故障處理就是可靠性設(shè)計(jì)中的一個(gè)重要方面,系統(tǒng)需要對(duì)瞬時(shí)故障和永久故障作正確的處理,使系統(tǒng)在故障狀態(tài)下仍保持較高的可用性。我們應(yīng)該編寫3 至5 個(gè)相同功能的不同版本的軟件,利用軟件設(shè)計(jì)差異來實(shí)現(xiàn)容錯(cuò)。
容錯(cuò)技術(shù)是一門新興技術(shù),起步較晚,不被人們所重視,但隨著自然環(huán)境和電磁環(huán)境的惡化,加之電子設(shè)備廣泛應(yīng)用和普及,人們?cè)絹碓街匾曤娮釉O(shè)備的防護(hù)。容錯(cuò)技術(shù)可以提高數(shù)字化設(shè)備的可靠性,在關(guān)鍵領(lǐng)域已得到廣泛應(yīng)用。我國(guó)在空間應(yīng)用領(lǐng)域,為防止空間電磁干擾、空間粒子、及輻射等空間環(huán)境的破壞,利用容錯(cuò)技術(shù)研制神州衛(wèi)星星載計(jì)算機(jī)控制系統(tǒng),使得我國(guó)神州系列飛船成功運(yùn)行。這證明容錯(cuò)技術(shù)在信息系統(tǒng)領(lǐng)域具有廣泛可行的應(yīng)用前景。