A Low-Complexity and High-Decoding Performance Scheme for the MIMO-SCMA System

Sparse code multiple access (SCMA) has been proposed to obtain high capacity and support massive connections. When combined with the multiple-input multiple-output (MIMO) techniques, the spectrum e ﬃ ciency of the SCMA system can be further improved. However, the detectors of the MIMO-SCMA system have high computational complexity. For the maximum likelihood (ML) detection, though it is optimal decoding algorithm for the MIMO-SCMA system, the detection complexity would grow exponentially with the number of both the antennas and users increase. In this paper, we consider a space-time block code (STBC) based MIMO-SCMA system where SCMA is used for multiuser access. Besides, we propose a low-complexity utilizing joint message passing algorithm (JMPA) detection, which narrowing the range of superimposed constellation points, called joint message passing algorithm based on sphere decoding (S-JMPA). But for the S-JMPA detector, the augment of the amount of access users and antennas leads to the degradation of decoding performance, the STBC is constructed to compensate the performance loss of the S-JMPA detector and ensure good bit error rate (BER) performance. The simulation results show that the proposed method achieves a close error rate performance to ML, JMPA, and a fast convergence rate. Moreover, compared to the ML detector, it also signi ﬁ cantly reduces the detection complexity of the algorithms.


Introduction
The IMT-2020 Promotion Group has stated that the mobile Internet and mobile Internet of Things (IoT) will become the main driving forces for the development of mobile communication in the future [1]. In addition to the continuous wide-area coverage and ultracapacity scenarios for mobile Internet services, 5G mobile communication has also resulted in new communication scenarios for the mobile IoT with lower energy consumption, massive connections, ultrahigh reliability, and ultra-low latency. As a nonorthogonal multiple access (NOMA) technology based on code-domain superposition, SCMA can greatly improve a system's spectral efficiency and the transmission rate of cell edge users and is suitable for wide-area continuous coverage scenarios [2,3]. The MIMO techniques have also been identified as the vital technology for improving the 5G system throughput. When SCMA is combined with multiuser MIMO (MU-MIMO) technology, higher system throughput can be obtained, which effectively promotes the transmission rate in hot spots and high capacity scenarios. In low-power and large connection scenarios, SCMA technology can handle massive connections, meet the requirements of millions of connections per square kilometer, and ensure the ultralow power consumption and ultralow cost of a terminal. Contrasted with the orthogonal multiple access (OMA) technology, the SCMA can achieve lower BER and more reliable transmissions at the same transmission rate. The SCMA technology integrates high-dimensional modulation and a sparse spread spectrum at the transmitter, and a bit stream of different users is directly mapped to a complex domain sparse codeword through the preallocated SCMA codebook to implement code-domain multiplexing [4]. However, the complexity of the decoder exponentially grows as the number of transmitting antennas, the access users, and the codebook size increases. A novel spatial modulation SCMA (SM-SCMA) system is proposed to operate in uplink transmission, referred to as rotational generalized SM-SCMA (RGSM-SCMA) [5], which can overcome the use of high number of transmit antennas by activating several antennas at a time to deliver the same spectrum efficiency of SM-SCMA with a much lower number of transmit antennas. In addition, rotational angles are used to provide a close BER performance to the SM-SCMA. The paper [6] proposes three low-complexity algorithms for the SM-SCMA. One of those is based on that tree search concepts, and the sphere decoder (SD) is proposed for the SM-SCMA, called fixed-complexity SD (FCSD). It provides near-optimal BER with a considerable reduction in the decoding complexity compared to the message passing algorithm (MPA) decoder. Besides, MIMO is one of the key technologies in the development of wireless communication technology because it can improve the spectral efficiency and system throughput. Furthermore, the combination of these two promising technologies, namely MIMO-SCMA, can effectively improve the spectrum utilization while ensuring the higher reliability of the system [7,8]. But how to accurately decode a user's information at the receiver is an urgent problem for the MIMO-SCMA system. The paper [9] proposes to reduce the detection complexity of the MIMO-SCMA system by detecting and partially decoding the active information. The authors of [10] propose an uplink MIMO-SCMA system based on space-frequency block code (SFBC), which could dynamically delete the redundant combinations used in the update of the resource nodes to reduce the decoding complexity at a negligible BER performance loss. Reference [11] introduces a downlink MIMO-mixed SCMA (MIMO-MSCMA) system, by optimizing the design of the codebook, and the author achieves better BER performance for the downlink MIMO-MSCMA system. Based on the JMPA algorithm, parallel schedule strategy and serial schedule strategy are further proposed to reduce the detection complexity of the system while ensuring better BER performance. In [12], the authors propose a suboptimal low-complexity iterative receiver relied on factor graph. By introducing auxiliary variables, they construct a stretched factor graph and propose a hybrid belief propagation (BP) and expectation propagation (EP) receiver, called stretch-BP-EP. It was shown that performance of the proposed receiver is close to the minimum mean square error (MMSE) based receiver with much lower complexity. In [13], the authors put forward a multidimensional spacetime block code (MSTBC) aided downlink MIMO-SCMA system and derive the design criteria of MSTBC that can achieve full diversity while keeping the symbol rate same as the traditional SISO-SCMA system. The proposed scheme improves the performance of the traditional single-input single-output SCMA (SISO-SCMA), but the complexity of the proposed MSTBC aided MIMO-SCMA is almost the same as the conventional SISO-SCMA. Reference [14] uses faster-than-Nyquist (FTN) signaling for increasing the spectrum efficiency of the SCMA system. Then, the author proposes a factor graph based upon the hybrid message passing receiver and extends the factor graph model and pro-posed a pair of novel user activity detection methods for a grant-free transmission scheme. The proposed receiver has a higher throughput than the conventional SCMA scheme. In dynamically fluctuating environments, the joint user activity tracking and data detection algorithm is proposed [15], which bases on the factor graph framework and a combination of expectation maximization (EM) and hybrid MPA. It was shown that the complexity of the proposed receiver significantly reduces compared to that of the conventional message passing receiver.
In this paper, to solve the high complexity and poor decoding performance of a MIMO-SCMA system, we propose the scheme of a downlink MIMO-SCMA system based on S-JMPA with 2 × 2 full-rate full-diversity STBC. By introducing the STBC technique, the coding gain and diversity gain can reduce the impact on channel instability at information transmission and reduce the probability of decoding errors; thereby, it improves the reliability of information transmission to guarantee the decoding performance. Not only that, inspired by the [16,17], the S-JMPA scheme is presented by analyzing the characteristics of Euclidean distance between received signals and transmitted codewords, which can ulteriorly reduce the computational complexity compared to JMPA. The numerical and simulation results show that the proposed system model has capability to compensate BER performance loss while significantly reducing the decoding complexity of the receiver detection algorithm. Compared with the S-JMPA without STBC, the performance of S-JMPA combined with STBC can obtain obvious promotion. In summary, the proposed algorithm can achieve a good trade-off between the error performance and complexity.
The rest of this paper is organized as follows. Section 2 describes the downlink MIMO-SCMA system model based on STBC and the original JMPA algorithm. Section 3 is dedicated to the proposed S-JMPA. In Section 4, the simulation results are reported. Finally, the conclusions based on the obtained results are drawn in Section 5.

System Model and Original JMPA Algorithm
2.1. Downlink MIMO-SCMA System. Consider a downlink STBC-based MIMO-SCMA system with J users and K resources, where the base station (BS) equipped with N T transmit antennas is communicating with the multiple users J, and each user is equipped with N R receive antennas. The downlink MIMO-SCMA scenario based on STBC is presented in Figure 1. The SCMA codebook used in this article is Huawei's 4-6 codebook [18]. In this codebook, six users have different codebooks, respectively, and the codebook contains four sparse codewords.
In the SCMA scenario, the number of user J can be greater than the number of resource K, and we define λ = J/ K as overload factor. For the N t -th antenna of the user j, Nt = 1, 2 ⋯ NT , the symbol stream s Wireless Communications and Mobile Computing are added together at the nth-symbol interval which formed to an overlaid codeword, which can be expressed as follows [13]: Next, the overlaid codewords (x N t ,1 , x N t ,2 , ⋯, x N t ,N ) at symbol stream are encoded into STBC and are transmitted by the BS through the N t -th antenna at N symbol intervals, which is given by These superimposed codewords are encoded through the STBC encoder and transmit via MIMO channel. The received signal at the N r -th receiving antenna of user j can be expressed as follows: where is the channel gain vector between the N t -th transmitting antenna and the N r -th receiving antenna, and z N r T denotes the noise vector over the N r -th receiving antenna of the user j, which obeys a Gaussian distribution with zero mean and σ 2 variance. Then, all the received signals of the user j at receiving antenna N r can be expressed as a vector We assume that the channels between the BS and users experience Rayleigh fading, i.e., the channel gains are constant, while all channel are independent from each other.

The
Original JMPA. It can be seen from Figure 2(a) that BS nodes and resource nodes (RNs) have the intermediary feature, as they are used to connect users and user nodes (UNs) through the sparse edges. Due to the sparse feature of the SCMA codeword and the MIMO channel matrix, reference [16] attempts to skip over intermediary feature of BS nodes and RNs and build a new mapping function. So, the sparse graph of the MIMO channels and the SCMA codewords can be linked together, namely, joint sparse graph for MIMO-SCMA, which is shown in Figure 2(b). Given the sparsity of both the codebook and the equivalent channel matrix, the JMPA detector reduces the complexity exponentially.
In Figure 2(b), there are 8 virtual RNs and 12 virtual UNs, where vr i ði = 1, ⋯, 8Þ represents the virtual RNs, and vu j ðj = 1, ⋯, 12Þ represents virtual UNs. At the transmitter, the N T transmit antennas share the same RNs, and the user's information can be exchanged between transmitted codewords at different antennas [11]. Therefore, the joint matrix of the MIMO-SCMA system corresponding to the joint factor graph can be expressed as follows: where F N t , N t = f1, ⋯:,N T g represents the factor matrix at the N t -th transmitted antenna. As can be seen in (5), where h Based on equation (6), we can construct the virtual codebooks C j′ for different virtual users, which is based on the channel gain h N t j and the original codebook C N t j of the user j at the N t -th antenna. The virtual codebook of virtual user j ′ can be obtained as follows: At the receiver, the JMPA is used to reconstitute the transmitted data bits of the user j ′ , and the message update formula of the virtual RN can be expressed as follows: where t and ∼x j ′ denote the number of iterations and the marginal function for x j ′ , respectively. The virtual user nodes message update can be represented as where the set of the virtual RNs connected to the j′th UN, ψ q ′ →j ′ denotes the information from virtual resource q′to virtual user j′, γ j ′ →k ′ denotes the information from virtual user node j′ to virtual resource node k′, and t denotes the number of iterations. I k ′ ðx j ′ Þ is the probability density function of the received signal, which is defined as [19]

Proposed Multiuser Decoding
In this section, we put forward a MIMO-SCMA system based on STBC coding and S-JMPA decoding and achieve the near-optimal BER performance of the system while significantly reducing the decoding complexity of the receiver.
3.1. MIMO-SCMA System with 2 × 2 Full-Rate Full-Diversity STBC. In order to effectively improve link performance of the MIMO-SCMA system, we consider that the STBC technology is integrated with the MIMO-SCMA system. It can be seen from Figure 3(a) that the system encoded by STBC has

Wireless Communications and Mobile Computing
better BER, which is proved by a larger BER curve slope and a lower bit error rate after introducing space-time codes under the same SNR (signal-noise ratio) condition.
It can be seen from Figure 3(b) that the BER of the system becomes lower with increasing of the number of antennas at the receiving end under the same SNR condition, and BER performance has been significantly improved. In a word, the proposed system can obtain not only the coding gain but also the higher diversity gain.
For the proposed model, as shown in Figure 1, the user transmits the adjacent modulation symbol (x 1 , x 2 ) to two antenna ports in the first sampling time slot via STBC technology. In the subsequent sampling time slot, symbols are exchanged, and the conjugate (−½x 2 * , ½x 1 * ) is transmitted by two antenna ports. The transmission data on N T = 2 antennas are as follows: The received signal at each antenna of the user j is expressed as where the channel matrix Hj is and n j = ½n 1 , n 2 T is the complex Gaussian noise vector of the j -th user.
As we can see in Figure 4, the MIMO-SCMA system with the scheme of STBC takes advantage of diversity gain and coding gain, which can effectively compensate for performance loss, and the subsequent simulation results are shown in Section 4.

S-JMPA Detector.
The preceding JMPA decoder used in this MIMO-SCMA system with STBC has high complexity. The proposed decoding algorithm is an improved JMPA decoding procedure. For the corresponding MIMO-SCMA downlink system, the number of users communicating with virtual RN is d v = 6. When each user's codebook size M is 4, as shown in Figure 1, the SCMA symbols for each virtual RN would have M d v = 4096 combinations during the JMPA decoding procedure, and 4096 is the superposed constellation points on the constellations graph [20].
The received signal at virtual resource node k′ is expressed as where x k ′ ,j ′ represents a set of M d v codewords connected to virtual resource node k′, and z k ′ is the Gaussian noise with zero mean and unit variance. Due to the existence of nonzero noise, the received signal y k′ cannot completely coincide with any superposed codewords [17], which means that the Euclidean distance D m k′ between the received signal y k′ and The superposed constellation graph is formed by M d v constellation points. The constellation point which is close to the received signal is more likely to be accurately decoded compared to the constellation point which is far away from the received signal. Therefore, the S-JMPA detector can efficiently reduce the complexity by partially decoding the signals, as shown in Figure 5.
When the radius R of the sphere is set, the constellation points on the superposed constellation graph are divided into two parts: one part is located inside the sphere with a high belief value, and the other part is located outside the sphere with a low belief value. The number of superposed codewords on virtual RN k ′ is represented by Φðk ′ Þ ∈ f1, 2⋯, M d v g (where k ′ = 1, 2 ⋯ , K v ). Each virtual RN k ′ only needs to search for the corresponding Φðk ′ Þ superposed codewords of the superposed constellation points inside the sphere instead of searching over the whole range. Based on previous assumptions, the received signals are still the Gaussian distribution after going through the MIMO channel. Table 1 shows the relationship between the probability values and the belief intervals. According to the distribution characteristics of the white noise, the probability of correct decoding is 99.7% when the radius R is set as 3σ. Specially under situation of R ⟶ ∞, the proposed S-JMPA scheme becomes a JMPA scheme.
The Euclidean distance between the received signal y k ′ and the m -th superposed constellation point located in the sphere needs to satisfy the following condition: According to (13), as the radius R increases, there will be more constellation points contained in the sphere. The decoding performance is optimal but the complexity is close to or reaches that of ML decoding. If the radius R is too small, the sphere contains fewer constellation points, which leads to poor decoding performance for the system. By choosing the appropriate radius R and utilizing the diversity gain of STBC, the bit error rate performance of the system is improved, and the decoding complexity is also significantly reduced.
In the downlink MIMO-SCMA system based on STBC, the S-JMPA algorithm based on the joint message passing algorithm selects the codeword information with a high belief value to reduce the decoding complexity [21]. In this algorithm, the information updating formula can be derived from equations ( (8) and (9)).
The proposed S-JMPA can be decomposed into three steps:  Step 1: the virtual RN message updating formula is as follows: Step 2: the virtual UN message updating formula is as follows: in which D n k′ defines the Euclidean distance between received signal and n -th superposed constellation point at k′.
When the S-JMPA algorithm achieves the preset maximum number of iterations t max , the output probability of each user's codeword can be estimated by the following formula:

Algorithm Simulation and Analysis
In this part, we provide some simulation results and numerical results to evaluate the performance of the proposed MIMO-SCMA system and compare three schemes to verify the performance of the proposed algorithm: the ML decoding algorithm, the original JMPA, and the JPMA without STBC. The simulation experiments are carried out on the MATLAB platform, and the simulation parameters are listed in Table 2. Figure 6 depicts the BER performance comparison between the ML detector and the proposed S-JMPA detector at different conditions. It can be seen from Figure 6 that ML detector has optimal decoding performance, but its complexity has two orders of magnitude higher than S-JMPA, as shown in Figure 7. Similarly, the complexity of the original JMPA algorithm is also much higher than S-JMPA. It is obvious that the performance of the S-JMPA detector increases as the radius R decreases in the system. Because there are more decodable codewords in a larger scale, the system can achieve the great BER performance. Under the same R and SNR, the BER performance of the proposed scheme with STBC outperforms that of the system without STBC. For example, when R = 2 σ, it increases the 1.5 dB performance gain and reduces the error probability of the communication system, which indicates that the proposed system significantly makes up for the performance loss that occurs due to the S-JMPA algorithm partially decoding the codewords instead of decoding all codewords. Figure 7 illustrates the simulation results of the convergence rate when the SNR = 10 dB, and the original JMPA detector is compared with the proposed S-JMPA detector with and without space-time coding.

Convergence Behavior Comparison.
As shown in Figure 7, the convergence speed of the S-JMPA detector is basically the same as that of the original JMPA detector, and the BER does not change any more after five iterations. Although STBC is introduced into the MIMO-SCMA system, the convergence speed of the algorithm is not affected and reaches convergence after five iterations. That means that the number of iterations required for convergence of the S-JMPA algorithm is almost same as that of the original JMPA algorithm when they achieve the same performance. Table 3 shows computational complexity analysis for the iteration. The complexity of the three algorithms is analyzed based on the number of additions and multiplications required by the algorithm, as shown in Table 3.

Complexity Comparison Analysis.
The S-JMPA decoding algorithm is proposed by optimizing the joint detection algorithm JMPA in this paper; thus, we take the conventional ML and original JMPA detecting algorithm as the comparison algorithms to show the advantages of S-JMPA in decoder complexity. Table 3 shows the comparison of complexity about the ML algorithm which has the optimal decoding performance, the original JMPA detector, and the proposed S-JMPA detector based on STBC, where K v = N R K = 8 denotes the number of virtual resources, J v = N T J = 12 denotes the number of virtual users, d u = 4 and d r = 6, respectively, represent the degree of overlapping virtual resources and the degree of overlapping virtual users in the MIMO-SCMA system based on 2 × 2 full rate orthogonal space-time coding.
From the parameters of Table 2 and the equations of  Table 3, we can calculate the complexity of ML detector, JMPA detector, and the S-JMPA detector. The complexity     comparison between proposed S-JMPA and the traditional JMPA is shown in Figure 8. It can be seen the operation numbers of the multiplications and additions for these three algorithms when the SNR = 10 dB.
In Figure 8, the ML algorithm has the highest computation complexity, followed by JMPA detector. The number of multiplications and additions for the S-JMPA detector declines with the decreases of R. When SNR = 10 dB, the number of additions for ML and JMPA detector is about 16 × 10 8 and 15 × 10 6 , respectively. When R = σ, the number of additions of S-JMPA detector only has 3:5 × 10 6 and is reduced by approximately 15:9 × 10 6 compared with ML detector. Comparison of the number of multiplications for different algorithms can be obtained in the same way, and the number of multiplications for ML detector is 12 × 10 8 , which is reduced to 2:5 × 10 6 for S-JMPA detector with R = σ. It is worth to note that S-JMPA detector can significantly reduce the complexity compared with ML and JMPA detector. Compared to the traditional JMPA algorithm, the number of additions and multiplications of proposed scheme obviously decreases about 77.9% and 76.6%, respectively. Furthermore, by narrowing the range of the search, S-JMPA effectively reducing the hardware loss. Figure 9 depicts the comparison complexity for S-JMPA detector with different R, and the curve expresses the relationship between the complexity of the algorithm and the SNR.
The simulated complexity comparison results are shown in Figure 9. The number of multiplications and additions for the S-JMPA detector decreases as the SNR increases with the different values of parameter R. When the SNR = 10 dB, the number of multiplications of the S-JMPA detector with R = 2σ is about 4:8 × 10 6 . With the R reduces to σ, the multiplication count reduces to 2:5 × 10 6 , and the smaller the radius R is, the lower the complexity of the S-JMPA detector. Under the cases of the SNR greater than 18 dB, the complexity of the S-JMPA detector reaches convergence. In the MIMO-SCMA based on the STBC system, the complexity of the S-JMPA detector can be significantly reduced when the appropriate radius R is selected, and it remains great BER performance.

Conclusions
This paper has proposed the S-JMPA algorithm and STBC algorithm for the MIMO-SCMA system. Aiming at the problems of high complexity in a MIMO-SCMA system, the S-JMPA is proposed to reduce the computation complexity. During the decoding processing, the codeword information with a high belief value is selected for decoding by using a Gaussian distribution, and the codeword information with a low belief value is discarded, which can greatly reduce the detection complexity. Moreover, because the STBC has the characteristics of diversity gain and lower error probability for the communication system, the system can bring further performance compensation for MIMO-SCMA based on S-JMPA. The simulation results show that, compared with the optimal ML and original JMPA detector, the proposed S-JMPA algorithm can reduce the computational complexity significantly and achieve near-optimal BER performance while ensuring convergence rate. Hence, the MIMO-SCMA system based on JMPA with STBC paves the way of supporting massive connections and improving spectrum efficiency for 5G.

Data Availability
The data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest
The authors declare no conflicts of interest.