[發明專利]一種高能效的片上存儲器錯誤檢測與糾錯電路及實現方法有效
| 申請號: | 202110459436.7 | 申請日: | 2021-04-27 |
| 公開(公告)號: | CN113076219B | 公開(公告)日: | 2022-07-12 |
| 發明(設計)人: | 陳海燕;劉勝;鞠鑫;劉仲;雷元武;魯建壯;陳小文;陳勝剛;李晨 | 申請(專利權)人: | 中國人民解放軍國防科技大學 |
| 主分類號: | G06F11/10 | 分類號: | G06F11/10;G11C29/42 |
| 代理公司: | 湖南兆弘專利事務所(普通合伙) 43008 | 代理人: | 周長清 |
| 地址: | 410073 湖南*** | 國省代碼: | 湖南;43 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 能效 存儲器 錯誤 檢測 糾錯 電路 實現 方法 | ||
一種高能效的片上存儲器錯誤檢測與糾錯電路及實現方法,包括:ECC編碼選擇與生成模塊,用來將根據訪存操作發出的訪存請求中的信息決定是否進行ECC編碼,對訪存數據ECC編碼有效位進行ECC編碼,并將訪存信息和有關ECC編碼結果發給后面的訪存譯碼模塊;訪存譯碼模塊和冗余數據存儲器,訪存譯碼模塊用來進行訪存譯碼,生成冗余數據存儲器訪存端口信號;讀出數據解碼糾錯模塊,用來對ECC編碼進行檢錯和糾錯;讀出數據選擇模塊,用來根據伴隨著訪存流水線發過來的訪存地址、訪存粒度信息選出讀出數據。該實現方法用來上述電路的實現。本發明具有可顯著減少片上存儲器面積和ECC電路實現面積、有效降低微處理器整體功耗等優點。
技術領域
本發明主要涉及到微處理器微體系結構領域,特指一種微處理器中片上存儲器的錯誤檢測與糾錯(Error Checking and Correction,ECC)電路及實現方法。
背景技術
片上存儲器是微處理器的重要組成部分,高效、可靠的數據訪存是決定其正常運行的一個關鍵因素。一方面,隨著半導體工藝尺寸的不斷縮小,芯片晶體管集成密度不斷增長,半導體存儲單元之間的距離隨著存儲單元密度的不斷增加而降低,存儲單元更容易受到來自環境干擾、空間輻射粒子的影響而發生翻轉,因單粒子翻轉事件引起的軟錯誤而導致整個芯片運行錯誤的概率大大增加,因此現代微處理器研制必須對片上存儲器進行基于ECC的可靠性設計。另一方面,隨著微處理器體系結構和應用需求的發展,微處理器片上存儲器面積不斷增加,高性能微處理器的片上存儲器往往占據整個芯片面積的60%以上,進行基于ECC的片上存儲器可靠性設計的同時,必須在不影響微處理器設計性能的同時,綜合考慮ECC的實現代價,以減少存儲器硬件實現面積、降低微處理器整體功耗。
片上存儲器一般采用靜態隨機存儲器,其數據寫入和讀出過程與典型的數據傳輸過程類似,容易產生數據訪存隨機錯誤。針對靜態隨機存儲器單粒子翻轉的差錯控制策略均采用前向糾錯,即利用糾錯碼在存儲器數據的讀出時實現自動檢錯糾錯。由于線性分組碼編、解碼算法成熟,易于硬件實現,不影響正常的數據訪存性能,目前的片上存儲器針對單粒子翻轉錯的ECC設計常常采用基于線性分組碼的糾錯編碼技術來實現糾一檢二等ECC設計,常用的線性分組碼有漢明碼、Hsiao碼、循環碼等。由于通用高性能微處理器數據訪存為了向上兼容,或與其他不同字寬微處理器進行互連和通信,往往支持多種訪存粒度,且各數據訪存粒度大小之間通常呈整數倍關系,如通用CPU支持8位、16位、32位、64位、128位等數據訪存粒度。如果針對最小訪存粒度實現ECC可靠性設計,雖然硬件電路易于實現,但會存在以下問題:
(1)編碼效率低,硬件冗余度增大,特別是糾錯碼需要較大的冗余存儲容量。
例如,某微處理器存在8、16、32、64、128位五種數據訪存粒度,若針對8位數據訪存粒度實現基于Hsiao碼的糾一檢二ECC,每個8位數據則需要5位糾錯校驗碼,即(13,8)的糾一檢二ECC編碼,片上存儲器需要增加原容量的5/8的冗余存儲容量存儲糾錯編碼;即如果用戶需要片上存儲器數據容量為32KB;實現(13,8)的糾一檢二ECC可靠性設計時,需要為其再增加20KB的冗余存儲器空間來存儲糾錯編碼,則該片上存儲器的總設計容量大小為52KB。如果針對64位數據訪存粒度實現基于Hsiao碼的糾一檢二ECC,每個64位數據需要8位糾錯校驗碼,即(72,64)的糾一檢二ECC編碼,片上存儲器只需要增加原容量的1/8的冗余存儲容量存儲糾錯編碼;片上存儲器總設計容量大小只需要32KB+4KB共36KB;
(2)為支持最大數據訪存粒度帶寬,硬件需要更多數量的小粒度糾錯碼編碼、解碼電路模塊。
以上述微處理器為例,若針對8位數據訪存粒度實現基于Hsiao碼的糾一檢二ECC,由于其最大數據訪存粒度位128位,則需要(13,8)的ECC編碼模塊和解碼模塊各16個;假設該微處理器為64位微處理器,主要面向64位高性能計算,如果選擇針對64位數據訪存粒度來實現基于Hsiao碼的(72,64)糾一檢二ECC,只需要(72,64)糾錯碼的編碼模塊、解碼模塊各2個。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國人民解放軍國防科技大學,未經中國人民解放軍國防科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110459436.7/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種基于領域預訓練的嵌套事件抽取方法
- 下一篇:一種關愛老人的助聽器系統





