一種sram型大規模fpga抗單粒子裝置及方法
【專利摘要】本發明提供了一種SRAM型大規模FPGA抗單粒子裝置,包括反熔絲PROM模塊、反熔絲FPGA模塊以及SRAM型FPGA模塊,反熔絲PROM模塊向反熔絲FPGA模塊發送配置數據,反熔絲FPGA模塊接收配置數據后發送至SRAM型FPGA模塊,回讀和計算SRAM型FPGA模塊的配置信息。同時還提供了該裝置的工作方法。本發明采用反熔絲PROM模塊和反熔絲FPGA模塊監控刷新配置程序的方案,對于SRAM型FPGA模塊內部不能通過反熔絲FPGA回讀校驗的某些重要狀態信息仍采用TMR技術,進一步提高設備的可靠性;TMR和反熔絲FPGA監控相結合的技術,減少軟件刷新重配的次數,有效地解決單粒子事件累積效應。
【專利說明】—種SRAM型大規模FPGA抗單粒子裝置及方法
【技術領域】
[0001]本發明涉及航天飛行器設計【技術領域】,具體為一種SRAM型大規模FPGA抗單粒子裝置及方法。
【背景技術】
[0002]單粒子效應是空間的高能帶電粒子在穿過微電子器件的靈敏結時,沉積能量,產生足夠數量的電荷,這些電荷被器件電極收集后,造成器件邏輯狀態的非正常改變或器件損壞。
[0003]對于中低軌的太陽同步軌道衛星,每一軌都要經過南北極,大部分軌道都經過南大西洋輻射異常帶,比較容易受空間異常輻射帶單粒子的影響。在空間環境較惡劣的情況下,常規手段的抗輻射措施已不能有效解決空間環境對星載SRAM型FPGA的影響。
[0004]為保證系統在復雜空間環境中當局部出現故障時屏蔽和容忍錯誤,把錯誤造成的損失降到最低,在硬件上比較常用的可靠性措施包括選用抗干擾等級高的元器件、屏蔽設計和冗余設計等,但是這些措施都無法絕對預防故障的發生,為了滿足衛星可靠性的要求,軟件上也需采取相應的可靠性措施,盡量降低如空間單粒子事件等故障等造成的危害,使故障能及時檢測、隔離或自主恢復。
[0005]隨著對空間單粒子認識的加深,航天器星載設備的設計越來越重視抗單粒子設計,除了常規手段外,必須采取更主動有效的方式解決空間單粒子的影響,以確保飛行任務的正常和可靠。
[0006]目前沒有發現同本發明類似技術的說明或報道,也尚未收集到國內外類似的資料。
【發明內容】
[0007]本發明針對現有技術中存在的上述不足,提供了一種SRAM型大規模FPGA抗單粒子裝置及方法,以解決空間單粒子故障造成的危害。
[0008]本發明是通過以下技術方案實現的。
[0009]根據本發明的一個方面,提供了一種SRAM型大規模FPGA抗單粒子裝置,包括依次連接的反熔絲PR0M模塊、反熔絲FPGA模塊以及SRAM型FPGA模塊,所述反熔絲PR0M模塊與反熔絲FPGA模塊交互信號連接,并向反熔絲FPGA模塊發送配置數據,所述反熔絲FPGA模塊接收配置數據后發送至SRAM型FPGA模塊,并回讀和計算SRAM型FPGA模塊的配置信肩、Ο
[0010]優選地,所述SRAM型FPGA模塊設有配置寄存器,所述反熔絲FPGA模塊設有與配置寄存器相連接的Select Map (并行)接口,所述Select Map接口用于回讀配置寄存器中SRAM型FPGA模塊的配置信息。
[0011 ] 優選地,所述反熔絲FPGA模塊包括如下模塊:
[0012]-控制模塊,用于控制反熔絲FPGA模塊的配置加載流程和回讀流程,并進行單粒子事件判斷。
[0013]優選地,所述反熔絲FPGA模塊還包括如下模塊:
[0014]-本地時鐘管理模塊,用于產生配置加載和配置回讀的時鐘。
[0015]優選地,所述反熔絲FPGA模塊包括如下六種工作狀態:
[0016]-配置;
[0017]-第一次回讀;
[0018]-空閑;
[0019]-回讀;
[0020]-等待;
[0021]-停止。
[0022]根據本發明的另一個方面,提供了一種SRAM型大規模FPGA抗單粒子裝置的工作方法,包括如下步驟:
[0023]步驟1,反熔絲FPGA模塊啟動配置加載流程,讀取反熔絲PR0M模塊中的配置程序,并發送至SRAM型FPGA模塊的配置寄存器;
[0024]步驟2,反熔絲FPGA模塊啟動回讀流程,回讀SRAM型FPGA模塊的配置寄存器中的配置數據,并計算校驗,同時,將第一次成功回讀計算的校驗值作為后續回讀對比的標準值;
[0025]步驟3,反熔絲FPGA模塊連續回讀配置寄存器中的配置數據,并計算校驗值與標準值進行比較,判斷單粒子事件發生情況;
[0026]步驟4,當單粒子事件發生時,反熔絲FPGA模塊刷新SRAM型FPGA模塊的配置寄存器,并重復執行步驟1至步驟4。
[0027]優選地,所述步驟3中,反熔絲FPGA模塊通過本地時鐘管理模塊,定時回讀配置寄存器中數據。
[0028]優選地,所述定時時間間隔為1 s。
[0029]優選地,所述步驟3中,單粒子事件發生判斷條件為:連續三次回讀計算校驗值與標準值不一致,則判斷發生了單粒子事件。
[0030]優選地,所述步驟4中,還包括如下步驟:
[0031]對刷新條件進行優化,增加判別鎖定指示條件:
[0032]-當鎖定指示為錯誤發生在配置寄存器的非重要區域,即屬于任務正常情況,則關閉觸發配置條件,不對配置寄存器進行刷新;
[0033]-當鎖定指示為錯誤發生在配置寄存器的重要區域,即屬于任務異常情況,則觸發配置條件,對配置寄存器進行刷新。
[0034]優選地,所述SRAM型FPGA模塊的配置寄存器中的重要區域數據采用TMR(TripleModular Redundancy,三重模件冗余)技術進行設計。
[0035]本發明提供的一種SRAM型大規模FPGA抗單粒子裝置及方法,在傳統TMR或周期性重配置等相對單一的傳統技術基礎上,提出了增加反熔絲FPGA定時回讀配置程序進行校驗比對的方法,專門用于提高航天飛行器中使用的SRAM型大規模FPGA抗單粒子能力,進而提高設備的可靠性。經過某衛星型號中繼終端在軌飛行試驗多次驗證,本發明明顯改善了單粒子事件對SRAM型Xilinx FPGA的影響,有效保證了在軌飛行任務的順利完成。
[0036]與現有技術相比,本發明具有如下優點和積極效果:
[0037]1)本發明提出了采用反熔絲PR0M模塊和反熔絲FPGA模塊監控刷新配置程序的方案,另外對于SRAM型FPGA模塊內部不能通過反熔絲FPGA回讀校驗的某些重要狀態信息仍采用TMR技術,進一步提高設備的可靠性;
[0038]2)本發明采用TMR和增加高可靠反熔絲FPGA監控相結合的技術,一方面可以減少軟件刷新重配的次數,另一方面可以有效地解決單粒子事件累積效應;
[0039]3)本發明在某型號衛星中繼終端上飛行驗證,在軌工作正常,有效地解決了太陽同步軌道衛星單粒子事件,保證了與中繼衛星通信的可靠性;
[0040]4)本發明對其它空間環境較為惡劣的航天器星載設備研制也具有重要意義;
[0041]5)本發明的應用可以推廣至其它衛星型號、載人飛船等,能夠縮短研制時間、降低設計與試驗成本、提高航天飛行器研制效率。
【專利附圖】
【附圖說明】
[0042]通過閱讀參照以下附圖對非限制性實施例所作的詳細描述,本發明的其它特征、目的和優點將會變得更明顯:
[0043]圖1為本發明裝置組成框圖;
[0044]圖2為本發明優選實施案例組成框圖;
[0045]圖3為本發明反熔絲FPGA模塊監控流程圖;
[0046]圖4為本發明的SRAM型FPGA模塊內部數據TMR實現圖。
【具體實施方式】
[0047]下面對本發明的實施例作詳細說明:本實施例在以本發明技術方案為前提下進行實施,給出了詳細的實施方式和具體的操作過程。應當指出的是,對本領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干變形和改進,這些都屬于本發明的保護范圍。
[0048]請同時參閱圖1至圖4。
[0049]本實施例提供了一種SRAM型大規模FPGA抗單粒子裝置,包括依次連接的反熔絲PR0M模塊、反熔絲FPGA模塊以及SRAM型FPGA模塊,所述反熔絲PR0M模塊與反熔絲FPGA模塊交互信號連接,并向反熔絲FPGA模塊發送配置數據,所述反熔絲FPGA模塊接收配置數據后發送至SRAM型FPGA模塊,并回讀和計算SRAM型FPGA模塊的配置信息。
[0050]進一步地,所述SRAM型FPGA模塊設有配置寄存器,所述反熔絲FPGA模塊設有與配置寄存器相連接的Select Map (并行)接口,所述Select Map接口用于回讀配置寄存器中SRAM型FPGA模塊的配置信息。
[0051 ] 進一步地,所述反熔絲FPGA模塊包括如下模塊:
[0052]-控制模塊,用于控制反熔絲FPGA模塊的配置加載流程和回讀流程,并進行單粒子事件判斷。
[0053]進一步地,所述反熔絲FPGA模塊還包括如下模塊:
[0054]-本地時鐘管理模塊,用于產生配置加載和配置回讀的時鐘。
[0055]進一步地,所述反熔絲FPGA模塊包括如下六種工作狀態:
[0056]-配置;
[0057]-第一次回讀;
[0058]-空閑;
[0059]-回讀;
[0060]-等待;
[0061]-停止。
[0062]本實施例提供的SRAM型大規模FPGA抗單粒子裝置,其工作方法,包括如下步驟:
[0063]步驟1,反熔絲FPGA模塊啟動配置加載流程,讀取反熔絲PR0M模塊中的配置程序,并發送至SRAM型FPGA模塊的配置寄存器;
[0064]步驟2,反熔絲FPGA模塊啟動回讀流程,回讀SRAM型FPGA模塊的配置寄存器中的配置數據,并計算校驗,同時,將第一次成功回讀計算的校驗值作為后續回讀對比的標準值;
[0065]步驟3,反熔絲FPGA模塊連續回讀配置寄存器中的配置數據,并計算校驗值與標準值進行比較,判斷單粒子事件發生情況;
[0066]步驟4,當單粒子事件發生時,反熔絲FPGA模塊刷新SRAM型FPGA模塊的配置寄存器,并重復執行步驟1至步驟4。
[0067]進一步地,所述步驟3中,反熔絲FPGA模塊通過本地時鐘管理模塊,定時回讀配置寄存器中數據。
[0068]進一步地,所述定時時間間隔為Is。
[0069]進一步地,所述步驟3中,單粒子事件發生判斷條件為:連續三次回讀計算校驗值與標準值不一致,則判斷發生了單粒子事件。
[0070]進一步地,所述步驟4中,還包括如下步驟:
[0071]對刷新條件進行優化,增加判別鎖定指示條件:
[0072]-當鎖定指示為錯誤發生在配置寄存器的非重要區域,即屬于任務正常情況,則關閉觸發配置條件,不對配置寄存器進行刷新;
[0073]-當鎖定指示為錯誤發生在配置寄存器的重要區域,即屬于任務異常情況,則觸發配置條件,對配置寄存器進行刷新。
[0074]進一步地,所述SRAM型FPGA模塊的配置寄存器中的重要區域數據采用TMR (Triple Modular Redundancy,三重模件冗余)技術進行設計。
[0075]在本實施例中:增加反熔絲FPGA模塊讀取反熔絲PR0M中的配置程序;定時回讀SRAM型FPGA模塊的配置存儲區數據,并計算校驗和,判斷發生單粒子事件時刷新修復;對SRAM型FPGA模塊內部的重要區域數據進行TMR設計。
[0076]下面結合附圖對本實施例在衛星中繼終端上的具體案例進行詳細描述。
[0077]如圖2所示,在本案例中,反熔絲FPGA模塊采用Actel反熔絲FPGA (監控FPGA),SRAM型FPGA模塊采用Xi linx FPFA (功能FPGA),反熔絲PROM模塊用于存儲Xi linx FPFA配置程序。
[0078]工作時,反熔絲FPGA模塊通過Select Map接口回讀Xi linx FPGA的配置寄存器,并將第一次成功回讀計算的校驗值作為以后回讀對比的標準值。工作期間,每隔Is觸發定時器進行一次回讀,并與標準值比較,若連續三次回讀計算校驗值與標準值不一致,則判斷發生了單粒子事件,觸發刷新修復。監控FPGA設計了六種工作狀態:配置,第一次回讀,空閑,回讀,等待,停止,其實現流程如圖3所示。
[0079]Xi linx FPGA的有些狀態信息不能通過反熔絲FPGA回讀校驗,如BRAM,SRL16和在CLB中存在的分布式SRAM,因此在增加回讀校驗功能的同時,還需要對Xi linx FPGA重要區域(程序關鍵模塊)進行三模冗余設計進一步提高設備抗單粒子效應。如附圖4所示。
[0080]增加反熔絲FPGA模塊,按幀格式要求定時回讀配置區數據,并計算每一幀回讀數據的校驗和,如發現配置程序代碼異常,則觸發相應電路刷新SRAM型FPGA模塊內部配置區數據。
[0081]SRAM型FPGA模塊內部關鍵模塊采用TMR技術,外圍增加監控反熔絲FPGA定時回讀配置程序。
[0082]本地時鐘管理,產生配置加載和配置回讀的時鐘,回讀SRAM型FPGA的配置存儲區將回讀數據計算累加校驗和,若連續三次回讀計算校驗值與第一次回讀校驗值不一致,則判斷發生了單粒子事件,進行刷新修復。
[0083]完成控制模塊功能,控制加載流程和回讀流程,并進行單粒子事件判斷,判斷發生錯誤后再刷新SRAM型FPGA的配置存儲區。需要考慮的是,會出現某些情況,雖然發生了單粒子事件,但被打翻的是不重要的區域,不影響正常任務的繼續進行,此時,若判斷發生錯誤并刷新SRAM型FPGA的存儲區反而會影響正常任務。因此,為防止任務正常時不必要的刷新,需要對刷新條件進行優化,即增加判別鎖定指示條件,如果鎖定指示為正常鎖定,則關閉觸發配置條件,不對程序進行刷新。通過優化,能達到在不影響正常任務的前提下,及時發現并有效解決單粒子事件對星載SRAM型FPGA模塊的影響。
[0084]本案例已經過在軌飛行試驗驗證,有效地解決了單粒子事件,保證了通信任務的可靠進行。
[0085]以上對本發明的具體實施例進行了描述。需要理解的是,本發明并不局限于上述特定實施方式,本領域技術人員可以在權利要求的范圍內做出各種變形或修改,這并不影響本發明的實質內容。
【權利要求】
1.一種SRAM型大規模FPGA抗單粒子裝置,其特征在于,包括依次連接的反熔絲PROM模塊、反熔絲FPGA模塊以及SRAM型FPGA模塊,所述反熔絲PROM模塊與反熔絲FPGA模塊交互信號連接,并向反熔絲FPGA模塊發送配置數據,所述反熔絲FPGA模塊接收配置數據后發送至SRAM型FPGA模塊,并回讀和計算SRAM型FPGA模塊的配置信息。
2.根據權利要求1所述的SRAM型大規模FPGA抗單粒子裝置,其特征在于,所述SRAM型FPGA模塊設有配置寄存器,所述反熔絲FPGA模塊設有與配置寄存器相連接的Select Map接口,所述Select Map接口用于回讀配置寄存器中SRAM型FPGA模塊的配置信息。
3.根據權利要求1所述的SRAM型大規模FPGA抗單粒子裝置,其特征在于,所述反熔絲FPGA模塊包括如下模塊: -控制模塊,用于控制反熔絲FPGA模塊的配置加載流程和回讀流程,并進行單粒子事件判斷。
4.根據權利要求3所述的SRAM型大規模FPGA抗單粒子裝置,其特征在于,所述反熔絲FPGA模塊還包括如下模塊: -本地時鐘管理模塊,用于產生配置加載和配置回讀的時鐘。
5.根據權利要求1、3或4所述的SRAM型大規模FPGA抗單粒子裝置,其特征在于,所述反熔絲FPGA模塊包括如下六種工作狀態: -配置; -第一次回讀; -空閑; -回讀; -等待; _停止。
6.一種SRAM型大規模FPGA抗單粒子裝置的工作方法,其特征在于,包括如下步驟: 步驟1,反熔絲FPGA模塊啟動配置加載流程,讀取反熔絲PROM模塊中的配置程序,并發送至SRAM型FPGA模塊的配置寄存器; 步驟2,反熔絲FPGA模塊啟動回讀流程,回讀SRAM型FPGA模塊的配置寄存器中的配置數據,并計算校驗,同時,將第一次成功回讀計算的校驗值作為后續回讀對比的標準值;步驟3,反熔絲FPGA模塊連續回讀配置寄存器中的配置數據,并計算校驗值與標準值進行比較,判斷單粒子事件發生情況; 步驟4,當單粒子事件發生時,反熔絲FPGA模塊刷新SRAM型FPGA模塊的配置寄存器,并重復執行步驟I至步驟4。
7.根據權利要求6所述的SRAM型大規模FPGA抗單粒子裝置的工作方法,其特征在于,所述步驟3中,反熔絲FPGA模塊通過本地時鐘管理模塊,定時回讀配置寄存器中數據。
8.根據權利要求6所述的SRAM型大規模FPGA抗單粒子裝置的工作方法,其特征在于,所述步驟3中,單粒子事件發生判斷條件為:連續三次回讀計算校驗值與標準值不一致,則判斷發生了單粒子事件。
9.根據權利要求6所述的SRAM型大規模FPGA抗單粒子裝置的工作方法,其特征在于,所述步驟4中,還包括如下步驟: 對刷新條件進行優化,增加判別鎖定指示條件: -當鎖定指示為錯誤發生在配置寄存器的非重要區域,即屬于任務正常情況,則關閉觸發配置條件,不對配置寄存器進行刷新; -當鎖定指示為錯誤發生在配置寄存器的重要區域,即屬于任務異常情況,則觸發配置條件,對配置寄存器進行刷新。
10.根據權利要求9所述的SRAM型大規模FPGA抗單粒子裝置的工作方法,其特征在于,所述SRAM型FPGA模塊的配置寄存器中的重要區域數據采用TMR技術進行設計。
【文檔編號】G06F17/50GK104281742SQ201410461355
【公開日】2015年1月14日 申請日期:2014年9月11日 優先權日:2014年9月11日
【發明者】郜蓓, 章英杰, 饒啟龍, 許銀生 申請人:上海衛星工程研究所