Improving Polar-Coded SCMA System by Information Coupling and Parity Check

In this paper, the uplink information-coupled polar-coded sparse code multiple access (PC-SCMA) system is proposed. For this system, we first design the encoding method of systematic joint parity check and CRC-aided (PCCA) polar code. Using the systematic PCCA-polar code as base code, the partially information-coupled (PIC) polar code is constructed. Then, a joint iterative detection and successive cancellation list (SCL)-decoding receiver is proposed for the PC-SCMA system. For the receiver, the coupled polar decoder’s extrinsic messages are calculated by the Bayes rule and soft cancellation (SCAN) algorithm. Based on the extrinsic information transfer (EXIT) idea, the PIC PCCA-polar code is optimized. Simulation results demonstrate that the PIC PCCA-PC-SCMA system outperforms the other polar (or LDPC) coded SCMA systems at various code rates and channel configurations. Additionally, compared with an uncoupled PC-SCMA system with SCL decoder, the complexity of PIC PCCA-PC-SCMA is reduced at a high Eb/N0


Introduction
With the rapid increasing demand of the future mobile wireless network, new requirements are put forward for the communication technologies and the applications. The typical application scenarios of the fifth generation (5G) wireless networks consist of enhanced Mobile BroadBand (eMBB), massive Machine Type Communications (mMTC) and Ultra-Reliable and Low Latency Communications (URLLC). For 5G scenarios, the non-orthogonal multiple access (NOMA) has been proposed to increase the system throughput and accommodate massive communication connectivity. Moreover, as opposed to orthogonal multiple access (OMA), the NOMA has low transmission latency and signaling cost. Recently, many NOMA schemes were proposed for 5G, such as the sparse code multiple access (SCMA) [1], pattern division multiple access (PDMA) [2], multi-user shared access (MUSA) [3], low-density signatures (LDS) multiple access [4], and so on. Among the available NOMA schemes, SCMA is a coding-based multiplexing scheme, which can achieve an obvious increase in spectral efficiency compared to OMA. Its codes are mapped to multi-dimensional sparse codebooks for transmission. Due to the sparsity of the codebook, the message passing algorithm (MPA) [5] with moderate complexity can be used for multi-user detection (MUD).
Actually, the quality of service (QoS) of NOMA system can be realized by using effective channel coding. Turbo code and low-density parity-check (LDPC) code are studied in many existing NOMA systems for the error correction [6,7]. Furthermore, according to the results in [7], the new radio (NR) LDPC-coded NOMA schemes have almost the same block error rate (BLER) performance as the corresponding Turbo-coded NOMA schemes.

•
The uplink information-coupled PC-SCMA system is proposed. At the transmitter, channel coding, SCMA mapping, and transmission are all performed based on CB. When the entire TB is received, the receiver performs iterative detection and decoding.

•
The PCCA-polar code in system form is designed. Then, every two consecutive systematic PCCA-polar code blocks are connected by information coupling technology to form a new type of PIC polar code. For windowed decoder, the list algorithm based on parity check can provide more accurate extrinsic messages for the coupling CBs. In addition, the windowed decoding algorithm is improved for the requirement of iterative system. • An extrinsic messages construction algorithm of coupled polar decoder is proposed. This algorithm enables the coupled polar decoder to exchange extrinsic messages with the MPA detector, and achieving iterative detection and decoding. • A joint iterative detection and SCL decoding algorithm (JIDS) based on variable list size is designed. During the iteration, those CBs who failed CRC verification improved the performance in the next iteration by increasing the list size, while others maintained a smaller list size. In addition, when all CBs are correctly decoded, the iteration is stopped immediately.

•
The extrinsic information transfer (EXIT) idea is used to optimize the weight factor of extrinsic messages construction algorithm and coupling ratio of PIC PCCA-polar code.
The rest of this article is organized as follows. In Section 2, the system model of uplink information-coupled PC-SCMA is described. In Section 3, the characteristics of systematic PCCA-polar code are analyzed, and the corresponding encoding algorithm is introduced. Then, the construction method of PIC PCCA-polar code is proposed. In Section 4, a joint iterative detection and SCL decoding algorithm with variable list size is proposed to reduce the complexity. The extrinsic messages of coupled polar decoder are constructed and applied to the receiver. Based on EXIT idea, the transfer characteristics of various polar decoders are analyzed, and the PIC PCCA-polar code is optimized in Section 5. Section 6 shows the simulation results and the complexity comparison. Finally, conclusions are reached in Section 7. To read this article better, we summarize the abbreviations in Table 1.  Figure 1 shows the uplink information-coupled PC-SCMA system. In this system, a TB consists of L c mutually coupled CB. For CB k, 1 ≤ k ≤ L c , the information bits of V users U k = u 1,k , u 2,k , · · · , u V,k are encoded to C k = c 1,k , c 2,k , · · · , c V,k by information coupling, CRC, and systematic encoder. For user v, its information bits and coded bits are denoted as u v,k = u 1 v,k , u 2 v,k , · · · , u K v,k and c v,k = c 1 v,k , c 2 v,k , · · · , c N v,k , respectively. Then, each user's codeword is interleaved by the random interleaver, which is denoted by  Figure 1 shows the uplink information-coupled PC-SCMA system.    Assuming the V users multiplexed over M (M < V) orthogonal resources. Then, every Q = log 2 (M) bits of d v,k are mapped to a J-dimensional complex codeword s v,k = s 1 v,k , s 2 v,k , · · · , s J v,k by SCMA mapper, and the number of SCMA codewords is L k = N/Q. Thus, the overloading factor of SCMA is defined as λ = V/J and the structure of an SCMA code can be represented by a J × V binary mapping matrix F. As shown in Figure 2, a SCMA factor graph with six variable nodes (VNs) and four function nodes (FNs) Sensors 2020, 20, 6740 5 of 21 is illustrated, where VNs and FNs represent the users and resources, respectively. The corresponding mapping matrix is denoted as

System Model
(1) N denotes the variance of Gaussian noise. At the receiver, the received symbols l y are decoded by the MPA detector first. The output extrinsic messages of the MPA detector are in the form of log-likelihood ratio (LLR), and de- Then, as the a priori information, v z is feed into the coupled polar decoder. The output extrinsic messages v e L is then interleaved and entered into the MPA detector as a priori information. After several iterations, the receiver converges and outputs each user's decoded information bits . The information-coupled polar coding is described in Section 3. In addition, the CRC is used not only for SCL decoding, but also for constructing extrinsic messages and iterative reception. The detailed algorithm is given in Section 4. Figure 2. SCMA factor graph with six users and four resources.

Design of Partially Information-Coupled Polar Code based on Parity Check
PIC codes are constructed by sharing a few systematic information bits between every two consecutive codes blocks. Following [20], the PIC polar code constructed by systematic CA-polar code achieved considerable coding gains over the uncoupled code. In this section, we focus on further improving the performance of the PIC polar code. The iterative detection and decoding are performed after the whole TB is obtained by the receiver. Thus, the number of SCMA codeword Supposing the channel gains matrix between the base station and user v at the l-th block is denoted as where h l,j v represents the channel gain between user v and resource j at the l-th block, and H l v is a diagonal matrix. Thus, at the receiver, the l-th received symbols can be described as where 1 ≤ l ≤ L, y l = y l,1 , y l,2 , · · · , y l,J T , and s l v = s l,1 v , s l,2 v , · · · , s l,J v T . n l = n l,1 , n l,2 , · · · , n l,J T is a complex additive white Gaussian noise (AWGN) vector with the mean vector 0 and covariance matrix N 0 I, and N 0 denotes the variance of Gaussian noise.
At the receiver, the received symbols y l are decoded by the MPA detector first. The output extrinsic messages of the MPA detector are in the form of log-likelihood ratio (LLR), and de-interleaved to Then, as the a priori information, z v is feed into the coupled polar decoder. The output extrinsic messages L v e is then interleaved and entered into the MPA detector as a priori information. After several iterations, the receiver converges and outputs each user's decoded information bits {û 1 ,û 2 , · · · ,û V }, whereû v = û v,1 , . . . ,û v,L c . The information-coupled polar coding is described in Section 3. In addition, the CRC is used not only for SCL decoding, but also for constructing extrinsic messages and iterative reception. The detailed algorithm is given in Section 4.

Design of Partially Information-Coupled Polar Code based on Parity Check
PIC codes are constructed by sharing a few systematic information bits between every two consecutive codes blocks. Following [20], the PIC polar code constructed by systematic CA-polar code achieved considerable coding gains over the uncoupled code. In this section, we focus on further improving the performance of the PIC polar code.

Systematic PCCA-Polar Code
According to 3GPP TS 38.212, based on the idea of "using parity check bits for polar decoding," PCCA-polar code has been adopted for the uplink control channel coding since it prevents premature deletion of the correct candidate path in list decoding. For short-length packet, PCCA-polar code Sensors 2020, 20, 6740 6 of 21 exhibits superior performance compared to CA-polar code. The performance of PIC polar code should be further enhanced by using PCCA-polar code as the base code. However, PCCA-polar code, in its standard form, is a non-systematic code. In other words, the information bits do not appear as part of the codeword transparently. Therefore, the traditional PCCA-polar code cannot be directly used to construct the PIC polar code.
Since any linear code can be turned into a systematic code, [28] gives encoding and decoding methods for the systematic polar code that preserves the same frame error rate. However, this method does not work for all types of polar codes, such as PCCA-polar code and DCA-polar code. In this subsection, we give the encoding method of systematic PCCA-polar code as follows.
For systematic PCCA-polar code, the encoding is performed as Figure 3. The information block (including CRC bits) is defined as b = {b 1 , b 2 , . . . , b K }, and A denotes the information indices, where |A| = K . As presented in [8], the recursive construction of the generator matrix can be defined , where N m is the mother code length and ⊗ denotes the Kronecker product.
G AA is the submatrix of G consisting of the array of elements G i,j with i, j ∈ A, and similarly for the other submatrices. The module with parameter G AA can implement the mapping b → b by computing b = bG AA . Then, by inserting parity check bits p and frozen bits 0 into b , a = a 1 , . . . , a N m can be obtained. The indices of parity check bits are denoted by P c and |P c | = n pc . Thus, the indices of information with assistant bits (including CRC bits and parity check bits) can be represent by A = A ∪ P c , where A ⊂ {1, . . . , N m } corresponds to the K + n pc most reliable indices (skipping shortened or punctured positions) and a A = b , p . Then, the basic polar encoding is performed by x = aG.
Since G AA and G A A are lower-triangular with ones on the diagonal, they are invertible (in fact, the inverse of G AA and G A A are themselves). Thus, It can be seen, the mother code x is systematic. Finally, c is obtained by rate matching. Since A is chosen by skipping shortened or punctured positions, c is also systematic code. According to the preceding description, to ensure that x A = b, the choice of P c is the key issue.

Systematic PCCA-Polar Code
According to 3GPP TS 38.212, based on the idea of "using parity check bits for polar decoding," PCCA-polar code has been adopted for the uplink control channel coding since it prevents premature deletion of the correct candidate path in list decoding. For short-length packet, PCCA-polar code exhibits superior performance compared to CA-polar code. The performance of PIC polar code should be further enhanced by using PCCA-polar code as the base code. However, PCCA-polar code, in its standard form, is a non-systematic code. In other words, the information bits do not appear as part of the codeword transparently. Therefore, the traditional PCCA-polar code cannot be directly used to construct the PIC polar code.
Since any linear code can be turned into a systematic code, [28] gives encoding and decoding methods for the systematic polar code that preserves the same frame error rate. However, this method does not work for all types of polar codes, such as PCCA-polar code and DCA-polar code. In this subsection, we give the encoding method of systematic PCCA-polar code as follows.
For systematic PCCA-polar code, the encoding is performed as Figure 3. The information block (including CRC bits) is defined as , and denotes the information indices, where   K . As presented in [8], the recursive construction of the generator matrix can be defined as can be get. It can be seen, the mother code x is systematic. Finally,  c is obtained by rate matching. Since  is chosen by skipping shortened or punctured positions,  c is also systematic code. According to the preceding description, to ensure that  xb , the choice of c is the key issue.  First, we give two theorems as follow.  First, we give two theorems as follow.
Theorem 1. Denote g i as the i-th row of G A A and 1 i . as the indices of ones in g i .
Theorem 2. Denote A i as the i-th element of A , g i as the i-th row of G A A and 1 i as the indices of ones in g i . Assume A i ∈ P c and j ∈ 1 i , if and only if A j ∈ P c , polar code is systematic.
Thus, the systematic code could not be obtained.
For example, let N m = 16, A = {8, 10, 11, 12, 13, 14, 15, 16}, and the corresponding submatrix G A A is shown in Figure 4. If A i = A 4 is chosen as an element of P c , the corresponding position set of ones can be expressed as 1 4 = {2, 3, 4}. According to Theorem 1, the relationship 1 2 = {2} ⊂ 1 4 and 1 3 = {3} ⊂ 1 4 can be deduced. Following Theorem 2, A 2 and A 3 must be the elements of P c . Thus, when P c,1 = {A 2 , A 3 , A 4 } is chosen as the parity check indices, the sequence Figure 4, the parity check bits . From Figure 4, the parity check bits    7  1 1 1 1 1 1 1 According to Theorems 1 and 2 and 3GPP TS 38.212, given A and n pc , Algorithm 1 is proposed to choose P c .

Partially Information-Coupled PCCA-Polar Code
In [20], the authors have constructed a PIC polar code based on systematic CA-polar code. Multiple systematic polar codes blocks are concatenated to form a large code frame by sharing a few information bits between every two consecutive CBs. More specifically, dummy bits are inserted into the first CB and the last CB to terminate the frame. To improve the PIC polar code, in this subsection, we introduce a new type of PIC polar code based on systematic PCCA-polar code. However, following the encoding method presented in [20], the dummy bits are punctured in the end, and the length of the last CB is different from other CBs. More importantly, the windowed decoding of TB will be terminated when a CB is error decoded. Thus, the un-decoded CBs could not supply the extrinsic message for iterative system, such as SCMA. Therefore, we propose a new construction and decoding method for our PIC PCCA-polar code as follows.
Let u = u 1 , u 2 , . . . , u L c denote the information sequence of a TB, where L c is the number of CBs,  Figure 5 shows the coupling relation between every two consecutive CBs.

Partially Information-Coupled PCCA-Polar Code
In [20], the authors have constructed a PIC polar code based on systematic CA-polar code. Multiple systematic polar codes blocks are concatenated to form a large code frame by sharing a few information bits between every two consecutive CBs. More specifically, dummy bits are inserted into the first CB and the last CB to terminate the frame. To improve the PIC polar code, in this subsection, we introduce a new type of PIC polar code based on systematic PCCA-polar code. However, following the encoding method presented in [20], the dummy bits are punctured in the end, and the length of the last CB is different from other CBs. More importantly, the windowed decoding of TB will be terminated when a CB is error decoded. Thus, the un-decoded CBs could not supply the extrinsic message for iterative system, such as SCMA. Therefore, we propose a new construction and decoding method for our PIC PCCA-polar code as follows. Let  Figure 5 shows the coupling relation between every two consecutive CBs.
Reliability from low to high  . Thus, the CBs have been coupled by sharing a few information bits between every two consecutive CBs. Then, for every CB, the coupled information block  k u is attached to the CRC bits and encoded by systematic PCCA-polar encoder as shown in Figure 6.
Parity Enc  . Thus, the CBs have been coupled by sharing a few information bits between every two consecutive CBs. Then, for every CB, the coupled information block  k u is attached to the CRC bits and encoded by systematic PCCA-polar encoder as shown in Figure 6.   In this scheme, dummy block is not transmitted, and coupled information blocks are only transmitted once even though each of them is shared by two consecutive CBs. Hence, the effective code rate of the PIC PCCA-polar code is  R K N , where N is the code length of CB. In addition, we In this scheme, dummy block is not transmitted, and coupled information blocks are only transmitted once even though each of them is shared by two consecutive CBs. Hence, the effective code rate of the PIC PCCA-polar code is R = K/N, where N is the code length of CB. In addition, we define δ = K c /K as coupling ratio of the proposed PIC PCCA-polar code, and the mother code rate is r = (K + K c )/N m .
In [20], the authors proposed a windowed decoding based on the look-back and go-back scheme for PIC polar code. The algorithm is divided into feed-forward decoding and feed-back decoding. When the k-th CB is decoded correctly in the feed-forward decoding, the (k−1)-th CB can be corrected by the perfect extrinsic messages of the k-th CB in feed-back decoding. This decoding scheme is also suitable for our PIC PCCA-polar code. However, since the iterative system requires complete extrinsic messages, subsequent CBs' decoding cannot be terminated even if there is a CB decoding error for our decoding scheme. The CBs with feed-forward decoding failure were corrected only once by feed-back decoding.

Joint Iterative Detection and SCL Decoding Receiver
In this section, the extrinsic message of the coupled polar decoder is constructed and the details of JIDS algorithm are presented.
In [17], the authors proposed a JIDD receiver for the uplink PC-SCMA system. The MPA detector outputs its extrinsic messages within one inner-loop iteration and directly as the input prior messages of SCAN decoder, and vice versa. The receiver only needs outer iterations and no inner iterations of constituent SCMA detector and SCAN decoder are needed. Since the performance of SCAN decoder is not ideal, the performance of the PC-SCMA system is limited. Therefore, this subsection proposes a JIDS algorithm for the PIC PC-SCMA system.
To better describe the algorithm, we define some notations as follows: • M g i →q j : The messages passing from the i-th function node g i to the j-th variable node q j .
• M q j →g i : The messages passing from the j-th variable node q j to the i-th function node g i .
• Q j : The set of function nodes that connect to variable node q j . • G i : The set of variable nodes that connect to function node g i .
• Q j \i : Excluding function node g i from the set of Q j .
• G i \ j : Excluding variable node q j from the set of G i .
• P s l v : The prior information of the l-th SCMA codeword for user v.

Update Function Nodes of MPA Detector
As described in Section 2, the iterative detection and decoding are performed after the whole TB's signal y 1 , . . . , y l , . . . , y L is obtained by the receiver. The function node g i of the MPA detector updates its information and pass it to its neighboring variable nodes. The messages passing from the i-th function node g i to the j-th variable node q j can be calculated by Then, the bits extrinsic message of the MPA detector can be expressed as where s l v q m v = x is the SCMA codewords set whose elements satisfy the mapping relationship

Updated a Priori Information of MPA Detector
The prior information of MPA detector is updated by the extrinsic messages of coupled polar decoder. In this subsection, we mainly focus on the SCL decoding algorithm of base polar code. Note that in iterative receiver, in order to iteratively exchange their messages between the MPA detector and channel decoder, they should be soft-input-soft-output. Therefore, the coupled polar decoder must reconstruct the soft output information that can be used for iteration. On the basis of LLR-based SCL algorithm [11], we introduce the construction of extrinsic messages of the SCL decoder and extend it to the coupled polar decoder.
For the k-th CB of user v, after the decoding of the last bit, the SCL decoder outputs the L o most likely pathâ l v,k and corresponding path metric P l v,k , 1 ≤ l ≤ L o . For each candidate path l , the corresponding codeword can be obtained by encoding the estimated sequenceâ l v,k .
In order to calculate the extrinsic messages, the path metric P l v,k is normalized as follows Then, the probability of the bit c i v,k can be written as Thus, for the mother code x k , by the Bayes rule, the extrinsic messages of the SCL decoder L v x,k = L v,1 x,k , . . . , L v,N m x,k can be calculated as With CRC aiding, if the path l passes the CRC detection, the sign of L v,i x,k is modified by We call the method described above a Bayes construction (BC) algorithm, which can be directly used in list decoder. But, the accuracy of the extrinsic message depends on the list size and the result of CRC check. When the list size is small and the check fails, the constructed extrinsic messages of SCL decoding by the BC algorithm are not accurate enough. Therefore, the hybrid construction (HC) algorithm can be used to construct the extrinsic messages of the SCL decoder. When the CRC check fails, the SCAN algorithm is used to construct the extrinsic message as follows.
Based on the SCAN algorithm, the extrinsic messages are calculated on the factor graph. For a N m -length polar mother code, the factor graph is composed of n + 1 = log 2 (N m ) + 1 columns, and every two adjacent columns comprise N m /2 processing elements (PEs) shown in Figure 7. The pair (i, j) refers to the i-th variable node at column j in the factor graph, where 1 ≤ i ≤ N m and 1 ≤ j ≤ n + 1. The left and right propagating messages of node (i, j) are denoted as L(i, j) and R(i, j), respectively.

 
From Figure 7b, the messages of each node are updated on a PE by the following recursive formulas: The left messages and right messages are passed toward the left and right direction of the factor graph, respectively. The L(i, n + 1) and R(i, 1) are respectively initialized by the prior LLR information z v,k and (13).
From Figure 7b, the messages of each node are updated on a PE by the following recursive formulas: L(i + N m /2, j) = L(2i, j + 1) + f (R(i, j), L(2i − 1, j + 1)), R(2i, j + 1) = L(i + N m /2, j) + f (R(i, j), L(2i − 1, j + 1)), (17) where f (·) is defined as For the details of the SCAN algorithm, we refer to [13]. Then, following [17], after one iteration of SCAN decoding, the extrinsic messages of mother code can be expressed as where R n+1 and L n+1 are the average values of R(i, n + 1) and L(i, n + 1), respectively. α is the weight factor. Finally, by the coding rules of PIC PCCA-polar code, the extrinsic messages of mother code L v x,k is punctured or shortened to L v e,k = L v,1 e,k , . . . , L v,N e,k . The flowchart of hybrid construction algorithm is given by Figure 8. Re-encoding the estimated codewords and normalized the path metrics by (8) and (9), respectively Re-encoding the estimated codewords and normalized the path metrics by (8) and (9), respectively Calculate the extrinsic messages of mother code by (10) ~ (12) Calculate the extrinsic messages of mother code by (10) ~ (12) Start Start N N Y Y

Rate-matching and coupled information puncturing
Rate-matching and coupled information puncturing

Update Variable Nodes of MPA Decoder
The variable nodes update their information when they receive the prior information   l v Ps , and then pass it to the neighboring function nodes. After this processing, the iteration between the MPA detector and coupled polar decoder is complete. The message can be updated by Although the coupled polar decoding provides better performance than SCAN algorithm, it also increases the complexity of decoding. For base polar code, the complexity of the SCL decoder is is the mother code length. Obviously, the complexity is proportional to the list size o L . Thus, the basic idea of reducing complexity is to keep the list size of each user's decoder as small as possible. We note that, in fact, when the channel conditions are good, the SCL decoder can decode correctly with a smaller list size. Therefore, a smaller list size min L is where q m v ∈ {0, 1}.

Update Variable Nodes of MPA Decoder
The variable nodes update their information when they receive the prior information P s l v , and then pass it to the neighboring function nodes. After this processing, the iteration between the MPA detector and coupled polar decoder is complete. The message can be updated by Although the coupled polar decoding provides better performance than SCAN algorithm, it also increases the complexity of decoding. For base polar code, the complexity of the SCL decoder is O L o N m log 2 (N m ) , where N m is the mother code length. Obviously, the complexity is proportional to the list size L o . Thus, the basic idea of reducing complexity is to keep the list size of each user's decoder as small as possible. We note that, in fact, when the channel conditions are good, the SCL decoder can decode correctly with a smaller list size. Therefore, a smaller list size L min is given to each CB at the beginning of the iteration and is maintained in subsequent iterations if it is decoded correctly. In other words, only those CBs that fail to decode increase the list size of the decoder in the next iteration. When all users decode correctly, the iterative processing is terminated. Additionally, a maximum list size L max is given to avoid excessive complexity. The list size L v,k of error CBs can be modified by Thus, we summarize the JIDS algorithm for PIC polar-coded SCMA system as Algorithm 3.

Optimization of Partially Information-Coupled Polar Code Based on EXIT Idea
In this section, the partially information-coupled polar code is optimized based on EXIT idea. The effects of weight factor α, impact of couple rate δ, and performance comparison of different code are analyzed based on transfer characteristics (TC) chart. Additionally, searching for the optimal value of α and optimization of couple rate δ for the PIC PCCA-polar code are performed in this section. We use the EXIT idea to guide our search for the optimal design δ-value, which is the key parameter of the PIC PCCA-polar code.

Transfer Characteristics of Base Polar Decoder
As shown in Figure 1, the MPA detector converts the channel information and the prior information into the extrinsic information, which is interpreted as the prior information of the coupled polar decoder. This messages passing process complies with "Turbo Principle," which is very common in iterative system. The EXIT chart can predict the behavior of the iterative decoder by solely analyzing the individual constituent decoders. The transmission characteristic curve of channel decoder reflects the relationship between its input mutual information and output mutual information. The output mutual information of channel decoder is corresponding to the input mutual information of MPA detector. Importantly, the higher the output mutual information of channel decoder is, the higher the input mutual information of MPA detector is, and the better the performance of SCMA system. Based on the EXIT idea, in this section, we focus on the design of PIC polar code by the TC chart.
We use I A to denote the mutual information between a prior information Z and BPSK-modulated symbols X and use I E to denote the mutual information between a prior information L e and BPSK-modulated symbols X, respectively. According to [29], Z can be seen as a Gaussian-distributed variable with the mean µ z = σ 2 z /2 and the variance σ 2 z . The conditional probability density function can be expressed as So the input mutual information I A can be calculated as follows [29] The output mutual information I E is denoted as Viewing I E as a function of I A , the extrinsic information transfer characteristics of polar decoder can be defined as Figure 9a,b shows the TC chart and CBER curves of uncoupled systematic PCCA-polar code with SCAN decoder over AWGN channel, respectively. Base polar code is constructed by Bhattacharyya parameter-bound method proposed in [8], weight factor α is taken from 0 to 1, and the number of out loop iterations is 5. The information bits length K = 100 and code rate R = 1/2. From Figure 9a, the TC curve is closer to the right, the better performance of decoder is (I E = 1 represents the largest output mutual information). As shown in Figure 9b, the best CBER performance is the decoder with α = 0.2, and its corresponding TC curve is also the rightmost in Figure 9a. In addition, both the TC chart and the CBER curves show that the decoders with α = 0.1, 0.3, and 0.4 have very similar performance. It can be seen, the performance of CBER is consistent with the analysis of TC chart. However, compared with the growth of the code length N, finding the optimal α-value based on TC chart analysis is less complex.
The extrinsic message of SCL decoder is constructed by HC algorithm in Section 4. In HC algorithm, when the CRC check fails, the SCAN algorithm is used to construct the extrinsic messages. Therefore, the iterative performance of the SCL decoder is also affected by the α-value in SCMA system. The transfer characteristics of uncoupled systematic PCCA-polar code with SCL decoder is given by Figure 10. From the figure, the optimal value of α is 0.2. decoder with .
  02, and its corresponding TC curve is also the rightmost in Figure 9a. In addition, both the TC chart and the CBER curves show that the decoders with  = 0.1, 0.3, and 0.4 have very similar performance. It can be seen, the performance of CBER is consistent with the analysis of TC chart. However, compared with the growth of the code length N, finding the optimal  -value based on TC chart analysis is less complex. The extrinsic message of SCL decoder is constructed by HC algorithm in Section 4. In HC algorithm, when the CRC check fails, the SCAN algorithm is used to construct the extrinsic messages.
Therefore, the iterative performance of the SCL decoder is also affected by the  -value in SCMA system. The transfer characteristics of uncoupled systematic PCCA-polar code with SCL decoder is given by Figure 10. From the figure, the optimal value of  is 0.2.

Optimization of Coupling Ratio  for PIC PCCA-Polar Code
In Section 3, we introduced a coupling ratio  , but did not explain what is the optimal value of the factor. In this subsection, we use the TC chart to analyze the impact of the factor  and guide our search for the optimal  -value. Factor  is taken from 0 to 1, the information bits length is set to K = 64, 100 and the code rate is R = 1/3, 1/2. Figure 11a, the curves with coupling ratio  = 0.2 and 0.3 are the rightmost, and have similar performance. For the coupled code, high coupling ratio corresponds to high decoding complexity (the higher base code rate). Thus, we can just choose  = 0.2 as the optimal value for PIC polar when K = 100 and R = 1/2. Similarly, when K = 64 and R = 1/3, we choose  = 0.3 as the optimal value for PIC polar based on Figure 11b.

Optimization of Coupling Ratio δ for PIC PCCA-Polar Code
In Section 3, we introduced a coupling ratio δ, but did not explain what is the optimal value of the factor. In this subsection, we use the TC chart to analyze the impact of the factor δ and guide our search for the optimal δ-value. Factor δ is taken from 0 to 1, the information bits length is set to K = 64, 100 and the code rate is R = 1/3, 1/2.
As shown in Figure 11a, the curves with coupling ratio δ = 0.2 and 0.3 are the rightmost, and have similar performance. For the coupled code, high coupling ratio corresponds to high decoding complexity (the higher base code rate). Thus, we can just choose δ = 0.2 as the optimal value for PIC polar when K = 100 and R = 1/2. Similarly, when K = 64 and R = 1/3, we choose δ = 0.3 as the optimal value for PIC polar based on Figure 11b.
Based on the previous optimization results, Figure 12 shows the transfer characteristics of PIC polar codes and uncoupled polar codes. The performance of uncoupled polar code with SCAN decoder is worst among other codes. At the same time, the performance of PIC PCCA-polar code is the best. Additionally, when the input mutual information is small, code blocks that are coupled to each other cannot exchange correct extrinsic messages, the output mutual information of PIC polar code (whether it's PCCA-based or CA-based) is smaller than that of the uncoupled polar code. Figure 11a, the curves with coupling ratio  = 0.2 and 0.3 are the rightmost, and have similar performance. For the coupled code, high coupling ratio corresponds to high decoding complexity (the higher base code rate). Thus, we can just choose  = 0.2 as the optimal value for PIC polar when K = 100 and R = 1/2. Similarly, when K = 64 and R = 1/3, we choose  = 0.3 as the optimal value for PIC polar based on Figure 11b. Based on the previous optimization results, Figure 12 shows the transfer characteristics of PIC polar codes and uncoupled polar codes. The performance of uncoupled polar code with SCAN decoder is worst among other codes. At the same time, the performance of PIC PCCA-polar code is the best. Additionally, when the input mutual information is small, code blocks that are coupled to each other cannot exchange correct extrinsic messages, the output mutual information of PIC polar code (whether it's PCCA-based or CA-based) is smaller than that of the uncoupled polar code.

Performance Evaluation
In this section, the simulation results are provided to evaluate the block (TB and CB) error rate performance and complexity of the uplink SCMA system over the AWGN channel and Rayleigh fading channel. Assuming there are six users multiplexed over four orthogonal resources, the overloading is 150%. The mapping matrix has already been given in (1), and the corresponding SCMA codebook is designed according to [30]. Base systematic polar code is constructed by Bhattacharyya parameter-bound method. For each user, the base code length is set to N = 192, 200, and the code rate is R = 1/3, 1/2. To ensure that systematic PCCA-polar code and CA-polar code have the same number of assistant bits, the CRC-8 with the generator polynomial       . For the base SCL decoder, the minimum and maximum list sizes are configured as min  4 L and max  32 L . Additionally, the rate-matching pattern is obtained according to the introduced method of [14]. As the comparative scheme, the LDPC encoder and rate-matching algorithm used in 3GPP TS 38.212 are employed, where the CRC bits are generated by CRC-11. In addition, the log-Belief Propagation (log-BP) algorithm with 30 inner-loop iterations is used for LDPC decoding. In the receiver, the MPA detection within one inner-loop iteration is employed for MUD, and the number of outer-loop iteration between the MPA detector and channel decoder is set to 5.

Block Error Rate Performance Comparison
As shown in Figures 13 and 14, we have compared the CBER performance of SCMA system with

Performance Evaluation
In this section, the simulation results are provided to evaluate the block (TB and CB) error rate performance and complexity of the uplink SCMA system over the AWGN channel and Rayleigh fading channel. Assuming there are six users multiplexed over four orthogonal resources, the overloading is 150%. The mapping matrix has already been given in (1), and the corresponding SCMA codebook is designed according to [30]. Base systematic polar code is constructed by Bhattacharyya parameter-bound method. For each user, the base code length is set to N = 192, 200, and the code rate is R = 1/3, 1/2. To ensure that systematic PCCA-polar code and CA-polar code have the same number of assistant bits, the CRC-8 with the generator polynomial g(x) = x 8 + x 2 + x + 1 and CRC-11 with the generator polynomial g(x) = x 11 + x 10 + x 9 + x 5 + 1 are used in PCCA-polar code and CA-polar code, respectively. The number of parity check bits n pc is set to 3. The weight factor α and coupling ratio δ are selected according to the values optimized in Section 5. The number of blocks in a TB and the window size of coupled polar decoder are set to L c = 10 and L w = 10. For the base SCL decoder, the minimum and maximum list sizes are configured as L min = 4 and L max = 32. Additionally, the rate-matching pattern is obtained according to the introduced method of [14]. As the comparative scheme, the LDPC encoder and rate-matching algorithm used in 3GPP TS 38.212 are employed, where the CRC bits are generated by CRC-11. In addition, the log-Belief Propagation (log-BP) algorithm with 30 inner-loop iterations is used for LDPC decoding. In the receiver, the MPA detection within one inner-loop iteration is employed for MUD, and the number of outer-loop iteration between the MPA detector and channel decoder is set to 5.

Block Error Rate Performance Comparison
As shown in Figures 13 and 14, we have compared the CBER performance of SCMA system with PIC polar codes, uncoupled polar codes, and LDPC code over AWGN and Rayleigh channels.
Sensors 2020, 20, x FOR PEER REVIEW  18 of 22 aggregated. Thus, with SCL decoding (for CB), the CBER performance of PIC PC-SCMA systems is worse than that of uncoupled PC-SCMA system. Similarly, we can obtain the same results from Figure 14. The TBER performance curves of SCMA system are also given by Figures 15 and 16. Obviously, we can get results similar to CBER performance. At a low 0 b EN, although wrong CB may easily cause continuous CB errors in a same TB, the look-back and go-back scheme can also be used to improve the probability of correct decoding once any CB is correctly decoding. PCCA-polar code uses parity check to improve the performance of the base code, thus achieving the goal of reducing TBER. Therefore, even at a low 0 b EN, PIC PCCA-PC-SCMA also maintains the best TBER performance. Table 2 shows the specific performance gains of PIC PCCA-PC-SCMA for various code rates and channel configurations at target CBER = 10 −3 and TBER = 10 −2 .  aggregated. Thus, with SCL decoding (for CB), the CBER performance of PIC PC-SCMA systems is worse than that of uncoupled PC-SCMA system. Similarly, we can obtain the same results from Figure 14. The TBER performance curves of SCMA system are also given by Figures 15 and 16. Obviously, we can get results similar to CBER performance. At a low 0 b EN, although wrong CB may easily cause continuous CB errors in a same TB, the look-back and go-back scheme can also be used to improve the probability of correct decoding once any CB is correctly decoding. PCCA-polar code uses parity check to improve the performance of the base code, thus achieving the goal of reducing TBER. Therefore, even at a low 0 b EN, PIC PCCA-PC-SCMA also maintains the best TBER performance. Table 2 shows the specific performance gains of PIC PCCA-PC-SCMA for various code rates and channel configurations at target CBER = 10 −3 and TBER = 10 −2 . From these figures, the PIC PCCA-PC-SCMA has the best performance at various code rate and channel configurations, e.g., over AWGN channel, when K = 100 and R = 1/2, the PIC CA-PC-SCMA achieves 0.28 dB coupling gain over the CA (SCL)-PC-SCMA at CBER = 10 −3 as shown in Figure 13a. In the early stage of each CB decoding, parity-check bits are used to correct errors and save the correct decoding path as far as possible. Therefore, PIC PCCA-polar code also achieved an additional 0.22 dB coding gain compared to PIC CA-polar code over SCMA system. Similarly, for the code rate-1/3, PIC PCCA-PC-SCMA can also obtain corresponding gain as shown in Figure 13b. However, at the same time, the performance of uncoupled CA-PC-SCMA based on SCAN decoding is the worst among other systems. Since error blocks cannot provide perfect extrinsic messages to adjacent blocks in a TB, adjacent CB can only be decoded at a higher code rate. In particular, in the lower E b /N 0 range, a wrong CB often causes continuous CB errors in a same TB, in other words, these errors are aggregated. Thus, with SCL decoding (for CB), the CBER performance of PIC PC-SCMA systems is worse than that of uncoupled PC-SCMA system. Similarly, we can obtain the same results from Figure 14.
The TBER performance curves of SCMA system are also given by Figures 15 and 16. Obviously, we can get results similar to CBER performance. At a low E b /N 0 , although wrong CB may easily cause continuous CB errors in a same TB, the look-back and go-back scheme can also be used to improve the probability of correct decoding once any CB is correctly decoding. PCCA-polar code uses parity check to improve the performance of the base code, thus achieving the goal of reducing TBER. Therefore, even at a low E b /N 0 , PIC PCCA-PC-SCMA also maintains the best TBER performance. Table 2 shows the specific performance gains of PIC PCCA-PC-SCMA for various code rates and channel configurations at target CBER = 10 −3 and TBER = 10 −2 .

Complexity Analysis
For a PC-SCMA system, the complexity (CB-based) can be given by I O Jd f M d f + LO N m log 2 (N m ) , where I is the average number of iterations of JIDS, d f is the degree of the SCMA function nodes and L is the average list size per iteration of CB (including feed-back decoding of PIC polar code). Additionally, the list size of the SCAN algorithm is treated as 1. Thus, the complexity of PC-SCMA system can be represented by the average number of iterations I and the average list size L, e.g., the complexity of all kinds of PC-SCMA systems for K = 100 and R = 1/2 over AWGN channel is summarized in Table 3. On the basis of JIDS algorithm, at a low E b /N 0 , since the high block error rate, a large number of CBs are decoded with large list size. From Table 2, compared with the uncoupled PC-SCMA with SCL decoder, PIC PCCA (or CA)-PC-SCMA has the higher complexity. Especially, the PIC CA-PC-SCMA system has the highest complexity among other PC-SCMA systems. At a high E b /N 0 , the probability that most CBs can be decoded with a smaller list size in the feed-forward decoding process increases. Therefore, the complexity of the PIC PCCA (or CA)-PC-SCMA system decreases gradually. In particular, with the help of parity check for the base code, PIC PCCA-SCMA can be decoded with fewer outer-loop iterations. Thus, with SCL decoder, the complexity of PIC PCCA-PC-SCMA is lower than that of uncoupled PC-SCMA. By the way, although the PC-SCMA presented in [17] has the lowest complexity, its performance is far from that of other PC-SCMA schemes.

Conclusions
In this paper, the uplink PC-SCMA system is improved by information coupling and parity check. The systematic PCCA-polar code is encoded as the base code of the PIC polar code. A low-complexity joint iterative detection and SCL decoding receiver is proposed for the SCMA system. The hybrid construction algorithm is designed to construct the extrinsic messages of coupled polar decoder. Based on EXIT idea, we have optimized the weight factor of extrinsic messages construction algorithm and coupling ratio of PIC PCCA-polar code. The simulation results show that, at various code rate and channel configurations, the PIC PCCA-PC-SCMA has the best performance in TBER and CBER. In addition, compared with uncoupled PC-SCMA with SCL decoder, the complexity of PIC PCCA-PC-SCMA is reduced at a high E b /N 0 .