4
旁路電路注入故障
旁路電路技術(shù)的實現(xiàn)原理和掃描鏈技術(shù)類似,在原有的電路結(jié)構(gòu)上添加附加電路來使電路能夠模擬單粒子翻轉(zhuǎn)效應(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)故障注入功能。默認(rèn)模式下寄存器對應(yīng)的真值表如表1所示。
表1 默認(rèn)模式寄存器真值表
圖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所示。當(dāng)故障注入信號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)勢。
文獻[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)鍵路徑的延時,對時序造成負(fù)面影響。
除了故障注入速度的差異,文獻[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ù)的改進工作。由于掃描鏈?zhǔn)谴薪Y(jié)構(gòu),定位需要依賴輸入激勵和輸出響應(yīng)的先后順序,這會和評估速度形成互相制約的關(guān)系。因為如果注入速度過快,對準(zhǔn)確采樣高速輸出響應(yīng)的工作會提出很高的要求。旁路電路由于具有專用接口電路,因此即使在高速注入情況下,也能準(zhǔn)確定位注入故障的位置。
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é)合多種方式。比如可利用旁路電路故障注入的準(zhǔn)確性彌補重配置技術(shù)的精度缺陷,提高注入速度,同時也可以通過重配置技術(shù)避免旁路電路相關(guān)故障注入模塊的資源開銷。這樣不僅平臺的評估效率有所提高,評估電路的適用范圍也變得更加廣泛。
6
** 總 結(jié) **
隨著集成電路工藝邁入納米時代,現(xiàn)有FPGA模擬技術(shù)面臨的最大挑戰(zhàn)是待評估電路規(guī)模過于龐大導(dǎo)致評估時間大幅增加。如何在設(shè)計資源允許的情況下,盡可能提高模擬單粒子翻轉(zhuǎn)效應(yīng)的故障注入速度,并盡可能確定待評估電路中SEU敏感區(qū)位置,是FPGA模擬單粒子翻轉(zhuǎn)效應(yīng)的重要研究方向。從上述內(nèi)容可以看出,重配置、掃描鏈和旁路電路技術(shù)假以時日,均能在評估速度、電路開銷和定位精度等性能指標(biāo)上取得進展,使之更適合用于評估超大規(guī)模集成電路設(shè)計對單粒子翻轉(zhuǎn)效應(yīng)的敏感性。
-
FPGA
+關(guān)注
關(guān)注
1620文章
21510瀏覽量
598956 -
電路
+關(guān)注
關(guān)注
171文章
5747瀏覽量
171205 -
寄存器
+關(guān)注
關(guān)注
31文章
5253瀏覽量
119206
發(fā)布評論請先 登錄
相關(guān)推薦
評論