基于動態(tài)可重構(gòu)FPGA的容錯技術(shù)研究
摘要:針對重構(gòu)文件的大小、動態(tài)容錯時隙的長短、實現(xiàn)的復(fù)雜性、模塊間通信方式、冗余資源的比例與布局等關(guān)鍵問題進(jìn)行了分析。并對一些突出問題,提出了基于算法和資源多級分塊的解決方法,闡述了新方法的性能,及其具有的高靈活性高、粒度等參數(shù)可選擇、重構(gòu)布線可靠性高、系統(tǒng)工作頻率有保障的優(yōu)點。
關(guān)鍵詞:容錯;動態(tài)重構(gòu);Retiming;STARs
太空中存在大量的宇宙射線和高能帶電粒子,它們對星載電子系統(tǒng)的照射會導(dǎo)致系統(tǒng)出錯,甚至永久損壞。其所造成的輻射效應(yīng)主要有位移損傷效應(yīng)、電離輻射總劑量效應(yīng)、瞬時電離輻射效應(yīng)、單粒子效應(yīng)等。而且由于器件集成度高,每個記憶單元的尺寸小,引起翻轉(zhuǎn)所需的臨界電荷也小,所以SEU的問題在空間器件上越來越嚴(yán)重。
現(xiàn)場可編程門陣列(FPGA,F(xiàn)ield Programmable Gate Array)靈活、可重構(gòu)的特性,對于克服器件設(shè)計錯誤和后天所導(dǎo)致的故障有效?;诳?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/動態(tài)可重構(gòu)">動態(tài)可重構(gòu)FPGA,動態(tài)容錯技術(shù)在理論上已得到發(fā)展,并出現(xiàn)了多種方法,其基本原理都是將備用的配置文件重新裝載到FPGA上,以消除原有的暫態(tài)錯誤或者繞過故障區(qū)。
但在實際應(yīng)用過程中涉及到許多問題。容錯粒度的大小選擇,是其中較突出的一個,這會影響到重構(gòu)文件的大小、動態(tài)容錯時隙的長短、資源利用率、實現(xiàn)的復(fù)雜度等方面。另外模塊間通信方式、檢錯與定位的實現(xiàn)、冗余資源的比例與布局、暫態(tài)與永久錯誤的處理與分析都是有待深入研究的問題,很多方法過于復(fù)雜不容易實現(xiàn)或者過于簡單而容錯性能得不到保障,并且對以上這些問題分析不充分。
本文基于多種具體的實現(xiàn)方法,對這些問題進(jìn)行了全面的分析與研究,并權(quán)衡各個方面,提出了基于算法和資源多級分塊的方法,對其性能進(jìn)行了分析。
這種方法中粒度、冗余資源比例等多項參數(shù)可以選擇,重構(gòu)時沒有模塊間布線的要求,能有效保障系統(tǒng)工作頻率。
1 基于動態(tài)可重構(gòu)FPGA的幾種容錯技術(shù)
1.1 基于Retiming理論的方法及分析
重定時(Retimg)技術(shù)的應(yīng)用是建立在容錯粒度較小的基礎(chǔ)上的一種容錯方法。它最初是針對靜態(tài)電路以優(yōu)化系統(tǒng)時鐘為目的,且在整個電路設(shè)計過程中只使用一次?,F(xiàn)在通過在FPGA中多次使用,改變觸發(fā)器的位置以及增減觸發(fā)器的數(shù)量可以達(dá)到重構(gòu)的目的,并保證整個系統(tǒng)的功能穩(wěn)定以及工作時序的協(xié)調(diào)。使用這種方法時,先根據(jù)約束條件生成一個Retiming矩陣,這個矩陣決定了觸發(fā)器(FF)可能的各種布局。當(dāng)電路出現(xiàn)故障時,通過調(diào)用矩陣的信息重新定位不同的FF以使電路恢復(fù)正常。
這種方法主要的特點就是不改變系統(tǒng)的功能而改變系統(tǒng)的結(jié)構(gòu)特性,重構(gòu)策略簡單。如果結(jié)合可進(jìn)化算法,處理器可以實時地計算得到有效的FF的重新布局?;赗etiming的實時重構(gòu)可以有效地降低暫態(tài)故障的影響,尤其是SEU。同時這種方法配置文件量比較小,粒度水平高,重構(gòu)過程系統(tǒng)開銷小。
但是由于這種方法對電路的重構(gòu)能力有限,所以容錯能力得到一定的限制,尤其對于永久故障則容錯率較低。其次,當(dāng)完成FF的重新配置后,電路需要一個初始化時間,這個時間隨著電路規(guī)模的增大而增大,當(dāng)電路的規(guī)模和復(fù)雜度增大時這種方式的重構(gòu)將導(dǎo)致較大的系統(tǒng)開銷,這樣電路規(guī)模受到限制并且對接口布線要求較高。圖1所示給出了以相關(guān)器為例的兩種可能的重構(gòu)結(jié)構(gòu),其中小方塊為FF。
1.2 基于STARs的方法及分析
基于移動自檢測區(qū)域(STARs)的動態(tài)容錯技術(shù),是一種基于FPGA的具有多種容錯級別的在線容錯技術(shù)。它不僅可以進(jìn)行邏輯工作區(qū)域的容錯,也可以進(jìn)行布線區(qū)域的容錯。
基于STARs的方法,F(xiàn)PGA被劃分為系統(tǒng)工作區(qū)和檢測區(qū),在檢測區(qū)中進(jìn)行內(nèi)建自測試。若當(dāng)前的被檢測區(qū)完成被檢測后STAR和相鄰工作區(qū)的Slice交換位置,這樣依次進(jìn)行,最終STAR可以覆蓋整個FPGA。其優(yōu)勢是,檢測診斷總是在STAR中進(jìn)行,不影響系統(tǒng)的工作,可以有充足的時間來進(jìn)行精確的診斷和生成針對故障區(qū)的配置文件,并實現(xiàn)冗余。
這種方法采用了動態(tài)系統(tǒng)時鐘的概念。系統(tǒng)初始工作在最大時鐘頻率下,當(dāng)部分重構(gòu)使得某些部分的延時增加,那么根據(jù)布線的時序分析結(jié)果,通過周期可編程的時鐘產(chǎn)生器降低時鐘頻率,以滿足系統(tǒng)工作要求。這克服了一般容錯方法中系統(tǒng)在整個壽命期工作在較低時鐘頻率下的缺點。
評論