基于FPGA的TMR方法改進策略
基于SRAM的FPGA對于空間粒子輻射非常敏感,很容易產生軟故障,所以對基于FPGA的電子系統采取容錯措施以防止此類故障的出現是非常重要的。三模冗余(TMR)方法以其實現的簡單性和效果的可靠性而被廣泛用于對單粒子翻轉(SEL7)進行容錯處理。但傳統TMR方法存在系統硬件資源消耗較多且功耗較大等問題??偨Y了傳統TMR方法存在的問題,分析了一些近年來出現的改進的TMR方法的優劣,針對其存在問題指出了改進策略,并展望了TMR技術的發展趨勢。
本文引用地址:http://www.j9360.com/article/150248.htm 引言
軟故障是是由粒子和PN結相互作用引起的一種暫態故障,軟故障對在基于SRAM的FPGA上實現的電路具有特別嚴重的影響。由于三模冗余(Triple Modular Redundancy,TMR)技術簡單性以及高可靠性,它是一個被廣泛使用的針對于FPGA上的單粒子翻轉(Single-Event Upset,SEU)的容錯技術。文獻中表明TMR大幅度提高了FP-GA在SEU影響下的可靠性。盡管TMR能有效提高設計的可靠性,但是由于要實現額外的模塊與布線,它對硬件資源以及功耗消耗較大,而且工作速度也受到影響。這都限制了傳統TMR的使用。隨著電子技術特別是部分可重構技術發展,出現了多種改進的TMR技術,它們都針對性地解決了傳統TMR方法所存在的問題,使得TMR技術得到發展。本文首先介紹了傳統TMR的原理,接著總結了其所存在的問題,然后對改進的TMR技術的優劣進行了全面的分析,最后對TMR技術發展趨勢進行了展望。
1 常規TMR方法及存在的問題
TMR的基本概念是用三個相同的模塊分別實現相同的功能,最后在輸出口通過一個多數表決器對數據進行選擇以實現容錯的目的。TMR的使用是建立在某一個時刻錯誤只出現在一個模塊里的基礎上,而實際上,因為在不同的模塊里同時出錯的概率是比較低的,而且實現過程直接、簡單,所以TMR是現在比較有效且被大量使用的一種容錯的方法。TMR主要被廣泛用于防止由輻射引起的SEU對系統的影響,由于它的使用使FPGA在SEU影響下的可靠性得到很大提高。常規TMR方法的基本結構如圖1所示。
盡管TMR可以有效提高設計的可靠性,但是它也存在很多不足之處。主要有以下幾點:
(1)它不能對出錯的模塊進行修復。當一個模塊出錯后,我們只是將錯誤通過多數表決器屏蔽,但是錯誤模塊仍然存在。而且一般的TMR也不能對錯誤進行檢測和定位,以便系統進行修復。如果出現的錯誤得不到及時修復,那么當再次出現錯誤時TMR將失效。
(2)很多研究只是考慮到單個錯誤的影響,而忽略了多個SEU同時出現的可能,盡管出現這種情況的概率較低,但卻是存在的。實驗也表明TMR對減弱單個SEU產生的影響是非常有效的,但SEU在配置存儲器中積累會使效果降低。
(3)普通TMR資源開銷大,資源利用率低。普通TMR是對整個設計或者較大的模塊進行三模冗余,粒度比較大,它的資源開銷相比原始電路增大200%。如果受到FPGA硬件資源和功耗等設計約束的限制不能對整個電路或者模塊實現TMR,那么會造成資源浪費。
(4)由于電路的倍增使得功耗增大,而且由于表決器的存在以及其他一些額外的布線使得速度降低。
(5)表決器本身也可能出錯,而一般的TMR的表決器沒有自檢錯能力,也不具備抗輻射能力。
(6)當采用三模冗余的電路驅動沒有采用冗余的電路時,需要一個表決器將三個信號合為一個信號。當沒有采用冗余的電路驅動采用三模冗余的電路時需要通過額外的布線將一路信號擴展稱為三路信號。因為邏輯電路和布線資源都對SEU敏感,所以這樣的結果會降低系統可靠性。
評論