[發明專利]嵌入式處理器的高速緩存容錯機制有效
| 申請號: | 201310597104.0 | 申請日: | 2013-11-22 |
| 公開(公告)號: | CN103645964B | 公開(公告)日: | 2017-05-10 |
| 發明(設計)人: | 馬鵬 | 申請(專利權)人: | 中國電子科技集團公司第三十二研究所 |
| 主分類號: | G06F11/10 | 分類號: | G06F11/10 |
| 代理公司: | 上海漢聲知識產權代理有限公司31236 | 代理人: | 郭國中 |
| 地址: | 200233 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 嵌入式 處理器 高速緩存 容錯 機制 | ||
技術領域
本發明涉及一種高速緩存(Cache)容錯機制,特別是涉及一種嵌入式處理器的高速緩存容錯機制。
背景技術
高速緩存電路是計算機處理器的主要組成部件之一,主要用于緩存指令和數據。通常情況,緩存指令和緩存數據的高速緩存是分離的,分別稱指令高速緩存和數據高速緩存。圖1顯示了指令高速緩存和數據高速緩存在處理器數據通路上的位置。指令高速緩存位于取指令數據通路上;數據高速緩存位于數據存取單元(load(加載)/store(存儲)單元)的數據通路上。指令高速緩存有兩個端口:一個讀端口,與指令單元連接;一個寫端口,與總線接口單元連接。數據高速緩存也有兩個端口,但兩個端口都是可讀可寫端口,一個端口與指令單元連接,一個端口與總線接口單元連接。
在嵌入式處理器中,高速緩存通常按組相聯的方式組織。這里以一個容量為16KB的高速緩存為例,介紹其組織結構,圖2是其高速緩存的組織結構圖。高速緩存以緩沖塊為基本尋址單位,每個緩存塊為32字節。16KB的高速緩存按128x4個緩存塊組織,即128個分組,每個分組有4路,每路一個緩存塊的方式組織。128x4個緩存塊位于數據RAM(Random Access Memory,隨機存儲器)區。每個緩存都都有一組屬性信息,包括地址、有效狀態、WIMG狀態(Write-through、Caching-Inherited、Memory coherency、Guarded)等,這些信息保存在標簽RAM中。每個緩存塊有一個標簽,高速緩存的所有標簽也是按128x4的方式組織。訪問高速緩存的地址總線為EA(Effective address:有效地址),共32位,用EA[0:31]表示。訪問高速緩存時,用EA[20:26]選擇128個分組的某一組,用EA[0:19]與分組內4個緩存塊的地址比較,如果相等,且緩存塊有效,則訪問命中,將從對應緩存塊讀取數據。
受信號噪聲、宇宙射線等因素影響,高速緩存中存儲的比特數據可能受觸發,跳變到錯誤狀態,例如數據RAM的比特存儲單元本來存儲的是1,在電源噪聲的干擾下,存儲單元的數據變成了0。這種錯誤可能導致程序錯誤,或程序運行結果與預期結果不一致。
高速緩存的容錯機制正是為了檢查高速緩存中的數據是否錯誤,以及糾正出錯的數據位。高速緩存的容錯機制之一是ECC(Error Checking Coding,錯誤檢查編碼)保護,例如專利US5233616A“Write-back cache with ECC protection”提出ECC保護機制。該專利的原理是:數據寫入高速緩存時,要對寫入的數據生成ECC碼;從高速緩存讀出數據時,要對讀出的數據進行ECC碼檢查和校正。ECC碼可以檢查出2位數據錯誤,糾正1位數據錯誤。ECC保護機制可以提供處理器運行的可靠性,在服務器、圖像處理器中廣泛使用。
嵌入式處理器要求成本低、功耗低,并且集成的高速緩存容量小,所以嵌入式處理器的高速緩存通常沒有容錯機制。隨著工藝技術的進步,嵌入式處理器的高速緩存容量越來越大,高速緩存引入容錯機制已經成為趨勢。
美國專利US5233616A提出的ECC保護機制雖然也可用于嵌入式處理器的高速緩存,但存在以下問題:
(1)ECC保護機制的電路復雜
以64位數據總線為例,需要8位ECC碼。生成ECC碼共需226次異或運算。其中生成ECC[6]的路徑最長,需要35次異或運算。ECC碼的檢查和糾錯邏輯等同于8輸入64輸出的譯碼器,也是非常復雜的電路。
(2)ECC保護機制增加了高速緩存的訪問時間,降低了處理器的性能
圖3和圖4分別示例了無ECC保護機制和有ECC保護機制時,高速緩存的讀數據路徑。圖4的路徑相對圖3的路徑多了ECC碼生成和ECC碼檢查與糾錯邏輯,導致訪問高速緩存的訪問時間增加10%以上。
發明內容
本發明所要解決的技術問題是提供一種嵌入式處理器的高速緩存容錯機制,其以奇偶校驗為基礎,結合異常處理,達到處理器硬件增加盡量少,處理器性能影響盡量小的效果。
本發明是通過下述技術方案來解決上述技術問題的:一種嵌入式處理器的高速緩存容錯機制,其特征在于,其包括以下步驟:
步驟一,嵌入式處理器內有指令高速緩存和數據高速緩存;指令高速緩存有一個讀端口和一個寫端口;寫高速緩存時,寫端口根據寫數據總線上的數據生成奇偶校驗碼;
步驟二,讀高速緩存時,讀端口鎖存從高速緩存讀出數據和奇偶校驗碼,同時鎖存讀高速緩存的訪問地址;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國電子科技集團公司第三十二研究所,未經中國電子科技集團公司第三十二研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310597104.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:油罐(圓罐方蓋)
- 下一篇:酒瓶(陸易艾諾安城堡?5)





