TWI411912B - 使用寫入驗證之代碼之錯誤底限減緩 - Google Patents

使用寫入驗證之代碼之錯誤底限減緩 Download PDF

Info

Publication number
TWI411912B
TWI411912B TW099106992A TW99106992A TWI411912B TW I411912 B TWI411912 B TW I411912B TW 099106992 A TW099106992 A TW 099106992A TW 99106992 A TW99106992 A TW 99106992A TW I411912 B TWI411912 B TW I411912B
Authority
TW
Taiwan
Prior art keywords
codeword
error
written
encoded
decoded
Prior art date
Application number
TW099106992A
Other languages
English (en)
Other versions
TW201129901A (en
Inventor
Nils Graef
Kiran Gunnam
Original Assignee
Agere Systems Inc
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 Agere Systems Inc filed Critical Agere Systems Inc
Publication of TW201129901A publication Critical patent/TW201129901A/zh
Application granted granted Critical
Publication of TWI411912B publication Critical patent/TWI411912B/zh

Links

Classifications

    • 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • 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/1012Adding 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 codes or arrangements adapted for a specific type of error
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1108Hard decision decoding, e.g. bit flipping, modified or weighted bit flipping
    • 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1142Decoding using trapping sets
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • H03M13/451Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD]
    • H03M13/453Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD] wherein the candidate code words are obtained by an algebraic decoder, e.g. Chase decoding
    • H03M13/455Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD] wherein the candidate code words are obtained by an algebraic decoder, e.g. Chase decoding using a set of erasure patterns or successive erasure decoding, e.g. generalized minimum distance [GMD] decoding
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1816Testing
    • G11B2020/1823Testing wherein a flag is set when errors are detected or qualified
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • G11B2020/185Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information using an low density parity check [LDPC] code
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2508Magnetic discs
    • G11B2220/2516Hard disks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/60Solid state media
    • G11B2220/61Solid state media wherein solid state memory is used for storing A/V content

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

使用寫入驗證之代碼之錯誤底限減緩
本發明係關於數位信號處理,且特定言之係關於資料編碼方法,諸如低密度同位檢查(LDPC)編碼。
本申請案之標的係關於(1)以代理人檔案第08-0241號於12/12/08申請之PCT申請案第PCT/US08/86523號之標的,(2)以代理人檔案第08-1293號於12/12/08申請之PCT申請案第PCT/US08/86537號之標的,(3)以代理人檔案第08-0248號於3/10/09申請之美國申請案第12/401,116號之標的,(4)以代理人檔案第08-1057號於04/02/09申請之PCT申請案第PCT/US09/39279號之標的,(5)以代理人檔案第08-0242號於04/08/09申請之美國申請案第12/420,535號之標的,(6)於05/01/2008申請之美國專利申請案第12/113,729號之標的,(7)於05/01/2008申請之美國專利申請案第12/113,755號之標的,及(8)以代理人檔案第08-0243號於04/08/09申請之PCT申請案第PCT/US09/39918號之標的,所有申請案之教示以引用的方式全文併入本文。
通信係在一通信通道上自一傳輸器至一接收器之資訊傳輸。在真實世界中,通信通道為一有雜訊通道,提供給該接收器自該傳輸器傳輸之資訊之一失真版本。一儲存器件(例如硬碟(HD)驅動器、快閃驅動器)為一此種有雜訊通道,其自一傳輸器接受資訊,儲存該資訊,且然後提供該資訊之一幾乎失真版本給一接收器。
由一通信通道(諸如一儲存器件)引入之失真可為足夠大以導致一通道錯誤,亦即其中當該通道輸入信號為一0時,該接收器將該通道輸出信號解譯為一1,或反之亦然。通道錯誤減小輸送量且由此為不期望的。因此,存在對於偵測及/或校正通道錯誤之若干工具之一不斷發展的需要。低密度同位檢查(LDPC)編碼為一種用於偵測及校正通道錯誤之方法。
LDPC碼係在對於低信號雜訊比(SNR)應用可達到非常低位元錯誤率(BER)之已知接近向農(Shannon)限制碼之列。LDPC解碼之特色在於其之平行化、低實施複雜性、低解碼延時以及在高SNR之不太嚴重的錯誤底限之潛力。幾乎所有下一世代通信標準會考慮LDPC碼。
在一實施例中,本發明為用於將一原始經編碼碼字儲存至一儲存媒體之一經機器實施方法。將該原始經編碼碼字寫入至該儲存媒體作為一經寫入經編碼碼字。藉由自該儲存媒體讀取該經寫入經編碼碼字而產生一通道輸出碼字。比較該原始經編碼碼字與基於該通道輸出碼字之一導出碼字以識別該經寫入經編碼碼字中之一第一組之一或多個錯誤位元。藉由選擇該第一組中之一或多個錯誤位元而產生該經寫入經編碼碼字中之一第二組之一或多個錯誤位元。將對應於該第二組中之該一或多個錯誤位元之錯誤位元資訊寫入至該儲存媒體。
在另一實施例中,本發明為用於產生儲存在一儲存媒體中之一經寫入經編碼碼字之一經解碼碼字之一經機器實施方法,該經寫入經編碼碼字具有一或多個錯誤位元。藉由自該儲存媒體讀取該經寫入經編碼碼字而產生一通道輸出碼字。自該通道輸出碼字產生所依據之一導出碼字。自該儲存媒體讀取錯誤位元資訊,其中該錯誤位元資訊對應於該經寫入經編碼碼字中之一或多個錯誤位元。該錯誤位元資訊係用於產生一經修改碼字。對該經修改碼字執行進一步處理以產生該經解碼碼字。
由下列細節描述、附加之申請專利範圍及隨附圖式,本發明之其他態樣、特徵及優點將變得更加完全明顯,其中相同的參考數字識別類似或相同元件。
圖1 為使用LDPC編碼之一通信系統100 之一方塊圖。資料源102 產生被稱為一原始資訊字104 之一組位元。LDPC編碼器106 編碼原始資訊字104 以產生原始經編碼碼字108 。下文更細節地論述LDPC編碼。將原始經編碼碼字108 (亦稱為通道輸入碼字)寫入儲存媒體110 (例如一快閃驅動器、硬碟盤等)作為一經寫入經編碼碼字。
一段時間以後,儲存媒體110 讀取該經寫入經編碼碼字並輸出一組值y(亦即一通道輸出碼字)至通道偵測器112 。該通道輸出碼字及自該通道輸出碼字導出之任意碼字係稱為導出碼字。通道偵測器112 將該等所接收值y轉換為一組對數似然比(LLR)值L ch 。一LLR值包括:(i)一正負號位元,其表示關於對應值y所指示之一位元硬決策值之編碼器之最佳猜測,及(ii)一或多個量值位元,其等表示在該硬決策中之該解碼器之置信度。例如,通道偵測器112 可以一五位元值輸出各LLR值L ch ,其中最高有效位元為指示該硬決策之一正負號位元,而四個量值位元之值指示該硬決策之置信度。因此,在一可能的LLR方案中,一二進位LLR值00000指示具有最小置信度之一硬決策0,一二進位LLR值01111指示具有最大置信度之一硬決策0,一二進位LLR值10001指示具有最小置信度之一硬決策1及一二進位LLR值11111將指示具有最大置信度之一硬決策1,其中二進位10000係未使用。
通道偵測器112 將該等L ch 值發送至LDPC解碼器114 ,其中其等成為一解碼器輸入碼字。然後,LDPC解碼器114 對一組L ch 值執行一次或一次以上解碼反覆過程116 (「局部反覆過程」)以產生經解碼碼字。當(i)LDPC解碼器114 達到一經解碼正確碼字(DCCW)(亦即與通道輸入碼字108 相同)或(ii)LDPC解碼器AC執行一最大可允許局部反覆次數而未達到DCCW(亦即LDPC解碼器114 已失敗)時,LDPC解碼器AC終止。當解碼器114 終止時,其輸出經解碼碼字至資料目的地118 。下文更細節地描述LDPC解碼。
通道控制器120 控制至少LDPC編碼器106 、通道偵測器112 及LDPC解碼器114 之操作。該通道控制器通常為一ARM(先進RISC(精簡指令集程式碼)機器)處理器。
LDPC編碼
為建立碼字108 ,LDPC編碼器106 將該LDPC碼所指定之許多同位位元附加至資訊字104 之位元。將資訊字104 中之位元之數目表示為K 。將一經編碼碼字中之位元稱為可變位元,且將該等可變位元之數目表示為N 。因此,同位位元之數目給出為N -K
以如特定LDPC碼所指定之一特定方式使一LDPC碼字中之各同位位元與該碼字中之一或多個其他位元相關,且設定指派給一同位位元之值以便於滿足該LDPC碼。典型之LDPC碼指定同位位元與其之相關位元滿足一同位檢查約束,例如位元之和為一偶數,亦即和模2等於0。
LDPC碼
一特定LDPC碼係由稱為同位檢查矩陣或H 矩陣或簡單地為H 之具有1及0的一二維矩陣定義。H 為LDPC編碼器及解碼器兩者己知(先驗)。H 包括N 行及N -K 列,亦即一行用於碼字之每一位元且一列用於每一同位位元。H 中之每個1表示該行之碼字位元與該列之同位位元之間的一相關。例如,H 之第三列第七行處之一個1意指第三同位檢查位元與該碼字之第七位元相關。一檢查位元及與該檢查位元相關之所有可變位元之值之和模2應為0。典型LDPC碼之一定義特性為H為「稀疏」,亦即H 之元素為大部分0而相對少的1。
圖2(A) 描繪LDPCH矩陣200 。H矩陣200 包括N=9行及N-K=6列。因此,H矩陣200 定義一LDPC碼,其接受一三位元資訊字,附加六個同位位元,並輸出一九位元碼字。在一實施方案中,其中儲存媒體為一硬碟驅動器或一快閃驅動器,各資訊字之長度為4,096位元,且各碼字之長度為4,552位元。其他實施方案可具有含有其他位元長度之資訊字及/或碼字。
LDPC解碼:置信傳播
圖3圖1 之解碼器114 所使用之LDPC解碼方法300 之一流程圖。解碼方法300 之核心為稱為置信傳播之一反覆的、兩階段訊息傳遞演算法。可使用一Tanner圖解釋置信傳播。
圖2(B) 為H矩陣200 之一Tanner圖。一般而言,一Tanner圖包括:1)數個位元節點(亦稱為可變節點)n ,數目等於H 中之行數(且由此等於可變位元數N ),2)數個檢查節點m ,數目等於H 中之列數(且由此等於同位位元數),3)邊緣202 ,各邊緣連接一單一位元節點n i 至一單一檢查節點m j ,4)對於各位元節點n i 之原始L ch 值,及5)對於各位元節點n i 之一經計算硬決策輸出值圖2(B) 之Tanner圖包括九個位元節點n 0 n 8 ,六個檢查節點m 0 m 5 ,連接位元節點至檢查節點之18個邊緣202 ,九個L ch 值及九個值。
一Tanner圖中之邊緣表示位元節點n 與檢查節點m 之間的關係,其中邊緣表示H 中之1。例如,在圖2(B) 中,一邊緣202 連接第一位元節點n 0 至第四檢查節點m 3 ,因為圖2(A) 中之H矩陣200 之第一行第四列中有一個1。
一Tanner圖為一雙向圖,亦即一邊緣可連接一位元節點至僅有一個檢查節點,並不可連接一位元節點至另一位元節點或連接一檢查節點至另一檢查節點。由邊緣連接至一特定檢查節點m 之所有位元節點n 之集合表示為N(m) 。由邊緣連接至一特定位元節點n 之所有檢查節點m 之集合表示為M(n) 。一特定(位元或檢查)節點之指標為其在圖形中之序數序列。
返回圖3 ,在步驟302 處開始處理,且進行至步驟304 ,解碼器初始化。解碼器初始化304 包括將連接至各位元節點n 之所有邊緣(例如圖2(B) 之邊緣202 )設定為與位元節點n 相關之對應L ch 值,並將位元節點n值設定為位元節點nL ch 之硬決策值(亦即MSB)。因此,例如在圖2(B) 中,若與位元節點n 0 相關之L ch 值為十進制值+5,則在步驟304 處,將連接位元節點n 0 之檢查節點m 0 m 3 之兩個邊緣202 設定為+5,並將位元節點n 0 值設定為1。表達此步驟之第一部分之一替代方式為:位元節點n 0 將一訊息+5發送至集合M(n 0 ) 中之各檢查節點m 。將自一位元節點n 發送至一檢查節點m 之一訊息稱為一位元節點或Q訊息,且表示為Q nm
然後,步驟304 將包括N值之一候選經解碼碼字向量發送至癥狀檢查步驟306 。癥狀檢查步驟306 使用下列等式(1)計算癥狀向量z:
其中H T H 矩陣之轉置。若癥狀向量z為一0向量,則向量已經滿足H所定義之所有同位檢查約束,亦即為一有效的經解碼碼字。在該情況下,處理進行至循環冗餘檢查(CRC)檢查318
取而代之,若癥狀向量z不是一0向量,則向量不符合該等同位檢查約束之一或多項。癥狀向量z中之各非零元素表示一失敗的同位檢查約束,其亦稱為不滿足的檢查節點(USC)。癥狀向量z中非零元素之數目為向量中之USC數目b。此外,癥狀向量z之非零元素之指標為向量中之USC之指標。
若向量未通過癥狀檢查306 ,則處理繼續至一或多個解碼反覆過程308 (稱為「局部反覆過程」)之第一次。解碼反覆過程308 包括三個步驟:1)一置信傳播檢查節點更新步驟310 ,2)一置信傳播位元節點更新步驟312 ,及3)一癥狀檢查步驟314 ,其與步驟306 相同。
在置信傳播檢查節點更新步驟310 中,各檢查節點m 使用自集合N(m) 中之所有位元節點n 接收之Q nm 訊息來計算一或多個檢查節點或R訊息(表示為R mn ),該計算根據下列等式(2)、(3)及(4):
其中i 為解碼反覆次數,N(m) \n 為排除位元節點n 之集合N(m) ,函數sgn 傳回其之運算元之正負號,且β為一正常數,其值取決於碼參數。各檢查節點m 沿著該等相同邊緣將經計算R mn 訊息發送回至集合N(m) 中之所有位元節點n
接著,在置信傳播位元節點更新步驟312 中,各位元節點n 根據下列等式(5)計算一或多個Q nm 訊息:
其中為位元節點n 之原始L ch 值,且M(n) \m 為排除檢查節點m 之集合M(n) 。各位元節點n 然後將經計算Q nm 訊息發送至集合M(n) 中之所有檢查節點m
亦在位元節點更新步驟312 期間,各位元節點n 根據下列等式(6)及(7)更新其之值:
P n 0,則=0,且若P n <0,則=1。等式(6)所產生之值亦被稱為外來值或E值,且表示為E LDPC 。等式(7)所產生之值被稱為P值。等式(2)至(7)所表示之特定置信傳播演算法被稱為最小和演算法。注意,在各解碼反覆過程308 期間更新值並最終由解碼程序300 將其輸出。在解碼程序300 期間,原始LLR值L ch 保持不變。
位元節點更新步驟312 將建構自解碼器之當前值的一向量發送至癥狀檢查步驟314 。步驟314 之癥狀檢查與上文論及之步驟306 之癥狀檢查相同。若向量通過癥狀檢查步驟314 ,則將向量發送至CRC步驟318
LDPC解碼:循環冗餘檢查及誤滿意檢查節點
通過癥狀檢查306314 意為向量為一有效經解碼碼字,但不一定為經解碼正確碼字(DCCW)。一LDPC解碼器有可能產生不是DCCW之一有效經解碼碼字。在該情況下,向量中不存在USC,但是存在誤滿意檢查節點(MSC)。一誤滿意檢查節點為與偶數個錯誤位元節點相關之一檢查節點。
因此,為了確保有效向量為DCCW,程序300 將向量傳遞至循環冗餘檢查(CRC)318 。一CRC檢查為可在傳輸或儲存期間偵測資料之變更之一總和檢查碼(checksum)運算。明確地說,一編碼器計算待發送之一碼字之一第一CRC總和檢查碼,並且將該第一CRC總和檢查碼及該碼字兩者發送至該解碼器。在接收該碼字及該第一CRC總和檢查碼之後,該解碼器使用該所接收之碼字計算一第二CRC總和檢查碼,並將其與該第一CRC總和檢查碼相比較。若該兩個CRC總和檢查碼不匹配,則存在一高機率:該所接收之碼字中存在錯誤。
若向量通過CRC檢查,則向量為DCCW,且程序300 將全域變數DCCW 設定為真,輸出向量,並在步驟320 處終止。否則,向量不是DCCW,且程序300 將全域變數DCCW 設定為假,輸出向量,並在步驟320 處終止。全域變數DCCW 通知其他解碼程序是否已經產生該DCCW。
返回步驟314 ,若向量未通過癥狀檢查,則向量中存在一或多個USC。用於解決USC之典型方法為執行另一解碼反覆過程308 。然而,在一特定解碼會期中,可存在在一合理時間量中從未得到滿足之一或多個USC(參見下文之捕獲集合之論述)。因此,LDPC解碼器通常受限於其等可執行多少解碼反覆過程。最大反覆次數之典型值在從50至200之範圍內。
圖3 中,步驟316 判定是否已經達到所指定之最大反覆次數。若未達到,則執行另一解碼反覆過程308 。取而代之,若已經達到最大反覆次數,則解碼器程序300 已經失敗。在該情況下,程序300 將全域變數DCCW 設定為假,輸出向量,並在步驟320 處終止。
程序300 (用一次或一次以上局部解碼反覆過程308 )之一完整執行被稱為一解碼會期。
BER、SNR及錯誤底限
一LDPC解碼器之位元錯誤率(BER)表示一經解碼位元具有錯誤值之機率。因此,例如具有10-9 之一BER之一解碼器平均地將對於每十億個經解碼位元產生一個錯誤位元。一LDPC解碼會期不收斂於DCCW發揮該解碼器之BER之作用。
一LDPC解碼器之BER強烈地受到該解碼器之輸入信號之信號雜訊比(SNR)之影響。作為SNR之一函數之一BER圖形通常包括兩個相異區域:一初始「瀑布」區域,其中給予SNR之一單位增加則使BER快速改良(減小),及一隨後「錯誤底限」區域,其中SNR之增加僅提供BER之中等改良。因此,達到該錯誤底限區域中之顯著BER改良需要除SNR增加以外之方法。
用於改良一LDPC解碼之錯誤底限特性之一方法為增加碼字長度。然而,增加碼字長度亦增加記憶體及LDPC解碼所需之其他計算資源。因此,若此等資源係嚴格受限(如通常關於儲存器件上之讀取通道器件之情況),則必須找到其他方法來提供必需之錯誤底限改良。
另一稀有資源為處理循環。通常,為了達到一指定輸送量,一儲存器件預算用於解碼一碼字之一固定數目個讀取通道處理循環。超過該預算之方法(例如非即時方法)減小輸送量。更期望在時脈循環分配內恢復DCCW並由此不減小輸送量之即時方法。
改良一LDPC解碼器之錯誤底限特性之另一方法為使用一或多個後處理方法。當一解碼會期不能在所允許之最大反覆次數內收斂於DCCW時,調用一後處理方法。一後處理方法調整與解碼程序相關之一或多個變數(例如y 值、L ch 值及/或解碼器之操作參數)並重新開始解碼。如同解碼自身,一後處理方法經常係反覆過程,使解碼程序之輸入發生多重、循序之變化。
在一典型LDPC解碼會期中,該解碼器在第一若干解碼反覆過程內收斂於該DCCW。取而代之,當一LDPC解碼器不能在一指定之最大反覆次數內收斂於該DCCW時,將其稱為一失敗解碼器,且由一失敗解碼器所產生之經解碼碼字為一失敗碼字。
失敗碼字通常藉由其等含有之USC節點數目分類。一無效經解碼碼字(ICW)為具有極多USC節點(例如對於一大約5,000位元碼字為大於16個)之一失敗碼字。ICW通常由含有如此多位元錯誤(亦即如此少正確值)以至於該解碼器不能校正所有位元錯誤之一解碼器輸入碼字造成。用於處置一ICW之一典型後處理方法為請求輸入碼字之一重新發送。雖然一重新發送為一非即時方法且由此不期望,但是其通常為校正一ICW之唯一可靠選項。
一接近碼字(NCW)為擁有少量USC(例如對於一大約5,000位元碼字為16個或少於16個)之一失敗碼字。有時,一NCW中之USC形成稱為一捕獲集合之一穩定組態,對於該組態,進一步解碼反覆過程將不產生DCCW。捕獲集合對一LDPC解碼器之錯誤底限特性具有一顯著影響。
捕獲集合係表示為(a,b ),其中b 為該捕獲集合中之USC數目,且a 為與該等USC相關之錯誤位元節點數目。因此,一(8,2)捕獲集合包括兩個USC及與該兩個USC相關之八個錯誤位元節點(EBN)。大多數捕獲集合包括少於五個之USC及少於十個之EBN。
翻轉一位元節點指用於改變與該位元節點相關之一或多個值之一特定程序。在翻轉期間改變哪些值取決於該LDPC解碼器之狀態。在一可能實施方案中,若一LDPC解碼器剛被初始化,則翻轉一位元節點包括:(i)使該位元節點之L ch 值之硬決策值反相,亦即1變為0,及反之亦然,(ii)將具有該相同L ch 值之量值位元(亦即置信度)設定為最大值,及(iii)將具有所有其他L ch 值之量值位元限制為最大可允許量值值之至多15%。
例如,假設具有4位元L ch 量值值之一系統,其中最大可允許正量值為+15及最大可允許負量值為-16,且其中最大可允許值之15%將分別為+2及-2。進一步假設對應於四個位元節點之四個L ch 值為:+2、-11、+1、+13。在此實例中,翻轉第一位元節點包括:(i)使該第一位元節點之L ch 值之正負號反相,亦即+2變為-2,(ii)將該第一位元節點之L ch 值之量值設定為最大可允許值,亦即-2變為-16,及(iii)將其他三個位元節點之L ch 值之量值限制為最大可允許值之至多15%,亦即-11、+1及+13分別變為-2、+1及+2。將L ch 量值設定為低值使反覆解碼程序更快地收斂於該DCCW,並降低一失敗解碼器之機會。
根據此相同實施方案,若該解碼器處於除經初始化以外之某一狀態,則翻轉一位元節點包括:(i)判定該位元節點之P值(由上文等式7所定義)之硬決策值,(ii)將該位元節點之L ch 值、P值及所有相關Q nm 訊息之硬決策值設定為該P值之硬決策值之相反,(iii)將該位元節點之L ch 值、P值及所有相關Q nm 訊息之量值位元設定為最大,及(iv)將所有其他位元之L ch 、P及Q nm 訊息值之量值限制為最大可允許值之15%。注意,僅初始量值受到限制。隨著解碼會期進行,更新P及Q nm 訊息值且可假設任意可允許值。另一方面,L ch 值係唯讀且由此將對於解碼會期期間保留其等之受限量值值。
抹除為用於改變位元節點值之另一特定程序。抹除一位元節點包括:(i)將該位元節點之L ch 值之硬決策值設定為0,及(ii)將具有該相同L ch 值之量值位元(亦即置信度)設定為0(亦即無置信度)。
若調整(例如翻轉或抹除)對應於一捕獲集合之一接近碼字之一或多個EBN,則對得到的經修改碼字重新執行LDPC解碼可收斂於該DCCW。當成功時,將此程序稱為破解該捕獲集合。因此,改良一LDPC解碼器之錯誤底限特性之另一方法為採用一失敗解碼器之接近碼字(NCW),識別該NCW中之潛在EBN,翻轉或抹除一或多個EBN,及提交經修改之NCW供進一步LDPC處理。
藉由翻轉或抹除一單一EBN,可破解一些捕獲集合。在其他捕獲集合中,翻轉或抹除一單一EBN可減少USC數目,但未完全破解該捕獲集合,提供一第二、不同捕獲集合,然後可藉由翻轉或抹除另一EBN而破解該第二、不同捕獲集合。又其他捕獲集合僅可藉由同時翻轉或抹除兩個或多個EBN而予以破解。
捕獲集合廣泛地變化,其基於:(i)解碼器之操作條件(例如解碼器字母、解碼器演算法、解碼器檢查節點更新方法),(ii)寫入錯誤,及(iii)讀取錯誤。當通信通道為一儲存器件時,一寫入錯誤為當不正確地將一碼字之一位元寫入至該儲存器件(亦即該經寫入經編碼碼字中之一位元之值與對應通道輸入碼字中之對應位元之值不匹配)之時。一讀取錯誤為當不正確地自該儲存器件讀取一碼字之一經正確寫入位元(亦即該通道輸出碼字中之一位元之值與該經寫入經編碼碼字中之對應位元之值不匹配)之時。藉由(例如)多次重新讀取一磁區,繼而將多個讀取樣本平均,可能自讀取錯誤恢復。然而,藉由重新讀取一磁區不可能自寫入錯誤恢復。
本發明之若干實施例為用於估計並校正歸因於寫入錯誤之一LDPC解碼器輸入碼字中之該等EBN之方法。該等方法通常包括一對程序:一寫入錯誤驗證程序及一寫入錯誤恢復程序。當將一碼字寫入至一儲存媒體時,執行該寫入錯誤驗證程序。一段時間以後,當自該儲存媒體讀取該碼字並解碼該碼字時,執行該寫入錯誤恢復程序。
圖4 為根據本發明之一實施例之如通道控制器120 所控制之圖1 之通信系統100 所實施之LDPC編碼/解碼程序400 之一流程圖。在步驟402 處開始處理並繼續到步驟404 ,其中資料源102 將一原始資訊字104 提供至LDPC解碼器106 。接著,在步驟406 處,LDPC編碼器106 編碼原始資訊字104 以產生一通道輸入碼字108 。接著,在步驟408 處,將通道輸入碼字108 寫入一儲存媒體110 (例如一快閃驅動器)。接著,在一步驟410 處,執行一寫入錯誤驗證程序,在下文對圖6圖7 之論述中更細節地描述該程序。
一段時間以後,在步驟412 處,自儲存媒體110 讀取該所儲存之碼字,由通道偵測器112 偵測該碼字,並將一對應解碼器輸入碼字之L ch 值發送至LDPC解碼器114 。接著,在步驟414 處,LDPC解碼器114 處理該解碼器輸入碼字以產生一經解碼碼字。該處理包含LDPC解碼及各種讀取事件方法,諸如錯誤底限減緩方法、媒體缺陷偵測方法及標準通道重試方法。步驟414 之處理之淨效果在於歸因於讀取錯誤之所有EBN得到校正,且留在該經解碼碼字中之任意EBN為寫入錯誤。
接著,在步驟416 處,判定該經解碼碼字是否擁有任意錯誤位元。若沒有,則該經解碼碼字為該DCCW,且該程序在步驟420 處結束。取而代之,若該經解碼碼字擁有一或多個錯誤位元,則在步驟418 處,對該經解碼碼字執行一寫入錯誤恢復程序,在下文對圖8 之論述中更細節地描述該程序。
當將一通道輸入碼字初始地寫入至一儲存媒體(例如一快閃驅動器)作為一經寫入經編碼碼字時,執行寫入錯誤驗證程序410 。該寫入錯誤驗證程序讀回該經寫入經編碼碼字並產生一對應解碼器輸入碼字。該程序然後對該解碼器輸入碼字執行LDPC解碼以產生一經解碼碼字。該程序然後比較該通道輸入碼字與該經解碼碼字並判定任意錯誤位元之數目及指標。若錯誤位元數目大於0且小於一指定臨限值,則該程序將錯誤位元資訊寫入至稱為錯誤位元表之一資料結構。在本發明之一實施例中,錯誤位元資訊包括一碼字識別符(例如一快閃驅動器頁ID)及一或多個該等錯誤位元之指標。一錯誤位元之指標識別在該經解碼碼字中之該錯誤位元之位置。該錯誤位元表係通常儲存在該儲存媒體上。
圖5 為一錯誤位元表之一實施例之一圖形。表500 包括三行(欄位)及任意數目之列(記錄)。CODEWORD_IDENTIFIER行含有碼字識別符(例如快閃驅動器頁ID)。EB_INDICES行含有寫入錯誤驗證程序所識別之一或多個錯誤位元之指標。COMPLETE_SET行為一個一位元之真/假欄位,其指示在EB_INDICES行中識別之錯誤位元指標是否表示寫入錯誤驗證程序所偵測之該等錯誤位元指標之全部(亦即真或1)或一合適子集(亦即假或0)。
圖6 為根據本發明之一實施例之圖4 之步驟410 之一流程圖,亦即寫入錯誤驗證程序。在步驟602 處開始處理並前進至步驟604 ,其中自該儲存媒體讀取該經寫入經編碼碼字並產生一解碼器輸入碼字。
接著,在步驟606 處,伴隨各種讀取事件方法(例如錯誤底限減緩方法、媒體缺陷偵測方法、標準通道重試方法)對該解碼器輸入碼字執行LDPC解碼並產生一經解碼碼字。步驟606 之處理之淨效果在於歸因於讀取錯誤之任意及所有錯誤位元得到校正,且留在該經解碼碼字中之任意錯誤位元係歸因於寫入錯誤。接著,在步驟608 處,按位元比較該經解碼碼字與該通道輸入碼字,且判定任意錯誤位元(對應於位元不匹配)之數目及指標。
若在步驟610 處,錯誤位元數目為0(亦即在步驟606 中該解碼器收斂於該DCCW),則寫入錯誤驗證程序410 在步驟616 處終止。取而代之,若錯誤位元數目超過一指定臨限值(例如32),則在步驟614 處將控制提供給圖1 之該通道控制器120 ,其可執行其自身之方法來校正錯誤。例如,通道控制器120 可決定將該儲存媒體(例如快閃驅動器頁)上之當前位置標記為壞,並嘗試將通道輸入碼字108 寫入至另一位置。通道控制器方法趨於特定之特別通道控制器及該通道控制器製造商。取而代之,若錯誤位元數目大於0但小於或等於指定臨限值,則在步驟612 處將一或多個錯誤位元指標寫入至一錯誤位元表。
表限制L 指定對於該錯誤位元表中之任意碼字可儲存之錯誤位元指標之最大數目。無需總是儲存關於所識別之所有錯誤位元之資訊。研究已經顯示,對於5,000位元LDPC碼字,對於具有三個以上EBN之一捕獲集合,翻轉該等EBN之任意三個將破解該捕獲集合。因此,通常無需在該錯誤位元表中儲存每個碼字之三個以上錯誤位元。在該情況下,3為表限制L
此外,藉由翻轉一個或兩個EBN,可破解大多數捕獲集合。若決定僅儲存一個或兩個錯誤位元指標(亦即L 為1或2)且所識別之錯誤位元數目大於L ,則測試該L 個經選擇指標以確保翻轉在該等指標處之位元允許該解碼器收斂於該DCCW。若為否,選擇並測試其他組L 個指標直到(i)該解碼器收斂於該DCCW,或(ii)不再有子集可用。
圖7圖6 之步驟612 之一流程圖。程序612 選擇將把在圖6 之步驟607 中所偵測之錯誤位元指標之何者(若存在)寫入至該錯誤位元表。
在步驟702 處開始處理並前進至步驟704 ,其中判定錯誤位元之數目是否小於或等於該表限制L
在步驟704 處,若錯誤位元之數目小於或等於L ,則在步驟706 處選擇所有錯誤位元指標,並將變數VARCOMPLETESET設定為1(真)。接著,在步驟708 處,將一記錄附加至該錯誤位元表(例如圖5500 )。該所附加記錄之欄位設定如下。欄位CODEWORD_IDENTIFIER經設定等於一唯一碼字識別符(例如快閃驅動器頁ID)。將欄位COMPLETE_SET設定為VARCOMPLETESET之值。將所選之錯誤位元指標儲存至EB_INDICES。
取而代之,在步驟704 處,若錯誤位元之數目大於L ,則在步驟712 處判定L 是否大於或等於3。若如此,則在步驟714 處隨機選擇L 個錯誤位元指標並將VARCOMPLETESET設定為0。處理然後繼續至步驟716 ,其中將變數VARCOMPLETESET設定為0(亦即將少於所有錯誤位元指標之錯誤位元指標儲存至該錯誤位元表)。然後,處理前進至步驟708 (上文所描述)且在步驟710 處終止。
取而代之,在步驟712 處,若L 為1或2,則處理繼續至步驟718 ,其中選擇L 個錯誤位元指標。接著,在步驟720 處,在所選之指標處之原始解碼器輸入碼字中之該等位元經翻轉以提供一經修改解碼器輸入碼字。接著,在步驟722 處,對該經修改解碼器輸入碼字執行LDPC解碼以產生一經解碼碼字。接著,在步驟724 處,比較該經解碼碼字與該通道輸入碼字。若該解碼器輸出碼字中不存在錯誤位元(步驟726 ),則在步驟716 處將VARCOMPLETESET設定為0,且處理前進至步驟708710 (上文所描述)。
取而代之,在步驟726 處,若判定該經解碼碼字含有任意錯誤位元,則在步驟728 處,判定是否存在另一組L 個錯誤位元指標。若如此,在步驟732 處,選擇另一組。然後,在步驟734 處,將該解碼器輸入碼字重新設定為該原始解碼器輸入碼字(亦即廢除步驟720 中所做之變化),且處理之迴圈至步驟720
取而代之,在步驟728 處,若不存在其他組L 個錯誤位元指標,則該程序612 在步驟730 處將控制提供給通道控制器,並在步驟710 處終止。對於該通道控制器之一論述,參見上文之圖6 之步驟614 之解釋。
在一段時間以後,當該系統自該儲存媒體讀取一經寫入經編碼碼字,且該LDPC解碼器不能在指定之最大解碼反覆次數之內收斂於該DCCW,執行圖4 之寫入錯誤恢復程序418 。該寫入錯誤恢復程序使用一唯一碼字識別符(例如快閃驅動器頁ID)來對該錯誤位元表搜尋與該失敗經解碼碼字匹配之一記錄。若找到一匹配,則自匹配記錄擷取該等錯誤位元指標,且在該等所擷取指標處之失敗經解碼碼字位元之值經翻轉以提供一經修改碼字。
若該等所儲存錯誤位元指標表示在該寫入驗證程序期間所偵測之所有錯誤位元指標(亦即COMPLETE_SET=1),則該經修改碼字通常僅提交至一癥狀檢查及一循環冗餘檢查。一癥狀檢查判定該經修改解碼器輸入碼字是否為一有效LDPC碼字,且該循環冗餘檢查判定該有效LDPC碼字是否為該DCCW。
取而代之,若該等所儲存錯誤位元指標表示少於在該寫入驗證程序期間所偵測之所有錯誤位元指標之錯誤位元指標(亦即COMPLETE_SET=0),則提交該經修改經解碼碼字以供進一步LDPC解碼(例如無初始化步驟304圖3 之程序300 )。當(i)進一步解碼收斂於該DCCW,或(ii)該解碼器不能在指定之最大解碼反覆次數之內收斂於該DCCW時,該寫入錯誤恢復程序終止。
圖8 為根據本發明之一實施例之圖4 之寫入錯誤恢復程序418 的一流程圖。在步驟802 處開始處理並前進至步驟804 ,其中自該LDPC解碼器接收一失敗經解碼碼字。接著,在步驟806 處,程序418 對該錯誤位元表(例如圖5500 )搜尋與該經解碼碼字之一匹配(例如藉由快閃驅動器頁ID搜尋)。若未找到一匹配,則程序418 在步驟808 處將控制提供給通道控制器並然後在步驟810 處終止;否則,在步驟812 處,自該位元錯誤表擷取EB_INDICES及COMPLETE_SET之值。
接著,在步驟814 處,程序418 翻轉在該等所擷取錯誤位元指標處之經解碼碼字位元之值以提供一經修改碼字。翻轉係描述於上文之段落[0060]至[0063]中。接著,在步驟816 處,若COMPLETE_SET為0(亦即僅有錯誤位元指標之一合適子集係儲存在該錯誤位元表中),則在步驟818 處提交該經修改碼字以進行LDPC解碼。若步驟818 提供該DCCW(步驟820 ),則程序418 在步驟810 處終止。若步驟818 不提供該DCCW,則在步驟808 處,將控制提供給該通道控制器且程序418 在步驟810 處終止。
另一方面,若在步驟816 處COMPLETE_SET為1(亦即所有錯誤位元指標係儲存在該錯誤位元表中),則將經修改碼字提交至步驟822 處之一癥狀檢查。若該經修改碼字未通過該癥狀檢查,則程序418 將控制提供給該通道控制器(步驟808 )且在步驟81 0處終止。取而代之,若該經修改解碼器輸入碼字通過在步驟822 處之癥狀檢查,則在步驟824 處執行一CRC檢查。若該經修改解碼器輸入碼字通過該CRC檢查,則處理在步驟810 處終止。取而代之,若在步驟824 處,該經修改碼字未通過該CRC檢查,則將控制提供給該通道控制器(步驟808 )且程序418 在步驟810 處終止。
在寫入恢復程序410 之另一實施例中,步驟814 翻轉在該解碼器輸入碼字中而不是在該經解碼碼字中之位元。
總之,本發明之實施例為用於自含有寫入錯誤之一NCW產生DCCW之方法。該等方法通常包括一寫入驗證程序及一寫入錯誤恢復程序。當將一通道輸入碼字寫入至一儲存媒體時執行該寫入驗證程序,其識別該經寫入碼字中之寫入錯誤(例如錯誤位元),並將一或多個錯誤位元之指標儲存至一錯誤位元表。在一段時間後當一解碼器嘗試解碼該碼字並失敗而具有一NCW時執行該寫入恢復程序,其對該錯誤位元表搜尋與該NCW相關之錯誤位元指標。若找到相關之錯誤位元指標,則翻轉該NCW中之對應位元並提交該NCW以進行進一步LDPC解碼。
雖然已經在硬碟驅動器及快閃驅動器背景下描述本發明,但是本發明並非如此受限。一般而言,可以任意適當儲存媒體實施本發明。
又進一步,雖然已經在LDPC碼背景下描述本發明之實施例,但是本發明並非如此受限。可對於可由一圖形定義之任意碼(例如龍捲風(tornado)碼、結構化IRA碼)實施本發明之實施例,因為其為遭遇捕獲集合之經圖形定義碼。
可以方法及用於實行該等方法之裝置之形式體現本發明。亦可以體現在有形媒體(諸如磁性記錄媒體、光學記錄媒體、固態記憶體、軟碟、唯讀光碟、硬驅動器或任何其他機器可讀儲存媒體)中之程式碼之形式體現本發明,其中,當該程式碼被載入一機器(諸如一電腦)中並由該機器執行時,該機器成為用於實行本發明之一裝置。亦可以程式碼(例如儲存在一儲存媒體中或載入一機器中及/或由一機器執行)之形式體現本發明,其中,當該程式碼被載入一機器(諸如一電腦)中並由該機器執行時,該機器成為用於實行本發明之一裝置。當在一通用處理器上實施時,該等程式碼片段與該處理器組合以提供類似於特定邏輯電路操作之一唯一器件。
除非另外明確聲明,否則應將各數字值及範圍解釋為大約,如同該值或範圍之值前面的字詞「左右」或「大約」。
將進一步瞭解的是,在不脫離如在下列申請專利範圍中表達之本發明之範圍下,熟習此項技術者可對部件之細節、材料及配置進行各種變化,已經描述並繪示該等部件以解釋本發明之本質。
在申請專利範圍中使用圖式編號及/或圖式參考標記意欲識別經聲明標的之一或多個可能實施例以促進該等申請專利範圍之解譯。不應將此種使用理解為必需將該等申請專利範圍之範疇限於對應圖式中所示之該等實施例。
應瞭解,不必以所描述之順序執行本文提出之該等例示性方法之步驟,而應將此等方法之步驟之順序理解為純粹例示性。同樣地,額外步驟可含於此等方法中,且在與本發明之各種實施例一致之方法中,可省略或組合某些步驟。
雖然以具有對應標記之一特定序列敘述下列方法請求項中之元件(若存在),但是,除非該等請求項敘述另外暗指用於實施該等元件之一些元件或全部之一特定序列,否則未必意欲使該等元件限於以該特定序列予以實施。
本文對「一實施例」或「一種實施例」之引用意為連同該實施例描述之一特定特徵、結構或特性可含於本發明之至少一實施例中。在本說明書中之各種地方出現詞組「在一實施例中」未必全部參考相同實施例,單獨或替代實施例未必相互排除其他實施例。相同之原則適用於術語「實施方案」。
100...通信系統
102...資料源
104...原始資訊字
106...低密度同位檢查(LDPC)編碼器
108...經編碼碼字
110...儲存媒體
112...通道偵測器
114...LDPC解碼器
118...資料目的地
120...通道控制器
200...矩陣
202...邊緣
圖1 為使用LDPC編碼之通信系統100 之一方塊圖。
圖2(A) 描繪LDPC H矩陣200 ,且圖2(B) 為H矩陣200 之一Tanner圖。
圖3圖1 之解碼器114 所使用之LDPC解碼方法300 之一流程圖。
圖4 為根據本發明之一實施例之如通道控制器120 所控制之圖1 之通信系統100 所實施之LDPC編碼/解碼程序400 之一流程圖。
圖5 為一錯誤位元表之一實施例之一圖形。
圖6 為根據本發明之一實施例之圖4 之步驟410 之一流程圖,亦即寫入錯誤驗證程序。
圖7圖6 之步驟612 之一流程圖。
圖8 為根據本發明之一實施例之圖4 之寫入錯誤恢復程序418 的一流程圖。
(無元件符號說明)

Claims (10)

  1. 一種用於將一原始經編碼碼字儲存至一儲存媒體之機器實施方法,該方法包括:(a)將該原始經編碼碼字寫入至該儲存媒體作為一經寫入經編碼碼字;(b)藉由自該儲存媒體讀取該經寫入經編碼碼字而產生一通道輸出碼字;(c)比較該原始經編碼碼字與基於該通道輸出碼字之一導出碼字以識別該經寫入經編碼碼字中之一第一組之一或多個錯誤位元;(d)藉由選擇該第一組中之一或多個錯誤位元而產生該經寫入經編碼碼字中之一第二組之一或多個錯誤位元;及(e)將對應於該第二組中之該一或多個錯誤位元之錯誤位元資訊寫入至該儲存媒體。
  2. 如請求項1之方法,其中該原始經編碼碼字為一低密度同位檢查碼字。
  3. 如請求項1之方法,其中步驟(c)進一步包括對該通道輸出碼字執行解碼以產生該導出碼字。
  4. 如請求項1之方法,其進一步包括:(f)藉由自該儲存媒體讀取該經寫入經編碼碼字而產生一解碼器輸入碼字;(g)對該解碼器輸入碼字執行解碼以產生一經解碼碼字;及(h)若該經解碼碼字不是一經解碼正確碼字,則: (h1)自該儲存媒體讀取該錯誤位元資訊;(h2)基於該錯誤位元資訊產生一經修改碼字;及(h3)對該經修改碼字執行進一步處理。
  5. 如請求項1之方法,其中步驟(d)包括:(d1)選擇該第一組中之一或多個錯誤位元;(d2)基於該一或多個所選之錯誤位元產生一經修改碼字;(d3)對該經修改碼字執行解碼以產生一候選經解碼碼字;(d4)判定該候選經解碼碼字是否為一經解碼正確碼字;(d5)若該候選經解碼碼字為該經解碼正確碼字,則基於該一或多個所選之錯誤位元產生該第二組;及(d6)若該候選經解碼碼字不是該經解碼正確碼字,則對於該第一組中之另外一或多個所選之錯誤位元重複步驟(d1)至(d4)。
  6. 一種用於產生儲存在一儲存媒體中之一經寫入經編碼碼字之一經解碼碼字之機器實施方法,該經寫入經編碼碼字具有一或多個錯誤位元,該方法包括:(a)藉由自該儲存媒體讀取該經寫入經編碼碼字而產生一通道輸出碼字;(b)基於該通道輸出碼字產生一導出碼字;(c)自該儲存媒體讀取錯誤位元資訊,其中該錯誤位元資訊對應於該經寫入經編碼碼字中之一或多個錯誤位 元;(d)基於該錯誤位元資訊產生一經修改碼字;及(e)對該經修改碼字執行處理以產生該經解碼碼字。
  7. 如請求項6之方法,其中該經寫入經編碼碼字為一低密度同位檢查碼字。
  8. 如請求項6之方法,其中步驟(b)包括:(b1)對該通道輸出碼字執行解碼以產生該導出碼字;及(b2)判定該導出碼字不是一經解碼正確碼字。
  9. 如請求項6之方法,其中步驟(e)包括:(e1)判定該錯誤位元資訊是否對應於該經寫入經編碼碼字中之所有該等錯誤位元;(e2)若該錯誤位元資訊對應於該經寫入經編碼碼字中之所有該等錯誤位元,則該處理包括對該經修改碼字執行一癥狀檢查及一循環冗餘檢查(CRC)之一或多者;及(e3)若該錯誤位元資訊不對應於該經寫入經編碼碼字中之所有該等錯誤位元,則該處理包括對該經修改碼字執行解碼。
  10. 如請求項6之方法,其中該錯誤位元資訊包括:該經寫入經編碼碼字之一唯一識別符;該經寫入經編碼碼字中之各錯誤位元之一指標值;及該錯誤位元資訊是否對應於該經寫入經編碼碼字中之所有該等錯誤位元之一指示。
TW099106992A 2009-04-21 2010-03-10 使用寫入驗證之代碼之錯誤底限減緩 TWI411912B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2009/041215 WO2010123493A1 (en) 2009-04-21 2009-04-21 Error-floor mitigation of codes using write verification

Publications (2)

Publication Number Publication Date
TW201129901A TW201129901A (en) 2011-09-01
TWI411912B true TWI411912B (zh) 2013-10-11

Family

ID=43011368

Family Applications (1)

Application Number Title Priority Date Filing Date
TW099106992A TWI411912B (zh) 2009-04-21 2010-03-10 使用寫入驗證之代碼之錯誤底限減緩

Country Status (7)

Country Link
US (1) US8484535B2 (zh)
EP (1) EP2307960B1 (zh)
JP (1) JP5432367B2 (zh)
KR (1) KR101321487B1 (zh)
CN (1) CN102077173B (zh)
TW (1) TWI411912B (zh)
WO (1) WO2010123493A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8301979B2 (en) * 2008-10-07 2012-10-30 Sandisk Il Ltd. Low density parity code (LDPC) decoding for memory with multiple log likelihood ratio (LLR) decoders
US8683277B1 (en) * 2010-07-13 2014-03-25 Marvell International Ltd. Defect detection using pattern matching on detected data
US8745466B2 (en) * 2010-08-06 2014-06-03 Stmicroelectronics, Inc. Detecting data-write errors
US8996967B2 (en) 2010-08-06 2015-03-31 Stmicroelectronics, Inc. Rendering data write errors detectable
US8769380B1 (en) * 2010-11-02 2014-07-01 Marvell International Ltd. Methods and apparatus for error recovery in memory systems employing iterative codes
US8768990B2 (en) 2011-11-11 2014-07-01 Lsi Corporation Reconfigurable cyclic shifter arrangement
US8775897B2 (en) * 2012-05-07 2014-07-08 Lsi Corporation Data processing system with failure recovery
US9213602B1 (en) 2014-06-23 2015-12-15 Seagate Technology Llc Write mapping to mitigate hard errors via soft-decision decoding
US9602243B2 (en) * 2014-08-26 2017-03-21 Electronics And Telecommunications Research Institute Low density parity check encoder, and low density parity check encoding method using the same
GB2531783B (en) 2014-10-30 2016-09-28 Ibm Method and device for removing error patterns in binary data
KR102556479B1 (ko) * 2015-03-20 2023-07-17 에스케이하이닉스 주식회사 Ldpc 디코더, 반도체 메모리 시스템 및 그것의 동작 방법
US9817716B2 (en) 2015-07-16 2017-11-14 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for retaining non-converged data sets for additional processing
US10108509B2 (en) * 2015-07-16 2018-10-23 Texas Instruments Incorporated Dynamic enabling of redundant memory cells during operating life
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
TWI632780B (zh) 2016-12-30 2018-08-11 慧榮科技股份有限公司 解碼方法與相關解碼裝置
US11010245B2 (en) * 2018-06-21 2021-05-18 Winbond Electronics Corp. Memory storage apparatus with dynamic data repair mechanism and method of dynamic data repair thereof
KR102643457B1 (ko) * 2018-11-19 2024-03-06 에스케이하이닉스 주식회사 Ldpc 디코더, 반도체 메모리 시스템 및 그것의 동작 방법
TWI748214B (zh) * 2019-07-29 2021-12-01 慧榮科技股份有限公司 快閃記憶體控制器、儲存裝置及其讀取方法
US11271589B2 (en) * 2019-10-18 2022-03-08 SK Hynix Inc. Memory system with error-reduction scheme for decoding and method of operating such memory system
US11537927B2 (en) 2020-02-14 2022-12-27 International Business Machines Corporation Quantum readout error mitigation by stochastic matrix inversion
US11456757B2 (en) * 2020-12-16 2022-09-27 SK Hynix Inc. Oscillation detection and mitigation in bit-flipping decoders
CN113053451B (zh) * 2021-03-05 2022-05-10 深圳三地一芯电子有限责任公司 Nandflash内生成softbit的方法、***、主机以及储存介质
US11621727B2 (en) 2021-06-04 2023-04-04 SK Hynix Inc. Decoding systems and methods for local reinforcement

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200905463A (en) * 2007-04-30 2009-02-01 Ibm System and method for monitoring reliability of a digital system
TW200907662A (en) * 2007-04-13 2009-02-16 Microchip Tech Inc Configurable split storage of error detecting and correcting codes
TW200912631A (en) * 2007-06-07 2009-03-16 Micron Technology Inc Emerging bad block detection

Family Cites Families (111)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3755779A (en) 1971-12-14 1973-08-28 Ibm Error correction system for single-error correction, related-double-error correction and unrelated-double-error detection
US4295218A (en) 1979-06-25 1981-10-13 Regents Of The University Of California Error-correcting coding system
EP0316876B1 (en) 1987-11-16 1994-01-26 Nec Corporation A digital signal receiving circuit with means for controlling a baud rate sampling phase by a power of sampled signals
US5721745A (en) 1996-04-19 1998-02-24 General Electric Company Parallel concatenated tail-biting convolutional code and decoder therefor
US6023783A (en) 1996-05-15 2000-02-08 California Institute Of Technology Hybrid concatenated codes and iterative decoding
US5734962A (en) 1996-07-17 1998-03-31 General Electric Company Satellite communications system utilizing parallel concatenated coding
JP2856190B2 (ja) 1997-02-27 1999-02-10 日本電気株式会社 演算処理装置および演算処理方法
US6550023B1 (en) 1998-10-19 2003-04-15 Hewlett Packard Development Company, L.P. On-the-fly memory testing and automatic generation of bitmaps
US6678843B2 (en) 1999-02-18 2004-01-13 Interuniversitair Microelektronics Centrum (Imec) Method and apparatus for interleaving, deinterleaving and combined interleaving-deinterleaving
US6598204B1 (en) 1999-02-18 2003-07-22 Imec Vzw System and method of turbo decoding
US6307901B1 (en) 2000-04-24 2001-10-23 Motorola, Inc. Turbo decoder with decision feedback equalization
US6888897B1 (en) 2000-04-27 2005-05-03 Marvell International Ltd. Multi-mode iterative detector
WO2001086611A1 (en) 2000-05-11 2001-11-15 Reynolds Thomas J Interactive method and system for teaching decision making
US6910000B1 (en) 2000-06-02 2005-06-21 Mitsubishi Electric Research Labs, Inc. Generalized belief propagation for probabilistic systems
US6745157B1 (en) 2000-06-02 2004-06-01 Mitsubishi Electric Research Laboratories, Inc Super-node normalized belief propagation for probabilistic systems
JP2002111512A (ja) 2000-09-29 2002-04-12 Sony Corp 復号装置及び方法、並びにデータ受信装置及び方法
US6950977B2 (en) 2001-03-15 2005-09-27 3G.Com, Inc. Mechanism for turbo decoding when CRC for partial blocks is provided
NO316488B1 (no) 2002-04-26 2004-01-26 Kongsberg Defence Comm As Fremgangsmåte og apparat for mottak av digitale kommunikasjonssignaler
JP3708064B2 (ja) * 2002-05-31 2005-10-19 株式会社東芝 ディスク記憶装置、ディスクコントローラ及び同装置に適用するエラー訂正方法
AU2003278536A1 (en) * 2002-11-27 2004-06-18 Koninklijke Philips Electronics N.V. Running minimum message passing ldpc decoding
US7296216B2 (en) 2003-01-23 2007-11-13 Broadcom Corporation Stopping and/or reducing oscillations in low density parity check (LDPC) decoding
US20070234178A1 (en) 2003-02-26 2007-10-04 Qualcomm Incorporated Soft information scaling for interactive decoding
EP1597667A4 (en) 2003-02-26 2009-01-14 Qualcomm Inc PROGRAMMABLE INFORMATION HITCHING FOR ITERATIVE DECODING
US7340671B2 (en) 2003-10-10 2008-03-04 Regents Of The University Of California Decoding low density parity codes
KR101009785B1 (ko) 2003-12-10 2011-01-19 삼성전자주식회사 불균일 반복 축적 부호 부호화/복호화 장치 및 방법
US7237181B2 (en) 2003-12-22 2007-06-26 Qualcomm Incorporated Methods and apparatus for reducing error floors in message passing decoders
AU2003298253A1 (en) 2003-12-30 2005-07-21 Telefonaktiebolaget Lm Ericsson (Publ) Method and device for calculating the bit error rate of received signal
US20050193320A1 (en) * 2004-02-09 2005-09-01 President And Fellows Of Harvard College Methods and apparatus for improving performance of information coding schemes
JP2005242797A (ja) * 2004-02-27 2005-09-08 Oki Electric Ind Co Ltd エラー訂正回路
US7383484B2 (en) 2004-03-12 2008-06-03 Seagate Technology Llc Cyclic redundancy check based message passing in turbo product code decoding
WO2005096509A1 (en) 2004-03-31 2005-10-13 Intel Corporation Multi-threshold message passing decoding of low-density parity check codes
US7353444B2 (en) 2004-05-07 2008-04-01 Comtech Aha Corporation LDPC architecture
GB2414638A (en) 2004-05-26 2005-11-30 Tandberg Television Asa Decoding a concatenated convolutional-encoded and block encoded signal
US20050283707A1 (en) 2004-06-22 2005-12-22 Eran Sharon LDPC decoder for decoding a low-density parity check (LDPC) codewords
US7457367B2 (en) 2004-07-07 2008-11-25 University Of Utah Research Foundation Detector and method for estimating data probability in a multi-channel receiver
EP1769640A1 (en) 2004-07-15 2007-04-04 Samsung Electronics Co., Ltd. Scalable motion information encoding/decoding apparatus and method and scalable video encoding/decoding apparatus and method using them
US7181676B2 (en) 2004-07-19 2007-02-20 Texas Instruments Incorporated Layered decoding approach for low density parity check (LDPC) codes
US7730377B2 (en) 2004-07-22 2010-06-01 Texas Instruments Incorporated Layered decoding of low density parity check (LDPC) codes
US7143333B2 (en) 2004-08-09 2006-11-28 Motorola, Inc. Method and apparatus for encoding and decoding data
CN101341659B (zh) 2004-08-13 2012-12-12 Dtvg许可公司 用于多输入多输出通道的低密度奇偶校验码的码设计与实现的改进
US7760880B2 (en) 2004-10-13 2010-07-20 Viasat, Inc. Decoder architecture system and method
DE112005003401T5 (de) 2005-01-19 2007-12-20 Intel Corporation, Santa Clara Datenkommunikationsverfahren und -Vorrichtung
JP4595574B2 (ja) 2005-02-07 2010-12-08 ソニー株式会社 復号装置および方法、並びにプログラム
EP1717959A1 (en) 2005-04-29 2006-11-02 STMicroelectronics N.V. Method and device for controlling the decoding of a LDPC encoded codeword, in particular for DVB-S2 LDPC encoded codewords
US7577891B2 (en) 2005-05-27 2009-08-18 Aquantia Corporation Method and apparatus for extending decoding time in an iterative decoder using input codeword pipelining
US7802172B2 (en) 2005-06-20 2010-09-21 Stmicroelectronics, Inc. Variable-rate low-density parity check codes with constant blocklength
US20060285852A1 (en) 2005-06-21 2006-12-21 Wenze Xi Integrated maximum a posteriori (MAP) and turbo product coding for optical communications systems
US7739558B1 (en) 2005-06-22 2010-06-15 Aquantia Corporation Method and apparatus for rectifying errors in the presence of known trapping sets in iterative decoders and expedited bit error rate testing
EP1897223A1 (en) 2005-06-27 2008-03-12 Thomson Licensing S.A. Stopping criteria in iterative decoders
US7725800B2 (en) 2005-08-05 2010-05-25 Hitachi Global Stroage Technologies Netherlands, B.V. Decoding techniques for correcting errors using soft information
US7770090B1 (en) 2005-09-14 2010-08-03 Trident Microsystems (Far East) Ltd. Efficient decoders for LDPC codes
US8867336B2 (en) * 2005-09-28 2014-10-21 Qualcomm Incorporated System for early detection of decoding errors
US20070089019A1 (en) 2005-10-18 2007-04-19 Nokia Corporation Error correction decoder, method and computer program product for block serial pipelined layered decoding of structured low-density parity-check (LDPC) codes, including calculating check-to-variable messages
US20070089016A1 (en) 2005-10-18 2007-04-19 Nokia Corporation Block serial pipelined layered decoding architecture for structured low-density parity-check (LDPC) codes
US7844877B2 (en) * 2005-11-15 2010-11-30 Ramot At Tel Aviv University Ltd. Method and device for multi phase error-correction
US7602838B2 (en) 2005-12-22 2009-10-13 Telefonaktiebolaget Lm Ericsson (Publ) Linear turbo equalization using despread values
FI20055715A0 (fi) 2005-12-30 2005-12-30 Nokia Corp Turboekvalisointimenettely
US7752523B1 (en) 2006-02-13 2010-07-06 Marvell International Ltd. Reduced-complexity decoding of parity check codes
US7805642B1 (en) 2006-02-17 2010-09-28 Aquantia Corporation Low power iterative decoder using input data pipelining and voltage scaling
US8234537B2 (en) 2006-03-31 2012-07-31 Intel Corporation Layered decoder and method for performing layered decoding
US7941737B2 (en) 2006-04-19 2011-05-10 Tata Consultancy Services Limited Low density parity check code decoder
JP4341639B2 (ja) 2006-05-15 2009-10-07 住友電気工業株式会社 復号装置および復号プログラム
US7941726B2 (en) 2006-06-30 2011-05-10 Microsoft Corporation Low dimensional spectral concentration codes and direct list decoding
US7580469B2 (en) 2006-07-06 2009-08-25 Provigent Ltd Communication link control using iterative code metrics
US7895500B2 (en) 2006-07-28 2011-02-22 Via Telecom Co., Ltd. Systems and methods for reduced complexity LDPC decoding
FR2905209B1 (fr) 2006-08-24 2008-10-31 St Microelectronics Sa Procede et dispositif de decodage de blocs encodes avec un code ldpc
FR2905210B1 (fr) 2006-08-24 2008-10-31 St Microelectronics Sa Procede et dispositif de decodage par couches d'une succession de blocs encodes avec un code ldpc
US7644339B2 (en) 2006-10-02 2010-01-05 Broadcom Corporation Overlapping sub-matrix based LDPC (low density parity check) decoder
CN101174839A (zh) * 2006-10-30 2008-05-07 富士通株式会社 编码装置、解码装置、编码/解码装置及记录/再现装置
JP4833173B2 (ja) * 2006-10-30 2011-12-07 富士通株式会社 復号化器、符号化・復号化装置及び記録再生装置
US7979775B2 (en) 2006-10-30 2011-07-12 Motorola Mobility, Inc. Turbo interference suppression in communication systems
JP2008112516A (ja) * 2006-10-31 2008-05-15 Fujitsu Ltd 誤り訂正回路及び情報再生装置
JP5251000B2 (ja) * 2006-11-01 2013-07-31 富士通株式会社 誤り訂正回路及び媒体記憶装置
US8255763B1 (en) 2006-11-08 2012-08-28 Marvell International Ltd. Error correction system using an iterative product code
US7949927B2 (en) 2006-11-14 2011-05-24 Samsung Electronics Co., Ltd. Error correction method and apparatus for predetermined error patterns
FR2909499B1 (fr) 2006-12-01 2009-01-16 Commissariat Energie Atomique Procede et dispositif de decodage pour codes ldpc, et appareil de communication comprenant un tel dispositif
US8108759B2 (en) 2006-12-14 2012-01-31 Regents Of The University Of Minnesota Error detection and correction using error pattern correcting codes
US7949931B2 (en) 2007-01-02 2011-05-24 International Business Machines Corporation Systems and methods for error detection in a memory system
US8051363B1 (en) 2007-01-16 2011-11-01 Marvell International Ltd. Absorb decode algorithm for 10GBase-T LDPC decoder
US8117515B2 (en) 2007-03-23 2012-02-14 Sizhen Yang Methodology and apparatus for soft-information detection and LDPC decoding on an ISI channel
US7904793B2 (en) 2007-03-29 2011-03-08 Sandisk Corporation Method for decoding data in non-volatile storage using reliability metrics based on multiple reads
US8418023B2 (en) 2007-05-01 2013-04-09 The Texas A&M University System Low density parity check decoder for irregular LDPC codes
US8151171B2 (en) 2007-05-07 2012-04-03 Broadcom Corporation Operational parameter adaptable LDPC (low density parity check) decoder
US8032816B2 (en) * 2007-06-01 2011-10-04 International Business Machines Corporation Apparatus and method for distinguishing temporary and permanent errors in memory modules
US7930621B2 (en) 2007-06-01 2011-04-19 Agere Systems Inc. Systems and methods for LDPC decoding with post processing
US8037394B2 (en) 2007-06-29 2011-10-11 Hitachi Global Storage Technologies Netherlands, B.V. Techniques for generating bit reliability information in a post-processor using an error correction constraint
US8214719B1 (en) * 2007-07-26 2012-07-03 Marvell International Ltd. Long latency protocol for hard disk controller interface
US8127209B1 (en) 2007-07-30 2012-02-28 Marvell International Ltd. QC-LDPC decoder with list-syndrome decoding
US8181083B2 (en) 2007-08-27 2012-05-15 Stmicroelectronics S.R.L. Methods and architectures for layered decoding of LDPC codes with minimum latency
US8140948B2 (en) 2007-09-24 2012-03-20 Nec Laboratories America, Inc. Efficient low complexity high throughput LDPC decoding method and optimization
GB2455496B (en) 2007-10-31 2012-05-30 Hewlett Packard Development Co Error detection method and apparatus
US8127216B2 (en) 2007-11-19 2012-02-28 Seagate Technology Llc Reduced state soft output processing
US8219878B1 (en) 2007-12-03 2012-07-10 Marvell International Ltd. Post-processing decoder of LDPC codes for improved error floors
US8020070B2 (en) 2007-12-05 2011-09-13 Aquantia Corporation Trapping set decoding for transmission frames
US8156409B2 (en) 2008-02-29 2012-04-10 Seagate Technology Llc Selectively applied hybrid min-sum approximation for constraint node updates of LDPC decoders
US8161357B2 (en) 2008-03-17 2012-04-17 Agere Systems Inc. Systems and methods for using intrinsic data for regenerating data from a defective medium
US8099645B2 (en) 2008-04-11 2012-01-17 Nec Laboratories America, Inc. LDPC codes and stochastic decoding for optical transmission
US8245104B2 (en) 2008-05-02 2012-08-14 Lsi Corporation Systems and methods for queue based data detection and decoding
KR20090126829A (ko) 2008-06-05 2009-12-09 삼성전자주식회사 반복 복호 방법과 반복 복호 장치
US20090319860A1 (en) 2008-06-23 2009-12-24 Ramot At Tel Aviv University Ltd. Overcoming ldpc trapping sets by decoder reset
US20100037121A1 (en) 2008-08-05 2010-02-11 The Hong Kong University Of Science And Technology Low power layered decoding for low density parity check decoders
EP2223431A4 (en) * 2008-08-15 2010-09-01 Lsi Corp DECODING LIST OF CODED WORDS CLOSE IN RAM MEMORY
US8392692B2 (en) 2008-08-15 2013-03-05 Lsi Corporation Determining index values for bits of binary vector by processing masked sub-vector index values
US8103931B2 (en) 2008-08-27 2012-01-24 Mitsubishi Electric Research Laboratories, Inc. Method for constructing large-girth quasi-cyclic low-density parity-check codes
JP2010062907A (ja) 2008-09-04 2010-03-18 Toshiba Corp 復号装置および方法
US8301979B2 (en) 2008-10-07 2012-10-30 Sandisk Il Ltd. Low density parity code (LDPC) decoding for memory with multiple log likelihood ratio (LLR) decoders
US8205144B1 (en) 2008-10-13 2012-06-19 Marvell International Ltd. Error event processing methods and systems
US8161345B2 (en) 2008-10-29 2012-04-17 Agere Systems Inc. LDPC decoders using fixed and adjustable permutators
JP4516625B1 (ja) 2009-08-11 2010-08-04 正幸 安部 電子装置
US8407550B2 (en) 2009-08-14 2013-03-26 Mitsubishi Electric Research Laboratories, Inc. Method and system for decoding graph-based codes using message-passing with difference-map dynamics
JP5527176B2 (ja) 2010-11-25 2014-06-18 ソニー株式会社 非水電解質電池

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200907662A (en) * 2007-04-13 2009-02-16 Microchip Tech Inc Configurable split storage of error detecting and correcting codes
TW200905463A (en) * 2007-04-30 2009-02-01 Ibm System and method for monitoring reliability of a digital system
TW200912631A (en) * 2007-06-07 2009-03-16 Micron Technology Inc Emerging bad block detection

Also Published As

Publication number Publication date
KR20120011310A (ko) 2012-02-07
EP2307960A4 (en) 2013-01-16
CN102077173B (zh) 2015-06-24
US20120030539A1 (en) 2012-02-02
JP2012525062A (ja) 2012-10-18
JP5432367B2 (ja) 2014-03-05
US8484535B2 (en) 2013-07-09
KR101321487B1 (ko) 2013-10-23
TW201129901A (en) 2011-09-01
EP2307960B1 (en) 2018-01-10
EP2307960A1 (en) 2011-04-13
CN102077173A (zh) 2011-05-25
WO2010123493A1 (en) 2010-10-28

Similar Documents

Publication Publication Date Title
TWI411912B (zh) 使用寫入驗證之代碼之錯誤底限減緩
US8448039B2 (en) Error-floor mitigation of LDPC codes using targeted bit adjustments
TWI473439B (zh) 用於解碼一經編碼碼字之方法及裝置
KR101854954B1 (ko) 치환 소행렬의 합을 사용하는 체크섬
US8645810B2 (en) Fast detection of convergence or divergence in iterative decoding
US8407563B2 (en) Low-complexity soft-decision decoding of error-correction codes
JP5670411B2 (ja) トラッピング・セットを破壊するための装置および方法
US20130111289A1 (en) Systems and methods for dual process data decoding
US20140068368A1 (en) LDPC Decoder With Fractional Unsatisfied Check Quality Metric
TWI497919B (zh) 線性碼之功率最佳化解碼
US20130198584A1 (en) Systems and Methods for Multi-Pass Alternate Decoding
US9419651B2 (en) Non-polynomial processing unit for soft-decision error correction coding
US20130198580A1 (en) Symbol Flipping Data Processor
US10848182B2 (en) Iterative decoding with early termination criterion that permits errors in redundancy part
JP5723975B2 (ja) Ldpcコードの復号のための方法、システム、およびプログラム
US9407290B2 (en) Error-correction decoding with conditional limiting of check-node messages
US20220416812A1 (en) Log-likelihood ratio mapping tables in flash storage systems
JP2019057752A (ja) メモリシステム
CN114333964A (zh) 用于存储器的纠错方法、装置、电子设备及介质

Legal Events

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