Next Article in Journal
Piezoelectric Current Generator Based on Bismuth Ferrite Nanoparticles
Previous Article in Journal
PD-Impedance Combined Control Strategy for Capture Operations Using a 3-DOF Space Manipulator with a Compliant End-Effector
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

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

Key Laboratory of Universal Wireless Communications, Ministry of Education, Beijing University of Post and Telecommunications, Beijing 100876, China
*
Author to whom correspondence should be addressed.
Sensors 2020, 20(23), 6740; https://doi.org/10.3390/s20236740
Submission received: 27 October 2020 / Revised: 20 November 2020 / Accepted: 23 November 2020 / Published: 25 November 2020
(This article belongs to the Section Communications)

Abstract

:
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 E b / N 0

1. 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.
Polar code proposed by Arikan [8] is the first constructive code that provably achieves the symmetric capacity of binary-input memoryless channels (BMCs). In [8], Arikan proposed a hard-output successive cancellation (SC) decoder that achieved capacity in the limit of large block length; its performance with finite-length codes was less promising. Tal and Vardy proposed the successive cancellation list (SCL) algorithm whose performance is very close to that of a maximum likelihood decoder [9]. SCL decoding not only improves the block-error probability of polar code, but also enables one to use modified polar code constructed by concatenating a polar code with a cyclic redundancy check (CRC) code as an outer code [10,11]. The simulation results demonstrate that the short-block-size polar code with CRC-aided (CA) SCL has performance advantage over the corresponding LDPC code. Although all of these decoders offer better performance than the SC decoder, none provides the soft outputs essential for turbo-based receivers. Improving the performance of the SC decoder has been at the key of the related research while the generation of soft information. In [12], the belief propagation (BP) decoder is proposed to decode polar code. It has the advantages of having better performance than the SC decoder and providing soft outputs, but has very high storage and processing complexity. In [13], the authors developed a low-complexity soft-output version of the SC decoder called the soft cancellation (SCAN) decoder that produces reliability information for both the coded and message bits. The SCAN decoder achieves comparable performance with far less complexity and storage than the BP decoder. However, it cannot achieve the performance of SCL decoder with large list size. According to 3GPP TS 38.212 [14], polar code is elected as the standard coding technique for the control channel in support of the eMBB service, since it has an excellent error-correction capability based on SCL decoding, especially for short-length packet transmissions.
With the abundant research results of polar code, the application of polar code in NOMA system has also made progress. In [15], a polar-coded SCMA (PC-SCMA) was proposed, but there is no iteration between the MPA detector and the polar decoder. However, for practical implementations, the iterative detection between the multiuser detector and the channel decoder can improve the performance of the SCMA system. In [16], a three-stage channel transform structure of the polar-coded NOMA system was proposed, and a joint successive cancellation (JSC) detection and decoding scheme was designed. Although the JSC algorithm improves the performance of the system, it increases the processing latency. In [17], based on the joint factor graph of SCMA and polar code, the authors have proposed a joint iterative detection and decoding (JIDD) receiver based on SCAN algorithm. The JIDD without inner iterations has best performance when compared with the general iterative detection and decoding (IDD) scheme. It improves the performance of the polar-coded sparse code multiple access (PC-SCMA) system significantly while also saving the complexity costs. However, since the performance of SCAN decoder is not good enough, this JIDD receiver is not ideal. In particular, the performance of the PC-SCMA system is worse than that of LDPC-coded SCMA (LDPC-SCMA) at low code rate. In order to improve the performance of PC-SCMA, the design of the code’s structure and decoding algorithm are feasible.
One approach that leads to better performance is to exploit the benefits of long code through spatial coupling. Theoretically, an infinite long codeword chain can be constructed by coupling an infinite number of finite length code blocks (CBs) in a certain structure. For long data sequence transmission, a class of partially information-coupled (PIC) Turbo code [18] and PIC LDPC code [19] have been proposed. In these schemes, a transport block (TB) is segmented into several finite-length CBs under the practical decoding complexity and decoding latency constraints. Every two consecutive codes blocks in a TB are coupled by sharing a few information bits. Thus, PIC code can also be regarded as a class of spatially coupled code. PIC polar code was also constructed by systematic polar code in [20], and a windowed decoder based on CA-SCL algorithm is used for decoding. The TB error rate (TBER) results show that the PIC polar code achieves approximately 0.3 dB coding gain over the uncoupled counterparts for variable code rates. Importantly, the PIC polar code also outperforms the PIC Turbo code at a high E b / N 0 . Basis of this, in this paper, we consider improving the SCMA system by PIC polar code.
Though the code construction of PIC polar code is straightforward, it is very challenging to obtain the promised coding gain over SCMA system compared to [17]. First, the coding gain of PIC polar code proposed in [20] is limited. To achieve more coding gain, one straightforward approach is to improve the code block error rate (CBER) of each CB. In the 3GPP meetings, various “assistant bits + basic polar” schemes have been proposed. The idea of “using assistant bits for polar decoding” has been widely adopted, including CA-polar code [21], joint parity-check and CRC-aided (PCCA) polar code [22,23], Hash-CRC polar code [24], and distributed CRC-aided (DCA)polar code [25,26,27]. The various solutions differ in terms of number of assistant bits, their usage (for error detection and/or correction), positions, and values. Especially, the PCCA-polar code uses the parity check bits for error correction in SCL decoder and gets better performance than other codes. Simultaneously, the Hash-CRC polar code and DCA-polar code have comparable performance to the CA-Polar code. By the way, the systematic polar code that was used in [20] is CA-polar code. To improve the performance of PIC polar code, PCCA-polar code can be considered as the base code. However, the design of the PCCA-polar code in the systematic form must be resolved. Second, besides the feed-back decoding mechanism based on coupling information bits, the reason why the PIC polar code can obtain excellent performance is that it uses the SCL algorithm for the basic decoder. In iterative receiver, in order to iteratively exchange their messages between the constituent MPA detector and polar decoder, they must be soft-input-soft-output (SISO). Therefore, the hard-output decoding algorithms such as SCL cannot be directly applied to the iterative receiver. The calculation of the extrinsic messages of the coupled polar decoder remains to be resolved. Third, with the coupled polar decoder, increasing the basic decoder’s list size can improve the performance of the system, but it also increases the decoding complexity. On the premise of guaranteeing the performance, the complexity of the receiver should be reduced as far as possible.
On the basis of above discussing, the main contributions of this paper can be summarized as follows:
  • 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.

2. System Model

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 v , k 1 , u v , k 2 , , u v , k K } and c v , k = { c v , k 1 , c v , k 2 , , c v , k N } , respectively. Then, each user’s codeword is interleaved by the random interleaver, which is denoted by d v , k = Π ( c v , k ) .
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 v , k 1 , s v , k 2 , , s v , k J } 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) is illustrated, where VNs and FNs represent the users and resources, respectively. The corresponding mapping matrix is denoted as
F = [ 0 1 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 1 0 0 1 1 0 ] .
The iterative detection and decoding are performed after the whole TB is obtained by the receiver. Thus, the number of SCMA codeword s v = { s v , 1 , , s v , L c } = { s v 1 , , s v L } is L = L c N / Q . Supposing the channel gains matrix between the base station and user v at the l-th block is denoted as
H v l = [ h v l , 1 h v l , 2 h v l , J ] ,
where h v l , j represents the channel gain between user v and resource j at the l-th block, and H v l is a diagonal matrix. Thus, at the receiver, the l-th received symbols can be described as
y l = v = 1 V H v l s v l + n l ,
where 1 l L , y l = { y l , 1 , y l , 2 , , y l , J } T , and s v l = { s v l , 1 , s v l , 2 , , s v l , J } 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 z v = { z v , 1 , , z v , L c } for user v, where z v , k = { z v , k 1 , , z v , k N } . Then, as the a priori information, z v is feed into the coupled polar decoder. The output extrinsic messages L e v 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 { u ^ 1 , u ^ 2 , , u ^ V } , where u ^ v = { u ^ v , 1 , , u ^ 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.

3. 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.

3.1. 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 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 as G = [ 1 0 1 1 ] log 2 ( N m ) , where N m is the mother code length and denotes the Kronecker product. G A A 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 A A can implement the mapping b b by computing b = b G A A . 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 p c . 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 p c most reliable indices (skipping shortened or punctured positions) and a A = { b , p } . Then, the basic polar encoding is performed by x = a G . Since G A A and G A A are lower-triangular with ones on the diagonal, they are invertible (in fact, the inverse of G A A and G A A are themselves). Thus, x A = b G A A = b and x A = a A G A A can be get. 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.
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 . If j 1 i , there is 1 j 1 i .
Proof. 
Appendix A.  □
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.
Proof. 
According to Theorem 1, if j 1 i , the relation 1 j 1 i holds. Obviously, there is 1 j 1 i = 1 j . If A j P c , A j is an information index. By the transformation x A = a A G A A , the information bits { x A k , k 1 j } must be superimposed with parity bit a A i . 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 a A = { b 1 , p 1 , p 2 , p 3 , b 2 , b 3 , b 4 , b 5 } . From Figure 4, the parity check bits p = { a A 2 , a A 3 , a A 4 } do not affect the information bits { x A 1 , x A 5 , x A 6 , x A 7 , x A 8 } by transformation x A = a A G A A , in other words, x A = { x A 1 , x A 5 , x A 6 , x A 7 , x A 8 } = { b 1 , b 2 , b 3 , b 4 , b 5 } and x is systematic code. However, for P c , 2 = { A 3 , A 4 , A 5 } and a A = { b 1 , b 2 , p 1 , p 2 , p 3 , b 3 , b 4 , b 5 } , the information bit x A 2 is superimposed with parity bit p 2 = a A 4 , so x A = { x A 1 , x A 2 , x A 6 , x A 7 , x A 8 } = { b 1 , b 2 p 2 , b 3 , b 4 , b 5 } and x is not the systematic code.
According to Theorems 1 and 2 and 3GPP TS 38.212, given A and n p c , Algorithm 1 is proposed to choose P c .
Algorithm 1 Get parity check indices P c
Input: A and n p c .
Output: P c .
  1: Initialize: P c = Ø .
  2: Generate submatrix G A A and calculate the row’s weight W t = { W t 1 , , W t | A | } of G A A .
  3: w t = 1 .
  4: while | P c | < n p c do
  5: S = Ø .
  6: for i = 1 | A | do
  7: if W t i = w t then
  8: Get 1 i of g i .
  9: S = | 1 i S | .
10: if | 1 i | | S | = 1 then
11: update the set S = S { A i } .
12: end if
13: end if
14: end for
15: if n p c | P c S | < 0 then
16: Select n p c | P c | elements with the lowest reliability of S as set S .
17: update the set P c = P c S .
18: else
19: update the set P c = P c S .
20: end if
21: w t = w t + 1 .
22: end while
Finally, we can give the encoding method of systematic PCCA-polar code in Algorithm 2. The rate-matching pattern is generated according to 3GPP TS 38.212.
Algorithm 2 Systematic PCCA-polar encoding
Input: b , N m , A , n p c and rate-matching pattern , where | | = N e .
Output: c .
  1: Initialize: Set a p-length cyclic shift register y [ 0 ] , , y [ p 1 ] to 0, and a = 0 , where | a | = N m .
  2: Generate the generator matrix G .
  3: Get the information and CRC indices A = { A \ P c } , and generate the submatrix G A A .
  4: Calculate b = b G A A .
  5: for i = 1 N m do //PC bits generation [14]
  6: Cyclic left shift the register.
  7: If i A : set y [ 0 ] = a i y [ 0 ] .
  8: If i P c : set a i = y [ 0 ] .
  9: end for
10: Perform the basic polar coding to obtain mother code by x = a G .
11: Get systematic PCCA-polar codes c by rate-matching pattern .

3.2. 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, u k = { u k 1 , u k 2 , , u k K } corresponding to the k-th CB. Let A denote the information indices with length K + K c for the coupled information block u k . B = { B o , B e } expresses the coupling indices, where B o and B e correspond to the subset with odd and even indices of B , respectively. The indices of B o and B e in A are respectively denoted as B o and B e . Figure 5 shows the coupling relation between every two consecutive CBs.
For the first CB (k = 1), an all-zero dummy block with length K c is inserted into indices B o of u 1 , and get u 1 = { 0 , u 1 } . For 1 < k L c , the information bits that are on the indices B e of the (k−1)-th CB are inserted into the position B o of the k-th CB to obtain u k = { u k 1 , B e , u k } , where u k , B o = u k 1 , B e . 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 u k is attached to the CRC bits and encoded by systematic PCCA-polar encoder as shown in Figure 6. For 1 k L c , the sequence x k satisfies x 1 , B o = 0 and x k , B o = x k 1 , B e . Finally, x k , B o is punctured to obtain c k .
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.

4. 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 v l ) : The prior information of the l-th SCMA codeword for user v.

4.1. 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
M g i q j ( s v l ) = s t l , t { G i \ j } { P ( y l , j | s v l , s t l , t { G i \ j } ) t { G i \ j } M q t g i ( s t l ) } .
Then, the bits extrinsic message of the MPA detector can be expressed as
P e , MPA v , ( l 1 ) Q + m ( x ) = s v , x l { s v l | q v m = x } t Q j M g t q j ( s v , x l ) , 1 m Q .
where { s v l | q v m = x } is the SCMA codewords set whose elements satisfy the mapping relationship { g v : ( q v 1 , , q v m 1 , x , q v m + 1 , , q v Q ) s v l } .
Thus, in the form of LLR, the extrinsic bit messages of the MPA detector can be expressed as
L e , MPA v , ( l 1 ) Q + m ( x ) = ln P e , MPA v , ( l 1 ) Q + m ( x = 0 ) P e , MPA v , ( l 1 ) Q + m ( x = 1 ) .
As the prior information of the coupled polar decoder, the extrinsic messages of the MPA detector L e , MPA v = { L e , MPA v , 1 , , L e , MPA v , k , , L e , MPA v , L c } is de-interleaved to z v = { z v , 1 , z v , k , , z v , L c } , where L e , MPA v , k = { L e , MPA v , 1 , , L e , MPA v , N } and z v , k are expressed by
z v , k = Π 1 ( L e , MPA v , k ) , 1 k L c .

4.2. 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 a ^ v , k l and corresponding path metric P v , k l , 1 l L o . For each candidate path l , the corresponding codeword can be obtained by encoding the estimated sequence a ^ v , k l .
c ^ v , k l = a ^ v , k l G .
In order to calculate the extrinsic messages, the path metric P v , k l is normalized as follows
p v , k l = exp ( P v , k l ) / l = 1 L o exp ( P v , k l ) .
Then, the probability of the bit c v , k i can be written as
p ( c v , k i ) = 1 l L o c ^ v , k i , l = c v , k i p v , k l .
Thus, for the mother code x k , by the Bayes rule, the extrinsic messages of the SCL decoder L x , k v = { L x , k v , 1 , , L x , k v , N m } can be calculated as
L x , k v , i ( c v , k i ) = ln ( p ( c v , k i = 0 ) p ( c v , k i = 1 ) ) = { + p ( c v , k i = 1 ) = 0 ln ( 1 l L o c ^ v , k i , l = 0 p v , k l 1 l L o c ^ v , k i , l = 1 p v , k l ) p ( c v , k i = 1 ) 0 & p ( c v , k i = 0 ) 0 p ( c v , k i = 0 ) = 0 .
With CRC aiding, if the path l passes the CRC detection, the sign of L x , k v , i is modified by
L x , k v , i = ( 1 2 c ^ v , k i , l ) | L x , k v , i | .
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.
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).
R ( i , 1 ) = { 0 i A + i A c .
From Figure 7b, the messages of each node are updated on a PE by the following recursive formulas:
L ( i , j ) = f ( L ( 2 i , j + 1 ) + R ( i + N m / 2 , j ) , L ( 2 i 1 , j + 1 ) ) ,
L ( i + N m / 2 , j ) = L ( 2 i , j + 1 ) + f ( R ( i , j ) , L ( 2 i 1 , j + 1 ) ) ,
R ( 2 i 1 , j + 1 ) = f ( L ( 2 i , j + 1 ) + R ( i + N m / 2 , j ) , R ( i , j ) ) ,
R ( 2 i , j + 1 ) = L ( i + N m / 2 , j ) + f ( R ( i , j ) , L ( 2 i 1 , j + 1 ) ) ,
where f ( ) is defined as
f ( a , b ) = 2 arctanh [ tanh ( a 2 ) tanh ( b 2 ) ] .
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
L x , k v , i = R ( i , n + 1 ) + α R ¯ n + 1 L ¯ n + 1 L ( i , n + 1 ) ,
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 x , k v is punctured or shortened to L e , k v = { L e , k v , 1 , , L e , k v , N } . The flowchart of hybrid construction algorithm is given by Figure 8.
Therefore, the extrinsic message of user v can be represent by L e v = { L e , 1 v , , L e , k v , L e , L c v } . Then, L e v is interleaved to L a v = { L a , 1 v , , L a , k v , , L a , L c v } by L a , k v = Π ( L e , k v ) and transformed into the information of probability domain. Finally, it is re-mapped to the symbol message as the a priori information of the MPA detector.
P ( s v l ) = m = 1 Q ( L a v , ( l 1 ) Q + m ) 1 q v m 1 + L a v , ( l 1 ) Q + m ,
where q v m { 0 , 1 } .

4.3. Update Variable Nodes of MPA Decoder

The variable nodes update their information when they receive the prior information P ( s v l ) , 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
M q j g i ( s v l ) = P ( s v l ) t { Q j \ i } M g t q j ( s t l ) .
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
L v , k = min ( L max , 2 L v , k ) .
Thus, we summarize the JIDS algorithm for PIC polar-coded SCMA system as Algorithm 3.
Algorithm 3 Joint iterative detection and SCL decoding
Input: Signal { y 1 , , y l , , y L } from the channel, maximum number of iterations I max , windowed size L w , list size L min and L max .
Output: The decoding decision U ^ = { u ^ 1 , u ^ 2 , , u ^ V } .
  1: Initialize: M q j g i = 1 / M and L v , k = L min , 1 v V , 1 k L c .
  2: for iter_num = 1 I max do
  3: for l = 1 L do //Update the function nods
  4: for v = 1 V do
  5: Calculate the extrinsic messages L e , MPA v by (4) to (6).
  6: end for
  7: end for
  8: for v = 1 V do //Update the Priori Information
  9: De-interleave the L e , MPA v to z v , and input to the coupled polar decoder.
10: Run the decoder, calculate the extrinsic messages L e v by HC algorithm.
11: for k = 1 L c do
12: if CRC check fails then
13: Modify the list size by (22).
14: end if
15: end for
16: Interleave the L e v to L a v .
17: end for
18: for l = 1 L do
19: for v = 1 V do
20: Transform the priori information L a v into the probability domain by (20).
21: Update the information of variable nodes by (21).
22: end for
23: end for
24: If all users decode correctly, exit the iteration.
25: end for

5. 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.

5.1. 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 = σ z 2 / 2 and the variance σ z 2 . The conditional probability density function can be expressed as
p z ( τ | X = x ) = 1 2 π σ z exp ( ( τ μ z x ) 2 2 σ z 2 ) .
So the input mutual information I A can be calculated as follows [29]
I A ( σ z ) = 1 + 1 2 π σ z exp ( ( τ μ z ) 2 / 2 σ z 2 ) log 2 ( 1 + e τ ) d τ .
The output mutual information I E is denoted as
I E = 1 2 x = ± 1 + p z ( τ | x ) log 2 2 p z ( τ | x ) x = ± 1 p z ( τ | x ) d τ .
Viewing I E as a function of I A , the extrinsic information transfer characteristics of polar decoder can be defined as
I E = Ω ( I A ) .
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.

5.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.
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.

6. 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 p c 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.

6.1. Block Error Rate Performance Comparison

As shown in Figure 13 and Figure 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.
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 Figure 15 and Figure 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.

6.2. Complexity Analysis

For a PC-SCMA system, the complexity (CB-based) can be given by I ¯ ( O ( J d f M d f ) + L ¯ O ( 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.

7. 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 .

Author Contributions

Conceptualization, X.W. and Y.W.; methodology, X.W.; software, X.W.; validation, X.W. and Y.W.; formal analysis, X.W. and Y.W.; writing—original draft preparation, X.W.; writing—review and editing, Y.W. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Key Technology Research and Development Program of China under Grant 2018ZX03001022.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A

Proof of Theorem 1.
Denote N m = 2 n as the mother code length, G ( n ) = [ 1 0 1 1 ] n as the generator matrix, g n , i as the i-th row of G ( n ) , and 1 n i as the indices of ones in g n , i .
Considering the case of A = { 1 , , N m } , when n = 1 , there is G ( 1 ) = [ 1 0 1 1 ] . Obviously, if j 1 1 i , there is 1 1 j 1 1 i . Suppose that the relation holds when n = r > 1 that is, if j 1 r i , then 1 r j 1 r i .
When n = r + 1 , the generator matrix can be represented by
G ( r + 1 ) = [ G ( r ) 0 G ( r ) G ( r ) ] .
From (A1), if 1 i 2 r , there is 1 r + 1 i = 1 r i . So, if j 1 r + 1 i , the relation 1 r + 1 j 1 r + 1 i holds. If 2 r + 1 i 2 r + 1 , the 1 r + 1 i can be expressed as 1 r + 1 i = 1 r i 2 r { j + 2 r | j 1 r i 2 r } . If j 1 r + 1 i 2 r , we can obtain the relations 1 r + 1 j = 1 r j 1 r i 2 r 1 r + 1 i and 1 r + 1 j + 2 r = 1 r + 1 j { j + 2 r | j 1 r i 2 r } 1 r + 1 i . Thus, the relation 1 r + 1 j 1 r + 1 i holds if j 1 r + 1 i . Here, we have proved that theorem 1 holds for generating matrix G ( n ) .
The indices of information with assistant bits (including CRC bits and parity check bits) is represent by A , and the indices of frozen bits is A c . 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 . We can get the result 1 i = { 1 n A i \ k | k A c } . According to the previous analysis of the generation matrix G ( n ) , the relation 1 n A j 1 n A i can be obtained. Thus, if j 1 i , the relation 1 j 1 i holds.  □

References

  1. Nikopour, H.; Baligh, H. Sparse code multiple access. In Proceedings of the 2013 IEEE 24th Annual International Symposium on Personal, Indoor, and Mobile Radio Communications (PIMRC), London, UK, 8–11 September 2013; pp. 332–336. [Google Scholar]
  2. Chen, S.; Ren, B.; Gao, Q.; Kang, S.; Sun, S.; Niu, K. Pattern Division Multiple Access (PDMA)—A Novel Non-orthogonal Multiple Access for 5G Radio Networks. IEEE Trans. Veh. Tech. 2017, 66, 3185–3196. [Google Scholar] [CrossRef]
  3. Yuan, Z.; Yu, G.; Li, W.; Yuan, Y.; Wang, X.; Xu, J. Multi-User Shared Access for Internet of Things. In Proceedings of the 2016 IEEE 83rd Vehicular Technology Conference (VTC Spring), Nanjing, China, 15–18 May 2016; pp. 1–5. [Google Scholar]
  4. Van De Beek, J.; Popovic, B.M. Multiple access with low-density signatures. In Proceedings of the IEEE GLOBECOM, Honolulu, HI, USA, 30 November–4 December 2009; pp. 1–6. [Google Scholar]
  5. Hoshyar, R.; Wathan, F.P.; Tafazolli, R. Novel low-density signature for synchronous CDMA systems over AWGN channel. IEEE Trans. Signal Process. 2008, 56, 1616–1626. [Google Scholar] [CrossRef] [Green Version]
  6. Wu, Y.; Zhang, S.; Chen, Y. Iterative multiuser receiver in sparse code multiple access systems. In Proceedings of the 2015 IEEE International Conference on Communications (ICC), London, UK, 8–12 June 2015; pp. 2918–2923. [Google Scholar]
  7. Wu, Z.; Lu, K.; Jiang, C.; Shao, X. Comprehensive Study and Comparison on 5G NOMA Schemes. IEEE Access 2018, 6, 18511–18519. [Google Scholar] [CrossRef]
  8. Arikan, E. Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless channels. IEEE Trans. Inf. Theory 2009, 55, 3051–3073. [Google Scholar] [CrossRef]
  9. Tal, I.; Vardy, A. List decoding of polar codes. IEEE Trans. Inf. Theory 2015, 66, 2213–2226. [Google Scholar] [CrossRef]
  10. Niu, K.; Chen, K. CRC-Aided Decoding of Polar Codes. IEEE Commun. Lett. 2012, 16, 1668–1671. [Google Scholar] [CrossRef]
  11. Stimming, A.B.; Parizi, M.B.; Burg, A. LLR-Based Successive Cancellation List Decoding of Polar Codes. IEEE Trans. Signal Process. 2015, 63, 5165–5179. [Google Scholar] [CrossRef] [Green Version]
  12. Arikan, E. A performance comparison of polar codes and Reed-Muller codes. IEEE Commun. Lett. 2008, 12, 447–449. [Google Scholar] [CrossRef]
  13. Fayyaz, U.U.; Barry, J.R. Low-Complexity Soft-Output Decoding of Polar Codes. IEEE J. Sel. Areas Commun. 2014, 32, 958–966. [Google Scholar] [CrossRef]
  14. 3rd Generation Partnership Project, Technical Specification Group Radio Access Network. NR, Multiplexing and channel coding (Release 15), TS 38.212. Available online: https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3214 (accessed on 24 November 2020).
  15. Vameghestahbanati, M.; Marsland, I.; Gohary, R.H.; Yanikomeroglu, H. Polar Codes for SCMA Systems. In Proceedings of the 2017 IEEE 86th Vehicular Technology Conference (VTC-Fall), Toronto, ON, Canada, 24–27 September 2017; pp. 1–5. [Google Scholar]
  16. Dai, J.; Niu, K.; Si, Z.; Dong, C.; Lin, J. Polar-Coded Non-Orthogonal Multiple Access. IEEE Trans. Signal Process. 2018, 66, 1374–1389. [Google Scholar] [CrossRef] [Green Version]
  17. Pan, Z.; Li, E.; Zhang, L.; Lei, J.; Tang, C. Design and Optimization of Joint Iterative Detection and Decoding Receiver for Uplink Polar Coded SCMA System. IEEE Access 2018, 6, 52014–52026. [Google Scholar] [CrossRef]
  18. Yang, L.; Xie, Y.; Wu, X.; Yuan, J.; Cheng, X.; Wan, L. Partially information-coupled turbo codes for LTE systems. IEEE Trans. Commun. 2018, 66, 4381–4392. [Google Scholar] [CrossRef]
  19. Yang, L.; Xie, Y.; Yuan, J.; Cheng, X.; Wan, L. Chained LDPC codes for future communication systems. IEEE Commun. Lett. 2018, 22, 898–901. [Google Scholar] [CrossRef]
  20. Wu, X.; Yang, L.; Xie, Y.; Yuan, J. Partially Information Coupled Polar Codes. IEEE Access. 2018, 6, 63689–63702. [Google Scholar] [CrossRef]
  21. Qualcomm Incorporated. Design of polar codes for control channel (R1-1700832). In Proceedings of the 3GPP TSG-RAN WG1#NR Ad-Hoc Meeting, Spokane, WA, USA, 16–20 January 2017; pp. 1–5. [Google Scholar]
  22. Huawei, H. Parity-Check polar and CRC-aided polar evaluation (R1-1701701). In Proceedings of the 3GPP TSG RAN WG1 Meeting #88, Athens, Greece, 13–17 February 2017; pp. 1–10. [Google Scholar]
  23. Huawei, H. Polar Coding Design for Control Channel (R1-1706193). In Proceedings of the 3GPP TSG RAN WG1 Meeting #88bis, Spokane, WA, USA, 3–7 April 2017; pp. 1–21. [Google Scholar]
  24. CATT. Design of polar codes for eMBB control channel (R1-1702110). In Proceedings of the 3GPP TSG RAN WG1 Meeting #88, Athens, Greece, 13–17 February 2017; pp. 1–4. [Google Scholar]
  25. Nokia; Alcatel-Lucent Shanghai Bell. Polar codes design for UL control (R1-1701033). In Proceedings of the 3GPP TSG-RAN WG1#NR Ad-Hoc Meeting, Spokane, WA, USA, 16–20 January, 2017; pp. 1–5. [Google Scholar]
  26. Ericsson. Design of CRC-assisted Polar Code (R1-1701630). In Proceedings of the 3GPP TSG RAN WG1 Meeting #88, Athens, Greece, 13–17 February 2017; pp. 1–7. [Google Scholar]
  27. Nokia. Alcatel-Lucent Shanghai Bell. Details of CRC distribution of Polar design (R1-1703497). In Proceedings of the 3GPP TSG RAN WG1 Meeting #88, Athens, Greece, 13–17 February 2017; pp. 1–7. [Google Scholar]
  28. Arikan, E. Systematic Polar Coding. IEEE Commun. Lett. 2011, 15, 860–862. [Google Scholar] [CrossRef] [Green Version]
  29. Li, K.; Wang, X. EXIT chart analysis of turbo multiuser detection. IEEE Trans. Wireless Commun. 2005, 4, 300–311. [Google Scholar]
  30. Taherzadeh, M.; Nikopour, H.; Bayesteh, A.; Baligh, H. SCMA Codebook Design. In Proceedings of the 2014 IEEE 80th Vehicular Technology Conference (VTC2014-Fall), Vancouver, BC, Canada, 14–17 September 2014; pp. 1–5. [Google Scholar]
Figure 1. Uplink information-coupled polar-coded sparse code multiple access (PC-SCMA) system.
Figure 1. Uplink information-coupled polar-coded sparse code multiple access (PC-SCMA) system.
Sensors 20 06740 g001
Figure 2. SCMA factor graph with six users and four resources.
Figure 2. SCMA factor graph with six users and four resources.
Sensors 20 06740 g002
Figure 3. Systematic parity check and CRC-aided (PCCA)-polar encoder.
Figure 3. Systematic parity check and CRC-aided (PCCA)-polar encoder.
Sensors 20 06740 g003
Figure 4. The effect of P c on transformation x A = a A G A A .
Figure 4. The effect of P c on transformation x A = a A G A A .
Sensors 20 06740 g004
Figure 5. The coupling relation between every two consecutive code blocks (CBs).
Figure 5. The coupling relation between every two consecutive code blocks (CBs).
Sensors 20 06740 g005
Figure 6. Partially information-coupled (PIC) PCCA-polar encoder.
Figure 6. Partially information-coupled (PIC) PCCA-polar encoder.
Sensors 20 06740 g006
Figure 7. Factor graph and processing element. (a) Factor graph; (b) processing element.
Figure 7. Factor graph and processing element. (a) Factor graph; (b) processing element.
Sensors 20 06740 g007
Figure 8. The flowchart of hybrid construction algorithm.
Figure 8. The flowchart of hybrid construction algorithm.
Sensors 20 06740 g008
Figure 9. Performance of systematic polar code with SCAN decoder. (a) Transfer characteristics; (b) code block error rate (CBER) of PC-SCMA over additive white Gaussian noise (AWGN) channel.
Figure 9. Performance of systematic polar code with SCAN decoder. (a) Transfer characteristics; (b) code block error rate (CBER) of PC-SCMA over additive white Gaussian noise (AWGN) channel.
Sensors 20 06740 g009
Figure 10. Transfer characteristics of systematic polar code with successive cancellation list (SCL) decoder.
Figure 10. Transfer characteristics of systematic polar code with successive cancellation list (SCL) decoder.
Sensors 20 06740 g010
Figure 11. Transfer characteristics of PIC PCCA-polar code with different δ . (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Figure 11. Transfer characteristics of PIC PCCA-polar code with different δ . (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Sensors 20 06740 g011
Figure 12. Transfer characteristics of polar code. (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Figure 12. Transfer characteristics of polar code. (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Sensors 20 06740 g012
Figure 13. CBER of SCMA over AWGN channel. (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Figure 13. CBER of SCMA over AWGN channel. (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Sensors 20 06740 g013
Figure 14. CBER of SCMA over Rayleigh channel. (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Figure 14. CBER of SCMA over Rayleigh channel. (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Sensors 20 06740 g014
Figure 15. TB error rate (TBER) of SCMA over AWGN channel. (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Figure 15. TB error rate (TBER) of SCMA over AWGN channel. (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Sensors 20 06740 g015
Figure 16. TBER of SCMA over Rayleigh channel. (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Figure 16. TBER of SCMA over Rayleigh channel. (a) K = 100, R = 1/2; (b) K = 64, R = 1/3.
Sensors 20 06740 g016
Table 1. Summary of abbreviations.
Table 1. Summary of abbreviations.
AbbreviationFull NameAbbreviationFull Name
5GFifth generationAWGNAdditive white Gaussian noise
BCBayes constructionBLERBlock error rate
BMCBinary-input memoryless channelBPBelief propagation
CACRC-aidedCBCode block
CBERCode block error rateCRCcyclic redundancy check
DCADistributed CRC-aidedeMBBenhanced Mobile BroadBand
EXITExtrinsic information transferFNFunction node
HCHybrid constructionIDDIterative detection and decoding
JIDDJoint iterative detection and decodingJIDSJoint iterative detection and SCL decoding
JSCJoint successive cancellationLDPCLow-density parity-check
LDPC-SCMALDPC coded sparse code multiple accessLDSLow-density signatures
LLRLog-likelihood rate ratiolog-BPlog-Belief propagation
mMTCmassive Machine Type CommunicationsMPAMessage passing algorithm
MUDMulti-user detectionMUSAMulti-user shared access
NOMANon-orthogonal multiple accessNRNew radio
OMAOrthogonal multiple accessPCCAJoint parity check and CRC aided
PC-SCMAPolar-coded sparse code multiple accessPDMAPattern division multiple access
PEProcessing elementPICPartially information-coupled
QoSQuality of serviceSCSuccessive cancellation
SCANSoft cancellationSCLSuccessive cancellation list
SCMASparse code multiple accessSISOSoft-input-soft-output
TBTransport blockTBERTB error rate
TCTransfer characteristicURLLCUltra-Reliable and Low Latency Communications
VNVariable node
Table 2. Gain of PIC PCCA-PC-SCMA vs. other SCMA systems (dB).
Table 2. Gain of PIC PCCA-PC-SCMA vs. other SCMA systems (dB).
ParametersPolarLDPC
PIC CACA (SCL)CA (SCAN) [17]
AWGNK = 100 R = 1/2CBER0.220.512
TBER0.220.521.032.02
K = 64 R = 1/3CBER0.220.72.091.49
TBER0.250.752.121.52
RayleighK = 100 R = 1/2CBER0.230.51.912.57
TBER0.250.521.932.59
K = 64 R = 1/3CBER0.240.922.842
TBER0.270.952.882.04
Table 3. The average number of iterations I ¯ and the average list size L ¯ over AWGN channel.
Table 3. The average number of iterations I ¯ and the average list size L ¯ over AWGN channel.
E b / N 0 (dB)PIC PCCAPIC CACA (SCL)CA (SCAN) [17]
2.5 I ¯ 5555
L ¯ 17.8318.2717.781
3 I ¯ 5555
L ¯ 16.217.8914.941
3.5 I ¯ 4.7954.965
L ¯ 11.7414.4211.351
4 I ¯ 3.854.394.425
L ¯ 8.0810.18.451
4.5 I ¯ 2.913.343.554.95
L ¯ 6.247.176.81
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Wu, X.; Wang, Y. Improving Polar-Coded SCMA System by Information Coupling and Parity Check. Sensors 2020, 20, 6740. https://doi.org/10.3390/s20236740

AMA Style

Wu X, Wang Y. Improving Polar-Coded SCMA System by Information Coupling and Parity Check. Sensors. 2020; 20(23):6740. https://doi.org/10.3390/s20236740

Chicago/Turabian Style

Wu, Xi, and Yafeng Wang. 2020. "Improving Polar-Coded SCMA System by Information Coupling and Parity Check" Sensors 20, no. 23: 6740. https://doi.org/10.3390/s20236740

APA Style

Wu, X., & Wang, Y. (2020). Improving Polar-Coded SCMA System by Information Coupling and Parity Check. Sensors, 20(23), 6740. https://doi.org/10.3390/s20236740

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop