TWI540425B - 用於非二進位制解碼低密度奇偶檢查編碼資料之設備、解碼在一混合域非二進位制低密度奇偶檢查解碼器中之資料之方法及儲存系統 - Google Patents
用於非二進位制解碼低密度奇偶檢查編碼資料之設備、解碼在一混合域非二進位制低密度奇偶檢查解碼器中之資料之方法及儲存系統 Download PDFInfo
- Publication number
- TWI540425B TWI540425B TW101140145A TW101140145A TWI540425B TW I540425 B TWI540425 B TW I540425B TW 101140145 A TW101140145 A TW 101140145A TW 101140145 A TW101140145 A TW 101140145A TW I540425 B TWI540425 B TW I540425B
- Authority
- TW
- Taiwan
- Prior art keywords
- value
- check node
- circuit
- fourier transform
- fast fourier
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 25
- 238000004364 calculation method Methods 0.000 claims description 46
- 230000015654 memory Effects 0.000 claims description 27
- 230000005540 biological transmission Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 12
- 230000010365 information processing Effects 0.000 claims description 11
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 239000011159 matrix material Substances 0.000 description 15
- 238000001514 detection method Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 125000004122 cyclic group Chemical group 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 238000012804 iterative process Methods 0.000 description 3
- 208000024891 symptom Diseases 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000000696 magnetic material Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1131—Scheduling of bit node or check node processing
- H03M13/114—Shuffled, staggered, layered or turbo decoding schedules
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1111—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
- H03M13/1125—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using different domains for check node and bit node processing, wherein the different domains include probabilities, likelihood ratios, likelihood differences, log-likelihood ratios or log-likelihood difference pairs
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/116—Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/1171—Parity-check or generator matrices with non-binary elements, e.g. for non-binary LDPC codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/6331—Error control coding in combination with equalisation
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6577—Representation or format of variables, register sizes or word-lengths and quantization
- H03M13/6583—Normalization other than scaling, e.g. by subtraction
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Error Detection And Correction (AREA)
Description
本發明有關於混合域以FFT為基礎之非二進制低密度奇偶檢查(LDPC)解碼器。
已發展各式資料轉移系統,包括儲存系統、行動電話系統、及無線電傳輸系統。在每一系統中,資料經由若干媒體而從發送端轉移至接收端。例如,在儲存系統中,資料係經由儲存媒體而從發送端(即寫入功能)發送至接收端(即讀取功能)。隨著以數位資料形式儲存及傳輸資訊,便引發錯誤,若未修正,便可訛誤資料及提供無法使用之資訊。藉由各式因素造成之任何資料漏失影響任何轉移之效用。已發展許多類型之錯誤檢查系統以檢測及修正數位資料中之錯誤。例如,在或許最簡單之系統中,奇偶位元可附加至一群資料位元,確定該群資料位元(包括奇偶位元)具有偶數或奇數數量之位元。隨著資料準備儲存或傳輸,當使用奇數奇偶時,計數設定為一之群組中資料位元數量,若該群組中存在偶數數量位元,便將奇偶位元設定為一以確保該群組具有奇數數量之位元。若該群組中存在奇數數量位元,便將奇偶位元設定為零以確保該群組具有奇數數量之位元。在從儲存擷取或從傳輸接收資料之後,可再次檢查奇偶,若該群組具有偶數奇偶,資料中已引發至少一錯誤。在此最簡單之層面,可檢測若干錯誤但
未修正。
奇偶位元亦可用於錯誤修正系統,包括LDPC解碼器。LDPC碼為以奇偶為基礎之碼,可如圖1中所描繪視覺上以唐納圖100代表。在LDPC解碼器中,於一群可變節點110、112、114、116、118、120、122、及124之若干檢查節點102、104、106及108中執行多奇偶檢查。設計經選擇作為LDPC碼之可變節點110-124及檢查節點102-108之間之連接(或邊緣),平衡該碼的強度相對於當獲得資料時執行LDPC碼所需之解碼器的複雜性。設計經選擇作為LDPC碼之群組中奇偶位元的數量及佈置。信息於迭代處理中在連接的可變節點110-124及檢查節點102-108之間傳送,將有關應出現於可變節點110-124中之值的信念傳送至連接的檢查節點102-108。根據信息於檢查節點102-108中執行奇偶檢查,且結果返回至連接的可變節點110-124,如有必要則更新信念。LDPC解碼器可以二進制或非二進制方式實施。在二進制LDPC解碼器中,根據從儲存裝置擷取、藉由傳輸系統接收或以若干其他方式獲得之一群資料及奇偶位元,可變節點110-124包含純量值。二進制LDPC解碼器中之信息為純量值,係以純似然概率值或代表發送可變節點包含特定值之概率的對數似然比(LLR)值傳輸。在非二進制LDPC解碼器中,可變節點110-124包含來自伽羅瓦場之符號,有限場GF(pk)包含有限數量元素,特徵在於尺寸pk,其中p為質數數量及k為正整數。非二進制LDPC解碼器中之信息為
多維向量,一般為純似然概率向量或LLR向量。
可變節點110-124及檢查節點102-108之間之連接可以矩陣形式呈現如下,其中行代表可變節點,列代表檢查節點,且來自可變節點行及檢查節點列之交叉點之伽羅瓦場的隨機非零元素a(i,j)指出可變節點及檢查節點之間之連接並提供可變節點及檢查節點之間之信息排列:
藉由為該群可變節點110-124提供多檢查節點102-108,提供錯誤檢查中冗餘,使得可修正以及檢測錯誤。每一檢查節點102-108於從其相鄰(或連接)可變節點以信息傳送之位元或符號上執行奇偶檢查。在相應於圖1之唐納圖100的LDPC碼範例中,檢查節點102檢查可變節點110、116、120及122之奇偶。迭代處理中,值於連接的可變節點110-124及檢查節點102-108之間來回傳送,直至LDPC碼匯集於可變節點110-124中該群資料及奇偶位元之值。例如,可變節點110傳送信息至檢查節點102及106。檢查節點102將信息回傳至可變節點110、116、120及122。可變節點110-124及檢查節點102-108之間之信息為概率或信念,因而LDPC解碼演算法亦稱為信念傳播演算法。來自節點之每一信息代表根據節點之目前值
及至節點之先前信息,位元或符號具有某值之概率。
從可變節點至任何特定相鄰檢查節點之信息係使用任何若干演算法,根據可變節點之目前值及從相鄰檢查節點至可變節點之最近信息予以計算,除了來自特定檢查節點之最近信息省略計算以避免正回饋以外。類似地,根據檢查節點之目前值及從相鄰可變節點至檢查節點之最近信息,計算從檢查節點至任何特定相鄰可變節點之信息,除了來自特定可變節點之最近信息省略計算以避免正回饋以外。隨著於系統中迭代執行,信息於可變節點110-124及檢查節點102-108之間來回傳送,且節點102-124中之值根據傳送之信息調整,直至值匯集及停止改變或直至處理中止。
仍需要更有效率及正確之LDPC解碼器。
本發明之各式實施例關於用於解碼資料之方法及設備,各特定地關於用於解碼混合域以FFT為基礎之非二進制LDPC解碼器中資料之方法及設備。例如,在一實施例中,設備包括信息處理電路,可操作以處理可變節點信息並檢查對數域中之節點信息,以及該低密度奇偶檢查解碼器中之檢查節點計算電路,可操作以執行實數域中以快速傅立葉轉換為基礎之檢查節點計算。該信息處理電路及該檢查節點計算電路執行迭代層解碼。在若干實施例中,信息處理電路包括加法電路,將連接層之可變節點值加至
連接層之檢查節點值,以產生連接層之伽羅瓦場中每一符號之軟對數似然比值。信息處理電路亦包括移位器,將軟對數似然比值偏移達目前層與連接層間的差,以產生目前層之總軟對數似然比值,以及減法電路,從目前層之總軟對數似然比值減去目前層之檢查節點值,以產生目前層之可變節點值。在若干實例中,轉換電路將目前層之可變節點值從對數域轉換至實數域或概率域。在若干實施例中,檢查節點計算電路包括FFT電路,其在實數域中操作目前層之可變節點值,量值及符號計算電路,可操作以決定FFT電路之輸出的量值及符號,以及檢查節點記憶體,其儲存符號及量值。若干實施例根據檢查節點記憶體中之值計算連接層及目前層之檢查節點值,使用指數計算電路以計算量值之指數值,並將符號應用至相應指數值。結果係於逆快速傅立葉轉換電路中處理,並從實數域轉換至對數域。
此概述僅提供依據本發明之若干實施例的一般輪廓。從下列詳細說明、申請專利範圍、及附圖,本發明之許多其他目標、特徵、優點及其他實施例將更加完全顯而易見。
本發明之各式實施例關於解碼資料之方法及設備,更特定地關於在混合域以快速傅立葉轉換(FFT)為基礎之非二進制LDPC解碼器中解碼資料之方法及設備。混合域
LDPC解碼器於對數域中及執行若干解碼作業,且若干在概率域中,藉此達成非二進制LDPC碼之信念傳播(BP)解碼及以FFT為基礎之解碼的若干利益,同時避免純粹BP解碼器或FFT解碼器中固有的若干缺點。例如,混合域LDPC解碼器獲益於處理可變節點及檢查節點信息之對數域的穩定及簡單,使用加法及減法而非乘法及除法處理信息,以及減少對於在對數域工作時有限精確的敏感性。藉由使用概率域FFT計算概率,混合域LDPC解碼器之複雜性從如BP解碼器中之Nt(2P)2減少至Nt(2P)P,其中N為碼長度,t為行之平均重量,及P定義伽羅瓦場GF(2P)之維度。FFT計算為使用加法及減法之p維2點計算。混合域LDPC解碼器亦以FFT計算達成極佳的誤碼性能,相較於諸如最小-最大解碼之其他複雜性減少之演算法,其並未使用近似值。藉由於概率域中執行FFT計算,及於對數域中處理可變節點信息及檢查節點信息,混合域LDPC解碼器以相對簡單及穩定硬體提供極佳誤碼性能(error performance)。
混合域LDPC解碼器使用規則或不規則奇偶檢查H矩陣,其具有循環子矩陣陣列或單位矩陣及具不同循環移位之空矩陣的循環移位版本,來解碼準循環LDPC碼。H矩陣係根據有限伽羅瓦場GF(2P)建構,例如具以下形式:
儘管文中所揭露之混合域LDPC解碼器不侷限於任何特定應用,文中呈現若干應用範例獲益自本發明之實施例。談到圖2,讀取通道200用以處理類比信號202及從類比信號202擷取使用者資料位元而無錯誤。在若干狀況下,類比信號202係源自磁性儲存媒體中之讀取/寫入頭組件。在其他狀況下,類比信號202係源自接收端電路,其可操作以從傳輸媒體接收信號。傳輸媒體可為無線或有線,諸如但不侷限於電纜或光學連通性。根據文中所提供之揭露,本技藝中一般技術之人士將認識各種來源,從此可派生類比信號202。
讀取通道200包括類比前端204,其接收及處理類比信號202。類比前端204可包括但不侷限於本技藝已知之類比濾波器及放大器電路。根據文中所提供之揭露,本技藝中一般技術之人士將認識各種電路,可包括作為部分類比前端204。在若干狀況下,包括作為部分類比前端204之可變增益放大器的增益可加以修改,且類比前端204中所包括之類比濾波器的截止頻率及升壓可加以修改。類比前端204接收及處理類比信號202,並提供處理之類比信號206至類比至數位轉換器210。
類比至數位轉換器210將處理之類比信號206轉換為
相應一連串數位樣本212。類比至數位轉換器210可為本技藝中已知之任何電路,其可產生相應於類比輸入信號之數位樣本。根據文中所提供之揭露,本技藝中一般技術之人士將認識各種類比至數位轉換器電路,其可於相關不同於本發明之實施例中使用。數位樣本212被提供至等化器214。等化器214應用等化演算法至數位樣本212以產生等化之輸出216。在本發明之若干實施例中,等化器214為本技藝中已知之數位有限脈衝響應濾波器電路。等化之輸出216中所包括之資料或碼字可儲存於緩衝器218中,直至資料檢測器220可用於處理。
資料檢測器220於接收之輸入上執行資料檢測處理,導致檢測之輸出222。在本發明之若干實施例中,資料檢測器220為Viterbi演算法資料檢測器電路,或更特定地在若干狀況下,為本技藝中已知之最大後驗概率(MAP)資料檢測器電路。在該些實施例中,檢測之輸出222包含有關每一位元或符號具有特定值之似然的對數似然比(LLR)資訊。根據文中所提供之揭露,本技藝中一般技術之人士將認識各種資料檢測器,其可於相關不同於本發明之實施例中使用。資料檢測器220係根據緩衝器218中來自等化器214或另一來源之資料集的可用性予以開始。資料檢測器220產生包括軟資料之檢測之輸出222。如文中所使用,「軟資料」用語係用於其最廣泛意義以表示可靠性資料,基於每一狀況之可靠性資料指出相應位元位置或一群位元位置已修正檢測之似然。在本發明之若干實施
例中,軟資料或可靠性資料為本技藝中已知之對數似然比資料。
來自資料檢測器220之檢測之輸出222提供至交錯器224,其針對叢發錯誤來保護資料。叢發錯誤覆寫位元的本地化群組或串。因為LDPC解碼器最適於修正均勻分佈之錯誤,叢發錯誤可壓倒LDPC解碼器。交錯器224藉由交錯或調換來自資料檢測器220之檢測之輸出222以產生交錯輸出226並儲存於記憶體230,而避免上述狀況。交錯器224可為本技藝中已知之任何電路,可調換資料集以產生重排資料集。來自記憶體230之交錯輸出226提供至混合域LDPC解碼器232,其於交錯輸出226上執行奇偶檢查,確定在滿足儲存或傳輸之前藉由LDPC編碼器(未顯示)建立奇偶限制,以便檢測及修正於儲存或傳輸期間或藉由讀取通道200之其他組件處理期間資料中所發生之任何錯誤。
可於讀取通道200中執行多檢測及解碼迭代,文中稱為總迭代。(相對地,局部迭代為於混合域LDPC解碼器232內執行之解碼迭代。)為執行總迭代,來自混合域LDPC解碼器232之LLR值234儲存於記憶體230中,於解交錯器236中解交錯以反向藉由交錯器224施用之處理,並再次提供至資料檢測器220,藉由來自混合域LDPC解碼器232之LLR值234輔助,以允許資料檢測器220重複資料檢測處理。以此方式,讀取通道200可執行多總體迭代,允許資料檢測器220及混合域LDPC解碼器
232以匯集於修正資料值上。
混合域LDPC解碼器232亦產生有關交錯器224之交錯輸出226中所包括之資料位元或符號之值的硬決定240。對二進制資料位元而言,硬決定可以0及1代表。對非二進制或多級符號而言,在GF(8)LDPC解碼器中,硬決定可藉由場元素000、001、010...111代表。
來自混合域LDPC解碼器232之硬決定240係於硬決定解交錯器242中解交錯,反向於交錯器224中施用之處理,並在提供至使用者或進一步處理之前儲存於硬決定記憶體244中。例如,可進一步處理讀取通道200之輸出246,以於將資料儲存於磁性儲存媒體中或傳輸資料跨越傳輸通道之前,反向施用之格式化改變。
現在談到圖3,依據本發明之各式實施例揭露混合域以FFT為基礎之非二進制LDPC層解碼器300的範例。混合模式LDPC解碼器300一層一層地處理H矩陣之循環子矩陣,結合來自先前層或連接層之值與迭代處理中目前層之值,以更新軟LLR輸出P值,而指出相應位元位置或一群位元位置已以GF(2P)之每一元素修正檢測之似然。
混合模式LDPC解碼器300包括解碼器記憶體302,其儲存來自輸入304之軟LLR輸入值、Q值及軟LLR輸出P值。解碼器記憶體302為具有多記憶庫之乒乓記憶體。加法電路306分別加總連接層之可變節點值(來自解碼器記憶體302之Q值310,或在第一局部迭代中,來自
輸入304之軟LLR輸入值)與一循環之每一符號的連接層之檢查節點值(連接層R值312),以獲得連接層之每一符號的軟LLR值314。在若干實施例中,加法電路306包括用於GF(2P)之每一元素之一加法器,以將每一元素的連接層之Q值加總至該元素的連接層之R值,而獲得用於該符號之GF(2P)之每一元素的軟LLR值。對GF(8)混合模式LDPC解碼器300而言,符號可具有GF(8)之任何8元素之值,且加法電路306包括8加法器以產生代表該符號之GF(8)之每一元素的8軟LLR值。在若干實施例中,加法電路306依據方程式1執行可變節點更新:
其中{Vpv}v=1...dv為進入階次dv之可變節點的信息組。例如,若三檢查節點連接至可變節點,具H矩陣之行中三非零元素,可變節點之階次dv為3。因而,{Vpv}v=1...dv為列p中1...dv非零V信息組。L為通道似然,在輸入304之最初通道LLR值。{Uvp}v=1...dv為此可變節點之輸出信息組。{Upc}c=1...dc為用於階次dc檢查節點之輸入信息組。{Upc}c=1...dc為階次dc檢查節點之輸出信息組。
來自加法電路306之軟LLR值314提供至正常化電路316,其比較每一軟LLR值314以識別最小值及硬決定,且其從每一符號之剩餘軟LLR值減去最小值,藉此
正常化軟LLR值314至其最小,並產生正常化之可變節點值318。
正常化之可變節點值318提供至重排器320,其重排正常化之可變節點值318,以準備用於檢查節點更新,且其應用藉由H矩陣之非零元素指定之排列。排列為伽羅瓦場中之乘法。例如,元素1、2、3、4、5、6及7乘以GF之元素2,導致元素2、3、4、5、6、7及1,其為元素1、2、3、4、5、6及7之排列。在若干實施例中重排器320應用依據方程式2之排列:vec(U pc )=P h(x) vec(U tp ) (方程式2)
其中Ph(x)為藉由H矩陣指定之排列。
來自重排器320之重排可變節點值322提供至移位器324,其偏移重排可變節點值322達目前層及連接層之間之差,有效地將重排可變節點值322相對於H矩陣從行順序轉換至列順序。移位器324為循環移位器或桶移位器,其偏移重排可變節點值322中之符號值以產生下一循環子矩陣,產生目前層P值326,其包含目前層之總軟LLR值。
目前層P值326提供至減法電路328,其從目前層P值326減去目前層檢查節點值或目前層之符號的R值330,以產生目前層之符號的更新可變節點值或目前層Q值332。
多工器334致能目前層軟LLR P值326及目前層Q
值332儲存於解碼器記憶體302中。根據文中提供之揭露,本技藝中一般技術之人士將認識各種方式,其中目前層P值326及目前層Q值332可儲存於解碼器記憶體302中,諸如多工器334或多埠記憶體之使用。
在計算檢查節點信息之前,目前層Q值332從對數域轉換至轉換電路336中實數域或概率域,以準備檢查節點更新中之FFT處理。轉換電路336於輸入x上應用指數函數ex,其中目前層Q值332為輸入x。轉換電路336提供概率域Q值338至FFT電路340,以執行檢查節點計算。FFT電路340於概率域Q值338上執行FFT作業,產生FFT輸出342。
在若干實施例中,FFT電路340為GF(8)上之非二進制LDPC碼的3維2點FFT。圖4中描繪藉由FFT電路340執行之計算範例。在加法及減法作業中,符號之GF(8)中每一8元素400成對結合。例如,元素402及404相加以產生元素406,及相減以產生元素408。各對於每一級改變。在第二級,元素406及410相加以產生元素412,及相減以產生元素414。在第三級,元素412及416相加以產生元素418,及相減以產生元素420。
回頭談到圖3,FFT輸出342提供至量值/符號電路344,其產生FFT輸出342之絕對值及符號346並儲存於檢查節點記憶體350中。檢查節點記憶體350將每一非零元素之LLR值(於概率域中)或概率值儲存於H矩陣中。量值/符號電路344可結合於單一電路中或可包含量
值計算電路及符號計算電路。從檢查節點記憶體350擷取先前層之絕對值及符號346並提供至乘法器352,其以FFT輸出342之符號乘以FFT輸出342之絕對值的指數函數ex。乘法器352之輸出354提供至逆FFT電路356,其執行FFT電路340之逆作業。在若干實施例中,逆FFT電路356為GF(8)上之非二進制LDPC碼的3維2點逆FFT(IFFT)。逆FFT電路356產生概率域中連接層R值358至轉換電路360,其藉由應用log(x)函數將連接層R值358從概率域轉換至對數域,產生對數域中連接層R值312。
從檢查節點記憶體350擷取目前層之絕對值及符號346並提供至乘法器362,其以FFT輸出342之符號乘以FFT輸出342之絕對值的指數函數ex。乘法器362之輸出364提供至IFFT電路366,其執行FFT電路340之逆作業。在若干實施例中,逆FFT電路366為GF(8)上之非二進制LDPC碼的3維2點逆FFT(IFFT)。IFFT電路366產生概率域中目前層R值368至轉換電路370,其藉由應用log(x)函數將目前層R值368從概率域轉換至對數域,產生對數域中目前層R值330。FFT電路340、量值/符號電路344、檢查節點記憶體350、乘法器352、逆FFT電路356、乘法器362及IFFT電路366可統稱為檢查節點計算電路。加法電路306、正常化電路316、重排器320、移位器324及減法電路328可統稱為信息處理電路。雖然乘法器352及362稱為乘法器,其可
實施為指數計算電路,將儲存之符號應用至結果,且在若干實施例中,並未於習知乘法電路乘以值。
根據來自加法電路306之軟LLR值,於癥狀計算電路中執行癥狀計算,並提供硬決定374。
於方程式3中提出用於階次dc檢查節點之概率域信息更新:
藉由方程式4提供Upc之傅立葉轉換:F(U pc )=U pc ×1 F×2 F...× p F (方程式4)
其中F為下列提供之第二階傅立葉轉換的2x2矩陣
其中Z=U×XkF定義如下,用於
然而,請注意,對GF(8),p=3而言,FFT為3維2點FFT。
談到圖5,流程圖500描繪依據本發明之各式實施例,解碼混合域以FFT為基礎之非二進制LDPC解碼器中
資料之方法。圖5之方法或其變化可於諸如圖3中所描繪之混合域LDPC解碼器中執行。依循流程圖500,H矩陣之先前層的Q值係擷取自解碼器記憶體(方塊502)。先前層之R值加總至先前層之Q值,以產生伽羅瓦場中每一符號之軟LLR值(方塊504)。將軟LLR值重排以產生重排軟LLR值(方塊506)。將重排軟LLR值偏移達目前層及先前層之間之差(方塊508)。從偏移的重排軟LLR值減去目前層之R值,以產生伽羅瓦場中每一符號之目前層的Q值,並更新解碼器記憶體中目前層之Q值(方塊510)。將目前層之Q值從對數域轉換至實數域(方塊512),並使用快速傅立葉轉換執行檢查節點計算,以產生目前層及先前層之R值(方塊514)。在若干實施例中,此包括執行GF(8)上之非二進制LDPC碼的3維2點FFT,發現結果之量值及符號,計算結果之符號乘以量值之指數,及執行逆FFT。目前層及先前層的R值從實數域轉換至對數域(方塊516)。決定H矩陣之局部解碼迭代是否完成(方塊520)。若否,準備下一循環並持續處理。若然,便決定解碼作業是否完成(方塊522)。當已執行最大數量局部解碼迭代時,或當檢測到資料匯集時,可決定解碼作業將完成。若解碼作業未完成,便準備下一循環並持續處理(方塊504)。若解碼作業完成,則解碼結束(方塊524)。執行癥狀計算,並於混合域LDPC解碼器之輸出提供硬決定。
儘管文中所揭露之混合域LDPC解碼器不侷限於任何
特定應用,文中呈現獲益於本發明之實施例的若干應用範例。圖6顯示依據本發明之若干實施例的儲存系統600,包括具混合域LDPC解碼器之讀取通道電路602。儲存系統600可為例如硬碟機。儲存系統600亦包括前置放大器604、介面控制器606、硬碟控制器610、馬達控制器612、主軸馬達614、碟片616、及讀取/寫入頭組件620。介面控制器606控制至/自碟片616之資料的定址及時序。碟片616上之資料組成一群磁性信號,當讀取/寫入頭組件620適當地定未於碟片616時,可由該組件檢測。在一實施例中,碟片616包括依據縱向或垂直記錄方案記錄之磁性信號。
在典型讀取作業中,讀取/寫入頭組件620係藉由馬達控制器612正確地定位於碟片616上之所欲資料磁軌上方。馬達控制器612在硬碟控制器610的指示下,關於碟片616而定位讀取/寫入頭組件620並藉由移動讀取/寫入頭組件620至碟片616上之適當資料磁軌而驅動主軸馬達614。主軸馬達614以決定之轉速(RPM)旋轉碟片616。一旦讀取/寫入頭組件620定位於適當資料磁軌附近,隨著碟片616藉由主軸馬達614旋轉,代表碟片616上之資料的磁性信號便由讀取/寫入頭組件620感應。感應之磁性信號便提供為代表碟片616上磁性資料之持續、微小的類比信號。微小的類比信號經由前置放大器604而從讀取/寫入頭組件620轉移至讀取通道電路602。前置放大器604可操作而放大從碟片616存取之微小的類比信
號。接著,讀取通道電路602解碼及數位化所接收之類比信號以重新製造最初寫入至碟片616之資訊。資料作為讀取資料622被提供至接收電路。作為部分解碼所接收之資訊,讀取通道電路602使用混合域LDPC解碼器處理所接收之信號。該等混合域LDPC解碼器可與以上關於圖3所揭露者一致地實施。在若干狀況下,混合域LDPC解碼可與以上關於圖5所揭露之流程圖一致地實施。寫入作業實質上與先前以提供至讀取通道電路602之寫入資料624實施之讀取作業相反。此資料接著被編碼及寫入至碟片616。應注意的是,儲存系統600的各式功能或方塊可以軟體或韌體實施,同時以硬體實施其他功能或方塊。
談到圖7,混合域LDPC解碼器可整合於虛擬儲存系統中,諸如以RAID(不昂貴碟片之冗餘陣列或獨立碟片之冗餘陣列)為基礎之儲存系統700,經由冗餘而增加穩定及可靠性,並結合多碟片為邏輯單元。資料可依據各類演算法而延伸跨越RAID儲存系統700中所包括之若干碟片702、704、706、708,並猶如單一碟片藉由作業系統存取。例如,資料可映射至RAID儲存系統700中多碟片702-908,或可以若干技術切片及分佈跨越多碟片702-908。若RAID儲存系統700中少量碟片(例如702)失效或變成無法使用,錯誤修正技術可用以根據來自RAID儲存系統700中其他碟片(例如704-908)之資料的剩餘部分而重新製造遺失之資料。RAID儲存系統700中之碟片702-908可為但不侷限於個別儲存系統,諸如以上關於圖
8所揭露者,並可被定位為彼此接近或廣泛分佈以增加安全。在寫入作業中,寫入資料710被提供至控制器712,例如藉由映射或藉由條帶化寫入資料710,其可儲存寫入資料710跨越碟片702-908。在讀取作業中,控制器712從碟片702-908擷取資料,使用混合域LDPC解碼於控制器712及碟片702-908之一或二者中執行錯誤修正,並重新製造任何可能遺失之資料。控制器712接著產生結果讀取資料714,猶如RAID儲存系統700為單一碟片。
談到圖8,顯示依據若干本發明之實施例的無線通訊系統800或資料傳輸裝置,其包括具混合域LDPC解碼器之接收端804。通訊系統800包括發送端802,如本技藝中已知可操作而經由轉移媒體806傳輸編碼資訊。編碼資料係藉由接收端804從轉移媒體806接收。接收端804合併混合域LDPC解碼器。該等混合域LDPC解碼器可與以上關於圖3所揭露者一致地實施。在若干狀況下,解碼可與以上關於圖5所揭露之流程圖一致地實施。
文中所揭露之混合域LDPC解碼器以相對簡單硬體提供極佳誤碼性能,該硬體主要使用加法器、比較器及減法器,並較純粹以FFT為基礎之解碼器具有更小之面積及電力消耗。
應注意的是,以上應用中所討論之各式方塊可以積體電路連同其他功能性實施。該等積體電路可包括特定方塊、系統或電路的所有功能,或僅方塊、系統或電路的子集。此外,方塊、系統或電路的元件可跨越多積體電路實
施。該等積體電路可為本技藝中已知之任何類型積體電路,包括但不侷限於單片積體電路、倒裝積體電路、多晶片模組積體電路、及/或混合信號積體電路。亦應注意的是,文中所討論之方塊、系統、或電路的各式功能可以軟體或韌體實施。在若干該等狀況下,整個系統、方塊或電路可使用其軟體或韌體等效物件予以實施。在其他狀況下,特定系統、方塊或電路之一部分可以軟體或韌體實施,同時其他部分以硬體實施。
總之,本發明提供混合域以FFT為基礎之非二進制LDPC解碼器解碼資料之新穎方法及設備。雖然以上已提供一或多項本發明之實施例的詳細說明,對熟悉本技藝之人士將顯而易見的是,各式替代、修改及等效實施均未偏離本發明之精神。因此,以上說明不應用以限制本發明之範圍,而係藉由申請專利範圍所定義。
100‧‧‧唐納圖
102、104、106、108‧‧‧檢查節點
110、112、114、116、118、120、122、124‧‧‧可變節點
200‧‧‧讀取通道
202、206‧‧‧類比信號
204‧‧‧類比前端
210‧‧‧類比至數位轉換器
212‧‧‧數位樣本
214‧‧‧等化器
216‧‧‧等化之輸出
218‧‧‧緩衝器
220‧‧‧資料檢測器
222‧‧‧檢測之輸出
224‧‧‧交錯器
226‧‧‧交錯輸出
230‧‧‧記憶體
232‧‧‧混合域LDPC解碼器
234‧‧‧LLR值
236、242‧‧‧解交錯器
240‧‧‧硬決定
244‧‧‧硬決定記憶體
246、304、354、364‧‧‧輸出
300‧‧‧混合模式LDPC解碼器
302‧‧‧解碼器記憶體
306‧‧‧加法電路
310‧‧‧Q值
312‧‧‧連接層R值
314‧‧‧軟LLR值
316‧‧‧正常化電路
318‧‧‧可變節點值
320‧‧‧重排器
322‧‧‧重排可變節點值
324‧‧‧移位器
326‧‧‧目前層P值
328‧‧‧減法電路
330‧‧‧R值
332‧‧‧目前層Q值
334‧‧‧多工器
336、360、370‧‧‧轉換電路
338‧‧‧概率域Q值
340‧‧‧FFT電路
342‧‧‧FFT輸出
344‧‧‧量值/符號電路
346‧‧‧絕對值及符號
350‧‧‧檢查節點記憶體
352、362‧‧‧乘法器
356、366‧‧‧逆FFT電路
358‧‧‧連接層R值
368‧‧‧目前層R值
400、402、404、406、408、410、412、414、416、418、420‧‧‧元素
500‧‧‧流程圖
502、504、506、508、510、512、514、516、520、522、524‧‧‧方塊
600、700‧‧‧儲存系統
602‧‧‧讀取通道電路
604‧‧‧前置放大器
606‧‧‧介面控制器
610‧‧‧硬碟控制器
612‧‧‧馬達控制器
614‧‧‧主軸馬達
616、702-908‧‧‧碟片
620‧‧‧讀取/寫入頭組件
622‧‧‧讀取資料
710‧‧‧寫入資料
712‧‧‧控制器
714‧‧‧結果讀取資料
800‧‧‧無線通訊系統
802‧‧‧發送端
804‧‧‧接收端
806‧‧‧轉移媒體
藉由參照於說明書其餘部分說明之圖式,可實現本發明之各式實施例的進一步了解。在圖式中,類似代號可用以貫通若干圖形而指類似組件。在圖式中,類似代號可用以貫通若干圖式而指類似組件。在若干實例中,由小寫字母組成之子標號與代號相結合以標示多個類似組件之一。當參照代號而未詳述現有子標號時,係希望指所有該等多個類似組件。
圖1描繪習知技藝LDPC碼範例之唐納圖;
圖2描繪依據本發明之各式實施例之讀取通道之方塊圖,其可用以擷取或接收儲存或傳輸之資料;圖3描繪依據本發明之各式實施例之混合域以FFT為基礎之非二進制LDPC解碼器;圖4描繪依據本發明之各式實施例之蝶形圖,描繪FFT計算;圖5描繪依據本發明之各式實施例之流程圖,顯示於混合域以FFT為基礎之非二進制LDPC解碼器中解碼資料之方法;圖6描繪依據本發明之各式實施例之儲存系統,包括混合域以FFT為基礎之非二進制LDPC解碼器;圖7描繪依據本發明之各式實施例之虛擬儲存系統,包括混合域以FFT為基礎之非二進制LDPC解碼器;以及圖8描繪依據本發明之各式實施例之資料傳輸裝置範例,包括混合域以FFT為基礎之非二進制LDPC解碼器。
600‧‧‧儲存系統
602‧‧‧讀取通道電路
604‧‧‧前置放大器
610‧‧‧硬碟控制器
612‧‧‧馬達控制器
614‧‧‧主軸馬達
616‧‧‧碟片
620‧‧‧讀取/寫入頭組件
622‧‧‧讀取資料
624‧‧‧寫入資料
Claims (20)
- 一種用於非二進位制(non-binary)解碼低密度奇偶檢查編碼資料之設備,包含:在一低密度奇偶檢查解碼器中之一信息處理電路,其可操作以在一對數域(log domain)中處理可變節點信息(variable node messages)及檢查節點信息(check node messages);在該低密度奇偶檢查解碼器中之一檢查節點計算電路,其可操作以在一實數域中執行以一快速傅立葉轉換為基礎之檢查節點計算,其中該檢查節點計算電路包含:一快速傅立葉轉換電路,其可操作以在該實數域中對一目前層之可變節點值執行一快速傅立葉轉換;一第一逆快速傅立葉轉換電路,其可操作以執行一逆快速傅立葉轉換,以在該實數域中產生一連接層之檢查節點值;及一第二逆快速傅立葉轉換電路,其可操作以執行一逆快速傅立葉轉換,以在該實數域中產生該目前層之檢查節點值;且其中該信息處理電路及該檢查節點計算電路可操作以執行迭代層解碼。
- 如申請專利範圍第1項之設備,其中該信息處理電路包含:一加法電路,其可操作以在該對數域中將該連接層之可變節點值加至該連接層之檢查節點值,以產生該連接層 之一伽羅瓦場中每一符號之軟對數似然比值;一移位器,其可操作以將該軟對數似然比值偏移達一目前層與該連接層間的差,以產生該目前層之總軟對數似然比值;以及一減法電路,其可操作以在該對數域中從該目前層之該總軟對數似然比值減去該目前層之檢查節點值,以產生該目前層之可變節點值。
- 如申請專利範圍第1項之設備,其中該檢查節點計算電路包含:一快速傅立葉轉換電路,其可操作以在該實數域中對該目前層之可變節點值執行快速傅立葉轉換;一量值計算電路,其可操作以提供來自該快速傅立葉轉換電路之輸出值的量值;一符號計算電路,其可操作以提供來自該快速傅立葉轉換電路之該輸出值的符號;以及一檢查節點記憶體,其可操作以儲存該量值及該符號。
- 如申請專利範圍第3項之設備,其中該檢查節點計算電路進一步包含一指數計算電路,其可操作以計算連接層之該量值的指數值,及應用該符號至相應指數值。
- 如申請專利範圍第1項之設備,其中該檢查節點計算電路進一步包含一轉換電路以將該連接層之該檢查節點值從該實數域轉換至該對數域。
- 如申請專利範圍第3項之設備,其中該檢查節點計 算電路進一步包含一指數計算電路,其可操作以計算該目前層之該量值的指數值,及應用該符號至相應指數值。
- 如申請專利範圍第1項之設備,其中該檢查節點計算電路進一步包含轉換電路以將該目前層之該檢查節點值從該實數域轉換至該對數域。
- 如申請專利範圍第1項之設備,進一步包含第一轉換電路,其可操作以將目前層之可變節點值從該對數域轉換至該實數域。
- 如申請專利範圍第1項之設備,其中該信息處理電路及該檢查節點計算電路實施為積體電路。
- 如申請專利範圍第1項之設備,其中該設備併入儲存裝置。
- 如申請專利範圍第1項之設備,其中該設備併入包含獨立碟片之冗餘陣列的儲存系統。
- 如申請專利範圍第1項之設備,其中該設備併入資料傳輸裝置。
- 一種解碼在一混合域非二進位制低密度奇偶檢查解碼器中之資料之方法,包含:於一對數域中,在該混合域低密度奇偶檢查解碼器中處理可變節點信息及檢查節點信息;將可變節點信息從該對數域轉換至一實數域;於該實數域中對一目前層之可變節點值執行以快速傅立葉轉換為基礎之檢查節點計算,其中該處理及該檢查節點計算包含迭代層解碼; 執行一逆快速傅立葉轉換,以在該實數域中產生一目前層之檢查節點值;執行一逆快速傅立葉轉換,以在該實數域中產生該連接層之檢查節點值;以及將該目前層及該連接層之該實數域檢查節點值從該實數域轉換至該對數域。
- 如申請專利範圍第13項之方法,其中該對數域中該處理包含:在該對數域中,將該連接層之可變節點值加至該連接層之檢查節點值,以產生該連接層之一伽羅瓦場中每一符號之軟對數似然比值;將該軟對數似然比值偏移達該目前層與該連接層間的差,以產生該目前層之總軟對數似然比值;以及在該對數域中從該目前層之該總軟對數似然比值減去該目前層之檢查節點值,以產生該目前層之可變節點值。
- 如申請專利範圍第13項之方法,其中該檢查節點計算包含在該實數域中使用快速傅立葉轉換對可變節點值執行檢查節點計算,以在該實數域中產生該連接層之檢查節點值及該目前層之檢查節點值,且其中轉換該實數域檢查節點值包含轉換該連接層之該檢查節點值及該目前層之該檢查節點值。
- 一種儲存系統,包含:一儲存媒體,其維持資料集;一寫入頭,其可操作以將該資料集磁性記錄至該儲存 媒體;以及一混合域非二進位制低密度奇偶檢查解碼器,其可操作以執行分層(layered)解碼,包含:一信息處理電路,其可操作以在一對數域中處理可變節點信息及檢查節點信息;以及一檢查節點計算電路,其可操作以在一實數域中執行以快速傅立葉轉換為基礎之檢查節點計算,其中該檢查節點計算電路包含;一快速傅立葉轉換電路,其可操作以在該實數域中對一目前層之可變節點值執行一快速傅立葉轉換;一第一逆快速傅立葉轉換電路,其可操作以執行一逆快速傅立葉轉換,以在該實數域中產生一連接層之檢查節點值;及一第二逆快速傅立葉轉換電路,其可操作以執行一逆快速傅立葉轉換,以在該實數域中產生該目前層之檢查節點值。
- 如申請專利範圍第16項之儲存系統,其中該信息處理電路包含:一加法電路,其可操作以在該對數域中將該連接層之可變節點值加至該連接層之檢查節點值,以產生該連接層之一伽羅瓦場中每一符號之軟對數似然比值;一移位器,其可操作以將該軟對數似然比值偏移達該目前層與該連接層間的差,以產生該目前層之總軟對數似 然比值;以及一減法電路,其可操作以在該對數域中從該目前層之該總軟對數似然比值減去該目前層之檢查節點值,以產生該目前層之可變節點值。
- 如申請專利範圍第16項之儲存系統,其中該檢查節點計算電路包含:一量值計算電路,其可操作以提供來自該快速傅立葉轉換電路之輸出值的量值;一符號計算電路,其可操作以提供來自該快速傅立葉轉換電路之該輸出值的符號;以及一檢查節點記憶體,其可操作以儲存該量值及該符號。
- 如申請專利範圍第16項之儲存系統,其中該檢查節點計算電路進一步包含一指數計算電路,其可操作以計算該連接層之該量值的指數值及應用該符號至相應指數值。
- 如申請專利範圍第16項之儲存系統,其中該檢查節點計算電路進一步包含一指數計算電路,其可操作以計算該目前層之該量值的一指數值,及應用該符號至相應指數值。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US13/340,951 US8819515B2 (en) | 2011-12-30 | 2011-12-30 | Mixed domain FFT-based non-binary LDPC decoder |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW201331750A TW201331750A (zh) | 2013-08-01 |
| TWI540425B true TWI540425B (zh) | 2016-07-01 |
Family
ID=47044883
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW101140145A TWI540425B (zh) | 2011-12-30 | 2012-10-30 | 用於非二進位制解碼低密度奇偶檢查編碼資料之設備、解碼在一混合域非二進位制低密度奇偶檢查解碼器中之資料之方法及儲存系統 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US8819515B2 (zh) |
| EP (1) | EP2611037B1 (zh) |
| JP (1) | JP2013141204A (zh) |
| KR (1) | KR20130079134A (zh) |
| CN (1) | CN103187979B (zh) |
| TW (1) | TWI540425B (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI717171B (zh) * | 2019-12-26 | 2021-01-21 | 大陸商深圳大心電子科技有限公司 | 資料讀取方法、儲存控制器與儲存裝置 |
Families Citing this family (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104995844B (zh) * | 2013-02-14 | 2018-11-30 | 马维尔国际贸易有限公司 | 具有对于ldpc码可靠性输入的比特翻转解码 |
| WO2014138246A1 (en) | 2013-03-07 | 2014-09-12 | Marvell World Trade Ltd. | Systems and methods for decoding with late reliability information |
| CN105052066B (zh) | 2013-03-21 | 2018-12-25 | 马维尔国际贸易有限公司 | 用于多阶段软输入解码的系统和方法 |
| US9048867B2 (en) * | 2013-05-21 | 2015-06-02 | Lsi Corporation | Shift register-based layered low density parity check decoder |
| CN103731159A (zh) * | 2014-01-09 | 2014-04-16 | 北京邮电大学 | 一种对先验信息迭代应用的混合域fft多进制和积译码算法 |
| US9378765B2 (en) | 2014-04-03 | 2016-06-28 | Seagate Technology Llc | Systems and methods for differential message scaling in a decoding process |
| US9734129B2 (en) | 2014-04-22 | 2017-08-15 | Sandisk Technologies Llc | Low complexity partial parallel architectures for Fourier transform and inverse Fourier transform over subfields of a finite field |
| US9432055B2 (en) * | 2014-06-26 | 2016-08-30 | Sandisk Technologies Llc | Encoder for quasi-cyclic low-density parity-check codes over subfields using fourier transform |
| US9444493B2 (en) | 2014-06-26 | 2016-09-13 | Sandisk Technologies Llc | Encoder with transform architecture for LDPC codes over subfields using message mapping |
| KR102372362B1 (ko) | 2015-09-22 | 2022-03-08 | 삼성전자주식회사 | 부호화된 크기 방식을 이용한 디지털 신호 프로세서 및 이를 포함하는 무선 통신 수신기 |
| CN107026654B (zh) * | 2016-02-02 | 2019-06-18 | 中国科学院声学研究所 | 一种准循环多进制低密度奇偶校验码的快速频域编码方法 |
| KR102626162B1 (ko) * | 2016-06-14 | 2024-01-18 | 삼성전자주식회사 | 연산 복잡도를 감소시킬 수 있는 디코더의 동작 방법과 이를 포함하는 데이터 저장 장치의 동작 방법 |
| EP3419179B1 (en) * | 2017-06-19 | 2022-11-02 | Universite De Bretagne Sud | Hybrid architectures for check node processing of extended min-sum (ems) decoding of non-binary ldpc codes |
| CN112118013A (zh) * | 2019-06-20 | 2020-12-22 | 南京大学 | 一种适用于多进制ldpc码的高性能、低复杂度的迭代大数逻辑译码方法 |
| CN117785025B (zh) * | 2023-11-17 | 2024-05-10 | 青海师范大学 | Ecc与raid5混合编码优化ssd读性能的方法 |
| CN117879620B (zh) * | 2024-03-13 | 2024-07-05 | 荣耀终端有限公司 | 译码方法、可读存储介质、程序产品及电子设备 |
| CN120522451B (zh) * | 2025-07-18 | 2025-09-19 | 中国计量大学 | 一种基于fpga的多路并行单比特测频的实现方法 |
Family Cites Families (97)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0443721A (ja) | 1990-06-11 | 1992-02-13 | Matsushita Electric Ind Co Ltd | ディジタル信号復号装置 |
| US5612964A (en) | 1991-04-08 | 1997-03-18 | Haraszti; Tegze P. | High performance, fault tolerant orthogonal shuffle memory and method |
| CA2067669C (en) | 1991-04-30 | 1997-10-28 | Akihisa Ushirokawa | Method and apparatus of estimating data sequence transmitted using viterbi algorithm |
| US5278703A (en) | 1991-06-21 | 1994-01-11 | Digital Equipment Corp. | Embedded servo banded format for magnetic disks for use with a data processing system |
| US5392299A (en) | 1992-01-15 | 1995-02-21 | E-Systems, Inc. | Triple orthogonally interleaed error correction system |
| US5317472A (en) | 1992-03-17 | 1994-05-31 | Schweitzer Engineering Laboratories, Inc. | Apparatus for insuring the security of output signals from protective relays used in electric power systems |
| US5513192A (en) | 1992-08-28 | 1996-04-30 | Sun Microsystems, Inc. | Fault tolerant disk drive system with error detection and correction |
| GB9317604D0 (en) | 1993-08-24 | 1993-10-06 | Philips Electronics Uk Ltd | Receiver for ds-cdma signals |
| US5417500A (en) | 1993-09-13 | 1995-05-23 | Reliance Electric Industrial Company | Bearing assembly utilizing improved clamping collar |
| ZA947317B (en) | 1993-09-24 | 1995-05-10 | Qualcomm Inc | Multirate serial viterbi decoder for code division multiple access system applications |
| US5523903A (en) | 1993-12-23 | 1996-06-04 | International Business Machines Corporation | Sector architecture for fixed block disk drive |
| US5550870A (en) | 1994-03-02 | 1996-08-27 | Lucent Technologies Inc. | Viterbi processor |
| JPH07245635A (ja) | 1994-03-04 | 1995-09-19 | Sony Corp | 信号点マッピング方法および信号点検出方法 |
| EP0677967A3 (en) | 1994-04-12 | 1997-07-23 | Gold Star Co | Viterbi decoder for high-definition television. |
| US5898710A (en) | 1995-06-06 | 1999-04-27 | Globespan Technologies, Inc. | Implied interleaving, a family of systematic interleavers and deinterleavers |
| JPH09232973A (ja) | 1996-02-28 | 1997-09-05 | Sony Corp | ビタビ復号器 |
| US6023783A (en) | 1996-05-15 | 2000-02-08 | California Institute Of Technology | Hybrid concatenated codes and iterative decoding |
| US5978414A (en) | 1996-07-03 | 1999-11-02 | Matsushita Electric Industrial Co., Ltd. | Transmission rate judging unit |
| US5802118A (en) | 1996-07-29 | 1998-09-01 | Cirrus Logic, Inc. | Sub-sampled discrete time read channel for computer storage systems |
| JP3310185B2 (ja) | 1996-11-21 | 2002-07-29 | 松下電器産業株式会社 | 誤り訂正装置 |
| US6377610B1 (en) | 1997-04-25 | 2002-04-23 | Deutsche Telekom Ag | Decoding method and decoding device for a CDMA transmission system for demodulating a received signal available in serial code concatenation |
| US5983383A (en) | 1997-01-17 | 1999-11-09 | Qualcom Incorporated | Method and apparatus for transmitting and receiving concatenated code data |
| US6029264A (en) | 1997-04-28 | 2000-02-22 | The Trustees Of Princeton University | System and method for error correcting a received data stream in a concatenated system |
| KR100484127B1 (ko) | 1997-08-07 | 2005-06-16 | 삼성전자주식회사 | 비터비디코더 |
| US6005897A (en) | 1997-12-16 | 1999-12-21 | Mccallister; Ronald D. | Data communication system and method therefor |
| JP3900637B2 (ja) | 1997-12-19 | 2007-04-04 | ソニー株式会社 | ビタビ復号装置 |
| US6535553B1 (en) | 1998-06-19 | 2003-03-18 | Samsung Electronics Co., Ltd. | Passband equalizers with filter coefficients calculated from modulated carrier signals |
| US6145110A (en) | 1998-06-22 | 2000-11-07 | Ericsson Inc. | Digital data decoder that derives codeword estimates from soft data |
| KR100277764B1 (ko) | 1998-12-10 | 2001-01-15 | 윤종용 | 통신시스템에서직렬쇄상구조를가지는부호화및복호화장치 |
| US6381726B1 (en) | 1999-01-04 | 2002-04-30 | Maxtor Corporation | Architecture for soft decision decoding of linear block error correcting codes |
| US6216249B1 (en) | 1999-03-03 | 2001-04-10 | Cirrus Logic, Inc. | Simplified branch metric for reducing the cost of a trellis sequence detector in a sampled amplitude read channel |
| US6216251B1 (en) | 1999-04-30 | 2001-04-10 | Motorola Inc | On-chip error detection and correction system for an embedded non-volatile memory array and method of operation |
| US6266795B1 (en) | 1999-05-28 | 2001-07-24 | Lucent Technologies Inc. | Turbo code termination |
| US6473878B1 (en) | 1999-05-28 | 2002-10-29 | Lucent Technologies Inc. | Serial-concatenated turbo codes |
| US6351832B1 (en) | 1999-05-28 | 2002-02-26 | Lucent Technologies Inc. | Turbo code symbol interleaver |
| US6810502B2 (en) | 2000-01-28 | 2004-10-26 | Conexant Systems, Inc. | Iteractive decoder employing multiple external code error checks to lower the error floor |
| US7184486B1 (en) | 2000-04-27 | 2007-02-27 | Marvell International Ltd. | LDPC encoder and decoder and method thereof |
| US6757862B1 (en) | 2000-08-21 | 2004-06-29 | Handspring, Inc. | Method and apparatus for digital data error correction coding |
| US6970511B1 (en) | 2000-08-29 | 2005-11-29 | Lucent Technologies Inc. | Interpolator, a resampler employing the interpolator and method of interpolating a signal associated therewith |
| CN1161759C (zh) * | 2000-10-10 | 2004-08-11 | 骆俊光 | 记忆硬盘的存取方法及装置 |
| JP4324316B2 (ja) | 2000-10-23 | 2009-09-02 | 株式会社日立グローバルストレージテクノロジーズ | 垂直磁気記録再生装置 |
| WO2002078196A1 (en) | 2001-03-22 | 2002-10-03 | University Of Florida | Method and coding means for error-correction utilizing concatenated parity and turbo codes |
| US7295623B2 (en) | 2001-07-11 | 2007-11-13 | Vativ Technologies, Inc. | High-speed communications transceiver |
| US6904084B2 (en) | 2001-09-05 | 2005-06-07 | Mediatek Incorporation | Read channel apparatus and method for an optical storage system |
| US7073118B2 (en) | 2001-09-17 | 2006-07-04 | Digeo, Inc. | Apparatus and method for saturating decoder values |
| US6986098B2 (en) | 2001-11-20 | 2006-01-10 | Lsi Logic Corporation | Method of reducing miscorrections in a post-processor using column parity checks |
| AU2003247805A1 (en) | 2002-07-03 | 2004-01-23 | Hughes Electronics Corporation | Encoding of low-density parity check (ldpc) codes using a structured parity check matrix |
| US6785863B2 (en) | 2002-09-18 | 2004-08-31 | Motorola, Inc. | Method and apparatus for generating parity-check bits from a symbol set |
| US7058873B2 (en) | 2002-11-07 | 2006-06-06 | Carnegie Mellon University | Encoding method using a low density parity check code with a column weight of two |
| US7702986B2 (en) | 2002-11-18 | 2010-04-20 | Qualcomm Incorporated | Rate-compatible LDPC codes |
| US7047474B2 (en) | 2002-12-23 | 2006-05-16 | Do-Jun Rhee | Decoding concatenated codes via parity bit recycling |
| US7117427B2 (en) | 2003-07-09 | 2006-10-03 | Texas Instruments Incorporated | Reduced complexity decoding for trellis coded modulation |
| US7313750B1 (en) | 2003-08-06 | 2007-12-25 | Ralink Technology, Inc. | Efficient soft decision demapper to minimize viterbi decoder complexity |
| US7133228B2 (en) | 2003-10-10 | 2006-11-07 | Seagate Technology Llc | Using data compression to achieve lower linear bit densities on a storage medium |
| JP4296949B2 (ja) * | 2004-02-03 | 2009-07-15 | ソニー株式会社 | 復号装置及び方法、並びに情報処理装置及び方法 |
| US7958425B2 (en) | 2004-02-19 | 2011-06-07 | Trelliware Technologies, Inc. | Method and apparatus for communications using turbo like codes |
| US7243287B2 (en) * | 2004-05-03 | 2007-07-10 | Broadcom Corporation | Decoding LDPC (Low Density Parity Check) code and graphs using multiplication (or addition in log-domain) on both sides of bipartite graph |
| US7415651B2 (en) | 2004-06-02 | 2008-08-19 | Seagate Technology | Data communication system with multi-dimensional error-correction product codes |
| CN100593911C (zh) * | 2004-07-19 | 2010-03-10 | 德克萨斯仪器股份有限公司 | 一种对通信系统中接收到的层数据进行解码的方法和系统 |
| US7730377B2 (en) * | 2004-07-22 | 2010-06-01 | Texas Instruments Incorporated | Layered decoding of low density parity check (LDPC) codes |
| WO2006039801A1 (en) | 2004-10-12 | 2006-04-20 | Nortel Networks Limited | System and method for low density parity check encoding of data |
| KR100641052B1 (ko) * | 2004-12-08 | 2006-11-02 | 한국전자통신연구원 | Ldpc 부호기 및 복호기, 및 ldpc 부호화 방법 및복호화 방법 |
| US7646829B2 (en) | 2004-12-23 | 2010-01-12 | Agere Systems, Inc. | Composite data detector and a method for detecting data |
| US7779325B2 (en) | 2005-01-24 | 2010-08-17 | Agere Systems Inc. | Data detection and decoding system and method |
| US7475103B2 (en) * | 2005-03-17 | 2009-01-06 | Qualcomm Incorporated | Efficient check node message transform approximation for LDPC decoder |
| US7370258B2 (en) | 2005-04-28 | 2008-05-06 | Sandbridge Technologies Inc. | Iterative concatenated convolutional Reed-Solomon decoding method |
| US7587657B2 (en) | 2005-04-29 | 2009-09-08 | Agere Systems Inc. | Method and apparatus for iterative error-erasure decoding |
| US7802172B2 (en) | 2005-06-20 | 2010-09-21 | Stmicroelectronics, Inc. | Variable-rate low-density parity check codes with constant blocklength |
| US7523375B2 (en) | 2005-09-21 | 2009-04-21 | Distribution Control Systems | Set of irregular LDPC codes with random structure and low encoding complexity |
| JP2007087529A (ja) * | 2005-09-22 | 2007-04-05 | Rohm Co Ltd | 信号復号装置、信号復号方法、および記憶システム |
| KR100856212B1 (ko) * | 2005-11-11 | 2008-09-03 | 삼성전자주식회사 | 무선통신 시스템에서 채널 복호기로 입력되는 메트릭의정규화 방법 및 장치 |
| US7752523B1 (en) | 2006-02-13 | 2010-07-06 | Marvell International Ltd. | Reduced-complexity decoding of parity check codes |
| KR100933139B1 (ko) * | 2006-02-22 | 2009-12-21 | 삼성전자주식회사 | 통신 시스템에서 신호 수신 장치 및 방법 |
| JP4992900B2 (ja) | 2006-08-02 | 2012-08-08 | 富士通株式会社 | 受信装置及びその復号方法 |
| US8705752B2 (en) | 2006-09-20 | 2014-04-22 | Broadcom Corporation | Low frequency noise reduction circuit architecture for communications applications |
| 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 |
| US20080304558A1 (en) | 2007-06-06 | 2008-12-11 | Hong Kong University Of Science And Technology | Hybrid time-frequency domain equalization over broadband multi-input multi-output channels |
| US7752531B2 (en) * | 2007-09-12 | 2010-07-06 | Seagate Technology Llc | Defect sensing Viterbi based detector |
| US8711984B2 (en) | 2008-01-22 | 2014-04-29 | Agere Systems Llc | Methods and apparatus for map detection with reduced complexity |
| CN101981932B (zh) * | 2008-03-27 | 2013-03-13 | 汤姆森特许公司 | 用于对信号译码的装置和方法 |
| US8201051B2 (en) | 2008-10-15 | 2012-06-12 | Lsi Corporation | Method for detecting short burst errors in LDPC system |
| JP5173021B2 (ja) | 2008-05-19 | 2013-03-27 | アギア システムズ インコーポレーテッド | データ検出器フィードバックループにおいて遅延を軽減するためのシステム及び方法 |
| US7952824B2 (en) | 2009-03-06 | 2011-05-31 | Agere Systems Inc. | Systems and methods for defective media region identification |
| JP5148586B2 (ja) * | 2009-12-01 | 2013-02-20 | 株式会社東芝 | 復号装置および復号方法 |
| US8578253B2 (en) | 2010-01-04 | 2013-11-05 | Lsi Corporation | Systems and methods for updating detector parameters in a data processing circuit |
| WO2011127287A1 (en) | 2010-04-08 | 2011-10-13 | Marvell World Trade Ltd. | Non-binary ldpc code decoder |
| CN102859885B (zh) * | 2010-04-09 | 2015-10-07 | Sk海尼克斯存储技术公司 | Ldpc选择性解码调度的实现 |
| US8443249B2 (en) | 2010-04-26 | 2013-05-14 | Lsi Corporation | Systems and methods for low density parity check data encoding |
| US8237597B2 (en) | 2010-09-21 | 2012-08-07 | Lsi Corporation | Systems and methods for semi-independent loop processing |
| US8295001B2 (en) | 2010-09-21 | 2012-10-23 | Lsi Corporation | Systems and methods for low latency noise cancellation |
| US8667039B2 (en) | 2010-11-17 | 2014-03-04 | Lsi Corporation | Systems and methods for variance dependent normalization for branch metric calculation |
| US8325433B2 (en) | 2011-01-19 | 2012-12-04 | Lsi Corporation | Systems and methods for reduced format data processing |
| US8261171B2 (en) | 2011-01-27 | 2012-09-04 | Lsi Corporation | Systems and methods for diversity combined data detection |
| 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 |
| US8670955B2 (en) | 2011-04-15 | 2014-03-11 | Lsi Corporation | Systems and methods for reliability assisted noise predictive filtering |
| US8611033B2 (en) | 2011-04-15 | 2013-12-17 | Lsi Corporation | Systems and methods for selective decoder input data processing |
-
2011
- 2011-12-30 US US13/340,951 patent/US8819515B2/en active Active
-
2012
- 2012-10-15 JP JP2012227764A patent/JP2013141204A/ja active Pending
- 2012-10-17 EP EP12188837.4A patent/EP2611037B1/en active Active
- 2012-10-29 KR KR1020120120582A patent/KR20130079134A/ko not_active Withdrawn
- 2012-10-29 CN CN201210420896.XA patent/CN103187979B/zh active Active
- 2012-10-30 TW TW101140145A patent/TWI540425B/zh not_active IP Right Cessation
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI717171B (zh) * | 2019-12-26 | 2021-01-21 | 大陸商深圳大心電子科技有限公司 | 資料讀取方法、儲存控制器與儲存裝置 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP2611037B1 (en) | 2016-04-13 |
| KR20130079134A (ko) | 2013-07-10 |
| CN103187979B (zh) | 2017-08-11 |
| US8819515B2 (en) | 2014-08-26 |
| TW201331750A (zh) | 2013-08-01 |
| CN103187979A (zh) | 2013-07-03 |
| EP2611037A1 (en) | 2013-07-03 |
| JP2013141204A (ja) | 2013-07-18 |
| US20130173988A1 (en) | 2013-07-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI540425B (zh) | 用於非二進位制解碼低密度奇偶檢查編碼資料之設備、解碼在一混合域非二進位制低密度奇偶檢查解碼器中之資料之方法及儲存系統 | |
| US8756478B2 (en) | Multi-level LDPC layer decoder | |
| US9459956B2 (en) | Data decoder with trapping set flip bit mapper | |
| US8996969B2 (en) | Low density parity check decoder with miscorrection handling | |
| US9015550B2 (en) | Low density parity check layer decoder for codes with overlapped circulants | |
| US9048874B2 (en) | Min-sum based hybrid non-binary low density parity check decoder | |
| TW201513103A (zh) | 非二進位分層低密度同位檢查解碼器 | |
| US20130061112A1 (en) | Multi-Level LDPC Layer Decoder | |
| US20130111289A1 (en) | Systems and methods for dual process data decoding | |
| US20160020783A1 (en) | Low Density Parity Check Decoder With Relative Indexing | |
| US10164657B2 (en) | Systems and methods for differential message scaling in a decoding process | |
| US8850295B2 (en) | Symbol flipping data processor | |
| US9419651B2 (en) | Non-polynomial processing unit for soft-decision error correction coding | |
| US20170149445A1 (en) | Irregular Low Density Parity Check Processing System With Non-Uniform Scaling | |
| JP2007087529A (ja) | 信号復号装置、信号復号方法、および記憶システム | |
| US9130589B2 (en) | Low density parity check decoder with dynamic scaling | |
| US20140082449A1 (en) | LDPC Decoder With Variable Node Hardening | |
| JP2014064269A (ja) | 部分ローカル反復を用いたldpc復号化器 | |
| US8949696B2 (en) | Systems and methods for trapping set disruption | |
| US8312343B2 (en) | Systems and methods for re-using decoding parity in a detector circuit | |
| TW201406071A (zh) | 用於雙二進位及非二進位解碼處理的系統及方法 | |
| US8719686B2 (en) | Probability-based multi-level LDPC decoder | |
| US20140372836A1 (en) | Systems and Methods for Data Processing Control |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |