新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于動態(tài)可重構(gòu)FPGA的容錯技術(shù)研究

基于動態(tài)可重構(gòu)FPGA的容錯技術(shù)研究

作者: 時間:2011-04-11 來源:網(wǎng)絡(luò) 收藏

基于STARs的方法主要是針對永久性錯誤,包括配置存儲器中的錯誤。STARs提供了一個相對于持續(xù)運(yùn)行的工作區(qū)的離線區(qū)域。通過的邊界檢測接口可以使STAR中測試文件的配置動態(tài)進(jìn)行而不影響系統(tǒng)工作。由于STARs的存在,工作區(qū)或者是連續(xù)的,或者是被STARs分割成不相連的區(qū)域,系統(tǒng)可以分別使用水平布線和垂直布線穿過V-STAR和H-STAR以實(shí)現(xiàn)通信。
這種方法采用了可編程邏輯塊(PLB)重用技術(shù)。PLB重用是指以一種沒有出錯的模式來使用出錯的PLB,即對在出故障的PLB中實(shí)現(xiàn)的功能來說這個PLB是沒有出故障的。這有兩種情況,一是故障PLB中的損壞部分并沒有參與實(shí)現(xiàn)這個PLB內(nèi)的功能單元,此時無需進(jìn)行重新配置。第二種情況的一個簡單例子是,當(dāng)一個LUT的某個存儲單元由于出錯而固定置為0,且這個LUT用來實(shí)現(xiàn)一個組合邏輯,而此組合邏輯的這個存儲單元恰要求被設(shè)置為0,那么這個錯誤就不需要進(jìn)行冗余。由于PLBs的重用,冗余資源的利用率得到提高,量增大,系統(tǒng)壽命得到延長。另外這還使得損壞的PLB利用較遠(yuǎn)距離的冗余資源來重構(gòu)而避開故障區(qū)的情況減少,所以,隨著故障區(qū)增多,系統(tǒng)的時鐘頻率不會明顯降低。
當(dāng)STAR位置改變時,系統(tǒng)時鐘必須停止以使STAR完成移動。系統(tǒng)時鐘停止時,系統(tǒng)的工作狀態(tài)必須被存儲,并在系統(tǒng)時鐘重新啟動前被復(fù)制到新的工作區(qū)域。從STAR離開當(dāng)前這個區(qū)域到下一次再檢測這個區(qū)域的時間內(nèi),工作區(qū)電路可能出錯,這個時間稱為最壞的錯誤駐留時間。雖然基于STARs的方法,檢測、診斷以及重構(gòu)過程在理論上可以不影響系統(tǒng)工作,然而這也是它的缺點(diǎn),不能對隨時出現(xiàn)的錯誤進(jìn)行。因此,必須考慮最壞的錯誤駐留時間,應(yīng)該提高檢測速度,而檢測速度的提高會使STARs的移動速度提高。這導(dǎo)致檢測區(qū)和工作區(qū)的交換頻率增加,進(jìn)而影響系統(tǒng)工作的連續(xù)性。
1.3 基于遺傳算法及設(shè)計(jì)空間搜索的方法與分析
在重構(gòu)容錯的過程中,由于技術(shù)的多樣性,同時會有多種可行的方案,而這很難通過人工來分析比較得到最優(yōu)的解決方法。同時設(shè)計(jì)好的系統(tǒng)中必須有足夠的存儲量來存儲針對不同故障的重構(gòu)文件。因此文獻(xiàn)提出了基于遺傳算法的空間搜索技術(shù)。
首先用硬件設(shè)計(jì)語言描述系統(tǒng)功能,當(dāng)設(shè)計(jì)完成后,對其實(shí)現(xiàn)功能進(jìn)行分析并產(chǎn)生一個向量圖,節(jié)點(diǎn)表示功能單元,有向線段代表他們之間的鏈接。同時,對源文件進(jìn)行綜合來識別其資源使用量(包括Slice數(shù)量,塊RAN數(shù)量等)和各個功能單元的特征,最終形成一個功能單元庫。這個庫里面也包含一些標(biāo)準(zhǔn)器件和一些基本單元。另外在設(shè)計(jì)過程中還需要生成以下3個庫:
器件特征庫:存儲對特征的描述,包括可用資源容量,基本重構(gòu)單元大小,重構(gòu)區(qū)域形狀約束。
技術(shù)庫:包含了部分重構(gòu)技術(shù)的模型。
參數(shù)庫:包含一些指導(dǎo)重構(gòu)過程并衡量重構(gòu)效果的參數(shù)。
系統(tǒng)工作時,先將原功能模塊分成不同的組。然后根據(jù)參數(shù)要求在每一組內(nèi)使用在技術(shù)庫里選擇的方法。遺傳算法用來產(chǎn)生不同的可行的染色體,而染色體代表不同的處理方法。這種算法與TMR結(jié)合的例子如圖4所示。

本文引用地址:http://m.butianyuan.cn/article/191243.htm

e.JPG

f.JPG


基于遺傳算法的設(shè)計(jì)空間搜索方法需要設(shè)計(jì)者在前期作出大量工作,例如,遺傳算法的設(shè)計(jì),約束條件以及各庫的形成。其中遺傳算法的設(shè)計(jì)和參數(shù)設(shè)定是關(guān)鍵,同時系統(tǒng)需要較強(qiáng)的計(jì)算能力,系統(tǒng)開銷較大。不過其所需配置文件存儲量較小,解決方法多樣,能產(chǎn)生出最優(yōu)的解決方案。而且基于硬件遺傳算法具有廣闊的應(yīng)用前景。

2 基于算法和資源多級分塊的容錯結(jié)構(gòu)
2.1 方法的提出
動態(tài)容錯粒度的選取是一個關(guān)鍵問題,如果粒度過小,則對錯誤的檢測定位能力要求較高,而且配置文件復(fù)雜,如果在線生成配置文件,則需要較強(qiáng)的系統(tǒng)計(jì)算能力,這顯然會增大系統(tǒng)的開銷,破壞系統(tǒng)的連續(xù)性,而且布線復(fù)雜。如果粒度過大,那么冗余資源的利用率降低,配置文件增大,這削弱了系統(tǒng)的容錯能力,且需要較大的存儲資源。另外,對冗余資源比例的選擇必須要考慮到系統(tǒng)布線難度,而布線所造成的延遲是不可預(yù)知的,所以系統(tǒng)工作頻率也難以保證。上面這幾種方法粒度水平不易改變,布線難度大,系統(tǒng)時鐘性能不高,而且后兩種實(shí)現(xiàn)難度較大。
現(xiàn)在采取算法和資源多級分塊的方法進(jìn)行系統(tǒng)的容錯??梢栽诓桓姆椒ǖ那闆r下,通過對算法和資源不同次數(shù)、不同大小的劃分達(dá)到不同的粒度水平,進(jìn)而滿足容錯需要。因?yàn)橐运惴K為單位進(jìn)行重構(gòu),且保證重構(gòu)前后模塊之間接口不變,那么模塊外部無需重新布線,這樣就削減了容錯時系統(tǒng)開銷,不會降低時鐘頻率。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉