CN102164025B - Coder based on repeated coding and channel polarization and coding/decoding method thereof - Google Patents
Coder based on repeated coding and channel polarization and coding/decoding method thereof Download PDFInfo
- Publication number
- CN102164025B CN102164025B CN 201110095258 CN201110095258A CN102164025B CN 102164025 B CN102164025 B CN 102164025B CN 201110095258 CN201110095258 CN 201110095258 CN 201110095258 A CN201110095258 A CN 201110095258A CN 102164025 B CN102164025 B CN 102164025B
- Authority
- CN
- China
- Prior art keywords
- repeated
- channel
- coding
- sequence
- bit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000010287 polarization Effects 0.000 title claims abstract description 141
- 238000000034 method Methods 0.000 title claims abstract description 84
- 230000008569 process Effects 0.000 claims abstract description 32
- 230000005540 biological transmission Effects 0.000 claims abstract description 13
- 108010076504 Protein Sorting Signals Proteins 0.000 claims description 55
- 230000003252 repetitive effect Effects 0.000 claims description 12
- 230000009977 dual effect Effects 0.000 claims description 9
- 230000007704 transition Effects 0.000 claims description 9
- 238000010276 construction Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 2
- 230000006854 communication Effects 0.000 abstract description 7
- 238000004891 communication Methods 0.000 abstract description 6
- 238000012937 correction Methods 0.000 abstract description 3
- 238000010295 mobile communication Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 9
- 238000013507 mapping Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 241000169170 Boreogadus saida Species 0.000 description 1
- 108091026890 Coding region Proteins 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002336 repolarization Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
The invention discloses a coder based on repeated coding and channel polarization and a coding/decoding method thereof. The coder comprises two coding modules with the same structure; each coding module is provided with a repeated coder group, a bit position mapper with the length of N and a channel polarization device with the length of N, wherein the repeated coder group has m*L output ports and is composed of L sequentially-arranged repeated coders with the repeating times of m; and the two coding modules are connected together through a coding mode selector between the repeated coder and the bit position mapper. The invention provides a concrete method of embedding repeated codes in the channel polarization process to perform channel coding and decoding based on the coder; and compared with the polarization code of the limited length in the prior art, the coding/decoding method disclosed by the invention has stronger error correction capability and obviously improves the transmission performance on the premise of rarely increasing the decoding complexity, is particularly suitable for the practical engineering systems of mobile communication, satellite communication, underwater communication and the like, and has good popularization and application prospects.
Description
Technical Field
The invention relates to an encoder based on repeated coding and channel polarization and a coding and decoding method thereof, which are used for solving the problem that transmission data is wrong due to the interference of a channel on a communication process in a digital communication system and belong to the technical field of channel coding of digital communication.
Background
Polarization Codes (Polar Codes) were E. Ar in 20091kan proposes a constructive coding method that has been strictly proven to achieve channel capacity. Before polarization encoding, N =2 needs to be encoded firstnAn independent binary input channel (or N consecutive uses of the same channel, i.e., N available time slots of a channel), where N is a natural number, is repeatedly polarized using the basic unit of channel polarization shown in fig. 1. The most basic channel polarization is for two identical unpolarized channels W: x → Y performs a single step polarization operation, where X is the set of channel input symbols(for a binary input channel, X takes the value {0,1 }), and Y is the set of channel output symbols. The input bits marking the polarization channel are respectively u0And u1The two input bits are passed through a modulo two adder to obtain x0On the other hand u1Direct assignment to x1I.e. x0=u0⊕u1,x1=u1And behavior behavioris modulo two addition operation. B is x0And x1Respectively fed into unpolarized channels W to obtain an output y0And y1. From the input of the channel polarization base unit (u)0And u1) And outputs of two channels (y)0And y1) Two unpolarized channels W that are originally independent are merged into a two-input two-output vector channel W2:X2→Y2Wherein X is2= X × X, and operation × is a cartesian product. The vector channel comprises two sub-channels W2 (0)X → Y X (input is u)0The output is y0y1) And W2 (1)X → Y (input u)1The output is y0y1u0) The two subchannels are two polarized channels. Through the single-step polarization process, from the viewpoint of channel capacity, I (W)2 (0))+I(W2 (1))=2×I(W),I(W2 (0))≤I(W)≤I(W2 (1)) Where I (-) represents a function of channel capacity. That is to say: after single-step polarization, under the condition that the sum capacity is kept unchanged, compared with the original unpolarized channel, the polarized channel capacity is deviated: one increasing and one decreasing. The deviation is more obvious if two groups of channels which are polarized once are subjected to single-step polarization operation between two groups of polarization channels which are independent from each other and have the same transition probability, wherein the group of single-step polarization operation is called second-layer polarization operation, and the previous group of single-step polarization operation is called first-layer polarization operation. Every time one more polarization operation is performed, the number of channels required is doubled. Thus, for N =2nComplete polarization of each channel, n layers of polarization operation are required, and each layer of polarization operationN single-step polarization operations are included. Unless otherwise specified, "polarize N channels" means complete polarization. Theoretically, it has been proved that after polarization operation is performed on a plurality of channels approaching infinity, a phenomenon that the capacity of a part of channels is 1 and the capacity of the rest of channels is 0 occurs, and the proportion of the channels with the capacity of 1 in all channels is just the capacity of the original binary input discrete channel.
Referring to fig. 2, a recursive structure of a practical channel polarization apparatus is described, and a length N (for polarizing N channels) channel polarization apparatus may be used with a length of NThe channel polarization apparatus of 2 is represented by recursive operation, and the minimum unit in the recursive process (i.e. when N = 2) is the basic unit shown in fig. 1. The channel polarization apparatus in fig. 2 has a bit reversal interleaver of length N, whose function is: firstly, the decimal serial number i of the input end is expressed as b according to binary systemn-1bn-2...b0Where n = log2N, then the binary sequence is reversed to obtain b0b1...bn-1Finally, representing the input sequence number i as the output sequence number corresponding to the input sequence number i again according to the decimal system. The bit reversal interleaver is used to map the bits with input sequence number i to sequence number pi (i). Polarize N channels according to the coding rate (R), and select K channels with the maximum capacity (or equivalently, select K channels with the highest reliability, the reliability measure is obtained by adopting a Density Evolution (Density Evolution) tool or calculating a Bhattacharyya parameter) to carry bits for transmitting the message, and the part of the bits are called information bits (wherein, the part of the bits is called information bits)For rounding-down), the remaining non-selected channels transmit a given bit sequence called a fixed bit sequence (if the channels are symmetrical, it is possible to simply transmit all-zero sequences), thus forming a sequence from the K bits carrying the information to the final incoming signalThe mapping relation of the N bits of the channel, such a mapping relation is a polarization code, and the code length (the number of bits included in the binary signal obtained after encoding) is equal to the length N of the channel polarization device.
Binary signal sequence u consisting of information bits and fixed bits and fed to channel polarization means0...uN-1For code blocks (in the same order as the serial number of the polarisation channel into which it is fed, i.e. uiIs sent intoWherein the serial number i is a positive integer from 0 to N-1,indicating a polarized channel with index i obtained by polarizing N channels W). X obtained by coding code block through channel polarization device0...xN-1The received signal sequence is y over N independent channels W0...yN-1. The task of the decoder is to derive from the received signal sequence y0...yN-1Obtaining a transmission signal sequence u0...uN-1A set of estimated values of
The polar code may be decoded by using a serial cancellation sc (successive cancellation) algorithm, sequentially from 0 to N-1 in sequence according to sequence number i, for each bit in the encoded code block according to the following formula:
wherein, the decision function of the information bit is:in the formula, for transferring probability functions to the channel, i.e. for transmitting signal x through the channelTo obtain an output y0...yN-1Andthe probability of (c).
The polarization code has a Tanner graph structure, and thus can be decoded by using a belief propagation (bp) algorithm that has been widely applied to Low Density Parity Check codes (LDPC) for Low Density Parity Check (Low Density Parity-Check). Fig. 3 shows a code length N (N = 2)n) The circle and the square with cross represent the variable node and the check node of the tanner graph, respectively. The graph has N +1 layers, N variable nodes in each layer, N layers and N check nodes in each layer. The variable node level sequence numbers from right to left are from 0 to n, and the check node level sequence numbers are from 0 to n-1. The serial numbers of the N variables (check nodes) in each layer sequentially go from 0 to N-1 from top to bottom. Layer 0 variable nodes get messages directly from the channel (distinguished by filled circles). The n-th layer variable node corresponds to information bit and fixed bit and sends the information bit and the fixed bit into a sequence u of a channel polarization device0...uN-1The ith bit in the sequence corresponds to the ith variable node of the nth layer, and i is a positive integer serial number from 0 to N-1. Before decoding starts, the variable node of layer 0 is initialized by the signal received from the channel, and the corresponding part of the variable node of layer n is initialized by the known fixed bit sequence. And after initialization is finished, performing a confidence coefficient propagation decoding algorithm on the tanner graph, stopping a decoding process after a certain iteration number is reached, and judging according to the information of the variable node corresponding to the information bit on the nth layer to obtain a decoding sequence. The confidence propagation decoding complexity based on the tanner graph is O (NlogN), the confidence propagation decoding algorithm needs to perform a certain number of iterations, the complexity is slightly higher than that of the serial offset decoding algorithm, and the good performance can be obtained.
For the polarization code with smaller code length, the posterior probability of each code word can be calculated by taking all possible code word conditions, and then the code word with the maximum posterior probability is selected as the decoding result, and the method is called as the maximum posterior probability decoding algorithm. The method can obtain the optimal decoding performance, but the complexity is extremely high and reaches O (2)N) It is difficult to be practical for the case of a large code length.
Therefore, the disadvantages of the prior art described above are: the code length of a practical coding system cannot be infinite, and after polarization operation is carried out on a limited number of channels, a part of channels with transmission performance which is neither particularly good nor particularly poor can still exist, and the channel is called a gray channel by the invention. According to the construction method of the polar code, information is inevitably carried on those gray channels, so that the noise-resistant performance of the coding scheme is greatly affected by the portion of bits.
Disclosure of Invention
In view of the above, the present invention provides an encoder based on repetition coding and channel polarization and a corresponding coding and decoding method thereof, and compared with a polarization code, the present invention greatly improves reliability and has a better application prospect on the premise of hardly paying coding and decoding complexity.
In order to achieve the above object, the present invention provides an encoder based on repetition coding and channel polarization for encoding a binary transmission signal to output a binary coding sequence; the method is characterized in that: the encoder comprises two encoding modules with the same structure, wherein each encoding module consists of a repetition encoder group with m multiplied by L output ports, a bit position mapper with the length of N and a channel polarization device with the length of N which are connected in sequence, the m multiplied by L is also called as the repetition length, the repetition encoder group consists of L repetition encoders with m repetition times which are arranged in sequence, and the two encoding modules are connected into a whole by an encoding mode selector positioned between the repetition encoders and the bit position mappers; each coding module is respectively provided with two groups of input ports: input ports I (0), I (1), …, I (K-1) are used for receiving binary signal sequence with length K output by source, input ports F (0), F (1), …, F (N-K-m.L-1) are used for configuring preset fixed binary signal sequence, and the two groups of input ports are also directly connected with input ports of bit position mapper with length N, wherein N =2nN is a natural number, K, L, m are integers, and L is more than or equal to 0 and less than or equal to K, 0<K is less than or equal to N, m is more than or equal to 1, and mxL is less than or equal to N-K; the input ports of the repeated coder groups of the two coding modules are respectively connected with the input ports I (K-L), I (K-L +1), … and I (K-1) of the respective coding modules one by one, and the output ports with the serial numbers of R (0), R (1), … and R (m.L-1) are respectively connected to a bit position mapper through the input end of a coding mode selector; the signals are output via the bit position mapper of length N and the output ports X (0), X (1), …, X (N-1) of the channel polarization means of length N according to the operation mode selected by the coding mode selector.
In order to achieve the above object, the present invention further provides an encoding method using the encoder based on repetition coding and channel polarization according to the present invention, wherein the encoding method comprises: the method is to embed repeated codes into a channel polarization process for coding, and comprises the following operation steps:
(1) determining the encoding parameters: input signal sequence length K for each coding module, output sequence length N =2nN is a natural number, wherein 0<K is less than or equal to N, then the code rate isThe number of the repeated encoders in each encoding module is L, the repetition frequency of each repeated encoder is m, wherein m is more than or equal to 1, L is more than or equal to 0 and less than or equal to K, and m.L is more than or equal to N-K;
(2) calculating the reliability of each polarization channel:
first, N polarized channels are defined according to the following method: the signal sequence fed to the channel polarization means is u0u1...uN-1The signal sequence received by the receiving end decoder from the channel is y0y1...yN-1Polarized channel with index i and uiIs input, y0y1...yN-1And u0u1...ui-1To output, its transition probability function isIt is briefly described asIn the formula, subscript N represents the length of the channel polarization device, superscript i represents the serial number of the polarization channel, and i is more than or equal to 0 and less than or equal to N-1;
then, the reliability value of each polarization channel, namely the Bhattacharyya parameter of the Bartay-Chiia is calculated: the Bhattacharyya parameter of the binary input channel with the transition probability function of W (y | u) is calculated asIn the formula, Y is a possible value of all channel outputs; the larger the Bhattacharyya value is, the lower the reliability is; the smaller the Bhattacharyya value is, the higher the reliability is;
(3) four types of channel positions and numbers are determined by classification: according to the number L of repeated encoders, the repeated times m and the length K of the input signal sequence of each encoding module, the following four types of channel positions and numbers are respectively determined: non-repeating information channels (K-L), repeating information channels (L), repeating channels (m.L) and fixed channels (N-K-m.L); arranging the N polarized channels generated in the step (2) according to the sequence of the reliability, namely the sequence of the Bhattacharyya parameters from small to large, and sequentially selecting and marking the N polarized channels as: non-repeated information channel, repeated channel and fixed channel;
(4) determining the corresponding relation between the repeated information channel and the repeated channel: arranging repeated channels according to the sequence of the reliability, wherein each L is a group, and the groups are m; then, the repeated information channels are reversely arranged according to the sequence of the reliability, namely according to the sequence of the Bhattacharyya parameters from large to small; according to the principle that 'relatively unreliable channels in repeated information channels and relatively reliable channels in repeated channels work in a matched mode', repeated information channels are selected one by one, a channel which is not marked yet and has the highest reliability in a group is selected from each group of m groups of repeated channels, the m +1 channels form a repeated relation, and the repeated relation is recorded and marked; a bit position mapper with the length of N in the encoder generates an interleaving pattern according to the serial numbers of the non-repeated information channel, the repeated channel and the fixed channel generated by the method, and ensures that various bits are sent into the channels with corresponding types;
(5) if the selected coding mode is a single code block coding mode, sequentially executing the steps (6) and (7) to finish a coding operation; if the selected coding mode is a 'double-code-block coding mode', skipping to execute the steps (8), (9) and (10) to finish a coding operation;
(6) a binary input signal sequence with length KThe first (K-L) bits and the remaining L bits are respectively marked as non-repeated information bit sequencesAnd repeating the information bit sequence(ii) a Repeating the information bit sequenceSending the data into a repetition coder group to carry out repetition coding to obtain a repetition bit sequence(ii) a If no special setting is available, the bit sequence is fixedAssigning as an all-zero sequence of length (N-K-m.L);
(7) according to the channel classification in the steps (3) and (4) and the repetitive relation of the corresponding channel, the binary input signal sequence with the length of K is classified and constructedThe non-repeated information channel and the repeated information channel which are respectively sent into the channel polarization device are as follows: in which a repetitive information bit sequence is presentFeeding into a repeated information channel, repeating a bit sequenceFeeding into a repetition channel, a fixed bit sequenceSending the data to a fixed channel; the bit sequence is sent to a channel polarization device to obtain N bits which are finally sent to a channel W before polarization after a series of interweaving and modulo two addition operation, namely an output signal sequence(ii) a Thus far, the coding operation of "single code block modeCompleting the whole process, and ending the process;
(8) performing the steps (2), (3) and (4) again on another coding module with the same structure to complete the construction of the marking and repeating relation of the polarized channel, wherein two coding modules are used for operating two binary signal sequences with the length of K in the coding process each time;
(9) from a first signal sequence of length KIn the method, the first (K-L) bits and the remaining L bits are respectively marked as a non-repeated information bit sequence and a repeated information bit sequenceRepeating the information bit sequenceSending the data to a repetition coder for repetition coding to obtain a repetition bit sequence with the length of (m multiplied by L)Meanwhile, if there is no special setting, the bit sequence will be fixedAssigning as an all-zero sequence of length (N-K-m.L); for a second signal sequence with length KMarking out repeated information bit sequence according to the same methodAfter repeated coding, a repeated bit sequence is generatedAnd a fixed bit sequence
(10) Classifying the first signal sequence with the length of K according to the channels in the steps (3) and (4) respectively and constructing the repetitive relation of the corresponding channelsA non-repeating information channel and a repeating information channel in the polarized channel fed to the first coding module, wherein the repeating information bit sequenceRepeated information channels, fixed bit sequences, in the polar channel fed to the first coding moduleA fixed channel in the polarized channel fed to the first encoding module; then, the second signal sequence with length K is addedA non-repeating information channel and a repeating information channel in the polarized channel fed into the second coding module, wherein the repeating information bit sequenceRepeated information channel, fixed bit sequence, in a polar channel fed to a second coding moduleA fixed channel in the polarized channel sent to the second coding module;
the sequence of repeated bits of the first coding module in the dual block coding mode, unlike the single block coding modeRepeated channels in the polarization channel fed into a second coding module, repeated bit sequences of the second coding moduleA repetition channel in the polarization channel fed into the first coding module; the bit sequence is sent to the two channel polarization devices to obtain two groups of N bits which are finally sent to the channel W before polarization after a series of interweaving and modulo two addition operation, namely an output signal sequenceAnd(ii) a At this point, the encoding operation of the "dual block mode" is completed, and the process ends.
The invention discloses an encoder based on repeated coding and channel polarization and an innovative key technology of a coding and decoding method thereof, wherein the innovative key technology comprises the following steps: an encoder and a coding and decoding method thereof of an innovative structure are proposed, which divide the polarization channels into four classes: non-repeated channel, repeated information channel, repeated channel and fixed channel, and two coding methods for establishing repeated relation between repeated information channel and repeated channel under single code block mode and double code block mode, and corresponding serial cancellation algorithm under double code block mode and tanner graph structure under single code block mode.
The invention has the innovative advantages that: the invention provides a specific method for embedding repeated codes in the channel polarization process to carry out channel coding and decoding on the basis of a novel structure encoder for the first time, and compared with the limited length polarization code in the prior art, the method has stronger error correction capability on the premise of hardly increasing the decoding complexity. If the 'double-code-block coding' mode of the invention is adopted, although the cost of 0.5 times of decoding time delay on average is needed, the transmission performance can be greatly improved, and even the transmission performance can exceed the relevant performance of the polar code in decoding by using the maximum posterior probability with extremely high decoding complexity. In a word, the codec has linear codec complexity and excellent error correction capability, is particularly suitable for practical engineering systems such as mobile communication, satellite communication, underwater communication and the like, and has good popularization and application prospects.
Drawings
Fig. 1 is a schematic diagram of a basic unit structure of channel polarization.
Fig. 2 is a schematic diagram of a recursive structure of a channel polarization apparatus with a length N, wherein a minimum unit of the recursion (i.e., when N = 2) is the basic unit shown in fig. 1.
Fig. 3 is a tanner graph of a polar code of code length N.
Fig. 4 is a schematic diagram of the structure of the encoder based on repetition coding and channel polarization.
Fig. 5 is a flowchart of the decoding operation steps of the successive cancellation algorithm in the double-block coding mode, where the channel is a binary erasure channel and the repetition number m =1 in the repetition coding.
Fig. 6 is a diagram of the structure of the Tanner graph in the single-block coding mode according to the present invention.
Fig. 7 is a diagram illustrating the structure of the Tanner graph in the dual-block coding mode according to the present invention.
Fig. 8 is a schematic diagram showing comparison of performances of a single-block repetition polarization code with different code rates and different repetition lengths and a code length of 1024 under a belief propagation decoding algorithm in the embodiment of the present invention (iteration is performed 100 times, and a repetition length of 0 is a general polarization code).
Fig. 9 is a schematic diagram of comparing the performance of the dual-block repolarization code with the code length of 1024 under the serial cancellation algorithm according to the embodiment of the invention.
Fig. 10 is a schematic diagram of performance comparison (iteration 100 times) between a belief propagation decoding algorithm and a general polarization code of a dual-block repeated polarization code with a code rate of 0.36 and different code lengths and different repetition lengths.
Fig. 11 is a performance comparison diagram of the embodiment of the invention under different decoding algorithms of the single/double code block repetition polarization code with the code length of 1024 and the general polarization code.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention will be further described in detail with reference to the accompanying drawings and examples.
Referring to fig. 1, the structural composition of the encoder based on repetition coding and channel polarization of the present invention is described: the method comprises two coding modules with completely identical structures: the encoding module 0 and the encoding module 1, each encoding module is composed of a repetition coder group (m × L is also called repetition length) with m × L output ports, a bit position mapper with length N and a channel polarization device with length N, which are connected in sequence, wherein the repetition coder group is composed of L repetition coders with m repetition coding times, which are arranged in sequence, and the two encoding modules are connected into a whole by a coding mode selector between the repetition coders and the bit position mapper. Each coding module is respectively provided with two groups of input ports: input ports I (0), I (1), …, I (K-1) are used for receiving binary signal sequence with length K output by source, input ports F (0), F (1), …, F (N-K-L-1) are used for configuring preset fixed binary signal sequence, and both input ports are directly connected with bit position mapper with length N, wherein N =2nN is a natural number, K, L, m are integers, and L is more than or equal to 0 and less than or equal to K, 0<K is less than or equal to N, m is more than or equal to 1, and m multiplied by L is less than or equal to N-K.
The input ports of the repeated encoder groups between the two encoding modules are respectively connected with the input ports of the respective encoding modules one by one The output ports are sequentially numbered as R (0), R (1), …, R (L-1) and are respectively connected to the bit position mapper through the input terminal of the encoding mode selector. The signals are output via the bit position mapper of length N and the output ports X (0), X (1), …, X (N-1) of the channel polarization means of length N according to the operation mode selected by the coding mode selector.
The coding mode selector has the following two working modes:
when the coding mode selector is in the "double block coding" state, the output ports R (0), R (1), …, R (L-1) of the repetition coder group of each coding module are respectively connected to the bit position mapper of another coding module.
When the coding mode selector is in a 'single-code-block coding' state, output ports R (0), R (1), … and R (L-1) of the repeated coder groups of the two coding modules are respectively and directly connected with respective bit position mappers, and at the moment, the two coding modules respectively and independently work. Therefore, the encoding mode selector is an optional component, if the selection of the "dual-code block encoding" mode is not planned, the encoder can omit the encoding mode selector and only configure one encoding module,
the signal is outputted via the bit position mapper of length N and the output ports X (0), X (1), …, X (N-1) of the channel polarization means of length N according to the operation mode selected by the coding mode selector.
The bit position mapper with length N provided for each coding module is essentially an interleaver, whose function is to map the respective signals of two input port groups I (0), I (1), …, I (K-1) and F (0), F (1), …, F (N-K-L-1) and output port groups R (0), R (1), …, R (L-1) of the repetition coder to input port groups U (0), U (1), …, U (N-1) of a channel polarization apparatus with length N according to a preset rule, so that after polarization processing, signal sequences are output from the output port groups X (0), X (1), …, X (N-1).
The invention relates to a coding method of a coder based on repeated coding and channel polarization, which embeds the repeated coding into a channel polarization process for coding and comprises the following operation steps:
(1) determining the encoding parameters: input signal sequence length K for each coding module, output sequence length N =2nN is a natural number, wherein 0<K is less than or equal to N, then the code rate isThe number of the repeated encoders in each encoding module is L, the repetition frequency of each repeated encoder is m, wherein m is more than or equal to 1, L is more than or equal to 0 and less than or equal to K, and m.L is less than or equal to N-K.
(2) Calculating the reliability of each polarization channel:
first, N polarized channels are defined according to the following method: the signal sequence fed to the channel polarization means is u0u1...uN-1The signal sequence received by the receiving end decoder from the channel is y0y1...yN-1Polarized channel with index i and uiIs input, y0y1...yN-1And u0u1...ui-1To output, its transition probability function isIt is briefly described asIn the formula, subscript N represents the length of the channel polarization device, superscript i represents the serial number of the polarization channel, and i is more than or equal to 0 and less than or equal to N-1;
then, the reliability value of each polarization channel, namely the Bhattacharyya parameter is calculated: transition probability functionThe Bhattacharyya parameter of the binary input channel of W (y | u) is calculated by the formulaIn the formula, Y is a possible value of all channel outputs; the larger the Bhattacharyya value is, the lower the reliability is; the smaller the Bhattacharyya value, the higher the reliability.
(3) Four types of channel positions and numbers are determined by classification: according to the number L of repeated encoders, the repeated times m and the length K of the input signal sequence of each encoding module, the following four types of channel positions and numbers are respectively determined: non-repeating information channels (K-L), repeating information channels (L), repeating channels (m.L) and fixed channels (N-K-m.L); arranging the N polarized channels generated in the step (2) according to the sequence of the reliability, namely the sequence of the Bhattacharyya parameters from small to large, and sequentially selecting and marking the N polarized channels as: non-repetitive information channels, repetitive channels, and fixed channels.
(4) Determining the corresponding relation between the repeated information channel and the repeated channel: arranging repeated channels according to the sequence of the reliability, wherein each L is a group, and the groups are m; then, the repeated information channels are reversely arranged according to the sequence of the reliability, namely according to the sequence of the Bhattacharyya parameters from large to small; according to the principle that 'relatively unreliable channels in repeated information channels and relatively reliable channels in repeated channels work in a matched mode', repeated information channels are selected one by one, a channel which is not marked yet and has the highest reliability in a group is selected from each group of m groups of repeated channels, the m +1 channels form a repeated relation, and the repeated relation is recorded and marked; a bit position mapper with the length of N in the encoder generates an interleaving pattern according to the serial numbers of the non-repeated information channel, the repeated channel and the fixed channel generated by the method, and ensures that various bits are sent into the channels with corresponding types;
(5) if the selected coding mode is a single code block coding mode, sequentially executing the steps (6) and (7) to finish a coding operation; and (4) if the selected coding mode is the double-code-block coding mode, skipping to execute the steps (8), (9) and (10) to finish a coding operation.
(6) A binary input signal sequence with length KFront of (5)One bit and the restThe bits are respectively marked as non-repeated information bit sequence and repeated information bit sequenceRepeating the information bit sequenceSending the data into a repetition coder group to carry out repetition coding to obtain a repetition bit sequence(ii) a If no special setting is available, the bit sequence is fixedThe assignment is an all-zero sequence of length (N-K-L).
(7) According to the channel classification in the steps (3) and (4) and the repetitive relation of the corresponding channel, the binary input signal sequence with the length of K is classified and constructedThe non-repeated information channel and the repeated information channel which are respectively sent into the channel polarization device are as follows: in which a repetitive information bit sequence is presentFeeding into a repeated information channel, repeating a bit sequenceFeeding into a repetition channel, a fixed bit sequenceSending the data to a fixed channel; the bit sequence is sent to a channel polarization device to obtain N bits which are finally sent to a channel W before polarization after a series of interweaving and modulo two addition operation, namely the output signal sequence(ii) a At this point, the coding operation of the "single code block mode" is completed completely, and the process is finished.
(8) And (3) performing the steps (2), (3) and (4) again on another coding module with the same structure to complete the construction of the mark and repetition relation of the polarized channel, wherein two coding modules are used for operating two binary signal sequences with the length of K in each coding process.
(9) From a first signal sequence of length KIn the method, the first (K-L) bits and the remaining L bits are respectively marked as a non-repeated information bit sequence and a repeated information bit sequenceThen repeating the information bit sequenceSending the data to a repetition coder for repetition coding to obtain a repetition bit sequence with the length of (m multiplied by L)(ii) a Meanwhile, if there is no special setting, the bit sequence will be fixedAssigning a length of (N-K-mxL) to the sequence of all zeros; for a second signal sequence with length KMarking out repeated information bit sequence according to the same methodAnd after repetition coding, generating a repeated bit sequenceAnd a fixed bit sequence。
(10) Classifying the first signal sequence with the length of K according to the channels in the steps (3) and (4) respectively and constructing the repetitive relation of the corresponding channelsNon-repeating information channel and repeating information channel in polarized channel fed into first coding module, repeating information bit sequence thereinRepeated information channels, fixed bit sequences, in the polar channel fed to the first coding moduleA fixed channel in the polarized channel fed to the first encoding module; then, the second signal sequence with length K is addedNon-repeating information channel and repeating information channel in polarized channel fed into second coding module, repeating information bit sequence thereinRepeated information channel, fixed bit sequence, in a polar channel fed to a second coding moduleA fixed channel in the polarized channel into the second encoding module. The sequence of repeated bits of the first coding module in the dual block coding mode, unlike the single block coding modeRepeated channels in the polarization channel fed into a second coding module, repeated bit sequences of the second coding moduleA repetition channel in the polarization channel fed into the first coding module; the bit sequence is sent to the two channel polarization devices to obtain two groups of N bits which are finally sent to the channel W before polarization after a series of interweaving and modulo two addition operation, namely an output signal sequenceAnd(ii) a At this point, the encoding operation of the "dual block mode" is completed, and the process ends.
Corresponding to the coding method, the invention also provides two decoding methods:
referring initially to fig. 5, a first method for decoding a binary erasure channel coded with repetition number m =1 for a "double block code" scheme using a simple and fast successive cancellation algorithm is described, which comprises the following operating steps:
(1) detecting whether a decoder is in a 'double-code block coding' mode, and whether a channel is a Binary Erasure Channel (BEC) and the number of repeated coding m = 1; if both are satisfied, continuing to execute the step (2); otherwise, decoding fails, and the decoding process is ended.
(2) For two groups of signal sequences with the length of N received from a channel, carrying out serial offset decoding operation on each bit according to the sequence of sequence numbers from 0 to N-1 respectively:
when decoding the bit with serial number i in the code block corresponding to each group of received sequences, if the bit is a fixed bit, directly decoding the code block according to the sequence number iJudging; if the bit is a non-repeated information bit, a repeated information bit or a repeated bit, calculating a probability value according to a transition probability function of a polarized channel with a sequence number i And and the following operations are carried out:
if it is not The decision is 0;
if it is not The decision is 1;
if it is not If not, pausing the decoding operation corresponding to the code block, and immediately skipping to execute the step (3);
at this time, if the judgment on all bits of a certain code block is finished, the corresponding decoding operation is ended; if both decoding operations are in the end state, executing the step (5); otherwise, continuing to execute the operation of step (2) and waiting for the end of another decoding operation.
(3) Judging whether the bit with the sequence number i is a repeated information bit or a repeated bit, if so, executing the step (4); otherwise, ending the suspended decoding operation process, marking that all bits with the serial numbers after the bit i in the corresponding code blocks can not be judged, continuing to execute the operation of the step (2), and waiting for the end of another decoding operation.
(4) Waiting for the decision result of the repeated bit or the repeated information bit j forming a repeated relationship with the bit i in another decoding operation, if the bit j in another decoding process is successfully decided, taking the decision result of the bit j as the decision result of the bit i in the decoding operation which is already suspended in the step (2), and then returning to the step (2) to continue executing the decoding operation; if the two decoding operation processes are in the pause state, the two operation processes are ended, and the step (5) is executed in sequence.
(5) For the code blocks of which all bits are successfully judged, taking out repeated information bits and non-repeated information bits from the corresponding judgment sequences, respectively arranging the repeated information bits and the non-repeated information bits from small to large according to the serial numbers, merging the sequenced repeated information bit sequences and non-repeated information bit sequences, ensuring that the non-repeated information bits are in front and the repeated information bits are in back, and obtaining and outputting the decoding results of the corresponding code blocks; and for the code block which is not completely judged, declaring decoding failure and terminating the decoding process.
The second decoding method of the encoder based on repetition coding and channel polarization is introduced: the general decoding method based on the confidence propagation algorithm of the tanner graph with excellent performance comprises the following operation steps:
(1) on the basis of a polar code tanner graph, adding check nodes representing repeated coding relations according to the relations between repeated information bits and repeated bits; wherein,
for the single code block coding mode, based on a tanner graph (see fig. 6) of a common polarization code, connecting an nth layer variable node corresponding to a repeated information bit and an nth layer variable node corresponding to a repeated bit forming a repeated relation with the nth layer variable node one by one with a variable node with a degree of (m +1) through (m +1) check nodes with a degree of 2, wherein the degree of the node is the number of edges associated with the node, and m is the repetition number of a repeated coder; a total of L variable nodes and (m × L + L) check nodes are added, wherein L is the number of repeated encoders, so that the tanner graph in the mode of single-code block encoding is obtained.
For the 'dual-code block coding' mode, based on tanner graphs (see fig. 7) of two common polarization codes, each graph corresponds to one coding code block, and the variable nodes of the nth layer corresponding to the repeated information bits in each graph and the variable nodes of the nth layer corresponding to the repeated bits forming the repeated relation with the repeated information bits in the other graph are connected with the variable nodes of one degree (m +1) through the check nodes of (m +1) degrees 2, wherein m is the repetition times of the repeated coder; 2L variable nodes and (2 m multiplied by L + 2L) check nodes are added in total, L is the number of repeated encoders in each encoding module, and the 2L check nodes and the (2 m multiplied by L + 2L) check nodes are connected with the original two polar code tanner graphs to obtain the tanner graphs in the mode of 'double-code block encoding'.
(2) Based on the tanner graph established in the step (1), iterative decoding is carried out by using a confidence coefficient propagation algorithm: in the initial decoding stage, signals received from a channel and a known fixed bit sequence are used for respectively initializing corresponding partial variable nodes in a layer 0 variable node and a layer n variable node; after initialization is completed, performing belief propagation iterative decoding; after the decoding iteration process is stopped, judging corresponding bits according to the information of the nth layer variable node to obtain a judgment sequence, respectively taking out repeated information bits and non-repeated information bits from each judgment sequence, respectively arranging the repeated information bits and the non-repeated information bits from small to large according to the sequence numbers, then combining the sequenced repeated information bit sequence and the non-repeated information bit sequence, ensuring that the non-repeated information bits are in front and the repeated information bits are behind, and obtaining and outputting a decoding result.
The present invention has been carried out for a plurality of times, and in the description of the embodiments, for convenience of description, the method of encoding and decoding using the single-block encoding mode of the present invention is referred to as a single-block repetition polarization code, and the method of encoding and decoding using the dual-block encoding mode of the present invention is referred to as a dual-block repetition polarization code.
The following describes the coding and decoding method and the performance analysis thereof in detail by taking a single/double block repetition polarization code with a repetition code rate of 0.5 as an example and combining the accompanying drawings of 8 to 11:
first, the parameters required for encoding are calculated: the code length N is 1024 or 512, and the code rate R is in the value range: {0.32,0.33,0.34,0.35,0.36,0.37,0.38,0.39,0.40}, repetition number m of repetition codes is taken to be 1. Calculating the number of bits of the information sequence according to the code length N and the code rate RIndicating a rounding down operation. The number L of repeated encoders in each encoding module is selected from {0,10,20,30,40,50,60}, and is a general polarization code when L = 0. The channel adopts a binary deleting channel with deleting probability of 0.5. Here, since m =1, the repetition length also takes the value L.
The reliability of each polarized channel, namely the Bhattach of the Bartay-Harrisa, is calculated by the following two formulasaryya parameters: wherein, 0≤i≤N-1。
and then arranging the polarized channels in the sequence from small to large according to the Bhattacharyya parameter. Selecting the first K Bhattacharyya parameters from the sequenced channel serial numbers as an information channel: the (K-L) ones marked with the smaller Bhattacharyya parameter are non-repeated information channels, the bit sequence sent to the part of the channels does not participate in repeated coding, and the L ones marked with the larger Bhattacharyya parameter are repeated information channels, and the bit sequence sent to the part of the channels participates in repeated coding. Then, L channels with the smallest Bhattacharyya parameter are selected as the repeated channels from the (N-K) polarized channels excluding the information channel. The last (N-K-L) channels are marked as fixed channels.
Repetition coding repetition number m =1, indicating that one repetition information channel corresponds to one repetition channel. The repeated information channels are sorted from large to small according to the Bhattacharyya parameter, and the repeated information channels are sorted from small to large according to the Bhattacharyya parameter and are selected one by one to form a repeated relation. The operation steps and the performance thereof are introduced as follows:
1. and (3) coding and decoding by adopting a single code block coding mode:
the encoder of the invention shown in fig. 3 is used for encoding, and the single-block encoding mode is selected: firstly, the repeated information bit sequence is processed by a repeated coder to obtain a repeated bit sequence. The fixed bit sequence is assigned an all-zero sequence. And passing the coded code block consisting of the non-repeated information bit sequence, the repeated bit sequence and the fixed bit sequence through a bit position mapper, and mapping the non-repeated information bit, the repeated bit and the fixed bit to the corresponding polarized channel. And finally, obtaining an output signal of the encoder through a channel polarization device and sending the output signal into a transmission channel.
The decoder decodes the signal received from the transmission channel by using a confidence coefficient propagation algorithm based on a tanner graph, iterates for 100 times and counts the error code block rate.
Referring to fig. 8, for each code rate, the coding performance first becomes better as the repetition length increases, and when the repetition length increases to a certain extent, the transmission performance becomes worse as it continues to increase. There is an optimum repetition length for each code rate.
2. Coding and decoding by adopting double-code block mode
The inventive encoder shown in fig. 3 is used to encode every two uncoded binary signal sequences, selecting the double block coding mode: firstly, the repeated information bits of two signal sequences are passed through a repetition coder to obtain repeated bits. Grouping the bit sequences, wherein a first coding code block consists of information bits (including repeated and non-repeated) of a first signal sequence, repeated bits of a second signal sequence and a first group of fixed bits; the second encoded code block is composed of information bits of the second signal sequence, repetition bits of the first signal sequence, and a second set of fixed bits. Wherein the fixed bits of both encoded code blocks are assigned to an all-zero bit sequence. Then, two coding code blocks are respectively sent to two coding modules in the coder of the invention, non-repeated information bits, repeated bits and fixed bits are mapped to corresponding polarized channels through a bit position mapper, two groups of coder output signals are respectively obtained through a channel polarization device and are sent to a transmission channel.
Referring to fig. 9, a performance comparison of the decoder using the serial cancellation algorithm after the decoder receives a message from a channel according to the present invention will be described. In the region with lower code rate, the performance of the double-code block repeated polarization code is obviously superior to that of the common polarization code.
The decoder performs decoding using a belief propagation algorithm based on the signal received from the transmission channel, iterating 100 times. Since encoding and decoding of the dual-block repetition polarization code both take a code block pair (two encoded code blocks which are encoded and decoded simultaneously) as a unit, the error rate of the code block pair, that is, the error probability of the dual code block, is also counted in addition to the single code block error probability which is counted in a general case.
Referring to fig. 10, a comparison of dual block repetition polarization codes with different repetition lengths of 512 and 1024 at code rate of 0.36 with general polarization codes with different code lengths is described. Similar to the single code case, the coding performance may first get better as the repetition length increases, and when the repetition length increases to a certain extent, the performance may get worse as it continues to increase. There is also an optimum repetition length. From fig. 10 it can be observed that: the double-code-block error probability of the double-code-block repetition polarization code with the code length of 512 codes can be better than the single-code-block repetition probability of the common polarization code with the code length of 1024 codes in performance when the repetition length is better. In this case, the statistics on 1024 bit sequences are performed equally each time, the average decoding delay of the dual-block repeated polarization code is slightly lower than that of the general polarization code, and the performance is too poor.
Referring to fig. 11, a description will be given of a case where different performances of the polarization code decoded by the belief propagation (bp) algorithm or the maximum a posteriori probability (map) algorithm are compared with the polarization code of the single/dual code block repetition with the optimal repetition length obtained by the repetition length configuration according to the embodiment of the present invention. The statistics are all single block error probabilities. It can be seen from the performance curve that the confidence propagation decoding performance of the single-code-block repetitive polarization code is obviously superior to that of the common polarization code under the confidence propagation decoding, and under the condition of low code rate, the performance of the common polarization code under the maximum posterior probability decoding condition with extremely high decoding complexity can be approached. If the double-code-block repeated polarization code is adopted, the performance can be further improved, and the performance can be obviously superior to that of the polarization code under the maximum posterior probability decoding when the code rate is lower.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.
Claims (7)
1. An encoder based on repetition coding and channel polarization for encoding a binary transmission signal to output a binary code sequence; the method is characterized in that: the encoder comprises two encoding modules with identical structure, each encoding module comprises a repetition encoder group with m × L output ports, a bit position mapper with length N and a channel polarization device with length N, which are connected in sequence, wherein the m × L is also called repetition length, the repetition encoder group comprises L repetition encoders with repetition times m arranged in sequence, and the two encoding modulesConnected as a whole by a coding mode selector between the repetition coder and the bit position mapper; each coding module is respectively provided with two groups of input ports: input ports I (0), I (1), …, I (K-1) are used for receiving binary signal sequence with length K output by source, input ports F (0), F (1), …, F (N-K-m.L-1) are used for configuring preset fixed binary signal sequence, and the two groups of input ports are also directly connected with input ports of bit position mapper with length N, wherein N =2nN is a natural number, K, L, m are integers, and L is more than or equal to 0 and less than or equal to K, 0<K is less than or equal to N, m is more than or equal to 1, and mxL is less than or equal to N-K; the input ports of the repeated coder groups of the two coding modules are respectively connected with the input ports I (K-L), I (K-L +1), … and I (K-1) of the respective coding modules one by one, and the output ports with the serial numbers of R (0), R (1), … and R (m.L-1) are respectively connected to a bit position mapper through the input end of a coding mode selector; the signals are output via the bit position mapper of length N and the output ports X (0), X (1), …, X (N-1) of the channel polarization means of length N according to the operation mode selected by the coding mode selector.
2. The encoder of claim 1, wherein: the coding mode selector is provided with the following two working modes:
when the coding mode selector is in a 'double-code-block coding' state, the output ports R (0), R (1), …, R (m.L-1) of the repeated coder group of each coding module are respectively connected with the bit position mapper of the other coding module;
when the coding mode selector is in a 'single-code-block coding' state, output ports R (0), R (1), … and R (m.L-1) of the repeated coder groups of the two coding modules are respectively and directly connected with respective bit position mappers, and at the moment, the two coding modules respectively and independently work.
3. The encoder of claim 1, wherein: the coding mode selector is an optional component, and if the mode of 'double code block coding' is not designed to be selected, the coder omits the coding mode selector and only configures one coding module.
4. The encoder of claim 1, wherein: the bit position mapper with the length of N is essentially an interleaver, and functions to map the signals of the two input port groups I (0), I (1), …, I (K-1) and F (0), F (1), …, F (N-K-m.L-1) and the output port group R (0), R (1), …, R (m.L-1) of the repetition coder to the input port groups U (0), U (1), …, U (N-1) of a channel polarization device with the length of N according to a preset rule so as to perform polarization processing.
5. A coding method using the repetition coding and channel polarization based encoder according to claim 1, characterized in that: the method is to embed repeated codes into a channel polarization process for coding, and comprises the following operation steps:
(1) determining the encoding parameters: input signal sequence length K for each coding module, output sequence length N =2nN is a natural number, wherein 0<K is less than or equal to N, then the code rate is(ii) a The number of the repeated encoders in each encoding module is L, the repetition frequency of each repeated encoder is m, wherein m is more than or equal to 1, L is more than or equal to 0 and less than or equal to K, and m.L is more than or equal to N-K;
(2) calculating the reliability of each polarization channel:
first, N polarized channels are defined according to the following method: the signal sequence fed to the channel polarization means is u0u1...uN-1The signal sequence received by the receiving end decoder from the channel is y0y1...yN-1Polarized channel with index i and uiIs input, y0y1...yN-1And u0u1...ui-1To output, its transition probability function isIt is briefly described asIn the formula, subscript N represents the length of the channel polarization device, superscript i represents the serial number of the polarization channel, and i is more than or equal to 0 and less than or equal to N-1;
then, the reliability value of each polarization channel, namely the Bhattacharyya parameter of the Bartay-Chiia is calculated: the Bhattacharyya parameter of the binary input channel with the transition probability function of W (y | u) is calculated asIn the formula, Y is a possible value of all channel outputs; the larger the Bhattacharyya value is, the lower the reliability is; the smaller the Bhattacharyya value is, the higher the reliability is;
(3) four types of channel positions and numbers are determined by classification: according to the number L of repeated encoders, the repeated times m and the length K of the input signal sequence of each encoding module, the following four types of channel positions and numbers are respectively determined: non-repeating information channels (K-L), repeating information channels (L), repeating channels (m.L) and fixed channels (N-K-m.L); arranging the N polarized channels generated in the step (2) according to the sequence of the reliability, namely the sequence of the Bhattacharyya parameters from small to large, and sequentially selecting and marking the N polarized channels as: non-repeated information channel, repeated channel and fixed channel;
(4) determining the corresponding relation between the repeated information channel and the repeated channel: arranging repeated channels according to the sequence of the reliability, wherein each L is a group, and the groups are m; then, the repeated information channels are reversely arranged according to the sequence of the reliability, namely according to the sequence of the Bhattacharyya parameters from large to small; according to the principle that 'relatively unreliable channels in repeated information channels and relatively reliable channels in repeated channels work in a matched mode', repeated information channels are selected one by one, a channel which is not marked yet and has the highest reliability in a group is selected from each group of m groups of repeated channels, the m +1 channels form a repeated relation, and the repeated relation is recorded and marked; a bit position mapper with the length of N in the encoder generates an interleaving pattern according to the serial numbers of the non-repeated information channel, the repeated channel and the fixed channel generated by the method, and ensures that various bits are sent into the channels with corresponding types;
(5) if the selected coding mode is a single code block coding mode, sequentially executing the steps (6) and (7) to finish a coding operation; if the selected coding mode is a 'double-code-block coding mode', skipping to execute the steps (8), (9) and (10) to finish a coding operation;
(6) a binary input signal sequence with length KThe first (K-L) bits and the remaining L bits are labeled as a non-repeated information bit sequence and a repeated information bit sequence, respectively(ii) a Repeating the information bit sequenceSending the data into a repetition coder group to carry out repetition coding to obtain a repetition bit sequence(ii) a If no special setting exists, assigning the fixed bit sequence F as an all-zero sequence with the length of (N-K-m.L);
(7) according to the channel classification in the steps (3) and (4) and the repetitive relation of the corresponding channel, the binary input signal sequence with the length of K is classified and constructedThe non-repeated information channel and the repeated information channel which are respectively sent into the channel polarization device are as follows: in which a repetitive information bit sequence is presentFeeding into a repeated information channel, repeating a bit sequenceFeeding into a repetition channel, a fixed bit sequenceSending the data to a fixed channel; the bit sequence is sent to a channel polarization device to obtain N bits which are finally sent to a channel W before polarization after a series of interweaving and modulo two addition operation, namely an output signal sequence(ii) a So far, the coding operation of the "single code block mode" is completely finished, and the process is finished;
(8) performing the steps (2), (3) and (4) again on another coding module with the same structure to complete the construction of the marking and repeating relation of the polarized channel, wherein two coding modules are used for operating two binary signal sequences with the length of K in the coding process each time;
(9) from a first signal sequence of length KIn the method, the first (K-L) bits and the remaining L bits are respectively marked as a non-repeated information bit sequence and a repeated information bit sequenceThen repeating the information bit sequenceSending the data to a repetition coder for repetition coding to obtain a repetition bit sequence with the length of (m multiplied by L)(ii) a Meanwhile, if no special setting is provided, the method will be usedFixed bit sequenceAssigning as an all-zero sequence of length (N-K-m.L); for a second signal sequence with length KMarking out repeated information bit sequence according to the same methodAnd after repetition coding, generating a repeated bit sequenceAnd a fixed bit sequence;
(10) Classifying the first signal sequence with the length of K according to the channels in the steps (3) and (4) respectively and constructing the repetitive relation of the corresponding channelsA non-repeating information channel and a repeating information channel in the polarized channel fed to the first coding module, wherein the repeating information bit sequenceRepeated information channels, fixed bit sequences, in the polar channel fed to the first coding moduleA fixed channel in the polarized channel fed to the first encoding module; then, the second signal sequence with length K is addedInto the pole of a second coding moduleNon-repeating information channels and repeating information channels in a channelization, in which a sequence of repeating information bitsRepeated information channel, fixed bit sequence, in a polar channel fed to a second coding moduleA fixed channel in the polarized channel sent to the second coding module;
the sequence of repeated bits of the first coding module in the dual block coding mode, unlike the single block coding modeRepeated channels in the polarization channel fed into a second coding module, repeated bit sequences of the second coding moduleA repetition channel in the polarization channel fed into the first coding module; the bit sequence is sent to the two channel polarization devices to obtain two groups of N bits which are finally sent to the channel W before polarization after a series of interweaving and modulo two addition operation, namely an output signal sequenceAnd(ii) a At this point, the encoding operation of the "dual block mode" is completed, and the process ends.
6. The encoding method of an encoder based on repetition coding and channel polarization according to claim 5, characterized in that: the decoding method corresponding to the coding method is to use a simple and quick serial cancellation algorithm to decode the code with the binary erasure channel of the 'double-code block coding' mode and the repetition times of repeated coding m =1, and the method comprises the following operation steps:
(1) detecting whether a decoder is in a 'double-code-block coding' mode, wherein a channel is a Binary Erasure Channel (BEC) and the number of times of repeated coding m = 1; if yes, continuing to execute the step (2); otherwise, decoding fails, and the decoding process is ended;
(2) for two groups of signal sequences with the length of N received from a channel, carrying out serial offset decoding operation on each bit according to the sequence of sequence numbers from 0 to N-1 respectively:
when decoding the bit with serial number i in the code block corresponding to each group of received sequences, if the bit is a fixed bit, directly decoding the code block according to the sequence number iJudging; if the bit is a non-repeated information bit, a repeated information bit or a repeated bit, calculating a probability value according to a transition probability function of a polarized channel with a sequence number i And and the following operations are carried out:
if it is not The decision is 0;
if it is not The decision is 1;
if it is not If not, pausing the decoding operation corresponding to the code block, and immediately skipping to execute the step (3);
at this time, if the judgment on all bits of a certain code block is finished, the corresponding decoding operation is ended; if both decoding operations are in the end state, executing the step (5); otherwise, continuing to execute the operation of the step (2) and waiting for the end of another decoding operation;
(3) judging whether the bit with the sequence number i is a repeated information bit or a repeated bit, if so, executing the step (4); otherwise, ending the suspended decoding operation process, marking that all bits with the serial numbers after the bit i in the corresponding code blocks can not be judged, continuing to execute the operation of the step (2), and waiting for the end of another decoding operation;
(4) waiting for the decision result of the repeated bit or the repeated information bit j forming a repeated relationship with the bit i in another decoding operation, if the bit j in another decoding process is successfully decided, taking the decision result of the bit j as the decision result of the bit i in the decoding operation which is already suspended in the step (2), and then returning to the step (2) to continue executing the decoding operation; if the two decoding operation processes are in the pause state, ending the two operation processes and sequentially executing the step (5);
(5) for the code blocks of which all bits are successfully judged, taking out repeated information bits and non-repeated information bits from the corresponding judgment sequences, respectively arranging the repeated information bits and the non-repeated information bits from small to large according to the serial numbers, merging the sequenced repeated information bit sequences and non-repeated information bit sequences, ensuring that the non-repeated information bits are in front and the repeated information bits are in back, and obtaining and outputting the decoding results of the corresponding code blocks; and for the code block which is not completely judged, declaring decoding failure and terminating the decoding process.
7. The encoding method of an encoder based on repetition coding and channel polarization according to claim 5, characterized in that: the decoding method corresponding to the coding method is general decoding which is carried out by using a confidence coefficient propagation algorithm based on a tanner graph with excellent performance, and comprises the following operation steps:
(1) on the basis of a polar code tanner graph, adding check nodes representing repeated coding relations according to the relations between repeated information bits and repeated bits; wherein,
for the single code block coding mode, based on a tanner graph of a common polarization code, connecting an nth layer variable node corresponding to a repeated information bit and an nth layer variable node corresponding to a repeated bit forming a repeated relation with the nth layer variable node one by one with a variable node with a degree of (m +1) through (m +1) check nodes with a degree of 2, wherein the degree of the node is the number of edges associated with the node, and m is the repetition number of a repeated coder; adding L variable nodes and (m multiplied by L + L) check nodes in total, wherein L is the number of repeated encoders, and obtaining a tanner graph in a single code block encoding mode;
for the 'double-code block coding' mode, on the basis of tanner graphs of two common polarization codes, each graph corresponds to one coding code block, and the variable nodes of the nth layer corresponding to the repeated information bits in each graph and the variable nodes of the nth layer corresponding to the repeated bits forming the repeated relation with the repeated information bits in the other graph are connected with the variable nodes of one degree (m +1) through the check nodes of (m +1) degrees 2, wherein m is the repeated times of the repeated coder; 2L variable nodes and (2 m.L + 2L) check nodes are added in total, L is the number of repeated encoders in each encoding module, and the 2L check nodes and the (2 m.L + 2L) check nodes are connected with the original two polar code tanner graphs to obtain the tanner graphs in the 'double-code block encoding' mode;
(2) based on the tanner graph established in the step (1), iterative decoding is carried out by using a confidence coefficient propagation algorithm: in the initial decoding stage, a variable node of the 0 th layer is initialized by using a signal received from a channel, a corresponding partial variable node in the variable node of the n th layer is initialized by using a known fixed bit sequence, and after the initialization is finished, confidence coefficient propagation iterative decoding is carried out; after the iterative decoding process is stopped, judging corresponding bits according to the information of the nth layer variable node to obtain a judgment sequence, respectively taking out repeated information bits and non-repeated information bits from each judgment sequence, respectively arranging the repeated information bits and the non-repeated information bits from small to large according to the sequence numbers, then combining the sequenced repeated information bit sequence and the non-repeated information bit sequence, ensuring that the non-repeated information bits are in front and the repeated information bits are in back, and obtaining and outputting a decoding result.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110095258 CN102164025B (en) | 2011-04-15 | 2011-04-15 | Coder based on repeated coding and channel polarization and coding/decoding method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110095258 CN102164025B (en) | 2011-04-15 | 2011-04-15 | Coder based on repeated coding and channel polarization and coding/decoding method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102164025A CN102164025A (en) | 2011-08-24 |
CN102164025B true CN102164025B (en) | 2013-06-05 |
Family
ID=44465018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110095258 Expired - Fee Related CN102164025B (en) | 2011-04-15 | 2011-04-15 | Coder based on repeated coding and channel polarization and coding/decoding method thereof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102164025B (en) |
Families Citing this family (72)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102446559A (en) * | 2011-09-06 | 2012-05-09 | 中国科学院微电子研究所 | Fault injection method based on dual-port SRAM |
CN102546496A (en) * | 2012-02-17 | 2012-07-04 | 钜泉光电科技(上海)股份有限公司 | Baseband digital signal processing device based on power line carrier communication |
CN102694625B (en) * | 2012-06-15 | 2014-11-12 | 北京邮电大学 | Polarization code decoding method for cyclic redundancy check assistance |
CN103516476B (en) * | 2012-06-29 | 2016-12-21 | 华为技术有限公司 | Coded method and equipment |
CN103684477B (en) * | 2012-09-24 | 2017-02-01 | 华为技术有限公司 | Generation method and generation device for mixed polar code |
CN103780329B (en) * | 2012-10-17 | 2018-05-04 | 华为技术有限公司 | The method, apparatus and system of a kind of coding and decoding |
KR102015121B1 (en) * | 2012-10-17 | 2019-08-28 | 삼성전자주식회사 | Controller configured to control nonvolatile memory device and operating method of controller |
CN107659384A (en) | 2012-11-16 | 2018-02-02 | 华为技术有限公司 | The method and apparatus of data processing |
CN103023618B (en) * | 2013-01-11 | 2015-04-22 | 北京邮电大学 | Random code length polar encoding method |
CN104079370B (en) | 2013-03-27 | 2018-05-04 | 华为技术有限公司 | channel decoding method and device |
CN104143991B (en) * | 2013-05-06 | 2018-02-06 | 华为技术有限公司 | The interpretation method and device of polarity Polar codes |
CN109361402B (en) * | 2013-05-31 | 2019-09-20 | 华为技术有限公司 | Coding method and encoding device |
CN103414540A (en) * | 2013-08-14 | 2013-11-27 | 南京邮电大学 | Degraded eavesdropping channel rate compatible method based on Polar code |
EP3073660B1 (en) * | 2013-11-20 | 2020-06-24 | Huawei Technologies Co., Ltd. | Polar code processing method and device |
CN104956616B (en) * | 2014-01-23 | 2018-11-13 | 华为技术有限公司 | A kind of system code coding method and device |
EP3079290B1 (en) | 2014-02-21 | 2019-04-10 | Huawei Technologies Co., Ltd. | Method and apparatus for rate matching of polar code |
CN104079382B (en) * | 2014-07-25 | 2017-07-28 | 北京邮电大学 | A kind of polarization code decoder based on probability calculation and polarization code coding method |
CN110401456B (en) | 2014-12-22 | 2023-10-13 | Oppo广东移动通信有限公司 | Encoding method and encoding device for polar code |
CN104539393B (en) * | 2015-01-07 | 2018-01-12 | 北京邮电大学 | A kind of source coding method based on polarization code |
US9479291B2 (en) | 2015-02-13 | 2016-10-25 | Samsung Electronics Co., Ltd. | Apparatus and method of constructing polar code |
RU2682017C1 (en) * | 2015-03-10 | 2019-03-14 | Хуавэй Текнолоджиз Ко., Лтд. | Communication method and device for transmission of information |
CN105049061B (en) * | 2015-04-28 | 2018-06-01 | 北京邮电大学 | Based on the higher-dimension base stage code decoder and polarization code coding method calculated in advance |
CN107431559B (en) * | 2015-04-30 | 2020-01-31 | 华为技术有限公司 | method and device for data transmission by using multi-polarization code |
CN105099618A (en) * | 2015-06-03 | 2015-11-25 | 香港中文大学深圳研究院 | Decoding method based on physical network coding and corresponding data processing method |
CN105141322B (en) * | 2015-09-16 | 2018-09-07 | 哈尔滨工业大学 | A kind of part and method based on polarization code SC decodings |
CN106877973B (en) * | 2015-12-10 | 2020-04-14 | 华为技术有限公司 | Method for processing polarization code and communication equipment |
CN106899379B (en) * | 2015-12-18 | 2020-01-17 | 华为技术有限公司 | Method and communication device for processing polarization code |
CN106452460B (en) * | 2016-09-21 | 2018-02-02 | 华中科技大学 | A kind of polarization code and the error correction/encoding method of duplication code cascade |
EP3364542A4 (en) * | 2015-12-23 | 2019-04-03 | Huazhong University of Science and Technology | Error correction coding method based on cascading of polar codes and repetition codes or multi-bit parity check codes |
CN105680883B (en) * | 2015-12-23 | 2017-11-14 | 华中科技大学 | A kind of polarization code and the error correction/encoding method of more bit parity codes cascade |
CN105743621B (en) * | 2016-02-02 | 2019-03-26 | 北京邮电大学 | HARQ signal sending, receiving method and device based on polarization code |
CN107124188B (en) * | 2016-02-24 | 2020-08-07 | 华为技术有限公司 | Encoding method, decoding method, encoding device and decoding device for polarization code |
WO2017176309A1 (en) * | 2016-04-08 | 2017-10-12 | Intel Corporation | Polar codes for harq transmissions |
EP3444984B1 (en) | 2016-05-10 | 2022-02-23 | Huawei Technologies Co., Ltd. | Data transmission method, data receiving method, transmission apparatus, and receiving apparatus |
CN107437976B (en) * | 2016-05-25 | 2021-02-12 | 华为技术有限公司 | Data processing method and equipment |
WO2018018370A1 (en) | 2016-07-25 | 2018-02-01 | Qualcomm Incorporated | Methods and apparatus for constructing polar codes |
CN107666370B (en) | 2016-07-29 | 2023-09-22 | 华为技术有限公司 | Encoding method and apparatus |
CN106253913B (en) * | 2016-07-29 | 2019-02-22 | 山东科技大学 | The block encoder of polarization code and its coding method |
CN107733562B (en) | 2016-08-12 | 2021-02-23 | 上海诺基亚贝尔股份有限公司 | Method and device for encoding and decoding polarization code |
US10425186B2 (en) * | 2016-09-12 | 2019-09-24 | Mediatek Inc. | Combined coding design for efficient codeblock extension |
CN107819545B (en) * | 2016-09-12 | 2020-02-14 | 华为技术有限公司 | Retransmission method and device of polarization code |
CN107835063B (en) | 2016-09-14 | 2023-10-20 | 华为技术有限公司 | Information transmission method, transmitting terminal equipment and receiving terminal equipment |
US10644829B2 (en) | 2016-09-15 | 2020-05-05 | Huawei Technologies Co., Ltd. | Method and apparatus for encoding data using a polar code |
WO2018083647A1 (en) * | 2016-11-03 | 2018-05-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Systems and methods for rate-compatible polar codes for general channels |
CN109039545B (en) | 2016-12-28 | 2021-01-01 | 上海朗帛通信技术有限公司 | Method and equipment in UE (user equipment) and base station for channel coding |
US10348328B2 (en) | 2017-01-06 | 2019-07-09 | At&T Intellectual Property I, L.P. | Reducing control channel overhead using polar codes |
CN108288969B (en) | 2017-01-07 | 2021-12-21 | 华为技术有限公司 | Method and apparatus for encoding and decoding data |
WO2018152694A1 (en) * | 2017-02-22 | 2018-08-30 | Qualcomm Incorporated | Mutual-information based recursive polar code construction |
WO2018126496A1 (en) | 2017-01-09 | 2018-07-12 | Qualcomm Incorporated | Bit allocation for encoding and decoding |
US10523369B2 (en) * | 2017-01-09 | 2019-12-31 | Qualcomm Incorporated | Mutual-information based recursive polar code construction |
CN108365850B (en) * | 2017-01-26 | 2022-02-11 | 华为技术有限公司 | Encoding method, encoding device, and communication device |
CN112910471A (en) | 2017-02-03 | 2021-06-04 | 华为技术有限公司 | Data processing method and device |
WO2018145284A1 (en) * | 2017-02-09 | 2018-08-16 | 南通朗恒通信技术有限公司 | Terminal for channel codes, and method and device in base station |
WO2018148963A1 (en) * | 2017-02-20 | 2018-08-23 | Qualcomm Incorporated | Polarization weight calculation for punctured polar code |
CN110612738A (en) * | 2017-03-03 | 2019-12-24 | 索克普拉科学与工程公司 | Generalized polarization code |
CN108574493B (en) * | 2017-03-10 | 2021-12-24 | 华为技术有限公司 | Data processing method and device |
CN108631942B (en) * | 2017-03-24 | 2024-08-27 | 华为技术有限公司 | Encoding method, decoding method, device and equipment |
CN108880737B (en) * | 2017-05-10 | 2020-08-14 | 华为技术有限公司 | Polar code construction method, device and network equipment |
CN108880566B (en) * | 2017-05-15 | 2020-08-25 | 华为技术有限公司 | Polar code transmission method and device |
CN108964834B (en) * | 2017-05-23 | 2020-10-23 | 华为技术有限公司 | Data transmission method, chip, transceiver and computer readable storage medium |
CN109150199B (en) * | 2017-06-17 | 2024-06-25 | 华为技术有限公司 | Interleaving processing method and device for polarized Polar codes |
CN109150384B (en) * | 2017-06-27 | 2020-11-17 | 华为技术有限公司 | Method and device for coding polarization code |
CN109286468B (en) * | 2017-07-20 | 2022-08-09 | 中兴通讯股份有限公司 | Method and device for selecting bit positions of polarization codes and computer equipment |
CN109309503B (en) * | 2017-07-28 | 2022-05-10 | 华为技术有限公司 | Polar code encoding method and device |
BR112020001893A2 (en) * | 2017-08-04 | 2020-07-28 | Qualcomm Incorporated | efficient interleaver designs for polar codes |
MX2020004329A (en) | 2017-11-16 | 2020-08-03 | Lg Electronics Inc | Pbch transmitting method and transmitting device, and pbch receiving method and receiving device. |
CN110752891B (en) * | 2018-07-24 | 2022-04-29 | 中兴通讯股份有限公司 | Polar code decoding method and device, storage medium and electronic device |
TWI765204B (en) * | 2019-12-31 | 2022-05-21 | 國立中正大學 | Generation method of interleaved polar codes and interleaved polar coder used therein |
CN113541878B (en) * | 2020-04-14 | 2022-10-28 | 华为技术有限公司 | Data processing method, device and equipment |
CN111970086B (en) * | 2020-07-15 | 2021-08-06 | 北京邮电大学 | Method and device for constructing polarization code under correlated Rayleigh block fading channel |
CN113810156B (en) * | 2021-09-10 | 2023-11-03 | 中国人民解放军63921部队 | Method and system for resisting interception of communication |
CN114614835B (en) * | 2022-03-23 | 2024-05-17 | 浙江大学 | Polarization code BP decoding method suitable for underwater acoustic communication |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101552607A (en) * | 2008-03-31 | 2009-10-07 | 凌力尔特有限公司 | Method and system for bit polarization coding |
CN101902312A (en) * | 2010-06-21 | 2010-12-01 | 中兴通讯股份有限公司 | Method and system for acquiring multi-precision channel information |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7310379B2 (en) * | 2002-12-30 | 2007-12-18 | Motorola, Inc. | Polarization state techniques for wireless communications |
WO2007106460A2 (en) * | 2006-03-13 | 2007-09-20 | Interdigital Technology Corporation | One bit digital quadrature modulator |
-
2011
- 2011-04-15 CN CN 201110095258 patent/CN102164025B/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101552607A (en) * | 2008-03-31 | 2009-10-07 | 凌力尔特有限公司 | Method and system for bit polarization coding |
CN101902312A (en) * | 2010-06-21 | 2010-12-01 | 中兴通讯股份有限公司 | Method and system for acquiring multi-precision channel information |
Non-Patent Citations (4)
Title |
---|
.2010,1-5页. * |
Goela,N. et al.On LP decoding of polar codes.< * |
Goela,N. et al.On LP decoding of polar codes.<IEEE CONFERRENCE PUBLICATIONS>.2010,1-5页. |
IEEE CONFERRENCE PUBLICATIONS> * |
Also Published As
Publication number | Publication date |
---|---|
CN102164025A (en) | 2011-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102164025B (en) | Coder based on repeated coding and channel polarization and coding/decoding method thereof | |
CN104539393B (en) | A kind of source coding method based on polarization code | |
CN101039119B (en) | Encoding and decoding methods and systems | |
CN103684477B (en) | Generation method and generation device for mixed polar code | |
CN101103533B (en) | Encoding method | |
US7421032B2 (en) | Serial concatenation of interleaved convolutional codes forming turbo-like codes | |
CN107395319B (en) | Code rate compatible polarization code coding method and system based on punching | |
CN103746708A (en) | Method for constructing Polar-LDPC concatenated codes | |
Williamson et al. | Variable-length convolutional coding for short blocklengths with decision feedback | |
CN114157309B (en) | Polar code decoding method, device and system | |
EP3443677B1 (en) | Communication device and communication method using polar codes | |
CN108055044A (en) | A kind of cascade system based on LDPC code and polarization code | |
US20130283119A1 (en) | Method and Apparatus for Elementary Updating a Check Node During Decoding of a Block Encoded with a Non-binary LDPC Code | |
KR100651847B1 (en) | Encoding and decoding apparatuses and methods of turbo code using multiple circular coding | |
CN112332985A (en) | Quantum key distribution data negotiation method and system based on LDPC-Polar joint coding | |
Chandesris et al. | On puncturing strategies for polar codes | |
KR102277758B1 (en) | Method and apparatus for decoding in a system using binary serial concatenated code | |
CN109194336B (en) | Method, system and device for coding and decoding cascade Spinal code | |
CN108023679B (en) | Iterative decoding scaling factor optimization method based on parallel cascade system polarization code | |
Pfister | A brief introduction to Polar codes | |
CN108880748B (en) | Coding and decoding method of rateless Spinal code based on Latin square matrix | |
Almeida et al. | Random puncturing for secrecy | |
CN106571891A (en) | Fountain multiple access method | |
US8325850B2 (en) | System and method for digital communications with unbalanced codebooks | |
Su et al. | Error rate analysis for random linear streaming codes in the finite memory length regime |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130605 Termination date: 20140415 |