国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

單粒子翻轉(zhuǎn)效應(yīng)的FPGA模擬技術(shù)*

2021-10-13 12:26:24施聿哲白雨鑫張智維
電子與封裝 2021年9期
關(guān)鍵詞:故障注入寄存器粒子

陳 鑫,施聿哲,白雨鑫,陳 凱,張智維,張 穎

(南京航空航天大學(xué)電子信息工程學(xué)院,南京 210016)

1 引言

隨著半導(dǎo)體工藝的不斷發(fā)展,器件特征尺寸逐漸減少,激發(fā)單粒子翻轉(zhuǎn)(Single Event Upset,SEU)效應(yīng)所需的能量閾值呈幾何級下降趨勢。例如,65 nm工藝下器件發(fā)生電平翻轉(zhuǎn)需6500個電荷,16 nm工藝下器件電平翻轉(zhuǎn)僅需1000個電荷[1-2]。雖然電平錯誤翻轉(zhuǎn)引發(fā)的軟錯誤不會對電路造成永久性的破壞,但是由于發(fā)生的能量閾值較低,所以在所有單粒子效應(yīng)造成集成電路工作失效的事件中,電平錯誤翻轉(zhuǎn)效應(yīng)引起的事件占有比例最高,為40%[3-4]。由此可見,軟錯誤已經(jīng)成為先進工藝下大規(guī)模數(shù)字集成電路在輻射環(huán)境中最為主要的失效模式,這極大地限制了集成電路在一些可靠性較高的領(lǐng)域尤其是富含高通量低能粒子的航天航空場景中的應(yīng)用。為促進航空航天事業(yè)的快速發(fā)展,需要對集成電路功能軟錯誤的敏感性進行充分的研究和評估。

在所有的評估手段中,空間環(huán)境實測的方式獲得的數(shù)據(jù)最為準確,但航天器的發(fā)射次數(shù)和載荷都是有限的,實驗機會少且價格昂貴。因此,更多的評估手段被開發(fā)出來,主要有輻照測試,軟件仿真和現(xiàn)場可編程門陣列(Field Programmable Gate Array,FPGA)模擬等技術(shù)路線[5-8]。

輻照測試可以精確控制輻射強度和時間,相比于空間試驗有著良好的可控性和靈活性。但是搭建輻照測試環(huán)境的開銷依然非常龐大,具備輻照測試條件的單位也極少。此外,輻照測試需要批量測試,在測試過程中也極有可能損傷芯片,且芯片出錯后也很難定位敏感節(jié)點,故一般只用于成品芯片的性能測試和最終測試。

軟件仿真通過數(shù)學(xué)分析方法,將真實情況下單粒子效應(yīng)對電路造成的影響轉(zhuǎn)化為故障產(chǎn)生概率,故障持續(xù)時間和故障節(jié)點位置等故障模型參數(shù),最后將故障注入到電路中[9-12]。軟件仿真的優(yōu)勢在于模擬單粒子效應(yīng)的靈活性,可從工藝級、器件級、晶體管級、門級和行為級各個層次對單粒子效應(yīng)進行建模、仿真和分析。但隨著電路規(guī)模的增加,軟件仿真計算過程的時間開銷也在顯著增加,諸如開關(guān)級模擬的時間爆炸問題[13]。

相對于軟件仿真技術(shù),F(xiàn)PGA模擬單粒子翻轉(zhuǎn)效應(yīng)的實現(xiàn)成本更低,評估速度更快,更適合用于快速評估集成電路對單粒子翻轉(zhuǎn)效應(yīng)的敏感程度。具體實現(xiàn)方式主要有FPGA重配置注入故障,掃描鏈注入故障和旁路電路注入故障3種。FPGA重配置注入故障是基于FPGA的重配置功能,在運行過程中,動態(tài)修改FPGA的配置信息以實現(xiàn)注入故障。掃描鏈注入故障是復(fù)用可測性設(shè)計的掃描鏈結(jié)構(gòu),將故障寫至掃描鏈的入口,控制掃描鏈的數(shù)據(jù)進行串行移動,將故障準確寫入待評估的寄存器中。旁路電路注入故障的實現(xiàn)原理和掃描鏈注入故障的實現(xiàn)原理類似,也是在原有的電路結(jié)構(gòu)上添加附加電路,然后對電路注入故障以模擬單粒子翻轉(zhuǎn)效應(yīng),但是消除了掃描鏈注入故障速度慢的缺點。

FPGA重配置注入故障、掃描鏈注入故障和旁路電路注入故障由于實現(xiàn)方式不一樣,在評估速度、敏感點定位精度和使用電路規(guī)模等性能上也各有優(yōu)劣。本文總結(jié)了FPGA重配置注入故障技術(shù),討論了掃描鏈注入故障技術(shù),描述了旁路電路注入故障技術(shù),對比了3種注入故障技術(shù)并對各類技術(shù)的發(fā)展方向進行了展望。

2 FPGA重配置注入故障

FPGA的配置信息包含了各類邏輯資源的配置狀況、電壓標準、連線情況和用戶設(shè)計的使用情況[14]。借助配置控制指令,即可通過專用的配置讀寫接口(Internal Configuration Access Port,ICAP)訪問FPGA的配置信息[15];同時也能將其中某一位數(shù)據(jù)進行翻轉(zhuǎn)(如0到1或1到0),再把修改后的配置信息寫回FPGA以實現(xiàn)故障注入;最后持續(xù)讀取配置信息還可監(jiān)控故障注入后對電路造成的影響。

基于重配置的故障注入流程如圖1所示,按照配置范圍的大小,F(xiàn)PGA重配置技術(shù)可以進一步分為全局重配置和部分重配置[16-17]。全局重配置對整個FPGA芯片進行重新配置。在配置過程中,F(xiàn)PGA由于原始配置信息被清除而處于非正常工作狀態(tài),直到配置信息重新完整寫入,F(xiàn)PGA才能正確工作。因此,從時間軸上看,F(xiàn)PGA工作是不連續(xù)的。全局重配置的優(yōu)勢在于配置過程的實現(xiàn)十分簡單,不需要分析待測電路所使用的硬件資源,同時其電路評估速度比軟件仿真要快幾個數(shù)量級。

圖1 基于重配置的故障注入流程

全局重配置的方式也存在重大缺陷,由于每次故障注入時都需要重新配置全部信息,會引入一定的時間開銷,而且時間開銷和配置信息的大小成正比。以Xilinx Zynq 7020為例,配置文件的大小為32.5 Mbit,在工作頻率為100 MHz時,單次配置全部配置信息所需時間為32 ms[18];如果對32.5 Mbit里每個比特位均進行一次故障注入測試,總計時間為284 h。

部分重配置則克服了以上缺陷,可選擇部分配置信息進行重配置,未重配置的電路不受影響,對應(yīng)的功能仍然可以正常運作。由于部分重配置大幅減少了讀寫的配置信息,可顯著縮短重配置時間。文獻[19]使用Xilinx Virtex系列FPGA作為測試平臺,當以全局重配置模式對電路注入故障時,完成單次配置需要169.738 ms。而如果只修改和待測電路相關(guān)的8 frame配置信息,僅需0.424 ms。此外,對于FPGA設(shè)計的電路,F(xiàn)PGA的利用率一般不會達到100%,未使用的空閑配置位無需被注入故障,這可以進一步減少時間開銷[20]。

基于重配置的故障注入技術(shù)的主要優(yōu)勢是基于FPGA的內(nèi)部功能實現(xiàn),因此不會對待測電路造成影響,不會產(chǎn)生額外的硬件資源開銷,實現(xiàn)成本極低,可適用于大規(guī)模電路,且電路評估速度也較為理想。但也存在不足之處,主要體現(xiàn)在3個方面。其一是待評估的FPGA必須具備重配置功能,限制了FPGA硬件的選擇范圍。其二是每次執(zhí)行故障注入時,需要訪問、修改和重寫配置信息,使得上位機和待評估FPGA之間會進行大量的數(shù)據(jù)交互,相對于FPGA電路的運行時間,交互過程產(chǎn)生的時間開銷要高的多。以Xilinx Virtex系列FPGA為例,理論上配置全部比特位所需時間為9.9 ms,但實際通過計算機并口傳輸配置數(shù)據(jù)的過程需要20 s[21]。部分重配置減少了信息交互的數(shù)據(jù)量,提高了評估效率,但整體測試的時間開銷中數(shù)據(jù)交互過程仍占有較大比例。其三是主流FPGA的配置信息是加密的,雖然FPGA重配置技術(shù)能夠在電路中注入故障,但是電路出現(xiàn)故障后,由于無法解析主流FPGA的配置信息,所以很難定位到具體的電路節(jié)點,給加固設(shè)計帶來了困難。

3 掃描鏈注入故障

掃描鏈源于可測性設(shè)計。在可測性設(shè)計中,首先將寄存器替換為掃描寄存器,然后將多個掃描寄存器相連以形成掃描鏈結(jié)構(gòu),最后以移位寄存器的工作方式將測試激勵寫入掃描鏈的首端,或者將測試響應(yīng)從掃描鏈的末端讀出[22-23]。掃描寄存器的常規(guī)結(jié)構(gòu)如圖2所示,可視作在普通寄存器結(jié)構(gòu)上添加了一個2選1數(shù)據(jù)選擇器。掃描寄存器有兩個工作模式,工作模式的切換由信號Scan_en決定。當Scan_en不使能時,掃描寄存器為正常工作模式,此時功能等同于常規(guī)的D寄存器,采樣輸入端D的電平并輸出。當Scan_en使能時,寄存器切換為掃描模式,此時可通過Scan_in輸入故障數(shù)據(jù)以模擬單粒子翻轉(zhuǎn)效應(yīng)[24]。

圖2 掃描寄存器的結(jié)構(gòu)

將當前掃描寄存器的輸出端Q和下一級掃描寄存器輸入端Scan_in連接起來,就構(gòu)成了掃描鏈。掃描鏈結(jié)構(gòu)如圖3所示,基于掃描寄存器的結(jié)構(gòu)和工作原理可推導(dǎo)出,Scan_en不使能時,電路正常工作。Scan_en使能時,可以通過移位將故障數(shù)據(jù)串行輸入到任意寄存器的Scan_in端,最終實現(xiàn)對任意寄存器注入故障以模擬單粒子翻轉(zhuǎn)效應(yīng)。

圖3 掃描鏈結(jié)構(gòu)

在實現(xiàn)掃描鏈注入故障電路時,掃描鏈的結(jié)構(gòu)不是固定的,不同的掃描鏈電路產(chǎn)生的資源開銷和故障注入速度也不同。文獻[23]設(shè)計了3種不同的掃描鏈電路來實現(xiàn)故障注入,其中開銷最大的電路和開銷最小的電路資源開銷相差近3倍,但單次故障注入時間減少了數(shù)微秒,雖然速度區(qū)別不大,但在大規(guī)模電路測試中能節(jié)約的時間開銷極為可觀。因此測試人員可根據(jù)測試平臺提供資源(寄存器和數(shù)據(jù)選擇器等)的大小和實際可達到的注入速度權(quán)衡使用合適的掃描鏈電路。

掃描鏈技術(shù)的優(yōu)勢在于可適用于任意規(guī)模電路的測試,也可用于ASIC電路的評估,同時不受FPGA測試平臺的限制。故障注入速度最快可達到微秒級別,相對于重配置技術(shù)有了進一步的提高。由于掃描鏈的插入對象可以是任意觸發(fā)器,因此故障注入后電路敏感節(jié)點的定位精度也較高。其最主要的缺陷是會產(chǎn)生額外的資源開銷,且額外開銷會隨著電路規(guī)模的增大而增加。此外,為了能夠正確定位電路對單粒子翻轉(zhuǎn)效應(yīng)的敏感區(qū)域,串行移位時鐘的頻率還不能較高,這樣使得掃描鏈串行移位的時間開銷顯得頗為可觀,需要在掃描鏈長度和評估速度上做出折衷。

最后,值得指出的是,掃描鏈技術(shù)在故障數(shù)據(jù)傳輸過程中存在和重配置技術(shù)一樣的問題。文獻[24]中提到所設(shè)計掃描鏈的單次故障注入速度為1μs左右,但受串口傳輸?shù)南拗?,每次故障激勵?shù)據(jù)的下發(fā)需要3.84 ms,因此接口的傳輸速率成為制約速度的主要因素。文獻[22]中每次注入故障時需要主機和FPGA進行故障數(shù)據(jù)交互過程,頻繁地通信導(dǎo)致故障注入速度偏慢。文獻[23]針對數(shù)據(jù)通信過程進行了優(yōu)化,將測試電路所需的故障激勵數(shù)據(jù)一次性全部發(fā)送到FPGA的存儲區(qū),隨后FPGA內(nèi)部自動執(zhí)行全部測試過程,主機和FPGA只需在起始階段通信一次,減小了數(shù)據(jù)通信的時間開銷,故障注入速度相對于文獻[22]提高了2個數(shù)量級。

4 旁路電路注入故障

旁路電路技術(shù)的實現(xiàn)原理和掃描鏈技術(shù)類似,在原有的電路結(jié)構(gòu)上添加附加電路來使電路能夠模擬SEU效應(yīng)[25-26]。以寄存器為例,在正常狀態(tài)下寄存器保持其原本的功能,在故障注入模式下通過外部控制信號驅(qū)動附加電路從旁路修改寄存器的數(shù)值。

文獻[27]介紹了一種旁路電路注入故障的電路結(jié)構(gòu),基于Xilinx Virtex-5的FPGA實現(xiàn),帶旁路電路的寄存器結(jié)構(gòu)如圖4所示。該電路在原本的寄存器結(jié)構(gòu)上添加了3個查找表(Look-Up-Table,LUT)和額外的輸入信號,修改寄存器的復(fù)位信號SR(Set/Reset)和翻轉(zhuǎn)信號REV(REVerse)的輸入值來實現(xiàn)故障注入功能。默認模式下寄存器對應(yīng)的真值表如表1所示。

表1 默認模式寄存器真值表

圖4中,輸入信號inj為故障注入使能信號,Original_CE、Original_R和Original_S分別連接寄存器原始的時鐘使能CE、復(fù)位Reset和置位Set信號。如果inj為0,該寄存器等同于普通的寄存器,而inj為1時,3個查找表就會根據(jù)寄存器的輸出值Q生成相反的值并寫入寄存器。

圖4 帶旁路電路的寄存器結(jié)構(gòu)

文獻[28]的電路修改方式更加簡單,僅在原始寄存器結(jié)構(gòu)上增加了一個異或門。替換前后的寄存器結(jié)構(gòu)如圖5所示。當故障注入信號Inject信號為高電平時,寄存器的輸入端數(shù)據(jù)會發(fā)生翻轉(zhuǎn),而Inject信號為低電平時,寄存器的輸入端數(shù)據(jù)保持原始狀態(tài)。和文獻[27]相比,區(qū)別在于故障注入時,文獻[28]的寄存器數(shù)值一定會進行翻轉(zhuǎn),而文獻[27]則可以模擬更加復(fù)雜的情況,因為單粒子翻轉(zhuǎn)效應(yīng)在作用于寄存器時有固定0、固定1和翻轉(zhuǎn)3種情況,并不一定會導(dǎo)致翻轉(zhuǎn)。但是,文獻[28]的電路結(jié)構(gòu)的資源開銷比文獻[27]小得多,具備一定的優(yōu)勢。

圖5 替換前后的寄存器結(jié)構(gòu)

文獻[29-30]介紹了另一種旁路電路的實現(xiàn)方式,通過對電路綜合后的網(wǎng)表進行修改,將原有的器件庫全部替換成為附加故障注入功能的器件庫,其中包括寄存器、隨機存取存儲器(Random Access Memory,RAM)、查找表、邏輯門以及乘法器等,更新后的網(wǎng)表的時序邏輯部分不會受到影響,只是添加了故障注入相關(guān)的組合邏輯模塊。但其實現(xiàn)過程較為復(fù)雜,器件庫的修改需要耗費大量的時間進行功能和時序驗證。同時器件庫和FPGA型號是緊密聯(lián)系的,更替FPGA芯片將可能導(dǎo)致器件庫無法使用,因此遷移性較差。

和掃描鏈技術(shù)相比,旁路電路技術(shù)省去了串行移位故障數(shù)據(jù)的過程,故障直接注入到待評估寄存器中,從而提高了故障注入速度。旁路電路同樣可適用于任意規(guī)模電路,而且可以針對電路中的其他存儲元件(LUT、RAM等)設(shè)計故障電路,適用范圍更廣,故障敏感節(jié)點的定位精度也高于掃描鏈。其主要缺陷會帶來額外的資源開銷,此外還可能增加關(guān)鍵路徑的延時,對時序造成負面影響。

除了故障注入速度的差異,文獻[31]同樣提到了數(shù)據(jù)交互過程造成的龐大時間開銷,文中基于RS232傳輸故障激勵數(shù)據(jù),傳輸速度配置為115 kbit/s,單次數(shù)據(jù)傳輸過程需花費14 ms,而故障注入執(zhí)行過程僅占2 ms,因此導(dǎo)致故障注入速度偏慢。

5 故障注入方式對比和展望

5.1 故障注入方式對比

FPGA模擬技術(shù)主要用于評估超大規(guī)模集成電路設(shè)計對單粒子翻轉(zhuǎn)效應(yīng)的敏感性。因此本文從評估速度、電路開銷和敏感點定位精度3個方面進行對比,故障注入方式具體性能對比如表2所示。

表2 故障注入方式性能對比

FPGA模擬技術(shù)中的重配置技術(shù)存在速度瓶頸,雖然通過部分重配置可以顯著提高效率,但是與修改電路結(jié)構(gòu)的方式相比較,重配置技術(shù)故障注入速度稍慢。若基于掃描鏈去實現(xiàn),其串行移位的故障注入模式會帶來一定的時間開銷。而旁路電路方式可使得電路即時響應(yīng)故障,不會產(chǎn)生額外的時間開銷。

在電路開銷方面,由于重配置所需要的硬件電路都固化在FPGA芯片內(nèi)部,所以額外需要的電路開銷是最小的??紤]到掃描鏈可以復(fù)用可測性設(shè)計的掃描鏈結(jié)構(gòu),所以電路開銷稍低。電路開銷最大的是旁路電路,因為每個寄存器外圍都需要配備譯碼選通電路和故障注入電路,但是隨著FPGA的技術(shù)開發(fā),單LUT電路能夠?qū)崿F(xiàn)的功能愈加復(fù)雜,其占用的電路開銷比例也可以不斷下降。

在敏感點定位精度上,由于配置文件格式不公開,多數(shù)研究采取隨機注入或是遍歷式注入,但是注入故障后難以在最初的原始設(shè)計文件中定位故障節(jié)點,這對評估工作非常不友好,難以指導(dǎo)后續(xù)的改進工作。由于掃描鏈是串行結(jié)構(gòu),定位需要依賴輸入激勵和輸出響應(yīng)的先后順序,這會和評估速度形成互相制約的關(guān)系。因為如果注入速度過快,對準確采樣高速輸出響應(yīng)的工作會提出很高的要求。旁路電路由于具有專用接口電路,因此即使在高速注入情況下,也能準確定位注入故障的位置。

5.2 故障注入方式展望

重配置、掃描鏈和旁路電路3種方法的實現(xiàn)結(jié)構(gòu)不一樣,優(yōu)化的思路也會有所不同。

重配置在評估速度上表現(xiàn)不佳,主要是由于上位機和FPGA之間頻繁通信造成較大的時間開銷。如何讓測試激勵以更快的速度配置到FPGA中是未來的提高方向。采用DDR緩存測試激勵,以及采用類似Xilinx ZYNQ架構(gòu)的芯片作為測試平臺,都是可行的方式。在確定注入故障定位上,可行的思路有對比配置文件格式和配置后器件位置,對配置文件進行破解。但是需要按照電路版圖結(jié)構(gòu)從大到小逐次解析,并區(qū)分LUT、RAM等多種存儲元件,工作量比較龐大[32],所以重配置技術(shù)的改善工作更適合FPGA設(shè)計廠商實施。

在有可測性設(shè)計的電路中,掃描鏈技術(shù)是非常合理的選擇。但是,為了提高測試效率,如何壓縮測試激勵的數(shù)量,以及測試響應(yīng)的高效對比,是掃描鏈技術(shù)未來的發(fā)展方向。此外,掃描鏈的電路結(jié)構(gòu)也可以進行一定的優(yōu)化,主要在提高運行速度和降低開銷兩方面進行針對性的改進,擴充可測性設(shè)計的研究范疇。

旁路電路的改進方向是進一步壓低電路開銷。這方面可以考慮相鄰電路之間復(fù)用故障注入電路,從而降低電路開銷。需要注意的是,旁路電路往往和測試平臺的器件庫密切相關(guān),所以未來在設(shè)計電路時可以將電路修改方式設(shè)計成通用腳本,通過算法和器件庫建立聯(lián)系,從而增加其適用范圍。

此外,由于3種方案的優(yōu)勢各不相同,未來的評估平臺也可以結(jié)合多種方式。比如可利用旁路電路故障注入的準確性彌補重配置技術(shù)的精度缺陷,提高注入速度,同時也可以通過重配置技術(shù)避免旁路電路相關(guān)故障注入模塊的資源開銷。這樣不僅平臺的評估效率有所提高,評估電路的適用范圍也變得更加廣泛。

6 總結(jié)

隨著集成電路工藝邁入納米時代,現(xiàn)有FPGA模擬技術(shù)面臨的最大挑戰(zhàn)是待評估電路規(guī)模過于龐大導(dǎo)致評估時間大幅增加。如何在設(shè)計資源允許的情況下,盡可能提高模擬SEU效應(yīng)的故障注入速度,并盡可能確定待評估電路中SEU敏感區(qū)位置,是FPGA模擬SEU效應(yīng)的重要研究方向。從上述內(nèi)容可以看出,重配置、掃描鏈和旁路電路技術(shù)假以時日,均能在評估速度、電路開銷和定位精度等性能指標上取得進展,使之更適合用于評估超大規(guī)模集成電路設(shè)計對單粒子翻轉(zhuǎn)效應(yīng)的敏感性。

猜你喜歡
故障注入寄存器粒子
模擬訓(xùn)練裝備故障注入系統(tǒng)研究
Lite寄存器模型的設(shè)計與實現(xiàn)
SM4算法前四輪約減輪故障注入分析
采用修改-回放原理的1553B故障注入方法
基于粒子群優(yōu)化的橋式起重機模糊PID控制
基于粒子群優(yōu)化極點配置的空燃比輸出反饋控制
分簇結(jié)構(gòu)向量寄存器分配策略研究*
列車MVB總線故障注入研究
基于Matlab的α粒子的散射實驗?zāi)M
物理與工程(2014年4期)2014-02-27 11:23:08
基于兩粒子糾纏態(tài)隱形傳送四粒子GHZ態(tài)
公安县| 淳化县| 新巴尔虎左旗| 仲巴县| 文昌市| 商都县| 越西县| 顺义区| 桐庐县| 彭山县| 延长县| 临猗县| 保靖县| 惠州市| 炉霍县| 墨玉县| 龙胜| 竹北市| 翼城县| 玉门市| 沐川县| 贵溪市| 望江县| 伊宁市| 保靖县| 张家口市| 白朗县| 石渠县| 呼伦贝尔市| 麻栗坡县| 新津县| 迁安市| 潍坊市| 华坪县| 芷江| 宁强县| 宝清县| 松滋市| 胶南市| 邯郸市| 卢氏县|