專利名稱:一種針對sram型fpga的逐位翻轉(zhuǎn)故障注入方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于SRAM型FPGA的逐位翻轉(zhuǎn)故障注入方法,屬于FPGA空間可靠性技術(shù)領(lǐng)域。
背景技術(shù):
FPGA發(fā)生單粒子翻轉(zhuǎn)后,其故障表現(xiàn)為FPGA中存儲單元的內(nèi)容改變,而這些存儲單元的內(nèi)容是由配置文件中的比特位決定的。目前,在地面上模擬空間中的單粒子翻轉(zhuǎn)主要采用輻射模擬,即采用重離子或高能質(zhì)子等模擬源來輻照器件,測試其輻射敏感參數(shù),為器件的選型和預(yù)估實(shí)際輻射環(huán)境中單粒子翻轉(zhuǎn)率提供依據(jù)。
如果采用輻射模擬的方法,首先,被輻照過的器件不能再被使用,從而提高了試驗(yàn)的成本;其次,國內(nèi)的高能加速資源器資源相對較少,預(yù)約困難;再次,這種方法對于調(diào)整粒子種類和能量的操作較為復(fù)雜,難以控制注入位置;最后,經(jīng)過原子序號小的粒子輻射后會發(fā)生二次核子反應(yīng),造成輻射污染,具有較高危險性。
與此相比,模擬單粒子翻轉(zhuǎn)的第二種方式-故障注入的方法則彌補(bǔ)了上述缺點(diǎn), 成為地面模擬單粒子翻轉(zhuǎn)的重要手段。尤其是利用SRAM型FPGA重配置特性進(jìn)行的故障注入方法得到了極大的關(guān)注,但是現(xiàn)在還存在用戶無法根據(jù)對應(yīng)資源敏感位來決定翻轉(zhuǎn)位的弊端。發(fā)明內(nèi)容
本發(fā)明的目的是為了解決上述間題,提出一種針對SRAM型FPGA的逐位翻轉(zhuǎn)故障注入方法,通過檢測電路設(shè)計(jì)配置存儲單元中的單粒子翻轉(zhuǎn)敏感位位置,得到動態(tài)翻轉(zhuǎn)截面和失效率,繪出可靠度變化曲線,從而可以對電路設(shè)計(jì)空間應(yīng)用的可靠度進(jìn)行評測。
一種針對SRAM型FPGA的逐位翻轉(zhuǎn)故障注入方法,包括以下幾個步驟
步驟一初始配置;
測試開始后,首先控制器對被測芯片進(jìn)行初始化配置;
步驟二 翻轉(zhuǎn)比特位;
上位機(jī)發(fā)送逐位翻轉(zhuǎn)指令,控制器根據(jù)指令對被測芯片配置數(shù)據(jù)進(jìn)行逐位翻轉(zhuǎn), 再將翻轉(zhuǎn)位所在數(shù)據(jù)幀重配置到被測芯片,完成動態(tài)重配置;
步驟三判斷是否產(chǎn)生錯誤;
動態(tài)重配置完成后,比較被測芯片輸出結(jié)果和預(yù)知的正確結(jié)果,判斷第一位時,如果結(jié)果錯誤,則引起輸出結(jié)果錯誤的位為敏感位,錯誤數(shù)H = H+1,錯誤數(shù)初始值為0,并將相應(yīng)位的msk掩碼值記為1,修正比特位;如果結(jié)果正確,將相應(yīng)位的msk掩碼值記為0,修正比特位,依次類推,逐位進(jìn)行判斷,全部完成后,將msk掩碼值上傳至上位機(jī);
步驟四判斷是否完成測試;
判斷測試是否完成,如果完成則將錯誤數(shù)上傳至上位機(jī),進(jìn)入步驟五,如果沒有完成,則返回步驟二;3
步驟五獲取FPGA的動態(tài)翻轉(zhuǎn)截面和可靠度變化曲線;
上位機(jī)將上傳的msk掩碼值與錯誤數(shù)生成一個msk. dat掩碼文件,根據(jù)msk. dat 掩碼文件得到敏感位的總位數(shù)及具體位置;
得到敏感位的個數(shù)后,根據(jù)式(1)得到FPGA的動態(tài)翻轉(zhuǎn)截面
權(quán)利要求
1. 一種針對SRAM型FPGA的逐位翻轉(zhuǎn)故障注入方法,其特征在于,包括以下幾個步驟 步驟一初始配置;測試開始后,首先控制器對被測芯片進(jìn)行初始化配置; 步驟二 翻轉(zhuǎn)比特位;上位機(jī)發(fā)送逐位翻轉(zhuǎn)指令,控制器根據(jù)指令對被測芯片配置數(shù)據(jù)進(jìn)行逐位翻轉(zhuǎn),再將翻轉(zhuǎn)位所在數(shù)據(jù)幀重配置到被測芯片,完成動態(tài)重配置; 步驟三判斷是否產(chǎn)生錯誤;動態(tài)重配置完成后,比較被測芯片輸出結(jié)果和預(yù)知的正確結(jié)果,判斷第一位時,如果結(jié)果錯誤,則引起輸出結(jié)果錯誤的位為敏感位,錯誤數(shù)H = H+1,錯誤數(shù)初始值為0,并將相應(yīng)位的msk掩碼值記為1,修正比特位;如果結(jié)果正確,將相應(yīng)位的msk掩碼值記為0,修正比特位,依次類推,逐位進(jìn)行判斷,全部完成后,將msk掩碼值上傳至上位機(jī); 步驟四判斷是否完成測試;判斷測試是否完成,如果完成則將錯誤數(shù)上傳至上位機(jī),進(jìn)入步驟五,如果沒有完成, 則返回步驟二;步驟五獲取FPGA的動態(tài)翻轉(zhuǎn)截面和可靠度變化曲線;上位機(jī)將上傳的msk掩碼值與錯誤數(shù)生成一個msk. dat掩碼文件,根據(jù)msk. dat掩碼文件得到敏感位的總位數(shù)及具體位置;得到敏感位的個數(shù)后,根據(jù)式(1)得到FPGA的動態(tài)翻轉(zhuǎn)截面
全文摘要
本發(fā)明公開了一種針對SRAM型FPGA的逐位翻轉(zhuǎn)故障注入方法,通過檢測電路設(shè)計(jì)配置存儲單元中的單粒子翻轉(zhuǎn)敏感位位置,得到動態(tài)翻轉(zhuǎn)截面和失效率,繪出可靠度變化曲線,從而可以對電路設(shè)計(jì)空間應(yīng)用的可靠度進(jìn)行評測。方法包括,步驟一初始配置;步驟二翻轉(zhuǎn)比特位;步驟三判斷是否產(chǎn)生錯誤;步驟四判斷是否完成測試;步驟五獲取FPGA的動態(tài)翻轉(zhuǎn)截面和可靠度變化曲線。
文檔編號G06F17/50GK102521467SQ20111044929
公開日2012年6月27日 申請日期2011年12月29日 優(yōu)先權(quán)日2011年12月29日
發(fā)明者宋凝芳, 宋鏡明, 張家銘, 張忠鋼, 朱明達(dá), 李安琪, 潘雄 申請人:北京航空航天大學(xué)