In SCMA, incoming encoded bits of each user are directly mapped to a multi-dimensional sparse codeword of an SCMA codebook. The SCMA codebook is the joint optimization of multi-dimensional modulation and low density spreading. SCMA requires joint-decoding, because a user message at the different REs is jointly encoded as shown in Fig. A.1, where the MPA receiver is used to ensure low complexity detection [8].
System-model: In the SCMA transmitter system, we assume the SCMA encoder contains K
separate layers (or users) and each layer has a codebook χk, where each codebook contains J
dimensional complex sparse codewordsN, i.e. χk = xk, xk1, ..., xKN
. We consider the case
J K, namely, overloading and shaping gain is achieved by SCMA and the demand for massive connectivity in 5G is accommodated. Letxn,k
N
n=1denote the vector xk, xk1, ..., xKN
T
then thenthcodeword can be written asxkn =xjkn
J
j=1. In each layer,dk bits of eachK layer are
coded by a low rate channel encoder EN Ck
, and directly mapped to one sparse codeword on the
kth different codebooks. The N codewords are therefore multiplexed over J shared orthogonal resources, such as OFDMA tones or MIMO spatial layer, which are therefore affected by the channel gain vectorhk = h1k, h2k, ..., hJ K
. Letdiag hk
denote the diagonal matrix where itsmth
diagonal element is themthelement ofhk. Hence the received signalr is therefore expressed as
r = K X k=1 hkxk+ z,
(A.1)
where xk = x1k, x1k, ..., xJ K Tis the kth codeword and z ∼ N (0, σ2) is additive white Gaussian noise (AWGN). The overloading factor is the ratio between the number ofkth users and
jthorthogonal resources given byγ = K/J. According to the method of decoding and interference cancellation, the signal to noise-plus interference ratioSIN Rat the BS can be expressed as
SIN Rn,k =
pn,kgn,k | hn,k |2
PK
j6=kpn,jgn,j | hn,j |2+ σ2
,
(A.2)
wheregn,kis a variable that shows the connection between the users and the REs i.e.,gn,k =0, 1 ,
where“1 means the user’s data are mapped to the corresponding resource, while the element“0
means the opposite. Therefore, the achievable sum rate for each user is defined as
Rk = N X n=1 log21 + SIN Rn,k ,
(A.3)
wherepn,k = 1is normalized for equal power allocation.
SCMA-receiver: With SCMA making full utilization of the sparsity of codewords joint-decoding is realized in the receiver. Particularly, MUD based on the message passing algorithm (MPA) is realized for separating user’s data with acceptable low-complexity detection. The MPA is typically a joint- decoding receiver algorithm that can be explained by the bipartite factor graph [2], which includes the variable and factor nodes. Particularly, in SCMA the variable nodes consist of the transmitted codewords forkthuser, while the factor nodes can be seen as the received signals overjthsubcarriers.
Algorithm 1 MPA detection algorithm for SCMA
1: Variable Definition 2: Vt
k→j xk : the message sent from kthuser node to jthresource node during ithiteration
3: Uj→kt xk : the message sent from jthresource node to kthuser node during ithiteration
4: Initializing the marginal probability of each codeword Vk→j0 xjm : ← M1, for j ∈J and k ∈ K, m ∈ M
5: for i = 1, 2, ..., N iterations do
6: update the messages from the resource nodes
7: for j ∈J, k ∈ K, m ∈ M : j, k∃ factor graph do
8: Ut j→k xk ← P xp θk\j 1 πN0exp h − 1 N0 k rj− hj,kxj,k,m− P p∈θj\khk,pxj,pk 2iQ p∈θj\kV t p→j xp 9: 10: end for
11: update the messages from the resource nodes
12: for j ∈J, k ∈ K, m ∈ M : j, k∃ factor graph do
13: Vt j→k xk ← p xj Qs∈θ k\jU t−1 s→k xk,m 14: end for
15: Normalize the probabilities of Vj→kt xk and Uj→kt xk to keep them numerically stable
16: for j, k with cj,k= 1 and xjin χjdo
17: Vk→kt xj,m ← Vk→kt xj,m/ M P m=1 Vk→kt xj,m 18: end for 19: end for
20: Make a decision after some ithiteration 21: for k = 1, 2, ..., K and m = 1, 2, ..., M do 22: Vk xk,m ← p xj Qj∈θ k\jU N iterations j→k xk,m 23: end for
24: Finally, the one inxk,m
M
m=1which maximizes Vk · is regarded as the transmitted codeword in the k th