Design of Rate-Compatible Parallel Concatenated Punctured Polar Codes for IR-HARQ Transmission Schemes

: In this paper, we propose a rate-compatible (RC) parallel concatenated punctured polar (PCPP) codes for incremental redundancy hybrid automatic repeat request (IR-HARQ) transmission schemes, which can transmit multiple data blocks over a time-varying channel. The PCPP coding scheme can provide RC polar coding blocks in order to adapt to channel variations. First, we investigate an improved random puncturing (IRP) pattern for the PCPP coding scheme due to the code-rate and block length limitations of conventional polar codes. The proposed IRP algorithm only select puncturing bits from the frozen bits set and keep the information bits unchanged during puncturing, which can improve 0.2–1 dB decoding performance more than the existing random puncturing (RP) algorithm. Then, we develop a RC IR-HARQ transmission scheme based on PCPP codes. By analyzing the overhead of the previous successful decoded PCPP coding block in our IR-HARQ scheme, the optimal initial code-rate can be determined for each new PCPP coding block over time-varying channels. Simulation results show that the average number of transmissions is about 1.8 times for each PCPP coding block in our RC IR-HARQ scheme with a 2-level PCPP encoding construction, which can reduce half of the average number of transmissions than the existing RC polar coding schemes.


Introduction
Polar codes, proposed by Arikan [1], are the first class of structured channel codes that can provably achieve the capacity of the binary-input discrete memoryless symmetric channels via a low-complexity successive cancellation (SC) decoder [2][3][4][5][6].The encoding and decoding complexity of polar codes are O(Nlog 2 N), where N is the block length [7,8].Furthermore, in [9,10], Ido Tal and Niu Kai have independently derived a successive cancellation list (SCL) decoding algorithm, which can achieve maximum likelihood decoding performance with decoding complexity O(LNlog 2 N), where L is the size of the list.In addition, by adding a few extra bits of cyclic redundancy check (CRC) to the transmitted bits, polar codes with an SCL decoding algorithm are comparable with state-of-the-art low-parity parity check (LDPC) codes and Turbo codes [11].Because of their good performance and low complexity, polar codes have been selected for use in the upcoming fifth-generation (5G) communication systems [12][13][14][15].
In general wireless communication scenarios in future 5G systems, flexible and adaptive transmission techniques are required due to the time-varying nature of wireless channels [16][17][18].
One approach is to have several pairs of different code-rate encoders and decoders to adapt to the channel variations [19].However, this requires extra coding complexity.
As an alternative, a popular solution to compensate for channel state variations is incremental redundancy hybrid automatic repeat request (IR-HARQ) [20][21][22], where the parity bits are sent in an incremental fashion depending on the quality of the time-varying channel.In this way, the rate-compatible (RC) codes are well-suited for the IR-HARQ scheme to address the scalable code-rate requirement, which can be implemented with a single encoder/decoder pair.Therefore, if decoding is not successful at a particular rate, then the receiver can request only the additional parity bits from the transmitter, instead of the full set of parity bits of the code with a lower rate.
Although polar codes can achieve the capacity of any binary memoryless symmetric channel, which is natural to be applied to IR-HARQ transmission schemes [23], their RC constructions are not in general capacity-achieving due to the limitation of the block length of conventional polar codes being restricted to a power of two.
In general, a family of RC polar codes typically obtained by puncturing, where the set of parity bits of a code with a higher rate is a subset of the set of parity bits of a code with a lower rate.The study of puncturing patterns for polar codes to obtain arbitrary block lengths and code-rates are considered in [24][25][26][27].However, puncturing of polar codes incurs a loss of performance, and the performance of these punctured codes are worse than the conventional polar codes even if they have the same length and code rate.Authors in [28] proposed an efficient polar coding scheme for optimizing jointly the puncturing patterns and the set of information bits of the polar code, and showed that it outperformed the LDPC codes defined in WiMAX standard.Moreover, the puncturing patterns in [25][26][27][28] are optimized according to the set of information bits, these methods cannot be used to design a family of RC punctured codes for IR-HARQ, which requires the same information set that should be used for all punctured codes from a mother code in the family.Consider the heuristic search algorithm presented in [24], which developed a good puncturing pattern for a fixed information set.Therefore, in order to determine an optimal RC puncturing patterns, one needs to consider the trade-offs between complexity and reliability [29][30][31], which is still an open problem.
Recently, Refs.[32,33] have proposed RC polar-like codes that are provably capacity-achieving over any class of a degraded family of channels.Both solutions take advantage of the nested property of polar codes for degraded channels, where the transmitter keeps sending additional code bits of a mother code to the receiver until a decoding succuss is announced.Then, the receiver can decode the whole block through a sequential decoding procedure.However, due to the block length and code-rate limitation of polar codes, both constructions of RC polar codes can achieve the capacity only for a sequence of rates that satisfy a certain relationship.Furthermore, these RC coding schemes can be used only when the family of channels over which the transmission takes place is ordered by degradation; otherwise, the nested property does not hold.
Therefore, we develop an IR-HARQ transmission scheme based on a family of RC polar codes named parallel concatenated punctured polar (PCPP) codes in this paper.The PCPP coding scheme are optimized for a sequence of successively degraded channels and used for our IR-HARQ transmission scheme, for which the main ideas are exploited from concatenated polar coding construction that can be decoded by a sequence of parallel polar decoders [33].The main contribution and novelty of this paper can be summarized as follows:

•
We investigate an improved random puncturing (IRP) pattern for the PCPP coding scheme to obtain a sequence of nested encoding functions in a PCPP coding block transmission, for which the set of parity bits of a higher code-rate polar code is a subset of the set of parity bits of a lower code-rate polar code for a PCPP coding block IR-HARQ transmission.The proposed IRP algorithm only selects puncturing bits from the frozen bits set and keeps the information bits unchanged during puncturing, which can achieve 0.2-1 dB decoding performance improvement more than the existing random puncturing (RP) algorithm.

•
To realize multiple blocks transmission over a time-varying channel, we develop an RC IR-HARQ transmission scheme based on PCPP codes, where Refs.[32,33] were only optimized in a single block transmission case.By analyzing the overhead of the previous successful decoded PCPP coding block in our IR-HARQ scheme, the optimal initial code-rate can be determined for each new PCPP coding block over time-varying channels.Simulation results show that the average number of transmissions is about 1.8 times for each PCPP coding block in our RC IR-HARQ scheme with a 2-level PCPP encoding construction, which reduces half of the average number of transmissions than the existing RC polar coding schemes.
The remainder of this paper is organized as follows.In Section 2, we present some preliminaries of polar codes and rate-compatibility.In Section 3, we introduce our IRP algorithm that limits the selection of puncturing patterns on the set of frozen bits.Then, we propose our RC PCPP coding scheme for IR-HARQ transmission in Section 4. In Section 5, the optimal initial code-rate is analyzed for multiple RC PCPP coding blocks for IR-HARQ schemes over time-varying channels.The simulation results and comparisons for the proposed scheme and existing schemes are presented in Section 6.Finally, Section 7 concludes the paper with some remarks and suggestions of further research work.

Polar Codes
Polar codes are proposed based on the phenomenon of channel polarization: N polarized sub-channels {W (i) N } (i = 1, 2, ..., N) can be obtained by channel combining and splitting operation on N independent discrete memoryless channels (DMCs).In this work, the most reliable K sub-channels will be selected by a Density Evolution (DE) algorithm [29] to transmit information sets and the rest of the sub-channels will be used to transmit frozen sets, where K is the number of information bits.
Polar codes can be uniquely determined by three parameters C(N, R, A), where N = 2 m , m > 0 is the block length, R = K/N is the code-rate and K-element subset A ⊂ {1, 2, ..., N}, where K =| A | and (N − K) =| A c |.We refer to this set as the information set, and the complementary set A c is referred to as the frozen set.Let u = (u 1 , u 2 , ..., u N ) denote an information vector of size 1 × N. The K information bits are placed in those elements of u corresponding to the set A, and N − K frozen bits (deterministic values, typically zeros) are placed in u corresponding to the complementary set A c .The codeword x corresponding to an information vector u A ⊂ u to be transmitted is then generated by where G N is the generator matrix, B N is an N × N permutation matrix that acts as a bit-reversal operator, F 2 = 1 0 1 1 is a kernel of the polarizing transformation and F ⊗n 2 is the n-th Kronecker power of F 2 .

Successive-Cancellation (SC) Decoding
Arikan proposed a Successive cancellation (SC) decoding algorithm for polar codes [1], the SC decoder generates the estimate ûi of i-th bit based on the previous (i − 1) estimates of ûi−1 = ( û1 , û2 , ..., ûi−1 ) and the channel output y N = (y 1 , y 2 , ..., y N ), and we denote that y j i = (y i , y i+1 , ..., y j−1 , y j ) for 1 ≤ i ≤ j ≤ N. The transition probabilities W (i) N (y N , ûi−1 |u i ) are used to define the N binary-input coordinate channels W (i) N , which is denoted as follows: where (y N , ûi−1 ) and u i denote the output and input of W (i) N , respectively.X and W N (y N |u N ) denote the input and transition probabilities of synthesized channel W N after the channel combining phase [1].Then, the log likelihood ratio (LLR) for the i-th bit is calculated by ûi = 0, L where N (y N , ûi−1 ) is defined as Accordingly, each LLR can be calculated as follows: where ûi o and ûi e denote the sub-vectors consisting of elements of ûi with odd and even indices, and ⊕ denotes modulo-2 addition.According to the initial values, L In addition, the belief propagation (BP) decoding algorithm for polar codes is also proposed in [1], which can outperform the SC algorithm with higher complexity O(tN log 2 N), where t is the number of BP decoding iterations.
The most effective polar decoding algorithm is the successive-cancellation list (SCL) decoding algorithm, which is proposed in [9,10] as an upgrade version of the SC algorithm.SCL can be regarded as a joint optimization method of the SC algorithm and the maximum likelihood (ML) algorithm [34].In the SCL decoding process, source bit is not decoded immediately at each step, instead of finding a maximum of l candidate paths.For each source bit u i , the SCL algorithm doubles the number of decoding paths by pursuing both u i = 0 and u i = 1 options, and then preserves the most likely l paths in a list and discards others.When all the source bits are traversed, the most reliable path is chosen as the output of the decoder.The complexity of SCL decoding is O(lNlog 2 N).
The simple successive cancellation (SSC) [35] is proposed to decrease the decoding complexity of the SC algorithm.The successive cancellation stack (SCS) [36] is proposed to reduce the complexity of SCL in some conditions.The SCL decoding can combine with cyclic redundancy check (CRC) in a concatenated coding fashion to further improve the performance of polar codes [11], which substantially outperformed the state-of-art turbo and LDCP codes.

Rate-Compatible Polar Codes
Let {W 1 , W 2 , ..., W J } denote a family of J channels.If their respective capacity is I(W 1 ) > I(W 2 ) > ... > I(W J ), we call that a sequence of successively degraded channels [37] and it is referred as I(W 1 ) I(W 2 ) ... I(W J ).A family of rate-compatible (RC) polar codes {C(N, R i , A i )}| i∈{1,2,...,J} can be designed for such degraded channels where their respective information sets are such that A 1 ⊇ A 2 ⊇ ... ⊇ A J , which is called nested property.Each polar code for W i has the same block length N and with code-rates R 1 > R 2 > ... > R J and each R i = I(W i ).
Li, B. et al. [32] and Hong, S.-N.et al. [33] proposed two RC polar-like coding schemes.In both schemes, the sender first transmits the code block C(N, R 1 , A 1 ) with a predetermined maximum rate R 1 .If the decoding is successful at the receiver, this block is successfully transmitted and the procedure ends; otherwise, an error message (NACK) is fed back to the sender, and the received data is stored in the buffer and waits for decoding with further transmission data blocks.In the second transmission, the code block C(N, R 2 , A 2 ) with rate R 2 = R 1 /2 will be transmitted.The second code block is constructed by the information bits that were put on the indices A 1 \ A 2 in the first transmission, and these information bits are now put on the indices A 2 , and rest are frozen bits.Here, A 1 \ A 2 represents the relative complement of A 2 in A 1 .
The transmission will be stopped until the k-th code block C(N, R k , A k ) is decoded successfully, where R k = R 1 /k and the information bits are those with the indices A (k−1) \ A k in all of the previous transmissions, and the length of the frozen bits is N − |A c k |.After the k-th code block C(N, R k , A k ) is decoded successfully, then the receiver can decode the previous buffered code block in a backward decoding strategy according to the nested property.The decoded bits A k will be used as frozen bits to help decode the (k − 1)-th polar code block . Then, the code-rate of the (k − 1)-th code block is reduced to R k .Therefore, the k − 1-th code block can be decoded.Likewise, all the previous buffed (k − 1) code blocks can be decoded backwards after (k − 1) times decoding and all the A 1 information bits are recovered.
Though these schemes can provide a simple way to construct a family of RC codes with the degraded rates R, R/2, R/3, ..., we find it is unable to achieve arbitrary rates in [32], and the puncturing scheme in [25] caused serious performance loss, and the information bits may be punctured and the nested property does not hold.Moreover, both of the schemes lack introduction of how to measure the reliabilities of the subchannels without any channel information in the first transmission.Thus, we need to address these problems in our new scheme in this paper.

Improved Random Puncturing Algorithm Polar Codes
To break the limitation of the block length of the polar codes, which is restricted to a power of two in practical communication systems, an effective way is puncturing.Let p = (p 1 , p 2 , ..., p N ) ∈ {0, 1} N denote the puncturing pattern, and p i = 0 indicate that the i-th coded bit will be punctured.Ref. [31] has investigated the impact of puncturing on a given information set, and proved that the overall system performance depends on the performance of both the punctured and the unpunctured (mother) code, which are further constrained by a joint optimization of both p and {C(N, R i , A i )}| i∈{1,2,...,J} .
Let N M and R M denote the block length and code-rate of the mother polar code, [N M ] p and [R M ] p denote the block length and code-rate of the punctured polar code, respectively.A punctured polar code with block length [N M ] p can be obtained by puncturing N M − [N M ] p bits from a mother code with block length N M , which is equivalent to moving N M − [N M ] p columns and N M − [N M ] p rows from generation matrix G N .In order to ensure that the puncturing matrix is reversible [26], the indices of the moved columns vectors i are the same as the puncturing positions, and the indices of the puncturing rows vector are j = ∏(i), where ∏(•) is the bit-reversal function.Figure 1 shows how to construct a polarizing matrix when N M = 8, [N M ] p = 6.If the puncturing codewords are x 1 and x 2 , then the 1st, the 2nd column and the 1st and the 5th row should be moved from generation matrix G 8 .
Recall the encoding process in Equation ( 1), it can be rewritten as where u A c denotes the frozen part of source block u, G N (A) is the sub-matrix of G N formed by the row with indices in A, and G N (A c ) is defined in the same fashion.We can identify from Equation ( 6) that the random puncturing algorithms allow the chance to puncture some important information bits, which will lead to a block error [38], and the simulation result will be shown in Section 6.On the other hand, the same information set should be used for all punctured codes in a family of RC codes.
Let a mother polar code with block length N M and the code-rate be R M , and the punctured code is with block length [N M ] p .The IRP algorithm is briefly described as follows:

System Model
Base on a family of the above RC punctured polar codes, we can construct our parallel concatenated punctured polar (PCPP) codes {C(N i , R i , A (i) i )}| i∈{1,2,...,J} over any sequence of successively degraded channels W 1 W 2 ... W J to transmit K information bits.Their information sets {A (i) i } are nested and the block length N i and the corresponding code-rate R i for each PCPP coding block are satisfied where K = N 1 R 1 is equal to the number of the information bits in the PCPP codes.In addition, for each block length N i , we can use our IRP algorithm to construct a sequence of nested punctured polar j )} J j=i with rates {R i , R i+1 , ..., R J }, and the length of the information bits in each punctured code block is the same to satisfy The RC PCPP coding scheme for IR-HARQ transmission is described as follows.In the first transmission, the sender transmits the code block 1 ) while carrying all the K information bits.If the first transmission fails, the received data will be stored and the second code block 2 ) will be transmitted.The information bits located at the indices A (1) 2 of the first block should be put at the current information set A (2) 2 and encoded, where A (i) j is the information set that consists of the N i R j most reliable indices when the block length is N i .If the second transmission also fails, the third block C(N 3 , R 3 , A 3 ) will be constructed by the information bits located at the indices A (1) 3 of the first block and the information bits located at indices A (2) 3 of the second block.Continuously, the transmission will be stopped if the decoding succeeds after the k-th block Then, we could decode the previous blocks backward to recover all of the K information bits as well as the decoding of the RC polar codes in Section 2.3.
In the following, we will give a more detailed explanation of the main idea through a 3-level RC PCPP coding scheme as shown in Figure 2. In this case, a information set of 12 bits will be transmitted through three transmissions and a 3-level PCPP code block is needed to encode where with the parameters 1 ) for the 1st transmission, as shown in Figure 2a, where u 12 = {u 1 , u 2 , ..., u 12 } are the information bits.When the 1st transmission fails, the 2nd PCPP coding block 2 ) will be sent, where N 2 = 8 can be calculated according to Equation (7), and the information bits are

Decoded outputs
Step 1 Step 2 Step 3 C A u10 10 u11 11 u12 u9 9 frozen bits 1 u1 u2 u3 u4 u5 u6 u7 u8 frozen bits 2 u3 3 u4 u1 u2 frozen bits C (1) 3 1 1 ( 16, , ) C (1) 1 3 ( 16, , ) (2) 2 1 (8, , ) Assuming the 2nd transmission also fails in this example, the sender performs the 3rd transmission with N 3 = 24, for which the block length is not satisfy power of two and can not be obtained by polar encoder directly.Then, we use the IRP algorithm to construct the 3rd PCPP coding block.In addition, to avoid the block error caused by puncturing too many bits, we should do our best to minimize the number of puncturing bits.Hence, we choose a mother polar code with block length N M = 32, and the number of information bits in the 3rd transmission can be calculated as N 3 R 3 = 6; then, the code-rate of the mother code is R M = 3/16.The 3rd polar code C(N 3 , R 3 , A 3 ) has been punctured eight bits from the mother code, and the information bits in A (3) 3 are {u 1 , u 2 , u 5 , u 6 , u 7 , u 8 }.Then, the sender finishes all three transmissions of the 3-level RC PCPP coding blocks.
As shown in Figure 2b, the backward decoding process begins when the 3rd PCPP coding block can be decoded successfully.
Step 1: the receiver starts by decoding the 3rd PCPP coding block C(N 3 , R 3 , A 3 ) and recovers the information bits {u 1 , u 2 , u 5 , u 6 , u 7 , u 8 }, which can be used to decode the other two previously received PCPP coding blocks that were stored in the buffer.
Step 2: according to the nested property, the decoded bits {u 1 , u 2 } are regarded as frozen bits in 2 ), and the 2nd PCPP coding block turn to a C(N 2 , R 3 , A 3 ) coding block, where the rate 2nd PCPP coding block is reduced to R 3 .Then, the remaining information bits {u 3 , u 4 } can be decoded successfully.
Step 3: the information bits {u 1 , u 2 , u 3 , u 4 , u 5 , u 6 , u 7 , u 8 } in the two previously decoded PCPP coding block are regarded as frozen bits in C(N 1 , R 1 , A 1 ), to decode the remaining information bits {u 9 , u 10 , u 11 , u 12 } with the code-rate also being reduced to R 3 .Therefore, all of the 12 information bits have been decoded through the 2 times backward decoding.
According to the above analysis, it is worth noting that, although the RC PCPP coding scheme can achieve arbitrary rates and block lengths, the coding complexity needs to be optimized.First, assume that K information bits are transmitted successfully after k time transmissions and the sender has been transmitting k-level PCPP coding blocks; then, there are k pairs of encoders and decoders that are needed to construct the k-level PCPP codes, which lead to a complex system structure.The key to addressing this problem is by considering the continuous block transmission over time-varying channels, where the last successive transmission of the PCPP coding blocks can help the sender to determine the optimization coding parameters for the next data block encoding in the first transmission.We will discuss this optimization RC IR-HARQ transmission scheme in detail in the following.

Rate-Compatible IR-HARQ Transmission Scheme Based on PCPP Codes
In this section, we design a RC IR-HARQ transmission scheme based on PCPP codes, to transmit multiple data blocks continuously over a time-varying channel.In our RC IR-HARQ transmission scheme, a channel capacity estimation is fed back to the sender after each PCPP coding block is successfully transmitted.Then, an optimal initial code-rate is determined by the sender for the next transmission.The optimization method for determining the coding parameters of each 1st PCPP coding block is as follows.

Initial Code-Rate and Number of Transmissions of the RC IR-HARQ Scheme
A general method of constructing RC IR-HARQ transmission scheme for transmitting multiple data blocks over a time-varying channel is described as follows.Assuming the first data block is encoded by the PCPP coding scheme with the initial code-rate R 1 (the rate of 1 )), after k transmissions the receiver can be decoded successfully and the final rate is R k .Then, a simple analysis of the number of transmissions corresponding to the different initial code-rates for the second data block 1 ) is shown in Table 1.Obviously, in a continuous data block transmission over a time-varying channels scenario, R k is closer to the real channel capacity than R 1 , which leads to a simpler structure of PCPP codes as well as less transmissions.Therefore, the key to simplifying the RC IR-HARQ scheme is to choose an optimal initial code-rate that is close to the time-varying channel capacity I(W).However, the exact I(W) is unavailable for the sender in a practical wireless system.
Let [R k , R k−1 ) denote a capacity interval after the n-th data block is transmitted successfully and and R k−1 is the code-rate of the last PCPP coding block that cannot be decoded.Then, the initial code-rate of C n+1 (N 1 , R 1 , A 1 ) for the (n + 1)-th data block can be chosen according to [R k , R k−1 ) for the time-varying channel.Similarly, we can get such interval after the transmission of each data block and choose an optimal rate according to the interval for the next data block.The detail of the optimization method for determining the initial code-rate for the 1st PCPP coding block of RC IR-HARQ transmission scheme is given in the next subsection.

Optimization Method for the 1st PCPP Coding Block of the RC IR-HARQ Transmission Scheme
As analyzed above, an estimation interval of the channel capacity can be obtained after each data block is transmitted successfully in our RC IR-HARQ transmission scheme.Here, let [R 1 k , R 1 k−1 ) denote the capacity interval after the 1st block is transmitted successfully and 1 ) for the 2nd data block can be chosen according to U ) denote the capacity interval after the n-th data block is transmitted successfully, and I (n) (W) denote the corresponding channel capacity and In a practical time-varying wireless system, the estimation error of the real channel state information is hard to eliminate.However, our optimization method for the 1st PCPP coding block of RC IR-HARQ transmission scheme can work well, and we will discuss the affection of the estimation error in the following.
First, let [I min , I max ] denote the variation range of the time-varying channel capacity that can be obtained from the statistical information of the time-varying channel; ∆R denotes the difference of the code-rates between any two adjacent PCPP coding blocks; k ) is the k-th PCPP coding block in the n-th block transmission, where the receiver begins the backward decoding with the k-th received PCPP coding block; j=k is a sequence of nested punctured polar codes, where p N k j = (p 1 , p 2 , ..., p N k ) ∈ {0, 1} N k is the j-th puncturing pattern and the mother code is Recall the variation range of the time-varying channel capacity [I min , I max ].Then, our optimization method for choosing the initial code-rate of the (n + 1)-th data block U ) can be distinguished into three possible cases, which are illustrated in Figure 3. U as shown in Figure 3a.Then, the optimal initial code-rate for the (n If the time-varying channel capacity increases, and the channel capacity satisfies Hence, a 2-level PCPP code for the (n + 1)-th block can be constructed with rates R L , and two time transmissions can ensure the data block delivery, and we have at the end of this data block transmission.In particular, if U , the (n + 1)-the data block with the initial code-rate R U PCPP coding block can be transmitted successfully in one time transmission.Else, if the time-varying channel capacity decreases, the channel capacity satisfies Similarly, we then need to construct the 2nd PCPP coding block with rate R L , and this can be decoded by receiver.Therefore, a 2-level PCPP codes for the (n + 1)-th data block is needed to construct with rates R L , and the final state is L and the maximum channel capacity satisfies I max ≤ R (n) U as shown in Figure 3b, then, the optimal initial code-rate for the If the time-varying channel capacity increases, and the channel capacity satisfies U , similar to the previous case, a 2-level PCPP code for the (n + 1)-th data block needs to be constructed with rates R L to successfully deliver the data block in two time transmissions with U ) for the next data block transmission.In addition, if U and the initial code-rate for the (n + 1)-th data block is R , the data block can be delivered in one time transmission.
Else, if the channel capacity decreases, we can distinguish two subcases: if the channel capacity satisfies R (n) , the construction of the (n + 1)-th data block is the same as in Case 1, which is a 2-level PCPP code with rates R L are higher than the channel capacity, until the 3rd PCPP coding block with the code-rate R L − ∆R is transmitted, and the receiver can begin the backward decoding.Therefore, a 3-level PCPP codes for the (n + 1)-th data block needs to be constructed, and 3c, then the optimal initial code-rate for the (n + 1)-th block is I max , which is obtained by puncturing a mother code C n+1 (N 1 , R U , A

).
In this case, when the channel capacity increases, the channel capacity can increase to U as the initial code-rate for the (n + 1)-th block, the (n + 1)-th data block can be transmitted successfully in one time transmission.However, if we do so, we will have R U , which is decreasing the efficiency of the channel use.Therefore, the sender in Case 3 needs to construct a punctured polar code C n+1 (N 1 , I max , A If the channel capacity increases, we can distinguish three subcases: If I (n+1) (W ) = I max , the (n + 1)-th data block with the initial code-rate R (n+1) 1 = I max PCPP coding block can be transmitted successfully in one time transmission, and the feedback channel capacity interval is U can transmit the (n + 1)-th data block successfully in two time transmissions with U ) for the next data block transmission.In addition, puncturing does not need extra encoders and decoders, and the transmission in this subcase only needs one pair of encoder and decoder.Last, if U , then a 3-level PCPP codes for the (n + 1)-th data block needs to be constructed with code-rate R L , respectively.Furthermore, the data delivery is finished in three time transmissions with two pairs of encoders and decoders.
Else, if the channel capacity decreases, similarly, two subcases can be distinguished: if the channel , the (n + 1)-th data block with a initial code-rate R (n+1) 1 = I max 2-level PCPP codes can be transmitted successfully in two time transmissions as well as the above subcase in Case 3. Else, if U , then the sender needs to construct 3-level PCPP codes for the (n + 1)-th data block transmission, with code-rate R L , respectively.Furthermore, the final state feedback to the sender is In summary, in our RC IR-HARQ transmission scheme, the main idea to determine an optimal initial code-rate for the PCPP coding block is according to the capacity interval feedback from the last successful data block transmission.If the initial code-rate lower than I min , the PCPP coding block can be transmitted successfully in one time transmission, but it will be suboptimal if the channel capacity increases in the next several data blocks transmission.If we choose an initial code-rate larger than I max , then the number of transmission may be larger than 2. As analyzed above, in most situations, a 1-/2-level PCPP coding construction can reliably transmit the data blocks by using our optimal initial code-rate method over a time-varying channel.

Parameter Optimization
a. Rate difference ∆R and the variation range of the time-varying channel [I min , I max ] In Section 5.2, we analyzed the optimal initial code-rate for the PCPP coding block in our RC IR-HARQ transmission scheme over a time-varying channel in three different cases, where the key parameters of our design method are dependent on the rate difference ∆R and the variation range of the time-varying channel [I min , I max ].The complete characterization of the optimal initial code-rate with these two parameters in Section 5.2 are given in Table 2. b.Number of punctured bits P Recall the Case 3 in Section 5.2, where we need to construct a punctured polar code Our IRP algorithm has limited the puncturing pattern to avoid selecting from the information bits set, such that we have R j [N M ] p = R k N k and the number of punctured bits P is calculated as increase Case 2: R

Performance of the Improved Random Puncturing Algorithm
In this subsection, we present Monte Carlo simulation results to evaluate the performance of our IRP algorithm over a binary-input additive white Gaussian noise (BI-AWGN) channel with antipodal signaling ±1, and other system parameters are provided in Table 3.The bit error rate (BER) and frame error rate (FER) performance of our IRP algorithm, the random puncturing (RP) algorithm [25], the stop-tree puncturing (STP) algorithm [25], and the reliability-Type I algorithm [38] are shown in Figure 4. Obviously, we can observe that by avoiding information bit punctured, the IRP algorithm significantly outperforms the other three algorithms, and the STP algorithm provides the worst BER and FER performance due to the requirement of a BP decoding algorithm instead of the SCL decoding algorithm [8].
When the punctured polar code-rate is R j = 0.6, the performance of punctured codes under IRP algorithm obtains a 0.2 dB gain at BER 10 −4 and 0.2 dB at FER 10 −2 more than the RP algorithm.
With the increasing of the punctured polar code-rate, the advantages of our proposed IRP algorithm increases.When the punctured polar code-rate is R p = 0.7, the IRP algorithm outperforms the RP algorithm and obtains a 1 dB gain at BER 10 −4 and 0.3 dB at FER 10 −2 , respectively.Moreover, the RP algorithm suffers from an error-floor when the punctured polar code-rate is R p = 0.8, where our IRP algorithm can completely avoid the problem.

Performance of the RC IR-HARQ Transmission Scheme
In this subsection, we simulate the performance of our RC IR-HARQ transmission scheme, the Monte Carlo simulation result of the average number of transmissions of data blocks with the PCPP coding scheme is present.The system parameters are the same as provided in Table 3, and the rest of the simulation parameters are shown in Table 4.The simulation result of the average number of transmissions is shown in Figures 5 and 6, where the horizontal axis is the index of data blocks, and lines with the marker "•" denotes the results of our proposed scheme, while the marker " * " represent the results of the RC polar-like (RCP) scheme in [33].

Parameters Value
The initial code-rate of the first data block R Initial channel capacity I (1) (W ) in Figure 6 0.3, 0.4, 0.6, 0.7 Rate difference of the Case 1 in Figure 6 Case 1: ∆R 1 = 0.2 Figure 5 shows the average number of transmissions of our RC IR-HARQ scheme and the RCP scheme for a sequential of 100 data blocks transmission in 3 cases with the initial channel capacity I (1) (W ) = 0.5.Our RC IR-HARQ scheme can reduce half of the average number of transmissions than the RCP scheme as shown in Figure 5a, and also significant less than the RCP scheme in Figure 5b,c.Because all the initial code-rates of the data blocks in the RCP scheme are equal to R (1) 1 = 0.8, the average number of transmissions for the sequential data blocks is substantially equal to the first data block, and the successful transmission of previous data block does not help enhance the efficiency of the next ones.Therefore, the average number of transmissions in the RCP scheme is about 2.8 times in Case 1 as shown in Figure 5a, and 3.5 times in Case 2 as shown in Figure 5b, and 2.7 times in Case 3 as shown in Figure 5c.Average number of transmissions Average number of transmissions In contrast with the RCP scheme, our RC IR-HARQ scheme is more adaptable to the continuously data blocks transmission.The PCPP codes for the 1st data block are with the initial code-rate R

Index of data blocks
(1) 1 = 0.8 PCPP coding block; then, the optimal initial code-rate of the PCPP codes for the continuously data block transmission can be determined in different cases as discussed in Section 5.2.Therefore, after the 1st data block transmission, the average number of transmissions of our RC IR-HARQ scheme is rapidly decreased compared to the RCP scheme.The average number of transmissions in the RC IR-HARQ scheme is about 1.8 times in Case 1, as shown in Figure 5a, and 2.4 times in Case 2, as shown in Figure 5b, and 2.5 times in Case 3, as shown in Figure 5c, which is verified by our theoretical analysis, as shown in Table 2.It is worth noting that our RC IR-HARQ scheme has the best performance in Case 1, which means the accurate statistical information of the time-varying channel can help the PCPP encoding and decoding in the RC IR-HARQ transmission scheme, and it can help joint optimization with the channel estimation.
Moreover, we simulate the performance with different initial channel capacity I (1) (W ) in Case 1 as shown in Figure 6, where I (1) (W ) is 0.3, 0.4, 0.6, and 0.7, and other simulation parameters are the same as is given in Table 4.The average number of transmissions in the RCP scheme are 3.8 times, 3.1 times, 2.2 times, and 1.8 times in Figure 6a-d, respectively.Obviously, the average number of transmissions of the RCP scheme is strongly dependent on the difference between R (1) 1 and the I (1) (W ), as shown in Figure 6a-d.
It is worth noting that the average number of transmissions in both schemes is about 1.8 times when I (1) (W ) = 0.7, as shown in Figure 6d.Because the initial code-rates in Case 1 is R (1) 1 = 0.8, and ∆R 1 = 0.2 for both schemes, when I (1) (W ) = 0.7, both schemes can finish the transmission in no more than two time transmissions.
In our RC IR-HARQ scheme, the average number of transmission in Figure 6 are all about 1.8 times under different I (1) (W ), which proves that our scheme can perform well over the time-varying channel if the sender has statistical information on the channel.Furthermore, as the average number of transmissions is less than the RCP scheme, the encoder and decoder pairs are also less in the sender and receiver, which is important in practical wireless communication systems.RCP Scheme [33], I (1) (W)=0.3RC IR-HARQ Scheme, I (1) (W)=0.3

Conclusions
In this paper, we proposed a RC IR-HARQ transmission scheme based on PCPP codes to support data transmission over a time-varying channel.First, we designed an improved random puncturing algorithm that limited the puncturing patterns in the frozen bits of polar codes, which can provide RC polar codes for practical wireless communication systems, and gain about 0.2-1 dB decoding performance better than the existing puncturing schemes.Then, considering the continuous block transmission over a time-varying channels scenario, by utilizing analyzing the overhead of the previous successful decoded PCPP coding block in our RC IR-HARQ scheme, the optimal initial code-rate can be determined for each new PCPP coding block over time-varying channels.Simulation results show that the average number of transmissions is about 1.8 times for each PCPP coding block in our RC IR-HARQ scheme with a 2-level PCPP encoding construction, if the sender has the accurate statistical information of the time-varying channel.Our proposed scheme is independent of channel state and can be flexible over the time-varying channel.Furthermore, if the statistical information of the channel is not accurate, the PCPP codes can achieve joint optimization with a channel estimation algorithm for future work.

Figure 1 .
Figure 1.An example of puncturing from a generation matrix, where N M = 8, and [N M ] p = 6.

Stage 1 : 2 :
Initialize the values in a puncturing pattern p and set as all ones; Stage The encoder randomly selects N M − [N M ] p bits in the frozen bits set ∏(A c ) for puncturing, and the corresponding indices in p are flipped to zeros.

Case 1 :
the minimum channel capacity satisfies R (n) L ≤ I min and the maximum channel capacity satisfies I max ≤ R (n)

Figure 3 .
Figure 3. Illustration of our optimization method in different cases: (a) R (n) of nested punctured polar codes, where p N k j = (p 1 , p 2 , ..., p N k ) ∈ {0, 1} N k is the j-th puncturing pattern.Let P = | p| denote the number of punctured bits and meet the conditions that

Figure 4 .
Figure 4.The comparison of polar codes with punctured rate 0.6, 0.7, 0.8 under different puncturing algorithms in the BI-AWGN channel, where the block length of the mother code is N M = 1024 and the code-rate is R M = 0.5: (a) BER; (b) FER.

Table 1 .
The relationship between the initial code-rate and the number of transmissions over a time-varying channel.

Table 2 .
The relationship between the optimal initial code-rate of the PCPP coding block and two key parameters.

Table 3 .
Simulation parameters of the puncturing algorithms.

Table 4 .
Simulation parameters of the IR-HARQ transmission scheme.