A BPL decoding algorithm based on CRC-LDPC-Polar cascade system

The BPL decoding algorithm for CRC-LDPC-Polar cascade systems addresses the complexity-performance trade-off by using CRC checks and factor graph selection to enhance error performance and reduce decoding complexity.

CN114785357BActive Publication Date: 2025-01-03BEIJING URBAN CONSTR INTELLIGENT CONTROL TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202210352308.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-05
Publication Date
2025-01-03
Estimated Expiration
2042-04-05

AI Technical Summary

Technical Problem

Existing BPL decoding algorithms for CRC-LDPC-Polar cascade systems face a trade-off between error performance and decoding complexity, particularly when the list size is small, necessitating increased complexity for improved performance.

Method used

Implementing a BPL decoding algorithm that utilizes CRC check and inverse coding codeword checks as early stopping criteria, combined with a new factor graph selection method, to reduce decoding complexity while maintaining or improving error performance.

Benefits of technology

The proposed algorithm achieves better bit error rate performance with reduced decoding complexity by employing early stopping criteria and optimized factor graph selection, particularly when the list size is small.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114785357B_ABST
    Figure CN114785357B_ABST
Patent Text Reader

Abstract

The present invention provides a BPL decoding algorithm for a CRC-LDPC-Polar cascade system. In the cascade system, a cyclic redundancy check and an inverse-coded codeword check of a polarization code generation matrix are used as early stopping criteria, and a BP decoding algorithm is first used. If the check fails, a BPL decoding algorithm is then used, and the decoding complexity of the BPL decoding algorithm in the cascade code is reduced by reducing the number of iterations of the cascade code decoding algorithm. In addition, a new factor graph selection method is proposed for the BPL decoding algorithm of the polarization code. The factor graph selection method uses the mean of the polarization channel log-likelihood ratio in the polarization code Gaussian approximation construction method to select L decoding factor graphs of the BPL decoding algorithm, so that the BPL decoding algorithm of the cascade system can also have better error performance when the list size L is small.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a channel coding technology, in particular to a BPL decoding algorithm of a polar code, and specifically to a BPL decoding algorithm of a CRC-LDPC-Polar cascade system. Background Art

[0002] Polar code was proposed by Arikan and is the first channel coding scheme that theoretically reaches the Shannon limit in a binary input discrete memoryless symmetric channel (BI-DMSC). Two well-known decoding algorithms are the Successive Cancellation (SC) and Belief Propagation (BP) decoding algorithms. The BP decoding algorithm is an iterative parallel decoding algorithm. Its parallel characteristics make it suitable for low-latency and high-throughput systems, but its error performance is far behind that of the SCL decoding algorithm.

[0003] At present, the improvement of the polar code BP decoding algorithm is proposed in the literature [1] for the first time. The BPL (Belief Propagation List) decoding algorithm (Elkelesh A, Ebada M, Cammerer S, et al. Belief propagation list decoding of polar codes [J]. IEEE Communications Letters, 2018, 22 (8): 1536-1539.) effectively improves the error performance of the BP decoding algorithm. The factor graph selection method is randomly selected. Different factor graph representations of polar codes are as follows: Figure 1 As shown, for example, the polar code with code length N = 8 has log2 8 = 6 different factor graphs, Figure 1 Reference [2] (Doan N, Hashemi SA, Mondelli M, et al. On the decoding of polar codes on permuted factor graphs [C] / / 2018 IEEE Global Communications Conference (GLOBECOM). IEEE, 2018: 1-6.) proposed a codeword mapping method that allows the BPL decoder to only change the codeword sequence without designing a different BP decoder, making the hardware and software implementation of the BPL decoding algorithm simpler. The corresponding relationship between the codeword sequence and the polar code factor graph is as follows: Figure 2 As shown, Figure 2 The factor graph on the left can be represented by the factor graph on the right. The structure of the factor graph on the right is the same as the original factor graph, except that the order of the input codeword sequence is different, which makes the hardware and software implementation of different factor graphs simpler. In addition, in the literature [3] (Zhou Shenyang, Bai Baoming, Ren Zhaofeng, Zhu Min, Li Binghao, Tang Ruibo. Cascaded polar code BP List decoding algorithm for high throughput transmission [J]. Journal of Xidian University, 2020, 47(06): 58-65.), a method of applying the BPL decoding algorithm to the LDPC-Polar cascade system is proposed. The large number decision criterion is used to output the decoded codeword in the optimal path selection, which effectively improves the error performance of the polar code BP decoding algorithm.

[0004] However, under the same list size, there is still some gap between the error performance of BPL decoding algorithm and CA-SCL decoding. In order to achieve better error performance, the list size of BPL needs to be larger, which means an increase in complexity. Therefore, the purpose of the present invention is to propose a BPL decoding algorithm based on CRC-LDPC-Polar cascade system, which can have lower decoding complexity and better error performance when the list size is small. Summary of the invention

[0005] The main purpose of the present invention is to improve the bit error rate performance of the CRC-LDPC-Polar cascade system and reduce the decoding complexity of the system. In the cascade system, the CRC check and the inverse coding codeword check of the polar code generation matrix are used as early stopping criteria, and BP decoding is first performed on the most original factor graph. This is because the probability of successful decoding of the original factor graph in the cascade code is already very high. If the decoding is successful, BPL decoding can be stopped directly. If the decoding fails, BPL decoding is performed again to reduce the decoding complexity of the BPL decoding algorithm in the cascade system. A new factor graph selection method is proposed, so that the BPL decoding algorithm of the polar code in the cascade system can also have better bit error performance when L is small.

[0006] The technical solution of the present invention is as follows:

[0007] Step 1: First, the polar code is constructed by Gaussian approximation to obtain information bits and frozen bits, and the factor graph selection method proposed in the present invention is used to obtain L decoding factor graphs.

[0008] Step 2: The decoding process of the CRC-LDPC-Polar cascade system proposed by the present invention is as follows Figure 3 When encoding, the LDPC encoding result is first used as the encoding input of the polar code intermediate channel. The cascade structure of LDPC and polar code is as follows: Figure 4As shown, the variable node of the LDPC code on the left is connected to the middle channel of the polar code. Then the CRC check bits are selected from the remaining information bits and the remaining information bits are encoded, and the frozen bits are fixed code words.

[0009] Step 3: Use the BP decoding method to jointly iteratively decode the polarization code and LDPC. First, perform BP decoding of the inner code polarization code on the most original factor graph. The BP decoding process of the cascade system is that when half a round of iterative decoding is completed, the soft information is transmitted to the variable node of the LDPC code through the intermediate channel. Then the LDPC code is BP decoded and the information is transmitted back to the intermediate channel of the polarization code. Then the polarization code completes the remaining half round of decoding. This process is a round of iterative decoding of the cascade system. When a round of decoding is completed, the hard decision value of the sum of the left and right transmission information of each round of the polarization code source end is verified by CRC and the inverse code word check of the polarization code generation matrix. If both verification conditions are passed at the same time, go to step 4. If the verification fails and the maximum number of iterations is not reached, continue iterative decoding. If the maximum number of iterations is reached, go to step 5.

[0010] Step 4: The hard decision value of the sum of the left- and right-transmitted information of the polar code source is used as the output result of the final decoding, and the decoding is terminated.

[0011] Step 5: At this time, the decoding of the most original decoding factor graph fails, and the remaining L-1 factor graphs are decoded using the BPL decoding algorithm. When the hard decision value of the sum of the left and right transmission information of the polar code source end generated during the iteration of any of the factor graphs passes the check, the hard decision value of the sum of the left and right transmission information of the polar code source end is used as the final decoding result, and the decoding is terminated. If none of them are satisfied and the maximum number of iterations is reached, the decoding fails.

[0012] The steps for selecting L factor graphs are as follows:

[0013] Step 1: Obtain the information bits and frozen bits of the polar code through the Gaussian approximation construction method, and obtain the LLR mean E[L(u i )], the index set of the channel where the information bit of the polar code is located is A={i1,i2,...,i K}.

[0014] Step 2: Obtain the permutation combination of each factor graph under the polar code length by the permutation method, and obtain the index set π(A)={j1,j2,...,j K}.

[0015] Step 3: According to the formula Calculate the sum of the means of the channel sets where the information bits of each factor graph are located to obtain the means of each permutation set The first L factor graph sets with the largest mean are obtained by sorting.

[0016] The factor graph selection method does not require a large number of simulations. The BPL decoding algorithm using the factor graph selection method can have better error performance when the list size is small, so the factor graph selection method is more suitable for use in cascade codes. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to make the purpose, technical solution and beneficial effects of the present invention clearer, the present invention provides the following drawings for illustration:

[0018] Figure 1 It is a part of the permutation factor graph of the BPL decoding algorithm when the polar code length N=8.

[0019] Figure 2 The corresponding relationship diagram between the permutation factor graph and the codeword sequence proposed in reference [2] when the code length N=8 for the polar code.

[0020] Figure 3 This is a schematic diagram of the sequential BPL decoding process of the CRC-LDPC-Polar cascade system proposed in the present invention.

[0021] Figure 4 This is the factor graph structure diagram of the LDPC-Polar cascade system.

[0022] Figure 5 The following is a simulation diagram comparing the error performance of the cascade system using the algorithm of the present invention, the CA-SCL decoding algorithm and the reference [3] when the polar code length is 256 and the outer code LDPC code length is 64.

[0023] Figure 6 The figure is a comparison chart of the number of iterations of the algorithm of the present invention, the BP decoding algorithm and the reference [3] when the polar code length is 256 and the outer code LDPC code length is 64 in the cascade system. Specific implementation plan

[0024] The technical solutions in the embodiments of the present invention will be described clearly and completely below in conjunction with the accompanying drawings in the embodiments of the present invention.

[0025] The following is a specific implementation step of a BPL decoding algorithm based on a CRC-LDPC-Polar cascade system. Taking a CRC-LDPC-Polar cascade code with a polar code length N=256, an LDPC code length N=64, a CRC length of 8, and a cascade code rate of 0.5 and a BPL decoding algorithm used by the CRC-LDPC-Polar cascade code as an example, the specific implementation scheme of the present invention is described.

[0026] Step 1: First, construct the LDPC code. Use the PEG construction method to construct a (3,6) regular LDPC code with a code length of 64 and 32 information bits. Then construct the polarization code with a code length of N = 256. Polarize the channel. When the number of combined channels tends to infinity, some channels tend to be noiseless channels, and other channels tend to be full-noise channels. The transmission rate of the noiseless channel will reach the channel capacity I (W), and the transmission rate of the full-noise channel tends to 0. Using this feature, the channels are sorted from small to large according to the reliability to obtain the set v = {v0,...,v 255}, the set is divided into three parts: K = 168 for transmitting information bits, and NK = 88 frozen bits for transmitting fixed bits. i ={v0,...,v 63} as the information bit connected to the outer code LDPC code, that is, the intermediate channel, and the v in the information bit C = {v 248 ,...,v 255} as the CRC check bit, that is, the length of the CRC check bit is 8.

[0027] Step 2: Encode the outer code LDPC code, the information bit length is 32 bits, and the generated codeword length is 64 bits. The 64-bit codeword is used as the encoding codeword of the intermediate channel part of the polar code, and the encoding codeword of the polar code is used to generate a CRC check bit through a CRC generation formula, and the polar code is encoded with the codeword to be encoded.

[0028] Step 3: Perform BPSK modulation on the 256 encoded code words, convert the 0 and 1 code words into 1 and -1, and transmit them through the AWGN channel.

[0029] Step 4: Generate n! permutation factor graphs of polar codes, where N = 2 n is the polar code length. A polar code with a code length of 256 has 40320 different permutation factor graphs.

[0030] Step 5: Because the original information bit is located in a different channel in each factor permutation graph, the formula Calculate the sum of the channel LLR means of the original information bit in each permutation factor graph.

[0031] Step 6: Select the first L factor graphs with the largest sum of LLR means as the L decoding factor graphs of the BPL decoding algorithm, where L=4, and the index set of the factor graphs selected here is {1, 39601, 30241, 35281}.

[0032] Step 7: At the decoding end, the channel reception value is first decoded on the most original factor graph. In the first round of iteration, when the inner code polarization code receives 256 channel information, the information is first transmitted from the rightmost side of the factor graph to the left according to the calculation rules of the operation unit. When reaching the leftmost side of the factor graph, the variable node of the LDPC outer code connected to the middle channel receives the soft information transmitted from the inner code polarization code, and the LDPC code performs an iterative decoding. Then the soft information is transmitted to the leftmost side of the inner code polarization code factor graph and decoded from left to right. When reaching the rightmost side of the factor graph, a round of iterative decoding of the cascade system is completed. In each round of iteration, the hard decision value of the sum of the left and right transmission information of the polarization code source end of this iterative decoding is judged whether it passes the CRC check and the inverse code word check of the polarization code generation matrix. If it passes the check, the result is directly used as the final decoding output. If it does not pass, iterative decoding continues. After reaching the maximum number of iterations of 50 times, if it has not passed the check, proceed to the next step.

[0033] Step 8: Perform BP decoding on the remaining three decoding factor graphs simultaneously. During the iterative decoding process, as long as the hard decision output of any factor graph meets the verification condition, the output is used as the decoding result and the decoding is terminated. Otherwise, the iterative decoding continues until the maximum number of iterations is reached.

[0034] Figure 5 The error performance comparison between the proposed method, the cascade system of reference [3] and the CA-SCL decoding algorithm is demonstrated. Figure 5 The polar code length N=256, K=128+32+8, the outer code uses a (3,6) rule LDPC code with a code length of 64 and 32 information bits, and the CRC length is 8. The simulation results show that when the polar code length is 256, the cascade system proposed in the present invention and the method of reference [3] have very similar bit error rate performance, and the system has some performance gain compared with CA-SCL (L=8) when BPL (L=4).

[0035] Figure 6 The method proposed in this paper is compared with the number of iterations of the cascade system and BP decoding algorithm in reference [3]. Figure 6The polar code length N=256, K=128+32+8. The outer code adopts the (3,6) rule LDPC code with a code length of 64 and 32 information bits, and the CRC length is 8. As can be seen from the figure, because the traditional BPL decoding algorithm requires L factor graphs to be decoded simultaneously, the average number of iterations in the document [3] is large, which will lead to high decoding complexity of the cascade system. The cascade system proposed in the present invention not only adopts the early stopping criterion, but also proposes a BPL decoding algorithm based on CRC-LDPC-Polar cascade code, so the number of iterations can be effectively reduced when the decoding success rate of the original factor graph is very high under the cascade system.

Claims

1. The BPL decoding algorithm based on CRC-LDPC-Polar code is characterized by: In the cascade system, CRC check and the inverse codeword check of the polar code generation matrix are used as the early stopping criterion. BP decoding is performed first. If the decoding fails, BPL decoding is performed. The specific implementation is as follows: Step 1: The mean of the log-likelihood ratio of each channel is obtained by the Gaussian approximation construction method, thereby selecting L decoding factor graphs of the BPL decoding algorithm, so that the BPL decoding algorithm of the cascade system can also have a good bit error rate performance when L is small; wherein, the specific steps of the method for selecting the factor graph set are as follows: Step 1.1: Calculate the mean LLR of each channel by Gaussian approximation construction method of polar code, that is, E[L(u i )], the index set A of the channel where the information bit is located is obtained by the polar code construction method of the encoding end = {i1,i2,...,i K }, where K represents the number of information bits of useful information transmitted; Step 1.2: Obtain the permutation combination of each factor graph under the polar code length by the permutation method, and obtain the index set π(A)={j1,j2,...,j K }; Step 1.3: Follow the formula Calculate the mean sum of the channels where the information bits of each factor graph are located, and obtain the mean sum of the information bits of each permutation set. Step 1.4: Sort them from large to small, and use the first L permutation factor graphs with the largest sum of means as the factor graphs of the BPL decoding algorithm; Step 2: Perform BP decoding on the most original factor graph, which is also one of the L factor graphs. The cascade system adopts LDPC-Polar joint iterative decoding. When the polar code completes half-round iterative decoding, the soft information is transmitted to the variable node of the LDPC code through the intermediate channel. The LDPC code is BP decoded and the information is transmitted back to the intermediate channel of the polar code. Then the polar code completes the remaining half-round decoding. This process is one round of iterative decoding of the cascade system. In each round of iteration, the hard decision value of the sum of the left and right transmission information of the polar code source end is CRC checked and the inverse code word check of the polar code generation matrix is ​​performed. If the check condition is passed, the iteration is terminated directly and the decoding result is output. If it is not passed, the iterative decoding continues. Step 3: When the number of iterations reaches the set maximum number of iterations, if it still cannot pass the check condition, the remaining L-1 factor graph sets are jointly iteratively decoded at the same time; when the hard decision of the LLR of any decoder passes the check condition, the iteration is terminated, and the decoding output of the factor graph that passes the check condition is used as the final decoding result, otherwise the iterative decoding continues.