?

片上網絡故障模型及容錯設計方法合理性分析

2015-12-16 08:03黃樂天周在龍王君實李廣軍
電子技術應用 2015年10期
關鍵詞:數據包路由鏈路

黃樂天,周在龍,王君實,李廣軍

(1.電子科技大學,四川 成都 611731;2.華北計算機系統工程研究所,北京 100083)

片上網絡故障模型及容錯設計方法合理性分析

黃樂天1,周在龍2,王君實1,李廣軍1

(1.電子科技大學,四川 成都 611731;2.華北計算機系統工程研究所,北京 100083)

結合片上網絡的硬件實現結構和先進工藝集成電路物理效應對片上網絡存在的故障行為進行分析。進而對現的多種故障模型合理性進行了深入探討,指出了其存在的缺陷及問題。在此基礎上從故障產生的成因出發,對面向片上的容錯多種設計方法進行了檢討和反思。通過本文的分析可以看出,需要在結合其自身硬件結構的基礎上深入分析物理效應所引起的故障行為,才能有針對性的設計出真正高效、可靠的片上網絡。

片上網絡;容錯設計;可靠性

0 引言

以 2000年由瑞典皇家理工學院 Hemani、Janstch等人首先在論文中明確定義了“Network on Chip”的概念為標志[1],片上網絡正式成為一個研究領域已經 15年了。自該領域誕生之初起,片上網絡的可靠性設計就被作為一個重要問題被各國研究者所重視。Benini和Micheli分析了片上通信網絡的分層模型并且給出了每層模型應該具備的功能時,明確提出了可靠性設計的需求[2]。片上網絡的可靠性問題隨著集成電路工藝的進步和片上網絡互聯規模的擴大變得日趨嚴重。一方面集成電路工藝在向納米級演進的過程中,由于加工精度、功耗密度、集成規模等因素而導致工藝誤差、老化、單粒子翻轉等問題日益嚴重,從而導致器件的故障概率極大增加。另一方面隨著片上網絡規模的擴大而導致的總元件數量的上升,導致片上網絡中故障發生的總量急劇上升。因此通過合理的容錯設計方法提升片上網絡的可靠性成為片上網絡進一步發展過程中繞不開的一大難題。

集成電路的故障類型依據其發生頻率和產生條件可以劃分為臨時性故障(Transient Fault)、間歇性故障(Intermittent Fault)以及永久性故障(Permanent Fault)三類[3]。參考文獻[4]中總結了多種不同的物理效應和三類故障的對應關系。臨時性故障主要由于孤立事件翻轉(Single Event Upset,SEU和 Single Event Transient,SET)以及電子系統內部噪聲引起。此類故障的主要特點是臨時出現且發生位置隨機分布,與外界環境和工作條件關系不大。與臨時性故障相對應的是永久性故障,主要由工藝誤差、老化、電遷移等原因引起的元器件損傷造成。永久性故障一旦發生將永久存在,且故障的總量將隨著集成電路使用時間的增加而持續增大。永久故障的位置分布有一定的隨機性,但由老化、電遷移等原因引起的永久性故障則在一定程度上受溫度、功耗密度等內外部環境因素的影響。間歇性故障介于臨時性故障和永久性故障之間,主要是由于不同因素而導致的時序問題而誘發。雖然某些因老化等因素導致的間歇性故障會隨著集成電路使用時間的增加而退化為永久性故障,但更多的間歇性故障則是由于特定時刻串擾(Crosstalk)、溫度變化(Temperature Variation)、電壓緊急(Voltage Emergency)等內外部環境因素造成的時序問題而引發。因而這些時序問題發生的時間和概率雖然也呈現出一定的隨機性,但卻更容易發生在集成電路中關鍵路徑(Critical Path)和受環境因素影響更大的區域。由于間歇性故障和臨時性故障均不會持續發生,在以往的一些研究中通常將其歸為一類故障加以研究[5]。但隨著集成電路工藝的進步和低壓/近閾值集成電路設計方法的興起,間歇性故障由于其發生概率極大提升而成為了一個重要問題[6],近年來針對這類故障的研究明顯增加。

由于集成電路故障成因和類型的研究大多屬于器件和工藝層面的研究內容,在研究容錯設計時通常需要根據設計目標的特點將其抽象為特定的故障模型以便深入研究。在抽象的過程中將不可避免地簡化故障的某些特征,而不合理的特征取舍可能導致基于此模型的容錯設計研究出現偏差,進而設計出容錯效率較低的硬件結構或出現過度設計(Over Design)。對于片上網絡而言,故障可以在數據鏈路層、網絡層和傳輸層分別被抽象為不同的模型。數據鏈路層主要將故障抽象為鏈路上信號的阻塞(Stuck-at)和翻轉(Upset)[7]。網絡層的故障模型主要為自適應容錯路由研究服務,傳統上將故障劃分為鏈路故障和路由器故障[8]。在傳輸層的故障模型則主要是考慮數據包內容錯誤或完全丟失[9]。這些模型在很大程度上降低了容錯設計的復雜度,但相應的也隱藏了一些關鍵特性。但更為嚴重的是,這些模型大多直接借鑒傳統的計算機/通信網絡故障模型,對片上網絡的特異性沒有給予足夠的體現。造成這種情況的部分原因是因為片上網絡在研究的初期大多以架構設計、拓撲分析、路由算法研究等相對高層次的研究為主,與之相伴的容錯設計研究也大多采用相對粗糙的模型。

隨著片上網絡研究的全面成熟和片上多核技術的普及,片上網絡已經從系統結構設計層面轉向實現與應用層面。自2007年Tilera公司推出了基于片上網絡互聯結構的 64核處理器Tile64[10]起,基于片上網絡的多核處理器芯片日漸增多。多倫多大學ABDELFATTAH M S等人于2014年發布了面向現場可編程門陣列 (FPGA)的嵌入式片上網絡[11]則標志著片上網絡開始被用于多核處理器芯片以外其他類型的芯片中。而在這一過程中片上網絡的實現結構也日益明確,多數關鍵模塊的實現形式已有一些基本定論。因此我們有條件重新思考在當前和未來集成電路工藝條件下片上網絡故障模型的合理性,從而得到更加合理、可行、適用的故障模型,為進一步提升容錯設計的容錯效率并減少過度設計帶來的額外開銷奠定基礎。同時正確地分析導致故障行為的物理效應,也將有助于設計合理的容錯方案。本文將分別對現有片上網絡故障模型和容錯設計方法的合理性進行初步分析,為從事片上網絡容錯設計的相關研究者提供參考。

1 片上網絡故障模型合理性分析

傳統的片上網絡故障模型在片上網絡容錯設計的研究中曾發揮過重要作用,但隨著片上網絡的發展以及實用化程度的提高,片上網絡故障模型與實際的片上網絡故障行為之間的差距日益明顯。因此需要從造成片上網絡故障行為集成電路物理效應出發,重新審視片上網絡故障模型的合理性。

1.1傳輸層故障模型分析

傳統網絡的傳輸層故障模型主要分為數據包內容錯誤與數據包完全丟失。其中數據包丟失是傳統網絡傳輸層所要解決的主要問題。造成傳統網絡中傳輸層數據包丟失的主要原因包括:

(1)數據包內容錯誤超過底層協議可以恢復的極限而被底層硬件(如網卡等)直接丟棄而造成的數據包丟失;

(2)數據報頭錯誤導致錯誤的傳輸,如 IP報頭、TCP報頭校驗錯誤時數據包會被丟棄而造成數據包丟失;

(3)由于傳輸過程中鏈路擁塞而導致數據包超過生存時間而被丟棄。

由于數據包內容成果底層協議可以恢復的極限這一問題和底層故障概率以及容錯設計能力有關,傳統網絡中數據包由于傳輸距離較遠而容易出現錯誤,而片上網絡底層的故障概率卻并不一定很高。對這一問題的具體探討將在1.3節中再詳細討論。

相比于傳統網絡,片上網絡的傳輸層故障有其不同的特征。相對于傳統網絡,片上網絡的規模偏小且拓撲結構相對固定,因而在設計之初可以通過多種仿真方法對片上網絡的傳輸帶寬作較為精確的分析。同時由于片上網絡所承載的是多處理器核心之間傳輸的信息,由于信息傳輸實時性要求較高而導致擁塞避免是片上網絡設計優化過程中必須要考慮的重要問題。因此由于鏈路擁塞而丟棄數據包這種行為通常在片上網絡中并不被允許,因而這一故障原因在片上網絡中并不存在。

與傳統網絡大多采用串行傳輸方式不同,片上網絡基本是基于Flit的并行傳輸方式,通常在首個Flit中包含地址、控制等重要信息。由于采用并行傳輸的方法,不同的位通常采用不同的物理連線傳輸并獨立地存儲于不同的存儲單元中,因此針對重要信息的位所用物理連線和存儲單元可以采用有別于普通位的保護措施以加強。如對地址信息采用性能更強的糾錯編碼,控制信號采用三模冗余(TMR)等[12],這些鏈路層容錯措施將有效降低甚至消除由于報頭錯誤而導致的數據包丟失的問題。

綜上,在一個容錯設計合理的片上網絡中,傳輸層故障模型中的數據包丟失故障可以基本忽略。因此需要充分地分析底層設計的容錯能力以確定正確傳輸層故障模型是否需要考慮丟包故障。

1.2網絡層故障模型分析

在過去10多年片上網絡容錯路由的研究通常面向由永久性故障引起的片上網絡路由節點或鏈路功能性問題,通常認為由于制造缺陷、老化等原因造成的晶體管失效是導致永久性故障的主要原因。在傳統網絡的網絡層故障模型中,故障一般被分為鏈路故障和路由節點故障以方便容錯路由算法的研究。在早期的片上網絡容錯路由的研究中也普遍地采用了這樣的劃分方法,這一時期片上網絡的研究大多停留在架構設計與分析的層面。但隨著 Intel等公司先后發布了一系列基于片上網絡的多核處理器芯片[13]之后,片上網絡的硬件實現結構日益明確,相應的網絡層故障模型也需要革新。

傳統網絡中路由節點故障可能由多種原因導致,如路由器的電源失效導致其因斷電而無法工作,整個路由器的功能將完全喪失而導致與其相連的鏈路均處于斷開狀態。片上網絡路由節點與傳統網絡路由節點不同的是其功能完全由晶體管組成的邏輯電路實現,而晶體管并不會出現大面積同時失效的情況。因此,如果單個晶體管的失效不會導致整個片上網絡路由節點的功能完全喪失,則片上網絡路由節點故障實質上并不存在。

一個典型的片上網絡路由節點硬件實現結構如圖1所示。

圖1 片上網絡路由節點架構示意圖

從圖1中可以看出其數據通路(Data path)可劃分為輸入緩沖器、交換矩陣、輸出寄存器等三個部分。其中輸入緩沖器中任何晶體管失效最多只能導致與自身相關的輸入鏈路出現故障,輸出寄存器中任何晶體管失效同樣最多只能導致與自身相關的輸出鏈路失效。因而這兩部分任意晶體管失效均無法造成整個路由節點出現工作不正常的情況而導致路由節點故障。交換矩陣中的故障行為和其具體的實現結構有關,參考文獻[14]中給出了三種不同的交換矩陣實現方式,可以分別由傳輸管矩陣、三態門矩陣以及標準CMOS邏輯門實現的多路復用器。傳輸管矩陣和三態門矩陣相比于標準的CMOS邏輯門的多路復用器而言雖然具有更小的面積和更低的功耗,但由于這兩種方案均存在延遲難以確定、驅動能力偏弱、可能由于控制信號的時序問題而產生臨時性的短路等問題而在實際的芯片中較少采用。采用傳輸管矩陣構建交換矩陣時,若某個傳輸管由于某種原因處于導通狀態,則至少有一對輸入線與輸出線處于短路狀態,如圖2(a)所示。處于這種狀態的交換矩陣不但影響故障傳輸管所在的輸出,還有可能通過短接的輸入線影響到其他輸出的電平。而采用的三態門矩陣和標準CMOS邏輯門的多路復用器構建的交換矩陣由于其單向傳輸的特性,則只會影響到故障所在的輸出,如圖2(b)所示。由此可見,在不采用傳輸管矩陣構建交換矩陣時,單個晶體管的失效只影響其所在的輸出端口,而不會波及其余輸出端口。因而在大多數不采用傳輸管實現交換矩陣的路由節點中,數據通路上任意位置出現單個晶體管失效均可以被等效為輸入鏈路故障或輸出鏈路故障,而不會出現路由節點功能整體失效的情況。

圖2 不同交換矩陣實現方案對應的故障行為

在對路由節點的架構分析中,路由節點控制通路(Control path)故障通常被認為會導致路由節點整體功能失效。這是因為架構設計人員在仿真中習慣于調用同樣的功能函數來模擬各個輸入和輸出鏈路的路由、仲裁等功能。但在實際的路由節點硬件結構中,路由計算單元通常與輸入緩沖器配對實現,而仲裁電路則通常與輸出寄存器配對實現。這樣設計的原因是可以保證多個輸入輸出鏈路可以同時完成路由計算/仲裁的工作,從而最大限度地利用硬件并行工作的特性提升包交換的速度。參考文獻[15]中給出了路由計算模塊和仲裁模塊實現的示意圖,從中可以較為明確地獲悉這種配對的特性。因此,當某個路由計算單元中晶體管失效而導致該單元工作不正常時,可以認為與之配對的輸入緩沖器工作不正常而將其等價為輸入鏈路故障。而當某個仲裁模塊中晶體管失效而導致該單元工作不正常時也可以認為與之配對的輸出寄存器工作不正常而等效為輸出鏈路故障。因此,在一般情況下路由節點控制邏輯中單個晶體管失效也不會造成其整體功能失效。隨著失效晶體管數量的增加,可能出現多條輸入/輸出鏈路故障,從而使得節點大部分功能喪失。此時可以將多條鏈路故障等效為路由節點故障。

結合上面的分析可以得出這樣的結論,在使用常規的片上網絡路由器硬件結構設計方案時,單個或少量的晶體管失效通常不會引起路由節點整體功能的失效或故障。這些故障基本可以被等效為鏈路故障而非路由節點故障。但隨著一些新的仲裁方法或路由算法的提出,其對應的電路結構可能會發生一些變化而導致出現路由節點故障的可能,但出現這種故障的可能性需要進一步探討。針對一個具體的片上網絡設計其容錯方案時對片上網絡路由節點的具體電路結構進行適當的分析,即可以確定是否有必要采用路由節點故障模型。目前大部分容錯路由的研究者已經開始更傾向于使用鏈路故障模型而非路由節點故障模型。

1.3鏈路層故障模型分析

鏈路層故障模型主要考慮由于數據在傳輸過程中某些比特位的翻轉、呆滯等現象造成該位出現錯誤。造成鏈路層故障的物理效應有很多。元件老化、電遷移效應、制造誤差等原因造成的某位信號線短路或斷路可以被認為是鏈路層的永久性故障,單粒子翻轉效應等影響存儲單元狀態而造成數據錯誤可以被認為是鏈路層的臨時性故障,電壓緊急、串擾(Crosstalk)等在特定的外部環境或特定工作狀態下引起的數據錯誤可以被認為是鏈路層的間歇性故障。因而鏈路層故障實際包含了臨時性故障、間歇性故障和永久性故障三種不同的故障分類。這三種故障在鏈路層雖然故障行為表現相近,但由于其成因的區別導致使用鏈路層故障模型時其故障概率和故障注入方式有所區別。

臨時性故障由于是由單粒子翻轉等原因引起的,其發生時間和位置均近似呈隨機分布。因此針對臨時性故障的鏈路層故障模型可以視為以一定的概率隨機在更改任意位置、任意信號線的值,并不需要對故障的注入做特殊的處理。發生間歇性故障則明顯的受到環境以及具體硬件結構的影響,其發生的時間和位置存在一定的規律性,但故障是否發生仍然具有一定的隨機性。永久性故障根據其產生原因不同,故障出現的規律也有較大區別。由加工誤差引起的永久性故障在分布時具有隨機性,但由于老化引起的永久性故障則明顯與環境有關,因而其空間位置的分布不是完全隨機的。所以鏈路層間歇性故障和永久性故障的發生概率和空間分布問題是一個需要討論的問題。

首先對鏈路層間歇性故障的發生概率和空間分布加以討論。串擾(Crosstalk)被認為是引起鏈路層間歇性故障的一個重要因素。一般認為由于信號線上特定的信號跳變引起某些信號變化延遲,若恰好與時鐘抖動等因素相配合則容易導致該信號被保存為一個錯誤的值,從而引發故障。一般片上網絡容錯設計研究者在考慮串擾引起的間歇性故障時,通常習慣于從信號跳變過程本身去加以考慮,通過編碼或其他方式改變跳變的圖案(Pattern)來對其加以避免[16]。但實際上串擾本身是否會發生其實需要一定的外部條件,同時其是否會引起故障實際上更取決于其是否真正破壞了數字集成電路的時序。要發生串擾通常需要信號線線距和線長均滿足一定的條件,因而可能發生串擾的位置通常在兩個路由節點之間的互聯線上而非其內部連線。但從參考文獻[17]中明確給出的路由節點中各級流水線延遲的情況來看,在鏈路傳輸(Link Transmission,LT)即兩個路由節點之間信號傳輸階段的延遲要遠遠小于其他級流水線。換言之,在常規拓撲結果中鏈路傳輸本身并不處于關鍵路徑(Critical Path)上。因而不管是否出現因為串擾而導致信號延遲的情況,在鏈路傳輸階段的時序余量可以充分保證被下一級路由節點接收的信號處于穩定狀態。但對于某些面向特定應用的非規則片上網絡而言[18],在網絡中存在一定的長走線,因而可能由于延遲較大而容易受到串擾的影響。造成間歇性故障的其他因素諸如電壓緊急、溫度等同樣導致特定位置的信號出現故障,通常這些故障更多出現在關鍵路徑上。在設計階段雖然設計者無法準確地預知所有故障發生的位置與概率,但卻可以通過對設計方案進行仿真與分析確定容易發生故障的薄弱環節,從而合理地設置和使用鏈路層故障模型。

鏈路層永久性故障的發生概率和空間分布同樣有一定規律可循。由于老化引起的永久性故障與老化條件有關,因而分析并確定容易引起老化的環境因素對確定這類故障發生的概率和空間分布是有很大幫助的。溫度是引起晶體管老化的重要原因,對于集成電路的溫度分布可以在設計階段即通過一系列的熱仿真得到。而由于工藝誤差或制造過程引起的永久性故障比較難以精確建模,但可以通過分析電路模塊的規模簡單等效得到,在此不再贅述。

2 容錯設計方法合理性分析

片上網絡的容錯設計方法已有相當數量的論文討論,但這些論文通常只注重介紹容錯方法本身,而對容錯設計方法的使用前提與使用場景缺乏深入分析與討論。這一現象導致容錯設計方法的合理性存在較大問題,因而本文結合之前對故障模型的分析對容錯設計方法的合理性進行必要的分析。

2.1基于離線測試的容錯方法

基于離線測試的容錯方法是一種最基本的容錯方法,其目的在于提高芯片的良品率。較為典型的基于離線測試的容錯方法即為片上網絡自適應路由。大多數自適應路由都是在故障狀態已知的前提下,通過外部所給出的故障信息按自適應路由算法調整信息的傳輸路徑以避開出現故障的鏈路或路由節點。

按具備自適應路由能力的路由節點對故障信息的知曉程度不同,自適應路由可分為基于全局信息的自適應路由算法、基于局部信息的自適應路由算法和基于本地信息的自適應路由算法三類?;谌中畔⒌淖赃m應路由算法需要使用整個網絡的各個資源的狀態信息。當然,一個路由器需要確切知曉網絡中所有資源的狀態信息非常困難,代價非常高。因而此類算法常采用空間迭代,使得每個路由器獲得等價的全局信息,如 Q-Routing[19]?;诰植啃畔⒌淖赃m應路由算法需要路由節點知曉臨近節點的信息,FoN[20]以及 FRR[21]是此類算法的典型代表。相比于全局信息,獲取局部信息的代價要小很多。此類自適應路由算法也一直在優化故障信息傳輸的開銷?;诒镜匦畔⒌淖赃m應路由算法則只關注與路由節點相連的鏈路或節點的狀態,Gradient算法[22]就是該類算法的代表。這三類算法中雖然基于全局信息的自適應路由算法效果最好,但由于其信息傳播開銷最大而較少有人研究?;诒镜匦畔⒌淖赃m應路由算法性能提升受到較大限制而導致優化空間較小,但在故障概率較低的情況下已經足以滿足設計需求?;诰植啃畔⒌淖赃m應路由算法是前幾年研究的熱點,其難點在于平衡信息傳播開銷、算法復雜度等多方面的因素。

在傳統的自適應路由方法的研究論文中幾乎不曾提及如何檢測并確定某條鏈路或路由節點已處于故障狀態,其通常認為故障信息已經確認并作為已知前提開展研究。因而,離線測試作為一種基本的檢測手段可以直接與這些自適應路由算法相配合作為提高良品率的方法。但需要注意的是離線測試只能針對出廠后的芯片加以檢測,因而主要檢測由于生產加工問題而引起故障。這類故障的成因、分布及其行為在前文已有分析。在選擇或設計合理的自適應路由算法時應對其充分加以考慮,避免使用與之不相符合的故障模型或錯誤估計故障概率。

2.2基于在線測試的容錯方法

與基于離線測試的容錯方法不同,基于在線測試的容錯方法往往需要與一定的在線測試手段相配合。首先通過在線測試確定故障的位置或發生的概率,再采取相應的方法繞開或替換故障單元以達到容錯的目的。

基于編碼的在線檢測方法是開銷較小、實現也較為方便的一種。這種方法通過檢錯或糾錯編碼檢測傳輸過程中數據出現的錯誤。但由于糾錯編碼同時也具備錯誤數據恢復的功能,因而在大多數研究中把這類方法歸結于容錯方法而非在線檢測方法。但實際上合理運用糾錯或檢錯編碼并與測試數據注入方法配合是可以達到在線檢測效果的,在后文中將對此做一定的分析?;诰幋a的方法可以很方便地與重傳機制相配合構成較為高效的混合糾錯重傳機制(hybrid FEC/ARQ)[23],該方法對于臨時性故障的容錯效果較好。但使用混合糾錯重傳機制會導致比較大硬件開銷和傳輸延遲,因而通常被用于傳輸層容錯。

按照特定的規則向網絡注入專門的測試數據包,可以根據包的到達情況和接受到的數據對片上網絡的鏈路和路由節點加以檢測。與基于編碼的方法不同的是,由于發送的數據包內容是確定的,可以在接收端通過比對檢測出鏈路中多個數據故障。由于其傳輸路徑可以提前設置,可以對路由節點中不同的傳播路徑加以測試[24]。使用特定的測試數據包不但可以判斷鏈路層故障引起的數據錯誤,還可以通過數據包能否正常地通過特定的傳輸路徑來判斷路由節點中某些控制邏輯是否出錯。當測試出路由節點的問題后將其映射為鏈路故障模型,再配合自適應路由算法即可以實現網絡層容錯設計。采用專門測試數據包的另外一個優點在于通過統計已到達數據包的錯誤概率,在明確數據包傳輸路徑的基礎上可以求解出不同鏈路或傳輸路徑上包的錯誤概率,進而對于診斷間歇性故障有極大的好處。

在線測試的另外一種方式是采用在線的內建自測試(BIST)電路。這類在線測試方法需要針對片上網絡設計專門的電路測試電路[25],并用適當的方法將被測電路與其他的部分電路隔離。采用內建自測試電路可以在更細粒度的層面檢測故障,有利于采用更細粒度的錯誤恢復機制。但內建自測試電路測試的規模與其測試粒度有關,測試粒度越細則電路復雜度和規模越大。近年來將內建自測試電路用于片上網絡容錯設計的研究者主要把精力放在如何平衡在線檢測性能、粒度和代價。

2.3基于糾錯和硬件冗余的容錯方法

糾錯與硬件冗余從本質上來說屬于同一類方法。糾錯依靠傳輸更多的信息使得數據錯誤可以被修復,硬件冗余則通過在網絡中增加更多的硬件資源以使當部分硬件出現故障時片上網絡仍然可以正常運行。在傳輸更多信息時必然涉及到使用更多的硬件資源如連線或存儲單元來,因而也是一種意義上硬件冗余。嚴格意義上說,片上網絡自適應路由算法就是利用了片上網絡互聯資源的硬件冗余來達到容錯目的。

糾錯的效果與糾錯編碼的復雜度以及傳輸過程中出現錯誤的概率有關。在端到端傳輸的錯誤概率顯然大于在兩個路由節點之間傳輸的錯誤概率。因而在兩個路由節點之間才有糾錯編碼的效果顯然好于端到端傳輸,但后者的面積、延遲、功耗等開銷要遠遠小于前者[26]。各種開銷的增加實際上會導致片上網絡的整體性能下降,在很多時候使得容錯設計失去了原本的意義。換言之,如果主動降低片上網絡的性能如運行速度等,往往可以使得間歇性故障概率下降而在使用端到端糾錯達到同樣的效果。這方面的研究目前尚缺乏比較全面和深入的分析。

最普通的硬件冗余容錯方法是三模冗余(Triple Modular Redundancy,TMR)[27],即通過將同樣的硬件資源復制為3份同時運算,通過投票選取最可能的結果。三模冗余被廣泛的應用各種高可靠要求的硬件設備中。但三模冗余的劣勢也非常明顯,由于其三倍于正常硬件開銷而帶來的極大硬件資源和功耗增加。同時由于三模冗余導致硬件開銷增大,變相地也使得錯誤發生的概率有很大增加。因此,一種采用硬件資源相對精簡的模塊作為三模冗余替代方案的研究思路也正在興起[28]。這種方法一方面減小了各種開銷,另一方面可以使得系統的可靠性進一步提升。

就糾錯與硬件冗余的容錯方法而言,其面臨的最重要的問題在于設計本身是否存在過度設計(Over Design)而導致不必要的開銷甚至影響片上網絡可靠性最大限度地提升。這一方面的研究由于需要對片上網絡從物理效應、故障概率到容錯設計方法做比較完整的建模與深入分析而一直未取得較大突破。

2.4其他容錯方法

除上述多種容錯設計方法外,還有一些其他的容錯設計方法可以被應用到片上網絡的容錯設計中。目前這些方法已經在其他電路設計領域被采用了,但片上網絡領域研究還相對較少?;诟兄娜蒎e方法和基于設計優化的容錯方法就是比較重要的兩種。

基于感知的設計方法其實質在于通過測量環境參數、分析電路的工作狀態,進而判斷電路是否在當前環境條件下工作在不穩定的臨界狀態。當判明當前狀態后,通過調整電路的工作狀態使得錯誤率降低到可以被糾正的程度。目前這種方法已經被應用于高能效處理器可靠性設計中[29]。片上網絡領域還較少見到采用類似的設計方法。

基于設計優化的容錯方法是指在設計優化時不但考慮優化系統性能、資源或功耗開銷等,同時可以把可靠性問題加以優化。例如可以通過優化專用片上網絡的拓撲結構來減少或避免串擾引起的故障。這一容錯設計方法已經在專用集成電路中逐步被采用,但同樣在片上網絡研究領域使用還相對較少。

3 結語

本文結合片上網絡的硬件實現結構和先進工藝集成電路物理效應對片上網絡存在的故障行為進行了總結,分別就傳輸層、網絡層和鏈路層的故障模型進行了詳細的分析。通過分析表明現有的故障模型是存在一定的適用范圍的。在此基礎上對不同故障模型所適用的應用場景也進行了歸納總結。在分析故障模型的基礎上對現有的片上網絡容錯方法進行了總結,對其合理性和應用方法作了初步分析。從本文的研究可以看出,片上網絡容錯設計雖然經過多年的發展已經取得了長足的進步,但目前各個研究點還相對孤立而未形成全面完善的解決方案或研究結論。片上網絡容錯設計還有賴于各國研究者的進一步大力研究。

[1]HEMANI A,JANTSCH A,KUMAR S,et al.Network on chip: An architecture for billion transistor era[C].In Proceedings of 18th conference of Norchip,2000:1-8.

[2]Luca Benini,Giovani De Micheli.Networks on Chips:A new SoC paradigm[J].Computer,2002,35(1):70-78.

[3]CONSTANTIESCU C.Trends and challenges in VLSI circuit reliability[J].IEEE Micro,2003,23(4):14-19.

[4]RADETZKI M,Feng Chaochao,Zhao Xueqian,et al.Methods for fault tolerance in networks-on-chip.ACM Computing Survey,2013,46(1).

[5]FRANTZ A P,KASTENSMIDT F L,CARRO L,et al.Evaluation of seu and crosstalk effects in network-on-chip switches[C].In proceedings of the Symposium on Integrated Circuits and Systems Design(SBCCI′06),2006.

[6]SAHA S K.Modeling process variability in scaled CMOS technology.IEEE Design&Test of Computers,2010,27(2):8-16.

[7]FRANTZ A P,KASTENSMIDT F L,CARRO L,et al.Evaluation of seu and crosstalk effects in network-on-chip switches[C].In proceedings of the Symposium on Integrated Circuits and Systems Design(SBCCI′06),2006.

[8]RAIK J,UBAR R,GOVIND V.Test configurations for diagnosing faulty links in noc switches[C].In Proceedings of the 12th IEEE European Test Symposium(ETS′07),2007:29-34.

[9]WACHTER E,ERICHSEN A,JURACY L,et al.Runtime fault recovery protocol for NoC-based MPSoCs[C].15th International Symposium on Quality Electronic Design,2014:132-139.

[10]WENTZLAFF D,GRIFFIN P,HOFFMANN H,et al.On-chip interconnection architecture of the tile processor[J].IEEE Micro,2007,27(5):15-31.

[11]ABDELFATTAH M S,BETZ V.The case for embedded networks on chip on field-programmable gate arrays[J]. IEEE Micro,2014,34(1):80-89.

[12]EGHBAL A,YAGHINI P M,PEDRAM H,et al.Designing fault-tolerant network-on-chip router architecture[J]. International Journal of Electronics,2010,97(10).

[13]DIGHE S,VANGAL S R,ASERON P,et al.Within-die variation-aware dynamic-voltage-frequency scaling with optimal core allocation and thread hopping for the 80-core TeraFLOPS processor[J].IEEE Jour.Solid-State Circuits,2011,46(1):184-193.

[14]KRISHNA T,Li-Shiuan Peh,BECKMANN B M,et al. Towards the ideal on-chip fabric for 1-to-many and many-to-1 communication[C].44th Annual IEEE/ACM International Symposium on Microarchitecture(Micro),2011:71-82.

[15]DIMITRAKOPOULOS G,GEORGIADIS N,NICOPOULOS C,et al.Switch folding;Network-on-Chip routers with time-multiplexed output ports[C].Design,Automation&Test in Europe Conference&Exhibition(DATE),2013:344-349.

[16]章玉珠,何怡剛,邱星星,等.基于片上網絡改進 HT模型的測試方法及仿真[J].電子技術應用,2015(8).

[17]NAKATA Y,TAKEUCHI Y,KAWAGUCHI H,et al.A process-variation-adaptive network-on-chip with variable-cycle routers[C].14th Euromicro Conference on Digital System Design(DSD),2011:801-804.

[18]He Ou,Dong Sheqin,Jang Wooyoung,et al.UNISM:unified scheduling and mapping for general networks on chip[J]. IEEE Transactions on Very Large Scale Integration(VLSI) Systems,2012,20(8):1496-1509.

[19]Fahimeh Farahnakian,Masoumeh Ebrahimi,Masoud Daneshtalab,et al.Q-learning based congestion-aware routing algorithm for On-Chip Network[C].IEEE 2nd International Conference on Networked Embedded Systems for Enterprise Application,2011:1-7.

[20]Feng Chaochao,Lu Zhonghai,JANTSCH A,et al.FON:fault-on-neighbor aware routing algorithm for Networkson-Chip[C].IEEE International SoC Conference,2010:441-446.

[21]Wang Junshi,Wang Xiaohang,Huang Letian,et al.A faulttolerant routing algorithm for NoC using farthest reachable routers[C].The 11th IEEE International Conference on Embedded Computing,2013:153-158.

[22]Istas Pratomo,Sébastien Pillement.Gradient-an adaptive fault-tolerant routing algorithm for 2D mesh network-onchips[C].2012 Conference on Design and Architectures for Signal and Image Processing,2012:1-8.

[23]Alireza Ejlali,AL-HASHIMI B M,ROSINGER P,et al. Joint consideration of fault-tolerance,energy-efficiency and performance in on-chip networks[C].Design,Automation &Test in Europe Conference&Exhibition,2007:1-6.

[24]RAIK J,UBAR R,GOVIND V.Test configurations for diagnosing faulty links in noc switches[C].In Proceedings of the 12th IEEE European Test Symposium(ETS′07),2007:29-34.

[25]érika Cota,Fernanda Lima Kastensmidt,Maico Cassel,et al.A high-fault-coverage approach for the test of data,control,and handshake interconnects in Mesh Networkson-Chip[J].IEEE Transactions on Computers,2008,57 (9):1202-1215.

[26]JANTSCH A,LAUTER R,VITKOWSKI A.Power analysis of link level and end-to-end data protection in networks on chip[C].IEEE International Symposium on Circuits and Systems,2005:1770-1773.

[27]EGHBAL A,YAGHINI P M,PEDRAM H,et al.Designing fault-tolerant network-on-chip router architecture[J]. International Journal of Electronics,2010,97(10).

[27]Zhang Xiaofan,EBRAHIMI M,Huang Letian,et al.Fault resilient routing unit in NoCs[C].28th IEEE International System-on-Chip Conference(SOCC),2015.

[28]Seongjong Kim,Mingoo Seok.Variation-tolerant,ultra-Low-voltage microprocessor with a low-overhead,withina-cycle in-situ timing-error detection and correction technique[J].IEEE Journal of Solid-State Circuits,2015,50(6).

Rationality analyzing of fault model and fault tolerance design method for network on chip

Huang Letian1,Zhou Zailong2,Wang Junshi1,Li Guangjun1
(1.University of Electronics Science and Technology of China,Chengdu 611731,China;2.National Computer System Engineering Research Institute of China,Beijing 100083,China)

The fault behaviors based on the hardware architecture and physical effect are analyzed in this paper.The rationality of the various fault models are discussed and the weak point of these models are pointed out.The network on chip reliability design methodologies are evaluated based on the analyzing of fault behaviors.If an efficient and reliable network on chip would be designed,the in-depth fault model analyzing should be down before designing.

network on chip;fault tolerant design;reliability

TN406

A

10.16157/j.issn.0258-7998.2015.10.001

2015-09-23)

黃樂天(1984-),男,博士在讀,講師,主要研究方向:片上多處理器系統與片上網絡,高能效集成電路設計。

王君實(1989-),男,博士在讀,主要研究方向:片上多處理器系統與片上網絡,集成電路可靠性設計。

李廣軍(1950-),男,碩士,教授,主要研究方向:無線通信,通信專用電路設計。

中文引用格式:黃樂天,周在龍,王君實,等.片上網絡故障模型及容錯設計方法合理性分析[J].電子技術應用,2015,41 (10):7-12,16.

英文引用格式:Huang Letian,Zhou Zailong,Wang Junshi,et al.Rationality analyzing of fault model and fault tolerance design method for network on chip[J].Application of Electronic Technique,2015,41(10):7-12,16.

猜你喜歡
數據包路由鏈路
二維隱蔽時間信道構建的研究*
天空地一體化網絡多中繼鏈路自適應調度技術
民用飛機飛行模擬機數據包試飛任務優化結合方法研究
基于星間鏈路的導航衛星時間自主恢復策略
鐵路數據網路由匯聚引發的路由迭代問題研究
一種基于虛擬分扇的簇間多跳路由算法
SmartSniff
探究路由與環路的問題
基于預期延遲值的擴散轉發路由算法
基于3G的VPDN技術在高速公路備份鏈路中的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合