專利名稱:基于數據總線的ecc糾錯方法及系統(tǒng)的制作方法
技術領域:
本申請涉及隨機存取設備技術領域,尤其涉及一種基于數據總線的ECC糾錯方法及系統(tǒng)。
背景技術:
電磁干擾如背景輻射可能會造成隨機存取設備中的某位自發(fā)得向相反狀態(tài)翻轉。即使是單bit的內存錯誤也可能會造成系統(tǒng)的暴走,甚至造成硬件的損壞。這在汽車電子,軌道交通,航空航天等對可靠性要求極高的系統(tǒng)中是不能允許的。為了降低錯誤的概率,ECC糾錯的方法在存儲設備當中得到了廣泛的應用。在AHB或CLB等總線當中并沒有定義ECC保護的功能,一般ECC保護的功能實現在各個Slave自己的電路當中。由于總線沒有ECC功能,各IP需要獨立設計ECC保護電路,增加了 IP設計負擔,而且無法復用ECC保護電路,造成了資源的浪費。 綜上所述,有必要提供一種基于數據總線的ECC糾錯方法及系統(tǒng)以解決上述問題。
發(fā)明內容
有鑒于此,本發(fā)明提供一種基于數據總線的ECC糾錯方法及系統(tǒng),有效地控制了Slave IP內存的增加。為了實現上述目的,本申請實施例提供的技術方案如下—種基于數據總線的ECC糾錯方法,所述方法包括以下步驟S1、ECC橋接器判斷數據總線Master發(fā)出的操作命令數據的種類,若為寫操作,則執(zhí)行步驟S2 ;S2、判斷操作命令數據是否小于ECC基本保護單元的大小,若是,執(zhí)行步驟S3,若否,執(zhí)行步驟S4;S3、進入總線讀狀態(tài),向Slave發(fā)出一個ECC基本保護單元的讀要求,ECC橋接器中的ECC校驗碼生成電路生成SECDED糾錯編碼并通過ECC校驗電路進行校驗,若校驗無錯誤,合并操作命令數據并寫入Slave中;若校驗有錯誤,ECC橋接器中的ECC糾錯電路進行糾錯,如ECC糾錯成功,合并糾錯后的操作命令數據并寫入Slave中,如ECC糾錯失敗,向總線Master發(fā)出訪問出錯信號;S4、進入總線寫狀態(tài),寫總線通過ECC校驗碼生成電路生成SE⑶ED糾錯編碼,并和原數據合并后傳遞給指定Slave。作為本發(fā)明的進一步改進,所述步驟SI還包括若操作命令數據為讀操作,向Slave發(fā)出一個ECC基本保護單元的讀要求,ECC橋接器中的ECC校驗電路進行校驗,若無錯誤,則將讀數據傳遞給總線Master ;若有錯誤,ECC橋接器中的ECC糾錯電路進入糾錯狀態(tài),若糾錯失敗,向總線Master發(fā)出訪問出錯信號,若糾錯成功,將糾錯后的數據傳遞給總線Master。
作為本發(fā)明的進一步改進,所述步驟SI前還包括ECC橋接器偵查總線Master的訪問地址,判斷訪問地址是否為受ECC保護的內存區(qū)域,若是,數據總線Master發(fā)出操作命令數據給ECC橋接器,若否,操作命令數據直接訪問要求旁路。作為本發(fā)明的進一步改進,所述ECC基本保護單元的有效數據位數為2"位,其中η為大于或等于4的整數。作為本發(fā)明的進一步改進,所述ECC校驗碼生成電路生成SE⑶ED糾錯編碼檢驗位數為η+2。作為本發(fā)明的進一步改進,所述總線Master接口的位寬為2n位,Slave接口的位寬為2n+(n+2)位。
相應地,一種基于數據總線的ECC糾錯系統(tǒng),所述系統(tǒng)包括一 ECC橋接器,所述ECC橋接器包括與總線Master連接的總線Master接口以及與Slave連接的Slave接口,所述ECC橋接器中還包括ECC校驗碼生成電路、ECC校驗電路以及ECC糾錯電路。作為本發(fā)明的進一步改進,所述總線Master發(fā)出的操作命令數據的有效數據位數為2"位,其中η為大于或等于4的整數。 作為本發(fā)明的進一步改進,所述ECC校驗碼生成電路生成SE⑶ED糾錯編碼檢驗位數為η+2。作為本發(fā)明的進一步改進,所述總線Master接口的位寬為2n位,Slave接口的位寬為2n+(n+2)位。由以上技術方案可以見,本發(fā)明基于數據總線的ECC糾錯方法及系統(tǒng)采用橋接器的方式提供總線ECC保護功能,各Slave可共享ECC邏輯,Slave接口設計簡單,橋接器對總線Master沒有約束,Master接口無需任何修改,并仍可發(fā)射小于ECC基本保護單元的訪問要求,橋接器自動維護內存中ECC校驗位和有效數據位的一致性。通過將總線Master對小于ECC基本保護單元的訪問需求自動處理成符合ECC基本保護單元位寬要求的訪問,有效地控制了 Slave IP內存的增加。
為了更清楚地說明本申請實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖I為本發(fā)明基于數據總線的ECC糾錯方法的流程示意圖;圖2為本發(fā)明基于數據總線的ECC糾錯系統(tǒng)的結構示意圖;圖3為本發(fā)明一實施例中基于數據總線的ECC糾錯系統(tǒng)的連接示意圖;圖4為本發(fā)明一實施例中Byte寫的時序示意圖。
具體實施例方式為了使本技術領域的人員更好地理解本申請中的技術方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例?;诒旧暾堉械膶嵤├?,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本申請保護的范圍。ECC糾錯的基本原理要求內存除存放基本數據的空間外,還需增加額外的內存空間來存放校驗碼。ECC代碼中以SE⑶ED Hamming Code使用最為普遍。SE⑶ED HammingCode允許單bit糾錯并可監(jiān)測出雙bit錯誤。下述表I是SE⑶ED編碼中有效數據位和校驗碼位數的關系
權利要求
1.一種基于數據總線的ECC糾錯方法,其特征在于,所述方法包括以下步驟 51、ECC橋接器判斷數據總線Master發(fā)出的操作命令數據的種類,若為寫操作,則執(zhí)行步驟S2 ; 52、判斷操作命令數據是否小于ECC基本保護單元的大小,若是,執(zhí)行步驟S3,若否,執(zhí)行步驟S4 ; 53、進入總線讀狀態(tài),向Slave發(fā)出一個ECC基本保護單元的讀要求,ECC橋接器中的ECC校驗碼生成電路生成SE⑶ED糾錯編碼并通過ECC校驗電路進行校驗,若校驗無錯誤,合并操作命令數據并寫入Slave中;若校驗有錯誤,ECC橋接器中的ECC糾錯電路進行糾錯,如ECC糾錯成功,合并糾錯后的操作命令數據并寫入Slave中,如ECC糾錯失敗,向總線Master發(fā)出訪問出錯信號; 54、進入總線寫狀態(tài),寫總線通過ECC校驗碼生成電路生成SE⑶ED糾錯編碼,并和原數據合并后傳遞給指定Slave。
2.根據權利要求I所述的方法,其特征在于,所述步驟SI還包括 若操作命令數據為讀操作,向Slave發(fā)出一個ECC基本保護單元的讀要求,ECC橋接器中的ECC校驗電路進行校驗,若無錯誤,則將讀數據傳遞給總線Master ;若有錯誤,ECC橋接器中的ECC糾錯電路進入糾錯狀態(tài),若糾錯失敗,向總線Master發(fā)出訪問出錯信號,若糾錯成功,將糾錯后的數據傳遞給總線Master。
3.根據權利要求I所述的方法,其特征在于,所述步驟SI前還包括 ECC橋接器偵查總線Master的訪問地址,判斷訪問地址是否為受ECC保護的內存區(qū)域,若是,數據總線Master發(fā)出操作命令數據給ECC橋接器,若否,操作命令數據直接訪問要求芳路。
4.根據權利要求I所述的方法,其特征在于,所述ECC基本保護單元的有效數據位數為2"位,其中η為大于或等于4的整數。
5.根據權利要求4所述的方法,其特征在于,所述ECC校驗碼生成電路生成SECDED糾錯編碼檢驗位數為η+2。
6.根據權利要求5所述的方法,其特征在于,所述總線Master接口的位寬為2n位,Slave接口的位寬為2n+(n+2)位。
7.—種如權利要求I所述的基于數據總線的ECC糾錯系統(tǒng),其特征在于,所述系統(tǒng)包括一 ECC橋接器,所述ECC橋接器包括與總線Master連接的總線Master接口以及與Slave連接的Slave接口,所述ECC橋接器中還包括ECC校驗碼生成電路、ECC校驗電路以及ECC糾錯電路。
8.根據權利要求7所述的系統(tǒng),其特征在于,所述總線Master發(fā)出的操作命令數據的有效數據位數為2"位,其中η為大于或等于4的整數。
9.根據權利要求8所述的系統(tǒng),其特征在于,所述ECC校驗碼生成電路生成SECDED糾錯編碼檢驗位數為η+2。
10.根據權利要求9所述的系統(tǒng),其特征在于,所述總線Master接口的位寬為2n位,Slave接口的位寬為2n+(n+2)位。
全文摘要
本申請公開了一種基于數據總線的ECC糾錯方法及系統(tǒng),該系統(tǒng)包括一ECC橋接器,所述ECC橋接器包括與總線Master連接的總線Master接口以及與Slave連接的Slave接口,所述ECC橋接器中還包括ECC校驗碼生成電路、ECC校驗電路以及ECC糾錯電路。本發(fā)明通過將總線Master對小于ECC基本保護單元的訪問需求自動處理成符合ECC基本保護單元位寬要求的訪問,有效地控制了Slave IP內存的增加。
文檔編號G06F11/10GK102831028SQ20121032996
公開日2012年12月19日 申請日期2012年9月7日 優(yōu)先權日2012年9月7日
發(fā)明者鄭茳, 肖佐楠, 匡啟和, 竺際隆, 張艷麗 申請人:蘇州國芯科技有限公司