TWI486962B - 記憶體控制器、半導體儲存裝置、及解碼方法 - Google Patents

記憶體控制器、半導體儲存裝置、及解碼方法 Download PDF

Info

Publication number
TWI486962B
TWI486962B TW101109218A TW101109218A TWI486962B TW I486962 B TWI486962 B TW I486962B TW 101109218 A TW101109218 A TW 101109218A TW 101109218 A TW101109218 A TW 101109218A TW I486962 B TWI486962 B TW I486962B
Authority
TW
Taiwan
Prior art keywords
error correction
code
error
data
unit
Prior art date
Application number
TW101109218A
Other languages
English (en)
Other versions
TW201306041A (zh
Inventor
Koji Horisaki
Toshikatsu Hida
Shinichi Kanno
Osamu Torii
Original Assignee
Toshiba Kk
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Kk filed Critical Toshiba Kk
Publication of TW201306041A publication Critical patent/TW201306041A/zh
Application granted granted Critical
Publication of TWI486962B publication Critical patent/TWI486962B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic 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/1575Direct 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Error Detection And Correction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Detection And Correction Of Errors (AREA)

Description

記憶體控制器、半導體儲存裝置、及解碼方法
本文中所描述之實施例大體而言係關於記憶體控制器、半導體儲存裝置及解碼方法。
本申請案基於且主張2011年7月26日申請之日本專利申請案第2011-163475號之優先權的權益,該申請案之全部內容以引用之方式併入本文中。
通常,關於具有高錯誤校正能力(及高碼率)之程式碼而言,其解碼處理變得複雜。此外,將產生之錯誤之數目變化,以致需要在大量錯誤之情況下行使高錯誤校正能力且在少量錯誤之情況下藉由簡單解碼處理完成校正兩者。回應於此需要,已知執行多錯誤校正編碼之技術及自適應地切換解碼方法之技術。
在執行多錯誤校正編碼之技術及自適應地切換解碼方法之技術中,通常,存在諸如處理變得複雜或電路規模增大之問題。
專利文獻1 日本專利特許公開案第2009-59422號
專利文獻2 日本專利特許公開案第H10-207726號
專利文獻3 日本專利特許公開案第2007-13260號
專利文獻4 日本專利特許公開案第2008-16092號
根據一實施例,控制一記憶體單元之一記憶體控制器包括一編碼單元,該編碼單元基於待寫入至該記憶體單元之 資料而產生一錯誤偵測碼,且關於該資料及該錯誤偵測碼而產生能夠校正t個(t為2或大於2之整數)符號的一錯誤校正碼。此外,此記憶體控制器包括一記憶體介面,該記憶體介面針對n(n為2或大於2之整數)數目個通道中之每一者將該資料、該錯誤偵測碼及該錯誤校正碼寫入至該記憶體單元,且針對該等通道中之每一者自該記憶體單元讀出該資料、該錯誤偵測碼及該錯誤校正碼作為讀取資料。另外,此記憶體控制器包括:n數目個第一錯誤校正解碼單元,其各自針對該等通道中之每一者對該讀取資料執行能夠校正s個(s為等於或大於1且小於t之整數)符號的一第一錯誤校正解碼處理;n數目個錯誤偵測單元,其基於藉由該第一錯誤校正解碼處理解碼之資料及一錯誤偵測碼而針對該等通道中之每一者執行一錯誤偵測處理;及一第二錯誤校正解碼單元,其數目小於n且針對藉由該錯誤偵測單元偵測到一錯誤之該通道對該讀取資料執行能夠校正t個符號的一第二錯誤校正解碼處理。
以下將參看隨附圖式詳細解釋根據該實施例之記憶體控制器、半導體儲存裝置及解碼方法。本發明並不限於此實施例。
圖1為說明根據該實施例之半導體儲存裝置1之組態實例的方塊圖。根據本實施例之半導體儲存裝置1包括一記憶體控制器(記憶體控制裝置)2,及一半導體記憶體單元(記憶體單元)3,該半導體記憶體單元(記憶體單元)3包括一「反及」(NAND)型記憶胞。半導體儲存裝置1經由通信媒 體連接至主機4且充當主機4之外部儲存媒體。主機4之實例包括個人電腦及CPU(中央處理單元)核心。
記憶體控制器2包括一內部匯流排20、一主機I/F(介面)21、一「反及」I/F(記憶體介面)22、一控制單元23及一編碼/解碼處理單元24。該編碼/解碼處理單元24包括一編碼單元25及一解碼單元26。
主機I/F 21將自主機4接收之命令、資料及類似者輸出至內部匯流排20。主機I/F 21將經由內部匯流排20輸入之資料、來自控制單元23之回應通知(諸如,指示命令執行完成之通知)及類似者傳輸至主機4。
半導體記憶體單元3包括記憶體31-0至31-3。記憶體31-0至31-3中之每一者包括一或多個記憶體晶片。
「反及」I/F 22包括四個通道(通道ch0至ch3),使得至記憶體31-0至31-3之寫入及自記憶體31-0至31-3之讀取可並行地加以執行。通道ch0至ch3分別控制對應記憶體31-0至31-3。在此實施例中,通道之數目為四個且組態半導體記憶體單元3之記憶體的數目為四個,然而,通道之數目並不限於此,且半導體記憶體單元3包括對應於通道之數目的記憶體便足矣。
控制單元23為總體控制半導體儲存裝置1之每一組件且包括一CPU核心、一RAM(隨機存取記憶體)、一ROM(唯讀記憶體)、一DMA(直接記憶體存取)控制器及類似者的控制單元。當控制單元23經由主機I/F 21及內部匯流排20自主機4接收命令時,控制單元23根據該命令執行控制。舉 例而言,控制單元23根據來自主機4之命令指示「反及」I/F 22執行至半導體記憶體單元3之資料寫入、自半導體記憶體單元3之資料讀取,及類似者。控制單元23指示編碼/解碼處理單元24執行錯誤校正編碼處理或解碼處理。
編碼/解碼處理單元24基於控制單元23之指令對自主機4接收之資料執行錯誤校正編碼處理且將資料輸出至「反及」I/F 22,或對自「反及」I/F 22輸入之資料執行解碼處理。此時,控制單元23控制針對每一通道而劃分資料且將其輸入至編碼/解碼處理單元24,且編碼/解碼處理單元24針對每一通道並行地執行錯誤校正編碼處理且將處理結果輸出至「反及」I/F 22之對應通道。當自「反及」I/F 22輸入自半導體記憶體單元3讀出之資料時,編碼/解碼處理單元24針對「反及」I/F 22之每一通道並行地對自每一通道輸入之資料執行解碼處理。
圖1中所展示之半導體儲存裝置1的組態為一實例,且任何組態可加以應用而不限於圖1中所展示之組態,只要該組態使得一半導體記憶體及一控制該半導體記憶體之讀取及寫入的控制器得以包括、與主機4之通信可得以建立,且編碼/解碼處理針對每一通道而得以執行。此外,可替代半導體記憶體單元3而使用除了半導體記憶體以外之儲存單元。
接下來,解釋至本實施例中之半導體記憶體單元3之寫入操作。首先,當自主機4指示資料之寫入時,控制單元23針對每一通道而將資料排序,且指示編碼/解碼處理單 元24執行編碼且指示「反及」I/F 22執行至半導體記憶體單元3之寫入。針對每一通道,將待自主機4傳輸之寫入目標資料寫入至半導體儲存裝置1中之未圖示之緩衝器記憶體。
在本實施例中,作為編碼處理,編碼單元25產生錯誤偵測碼及錯誤校正碼。圖2為說明本實施例中之編碼單元25之組態實例的圖式。如圖2中所展示,編碼單元25包括基於預定大小之寫入資料而產生CRC(循環冗餘檢查)碼的錯誤偵測碼編碼器251-1至251-4,及基於預定大小之寫入資料及對應於該資料之CRC碼而產生錯誤校正碼的錯誤校正碼編碼器252-1至252-4。
在此實施例中,解釋了編碼單元25產生CRC碼作為錯誤偵測碼之實例,然而,錯誤偵測碼並不限於CRC碼。此外,可將任何程式碼用作錯誤校正碼,且在此實施例中,使用BCH碼。錯誤校正碼並不限於BCH碼且可使用諸如RS(雷德-所羅門)碼之任何程式碼。在此實施例中,因為通道之數目為四個,所以錯誤偵測碼編碼器及錯誤校正碼編碼器中之每一者的數目為四個,然而,根據通道之數目來設置錯誤偵測碼編碼器及錯誤校正碼編碼器便足矣。
錯誤偵測碼編碼器251-1至251-4關於自緩衝器記憶體輸入之對應於每一通道之寫入目標資料而產生錯誤偵測碼。錯誤校正碼編碼器252-1至252-4關於寫入目標資料及對應之錯誤偵測碼而產生能夠校正t個(t為1或大於1之整數)符號的錯誤校正碼,且將寫入目標資料、錯誤偵測碼及所產 生之錯誤校正碼輸入至「反及」I/F 22之對應通道。在此實施例中,因為將執行逐位元校正之BCH碼用作錯誤校正碼,所以能夠校正t個符號之錯誤校正碼(下文中,稱作t符號錯誤校正碼)指示能夠校正t個位元之BCH碼。另一方面,RS碼或類似者執行逐符號校正,使得校正單元取決於待使用之錯誤校正碼之類型。此實施例包括1個符號為1個位元之情況,使得當描述可校正t個符號時,此情形包括可在逐位元校正之情況下校正t個位元的意義。
針對每一通道,「反及」I/F 22分別將自錯誤校正碼編碼器252-1至252-4輸入之寫入目標資料、錯誤偵測碼及錯誤校正碼寫入至記憶體31-0至31-3。替代自編碼單元25輸入,可將寫入目標資料自緩衝器記憶體輸入至「反及」I/F 22。
圖3為說明待寫入至半導體記憶體單元3之資料及程式碼之概念的圖式。如圖3中所展示,基於預定大小之寫入資料(描述為圖3中之資料)而產生錯誤偵測碼(CRC碼),且藉由預定大小之寫入資料及對應之錯誤偵測碼而產生錯誤校正碼作為錯誤校正編碼目標。該預定大小為(例如)磁區大小。該磁區大小為(例如)512位元組。圖3說明關於一對資料及錯誤偵測碼而產生一個錯誤校正碼的實例,然而,可關於複數對資料及錯誤偵測碼而產生一個錯誤校正碼。
接下來,解釋自本實施例中之半導體記憶體單元3之讀取操作。當自主機4指示資料之讀取時,控制單元23指示編碼/解碼處理單元24執行解碼且指示「反及」I/F 22執行 自半導體記憶體單元3之讀取。「反及」I/F 22之每一通道基於來自控制單元23之指令自半導體記憶體單元3讀出資料及對應之錯誤偵測碼及錯誤校正碼,且將所讀出之資料及對應之錯誤偵測碼及錯誤校正碼輸出至編碼/解碼處理單元24。
編碼/解碼處理單元24之解碼單元26針對每一通道基於所讀出之資料、錯誤偵測碼及錯誤校正碼執行解碼處理,且當藉由解碼處理判定存在錯誤時,對讀取資料執行錯誤校正。主機I/F 21將錯誤校正之後的資料(當不存在錯誤時,為自半導體記憶體單元3讀出之資料)傳輸至主機4。
接下來,詳細解釋本實施例之解碼處理。圖4為說明本實施例中之解碼單元26之組態實例的圖式。如圖4中所展示,本實施例中之解碼單元26針對各別通道包括能夠執行s個錯誤(s為等於或大於1且小於t之整數)之錯誤校正處理的s符號錯誤校正解碼器(第一錯誤校正解碼單元)261-1至261-4、藉由使用錯誤偵測碼來執行錯誤偵測之錯誤偵測單元262-1至262-4,及緩衝器263-1至263-4。解碼單元26進一步包括能夠執行t個錯誤之錯誤校正處理的t符號錯誤校正解碼器(第二錯誤校正解碼單元)264、錯誤偵測單元265及選擇單元266。在此實施例中,因為通道之數目為四個,所以s符號錯誤校正解碼器、錯誤偵測單元及緩衝器中之每一者的數目為四個,然而,根據通道之數目來設置此等裝置便足矣。此外,替代給該等通道分別設置緩衝器263-1至263-4,可共用一個緩衝器、可整合緩衝器與s符號 錯誤校正解碼器261-1至261-4,或可在解碼單元26外部設置緩衝器。
圖5為說明本實施例中之編碼/解碼處理之概述的圖式。如圖5中所展示,在本實施例中,針對「反及」I/F 22之通道(ch0至ch3)中之每一者而執行編碼及解碼之處理。圖5說明使用CRC碼作為錯誤偵測碼且使用BCH碼作為錯誤校正碼之實例。首先,如以上所描述,當寫入時,針對每一通道在編碼單元25中執行CRC附加處理(錯誤偵測碼之產生)(步驟S1)。在圖5中,為了簡化該圖,僅將步驟編號附加至處理,然而,可在其他通道中執行類似處理(ch0至ch3)。
接著,藉由編碼單元25針對每一通道執行t符號校正BCH編碼處理(t符號錯誤校正編碼處理)(步驟S2),且執行資料及每一程式碼至半導體記憶體單元3之寫入,且當存在讀取請求時,執行自半導體記憶體單元3之讀取(步驟S3)。自半導體記憶體單元3讀出之資料及每一程式碼首先經受藉由解碼單元26針對每一通道進行之s符號校正BCH解碼(s符號錯誤校正解碼處理)(步驟S4),且經受CRC檢查(錯誤偵測處理)(步驟S5)。
當作為CRC檢查之結果而不存在錯誤(CRC=OK)時,將經受s符號校正BCH解碼之資料自解碼單元26傳輸至主機4。作為CRC檢查之結果而判定為具有錯誤(CRC=Fail)之通道之資料經受t符號校正BCH解碼(t符號錯誤校正解碼處理)(步驟S6),且基於t符號錯誤校正解碼處理而經受CRC 檢查(步驟S7)。可藉由多個獨立電路執行或可藉由一共同電路執行步驟S5中之CRC檢查(錯誤偵測處理)及步驟S7中之CRC檢查(錯誤偵測處理)。當作為此CRC檢查之結果而不存在錯誤時,將經受t符號校正BCH解碼之資料自解碼單元26傳輸至主機4。
藉由使用錯誤校正處理之特定實例來解釋s符號錯誤校正處理與t符號錯誤校正處理之間的差別。作為一實例,解釋碼長=15、s=1且t=2之情況。在編碼處理中,產生能夠校正t(=2)個錯誤(能夠執行t符號校正)之BCH程式碼。
在此情況下,當藉由t符號錯誤校正處理執行解碼時,首先,基於自半導體記憶體單元3讀出之資料來計算兩個校正子(a0、a1)。接下來,(例如)藉由使用校正子(a0、a1)基於以下方程式(1)獲得兩個錯誤位置多項式之係數(b0、b1)。以下計算方法為一個實例,且錯誤位置多項式之計算方法取決於解碼演算法,且因此並不限於以下方法。
b0=a0
b1=(a03 +a1)/a0 (1)
此後,獲得滿足1+b0×X+b1×X2 =0之X(x0,x1)。此處獲得之X(x0,x1)表示一錯誤位置且錯誤校正可藉由反轉位元來加以執行。
另一方面,在執行s(=1)符號校正之情況下,首先,基於自半導體記憶體單元3讀出之資料來計算一校正子a0。接下來,以與以上方式類似之方式,獲得錯誤位置多項式之一係數b0。此後,獲得滿足1+b0×X=0之X(x0)。在此, 所獲得之X(x0)表示一錯誤位置且錯誤校正可藉由反轉位元來加以執行。
如上所述,在s符號校正解碼處理中,校正量少於t符號校正解碼處理,且係數之計算及類似操作通常並行地得以執行,以使得s符號校正解碼處理可實施於具有小於t符號校正解碼處理之電路區域的解碼電路中。
如以上所描述,在本實施例中,在編碼處理中,產生t符號錯誤校正碼。當藉由使用t符號錯誤校正碼執行解碼時,通常,藉由使用能夠執行t個錯誤之錯誤校正處理的解碼器來執行解碼處理。然而,在此情況下,當t變大時,解碼器之硬體規模變大。當選擇錯誤校正碼時,通常,選擇能夠解決數目大於假設平均錯誤數目之錯誤的錯誤校正碼以降低停用錯誤校正之可能性。因此,在大多數情況下,實際上產生之錯誤的數目小於t。
在本實施例中,針對該等通道分別設置解決s個錯誤(其小於t)之錯誤校正的s符號錯誤校正解碼器261-1至261-4,且通常藉由s符號錯誤校正解碼器261-1至261-4來執行錯誤校正處理。接著,針對每一通道,錯誤偵測單元262-1至262-4基於在錯誤校正處理之後的資料及錯誤偵測碼來執行錯誤偵測,且當作為其結果而偵測到錯誤時,執行藉由t符號錯誤校正解碼器264進行之錯誤校正處理。未必需要針對通道之數目來設置t符號錯誤校正解碼器264,且設置多個t符號錯誤校正解碼器264中之一者便足矣。
在解碼處理中,通常,執行s符號錯誤校正處理便足 矣,以使得錯誤校正處理中之處理負載不大,因此使得能夠減小硬體規模而不使處理變複雜。在錯誤校正編碼中,產生一種類型之t符號錯誤校正碼便足矣,以使得不需要對相同資料雙重地執行錯誤校正編碼,且不增加冗餘碼。另外,輸入至t符號錯誤校正解碼器264之資料(自半導體記憶體單元3讀出之資料)與輸入至s符號錯誤校正解碼器261-1至261-4中之任一者的資料相同,以使得(例如)不需要再次自半導體記憶體單元3讀出資料。
圖6為說明本實施例中之解碼處理程序之一個實例的流程圖。參看圖5及圖6來解釋本實施例中之解碼單元26之操作。首先,當開始解碼處理時,藉由「反及」I/F 22自每一通道讀出資料(自半導體記憶體單元3讀出且包括錯誤校正碼及錯誤偵測碼之資料),且將其輸入至s符號錯誤校正解碼器261-1至261-4中之每一者(步驟S11)。此外,亦將自「反及」I/F 2之通道輸入的資料分別輸入至緩衝器263-1至263-4。
s符號錯誤校正解碼器261-1至261-4對自「反及」I/F 22之每一通道輸入之資料執行s符號錯誤校正解碼處理(能夠校正s個錯誤之錯誤校正解碼處理)(步驟S12)。
錯誤偵測單元262-1至262-4基於經受藉由s符號錯誤校正解碼器261-1至261-4進行之s符號錯誤校正處理之資料及錯誤偵測碼而執行錯誤偵測處理,且向控制單元23通知錯誤偵測結果且將經受s符號錯誤校正解碼處理之資料輸出至選擇單元266(步驟S13)。
控制單元23基於自錯誤偵測單元262-1至262-4通知之錯誤偵測結果而獲得被偵測到錯誤之通道的數目NCH ,且判定NCH 為0、1抑或2抑或更大(步驟S14)。當NCH 為0時(步驟S14 NCH =0),控制單元23指示選擇單元266選擇自錯誤偵測單元262-1至262-4輸出之所有資料,且在將指示錯誤校正解碼成功之額外資訊附加至所有資料之後輸出所有資料,且選擇單元266根據該指令而輸出自錯誤偵測單元262-1至262-4輸出之資料(步驟S15)。接著,控制單元23判定是否完成讀取目標資料之讀取(步驟S25),且當完成讀取時(步驟S25中之「是」),完成該處理,且當未完成讀取時(步驟S25中之「否」),返回至步驟S11。
當NCH 為1時(步驟S14 NCH =1),控制單元23指示選擇單元266選擇自錯誤偵測單元262-1至262-4輸出之對應於未被偵測到錯誤之通道的資料(s符號錯誤校正解碼資料),且在將指示錯誤校正解碼成功之額外資訊附加至該資料之後輸出該資料,且選擇單元266根據該指令而輸出資料(步驟S16)。在步驟S16中,此外,控制單元23指示t符號錯誤校正解碼器264自對應於被偵測到錯誤之通道的緩衝器263-1至263-4讀出資料,且對其執行處理,且t符號錯誤校正解碼器264基於來自控制單元23之指令而執行t符號錯誤校正處理(步驟S16)。具體而言,t符號錯誤校正解碼器264自t符號錯誤校正解碼器264被指示讀出資料之緩衝器263-1至263-4(儲存在s符號錯誤校正處理之後被偵測到錯誤之資料的緩衝器)讀出資料,對該資料執行t符號錯誤校正處理, 且將經處理資料輸出至錯誤偵測單元265。
錯誤偵測單元265基於在t符號錯誤校正處理之後的資料而執行錯誤偵測,且向控制單元23通知錯誤偵測結果,且將經受t符號錯誤校正處理之資料輸出至選擇單元266。控制單元23基於自錯誤偵測單元265通知之錯誤偵測結果而判定是否存在錯誤(步驟S17),且當不存在錯誤時(步驟S17中之「是」),控制單元23指示選擇單元266選擇自錯誤偵測單元265輸出之資料,且在將指示錯誤校正解碼成功之額外資訊附加至該資料之後輸出該資料,且選擇單元266基於該指令而輸出該資料(步驟S18),且處理進行至步驟S25。另一方面,當在步驟S17中判定存在錯誤時(步驟S17中之「否」),控制單元23指示選擇單元266選擇對應於被偵測到錯誤之通道之緩衝器263-1至263-4中的資料,且在將指示錯誤校正解碼失敗之額外資訊附加至該資料之後輸出該資料,且選擇單元266基於該指令而輸出該資料(步驟S19),且處理進行至步驟S25。
在步驟S14中,當NCH 為2或大於2時(步驟S14 NCH 2),控制單元23指示選擇單元266選擇對應於未被偵測到錯誤之通道的自錯誤偵測單元262-1至262-4輸出之資料,且在將指示錯誤校正解碼成功之額外資訊附加至該資料之後輸出該資料,且選擇單元266根據該指令而輸出該資料(步驟S20)。在步驟S20中,此外,控制單元23自NCH 個通道當中判定將為t符號錯誤校正處理之目標的一通道(步驟S20)。接著,控制單元23指示t符號錯誤校正解碼器264自對應於 所判定通道之緩衝器263-1至263-4讀出資料,且對其執行處理,且t符號錯誤校正解碼器264基於來自控制單元23之指令而執行t符號錯誤校正處理(步驟S21)。錯誤偵測單元265基於在t符號錯誤校正處理之後的資料而執行錯誤偵測,且向控制單元23通知錯誤偵測結果,且將經受t符號錯誤校正處理之資料輸出至選擇單元266。控制單元23基於自錯誤偵測單元265通知之錯誤偵測結果而判定是否存在錯誤(步驟S22),且當不存在錯誤時(步驟S22中之「是」),控制單元23指示選擇單元266選擇自錯誤偵測單元265輸出之資料,且在將指示錯誤校正解碼成功之額外資訊附加至該資料之後輸出該資料,且選擇單元266基於該指令而輸出該資料(步驟S23)。
控制單元23判定是否對所有NCH 個通道執行了t符號錯誤校正處理(步驟S24),且當關於所有NCH 個通道完成了t符號錯誤校正處理時(步驟S24中之「是」),進行至步驟S25。當NCH 個通道當中存在未經受t符號錯誤校正處理之通道時(步驟S24中之「否」),處理返回至步驟S20。第二次在步驟S20中,自尚未經受t符號錯誤校正處理之通道當中判定將為t符號錯誤校正處理之目標的通道。
在步驟S22中,當存在錯誤時(步驟S22中之「否」),控制單元23指示選擇單元266選擇對應於被偵測到錯誤之通道之緩衝器263-1至263-4中的資料,且在將指示錯誤校正解碼失敗之額外資訊附加至該資料之後輸出該資料,且選擇單元266基於該指令而輸出該資料(步驟S26),且處理進 行至步驟S24。
未限制s符號錯誤校正解碼器261-1至261-4及t符號錯誤校正解碼器264所採用之解碼方法,然而,當使用BCH碼、RS碼或類似者時,s符號錯誤校正解碼器261-1至261-4及t符號錯誤校正解碼器264對相同GF(高氏場)執行解碼操作(亦即,具有相同碼長之解碼操作)。
在此實施例中,將錯誤校正碼編碼器252-1至252-4及t符號錯誤校正解碼器264之校正能力(值t)解釋為一固定值,然而,其可基於來自主機之控制信號進行設定。
舉例而言,在使用BCH碼之情況下,預定了在編碼中所使用之原始多項式,且藉由使用生成多項式而執行編碼處理,該生成多項式係藉由將此原始多項式用於編碼中而產生。t符號校正BCH碼之生成多項式G(x)可由以下方程式(2)表示。
G(x)=M1 (x)˙M3 (x)˙M5 (x)...M(2t-1) (x) (2)
M1 (x)為原始元素α為根之多項式且被稱為原始多項式。M3 (x)為α3 為根之多項式,M5 (x)為α5 為根之多項式,...,且M(2t-1) (x)為α(2t-1) 為根之多項式。當判定了M1 (x)時,可藉由計算而順序地獲得M3 (x)、M5 (x)、...、M(2t-1) (x)。因此,若已知原始多項式及校正能力(值t),則可獲得生成多項式。
在解碼處理中,以類似方式,可藉由基於原始多項式及校正能力(值t)來指定生成多項式而執行對應於編碼之解碼處理。
與校正能力為固定值之情況相比,校正能力可變之錯誤校正碼編碼器及錯誤校正解碼器的電路規模可變大,然而,因為錯誤校正碼編碼器之電路規模小於錯誤校正解碼器之電路規模,所以即使錯誤校正碼編碼器之電路規模增大,整個記憶體控制器的電路規模的增大仍相對小。此外,根據本發明之記憶體控制器具有以下特性:所設置之t符號錯誤校正解碼器264的數目少於通道,使得與所有錯誤校正解碼器之校正能力可變的情況相比,整個記憶體控制器的電路規模之增大是小的。
在以上解釋中,解釋了包括一個t符號錯誤校正解碼器264之實例,然而,可包括兩個或兩個以上t符號錯誤校正解碼器264。當同時在兩個或兩個以上通道中執行s符號錯誤校正處理之後偵測到錯誤時,在包括一個t符號錯誤校正解碼器264之情況下,直至完成該等通道中之任一者的t符號錯誤校正解碼處理為止,方可開始該等通道中之另一者的t符號錯誤校正解碼處理,然而,在包括兩個t符號錯誤校正解碼器264之情況下,有可能同時執行兩個通道之t符號錯誤校正解碼處理。然而,t符號錯誤校正解碼器264之數目的增大導致了硬體規模之增大,以致可考慮到硬體規模之增大量、關於錯誤之假設數目與讀取數目的所需比率,及類似者而適當地選擇t符號錯誤校正解碼器264。
如上所述,在本實施例中,針對每一通道,對被添加錯誤偵測碼且被執行t符號錯誤校正編碼處理的資料執行藉由s符號錯誤校正解碼器261-1至261-4進行之s符號錯誤校 正解碼處理。接著,基於錯誤偵測碼而執行錯誤偵測,且對被偵測到錯誤之通道的資料執行藉由t符號錯誤校正解碼器264進行之t符號錯誤校正解碼處理,且將未被偵測到錯誤之通道的資料藉由s符號錯誤校正解碼處理作為解碼結果而直接輸出。因此,可在不使編碼及解碼處理變複雜之情況下減小電路規模。
雖然已描述了特定實施例,但僅以舉例方式呈現了此等實施例,且此等實施例並不意欲限制本發明之範疇。實情為,可按多種其他形式來體現本文中所描述之新穎實施例;另外,在不脫離本發明之精神的情況下,可對本文中所描述之實施例之形式作出各種省略、取代及改變。隨附申請專利範圍及其等效物意欲涵蓋落入本發明之範疇及精神內之該等形式或修改。
1‧‧‧半導體儲存裝置
2‧‧‧記憶體控制器(記憶體控制裝置)
3‧‧‧半導體記憶體單元(記憶體單元)
4‧‧‧主機
20‧‧‧內部匯流排
21‧‧‧主機I/F(介面)
22‧‧‧「反及」I/F(記憶體介面)
23‧‧‧控制單元
24‧‧‧編碼/解碼處理單元
25‧‧‧編碼單元
26‧‧‧解碼單元
31-0‧‧‧記憶體
31-1‧‧‧記憶體
31-2‧‧‧記憶體
31-3‧‧‧記憶體
251-1‧‧‧錯誤偵測碼編碼器
251-2‧‧‧錯誤偵測碼編碼器
251-3‧‧‧錯誤偵測碼編碼器
251-4‧‧‧錯誤偵測碼編碼器
252-1‧‧‧錯誤校正碼編碼器
252-2‧‧‧錯誤校正碼編碼器
252-3‧‧‧錯誤校正碼編碼器
252-4‧‧‧錯誤校正碼編碼器
261-1‧‧‧s符號錯誤校正解碼器(第一錯誤校正解碼單元)
261-2‧‧‧s符號錯誤校正解碼器(第一錯誤校正解碼單 元)
261-3‧‧‧s符號錯誤校正解碼器(第一錯誤校正解碼單元)
261-4‧‧‧s符號錯誤校正解碼器(第一錯誤校正解碼單元)
262-1‧‧‧錯誤偵測單元
262-2‧‧‧錯誤偵測單元
262-3‧‧‧錯誤偵測單元
262-4‧‧‧錯誤偵測單元
263-1‧‧‧緩衝器
263-2‧‧‧緩衝器
263-3‧‧‧緩衝器
263-4‧‧‧緩衝器
264‧‧‧t符號錯誤校正解碼器(第二錯誤校正解碼單元)
265‧‧‧錯誤偵測單元
266‧‧‧選擇單元
ch0‧‧‧通道
ch1‧‧‧通道
ch2‧‧‧通道
ch3‧‧‧通道
圖1為說明半導體儲存裝置之組態實例的方塊圖。
圖2為說明編碼單元之組態實例的圖式。
圖3為說明待寫入至半導體記憶體單元之資料及程式碼之概念的圖式。
圖4為說明解碼單元之組態實例的圖式。
圖5為說明編碼/解碼處理之概述的圖式。
圖6為說明解碼處理程序之一個實例的流程圖。
1‧‧‧半導體儲存裝置
2‧‧‧記憶體控制器(記憶體控制裝置)
3‧‧‧半導體記憶體單元(記憶體單元)
4‧‧‧主機
20‧‧‧內部匯流排
21‧‧‧主機I/F(介面)
22‧‧‧「反及」I/F(記憶體介面)
23‧‧‧控制單元
24‧‧‧編碼/解碼處理單元
25‧‧‧編碼單元
26‧‧‧解碼單元
31-0‧‧‧記憶體
31-1‧‧‧記憶體
31-2‧‧‧記憶體
31-3‧‧‧記憶體

Claims (19)

  1. 一種控制一記憶體單元之記憶體控制器,其包含:一編碼單元,其針對待寫入至該記憶體單元之資料而產生一錯誤偵測碼,且關於該資料及該錯誤偵測碼而產生能夠校正t個(t為2或大於2之一整數)符號之一錯誤校正碼;一記憶體介面,其包括n(n為2或大於2之一整數)數目個通道,針對該等通道中之每一者,將該資料、該錯誤偵測碼及該錯誤校正碼寫入至該記憶體單元,且針對該等通道中之每一者,自該記憶體單元讀出該資料、該錯誤偵測碼及該錯誤校正碼作為讀取資料;n數目個第一錯誤校正解碼單元,其各自針對該等通道中之每一者對該讀取資料執行能夠校正s個(s為等於或大於1且小於t之一整數)符號的一第一錯誤校正解碼處理;n數目個錯誤偵測單元,其基於藉由該第一錯誤校正解碼處理所解碼之資料及一錯誤偵測碼而針對該等通道中之每一者執行一錯誤偵測處理;及一第二錯誤校正解碼單元,其數目小於n且針對藉由該錯誤偵測單元偵測到一錯誤之該通道對該讀取資料執行能夠校正t個符號的一第二錯誤校正解碼處理。
  2. 如請求項1之記憶體控制器,其中該編碼單元針對該等通道中之每一者而產生該錯誤偵測碼且針對該等通道中之每一者而產生該錯誤校正碼。
  3. 如請求項1之記憶體控制器,其中該第一錯誤校正解碼處理中之一碼長及該第二錯誤校正解碼處理中之一碼長係相同的。
  4. 如請求項1之記憶體控制器,其中1個符號為1個位元且該錯誤校正碼為一BCH碼。
  5. 如請求項1之記憶體控制器,其中該錯誤校正碼為一雷德-所羅門碼。
  6. 如請求項1之記憶體控制器,其中該編碼單元基於一值t及一預定原始多項式來計算一生成多項式,該值t係自外部給定之一校正能力,且藉由使用該生成多項式而產生該錯誤校正碼。
  7. 如請求項1之記憶體控制器,其中該第二錯誤校正解碼單元能夠改變一值t,該值t係一校正能力。
  8. 如請求項1之記憶體控制器,其中該第二錯誤校正解碼單元之數目為1。
  9. 如請求項1之記憶體控制器,其中該第二錯誤校正解碼單元之數目為2或大於2。
  10. 一種半導體儲存裝置,其包含:一記憶體單元;及一記憶體控制器,其控制至該記憶體單元之寫入及自該記憶體單元之讀取,其中該記憶體控制器包括一編碼單元,其針對待寫入至該記憶體單元之資料而產生一錯誤偵測碼,且關於該資料及該錯誤偵測碼 而產生能夠校正t個(t為2或大於2之一整數)符號之一錯誤校正碼,一記憶體介面,其包括n(n為2或大於2之一整數)數目個通道,針對該等通道中之每一者,將該資料、該錯誤偵測碼及該錯誤校正碼寫入至該記憶體單元,且針對該等通道中之每一者,自該記憶體單元讀出該資料、該錯誤偵測碼及該錯誤校正碼作為讀取資料,n數目個第一錯誤校正解碼單元,其各自針對該等通道中之每一者對該讀取資料執行能夠校正s個(s為等於或大於1且小於t之一整數)符號的一第一錯誤校正解碼處理,n數目個錯誤偵測單元,其基於藉由該第一錯誤校正解碼處理所解碼之資料及一錯誤偵測碼而針對該等通道中之每一者執行一錯誤偵測處理,及一第二錯誤校正解碼單元,其數目小於n且針對藉由該錯誤偵測單元偵測到一錯誤之該通道對該讀取資料執行能夠校正t個符號的一第二錯誤校正解碼處理。
  11. 一種在包括n(n為2或大於2之一整數)數目個通道的一半導體儲存裝置中解碼資料、針對該資料而產生之一錯誤偵測碼及關於該資料及該錯誤偵測碼而產生之能夠校正t個(t為2或大於2之一整數)符號之一錯誤校正碼之解碼方法,該資料、該錯誤偵測碼及該錯誤校正碼儲存於一記憶體單元中,該方法包含:針對該等通道中之每一者,自該記憶體單元讀出該資 料、該錯誤偵測碼及該錯誤校正碼作為讀取資料;藉由n數目個第一錯誤校正解碼單元中之每一者,針對該等通道中之每一者對該讀取資料執行能夠校正s個(s為等於或大於1且小於t之一整數)符號的一第一錯誤校正解碼處理;藉由n數目個錯誤偵測單元中之每一者,基於藉由該第一錯誤校正解碼處理所解碼之資料及一錯誤偵測碼而針對該等通道中之每一者執行一錯誤偵測處理;及藉由數目小於n之一第二錯誤校正解碼單元,針對在該錯誤偵測步驟中被偵測到一錯誤之一通道對該讀取資料執行能夠校正t個符號的一第二錯誤校正解碼處理。
  12. 如請求項11之解碼方法,其中針對該等通道中之每一者而產生該錯誤偵測碼且針對該等通道中之每一者而產生該錯誤校正碼。
  13. 如請求項11之解碼方法,其中該第一錯誤校正解碼處理中之一碼長及該第二錯誤校正解碼處理中之一碼長係相同的。
  14. 如請求項11之解碼方法,其中1個符號為1個位元且該錯誤校正碼為一BCH碼。
  15. 如請求項11之解碼方法,其中該錯誤校正碼為一雷德-所羅門碼。
  16. 如請求項11之解碼方法,其中基於一值t及一預定原始多項式來計算一生成多項式,該值t係自外部給定之一校正能力,且藉由使用該生成多項式而產生該錯誤校正碼。
  17. 如請求項11之解碼方法,其中該第二錯誤校正解碼單元能夠改變一值t,該值t係一校正能力。
  18. 如請求項11之解碼方法,其中該第二錯誤校正解碼單元之數目為1。
  19. 如請求項11之解碼方法,其中該第二錯誤校正解碼單元之數目為2或大於2。
TW101109218A 2011-07-26 2012-03-16 記憶體控制器、半導體儲存裝置、及解碼方法 TWI486962B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011163475A JP2013029882A (ja) 2011-07-26 2011-07-26 メモリコントローラ、半導体記憶装置および復号方法

Publications (2)

Publication Number Publication Date
TW201306041A TW201306041A (zh) 2013-02-01
TWI486962B true TWI486962B (zh) 2015-06-01

Family

ID=47600834

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101109218A TWI486962B (zh) 2011-07-26 2012-03-16 記憶體控制器、半導體儲存裝置、及解碼方法

Country Status (4)

Country Link
US (1) US9164831B2 (zh)
JP (1) JP2013029882A (zh)
TW (1) TWI486962B (zh)
WO (1) WO2013014974A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5674700B2 (ja) 2012-03-22 2015-02-25 株式会社東芝 符号化装置および符号化装置の制御方法、ならびに、記憶装置
WO2016143168A1 (en) * 2015-03-10 2016-09-15 Kabushiki Kaisha Toshiba Memory device and memory system
US20170161141A1 (en) * 2015-12-02 2017-06-08 Samsung Electronics Co., Ltd. Method and apparatus for correcting data in multiple ecc blocks of raid memory
JP6818666B2 (ja) 2017-09-20 2021-01-20 キオクシア株式会社 メモリシステム
JP7428689B2 (ja) * 2021-12-17 2024-02-06 華邦電子股▲ふん▼有限公司 メモリシステム
CN116028260B (zh) * 2023-01-09 2024-02-27 海光信息技术股份有限公司 数据的处理方法、处理装置以及存储系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070011590A1 (en) * 2005-06-16 2007-01-11 Hong-Ching Chen Methods and systems for generating error correction codes
TWI288932B (en) * 2004-04-26 2007-10-21 Trek 2000 Int Ltd Portable data storage device with encryption system
US20080140869A1 (en) * 2006-12-11 2008-06-12 Nam-Phil Jo Circuits and Methods for Correcting Errors in Downloading Firmware
US20080148129A1 (en) * 2006-12-14 2008-06-19 Regents Of The University Of Minnesota Error detection and correction using error pattern correcting codes
US20090070656A1 (en) * 2007-08-17 2009-03-12 Samsung Electronics Co., Ltd. Memory system with error correction decoder architecture having reduced latency and increased throughput
US7793197B2 (en) * 2006-03-30 2010-09-07 Fujitsu Limited Error correction apparatus
US20100241921A1 (en) * 2008-08-15 2010-09-23 Lsi Corporation Error-correction decoder employing multiple check-node algorithms
TW201035987A (en) * 2009-02-18 2010-10-01 Micron Technology Inc Data integrity in memory controllers and methods

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2696212B2 (ja) * 1987-05-06 1998-01-14 セイコーエプソン株式会社 誤り訂正装置
US5428630A (en) * 1993-07-01 1995-06-27 Quantum Corp. System and method for verifying the integrity of data written to a memory
JPH10207726A (ja) * 1997-01-23 1998-08-07 Oki Electric Ind Co Ltd 半導体ディスク装置
US6084734A (en) * 1997-12-08 2000-07-04 Maxtor Corporation Data recovery using targeted ECC correction
JP2001345712A (ja) * 2000-05-31 2001-12-14 Hitachi Ltd 符号化回路
JP4299558B2 (ja) * 2003-03-17 2009-07-22 株式会社ルネサステクノロジ 情報記憶装置および情報処理システム
JP2007013260A (ja) 2005-06-28 2007-01-18 Seiko Epson Corp 誤り訂正回路
JP4703310B2 (ja) 2005-08-04 2011-06-15 株式会社東芝 通信方法および通信システム
US7836364B1 (en) * 2006-05-30 2010-11-16 Marvell International Ltd. Circuits, architectures, apparatuses, systems, methods, algorithms, software and firmware for using reserved cells to indicate defect positions
JP4896605B2 (ja) 2006-07-04 2012-03-14 株式会社東芝 不揮発性半導体記憶システム
US7739576B2 (en) * 2006-08-31 2010-06-15 Micron Technology, Inc. Variable strength ECC
WO2008045292A2 (en) 2006-10-04 2008-04-17 Marvell World Trade Ltd. Error correction decoding methods and apparatus
KR100856129B1 (ko) * 2006-12-29 2008-09-03 삼성전자주식회사 오정정 확률을 줄이는 에러 정정 회로, 그 방법 및 상기회로를 구비하는 반도체 메모리 장치
KR100845529B1 (ko) * 2007-01-03 2008-07-10 삼성전자주식회사 플래시 메모리 장치의 이씨씨 제어기 및 그것을 포함한메모리 시스템
KR100842680B1 (ko) * 2007-01-08 2008-07-01 삼성전자주식회사 플래시 메모리 장치의 오류 정정 컨트롤러 및 그것을포함하는 메모리 시스템
JP4564520B2 (ja) 2007-08-31 2010-10-20 株式会社東芝 半導体記憶装置およびその制御方法
JP4538034B2 (ja) 2007-09-26 2010-09-08 株式会社東芝 半導体記憶装置、及びその制御方法
US8301987B2 (en) 2009-10-29 2012-10-30 Sandisk Il Ltd. System and method of decoding data with reduced power consumption
JP2011197957A (ja) 2010-03-18 2011-10-06 Toshiba Corp 誤り訂正符号復号装置及び誤り訂正符号復号方法
JP2011198272A (ja) 2010-03-23 2011-10-06 Toshiba Corp 半導体記憶装置および半導体記憶装置の制御方法
JP5017407B2 (ja) 2010-03-24 2012-09-05 株式会社東芝 半導体記憶装置
JP2012128660A (ja) 2010-12-15 2012-07-05 Toshiba Corp 半導体記憶装置
JP5651457B2 (ja) 2010-12-15 2015-01-14 株式会社東芝 半導体記憶装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI288932B (en) * 2004-04-26 2007-10-21 Trek 2000 Int Ltd Portable data storage device with encryption system
US20070011590A1 (en) * 2005-06-16 2007-01-11 Hong-Ching Chen Methods and systems for generating error correction codes
US7793197B2 (en) * 2006-03-30 2010-09-07 Fujitsu Limited Error correction apparatus
US20080140869A1 (en) * 2006-12-11 2008-06-12 Nam-Phil Jo Circuits and Methods for Correcting Errors in Downloading Firmware
US20080148129A1 (en) * 2006-12-14 2008-06-19 Regents Of The University Of Minnesota Error detection and correction using error pattern correcting codes
US20090070656A1 (en) * 2007-08-17 2009-03-12 Samsung Electronics Co., Ltd. Memory system with error correction decoder architecture having reduced latency and increased throughput
US20100241921A1 (en) * 2008-08-15 2010-09-23 Lsi Corporation Error-correction decoder employing multiple check-node algorithms
TW201035987A (en) * 2009-02-18 2010-10-01 Micron Technology Inc Data integrity in memory controllers and methods

Also Published As

Publication number Publication date
JP2013029882A (ja) 2013-02-07
US20140173377A1 (en) 2014-06-19
US9164831B2 (en) 2015-10-20
TW201306041A (zh) 2013-02-01
WO2013014974A1 (en) 2013-01-31

Similar Documents

Publication Publication Date Title
TWI486962B (zh) 記憶體控制器、半導體儲存裝置、及解碼方法
JP5043562B2 (ja) エラー訂正回路、その方法及び前記回路を備える半導体メモリ装置
US20090241009A1 (en) Encoding and/or decoding memory devices and methods thereof
KR100921263B1 (ko) 반도체 기억 장치 및 디코드 방법
US8826099B2 (en) Memory controller, semiconductor memory system, and memory control method
US9424126B2 (en) Memory controller
TW201346922A (zh) 記憶體控制器、記憶裝置及錯誤修正方法
JP2008165808A (ja) 誤り訂正確率を減らすエラー訂正回路、その方法及び前記回路を備える半導体メモリ装置
US20110029841A1 (en) Semiconductor memory system having ecc circuit and controlling method thereof
US10848184B2 (en) Method for controlling storage device with aid of error correction and associated apparatus
US9761326B2 (en) Memory system and memory control method
KR20090018252A (ko) 처리량을 높이기 위하여 더블 버퍼링 구조와 파이프라이닝기법을 이용하는 디코더 및 그 디코딩 방법
TWI557747B (zh) 記憶體控制模組與方法以及錯誤更正碼編/解碼電路與方法
WO2015037267A1 (ja) メモリ装置、サーバ装置、及びメモリ制御方法
US10741212B2 (en) Error correction code (ECC) encoders, ECC encoding methods capable of encoding for one clock cycle, and memory controllers including the ECC encoders
US9230684B2 (en) Memory controller, storage device, and memory control method
KR20170028160A (ko) 에러 정정기를 포함하는 메모리 시스템 및 그것의 동작 방법
WO2021015823A1 (en) Memory controller and method for decoding memory devices with early hard-decode exit
US9960788B2 (en) Memory controller, semiconductor memory device, and control method for semiconductor memory device
JP2018160064A (ja) メモリコントローラ、メモリシステムおよび制御方法
WO2017018008A1 (ja) 符号化装置、メモリコントローラ、通信システムおよび符号化方法
JP2013214212A (ja) メモリコントローラ、半導体記憶装置および復号方法
US20180191375A1 (en) Tapered variable node memory
US20090106634A1 (en) Error detecting and correcting circuit using chien search, semiconductor memory controller including error detecting and correcting circuit, semiconductor memory system including error detecting and correcting circuit, and error detecting and correcting method using chien search
US20150256204A1 (en) Memory controller, storage device and memory control method

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees