基于溫備份技術(shù)的高可靠嵌入式控制器設(shè)計(jì)
摘 要: 介紹了面向空間科學(xué)實(shí)驗(yàn)應(yīng)用背景的高可靠控制器的解決方案。該方案利用MSP430與IGLOO系列FPGA的低功耗模式,設(shè)計(jì)了一種新型的溫備份方法,在保證系統(tǒng)高可靠性的前提下依然能夠達(dá)到較低的功耗,并確??茖W(xué)實(shí)驗(yàn)在單路控制電路失效的情況下能夠不中斷實(shí)驗(yàn)進(jìn)程。該控制器具有高可靠、低功耗以及接口資源豐富的特點(diǎn),可以滿足各類空間科學(xué)實(shí)驗(yàn)的需求,并已應(yīng)用于空間有效載荷集成支持系統(tǒng)項(xiàng)目中。
關(guān)鍵詞: 空間科學(xué)實(shí)驗(yàn); 控制器; 高可靠; 低功耗; 溫備份
隨著航天技術(shù)的進(jìn)步,空間科學(xué)實(shí)驗(yàn)的需求日益增多。我國(guó)已經(jīng)發(fā)射了實(shí)踐系列科學(xué)試驗(yàn)衛(wèi)星[1],在神舟飛船上也進(jìn)行了大量的空間科學(xué)實(shí)驗(yàn)。為了保證實(shí)驗(yàn)的成功,航天科技人員采用了多種可靠性技術(shù)以提高航天計(jì)算機(jī)系統(tǒng)的可靠性,如冷熱備份技術(shù)、多數(shù)選舉技術(shù)等。在我國(guó)的螢火一號(hào)探測(cè)器設(shè)計(jì)上,載荷配電器采用了熱備份方式[2],而美國(guó)的SERVIS-2衛(wèi)星也使用了類似多數(shù)選舉系統(tǒng)的容錯(cuò)技術(shù)實(shí)現(xiàn)高可靠的數(shù)據(jù)管理系統(tǒng)[3]。
然而,采用此類熱備份技術(shù)保障系統(tǒng)可靠性的同時(shí)也帶來(lái)了功耗過(guò)大等問(wèn)題;而冷備份在切換后主系統(tǒng)中的關(guān)鍵數(shù)據(jù)和狀態(tài)將會(huì)丟失,無(wú)法完成控制進(jìn)程的繼承。溫備份技術(shù)可以使個(gè)別公用部件處于加電工作狀態(tài),定期地保存主系統(tǒng)運(yùn)行中的關(guān)鍵數(shù)據(jù)和狀態(tài),當(dāng)主系統(tǒng)發(fā)生故障并切換至備份系統(tǒng)后,備份系統(tǒng)即可迅速自主地完成恢復(fù)運(yùn)行,是對(duì)熱備份和冷備份冗余的改進(jìn)[4],系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)的關(guān)鍵在于采用高可靠存儲(chǔ)器來(lái)保存關(guān)鍵數(shù)據(jù)。本文提出的新型溫備份方案不但減少了高可靠存儲(chǔ)器的使用,而且與標(biāo)準(zhǔn)溫備份系統(tǒng)相比具有更高的可靠性。
1 系統(tǒng)功能和性能
空間科學(xué)實(shí)驗(yàn)控制器可提供以下4種功能[5-6]:
(1)對(duì)實(shí)驗(yàn)設(shè)備的控制功能??蓪?duì)電機(jī)、繼電器等進(jìn)行控制,包括8路數(shù)字開(kāi)關(guān)量輸出、4路PWM輸出。
(2)遙測(cè)功能,可對(duì)電壓、電流、溫度、壓力、開(kāi)關(guān)狀態(tài)、數(shù)字量等提供實(shí)時(shí)遙測(cè)服務(wù),包括8路12位采樣率為200 KS/s的模擬采樣、8路數(shù)字開(kāi)關(guān)量的輸入。
(3)數(shù)傳和復(fù)接能力。能夠?yàn)樾枰聜鞯拇罅繑?shù)據(jù)(如視頻圖像等)提供數(shù)傳和復(fù)接服務(wù),包括2路LVDS信號(hào)的復(fù)接、2路UART和2路SPI接口。
(4)控制科學(xué)實(shí)驗(yàn)進(jìn)程的程序上載功能。空間科學(xué)實(shí)驗(yàn)控制器的程序可以在軌期間通過(guò)串行接口進(jìn)行更新。
在保證控制器以上4種功能的基礎(chǔ)上,本控制器還具有以下特性:(1)高可靠性。選用EP等級(jí)器件以減小器件故障率,采用新型溫備份技術(shù)提高系統(tǒng)可靠性。(2)低功耗。選用低功耗器件并采用低功耗技術(shù)降低系統(tǒng)功耗,系統(tǒng)運(yùn)行時(shí)最大功耗為0.4 W。(3)小體積。(4)可擴(kuò)展性。FPGA內(nèi)部使用ARM Coretex-M1處理器IP核可以使協(xié)處理器提升整個(gè)控制器的性能,使用以太網(wǎng)IP核擴(kuò)展以太網(wǎng)接口等。
2 硬件設(shè)計(jì)
2.1 基于MCU與FPGA的控制器核心
控制器的核心采用了基于MCU與FPGA的系統(tǒng)架構(gòu),如圖1所示。MCU負(fù)責(zé)實(shí)驗(yàn)進(jìn)程的控制和數(shù)據(jù)的采集,包括串行通信、模擬信號(hào)(溫度、壓力等)的采集、數(shù)字開(kāi)關(guān)信號(hào)的輸入輸出、PWM輸出(用于溫度控制或電機(jī)驅(qū)動(dòng)等實(shí)驗(yàn)執(zhí)行設(shè)備);FPGA負(fù)責(zé)高速數(shù)字信號(hào)的復(fù)接與傳輸,其中使用了低壓差分信號(hào)傳輸技術(shù)來(lái)傳輸信號(hào)。
MCU選用德州儀器公司的MSP430F249-EP,它具有4種低功耗模式,在最低功耗模式下只需0.1 μA的電流即可維持RAM中的內(nèi)容,從低功耗模式切換回工作模式不超過(guò)1 μs。即便在工作模式下,MCU消耗的電流也僅為250 μA/MIPS。另外,該MCU具有存儲(chǔ)器和豐富的外設(shè),通用輸入輸出引腳可以配置為UART、I2C、SPI串行通信接口,PWM輸出和模數(shù)轉(zhuǎn)換器的輸入;同時(shí),MCU可以通過(guò)JTAG和BSL兩種方式進(jìn)行程序下載,其中BSL方式采用了UART串行接口,適合于MCU在軌期間的程序上載。MCU選用了相對(duì)廉價(jià)的EP等級(jí)的器件,EP器件已通過(guò)AQEC標(biāo)準(zhǔn)(ANSI/GEIA STD-0002-1),該標(biāo)準(zhǔn)保證了EP器件達(dá)到了在軍事、航空航天等嚴(yán)酷環(huán)境下的使用要求。在實(shí)踐八號(hào)科學(xué)試驗(yàn)衛(wèi)星的池沸騰實(shí)驗(yàn)中,MSP430F249-EP作為實(shí)驗(yàn)控制器成功地完成了預(yù)期的實(shí)驗(yàn)任務(wù)。
FPGA選用Actel公司基于Flash技術(shù)的超低功耗IGLOO系列M1AGL600V2?;贔lash技術(shù)的FPGA與基于SRAM技術(shù)的FPGA相比除了具有較高的可靠性(如具有較高的對(duì)抗單粒子效應(yīng)的特性)之外,在同等資源的情況下電池續(xù)航時(shí)間是基于SRAM技術(shù)的FPGA的8倍[7]。IGLOO系列FPGA獨(dú)特的超低功耗Flash*Freeze模式可以將器件功耗降至5 μW。在該模式下,所有的時(shí)鐘和FPGA內(nèi)核的輸入處于關(guān)閉狀態(tài),僅保持寄存器及SRAM中的內(nèi)容,所有的引腳均處于高阻態(tài)。從Flash*Freeze模式切換回工作模式只需1 μs。
MCU除通過(guò)1路SPI通道與FPGA進(jìn)行通信之外,還通過(guò)通用輸出引腳控制FPGA的超低功耗使能引腳使得FPGA進(jìn)入或者退出超低功耗模式,從而控制FPGA進(jìn)入工作狀態(tài)或休眠狀態(tài)。另外,兩個(gè)MCU之間的通信使用增強(qiáng)并行口EPP協(xié)議,完成實(shí)驗(yàn)關(guān)鍵數(shù)據(jù)和進(jìn)程信息的備份。該協(xié)議具有500 KB/s~2 MB/s的數(shù)據(jù)傳輸率和編程方便靈活等特點(diǎn)[8],可以滿足備份的速率要求。
由于主系統(tǒng)與備份系統(tǒng)的接口信號(hào)都連在一條總線上,為了保證處于休眠和掉電狀態(tài)的備份系統(tǒng)的引腳信號(hào)不影響總線上的信號(hào),要求主備份系統(tǒng)的FPGA與MCU連在總線上的引腳必須處于高阻態(tài)。IGLOO系列FPGA所有的引腳在休眠和掉電狀態(tài)下處于高阻態(tài),而MSP430所有的引腳在休眠狀態(tài)下則保持不變,因而在MCU與總線的連接中間需插入隔離電路,以保證備份系統(tǒng)的MCU不會(huì)影響總線信號(hào)。
2.2 可靠性設(shè)計(jì)
本文采用的新型溫備份技術(shù)與標(biāo)準(zhǔn)的溫備份技術(shù)不同,它沒(méi)有使用共享RAM來(lái)定時(shí)存儲(chǔ)實(shí)驗(yàn)關(guān)鍵數(shù)據(jù),而是采用加電的備份系統(tǒng)MCU來(lái)進(jìn)行存儲(chǔ)。標(biāo)準(zhǔn)溫備份系統(tǒng)架構(gòu)如圖2所示。備份系統(tǒng)在空閑狀態(tài)下處于休眠狀態(tài),消耗極少的功耗。
新型溫備份系統(tǒng)比標(biāo)準(zhǔn)溫備份系統(tǒng)有更高的可靠性。使用旁聯(lián)模型對(duì)兩者進(jìn)行任務(wù)可靠性建模,模型如圖3、圖4所示[9]。
盡管旁聯(lián)模型可以大大提高系統(tǒng)的可靠度,但是增加了故障檢測(cè)與轉(zhuǎn)換裝置而加大了系統(tǒng)的復(fù)雜度,而且要求故障檢測(cè)與轉(zhuǎn)換裝置的可靠度非常高,否則冗余帶來(lái)的好處會(huì)被嚴(yán)重削弱。針對(duì)這一問(wèn)題,本設(shè)計(jì)的故障檢測(cè)采用的方法是檢測(cè)兩套系統(tǒng)的心跳信號(hào)及工作系統(tǒng)的下行數(shù)據(jù)的正確性。備份系統(tǒng)心跳信號(hào)的硬件電路如圖5所示,BeatB信號(hào)是MCU的通用輸出引腳產(chǎn)生的心跳信號(hào),ISO_CTLB信號(hào)指示了MCU是處于備份狀態(tài)或工作狀態(tài),根據(jù)三個(gè)電阻不同的電阻比值可以設(shè)定輸出心跳信號(hào)的高低電平值,其中兩個(gè)二極管的作用是保護(hù)內(nèi)部電路。
轉(zhuǎn)換裝置通過(guò)對(duì)失效系統(tǒng)的斷電來(lái)實(shí)現(xiàn)其功能;備份系統(tǒng)對(duì)主系統(tǒng)的電源進(jìn)行監(jiān)測(cè)。當(dāng)備份系統(tǒng)發(fā)現(xiàn)主系統(tǒng)的供電電壓降至邏輯低電平時(shí),備份系統(tǒng)被激活進(jìn)入工作狀態(tài),從Flash中讀取實(shí)驗(yàn)關(guān)鍵數(shù)據(jù)和實(shí)驗(yàn)進(jìn)程相關(guān)信息并接替實(shí)驗(yàn)控制任務(wù)。
2.3 供電系統(tǒng)設(shè)計(jì)
供電系統(tǒng)采用雙通道的冗余設(shè)計(jì),支持7~40 V的寬范圍電壓輸入,為控制器提供了3.3 V、2.5 V和1.5 V的供電電壓,系統(tǒng)框圖如圖6所示。為了保證高效率和小體積的平衡,第一級(jí)采用DC/DC電壓轉(zhuǎn)換器實(shí)現(xiàn)寬范圍電壓輸入并保證較高的效率,第二級(jí)采用低壓差線性穩(wěn)壓器進(jìn)一步降壓。主備份系統(tǒng)的通斷電通過(guò)磁保持繼電器進(jìn)行控制。
3 軟件設(shè)計(jì)
3.1 FPGA邏輯設(shè)計(jì)
FPGA實(shí)現(xiàn)的是數(shù)據(jù)復(fù)接功能,完成兩路串行輸入數(shù)據(jù)的復(fù)接并通過(guò)串行接口輸出。復(fù)接器在FPGA中實(shí)現(xiàn)分為3個(gè)模塊:串行輸入模塊、復(fù)接模塊和串行輸出模塊,如圖7所示。兩路LVDS數(shù)據(jù)通過(guò)串行輸入模塊存儲(chǔ)在相應(yīng)的FIFO中,復(fù)接模塊中的控制邏輯同步地取出1個(gè)或2個(gè)FIFO中的數(shù)據(jù)并通過(guò)復(fù)接單元復(fù)接后存入FIFO3,串行輸出模塊將FIFO3中的數(shù)據(jù)取出并發(fā)送。
3.2 MCU軟件
主系統(tǒng)的MCU與備份系統(tǒng)的MCU的軟件功能有所不同:主MCU完成實(shí)驗(yàn)的控制、數(shù)據(jù)的采集處理以及向備份MCU定時(shí)備份實(shí)驗(yàn)關(guān)鍵數(shù)據(jù)及實(shí)驗(yàn)進(jìn)程信息;備份MCU除定時(shí)接收主MCU發(fā)送的備份數(shù)據(jù)外,其余時(shí)間處于休眠狀態(tài)。主備份MCU采用統(tǒng)一的程序設(shè)計(jì),程序流程圖如圖8所示。主備份MCU按照特定輸入引腳的電平值確定本系統(tǒng)是主系統(tǒng)或備份系統(tǒng),從而運(yùn)行不同的程序。
若主MCU出現(xiàn)暫時(shí)性故障,則主MCU內(nèi)置的看門狗電路會(huì)重啟主MCU,讀入故障前的最后一次備份信息,繼續(xù)實(shí)驗(yàn)。若主MCU出現(xiàn)永久性故障,則主系統(tǒng)進(jìn)入掉電狀態(tài),而備份MCU讀取Flash中的備份信息并接替主系統(tǒng)進(jìn)行實(shí)驗(yàn)控制。
隨著空間技術(shù)的進(jìn)步,空間科學(xué)實(shí)驗(yàn)的需求必然會(huì)提升到一個(gè)新的高度,同時(shí)對(duì)科學(xué)實(shí)驗(yàn)設(shè)備的研發(fā)也提出了更高的要求。作為實(shí)驗(yàn)控制核心部件,高可靠控制器的設(shè)計(jì)仍將是十分重要的課題。本文利用MSP430與IGLOO系列FPGA的低功耗特性完成的新型溫備份設(shè)計(jì),在提高可靠性的同時(shí)保證了系統(tǒng)的低功耗,適用于未來(lái)空間科學(xué)實(shí)驗(yàn)的高可靠控制。
參考文獻(xiàn)
[1] 蔡金榮,張立榮,周曉東.實(shí)踐系列衛(wèi)星空間環(huán)境探測(cè)的回顧[C].中國(guó)空間科學(xué)學(xué)會(huì)空間探測(cè)專業(yè)委員會(huì)第十九次學(xué)術(shù)會(huì)議,2006:423-427.
[2] 安軍社,陳曉敏,石俊峰,等.螢火一號(hào)探測(cè)器有效載荷數(shù)據(jù)管理器設(shè)計(jì)[J].空間科學(xué)學(xué)報(bào),2009,29(5):486-489.
[3] HIHARA H, YMADA K, ADACHI M. CRAFT: an experimental fault tolerant computer system for SERVIS-2 satellite[EB/OL]. http://pdf.aiaa.org/preview/CDReadyMIC SSC03_723/PV2003_2291.pdf.2003.
[4] 王建峰,蔣軒祥.一種基于溫備份的容錯(cuò)計(jì)算機(jī)的設(shè)計(jì)與實(shí)現(xiàn)[J].微電子學(xué)與計(jì)算機(jī),2002(9):36-39.
[5] TANTIPHANWADI S. Spacecraft computers on the seastar satellite[EB/OL]. http://microsat.sm.bmstu.ru/e-library/ccdh/Hard/ts-xii-6.pdf,1999.
[6] 李春華,倪潤(rùn)立.中國(guó)返回式衛(wèi)星與空間科學(xué)實(shí)驗(yàn)[J].空間科學(xué)學(xué)報(bào),2009,29(1):124-129.
[7] Actel Corporation. Competitive programmable logic power comparison white paper [S]. 2008.
[8] 符冬陽(yáng),賀貴明.增強(qiáng)并行口EPP協(xié)議及其應(yīng)用[J].計(jì)算機(jī)應(yīng)用,2001,21(10):62-63.
[9] 曾聲奎,趙廷弟,張建國(guó),等. 系統(tǒng)可靠性設(shè)計(jì)分析教 程[M]. 北京:北京航空航天大學(xué)出版社,2000:32-36.