Movatterモバイル変換


[0]ホーム

URL:


CN1185796C - Improved correcting decoding method for non-regular low-density parity-check code - Google Patents

Improved correcting decoding method for non-regular low-density parity-check code
Download PDF

Info

Publication number
CN1185796C
CN1185796CCNB021486492ACN02148649ACN1185796CCN 1185796 CCN1185796 CCN 1185796CCN B021486492 ACNB021486492 ACN B021486492ACN 02148649 ACN02148649 ACN 02148649ACN 1185796 CCN1185796 CCN 1185796C
Authority
CN
China
Prior art keywords
node
decoding
check
sigma
code
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
CNB021486492A
Other languages
Chinese (zh)
Other versions
CN1405981A (en
Inventor
殷柳国
陆建华
吴佑寿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua UniversityfiledCriticalTsinghua University
Priority to CNB021486492ApriorityCriticalpatent/CN1185796C/en
Publication of CN1405981ApublicationCriticalpatent/CN1405981A/en
Application grantedgrantedCritical
Publication of CN1185796CpublicationCriticalpatent/CN1185796C/en
Anticipated expirationlegal-statusCritical
Expired - Fee Relatedlegal-statusCriticalCurrent

Links

Images

Landscapes

Abstract

Translated fromChinese

改进的非规则低密奇偶度校验码(ILDPC码)纠错译码方法属于通信技术领域,其特征在于,它利用非规则低密度奇偶校验码比特节点的保护程度随着节点阶数的提高而提高的特性在迭代过程中使高阶比特节点的迭代在完成本阶节点的纠错时就结束,而低阶节点的迭代继续进行,以简化后续迭代译码的计算复杂度,节省时间;还可以通过对高阶比特节点的译码结果进行放大,给低阶节点提供更多的有用信息。从而,在高信噪比条件下可以获得比标准和积译码方法更好的纠错性能;与最小和译码方法相比,没有明显损失ILDPC码的纠错性能。同时,本方法还可推广到磁盘存储系统中去。

Figure 02148649

The improved irregular low-density parity-check code (ILDPC code) error correction decoding method belongs to the field of communication technology, and is characterized in that it utilizes the protection degree of the irregular low-density parity-check code bit node along with the node order The improved and improved characteristics make the iteration of high-order bit nodes end when the error correction of this-order node is completed during the iterative process, while the iteration of low-order nodes continues to simplify the computational complexity of subsequent iterative decoding and save time ; It is also possible to provide more useful information to low-order nodes by amplifying the decoding results of high-order bit nodes. Therefore, under the condition of high signal-to-noise ratio, better error correction performance can be obtained than the standard sum product decoding method; compared with the minimum sum decoding method, there is no obvious loss of error correction performance of ILDPC codes. At the same time, the method can also be extended to disk storage systems.

Figure 02148649

Description

Improved non-rule low density parity check code error-correcting decoding method
Technical field
Improved non-rule low density parity check code error-correcting decoding method belongs to communication channel decoding technique field, be particularly related to effectively and the fast interpretation method of a kind of employing non-rule low density parity check code (Irregular Low-Density Parity-Check code the is called for short the ILDPC sign indicating number) correcting error of information channel when adopting forward error control (FEC) technology to be used for transfer of data and storage.
Background technology
Data cause various mistakes through regular meeting in storage and transmission course.The reason that produces this mistake has synchronization loss, the multipath fading in the wireless transmission, the magnetic track in the magnetic storage in random noise, the demodulating process damaged etc.This burst error is generally that aperiodicity occurs and duration length is indefinite.Because the existence of these mistakes, limited the memory capacity of memory under the rate of information throughput under the specific bandwidth and the particular area greatly.Particularly in wireless multimedia transmission system, because lot of data will and be subjected in the serious channel that disturbs of various bursts with very high reliability transmission at limited bandwidth, this problem becomes more outstanding.
In order to solve the integrity problem in transfer of data and the storage, adopt the method for chnnel coding usually.In current existing channel coding method, the ILDPC sign indicating number of Ti Chuing has the most powerful error correcting capability recently, has very strong application prospect.
The interpretation method that adopts the ILDPC sign indicating number to carry out error control is:
1.ILDPC the definition and the parameter of sign indicating number:
The ILDPC sign indicating number is a kind of binary packet sign indicating number, and this sign indicating number adopts the supersparsity matrix as check matrix.The number of nonzero element is very rare in every row in the matrix (every row), and the position is random distribution.For convenience of description, the number of nonzero element is the weight of this row (row) in the definition delegation (row).Because the check matrix of ILDPC sign indicating number is the matrix that generates at random, the weight of each row (row) is uncertain, therefore adopts the distribution of weight formula to describe this matrix.The column weight amount of same class ILDPC code check matrix distributes and can be expressed as with distributed:
λ(x)=Σi=2dvλixi-1--(1)
λ in the formulaiExpression weight be i be listed in deal shared in the matrix, dvValue for the maximum of column weight amount in the matrix.Equally, the capable distribution of weight of same class ILDPC code check matrix adopts following formula to describe:
ρ(x)=Σj=2dcρjxj-1--(2)
ρ in the formulajExpression weight is the row of j shared deal in matrix, dcMaximum for row weight in the matrix.Because the ILDPC sign indicating number is block code, for any legal code word V, with the product of check matrix H be zero, i.e. HVT=0.By this check equations as can be known, the same code element of the only corresponding ILDPC sign indicating number of the nonzero element of every row in the check matrix has formed a constraint that is equivalent to duplication code.For the ease of the description in the decode procedure, defining this restriction relation is a bit node, and the exponent number of node is the weight of these row.And the nonzero element of every row in the check matrix becomes a constraint that is equivalent to check code with pairing ILDPC symbol mapped.It is a check-node that this verification of same definition is closed, and the exponent number of node is the weight of this row.Each nonzero element in the matrix had both participated in the restriction relation of bit node, had participated in the restriction relation of check-node again, thereby can to define the pairing pass of matrix nonzero element be " tie line " that links these two kinds of nodes.In iterative decoding process, decoder utilizes the restriction relation of pairing check-node of the row and column of matrix and bit node to carry out iterative decoding.In iterative process, at first utilize the restriction relation of bit node to decipher, log-likelihood value that is input as the receiving sequence correspondence of each bit node (being probability that each metasymbol is got " 1 " is taken from right logarithm gained again divided by the probability of getting " 0 " value) and relevant check-node are in the output of last once iteration; Subsequently, the output of bit node is delivered to corresponding check-node by " tie line ", utilizes the restriction relation of check-node to decipher again.In this process, a kind of output of node becomes the input of another node, and nonzero element pairing " tie line " becomes " passage " of these two kinds of node input and output exchange messages in the matrix.For code length is the N bit, the ILDPC sign indicating number that the column weight amount distributes and the row distribution of weight is determined by (1) (2) two formulas respectively, and the number of its i rank bit node is:
Ni=N·λi/iΣi=2dvλi/i=N·λi/i∫01λ(x)dx,2≤i≤dv--(3)
In like manner, the number of j rank check-node is:
Mj=M·ρj/jΣj=2dcρj/j=M·ρj/j∫01ρ(x)dx,2≤j≤dc--(4)
M is the length of verification code element in the ILDPC code word in the formula.
2.ILDPC the decoding of sign indicating number:
The supersparsity characteristic of check matrix has fully been used in the decoding of ILDPC sign indicating number, calculates and the output external information by the restriction relation of bit node and check-node, and feeds back mutually, carries out iterative decoding.(external information i.e. the information about some code element values that obtains of the restriction relation of all other code elements that belong to a code word by code word, and adopting external information is positive feedback to occur in iterative process alternately.) current, the interpretation method of ILDPC sign indicating number mainly contains two kinds.
Method one is and long-pending interpretation method.The log-likelihood value that is input as receiving sequence of this method, and to carrying out iterative decoding by the restriction relation of utilizing bit node and check-node under the number space.At this moment, the restriction relation of bit node show as " with " form, i.e. the output of each bit node be each input log-likelihood value and; Corresponding check-node then shows as the form that certain " amasss ", i.e. the output of each check-node is certain " continued product " of each input log-likelihood value.Because these characteristics, this method is referred to as and amasss interpretation method.
With the information transmission system under the binary input additive white gaussian noise channels is example, and length is weaved into the ILDPC code word that length is the N bit for the binary message sequence of N-M bit by the ILDPC encoder.Subsequently, this code word is modulated into value and transmits in Gaussian channel for ± 1 symbol sebolic addressing.At receiving terminal, receiver is through sequence of real numbers R that to have obtained a string length that contains noise jamming after the matched filtering be N1N, carry out the signal demodulation subsequently.Gaussian channel, BPSK modulation down, i code element be 1 and through modulation and after transmitting receiver receive that signal is RiProbability be:
P(Ri|vi=1)=12πσ2exp{-12σ2(Ri-1)2},1≤i≤N--(5)
σ wherein2Standard variance for interchannel noise.
Equally, i code element be 0 and after modulation and transmission receiver receive that signal is RiProbability be:
P(Ri|vi=0)=12πσ2exp{-12σ2(Ri+1)2},1≤i≤N--(6)
By Bayes' theorem, obtain:
P(vi=1|Ri)=P(Ri|vi=1)·P(vi=1)P(Ri),--(7)
P(vi=0|Ri)=P(Ri|vi=0)·P(vi=0)P(Ri).--(8)
In process of transmitting, symbol is got 0 and 1 probability and is equated.For the ease of the output of restituted signal, adopt the form of log-likelihood ratio to represent the maximum a posteriori probability of i code element value receiving usually:
LLR(Ri)=lnP(vi=+1|Ri)P(vi=-1|Ri)--(9)
By above various:
LLR(Ri)=lnP(vi=+1|Ri)P(vi=-1|Ri)=lnP(Ri|vi=+1)P(Ri|vi=-1)
=ln12πσ2exp{-12σ2(Ri-1)2}12πσ2exp{-12σ2(Ri+1)2}=2σ2Ri
=sign(Ri)·|2σ2Ri|
Sign () is a sign function in the formula.In the following formula, first sign function represented the comparative result of the former transmission signal value probability that obtained by received signal.It is that 1 probability is greater than the probability that is 0 that sign function is got on the occasion of the former symbol of expression; Get negative value and represent that then former symbol is that 0 probability is greater than the probability that is 1.The size of second absolute value has represented that then this symbol gets 1 probability and get difference degree between 0 the probability.Absolute value is big more, and then the difference of two probable values is big more.Therefore, (10) formula provides two information according to each received signal, and which value is an information get for the original signal most probable, and another information has then been represented the degree of reliability of this judgement.This demodulating process of receiver has fully kept the information of original signal, is called as " soft demodulation ", and perhaps " soft-decision ", corresponding soft-decision output is called " soft information ".
The soft information of demodulator output is sent to the ILDPC decoder and deciphers.The decoding of ILDPC decoder has made full use of the supersparsity characteristic of check matrix, the restriction relation of check matrix is decomposed into the capable check code restriction relation and the duplication code restriction relation of row, by utilizing the mutual feedback of these two kinds of restriction relations, carry out iterative decoding.For the ease of understanding the decode procedure under these two kinds of restriction relations, the decode procedure of duplication code and check code is discussed at first below.
1) restriction relation of duplication code and decoding thereof:
The coding of duplication code promptly be will input information symbol carry out N-1 repetition, longly be the code word V of N thereby obtain one1NTherefore, duplication code has only two legal-codes: complete 0 code word 01NWith all-ones word 11NAfter ovennodulation, transmission, demodulation, decoder is deciphered according to the soft information that modulator provides.At the burst that receives is R1NPrerequisite under, decipher according to the restriction relation of duplication code, obtain an output sequence U who adopts log-likelihood ratio to represent1NWherein, the log-likelihood ratio of i symbol maximum a posteriori probability value is:
LLR(ui)=lnp(vi=1|R1N)p(vi=0|R1N)=lnp(vi=1,R1N)p(vi=0,R1N)
=lnΣ1≤i′≤Ni′≠i···Σp(v1,v2,···,vi=1,···,vN,R1N)Σ1≤i′≤Ni′≠i···Σp(v1,v2,···,vi=0,···,vN,R1N)
=lnΣvi′∈V1Ni′≠i···Σp(v1,v2,···,vi=1,···,vN)·p(R1N|v1,v2,···,vi=1,···,vN)Σvi′∈V1Ni′≠i···Σp(v1,v2,···,vi=0,···,vN)·p(R1N|v1,v2,···,vi=0,···,vN)--(11)
Because duplication code has only complete 0 and complete 1 two code words, thereby first in the molecule denominator product term is only when code word is respectively all-ones word and complete 0 code word in the following formula, and probability just is not 0.Thereby (11) formula can continue abbreviation and be:
LLR(ui)=lnp(R1N|V1N=11N)p(R1N|V1N=01N)=lnΠi′=1Np(Ri′|vi′=1)Πi′=1Np(Ri′|vi′=0)--(12)
=Σi′NLLR(vi′)=LLR(vi)+Σi′≠iLLR(vi′)
Result's first is the log-likelihood ratio of code element i received signal in the following formula, and the information for code element itself is had is called " prior information "; Second portion is that other code element is called " external information " according to the value information about code element i that the restriction relation of code word provides in the code word.Because prior information just has for each code element itself, thereby decoder only need be given the corresponding external information of each symbol feedback in decode procedure.The decoding relation of duplication code can adopt a node diagram shown in Figure 1 to represent.
Node among Fig. 1 has N bar tie line, a corresponding N code element.These tie lines both can be used as input and also can be used as output, respectively the input of a corresponding N code element and decoding output.In decode procedure, contact is received the demodulating information sequence of representing with the form of log-likelihood ratio by N bar tie line, and subsequently, by the computing of node, decode results is the external information by N code element of these tie lines outputs also.Wherein, every tie line be output as other each bar tie line input value add up and.In the description to the decoding of ILDPC sign indicating number, this decoding node of duplication code is also referred to as " bit node ".
2) restriction relation of check code and decoding thereof:
The check code that with the code check is N-1/N is an example, the check code that it is N that long information sequence for N-1 bit obtains a code length after through coding, and the restriction relation between the code element can be represented with following relational expression:
v1v2…vN=0 (13)
In the formula represent binary system and, i.e. distance in the binary logic.The code word V of check code gained1NAfter ovennodulation, transmission, demodulation, obtain comprising a soft information sequence LLR (R of this codeword information1N).Check code decoder is promptly deciphered according to this soft information sequence.Define two metasymbol eiFor in the code word except i code element viThe binary system of outer other all code elements and, then by (13) Shi Kede:
viei=0 (14)
By binary XOR relation and (14) formula, get code element viWith symbol eiValue is identical.Thereby, code element viWith symbol eiForm a relation that is equivalent to duplication code.The result that obtains is discussed as can be known by top duplication code, code element viBy the posterior information of deciphering the back gained be:
LLR(v^i)=LLR(vi)+LLR(ei)--(15)
Obviously, second in (15) formula is exactly in decode procedure decoder and feeds back to code element v according to the restriction relation of whole sign indicating number sequenceiExternal information.Below, we are that 3 check code is an example with code length, the expression of derivation external information.Be without loss of generality, we discuss the external information expression of first code element.At code length is under the situation of 3 bits, symbol e1Value is that 1 probability is:
p(e1=1)=p(v2=1)·p(v3=0)+p(v2=0)·p(v3=1)
=p(v2=1)·(1-p(v3=1))+(1-p(v2=1))·p(v3=1) (16)
=p(v2=1)+p(v3=1)-2p(v2=1)·p(v3=1)
Thereby,
1-2p(e1=1)=1-2p(v2=1)-2p(v3=1)+4p(v2=1)·p(v3=1) (17)
=(1-2p(v2=1))·(1-2p(v3=1))
Introduce a function:
Φ(x)=tanh(-12x)=exp(-12x)-exp(12x)exp(-12x)+exp(12x)=1-exp(x)1+exp(x)--(18)
So,
Φ(LLR(e1))=Φ(lnp(e1=1)p(e1=0))=1-exp(lnp(e1=1)p(e1=0))1+exp(lnp(e1=1)p(e1=0))=1-2p(e1=1)--(19)
By (17), (19) formula, get code element v1: the external information representation is:
LLR(e1)=Φ-1(Φ(LLR(v2)·Φ(LLR(v3)) (20)
(20) formula can be generalized to any one code element, also can be generalized to the situation of code length greater than 3 bits.Get under the situation for the N bit at code length, the external information of code element i is:
LLR(ei)=Φ-1(Π1≤i′≤Ni′≠iΦ(LLR(vi)))--(21)
This decoding operation relation of check code also can adopt a node to represent, as shown in Figure 2:
Node has N tie line among Fig. 2, a corresponding N code element; Every tie line be input also be output.Wherein, input is corresponding to the soft information sequence that is input to decoder, and output then is decoder feeds back to each symbol by computing external information.In once deciphering, every tie line is imported the soft information that obtains after this symbol demodulation and is arrived node, by computing, gives each tie line an external information output with posterior nodal point.Notice that the output of every tie line is with the input value of other all tie lines operation result as input among Fig. 2.In the decoding of follow-up ILDPC sign indicating number, this decoding node of check code is called as " check-node ".
3) decoding of ILDPC sign indicating number:
After the coding of information sequence process ILDPC sign indicating number, modulation, the transmission, carry out matched filtering, comprised the receiving sequence R of ILDPC codeword information accordingly by receiver1N, this sequence is sent to the ILDPC code decoder and carries out error-correcting decoding subsequently.In decode procedure, decoder at first carries out demodulation to receiving sequence, receiving sequence is converted into the form of soft information; Subsequently, utilize the check equations HV of ILDPC sign indicating numberT=0 deciphers.The check matrix of noticing the ILDPC sign indicating number is the supersparsity matrix, and the nonzero element number of every row/row is very rare.Know by check equations, the product of the every capable ILDPC sign indicating number of matrix, be actually the code element that multiplies each other with this row nonzero element binary system and.By the constraint equation of check code as can be known, these code elements have constituted the constraint of a check code.Because check matrix has M capable, thereby can obtain M check code altogether.By adopting the interpretation method of check code, each check code can be given the external information output of this code element value condition of a reflection of each code element under restriction relation separately.And for each row of check matrix because its element only multiplies each other with same code element in the multiplication of check matrix and code word, and each nonzero element that should row all check code of correspondence to the output of this symbol value condition.So the output of these check codes has constituted the constraint of a duplication code with the soft information of the code element that receives.Since the total N row of check matrix, thereby can obtain N duplication code, corresponding with N code element of ILDPC code word respectively.The decoding of ILDPC sign indicating number promptly is the restriction relation that is decomposed into this M check code and N duplication code by the restriction relation with check matrix, exports the input that is fed back to the other side mutually by the decoding of these two kinds of sign indicating numbers, carries out parallel iteration decoding.By above discussion about duplication code and check code, the decoding grid chart of ILDPC sign indicating number can be represented by Fig. 3:
At first, after the decoded device of receiving sequence was converted into soft information, decoder was made as 0 with the initial output of all check-nodes, decoding when carrying out N bit node according to the initial output of the soft information of receiving sequence and check-node subsequently.These bit nodes are to the external information output of each code element, delivered to corresponding check-node by tie line, M node carries out the decoding of check code simultaneously subsequently, and the decoding output to each symbol of each check-node all feeds back to relevant bit node by tie line.When next iteration began, each bit node all added up own all inputs, obtains the posterior information of a code element, carries out Hard decision decoding according to this posterior information subsequently.The Hard decision decoding of N bit node obtains the valuation information sequence of a code word.If the product of check matrix and this valuation information sequence is zero, then decoder stops iterative decoding and exports this valuation as decode results; Otherwise decoder carries out the decoding iteration of bit node one check-node next time, up to gained valuation sequence be a legal ILDPC code word or reach maximum iteration time till.Decoder is output as the hard decision valuation sequence that obtains for the last time.
If rIjFor output to the external information of bit node i, q from check-node jIjBe external information from bit node i to check-node j, should and the iterative process of long-pending interpretation method comprise the steps:
1) decoding initialization: for the sequence of real numbers R that receives1N, the initial reception of corresponding i code element of ILDPC sign indicating number is worth the form that decoded device is demodulated to log-likelihood ratio:
LLR(Ri)=2σ2Ri,1≤i≤N--(22)
LLR represents that value is a log-likelihood ratio in the formula, σ2Standard variance for interchannel noise.Simultaneously, check-node without any the information about code word so the external information that check-node j outputs to bit node i is set is under the initial condition:
LLR(rij)=0 (23)
2) if the hard decision result of resulting sequence is not that (wherein hard decision is meant that log-likelihood value according to each symbol of sequence determines the bit value of each symbol to a legal code word, the log-likelihood value be positive number then code element get symbol " 1 ", for negative then code element get symbol " 0 "), carry out once and the iterative process of long-pending decoding is:
A) decoding of bit node: under the restriction relation of this node, output with the input the pass be " with " relation, promptly bit node i is output as to the external information of check-node j:
LLR(qij)=Σj′∈Col[i]j′≠jLLR(rij′)+LLR(Ri)--(24)
Col[i in the formula] location sets of expression check matrix H i row nonzero element.
B) decoding of check-node: under the restriction relation of check-node, output is certain relation of " amassing " with the pass of input, and promptly check-node j outputs to the external information of bit node i and is:
LLR(rij)=Φ-1(Πi′∈Row[j]i′≠iΦ(LLR(qi′j)))--(25)
Row[j in the formula] location sets of expression check matrix H j capable nonzero element, and
Φ(x)=tanh(-12x)--(26)
3) after the iteration decode results of i bit node of gained be these all inputs of node and:
LLR(v^i)=Σj′∈Col[i]LLR(rij′)+LLR(Ri)--(27)
Resulting decode results is carried out following hard decision, transferred to for second step then.Wherein the hard decision of i symbol is:
Figure C0214864900121
4) carry out the decoding of next code word if desired, jump to the first step; Otherwise, finish decoding.
Notice that this interpretation method has made full use of the character of bit node and check-node, and all information of receiving sequence, thereby can obtain decoding performance preferably that the convergence in the iterative process simultaneously is also than comparatively fast.But when code length long (more than 10000 bits), the operand of this method is still very big, is difficult to use in real system.
The interpretation method of another kind of ILDPC sign indicating number is minimum and interpretation method.The decode procedure of this method is to similar with long-pending decoding algorithm, under the constraint of bit node output with input still be " with " relation, be reduced to the continued product of symbol and get the minimum relation of importing absolute value but the relation of check-node is then approximate:
LLR(rij)=mini′∈Row[j]i′≠i|LLR(qi′j)|·Πi′∈Row[j]i′≠isgn(LLR(qi′j))--(29)
By adopting this approximate interpretation method, the computation complexity of decode procedure obtains bigger simplification.But, owing in the computing of check-node, adopted operate approximately, lost more information, make error-correcting performance significantly decrease.Under the situation of low signal-to-noise ratio, the convergence rate of this method is very slow, compares with method one, and the reduction of operand is not obvious, and performance has significant decline.
Summary of the invention
The objective of the invention is to overcome the deficiencies in the prior art part, proposed a kind of correction and long-pending interpretation method.This method has noticed that the ILDPC sign indicating number has the characteristics of unequal loss protection Cheng Du for same order bit node not; the protection degree of one-tenth that is ILDPC sign indicating number bit node improves along with the raising of node exponent number, makes that the mistake of higher order bits node often is repaired prior to the mistake of low order node in the process of iterative decoding.The present invention is by utilizing this specific character of ILDPC sign indicating number, the iterative decoding of higher order bits node is just finished when finishing the error correction of this rank node, and the iterative decoding of low order node is proceeded, thereby has simplified the computation complexity of successive iterations decoding.Simultaneously, when higher order bits node iteration finishes, because the erroneous level of resulting decode results is far below the erroneous level of whole sequence, the present invention provides more useful information for the low order node by the decode results of higher order bits node is amplified.Under the condition of high s/n ratio, this method can obtain than standard and the better error-correcting performance of long-pending interpretation method.Thereby, the present invention with the much smaller decoding complexity of relative said method one with the much higher error-correcting performance of relative method two, realized the decoding of ILDPC sign indicating number.
The invention is characterized in; the characteristic that it utilizes the degree of protection of ILDPC sign indicating number bit node to improve along with the raising of node exponent number; in iterative decoding; the iterative decoding of higher order bits node is just finished when finishing the error correction of this rank node; and the iterative decoding of low order node is proceeded; to simplify the computation complexity of successive iterations decoding, particularly, it contains successively and has the following steps:
(1) decoding beginning is input to bit node to receiving sequence, and the iteration end parameter of each rank bit node is set according to the noise size simultaneouslyKs(σ)={k2(σ),k3(σ),···,kdv(σ)},The decoding iterations is changed to 0;
(2) decoder calculates the hard decision output of each rank bit node and delivers to the codeword detection node;
Whether (3) detect the hard decision sequence is a legal-code:
If, the decode results of each rank bit node of output residue, decoding finishes;
If not, then carry out next step;
(4) carry out the next iteration process: if iterations kl(σ)<k<kL-1(σ) (l=3,4 ..., dv+ 1) carry out following step (4.1), (4.2):
(4.1) decoding of bit node: the external information from bit node i to check-node j is output as:
LLR(qij)=Σj′j′≠j∈Col[i]LLR(rij′)+LLR(Ri),1≤i≤N-Σt=1dvNt;
(4.2) decoding of check-node: the external information that check-node j outputs to bit node i is:
LLR(rij)=Φ-1(Qij·Πi≤N-Σt=ldvNii′∈Row[j]i′≠iΦ(LLR(qi′j)));
Otherwise, if k=kl(σ) (l=2,3 ..., dv), the iterative step c below carrying out), d):
(4.3) decoding of bit node: the external information output from bit node i to check-node j is used following formula instead and is calculated:
Figure C0214864900133
A in the formula0Be a very big positive integer, be used to amplify qIjThe log-likelihood value, to provide more useful information to the low step bit node;
(4.4) decoding of check-node: check-node j outputed to the external information of bit node i and was this moment:
LLR(rij)=Φ-1(Ql+1j·Πi′∈Row[j]i′≠ii′≤N-Σt=l+1dvNtΦ(LLR(qi′j)));
Finish after these operations, iterations adds 1, repeats (2)~(4) step;
(5) if iterations k=kl(σ), l is the exponent number of higher order bits node, then:
(5.1) all l rank bit nodes calculate posterior information,
LLR(v^i)=&Sigma;j&prime;&Element;Col[i]LLR(rij&prime;)+LLR(Ri),N-&Sigma;t=ldvNt<i&le;N-&Sigma;t=l+1dvNt;
All l rank bit nodes are done hard decision to the gained posterior information subsequently,
The gained result exports as the last decode results of l rank bit joint;
(5.2) Q of calculating next iterationLj:
Qlj=Ql+1j&CenterDot;&Pi;N-&Sigma;t=1dvi&prime;&Element;Row[j]Ni<i&prime;&le;N-&Sigma;t=l+1dvNt&Phi;(LLR(qi&prime;j));
In successive iterations, the decoding of check-node will be adopted QLjReplace QL+1jCarry out computing, and no longer participate in computing by the numerical value that tie line outputs to check-node from l rank bit node, thus the successive iterations of simplification check-node;
(6) iterations adds 1, changes the next round iteration over to;
(7) whether the judgement iterations is less than k2(σ);
If then get back to step (2);
If not, the decode results of each rank bit node of then output residue;
(8) whether judgement has next code vector to need decoding:
If have, then get back to step (1);
If do not have, then finish decode procedure.
Evidence: it has reached intended purposes.
Description of drawings
Fig. 1. the decoding node diagram of duplication code.
Fig. 2. the decoding node diagram of check code.
The decoding grid chart of Fig. 3 .ILDPC sign indicating number.
Fig. 4. the program flow diagram of interpretation method of the present invention.
Fig. 5. use the communication system block diagram of transmission error correction of the present invention.
Embodiment
A kind of corrections and long-pending interpretation method that the present invention proposes as shown in Figure 3, suppose that bit node arranges from left to right according to exponent number order from low to high, and then the interpretation method of the present invention's proposition may further comprise the steps:
During the decoding beginning, receiving sequence is input to bit node, and decoder carries out initialization, and the iteration end parameter of each rank bit node is set according to the size of noise simultaneously, and the decoding iterations is changed to 0.Then, decoder calculates the hard decision output of each rank bit node, delivers to node codeword detection node, detects whether the hard decision sequence is a legal-code.If the hard decision series of gained is a legal sign indicating number sequence, then decoding finishes, and exports corresponding hard decision result; Otherwise carry out one time iterative process: all each rank bit nodes calculate the output of each check-node according to the restriction relation of duplication code, deliver to corresponding check-node as input by line between node; Check-node calculates the external information that feeds back to each bit node according to the restriction relation of check code again, and its input as the bit node next iteration.After finishing these computings, iterations adds 1.Whether when next iteration began, each rank bit node calculated hard decision output once more, be a legal sign indicating number sequence by the judgement of codeword detection node subsequently.If a legal-code then finishes the decoding iteration, export corresponding hard decision sequence; Otherwise, carry out one time iterative process.If the current iteration number of times equals ki(σ), then all l rank bit nodes calculate posterior information, and all l rank bit nodes are with gained posterior information hard decision subsequently, and the gained result exports as the end product of decoding, and these nodes no longer participate in follow-up iterative decoding.Thereby all and the associated check-node of l rank bit node can fall the simplification of corresponding tie line, so that interative computation next time.Finish after these computings, iterations adds 1, changes the next round iteration over to.Obviously, in the worst case, decoder need be finished k2(σ) inferior iteration.
The principle and the arthmetic statement of the method for the invention are as follows:
1) definition QLj(2≤l≤dv+ 1) be check matrix j capable in exponent number more than or equal to the product of the bit node log-likelihood value of l, this variable is mainly used in the computing of simplifying check-node in successive iterations.For a known signal to noise ratio standard deviation is σ2Receiving sequence, select one group of iteration to finish parameterKs(&sigma;)={k2(&sigma;),k3(&sigma;),&CenterDot;&CenterDot;&CenterDot;,kdv(&sigma;)}Give each rank bit node; The decoding of initialization simultaneously equation is:
Qdv+1j=1,1&le;j&le;M--(30)
LLR(Ri)=2&sigma;2Ri,1<i&le;N--(31)
And
LLR(rij)=0
2) be provided withFor the k time iteration, if k>k2(σ), perhaps the Hard decision decoding sequence is a legal sign indicating number sequence, finishes decoding and output hard decision series; Otherwise, carry out following iterative process:
If kl(σ)<k<kL-1(σ) (l=3,4 ..., dv+ 1) carry out following step a), b):
A) decoding of bit node: the external information from bit node i to check-node j is output as:
LLR(qij)=&Sigma;j&prime;&Element;Col[i]j&prime;&NotEqual;jLLR(rij&prime;)+LLR(Ri),1&le;i&le;N-&Sigma;t=1dvNt--(33)
B) decoding of check-node: the external information that check-node j outputs to bit node i is:
LLR(rij)=&Phi;-1(Qlj&CenterDot;&Pi;i&prime;&le;N-&Sigma;i=tdvNti&prime;&Element;Row[j]i&prime;&NotEqual;i&Phi;(LLR(qi&prime;j)))--(34)
Otherwise, if k=kl(σ) (l=2,3 ..., dv), the iterative step below carrying out:
C) decoding of bit node: the external information output from bit node i to check-node j is used following formula instead and is calculated:
Figure C0214864900161
A in the formula0Be a very big positive integer, be used to amplify qIjThe logarithm value of feeling relieved, to provide more useful information to the low step bit node.A0Value that can be between 10-1000 specifically depends on the floating-point figure place of decoder.
D) decoding of check-node: check-node j outputed to the external information of bit node i and was this moment:
LLR(rij)=&Phi;-1(Ql+1j&CenterDot;&Pi;i&prime;&le;N-&Sigma;i=l+1dvi&prime;&Element;Row[j]i&prime;&NotEqual;i&Phi;(LLR(qi&prime;j)))--(36)
Calculate the Q of next iteration simultaneouslyLj, be used to simplify follow-up iteration:
Qlj=Ql+1j&CenterDot;&Pi;N-&Sigma;t=ldvi&prime;&Element;Row[j]Nt<i&prime;&le;N-&Sigma;t=l+1dvNt&Phi;(LLR(qi&prime;j))--(37)
E) decode results of l rank bit node is:
LLR(v^i)=&Sigma;j&prime;&Element;Col[i]LLR(rij&prime;)+LLR(Ri),N-&Sigma;t=ldvNt<i&le;N-&Sigma;t=l+1dvNt--(38)
At this moment, decoder export corresponding l rank bit node the hard decision result of corresponding code element be
Notice that in an interative computation of standard and long-pending decoding algorithm, an i rank bit node will calculate i2Sub-addition, and a j rank check-node approximately will be carried out j2Inferior floating-point multiplication.Therefore, for the decoding of length for the ILDPC sign indicating number of N bit, one time iteration approximately needs
Figure C0214864900166
Sub-addition and generalInferior floating-point multiplication.And when adopting algorithm proposed by the invention, at the k time (kl(σ)<k≤kL-1(σ)) in the iterative process, approximatelySub-addition and average(&Sigma;t=ldvNt&CenterDot;t)/(&Sigma;t=2dvNt&CenterDot;t)&CenterDot;&Sigma;l=2dcMl&CenterDot;l3Inferior floating-point multiplication is owing to the iteration of higher order bits node finishes to be removed in advance, thereby effectively reduces decoding complexity.In addition, in this algorithm, the log-likelihood value of its gained was exaggerated when the higher order bits node was finished iterative decoding, thereby more useful information was provided for the low order node.Under the condition of high s/n ratio, this method can obtain than standard and the better error-correcting performance of long-pending interpretation method.
Embodiment: present embodiment is to realize the error-correcting decoding method that the present invention proposes with software on Tsing Hua Tong Fang's PC, as shown in Figure 4, may further comprise the steps:
During the decoding beginning, decoder forwards step 4b to from step 4a, and receiving sequence is input to bit node; Decoder is transferred to 4c after finishing this step, and the iteration that each rank bit node is set according to the size of noise finishes parameter, deciphers iterations simultaneously and is changed to 0, and carry out initialization according to (30) (31) (32) formula.Then, decoder is transferred to 4d, calculates the hard decision output of each rank bit node, and 4e judges in step.If the hard decision series of gained is a legal code word, then this time decoding finishes, and jumps to 4l, exports corresponding hard decision result; Otherwise, transfer to 4f, judge whether the current iteration number of times equals kl(σ).If the current iteration number of times is not equal to kl(σ), carry out one time iterative process: the output that each rank bit node calculates each node according to (33) formula, deliver to corresponding check-node as input by line between node; Check-node calculates the external information that feeds back to each bit node according to (34) formula again, and its input as the bit node next iteration.After finishing these computings, transfer to step 4j.If the current iteration number of times equals kl(σ), then transfer to 4h.This moment, bit node calculated external information according to (35) formula, subsequently all l rank bit node finishing iteration and gained decode results hard decision exported; Calculate external information with the associated check-node of l rank bit node according to (36) formula.At step 4i, decoder is simplified check-node according to (37) formula, so that interative computation next time subsequently.Finish after these steps, decoder is transferred to 4j, and iterations adds 1, and judges that at step 4k whether iterations is less than permissible value.If, then jump to 4d, change the next round iteration over to; Otherwise, transfer to step 4l, export the decode results of remaining each rank bit node.After the operation of completing steps 4l, decoder is transferred to step 4m, judges whether decode procedure finishes: if then next step transfers to step 4n, finish decode procedure; Otherwise next step jumps back to step 4b, restarts the decoding of next code vector.
As an example, table 1 and table 2 have listed respectively that an ILDPC sign indicating number adopts and long-pending decoding algorithm and resulting decoding performance of algorithm of the present invention and corresponding calculated complexity under the BIAWGN channel.The major parameter of this ILDPC sign indicating number is: code length equals 10000 bits, and the column weight amount is distributed to be λ (x)=0.23882x+0.29515x2+ 0.03261x3+ 0.43342x10, row distribution of weight formula is ρ (x)=0.43011x6+ 0.56989x7By table 1 as seen, under the condition of low signal-to-noise ratio, both error-correcting performances are more or less the same; Under the condition of high s/n ratio, the error-correcting performance of algorithm gained of the present invention is more better than standard and long-pending decoding algorithm.In addition, as known from Table 2, the decoding complexity that method of the present invention is obviously reduces.Wherein addition approximately reduces 45%-70%, and floating-point multiplication has reduced about 25%-40%.
The performance of two kinds of decoding algorithms of table 1. under the BIAWGN channel
Eb/N0(dB) 0.72 0.82 0.91 1.01
With long-pending decoding algorithm 2.725e-3 5.858e-4 1.364e-4 5.94e-5
Algorithm of the present invention 3.241e-3 6.614e-4 1.474e-4 5.38e-5
The average decoding complexity of two kinds of decoding algorithms of table 2.
Figure C0214864900181
As seen, adopt this method can obtain good error-correcting performance, improved the practicality of ILDPC sign indicating number greatly with very low decoding complexity.
With reference to Fig. 5, adopt the communication system of method transmission error correction of the present invention to comprise an information source 51 that produces digital information flow, ILDPC encoder 53, transmission channel 55, and correction error of transmission decoder 57 as shown in Figure 3.In this example, the data symbol stream 52 of the information of carrying that information source 51 produces is sent to ILDPC code coder 53, and 53 pairs of information of ILDPC code coder are carried out chnnel coding.ILDPC code stream 54 behind the coding is interfered in transmission channel 55 transmission courses and produces mistake, and the ILDPC code decoder 57 that the code stream 56 that comprises transmission error is repaired error of transmission receives.Adopt method of the present invention to finish error-correcting decoding through ILDPC code decoder 57, the code stream 58 of output is correct digital information flow.
The application that should be pointed out that the inventive method can also be generalized in the magnetic-memory system goes.
Effect of the present invention is; the unequal error protection characteristic of the not same order bit node by utilizing the ILDPC code; so that the iteration of higher order bits node is than the iteration FEFO of low step bit node, thereby under the prerequisite that does not have the significantly sacrificing decoding performance, decoding complexity is obviously reduced. Compare with existing method one, this method has significantly reduced computation complexity; Compare with existing method two, this method does not have the error-correcting performance of significantly sacrificing ILDPC code. In addition, this method is also amplified by higher order bits node log-likelihood value being carried out appropriateness, so that the low order node has obtained more useful information. Under the condition of high s/n ratio, can obtain ratio method one better error-correcting performance. Therefore, for the decoding of ILDPC code, this method obviously is better than other method.

Claims (1)

1. improved non-rule low density parity check code error-correcting decoding method; contain the non-rule low density parity code and long-pending interpretation method; its the log-likelihood value that is input as receiving sequence and to carrying out iterative decoding by the restriction relation of utilizing bit node and verification contact under the number space; it is characterized in that; the characteristic that it utilizes the degree of protection of non-rule low density parity check code bit node to improve along with the raising of node exponent number; in iterative decoding; the iterative decoding of higher order bits node is just finished when finishing the error correction of this rank node; and the iterative decoding of low order node is proceeded; to simplify the computation complexity of successive iterations decoding; particularly, it contains successively and has the following steps:
(1) decoding beginning is input to bit node to receiving sequence, and the iteration end parameter of each rank bit node is set according to the noise size simultaneouslyKs(&sigma;)={k2(&sigma;),k3(&sigma;),&CenterDot;&CenterDot;&CenterDot;,kdv(&sigma;)},The decoding iterations is changed to 0;
(2) decoder calculates the hard decision output of each rank bit node and delivers to the codeword detection node;
Whether (3) detect the hard decision sequence is a legal-code:
If, the decode results of each rank bit node of output residue, decoding finishes;
If not, then carry out next step:
(4) carry out the next iteration process: if iterations kl(σ)<k<kL-1(σ) (l=3,4 ..., dv+ 1) carry out following step (4.1), (4.2):
(4.1) decoding of bit node: the external information from bit node i to check-node j is output as:
LLR(qij)=&Sigma;j&prime;&Element;Col[i]j&prime;&NotEqual;jLLR(rij&prime;)+LLR(Ri)1&le;i&le;N-&Sigma;t=ldvNt;
(4.2) decoding of check-node: the external information that check-node j outputs to bit node i is:
Figure C021486490002C3
Otherwise, if k=kl(σ) (l=2,3 ..., dv), iterative step (4.3), (4.4) below carrying out:
(4.3) decoding of bit node: the external information output from bit node i to check-node j is used following formula instead and is calculated:
A in the formula0Be a very big positive integer, be used to amplify qIjThe log-likelihood value, to provide more useful information to the low step bit node;
(4.4) decoding of check-node: check-node j outputed to the external information of bit node i and was this moment:
Finish after these operations, iterations adds 1, repeats (2)~(4) step;
(5) if iterations k=kl(σ), l is the exponent number of bit node, then:
(5.1) all l rank bit nodes calculate posterior information,
LLR(v^i)=&Sigma;j&prime;&Element;Col[i]LLR(rij&prime;)+LLR(Ri)N-&Sigma;t=ldvNt<i&le;N-&Sigma;t=l+1dvNt;
All l rank bit nodes are done hard decision to the gained posterior information subsequently,
The gained result exports as the last decode results of l rank bit joint;
(5.2) Q of calculating next iterationLj:
Qlj=Ql+1j&CenterDot;&Pi;N-&Sigma;t=ldvNt<i&prime;&le;N-&Sigma;t=l+1dvNti&prime;&Element;Row[j]&Phi;(LLR(qi&prime;j));
In successive iterations, the decoding of check-node will be adopted QLjReplace QL+1jCarry out computing, and no longer participate in computing by the numerical value that tie line outputs to check-node from l rank bit node, thus the successive iterations of simplification check-node;
(6) iterations adds 1, changes the next round iteration over to;
(7) whether the judgement iterations is less than k2(σ);
If then get back to step (2);
If not, the decode results of each rank bit node of then output residue;
(8) whether judgement has next code vector to need decoding:
If have, then get back to step (1);
If do not have, then finish decode procedure.
CNB021486492A2002-11-152002-11-15Improved correcting decoding method for non-regular low-density parity-check codeExpired - Fee RelatedCN1185796C (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CNB021486492ACN1185796C (en)2002-11-152002-11-15Improved correcting decoding method for non-regular low-density parity-check code

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CNB021486492ACN1185796C (en)2002-11-152002-11-15Improved correcting decoding method for non-regular low-density parity-check code

Publications (2)

Publication NumberPublication Date
CN1405981A CN1405981A (en)2003-03-26
CN1185796Ctrue CN1185796C (en)2005-01-19

Family

ID=4751523

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CNB021486492AExpired - Fee RelatedCN1185796C (en)2002-11-152002-11-15Improved correcting decoding method for non-regular low-density parity-check code

Country Status (1)

CountryLink
CN (1)CN1185796C (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN100355211C (en)*2003-04-242007-12-12北京邮电大学LDPC iteration encoding Method based on improved Taneer graph
CN101567699B (en)*2003-05-132013-10-30索尼株式会社Decoding device
CA2470546C (en)*2003-06-132010-08-17The Directv Group, Inc.Method and apparatus for providing carrier synchronization in digital broadcast and interactive systems
US7296208B2 (en)*2003-07-032007-11-13The Directv Group, Inc.Method and system for generating parallel decodable low density parity check (LDPC) codes
KR100809619B1 (en)*2003-08-262008-03-05삼성전자주식회사 Block Low Density Parity Check Coding / Decoding Apparatus and Method in Mobile Communication System
US7334181B2 (en)*2003-09-042008-02-19The Directv Group, Inc.Method and system for providing short block length low density parity check (LDPC) codes
US7234098B2 (en)*2003-10-272007-06-19The Directv Group, Inc.Method and apparatus for providing reduced memory low density parity check (LDPC) codes
US7376883B2 (en)*2003-10-272008-05-20The Directv Group, Inc.Method and system for providing long and short block length low density parity check (LDPC) codes
US7237181B2 (en)*2003-12-222007-06-26Qualcomm IncorporatedMethods and apparatus for reducing error floors in message passing decoders
CN100364237C (en)*2004-02-092008-01-23清华大学 System code design method and communication system of irregular low-density parity-check code
US7747929B2 (en)*2004-04-282010-06-29Samsung Electronics Co., LtdApparatus and method for coding/decoding block low density parity check code with variable block length
US7165205B2 (en)*2004-05-142007-01-16Motorola, Inc.Method and apparatus for encoding and decoding data
KR20060016059A (en)*2004-08-162006-02-21삼성전자주식회사 Block low density parity check code encoding / decoding apparatus and method with variable block length
KR100703271B1 (en)2004-11-232007-04-03삼성전자주식회사 Low density parity check code decoding method and apparatus using integrated node processing
CN100490334C (en)*2005-01-102009-05-20美国博通公司Method for constructing and selecting irregular LDPC code based on GRS
CN100486150C (en)2005-01-232009-05-06中兴通讯股份有限公司Non-regular low intensity parity code based coder and its creation method
JP2009517970A (en)*2005-12-012009-04-30トムソン ライセンシング Apparatus and method for decoding low density parity check coded signal
CN101026436B (en)*2006-02-222011-07-06华为技术有限公司 A Decoding Method of Low Density Parity Check Code
CN101162965B (en)*2006-10-092011-10-05华为技术有限公司 A method and system for erasure correction decoding of LDPC codes
US8151171B2 (en)*2007-05-072012-04-03Broadcom CorporationOperational parameter adaptable LDPC (low density parity check) decoder
CN101562456B (en)*2009-06-032012-08-22华北电力大学(保定)Code assisting frame synchronizing method based on soft decoding information of low-density parity check codes
CN101917249B (en)*2010-07-272012-11-14清华大学QC-LDPC (Quasi-Cyclic Low-Density Parity-Check) code decoder and implementation method thereof
CN107124187B (en)*2017-05-052020-08-11南京大学 A kind of LDPC code decoder based on parity check matrix applied to flash memory
CN109586733B (en)*2018-11-232021-06-25清华大学 A LDPC-BCH decoding method based on graphics processor

Also Published As

Publication numberPublication date
CN1405981A (en)2003-03-26

Similar Documents

PublicationPublication DateTitle
CN1185796C (en)Improved correcting decoding method for non-regular low-density parity-check code
CN1252935C (en)Information source-channel united coding method based on low-density odd-even check coding
CN1113295C (en) Error correction coding method and device thereof
CN1558556A (en) System code design method and communication system of irregular low-density parity-check code
CN1194475C (en)Data transmitting method, data transmitting system, transmitter and receiver
CN1547806A (en) Encoding of low-density parity-check codes using structured parity-check matrices
CN1100392C (en)Error correction decoder for vocoding system
CN1993892A (en)Apparatus and method for encoding and decoding a block low density parity check code
CN1697359A (en) Systems, devices and methods for sending and receiving data
CN1838542A (en)Decoding apparatus and method and program
CN1968071A (en)Decoding device, decoding method, and receiving apparatus
CN1266555A (en)Product code iterative decoding
CN1217838A (en) Data communication system and method using decentralized error detection bits
CN1527499A (en) Method and system for low density parity-check code decoding
CN1228888A (en) Variable length encoding with error protection
CN1080494C (en)Apparatus and method for correcting fault
CN1808955A (en)Non-regular low intensity parity code based coder and its creation method
CN101039119A (en) Encoding and decoding method and system
CN112468159B (en)Unequal error protection method based on joint source channel coding
CN1802796A (en)Communication method and apparatus for multi-user detection
CN1197255C (en) Communication device and communication method
CN1906856A (en)Belief propagation decoder cancelling the exchange of unreliable messages
CN1993917A (en)Apparatus and method for coding/decoding block low density parity check code with variable block length
JP2008199623A (en)Message-passing and forced convergence decoding method
CN1698282A (en) Device and method for decoding error correction code in communication system

Legal Events

DateCodeTitleDescription
C06Publication
PB01Publication
C10Entry into substantive examination
SE01Entry into force of request for substantive examination
C10Entry into substantive examination
SE01Entry into force of request for substantive examination
C14Grant of patent or utility model
GR01Patent grant
CF01Termination of patent right due to non-payment of annual fee

Granted publication date:20050119

Termination date:20191115

CF01Termination of patent right due to non-payment of annual fee

[8]ページ先頭

©2009-2025 Movatter.jp