本發明專利技術涉及衛星載荷技術領域,特別涉及一種基于三模冗余的程序在軌加載刷新方法。該方法顯著提高了空間載荷在軌運行的可靠性,很大程度上避免了由于空間單粒子現象等造成的單比特翻轉現象,提高了基于SRAM型FPGA+DSP架構的空間載荷在軌運行的連續可靠性。該方法實現簡單,可以在耗費較少資源的條件下,滿足到空間載荷數字電路部分長時間在軌連續運行的可靠性需求。
A refreshing method for program loading on orbit based on three mode redundancy
【技術實現步驟摘要】
一種基于三模冗余的程序在軌加載刷新方法
本專利技術涉及衛星載荷
,特別涉及一種基于三模冗余的程序在軌加載刷新方法。
技術介紹
應用于衛星或空間飛行器的電子學設備,在軌運行期間往往會因受到空間輻射環境影響而導致工作異常或者失效,嚴重的甚至可能產生災難性的后果。質子、重粒子、alpha粒子等其他種類的高能粒子是宇航器件運行環境中常見的輻射源,這些高能粒子可以射入半導體器件敏感區并產生大量電荷,從而改變電路的邏輯狀態,甚至損壞集成電路的性能。如圖1所示,近地球空間輻射環境中的輻射源主要包括地球輻射帶粒子、銀河宇宙射線、太陽宇宙射線、大氣二級粒子等。經研究統計:超過71%的宇航電子器件發生的故障與其工作的空間輻射環境有關,其中由單粒子效應引起的故障占總故障數量的55%,成為空間輻射環境中對宇航集成電路可靠性最重要的危險來源之一。單粒子效應是指由于帶電粒子射入集成電路內部,與芯片襯底發生碰撞產生沉積電荷,并在襯底形成漏斗區域,通過漂移、擴散不斷吸收多余電荷,當漏斗區吸收到足夠多的沉積電荷之后,會產生瞬態電流脈沖,導致瞬態電壓變化,從而使得電路邏輯狀態發生錯誤,嚴重時甚至損壞器件。單粒子效應具體分為單粒子翻轉(SEU)、單粒子瞬態(SET)、多位翻轉(MBU)、單粒子功能中斷(SEFI)、單粒子燒毀(SEB)和單粒子閂鎖(SEL)等。其中,單粒子燒毀等效應會造成集成電路發生不可恢復、永久性的硬損傷,其他單粒子效應如單粒子翻轉、單粒子瞬態等所造成的集成電路狀態變化可以通過系統復位或重新寫入數據等方式恢復正常功能。隨著如今工藝尺寸的減小,集成電路對造成硬損傷的單粒子效應具有免疫功能,此類單粒子效應已經不再是目前的研究重點。單粒子翻轉、單粒子瞬態等造成的軟損傷,經常會導致寄存器邏輯狀態發生翻轉,或者在單粒子轟擊組合邏輯電路的敏感節點如與非門等電路功能單元時,產生瞬態脈沖被后級寄存器捕獲,從而對電路工作狀態造成影響。這類軟損傷是目前造成空間飛行器工作狀態錯誤的最主要原因之一。由于載荷數字電路部分通常采用DSP+SRAM型FPGA的架構用以同時完成實時數據處理以及復雜運算,而這兩種器件中都包含大量對單粒子效應敏感的SRAM型結構,因此單粒子效應給空間載荷數字電路部分的連續正常工作帶來了巨大的挑戰。目前,針對單粒子效應,在數字電路部分采取的防護措施主要有以下幾種:(1)在SRAM型FPGA內部程序中進行三模冗余,保證運行過程中其寄存器資源不會由于單粒子效應發生翻轉;(2)DSP程序運行在帶有EDAC功能的SRAM中,利用EDAC功能自動糾正單粒子效應引起的單比特翻轉;(3)使用FPGA配置刷新芯片,對FPGA進行刷新,保證發生單粒子效應后及時將翻轉位置刷新回正確狀態;(4)使用反熔絲型FPGA負責SRAM型FPGA及DSP的加載及刷新工作等。前三種方法都是針對基于單DSP或者單FPGA模式下的防護方法,且實現時會耗費大量的FPGA內部資源或需要額外的硬件資源。第四種方法是目前空間載荷數字電路部分常用的一種防護措施,將配置程序存儲在高等級PROM中,利用PROM和反熔絲的高可靠性保證數字電路部分的正常工作狀態。其缺點是PROM器件成本較高,且配置程序一經編程寫入之后隨即固化,無法進行修改,通常還需要外接FLASH或者EEPROM進行重構功能擴展。
技術實現思路
本專利技術的目的在于克服現有技術的不足,提供了一種基于三模冗余的程序在軌加載刷新方法,該方法充分利用FLASH的讀寫靈活性,作為配置程序的存儲器。在FLASH中同時存儲三份相同的配置程序,通過表決器來避免由于單粒子效應造成的比特翻轉現象,同時FLASH還可以作為重構程序的存儲器件,通過反熔絲FPGA控制完成在軌重構功能。使用三片FLASH或者一片大容量FLASH作為配置程序存儲器,可以避免使用PROM,降低硬件成本,同時保證了配置程序升級的靈活性,省去了高等級PROM固化落焊的步驟,大大降低了微小衛星載荷的成本并縮短了產品的開發周期,可以在同類產品中推廣應用。本專利技術的上述目的通過以下方案實現:一種基于三模冗余的程序在軌加載刷新方法,實現步驟如下:(1)準備三片FLASH芯片,在每片FLASH芯片中根據地址分成兩個區域,作為主備配置程序存儲區,分別為主存儲區和備存儲區;(2)將SRAM型FPGA的配置程序和DSP芯片的配置程序進行拼接處理,按照SRAM型FPGA的配置程序在前、DSP的配置程序在后的順序排列,將拼接后的配置程序分別寫入三片FLASH芯片中的主存儲區,即FLASH芯片的主存儲區中所存儲的三份代碼完全相同,在備存儲區中存儲拼接后的配置程序的備份版本;(3)使用反熔絲型FPGA,通過控制片選信號實時讀取三片FLASH芯片中的配置程序,將讀取的三片FLASH芯片中的配置程序同時存儲于本地寄存器中并進行表決,避免由于空間效應造成的比特位翻轉現象帶來的誤碼,獲得正確的配置程序內容;(4)根據步驟(3)得到的配置程序內容對SRAM型FPGA和DSP進行加載,加載完成后釋放SRAM型FPGA的全局復位信號,此時SRAM型FPGA和DSP均開始正常運行;在DSP運行過程中,反熔絲FPGA通過看門狗電路實時監測DSP芯片的喂狗信號,如若DSP喂狗信號周期超時,則對SRAM型FPGA和DSP均進行復位,進入步驟(5),否則進入步驟(6);(5)重復步驟(3)-(4),若SRAM型FPGA和DSP連續3次加載后未能同時正常工作,進入步驟(7),否則進入步驟(6),若反熔絲型FPGA接收到DSP的切換指令,進入步驟(7);(6)反熔絲型FPGA繼續通過控制片選信號實時讀取三片FLASH芯片中的配置程序,將讀取的三片FLASH芯片中的配置程序同時存儲于本地寄存器中并進行表決,獲得正確的配置程序內容,并使用獲得的配置程序內容對SRAM型FPGA進行周期性刷新;同時,在每次對SRAM型FPGA刷新之后,反熔絲FPGA讀取設定量的DSP的配置程序,并將讀取的DSP的配置程序存儲于反熔絲FPGA的內部FIFO中,等待DSP讀取之后對DSP的內存進行刷新;(7)使用反熔絲型FPGA,通過控制片選信號實時讀取三片FLASH芯片中的配置程序的備份版本,將讀取的三片FLASH芯片中的配置程序的備份版本同時存儲于本地寄存器中并進行表決,獲得正確的配置程序內容;(8)根據步驟(7)得到的配置程序內容對SRAM型FPGA和DSP進行加載,加載完成后釋放SRAM型FPGA的全局復位信號,此時SRAM型FPGA和DSP均開始正常運行;在DSP運行過程中,反熔絲FPGA通過看門狗電路實時監測DSP芯片的喂狗信號,如若DSP喂狗信號周期超時,則對SRAM型FPGA和DSP均進行復位,進入步驟(9),否則進入步驟(10);(9)重復步驟(7)-(8),若SRAM型FPGA和DSP連續3次加載后未能同時正常工作,結束,否則進入步驟(10);(10)反熔絲型FPGA繼續通過控制片選信號實時讀取三片FLASH芯片中的配置程序的備份版本文檔來自技高網...
【技術保護點】
1.一種基于三模冗余的程序在軌加載刷新方法,其特征在于該方法的步驟包括:/n(1)準備三片FLASH芯片,在每片FLASH芯片中根據地址分成兩個區域,分別為主存儲區和備存儲區;/n(2)將SRAM型FPGA的配置程序和DSP芯片的配置程序進行拼接處理,按照SRAM型FPGA的配置程序在前、DSP的配置程序在后的順序排列,將拼接后的配置程序分別寫入三片FLASH芯片中的主存儲區,在備存儲區中存儲拼接后的配置程序的備份版本;/n(3)使用反熔絲型FPGA,通過控制片選信號實時讀取三片FLASH芯片中的配置程序,將讀取的三片FLASH芯片中的配置程序同時存儲于本地寄存器中并進行表決,獲得正確的配置程序內容;/n(4)根據步驟(3)得到的配置程序內容對SRAM型FPGA和DSP進行加載,加載完成后釋放SRAM型FPGA的全局復位信號,在DSP運行過程中,反熔絲FPGA通過看門狗電路實時監測DSP芯片的喂狗信號,如若DSP喂狗信號周期超時,則對SRAM型FPGA和DSP均進行復位,進入步驟(5),否則進入步驟(6);/n(5)重復步驟(3)-(4),若SRAM型FPGA和DSP連續3次加載后未能同時正常工作,進入步驟(7),否則進入步驟(6),若反熔絲型FPGA接收到DSP的切換指令,進入步驟(7);/n(6)反熔絲型FPGA繼續通過控制片選信號實時讀取三片FLASH芯片中的配置程序,將讀取的三片FLASH芯片中的配置程序同時存儲于本地寄存器中并進行表決,獲得正確的配置程序內容,并使用獲得的配置程序內容對SRAM型FPGA進行周期性刷新;同時,在每次對SRAM型FPGA刷新之后,反熔絲FPGA讀取設定量的DSP的配置程序,并將讀取的DSP的配置程序存儲于反熔絲FPGA的內部FIFO中,等待DSP讀取之后對DSP的內存進行刷新;/n(7)使用反熔絲型FPGA,通過控制片選信號實時讀取三片FLASH芯片中的配置程序的備份版本,將讀取的三片FLASH芯片中的配置程序的備份版本同時存儲于本地寄存器中并進行表決,獲得正確的配置程序內容;/n(8)根據步驟(7)得到的配置程序內容對SRAM型FPGA和DSP進行加載,加載完成后釋放SRAM型FPGA的全局復位信號,在DSP運行過程中,反熔絲FPGA通過看門狗電路實時監測DSP芯片的喂狗信號,如若DSP喂狗信號周期超時,則對SRAM型FPGA和DSP均進行復位,進入步驟(9),否則進入步驟(10);/n(9)重復步驟(7)-(8),若SRAM型FPGA和DSP連續3次加載后未能同時正常工作,結束,否則進入步驟(10);/n(10)反熔絲型FPGA繼續通過控制片選信號實時讀取三片FLASH芯片中的配置程序的備份版本,將讀取的三片FLASH芯片中的配置程序的備份版本同時存儲于本地寄存器中并進行表決,獲得正確的配置程序內容,并使用獲得的配置程序內容對SRAM型FPGA進行周期性刷新;同時,在每次對SRAM型FPGA刷新之后,反熔絲FPGA讀取設定量的DSP的配置程序,并將讀取的DSP的配置程序存儲于反熔絲FPGA的內部FIFO中,等待DSP讀取之后對DSP的內存進行刷新;/n(11)DSP定期通過反熔絲FPGA直接讀取FLASH芯片中存儲的配置程序,并計算程序校驗和,通過校驗和來確定FLASH中的配置程序是否發生翻轉現象,若某一程序存儲區發生翻轉現象,則讀取相應配置程序對該程序區進行寫入覆蓋,保持FLASH中配置程序的正確性。/n...
【技術特征摘要】
1.一種基于三模冗余的程序在軌加載刷新方法,其特征在于該方法的步驟包括:
(1)準備三片FLASH芯片,在每片FLASH芯片中根據地址分成兩個區域,分別為主存儲區和備存儲區;
(2)將SRAM型FPGA的配置程序和DSP芯片的配置程序進行拼接處理,按照SRAM型FPGA的配置程序在前、DSP的配置程序在后的順序排列,將拼接后的配置程序分別寫入三片FLASH芯片中的主存儲區,在備存儲區中存儲拼接后的配置程序的備份版本;
(3)使用反熔絲型FPGA,通過控制片選信號實時讀取三片FLASH芯片中的配置程序,將讀取的三片FLASH芯片中的配置程序同時存儲于本地寄存器中并進行表決,獲得正確的配置程序內容;
(4)根據步驟(3)得到的配置程序內容對SRAM型FPGA和DSP進行加載,加載完成后釋放SRAM型FPGA的全局復位信號,在DSP運行過程中,反熔絲FPGA通過看門狗電路實時監測DSP芯片的喂狗信號,如若DSP喂狗信號周期超時,則對SRAM型FPGA和DSP均進行復位,進入步驟(5),否則進入步驟(6);
(5)重復步驟(3)-(4),若SRAM型FPGA和DSP連續3次加載后未能同時正常工作,進入步驟(7),否則進入步驟(6),若反熔絲型FPGA接收到DSP的切換指令,進入步驟(7);
(6)反熔絲型FPGA繼續通過控制片選信號實時讀取三片FLASH芯片中的配置程序,將讀取的三片FLASH芯片中的配置程序同時存儲于本地寄存器中并進行表決,獲得正確的配置程序內容,并使用獲得的配置程序內容對SRAM型FPGA進行周期性刷新;同時,在每次對SRAM型FPGA刷新之后,反熔絲FPGA讀取設定量的DSP的配置程序,并將讀取的DSP的配置程序存儲于反熔絲FPGA的內部FIFO中,等待DSP讀取之后對DSP的內存進行刷新;
(7)使用反熔絲型FPGA,通過控制片選信號實時讀取三片FLASH芯片中的配置程序的備份版本,將讀取的三片FLASH芯片中的配置程序的備份版本同時存儲于本地寄存器中并進行表決,獲得正確的配置程序內容;
(8)根據步驟(7)得到的配置程序內容對SRAM型FPGA和DSP進行加載,加載完成后釋放SRAM型FPGA的全局復位信號,在DSP運行過程中,反熔絲FPGA通過看門狗電路實時監測DSP芯片的喂狗信號,如若DSP喂狗信號周期超時,則對SRAM型FPGA和DSP均進行復位,進入步驟(9),否則進入步驟(10);
(9)重復步驟(7)-(8),若SRAM型FPGA和DSP連續3次加載后未能同時正常工作,結束,否則進入步驟(10);
(10)反熔絲型FPGA繼續通過控制片選信號實時讀取三片FLASH芯片中的配置程序的備份版本,將讀取的三片FLASH芯片中的配置程序的備份版本同時存儲于本地寄存器中并進行表決,獲得正確的配置程序內容,并使用獲得的配置程序內容對SRAM型FPGA進行周期性刷新;同時,在每次對SRAM型FPGA刷新之后,反熔絲FPGA讀取設定量的DSP的配置程序,并將讀取的DSP的配置程序存儲于反熔絲FPGA的內部FIFO中,等待DSP讀取之后對DSP的內存進行刷新;
(11)DSP定期通過反熔絲FPGA直接讀取FLASH芯片中存儲的配置程序,并計算程序校驗和,通過校驗和來確定FLASH中的配置程序是否發生翻轉現象,若某一程序存儲區發生翻轉現象,則讀取相應配置程序對該程序區進行寫入覆蓋,保持FLAS...
【專利技術屬性】
技術研發人員:姚建沖,陳偉波,繆曉紅,李奇奮,
申請(專利權)人:北京遙測技術研究所,航天長征火箭技術有限公司,
類型:發明
國別省市:北京;11
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。