As a new non-orthogonal multiple access technology for 5G massive machine type communication scenario, the sparse code multiple access (SCMA) has greatly improved the spectrum efficiency due to the high connection density. SCMA combines QAM (Quadrature Amplitude Modulation) modulation and sparse spreading into a codebook set to obtain forming gain. The user binary bit data is directly mapped into multi-dimensional codewords in the transmitter. The receiver uses the message passing algorithm (MPA) for multi-user detection to achieve efficient decoding. However, MPA is a good solution for SCMA, though its high complexity limits the application in practical systems. In order to reduce the complexity of MPA, this paper proposed a low-complexity decoding algorithm based on the serial spherical decoding message passing algorithm (SSD-MPA), which greatly enhanced the practicability of the SCMA system. The SSD-MPA took into account the distribution characteristics of the Gaussian noise and the reliability of the constellation points, and only updates the trusted constellation point messages of nodes within the spherical radius. At the same time, it used a serial strategy to speed up the convergence rate. The simulation results have shown that when the radius sets properly, the algorithm reduces the complexity by about 2/3 compared with the original MPA, and the performance was almost lossless.

The massive machine type communication (mMTC) is the main application scenario of 5G, and its main feature is the high connection density. The sparse code multiple access (SCMA) is a new type of non-orthogonal multiple access technology in the code domain [

Although MPA has reduced the decoding complexity, the latter is is still high, which limits the application of SCMA in practical communication systems [

In this context, the major contribution of this paper is to propose a serial spherical decoding MPA (SSD-MPA) algorithm, which can further reduce its complexity. Specifically, according to the relationship between the Gaussian noise distribution characteristics and the reliability of the constellation points, this algorithm chooses to update the trusted constellation points in the spherical range, and accelerates the convergence speed through a serial strategy. When the sphere radius sets properly, SSD-MPA reduces the computational complexity by about two-thirds, with almost no loss in the bit error rate (BER) performance. The rest of this paper is organized as follows. Firstly, the system model of SCMA is reviewed and analyzed in Section 2. Then, a serial spherical decoding MPA is proposed in Section 3. Furthermore, the numerical simulation and analysis are discussed in Section 4. Finally, the conclusions are drawn in Section 5.

We assume that, in an uplink SCMA system,

The uplink SCMA system model of

At the user’s transmitter, each user _{j}. In the end, the data of these

The factor graph shows the non-orthogonal superposition of multiple users in

Therefore, the received signal of the receiver in a BS is expressed as follows:

where, _{j} = (_{1,j}_{2,j}_{K,j})^{T} represents the codeword of user _{j} = (_{1,j}_{2,j}_{K,j})^{T} is the channel coefficient, and ^{2}

According to the factor graph, the codewords of _{f} users are superimposed on the same resource. So, the received signal on the

where, _{k,j}≠ 0} is the user set whose data is superimposed on the _{f}.

As a typical multi-user detection algorithm, MPA is widely applied in a SCMA. It uses the sparse features of codewords to model the receivers based on the factor graph. The decoding process consists of two parts: iteratively updating node messages and codewords decisions.

1. Iteratively updating node messages

Firstly, an iteratively updating the node messages of resource node

where, _{k,j} ≠ 0} is the set of resources mapped by the _{v}. Φ(

It is worth noting that the message updated by the resource node in

2. Codewords decisions

Then, after the iteration is completed, the codeword probability is calculated according to the log-likelihood ratio (LLR). And then the user bit data is judged, it is expressed as follows:

Although the MPA can reduce the complexity to the order of _{f} and the size of codebook

In SSD-MPA, the influence of Gaussian noise on the received signal is considered, that is to say, the Euclidean Distance between the constellation point and the received signal determines the credibility of the constellation point. When the Euclidean Distance is smaller, the credibility of the constellation point is higher, and the correct probability of the codeword corresponding to the constellation point is greater. Therefore, according to the requirements of the actual scenario, setting an appropriate spherical radius (i.e., Euclidean Distance) can achieve a trade-off between the performance and the complexity of BER.

At the same time, the SSD-MPA uses a serial strategy to update the nodes message, in order to further reduce the complexity. In this serial update strategy, the updated message of a resource node is directly passed to the user node without waiting for the next iteration, so the user node can use the message of the resource node in time. The SSD-MPA can speed up the convergence speed by serial updating. The steps of SSD-MPA are shown in

Input: |

Initialization: |

for all |

end for |

Calculate contingent probability: |

for all |

Calculate |

end for |

Iteration: |

for |

for |

If |

update |

end for |

update |

end for |

Soft output: |

for |

Calculate |

return |

end for |

The complexity of the MPA focuses on the process of the iteratively updating node messages. The original MPA traverses all constellation point sets with each iteration, so the complexity is high. The SSD-MPA limits the update range to a spherical radius, and it does not need to update all node messages. _{MPA}, _{S-MPA}, _{SD-MPA}, _{DS-MPA}, and _{SSD-MPA} indicate the number of iterations required for the corresponding algorithm to converge, and |Φ*(

Algorithm | Addition | Multiplication | Comparison |
---|---|---|---|

MPA | 0 | ||

S-MPA | 0 | ||

SD-MPA | |||

DS-MPA | [_{DS-MPA} _{f}-1)]( |
||

SSD-MPA |

In this section, we use the MATLAB simulation platform to numerically simulate the SSD-MPA. The convergence speed, BER, and complexity performance of several algorithms are analyzed. The simulation parameters are shown in

Parameter | Value |
---|---|

Channel model | AWGN |

User number |
6 |

Number of resources |
4 |

Codebook number |
6 |

Constellation point size |
4 |

Overlay users _{f} |
3 |

Overlay resources _{v} |
2 |

In

According to the simulation results obtained in

In

In

Although the complexity formulas of several algorithms have been given in

In

As a new non-orthogonal multiple access technology for 5G, the SCMA has greatly improved spectrum efficiency. However, the SCMA’s complexity is high, which limits its application in practical communication systems. This paper proposed a low complexity decoding algorithm based on serial spherical decoding, and verified the BER performance and complexity of the proposed algorithm through MATLAB simulation platform. The results show that, when the sphere radius sets properly, the SSD-MPA can reduce the complexity of MPA by about 2/3, and the performance is almost lossless. The practicability of the MPA is greatly enhancedTherelationship between sphere radius and performance will be researched in the further work.