聶金環
現代信息技術中,如何提升處理器本身的容錯性能已經成為當前研究的熱點。對于這一問題,可以將故障屏蔽技術(三模塊冗余,校正器)和故障恢復技術(多數表決恢復,檢查點)應用到處理器的容錯設計中。
隨著逐步采用納米級的制造工藝,處理器在性能得到大幅提高的同時,由于集成電路尺寸的減小、電源電壓的降低和頻率的升高,使得處理器對各種噪聲干擾變得更加敏感,處理器的容錯性能成為一個日益嚴峻的課題,對處理器容錯性能提出了更高的要求。所以如何提升處理器的容錯能力具有很高的研究價值。
處理器容錯
處理器在運行過程中產生的錯誤可以分為硬錯誤和軟錯誤兩種。硬錯誤是電路單元產生的不可恢復故障,是永久性的錯誤;而軟錯誤則是由于噪聲干擾或者高能粒子撞擊而引起的瞬態故障,是可以恢復的錯誤。研究表明,計算機系統中80%~90%的失效都由瞬態故障引起,表明瞬態故障是引起計算機系統失效的主要原因。為了消除軟錯誤的影響,提高處理器的可靠性,可以在設計階段采用容錯設計技術,通過冗余容錯的電路以及體系結構設計,使得處理器具有容錯功能。容錯技術總是同冗余的概念聯系在一起,冗余技術可以基本分為如下幾類:硬件冗余、軟件冗余、信息冗余和時間冗余。
故障屏蔽技術
故障屏蔽技術基于硬件冗余,利用冗余資源來隔離或校正故障的影響,從而達到容錯的目的。由于其不改變系統的結構,即系統部件的邏輯關系相互固定,因而也稱為靜態冗余技術。故障屏蔽技術可以分為線路級屏蔽技術、邏輯級屏蔽技術和模塊級屏蔽技術。三模塊冗余技術和校正器技術均屬于模塊級屏蔽技術。
一、三模塊冗余技術。以8051為代表的大多數處理器仍然由控制單元,運算單元,存儲單元幾個關鍵模塊組成。所以,處理器模塊化的結構是應用TMR技術的基礎。8051處理器主要由控制單元,運算單元,解碼器單元和存儲單元(RAM和ROM)組成,為提升這五個單元的容錯性能,均對其采用TMR設計。
二、校正器技術。因為校正器無法處理自身錯誤,一旦其自身發生故障,那么將影響整個系統。所以,為了能夠排除校正器所引起的單點故障,對校正器也采用三倍冗余設計。按上述設計,由8051的解碼器模塊(I8051_dec)和控制器模塊(I8051_ctr)及冗余表決器可以組成TMR子系統結構。三個表決器均由兩個分別用于表決8位和9位信號的元表決器構成。前者用于解碼器輸入信號的表決,后者用于解碼器輸出信號的表決。
故障恢復技術
故障恢復是處理檢測到的可恢復故障(如瞬時故障)、消除故障造成的影響并使系統正常運行的重要環節。容錯在這個環節之后得到了完全實現。故障恢復技術可以分為以下幾類:一編碼恢復技術,二多數表決恢復技術,三審查程序,四異常處理,五重啟六重試,七檢查點,八記日志。
一、多數表決恢復技術。這種技術依賴于多數表決器。三路表決器只要能正常進行表決,那么在屏蔽錯誤的同時會用正確值校正錯誤值,就實現了差錯的恢復。
二、檢查點技術。檢查點技術是檢查點與卷回的結合,是計算機系統進行故障恢復的主要手段之一。系統周期性地設置檢查點,把運行時的正確狀態保存到穩定存儲器中。如果檢測出故障,系統就卷回到前一個檢查點所保存的正確狀態繼續執行,這樣就避免了因故障而導致任務從頭重新執行,有效地減少了損失的工作量。檢查點應設置在系統狀態產生變化的時刻,這樣能使保存的信息有效比提高,減少冗余信息。而對于處理器來說,在機器周期結束時發生的狀態變化最具代表性。8051有固定的機器周期,包括12個時鐘周期。指令系統特性。
檢查點技術中,在系統進行卷回時,其每個子模塊都必須同步;否則,系統將卷回到一個非正常的運行狀態,從而引發故障甚至造成系統崩潰。所以,在8051處理器的最高層次結構中設置了一個同步信號,用于各個模塊卷回過程的啟動,以此來保證卷回的同步性。
通過上述的設計和應用,我們構建了具有容錯性能的8051處理器,并在仿真環境下并通過注入既定故障對其容錯能力進行了測試和驗證。如果在注入上述故障的同時再注入一個故障,將另外一個RAM模塊的輸出信號out_data同時強制改變為10101010。對于這種非單狀態位翻轉的故障,表決器因無法正常表決而報錯。這時,就需要進行卷回來恢復故障。
(作者單位:中國石油遼河油田供水公司)