CN113872609B - Partial cyclic redundancy check-assisted adaptive belief propagation decoding method - Google Patents

Partial cyclic redundancy check-assisted adaptive belief propagation decoding method Download PDF

Info

Publication number
CN113872609B
CN113872609B CN202111157134.0A CN202111157134A CN113872609B CN 113872609 B CN113872609 B CN 113872609B CN 202111157134 A CN202111157134 A CN 202111157134A CN 113872609 B CN113872609 B CN 113872609B
Authority
CN
China
Prior art keywords
decoding
matrix
check
crc
bits
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.)
Active
Application number
CN202111157134.0A
Other languages
Chinese (zh)
Other versions
CN113872609A (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.)
Southeast University
Original Assignee
Southeast 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 Southeast University filed Critical Southeast University
Priority to CN202111157134.0A priority Critical patent/CN113872609B/en
Publication of CN113872609A publication Critical patent/CN113872609A/en
Application granted granted Critical
Publication of CN113872609B publication Critical patent/CN113872609B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • 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/1148Structural properties of the code parity-check or generator matrix

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)

Abstract

The invention discloses a self-adaptive belief propagation decoding method assisted by partial cyclic redundancy check, which comprises the steps of forming a generating matrix according to a generating polynomial of CRC before decoding, further solving a check matrix of the generating matrix, dividing the matrix into two parts, wherein one part is used for detecting a decoding result, and the other part is used for assisting decoding; combining the part of CRC check matrix of the auxiliary decoding and the check matrix of the LDPC code to obtain a joint check matrix; the decoding process mainly adopts a CRC-assisted self-adaptive belief propagation decoding CA-ABP method, and a joint check matrix is used as a decoding matrix in an ABP algorithm. After the decoding output code word meets the passing of the joint check matrix, CRC check is carried out on the information bits of the code word, and if the information bits of the code word meet the CRC check, the information bits are used as effective decoding output; otherwise, judging that the decoding fails. The method remarkably enhances the decoding performance of the LDPC code while retaining part of CRC checking function.

Description

Partial cyclic redundancy check-assisted adaptive belief propagation decoding method
Technical Field
The invention relates to the technical field of decoding of channel error correction coding, in particular to a self-adaptive belief propagation decoding method assisted by partial cyclic redundancy check.
Background
1. Cyclic redundancy check code
Cyclic redundancy check (Cyclic Redundancy Check, CRC) codes are a channel coding technique that generates a brief redundancy bit check code from data such as a bit stream or binary file. It is mainly used for checking or checking errors that may occur after data is transmitted or stored. The cyclic redundancy check code is a very important error detection code, and has simple coding and low false positive probability. CRC is essentially a sequence of length K encoded as a new codeword of length k+l, where L represents the highest degree of the generator polynomial. And the receiver can perform the same calculation based on the same data, thereby judging whether an error occurs in the transmission process. The main role of CRC is to detect errors, but there is no correction capability for the codeword itself. The coding steps are as follows:
let the input sequence length be K, expressed as a binary polynomial:
u(x)=a K-1 x K-1 +a K-2 x K-2 +…+a 1 x+a 0
the cyclic redundancy check generator polynomial is:
g(x)=g L x L +g L-1 x L-1 …+g 2 x 2 +g 1 x+g 0
the coding steps of the transmitting end are as follows:
step 1: adding L zeros at the end of the input sequence, the corresponding binary polynomial being denoted as x L ·u(x);
Step 2: dividing u (x) by a generator polynomial g (x) to obtain a residual formula v (x), wherein a binary sequence with the length L corresponding to the formula is CRC redundancy;
step 3: according to x L U (x) and v (x), x can be obtained L U (x) +v (x), and the binary sequence with the length of K+L corresponding to the formula is the CRC coding result.
The receiving end only needs to divide the binary polynomials corresponding to the receiving sequence by the same generating polynomials when decoding. If the residual is zero, indicating that no error occurs in the initial process, and removing the last L bits of the received sequence to obtain an original information sequence; otherwise, the transmission is indicated to be in error.
2. Low density parity check code
2.1 brief description of the invention
The low density parity check (Low Density Parity Check, LDPC) code is a linear block code, which can be represented by a Tanner graph and a check matrix, and the number of non-zero elements in the check matrix is far less than the number of zero elements. The LDPC code has excellent performance approaching Shannon limit, and is greatly focused in the field of channel coding, so that the LDPC code is widely applied in the fields of mobile and deep space communication and the like, and has very important application prospect. For a regular LDPC code, each row corresponds to a number of non-zero elements per column, where the number of non-zero elements per column (row) is referred to as the column (row) weight. After the LDPC codeword is transmitted through a channel, the receiving end performs channel decoding on the LDPC codeword, and an LDPC decoding algorithm adopted in 5G-NR is a belief propagation (Belief Propagation, BP) algorithm.
2.2 iterative soft-decision decoding of low density parity check codes
In the decoding scheme of the LDPC code, the binary image-based iterative soft decision decoding method, namely BP decoding, has good error rate performance, and taking a standard sum product decoding scheme as an example, the main steps of decoding are as follows:
the binary diagram variable node and the check node set corresponding to the matrix defining the parity check code are V= { V n ,n=1,2,…,N},S={s m M=1, 2, …, N }; definition of variable node v n Participating check node set a (n) = { j, h j,n =1 }, comprising check node s m Variable node B (n) = { i, h m,i =1 }; removing check node s in definition A (n) m The node set of (a) is A (n) \m, and the check node v is removed from B (n) n The node set of (a) is B (n) \m, and the coding sequence is C= { C n ,n=1,…,N};
The first step: initialization, BPSK modulation signal x n =1-2·C n N=1, …, N goes through zero mean variance σ 2 Gaussian white noise channel, obtain the received signal sequence Y= { Y n |y n =x n +w n N=1, …, N }, where w n For zero mean variance sigma 2 Gaussian white noise signal, initial variable node v n N=1, 2, …, N-way check node s m M=1, 2, …, N output informationAnd hard decision C based on the sign of the signal in Y 0 Simultaneously initializing the cumulative likelihood ratio of each variable nodeAnd the iteration times t=1, start iterative decoding;
and a second step of: information output update of check node and variable node: each check node s m Outputting information from variable node of t-1 th iterationThe t-th iteration node s is calculated as follows m To variable node v n The information to be transferred is provided with a message,
each variable node v n Verification type output information to be participated inAdding as variable node v n To check node s m Is provided with an output of (a),
thirdly, calculating the output of the t-th iteration: each variable node v n All participating check nodes s m Output of m.epsilon.A (n)Adding up, as the total output of the variable nodes of the current iteration +.>
Fourth, according to the output information of each variable node of the current iterationMaking hard decisions C t
Defining its information bit portion as m t If the sequence satisfies all check equations and the first K bits of the sequence satisfy the cyclic redundancy check, namely:
H LDPC ·C t =Θ,H S ·m t =Θ;
wherein Θ represents an all-zero vector, and the multiplication and addition operations of the matrix are all multiplication and addition operations of a binary domain; the iterative decoding result will be the final decoded output:terminating decoding of the frame at the same time; otherwise if the current iteration timesIf the number T does not reach the maximum iteration number T, continuing decoding, updating likelihood ratio output, adding one to the iteration number, and returning to the second step;
for longer irregular LDPC codes, BP decoding can achieve performance approaching the Shannon limit. However, in practical use, the system often uses code blocks of medium and short length, and bipartite graphs corresponding to LDPC codes of limited length no longer have progressive loopless. Therefore, BP decoding still has a large gap from maximum likelihood decoding at this time.
2.3 adaptive propagation decoding method
Adaptive belief propagation (Adaptive Belief Propagation, ABP) is a polynomial complexity soft decision algorithm for Reed-Solomon (RS) codes. The ABP algorithm has excellent performance, and is the best performance among all the known RS code decoding algorithms at present. The basic idea is to continuously adjust the check matrix by using Gaussian elimination according to the reliability, so that unreliable bits are more helped in soft information updating, and error propagation of BP algorithm is reduced as much as possible. Although this algorithm uses a serial algorithm gaussian elimination with higher complexity, it has quite good performance, and is comparable to other exponential complexity decoding algorithms, and its short code performance is very close to the maximum likelihood solution. However, in practice the ABP algorithm can be used for almost all block codes.
Disclosure of Invention
The invention aims to: the invention aims to provide a self-adaptive belief propagation decoding method assisted by partial cyclic redundancy check, which utilizes LDPC code information bits to meet cyclic redundancy check characteristics, and performs ABP decoding on LDPC codes after iterative decoding is finished, wherein a check matrix is a joint check matrix formed by the partial check matrix of cyclic redundancy check and the check matrix of LDPC, and the ABP decoding with better performance is completed under the condition of not increasing the whole decoding time delay of a system.
The technical scheme is as follows: a partial cyclic redundancy check assisted adaptive belief propagation decoding method specifically comprises the following steps
System generator matrix G defining Low Density Parity Check (LDPC) codes LDPC System verificationMatrix H LDPC The corresponding bipartite graph variable node is v= { V n N=1, …, N }; information sequence m= { m k K=1, …, N }, where K-L bits of information and L bits of cyclic redundancy check, CRC, bits of L bits have a generator polynomial of g (x) =g L x L +g L-1 x L-1 …+g 2 x 2 +g 1 x+g 0 Coding sequence c= { C n N=1, …, N }, and satisfies c=m·g LDPC
Step 1, initializing: the generator polynomial of the L-bit cyclic redundancy check bit is expressed as a generator matrix form of (K-L) x K:
the generating matrix of the CRC codes is subjected to Gaussian elimination based on primary equal-row transformation, and the previous A=K-L columns are converted into an identity matrix, so that the system form of the CRC generating matrix can be obtained:
G S =[I A×A |P A×L ] A×K
the corresponding system form check matrix is:
H S =[(P A×L ) T |I L×L ] L×K
before definitionThe partial check matrix corresponding to the bit CRC bits is +.>Matrix of rows K columns->I.e. < ->The bits CRC bits are used for auxiliary decoding, the remainder +.>The bit CRC bits are used for checking the decoding result;
will H S Transpose { h, expressed as a set of column vectors 1 ,h 2 ,…,h L } T ThenBefore use->The rows are denoted asWherein the transpose of the ith column vector +.>Is the ith row of the check matrix; the joint check matrix of the partial cyclic redundancy check and the low density parity check code is: />
BPSK modulated signal x n =1-2·C n N=1, …, N goes through zero mean variance σ 2 Gaussian white noise channel, obtain the received signal sequence Y= { Y n |y n =x n +w n N=1, …, N }, where w n For zero mean variance sigma 2 Gaussian white noise signal, corresponding hard decision sequence is recorded as
Step 2, adopting an iterative decoding method based on belief propagation, such as a standard or modified sum product decoding method or a simplified minimum sum decoding method, to the received signal sequence Y; the maximum iteration number is recorded as T, the current iteration number is T, and the likelihood ratio output of each variable node in each iteration is
Output r for current iteration likelihood ratio t Making symbol hard judgment to obtain output column vector sequence
Defining its information bit portion as m t If the sequence satisfies all check equations and the first K bits of the sequence satisfy the cyclic redundancy check, namely:
H LDPC ·C t =Θ,H S ·m t =Θ;
wherein Θ represents an all-zero vector, and the multiplication and addition operations of the matrix are all multiplication and addition operations of a binary domain; the iterative decoding result is taken as the final decoding output:terminating decoding of the frame at the same time;
otherwise, if the current iteration number T does not reach the maximum iteration number T, continuing decoding, updating likelihood ratio output, and repeating the step 2, wherein the iteration number t=t+1;
if the iterative decoding still cannot meet all the check equations after the maximum iteration times T are reached, entering the step 3, and executing the self-adaptive belief propagation decoding.
Step 3, using the channel output Y as the initial basis of the reliability information of each bit according to the absolute value |y of the channel information on each bit node n I, n=1, …, N is ordered from small to large, the columns corresponding to the nodes are also reordered correspondingly, and the bit nodes are divided into two groups GP 1 And GP 2 ,GP 1 The bit sequence in the matrix corresponds to N-K columns to be eliminated as a unit matrix, and GP 2 Setting maximum outer overlap for K bit sequences with greater residual reliabilityThe times of generation and the times of internal iteration are respectively T O And T I Setting the current inner iteration times and the current outer iteration times to be t respectively i =1 and t o =1;
Step 4, if t i =1, letAnd correlate unreliable bit GP to the joint check matrix 1 The corresponding columns are reordered to obtain +.>Wherein phi is 1 Representing the sorting operation followed by Gaussian elimination +.>Wherein phi is 2 Representing a gaussian elimination operation;
otherwise, toOrdering +.>The columns corresponding to the joint check matrix are reordered according to the ordering result to obtain a matrix +.>And do Gaussian elimination->By->Matrix and method for forming sameThe usual belief propagation decoding calculation extrinsic information in step 2 +.>Updated softInformation->Wherein alpha, 0<Alpha.ltoreq.1 is called damping factor and is for +.>Make hard decision +.>
Defining its information sequence part asIf the sequence satisfies all check equations and the first K bits of the sequence satisfy the cyclic redundancy check, namely:
wherein Θ represents an all-zero vector, and the multiplication and addition operations of the matrix are all multiplication and addition operations of a binary domain; the iterative decoding result will be the final decoded output:terminating decoding of the frame at the same time; otherwise, if the current internal iteration times t i Not reaching the maximum number of iterations T I Decoding is continued, likelihood ratio output is updated, and iteration times t i =t i +1, repeating step 4;
if the number of inner iterations t i Up to the maximum number of iterations T I But outer iteration number t o ≤T O Step 5 is entered;
step 5, fixedly selecting GP 1 In the most reliable lambda bits and sequentially select GP 2 The least reliable lambda bits, namely: GP (GP) 2 According to lambda bit segments, take 1,2, …, T in turn O Segment-1 for switching, GP 1 And GP 2 The positions corresponding to the bits are exchanged between, then t o =t o +1,t i =1, go back to step 4, otherwise, when t o Greater than T O At this time, decoding ends.
The beneficial effects are that: the beneficial effects of the invention are mainly represented in the following aspects:
1. the cyclic redundancy check is divided into two parts, one part of the cyclic redundancy check reserves the function of feeding back error detection results to the upper system, and the other part of the cyclic redundancy check assists ABP error correction, so that the decoding performance is further improved.
The combined check matrix of CRC assistance and LDPC can be determined in the initialization stage, and no extra delay and computational complexity are caused compared with the common ABP decoding.
3. Under the condition that the BP iterative decoding cannot obtain correct output, the CRC is used for assisting the ABP decoding to adjust the iterative times of the ABP at any time according to the needs, so that the decoding performance is greatly improved, and the moderate complexity is ensured.
4. The problem of the omission ratio in the simulation can be solved by adjusting the damping factor. Suitable damping factors can significantly reduce the false positive rate without losing too much performance.
Drawings
FIG. 1 is a flow chart of a CRC-aided ABP decoding algorithm;
FIG. 2 is a flowchart of an ABP decoding algorithm;
FIG. 3 is a graph of frame error rate and false positive rate for a 1/2 rate (N=144, K=72) LDPC code constructed for a BG_2 type basis matrix defined by 5G, and partial CRC aided adaptive belief propagation (CA-ABP) decoding under an AWGN channel;
fig. 4 is a graph of frame error rate and false positive rate for (n=240, k=120) LDPC codes, and partial CRC aided adaptive belief propagation (CA-ABP) decoding under AWGN channels.
Detailed Description
The present invention is further illustrated in the accompanying drawings and detailed description which are to be understood as being merely illustrative of the invention and not limiting of its scope, and various equivalent modifications to the invention will fall within the scope of the appended claims to the skilled person after reading the invention.
The invention aims to provide a self-adaptive belief propagation decoding method assisted by partial cyclic redundancy check, which is characterized in that for an LDPC code with an information bit meeting CRC, a system generating matrix is formed according to a generating matrix polynomial of the CRC, and then a check matrix is calculated and is divided into two parts, wherein one part is used for detecting a decoding result, and the other part is used for assisting decoding; generating a joint check matrix by using the part of CRC check matrix of the auxiliary decoding and the check matrix of the LDPC code; in the iterative decoding process, the output of a channel is used as the initial reliability of a node, the node is sorted and grouped according to the reliability, and Gaussian elimination is carried out on columns corresponding to unreliable bits in the group; updating likelihood ratio by using Gaussian eliminated joint check matrix, hard judging the updated likelihood ratio, if the output sequence accords with CRC-LDPC joint check, taking the code word as decoding output, otherwise, continuing iteration; if the maximum number of iterations is reached, a decoding failure is declared. The error correction performance of the LDPC code is greatly enhanced while the CRC error detection function is reserved.
FIG. 1 is a flow chart of a partial CRC aided BP+CA-ABP decoding method. Calculating a joint check matrix in advance according to the LDPC check matrix and a partial CRC check matrix; after each BP decoding iteration, performing likelihood ratio superposition and saving, judging whether the current hard decision sequence simultaneously meets the check matrix and the CRC, if so, outputting a result, otherwise, continuing iteration until the iteration number reaches a preset maximum value; if the BP decoding fails, the ABP decoding is executed, wherein the check matrix selects a pre-calculated joint check matrix, and finally the ABP decoding result is taken as an output result.
FIG. 2 groups likelihood ratios of channel outputs according to the ordering, if the channel outputs are the first time of inner iteration, gaussian elimination is carried out on columns corresponding to unreliable bits in the joint check matrix according to the grouping result, otherwise, the updated likelihood ratios are ordered, and then Gaussian elimination is carried out on the joint check matrix; updating likelihood ratios by using the Gaussian-cancelled joint check matrix; judging whether the current hard decision sequence meets the check matrix and the CRC at the same time, if so, ending the ABP decoding, otherwise, judging whether the inner iteration reaches the maximum times; if the inner iteration reaches the maximum iteration number; judging whether the outer iteration reaches the maximum iteration number, if the outer iteration is smaller than the maximum iteration number, setting the inner iteration number to be 1, continuing iterative decoding, otherwise, declaring decoding failure.
Fig. 3 is a graph of frame error rate performance of a partially CRC-aided bp+cA-ABP decoding under an AWGN channel and a corresponding CRC false positive rate curve for a 1/2 rate (n=144, k=72) LDPC code of a bg_2 type base matrix construction defined for 5G. Wherein BP+CA-ABP (20,3,8) -0.5 represents that the inner iteration number is 20, the outer iteration number is 3, 8-bit CRC bits are used for auxiliary decoding, and the damping factor is 0.5. As can be seen, bp+cA-ABP (20,3,8) -0.5 performs approximately 0.7dB better than the conventional BP algorithm when 8-bit CRC-aided decoding is selected. Moreover, when all CRC bits are used for auxiliary decoding, we can still significantly reduce its omission ratio by adjusting the damping factor. When the damping factor is adjusted to 0.4, the omission factor can be made smaller than 1e-5.
Fig. 4 is a graph of the frame error rate performance of a partial CRC-aided bp+cA-ABP algorithm for a 2/3 rate (n=240, k=120) LDPC code in an AWGN channel. As can be seen from the comparison, at a length of k=120, the maximum gain of bp+cA-ABP (20,3,24) can reach 0.6dB.
Aiming at the 1/2 code rate (144,72) and 1/2 code rate (240,120) LDPC code real-time partial CRC auxiliary ABP decoding of the BG_2 type base matrix structure of the 5G protocol, the invention takes (144,72) LDPC code as an example, and each code word and parameter are set as follows:
N=144,K=72,R=1/2,L=24
g(D)=D 24 +D 23 +D 21 +D 20 +D 17 +D 15 +D 13 +D 12 +D 8 +D 4 +D 2 +D+1
according to the definition of cyclic code, the generating polynomial of CRC is converted into 48×72 generating matrix, and converted into system by Gaussian eliminationAnd in a unified matrix form, according to the relation between the generation matrix and the check matrix, obtaining a corresponding check matrix. To be used forFor example, the 8×72 partial CRC check matrix and the LDPC check matrix constitute a joint check matrix.
The system adopts binary phase shift keying BPSK modulation to obtain a transmission sequence, and a receiver demodulates the transmission sequence through an additive white Gaussian noise AWGN channel to obtain a reliability sequence represented by a log-likelihood ratio.
And adopting standard BP decoding to the receiver, judging whether the decoding is correct or not through the LDPC check matrix and the CRC check matrix, and directly outputting if the decoding is correct, otherwise, performing CA-ABP decoding.
The CA-ABP decoding method is described above, but differs only in the variation of the joint check matrix. When using partial CRC bits, cA-ABP decoding still needs to undergo CRC check, where the number of actually valid check bits is only 24-8=16 bits, and the error detection capability is reduced from that of the complete CRC-24, but is far lower than the false positive rate of 1%. And outputting a decoding result if the result can meet the CRC-LDPC joint check, otherwise outputting decoding failure and requesting retransmission to an upper level.
The main innovation point of the invention is that the error detection capability of the CRC part of the information bit is reserved, and the error correction performance of the LDPC code is improved at the same time; the adopted mode is not to utilize CRC error detection capability to assist in judging the decision code, but to utilize partial CRC check matrix and LDPC check matrix to generate a joint check matrix to replace the check matrix in ABP decoding; from the simulation result, the decoding performance of the LDPC code is obviously improved under the condition of not increasing the complexity of the system.
All symbols in the present invention are annotated:
CRC: cyclic redundancy check
ABP: self-adaptive belief propagation method
BP: belief propagation method
CA-ABP: CRC-aided adaptive belief propagation method
N: LDPC total code block length
K: LDPC information bit length
L: CRC redundancy length
Partial CRC length for auxiliary decoding
v n : nth variable node
S m : mth check node
H S : check matrix in the form of a CRC code system
H LDPC : check matrix of LDPC code
Combined check matrix
Gaussian-cancelled joint check matrix
V: variable node set
T: BP iteration number
C t : hard decision output after t BP iterations
t i Hard decision output at times of intra-ABP iteration
Final decoded output
T I : number of inner iterations
T O : number of outer iterations
Lambda: the number of bits exchanged in the outer iteration of the packet.

Claims (1)

1. A partial cyclic redundancy check assisted adaptive belief propagation decoding method is characterized in that: the method specifically comprises the following steps:
system generator matrix G defining low density parity check LDPC code LDPC And a system check matrix H LDPC The corresponding bipartite graph variable node is v= { V n N=1, …, N }; information sequence m= { m k K=1, …, K }, where K-L bits of information and L bits of cyclic redundancy check, CRC, bits of L bits have a generator polynomial of g (x) =g L x L +g L-1 x L-1 …+g 2 x 2 +g 1 x+g 0 Coding sequence c= { C n N=1, …, N }, and satisfies c=m·g LDPC
Step 1, initializing: the generator polynomial of the L-bit cyclic redundancy check bit is expressed as a generator matrix form of (K-L) x K:
and (3) performing Gaussian elimination based on primary equal-row transformation on the CRC encoded generator matrix, and converting the prior A=K-L columns into an identity matrix to obtain a system form of a cyclic redundancy check generator matrix:
G S =[I A×A |P A×L ] A×K
the corresponding system form check matrix is:
H S =[(P A×L ) T |I L×L ] L×K
before definitionThe partial check matrix corresponding to the bit CRC bits is +.>Matrix of rows K columns->
Will H S Transpose { h, expressed as a set of column vectors 1 ,h 2 ,…,h L } T ThenBefore use->The row is denoted +.>Wherein the transpose of the ith column vector +.>Is the ith row of the check matrix; the joint check matrix of the partial cyclic redundancy check and the low density parity check code is: />
BPSK modulated signal x n =1-2·C n N=1, …, N goes through zero mean variance σ 2 Gaussian white noise channel, obtain the received signal sequence Y= { Y n |y n =x n +w n N=1, …, N }, where w n For zero mean variance sigma 2 Gaussian white noise signal, corresponding hard decision sequence is recorded as
Step 2, adopting an iterative decoding method based on belief propagation to the received signal sequence Y, recording the maximum iteration number as T, the current iteration number as T, and outputting the likelihood ratio of each variable node in each iteration as
Output r for current iteration likelihood ratio t Making symbol hard judgment to obtain output column vector sequence
Defining its information bit portion as m t If the sequence satisfies all check equations and the first K bits of the sequence satisfy the cyclic redundancy check, namely:
H LDPC ·C t =Θ,H S ·m t =Θ;
wherein Θ represents an all-zero vector, and the multiplication and addition operations of the matrix are all multiplication and addition operations of a binary domain; the iterative decoding result is taken as the final decoding output:terminating decoding of the frame at the same time; if the current iteration number T does not reach the maximum iteration number T, continuing decoding, updating likelihood ratio output, and repeating the step 2, wherein the iteration number t=t+1;
if the iterative decoding still cannot meet all check equations after reaching the maximum iterative times T, entering a step 3, and executing self-adaptive belief propagation decoding;
step 3, using the channel output Y as the initial basis of the reliability information of each bit according to the absolute value |y of the channel information on each bit node n I, n=1, …, N is ordered from small to large, the columns corresponding to the nodes are also reordered correspondingly, and the bit nodes are divided into two groups GP 1 And GP 2 ,GP 1 The bit sequence in (a) corresponds to the unit to be cancelledN-K columns of array, GP 2 Setting maximum outer iteration times and inner iteration times as T for K bit sequences with larger residual reliability O And T I Setting the current inner iteration times and the current outer iteration times to be t respectively i =1 and t o =1;
Step 4, if t i =1, letAnd correlate unreliable bit GP to the joint check matrix 1 The corresponding columns are reordered to obtain +.>Wherein phi is 1 Representing the sorting operation followed by Gaussian elimination +.> Wherein phi is 2 Representing a gaussian elimination operation;
otherwise, toOrdering +.>The columns corresponding to the joint check matrix are reordered according to the ordering result to obtain a matrix +.>And do Gaussian elimination->By->Matrix arrayAnd->The usual belief propagation decoding calculation extrinsic information in step 2 +.>Updated soft information +.>Wherein alpha, 0<Alpha.ltoreq.1 is called damping factor and is for +.>Make hard decision +.>
Defining its information sequence part asIf the sequence satisfies all check equations and the first K bits of the sequence satisfy the cyclic redundancy check, namely:
wherein Θ represents an all-zero vector, and the multiplication and addition operations of the matrix are all multiplication and addition operations of a binary domain; the iterative decoding result will be the final decoded output:terminating decoding of the frame at the same time;
otherwise, if the current inner iteration number t i Not reaching the maximum number of iterations T I Decoding is continued, likelihood ratio output is updated, and iteration times t i =t i +1, repeating step 4;
if the number of inner iterations t i Up to the maximum number of iterations T I But outer iteration number t o ≤T O Step 5 is entered;
step 5, fixedly selecting GP 1 In the most reliable lambda bits and sequentially select GP 2 The least reliable lambda bits, namely: GP (GP) 2 Segmentation according to lambda bits, sequentially taking 1,2, … and T according to iteration times O Segment-1 for switching, GP 1 And GP 2 The positions corresponding to the bits are exchanged between, then t o =t o +1,t i =1, go back to step 4, otherwise the decoding ends.
CN202111157134.0A 2021-09-30 2021-09-30 Partial cyclic redundancy check-assisted adaptive belief propagation decoding method Active CN113872609B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111157134.0A CN113872609B (en) 2021-09-30 2021-09-30 Partial cyclic redundancy check-assisted adaptive belief propagation decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111157134.0A CN113872609B (en) 2021-09-30 2021-09-30 Partial cyclic redundancy check-assisted adaptive belief propagation decoding method

Publications (2)

Publication Number Publication Date
CN113872609A CN113872609A (en) 2021-12-31
CN113872609B true CN113872609B (en) 2024-03-26

Family

ID=79001056

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111157134.0A Active CN113872609B (en) 2021-09-30 2021-09-30 Partial cyclic redundancy check-assisted adaptive belief propagation decoding method

Country Status (1)

Country Link
CN (1) CN113872609B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101867379A (en) * 2010-06-24 2010-10-20 东南大学 Cyclic redundancy check-assisted convolutional code decoding method
CN109981112A (en) * 2018-09-26 2019-07-05 东南大学 A kind of sequencing statistical decoding method of partial cyclic redundancy check auxiliary
CN113285722A (en) * 2021-05-21 2021-08-20 西南大学 Multi-deviation segmented redundancy check auxiliary statistical decoding method for short polarization code

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2838204B1 (en) * 2012-11-15 2017-04-19 Huawei Technologies Co., Ltd. Decoding processing method and decoder

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101867379A (en) * 2010-06-24 2010-10-20 东南大学 Cyclic redundancy check-assisted convolutional code decoding method
CN109981112A (en) * 2018-09-26 2019-07-05 东南大学 A kind of sequencing statistical decoding method of partial cyclic redundancy check auxiliary
CN113285722A (en) * 2021-05-21 2021-08-20 西南大学 Multi-deviation segmented redundancy check auxiliary statistical decoding method for short polarization code

Also Published As

Publication number Publication date
CN113872609A (en) 2021-12-31

Similar Documents

Publication Publication Date Title
CN108462558B (en) Method and device for decoding polarization code SCL and electronic equipment
JP5177767B2 (en) Method and apparatus for decoding LDPC code in Galois field GF (Q)
CN109660264B (en) High performance polar code decoding algorithm
TWI663839B (en) Method for providing soft information with decoder under hard decision hard decoding mode
CA2465332C (en) Soft input decoding for linear codes
US8484531B1 (en) Post-processing decoder of LDPC codes for improved error floors
CN109981112B (en) Partial cyclic redundancy check assisted sequencing statistical decoding method
CN107528597B (en) LDPC code post-processing decoding method based on CRC code
Jeong et al. SC-Fano decoding of polar codes
CN107565978B (en) BP decoding method based on Tanner graph edge scheduling strategy
JP2008199623A (en) Message-passing and forced convergence decoding method
CN106656209B (en) Cascade code method for correcting synchronous errors by adopting iterative decoding
CN110995279A (en) Polarization code combined SCF spherical list overturning decoding method
CN109194336B (en) Method, system and device for coding and decoding cascade Spinal code
CN112803954B (en) Improved BP List decoding algorithm based on CRC (cyclic redundancy check) segmentation processing
CN108134612B (en) Iterative decoding method for correcting synchronous and substitute error cascade code
Lu et al. Deep learning aided SCL decoding of polar codes with shifted-pruning
JP2008544639A (en) Decoding method and apparatus
CN106788458B (en) Hard decision-oriented forward and backward estimation method for insertion deletion and substitution errors
CN112953569A (en) Decoding method and device, storage medium, electronic device, and decoder
CN116760425A (en) CRC auxiliary OSD decoding method of LDPC code
CN113872609B (en) Partial cyclic redundancy check-assisted adaptive belief propagation decoding method
JP2006060695A (en) Information decoding and encoding method,information communication method, information decoding device, transmitting device, and information communication system
CN112468158A (en) Method for decoding a codeword and decoder
US20050050433A1 (en) Method of decoding a data word

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant