航天計(jì)算機(jī)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及運(yùn)用到衛(wèi)星、火箭等航天器的高性能計(jì)算的技術(shù)領(lǐng)域,具體為一種高集成度的航天計(jì)算機(jī)及其實(shí)現(xiàn)方法。
【背景技術(shù)】
[0002]衛(wèi)星、火箭等航天器上的計(jì)算機(jī),由于工作環(huán)境的特殊性,特別需要高可靠性的設(shè)計(jì),現(xiàn)有的航天計(jì)算機(jī)大多采用屏蔽加固和多模冗余的設(shè)計(jì)方法,這些方法往往采用單獨(dú)的處理器或者單獨(dú)處理器加上CPLD芯片或者FPGA芯片的方式實(shí)現(xiàn),采用冗余設(shè)計(jì)的方法實(shí)現(xiàn)功能的備份,以達(dá)到獲取設(shè)備可靠性的目的。
[0003]在器件選擇上,航天計(jì)算機(jī)往往采用航天級(jí)器件,隨著技術(shù)的發(fā)展,商用器件也逐步被運(yùn)用到航天計(jì)算機(jī)。商用器件是指在工業(yè)界普遍采用,在日常能夠購買到的商業(yè)級(jí)或者工業(yè)級(jí)器件,具有成本低、性能高、不受國外進(jìn)口的限制的優(yōu)點(diǎn)。相應(yīng)地,采用商用器件的方案具有成本、性能、研發(fā)和生產(chǎn)周期、可購買性等諸多優(yōu)勢(shì)。而商用器件中的重要成員:片上系統(tǒng)(S0C:System on chip),是指在單芯片集成了包括處理器、外部接口以及必要的輔助的設(shè)備的一類器件。而最新出現(xiàn)的包含了 ARM雙核處理器和可編程邏輯電路的一類片上系統(tǒng)(SOC)特別適合于航天計(jì)算機(jī)應(yīng)用。而在需要完成大規(guī)模數(shù)字信號(hào)處理的場(chǎng)景下,數(shù)字信號(hào)處理器(DSP)器件也得到了廣泛引用。
[0004]申請(qǐng)?zhí)枮?01410393492.5的中國專利申請(qǐng)公布了一種多模冗余的皮/納衛(wèi)星星載計(jì)算機(jī)系統(tǒng),采用三模冗余的MCU作為微小衛(wèi)星的計(jì)算機(jī)控制系統(tǒng)。
[0005]申請(qǐng)?zhí)枮?01410392852.X中國專利申請(qǐng)公布了一種基于安卓手機(jī)四核微處理器的皮衛(wèi)星計(jì)算機(jī)系統(tǒng)。具有很高的集成度,但是該系統(tǒng)未采用冗余的可靠性設(shè)計(jì)技術(shù)。
[0006]申請(qǐng)?zhí)枮?01510036911.4的中國專利申請(qǐng)公布了一種星載計(jì)算機(jī)的重構(gòu)方法,提出了如何重構(gòu)星載計(jì)算以應(yīng)對(duì)故障和在線變化的運(yùn)算任務(wù)。
[0007]上述文獻(xiàn)所公布的方案,主要在可靠性方面有較完整的設(shè)計(jì),最新的專利申請(qǐng)也有集成度方面的考慮,但是存在以下不足:
1)高可靠性設(shè)計(jì)的方案體積較大,特別是多模冗余的時(shí)候,往往采用多個(gè)獨(dú)立的處理器實(shí)現(xiàn);
2)運(yùn)算能力上無法滿足航天器日益增長的需求;
3)部分采用手機(jī)處理器的高集成度設(shè)計(jì),沒有充分考慮可靠性設(shè)計(jì)的要求;
4)存在實(shí)現(xiàn)可靠性的監(jiān)視、判決和倒換裝置,也存在為實(shí)現(xiàn)靈活配置運(yùn)算功能的重構(gòu)模塊,但是兩者往往獨(dú)立存在。
【發(fā)明內(nèi)容】
[0008]本發(fā)明所要解決的技術(shù)問題是提供一種高集成度、高可靠性、高運(yùn)算性能的航天計(jì)算機(jī)。為此,本發(fā)明采用如下技術(shù)方案:
Ι-a)—顆反熔絲FPGA,其作用是實(shí)現(xiàn)系統(tǒng)維護(hù)的功能; 所述系統(tǒng)維護(hù)功能包括對(duì)于整個(gè)航天計(jì)算機(jī)系統(tǒng)的硬件狀態(tài)檢測(cè)、運(yùn)行在硬件之上的邏輯功能監(jiān)測(cè)、并且根據(jù)上述檢測(cè)結(jié)果,對(duì)于故障的可編程邏輯電路和軟件模塊進(jìn)行功能重構(gòu);
所述系統(tǒng)維護(hù)功能還包括能夠根據(jù)需要?jiǎng)討B(tài)加載計(jì)算機(jī)的運(yùn)行程序;
所述反熔絲FPGA采用反熔絲編程技術(shù),其內(nèi)部具有反熔絲陣列開關(guān)結(jié)構(gòu),其邏輯功能的定義由專用編程器根據(jù)設(shè)計(jì)實(shí)現(xiàn)所給出的數(shù)據(jù)文件,對(duì)其內(nèi)部的反熔絲陣列進(jìn)行燒錄,從而使器件實(shí)現(xiàn)相應(yīng)的邏輯功能;其具有一次性編程、高抗干擾性、低功耗、高可靠性、高保密性的特點(diǎn)。
[0009]Ι-b)—顆商用片上系統(tǒng)(SOC)器件,用作航天計(jì)算機(jī)的中心控制處理器,用于控制航天計(jì)算機(jī)的外部通信管理、內(nèi)部通信管理、內(nèi)部任務(wù)管理以及控制算法邏輯控制功能的計(jì)算;
所述商用片上系統(tǒng)(S0C)器件,內(nèi)部包括ARM雙核處理器和可編程邏輯電路;所述可編程邏輯電路被配置成的部分包括外部接口、ARM內(nèi)部接口、DSP內(nèi)部接口和算術(shù)/邏輯運(yùn)算加速單元四個(gè)部分;
所述外部通信管理,包括總線管理、提供給反熔絲FPGA的狀態(tài)信息報(bào)告;
所述內(nèi)部通信管理,包括內(nèi)部各參與運(yùn)算的單元之間的通信管理;所述運(yùn)算單元包括ARM雙核處理器、可編程邏輯電路中的算術(shù)/邏輯運(yùn)算加速單元和三顆DSP;
所述內(nèi)部任務(wù)管理,是指ARM雙核處理器進(jìn)行計(jì)算機(jī)內(nèi)部的運(yùn)算任務(wù)分配,使得控制算法的數(shù)值計(jì)算部分和數(shù)字信號(hào)處理算法分配給DSP和商用片上系統(tǒng)(SOC)內(nèi)部的可編程邏輯電路完成,控制算法的邏輯控制功能由ARM雙核處理器和可編程邏輯電路完成;在運(yùn)算任務(wù)發(fā)生改變的時(shí)候,還需要通知反熔絲FPGA對(duì)運(yùn)算單元進(jìn)行重構(gòu)以適應(yīng)不同的運(yùn)算需求;l_c ) 二顆DSP,其作用是實(shí)現(xiàn)的浮點(diǎn)和定點(diǎn)算法運(yùn)算。
[0010]在以上方案的基礎(chǔ)上,航天計(jì)算機(jī)在功能上包括維護(hù)子系統(tǒng)、外部接口、控制子系統(tǒng)、互連子系統(tǒng)和三模冗余運(yùn)算子系統(tǒng);
所述維護(hù)子系統(tǒng),由上述反熔絲FPGA組成;
所述外部接口由上述片上系統(tǒng)(SOC)內(nèi)的片內(nèi)外部接口和一部分可編程邏輯電路構(gòu)成;
所述控制子系統(tǒng)由上述片上系統(tǒng)(SOC)內(nèi)的ARM雙核處理器和一部分可編程邏輯電路構(gòu)成;
所述互聯(lián)子系統(tǒng)由上述片上系統(tǒng)(SOC)內(nèi)的一部分可編程邏輯電路構(gòu)成;
所述三模冗余運(yùn)算子系統(tǒng)由上述商用片上系統(tǒng)(SOC)內(nèi)部的一部分可編程邏輯電路和上述三顆DSP組成。
[0011]本發(fā)明中,所述外部接口、控制子系統(tǒng),實(shí)現(xiàn)了硬件雙機(jī)備份,使得ARM雙核處理器中的兩個(gè)處理器核心在硬件上相互獨(dú)立,而且其外部接口也在硬件電路上相互獨(dú)立;處理器側(cè)的外部接口作為其中一個(gè)處理器核心的外部接口,同時(shí)采用可編程邏輯電路側(cè)的軟核接口電路作為另一個(gè)處理器核心的外部接口。
[0012]互為備份的處理器核心可以分別與獨(dú)立存儲(chǔ)器連接,確保存儲(chǔ)器在硬件電路上獨(dú)立,所述存儲(chǔ)器分別連接在ARM雙核處理器側(cè)的存儲(chǔ)器控制器和可編程邏輯電路側(cè)的存儲(chǔ)器控制器,以保證硬件獨(dú)立。
[0013]本發(fā)明中,所述互聯(lián)子系統(tǒng),內(nèi)部實(shí)現(xiàn)了ARM處理器核心和三顆DSP間的點(diǎn)對(duì)點(diǎn)互連,因此對(duì)于控制子系統(tǒng)而言互聯(lián)子系統(tǒng)是雙機(jī)備份,同時(shí)互聯(lián)子系統(tǒng)又支持運(yùn)算子系統(tǒng)中的DSP的三模冗余機(jī)制;所述DSP的三模冗余機(jī)制在工作時(shí),對(duì)三個(gè)互為備份的DSP的輸出進(jìn)行比較,取結(jié)果相同的兩個(gè)DSP的輸出為正確結(jié)果,并且認(rèn)為輸出錯(cuò)誤結(jié)果的DSP為故障;
所述互聯(lián)子系統(tǒng),在可編程邏輯電路電路分別為兩個(gè)ARM處理器核心配置獨(dú)立的軟核接口電路,并且該軟核接口電路與分別對(duì)應(yīng)三顆DSP的三個(gè)DSP接口為點(diǎn)對(duì)點(diǎn)連接;
所述互聯(lián)子系統(tǒng)中,分別對(duì)應(yīng)三顆DSP的三個(gè)DSP接口,每一個(gè)均同時(shí)與兩個(gè)ARM處理器核心連接;
所述互聯(lián)子系統(tǒng)中,分別對(duì)應(yīng)三顆DSP的DSP接口相互之間也通過DSP的3模冗余機(jī)制確保正常工作。
[0014]所述維護(hù)子系統(tǒng)完成功能保障和重構(gòu)控制的任務(wù),功能重構(gòu)在以下情況下發(fā)生:5-a)當(dāng)其中一個(gè)或者多個(gè)運(yùn)算模塊包括其外部接口發(fā)生故障時(shí),診斷并重構(gòu)該模塊或者接口,所述運(yùn)算模塊包括控制子系統(tǒng)互為備份的ARM處理器核心、互聯(lián)子系統(tǒng)的接口電路、三模冗余運(yùn)算子系統(tǒng)位于可編程邏輯電路器件的部分,以及三模冗余運(yùn)算子系統(tǒng)的三顆DSP;
5-b)根據(jù)實(shí)際情況,當(dāng)運(yùn)算的算法發(fā)生更新或者變化,可以分別更新(或者重新加載)部分(或者全部)的運(yùn)算加速邏輯電路和DSP處理程序;
所述維護(hù)子系統(tǒng)完成功能重構(gòu)任務(wù)的時(shí)候,能夠最大限度保證設(shè)備的可用性,包括如下幾種情況:
6-a)當(dāng)互為備份的處理器核心中主用核心發(fā)生故障時(shí),首先將正在運(yùn)行的任務(wù)、對(duì)外接