两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

抗單粒子翻轉(zhuǎn)的sram型fpga刷新電路及刷新方法

文檔序號:6766814閱讀:1233來源:國知局
抗單粒子翻轉(zhuǎn)的sram型fpga刷新電路及刷新方法
【專利摘要】抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路及刷新方法,涉及現(xiàn)場可編程門陣列的空間抗單粒子翻轉(zhuǎn)領(lǐng)域,解決現(xiàn)有SRAM型FPGA刷新電路及方法利用外部控制器實(shí)現(xiàn)對配置命令和配置數(shù)據(jù)的重新加載,存在電路復(fù)雜度高,控制器存在不穩(wěn)定性等問題,采用兩片相同的存儲器,BOOT存儲了完整的配置文件,配置文件中包含了用戶要實(shí)現(xiàn)的功能模塊和FGPA實(shí)現(xiàn)自身刷新的刷新模塊,SCRUB存儲了編輯后的配置文件,F(xiàn)PGA加載完第一片存儲器后,刷新模塊啟動進(jìn)入刷新模式,通過周期性地讀取SCRUB存儲器中的配置文件,實(shí)現(xiàn)FPGA正常工作下的周期刷新。本發(fā)明有效地降低FPGA刷新的功耗和電路復(fù)雜度。
【專利說明】抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路及刷新方法

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及現(xiàn)場可編輯門陣列【技術(shù)領(lǐng)域】,具體涉及利用兩片存儲器實(shí)現(xiàn)一種SRAM型FPGA抗單粒子翻轉(zhuǎn)的刷新電路及方法。

【背景技術(shù)】
[0002]基于靜態(tài)隨機(jī)存儲器(staticrandomaccessmemory, SRAM)的FPGA因其功能配置方面的多樣性與可重復(fù)性,應(yīng)用體積小與研發(fā)周期短等顯著特點(diǎn),被廣泛應(yīng)用到航天領(lǐng)域,盡管相較于專用集成電路和反熔絲構(gòu)型的FPGA更容易受到單粒子(singleeventeffect,SEE)的影響,但其突出的優(yōu)越性使其仍然承擔(dān)著空間環(huán)境下飛行器的姿控、數(shù)傳和圖像處理等艱巨任務(wù),并且逐步演變成一種趨勢
[0003]由于空間高能粒子影響較大,SRAM型FPGA內(nèi)部配置存儲器的邏輯狀態(tài)常常由于粒子撞擊而翻轉(zhuǎn),即發(fā)生單粒子翻轉(zhuǎn)。如果翻轉(zhuǎn)發(fā)生在存儲器中,使能信號被重置;如果發(fā)生在邏輯功能區(qū),可能導(dǎo)致航天器功能中斷,無論發(fā)生哪種可能都會對航天器產(chǎn)生巨大影響。
[0004]Xilinx公司第一代VirtexFPGA開始,關(guān)于SRAM型FPGA的容錯研究不斷開,抗福照設(shè)計(jì)和三模冗余(TMR)設(shè)計(jì)不斷應(yīng)用。TMR設(shè)計(jì)的應(yīng)用已不能滿足FPGA長時間的可靠性,內(nèi)部的單粒子翻轉(zhuǎn)的積累可能導(dǎo)致TMR的錯誤,為了糾正FPGA需要按照一定的頻率清除所有翻轉(zhuǎn)位,一種方法是比特流的回讀,當(dāng)檢測到翻轉(zhuǎn)位時進(jìn)行重加載,這個方法需要消耗大量的時間。另外一種簡單的抗SEU的方法是忽略回讀檢測步驟,只重新加載整個CLB幀塊和BRAM內(nèi)聯(lián)幀塊,這種方法叫做刷新,刷新本質(zhì)上要求較少的系統(tǒng)資源,但是這意味著配置邏輯很大的時間是在“寫模式”,一次完整刷新的周期需要被設(shè)定的相對較短。刷新允許系統(tǒng)修復(fù)配置存儲器上的所有SEU而不打斷系統(tǒng)正常運(yùn)行。通常的刷新方法是利用外部控制器實(shí)現(xiàn)對配置命令和配置數(shù)據(jù)的重新加載,該方法電路復(fù)雜度高,控制器也存在一定的不穩(wěn)定性,有必要提出一種電路復(fù)雜度低、功耗低、可靠性更高的抗單粒子翻轉(zhuǎn)電路。


【發(fā)明內(nèi)容】

[0005]本發(fā)明為解決現(xiàn)有SRAM型FPGA刷新電路及方法利用外部控制器實(shí)現(xiàn)對配置命令和配置數(shù)據(jù)的重新加載,存在電路復(fù)雜度高,控制器存在不穩(wěn)定性等問題,提供一種抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路及刷新方法。
[0006]抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路,包括BOOT存儲器和SCRUB存儲器;所述BOOT存儲器用于存儲用戶功能模塊,SCRUB存儲器用于存儲對BOOT存儲器中的配置文件重新編輯后的配置文件,所述BOOT存儲器通過數(shù)據(jù)線和控制線實(shí)現(xiàn)對FPGA的加載;加載完成后,F(xiàn)PGA內(nèi)部的刷新電路周期性的控制1/0 口,所述1/0 口與SCRUB存儲器的控制端連接;控制SCRUB存儲器中的配置文件周期性加載到FPGA中。
[0007]抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路的刷新方法,該方法由以下步驟實(shí)現(xiàn):
[0008]步驟一、采用燒寫器將完整的配置文件燒寫到BOOT存儲器,同時刷新配置文件燒寫到SCRUB存儲器;
[0009]步驟二、對刷新電路上電后,F(xiàn)PGA清除內(nèi)部配置數(shù)據(jù),等待初始化完成;
[0010]步驟三、FPGA初始化成功后,BOOT存儲器開始配置數(shù)據(jù),經(jīng)過Tl毫秒后,BOOT存儲器配置完成,F(xiàn)PGA正常工作,F(xiàn)PGA內(nèi)的刷新模塊功能啟動;所述Tl為FPGA完成一次完整配置的時間;
[0011]步驟四、T2毫秒后,F(xiàn)PGA進(jìn)入自動刷新模塊,刷新模塊控制相應(yīng)I/O 口,周期性地控制SCRUB存儲器工作,所述SCRUB存儲器內(nèi)的刷新配置文件將加載到FPGA中;所述T2為等待刷新的時間;
[0012]步驟五、T3毫秒后,刷新配置文件加載完成,F(xiàn)PGA內(nèi)的刷新模塊控制SCRUB存儲器停止工作,完成一次刷新;所述T3為完成一次刷新配置需要的時間;
[0013]步驟六、重復(fù)執(zhí)行步驟四和步驟五,F(xiàn)PGA實(shí)現(xiàn)周期刷新。
[0014]本發(fā)明的有益效果:本發(fā)明所述的SRAM型FPGA電路,復(fù)雜度低、功耗低、可靠性高的抗單粒子翻轉(zhuǎn)刷新電路。
[0015]一、本發(fā)明所述的刷新功能模塊集成在FPGA內(nèi)部,不需要外部控制器,僅增加一片SCRUB存儲器,簡化了傳統(tǒng)刷新電路,降低了電路功耗。并且FPAG整體發(fā)生單粒子翻轉(zhuǎn)的概率極低,而刷新模塊利用片內(nèi)資源很少,幾乎可以忽略,其發(fā)生單粒子翻轉(zhuǎn)的概率近乎于0,電路容錯性提聞;
[0016]二、本發(fā)明所述的BOOT存儲器和SCRUB存儲器共用一條8位數(shù)據(jù)線,控制線獨(dú)立。SCRUB存儲器存儲了對BOOT存儲器中配置文件重新編輯的配置文件,該配置文件不會影響FPGA正常工作并且省略回讀功能;
[0017]三、本發(fā)明所述的存儲器是具有可單次編程(OTP)架構(gòu)的存儲器,該類存儲器具有很高的抗輻照特性,在航天飛行器中具有很高的繼承性。同時配置文件通過燒寫器燒寫,不會發(fā)生JTAG下載時CRC校驗(yàn)錯誤的問題,大大減小了對刷新配置文件修改的復(fù)雜度。
[0018]四、本發(fā)明所述的刷新電路可以應(yīng)用于任何支持動態(tài)刷新功能的FPGA芯片上。

【專利附圖】

【附圖說明】
[0019]圖1為本發(fā)明所述的抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路的刷新原理圖;
[0020]圖2為本發(fā)明所述的抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路中SCRUB存儲器中配置文件重新編輯流程圖;
[0021]圖3為本發(fā)明所述的抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路的刷新方法的流程圖。

【具體實(shí)施方式】
[0022]【具體實(shí)施方式】一、結(jié)合圖1和圖2說明本實(shí)施方式,抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路;包括BOOT存儲器和SCRUB存儲器。BOOT存儲器存儲了用戶功能模塊,上電通過數(shù)據(jù)線和控制線完成FPGA的正常加載,當(dāng)加載完成后FPGA刷新模塊會周期性控制其相應(yīng)的1/0 口,該1/0 口與SCRUB存儲器的控制端相連,使SCRUB存儲器中的配置文件周期性地加載到FPGA中,SCRUB存儲器存儲的文件是對BOOT存儲器中配置文件修改后的配置文件,該文件在加載前已經(jīng)將可能影響FPGA正常工作的配置指令重新設(shè)定或刪除,所以FPGA —直保持正常工作,如果FPGA刷新模塊發(fā)生單粒子翻轉(zhuǎn),可以通過重加載方式保證FPGA正常工作,整個過程FPGA —直處于寫狀態(tài)。
[0023]本實(shí)施方式中的刷新功能模塊集成在FPGA自身內(nèi)部,不需要外部控制器,僅增加一片SCRUB存儲器,簡化了傳統(tǒng)刷新電路。該刷新電路可以應(yīng)用于任何支持動態(tài)刷新的FPGA芯片上;所述的BOOT存儲器和SCRUB存儲器共用一條8位數(shù)據(jù)線,控制線獨(dú)立。其中,BOOT存儲器存儲了完整的配置文件,而SCRUB存儲器存儲了對BOOT存儲器中配置文件重新編輯的配置文件,具體步驟結(jié)合圖2 ;
[0024]本實(shí)施方式中,兩片存儲器和FPGA系統(tǒng)時鐘全部共用外部晶振,保證FPGA刷新時序的穩(wěn)定性,還包括外部重加載電路,通過置低FPGA重配置信號實(shí)現(xiàn)FPGA重啟。FPGA刷新模塊功能僅僅是對兩個I/O 口的周期控制,保證SCRUB存儲器內(nèi)配置文件正確的加載到FPGA中。由于FPAG整體發(fā)生單粒子翻轉(zhuǎn)的概率極低,而刷新模塊利用片內(nèi)資源很少,幾乎可以忽略,其發(fā)生單粒子翻轉(zhuǎn)的概率近乎于0,電路容錯性提高。
[0025]本實(shí)施方式中兩片存儲器采用具有可單詞編程(OTP)架構(gòu)的存儲器,該類存儲器配置文件通過燒寫器燒寫,不會發(fā)生JTAG下載時CRC校驗(yàn)錯誤的問題,大大減小了對刷新配置文件修改的復(fù)雜度,同時該類存儲器具有很高的抗輻照特性,在航天飛行器中具有很高的繼承性和可靠性。
[0026]【具體實(shí)施方式】二、結(jié)合圖3說明本實(shí)施方式,本實(shí)施方式為【具體實(shí)施方式】一所述的抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路的刷新方法,該方法由以下步驟實(shí)現(xiàn):
[0027]—、利用燒寫器將完整配置文件燒寫到BOOT存儲器,同時將刷新配置文件燒寫到SCRUB存儲器;
[0028]二、系統(tǒng)上電,F(xiàn)PGA清楚內(nèi)部配置數(shù)據(jù),等待初始化完成;
[0029]三、FPGA初始化成功,BOOT存儲器開始配置數(shù)據(jù),配置方式選用Salve SelectMap方式;
[0030]四、T1毫秒后,BOOT存儲器數(shù)據(jù)配置完成,使能信號被置低,片選信號被置高,該存儲器被禁止,內(nèi)部地址計(jì)數(shù)器清空,數(shù)據(jù)輸出口處于高阻態(tài)。FPGA正常工作,刷新模塊功能啟動;
[0031]五、T2毫秒后,F(xiàn)PGA進(jìn)入自動刷新模式,刷新模塊控制相應(yīng)1/0 口,周期性地將SCRUB存儲器使能端置高,片選信號置低,SCRUB存儲器開始工作,將刷新配置文件將加載到FPGA中;
[0032]六、T3毫秒后,刷新配置文件加載完成,F(xiàn)PGA刷新模塊將SCRUB存儲器使能信號置低,片選信號置高,整個加載過程FPGA正常工作,完成一次刷新;
[0033]七、不斷重復(fù)第五步和第六步,F(xiàn)PGA實(shí)現(xiàn)(T2+T3)毫秒地周期刷新。
[0034]八、如果刷新模塊功能出錯,可以通過重加載方式重啟FPGA,重新運(yùn)行以上步驟實(shí)現(xiàn)FPGA刷新。
[0035]其中,T1表示FPGA完成一次完整配置所需要的時間;Τ2表示等待刷新時間;Τ3表完成一次刷新配置所需時間,該時間T3基本等于T1, (Τ2+Τ3)表示兩次刷新間隔時間。
[0036]本實(shí)施方式中刷新時間取決于配置時鐘的頻率和配置文件位位流的大小。現(xiàn)實(shí)中最小化后的刷新周期與刷新時間基本相等,保證了系統(tǒng)平均在每個翻轉(zhuǎn)間隙執(zhí)行至少10次刷新操作。
【權(quán)利要求】
1.抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路,其特征是,包括BOOT存儲器和SCRUB存儲器;所述BOOT存儲器用于存儲用戶功能模塊,SCRUB存儲器用于存儲對BOOT存儲器中的配置文件重新編輯后的配置文件,所述BOOT存儲器通過數(shù)據(jù)線和控制線實(shí)現(xiàn)對FPGA的加載;加載完成后,F(xiàn)PGA內(nèi)部的刷新電路周期性的控制I/O 口,所述I/O 口與SCRUB存儲器的控制端連接;控制SCRUB存儲器中的配置文件周期性加載到FPGA中。
2.根據(jù)權(quán)利要求1所述的一種抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路,其特征在于,還包括外部重加載電路,當(dāng)FPGA內(nèi)刷新模塊發(fā)生單粒子翻轉(zhuǎn)時,通過重加載電路使FPGA正常工作。
3.根據(jù)權(quán)利要求1所述的一種抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路,其特征在于,所述BOOT存儲器和SCRUB存儲器共用八位的數(shù)據(jù)線,控制線獨(dú)立使用。
4.根據(jù)權(quán)利要求1所述的一種抗單粒子翻轉(zhuǎn)的SRAM型FPGA刷新電路,其特征在于,所述SCRUB存儲器用于存儲對BOOT存儲器中的配置文件重新編輯后的配置文件,SCRUB存儲器中重新編輯的配置文件的步驟為: 步驟A、ISE軟件生成配置文件,重新編輯生成的比特流頭文件,重新設(shè)定FAR寄存器值,保留CLB幀塊的配置數(shù)據(jù); 步驟B、刪除生成的比特流頭文件的配置文件中BRAM幀塊配置數(shù)據(jù),重新設(shè)定FAR寄存器值,保留BRAM內(nèi)聯(lián)幀塊數(shù)據(jù); 步驟C、刪除CRC校驗(yàn)寄存器比特流文件并重新編輯配置比特流尾文件,獲得重新編輯后的配置文件。
5.使用權(quán)利要求1-4任意一項(xiàng)權(quán)利要求所述的一種抗單粒子翻轉(zhuǎn)的SRAM型FPGA的刷新電路的刷新方法,其特征是,該方法由以下步驟實(shí)現(xiàn): 步驟一、采用燒寫器將完整的配置文件燒寫到BOOT存儲器,同時刷新配置文件燒寫到SCRUB存儲器; 步驟二、對刷新電路上電后,F(xiàn)PGA清除內(nèi)部配置數(shù)據(jù),等待初始化完成; 步驟三、FPGA初始化成功后,BOOT存儲器開始配置數(shù)據(jù),經(jīng)過Tl毫秒后,BOOT存儲器配置完成,F(xiàn)PGA正常工作,F(xiàn)PGA內(nèi)的刷新模塊功能啟動;所述Tl為FPGA完成一次完整配置的時間; 步驟四、T2毫秒后,F(xiàn)PGA進(jìn)入自動刷新模塊,刷新模塊控制相應(yīng)I/O 口,周期性地控制SCRUB存儲器工作,所述SCRUB存儲器內(nèi)的刷新配置文件將加載到FPGA中;所述T2為等待刷新的時間; 步驟五、T3毫秒后,刷新配置文件加載完成,F(xiàn)PGA內(nèi)的刷新模塊控制SCRUB存儲器停止工作,完成一次刷新;所述T3為完成一次刷新配置需要的時間; 步驟六、重復(fù)執(zhí)行步驟四和步驟五,F(xiàn)PGA實(shí)現(xiàn)周期刷新。
6.根據(jù)權(quán)利要求5所述的一種抗單粒子翻轉(zhuǎn)的SRAM型FPGA的刷新電路的刷新方法,其特征在于,步驟三中,所述BOOT存儲器配置完成,將BOOT存儲器的使能信號置低,片選信號置高,BOOT存儲器停止工作。
7.根據(jù)權(quán)利要求5所述的一種抗單粒子翻轉(zhuǎn)的SRAM型FPGA的刷新電路的刷新方法,其特征在于,步驟四中,所述FPGA內(nèi)部刷新模塊周期性的將SCRUB存儲器使能端置高,片選信號置低,SCRUB存儲器開始工作。
8.根據(jù)權(quán)利要求5所述的一種抗單粒子翻轉(zhuǎn)的SRAM型FPGA的刷新電路的刷新方法,其特征在于,步驟五中,刷新配置文件加載完成,F(xiàn)PGA內(nèi)部刷新模塊將SCRUB存儲器的使能信號置低,片選信號置高,SCRUB存儲器停止加載工作,加載過程中FPAG正常工作,完成一次刷新。
9.根據(jù)權(quán)利要求5所述的一種抗單粒子翻轉(zhuǎn)的SRAM型FPGA的刷新電路的刷新方法,其特征在于,當(dāng)FPGA內(nèi)部刷新模塊功能出錯,則通過外部重加載電路重新啟動FPGA,實(shí)現(xiàn)對FPGA的刷新。
10.根據(jù)權(quán)利要求5所述的一種抗單粒子翻轉(zhuǎn)的SRAM型FPGA的刷新電路的刷新方法,其特征在于,所述BOOT存儲器、SCRUB存儲器和FPGA的時鐘共用外部晶振,實(shí)現(xiàn)FPGA刷新時序的穩(wěn)定 性。
【文檔編號】G11C11/413GK104051002SQ201410250530
【公開日】2014年9月17日 申請日期:2014年6月6日 優(yōu)先權(quán)日:2014年6月6日
【發(fā)明者】馮汝鵬, 徐偉, 鄭曉云, 樸永杰, 王紹舉, 徐拓奇, 金光 申請人:中國科學(xué)院長春光學(xué)精密機(jī)械與物理研究所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
图们市| 北流市| 长岭县| 保康县| 武强县| 托克逊县| 凤台县| 孟州市| 镇巴县| 沙雅县| 六安市| 云霄县| 丰原市| 萍乡市| 策勒县| 滦平县| 密山市| 桐城市| 屯留县| 博野县| 乐都县| 赤水市| 宜阳县| 综艺| 武川县| 交城县| 兴化市| 阿克| 綦江县| 新龙县| 三亚市| 清水县| 濉溪县| 漯河市| 德江县| 南阳市| 黔南| 灵川县| 湘阴县| 隆化县| 板桥市|