一種基于時鐘沿的單粒子翻轉自檢糾錯電路的制作方法
【技術領域】
[0001]本發(fā)明屬于面向專用集成電路(ASIC)的故障檢測技術,可通過對電路模塊功能故障的檢測以及存儲數(shù)據(jù)正確性的判定,完成對其邏輯電路單粒子翻轉軟錯誤以及其它類型故障的檢測。發(fā)明涉及基于時鐘沿的單粒子翻轉自檢糾錯改進電路結構。
【背景技術】
[0002]當前,比較常用的檢查和糾正單粒子翻轉的方法是三模冗余(TMR)和檢測/糾正電路等方法。三模冗余是將要保護的電路復制成完全相同的三份,同時運行這三部分電路,并且對該三部分電路的運行結果進行大數(shù)表決,表決出一個置信度高的結果輸出,同時檢測出那個冗余邏輯塊翻轉并進行修復。TMR解決SEU影響的最有效方式,但需要消耗大量的資源才能實現(xiàn)該電路結構。檢測/糾正電路則是采用如海明碼等不同的編解碼方式,在存儲的數(shù)據(jù)源碼中加入一些冗余碼,使這些數(shù)據(jù)源碼和數(shù)據(jù)源碼之間建立一定的關系,一旦數(shù)據(jù)源碼或是冗余碼出現(xiàn)某種錯誤時,數(shù)據(jù)碼和冗余碼之間的關系被破壞,就形成非法編碼,通過檢測數(shù)據(jù)碼和冗余碼來檢測數(shù)據(jù)碼的正確性,從而實現(xiàn)對所存儲數(shù)據(jù)進行檢測和糾正。
[0003]基于時鐘沿的自檢糾錯電路原理是,“對于觸發(fā)器,輸出數(shù)據(jù)只有在時鐘上升沿到來的時候發(fā)生轉變才是有效的正確數(shù)據(jù),而其他任何時刻的變化都是由于單粒子軟錯誤引起的信號錯誤”。因此,基于時鐘沿的單粒子翻轉自檢糾錯電路則可以通過對比數(shù)據(jù)與時鐘的轉變沿是否同步,來實現(xiàn)數(shù)據(jù)進行檢測和糾正。因此,通過查詢,(I)在數(shù)據(jù)庫中搜索 “single event upset (SEU),,、“clock edge,,、“error detect1n andcorrect1n (EDAC) ” 等,查閱到相關論文 I 篇(Ruano O, Reviriego P, Maestro J A.A NewEDAC Technique against Soft Errors based on Pulse Detectors.The proceedings ofIEEE Internat1nal Symposium on Industrial Eletronics.2009,8:2293-2298)。該論文提出了一種基于時鐘沿的自我檢測和糾正的電路結構,并采用內建命令進行錯誤注入模擬的方式驗證了電路可以對觸發(fā)器以及SRAM等存儲器進行實時監(jiān)控,并及時糾正其由于SEU引起的數(shù)據(jù)錯誤。但是,該電路結構仍然存在可能會導致電路不停循環(huán)(震蕩)、不能收斂等缺陷。⑵在數(shù)據(jù)庫中搜索“單粒子翻轉”、“時鐘沿”、“自檢糾錯”等,查閱到相關論文I篇(聶永鋒,于東英,曾澤嶸,甘智勇,陳夢遠.一種改進的對抗軟錯誤電路結構設計.現(xiàn)代電子技術,2011,34 (4):184-187)。該論文基本是論文“A New EDAC Technique againstSoft Errors based on Pulse Detectors”的中文翻譯。(3)在專利數(shù)據(jù)庫中搜索“單粒子翻轉”、“時鐘沿”、“自檢糾錯”等,未查詢到相關信息。此外,查詢目前國內外有關航天應用中基于時鐘沿自建糾錯的軟錯誤加固方法研究相關資料,也未查詢到相關技術公開資料。
【發(fā)明內容】
[0004]本發(fā)明解決的技術問題是:克服現(xiàn)有技術的不足,提供了一種基于時鐘沿的單粒子翻轉自檢糾錯電路,可為單粒子軟錯誤糾正提供技術支撐,提高可靠性設計的有效性和可行性。
[0005]本發(fā)明的技術方案是:一種基于時鐘沿的單粒子翻轉自檢糾錯電路,包括D觸發(fā)器、時鐘延遲模塊、時鐘沿跳變檢測模塊、觸發(fā)器輸出翻轉檢測模塊、單粒子翻轉檢測模塊、多路輸出選擇器以及鎖存器;D觸發(fā)器的輸出端同時連接至觸發(fā)器輸出翻轉檢測模塊的輸入端以及多路輸出選擇器的輸出位選擇端;多路輸出選擇器的輸出端SO和輸出端SI分別接至D觸發(fā)器的置位端和清零端;D觸發(fā)器的時鐘端接至時鐘延遲模塊的輸入端,時鐘延遲模塊的輸出端接至時鐘沿跳變檢測模塊的時鐘端;時鐘沿跳變檢測模塊的輸出端S3分別接至單粒子翻轉檢測模塊的輸入端S3以及鎖存器的清零端;時鐘沿跳變檢測模塊的輸出端S4接至單粒子翻轉檢測模塊的輸入端S4 ;鎖存器的輸出端接至單粒子翻轉檢測模塊的輸入端S5 ;單粒子翻轉檢測模塊的輸出端同時接至多路輸出選擇器的輸入端以及鎖存器的置位端;
[0006]外部信號和外部時鐘輸入至D觸發(fā)器,當外部時鐘上升沿時D觸發(fā)器將送至觸發(fā)器輸出翻轉檢測模塊,觸發(fā)器輸出翻轉檢測模塊檢測是否發(fā)生單粒子翻轉,并將檢測結果發(fā)送至單粒子翻轉檢測模塊;同時外部時鐘通過時鐘延遲模塊后輸入至時鐘沿跳變檢測模塊,當觸發(fā)器輸出翻轉檢測模塊向單粒子翻轉檢測模塊輸出檢測結果時,時鐘沿跳變檢測模塊輸出時鐘沿跳變脈沖至單粒子翻轉檢測模塊和鎖存器;鎖存器將鎖存信號輸入給單粒子翻轉檢測模塊;單粒子翻轉檢測模塊檢測是否在外部時鐘上升沿發(fā)生單粒子翻轉,并將檢測結果輸出多路輸出選擇器以及鎖存器;當D觸發(fā)器的輸出端為高電平時,多路輸出選擇器的輸出端SI選通,當D觸發(fā)器的輸出端為低電平時,多路輸出選擇器的輸出端S2選通;通過多路輸出選擇器將經過單粒子翻轉檢測模塊檢測后的檢測結果輸送給D觸發(fā)器,D觸發(fā)器根據(jù)接收到的檢測結果從新輸出糾錯后的外部信號。
[0007]觸發(fā)器輸出翻轉檢測模塊包括兩個非門和一個異或門;輸入進來的信號分為兩路,其中一路信號相繼經過兩級非門后,與另外一路信號再經過異或門后輸出。
[0008]時鐘沿跳變檢測模塊包括三個非門和一個與門;輸入進來的信號分為兩路,其中一路信號相繼經過三個非門后,與另外一路信號再經過與門后輸出。
[0009]單粒子翻轉檢測模塊包括兩個非門和一個與門;單粒子翻轉檢測模塊的輸入端S3接至一個非門,同時單粒子翻轉檢測模塊S5接至一個非門,之后與單粒子翻轉檢測模塊S4 一并接至與門后輸出。
[0010]本發(fā)明與現(xiàn)有技術相比的優(yōu)點在于:
[0011](I)該電路在具備時鐘沿單粒子翻轉自檢糾錯功能的同時,利用鎖存器結構克服其它已有的電路中存在不停循環(huán)(震蕩)、不能收斂的不足;
[0012](2)該電路通過對時鐘沿跳變檢測模塊的設計,可以完成上升沿、下跳沿,以及同時上下跳沿的錯誤檢測;
[0013](3)同一個時鐘周期內可以通過對自檢糾錯電路的簡單擴展,可以實現(xiàn)多位SEU錯誤的自動檢錯糾錯。即對多個原始功能模塊的電路進行檢糾錯,利用單粒子翻轉檢測模塊將單粒子翻轉的檢錯信號輸出到一個N輸入的或門,再將得出的邏輯值傳輸給公共模塊的SEU信號,進而控制各個單獨模塊的數(shù)據(jù)糾正,實現(xiàn)多位SEU錯誤的自動檢糾錯。
【附圖說明】
[0014]圖1為本發(fā)明時鐘沿檢測和糾錯電路結構圖;
[0015]圖2為本發(fā)明觸發(fā)器輸出翻轉檢測模塊Q Pulse Detector模塊結構設計圖;
[0016]圖3為本發(fā)明時鐘沿跳變檢測模塊CLK Pulse Detector模塊結構設計圖;
[0017]圖4為本發(fā)明單粒子翻轉檢測模塊SEU Detector模塊結構設計圖;
[0018]圖5為本發(fā)明多路輸出選擇器Demux模塊結構設計圖。
【具體實施方式】
[0019]本發(fā)明設計實現(xiàn)了更為實用的、具有擴展能力的檢測和糾正單粒子翻轉錯誤的電路,如圖1所示。
[0020]圖1電路由D觸發(fā)器、時鐘延遲模塊Delay、時鐘沿跳變檢測模塊CLK PulseDetector、觸發(fā)器輸出翻轉檢測模塊Q Pulse Detector、單粒子翻轉檢測模塊SEUDetector、多路輸出選擇器Demux以及鎖存器Latch組成。由D觸發(fā)器輸出原始功能模塊電路的輸出信號,利用Q Pulse Detector模塊進行延時輸出數(shù)據(jù)信號和原始數(shù)據(jù)信號的比較,用于產生單粒子翻轉的檢測信號。同時,D觸發(fā)器的時鐘端CLK輸出接入Delay模塊中的兩個非門來產生延時,通過CLK Pulse Detector模塊對延時后的時鐘信號和原來的時鐘信號進行比較,進而在上升沿或下降沿時產生一個脈沖,用于數(shù)據(jù)沿的檢測。將單粒子翻