TW202329147A - 記憶體裝置、錯誤校正碼電路及其操作方法 - Google Patents
記憶體裝置、錯誤校正碼電路及其操作方法 Download PDFInfo
- Publication number
- TW202329147A TW202329147A TW111144487A TW111144487A TW202329147A TW 202329147 A TW202329147 A TW 202329147A TW 111144487 A TW111144487 A TW 111144487A TW 111144487 A TW111144487 A TW 111144487A TW 202329147 A TW202329147 A TW 202329147A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- error
- syndrome
- parity
- circuit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/1174—Parity-check or generator matrices built from sub-matrices representing known block codes such as, e.g. Hamming codes, e.g. generalized LDPC codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1575—Direct decoding, e.g. by a direct determination of the error locator polynomial from syndromes and subsequent analysis or by matrix operations involving syndromes, e.g. for codes with a small minimum Hamming distance
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
- H03M13/098—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit using single parity bit
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1585—Determination of error values
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/61—Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
- H03M13/615—Use of computational or mathematical techniques
- H03M13/616—Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Detection And Correction Of Errors (AREA)
- Error Detection And Correction (AREA)
Abstract
揭露一種記憶體裝置,所述記憶體裝置包括:記憶體胞元陣列,儲存第一資料及第一奇偶性資料;錯誤校正碼(ECC)電路,基於第一資料及第一奇偶性資料而實行錯誤校正碼解碼且輸出經錯誤校正的資料及解碼狀態旗標;以及輸入/輸出電路,將經錯誤校正的資料及解碼狀態旗標提供至記憶體控制器。所述錯誤校正碼電路包括:校驗子產生器,基於第一資料及第一奇偶性資料而產生校驗子;校驗子解碼電路,對校驗子進行解碼以產生錯誤向量;校正邏輯電路,基於錯誤向量及第一資料而產生經錯誤校正的資料;以及快速解碼狀態旗標(DSF)產生器,基於校驗子而不使用錯誤向量而產生解碼狀態旗標。
Description
實施例是有關於一種半導體記憶體,且更具體而言,是有關於一種錯誤校正碼電路、包括所述錯誤校正碼電路的記憶體裝置以及所述記憶體裝置的錯誤校正碼解碼方法。
[相關申請案的交叉參考]
本申請案基於35 U.S.C. § 119主張於2021年11月25日在韓國智慧財產局提出申請的韓國專利申請案第10-2021-0164956號及2022年4月21日在韓國智慧財產局提出申請的韓國專利申請案第10-2022-0049463號的優先權,該些韓國專利申請案的揭露內容全文以引用的方式併入本案。
半導體記憶體裝置可被分類為:揮發性記憶體裝置(在揮發性記憶體裝置中當電源供應器斷開時所儲存的資料會消失),例如靜態隨機存取記憶體(static random access memory,SRAM)或動態隨機存取記憶體(dynamic random access memory,DRAM);或者非揮發性記憶體裝置(在非揮發性記憶體裝置中即使當電源供應器斷開時所儲存的資料仍會保留下來),例如快閃記憶體裝置、相變隨機存取記憶體(random access memory,RAM)(phase-change RAM,PRAM)、磁性RAM(magnetic RAM,MRAM)、電阻式RAM(resistive RAM,RRAM)或鐵電RAM(ferroelectric RAM,FRAM)。
實施例是有關於一種記憶體裝置,所述記憶體裝置包括記憶體胞元陣列,儲存第一資料及第一奇偶性資料;錯誤校正碼(error correction code,ECC)電路,基於第一資料及第一奇偶性資料而實行ECC解碼且輸出經錯誤校正的資料及解碼狀態旗標;以及輸入/輸出電路,將經錯誤校正的資料及解碼狀態旗標提供至記憶體控制器。所述ECC電路包括:校驗子產生器,基於第一資料及第一奇偶性資料而產生校驗子;校驗子解碼電路,對校驗子進行解碼以產生錯誤向量;校正邏輯電路,基於錯誤向量及第一資料而產生經錯誤校正的資料;以及快速解碼狀態旗標(DSF)產生器,基於校驗子而不使用錯誤向量而產生解碼狀態旗標。
實施例是有關於一種錯誤校正碼(ECC)電路,所述ECC電路被配置成基於記憶體裝置中所儲存的第一資料及第一奇偶性資料來校正第一資料,所述ECC電路包括:校驗子產生器,基於來自記憶體裝置的第一資料及第一奇偶性資料而產生校驗子;校驗子解碼電路,將校驗子與奇偶性檢查矩陣的每一行進行比較以產生錯誤向量;校正邏輯電路,基於錯誤向量及第一資料而產生經錯誤校正的資料;以及快速解碼狀態旗標(DSF)產生器,基於校驗子及簡化的奇偶性檢查矩陣而產生解碼狀態旗標,所述解碼狀態旗標指示經錯誤校正的資料的解碼狀態,並且簡化的奇偶性檢查矩陣僅包括關於奇偶性檢查矩陣的一部分的資訊。
實施例是有關於一種錯誤校正碼(ECC)電路的操作方法,所述ECC電路被配置成基於記憶體裝置中所儲存的第一資料及第一奇偶性資料來校正第一資料,所述操作方法包括:基於第一資料及第一奇偶性資料而產生校驗子;基於校驗子及奇偶性檢查矩陣而產生錯誤向量;對錯誤向量及第一資料實行邏輯運算以產生經錯誤校正的資料;基於校驗子及簡化的奇偶性檢查矩陣而產生解碼狀態旗標,以及將經錯誤校正的資料及解碼狀態旗標發送至記憶體控制器,並且並列實行錯誤向量的產生與解碼狀態旗標的產生。
實施例是有關於一種配置錯誤校正碼(ECC)電路的方法,所述方法包括:確定欲用於ECC電路的校驗子解碼的奇偶性檢查矩陣;基於奇偶性檢查矩陣的重複特性而產生簡化的奇偶性檢查矩陣;以及配置ECC電路的快速解碼狀態旗標產生器,使得能夠基於關於簡化的奇偶性檢查矩陣的每一行的資訊而對關於校驗子的一部分的資訊實行邏輯運算,並且簡化的奇偶性檢查矩陣僅包括關於奇偶性檢查矩陣的一部分的資訊。
圖1是示出根據實例性實施例的記憶體系統的方塊圖。
參照圖1,記憶體系統10可包括記憶體控制器11及記憶體裝置100。記憶體系統10可為例如以下資訊處理裝置(其被配置成處理各種資訊並儲存經處理的資訊)中的一者:個人電腦(personal computer,PC)、膝上型電腦、伺服器、工作站、智慧型電話、平板PC、數碼相機及黑箱(black box)。
記憶體控制器11可將資料儲存於記憶體裝置100中,或者可讀取儲存於記憶體裝置100中的資料。舉例而言,記憶體控制器11可向記憶體裝置100發送時脈訊號CK及命令/位址訊號CA,且可與記憶體裝置100交換資料訊號DQ及資料選通訊號DQS。藉由資料訊號DQ及資料選通訊號DQS,可自記憶體控制器11將資料「DATA」發送至記憶體裝置100,或者可自記憶體裝置100將資料「DATA」發送至記憶體控制器11。記憶體控制器11與記憶體裝置100可基於雙倍資料速率(double data rate,DDR)介面或低功率DDR(low power DDR,LPDDR)介面而彼此通訊。
記憶體裝置100可在記憶體控制器11的控制下進行操作。記憶體裝置100可為動態隨機存取記憶體(DRAM)。記憶體裝置100可包括例如SRAM等揮發性記憶體或者例如PRAM及/或RRAM等非揮發性記憶體。
記憶體裝置100可包括錯誤校正碼(ECC)電路110。ECC電路110可被配置成偵測及校正記憶體裝置100中存在的資料的錯誤。ECC電路110可藉由對自記憶體控制器11接收到的第一資料實行ECC解碼來產生奇偶性資料。記憶體裝置100可儲存自記憶體控制器11接收到的第一資料以及由ECC電路110產生的奇偶性資料。在記憶體裝置100的操作期間,由於各種因素,在記憶體裝置100中存在的第一資料中可能會出現錯誤。當記憶體控制器11作出對第一資料的讀取請求時,ECC電路110可藉由基於第一資料及對應的奇偶性資料而實行ECC解碼來校正第一資料的錯誤。記憶體裝置100可將經校正的第一資料發送至記憶體控制器11。
ECC電路110可在給定的錯誤校正能力內校正錯誤。當自資料偵測到的錯誤超過ECC電路110的錯誤校正能力時,自資料偵測到的錯誤可能無法被正常校正。
記憶體控制器11需要用於判斷自記憶體裝置100接收到的讀取資料是包括不可校正的錯誤或是正常資料(例如,無錯誤資料(error-free data)或者其中錯誤被正常校正的資料)的資訊。因此,ECC電路110可向記憶體控制器11發送解碼狀態旗標DSF。解碼狀態旗標DSF是指指示發送至記憶體控制器11的資料是不可校正的錯誤(uncorrectable error,UE)資料或是正常資料的資訊。解碼狀態旗標DSF可在ECC電路110的ECC解碼製程中產生。
根據實例性實施例,ECC電路110可僅使用在ECC解碼製程中產生的校驗子來產生解碼狀態旗標DSF。在此種情形中,可縮短產生解碼狀態旗標DSF所花費的時間。下面將詳細闡述ECC電路110的配置及產生解碼狀態旗標DSF的方式。
圖2是示出圖1所示的記憶體裝置的方塊圖。
參照圖1及圖2,記憶體裝置100可包括ECC電路110、記憶體胞元陣列120、命令/位址(command/address,CA)緩衝器130、位址解碼器140、命令解碼器150、感測放大器及寫入驅動器160以及輸入/輸出電路170。
ECC電路110可藉由對欲儲存於記憶體胞元陣列120中的資料實行ECC編碼來產生奇偶性資料。在另一實施方式中,ECC電路110可藉由基於讀取資料及奇偶性資料而實行ECC解碼來校正自記憶體胞元陣列120讀取的資料的錯誤。下面將詳細闡述ECC電路110的配置及操作。
記憶體胞元陣列120可包括多個記憶體胞元。所述多個記憶體胞元可與多條字元線及多條位元線連接。所述多條字元線可由X解碼器(或列解碼器)X-DEC驅動,且所述多條位元線可由Y解碼器(或行解碼器)Y-DEC驅動。
CA緩衝器130可被配置成接收命令/位址訊號CA,並臨時儲存或緩衝接收到的訊號。
位址解碼器140可對儲存於CA緩衝器130中的位址訊號ADDR進行解碼。位址解碼器140可基於解碼結果而控制X解碼器及Y解碼器。
命令解碼器150可對儲存於CA緩衝器130中的命令CMD進行解碼。命令解碼器150可基於解碼結果而控制記憶體裝置100的組件。
舉例而言,在儲存於CA緩衝器130中的命令訊號對應於寫入命令的情形中(即,在自記憶體控制器11接收到的命令是寫入命令的情形中),命令解碼器150可控制ECC電路110以使得經由輸入/輸出電路170接收到的資料「DATA」被寫入記憶體胞元陣列120中(即,可實行ECC編碼),並且可控制感測放大器及寫入驅動器160的操作(即,可啟用寫入驅動器)。
作為另一實例,在儲存於CA緩衝器130中的命令訊號對應於讀取命令的情形中(即,在自記憶體控制器11接收到的命令是讀取命令的情形中),命令解碼器150可控制ECC電路110以使得儲存於記憶體胞元陣列120中的資料被讀出(即,可實行ECC解碼),並且可控制感測放大器及寫入驅動器160的操作(即,可啟用感測放大器)。
在命令解碼器150的控制下,感測放大器及寫入驅動器160可經由所述多條位元線讀取儲存於記憶體胞元陣列120中的資料,或者可經由所述多條位元線將資料寫入記憶體胞元陣列120中。
基於資料訊號DQ及資料選通訊號DQS,輸入/輸出電路170可自記憶體控制器11接收資料「DATA」或者可將資料「DATA」發送至記憶體控制器11。輸入/輸出電路170可自ECC電路110接收解碼狀態旗標DSF,並且可將解碼狀態旗標DSF發送至記憶體控制器11。可藉由資料訊號DQ將解碼狀態旗標DSF發送至記憶體控制器11。在另一實施方式中,可藉由各種控制訊號(例如,DBI及DMI)或任何其他專用訊號將解碼狀態旗標DSF發送至記憶體控制器11。
圖3是用於闡述圖2所示的ECC電路的操作的方塊圖。
為了附圖簡潔且便於說明起見,省略了對於闡述ECC電路110的操作而言並非必需的組件。
參照圖2及圖3,ECC電路110可包括ECC編碼器及ECC解碼器。ECC編碼器可藉由對欲儲存於記憶陣列120中的寫入資料WDT實行ECC編碼來產生奇偶性資料PRT。舉例而言,相對於具有128b(即,128位元)的寫入資料WDT,ECC編碼器可使用具有8b的基礎位元BB來產生具有8b(即,8位元)的奇偶性資料PRT。寫入資料WDT及奇偶性資料PRT可藉由感測放大器及寫入驅動器160而儲存於記憶體胞元陣列120中。
ECC解碼器可藉由基於自記憶體胞元陣列120讀取的讀取資料RDT及奇偶性資料PRT實行ECC解碼來輸出經錯誤校正的讀取資料RDT_cor。舉例而言,相對於具有128b的寫入資料RDT,ECC解碼器可使用具有8b的奇偶性資料PRT來產生具有128b的經錯誤校正的讀取資料RDT_cor。ECC解碼器可產生解碼狀態旗標DSF,解碼狀態旗標DSF指示ECC解碼結果或經錯誤校正的讀取資料RDT_cor的狀態。
在下文中,可給出一些資料值或位元值處於特定位準或特定位元位準(例如,「1」或「0」)的說明。然而,應理解,可對藉由實例的方式所闡述的各種資料值或位元值進行各種修改或改變。
圖4A是示出ECC解碼器的操作的參考實例的流程圖。圖4B是示出被配置成根據圖4A所示的流程圖實行操作的ECC解碼器的方塊圖。圖4C是示出圖4B所示的DSF產生器的方塊圖。
在參考實例中,參照圖4A、圖4B及圖4C,在操作S10中,ECC解碼器ECC-DEC可基於讀取資料RDT及奇偶性資料PRT而產生校驗子SYD。舉例而言,在記憶體裝置100的讀取操作中,感測放大器及寫入驅動器160可讀取儲存於記憶體胞元陣列120中的讀取資料RDT及奇偶性資料PRT,且可將讀取資料RDT及奇偶性資料PRT傳送至ECC解碼器ECC-DEC。參照圖4B,ECC解碼器ECC-DEC可包括校驗子產生器111。校驗子產生器111可基於具有128b的讀取資料RDT及具有8b的奇偶性資料PRT而產生校驗子SYD。校驗子產生器111可基於具有128b的讀取資料RDT而產生具有8b的檢查位元(check bit),且可藉由對具有8b的檢查位元及具有8b的奇偶性資料PRT實行邏輯運算來產生具有8b的校驗子SYD。
在操作S20中,ECC解碼器ECC-DEC可藉由對校驗子SYD實行解碼來產生錯誤向量ERV。舉例而言,參照圖4B,ECC解碼器ECC-DEC可更包括校驗子解碼電路112。校驗子解碼電路112可自校驗子產生器111接收校驗子SYD,且可藉由對接收到的校驗子SYD進行解碼來產生錯誤向量ERV。
校驗子解碼電路112可藉由將奇偶性檢查矩陣(parity-check matrix)(下文中被稱為「H矩陣」)與校驗子SYD進行比較來偵測出現錯誤的讀取資料RDT的位置。錯誤向量ERV可具有128b的大小(其可等於讀取資料RDT的大小),且可包括關於出現錯誤的讀取資料RDT的位置的資訊。
在操作S31中,ECC解碼器ECC-DEC可使用錯誤向量ERV來校正讀取資料RDT的錯誤。舉例而言,參照圖4B,ECC解碼器ECC-DEC可更包括校正邏輯電路113。校正邏輯電路113可藉由對錯誤向量ERV及由感測放大器及寫入驅動器160讀取的讀取資料RDT實行逐位元互斥或(bitwise XOR)運算來輸出經錯誤校正的讀取資料RDT_cor。
在操作S32中,ECC解碼器ECC-DEC可基於錯誤向量ERV及校驗子SYD而產生解碼狀態旗標DSF。舉例而言,參照圖4B,ECC解碼器ECC-DEC可更包括DSF產生器114。DSF產生器114可自校驗子解碼電路112接收具有8b的校驗子SYD及具有128b的錯誤向量ERV,且可基於接收到的資訊而產生解碼狀態旗標DSF。
詳言之,參照圖4C,DSF產生器114可包括資料錯誤檢查電路114a、校驗子檢查電路114b、奇偶性錯誤檢查電路114c及解碼狀態旗標偵測電路114d。
資料錯誤檢查電路114a可基於錯誤向量ERV而產生指示在讀取資料RDT中是否包括錯誤的錯誤資訊ERR。資料錯誤檢查電路114a可藉由判斷錯誤向量ERV的位元中的至少一者是否為「1」來產生錯誤資訊ERR。在實施方式中,錯誤資訊ERR的值「0」可指示讀取資料RDT中不存在錯誤;而錯誤資訊ERR的值「1」可指示讀取資料RDT中存在錯誤。
基於校驗子SYD的所有位元為「0」,校驗子檢查電路114b可產生校驗子資訊SYD_0。校驗子SYD的所有位元為「0」的情形(即,校驗子SYD為全零(all-zero)的情形)可指示讀取資料RDT及奇偶性資料PRT中不存在錯誤;校驗子SYD的位元中的至少一者為「1」的情形(即,校驗子SYD為非零(non-zero)的情形)可指示讀取資料RDT或奇偶性資料PRT中存在錯誤。在實施方式中,當校驗子SYD的所有位元為「0」時(即,當校驗子SYD為全零時),校驗子資訊SYD_0可為「1」,且當校驗子SYD的位元中的至少一者為「1」時(即,當校驗子SYD為非零時),校驗子資訊_0可為「0」。
奇偶性錯誤檢查電路114c可基於奇偶性資料PRT中存在錯誤而輸出奇偶性錯誤資訊PRT_ERR。奇偶性錯誤檢查電路114c可基於n × n單位矩陣(identity matrix)及校驗子SYD(n指示校驗子SYD的大小(即,位元數目))而產生奇偶性錯誤資訊PRT_ERR。
解碼狀態旗標偵測電路114d可基於錯誤資訊ERR、校驗子資訊SYD_0及奇偶性錯誤資訊PRT_ERR而產生解碼狀態旗標DSF。舉例而言,解碼狀態旗標DSF可指示ECC解碼結果的解碼狀態。解碼狀態可指示由ECC解碼器ECC-DEC輸出的最終資料(即,經錯誤校正的讀取資料RDT_cor)是否是正常資料(即,讀取資料RDT中是否不存在錯誤或者讀取資料RDT中是否包括可校正的錯誤)或者讀取資料RDT中是否包括不可校正的錯誤。
下文中,為便於說明起見,與讀取資料RDT中包括不可校正的錯誤的情形對應的解碼結果或解碼狀態被稱為不可校正的錯誤(UE);與讀取資料RDT中包括可校正的錯誤的情形對應的解碼結果或解碼狀態被稱為可校正的錯誤(correctable error,CE);與讀取資料RDT中不包括錯誤的情形對應的解碼結果或解碼狀態被稱為無錯誤(non-error,NE)。
在實例中,當錯誤資訊ERR為「0」(即,讀取資料RDT中不存在錯誤),校驗子資訊SYD_0為「0」(即,讀取資料RDT或奇偶性資料PRT中存在錯誤),且奇偶性錯誤資訊PRT_ERR為「0」(即,奇偶性資料PRT中不存在錯誤)時,解碼狀態可為「UE」。在此種情形中,解碼狀態旗標DSF可被設定為「1」。
作為另一實例,在不同於以上情形的資訊組合中,自ECC解碼器ECC-DEC輸出的經錯誤校正的讀取資料RDT_cor可處於正常資料的狀態(即,處於不存在錯誤或錯誤被正常校正的狀態)。在此種情形中(即,在「NE」或「CE」的情形中),解碼狀態旗標DSF可被設定為「0」。
返回至圖4A,在操作S40中,ECC解碼器ECC-DEC可輸出經錯誤校正的讀取資料RDT_cor及解碼狀態旗標DSF。可經由輸入/輸出電路170(參照圖2)將經錯誤校正的讀取資料RDT_cor及解碼狀態旗標DSF提供至記憶體控制器11。記憶體控制器11可基於解碼狀態旗標DSF確定接收到的資料的解碼狀態且可基於確定結果實行各種操作。舉例而言,對於「UE」,記憶體控制器11可實行讀取重試操作、重置操作或各種其他維護操作(maintenance operation)。
參照圖4A至圖4C闡述的ECC解碼器ECC-DEC的操作可藉由各種邏輯運算電路來實施。舉例而言,操作S10(即,校驗子產生操作)可藉由6級XOR運算電路來實行,操作S20(即,校驗子解碼操作)可藉由3級及(AND)運算電路來實行,且操作S31(即,錯誤校正操作)可藉由1級XOR運算電路來實行。
對於操作S32(即,產生解碼狀態旗標DSF的操作),資料錯誤檢查電路114a可藉由7級XOR運算電路來實施,校驗子檢查電路114b可藉由4級AND運算電路來實施,奇偶性錯誤檢查電路114c可藉由3級AND運算電路以及3級或(OR)運算電路來實施,且解碼狀態旗標偵測電路114d可藉由1級OR運算電路、1級反相(invert,INV)運算電路及1級AND運算電路來實施。
如以上在圖4A至圖4C的參考實例中所述,在操作S32中使用錯誤向量ERV。因此,在完成操作S20之後實行操作S32。在此種情形中,自完成校驗子解碼操作時的時間點至完成操作S32時的時間點的潛時可為與總共7個OR運算電路級、一個INV運算電路級及一個AND運算電路級對應的潛時。
此外,並列實行操作S32與操作S31。在此種情形中,由於操作S32的潛時相較於操作S31的潛時而言相對長,因此應理解,操作S32(即,產生解碼狀態旗標DSF的操作)可能會導致效能降低。
另一方面,如現在將參照圖5A至圖5C所述,根據實例性實施例產生解碼狀態旗標DSF的潛時可減少。
圖5A是示出根據實例性實施例的圖3所示的ECC解碼器的操作的流程圖。圖5B是示出被配置成根據圖5A所示的流程圖實行操作的ECC解碼器的方塊圖。圖5C是示出圖5B所示的快速DSF產生器的方塊圖。下文中,為便於說明起見,將省略與上述組件相關聯的額外的說明以避免贅述。
在本實例性實施例中,參照圖3、圖5A、圖5B及圖5C,在操作S110中,ECC解碼器ECC-DEC-1可基於讀取資料RDT及奇偶性資料PRT而產生校驗子SYD。舉例而言,參照圖5B,ECC解碼器ECC-DEC-1可包括校驗子產生器111。圖5A所示的操作S110相似於圖4A所示的操作S10,且圖5B所示的校驗子產生器111的操作可相似於圖4B所示的校驗子產生器111的操作。
在操作S120中,ECC解碼器ECC-DEC-1可藉由對校驗子SYD實行解碼來產生錯誤向量ERV。舉例而言,參照圖5B,ECC解碼器ECC-DEC-1可包括校驗子解碼電路112。圖5A所示的操作S120相似於圖4A所示的操作S20,且圖5B所示的校驗子解碼電路112的操作可相似於圖4B所示的校驗子解碼電路112的操作。
在操作S130中,ECC解碼器ECC-DEC-1可基於錯誤向量ERV來校正讀取資料RDT的錯誤。舉例而言,參照圖5B,ECC解碼器ECC-DEC-1可包括校正邏輯電路113。圖5A所示的操作S130相似於圖4A所示的操作S31,且圖5B所示的校正邏輯電路113的操作可相似於圖4B所示的校正邏輯電路113的操作。
在操作S140中,ECC解碼器ECC-DEC-1可基於校驗子及簡化的H矩陣而產生解碼狀態旗標DSF。相較於圖4B中的參考實例的ECC解碼器ECC_DEC而言,本實例性實施例的ECC解碼器ECC-DEC-1可更包括快速DSF產生器115,如圖5B所示。此將在下面進一步闡述。
再次參照圖5A,在操作S150中,ECC解碼器ECC-DEC-1可輸出經錯誤校正的讀取資料RDT_cor及解碼狀態旗標DSF。圖5A所示的操作S150可相似於圖4A所示的操作S40。
在本實例性實施例中,參照圖5A至圖5C,快速DSF產生器115可僅使用校驗子SYD而不使用錯誤向量ERV來產生解碼狀態旗標DSF。由於快速DSF產生器115不使用錯誤向量ERV來產生解碼狀態旗標DSF,因此快速DSF產生器115可與校驗子解碼操作(例如,操作S120)並列進行操作或者與校驗子解碼操作(例如,操作S120)同時進行操作。
舉例而言,參照圖5B,ECC解碼器ECC-DEC-1可包括快速DSF產生器115。快速DSF產生器115可自校驗子解碼電路112接收校驗子SYD,且可基於接收到的校驗子SYD而產生解碼狀態旗標DSF。
參照圖5C,快速DSF產生器115可包括校驗子檢查電路115b、奇偶性錯誤檢查電路115c、DSF偵測電路115d及快速資料錯誤檢查電路115e。
圖5C所示的校驗子檢查電路115b、奇偶性錯誤檢查電路115c、DSF偵測電路115d的操作可相似於圖4C所示的校驗子檢查電路114b、奇偶性錯誤檢查電路114c及DSF偵測電路114d的操作。
圖4C的參考實例的DSF產生器114使用錯誤向量ERV來產生關於讀取資料RDT的錯誤資訊ERR。相比之下,圖5C所示的快速資料錯誤檢查電路115e可使用校驗子SYD來產生關於讀取資料RDT的錯誤資訊DT_ERR。
詳言之,快速資料錯誤檢查電路115e可藉由將校驗子SYD的位元中的至少一些位元與簡化的H矩陣進行比較來產生關於讀取資料RDT的錯誤資訊DT_ERR。可基於由校驗子解碼電路112使用的H矩陣或者基於H矩陣的部分資訊而產生簡化的H矩陣。
將參照圖6至圖8詳細闡述簡化的H矩陣的配置。
如上所述,根據本實例性實施例的快速DSF產生器115可僅使用校驗子SYD而不使用錯誤向量ERV來產生解碼狀態旗標DSF。因此,產生解碼狀態旗標DSF的操作可與校驗子解碼操作並列實行,且ECC解碼器ECC-DEC-1的整體潛時可減少。
換言之,如對圖4A至圖4C的參考實例所闡述,自完成校驗子解碼操作時的時間點起產生解碼狀態旗標DSF所需的潛時可為與總共7個OR運算電路級、一個INV運算電路級及一個AND運算電路級對應的潛時。另一方面,如參照圖5A至圖5C的本實例性實施例所述,藉由快速DSF產生器115,自完成校驗子解碼操作時的時間點起產生解碼狀態旗標DSF所需的潛時可為與總共4個OR運算電路級、一個INV運算電路級及一個AND運算電路級對應的潛時。
因此,根據本實例性實施例,可僅使用校驗子SYD而不使用錯誤向量ERV來產生解碼狀態旗標DSF,使得ECC解碼器ECC-DEC-1的整體潛時可得到減少。
圖6、圖7A、圖7B及圖7C是示出由圖5A所示的校驗子解碼電路使用的H矩陣的一些實例的圖。圖8是示出基於圖6至圖7C所示的H矩陣而產生的簡化的H矩陣的一些實例的圖。
在本實例性實施例中,快速資料錯誤檢查電路115e可使用簡化的H矩陣sim-H-mat。
在實例性實施例中,現在將參照圖6至圖8闡述的H矩陣H-mat是用於單位元錯誤校正(single bit error correction,SEC)的H矩陣的實例。然而,應理解,H矩陣及簡化的H矩陣可端視記憶體裝置100或ECC電路110的實施方式而進行各種修改或改變。
參照圖6、圖7B及圖7C,H矩陣H-mat可包括多個子矩陣SM00至SM15及奇偶性矩陣PR。參照圖7A,奇偶性矩陣PR可為具有8 × 8的維度的單位矩陣IM。奇偶性矩陣PR的八個列可分別對應於校驗子SYD的八個位元(例如,S0、S1、S2、S3、S4、S5、S6及S7)中的每一者。
所述多個子矩陣SM00至SM15中的每一者可為8 × 8的維度。所述多個子矩陣SM00至SM15可被排列成具有給定的規則。
舉例而言,所述多個子矩陣SM00至SM15中的每一者的三個列可構成第A0區段矩陣A0。亦即,所述多個子矩陣SM00至SM15中的每一者的三個列可具有相同的重複圖案。
此外,其餘列(即,所述多個子矩陣SM00至SM15中的每一者的五個列)可構成第B00子矩陣B00至第B15子矩陣B15中的每一者。第B00子矩陣B00至第B15子矩陣B15可被配置成具有相同的行。
詳言之,參照圖7B,H矩陣H-mat的每一列可對應於校驗子SYD的位元(例如,S0、S1、S2、S3、S4、S5、S6及S7)中的每一者。
舉例而言,第A0子矩陣A0可置於H矩陣H-mat的第00子矩陣SM00的第一子列(例如,對應於S0、S1及S2的列)處,且第A0子矩陣A0可置於第01子矩陣SM01的第一子列(例如,對應於S0、S1及S2的列)處。同樣地,第A0子矩陣A0可置於第15子矩陣SM15的第一子列(例如,對應於S0、S1及S2的列)處。
相似地,第B00子矩陣B00可置於H矩陣H-mat的第00子矩陣SM00的第二子列(例如,對應於S3、S4、S5、S6及S7的列)處,且第B01子矩陣B01可置於第01子矩陣SM01的第二子列(例如,對應於S3、S4、S5、S6及S7的列)處。同樣地,第B15子矩陣B15可置於第15子矩陣SM15的第二子列(例如,對應於S3、S4、S5、S6及S7的列)處。
在H矩陣H-mat的第一子列1st sub-Row(例如,對應於S0、S1及S2的列)中,可形成以子矩陣為單位(即,以8行為單位)重複放置相同矩陣的型樣。在H矩陣H-mat的第二子列2nd sub-Row(例如,對應於S3、S4、S5、S6及S7的列)中,可形成以子矩陣為單位(即,以8行為單位)放置不同子矩陣的型樣。同樣地,H矩陣H-mat的第二子列(例如,對應於S3、S4、S5、S6及S7的列)的相同子矩陣中的行可彼此相同。
藉由將參照圖7A及圖7B闡述的奇偶性矩陣PR與子矩陣SM00至SM15組合起來,可參照圖7C實施H矩陣H-mat。校驗子解碼電路112可藉由將校驗子SYD的每一位元與圖7C所示的H矩陣H-mat的每一行進行比較來產生具有128b的錯誤向量ERV。舉例而言,校驗子解碼電路112可自H矩陣H-mat的所述多個行之中搜尋與校驗子SYD相同的行,且可基於找到的結果而產生錯誤向量ERV。與H矩陣H-mat的所述多個行之中相同於校驗子SYD的行對應的位置的位元可指示自讀取資料RDT偵測到的錯誤。
其中校驗子SYD的所有位元不為「0」(即,校驗子SYD為非零)但H矩陣H-mat的所述多個行中不存在與校驗子SYD相同的行的情形可指示讀取資料RDT中包括不可校正的錯誤。
圖7C中示出的H矩陣H-mat僅為用於單位元錯誤校正(SEC)的H矩陣的實例,且可發生變化。
在參照圖7C實施H矩陣H-mat的情形中,可參照圖8產生或確定簡化的H矩陣sim-H-mat。
舉例而言,參照圖8,可基於H矩陣H-mat的一些列(例如,第二子列2nd sub-Row)的資訊而產生簡化的H矩陣sim-H-mat。
詳言之,如上所述,H矩陣H-mat可被劃分成多個子矩陣SM00至SM15。所述多個子矩陣SM00至SM15中的每一者可為8 × 8的維度。亦即,H矩陣H-mat可以8行為單位(即,具有8b的單位)進行劃分。在此種情形中,在所述多個子矩陣SM00至SM15中的每一者中,第一子列1st sub-Row(例如,對應於S0、S1及S2的列)可構成同一第A0子矩陣A0,且第A0子矩陣A0的每一行指示能夠由三個位元表示的所有組合。換言之,此意指H矩陣H-mat的第一子列1st sub-Row(例如,對應於S0、S1及S2的列)具有藉由與校驗子SYD的位元S0、S1及S2進行比較來指定錯誤的準確位置的功能,而不是用於判斷是否出現錯誤。
相比之下,H矩陣H-mat的第二子列2nd sub-Row(例如,對應於S3、S4、S5、S6及S7的列)由第B00子矩陣B00至第B15子矩陣B15構成。在此種情形中,第B00子矩陣B00至第B15子矩陣B15具有不同的位元行。然而,在同一子矩陣中(即,在第B00子矩陣B00至第B15子矩陣B15中的每一者中),所有行具有相同的值。在此種情形中,H矩陣H-mat的第二子列2nd sub-Row(例如,對應於S3、S4、S5、S6及S7的列)可由16個位元行表示。在此種情形中,能夠藉由5個位元進行組合的位元行的數目是32。亦即,在H矩陣H-mat的第二子列2nd sub-Row(例如,對應於S3、S4、S5、S6及S7的列)中,可藉由將每一行與校驗子SYD的位元S3、S4、S5、S6及S7進行比較來判斷是否偵測到錯誤。
根據實例性實施例,可使用關於並非指定H矩陣H-mat中的錯誤位置所需的列的其餘列中的一些列的資訊來產生簡化的H矩陣sim-H-mat,如上所述。在此種情形中,參照圖8,簡化的H矩陣sim-H-mat可包括第B00子矩陣B00至第B15子矩陣B15及奇偶性矩陣PR。第B00子矩陣B00至第B15子矩陣B15可具有其中例如[11000]
T、[00111]
T、[10100]
T、[01011]
T、[01100]
T、[10011]
T、[11100]
T、[00011]
T、[10011]
T、[01101]
T、[01010]
T、[10101]
T、[11010]
T、[00101]
T、[00110]
T及[11001]
T等位元行以8為單位(即,具有8b的單位)進行重複的結構。奇偶性矩陣PR可為具有8 × 8的維度的單位矩陣IM。
圖8中示出的簡化的H矩陣sim-H-mat可自參照圖6至圖7C闡述的H矩陣H-mat產生,且可藉由將校驗子SYD的一些位元S3、S4、S5、S6及S7與簡化的H矩陣sim-H-mat的每一行進行比較來檢查讀取資料RDT中是否包括錯誤。
圖8中示出的簡化的H矩陣sim-H-mat僅為實例,且可發生變化。舉例而言,圖8中示出的簡化的H矩陣sim-H-mat可由藉由將H矩陣H-mat以具有8b的單位進行劃分而獲得的多個子矩陣構成,但H矩陣H-mat可端視H矩陣H-mat的實施方式以4b、16位元或N位元(N是自然數)的單位進行劃分。在此種情形中,簡化的H矩陣的維度可進行各種改變或修改。
現在將參照圖9至圖13闡述被配置成基於圖8所示的簡化的H矩陣sim-H-mat而產生解碼狀態旗標DSF的快速DSF產生器的組件(例如,校驗子檢查電路115b、奇偶性錯誤檢查電路115c、快速資料錯誤檢查電路115e及DSF偵測電路115d)的一些實例。然而,與快速DSF產生器的組件相關聯的邏輯運算電路的配置可端視實施方式或者端視H矩陣或簡化的H矩陣而進行各種改變或修改。
此外,為了附圖簡潔且便於說明起見,在以下附圖中,校驗子SYD具有8b的大小,且校驗子SYD的位元分別由S0、S1、S2、S3、S4、S5、S6及S7標記,並且與校驗子SYD的位元S0、S1、S2、S3、S4、S5、S6及S7的反相版本對應的位元(下文中被稱為「互補位元」)分別由S0B、S1B、S2B、S3B、S4B、S5B、S6B及S7B標記。
圖9是示出圖5C所示的快速DSF產生器的校驗子檢查電路的實例的圖。
校驗子檢查電路115b可檢查校驗子SYD的所有位元S0至S7是否為「0」(即,為全零)。舉例而言,校驗子檢查電路115b可被配置成對與校驗子SYD的位元(例如,S0至S7)互補的位元S0B、S1B、S2B、S3B、S4B、S5B、S6B及S7B實行AND運算。在此種情形中,當具有兩個輸入端子的AND閘以3級結構進行連接時,可檢查校驗子SYD的所有位元S0至S7是否為「0」(即,為全零)。
當校驗子SYD的所有位元S0至S7為「0」時,可自圖9所示的校驗子檢查電路115b輸出值「1」作為校驗子資訊SYD_0。當校驗子SYD中的至少一者(例如,S0至S7中的至少一者)為「1」時,可自圖9所示的校驗子檢查電路115b輸出值「0」作為校驗子資訊SYD_0。
換言之,自圖9所示的校驗子檢查電路115b輸出的校驗子資訊SYD_0具有值「1」意指在對應於校驗子SYD的讀取資料RDT及奇偶性資料PRT中不存在錯誤;另一方面,自圖9所示的校驗子檢查電路115b輸出的校驗子資訊SYD_0具有值「0」意指在對應於校驗子SYD的讀取資料RDT及奇偶性資料PRT中存在錯誤。
圖10是示出圖5C所示的快速DSF產生器的奇偶性錯誤檢查電路的實例的圖。
參照圖5C及圖10,奇偶性錯誤檢查電路115c可基於校驗子SYD來偵測奇偶性資料PRT中是否存在錯誤。
在實例性實施例中,可基於參照圖8闡述的簡化的H矩陣sim-H-mat的奇偶性資料PRT或參照圖7A闡述的奇偶性資料PRT來偵測奇偶性資料PRT中是否存在錯誤。舉例而言,奇偶性錯誤檢查電路115c可包括多個AND運算電路AS10至AS17。基於參照圖8闡述的簡化的H矩陣sim-H-mat的奇偶性資料PRT或參照圖7A闡述的奇偶性資料PRT,所述多個AND運算電路AS10至AS17可分別與校驗子SYD的位元S0至S7連接。
詳言之,第10 AND運算電路AS10可與校驗子SYD的位元連接以對應於奇偶性矩陣PR的第0行(即,[1, 0, 0, 0, 0, 0, 0, 0]
T)。亦即,第10 AND運算電路AS10接收位元S0、S1B、S2B、S3B、S4B、S5B、S6B及S7B作為輸入。當所有輸入為「1」時,第10 AND運算電路AS10輸出「1」;若否(即,當輸入中的至少一者是「0」時),則第10 AND運算電路AS10輸出「0」。第11 AND運算電路AS11可與校驗子SYD的位元連接以對應於奇偶性矩陣PR的第1行(即,[0, 1, 0, 0, 0, 0, 0, 0]
T)。亦即,第11 AND運算電路AS11接收位元S0B、S1、S2B、S3B、S4B、S5B、S6B及S7B作為輸入。當所有輸入為「1」時,第11 AND運算電路AS11輸出「1」;若否(即,當輸入中的至少一者為「0」時),則第11 AND運算電路AS11輸出「0」。同樣地,第12 AND運算電路AS12至第17 AND運算電路AS17中的每一者可與校驗子SYD的位元連接以對應於奇偶性矩陣PR的第2行至第7行中的每一者。當所有輸入為「1」時,第12 AND運算電路AS12至第17 AND運算電路AS17中的每一者輸出「1」;若否(即,當輸入中的至少一者為「0」時),則第12 AND運算電路AS12至第17 AND運算電路AS17中的每一者輸出「0」。
亦即,藉由所述多個AND運算電路AS10至AS17,校驗子SYD可與奇偶性矩陣PR的每一行進行比較,且可判斷是否存在與校驗子SYD具有相同位元(或位元型樣)的行。在奇偶性矩陣PR的行中存在與校驗子SYD具有相同位元型樣的行意指在奇偶性資料PRT中存在錯誤。
奇偶性錯誤檢查電路115c可包括多個OR閘。奇偶性錯誤檢查電路115c可藉由所述多個OR閘對所述多個AND運算電路AS10至AS17的輸出實行OR運算來輸出奇偶性錯誤資訊PRT_ERR。在實例性實施例中,當所述多個AND運算電路AS10至AS17的輸出中的至少一者為「1」時,奇偶性錯誤資訊PRT_ERR具有值「1」;當所述多個AND運算電路AS10至AS17的所有輸出為「0」時,奇偶性錯誤資訊PRT_ERR具有值「0」。
在實例性實施例中,奇偶性錯誤資訊PRT_ERR具有值「1」指示在對應於校驗子SYD的奇偶性資料PRT中存在錯誤;奇偶性錯誤資訊PRT_ERR具有值「0」指示在對應於校驗子SYD的奇偶性資料PRT中不存在錯誤。
圖11是示出圖5C所示的快速DSF產生器的快速資料錯誤檢查電路的實例的圖。
參照圖5C及圖11,快速資料錯誤檢查電路115e可基於校驗子SYD來判斷資料中是否存在錯誤。
在實例性實施例中,可基於參照圖8闡述的簡化的H矩陣sim-H-mat來偵測資料中是否存在錯誤。
舉例而言,快速資料錯誤檢查電路115e可包括多個AND運算電路AS20至AS2f。基於參照圖8闡述的簡化的H矩陣sim-H-mat,所述多個AND運算電路AS20至AS2f可與校驗子SYD的一些位元S3至S7連接。
詳言之,第20 AND運算電路AS20可與校驗子SYD的一些位元S3至S7連接以對應於圖8所示的簡化的H矩陣sim-H-mat的第B00子矩陣B00的行(即,[1, 1, 0, 0, 0]
T)。亦即,第20 AND運算電路AS20接收位元S3、S4、S5B、S6B及S7B作為輸入。當所有輸入為「1」時,第20 AND運算電路AS20輸出「1」;若否(即,當輸入中的至少一者為「0」時),則第20 AND運算電路AS20輸出「0」。
此外,第21 AND運算電路AS21可與校驗子SYD的一些位元S3至S7連接以對應於圖8所示的簡化的H矩陣sim-H-mat的第B01子矩陣B01的行(即,[0, 0, 1, 1, 1]
T)。亦即,第21 AND運算電路AS21接收位元S3B、S4B、S5、S6及S7作為輸入。當所有輸入為「1」時,第21 AND運算電路AS21輸出「1」;若否(即,當輸入中的至少一者為「0」時),則第21 AND運算電路AS21輸出「0」。
同樣地,第22 AND運算電路AS22至第2f AND運算電路AS2f可與校驗子SYD的一些位元S3至S7連接以分別對應於圖8所示的簡化的H矩陣sim-H-mat的第B02子矩陣B02至第B15子矩陣B15的行。當所有輸入為「1」時,第22 AND運算電路AS22至第2f AND運算電路AS2f中的每一者輸出「1」,若否(當輸入中的至少一者為「0」時)則輸出「0」。
當藉由所述多個AND運算電路AS20至AS2f將校驗子SYD的一些位元(例如,S3至S7)與簡化的H矩陣sim-H-mat的每一行或每一子矩陣進行比較時,可判斷在簡化的H矩陣sim-H-mat中是否存在與校驗子SYD的一些位元S3至S7具有相同的位元型樣的行。在簡化的H矩陣sim-H-mat中存在與校驗子SYD的一些位元S3至S7具有相同的位元型樣的行可意指在讀取資料RDT中存在錯誤。然而,由於藉由簡化的H矩陣sim-H-mat僅比較了校驗子SYD的一些位元,因此未偵測到錯誤的位置。
快速資料錯誤檢查電路115e可更包括多個OR閘。快速資料錯誤檢查電路115e可藉由所述多個OR閘對所述多個AND運算電路AS20至AS2f的輸出實行OR運算來輸出資料錯誤資訊DT_ERR。在實例性實施例中,當所述多個AND運算電路AS20至AS2f的輸出中的至少一者為「1」時,資料錯誤資訊DT_ERR具有值「1」;當所述多個AND運算電路AS20至AS2f的所有輸出為「0」時,資料錯誤資訊DT_ERR具有值「0」。在實例性實施例中,資料錯誤資訊DT_ERR指示「1」可指示在讀取資料RDT中存在錯誤;資料錯誤資訊DT_ERR指示「0」可指示在讀取資料RDT中不存在錯誤。
圖12是示出圖5C所示的快速DSF產生器的DSF偵測電路的實例的圖。
參照圖5C及圖12,DSF偵測電路115d可自校驗子檢查電路115b接收校驗子資訊SYD_0,可自奇偶性錯誤檢查電路115c接收奇偶性錯誤資訊PRT_ERR,且可自快速資料錯誤檢查電路115e接收資料錯誤資訊DT_ERR。
DSF偵測電路115d可包括OR閘、INV閘及AND閘。DSF偵測電路115d可藉由OR閘、INV閘及AND閘對校驗子資訊SYD_0及奇偶性錯誤資訊PRT_ERR實行OR運算且藉由對OR閘的輸出的反相值及資料錯誤資訊DT_ERR的反相值實行AND運算,來產生解碼狀態旗標DSF。
由此產生的解碼狀態旗標DSF具有值「1」指示解碼狀態是「UE」;由此產生的解碼狀態旗標DSF具有值「0」指示解碼狀態是「CE」或「NE」。
舉例而言,根據圖12中示出的DSF偵測電路115d,當校驗子資訊SYD_0指示「0」,奇偶性錯誤資訊PRT_ERR指示「0」且資料錯誤資訊DT_ERR指示「0」時,解碼狀態旗標DSF可具有值「1」。換言之,在藉由為「0」的校驗子資訊SYD_0確定讀取資料RDT或奇偶性資料PRT中存在錯誤,藉由為「0」的奇偶性錯誤資訊PRT_ERR確定奇偶性資料PRT中不存在錯誤,且藉由為「0」的資料錯誤資訊DT_ERR確定資料中不存在錯誤的情形中,由於各條資訊的情況彼此不一致,因此最終輸出的經錯誤校正的讀取資料RDT_cor可被確定為包括不可校正的錯誤(即,解碼狀態可被確定為「UE」)。在並非以上情形的其餘情形中,解碼狀態旗標DSF可具有值「0」;在此種情形中,經錯誤校正的讀取資料RDT_cor可被確定為正常資料或其錯誤被正常校正的資料(即,解碼狀態可被確定為「CE」或「NE」)。
如上所述,根據本實例性實施例,快速DSF產生器115可使用校驗子SYD而不使用由校驗子解碼電路112產生的錯誤向量ERV來產生解碼狀態旗標DSF。在此種情形中,由於快速DSF產生器115與校驗子解碼電路112並列進行操作,因此可縮短ECC解碼器ECC-DEC-1的整體潛時。此外,由於快速DSF產生器115的快速資料錯誤檢查電路115e將校驗子SYD的一些位元與簡化的H矩陣sim-H-mat進行比較,因此可降低校驗子SYD的相應的位元的線路的複雜性。
圖13是示出圖5C所示的快速DSF產生器的DSF偵測電路的實例的方塊圖。
因此,為便於說明起見,將省略與參照圖12闡述的組件相關聯的額外的說明以避免贅述。
參照圖5C及圖13,DSF偵測電路115d-1可藉由與參照圖12闡述的方法相似的方法來產生1b的解碼狀態旗標DSF。在此種情形中,第一解碼狀態旗標DSF1相似於參照圖12闡述的解碼狀態旗標DSF。亦即,第一解碼狀態旗標DSF1指示「1」意指解碼狀態是「UE」;第一解碼狀態旗標DSF1指示「0」意指解碼狀態是「NE」或「CE」。
圖13所示的DSF偵測電路115d-1可將校驗子資訊SYD_0反相以產生1b的第二解碼狀態旗標DSF2。亦即,第二解碼狀態旗標DSF2指示「1」意指在讀取資料RDT或奇偶性資料PRT中存在錯誤;第二解碼狀態旗標DSF2指示「0」意指在讀取資料RDT及奇偶性資料PRT中不存在錯誤。換言之,第二解碼狀態旗標DSF2指示「1」意指解碼狀態是「CE」或「UE」;第二解碼狀態旗標DSF2指示「0」意指解碼狀態是「NE」。
圖13所示的DSF偵測電路115d-1可將第一解碼狀態旗標DSF1與第二解碼狀態旗標DSF2組合起來以輸出2b的解碼狀態旗標DSF。舉例而言,在解碼狀態旗標DSF中,最低有效位元(least significant bit)LSB可對應於第一解碼狀態旗標DSF1,且最高有效位元(most significant bit)MSB可對應於第二解碼狀態旗標DSF2。在此種情形中,2b的解碼狀態旗標DSF是「00」可意指解碼狀態是「NE」;2b的解碼狀態旗標DSF是「10」可意指解碼狀態是「CE」;2b的解碼狀態旗標DSF是「11」可意指解碼狀態是「UE」。
以上位元組合及位元值僅為實例,且應理解,以上位元組合及位元值可端視ECC解碼器的實施方式而進行各種改變或修改。
如上所述,DSF偵測電路115d-1可藉由產生2b的解碼狀態旗標DSF來向記憶體控制器11通知解碼結果(例如,UE、CE及NE)。
圖14是示出根據實例性實施例的簡化的H矩陣的實例的圖。
參照圖8闡述的簡化的H矩陣sim-H-mat是基於由校驗子解碼電路112使用的H矩陣H-mat的第二子列2nd sub-Row的資訊而產生。相比之下,圖14中示出的用於UE確定的簡化的H矩陣sim-H-mat_UE可基於H矩陣H-mat的第二子列2nd sub-Row的資訊中所不包括的資訊而產生。
舉例而言,如參照圖8所述,簡化的H矩陣sim-H-mat中所包括的第B00子矩陣B00至第B15子矩陣B15可使用[11000]
T、[00111]
T、[10100]
T、[01011]
T、[01100]
T、[10011]
T、[11100]
T、[00011]
T、[10011]
T、[01101]
T、[01010]
T、[10101]
T、[11010]
T、[00101]
T、[00110]
T及[11001]
T的行來實施,且第B00子矩陣B00至第B15子矩陣B15可構成H矩陣H-mat的第二子列2nd sub-Row。
相比之下,參照圖14,用於UE確定的簡化的H矩陣sim-H-mat_UE可使用例如[01001]
T、[01110]
T、[10001]
T、[10110]
T、[10000]
T、[01000]
T、[00100]
T、[00010]
T、[00001]
T、[01111]
T、[10111]
T、[11011]
T、[11101]
T、[11110]
T及[11111]
T等子矩陣來實施。用於UE確定的簡化的H矩陣sim-H-mat_UE的子矩陣可使用與H矩陣H-mat的第二子列2nd sub-Row中所包括的子矩陣(即,B00至B15)的行不同的行來實施。
詳言之,參照圖7A至圖7C闡述的H矩陣H-mat的第二子列2nd sub-Row中所包括的行被劃分成「16」份(除了奇偶性矩陣PR之外)。在此種情形中,由於藉由5個位元進行的位元行的組合的數目是32(= 2
5),因此不與子矩陣(即,B00至B15)對應的位元行的數目是16(= 32 - 16)。在此種情形中,[00000]
T的行對應於校驗子SYD為全零的情形(即,無錯誤的情形),且[00000]
T的行被排除在用於UE確定的簡化的H矩陣sim-H-mat_UE之外。因此,用於UE確定的簡化的H矩陣sim-H-mat_UE可包括各自由10行構成的子矩陣及奇偶性矩陣PR。
在此種情形中,校驗子SYD的第三位元S3至第七位元S7的行與用於UE確定的簡化的H矩陣sim-H-mat_UE的行中的至少一者一致意指校驗子SYD不與H矩陣H-mat的所有行一致(即,錯誤位置未確定)。因此,可藉由將校驗子SYD的第三位元S3至第七位元S7的行與用於UE確定的簡化的H矩陣sim-H-mat_UE的行進行比較來判斷資料中是否存在錯誤。
在另一實施方式中,在一些情形中,可藉由將校驗子SYD的第三位元S3至第七位元S7的行與用於UE確定的簡化的H矩陣sim-H-mat_UE的行進行比較來判斷資料中是否包括不可校正的錯誤(即,解碼結果是否為「UE」)。
圖15是示出使用圖14所示的用於UE確定的簡化的H矩陣的快速資料錯誤檢查電路的實例的圖。
參照圖15,快速資料錯誤檢查電路115e-2可包括多個AND運算電路AS30至AS3e。基於參照圖14闡述的用於UE確定的簡化的H矩陣sim-H-mat_UE,所述多個AND運算電路AS30至AS3e可與校驗子SYD的一些位元S3至S7連接。
舉例而言,第30 AND運算電路AS30可與校驗子SYD的一些位元S3至S7連接以對應於圖14所示的用於UE確定的簡化的H矩陣sim-H-mat_UE的[01001]
T。亦即,第30 AND運算電路AS30接收位元S3B、S4、S5B、S6B及S7作為輸入。當所有輸入為「1」時,第30 AND運算電路AS30輸出「1」;若否(當輸入中的至少一者為「0」時),則第30 AND運算電路AS30輸出「0」。
其餘AND運算電路AS31至AS3e與校驗子SYD的一些位元S3至S7連接以分別對應於參照圖14闡述的用於UE確定的簡化的H矩陣sim-H-mat_UE的其餘行。當所有輸入為「1」時,AND運算電路AS31至AS3e中的每一者輸出「1」,若否(當輸入中的至少一者為「0」時)則輸出「0」。
快速資料錯誤檢查電路115e-2可包括多個OR閘。快速資料錯誤檢查電路115e-2可藉由所述多個OR閘對所述多個AND運算電路AS30至AS3e的輸出實行OR運算來輸出資料錯誤資訊DT_ERR-2。在實例性實施例中,當所述多個AND運算電路AS30至AS3e的輸出中的至少一者為「1」時,資料錯誤資訊DT_ERR-2具有值「1」;若否(即,當所有輸出為「0」時),則資料錯誤資訊DT_ERR-2具有值「0」。
在實例性實施例中,資料錯誤資訊DT_ERR-2指示「1」可意指在讀取資料RDT中存在錯誤或者在奇偶性資料PRT中存在錯誤。資料錯誤資訊DT_ERR-2指示「0」可意指在讀取資料RDT中不存在錯誤或者存在可校正的錯誤。
圖16是示出使用來自圖15所示的快速資料錯誤檢查電路的資料錯誤資訊的DSF偵測電路的實例的圖。
參照圖14、圖15及圖16,DSF偵測電路115d-2可包括第一INV閘及第二INV閘以及第一AND閘及第二AND閘。DSF偵測電路115d-2可藉由第一INV閘而將校驗子資訊SYD_0反相。DSF偵測電路115d-2可藉由第一AND閘而對第一INV閘的輸出(即,經反相的校驗子資訊)及資料錯誤資訊DT_ERR-2實行AND運算。DSF偵測電路115d-2可藉由第二INV閘而將奇偶性錯誤資訊PRT_ERR反相。奇偶性錯誤資訊PRT_ERR可由參照圖10闡述的奇偶性錯誤檢查電路115c計算,且是指指示在奇偶性資料PRT中是否存在1位元錯誤的資訊。
DSF偵測電路115d-2可藉由第二AND閘對第一AND閘的輸出及第二INV閘的輸出實行AND運算來產生解碼狀態旗標DSF。解碼狀態旗標DSF具有值「1」指示解碼狀態是「UE」;解碼狀態旗標DSF具有值「0」指示解碼狀態是「NE」或「CE」。
舉例而言,具有值「1」的解碼狀態旗標DSF對應於校驗子資訊SYD_0指示「0」,資料錯誤資訊DT_ERR-2指示「1」且奇偶性錯誤資訊PRT_ERR指示「0」的情形。此意指藉由校驗子資訊SYD_0而偵測到資料及奇偶性資料中存在錯誤,藉由資料錯誤資訊DT_ERR-2而偵測到資料或奇偶性資料中存在不可校正的錯誤且藉由奇偶性錯誤資訊PRT_ERR而偵測到奇偶性矩陣PR中不存在錯誤的情形。在此種情形中,ECC解碼結果可為「UE」。相比之下,在並非以上情形的其餘情形中,ECC解碼結果可為「NE」或「CE」。
在實例性實施例中,在藉由校驗子資訊SYD_0而偵測到資料及奇偶性資料中存在錯誤,藉由資料錯誤資訊DT_ERR-2而偵測到資料或奇偶性資料中存在不可校正的錯誤,且藉由奇偶性錯誤資訊PRT_ERR而偵測到奇偶性矩陣PR中存在錯誤的情形中,解碼狀態旗標DSF可指示「0」(即,NE或CE)。在此種情形中,奇偶性資料PRT中所包括的錯誤可為1位元錯誤。在奇偶性資料PRT中所包括的錯誤的位元數目超過「1」或者錯誤超過ECC引擎的錯誤校正能力的情形中,解碼狀態旗標DSF可被確定為「1」(即,UE)。
圖17是示出使用來自圖15所示的快速資料錯誤檢查電路的資料錯誤資訊的DSF偵測電路的實例的圖。
參照圖15及圖17,DSF偵測電路115d-3可藉由與參照圖16闡述的操作相似的操作(即,(/SYD_0*DT_ERR-2)*/PRT_ERR)來產生第一解碼狀態旗標DSF1。DSF偵測電路115d-3可將校驗子資訊SYD_0反相以產生第二解碼狀態旗標DSF2。DSF偵測電路115d-3可將第一解碼狀態旗標DSF1與第二解碼狀態旗標DSF2組合起來以產生2b的解碼狀態旗標DSF。1b的第一解碼狀態旗標DSF1、1b的第二解碼狀態旗標DSF2及2b的解碼狀態旗標DSF的每一值的含義相似於參照圖13所述的含義,且因此,將省略額外的說明以避免贅述。
如上所述,根據本實例性實施例的ECC解碼器可基於H矩陣的一些行中所不包括的資訊而產生解碼狀態旗標DSF。參照圖14及圖15闡述的快速資料錯誤檢查電路115e-2可藉由將校驗子SYD的一些位元與用於UE確定的簡化的H矩陣sim-H-mat_UE的每一行進行比較來判斷在讀取資料RDT中是否存在錯誤。在此種情形中,由於用於UE確定的簡化的H矩陣sim-H-mat_UE的每一行是基於H矩陣H-mat中所不包括的資訊,因此校驗子SYD的一些位元與用於UE確定的簡化的H矩陣sim-H-mat_UE的行中的任一者一致(即,資料錯誤資訊DT_ERR-2具有值「1」)可意指讀取資料RDT中包括不可校正的錯誤(即,解碼狀態是「UE」),並且校驗子SYD的一些位元不同於用於UE確定的簡化的H矩陣sim-H-mat_UE的所有行(即,資料錯誤資訊DT_ERR-2具有值「0」)可意指讀取資料RDT中不包括錯誤或者其中包括可校正的錯誤(即,解碼狀態是「NE」或「CE」)。亦即,在不經過參照圖16或圖17闡述的DSF偵測電路115d-2或115d-3的情況下,由參照圖14及圖15闡述的快速資料錯誤檢查電路115e-2產生的資料錯誤資訊DT_ERR-2可被用作解碼狀態旗標DSF。
以上ECC解碼器的配置可基於特定的H矩陣來實施。因此,根據本揭露的ECC解碼器(具體而言,解碼狀態旗標產生器)的配置可端視H矩陣的結構及特性而進行各種改變或修改。
圖18是用於闡述根據實例性實施例的產生簡化的H矩陣的方法的流程圖。
圖18所示的流程圖可在製造記憶體裝置100的製程中由ECC電路的設計工具來實行。
參照圖18,在操作S210中,可確定H矩陣。舉例而言,可端視記憶體裝置100的可靠性或效能來確定ECC電路110(具體而言,ECC解碼器)中所使用的H矩陣。慮及例如實施ECC電路110的方式、錯誤校正演算法或錯誤校正能力等各種因素,可以各種方式確定H矩陣。
在操作S220中,可基於H矩陣的特性或部分資訊來提取簡化的H矩陣sim-H-mat。舉例而言,假定H矩陣是參照圖6、圖7A、圖7B及圖7C闡述的H矩陣H-mat。在此種情形中,在H矩陣中,第一子列(即,對應於S0至S2的列)使用以8行為單位進行重複的相同子矩陣來實施,且第二子列(即,對應於S3至S7的列)使用各自包括相同行的多個子矩陣來實施。在此種情形中,校驗子SYD是否與H矩陣H-mat的行中的至少一者匹配(即,在讀取資料RDT或奇偶性資料PRT中是否存在錯誤)可藉由僅將部分資訊(即,對應於第二子列S3至S7的列)與校驗子SYD的一些位元S3至S7進行比較來確定,而不是將校驗子SYD與H矩陣H-mat的所有行進行比較。亦即,藉由將校驗子SYD的一些位元與H矩陣H-mat的僅部分資訊進行比較,可判斷在讀取資料RDT或奇偶性資料PRT中是否存在錯誤。
H矩陣H-mat的以上特性可端視H矩陣H-mat的實施方式而變化,且H矩陣H-mat可不以特定的列單位或特定的行單位進行劃分。舉例而言,在基於H矩陣H-mat的一部分而產生的簡化的H矩陣sim-H-mat中,可相對於簡化的H矩陣sim-H-mat的第0行將對應於校驗子SYD的S0、S1、S2、S3及S4的值進行比較,且可相對於第一行將對應於校驗子SYD的S0、S2、S4、S6及S7的值進行比較。在實例性實施例中,在讀取資料RDT的大小是128b的情形中,H矩陣可為8 × 128 + 8×8(奇偶性矩陣)的維度。在此種情形中,在H矩陣以具有8b的單位進行劃分的情形中,簡化的H矩陣sim-H-mat可為(8-log
28) × (128/8)的維度。在另一實施方式中,在H矩陣以具有16b(或16位元)的單位進行劃分的情形中,簡化的H矩陣sim-H-mat可為(8-log
216) × (128/16)的維度。
可基於H矩陣中所包括的部分資訊來產生簡化的H矩陣sim-H-mat。在另一實施方式中,可基於與H矩陣中所包括的部分資訊(即,H矩陣中所不包括的部分資訊)不同的資訊來產生簡化的H矩陣sim-H-mat。在此種情形中,簡化的H矩陣sim-H-mat可如參照圖14及圖15所述被提取或產生,且可藉由簡化的H矩陣sim-H-mat來判斷解碼狀態是否是「UE」。
可藉由對H矩陣的特定行實行各種邏輯運算(即,OR、AND及XOR運算)來產生簡化的H矩陣sim-H-mat。
在操作S230中,可基於簡化的H矩陣sim-H-mat來配置快速DSF產生器。舉例而言,如參照圖1至圖17所述,快速資料錯誤檢查電路可基於簡化的H矩陣sim-H-mat來實施,且快速DSF產生器可基於快速資料錯誤檢查電路的輸出(即,資料錯誤資訊)、校驗子檢查電路的輸出(即,校驗子資訊)及奇偶性錯誤檢查電路的輸出(即,奇偶性錯誤資訊)而產生解碼狀態旗標DSF。
在實例性實施例中,應理解,H矩陣可端視ECC電路的實施方式或ECC電路的效能而進行各種改變或修改,且實施簡化的H矩陣的方式亦可端視H矩陣的修改而進行各種改變或修改。
圖19是示出根據實例性實施例的記憶體系統的方塊圖。
參照圖19,記憶體系統1000可包括記憶體控制器1100、ECC電路1200及記憶體裝置1300。
記憶體控制器1100可將資料儲存於記憶體裝置1300中或者可讀取儲存於記憶體裝置1300中的資料。
ECC電路1200可置於記憶體控制器1100與記憶體裝置1300之間的資料路徑上。ECC電路1200可被配置成對在記憶體控制器1100與記憶體裝置1300之間交換的資料的錯誤進行校正。ECC電路1200可基於參照圖1至圖18闡述的操作方法而產生解碼狀態旗標DSF。
圖20是示出根據實例性實施例的記憶體系統的方塊圖。
參照圖20,記憶體系統2000可包括記憶體控制器2100及記憶體裝置2200。
記憶體控制器2100可包括ECC電路2110。ECC電路2110可被配置成產生欲儲存於記憶體裝置2200中的資料的奇偶性資料,或者基於自記憶體裝置2200讀取的讀取資料及奇偶性資料來校正自記憶體裝置2200讀取的資料的錯誤。ECC電路2110可基於參照圖1至圖18闡述的方法而產生解碼狀態旗標DSF。
圖21是示出根據實例性實施例的記憶體系統的方塊圖。
參照圖21,記憶體系統3000可包括記憶體控制器3100及記憶體裝置3200。
記憶體控制器3100可包括控制器ECC電路3110。控制器ECC電路3110可產生欲儲存於記憶體裝置3200中的寫入資料的第一奇偶性,且可基於自記憶體裝置3200接收到的讀取資料及第一奇偶性來校正讀取資料的錯誤。
記憶體裝置3200可包括記憶體ECC電路3210。記憶體ECC電路3210可產生自記憶體控制器3100接收到的寫入資料及第一奇偶性的第二奇偶性,並且可基於自記憶體裝置3200讀取的讀取資料、第一奇偶性及第二奇偶性來校正讀取資料及第一奇偶性的錯誤。
在實例性實施例中,控制器ECC電路3110及記憶體ECC電路3210中的每一者可基於參照圖1至圖18闡述的方法而產生解碼狀態旗標DSF。
在參照圖1至圖18闡述的實例性實施例中,給出的說明是ECC電路110是記憶體裝置100中所包括的晶粒上ECC(on-die ECC,OD-ECC)電路,但參照圖19至圖21,ECC電路可位於記憶體裝置的內部或外部或者可置於記憶體控制器內。
圖22是示出根據實例性實施例的記憶體封裝的實例的圖。
參照圖22,記憶體封裝4000可包括多個記憶體晶粒4110至4140及緩衝晶粒4200。所述多個記憶體晶粒4110至4140中的每一者可為DRAM裝置。所述多個記憶體晶粒4110至4140與緩衝晶粒4200可以堆疊結構實施,可經由TSV(矽穿孔)彼此電性連接且可彼此通訊。
可藉由以下封裝來提供作為一個半導體封裝的記憶體封裝4000:疊層封裝(package on package,PoP)、球柵陣列(ball grid array,BGA)、晶片級封裝(chip scale package,CSP)、塑膠引線晶片載體(plastic leaded chip carrier,PLCC)、塑膠雙排直插封裝(plastic dual in-line package,PDIP)、華夫格封裝式晶粒(die in waffle pack)、晶圓形式的晶粒、板載晶片(chip on board,COB)、陶瓷雙排直插封裝(ceramic dual in-line package,CERDIP)、塑膠公制四方扁平封裝(metric quad flat pack,MQFP)、小外形積體晶片(small outline integrated chip,SOIC)、收縮小外形封裝(shrink small outline package,SSOP)、薄小外形封裝(thin small outline package,TSOP)、薄四方扁平封裝(thin quad flatpack,TQFP)、系統封裝(system in package,SIP)、多晶片封裝(multi-chip package,MCP)、晶圓級製作封裝(wafer-level fabricated package,WFP)或晶圓級加工堆疊封裝(wafer-level processed stack package,WSP)。
緩衝晶粒4200可與外部主機裝置(或記憶體控制器)通訊。緩衝晶粒4200可被配置成臨時儲存欲寫入所述多個記憶體晶粒4110至4140中的資料,或者臨時儲存自所述多個記憶體晶粒4110至4140讀取的資料。緩衝晶粒4200可包括ECC電路4210。ECC電路4210可產生欲儲存於記憶體晶粒4110至4140中的資料的奇偶性,或者可校正自記憶體晶粒4110至4140讀取的資料的錯誤。ECC電路4210可基於參照圖1至圖18闡述的方法來實施或者可產生解碼狀態旗標DSF。
圖23是示出根據實例性實施例的記憶體封裝的實例的圖。
參照圖23,記憶體封裝5000可包括多個記憶體晶粒5110至5140及主機晶粒5200。所述多個記憶體晶粒5110至5140可經由微凸塊MCB而彼此電性連接,可具有堆疊結構且可直接堆疊於主機晶粒5200上。主機晶粒5200可為晶片系統(system-on-a-chip,SoC)、中央處理單元(CPU)或圖形處理單元(graphics processing unit,GPU)。在實例性實施例中,所述多個記憶體晶粒5110至5140或主機晶粒5200中的每一者可包括參照圖1至圖18闡述的ECC電路。
圖24是示出應用根據本揭露的記憶體裝置的記憶體模組6000的方塊圖。
參照圖24,記憶體模組6000可包括暫存器時脈驅動器(register clock driver,RCD)6100、多個記憶體裝置6210至6290以及多個資料緩衝器DB。
RCD 6100可自外部裝置(例如,主機或記憶體控制器)接收命令/位址CA及時脈訊號CK。因應於接收到的訊號,RCD 6100可將命令/位址CA發送至所述多個記憶體裝置6210至6290且可控制所述多個資料緩衝器DB。
所述多個記憶體裝置6210至6290可經由資料線MDQ分別與所述多個資料緩衝器DB連接。
在實例性實施例中,所述多個記憶體裝置6210至6290中的每一者可包括參照圖1至圖18闡述的ECC電路,且可基於參照圖1至圖18闡述的方法而產生解碼狀態旗標DSF。所述多個資料緩衝器DB可經由多條資料線DQ向外部裝置(例如,主機或記憶體控制器)發送資料及自外部裝置接收資料。
圖24中示出的記憶體模組6000可具有負荷減少的雙排直插記憶體模組(load-reduced dual in-line memory module,LRDIMM)的形狀因數(form factor),或者例如,記憶體模組6000可具有其中不包括所述多個資料緩衝器DB的註冊DIMM(registered DIMM,RDIMM)的形狀因數。
記憶體模組6000可更包括置於所述多個記憶體裝置6210至6290外部的ECC電路,且可被配置成基於參照圖1至18闡述的方法而產生解碼狀態旗標DSF。
在實例性實施例中,所述多個記憶體裝置6210至6290中的至少一者可被配置成儲存奇偶性資料。奇偶性資料可自外部裝置(例如,主機或記憶體控制器)提供;在此種情形中,外部裝置可包括參照圖1至圖18闡述的ECC電路或者可基於參照圖1至圖18闡述的方法而產生解碼狀態旗標DSF。
圖25是根據實例性實施例的應用儲存器裝置的系統7000的圖。
圖25所示的系統7000可為行動系統(例如可攜式通訊終端(例如,行動電話)、智慧型電話、平板個人電腦(PC)、可穿戴裝置、健康照護裝置或物聯網(Internet of things,IoT)裝置),或者為例如PC、膝上型電腦、伺服器、媒體播放器或汽車裝置(例如,導航裝置)。
參照圖25,系統7000可包括主處理器7100、記憶體(例如,7200a及7200b)及儲存器裝置(例如,7300a及7300b)。另外,系統7000可包括影像捕獲裝置7410、使用者輸入裝置7420、感測器7430、通訊裝置7440、顯示器7450、揚聲器7460、電源供應裝置7470及連接介面7480中的至少一者。
主處理器7100可控制系統7000的所有操作,更具體而言,可控制系統7000中包括的其他組件的操作。主處理器7100可被實施為通用處理器、專用處理器或應用處理器。
主處理器7100可包括至少一個CPU核心7110且更包括被配置成控制記憶體7200a及7200b及/或儲存器裝置7300a及7300b的控制器7120。在一些實例性實施例中,主處理器7100可更包括加速器7130,加速器7130是用於例如人工智慧(artificial intelligence,AI)資料操作等高速資料操作的專用電路。加速器7130可包括圖形處理單元(GPU)、神經處理單元(neural processing unit,NPU)及/或資料處理單元(data processing unit,DPU)且被實施為與主處理器7100的其他組件在實體上分隔開的晶片。
記憶體7200a及7200b可用作系統7000的主記憶體裝置。儘管記憶體7200a及7200b中的每一者可包括例如靜態隨機存取記憶體(SRAM)及/或動態RAM(DRAM)等揮發性記憶體,但記憶體7200a及7200b中的每一者亦可包括例如快閃記憶體、相變RAM(PRAM)及/或電阻式RAM(RRAM)等非揮發性記憶體。記憶體7200a及7200b可在與主處理器7100相同的封裝中實施。
記憶體7200a及7200b可為包括參照圖1至圖18闡述的ECC電路的記憶體裝置,且基於參照圖1至圖18闡述的方法而產生解碼狀態旗標(DSF)。
儲存器裝置7300a及7300b可用作被配置成不論是否向其供電皆儲存資料的非揮發性記憶體裝置,且具有較記憶體7200a及7200b更大的儲存容量。儲存器裝置7300a及7300b可分別包括儲存器控制器(storage controller,STRG CTRL)7310a及7310b以及被配置成藉由儲存器控制器7310a及7310b的控制來儲存資料的NVM(非揮發性記憶體)7320a及7320b。儘管NVM 7320a及7320b可包括具有二維(two-dimensional,2D)結構或三維(three-dimensional,3D)V-NAND結構的快閃記憶體,但NVM 7320a及7320b亦可包括其他類型的NVM,例如PRAM及/或RRAM。
儲存器裝置7300a及7300b可與主處理器7100在實體上分隔開且包括於系統7000中或者在與主處理器7100相同的封裝中實施。另外,儲存器裝置7300a及7300b可具有各類型的固態裝置(solid-state device,SSD)或記憶卡且藉由介面(例如將在下面闡述的連接介面7480)而與系統700的其他組件可移除地進行組合。儲存器裝置7300a及7300b可為應用例如通用快閃儲存器(universal flash storage,UFS)、嵌入式多媒體卡(embedded multi-media card,eMMC)或非揮發性記憶體快取(non-volatile memory express,NVMe)等標準協定的裝置。
影像捕獲裝置7410可捕獲靜止影像或運動影像。影像捕獲裝置7410可包括相機、攝錄影機(camcorder)及/或網路攝影機(webcam)。
使用者輸入裝置7420可接收由系統7000的使用者輸入的各種類型的資料且包括觸控板(touch pad)、小鍵盤、鍵盤、滑鼠及/或麥克風。
感測器7430可偵測可自系統7000的外部獲得的各種類型的物理量,並將偵測到的物理量轉換成電性訊號。感測器7430可包括溫度感測器、壓力感測器、照度感測器、位置感測器、加速度感測器、生物感測器及/或陀螺儀感測器(gyroscope sensor)。
通訊裝置7440可根據各種通訊協定在系統7000外部的其他裝置之間傳輸及接收訊號。通訊裝置7440可包括天線、收發器及/或數據機。
顯示器7450及揚聲器7460可用作被配置成分別向系統7000的使用者輸出視覺資訊及聽覺資訊的輸出裝置。
電源供應裝置7470可適當地轉換自嵌入於系統7000中的電池(未示出)及/或外部電源供應的電源,並將經轉換的電源供應至系統7000的組件中的每一者。
連接介面7480可提供系統7000與外部裝置之間的連接,所述外部裝置連接至系統7000且能夠將資料傳輸至系統7000及自系統7000接收資料。連接介面7480可使用例如以下各種介面方案來實施:先進技術附件(advanced technology attachment,ATA)、串列ATA(serial ATA,SATA)、外部SATA(external SATA,e-SATA)、小電腦小介面(small computer small interface,SCSI)、串列附接SCSI(serial attached SCSI,SAS)、周邊組件內連件(peripheral component interconnection,PCI)、PCI快取(PCI express,PCIe)、NVMe、IEEE 1394、通用串列匯流排(universal serial bus,USB)介面、安全數位(secure digital,SD)卡介面、多媒體卡(multi-media card,MMC)介面、eMMC介面、UFS介面、嵌入式UFS(embedded UFS,eUFS)介面及壓縮快閃(compact flash,CF)卡介面。
綜上所述,DRAM可用作行動裝置或電腦裝置的系統記憶體。DRAM裝置可包括用於提高儲存於其中的資料的可靠性的錯誤校正碼(ECC)電路。ECC電路可校正儲存於DRAM裝置中的資料的錯誤。當資料的錯誤超過ECC電路的錯誤校正能力時,錯誤不能被正常校正。在此種情形中,需要用於向外部裝置(例如,記憶體控制器)通知ECC電路的解碼結果的手段。因此,ECC電路可向記憶體控制器提供包括關於ECC解碼結果的資訊的解碼狀態旗標DSF。根據實例性實施例,ECC電路可僅使用在ECC解碼製程中產生的校驗子來產生解碼狀態旗標DSF。在此種情形中,可縮短產生解碼狀態旗標DSF所花費的時間。
如上所述,實例性實施例可提供一種具有提高的可靠性及改良的效能的記憶體裝置以及所述記憶體裝置的錯誤校正碼解碼方法。
根據實例性實施例,記憶體裝置中所包括的ECC電路可僅使用校驗子資訊來產生解碼狀態旗標。在此種情形中,由於解碼狀態旗標是與校驗子解碼操作一起產生的,因此可減少ECC解碼的整體潛時。因此,提供一種具有改良的效能及提高的可靠性的記憶體裝置以及所述記憶體裝置的錯誤校正碼解碼方法。
本文中已揭露了實例性實施例,且儘管採用了特定用語,但僅在一般性及闡述性意義上使用及解釋所述特定用語,而不是出於限制目的。在一些情況下,對於在提交本申請案時此項技術中具有通常知識者而言顯而易見的是,結合特定實施例闡述的特徵、特性及/或要素可單獨使用,或者與結合其他實施例闡述的特徵、特性及/或要素結合使用,除非另有特別指明。因此,熟習此項技術者應理解,可在不背離以下申請專利範圍中所述的本發明的精神及範圍的條件下,在形式及細節上作出各種改變。
1st sub-Row:第一子列
2nd sub-Row:第二子列
10、1000、2000、3000:記憶體系統
11、1100、2100、3100:記憶體控制器
100、1300、2200、3200、6210、6220、6230、6240、6250、6260、6270、6280、6290:記憶體裝置
110、1200、2110、4210:錯誤校正碼(ECC)電路
111:校驗子產生器
112:校驗子解碼電路
113:校正邏輯電路
114:DSF產生器
114a:資料錯誤檢查電路
114b、115b:校驗子檢查電路
114c、115c:奇偶性錯誤檢查電路
114d:解碼狀態旗標偵測電路/DSF偵測電路
115:快速DSF產生器
115d、115d-1、115d-2、115d-3:DSF偵測電路
115e、115e-2:快速資料錯誤檢查電路
120:記憶體胞元陣列/記憶陣列
130:命令/位址(CA)緩衝器
140:位址解碼器
150:命令解碼器
160:寫入驅動器
170:輸入/輸出電路
3110:控制器ECC電路
3210:記憶體ECC電路
4000、5000:記憶體封裝
4110、4120、4130、4140、5110、5120、5130、5140:記憶體晶粒
4200:緩衝晶粒
5200:主機晶粒
6000:記憶體模組
6100:暫存器時脈驅動器
7000:系統
7100:主處理器
7110:CPU核心
7120:控制器
7130:加速器
7200a、7200b:記憶體
7300a、7300b:儲存器裝置
7310a、7310b:儲存器控制器(STRG CTRL)
7320a、7320b:非揮發性記憶體(NVM)
7410:影像捕獲裝置
7420:使用者輸入裝置
7430:感測器
7440:通訊裝置
7450:顯示器
7460:揚聲器
7470:電源供應裝置
7480:連接介面
A0:第A0子矩陣/第A0區段矩陣
ADDR:位址訊號
AS10:第10 AND運算電路/AND運算電路
AS11:第11 AND運算電路/AND運算電路
AS12:第12 AND運算電路/AND運算電路
AS13:第13 AND運算電路/AND運算電路
AS14:第14 AND運算電路/AND運算電路
AS15:第15 AND運算電路/AND運算電路
AS16:第16 AND運算電路/AND運算電路
AS17:第17 AND運算電路/AND運算電路
AS20:第20 AND運算電路/AND運算電路
AS21:第21 AND運算電路/AND運算電路
AS22:第22 AND運算電路/AND運算電路
AS23:第23 AND運算電路/AND運算電路
AS24:第24 AND運算電路/AND運算電路
AS25:第25 AND運算電路/AND運算電路
AS26:第26 AND運算電路/AND運算電路
AS27:第27 AND運算電路/AND運算電路
AS28:第28 AND運算電路/AND運算電路
AS29:第29 AND運算電路/AND運算電路
AS2a:第2a AND運算電路/AND運算電路
AS2b:第2b AND運算電路/AND運算電路
AS2c:第2c AND運算電路/AND運算電路
AS2d:第2d AND運算電路/AND運算電路
AS2e:第2e AND運算電路/AND運算電路
AS2f:第2f AND運算電路/AND運算電路
AS30:第30 AND運算電路/AND運算電路
AS31、AS32、AS33、AS34、AS35、AS36、AS37、AS38、AS39、AS3a、AS3b、AS3c、AS3d、AS3e:AND運算電路
B00:第B00子矩陣/子矩陣
B01:第B01子矩陣/子矩陣
B02:第B02子矩陣/子矩陣
B03:第B03子矩陣/子矩陣
B04:第B04子矩陣/子矩陣
B05:第B05子矩陣/子矩陣
B06:第B06子矩陣/子矩陣
B07:第B07子矩陣/子矩陣
B08:第B08子矩陣/子矩陣
B09:第B09子矩陣/子矩陣
B10:第B10子矩陣/子矩陣
B11:第B11子矩陣/子矩陣
B12:第B12子矩陣/子矩陣
B13:第B13子矩陣/子矩陣
B14:第B14子矩陣/子矩陣
B15:第B15子矩陣/子矩陣
BB:基礎位元
CA:命令/位址訊號
CK:時脈訊號
CMD:命令
DATA:資料
DB:資料緩衝器
DQ:資料訊號
DQS:資料選通訊號
DSF:解碼狀態旗標
DSF1:第一解碼狀態旗標
DSF2:第二解碼狀態旗標
DT_ERR、ERR:錯誤資訊
DT_ERR-2:資料錯誤資訊
ECC-DEC、ECC-DEC-1:ECC解碼器
ERV:錯誤向量
H-mat:H矩陣
IM:單位矩陣
MCB:微凸塊
MDQ:資料線
PR:奇偶性矩陣
PRT:奇偶性資料
PRT_ERR:奇偶性錯誤資訊
RDT:讀取資料
RDT_cor:經錯誤校正的讀取資料
S0、S0B、S1、S1B、S2、S2B、S3B、S4B、S5B、S6B、S7B:位元
S3:第三位元/位元/第二子列
S4:第四位元/位元/第二子列
S5:第五位元/位元/第二子列
S6:第六位元/位元/第二子列
S7:第七位元/位元/第二子列
S10、S20、S31、S32、S40、S110、S120、S130、S140、S150、S210、S220、S230:操作
sim-H-mat、sim-H-mat_UE:簡化的H矩陣
SM00:子矩陣/第00子矩陣
SM01:子矩陣/第01子矩陣
SM02、SM03、SM04、SM05、SM06、SM07、SM08、SM09、SM10、SM11、SM12、SM13、SM14:子矩陣
SM15:子矩陣/第15子矩陣
SYD:校驗子
SYD_0:校驗子資訊
TSV:矽穿孔
WDT:寫入資料
X-DEC:X解碼器/列解碼器
Y-DEC:Y解碼器/行解碼器
藉由參照附圖詳細闡述實例性實施例,對於熟習此項技術者而言,特徵將變得顯而易見,在附圖中:
圖1是示出根據實例性實施例的記憶體系統的方塊圖。
圖2是示出圖1所示的記憶體裝置的方塊圖。
圖3是用於闡述圖2所示的錯誤校正碼(ECC)電路的操作的方塊圖。
圖4A是示出ECC解碼器的操作的參考實例的流程圖。
圖4B是示出被配置成根據圖4A所示的流程圖實行操作的ECC解碼器的方塊圖。
圖4C是示出圖4B所示的DSF產生器的方塊圖。
圖5A是示出根據實例性實施例的圖3所示的ECC解碼器的操作的流程圖。
圖5B是示出被配置成根據圖5A所示的流程圖實行操作的ECC解碼器的方塊圖。
圖5C是示出圖5B所示的快速DSF產生器的方塊圖。
圖6、圖7A、圖7B及圖7C是示出由圖5A所示的校驗子解碼電路使用的H矩陣的一些實例的圖。
圖8是示出基於圖6至圖7C所示的H矩陣而產生的簡化的H矩陣的一些實例的圖。
圖9是示出圖5C所示的快速DSF產生器的校驗子檢查電路的實例的圖。
圖10是示出圖5C所示的快速DSF產生器的奇偶性錯誤檢查電路的實例的圖。
圖11是示出圖5C所示的快速DSF產生器的快速資料錯誤檢查電路的實例的圖。
圖12是示出圖5C所示的快速DSF產生器的DSF偵測電路的實例的圖。
圖13是示出圖5C所示的快速DSF產生器的DSF偵測電路的實例的方塊圖。
圖14是示出根據實例性實施例的簡化的H矩陣的實例的圖。
圖15是示出使用圖14所示的用於UE確定的簡化的H矩陣的快速資料錯誤檢查電路的實例的圖。
圖16是示出使用來自圖15所示的快速資料錯誤檢查電路的資料錯誤資訊的DSF偵測電路的實例的圖。
圖17是示出使用來自圖15所示的快速資料錯誤檢查電路的資料錯誤資訊的DSF偵測電路的實例的圖。
圖18是用於闡述根據實例性實施例的產生簡化的H矩陣的方法的流程圖。
圖19是示出根據實例性實施例的記憶體系統的方塊圖。
圖20是示出根據實例性實施例的記憶體系統的方塊圖。
圖21是示出根據實例性實施例的記憶體系統的方塊圖。
圖22是示出根據實例性實施例的記憶體封裝的實例的圖。
圖23是示出根據實例性實施例的記憶體封裝的實例的圖。
圖24是示出應用根據本揭露的記憶體裝置的記憶體模組的方塊圖。
圖25是示出應用根據實例性實施例的儲存器裝置的系統的圖。
110:錯誤校正碼(ECC)電路
120:記憶體胞元陣列/記憶陣列
BB:基礎位元
DSF:解碼狀態旗標
PRT:奇偶性資料
RDT:讀取資料
RDT_cor:經錯誤校正的讀取資料
WDT:寫入資料
Claims (20)
- 一種記憶體裝置,包括: 記憶體胞元陣列,被配置成儲存第一資料及第一奇偶性資料; 錯誤校正碼(ECC)電路,被配置成基於所述第一資料及所述第一奇偶性資料而實行錯誤校正碼解碼,且輸出經錯誤校正的資料及解碼狀態旗標;以及 輸入/輸出電路,被配置成將所述經錯誤校正的資料及所述解碼狀態旗標提供至記憶體控制器, 其中所述錯誤校正碼電路包括: 校驗子產生器,被配置成基於所述第一資料及所述第一奇偶性資料而產生校驗子; 校驗子解碼電路,被配置成對所述校驗子進行解碼以產生錯誤向量; 校正邏輯電路,被配置成基於所述錯誤向量及所述第一資料而產生所述經錯誤校正的資料;以及 快速解碼狀態旗標(DSF)產生器,被配置成基於所述校驗子而不使用所述錯誤向量而產生所述解碼狀態旗標。
- 如請求項1所述的記憶體裝置,其中所述校驗子解碼電路與所述快速解碼狀態旗標產生器並列進行操作。
- 如請求項1所述的記憶體裝置,其中所述校驗子解碼電路藉由將所述校驗子與奇偶性檢查矩陣的每一行進行比較來產生所述錯誤向量。
- 如請求項3所述的記憶體裝置,其中所述快速解碼狀態旗標產生器包括: 校驗子檢查電路,被配置成判斷所述校驗子是否為全零且輸出校驗子資訊; 奇偶性錯誤檢查電路,被配置成藉由將所述校驗子與奇偶性矩陣的每一行進行比較來判斷在所述第一奇偶性資料中是否存在錯誤,且輸出奇偶性錯誤資訊; 快速資料錯誤檢查電路,被配置成藉由將所述校驗子的一部分與簡化的奇偶性檢查矩陣的每一行進行比較來判斷在所述第一資料或所述第一奇偶性資料中是否存在錯誤,且輸出資料錯誤資訊;以及 解碼狀態旗標偵測電路,被配置成基於所述校驗子資訊、所述奇偶性錯誤資訊及所述資料錯誤資訊而輸出所述解碼狀態旗標。
- 如請求項4所述的記憶體裝置,其中當所述校驗子資訊指示所述校驗子不為全零,所述奇偶性錯誤資訊指示所述第一奇偶性資料中不存在錯誤且所述資料錯誤資訊指示所述第一資料或所述第一奇偶性資料中不存在錯誤時,所述解碼狀態旗標指示在所述第一資料中存在無法校正的錯誤。
- 如請求項4所述的記憶體裝置,其中當所述校驗子資訊指示所述校驗子不為全零,所述奇偶性錯誤資訊指示所述第一奇偶性資料中不存在錯誤且所述資料錯誤資訊指示所述第一資料或所述第一奇偶性資料中不存在錯誤時,所述解碼狀態旗標指示在所述第一資料中存在無法校正的錯誤, 其中當所述校驗子資訊指示所述校驗子不為全零,所述奇偶性錯誤資訊不指示所述第一奇偶性資料中不存在錯誤或者所述資料錯誤資訊不指示所述第一資料或所述第一奇偶性資料中不存在錯誤時,所述解碼狀態旗標指示在所述第一資料中存在能夠校正的錯誤,並且 其中當所述校驗子資訊不指示所述校驗子不為全零,所述奇偶性錯誤資訊不指示所述第一奇偶性資料中不存在錯誤或者所述資料錯誤資訊不指示所述第一資料或所述第一奇偶性資料中不存在錯誤時,所述解碼狀態旗標指示在所述第一資料中不包括錯誤(無錯誤)。
- 如請求項4所述的記憶體裝置,其中所述奇偶性矩陣是n × n單位矩陣,其中所述「n」是所述校驗子中包括的位元的數目,且 其中所述簡化的奇偶性檢查矩陣僅包括由所述校驗子解碼電路使用的所述奇偶性檢查矩陣的一些列的資訊。
- 如請求項7所述的記憶體裝置,其中所述第一資料是128位元,所述第一奇偶性資料是8位元,所述校驗子是8位元,所述奇偶性檢查矩陣具有8 × 128的維度,且所述簡化的奇偶性檢查矩陣具有(8-log 2m) × (128×m)的維度,其中所述「m」是大於1的整數。
- 如請求項4所述的記憶體裝置,其中所述奇偶性矩陣是n × n單位矩陣,其中所述「n」是所述校驗子中包括的位元的數目,且 其中所述簡化的奇偶性檢查矩陣僅包括由所述校驗子解碼電路使用的所述奇偶性檢查矩陣的一些列中所不包括的資訊。
- 如請求項9所述的記憶體裝置,其中當所述校驗子資訊指示所述校驗子不為全零,所述奇偶性錯誤資訊指示所述校驗子不同於所述奇偶性矩陣的所有行且所述資料錯誤資訊指示所述校驗子的一部分對應於所述簡化的奇偶性檢查矩陣的至少一個行時,所述解碼狀態旗標指示在所述第一資料中存在無法校正的錯誤, 其中當所述校驗子資訊指示所述校驗子不為全零,所述奇偶性錯誤資訊指示所述校驗子對應於所述奇偶性矩陣的所述行中的至少一者且所述資料錯誤資訊指示所述校驗子的一部分對應於所述簡化的奇偶性檢查矩陣的至少一個行時,所述解碼狀態旗標指示在所述第一資料中存在能夠校正的錯誤或者在所述第一資料中不包括錯誤(無錯誤)。
- 如請求項1所述的記憶體裝置,其中所述錯誤校正碼電路更包括錯誤校正碼編碼器,所述錯誤校正碼編碼器被配置成基於基礎位元而產生所述第一資料的所述第一奇偶性資料。
- 如請求項1所述的記憶體裝置,更包括: 命令/位址緩衝器,被配置成接收及緩衝來自所述記憶體控制器的命令/位址訊號(CA); 位址解碼器,被配置成自所述命令/位址緩衝器接收位址訊號,且對所述位址訊號進行解碼; 命令解碼器,被配置成自所述命令/位址解碼器接收命令訊號且對所述命令訊號進行解碼; 列解碼器,被配置成端視所述位址解碼器的位址解碼的結果來控制與所述記憶體胞元陣列連接的多條字元線; 行解碼器,被配置成端視所述位址解碼器的所述位址解碼的結果來控制與所述記憶體胞元陣列連接的多條位元線;以及 感測放大器及寫入驅動器,被配置成在所述命令解碼器的控制下,將所述第一資料及所述第一奇偶性資料儲存於所述記憶體胞元陣列中或者讀取儲存於所述記憶體胞元陣列中的所述第一資料及所述第一奇偶性資料。
- 一種錯誤校正碼(ECC)電路,被配置成基於記憶體裝置中所儲存的第一資料及第一奇偶性資料來校正所述第一資料,所述錯誤校正碼電路包括: 校驗子產生器,被配置成基於來自所述記憶體裝置的所述第一資料及所述第一奇偶性資料而產生校驗子; 校驗子解碼電路,被配置成將所述校驗子與奇偶性檢查矩陣的每一行進行比較以產生錯誤向量; 校正邏輯電路,被配置成基於所述錯誤向量及所述第一資料而產生經錯誤校正的資料;以及 快速解碼狀態旗標(DSF)產生器,被配置成基於所述校驗子及簡化的奇偶性檢查矩陣而產生解碼狀態旗標,所述解碼狀態旗標指示所述經錯誤校正的資料的解碼狀態, 其中所述簡化的奇偶性檢查矩陣僅包括關於所述奇偶性檢查矩陣的一部分的資訊。
- 如請求項13所述的錯誤校正碼電路,其中所述快速解碼狀態旗標產生器與所述校驗子解碼電路及所述校正邏輯電路並列進行操作。
- 如請求項13所述的錯誤校正碼電路,其中所述奇偶性檢查矩陣包括「a」個列及「b」個行,其中所述「a」及所述「b」中的每一者是自然數, 其中所述簡化的奇偶性檢查矩陣包括「c」個列及「d」個行,其中所述「c」是小於所述「a」的自然數,且所述「d」是小於所述「b」的自然數, 其中所述簡化的奇偶性檢查矩陣的所述「c」個列包括關於所述奇偶性檢查矩陣的所述「a」個列中的第一子列的資訊,並且 其中所述第一子列的數目是所述「c」。
- 如請求項13所述的錯誤校正碼電路,其中所述快速解碼狀態旗標產生器包括: 校驗子檢查電路,被配置成判斷所述校驗子是否為全零且輸出校驗子資訊; 奇偶性錯誤檢查電路,被配置成藉由將所述校驗子與奇偶性矩陣的每一行進行比較來判斷在所述第一奇偶性資料中是否存在錯誤,且輸出奇偶性錯誤資訊; 快速資料錯誤檢查電路,被配置成藉由將所述校驗子的一部分與所述簡化的奇偶性檢查矩陣的每一行進行比較來判斷在所述第一資料或所述第一奇偶性資料中是否存在錯誤,且輸出資料錯誤資訊;以及 解碼狀態旗標偵測電路,被配置成基於所述校驗子資訊、所述奇偶性錯誤資訊及所述資料錯誤資訊而輸出所述解碼狀態旗標。
- 如請求項13所述的錯誤校正碼電路,更包括錯誤校正碼編碼器,所述錯誤校正碼編碼器被配置成在所述第一資料被儲存於所述記憶體裝置中之前,基於基礎位元而產生所述第一資料的所述第一奇偶性資料。
- 如請求項13所述的錯誤校正碼電路,其中所述錯誤校正碼電路是所述記憶體裝置中所包括的晶粒上錯誤校正碼(OD-ECC)電路。
- 一種錯誤校正碼(ECC)電路的操作方法,所述錯誤校正碼電路被配置成基於記憶體裝置中所儲存的第一資料及第一奇偶性資料來校正所述第一資料,所述方法包括: 基於所述第一資料及所述第一奇偶性資料而產生校驗子; 基於所述校驗子及奇偶性檢查矩陣而產生錯誤向量; 對所述錯誤向量及所述第一資料實行邏輯運算以產生經錯誤校正的資料; 基於所述校驗子及簡化的奇偶性檢查矩陣而產生解碼狀態旗標;以及 將所述經錯誤校正的資料及所述解碼狀態旗標發送至記憶體控制器, 其中並列實行所述錯誤向量的所述產生及所述解碼狀態旗標的所述產生。
- 如請求項19所述的方法,其中基於所述校驗子及所述簡化的奇偶性檢查矩陣的所述解碼狀態旗標的所述產生包括: 判斷所述校驗子是否為全零,以產生校驗子資訊; 將所述校驗子與奇偶性矩陣的每一行進行比較以產生包括關於所述第一奇偶性資料的錯誤的資訊的奇偶性錯誤資訊; 將所述校驗子的一部分與所述簡化的奇偶性檢查矩陣的每一行進行比較以產生包括關於所述第一資料的錯誤或所述第一奇偶性資料的錯誤的資訊的資料錯誤資訊;以及 基於所述校驗子資訊、所述奇偶性錯誤資訊及所述資料錯誤資訊而產生所述解碼狀態旗標,並且 其中當所述校驗子資訊指示所述校驗子不為全零,所述奇偶性錯誤資訊指示所述第一奇偶性資料中不存在錯誤且所述資料錯誤資訊指示所述第一資料或所述第一奇偶性資料中不存在錯誤時,所述解碼狀態旗標指示在所述第一資料中存在無法校正的錯誤。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20210164956 | 2021-11-25 | ||
KR10-2021-0164956 | 2021-11-25 | ||
KR1020220049463A KR20230077606A (ko) | 2021-11-25 | 2022-04-21 | 에러 정정 코드 회로, 에러 정정 코드 회로를 포함하는 메모리 장치, 및 에러 정정 코드 회로의 동작 방법 |
KR10-2022-0049463 | 2022-04-21 | ||
US17/988,140 | 2022-11-16 | ||
US17/988,140 US20230163786A1 (en) | 2021-11-25 | 2022-11-16 | Error correction code circuit, memory device including error correction code circuit, and operation method of error correction code circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202329147A true TW202329147A (zh) | 2023-07-16 |
Family
ID=86383372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111144487A TW202329147A (zh) | 2021-11-25 | 2022-11-22 | 記憶體裝置、錯誤校正碼電路及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230163786A1 (zh) |
CN (1) | CN116168754A (zh) |
TW (1) | TW202329147A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117234792B (zh) * | 2023-11-09 | 2024-02-09 | 北京火山引擎科技有限公司 | 一种用于dpu的数据校验方法、装置、设备及介质 |
-
2022
- 2022-11-16 US US17/988,140 patent/US20230163786A1/en active Pending
- 2022-11-22 TW TW111144487A patent/TW202329147A/zh unknown
- 2022-11-23 CN CN202211471281.XA patent/CN116168754A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230163786A1 (en) | 2023-05-25 |
CN116168754A (zh) | 2023-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5135348B2 (ja) | メモリ装置の信頼性、可用性、およびサービス性の改善 | |
US10692566B2 (en) | Interface method of memory system, interface circuitry and memory module | |
KR101668972B1 (ko) | 오류 검출 및 정정 장치 및 방법 | |
US20160357630A1 (en) | Semiconductor memory device providing analysis and correcting of soft data fail in stacked chips | |
TWI708139B (zh) | 包括晶片上錯誤校正碼電路的記憶體元件和系統 | |
US11550659B2 (en) | Controller and memory system | |
CN111327331A (zh) | 纠错码电路、半导体存储器装置以及存储器*** | |
CN106205728B (zh) | 奇偶校验电路及包括该奇偶校验电路的存储器装置 | |
US10162703B2 (en) | Methods of correcting data errors and semiconductor devices used therein | |
CN109559775B (zh) | 非易失性存储器装置及其操作方法以及数据存储设备 | |
US10579472B2 (en) | Semiconductor devices | |
US20230049851A1 (en) | Ecc memory chip encoder and decoder | |
TW202329147A (zh) | 記憶體裝置、錯誤校正碼電路及其操作方法 | |
US10261860B2 (en) | Semiconductor systems | |
US10917111B2 (en) | Error correction code unit and error correction method | |
CN109669801B (zh) | 包括验证信号发生电路的电子设备 | |
CN115732016A (zh) | 存储器装置、存储器控制器和纠正数据错误的方法 | |
KR20230077606A (ko) | 에러 정정 코드 회로, 에러 정정 코드 회로를 포함하는 메모리 장치, 및 에러 정정 코드 회로의 동작 방법 | |
US20240185942A1 (en) | Error correction code circuit, memory device including error correction code circuit, and operation method of error correction code | |
EP4379555A1 (en) | Error correction code circuit, memory device including error correction code circuit, and operation method of error correction code | |
TW202424987A (zh) | 錯誤校正碼電路、包含錯誤校正碼電路的記憶體裝置、及錯誤校正碼的操作方法 | |
TW202329106A (zh) | 記憶體系統及其操作方法 | |
TW202334978A (zh) | 儲存裝置及操作其的方法 | |
CN117667499A (zh) | 差错校正码解码器、存储器件和存储*** |