TWI774417B - 基於權重調整演算法參數的解碼方法與解碼系統 - Google Patents

基於權重調整演算法參數的解碼方法與解碼系統 Download PDF

Info

Publication number
TWI774417B
TWI774417B TW110121280A TW110121280A TWI774417B TW I774417 B TWI774417 B TW I774417B TW 110121280 A TW110121280 A TW 110121280A TW 110121280 A TW110121280 A TW 110121280A TW I774417 B TWI774417 B TW I774417B
Authority
TW
Taiwan
Prior art keywords
information
minimum value
variable
node
check
Prior art date
Application number
TW110121280A
Other languages
English (en)
Other versions
TW202249439A (zh
Inventor
黃亮維
蔡韻芝
Original Assignee
瑞昱半導體股份有限公司
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 瑞昱半導體股份有限公司 filed Critical 瑞昱半導體股份有限公司
Priority to TW110121280A priority Critical patent/TWI774417B/zh
Priority to US17/835,325 priority patent/US20220399903A1/en
Application granted granted Critical
Publication of TWI774417B publication Critical patent/TWI774417B/zh
Publication of TW202249439A publication Critical patent/TW202249439A/zh

Links

Images

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
    • H03M13/1125Soft-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
    • 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
    • H03M13/1117Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule
    • 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/458Soft decoding, i.e. using symbol reliability information by updating bit probabilities or hard decisions in an iterative fashion for convergence to a final decoding result
    • 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/47Error detection, forward error correction or error protection, not provided for in groups H03M13/01 - H03M13/37
    • H03M13/51Constant weight codes; n-out-of-m codes; Berger codes
    • 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/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6516Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields

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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

說明書提出一種基於權重調整演算法參數的解碼方法與解碼系統,應用於一解碼器中,輸入信號生成M×N的低密度同位元校驗碼,其中有N個變量節點以及M個校驗節點。在方法中,初始化其中變量節點與校驗節點的資訊,其中經多次疊代,形成各變量節點給多個校驗節點的資訊,排除要算的連結後,將其餘連線算和後,更新多個變量節點,再經多次疊代,形成各校驗節點給多個變量節點的資訊,排除要算的連結後,將其餘連線算積,再根據多維參數來得出估測第一最小值或估測第二最小值,以更新校驗節點給變量節點的資訊,並藉此執行一決策。

Description

基於權重調整演算法參數的解碼方法與解碼系統
說明書提出一種解碼技術,特別是一種基於權重修正解碼器中演算法參數以增進效能的解碼方法與解碼系統。
低密度同位元校驗碼(low density parity check code,LDPC code)為用於更正信號傳輸過程中發生錯誤的編碼方式,可讓信號傳輸逼近向農限制(Shannon limit)的效能(向農限制指的是在指定雜訊標準下的最大傳輸率),因此成為現階段最熱門的錯誤更正碼。低密度同位元校驗碼可見於各種需要解編碼的系統中,如IEEE802.11n(wireless local area network)、衛星電視系統(satellite television system)以及IEEE802.3an(10Gbps Ethernet communication over unshielded twisted pair)等。
最佳的低密度同位元校驗碼解碼效能(decoding performance)是使用一種信任傳播(belief propagation,BP)遞迴的軟解碼(soft decoding),也就是一種和積(sum-product,SP)演算法。然而,習知的和積演算法的硬體複雜度過高,因此後來發展簡化的版本,如一種最小和演算法(min-sum (MS) algorithm)。然而,雖然最小和演算法在硬體複雜度大幅減少,但也產生嚴重的效能降低(performance degradation)問題,所以在之後便發展出基於最小和演算法但改善了效能降低問題的正規化最小和演算法(normalized min-sum (NMS) algorithm)以及補償式最小和演算法(offset min-sum (OMS) algorithm),使得僅增加少量的硬體複雜度,卻有著如之前和積演算法的效能,也是目前較受矚目的演算法。
不過,儘管所述正規化最小和演算法以及補償式最小和演算法能夠提供較低複雜度的解碼器(decoder)架構,所述最小和演算法中計算校驗節點更新(check node update)時需要執行搜尋(searching)第一最小值(min1,如為最小值)與第二最小值(min2,如為次小值)的運算,這個運算的複雜度完全由校驗節點的程度(check node degree)來決定,也就是由校驗方程式(check equation)所涵蓋的變量節點(variable nodes)的數量來決定。
舉例來說,以10Gbps乙太網路系統為例,低密度同位元校驗碼解碼器(LDPC decoder)架構中的校驗節點程度為32,也就是說每次執行校驗節點更新都必須由這些32個變量節點(variable nodes)找出所述第一最小值(min1)與第二最小值(min2),這個運算限制住了解碼器的時脈速度(clock rate)、時間延遲(latency)、硬體面積、疊代次數(iteration number)以及效能。
所述第一最小值(min1)為最小值,第二最小值(min2)為次小值,其中搜尋最小值的負擔相對小,搜尋次小值需要排序的過程,因此處理器負擔較大,且變量節點的數量愈多,計算量也愈大。為了能夠避免因為搜尋第二最小值所增加的負擔,習知技術進而發展出單一最小值(single-min)演算法(SMA),所謂的單一最小值演算法架構主要是修改上述最小和演算法中校驗節點更新的行為,單一最小值演算法不再搜尋第二最小值,而僅搜尋第一最小值,取而代之的是以單一最小值演算法估測第二最小值,換句話說是以估測得出第二最小值後,稱此為估測第二最小值(可稱為min2 est),此等於加擾(Scrambling)的第二最小值。
當適當地產生的估測第二最小值(min2 est),即具有減輕低密度同位元校驗碼錯誤底(error floor)的現象。所述錯誤底現象即是低密度同位元校驗碼在錯誤率(error rate)達到足夠低的情況時(舉例來說,以IEEE802.3an來說,錯誤率通常發生在BER = 10 -10、FER = 10 -8區間),會開始因為陷阱集合(trapping set)或是吸收集合(absorbing set)導致錯誤率下降趨勢減緩的現象,這對系統的效能來說為不好的影響。而所述單一最小值演算法因為適當地加入雜訊,使得低密度同位元校驗碼增加逃脫所述陷阱集合的機會,使得單一最小值演算法能夠減緩錯誤底的影響。
揭露書提出一種基於權重調整演算法參數的解碼方法與解碼系統,除了具備習知經過改善解碼效能的單一最小值演算法的好處外,還通過權重調整的方式將原本單一最小值最小和演算法的兩個維度的變數修正為三個維度,提出一種修正的單一最小值最小和演算法,使得增加使用範圍,可以配合更多的調變方式,以及獲得更廣的固定點範圍。
根據實施例,所提出的基於權重調整演算法參數的解碼方法應用於一解碼器中,輸入信號生成M×N的低密度同位元校驗碼(LDPC),其中有多個(N個)變量節點(variable node)以及多個(M個)校驗節點(check node),方法包括初始化多個變量節點與多個校驗節點的資訊,其中經多次疊代,形成各變量節點給多個校驗節點的資訊,排除要算的連結後,將其餘連線算和,以此更新各變量節點根據相互連接的多個校驗節點的資訊,接著,經多次疊代,形成各校驗節點給多個變量節點的資訊,排除要算的連結後,將其餘連線算積,以此更新各校驗節點根據互相連接的多個變量節點的資訊,之後根據判斷與估測第一最小值或估測第二最小值計算內積,可得出校驗節點給變量節點的資訊,並藉此執行一決策。
在取得估測第一最小值與估測第二最小值的方法中,先搜尋更新後的多個變量節點的最小值,得出第一最小值,利用得出第一最小值時的附屬信息得出一偽第二最小值,以第一參數(α)乘上得出的第一最小值,得出估測第一最小值,再以第二參數(β)乘以第一最小值加上以第三參數(γ)乘上偽第二最小值得出的結果,得出估測第二最小值。
第一參數(α)、該第二參數(β)以及該第三參數(γ)符合關係式
Figure 02_image009
,所應用的方程式如下,其中’N’為變量節點數量;’M’為校驗節點數量;’n’為變量節點編號;’m’為校驗節點編號;’
Figure 02_image011
’為編號m的校驗節點給編號n的變量節點的資訊;’
Figure 02_image013
’表示排除要算的連結的其餘變量節點編號;’
Figure 02_image015
’為排除要算的連結後其餘編號’
Figure 02_image013
’的變量節點給編號m的校驗節點的資訊,也就是
Figure 02_image017
資訊;符號函式’sign()’為根據函式中的數值是0、正數或是負數而分別返回0、1或-1;’
Figure 02_image019
’為第一最小值;函式’
Figure 02_image021
’為取最小值的函式;’
Figure 02_image023
’為估測第一最小值;’
Figure 02_image025
’為估測第二最小值;’
Figure 02_image027
’為偽第二最小值。
For
Figure 02_image029
Figure 02_image031
Figure 02_image033
Figure 02_image035
min1;
Figure 02_image037
優選地,其中判斷估測第一最小值或估測第二最小值的方法為根據一校驗節點給變量節點的資訊中的變量節點編號是否是最小的變量節點給校驗節點的資訊位置的判斷結果而定。
並且,將變量節點的內在信息以及通過校驗節點與其他變量節點的連線更新校驗節點給多個變量節點的資訊加總後,可以得出變量節點的資訊而作出決策。
為使能更進一步瞭解本發明的特徵及技術內容,請參閱以下有關本發明的詳細說明與圖式,然而所提供的圖式僅用於提供參考與說明,並非用來對本發明加以限制。
以下是通過特定的具體實施例來說明本發明的實施方式,本領域技術人員可由本說明書所公開的內容瞭解本發明的優點與效果。本發明可通過其他不同的具體實施例加以施行或應用,本說明書中的各項細節也可基於不同觀點與應用,在不悖離本發明的構思下進行各種修改與變更。另外,本發明的附圖僅為簡單示意說明,並非依實際尺寸的描繪,事先聲明。以下的實施方式將進一步詳細說明本發明的相關技術內容,但所公開的內容並非用以限制本發明的保護範圍。
應當可以理解的是,雖然本文中可能會使用到“第一”、“第二”、“第三”等術語來描述各種元件或者信號,但這些元件或者信號不應受這些術語的限制。這些術語主要是用以區分一元件與另一元件,或者一信號與另一信號。另外,本文中所使用的術語“或”,應視實際情況可能包括相關聯的列出項目中的任一個或者多個的組合。
揭露書公開一種基於權重調整演算法參數的解碼方法與解碼系統,其中提出一種修正的單一最小值最小和演算法(modified SMAMSA),通過比習知演算法更多維度的變數,除了可以改善效能外,還增加了應用的範圍,還能實現更低的錯誤率、降低硬體複雜度以及降低耗電。
所述實現基於權重調整演算法參數的解碼方法的解碼系統架構示意圖可參考圖1所示,在所應用的通訊系統的信號傳輸的過程中,為了校驗傳輸媒介可能因為干擾而使得資料受到破壞進而降低信號傳輸的可靠度,在傳輸時使用錯誤更正碼(error correction code),如低密度同位元校驗碼(LDPC),即在傳送信號時加入多餘的資訊,提供接受端從接收到的資訊推論出正確的資訊,以還原受到破壞的信息。
解碼系統包括位於接收端的解碼器,解碼器通過輸入電路101接收信號,如通信信號,經初步處理後,輸出至LLR(對數相似比值(log-likelihood ratio))運算器103,LLR運算器103將提供對數相似比值,目的是能得到較低的錯誤率與較高的效能,另外,還可以解碼定標(scaling)控制對數相似比值(LLR),以提供正確的對數相似比值給低密度同位元校驗器(LDPC)105,在解碼方面根據其中的校驗節點及變量節點的連接關係進行多次的更新及疊代運算,最後通過演算的機率確認信號內容,最後經輸出電路107輸出解碼後的信號。
為求突顯基於權重調整演算法參數的解碼方法與解碼系統的技術特徵,在此先描述現行技術中單一最小值演算法(single minimum algorithm)以及最小和演算法(min-sum algorithm)之間的差異,以下範例為一最小和演算法解碼流程。
揭露書所提出的各階段演算法,包括修正的單一最小值最小和演算法(modified SMAMSA),應用於一解碼器中,在最小和演算法中,提出一個
Figure 02_image039
的低密度同位元校驗碼,其中有N個變量節點以及M個校驗節點。在此一提的是,運算的複雜度由校驗節點的程度來決定,也就是由校驗方程式所涵蓋的變量節點的數量來決定。相關演算可參考圖2顯示用來演示低密度同位元校驗碼的解碼過程的坦納圖(Tanner graph)的範例示意圖。
圖2顯示有多個(N個)變量節點(variable node)21以及多個(M個)校驗節點(check node)22,圖中顯示的解碼器的解碼過程是應用到信息傳遞(Message Passing)的概念,由多個變量節點21及多個校驗節點22各端互相算出機率再傳送給另一端。圖中在計算由一特定變量節點到某一校驗節點的機率(可以第n個變量節點211到第m個校驗節點221為例),是由除了第n個變量節點211與第m個校驗節點221之間連結以外,連結到此第n個變量節點211的其他所有校驗節點所決定的。
對照以下描述低密度同位元校驗碼解碼演算的方程式,設n為變量節點編號,m為校驗節點編號,
Figure 02_image041
表示那些參與到目前校驗方程式m(第m個校驗方程式)的所有變量節點(N)21;
Figure 02_image043
表示那些參與到目前變量節點n(第n個變量節點)的所有校驗方程式(校驗節點(M)22)。
圖2示意表示多個變量節點21與多個校驗節點22之間的多個連線,以此表示低密度同位元校驗碼的解碼過程是經由以上兩種節點互相算出機率後,再將資訊傳送給另一方,以其中第n個變量節點211與第m個校驗節點221的連線為例,在初始化過程中,內在信息(intrinsic information)寫入多個變量節點21中,這是解碼器的對數相似比值(LLR),用以表達這個變數節點的值是接近0的值或是接近1的值。i=k 表示低密度同位元校驗碼(LDPC)解碼程序中第k次疊代(iteration);
Figure 02_image045
表示在第k次疊代中編號n的變量節點(第n個變量節點211)給編號m的校驗節點(第m個校驗節點221)的v2c資訊(v2c information)201,其中v2c表示變量節點到校驗節點的簡稱;
Figure 02_image047
表示在第k次疊代中編號m的校驗節點(第m個校驗節點221)給編號n的變量節點(第n個變量節點211)的c2v資訊(c2v information)202,c2v表示校驗節點到變量節點的資訊。
Figure 02_image049
表示變量節點n的內在信息,內在信息表示進入系統時原始資訊;
Figure 02_image051
為正規化因子(normalization factor),其中,在一般最小和演算法(MS),
Figure 02_image053
;在正規化最小和演算法(NMS),
Figure 02_image055
以下為最小和演算法各個階段的演算步驟。
在初始化階段(Initialization),對多個變量節點逐一寫入內在信息,針對校驗節點,在初始時i=0,尚未進行疊代(第0次疊代)時,如方程式一,
Figure 02_image057
為0(校驗節點初始為0),其中符號
Figure 02_image059
表示任意一個,
Figure 02_image061
表示屬於,
Figure 02_image063
表示屬於
Figure 02_image041
的任何一個n。
方程式一:
Figure 02_image065
第一步:更新變量節點(variable-node update),如方程式二,更新變量節點給校驗節點的資訊(v2c資訊),其中有N個變量節點,有M個校驗節點,n為變量節點編號,m為校驗節點編號。
方程式二: For
Figure 02_image067
Figure 02_image069
進一步地,第k次疊代,
Figure 02_image045
形成變量節點給校驗節點(第m個)的資訊,排除要算的連結後,將其餘連線算和(sum),也就是其餘連線就是參與第m個校驗節點(校驗方程式)的變量節點。示意圖可參考圖3以坦納圖來演示低密度同位元校驗碼解碼過程算和的範例示意圖,以第n個變量節點211傳送給第m個校驗節點221的資訊為例,在通過多次疊代演算形成變量節點給校驗節點的資訊(
Figure 02_image045
)的過程中,即排除圖中v2c資訊201代表的連線,但要取得其他幾個校驗節點311、312與313連線(301、302與303)到第n個變量節點211形成的資訊(c2v資訊)和第n個變量節點211本身的內在信息(
Figure 02_image049
)的和,合成得出更新變量節點的資訊
Figure 02_image071
第二步:更新校驗節點(check-node update),如方程式三,也就是更新第m個校驗節點221給第n個變量節點211資訊(c2v資訊201)。算式中的符號函數(sign())為根據函數中的數值是0、正數或是負數而分別返回0、1或-1。
方程式三: For
Figure 02_image073
Figure 02_image075
第k次疊代,
Figure 02_image047
形成校驗節點給變量節點的資訊,排除要算的連結後,將其餘連線算積(product),找最小值。示意圖可參考圖4以坦納圖來演示低密度同位元校驗碼解碼過程中算積的範例示意圖,以第m個校驗節點221傳送給第n個變量節點211為例,在通過多次疊代演算形成校驗節點給變量節點的資訊(
Figure 02_image047
)的過程中,排除圖中c2v資訊202連線,但要取得其他幾個變量節點411、412與413連線(401、402與403)到第m個校驗節點221形成的資訊(v2c資訊)的積,並找最小值後,得出
Figure 02_image077
,用以更新第m個校驗節點221到第n個變量節點211的信息(c2v資訊)。
在決策階段,即將以上所得到的所有資訊加總,作出最終決策。第一步使用硬決策(Hard Decision)演算法解碼,每個輸入和輸出信號以1或0表示。如方程式四,將變量節點的內在信息(
Figure 02_image049
)以及通過校驗節點與其他變量節點的連線更新校驗節點給多個變量節點的資訊加總(
Figure 02_image079
),以得出變量節點的資訊(
Figure 02_image081
)作出最終決策:
Figure 02_image083
為0或1。
方程式四:
Figure 02_image085
Figure 02_image087
第三步:以上述初始化階段的第二步修改採用單一最小值最小和演算法(single-min algorithm min-sum algorithm,SMAMSA),其中在校驗節點更新上面修改成方程式五。
在方程式五中,更新校驗節點(check-node update),也就是更新c2v資訊,其中有N個變量節點以及M個校驗節點;n為變量節點編號,m為校驗節點編號。
方程式五: For
Figure 02_image029
Figure 02_image031
Figure 02_image089
Figure 02_image091
min1;
Figure 02_image093
其中,
Figure 02_image077
表示校驗節點給變量節點的資訊,通過單一最小值最小和演算法的
Figure 02_image077
確認估測第一最小值(
Figure 02_image005
)或是估測第二最小值(
Figure 02_image007
),當
Figure 02_image077
中的變量節點編號n不是最小的v2c資訊(變量節點給校驗節點的資訊)的位置所在,採用估測第一最小值(
Figure 02_image005
),反之,即採用估測第二最小值(
Figure 02_image007
),以此與更新後變量節點進行內積(dot product),更新校驗節點的資訊
Figure 02_image077
。其中
Figure 02_image095
為運算參數,用以得出估測第一最小值與估測第二最小值。
在前述單一最小值演算法中,估測第二最小值(min2,如次小值)的做法是利用搜尋第一最小值(min1)所產生附加得到的偽第二最小值(
Figure 02_image001
)來生成估測第二最小值(
Figure 02_image007
),用以取代最小和演算法(MS)中原本需要搜尋的第二最小值(min2)。
當搜尋第一最小值(min1)時可以使用圖5至圖8中所示任一電路執行搜尋,但並不排除以其他方式搜尋第一最小值。特別地,在圖5至圖8之任一電路中得到第一最小值(min1)之外也會得到計算第一最小值以外的信息,這些計算自實際信號的額外信息因為有一定的可性度,可作為用以估測第二最小值的偽第二最小值(
Figure 02_image001
),這是在單一最小值最小和演算法(SMAMSA)原本就會得到的資訊,不需要額外的電路去取得,所以沒有額外增加硬體。
根據圖5至圖8所示以校驗節點程度(check node degree)為16為範例的邏輯電路方塊圖的幾種實施方式,圖5示意顯示有16個輸入信號輸入至4個計算單元M41,經比較後,將各自演算得出的最小值輸入至計算單元M42,再經比較後,可以得出第一最小值(min1),但不去計算第二最小值,而是根據計算過程得到的附屬信息得出偽第二最小值(
Figure 02_image001
)。圖6顯示16個輸入信號分別輸入至8個計算單元M21,每4個計算單元M21得出的最小值輸入至下一級2個計算單元M41,之後再由下一級計算單元M22得出第一最小值(min1)與偽第二最小值(
Figure 02_image001
)。圖7顯示16個輸入信號分別輸入至8個計算單元M21,每2個計算單元M21得出的最小值輸入至下一級4個計算單元M21,之後再由下一級2個計算單元M21分別得出最小值後,提供給計算單元M22比較得出第一最小值(min1)與偽第二最小值(
Figure 02_image001
)。圖8顯示16個輸入信號分別輸入至8個計算單元M21,每2個計算單元M21得出的最小值輸入至下一級4個計算單元M21,之後再由下一級計算單元M42得出第一最小值(min1)與偽第二最小值(
Figure 02_image001
)。
以校驗節點程度為16為例,第一級16個輸入信號為變量節點(編號n)要提供給校驗節點(編號m)的資訊(v2c資訊),可表示為
Figure 02_image071
。之後可通過圖中所示的電路得到第一最小值(min1),以及附屬的信息,用以得出偽第二最小值(
Figure 02_image001
),可以說是真實的第二最小值加上雜訊(加擾的第二最小值)。
揭露書提出的基於權重調整演算法參數的解碼方法與解碼系統即對習知的單一最小值最小和演算法(SMAMSA)提出改進方案,針對估測第二最小值修改成方程式六,並將方程式六稱為修正的單一最小值最小和演算法(modified SMAMSA,簡稱M-SMAMSA)。
方程式六中,其中函式’
Figure 02_image021
’為取最小值的函式,此例中’
Figure 02_image097
’即取變量節點給校驗節點的資訊(
Figure 02_image099
)最小值(排除要算的連結),可以得出估測第一最小值與估測第二最小值,根據變量節點給校驗節點的資訊(
Figure 02_image099
)(排除要算的連結,將其餘連線(
Figure 02_image101
)算積(П)),即以鄰近的連線來估測自己本身的資訊,再根據判斷與估測第一最小值或估測第二最小值計算內積後,以返回校驗節點給變量節點的資訊(
Figure 02_image103
)的值。
方程式六: For
Figure 02_image029
Figure 02_image031
Figure 02_image033
Figure 02_image035
min1;
Figure 02_image037
對照習知的單一最小值最小和演算法,方程式六中修正的單一最小值最小和演算法取得的估測第一最小值(
Figure 02_image005
)與修正前的方程式五取得的第一最小值仍為一致,其中
Figure 02_image051
(第一參數)為一權種值,修正的單一最小值最小和演算法中計算估測第二最小值(
Figure 02_image007
)時,除乘上第一最小值(min1)的
Figure 02_image051
以及乘上偽第二最小值(
Figure 02_image001
)的
Figure 02_image105
(第三參數)等權重值外,還加入乘上第一最小值(min1)的運算參數
Figure 02_image107
(第二參數)。
如此,修正的單一最小值最小和演算法改變了估測第二最小值(
Figure 02_image007
)產生的維度,將原本單一最小值最小和演算法的兩個維度(如方程式五)的變數修正為三個維度(如方程式六),這增加了修正的單一最小值最小和演算法的使用範圍,讓其可以配合更多的調變方式(modulation),以及更廣的固定點(fixed point)範圍。根據實施例,使用修正的單一最小值最小和演算法時要注意的是,加入了以上變數
Figure 02_image109
後的方程式六要符合下列規則。
Figure 02_image111
Figure 02_image113
,所以
Figure 02_image001
最小等於
Figure 02_image115
,並且
Figure 02_image007
的最低值(lower bound)是當
Figure 02_image117
時,可以得出
Figure 02_image119
min1,因此給出
Figure 02_image109
參數時必須符合關係式
Figure 02_image009
實現修正的單一最小值最小和演算法時的邏輯電路方塊實施例圖可參考圖9,其中運行的基於權重調整演算法參數的解碼方法可參考圖10顯示之實施例流程。
在圖10顯示的流程中,解碼器接收信號後,從輸入信號生成
Figure 02_image039
的低密度同位元校驗碼,其中有N個變量節點以及M個校驗節點,得出多筆輸入信號901、902(步驟S101),輸入信號如多個變量節點給多個校驗節點的資訊(
Figure 02_image121
),在計算校驗節點更新時,應用方程式六,通過圖中示意表示的計算單元90(實施例可參考圖5至圖8)演算第一最小值(min1)(步驟S103),並利用計算取得第一最小值時得到的附屬信息得出偽第二最小值(
Figure 02_image001
)(步驟S105)。
根據上述方程式六,在符合
Figure 02_image009
關係的要求下,根據所設定的第一參數(
Figure 02_image051
),乘上得出的第一最小值,得出估測第一最小值(
Figure 02_image005
)(步驟S107),第二參數(
Figure 02_image107
)乘以第一最小值加上以第三參數(
Figure 02_image105
)乘上偽第二最小值,得出估測第二最小值(
Figure 02_image007
)(步驟S109)。此時,根據變量節點給校驗節點的資訊,排除要算的連結後,將其餘連線算和(sum)後判斷為0或1(
Figure 02_image099
)(步驟S111),再根據判斷
Figure 02_image077
Figure 02_image123
(為變量節點的編號)是否是標號n變量節點要提供給編號m校驗節點的資訊(
Figure 02_image125
)最小值所在的連結(編號
Figure 02_image123
的變量節點),決定是否採用估測第一最小值(
Figure 02_image005
),或是,當不符合上述條件,即採用估測第二最小值(
Figure 02_image007
),將判斷結果步驟S111得出的值(0或1)計算內積,得出校驗節點給變量節點的資訊(
Figure 02_image103
)(步驟S113)。
以下提出信號進入以上實施例所述的解碼器之前,可以執行一前置處理,如解碼定標(decode scaling),目的是在硬體限制下可將信號調整到解碼器可以識別出其中特徵的信號,其方法之一是以其中雜訊功率比對系統設定的門檻決定定標的方法,藉此改善固定點(fixed point)產生的頻寬限制造成的效能降低的問題。
舉例來說,針對進入低密度同位元校驗碼(LDPC)解碼器的對數相似比值(LLR),可以解碼定標(scaling)控制對數相似比值(LLR),因為解碼器進行對數相似比值運算時會需要雜訊功率的倒數值(inverse of noise power)(
Figure 02_image127
)的信息,以此調整輸入對數相似比值的權重值(weighting),所述雜訊功率的倒數值即提供了信號雜訊比(SNR)的資訊,藉由雜訊功率的倒數值來調整每個通道信號的的強弱,提供解碼器正確的對數相似比值。
在一實際應用中,因為實際解碼系統操作的信號雜訊比區間可能跨越8-9dB的區間,會讓低密度同位元校驗碼解碼器輸入對數相似比值(LLR)時所需的雜訊功率的倒數的動態範圍(dynamic range)落入2至8的範圍,為了能夠完整地涵蓋整個動態範圍,解碼器的固定點需要增加位元寬度(bit width)來維持解碼器的效能,但這會增加硬體面積而耗電,因此提出針對對數相似比值作解碼定標,以抑制固定點的變化,包括降低固定點的位元寬度。
綜上所述,根據以上基於權重調整演算法參數的解碼方法與解碼系統的實施例,修正習知單一最小值最小和演算法,以新的得出單一最小值的架構搭配分層解碼(layered decoding)的技術,提供比習知演算法更多維度的變數,增加了應用的範圍,還提供比習知正規化最小和演算法(NMS)更好的效能,又因為其中單一最小值另用加擾的第二最小值,使得能提供更低的錯誤率,還有,因為僅須搜尋第一最小值,可以降低硬體複雜度以及降低耗電。在輸入信號端,根據不同信號雜訊比而搭配不同的解碼定標方法,再進一步降低硬體面積,減少位元寬度,可以提供再更優化的效能。
以上所公開的內容僅為本發明的優選可行實施例,並非因此侷限本發明的申請專利範圍,所以凡是運用本發明說明書及圖式內容所做的等效技術變化,均包含於本發明的申請專利範圍內。
101:輸入電路 103:LLR運算器 105:低密度同位元校驗器 107:輸出電路 21:變量節點 22:校驗節點 211:第n個變量節點 221:第m個校驗節點 201:v2c資訊 202:c2v資訊 311, 312, 313:校驗節點 301, 302, 303:連線 411, 412, 413:變量節點 401, 402, 403:連線 M41, M42, M21, M22:計算單元 901, 902:輸入信號 90:計算單元 min1:第一最小值
Figure 02_image001
:偽第二最小值
Figure 02_image003
:參數
Figure 02_image005
:估測第一最小值
Figure 02_image007
:估測第二最小值 步驟S101~S113:基於權重調整演算法參數的解碼方法流程
圖1顯示解碼系統的電路架構實施例圖;
圖2顯示演示低密度同位元校驗碼的解碼過程的坦納圖的範例示意圖;
圖3顯示以坦納圖來演示低密度同位元校驗碼解碼過程中算和的範例示意圖;
圖4顯示以坦納圖來演示低密度同位元校驗碼解碼過程中算積的範例示意圖;
圖5至圖8顯示計算第一最小值與偽第二最小值的邏輯電路方塊實施例圖;
圖9顯示實現修正的單一最小值最小和演算法時的邏輯電路方塊示意圖;以及
圖10顯示基於權重調整演算法參數的解碼方法實施例流程圖。
901,902:輸入信號
90:計算單元
min1:第一最小值
min2''':偽第二最小值
α,β,γ:參數
min1est:估測第一最小值
min2est:估測第二最小值

Claims (10)

  1. 一種基於權重調整演算法參數的解碼方法,應用於一解碼器中,輸入信號生成M×N的低密度同位元校驗碼,其中有N個變量節點以及M個校驗節點,包括:初始化該N個變量節點與該M個校驗節點的資訊;更新該N個變量節點,其中各變量節點根據相互連接的M個校驗節點的資訊進行更新,其中經多次疊代,形成各變量節點給M個校驗節點的資訊,排除要算的連結後,將其餘連線算和;以及更新該M個校驗節點,其中各校驗節點根據互相連接的N個變量節點的資訊進行更新,其中經多次疊代,形成各校驗節點給N個變量節點的資訊,排除要算的連結後,將其餘連線算積,再根據判斷與一估測第一最小值或一估測第二最小值計算內積,得出該校驗節點給該變量節點的資訊,並藉此執行一決策,其中:搜尋該更新後的該N個變量節點的最小值,得出一第一最小值;利用得出該第一最小值時的附屬信息得出一偽第二最小值;以第一參數(α)乘上得出的該第一最小值,得出該估測第一最小值;以第二參數(β)乘以該第一最小值加上以第三參數(γ)乘上該偽第二最小值得出的結果,得出該估測第二最小值。
  2. 如請求項1所述的基於權重調整演算法參數的解碼方法,其中於該初始化步驟中,在尚未進行疊代時,對該N個變量節點逐一寫入內在信息。
  3. 如請求項1所述的基於權重調整演算法參數的解碼方法,其中判斷該估測第一最小值或該估測第二最小值的方法為根據一校驗節點給變量節點的資訊中的變量節點編號是否是最小的變量節點給校驗節點的資訊位置的判斷結果而定。
  4. 如請求項1所述的基於權重調整演算法參數的解碼方法,其中,將變量節點的內在信息以及通過校驗節點與其他變量節點的連線更新校驗節點給該N個變量節點的資訊加總後,以得出變量節點的資訊作出該決策。
  5. 如請求項1所述的基於權重調整演算法參數的解碼方法,其中於該解碼器的一前置處理中,以解碼定標控制一對數相似比值,用以調整該輸入對數相似比值的權重值。
  6. 如請求項1至5中任一項所述的基於權重調整演算法參數的解碼方法,其中該第一參數(α)、該第二參數(β)以及該第三參數(γ)符合關係式(β+γ)
    Figure 110121280-A0305-02-0022-7
    α。
  7. 如請求項6所述的基於權重調整演算法參數的解碼方法,其中得出該校驗節點給該變量節點的資訊方程式為:For m
    Figure 110121280-A0305-02-0022-8
    {1,…M}and n
    Figure 110121280-A0305-02-0022-9
    Nm
    Figure 110121280-A0305-02-0022-4
    min1est=α.min1;min2est=β.min1+γ.min2'''; 其中,’n’為變量節點編號;’m’為校驗節點編號;’
    Figure 110121280-A0305-02-0022-6
    ’為 編號m的校驗節點給編號n的變量節點的資訊;’n'’表示排 除要算的連結的其餘變量節點編號;’
    Figure 110121280-A0305-02-0022-5
    ’為排除要算的連 結後其餘編號’n'’的變量節點給編號m的校驗節點的資訊,也就是v2c資訊;符號函式’sign( )’為根據函式中的數值是0、正數或是負數而分別返回0、1或-1;’min1’為第一最小值; 函式’
    Figure 110121280-A0305-02-0023-10
    ’為取最小值的函式;’min1est’為估測第一最小值;’min2est’為估測第二最小值;’min2'''’為偽第二最小值。
  8. 一種解碼系統,該解碼系統設有位於接收端的一解碼器,其中運行如請求項1所述基於權重調整演算法參數的解碼方法。
  9. 如請求項8所述的解碼系統,其中判斷該估測第一最小值或該估測第二最小值的方法為根據一校驗節點給變量節點的資訊中的變量節點編號是否是最小的變量節點給校驗節點的資訊位置的判斷結果而定。
  10. 如請求項8所述的解碼系統,其中,將變量節點的內在信息以及通過校驗節點與其他變量節點的連線更新校驗節點給該N個變量節點的資訊加總後,以得出變量節點的資訊作出該決策。
TW110121280A 2021-06-11 2021-06-11 基於權重調整演算法參數的解碼方法與解碼系統 TWI774417B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW110121280A TWI774417B (zh) 2021-06-11 2021-06-11 基於權重調整演算法參數的解碼方法與解碼系統
US17/835,325 US20220399903A1 (en) 2021-06-11 2022-06-08 Decoding method adopting algorithm with weight-based adjusted parameters and decoding system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW110121280A TWI774417B (zh) 2021-06-11 2021-06-11 基於權重調整演算法參數的解碼方法與解碼系統

Publications (2)

Publication Number Publication Date
TWI774417B true TWI774417B (zh) 2022-08-11
TW202249439A TW202249439A (zh) 2022-12-16

Family

ID=83807117

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110121280A TWI774417B (zh) 2021-06-11 2021-06-11 基於權重調整演算法參數的解碼方法與解碼系統

Country Status (2)

Country Link
US (1) US20220399903A1 (zh)
TW (1) TWI774417B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8176383B2 (en) * 2006-04-29 2012-05-08 Timi Technologies Co., Ltd. Method of constructing low density parity check code, method of decoding the same and transmission system for the same
US20140181612A1 (en) * 2007-05-01 2014-06-26 Texas A&M University System Low density parity check decoder
CN108183713A (zh) * 2017-12-15 2018-06-19 南京大学 基于改进型最小和算法的ldpc译码器及其译码方法
US20200044668A1 (en) * 2018-08-06 2020-02-06 Smartech Worldwide Limited Method for ldpc decoding, ldpc decoder and storage device
US20200252079A1 (en) * 2019-02-06 2020-08-06 Seagate Technology Llc Fast error recovery with error correction code (ecc) syndrome weight assist

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3891186B2 (ja) * 2004-03-22 2007-03-14 住友電気工業株式会社 復号装置および前処理装置
US8516347B1 (en) * 2010-05-25 2013-08-20 Marvell International Ltd. Non-binary LDPC extrinsic calculation unit (LECU) for iterative decoding
US8566666B2 (en) * 2011-07-11 2013-10-22 Lsi Corporation Min-sum based non-binary LDPC decoder
US20130275827A1 (en) * 2012-04-12 2013-10-17 Lsi Corporation Multi-Section Non-Binary LDPC Decoder
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
US9048874B2 (en) * 2013-03-15 2015-06-02 Lsi Corporation Min-sum based hybrid non-binary low density parity check decoder
US8930790B1 (en) * 2013-09-13 2015-01-06 U-Blox Ag Method and apparatus for identifying selected values from among a set of values

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8176383B2 (en) * 2006-04-29 2012-05-08 Timi Technologies Co., Ltd. Method of constructing low density parity check code, method of decoding the same and transmission system for the same
US20140181612A1 (en) * 2007-05-01 2014-06-26 Texas A&M University System Low density parity check decoder
CN108183713A (zh) * 2017-12-15 2018-06-19 南京大学 基于改进型最小和算法的ldpc译码器及其译码方法
US20200044668A1 (en) * 2018-08-06 2020-02-06 Smartech Worldwide Limited Method for ldpc decoding, ldpc decoder and storage device
US20200252079A1 (en) * 2019-02-06 2020-08-06 Seagate Technology Llc Fast error recovery with error correction code (ecc) syndrome weight assist

Also Published As

Publication number Publication date
US20220399903A1 (en) 2022-12-15
TW202249439A (zh) 2022-12-16

Similar Documents

Publication Publication Date Title
Lugosch et al. Neural offset min-sum decoding
Nachmani et al. Deep learning methods for improved decoding of linear codes
USRE44421E1 (en) Decoding apparatus for low-density parity-check codes using sequential decoding, and method thereof
KR100891782B1 (ko) 고속 데이터 전송 시스템에서 순방향 오류 정정 장치 및방법
US8095863B2 (en) Low complexity decoding of low density parity check codes
US10742239B2 (en) Method for decoding a polar code with inversion of unreliable bits
Lugosch et al. Learning from the syndrome
CN110022159B (zh) 一种快速收敛的ldpc码译码算法
CN107565978B (zh) 基于Tanner图边调度策略的BP译码方法
CN110830049B (zh) 一种基于密度进化改进偏移最小和的ldpc译码方法
Hatami et al. A threshold-based min-sum algorithm to lower the error floors of quantized LDPC decoders
US7757149B2 (en) Broadcast message passing decoding of low density parity check codes
CN110995279A (zh) 一种极化码联合scf球形列表翻转译码方法
US11184025B2 (en) LDPC decoding method and LDPC decoding apparatus
Shrinidhi et al. Modified min sum decoding algorithm for low density parity check codes
TWI774417B (zh) 基於權重調整演算法參數的解碼方法與解碼系統
CN101106437A (zh) 一种有限几何低密度奇偶校验码的译码方法
Habib et al. Learned scheduling of LDPC decoders based on multi-armed bandits
CN107707333B (zh) 一种基于码字估计值的极化码早期迭代停止方法及装置
US11184035B2 (en) Soft-input soft-output decoding of block codes
CN115580308A (zh) 基于权重调整算法参数的解码方法与解码系统
Artemasov et al. Soft-output deep neural network-based decoding
CN117220689A (zh) 一种基于模型驱动深度学习的非二进制ldpc译码方法
Yu et al. Sphere decoder for polar codes concatenated with cyclic redundancy check
KR102635444B1 (ko) 비이진 저밀도 패리티 검사 코드 디코더, 그것의 동작방법 및 메모리 시스템