CN110943745A - Polarization code BP decoding method and system for early stopping iteration output result - Google Patents

Polarization code BP decoding method and system for early stopping iteration output result Download PDF

Info

Publication number
CN110943745A
CN110943745A CN201911204977.4A CN201911204977A CN110943745A CN 110943745 A CN110943745 A CN 110943745A CN 201911204977 A CN201911204977 A CN 201911204977A CN 110943745 A CN110943745 A CN 110943745A
Authority
CN
China
Prior art keywords
decoding
crc
information
check
matrix
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.)
Granted
Application number
CN201911204977.4A
Other languages
Chinese (zh)
Other versions
CN110943745B (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.)
Anhui Core Century Technology Co ltd
CETC 38 Research Institute
Original Assignee
Anhui Core Century Technology Co ltd
CETC 38 Research Institute
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 Anhui Core Century Technology Co ltd, CETC 38 Research Institute filed Critical Anhui Core Century Technology Co ltd
Priority to CN201911204977.4A priority Critical patent/CN110943745B/en
Publication of CN110943745A publication Critical patent/CN110943745A/en
Application granted granted Critical
Publication of CN110943745B publication Critical patent/CN110943745B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • H03M13/091Parallel or block-wise CRC computation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Error Detection And Correction (AREA)

Abstract

The invention provides a method and a system for decoding a polarization code BP (Back propagation) of a result of early termination iteration output, which comprise the following steps: s1, screening channels; s2, constructing an information block and carrying out coding transmission: the information block U comprises K-KCRCAn information bit; k is the information length of each polar code encoding module, KCRCThe number of the added CRC check bits; CRC check bits are added to the information bits before encoding, then K-KCRCAdding one information bit to KCRCThe CRC check bit enters a polar code encoder; s3, receiving the code word signal transmitted by the information block through coding and decoding: in the aspect of decoding, BP decoding is carried out on the received N code words; the decoding estimation value of the information block U can be obtained every time BP decoding iteration is carried out
Figure DDA0002296738580000011
For the obtained decoding estimated value
Figure DDA0002296738580000012
Carrying out GNMatrix check and CRC check: if the estimated information bits simultaneously satisfy GNIf the matrix check and the CRC check are carried out, the decoding can be stopped; otherwise, the next round of BP iteration will continue until G is satisfied at the same timeNAnd carrying out matrix check and CRC check or reaching the set maximum iteration number.

Description

Polarization code BP decoding method and system for early stopping iteration output result
Technical Field
The invention relates to the technical field of fading channel communication, in particular to a polarization code BP decoding method and a system for terminating iteration output results in advance.
Background
The polar code proposed by Arikan has been demonstrated to be a coding scheme that achieves channel capacity in arbitrary binary input discrete memoryless channels (B-DMCs), which is decoded using the Serial Cancellation (SC) algorithm, and has low coding and decoding complexity. SC algorithm decoding is a special example of Belief Propagation (BP) algorithm decoding. In general, BP decoding performance is better than SC decoding in additive white gaussian noise channel (AWGN) polar codes.
However, the existing early termination criterion (referred to as the G _ N matrix termination criterion) is not suitable for the environment of BP decoding in a fading channel, and the phenomenon of outputting wrong decoding due to early termination iteration occurs. Under the same conditions, the polar code BP decoding performance in a Fading channel (Fading channel) no longer has an advantage over the SC decoding performance. In addition, the conventional early termination method may have errors in a fading channel due to early termination of the iteration when the termination condition is satisfied. Therefore, how to provide a polar code BP decoding method for terminating an iterative output result in advance without increasing decoding complexity is a technical problem which needs to be solved urgently.
Disclosure of Invention
The invention aims to solve the defect that the belief propagation algorithm decoding performance of the polar code under a fading channel is not ideal in the prior art, and provides a polar code BP decoding method for terminating an iteration output result in advance to solve the problem. .
The invention solves the technical problems through the following technical means:
a polarization code BP decoding method for stopping iteration output results in advance comprises the following steps:
s1, screening channels: calculating a channel parameter matrix PeAccording to a channel parameter matrix PeScreening out an information bit channel and a frozen bit channel, putting the information bit channel into a set I, and putting the frozen bit channel into a set F;
s2, constructing an information block and carrying out coding transmission: the information block U comprises K-KCRCAn information bit; k is the information length of each polar code encoding module, KCRCThe number of the added CRC check bits; CRC check bits are added to the information bits before encoding, then K-KCRCAdding one information bit to KCRCThe CRC check bit enters a polar code encoder;
s3, receiving the code word signal transmitted by the information block through coding and decoding: in the aspect of decoding, BP decoding is carried out on the received N code words; the decoding estimation value of the information block U can be obtained every time BP decoding iteration is carried out
Figure BDA0002296738560000021
For the obtained decoding estimated value
Figure BDA0002296738560000022
Carrying out GNMatrix check and CRC check: if the estimated information bits simultaneously satisfy GNIf the matrix check and the CRC check are carried out, the decoding can be stopped; otherwise, it will continueThe next round of BP iteration until G is satisfied simultaneouslyNAnd carrying out matrix check and CRC check or reaching the set maximum iteration number.
Preferably, the step S1 specifically includes the following steps:
s11, aiming at all bit channels, obtaining a channel parameter matrix P containing error probability values of all split channels by using a construction methode
S12, according to the channel parameter matrix PeSelecting an information bit channel set I and a frozen bit channel set F, which specifically comprises the following steps:
s121, comparing channel parameter matrix P of bit channeleThe elements in the channel parameter matrix are sorted in ascending order according to the error probability of each split channel to obtain a sorted channel parameter matrix PtempAnd find PtempEach element in PeTo obtain an index matrix Pidx
S122, extracting the index matrix PidxThe first K elements in the code are sorted in ascending order and put into an information bit channel set I, wherein K is the information bit number of the polarization code; will PidxThe remaining elements are sorted in ascending order and placed into a frozen bit channel set F.
Preferably, the step S2 specifically includes the following steps:
s21, dividing the message bits input in sequence into a plurality of information frames, wherein each information frame comprises K information bits;
s22, in each information frame, the first K-K isCRCPutting information bits into an information block U;
s23, adding CRC check codes and transmitting: and adding a CRC check code at the tail end of the information bit according to the CRC polynomial to the information block U by adopting a CRC generator polynomial of the international standard for coding transmission.
Preferably, the step S3 specifically includes the following steps:
s31, for each information frame, the decoder receives the code word and the frozen bit set of the information block U
Figure BDA0002296738560000023
Generating a decoded estimate of U
Figure BDA0002296738560000024
S32、GNThe matrix check module receives the estimated value of decoding
Figure BDA0002296738560000025
And returning a check result, and analyzing by the decoder according to the check result;
s33, decoding the estimated value
Figure BDA0002296738560000031
G of (A)NIf the matrix check result is correct, the decoder continues to decode the estimated value
Figure BDA0002296738560000032
And (3) performing CRC check on the CRC module, and performing corresponding processing according to the check result, wherein the specific steps are as follows:
s331, receiving the decoding estimated value by the CRC check module
Figure BDA0002296738560000033
Returning a check result, and selecting the next operation again by the decoder according to the check result;
s332, if the CRC check result is correct, the decoder terminates iteration in advance, the decoding result of the information block is directly output, and the information frame decoding is finished;
s333, if the CRC result is wrong, the iterative decoding fails, and the information frame is iterated next time until G is satisfiedNMatrix checking and CRC checking or reaching a set maximum iteration number;
s334, if the estimated value is decoded
Figure BDA0002296738560000034
G of (A)NIf the matrix check result is wrong, the iterative decoding fails, and the information frame is iterated next time until G is satisfied simultaneouslyNAnd carrying out matrix check and CRC check or reaching the set maximum iteration number.
Preferably, the set maximum number of iterations is generally set to 70.
Preferably, the decoder is a BP decoder.
Based on the method, the invention also provides a polarization code BP decoding system for stopping iteration output results in advance, which comprises
A screening channel module: calculating a channel parameter matrix PeAccording to a channel parameter matrix PeScreening out an information bit channel and a frozen bit channel, putting the information bit channel into a set I, and putting the frozen bit channel into a set F;
the information quick construction module: the method is used for constructing information blocks and carrying out coding transmission, and specifically comprises the following steps: the information block U comprises K-KCRCAn information bit; k is the information length of each polar code encoding module, KCRCThe number of the added CRC check bits; CRC check bits are added to the information bits before encoding, then K-KCRCAdding one information bit to KCRCThe CRC check bit enters a polar code encoder;
a decoding module: the method is used for receiving and decoding a code word signal transmitted by an information block through coding, and specifically comprises the following steps: BP decoding is carried out on the received N code words; the decoding estimation value of the information block U can be obtained every time BP decoding iteration is carried out
Figure BDA0002296738560000035
For the obtained decoding estimated value
Figure BDA0002296738560000036
Carrying out GNMatrix check and CRC check: if the estimated information bits simultaneously satisfy GNIf the matrix check and the CRC check are carried out, the decoding can be stopped; otherwise, the next round of BP iteration will continue until G is satisfied at the same timeNAnd carrying out matrix check and CRC check or reaching the set maximum iteration number.
Preferably, the step of screening channels by the channel screening module specifically includes the following steps:
s11, obtaining the channel containing each split signal by using a construction method aiming at all bit channelsChannel parameter matrix P of channel error probability valuese
S12, according to the channel parameter matrix PeSelecting an information bit channel set I and a frozen bit channel set F, which specifically comprises the following steps:
s121, comparing channel parameter matrix P of bit channeleThe elements in the channel parameter matrix are sorted in ascending order according to the error probability of each split channel to obtain a sorted channel parameter matrix PtempAnd find PtempEach element in PeTo obtain an index matrix Pidx
S122, extracting the index matrix PidxThe first K elements in the code are sorted in ascending order and put into an information bit channel set I, wherein K is the information bit number of the polarization code; will PidxThe remaining elements are sorted in ascending order and placed into a frozen bit channel set F.
Preferably, the information fast constructing module specifically executes the following process:
s21, dividing the message bits input in sequence into a plurality of information frames, wherein each information frame comprises K information bits;
s22, in each information frame, the first K-K isCRCPutting information bits into an information block U;
s23, adding CRC check codes and transmitting: and adding a CRC check code at the tail end of the information bit according to the CRC polynomial to the information block U by adopting a CRC generator polynomial of the international standard for coding transmission.
Preferably, the decoding module specifically executes the following process:
s31, for each information frame, the decoder receives the code word and the frozen bit set of the information block U
Figure BDA0002296738560000041
Generating a decoded estimate of U
Figure BDA0002296738560000042
S32、GNThe matrix check module receives the estimated value of decoding
Figure BDA0002296738560000043
And returning a check result, and analyzing by the decoder according to the check result;
s33, decoding the estimated value
Figure BDA0002296738560000044
G of (A)NIf the matrix check result is correct, the decoder continues to decode the estimated value
Figure BDA0002296738560000045
And (3) performing CRC check on the CRC module, and performing corresponding processing according to the check result, wherein the specific steps are as follows:
s331, receiving the decoding estimated value by the CRC check module
Figure BDA0002296738560000046
Returning a check result, and selecting the next operation again by the decoder according to the check result;
s332, if the CRC check result is correct, the decoder terminates iteration in advance, the decoding result of the information block is directly output, and the information frame decoding is finished;
s333, if the CRC result is wrong, the iterative decoding fails, and the information frame is iterated next time until G is satisfiedNMatrix checking and CRC checking or reaching a set maximum iteration number;
s334, if the estimated value is decoded
Figure BDA0002296738560000051
G of (A)NIf the matrix check result is wrong, the iterative decoding fails, and the information frame is iterated next time until G is satisfied simultaneouslyNAnd carrying out matrix check and CRC check or reaching the set maximum iteration number.
The invention has the advantages that:
the invention relates to a polarization code belief propagation decoding algorithm method suitable for a termination iteration criterion in advance in a fading channel. The error code performance of the polar code BP decoding is improved, the decoding complexity is not increased, and the practicability of a polar code decoding algorithm is greatly improved.
The invention satisfies G simultaneously in the decoding iteration processNThe two check conditions of the matrix check and the CRC check are used for terminating iteration in advance so as to improve the decoding performance. In the encoding stage, each information block adds CRC check bits. In the decoding stage, estimated information bits occur
Figure BDA0002296738560000052
Satisfies GNAnd when the matrix is checked and CRC check is met, ending the decoding iteration process in advance and outputting the decoding. Errors due to premature termination do not occur in the proposed termination rule except for uncorrectable information blocks.
Unlike the conventional early termination method, errors due to early termination do not occur in the proposed termination method except for uncorrectable information blocks. May be abbreviated as GNmatrix-CRC termination criteria method.
The simulation results of the present invention show that G is usedNIn the matrix-CRC termination criterion method (the early termination iteration method described in the present invention), in a fading channel, the code length N is 256, the code rate R is 0.36, and the maximum number of iterations is 70, the error code performance of BP decoding is already better than SC decoding. In addition, it is noted that G is usedNBP decoding of the matrix-CRC termination criterion method improves decoding efficiency at the same time.
Drawings
FIG. 1 is a block flow diagram of a method in an embodiment of the invention;
FIG. 2 shows a diagram of G according to an embodiment of the present inventionNCoding a decoding system model diagram by a matrix-CRC termination criterion method;
FIG. 3 is a graph comparing the error performance of BP decoding and SC decoding with a maximum number of iterations of 30 in AWGN according to an embodiment of the present invention;
fig. 4 is a diagram illustrating comparison of the error code performance of BP decoding and SC decoding with a maximum number of iterations of 30 in a fading channel according to an embodiment of the present invention;
FIG. 5 shows an embodiment of the present invention employing G in a fading channelNmatrix-CRC termination criteriaThe error code performance comparison graph of BP decoding and other decoding modes is obtained;
FIG. 6 shows an embodiment of the present invention employing G in a fading channelNThe average iteration number graph when the matrix-CRC termination criterion method BP decodes;
FIG. 7 shows an embodiment of the present invention employing G in a fading channelNAn iteration condition analysis graph in the matrix termination criterion method BP decoding process;
FIG. 8 shows an embodiment of the present invention employing G in a fading channelNAnd (3) an iteration condition analysis diagram in BP decoding of the matrix-CRC termination criterion method.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the embodiments of the present invention, and it is obvious that the described embodiments are some embodiments of the present invention, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The invention first calculates the channel parameter P by the existing construction method, such as the Tal-Vardy algorithm or the Gaussian approximation methodeThen, selecting information bits and freezing bits according to the channel parameters; and then adding CRC check codes to the information frames. Based on BP decoder and GNMatrix and CRC checks (CRC-16 is used here, the polynomial of which is poly [10001000000100001 ]]) And respectively implementing different decoding strategies on the results, and finally outputting the decoding results.
As shown in fig. 1, the method for decoding a polarization code BP that terminates an iterative output result in advance according to the present invention includes the following steps:
in the first step, channels are screened.
The channel parameter P is calculated by means of known construction methods, such as the Tal-Vardy algorithm or the Gaussian approximation methodeAccording to a channel parameter matrix PeScreening out information bit channels and freezing bit channels, putting the information bit channels into a set I, and freezing the bit channelsThe tracks are placed in set F. The method comprises the following specific steps:
(1) aiming at all bit channels, a channel parameter matrix P containing error probability values of all split channels is obtained by utilizing the existing Tal-Vardy algorithm or Gaussian approximation methode
(2) According to the channel parameter matrix PeSelecting an information bit channel set I and a frozen bit channel set F, which specifically comprises the following steps:
A1) channel parameter matrix P for bit channeleCalling the sort function in matlab according to the existing mode to store PeThe elements in the list are sorted in ascending order according to the error probability of each split channel, and the function returns the sorted channel parameter matrix PtempAnd PtempEach element in PePosition index matrix P in (1)idx
A2) Fetching index matrix PidxThe first K elements (K is the number of information bits of the polar code, i.e. the number of information bits in a polar code encoded information block, KCRCFor the number of CRC check bits in each block) into a set I of information bit channels in ascending order, PidxThe remaining elements are sorted in ascending order and placed into a frozen bit channel set F.
In the second step, the information block is constructed and transmitted as shown in fig. 2.
Firstly, message bits input sequentially are divided into a plurality of information frames, and each information frame comprises K information bits.
Secondly, each information block U contains K-KCRCAn information bit, K being the length of each information block (number of information bits of the polar code), KCRCIs the number of CRC bits added.
And finally, adding a CRC (cyclic redundancy check) code to each information block, and carrying out coding transmission.
The specific steps of constructing the information block and performing coding transmission are as follows:
B1) the method comprises the steps of dividing sequentially input message bits into a plurality of information frames, wherein each information frame comprises K information bits.
B2) For each information frame, it is preceded by K-KCRCInformation ratioBits are placed in the information block U.
B3) And adding a CRC check code and transmitting. And (3) adopting a CRC generator polynomial of the international standard, and for the information block U, respectively adding CRC check codes at the tail ends of the information bits according to the CRC polynomial and then transmitting the information block U.
And thirdly, receiving the code word signal of the information block which is transmitted by coding and carrying out a decoding process. Receiving and decoding a code word signal transmitted by the information block through coding; decoding the estimated value
Figure BDA0002296738560000071
To GNMatrix check and CRC check module, pass GNReturning a check result by the matrix check and the CRC check; according to GNAnd selecting whether to perform a new decoding or not according to the check results returned by the matrix check and the CRC check.
The coded codeword signal is transmitted in a symmetric B-DMC channel W and observed at the receiving end. The receiving end collects the code words with the length of N each time. The decoder generates a decoded estimate for each information block U
Figure BDA0002296738560000072
Then sent to GNMatrix check and CRC check, G possibleNThe matrix check and CRC check results are:
case 1: gNThe matrix check is correct and the CRC check is correct.
Case 2: gNThe matrix check is correct and the CRC check is incorrect.
Case 3: gNThe matrix checks for errors.
For case 1, due to GNIf the matrix check is correct and the CRC check is correct, judging that the decoding result is correct, terminating iteration in advance and outputting a decoding; for case 2, GNThe matrix check is correct, but the CRC check is wrong, so the next round of BP iteration needs to be executed until G is satisfied at the same timeNMatrix checks and CRC checks or iterations to a maximum number of iterations. For case 3, due to GNIf the matrix check is wrong, CRC check is not needed, and the decoder directly performs the next round of BP iteration until the next round of BP iteration is performed simultaneouslySatisfies GNMatrix checks and CRC checks or iterations to a maximum number of iterations.
When a new round of coding occurs, its more detailed coding process is described as follows:
the specific steps of receiving the code word signal transmitted by the information block after coding and carrying out the decoding process are as follows:
(1) for each information frame, the decoder receives the code word of the coded transmission of the information block U and the frozen bit set
Figure BDA0002296738560000081
Generating a decoded estimate of U
Figure BDA0002296738560000082
(2)GNMatrix check and CRC check module reception
Figure BDA0002296738560000083
And returning a check result, and analyzing by the decoder according to the check result.
(3) If the estimated value is decoded
Figure BDA0002296738560000084
G of (A)NIf the matrix check result is correct, then performing CRC check, and performing corresponding processing according to the check result, specifically comprising the following steps:
C1) if the estimated value is decoded
Figure BDA0002296738560000085
If the CRC check result in (1) is correct, the decoder directly outputs the decoding result of the information block, and the decoding of the information frame is finished, which corresponds to the case 1 described above.
C2) If the estimated value is decoded
Figure BDA0002296738560000086
If the CRC result is wrong, the decoder directly executes a new round of BP decoding until G is satisfied simultaneouslyNThe matrix check and CRC check or iteration to the maximum number of iterations corresponds to case 2 above.
(4) If the estimated value is decoded
Figure BDA0002296738560000087
G of (A)NIf the matrix check result is wrong, the decoder directly executes a new round of BP decoding until G is satisfied simultaneouslyNThe matrix check and CRC check or iteration to the maximum number of iterations corresponds to case 3 above.
G described for the inventionNmatrix-CRC termination method, GNBoth the matrix check and the CRC check are used to detect whether the codeword is valid, which is equivalent to determining whether the estimated information bits are correct. This double valid criterion results in that no errors due to unreliable early termination occur except for uncorrectable information blocks.
As shown in fig. 3, fig. 3 is a graph comparing the error performance of BP decoding and SC decoding in AWGN, where the maximum number of iterations originally set to be 30, and K represents the number of information bits in one polar code encoded information block (K, K is N × R, and N is 256, R is 0.36, and K is 92, calculated according to the difference between the code length and the code rate), it can be found that the original BP decoding performance in AWGN is superior to SC decoding.
As shown in fig. 4, fig. 4 is a graph comparing the bit error performance of BP decoding and SC decoding originally set with the maximum iteration number of 30 in the fading channel, where K represents the number of information bits in one polar code encoded information block (K, K — N × R is calculated according to the difference between the code length and the code rate, and N — 256, R — 0.36, and K — 92 in the simulation of the present invention), it can be found that the original BP decoding performance in the fading channel no longer has better performance than SC decoding.
FIG. 5 shows the use of G in a fading channel according to the present inventionNThe error code performance comparison chart of the matrix-CRC termination criterion method BP decoding and other decoding modes. The simulation parameters are as follows: the number of information bits in a block of polar coded information is denoted by K (K, K-N R, calculated from the difference between code length and code rate; N-256 in the simulation of the invention, R-0.36, K-92), KCRCIndicating the CRC check bits in each blockThe CRC check bits are part of K information bits. Thus, each polar code information block has a K-KCRCNew information bits. And adding a CRC check code, then coding and transmitting in a fading channel. The decoding process is already given in the third step above. The K92 information bits contain a 16-bit CRC check code. As can be seen from FIG. 5, G is usedNBP decoding performance of the matrix-CRC termination criterion method is obviously superior to SC and GNThe BP decoding of the matrix termination criterion method is superior to BP decoding which only improves the decoding performance by increasing the maximum iteration number to 70.
FIG. 6 shows the use of G according to the inventionNComparing the average iteration times of the matrix-CRC termination criterion method with that of the CRC; the simulation parameters of fig. 6 are identical to those of fig. 5. As can be seen from FIG. 6, GNThe average iteration times of the matrix-CRC termination criterion method are greatly reduced, and the decoding efficiency is improved.
FIG. 7 shows the use of G in a fading channel according to the present inventionNAn iteration condition analysis graph in the matrix termination criterion method BP decoding process; the simulation parameters of fig. 7 are consistent with fig. 5. In the figure, black circles indicate each group of information blocks, and red crosses indicate information blocks with decoding errors. As can be seen from the figure, G is usedNThe matrix termination criterion method may occur in part because of early termination of the iteration, outputting erroneous decoding results.
FIG. 8 shows the use of G according to the inventionNA matrix-CRC termination criterion method iteration condition analysis graph; the simulation parameters of fig. 8 are consistent with fig. 5. As can be seen from the figure, G is usedNThe matrix-CRC termination criteria method has no error cases due to early termination of iterations, except for uncorrectable error blocks.
The above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (10)

1. A polarization code BP decoding method for stopping iteration output results in advance is characterized by comprising the following steps:
s1, screening channels: calculating a channel parameter matrix PeAccording to a channel parameter matrix PeScreening out an information bit channel and a frozen bit channel, putting the information bit channel into a set I, and putting the frozen bit channel into a set F;
s2, constructing an information block and carrying out coding transmission: the information block U comprises K-KCRCAn information bit; k is the information length of each polar code encoding module, KCRCThe number of the added CRC check bits; CRC check bits are added to the information bits before encoding, then K-KCRCAdding one information bit to KCRCThe CRC check bit enters a polar code encoder;
s3, receiving the code word signal transmitted by the information block through coding and decoding: in the aspect of decoding, BP decoding is carried out on the received N code words; the decoding estimation value of the information block U can be obtained every time BP decoding iteration is carried out
Figure FDA0002296738550000011
For the obtained decoding estimated value
Figure FDA0002296738550000012
Carrying out GNMatrix check and CRC check: if the estimated information bits simultaneously satisfy GNIf the matrix check and the CRC check are carried out, the decoding can be stopped; otherwise, the next round of BP iteration will continue until G is satisfied at the same timeNAnd carrying out matrix check and CRC check or reaching the set maximum iteration number.
2. The method as claimed in claim 1, wherein the step S1 specifically includes the following steps:
s11, aiming at allBit channel, obtaining channel parameter matrix P containing error probability value of each split channel by using construction methode
S12, according to the channel parameter matrix PeSelecting an information bit channel set I and a frozen bit channel set F, which specifically comprises the following steps:
s121, comparing channel parameter matrix P of bit channeleThe elements in the channel parameter matrix are sorted in ascending order according to the error probability of each split channel to obtain a sorted channel parameter matrix PtempAnd find PtempEach element in PeTo obtain an index matrix Pidx
S122, extracting the index matrix PidxThe first K elements in the code are sorted in ascending order and put into an information bit channel set I, wherein K is the information bit number of the polarization code; will PidxThe remaining elements are sorted in ascending order and placed into a frozen bit channel set F.
3. The method as claimed in claim 1, wherein the step S2 specifically includes the following steps:
s21, dividing the message bits input in sequence into a plurality of information frames, wherein each information frame comprises K information bits;
s22, in each information frame, the first K-K isCRCPutting information bits into an information block U;
s23, adding CRC check codes and transmitting: and adding a CRC check code at the tail end of the information bit according to the CRC polynomial to the information block U by adopting a CRC generator polynomial of the international standard for coding transmission.
4. The method as claimed in claim 1, wherein the step S3 specifically includes the following steps:
s31, for each information frame, the decoder receives the code word and the frozen bit set of the information block U
Figure FDA0002296738550000021
Generating a decoded estimate of U
Figure FDA0002296738550000022
S32、GNThe matrix check module receives the estimated value of decoding
Figure FDA0002296738550000023
And returning a check result, and analyzing by the decoder according to the check result;
s33, decoding the estimated value
Figure FDA0002296738550000024
G of (A)NIf the matrix check result is correct, the decoder continues to decode the estimated value
Figure FDA0002296738550000025
And (3) performing CRC check on the CRC module, and performing corresponding processing according to the check result, wherein the specific steps are as follows:
s331, receiving the decoding estimated value by the CRC check module
Figure FDA0002296738550000026
Returning a check result, and selecting the next operation again by the decoder according to the check result;
s332, if the CRC check result is correct, the decoder terminates iteration in advance, the decoding result of the information block is directly output, and the information frame decoding is finished;
s333, if the CRC result is wrong, the iterative decoding fails, and the information frame is iterated next time until G is satisfiedNMatrix checking and CRC checking or reaching a set maximum iteration number;
s334, if the estimated value is decoded
Figure FDA0002296738550000027
G of (A)NIf the matrix check result is wrong, the iterative decoding fails, and the information frame is processed for the next timeIterate until G is satisfied at the same timeNAnd carrying out matrix check and CRC check or reaching the set maximum iteration number.
5. The BP decoding method according to claim 4, wherein the maximum number of iterations is set to 70.
6. The BP decoding method according to claim 4, wherein the decoder is a BP decoder.
7. A polarization code BP decoding system for stopping iteration output results in advance is characterized in that: comprises that
A screening channel module: calculating a channel parameter matrix PeAccording to a channel parameter matrix PeScreening out an information bit channel and a frozen bit channel, putting the information bit channel into a set I, and putting the frozen bit channel into a set F;
the information quick construction module: the method is used for constructing information blocks and carrying out coding transmission, and specifically comprises the following steps: the information block U comprises K-KCRCAn information bit; k is the information length of each polar code encoding module, KCRCThe number of the added CRC check bits; CRC check bits are added to the information bits before encoding, then K-KCRCAdding one information bit to KCRCThe CRC check bit enters a polar code encoder;
a decoding module: the method is used for receiving and decoding a code word signal transmitted by an information block through coding, and specifically comprises the following steps: BP decoding is carried out on the received N code words; the decoding estimation value of the information block U can be obtained every time BP decoding iteration is carried out
Figure FDA0002296738550000031
For the obtained decoding estimated value
Figure FDA0002296738550000032
Carrying out GNMatrix check and CRC check:if the estimated information bits simultaneously satisfy GNIf the matrix check and the CRC check are carried out, the decoding can be stopped; otherwise, the next round of BP iteration will continue until G is satisfied at the same timeNAnd carrying out matrix check and CRC check or reaching the set maximum iteration number.
8. The BP decoding system according to claim 7, wherein the BP decoding system comprises: the channel screening module for screening channels specifically comprises the following steps:
s11, aiming at all bit channels, obtaining a channel parameter matrix P containing error probability values of all split channels by using a construction methode
S12, according to the channel parameter matrix PeSelecting an information bit channel set I and a frozen bit channel set F, which specifically comprises the following steps:
s121, comparing channel parameter matrix P of bit channeleThe elements in the channel parameter matrix are sorted in ascending order according to the error probability of each split channel to obtain a sorted channel parameter matrix PtempAnd find PtempEach element in PeTo obtain an index matrix Pidx
S122, extracting the index matrix PidxThe first K elements in the code are sorted in ascending order and put into an information bit channel set I, wherein K is the information bit number of the polarization code; will PidxThe remaining elements are sorted in ascending order and placed into a frozen bit channel set F.
9. The BP decoding system according to claim 7, wherein the information block constructing module specifically executes the following process:
s21, dividing the message bits input in sequence into a plurality of information frames, wherein each information frame comprises K information bits;
s22, in each information frame, the first K-K isCRCPutting information bits into an information block U;
s23, adding CRC check codes and transmitting: and adding a CRC check code at the tail end of the information bit according to the CRC polynomial to the information block U by adopting a CRC generator polynomial of the international standard for coding transmission.
10. The method of claim 7, wherein the decoding module performs the following steps:
s31, for each information frame, the decoder receives the code word and the frozen bit set of the information block U
Figure FDA0002296738550000041
Generating a decoded estimate of U
Figure FDA0002296738550000042
S32、GNThe matrix check module receives the estimated value of decoding
Figure FDA0002296738550000043
And returning a check result, and analyzing by the decoder according to the check result;
s33, decoding the estimated value
Figure FDA0002296738550000044
G of (A)NIf the matrix check result is correct, the decoder continues to decode the estimated value
Figure FDA0002296738550000045
And (3) performing CRC check on the CRC module, and performing corresponding processing according to the check result, wherein the specific steps are as follows:
s331, receiving the decoding estimated value by the CRC check module
Figure FDA0002296738550000046
Returning a check result, and selecting the next operation again by the decoder according to the check result;
s332, if the CRC check result is correct, the decoder terminates iteration in advance, the decoding result of the information block is directly output, and the information frame decoding is finished;
s333, if the CRC result is wrong, the iterative decoding fails, and the information frame is iterated next time until G is satisfiedNMatrix checking and CRC checking or reaching a set maximum iteration number;
s334, if the estimated value is decoded
Figure FDA0002296738550000047
G of (A)NIf the matrix check result is wrong, the iterative decoding fails, and the information frame is iterated next time until G is satisfied simultaneouslyNAnd carrying out matrix check and CRC check or reaching the set maximum iteration number.
CN201911204977.4A 2019-11-29 2019-11-29 Polarization code BP decoding method and system for early terminating iterative output result Active CN110943745B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911204977.4A CN110943745B (en) 2019-11-29 2019-11-29 Polarization code BP decoding method and system for early terminating iterative output result

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911204977.4A CN110943745B (en) 2019-11-29 2019-11-29 Polarization code BP decoding method and system for early terminating iterative output result

Publications (2)

Publication Number Publication Date
CN110943745A true CN110943745A (en) 2020-03-31
CN110943745B CN110943745B (en) 2023-03-14

Family

ID=69908770

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911204977.4A Active CN110943745B (en) 2019-11-29 2019-11-29 Polarization code BP decoding method and system for early terminating iterative output result

Country Status (1)

Country Link
CN (1) CN110943745B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726202A (en) * 2020-06-16 2020-09-29 杭州电子科技大学 Early termination iteration method for polarization code belief propagation decoding
CN112202454A (en) * 2020-10-14 2021-01-08 重庆邮电大学 Low-complexity selective mapping method using cyclic redundancy check

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050229087A1 (en) * 2004-04-13 2005-10-13 Sunghwan Kim Decoding apparatus for low-density parity-check codes using sequential decoding, and method thereof
CN104539296A (en) * 2015-01-21 2015-04-22 西安电子科技大学 Method for improving BP (belief propagation) decoding by use of polarisation code based on early termination of iterative strategy
CN105262494A (en) * 2015-10-13 2016-01-20 东南大学 Polar code BP decoding method with iterative early-stopping mechanism
US20170257186A1 (en) * 2016-03-04 2017-09-07 Huawei Technologies Co., Ltd. System and method for polar encoding and decoding
CN107659318A (en) * 2017-11-07 2018-02-02 东南大学 A kind of adaptive polarization code coding method
CN108039891A (en) * 2017-12-22 2018-05-15 山东科技大学 A kind of polarization code BP interpretation methods and device based on multistage more new technological process
WO2018179246A1 (en) * 2017-03-30 2018-10-04 Nec Corporation Check bit concatenated polar codes
CN108847848A (en) * 2018-06-13 2018-11-20 电子科技大学 A kind of BP decoding algorithm of the polarization code based on information post-processing
CN109257148A (en) * 2018-11-26 2019-01-22 北京理工大学 A kind of polarization code BP interpretation method based on Gaussian approximation threshold decision
CN109586730A (en) * 2018-12-06 2019-04-05 电子科技大学 It is a kind of based on the polarization code BP decoding algorithm intelligently post-processed
CN109905202A (en) * 2019-03-21 2019-06-18 安徽大学 A kind of polarization code coding/decoding method for correcting function with block of information decoding error

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050229087A1 (en) * 2004-04-13 2005-10-13 Sunghwan Kim Decoding apparatus for low-density parity-check codes using sequential decoding, and method thereof
CN104539296A (en) * 2015-01-21 2015-04-22 西安电子科技大学 Method for improving BP (belief propagation) decoding by use of polarisation code based on early termination of iterative strategy
CN105262494A (en) * 2015-10-13 2016-01-20 东南大学 Polar code BP decoding method with iterative early-stopping mechanism
US20170257186A1 (en) * 2016-03-04 2017-09-07 Huawei Technologies Co., Ltd. System and method for polar encoding and decoding
WO2018179246A1 (en) * 2017-03-30 2018-10-04 Nec Corporation Check bit concatenated polar codes
CN107659318A (en) * 2017-11-07 2018-02-02 东南大学 A kind of adaptive polarization code coding method
CN108039891A (en) * 2017-12-22 2018-05-15 山东科技大学 A kind of polarization code BP interpretation methods and device based on multistage more new technological process
CN108847848A (en) * 2018-06-13 2018-11-20 电子科技大学 A kind of BP decoding algorithm of the polarization code based on information post-processing
CN109257148A (en) * 2018-11-26 2019-01-22 北京理工大学 A kind of polarization code BP interpretation method based on Gaussian approximation threshold decision
CN109586730A (en) * 2018-12-06 2019-04-05 电子科技大学 It is a kind of based on the polarization code BP decoding algorithm intelligently post-processed
CN109905202A (en) * 2019-03-21 2019-06-18 安徽大学 A kind of polarization code coding/decoding method for correcting function with block of information decoding error

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BO YUAN等: ""Architectures for polar BP decoders using folding"", 《2014 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS (ISCAS)》 *
刘斌等: ""一种改进的基于深度前馈神经网络的极化码BP译码算法"", 《移动通信》 *
邢超等: ""极化码置信传播算法早期终止准则的研究"", 《信号处理》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726202A (en) * 2020-06-16 2020-09-29 杭州电子科技大学 Early termination iteration method for polarization code belief propagation decoding
CN111726202B (en) * 2020-06-16 2022-05-31 杭州电子科技大学 Early termination iteration method for polarization code belief propagation decoding
CN112202454A (en) * 2020-10-14 2021-01-08 重庆邮电大学 Low-complexity selective mapping method using cyclic redundancy check
CN112202454B (en) * 2020-10-14 2021-10-01 重庆邮电大学 Low-complexity selective mapping method using cyclic redundancy check

Also Published As

Publication number Publication date
CN110943745B (en) 2023-03-14

Similar Documents

Publication Publication Date Title
CN109660264B (en) High performance polar code decoding algorithm
US5910182A (en) Data communications systems and methods using interspersed error detection bits
CN113491080B (en) Multimode channel coding
EP1662742A2 (en) Data transmitting method, data transmitting system transmitter, and receiver
JP4777876B2 (en) Early termination of turbo decoder iterations
US11088780B2 (en) Low complexity blind detection of code rate
CN109905202B (en) Polarization code coding and decoding method with information block decoding error correction function
JPH10178355A (en) Continuous code error correcting decoder and its method
US7480852B2 (en) Method and system for improving decoding efficiency in wireless receivers
CN110943745B (en) Polarization code BP decoding method and system for early terminating iterative output result
CN114285418A (en) Improved decoding method for polarization code EPC-MS-SCL
US7716554B2 (en) System and method for blind transport format detection with cyclic redundancy check
JP4758765B2 (en) Transport format detection apparatus and transport format detection method
Yu et al. Hybrid Parity-Check and CRC Aided SCL decoding for polar codes
CN115473537A (en) Improved ES-SCL decoding method in polarization code
CN101425869B (en) Decoding method and apparatus
US7644346B2 (en) Format detection
JPH06334697A (en) Error detection method
Kim et al. A new list decoding algorithm for short-length TBCCs with CRC
CN113556135B (en) Polarization code belief propagation bit overturn decoding method based on frozen overturn list
EP1008237A2 (en) Transmission system having a simplified channel decoder
US7975212B2 (en) Sequential decoding method and apparatus thereof
WO1995001008A1 (en) Bit error counting method and counter
CN110798284A (en) Polarization code transmission method based on double BP decoding graph parallel decoding technology
US6742158B2 (en) Low complexity convolutional decoder

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