TWI508460B - 用於解碼經編碼資料之方法及裝置 - Google Patents

用於解碼經編碼資料之方法及裝置 Download PDF

Info

Publication number
TWI508460B
TWI508460B TW098100521A TW98100521A TWI508460B TW I508460 B TWI508460 B TW I508460B TW 098100521 A TW098100521 A TW 098100521A TW 98100521 A TW98100521 A TW 98100521A TW I508460 B TWI508460 B TW I508460B
Authority
TW
Taiwan
Prior art keywords
intercept
ram
intercept set
profile
codeword
Prior art date
Application number
TW098100521A
Other languages
English (en)
Other versions
TW201008134A (en
Inventor
Kiran Gunnam
Original Assignee
Lsi Corp
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 Lsi Corp filed Critical Lsi Corp
Publication of TW201008134A publication Critical patent/TW201008134A/zh
Application granted granted Critical
Publication of TWI508460B publication Critical patent/TWI508460B/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
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • 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/3707Adaptive decoding and hybrid decoding, e.g. decoding methods or techniques providing more than one decoding algorithm for one code
    • 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/3738Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with judging correct decoding
    • 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/3746Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding
    • H03M13/3753Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding using iteration stopping criteria
    • 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]
    • 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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

用於解碼經編碼資料之方法及裝置
本發明係關於數位信號處理,且特定言之係關於稱為低密度同位元檢驗(LDPC)編碼之一資料編碼方法。
相關申請案之交互參考
此申請案主張2008年8約15日作為代理人檔案號碼08-0241-PR申請的美國臨時申請案第61/089,297號之申請日期的權利,其教導之全部內容以引用方式併入本文中。
此申請案之標的係關於在與此申請案相同之日期作為代理人檔案號碼08-1293申請的美國專利申請案第XX/xxx,xxx號,其教導之全部內容以引用方式併入本文中。
通信係資訊透過一通信通道藉由一發射器至一接收器之傳輸。在真實世界中,通信通道係一雜訊通道,其將自該發射器接收的資訊之一扭曲版本輸出至該接收器。一硬碟(HD)機係一此類雜訊通道,其接受來自一發射器之資訊,儲存該資訊並接著可能將該資訊之一或多或少扭曲的複本傳輸至一接收器。
藉由一通信通道(例如一HD機)引入之扭曲可能大得足以引起一通道錯誤,即其中當該通道輸入信號係0時該接收器將該通道輸出信號解譯為1,反之亦然。通道錯誤減低輸送量,並因而係不合需要的。因此,不斷需要偵測及/或校正通道錯誤之工具。低密度同位元檢驗(LDPC)編碼係用於偵測與校正通道錯誤之一方法。LDPC碼係在針對低信雜比(SNR)應用可實現非常低的位元錯誤率(BER)之已知臨近向農(Shannon)限制碼之中。LDPC解碼的特徵為其平行化可能、低實施複雜性、低解碼延時以及於高SNR之更不嚴重的錯誤底。LDPC碼係針對實際上所有下一代通信標準予以考量。
在特定具體實施例中,本發明包含用於解碼以一以圖表為基礎的碼進行編碼之經編碼資料之方法。該方法包含:(i)對該經編碼資料實行解碼以產生一候選經解碼碼字;以及(ii)若該候選經解碼碼字並非一經解碼正確碼字,則實行一截獲集(TS)-RAM(random access memory;隨機存取記憶體)列表解碼方法以嘗試產生該經解碼正確碼字。該TS-RAM列表解碼方法存取儲存於RAM記憶體中的一或多個TS設定檔,每一TS設定檔對應於一不同截獲集。
在其他具體實施例中,本發明係用於解碼以一以圖表為基礎的碼進行編碼之經編碼資料之一裝置。該裝置包含:(i)一解碼器,其係調適以對該經編碼資料實行解碼以產生一候選經解碼碼字;(ii)RAM記憶體;以及(iii)一截獲集(TS)-RAM列表解碼器,其係調適為若該候選經解碼碼字並非一經解碼正確碼字,則實行一TS-RAM列表解碼方法以嘗試產生該經解碼正確碼字。該TS-RAM列表解碼器存取儲存於該RAM記憶體中的一或多個TS設定檔,每一TS設定檔對應於一不同截獲集。
圖1係使用LDPC編碼之一典型硬碟(HD)機100之一部分的方塊圖。HD機100包含碟盤102與讀取通道104。讀取通道104包含LDPC編碼器106、寫入處理器108、讀取處理器110及LDPC解碼器112。路徑114係LDPC編碼器106與LDPC解碼器112之間的雜訊通道。
欲寫入至碟盤102的資訊字係藉由LDPC編碼器106處理以產生LDPC碼字。LDPC碼字係傳送至寫入處理器108,其包含若干模組,例如一BPSK(二進制相移鍵控)編碼器、一數位至類比轉換器等。寫入處理器108之輸出116係寫入至碟盤102。
自碟盤102讀取的信號118係傳送至讀取處理器110,其包含若干模組,例如一前置放大器、一連續時間濾波器、一固定脈衝回應濾波器、一偵測器、一類比至數位轉換器等。讀取處理器110將對數概度比(LLR)值Lch 輸出至LDPC解碼器106,其進而輸出經解碼資訊字。此外,LDPC解碼器106將ELDPC 值傳回至讀取處理器110。ELDPC 係藉由下面的等式6定義,並表示中間計算的LLR值。讀取處理器110使用該等ELDPC 值來調諧其效能,其係稱為加速解碼之一程序。
LDPC編碼
LDPC編碼器106將藉由該LDPC碼指定之若干同位位元附加至一資訊字之位元,以產生一碼字。一資訊字中的位元係稱為可變位元,並且該等可變位元之數目係表示為K。一LDPC碼字中之位元的總數係表示為N。因而,同位位元之數目係藉由N-K給出。一特定LDPC碼之速率係K/N,即該資訊字長度與該碼字長度之比。因而,將六個同位位元附加至每一三位元資訊字以產生九位元碼字之一LDPC碼具有一1/3之速率。在一典型HD機的情況下,該資訊字長度K係4096個位元(一典型HD機磁區的長度),並且針對一4506個位元之碼字長度與一0.9之速率,同位位元之數目係大致410個位元。
一LDPC碼字中之每一同位位元係以如該特定LDPC碼所指定之一特定方式相關聯於該碼字中之一或多個其他(可變或同位)位元,並且指派給一同位位元之值係設定以便滿足該LDPC碼。典型LDPC碼指定關聯的位元滿足一同位元檢驗限制,例如該等關聯位元之和係一偶數,即2模數和=0。
LDPC碼
一特定LDPC碼係藉由稱為同位元檢驗矩陣或H矩陣或僅H的1與0之一二維矩陣予以定義。H係藉由該LDPC編碼器與解碼器兩者先驗地知道。H包含N行與N-K列,即針對該碼字之每一位元的行與針對每一同位位元的列。H中之每一1表示該行之碼字位元與該列之同位位元之間之一關聯。例如,於H之第三列第七行之1表示第三同位元檢驗位元係相關聯於該碼字之第七位元。一檢驗位元與相關聯於該檢驗位元的所有可變位元之值的2模數和應係0。
H之一行中的1之數目係稱為該行之權重wc 。同樣,H之一列中的1之數目係稱為該列之權重wr 。藉由其中所有行都具有相同wc 且所有列都具有相同wr 之一H定義的LDPC碼係稱為一規則LDPC碼。藉由其中wc 及/或wr 分別不橫跨所有行及/或列而相同之一H定義的LDPC碼係稱為一不規則LDPC碼。
典型LDPC碼之一定義特性係H係"稀疏的",即H之元素大部分係0且沒有幾個1。研究已顯示H矩陣通常需要以便較佳地實行,並且不規則LDPC碼優於規則LDPC碼。
圖2(A)繪示LDPC H矩陣200。H矩陣200包含N=9行與N-K=6列。因而,H矩陣200定義一LDPC碼,其接受三位元資訊字,附加六個同位位元,並輸出九位元碼字。因而,此特定LDPC碼之速率係3/9或1/3。藉由H矩陣200定義的LDPC碼係規則的,其具有二之wc 與三之wr
通道輸出:對數概度比
返回至圖1,在LDPC編碼器106與LDPC解碼器112之間的路徑114係一雜訊通道,並如此解碼器112並不接收藉由LDPC編碼器106輸出的碼字之一完美複本。相反,讀取處理器110輸出一或多個Lch 值,其中每一Lch 值對應於該通道輸入碼字中之一位元。
每一Lch 值係一對數概度比(LLR)。一LLR係包含若干位元之一資料結構,其中一單一符號位元指示硬式決策(即,讀取處理器110關於原始位元是否係1或0的最佳猜測),而其餘量值位元指示讀取處理器110在該硬式決策中的可信度。更精確而言,該LLR表示,其中p0 係該樣本表示0的機率,而p1 係該樣本表示1的機率。
例如,讀取處理器110可能將每一Lch 值輸出為五位元資料結構,其中最高有效位元係指示硬式決策值之一符號位元,並且四個量值位元之16個值指示該硬式決策之可信度。因而,例如,在一典型方案中,二進制00000之LLR值會指示具有最低可信度的0之硬式決策值,二進制01111之一值會指示具有最大可信度的0之硬式決策值,二進制10000會係未使用的,二進制10001會指示具有最低可信度的1之硬式決策值,而二進制11111之一值會指示具有最大可信度的1之硬式決策值。
LDPC解碼:信度傳播
圖3係藉由解碼器112使用的典型LDPC解碼方法300之流程圖。LDPC解碼器112接收N數目之Lch 值並輸出經解碼資訊字。解碼方法300的中心係稱為信度傳播之一反覆式二相訊息傳遞演算法。信度傳播係使用稱為Tanner圖之一視覺化予以最佳說明。
圖2(B)係H矩陣200之一Tanner圖。一般而言,一Tanner圖包含:1)若干位元節點n,其等於H中之行的數目(並因而等於可變位元的數目);2)若干檢驗節點m,其等於H中之列的數目(並因而等於同位位元的數目);3)線,亦稱為邊緣,其每一者將一單一位元節點連接至一單一檢驗節點;4)針對每一位元節點n,自一接收器接收的原始Lch 值;以及5)針對每一位元節點n,一計算的硬式決策輸出值。Tanner圖2(B)包含九個位元節點n0 至n8 、六個檢驗節點m0 至m5 、將位元節點連接至檢驗節點的18個邊緣202、九個Lch 值及九個值。
Tanner圖中的邊緣表示(即,可變)位元節點n與檢驗節點m之間的關係,即邊緣表示H中的1。例如,在圖2(B)中,一邊緣202將第一位元節點n0 連接至第四檢驗節點m3 ,其表示在圖2(A)中之H矩陣200的第一行第四列中存在1。
一Tanner圖係一偶圖,即一邊緣可將一位元節點僅連接至一檢驗節點,而不能將一位元節點連接至另一位元節點,或將一檢驗節點連接至另一檢驗節點。藉由邊緣連接至一特定檢驗節點m的所有位元節點n之集係表示為N(m)。藉由邊緣連接至一特定位元節點n的所有檢驗節點m之集係表示為M(n)。
一特定(位元或檢驗)節點之索引係其在圖表中的順序序列。(位元或檢驗)節點度係連接至該節點的邊緣之數目。因而,一Tanner圖中的位元節點n之度等於對應H矩陣中的行n之權重wc ,並且一Tanner圖中的檢驗節點m之度等於對應H矩陣中的列m之權重wr
返回至圖3,處理開始於步驟302並進行至步驟304,解碼器初始化。解碼器初始化304包含將連接至位元節點n的所有邊緣(例如,圖2(B)之202)設定至相關聯於位元節點n之對應Lch 值,並將位元節點n之值設定至位元節點n的Lch 之硬式決策值。因而,例如,在圖2(B)中,若相關聯於位元節點n0 的Lch 值係+5,則於步驟304,將位元節點n0 連接至檢驗節點m0 與m3 的兩個邊緣202係設定至+5,並將位元節點n的值設定至1。表達此步驟之第一部分之一替代方式係位元節點n0 將一+5之訊息傳送至集M(n0 )中之每一檢驗節點m。自一位元節點n傳送至一檢驗節點m之一訊息係表示為Qnm ,其中Qnm 係一LLR之形式。剛剛係初始化之一解碼器的狀態係稱為狀態0。
步驟304接著傳送至症狀檢驗步驟306,一向量包含N個值。向量係一碼字候選。症狀檢驗步驟306使用以下等式1來計算症狀向量z:
其中HT 係H矩陣之轉置。若z係0向量,則向量已滿足所有藉由H定義的同位元檢驗限制,即係一有效碼字。在該情況下,處理進行至循環冗餘檢驗(CRC)檢驗318。
若相反z不係0向量,則向量未通過該等同位元檢驗限制之一或多者,其通常係稱為未滿足檢驗節點或USC。並非0純量值的症狀向量z中之元素的數目係向量中的USC之數目b。此外,症狀向量z的非零純量元素之索引係向量中的USC之索引。
若向量未通過症狀檢驗306,則處理繼續至一或多個解碼迭代308之第一解碼迭代。解碼迭代308包含三個步驟:1)一信度傳播檢驗節點更新步驟310;2)一信度傳播位元節點更新步驟312;以及3)一症狀檢驗步驟314,其與步驟306相同。
在信度傳播檢驗節點更新步驟310中,每一檢驗節點m使用自集N(m)中之所有位元節點n接收的Qnm 訊息來計算訊息(表示為Rmn ),其係依據以下等式2、3及4:
其中i係解碼迭代,N(m)\n係不包括位元節點n的集N(m),而β係一正常數,其值取決於碼參數。該等計算的Rmn 訊息接著係沿該等相同邊緣傳回至集N(m)中的所有位元節點n。類似於Qnm 訊息,Rmn 訊息係LLR。
接下來,在信度傳播位元節點更新步驟312中,每一位元節點n依據以下等式5來計算Qnm 訊息:
其中係針對位元節點n之Lch 值,而M(n)\m係不包括檢驗節點m之集M(n)。位元節點n接著將該等計算的Qnm 訊息傳送至集M(n)中的所有檢驗節點m。
而且在位元節點更新步驟312期間,每一位元節點n依據以下等式6與7來更新其值:
,則,而若Pn <0,則。藉由等式6產生的值亦係稱為E值或ELDPX 值。通常,作為稱為加速解碼之一調諧程序之部分,ELDPC 值係傳回至讀取處理器(例如,圖1之讀取處理器110)。藉由等式7產生的值係稱為P值。藉由等式2至7表示的特定信度傳播演算法係稱為最小和演算法。
應注意,係在每一解碼迭代308期間更新並最後藉由解碼程序300輸出。該等原始LLR值Lch 在解碼程序300期間保持不變。換言之,在每一解碼迭代308期間,每一位元節點n關於其係經由一檢驗節點m相關聯的所有其他位元節點n之適當值投其一票。例如,在圖2(B)中,位元節點n0 係相關聯於檢驗節點m0 與m3 。因此,n0 將關於相關聯於檢驗節點m0 與m3 的位元節點(即,n3 、n5 、n6 及n7 )之適當值投其一票。位元節點n的Lch 值之量值愈大(即,可信度愈高),位元節點n的投票計數愈多。此投票的淨效應係具有一低Lch 量值(即,可信度)之一位元節點的值將改變並符合該位元節點係相關聯的高可信度位元節點之信度。換言之,若一位元節點的Lch 值包含一錯誤硬式決策值與低量值,則其他位元節點之組合投票在一或多個重複過程之後將傾向於校正該錯誤硬式決策值。
位元節點更新步驟312將自該解碼器之當前值建構之一向量傳送至症狀檢驗步驟314。步驟314之症狀檢驗與上面說明的步驟306之症狀檢驗相同。若向量通過症狀檢驗314,則將向量傳送至CRC步驟318。
LDPC解碼:循環冗餘檢驗與誤滿足檢驗節點
通過症狀檢驗306或314僅表示向量係一有效碼字,但不一定係該經解碼正確碼字(DCCW)。一LDPC解碼器可產生並非該DCCW之一有效碼字。在該情況下,在向量中不存在USC,但存在誤滿足檢驗節點(MSC)。因而,為了確保有效向量係該DCCW,程序300將向量傳遞至循環冗餘檢驗(CRC)318。一CRC檢驗係一檢查總和操作,其可偵測資料在傳輸或儲存期間的迭代。
若向量通過該CRC檢查,則向量係該DCCW,並且程序300將總體變數DCCW設定至真,輸出向量並終止於步驟320。否則,向量不係該DCCW,並且程序300將總體變數DCCW設定至假,輸出向量並終止於步驟320。總體變數DCCW通知其他解碼程序(例如,圖12之TS-ROM列表解碼程序1206,下面說明)是否已產生該DCCW。
返回至步驟314,若向量未通過該症狀檢驗,則向量仍包含一或多個USC。用於解決USC的典型方法係實行另一解碼迭代308。然而,在一特定向量中可能存在一或多個USC,其永遠不會在一合理的時間量內係滿足。因而,LDPC解碼器通常係在其可在一特定向量上實行多少解碼重複過程上受限。針對迭代之最大數目的典型值的範圍係自50至200。
在圖3中,步驟316決定是否已達到迭代之最大數目。若否,則實行另一解碼迭代308。若相反已達到迭代之最大數目,則解碼器程序300已失敗,即該解碼器係一"失敗解碼器"。在該情況下,程序300將總體變數DCCW設定至假,輸出向量,並終止於步驟320。
若一失敗解碼器之向量包含較小數目(例如,少於16)之USC,則向量係稱為一臨近碼字(NCW)。若一失敗解碼器之向量包含較大數目(例如,大於15)之USC,則向量係稱為一無效碼字(ICW)。
用於處理一失敗解碼程序之兩個典型方法係1)請求重新傳送對應資料或2)將向量傳遞至一或多個後處理(PP)方法。通常,向量中的USC之數目b指示將使用此等兩種方法之那一種方法。一較大的b(例如,大於16)通常係藉由一重新傳送或其他後處理方法予以處理,而較小的b值係藉由錯誤底減輕後處理方法予以處理。
B ER、SNR及錯誤底
一LDPC解碼器之位元錯誤率(BER)係表達針對x數目之處理的位元將產生多少錯誤解碼的位元之一比率。因而,例如,具有一10-9 之BER的解碼器將平均而言針對每十億處理的位元產生一個錯誤位元。該BER愈小,該解碼器愈佳。當一LDPC解碼器失敗(即,終止而未收斂在該經解碼正確碼字DCCW上)時,該解碼器之BER增加(惡化)。
一LDPC解碼器之BER受該解碼器的輸入信號之信雜比(SNR)強烈影響。與SNR成函數關係的BER之一圖表通常包含兩個不同區域:一初始"瀑布"區域,其中給定SNR之一單位增加該BER迅速改良(減小);以及一隨後"錯誤底"區域,其中SNR之單位增加僅產生BER之適度改良。因而,在該錯誤底區域中實現顯著BER改良需要除SNR增加以外的方法。
用於改良一LDPC解碼之錯誤底特性之一方法係增加碼字長度。然而,增加碼字長度亦增加LDPC解碼所需的記憶體及其他計算資源。因而,若此類資訊係嚴格限制,通常如HD機上的讀取通道器件之情況,則必須找到其他方法以產生必要的錯誤底改良。
另一稀少的資源係處理循環。通常,為了實現一指定輸送量,一HD機預算一固定數目之讀取通道處理循環以用於解碼一碼字。超過該預算的方法(即,運行外方法)減小該輸送量。更合需要的係運行中方法,其在時脈循環分配內復原該DCCW並因而不減小該輸送量。
截獲集與主導截獲集
一(a,b)截獲集係一解碼器不能在最大數目之迭代內滿足的b個USC與相關聯於該等USC的a個錯誤位元節點(EBN)之集。大部分截獲集包含少於五個之USC與少於十個之EBN。截獲集對一LDPC解碼器之錯誤底特性具有一顯著影響,即當一LDPC解碼器無法收斂在該DCCW上時,其通常係由於一截獲集。
改良一LDPC解碼器之錯誤底特性之一方式係:(i)檢查一失敗解碼器之向量中的USC並識別截獲集(若存在);(ii)識別相關聯於該等USC之EBN;(iii)翻轉相關聯於該等截獲集的一或多個EBN;以及(iv)重新啟動該解碼器。在一可能實施方案中,若一LDPC解碼器剛剛係初始化(即,該解碼器處於狀態0),則翻轉一EBN包含;(i)倒轉該EBN的Lch 值之硬式決策值,即1變為0,反之亦然;以及(ii)將該相同Lch 值之量值位元(即,可信度)設定至最大值,例如,全部為一。若該解碼器處於除狀態0之外的某一狀態,則翻轉一EBN包含:(i)決定該EBN的P值(上面藉由等式7定義)之硬式決策值;(ii)將該EBN的Lch 值、P值及所有關聯Qnm LLR之硬式決策值設定為與步驟(i)之硬式決策值相反;以及(iii)將該EBN的Lch 值、P值及所有關聯Qnm LLR之量值位元設定至最大值。通常,翻轉一或兩個EBN將"中斷"該截獲集,並且該重新啟動的解碼器將收斂在該DCCW上。
不同的截獲集在係中斷時將產生不同的錯誤底特性改良。主導截獲集(DTS)表示截獲集之最小集,其之中斷產生BER/錯誤底特性之一指定改良。例如,DTS-1表示將產生一單一量值等級的BER之改良(例如,自10-9 至10-10 )的截獲集之最小集,而DTS-3會產生三個量值等級的BER之改良(例如,10-10 至10-13 )。
鄰近碼字之列表解碼
列表解碼係用於偵測與中斷截獲集之一後處理方法。在列表解碼中,向量中之一觀察到的截獲集係針對已知截獲集之一或多個列表匹配。一截獲集列表通常包含該列表中之每一截獲集中的所有USC之索引與相關聯於該等USC的一或多個EBN之索引。若在匹配該觀察到的截獲集之列表中找到之一截獲集,則自該列表擷取該(等)EBN索引值。接著,翻轉該等位元節點,並重新開始圖3之解碼程序300。
截獲集模擬
列表解碼所需的截獲集列表通常係使用軟體與硬體模擬工具離線產生。圖4係用於識別截獲集並記錄關於該等截獲集之各種資訊的一離線截獲集(TS)模擬工具400之方塊圖。例如,可在一場可程式化閘極陣列(FPGA)中實施工具400。LDPC校正碼字(CCW)402係傳送至通道與信號模型404,其模擬圖1中之雜訊通道114的行為。通道與信號模型404將Lch 值406輸出至LDPC解碼器408。若LDPC解碼器408產生一鄰近碼字(NCW)410則NCW 410係傳送至症狀檢驗模組412與失配位置記錄器414。症狀檢驗412輸出NCW 410中的所有USC之索引416。失配位置記錄器414比較NCW 410與CCW 402並輸出NCW 410中的所有EBN之索引418。USC索引416加上EBN索引418構成截獲集(TS)資訊420。
針對一給定LDPC實施方案,所有可能的截獲集可能數以百萬計。然而,實現該實施方案之錯誤底的顯著(即,一量值等級或更多)改良通常僅需要所有可能截獲集之一子集,即主導截獲集(DTS)。因而,離線TS模擬工具400包括DTS-N編譯器422,其採取TS資訊420作為其輸入並產生DTS-N資訊424。
DTS-N編譯器422使用三步驟程序:收集、分級及評估。該截獲集收集方法使用基於該碼圖之結構的確定性雜訊脈衝以偵測截獲集。該等收集的截獲集接著係藉由至錯誤邊界距離(DEB)值予以分級,其中具有較低DEB值的截獲集對該錯誤底具有更多貢獻。接著,使用重要性取樣來評估該等截獲集並確認該等預測的等級。
實際上,此類以FPGA為基礎的離線模擬可花費高達一年來實行。例如,為了識別將產生一10-15 之BER的截獲集,對於一4Gb/sHD機而言,需要執行一離線模擬工具(例如,圖4之工具)大致289天。通常,此時間顯著不係問題,因為在一HD機讀取通道之最終設計與晶片之大量製造之間通常存在一年至兩年的延遲。
截獲集唯讀記憶體(TS-ROM)
因而,使用類似於圖4之工具400的離線TS模擬工具,可先驗地識別針對一特定LDPC實施方案將產生錯誤底特性之改良的一或多個截獲集或主導截獲集。在一執行時間環境中實施列表解碼之一方式係將圖4之離線產生的截獲集資訊420儲存於一截獲集唯讀記憶體(TS-ROM)中並耦合該TS-ROM與一列表解碼器程式。該TS-ROM列表解碼器程式比較在中觀察到的USC與儲存於TS-ROM中之截獲集。若發現一匹配,則該TS-ROM列表解碼器程式翻轉該LDPC解碼器中的適當位元節點值並重新啟動該解碼器。
通常,TS-ROM資訊係隨機地儲存於一單或雙連結的列表中,其中使用一蠻力循序搜尋來搜尋該列表。通常,每一(a,b )截獲集佔據該TS-ROM列表中的(2+a+b)個記錄。因而,針對一(4,4)截獲集設定檔(即,四個USC與四個EBN),會存在十個記錄:指示存在四個USC之一記錄,隨後係四個個別USC記錄,接著係指示存在四個EBN之一記錄,隨後係四個個別EBN記錄。該典型TS-ROM列表實施方案儲存大致100個截獲集,並且不儲存關於誤滿足檢驗節點的任何資訊。
為了使此一TS-ROM實施方案經濟上實際,一單一TS-ROM必須能夠在大量實施方案中實現所需錯誤底改良。然而,甚至當實施相同LDPC碼時,截獲集仍隨實施方案改變而改變。例如,即使在兩個HD機上使用的LDPC碼相同,相關聯於該等HD機的截獲集仍可不同。明確地說,研究已顯示截獲集受一HD機的抖動設定檔、符號間干擾特性及脈衝成形方案影響。此等因數不僅可在不同製造商之HD機之間改變,還在來自相同製造商之不同HD機模型及甚至在相同模型之不同生產執行之間的變更之間改變。因而,截獲集可甚至在兩個相同模型硬碟機之間改變。模擬如此多不同HD機的LDPC截獲集係不實際的。然而,僅載有為一大類HD機所共用的該等截獲集之一TS-ROM當與一特定HD機配對時可能不產生所需位準之錯誤底改良。
用於改良TS-ROM之效能之一方法係以自該製造的器件之測試模型獲得之結果來補充藉由一以FPGA為基礎的離線模擬工具(例如,圖4之工具400)產生的資訊。通常,一旦已完成一電路設計,將製造並分配該設計之有限數目之測試模型以用於在大量生產開始之前進行測試。雖然可能花費一年來決定針對一特定HD機實施方案將產生一10-15 之BER的截獲集,但僅花費一天來決定將產生一10-12 之BER的截獲集。因而,該等測試模型係以LDPC測試模式執行一有限時間週期,並且儲存任何發現的截獲集。將並不已經在TS-ROM中之任何發現的截獲集新增至TS-ROM。藉由使用將係分配至消費者的實際器件,此方法捕獲可能已躲開一以FPGA為基礎的離線模擬工具(例如,圖4之工具400)的截獲集。
截獲集隨機存取記憶體(TS-RAM)
TS-ROM之靜態截獲集列表之一執行時間替代係將截獲集資訊儲存於一截獲集隨機存取記憶體(TS-RAM)中並將圖4之離線截獲集模擬工具400轉變成在實際個別器件(例如,一HD機)上執行之一執行時間截獲集收集與分析工具。替代接收來自一通道與信號模型(例如,圖4之模型404)之初始值,該執行時間工具會處理該特定器件之實際信號。該執行時間工具會包括列表解碼器功能性;即,其會嘗試匹配觀察到的USC與TS-RAM中之儲存的截獲集資訊,並且若找到一匹配,則使用該儲存的資訊來改變解碼器位元節點值並重新啟動該解碼器。若未找到一匹配,則該執行時間工具會分析該觀察到的截獲集,即識別相關聯於該USC之EBN,並決定該觀察到的截獲集是否滿足用於TS-RAM中之儲存(例如,一DTS-N之隸屬資格)的臨限要求。
理論上,上面說明的TS-RAM可適應任何實施方案之截獲集設定檔。現實係藉由圖4之離線模擬工具400實行的截獲集/主導截獲集模擬在計算上較複雜。特定言之,自可能數百萬的截獲集建構主導截獲集尤其複雜。此複雜性使上面說明的TS-RAM不適合於大部分HD機。通常,HD機以較高速率(例如,每秒40億位元)輸出資料並需要非常低的BER/錯誤底速率(例如10-13 至10-15 ),但僅在其韌體中提供適度的計算資源。
此外,類似於圖4之離線模擬工具400,TS-RAM工具需要正確碼字(CCW)以產生EBN索引。CCW在該離線模擬環境中容易獲得,但在該執行時間環境中不容易獲得。
依據本發明之特定具體實施例,實行方法以用於組織ROM中之儲存的截獲集設定檔。截獲集設定檔係藉由主導性(即,藉由其對一LDPC解碼器之錯誤底特性的影響)來分級。更高主導性的截獲集設定檔包含關於未滿足檢驗節點(USC)與誤滿足檢驗節點(MSC)兩者之資訊,而更低主導性的截獲集設定檔僅包含關於USC之資訊。接著,截獲集設定檔資訊係組織成若干連結的階層式資料表,其允許使用一指標追溯搜尋的最高主導性的匹配截獲集設定檔之快速定位與擷取。
依據本發明之特定具體實施例,實行有效的執行時間方法以用於收集與識別RAM中的主導截獲集。若可能,將新發現的截獲集儲存於RAM中,並接著關於以下因數之任一或多者予以排序或分級:自從最後匹配一截獲集已搜尋RAM的次數、自從一截獲集係新增至RAM其已係匹配的總次數、未滿足檢驗節點之數目及錯誤位元節點之數目。自RAM刪除低等級截獲集設定檔以為新發現的截獲集設定檔製造空間。因而,替代將一高計算複雜性離線方法用於主導截獲集之先驗識別(例如用於圖4之DTS-N變壓器422中的方法)或除此以外,本發明之此等具體實施例還實行低計算複雜性後驗方法,其中儘可能多的新發現截獲集係儲存,並且非主導截獲集設定檔係藉由週期性分級與刪除予以除去。
本發明之具體實施例通常係運行中方法,即其能夠在針對LDPC解碼而預算的時脈循環內復原該DCCW,並因而不負面影響系統輸送量。
圖5係依據本發明之一具體實施例的一LDPC解碼系統500之方塊圖。在類似於圖1之先前技術HD機100的本發明之一HD機中,會將圖5之LDPC解碼系統500實施為類似於圖1之LDPC解碼器112的一LDPC解碼器之部分。在該程度上,圖5之輸入Lch 值類似於圖1之解碼器輸入Lch 值,並且圖5之輸出向量類似於圖1之經解碼資訊字。
LDPC解碼器502接收Lch 值,實行圖3之LDPC解碼程序300,並輸出向量至後處理器504與TS-RAM更新器506。後處理器504係連接至後處理(PP)方法列表508,其係包含表示後處理方法(例如,TS-ROM列表解碼、TS-RAM列表解碼等)的一或多個可執行程式之一記憶體。若後處理器504需要實行一特定PP方法,則後處理器504自PP方法列表508讀取可執行程式並執行該程式。後處理器504可能並列或串列地實行任何數目之此等PP方法。後處理器504輸出向量,其除係自LDPC解碼系統500輸出以外亦係傳送至TS-RAM更新器506。
資料表
在執行期間,一特定PP方法可能需要存取自PP方法可執行程式碼分離的資料結構。特定言之,TS-ROM與TS-RAM列表解碼方法分別存取儲存於TS-ROM 510與TS-RAM 520中的截獲集資訊之一或多個列表。
在圖5之範例性具體實施例中,TS-ROM 510包含四個表:B表512、P表514、E表516及EI表518。TS-RAM 520包含兩個表:RAM P表522與RAM索引524。表係組織成一或多個相等大小的列(記錄)與一或多個相等大小的行(欄位)的數位資料之二維矩陣。表之記錄係以零開始自頂部至底部順序編號。此號係記錄號。
P表514與522包含關於USC及其相關EBN的資訊。B表512包含針對ROM P表514之指標資訊。EI表518包含關於MSC之資訊,而E表516包含針對EI表518之指標資訊。RAM索引表524包含針對RAMB表522之指標資訊。
圖6係圖5之ROM P表514之一範例布局。ROM P表514包含截獲集設定檔資訊,即USC與EBN索引。ROM P表514包含若干記錄(列),每一記錄針對每一儲存的截獲集之一USC。記錄號602係P表514中之一記錄的順序位置,其以0開始。
ROM P表514中之每一記錄包含三個欄位:LAYER 604、USC_INDEX 606及EBN_INDEX 608。一些LDPC解碼器經組態用以並列執行一組更新操作,其分開係稱為一層。LAYER 604指示包含該USC之解碼層的號碼。USC_INDEX 606包含該USC之索引。EBN_INDEX 608包含相關聯於該USC之一或兩個EBN的索引。
ROM P表514首先係關於b(即,中之USC的數目)排序,例如首先排序b=2的所有截獲集,然後係所有b=3的截獲集等。因而,將存在針對在b=2範圍內之每一截獲集(例如610、612)的兩個記錄,最終後跟針對b=3之截獲集(例如,614、616)的三記錄集、針對b=4之截獲集(618、620)的四記錄集等等。
在每一b範圍內,截獲集係藉由主導性排序,即,該截獲集對錯誤底特性的影響。對錯誤底特性具有更大影響的該等截獲集發生於該b範圍開始之處,而具有更少影響的該等截獲集臨近結束發生。針對一特定截獲集之記錄接著係藉由USC_INDEX 606排序。
圖7係圖5之B表512之一範例布局。B表512針對ROM P表514中之每一b值包含指向在ROM P表514中與在E表516中該b值之第一次發生的指標,及該b值在E表516中之記錄的數目。因而,在B表512中針對每一b值存在一單一記錄,其中該b值係藉由記錄號702指示。然而,記錄號702是以0開始,而b值通常開始於二或更高。因而,在本發明之此範例性具體實施例中,將一偏移新增至記錄號702以產生對應b值。例如,若僅儲存的截獲集,則會將一2之偏移新增至每一記錄號以得到對應b值。
欄位PTABLE_START_OFFSET 704包含ROM P表514中之一特定b值的第一次發生之位置。欄位ETABLE_START_OFFSET 706包含E表516中之一特定b值的第一次發生之位置。欄位NUM_ETABLE_ENTRIES 708包含針對此特定b值的E表516中之記錄的數目。
圖8係圖5之E表516之一範例布局。E表516包含指向EI表518中之MSC記錄的指標。E表516中之每一記錄具有一記錄號802、一EITABLE_START_ADDRESS欄位804及一EITABLE_END_ADDRESS欄位806。EITABLE_START_ADDRESS欄位804包含指向EI表518中之對應資料的第一次發生之一指標,而EITABLE_END_ADDRESS欄位806包含指向EI表518中之對應資料的最後一次發生之一指標。
圖9係圖5之EI表518之一範例布局。EI表518儲存相關聯於MSC的EBN之索引。EI表518中之每一記錄具有一記錄號902並包含兩個欄位:BLOCK_COLUMN欄位904與B_INDEX欄位906。BLOCK_COLUMN欄位904指示其中定位該EBN的區塊行,而B_INDEX欄位906係該EBN的索引。
圖10係圖5之RAM P表522之一範例布局。RAM P表522儲存未在ROM P表514中找到的新識別之截獲集之設定檔。RAM P表522中之每一列(即,記錄)具有一記錄號1002並包含兩個欄位:二位元TAG欄位1004與R_WORD欄位1006。TAG欄位1004之四個可能值指示R_WORD欄位1006內之資料的記錄類型與結構。若TAG欄位1004具有一11之值,則該記錄係包含關於一整個截獲集之資訊的主要記錄。若TAG欄位1004具有一10之值,則該記錄係一次要記錄並包含關於一截獲集設定檔內之一特定USC的資訊。若TAG欄位1004具有一00或01之值,則該R_WORD欄位1006係空的,即此記錄可用於儲存針對新識別的截獲集之設定檔資訊。一截獲集設定檔通常包含:一單一主要記錄,其後為b個次要記錄。
若該記錄係一主要記錄,則R_WORD欄位1006包含四個子欄位:(i)b值子欄位1008;(ii)a值子欄位1010,其記錄截獲集EBN之數目;(iii)LAST_HIT_NUM子欄位1012,其指示最後匹配此截獲集的TS-RAM搜尋之數目;以及(iv)HIT_COUNTER子欄位1014,其記錄自從此截獲集儲存於TS-RAM中以來此特定截獲集設定檔已與一觀察到的截獲集匹配多少次。
若一記錄係一次要記錄,則R_WORD欄位1006包含一截獲集內之一單一USC的層(LAYER欄位1016)與索引(USC_INDEX欄位1018)及相關聯於該USC的一或多個EBN之索引(EBN_INDEX欄位1020)。
圖11係圖5之RAM索引表524之一範例布局。在RAM索引表524中針對RAMP表522中之每一截獲集設定檔存在一記錄。RAM索引表524中之每一記錄包含一單一欄位RAM_PTABLE_OFFSET 1102。RAM_PTABLE_OFFSET 1102係指向RAM P表524中之一特定截獲集設定檔的開始之一指標,即RAM_PTABLE_OFFSET 1102包含一截獲集設定檔主要記錄的圖10之記錄號1002。RAM索引表524中的記錄係藉由主導性來排序,使得RAM索引表524中之第一記錄指向RAM P表522中的最高主導性截獲集,而RAM索引524中的最後記錄指向RAM P表522中之最低主導性記錄。
圖12係藉由圖5之LDPC解碼系統500使用的範例性程序1200之流程圖。處理開始於步驟1202並進行至步驟1204,Lch 值藉由圖5之LDPC解碼器502之LDPC解碼。若於步驟1204的LDPC解碼產生DCCW,則程序1200終止於步驟1218。否則,處理進行至步驟1206,TS-ROM列表解碼(藉由圖5之後處理器504實行)。
若步驟1206產生DCCW,則程序1200終止於步驟1218。否則,處理進行至步驟1208,TS-RAM列表解碼(藉由圖5之後處理器504實行)。若步驟1208產生DCCW,則程序1200終止於步驟1218。否則,處理進行至一或多個額外後處理方法1210、1212、...、1214(藉由圖5之後處理器504實行),其以一類似方式操作。
若TS-RAM列表解碼1208或該等額外後處理方法1210、1212、...、1214之任一者產生DCCW,則處理進行至步驟1216,其中可能藉由TS-RAM更新器508來更新圖5之TS-RAM 520。接著,處理終止於步驟1218。
圖12顯示後處理方法1207至1214之一可能排序。可採用後處理方法之幾乎任何序列,不過一些序列比其他序列更實際。例如,需要將TS-ROM列表解碼排序在TS-RAM列表解碼之前以確保在RAM中不複製已儲存於ROM中的截獲集。
TS-ROM列表解碼
圖13係藉由圖5之後處理器504實施的圖12之範例性TS-ROM列表解碼程序1206的流程圖。處理開始於步驟1302並進行至步驟1304,其中程序1206決定在自圖12之LDPC解碼器1204接收的向量中觀察到的USC之數目bobserved 大於0並少於可藉由程序1206有效處理的USC之最大數目bmax 。若bobserved =0,則在向量不存在USC(即,係一臨近碼字誤校正),並因此不存在截獲集用以匹配。若步驟1304評估為假,則程序1206終止。否則,處理繼續至步驟1306。
於步驟1306,該解碼器之當前狀態係儲存並標記為狀態1。接著,處理繼續至步驟1308,其中首先藉由解碼層並接著藉由索引來排序該等觀察到的USC。接下來,於步驟1310,以下四個值係自圖5之B表512擷取並排序:
(1)針對b=bobserved 的圖7之PTABLE_START_OFFSET欄位704;
(2)針對b=bobserved +1的圖7之PTABLE_START_OFFSET欄位704;
(3)針對b=bobserved 的圖7之ETABLE_START_OFFSET欄位706;以及
(4)針對b=bobserved 的圖7之NUM_ETABLE-ENTRIES欄位708。
該第一值指示程序1206何處開始其用於匹配圖5之P表514中的截獲集資訊(即,USC與EBN索引)的搜尋,而該第二值指示程序1206何時結束其搜尋。同樣,第三與第四值指示程序1206何處開始與結束其針對延伸資訊(即,MSC索引)的搜尋。
因而,例如,若bobserved =5,則程序1206擷取針對b=5與b=6的圖7之PTABLE_START_OFFSET欄位704的值及針對b=5的圖7之ETABLE_START_OFFSET欄位706與圖7之NUM_ETABLE_ENTRIES欄位708的值。
接下來,於步驟1312,程序1206選擇圖5之P表514並進行至藉由針對b=bobserved 的PTABLE_START_OFFSET之儲存值指示的位址。接下來,於步驟1314,針對匹配該等觀察到的USC之一截獲集來搜尋TS-ROM。
圖14係圖13之範例性TS-ROM搜尋程序1314的流程圖。程序1314開始於步驟1402,並於步驟1404,搜尋屬於針對該等觀察到的USC之一同形匹配的圖5之P表514中的下一記錄。針對觀察到的USC之一特定集的同形匹配會係其中USC之數目與該等USC之間的距離與該等觀察到的USC相同之一截獲集。因而,若該等觀察到的USC係[1,3,10],則[1,3,10]係一匹配,而[2,4,11]係一同形匹配,[3,5,12]、[4,6,13]等等亦係同形匹配。若未找到匹配,則程序1314以無匹配之一狀態1406終止。
若相反於步驟1404找到一匹配,則於步驟1408,儲存該匹配P表記錄的圖6之EBN_INDEX欄位608的值。該EBN_INDEX欄位包含相關聯於此匹配的截獲集之一個且可能兩個錯誤位元節點之索引。
接下來,程序1314產生定位任何延伸資訊,即相關聯於此匹配截獲集中之無滿足檢驗節點(MSC)的EBN之索引。在EI表518中保持延伸資訊。然而,並不針對儲存於P表514中的所有截獲集而係僅針對每一b範圍內的截獲集之一子集來保持延伸資訊。該子集對應於一特定b範圍內之更高主導性截獲集,即對錯誤底特性具有更顯著影響的該等截獲集。如上面所說明,在P表514中,一特定b範圍內之截獲集係藉由主導性來排序;因而,僅針對該b範圍內之第一x個記錄來保持延遲資訊。EI表518中之每一b範例的開始與結束係藉由B表512中的欄位ETABLE_START_OFFSET 706與NUM_ETABLE_ENTRIES 708予以指示。
隨著程序1314在整個ROM P表514之記錄中搜尋,程序1314保持截獲集之一內部計數。因而,例如,若程序1314在整個圖6之P表514中的b=2截獲集中搜尋,則程序1314會將記錄0與1識別為截獲集0(例如,圖6之截獲集610),將記錄2與3識別為截獲集1(例如,圖6之截獲集612),等等。此截獲集號係稱為TSNUM。
於步驟1410,將TSNUM與在圖13之步驟1310中儲存的NUM_ETABLE_ENTRIES欄位之值相比較。若TSNUM大於NUM_ETABLE_ENTRIES之值,則無延伸資訊可用,並且程序1314以匹配但無延伸資訊之一狀態1412終止。
若相反,於步驟1410發現TSNUM小於或等於NUM_ETABLE_ENTRIES之儲存值,則針對此匹配的截獲集,延伸資訊存在。在步驟1414中,將TSNUM新增至ETABLE_START_OFFSET之儲存值以產生變數ETABLE_ENTRY_ADDRESS。
接下來,於步驟1416,程序1314選擇圖5之E表516,進行至具有等於變數ETABLE_ENTRY_ADDRESS之值之一位址的記錄,並儲存圖8之EITABLE_START_ADDRESS欄位與圖8之ETABLE_ENTRY_ADDRESS欄位806的值。
接下來,於步驟1418,程序1314選擇圖5之EI表518,並儲存在該儲存的EITABLE_START_ADDRESS與EITABLE_END_ADDRESS值之間之每一記錄的圖9之BLOCK_COLUMN欄位904與圖9之B_INDEX欄位906的值。最後,程序1314以匹配並具有延伸資訊之一狀態1420存在。
返回至圖13,若步驟1314以無匹配之一狀態終止,則程序1206終止於步驟1316。
若步驟1314以匹配但無延伸資訊之一狀態終止,則程序1206處理該等USC索引與相關聯於此截獲集之一些EBN索引,但無延伸資訊(即,相關聯於MSC的EBN之索引)。在此情況下,步驟1318翻轉於該等EBN索引處之位元節點,並於步驟1320實行迭代式LDPC解碼。步驟1320之程序與圖3之程序300相同,不同之處在於解碼器初始化步驟304與初始症狀檢驗步驟306係跳過。若步驟1320收斂在DCCW上,則程序1206終止於步驟1316。否則,於步驟1322,將該解碼器恢復至狀態1,並於步驟1314搜尋下一匹配截獲集。
若步驟1314以匹配並具有延伸資訊之一狀態終止,則程序1206處理相關聯於該匹配的截獲集的所有EBN之索引。在此情況下,不必實行信度傳播(例如,圖3之步驟310與312)。相反,於步驟1324,翻轉該等EBN,並將所得向量提交至一症狀檢驗1326。若向量未通過步驟1326處之症狀檢驗,則程序1206進行至步驟1322。若相反,向量通過該症狀檢驗(即,向量係一有效碼字),則於步驟1328,在向量上實行一CRC檢驗以決定其是否實際上係正確碼字。若向量通過CRC檢驗1328(即,向量係該DCCW),則程序1206終止於步驟1316。若向量未通過CRC檢驗1328,則程序1206進行至步驟1322。
TS-RAM列表解碼
藉由圖5之後處理器504使用的另一PP方法係圖12之TS-RAM列表解碼1208,即使用儲存於揮發性記憶體(例如隨機存取記憶體)中的截獲集資訊的截獲集之列表解碼。TS-RAM列表解碼類似於TS-ROM列表解碼,因為圖5之RAM P表522儲存針對選定截獲集之USC與EBN資訊。然而,與ROM P表514不同,RAM P表522係在執行時間期間藉由圖5之TS-RAM更新器506改變。因此,僅儲存最重要的資訊,例如USC與EBN索引。無延伸資料(例如圖5之EI表518)係保持於TS-RAM中。
RAM P表522中的設定檔亦不以任何方式予以排序。相反,圖16之一分離的RAM索引表保持儲存於藉由主導性排序的RAM P表522中之截獲集設定檔的位置之一列表。
圖15係圖12之範例性TS-RAM列表解碼程序1208的流程圖。處理開始於步驟1502並進行至步驟1504,其在目的與操作上與圖13之步驟1304相同。若步驟1504評估為假,則程序1208終止於步驟1506;否則,處理繼續至步驟1508,其中當前解碼器狀態係記錄並標記為狀態1。接著,處理繼續至步驟1510。
於步驟1510,程序1208進行至圖5之RAM P表522中之最高主導性的截獲集設定檔。明確地說,因為RAM索引表524藉由主導性來分級RAM P表522中之設定檔,故程序1208進行至RAM索引表524中之第一記錄並擷取圖11之RAM_PTABLE_OFFSET欄位1102的值。接著,程序1208將RAM P表522中之指標移至該儲存的偏移值。
於步驟1512,程序1208遞增總體變數RAM_SEARCH_COUNT,其記錄所實行TS-RAM搜尋之總數,即已執行程序1208的總次數。而且,於步驟1512,程序1208以RAM索引表524所指示之順序(即,以減小主導性之順序)針對該等觀察到的USC之一同形匹配來檢查RAM P表522中的設定檔。若未找到匹配,則處理繼續至步驟1514。
若相反,於步驟1512找到一匹配,則於步驟1516,將該匹配的設定檔之圖10之LAST_HIT_NUM欄位1012設定至總體變數RAM_SEARCH_COUNT之值,並使圖10之HIT_COUNTER欄位1014遞增1。接著,於步驟1518,儲存圖10之EBN_INDEX欄位1020之值。步驟1520翻轉位於該等EBN_INDEX值的位元節點,並於步驟1522,實行LDPC解碼。步驟1522與圖13之步驟1320相同。若解碼程序1522收斂在該DCCW上,則處理繼續至步驟1514;否則,於步驟1524,將該解碼器重設至狀態1,並且處理接著繼續至步驟1512,其中在P表522中搜尋另一同形匹配。
於步驟1514,程序1208更新圖11之RAM索引表524。明確地說,步驟1514關於RAM P表522中之欄位(例如,LAST_HIT_NUM 1012、HIT_COUNTER欄位1014、USC節點數目欄位1008及EBN數目欄位1010)的任何組合來排序RAM P表522中之所有TS-RAM設定檔。接著,將所有該等排序的設定檔之位址(即,所有主要記錄之記錄號1002)作為記錄儲存於圖11之RAM索引表524中。該等設定檔位址係以其係在步驟1514中排序的相同順序(例如,自最高主導性至最低主導性)儲存於RAM索引表524中。
一旦步驟1514已完成,處理便終止於步驟1506。
TS-RAM更新器
如圖12之程序1200之說明所述,若除TS-ROM列表解碼1206之外的任何後處理方法達到該DCCW,則其可能表示已發現一新的截獲集。若是,則步驟1216可能嘗試將新的截獲集新增至圖5之RAM P表522。
在一具體實施例中,步驟1216係用於保留TS-RAM 520中之主導截獲集的低複雜性程序。明確地說,在此具體實施例中,步驟1216並不實行詳盡計算以先驗地決定主導截獲集(例如藉由圖4之DTS-N編譯器422實行之計算),而係(i)關於一或多個因數(例如自從該截獲集係最後匹配已搜尋多少次TS-RAM、已匹配一截獲集的總次數、USC的數目、EBN的數目等)之任何組合來分級TS-RAM截獲集,並接著(ii)清除該等最低分級的截獲集以為新發現的截獲集製造空間。使用此等因數來分級TS-RAM 520中的截獲集通常明顯比藉由離線模擬工具(例如,圖4之編譯器422)實行的分析更不複雜。
圖16係圖12之範例性TS-RAM更新程序1216的流程圖。處理開始於步驟1602並進行至步驟1604,其中決定一DCCW是否藉由圖12之TS-RAM列表解碼程序1208產生。若是,則無截獲集設定檔需要係新增至TS-RAM,並且程序1216終止於步驟1608。
反之,若步驟1604評估為否/假,則其表示除TS-ROM或TS-RAM列表解碼之外的某一後處理方法達到該DCCW,因此表示已發現一新的截獲集並應附加至RAM。於步驟1610,產生該截獲集設定檔。一截獲集設定檔包含截獲集USC之索引與相關聯於該等USC的EBN之索引。該等USC索引已藉由圖5之LDPC解碼器502產生。為了產生該等EBN索引,步驟1610比較藉由後處理器504產生的與藉由LDPC解碼器502產生的向量
於步驟1612,決定是否存在足夠的可用空間以附加新的截獲集設定檔。若是,則於步驟1614,將該新的截獲集設定檔附加至RAM P表522,並且程序1216進行至步驟1616。
然而,若於步驟1612,在RAM P表522中無足夠的可用空間以附加該新的截獲集設定檔,則於步驟1618,清除最低階位的適合清除截獲集設定檔。在此範例中,一設定檔之清除適合性係藉由自從該設定檔最後匹配以來已搜尋RAM之次數(即,總體變數RAM_SEARCH_COUNT之值減去該設定檔的LAST_HIT_NUM欄位之值)來決定。若介入搜尋的數目大於一指定臨限值,則該設定檔係適合清除的。假定首先藉由清除適合性來分級所有設定檔,所有適合清除記錄將位在圖11之RAM索引表524之末尾。
因而,於步驟1618,選擇索引RAM索引表524中的最後記錄,並擷取RAM_PTABLE_OFFSET欄位1102之值。若位於RAM P表522中該儲存的偏移值(藉由該擷取的RAM_PTABLE_OFFSET值所示)處的設定檔係適合清除的,則刪除位於RAM P表522中之該儲存的偏移值處之主要記錄及關聯次要記錄。於步驟1620,更新RAM索引表MSB,並接著使控制返回至步驟1612,其中決定在RAM P表522中是否存在足夠可用空間以附加新的截獲集設定檔。步驟1620之處理與圖15之步驟1514的處理相同。
若相反,於步驟1618該最低分級的設定檔並非適合清除的,則處理繼續至步驟1616。於步驟1616,更新RAM索引表523,並且使處理終止於步驟1608。步驟1616之處理與圖15之步驟1514的處理相同。
雖然已在實施LDPC編碼與解碼之硬碟機的背景下說明本發明,但本發明並不限於此。一般而言,可以在有關LDPC編碼與解碼之任何適合的通信路徑來實施本發明。
此外,雖然上面使用的範例性信度傳播演算法係偏移最小和演算法(OMS),但本發明並不限於此,並可與任何信度傳播變化一起使用,例如和積演算法(SPA)或Bahl-Cocke-Jelinek-Raviv(BCJR)演算法。
此外,雖然上面使用的信度傳播範例採用一特定解碼排程(滿排程),其中所有檢驗節點係在一單一檢驗節點更新步驟期間予以更新,然後所有位元節點係在一單一位元節點更新步驟中予以更新,但本發明並不限於此,並可與任何解碼排程一起使用,例如列串列排程、行串列排程及列行串列排程。
此外,雖然上面使用的範例性LDPC解碼器係一非成層解碼器,但本發明並不限於此,並可與成層及非成層解碼器兩者一起使用。
此外,雖然上面給出的範例性TS-RAM實施方案採用將截獲集設定檔儲存於一HD機之讀取通道內的RAM中,但本發明並不限於此。亦可將一RAM P表(例如圖5之522)儲存於一HD機之磁盤上或儲存於諸如快閃記憶體之一分離記憶體中。
此外,雖然在唯讀記憶體的背景下說明上面給出的範例性TS-ROM實施方案,但本發明並不限於此。一般而言,如規格與申請專利範圍兩者中所使用的術語"ROM"應係解釋為表示儲存靜態TS設定檔資料的任何資料儲存器件,無論該器件中的資料是否能夠予以修改。
此外,雖然已在LDPC碼之背景下說明本發明之具體實施例,但本發明並不限於此。本發明之具體實施例可針對可藉由一圖表定義的任何碼(例如,渦輪碼、結構化IRA(Irregular Repeat Accumulate;不規則重複累積)碼)予以實施,因為其係遭受截獲集的圖表定義碼。
雖然在接收對數概度比方面說明本發明,但本發明並不限於此。本發明之具體實施例可以係預想為其中諸如概度比或硬式決策值的其他軟值係處理。
可按用於實施該等方法之方法及裝置的形式來執行本發明。亦可按執行於一諸如磁性記錄媒體、光學記錄媒體、固態記憶體、軟碟、CD-ROM(compact disk-ROM;光碟ROM)、硬碟機或任何其他機器可讀取儲存媒體的可觸媒體內之程式碼的形式來執行本發明,其中當該程式碼係載入一諸如電腦的機器並藉其執行時,該機器成為一用於實施本發明之裝置。亦可按程式碼形式來執行本發明,例如無論是否儲存在一儲存媒體內,載入一機器及/或藉由一機器執行,或透過某一傳輸媒體或載體(例如透過電子佈線或纜接、透過光纖或經由電磁輻射)發射,其中當該程式碼係載入一諸如電腦之機器並藉其執行時,該機器成為一用於實行本發明之裝置。當在一通用處理器上實施時,該程式碼段與該處理器組合以提供一可類似於特定邏輯電路運作之唯一器件。
除非分開明確說明,應將各數值與範圍解釋為係大致的,如該值或範圍之值前面的詞語"大約"或"大致"。
應進一步明白,熟習此項技術者可對已說明及繪示以說明本發明本質的部件之細節、材料及配置進行各種變化而不脫離以下申請專利範圍中表達的本發明之範疇。
在申請專利範圍中使用圖號及/或圖式參考標簽旨在識別所主張標的之一或多個可能具體實施例以便促進申請專利範圍之解釋。此類使用並不係視為必需地將該等請求項之範疇限於對應圖式中顯示的具體實施例。
應明白,不必要求本文提及的範例性方法之步驟係按所述順序執行,並且應明白此類方法之步驟的順序僅係範例性。同樣,在與本發明之各種具體實施例一致的方法中,可將額外步驟包括於此類方法中,並且可省略或組合特定步驟。
雖然以下方法之申請專利範圍中的元件(若存在)係以對應標簽按特定順序來引用,但除非該等申請專利範圍引用以其他方式暗示一特定順序用於實施一些或全部該等元件,該等元件不必旨在限於以該特定順序來實施。
本文中提及的"一項具體實施例"或"一具體實施例"表示結合具體實施例說明的特定功能、結構或特性係包括於本發明至少一具體實施例中。該規格中各處出現的片語"在一具體實施例中"不必全部表示相同具體實施例,分離或替代性具體實施例亦不必與其他具體實施例相互排斥。相同情況亦適用於術語"實施方案"。
100...硬碟(HD)機
102...碟盤
104...讀取通道
106...LDPC編碼器
108...寫入處理器
110...讀取處理器
112...LDPC解碼器
114...路徑
116...輸出
118...信號
200...LDPC H矩陣
202...邊緣
400...離線截獲集(TS)模擬工具
402...LDPC校正碼字(CCW)
404...通道與信號模組
406...Lch
408...LDPC解碼器
410...鄰近碼字(NCW)
412...症狀檢驗模組
414...失配位置記錄器
416...索引
418...索引
420...截獲集(TS)資訊
422...DTS-N編譯器
424...DTS-N資訊
500...LDPC解碼系統
502...LDPC解碼器
504...後處理器
506...TS-RAM更新器
508...PP方法列表
510...TS-ROM
512...B表
514...P表
516...E表
518...EI表
520...TS-RAM
522...RAM P表
524...RAM索引
602...記錄號
604...層
606...USC_INDEX
608...EBN_INDEX
610...截獲集
612...截獲集
614...截獲集
616...截獲集
618...截獲集
620...截獲集
702...記錄號
704...PTABLE_START_OFFSET
706...ETABLE_START_OFFSET
708...NUM_ETABLE_ENTRIES
802...記錄號
804...EITABLE_START_ADDRESS欄位
806...EITABLE_END_ADDRESS欄位
902...記錄號
904...BLOCK_COLUMN欄位
906...B_INDEX欄位
1002...記錄號
1004...TAG欄位
1006...R_WORD欄位
1008...b值子欄位
1010...a值子欄位
1012...LAST_HIT_NUM子欄位
1014...HIT_COUNTER子欄位
1016...LAYER欄位
1018...USC_INDEX欄位
1020...EBN_INDEX欄位
1102...RAM_PTABLE_OFFSET
本發明之其他態樣、特徵及優點可自以上詳細說明、隨附申請專利範圍及附圖而更充分地明白,其中類似參考數字識別類似或相同元件。
圖1係使用LDPC編碼之一典型硬碟(HD)機100之一部分的方塊圖。
圖2(A)說明LDPC H矩陣200,而圖2(B)係H矩陣200之一Tanner圖。
圖3係藉由解碼器112使用的典型LDPC解碼方法300之流程圖。
圖4係用於識別截獲集並記錄關於該等截獲集之各種資訊的一離線截獲集(TS)模擬工具400之方塊圖。
圖5係依據本發明之一具體實施例的一LDPC解碼系統500之方塊圖。
圖6係圖5之ROM P表514之一範例布局。
圖7係圖5之B表512之一範例布局。
圖8係圖5之E表516之一範例布局。
圖9係圖5之EI表518之一範例布局。
圖10係圖5之RAM P表522之一範例布局。
圖11係圖5之RAM索引表524之一範例布局。
圖12係藉由圖5之LDPC解碼系統500使用的範例性程序1200之流程圖。
圖13係藉由圖5之後處理器504實施的圖12之範例性TS-ROM列表解碼程序1206的流程圖。
圖14係圖13之範例性TS-ROM搜尋程序1314的流程圖。
圖15係圖12之範例性TS-RAM列表解碼程序1208的流程圖。
圖16係圖12之範例性TS-RAM更新程序1216的流程圖。
(無元件符號說明)

Claims (13)

  1. 一種用於解碼經編碼資料之方法,該經編碼資料係利用一以圖表為基礎的碼進行編碼,該方法包含:(a)對該經編碼資料實行解碼以產生一候選經解碼碼字;(b)若該候選經解碼碼字並非一經解碼正確碼字,則實行一截獲集(trapping-set)-RAM列表解碼方法以嘗試產生該經解碼正確碼字,其中該截獲集-RAM列表解碼方法存取儲存於RAM記憶體中的一或多個截獲集設定檔(profiles),每一截獲集設定檔對應於一不同截獲集;以及(c)更新該RAM記憶體以儲存一新的截獲集設定檔。
  2. 如請求項1之方法,其中:若該截獲集-RAM列表解碼無法產生該經解碼正確碼字,則步驟(b)進一步包含實行一其他解碼方法以嘗試產生該經解碼正確碼字;以及若該其他解碼方法產生該經解碼正確碼字,則步驟(c)包含基於該候選經解碼碼字與該經解碼正確碼字來產生該新的截獲集設定檔。
  3. 如請求項1之方法,其中該步驟(c)包含:(c1)選擇先前儲存於該RAM記憶體中的一或多個截獲集設定檔以用於清除;(c2)清除來自該RAM記憶體的該等選定之一或多個截獲集設定檔;以及 (c3)將該新的截獲集設定檔儲存於該RAM記憶體中。
  4. 如請求項3之方法,其中步驟(c1)包含基於以下因數之一或多者來選擇用於清除之一截獲集設定檔:(i)自從在先前實行該截獲集-RAM列表解碼方法期間已匹配該選定截獲集設定檔以來,已在先前實行該截獲集-RAM列表解碼方法期間搜尋該RAM記憶體的次數;(ii)自從該選定截獲集設定檔儲存於該RAM記憶體中以來,已在先前實行該截獲集-RAM列表解碼方法期間匹配該選定截獲集設定檔的總次數(例如,HIT_COUNTER);(iii)該選定截獲集設定檔中的未滿足檢驗節點之數目(例如,b);以及(iv)該選定截獲集設定檔中的錯誤位元節點之數目(例如,a)。
  5. 如請求項1之方法,其中每一截獲集設定檔包含:該對應截獲集中的未滿足檢驗節點之數目(例如,b);該對應截獲集中之每一未滿足檢驗節點之識別項(例如,USC_INDEX);以及用於該對應截獲集中之每一未滿足檢驗節點的至少一錯誤位元節點之識別(例如,EBN_INDEX)。
  6. 如請求項5之方法,其中每一截獲集設定檔進一步包含:該對應截獲集中的錯誤位元節點之數目(例如,a); 自從該截獲集設定檔儲存於該RAM記憶體中以來,已在先前實行該截獲集-RAM列表解碼方法期間匹配該截獲集設定檔的總次數(例如,HIT_COUNTER);以及匹配此特定設定檔的截獲集-RAM列表解碼方法之最近實行的數目。
  7. 如請求項1之方法,其中:若該候選經解碼碼字並非該經解碼正確碼字,則該候選經解碼碼字識別一觀察到的截獲集,其包含一組一或多個觀察到的未滿足檢驗節點;且該截獲集-RAM列表解碼方法,其包含:(b1)在整個該RAM記憶體中搜尋匹配該觀察到的截獲集之一儲存的截獲集設定檔;(b2)針對該編碼的資料來修改一或多個錯誤位元節點,其中該一或多個經修改的錯誤位元節點係藉由該匹配的截獲集設定檔來識別;以及(b3)對該經修改的編碼的資料實行解碼。
  8. 如請求項7之方法,其中當該儲存的截獲集設定檔之該一或多個未滿足的檢驗節點與該觀察到的截獲集之該一或多個觀察到的未滿足檢驗節點形成一同形匹配時,該儲存的截獲集設定檔匹配該觀察到的截獲集。
  9. 如請求項1之方法,其進一步包含:(c)基於該等對應截獲集之主導性來排序儲存於該RAM記憶體中之該等截獲集設定檔。
  10. 如請求項9之方法,其中一截獲集之該主導性係基於以 下之一或多者:(i)自從在先前實行該截獲集-RAM列表解碼方法期間已匹配該對應截獲集設定檔以來,已在先前實行該截獲集-RAM列表解碼方法期間搜尋該RAM記憶體的次數(例如,LAST_HIT_NUM);(ii)自從該對應截獲集設定檔儲存於該RAM記憶體中以來,已在先前實行該截獲集-RAM列表解碼方法期間匹配該對應截獲集設定檔的總次數(例如,HIT_COUNTER);(iii)該截獲集中的未滿足檢驗節點之數目(例如,b);以及(iv)該截獲集中的錯誤位元節點之數目(例如,a)。
  11. 如請求項10之方法,其中若(i)自從在先前實行該截獲集-RAM列表解碼方法期間已匹配該第一截獲集設定檔以來已在先前實行該截獲集-RAM列表解碼方法期間搜尋該RAM記憶體的該次數,少於(ii)自從在先前實行該截獲集-RAM列表解碼方法期間已匹配該第二截獲集設定檔以來已在先前實行該截獲集-RAM列表解碼方法期間搜尋該RAM記憶體的該次數,則具有一第一截獲集設定檔之一第一截獲集比具有一第二截獲集設定檔之一第二截獲集更具主導性。
  12. 如請求項1-11任一項之方法,其中該以圖表為基礎的碼係一低密度同位元檢驗碼。
  13. 一種用於解碼經編碼資料之裝置,該經編碼資料利用一 以圖表為基礎的碼進行編碼,該裝置包含:(a)一用以對該經編碼資料實行解碼以產生一候選經解碼碼字之器件;(b)RAM記憶體;(c)一用於若該候選經解碼碼字並非一經解碼正確碼字,則實行一截獲集-RAM列表解碼方法以嘗試產生該經解碼正確碼字之器件,其中該列舉於(c)之該器件存取儲存於該RAM記憶體中的一或多個截獲集設定檔,每一截獲集設定檔對應於一不同截獲集;以及(d)一用於更新該RAM記憶體以儲存一新的截獲集設定檔之器件。
TW098100521A 2008-08-15 2009-01-08 用於解碼經編碼資料之方法及裝置 TWI508460B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US8929708P 2008-08-15 2008-08-15
PCT/US2008/086523 WO2010019168A1 (en) 2008-08-15 2008-12-12 Ram list-decoding of near codewords

Publications (2)

Publication Number Publication Date
TW201008134A TW201008134A (en) 2010-02-16
TWI508460B true TWI508460B (zh) 2015-11-11

Family

ID=41669126

Family Applications (3)

Application Number Title Priority Date Filing Date
TW098100521A TWI508460B (zh) 2008-08-15 2009-01-08 用於解碼經編碼資料之方法及裝置
TW098100523A TWI435211B (zh) 2008-08-15 2009-01-08 鄰近碼字的唯讀記憶體列表解碼
TW098123804A TWI442712B (zh) 2008-08-15 2009-07-14 使用多檢查節點演算法之錯誤更正解碼器

Family Applications After (2)

Application Number Title Priority Date Filing Date
TW098100523A TWI435211B (zh) 2008-08-15 2009-01-08 鄰近碼字的唯讀記憶體列表解碼
TW098123804A TWI442712B (zh) 2008-08-15 2009-07-14 使用多檢查節點演算法之錯誤更正解碼器

Country Status (7)

Country Link
US (17) US8464129B2 (zh)
EP (3) EP2181504A4 (zh)
JP (4) JP5363573B2 (zh)
KR (3) KR101418466B1 (zh)
CN (3) CN101803206B (zh)
TW (3) TWI508460B (zh)
WO (3) WO2010019168A1 (zh)

Families Citing this family (236)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8281212B1 (en) 2007-03-30 2012-10-02 Link—A—Media Devices Corporation Iterative ECC decoder with out of order completion
US7958427B1 (en) * 2007-03-30 2011-06-07 Link—A—Media Devices Corporation ECC with out of order completion
US8418023B2 (en) 2007-05-01 2013-04-09 The Texas A&M University System Low density parity check decoder for irregular LDPC codes
US8127209B1 (en) 2007-07-30 2012-02-28 Marvell International Ltd. QC-LDPC decoder with list-syndrome decoding
US8799742B1 (en) * 2007-07-30 2014-08-05 Marvell International Ltd. QC-LDPC decoder with list-syndrome decoding
US8219878B1 (en) 2007-12-03 2012-07-10 Marvell International Ltd. Post-processing decoder of LDPC codes for improved error floors
US8245104B2 (en) 2008-05-02 2012-08-14 Lsi Corporation Systems and methods for queue based data detection and decoding
US20090319860A1 (en) * 2008-06-23 2009-12-24 Ramot At Tel Aviv University Ltd. Overcoming ldpc trapping sets by decoder reset
US8370711B2 (en) 2008-06-23 2013-02-05 Ramot At Tel Aviv University Ltd. Interruption criteria for block decoding
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
US8464129B2 (en) * 2008-08-15 2013-06-11 Lsi Corporation ROM list-decoding of near codewords
US8185796B2 (en) * 2008-08-20 2012-05-22 Nec Laboratories America, Inc. Mitigation of fiber nonlinearities in multilevel coded-modulation schemes
US8291285B1 (en) * 2008-09-18 2012-10-16 Marvell International Ltd. Circulant processing scheduler for layered LDPC decoder
CN102217200B (zh) * 2008-09-26 2014-08-27 新加坡科技研究局 译码电路及编码电路
US8321772B1 (en) * 2008-10-20 2012-11-27 Link—A—Media Devices Corporation SOVA sharing during LDPC global iteration
US8219873B1 (en) * 2008-10-20 2012-07-10 Link—A—Media Devices Corporation LDPC selective decoding scheduling using a cost function
US8161345B2 (en) 2008-10-29 2012-04-17 Agere Systems Inc. LDPC decoders using fixed and adjustable permutators
TWI469533B (zh) * 2008-11-07 2015-01-11 Realtek Semiconductor Corp 同位檢查碼解碼器及接收系統
US9356623B2 (en) 2008-11-26 2016-05-31 Avago Technologies General Ip (Singapore) Pte. Ltd. LDPC decoder variable node units having fewer adder stages
US8935601B1 (en) 2008-12-03 2015-01-13 Marvell International Ltd. Post-processing methodologies in decoding LDPC codes
US8234556B2 (en) * 2008-12-30 2012-07-31 Intel Corporation Broadcast receiver and method for optimizing a scale factor for a log-likelihood mapper
KR101539002B1 (ko) * 2009-01-02 2015-07-24 삼성전자주식회사 1-비트용 에러 정정 장치 및 그 방법
US8347195B1 (en) * 2009-01-22 2013-01-01 Marvell International Ltd. Systems and methods for near-codeword detection and correction on the fly
US8291299B2 (en) 2009-03-05 2012-10-16 Lsi Corporation Turbo-equalization methods for iterative decoders
JP5432367B2 (ja) * 2009-04-21 2014-03-05 アギア システムズ インコーポレーテッド 書込み検証を使用した符号のエラーフロア軽減
US8578256B2 (en) 2009-04-22 2013-11-05 Agere Systems Llc Low-latency decoder
JP5489552B2 (ja) * 2009-06-19 2014-05-14 三菱電機株式会社 復号方法及び復号装置
US8266505B2 (en) 2009-08-12 2012-09-11 Lsi Corporation Systems and methods for retimed virtual data processing
US8423861B2 (en) 2009-11-19 2013-04-16 Lsi Corporation Subwords coding using different interleaving schemes
US8352847B2 (en) 2009-12-02 2013-01-08 Lsi Corporation Matrix vector multiplication for error-correction encoding and the like
US20110138255A1 (en) * 2009-12-09 2011-06-09 Lee Daniel Chonghwan Probabilistic Learning-Based Decoding of Communication Signals
US20110154168A1 (en) * 2009-12-18 2011-06-23 Electronics And Telecommunications Research Institute Effective high-speed ldpc encoding method and apparatus using the same
US8751912B1 (en) * 2010-01-12 2014-06-10 Marvell International Ltd. Layered low density parity check decoder
US8341486B2 (en) * 2010-03-31 2012-12-25 Silicon Laboratories Inc. Reducing power consumption in an iterative decoder
US8555131B2 (en) 2010-03-31 2013-10-08 Silicon Laboratories Inc. Techniques to control power consumption in an iterative decoder by control of node configurations
US8918696B2 (en) * 2010-04-09 2014-12-23 Sk Hynix Memory Solutions Inc. Implementation of LDPC selective decoding scheduling
US8464142B2 (en) 2010-04-23 2013-06-11 Lsi Corporation Error-correction decoder employing extrinsic message averaging
US8589755B2 (en) * 2010-06-16 2013-11-19 Nec Laboratories America, Inc. Reduced-complexity LDPC decoding
US8555142B2 (en) * 2010-06-22 2013-10-08 Cleversafe, Inc. Verifying integrity of data stored in a dispersed storage memory
US8499226B2 (en) 2010-06-29 2013-07-30 Lsi Corporation Multi-mode layered decoding
US8458555B2 (en) 2010-06-30 2013-06-04 Lsi Corporation Breaking trapping sets using targeted bit adjustment
US8504900B2 (en) 2010-07-02 2013-08-06 Lsi Corporation On-line discovery and filtering of trapping sets
US8621289B2 (en) 2010-07-14 2013-12-31 Lsi Corporation Local and global interleaving/de-interleaving on values in an information word
US8650457B1 (en) * 2010-09-03 2014-02-11 Marvell International Ltd. Methods and systems for reconfigurable LDPC decoders
US8681439B2 (en) 2010-09-13 2014-03-25 Lsi Corporation Systems and methods for handling sector gaps in inter-track interference compensation
CN103119563B (zh) * 2010-09-29 2016-03-23 国际商业机器公司 在固态存储器设备中的解码
US8385014B2 (en) 2010-10-11 2013-02-26 Lsi Corporation Systems and methods for identifying potential media failure
US8560930B2 (en) 2010-10-11 2013-10-15 Lsi Corporation Systems and methods for multi-level quasi-cyclic low density parity check codes
JP5310701B2 (ja) * 2010-10-29 2013-10-09 株式会社Jvcケンウッド 復号装置および復号方法
US8549387B2 (en) * 2010-11-04 2013-10-01 Himax Media Solutions, Inc. System and method of decoding LDPC code blocks
JP2012124888A (ja) * 2010-11-15 2012-06-28 Fujitsu Ltd 復号装置及び復号方法
US8566379B2 (en) 2010-11-17 2013-10-22 Lsi Corporation Systems and methods for self tuning target adaptation
US8810940B2 (en) 2011-02-07 2014-08-19 Lsi Corporation Systems and methods for off track error recovery
US8699167B2 (en) 2011-02-16 2014-04-15 Lsi Corporation Systems and methods for data detection using distance based tuning
US8446683B2 (en) 2011-02-22 2013-05-21 Lsi Corporation Systems and methods for data pre-coding calibration
US8918694B2 (en) * 2011-02-28 2014-12-23 Clariphy Communications, Inc. Non-concatenated FEC codes for ultra-high speed optical transport networks
US10063262B2 (en) * 2011-02-28 2018-08-28 Inphi Corporation Non-concatenated FEC codes for ultra-high speed optical transport networks
US10103751B2 (en) * 2011-02-28 2018-10-16 Inphi Corporation Non-concatenated FEC codes for ultra-high speed optical transport networks
US8890862B2 (en) * 2011-03-14 2014-11-18 Ecole Centrale Paris Method and device for efficient parallel message computation for map inference
US8693120B2 (en) 2011-03-17 2014-04-08 Lsi Corporation Systems and methods for sample averaging in data processing
US8854753B2 (en) 2011-03-17 2014-10-07 Lsi Corporation Systems and methods for auto scaling in a data processing system
US8656245B2 (en) * 2011-04-13 2014-02-18 California Institute Of Technology Method of error floor mitigation in low-density parity-check codes
US8611033B2 (en) 2011-04-15 2013-12-17 Lsi Corporation Systems and methods for selective decoder input data processing
US8670955B2 (en) 2011-04-15 2014-03-11 Lsi Corporation Systems and methods for reliability assisted noise predictive filtering
US8887034B2 (en) 2011-04-15 2014-11-11 Lsi Corporation Systems and methods for short media defect detection
US8806309B2 (en) * 2011-06-13 2014-08-12 Silicon Motion Inc. Method for controlling message-passing algorithm based decoding operation by referring to statistics data of syndromes of executed iterations and related control apparatus thereof
US8499231B2 (en) 2011-06-24 2013-07-30 Lsi Corporation Systems and methods for reduced format non-binary decoding
US8566665B2 (en) 2011-06-24 2013-10-22 Lsi Corporation Systems and methods for error correction using low density parity check codes using multiple layer check equations
US8560929B2 (en) 2011-06-24 2013-10-15 Lsi Corporation Systems and methods for non-binary decoding
US8830613B2 (en) 2011-07-19 2014-09-09 Lsi Corporation Storage media inter-track interference cancellation
US8819527B2 (en) 2011-07-19 2014-08-26 Lsi Corporation Systems and methods for mitigating stubborn errors in a data processing system
US8879182B2 (en) 2011-07-19 2014-11-04 Lsi Corporation Storage media inter-track interference cancellation
JP2013029882A (ja) * 2011-07-26 2013-02-07 Toshiba Corp メモリコントローラ、半導体記憶装置および復号方法
US9270297B2 (en) 2011-07-31 2016-02-23 SanDisk Technologies, Inc. Error-correction decoding with reduced memory and power requirements
US8645810B2 (en) 2011-07-31 2014-02-04 Sandisk Technologies Inc. Fast detection of convergence or divergence in iterative decoding
US8854754B2 (en) 2011-08-19 2014-10-07 Lsi Corporation Systems and methods for local iteration adjustment
US8539328B2 (en) 2011-08-19 2013-09-17 Lsi Corporation Systems and methods for noise injection driven parameter selection
US9026572B2 (en) 2011-08-29 2015-05-05 Lsi Corporation Systems and methods for anti-causal noise predictive filtering in a data channel
US8656249B2 (en) 2011-09-07 2014-02-18 Lsi Corporation Multi-level LDPC layer decoder
US8661324B2 (en) 2011-09-08 2014-02-25 Lsi Corporation Systems and methods for non-binary decoding biasing control
US8681441B2 (en) 2011-09-08 2014-03-25 Lsi Corporation Systems and methods for generating predictable degradation bias
US8850276B2 (en) 2011-09-22 2014-09-30 Lsi Corporation Systems and methods for efficient data shuffling in a data processing system
US8767333B2 (en) 2011-09-22 2014-07-01 Lsi Corporation Systems and methods for pattern dependent target adaptation
US8479086B2 (en) 2011-10-03 2013-07-02 Lsi Corporation Systems and methods for efficient parameter modification
US8578241B2 (en) 2011-10-10 2013-11-05 Lsi Corporation Systems and methods for parity sharing data processing
US8689062B2 (en) 2011-10-03 2014-04-01 Lsi Corporation Systems and methods for parameter selection using reliability information
US8862960B2 (en) 2011-10-10 2014-10-14 Lsi Corporation Systems and methods for parity shared data encoding
US8443271B1 (en) 2011-10-28 2013-05-14 Lsi Corporation Systems and methods for dual process data decoding
US8683309B2 (en) 2011-10-28 2014-03-25 Lsi Corporation Systems and methods for ambiguity based decode algorithm modification
US8527858B2 (en) 2011-10-28 2013-09-03 Lsi Corporation Systems and methods for selective decode algorithm modification
US8768990B2 (en) 2011-11-11 2014-07-01 Lsi Corporation Reconfigurable cyclic shifter arrangement
US8531320B2 (en) 2011-11-14 2013-09-10 Lsi Corporation Systems and methods for memory efficient data decoding
US8751913B2 (en) 2011-11-14 2014-06-10 Lsi Corporation Systems and methods for reduced power multi-layer data decoding
JP5772622B2 (ja) * 2012-01-20 2015-09-02 株式会社Jvcケンウッド 復号装置および復号方法
US20130198582A1 (en) * 2012-01-30 2013-08-01 Broadcom Corporation Supercharged codes
US8850295B2 (en) 2012-02-01 2014-09-30 Lsi Corporation Symbol flipping data processor
US8918704B2 (en) 2012-03-15 2014-12-23 David Declercq Decoding method and apparatus for non-binary, low-density, parity check codes
US8977937B2 (en) * 2012-03-16 2015-03-10 Lsi Corporation Systems and methods for compression driven variable rate decoding in a data processing system
JP2013198017A (ja) * 2012-03-21 2013-09-30 Toshiba Corp 復号装置及び通信装置
US8949704B2 (en) 2012-03-22 2015-02-03 Lsi Corporation Systems and methods for mis-correction correction in a data processing system
TWI549487B (zh) 2012-04-15 2016-09-11 三星電子股份有限公司 對視訊進行解碼的方法
US8782487B2 (en) 2012-04-18 2014-07-15 Lsi Corporation Systems and methods for locating and correcting decoder mis-corrections
US8782488B2 (en) 2012-04-20 2014-07-15 Lsi Corporation Systems and methods for back step data decoding
US8879647B2 (en) * 2012-04-26 2014-11-04 Alcatel Lucent Methods of allocating resources in a system and systems implementing the same
US8739004B2 (en) * 2012-05-10 2014-05-27 Lsi Corporation Symbol flipping LDPC decoding system
US8736998B2 (en) * 2012-05-17 2014-05-27 Lsi Corporation Systems and methods for symbol re-grouping decoding processing
US8832532B2 (en) * 2012-06-20 2014-09-09 Lsi Corporation Dynamically controlling the number of local iterations in an iterative decoder
JP5591876B2 (ja) * 2012-06-22 2014-09-17 株式会社東芝 誤り訂正装置、誤り訂正方法およびプログラム
US8781033B2 (en) 2012-06-26 2014-07-15 Lsi Corporation Apparatus and method for breaking trapping sets
US8689076B2 (en) * 2012-07-02 2014-04-01 Lsi Corporation Systems and methods for enhanced bit correlation usage
CN103532568A (zh) * 2012-07-03 2014-01-22 联咏科技股份有限公司 迭代译码装置及其相关译码方法
US8640002B1 (en) * 2012-07-10 2014-01-28 Micron Technology, Inc. Resolving trapping sets
US10797728B1 (en) * 2012-07-25 2020-10-06 Marvell Asia Pte, Ltd. Systems and methods for diversity bit-flipping decoding of low-density parity-check codes
RU2012135285A (ru) 2012-08-16 2014-02-27 ЭлЭсАй Корпорейшн Ускоритель для средства проектирования и моделирования канала считывания записи
US9015547B2 (en) * 2012-08-17 2015-04-21 Lsi Corporation Multi-level LDPC layered decoder with out-of-order processing
US9203432B2 (en) * 2012-08-28 2015-12-01 Marvell World Trade Ltd. Symbol flipping decoders of non-binary low-density parity check (LDPC) codes
US8972832B2 (en) * 2012-09-04 2015-03-03 Lsi Corporation Optimized scheme and architecture of hard drive queue design
US8977924B2 (en) * 2012-09-10 2015-03-10 Lsi Corporation Optimized mechanism to simplify the circulant shifter and the P/Q kick out for layered LDPC decoder
RU2012139074A (ru) * 2012-09-12 2014-03-20 ЭлЭсАй Корпорейшн Инструмент для проектирования и моделирования канала считывания, имеющий модуль классификации кодовых слов
US8949702B2 (en) * 2012-09-14 2015-02-03 Lsi Corporation Systems and methods for detector side trapping set mitigation
US20140082449A1 (en) * 2012-09-18 2014-03-20 Fan Zhang LDPC Decoder With Variable Node Hardening
US8914710B2 (en) 2012-09-27 2014-12-16 Apple Inc. Soft message-passing decoder with efficient message computation
US8977926B2 (en) 2012-09-28 2015-03-10 Lsi Corporation Modified targeted symbol flipping for non-binary LDPC codes
US8862962B2 (en) 2012-10-03 2014-10-14 Lsi Corporation Layered decoder enhancement for retained sector reprocessing
US9112539B2 (en) 2012-10-18 2015-08-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for iterative data processing using feedback iteration
US9219504B2 (en) * 2012-10-29 2015-12-22 Avago Technologies General Ip (Singapore) Pte. Ltd. LEH memory module architecture design in the multi-level LDPC coded iterative system
US9037938B2 (en) * 2012-10-30 2015-05-19 Avago Technologies General Ip (Singapore) Pte. Ltd. Hardware architecture and implementation of low power layered multi-level LDPC decoder
RU2012146685A (ru) 2012-11-01 2014-05-10 ЭлЭсАй Корпорейшн База данных наборов-ловушек для декодера на основе разреженного контроля четности
US9191256B2 (en) * 2012-12-03 2015-11-17 Digital PowerRadio, LLC Systems and methods for advanced iterative decoding and channel estimation of concatenated coding systems
US8724243B1 (en) 2012-12-07 2014-05-13 Lsi Corporation Systems and methods for run length limited encoding
US8996969B2 (en) 2012-12-08 2015-03-31 Lsi Corporation Low density parity check decoder with miscorrection handling
US9619317B1 (en) * 2012-12-18 2017-04-11 Western Digital Technologies, Inc. Decoder having early decoding termination detection
US8977939B2 (en) * 2012-12-21 2015-03-10 Lsi Corporation Majority-tabular post processing of quasi-cyclic low-density parity-check codes
JP2014147029A (ja) * 2013-01-30 2014-08-14 Nippon Hoso Kyokai <Nhk> Mimo−ofdm受信装置及びプログラム
US9037952B2 (en) * 2013-02-06 2015-05-19 Avago Technologies General Ip (Singapore) Pte. Ltd. Memory architecture for layered low-density parity-check decoder
CN103970619B (zh) * 2013-02-06 2017-09-29 东芝存储器株式会社 控制器
US9214959B2 (en) 2013-02-19 2015-12-15 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for skip layer data decoding
US9059742B1 (en) 2013-03-15 2015-06-16 Western Digital Technologies, Inc. System and method for dynamic scaling of LDPC decoder in a solid state drive
US9407290B2 (en) 2013-03-15 2016-08-02 Sandisk Technologies Llc Error-correction decoding with conditional limiting of check-node messages
US9513989B2 (en) 2013-03-26 2016-12-06 Seagate Technology Llc Priori information based post-processing in low-density parity-check code decoders
KR101913900B1 (ko) 2013-04-30 2018-10-31 웨스턴 디지털 테크놀로지스, 인코포레이티드 조기 디코딩 종료 검출을 갖는 디코더
US9274889B2 (en) 2013-05-29 2016-03-01 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for data processing using global iteration result reuse
US8959414B2 (en) 2013-06-13 2015-02-17 Lsi Corporation Systems and methods for hybrid layer data decoding
US8917466B1 (en) 2013-07-17 2014-12-23 Lsi Corporation Systems and methods for governing in-flight data sets in a data processing system
US8817404B1 (en) 2013-07-18 2014-08-26 Lsi Corporation Systems and methods for data processing control
US9196299B2 (en) 2013-08-23 2015-11-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for enhanced data encoding and decoding
US9094046B2 (en) 2013-09-03 2015-07-28 Lsi Corporation Systems and methods for variable sector count spreading and de-spreading
US8976471B1 (en) 2013-09-05 2015-03-10 Lsi Corporation Systems and methods for two stage tone reduction
US9298720B2 (en) 2013-09-17 2016-03-29 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for fragmented data recovery
US9219503B2 (en) 2013-10-16 2015-12-22 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for multi-algorithm concatenation encoding and decoding
US9189333B2 (en) 2013-10-17 2015-11-17 Seagate Technology Llc Generating soft decoding information for flash memory error correction using hard decision patterns
US9436550B2 (en) 2013-10-31 2016-09-06 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for internal disk drive data compression
US9323606B2 (en) 2013-11-21 2016-04-26 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for FAID follower decoding
US9306600B2 (en) 2014-01-06 2016-04-05 Micron Technology, Inc. Read threshold calibration for LDPC
CN104834476B (zh) 2014-02-10 2016-10-19 安华高科技通用Ip(新加坡)公司 基于段结束标记的数据对准的系统和方法
RU2014104571A (ru) 2014-02-10 2015-08-20 ЭлЭсАй Корпорейшн Системы и способы для эффективного с точки зрения площади кодирования данных
KR102194136B1 (ko) * 2014-03-12 2020-12-22 삼성전자주식회사 비이진 ldpc 부호를 이용한 이동 통신 시스템에서 오류 정정 장치 및 방법
US9564922B1 (en) 2014-03-19 2017-02-07 Microsemi Storage Solutions (U.S.), Inc. Error correction code decoder with stochastic floor mitigation
US9378765B2 (en) 2014-04-03 2016-06-28 Seagate Technology Llc Systems and methods for differential message scaling in a decoding process
US9602141B2 (en) * 2014-04-21 2017-03-21 Sandisk Technologies Llc High-speed multi-block-row layered decoder for low density parity check (LDPC) codes
US9748973B2 (en) 2014-04-22 2017-08-29 Sandisk Technologies Llc Interleaved layered decoder for low-density parity check codes
US9503125B2 (en) * 2014-05-08 2016-11-22 Sandisk Technologies Llc Modified trellis-based min-max decoder for non-binary low-density parity-check error-correcting codes
TWI551058B (zh) * 2014-05-09 2016-09-21 衡宇科技股份有限公司 最小-總和演算法之低密度奇偶校驗碼解碼器及其解碼方法
US9184954B1 (en) 2014-07-02 2015-11-10 Seagate Technology Llc Systems and methods for directed soft data perturbation in layered decoding
US10084479B2 (en) * 2014-07-07 2018-09-25 Toshiba Memory Corporation Low BER hard-decision LDPC decoder
KR20160046467A (ko) 2014-10-21 2016-04-29 에스케이하이닉스 주식회사 컨트롤러, 반도체 메모리 시스템, 데이터 저장 시스템 및 그것의 동작 방법
US10372528B1 (en) * 2014-12-15 2019-08-06 Seagate Technology Llc Random values from data errors
US9602133B1 (en) 2015-01-27 2017-03-21 Microsemi Storage Solutions (U.S.), Inc. System and method for boost floor mitigation
KR20160102738A (ko) * 2015-02-23 2016-08-31 에스케이하이닉스 주식회사 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법
TWI578714B (zh) * 2015-04-02 2017-04-11 國立清華大學 低密度奇偶檢查碼解碼方法及用於該解碼方法的資訊儲存方法
US9384761B1 (en) 2015-04-09 2016-07-05 Avago Technologies General Ip (Singapore) Pte. Ltd. Systems and methods for flexible variable code rate support
US10567008B2 (en) * 2015-07-02 2020-02-18 Apple Inc. Stopping criteria for turbo decoder
KR20170050935A (ko) 2015-11-02 2017-05-11 에스케이하이닉스 주식회사 온 칩 ecc 회로를 포함하는 메모리 장치 및 시스템
KR20170051039A (ko) 2015-11-02 2017-05-11 에스케이하이닉스 주식회사 반도체 장치 및 그 구동 방법
US9793924B1 (en) 2015-12-04 2017-10-17 Microsemi Solutions (U.S.), Inc. Method and system for estimating an expectation of forward error correction decoder convergence
US20170288697A1 (en) * 2016-03-31 2017-10-05 Silicon Motion Inc. Ldpc shuffle decoder with initialization circuit comprising ordered set memory
KR20180009558A (ko) 2016-07-19 2018-01-29 삼성전자주식회사 저밀도-패리티 체크 코드를 이용하는 디코더 및 이를 포함하는 메모리 컨트롤러
KR102559925B1 (ko) * 2016-07-21 2023-07-26 에스케이하이닉스 주식회사 Ldpc 디코더, 반도체 메모리 시스템 및 그것의 동작 방법
KR102568716B1 (ko) * 2016-08-02 2023-08-21 삼성전자주식회사 Ldpc 코드의 디코딩을 위한 장치 및 방법
US10565040B2 (en) 2016-12-01 2020-02-18 Western Digital Technologies, Inc. ECC decoder with selective component disabling based on decoding message resolution
US10530393B2 (en) 2016-12-01 2020-01-07 Western Digital Technologies, Inc. Configurable ECC decoder
US10218384B2 (en) 2016-12-01 2019-02-26 Sandisk Technologies Llc ECC decoder with multiple decoding modes
US10534836B2 (en) * 2016-12-06 2020-01-14 Gsi Technology Inc. Four steps associative full adder
US10050643B2 (en) * 2016-12-14 2018-08-14 Via Technologies, Inc. Low-density parity-check apparatus and operation method thereof
TWI632780B (zh) 2016-12-30 2018-08-11 慧榮科技股份有限公司 解碼方法與相關解碼裝置
WO2018128559A1 (en) * 2017-01-09 2018-07-12 Huawei Technologies Co., Ltd. Efficiently decodable qc-ldpc code
US10355712B2 (en) * 2017-03-31 2019-07-16 Sandisk Technologies Llc Use of multiple codebooks for programming data in different memory areas of a storage device
US10263640B2 (en) * 2017-04-04 2019-04-16 Seagate Technology Llc Low density parity check (LDPC) decoder with pre-saturation compensation
US20190058529A1 (en) * 2017-04-08 2019-02-21 Yahong Rosa Zheng Turbo receivers for single-input single-output underwater acoustic communications
US10637586B2 (en) 2017-08-25 2020-04-28 National Science Foundation Turbo receivers for multiple-input multiple-output underwater acoustic communications
US10447301B2 (en) * 2017-09-13 2019-10-15 Toshiba Memory Corporation Optimal LDPC bit flip decision
US10700706B2 (en) * 2017-09-22 2020-06-30 SK Hynix Inc. Memory system with decoders and method of operating such memory system and decoders
US10680647B2 (en) * 2017-09-25 2020-06-09 SK Hynix Inc. Min-sum decoding for LDPC codes
CN107528597B (zh) * 2017-09-25 2020-12-08 桂林电子科技大学 一种基于crc校验码的ldpc码后处理译码方法
US10574274B2 (en) * 2017-09-29 2020-02-25 Nyquist Semiconductor Limited Systems and methods for decoding error correcting codes
US10523400B2 (en) 2017-11-20 2019-12-31 Nokia Technologies Oy Multi-code probabilistic signal shaping using frequency-division multiplexing
US10091046B1 (en) 2017-11-20 2018-10-02 Nokia Technologies Oy Joint use of probabilistic signal shaping and forward error correction
US10417089B2 (en) 2018-02-13 2019-09-17 Western Digital Technologies, Inc. Data storage device extending erasures for LDPC-type decoding
US11115062B2 (en) * 2018-03-16 2021-09-07 SK Hynix Inc. Memory system with adaptive threshold decoding and method of operating such memory system
US10200231B1 (en) 2018-03-22 2019-02-05 Nokia Technologies Oy Partial probabilistic signal shaping
KR20190115816A (ko) 2018-04-04 2019-10-14 고인석 규격화 된 블록을 이용한 비닐 하우스 구조물과 시공법
US10592334B2 (en) 2018-05-17 2020-03-17 Western Digital Technologies, Inc. Data storage device emphasizing parity sector processing of un-converged codewords
US10530390B2 (en) 2018-05-17 2020-01-07 Western Digital Technologies, Inc. Data storage device employing memory efficient processing of un-converged codewords
US10606699B2 (en) 2018-05-17 2020-03-31 Western Digital Technologies, Inc. Data storage device employing multi-level parity sectors for data recovery procedure
US11055171B2 (en) 2018-05-17 2021-07-06 Western Digital Technologies, Inc. Data storage device employing multi-level parity sectors for data recovery procedure
US10761927B2 (en) 2018-07-16 2020-09-01 Taiwan Semiconductor Manufacturing Co., Ltd. Detection and correction of data bit errors using error correction codes
US10944504B2 (en) 2018-08-02 2021-03-09 Nokia Solutions And Networks Oy Transmission of probabilistically shaped amplitudes using partially anti-symmetric amplitude labels
CN109361403A (zh) * 2018-08-06 2019-02-19 建荣半导体(深圳)有限公司 Ldpc译码方法、ldpc译码器及其存储设备
US10848182B2 (en) * 2018-09-13 2020-11-24 Apple Inc. Iterative decoding with early termination criterion that permits errors in redundancy part
KR102582326B1 (ko) * 2018-09-20 2023-09-26 에스케이하이닉스 주식회사 에러 정정 회로 및 이의 동작 방법
KR102592870B1 (ko) * 2018-10-12 2023-10-24 에스케이하이닉스 주식회사 에러 정정 회로 및 이의 동작 방법
GB2580160B (en) 2018-12-21 2021-01-06 Graphcore Ltd Hardware module for converting numbers
CN109739689B (zh) * 2018-12-25 2023-03-14 四川效率源信息安全技术股份有限公司 一种雕复SQL Server数据库文件的方法
US10892777B2 (en) 2019-02-06 2021-01-12 Seagate Technology Llc Fast error recovery with error correction code (ECC) syndrome weight assist
CN109921802B (zh) * 2019-02-26 2023-02-07 北京中科晶上科技股份有限公司 一种qc-ldpc码的译码方法、模块及装置
US10630313B1 (en) 2019-03-12 2020-04-21 Microsoft Technology Licensing, Llc High efficiency data decoder
US10666291B1 (en) 2019-03-12 2020-05-26 Microsoft Technology Licensing, Llc High efficiency data decoder
KR102588969B1 (ko) * 2019-03-19 2023-10-16 에스케이하이닉스 주식회사 오류 정정 디코더 및 이를 포함하는 메모리 시스템
US11146289B2 (en) 2019-03-29 2021-10-12 Intel Corporation Techniques to use intrinsic information for a bit-flipping error correction control decoder
KR20200124054A (ko) 2019-04-23 2020-11-02 에스케이하이닉스 주식회사 오류 정정 디코더 및 이를 포함하는 메모리 시스템
US11032023B1 (en) * 2019-05-21 2021-06-08 Tarana Wireless, Inc. Methods for creating check codes, and systems for wireless communication using check codes
US11063607B2 (en) * 2019-05-24 2021-07-13 Intel Corporation Compressing error vectors for decoding logic to store compressed in a decoder memory used by the decoding logic
US11159175B2 (en) * 2019-06-21 2021-10-26 Intel Corporation Non-uniform iteration-dependent min-sum scaling factors for improved performance of spatially-coupled LDPC codes
US11088707B2 (en) 2019-06-29 2021-08-10 Intel Corporation Low density parity check (LDPC) decoder architecture with check node storage (CNS) or bounded circulant
US11768701B2 (en) * 2019-09-17 2023-09-26 Western Digital Technologies, Inc. Exception analysis for data storage devices
TWI705667B (zh) * 2019-09-20 2020-09-21 慧榮科技股份有限公司 產生具有符合所需之錯誤基數的低密度奇偶校驗碼的方法及裝置
US11424766B1 (en) 2020-01-31 2022-08-23 Marvell Asia Pte Ltd. Method and device for energy-efficient decoders
US11456757B2 (en) * 2020-12-16 2022-09-27 SK Hynix Inc. Oscillation detection and mitigation in bit-flipping decoders
US11515891B2 (en) 2020-12-22 2022-11-29 Intel Corporation Application of low-density parity-check codes with codeword segmentation
CN112865812B (zh) * 2021-01-18 2022-09-30 武汉梦芯科技有限公司 一种多元ldpc译码方法、计算机存储介质及计算机
CN113098531B (zh) * 2021-04-19 2022-04-29 中南林业科技大学 一种基于最小和译码框架的动态偏移补偿方法
US11621727B2 (en) 2021-06-04 2023-04-04 SK Hynix Inc. Decoding systems and methods for local reinforcement
DE112022002131T5 (de) 2021-09-28 2024-04-11 Microchip Technology Inc. Ldpc-dekodierung mit trapped-block-management
US11626889B1 (en) * 2021-11-16 2023-04-11 L3Harris Technologies, Inc. Partial update sharing in joint LDPC decoding and ancillary processors
EP4216443A1 (en) 2022-01-25 2023-07-26 Nokia Solutions and Networks Oy Reduced-power ldpc decoding
CN115882873B (zh) * 2023-02-23 2023-05-23 成都星联芯通科技有限公司 低密度奇偶校验码译码方法、装置、通信设备及存储介质

Family Cites Families (185)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3260840A (en) * 1961-12-28 1966-07-12 Ibm Variable mode arithmetic circuits with carry select
GB1245441A (en) * 1968-08-27 1971-09-08 Int Computers Ltd Improvements in or relating to adders operating on variable fields within words
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
US4109310A (en) * 1973-08-06 1978-08-22 Xerox Corporation Variable field length addressing system having data byte interchange
US4021655A (en) * 1976-03-30 1977-05-03 International Business Machines Corporation Oversized data detection hardware for data processors which store data at variable length destinations
US4295218A (en) 1979-06-25 1981-10-13 Regents Of The University Of California Error-correcting coding system
JPS6046448B2 (ja) * 1980-07-11 1985-10-16 株式会社日立製作所 オ−バフロ−検出方式
JPS5892036A (ja) * 1981-11-27 1983-06-01 Toshiba Corp 加算回路
JPS58225422A (ja) * 1982-06-25 1983-12-27 Toshiba Corp デ−タ制御装置
US4536855A (en) * 1982-12-23 1985-08-20 International Telephone And Telegraph Corporation Impedance restoration for fast carry propagation
US4707800A (en) * 1985-03-04 1987-11-17 Raytheon Company Adder/substractor for variable length numbers
JPS61239327A (ja) * 1985-04-16 1986-10-24 Nec Corp オ−バフロ−検出方式
US4914617A (en) * 1987-06-26 1990-04-03 International Business Machines Corporation High performance parallel binary byte adder
CA1305768C (en) 1987-11-16 1992-07-28 Masanobu Arai Digital signal receiving circuit with means for controlling a baud rate sampling phase by a power of sampled signals
US5189636A (en) * 1987-11-16 1993-02-23 Intel Corporation Dual mode combining circuitry
GB8904392D0 (en) * 1989-02-27 1989-04-12 Ibm An arithmetic logic unit for a graphics processor
FR2693287B1 (fr) * 1992-07-03 1994-09-09 Sgs Thomson Microelectronics Sa Procédé pour effectuer des calculs numériques, et unité arithmétique pour la mise en Óoeuvre de ce procédé.
JP3187539B2 (ja) * 1992-07-28 2001-07-11 株式会社東芝 データ転送装置
US5224166A (en) * 1992-08-11 1993-06-29 International Business Machines Corporation System for seamless processing of encrypted and non-encrypted data and instructions
US5327369A (en) * 1993-03-31 1994-07-05 Intel Corporation Digital adder and method for adding 64-bit, 16-bit and 8-bit words
US5883824A (en) * 1993-11-29 1999-03-16 Hewlett-Packard Company Parallel adding and averaging circuit and method
US5390135A (en) * 1993-11-29 1995-02-14 Hewlett-Packard Parallel shift and add circuit and method
JP3428741B2 (ja) * 1994-02-14 2003-07-22 松下電器産業株式会社 演算装置とアドレス発生装置及びプログラム制御装置
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 日本電気株式会社 演算処理装置および演算処理方法
US6334136B1 (en) * 1997-12-11 2001-12-25 Intrinsity, Inc. Dynamic 3-level partial result merge adder
FR2775531B1 (fr) * 1998-02-27 2001-10-12 Sgs Thomson Microelectronics Additionneur numerique rapide
US6038166A (en) * 1998-04-01 2000-03-14 Invox Technology High resolution multi-bit-per-cell memory
US6550023B1 (en) * 1998-10-19 2003-04-15 Hewlett Packard Development Company, L.P. On-the-fly memory testing and automatic generation of bitmaps
EP1030457B1 (en) * 1999-02-18 2012-08-08 Imec Methods and system architectures for turbo decoding
US6678843B2 (en) 1999-02-18 2004-01-13 Interuniversitair Microelektronics Centrum (Imec) Method and apparatus for interleaving, deinterleaving and combined interleaving-deinterleaving
US6449629B1 (en) * 1999-05-12 2002-09-10 Agere Systems Guardian Corp. Three input split-adder
US7467744B1 (en) 1999-11-30 2008-12-23 Diebold, Incorporated Check accepting and cash dispensing automated banking machine system and method
DE50015839D1 (zh) * 1999-12-02 2010-02-25 Infineon Technologies Ag
JP2001251384A (ja) * 2000-03-08 2001-09-14 Sanyo Electric Co Ltd 通信装置および通信方法
US6728932B1 (en) * 2000-03-22 2004-04-27 Hewlett-Packard Development Company, L.P. Document clustering method and system
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
US6971881B2 (en) 2000-05-11 2005-12-06 Thomas J Reynolds Interactive method and system for teaching decision making
US6745157B1 (en) * 2000-06-02 2004-06-01 Mitsubishi Electric Research Laboratories, Inc Super-node normalized belief propagation for probabilistic systems
US6910000B1 (en) * 2000-06-02 2005-06-21 Mitsubishi Electric Research Labs, Inc. Generalized belief propagation for probabilistic systems
JP2002099447A (ja) * 2000-09-22 2002-04-05 Fujitsu Ltd プロセッサ
JP2002111512A (ja) * 2000-09-29 2002-04-12 Sony Corp 復号装置及び方法、並びにデータ受信装置及び方法
WO2002059584A2 (en) 2000-12-29 2002-08-01 Chromagen, Inc. Scanning spectrophotometer for high throughput fluorescence detection
US6950977B2 (en) 2001-03-15 2005-09-27 3G.Com, Inc. Mechanism for turbo decoding when CRC for partial blocks is provided
WO2003036857A1 (en) * 2001-10-24 2003-05-01 Nokia Corporation Ciphering as a part of the multicast cencept
US7219118B2 (en) * 2001-11-06 2007-05-15 Broadcom Corporation SIMD addition circuit
WO2003077083A2 (en) * 2002-03-13 2003-09-18 Matsushita Electric Industrial Co., Ltd. Secure device for preventing unauthorised use of distributed content
JP3743509B2 (ja) * 2002-03-20 2006-02-08 セイコーエプソン株式会社 データ転送制御装置及び電子機器
FI114347B (fi) * 2002-03-20 2004-09-30 Master S Innovations Ltd Oy Menetelmä ja laitteisto datan kääntämiseksi
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 株式会社東芝 ディスク記憶装置、ディスクコントローラ及び同装置に適用するエラー訂正方法
RU2300844C2 (ru) * 2002-06-18 2007-06-10 Ооо "Крейф" Персональный криптозащитный комплекс
US7089481B2 (en) * 2002-07-22 2006-08-08 Agere Systems Inc. High speed arithmetic operations for use in turbo decoders
CN1498009A (zh) * 2002-09-30 2004-05-19 ��ʽ���綫֥ 无线通信终端
WO2004049578A1 (en) * 2002-11-27 2004-06-10 Koninklijke Philips Electronics N.V. Running minimum message passing ldpc decoding
JP4062435B2 (ja) * 2002-12-03 2008-03-19 日本電気株式会社 誤り訂正符号復号装置
US7296216B2 (en) 2003-01-23 2007-11-13 Broadcom Corporation Stopping and/or reducing oscillations in low density parity check (LDPC) decoding
KR100516548B1 (ko) * 2003-02-05 2005-09-22 삼성전자주식회사 이동 통신 시스템에서 최적화된 암호화 함수를 설계하는방법과 최적화된 암호화 장치
US7131055B2 (en) * 2003-02-25 2006-10-31 Intel Corporation Fast bit-parallel Viterbi decoder add-compare-select circuit
CA2516541A1 (en) * 2003-02-26 2004-09-16 Flarion Technologies, Inc. Soft information scaling for iterative decoding
US20070234178A1 (en) 2003-02-26 2007-10-04 Qualcomm Incorporated Soft information scaling for interactive decoding
JP2004288091A (ja) * 2003-03-25 2004-10-14 Fuji Xerox Co Ltd 情報処理装置及び方法
US20040226029A1 (en) * 2003-05-09 2004-11-11 Gelme Andrew Anthony Interface for distributed objects and development platform therefor
US7415115B2 (en) * 2003-05-14 2008-08-19 Broadcom Corporation Method and system for disaster recovery of data from a storage device
JP3927521B2 (ja) * 2003-06-27 2007-06-13 株式会社日立国際電気 送信機
US7409477B2 (en) * 2003-09-03 2008-08-05 Hewlett-Packard Development Company, L.P. Memory card having a processor coupled between host interface and second interface wherein internal storage code provides a generic interface between host interface and processor
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
WO2005064841A1 (en) * 2003-12-30 2005-07-14 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
JP4521633B2 (ja) 2004-03-12 2010-08-11 直樹 末広 符号分割多重信号の相関分離識別方式
JP3891186B2 (ja) * 2004-03-22 2007-03-14 住友電気工業株式会社 復号装置および前処理装置
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
WO2006006835A1 (en) * 2004-07-15 2006-01-19 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
JP4321394B2 (ja) 2004-07-21 2009-08-26 富士通株式会社 符号化装置、復号装置
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许可公司 用于多输入多输出通道的低密度奇偶校验码的码设计与实现的改进
US8046662B2 (en) * 2004-08-20 2011-10-25 Broadcom Corporation Method and system for decoding control data in GSM-based systems using inherent redundancy
WO2006039801A1 (en) * 2004-10-12 2006-04-20 Nortel Networks Limited System and method for low density parity check encoding of data
US7760880B2 (en) * 2004-10-13 2010-07-20 Viasat, Inc. Decoder architecture system and method
KR100703271B1 (ko) * 2004-11-23 2007-04-03 삼성전자주식회사 통합노드 프로세싱을 이용한 저밀도 패리티 검사 코드복호 방법 및 장치
GB2421676B (en) * 2004-12-30 2010-03-24 Fmc Technologies Portioning apparatus and method
US8359513B2 (en) 2005-01-19 2013-01-22 Intel Corporation Data communications methods and apparatus
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
US7562279B2 (en) * 2005-05-20 2009-07-14 Mitsubishi Electric Research Laboratories, Inc. 2D-normalized min-sum decoding for ECC codes
WO2006128164A2 (en) * 2005-05-27 2006-11-30 Aquantia Corporation Method and apparatus for extending decoding time in an iterative decoder using input codeword pipelining
TW200643703A (en) * 2005-06-06 2006-12-16 Novatek Microelectronics Corp Architecture and method for error detection and correction for data transmitted in a network
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
WO2007001305A1 (en) 2005-06-27 2007-01-04 Thomson Licensing Stopping criteria in iterative decoders
JP4526451B2 (ja) * 2005-06-30 2010-08-18 ルネサスエレクトロニクス株式会社 復号装置と方法並びにプログラム
JP2007036495A (ja) 2005-07-25 2007-02-08 Sharp Corp 再生装置、圧縮装置、記録装置及び再生方法
US7617436B2 (en) * 2005-08-02 2009-11-10 Nokia Corporation Method, device, and system for forward channel error recovery in video sequence transmission over packet-based network
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
EP1926142A1 (en) 2005-09-15 2008-05-28 Mitsubishi Materials Corporation Insulating circuit board and insulating circuit board provided with cooling sink section
US8867336B2 (en) 2005-09-28 2014-10-21 Qualcomm Incorporated System for early detection of decoding errors
WO2007044942A2 (en) * 2005-10-13 2007-04-19 Cargill, Incorporated Management of an organization by cross-functional processes from the perspective of customer experiences
US20070089016A1 (en) * 2005-10-18 2007-04-19 Nokia Corporation Block serial pipelined layered decoding architecture for structured low-density parity-check (LDPC) codes
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
US7844877B2 (en) * 2005-11-15 2010-11-30 Ramot At Tel Aviv University Ltd. Method and device for multi phase error-correction
GB2432982A (en) * 2005-11-30 2007-06-06 Toshiba Res Europ Ltd An EER RF amplifier with PWM signal switching
US7730385B2 (en) * 2005-11-30 2010-06-01 Motorola, Inc. Method for decoding a received control channel message with a priori information
US20070134178A1 (en) * 2005-12-12 2007-06-14 Iheatu Obioha Skin lightening complex
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
KR20070084947A (ko) * 2006-02-22 2007-08-27 삼성전자주식회사 통신 시스템에서 신호 수신 장치 및 방법
KR101205077B1 (ko) 2006-03-31 2012-11-27 인텔 코포레이션 디코더, 소프트 비트 블록 디코딩 방법, 데이터 저장 시스템, 멀티캐리어 수신기 및 기계 액세스 가능한 매체
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
JP4253332B2 (ja) * 2006-07-03 2009-04-08 株式会社東芝 復号装置、方法およびプログラム
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
JP4878958B2 (ja) * 2006-08-22 2012-02-15 株式会社エヌ・ティ・ティ・ドコモ 無線通信装置及び無線通信方法
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
FR2905209B1 (fr) 2006-08-24 2008-10-31 St Microelectronics Sa Procede et dispositif de decodage 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
US7613981B2 (en) * 2006-10-06 2009-11-03 Freescale Semiconductor, Inc. System and method for reducing power consumption in a low-density parity-check (LDPC) decoder
CN101174839A (zh) 2006-10-30 2008-05-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
JP4261575B2 (ja) * 2006-11-30 2009-04-30 株式会社東芝 誤り訂正処理装置及び誤り訂正処理方法
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
WO2008076214A2 (en) * 2006-12-14 2008-06-26 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
KR100975695B1 (ko) * 2007-02-02 2010-08-12 삼성전자주식회사 통신 시스템에서 신호 수신 장치 및 방법
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
JP4616861B2 (ja) * 2007-05-25 2011-01-19 富士ゼロックス株式会社 信号伝送回路及び信号伝送システム
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
TW200906073A (en) * 2007-07-31 2009-02-01 Univ Nat Chiao Tung Calculation method applied to Low Density Parity check Code (LDPC) decoder and circuit thereof
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
JP2009100222A (ja) 2007-10-16 2009-05-07 Toshiba Corp 低密度パリティ検査符号の復号装置およびその方法
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
CN101242188B (zh) * 2008-03-10 2011-05-11 清华大学 基于哈密尔顿图的低密度奇偶校验码的纠错编码方法
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
US8370711B2 (en) * 2008-06-23 2013-02-05 Ramot At Tel Aviv University Ltd. Interruption criteria for block decoding
US7707237B2 (en) * 2008-08-01 2010-04-27 Infineon Technologies Ag Macrocell and method for adding
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
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
US8464129B2 (en) * 2008-08-15 2013-06-11 Lsi Corporation ROM list-decoding of near codewords
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
US8321771B1 (en) * 2008-10-13 2012-11-27 Marvell International Ltd. Modified trace-back using soft output viterbi algorithm (SOVA)
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 ソニー株式会社 非水電解質電池
US8616345B2 (en) * 2011-06-24 2013-12-31 Goodrich Corporation Systems and methods for brake whirl mitigation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Cavus, E., etc. "A performance improvement and error floor avoidance technique for belief propagation decoding of LDPC codes" PIMRC. 2005. *

Also Published As

Publication number Publication date
US8495449B2 (en) 2013-07-23
US20100241921A1 (en) 2010-09-23
US8607115B2 (en) 2013-12-10
TWI442712B (zh) 2014-06-21
US20100042896A1 (en) 2010-02-18
TW201010294A (en) 2010-03-01
US20100042892A1 (en) 2010-02-18
TW201011527A (en) 2010-03-16
EP2321727A4 (en) 2013-11-13
US8516330B2 (en) 2013-08-20
US20100042904A1 (en) 2010-02-18
TWI435211B (zh) 2014-04-21
JP2014027704A (ja) 2014-02-06
KR20110044939A (ko) 2011-05-03
EP2223431A1 (en) 2010-09-01
JP5276173B2 (ja) 2013-08-28
WO2010019168A1 (en) 2010-02-18
US8316272B2 (en) 2012-11-20
US8407553B2 (en) 2013-03-26
US20100042895A1 (en) 2010-02-18
WO2010019169A1 (en) 2010-02-18
JP2012500513A (ja) 2012-01-05
KR20110052530A (ko) 2011-05-18
US20100042905A1 (en) 2010-02-18
CN101803205B (zh) 2013-12-18
US8700976B2 (en) 2014-04-15
US20100042898A1 (en) 2010-02-18
US20100042890A1 (en) 2010-02-18
EP2181504A1 (en) 2010-05-05
US8464129B2 (en) 2013-06-11
TW201008134A (en) 2010-02-16
US20100042903A1 (en) 2010-02-18
CN101836191A (zh) 2010-09-15
US20100042906A1 (en) 2010-02-18
EP2223431A4 (en) 2010-09-01
KR20110052529A (ko) 2011-05-18
WO2010019287A1 (en) 2010-02-18
US8327235B2 (en) 2012-12-04
JP2012500512A (ja) 2012-01-05
JP2012500514A (ja) 2012-01-05
KR101431479B1 (ko) 2014-08-20
US8245098B2 (en) 2012-08-14
US20100042891A1 (en) 2010-02-18
US20100042894A1 (en) 2010-02-18
CN101836191B (zh) 2014-01-22
US20110126075A1 (en) 2011-05-26
US8307253B2 (en) 2012-11-06
US8312342B2 (en) 2012-11-13
KR101418466B1 (ko) 2014-07-10
US20100042893A1 (en) 2010-02-18
EP2181504A4 (en) 2010-07-28
US8407567B2 (en) 2013-03-26
KR101418467B1 (ko) 2014-07-10
US20100042902A1 (en) 2010-02-18
CN101803205A (zh) 2010-08-11
US8464128B2 (en) 2013-06-11
CN101803206A (zh) 2010-08-11
US20100042897A1 (en) 2010-02-18
US20110138253A1 (en) 2011-06-09
US8448039B2 (en) 2013-05-21
US8468429B2 (en) 2013-06-18
CN101803206B (zh) 2013-09-04
US8683299B2 (en) 2014-03-25
EP2321727A1 (en) 2011-05-18
JP5363573B2 (ja) 2013-12-11
US8555129B2 (en) 2013-10-08

Similar Documents

Publication Publication Date Title
TWI508460B (zh) 用於解碼經編碼資料之方法及裝置
TWI411912B (zh) 使用寫入驗證之代碼之錯誤底限減緩
US8341502B2 (en) System and method for multi-dimensional decoding
US8645810B2 (en) Fast detection of convergence or divergence in iterative decoding
US20140068368A1 (en) LDPC Decoder With Fractional Unsatisfied Check Quality Metric
TW201319800A (zh) 使用置換子矩陣之總和的總和檢查碼
US10848182B2 (en) Iterative decoding with early termination criterion that permits errors in redundancy part
JP5723975B2 (ja) Ldpcコードの復号のための方法、システム、およびプログラム
CN103514061A (zh) 用于打破陷阱集的装置和方法
EP2972886A1 (en) Decoding data stored in solid-state memory
US9294128B2 (en) Test signal generator for low-density parity-check decoder
CN110708077A (zh) Ldpc码大数逻辑译码方法、装置和译码器
JP4862657B2 (ja) 復号方法および復号装置、並びにプログラム
JP4910708B2 (ja) 復号装置および復号方法
JP5130715B2 (ja) データソート装置およびデータソート方法
JP2008140336A (ja) 行列対角化方法、行列対角化装置、復号装置、およびプログラム
JP2008205546A (ja) 復号方法および復号装置、並びにプログラム
JP2008167378A (ja) 復号装置および復号方法

Legal Events

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