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