1 Introduction

In wireless systems, the deployment of multiple antennas offer significant improvements in wireless physical layer reliability and increased throughput. Enhanced data rates can be achieved by using multiple-input multiple-output (MIMO) wireless systems [1, 2]. Recently, systems with large number of antennas (i.e. large-MIMO) attracted an increased attention to overcome the data rate crisis in future generation (5G) wireless systems [3]. One of the main advantages of MIMO systems is that each transmit antenna could be used to transmit different information stream which is also known as spatial multiplexing. However, detecting these multiple information streams reliably at the receiver is the main bottleneck for practical implementation of large MIMO systems. In order to achieve optimal error rate performance, all possible transmit vectors are considered exhaustively, and is known as maximum-likelihood (ML) detection. When the number of antennas at the transmitter increases, the size of set consisting of possible transmit vectors increases exponentially, and hence, ML detection becomes impractical in terms of computational complexity [4]. Sphere decoder (SD) is another such detector capable of achieving ML like performance without exhaustively searching the whole set of possible vectors. However, SD is feasible only up to 32 real dimensions [5]. Therefore, devising low complexity algorithms to achieve near ML bit error rate (BER) is of great interest in large MIMO systems.

Some of the low-complexity techniques for MIMO detection include linear methods such as zero forcing (ZF) and minimum mean squared error (MMSE). However, the BER performance of ZF and MMSE detectors is poor as compared to that of the optimal performance. Non-linear MIMO detection schemes such as vertical Bell laboratories layered architecture (VBLAST) [6], based on successive interference cancellation (SIC) performs superior to ZF and MMSE, however is still inferior compared to the optimal performance. Some of the existing algorithms in the literature includes lattice reduction (LR) aided MIMO detectors [7, 8], layered tabu search aided detection [9], message passing based detection [10], multiple branch SIC algorithm [11], multiple feedback SIC algorithm [12] and sparsity boosted MIMO detection [13]. As an alternative, in this study, we focus on QR decomposition aided SIC for sequentially detecting the symbols.

SIC is a technique used for sequential detection of symbols in MIMO systems. In each layer of SIC, the interference due to the symbols detected previously is removed and the symbol corresponding to the current layer is detected. Several algorithms using QR aided SIC detection include ant colony optimization (ACO) inspired detection algorithms [14, 15], ordered SIC algorithm [16,17,18,19,20], MIMO detection under correlated channel [21, 22]. In [14, 15], the concept of ACO is used and the detection in MIMO systems is modeled as a path finding problem. A number of artificial ants are used which lays pheromones on all the available paths, and the paths with maximum concentration of pheromone is considered as the favorable path. However, ACO based algorithms suffer from premature convergence to a local minima which results in sub-optimal BER performance. The ordered SIC algorithm in [16,17,18,19,20] uses an ordering strategy to arrange the detection sequence to mitigate the error propagation. Despite ordering, the error propagation is not completely removed which degrades the performance of such algorithms. Thus, some additional technique is required to achieve near optimal performance in the MIMO systems.

In this article, we propose a modified multiple feedback SIC (MMF-SIC) algorithm for detection of symbols in spatially multiplexed large MIMO systems. Recently, in [12], a multiple feedback strategy has been proposed to mitigate the error propagation in SIC based detection. Inspired from the work in [12], a modified decision feedback strategy is introduced in MMF-SIC wherein the decision feedback loops are used in multiple layers in order to enhance detection reliability. Furthermore, we employ two different ordering techniques in parallel which results in higher detection diversity. Simulation results show that the proposed MMF-SIC successfully reduces the propagation of error and approach near optimal performance in terms of BER. Our major contributions in this work are: 1. A modified multiple feedback strategy in decision loops is proposed to mitigate the error propagation in QR aided SIC detection, 2. Multiple branches with multiple ordering techniques namely, based on signal to noise ratio (SNR) and based on log likelihood ratio (LLR) ordering are employed to achieve a higher detection diversity, and 3. BER performance and computational complexity comparisons are carried out with conventional SIC and other SIC based algorithms.

2 System Model

Fig. 1
figure 1

MIMO system model

In this section, we discuss the mathematical formulation of MIMO system equipped with \(N_t\) antennas at the transmitter and \(N_r\) antennas at the receiver, respectively which is shown in Fig. 1. Let \(\bar{\mathbf {x}}\) be the \(N_t\times 1\) transmit data vector with each element \(\bar{x}_i\) for \(i=1,2,\ldots ,N_t\) taken from a constellation \(\bar{\mathbb {A}}\) for example \(\bar{\mathbb {A}}=\{-1-1i, -1+1i, 1-1i, 1+1i\}\) for 4-QAM modulation. The \(N_r\times N_t\) MIMO channel matrix is denoted by \(\bar{\mathbf {H}}\) with each element \(\bar{h}_{k,j}\) for \(k=1,2,\ldots ,N_r\) and \(j=1,2,\ldots ,N_t\), assumed to be independent and identically distributed (i.i.d.) complex normal with mean zero and unit variance i.e. \(\sim \mathcal {CN} \left( 0,1\right)\). \(\bar{h}_{k,j}\) denotes the gain of channel between jth transmit antenna and the kth receive antenna. The \(N_r\times 1\) received vector \(\bar{\mathbf {y}}\) is

$$\begin{aligned} \bar{\mathbf {y}}=\bar{\mathbf {H}}\bar{\mathbf {x}}+\bar{\mathbf {n}} \end{aligned}$$
(1)

where \(\bar{\mathbf {n}}\) is the complex additive white Gaussian noise (AWGN) vector of size \(N_r \times 1\)with each element \(\bar{n}_k\) for \(k = 1,2,\ldots ,N_t\) is assumed to be i.i.d. and \(\sim \mathcal {CN}\left( 0,\sigma ^2\right)\) and \(\sigma ^2\) is noise variance. The average SNR is defined as \(10\log _{10} \frac{N_t E_{\bar{x}}}{\sigma ^2}\) dB, where \(E_{\bar{x}}\) denotes the average energy per symbol. The equivalent \(2N_r\times 1\) real valued received is

$$\begin{aligned} \mathbf {{y}}=\mathbf {{H}} \mathbf {{x}}+\mathbf {{n}} \end{aligned}$$
(2)

where \(\mathbf {y}= \left[ \begin{array}{l} \mathfrak {R}(\bar{\mathbf {y}})\\ \mathfrak {I}(\bar{\mathbf {y}})\\ \end{array}\right] _{2N_r\times 1}\), \(\mathbf {H}= \left[ \begin{array}{ll} \mathfrak {R}(\bar{\mathbf {H}}) &{} -\mathfrak {I}(\bar{\mathbf {H}})\\ \mathfrak {I}(\bar{\mathbf {H}}) &{} \mathfrak {R}(\bar{\mathbf {H}})\\ \end{array}\right] _{2N_r\times 2N_t}\), \(\mathbf {x}= \left[ \begin{array}{l} \mathfrak {R}(\bar{\mathbf {x}})\\ \mathfrak {I}(\bar{\mathbf {x}})\\ \end{array}\right] _{2N_t\times 1}\), and \(\mathbf {n}= \left[ \begin{array}{l} \mathfrak {R}(\bar{\mathbf {n}})\\ \mathfrak {I}(\bar{\mathbf {n}})\\ \end{array}\right] _{2N_r\times 1}\). \(\mathfrak {R}(\cdot )\) denote the real part and \(\mathfrak {I}(\cdot )\) denote the imaginary part of \((\cdot )\), respectively. The constellation in this equivalent system will have real values only for example \(\mathbb {A}=\{-1,+1\}\) for 4-QAM and \(\mathbb {A}=\{-3,-1,+1,+3\}\) for 16-QAM. The ML solution is given as the vector \(\mathbf {x}\) which minimizes the following metric

$$\begin{aligned} f(\mathbf {x})=\Vert {\mathbf {y}-\mathbf {Hx}}\Vert ^2 \end{aligned}$$
(3)

given by

$$\begin{aligned} \mathbf {x}_{ML}=\arg \min _{\mathbf {x}\in \mathbb {A}^{2N_t}} \Vert {\mathbf {y}-\mathbf {Hx}}\Vert ^2 \end{aligned}$$
(4)

2.1 ZF Technique

In ZF technique, a transformation \(\mathbf {W}_{ZF}\) is applied on the received vector \(\mathbf {y}\). The transformation matrix \(\mathbf {W}_{ZF}\) is the pseudo-inverse of the channel \(\mathbf {H}\) i.e. \(\mathbf {W}_{ZF}=\left( \mathbf {H}^H\mathbf {H}\right) ^{-1}\mathbf {H}^H\). This linear transformation results in

$$\begin{aligned} \mathbf {x}_{ZF}= & {} \mathbf {W}_{ZF}\mathbf {y}=\mathbf {W}_{ZF}\mathbf {{H}} \mathbf {{x}}+\mathbf {W}_{ZF}\mathbf {{n}} \end{aligned}$$
(5)
$$\begin{aligned} \mathbf {x}_{ZF}= & {} \mathbf {{x}}+\mathbf {W}_{ZF}\mathbf {{n}} \end{aligned}$$
(6)

The vector \(\mathbf {x}_{ZF}\) is then quantized using the quantization operator as

$$\begin{aligned} \widetilde{\mathbf {x}}_{ZF}=\mathcal {Q}(\mathbf {x}_{ZF}) \end{aligned}$$
(7)

where \(\mathcal {Q}(\cdot )\) is the quantization operator which assigns a nearest hard value taken from the constellation set \(\mathbb {A}\).

2.2 MMSE Technique

In MMSE, the transformation \(\mathbf {W}_{MMSE}\) is chosen in such a way that it minimizes the error in mean squared sense between the estimated vector and the transmitted vector as

$$\begin{aligned} \mathbf {W}_{MMSE}=\arg \min _{\mathbf {W}} \mathbb {E}\left[ \Vert {\mathbf {x}-\mathbf {Wy}}\Vert ^2\right] \end{aligned}$$
(8)

where \(\mathbb {E}(\cdot )\) denote the statistical mean. The matrix \(\mathbf {W}_{MMSE}\) obtained by solving the Eq. 9 is given by

$$\begin{aligned} \mathbf {W}_{MMSE}=\left( \mathbf {H}^H\mathbf {H}+\frac{\sigma ^2}{E_x}\mathbf {I}\right) ^{-1}\mathbf {H}^H \end{aligned}$$
(9)

where \(( \cdot )^H\) denotes the conjugate transpose of a matrix. The estimates of the received vector \(\mathbf {y}\) obtained from the MMSE can then be written as

$$\begin{aligned} \widetilde{\mathbf {x}}_{MMSE}=\mathcal {Q}(\mathbf {W}_{MMSE}\mathbf {y}) \end{aligned}$$
(10)

3 Overview of QR Decomposition Aided SIC Based MIMO Detection

In this section, we discuss the SIC based detection for MIMO systems by using the \(\mathbf {QR}\) decomposition. In QR-SIC technique, the channel \(\mathbf {H}\) is decomposed into a matrix \(\mathbf {Q}\) which is orthonormal and another matrix \(\mathbf {R}\) which is upper triangular [23]. Thus, the vector \(\mathbf {y}\) can now be written as

$$\begin{aligned} \mathbf {y} = \mathbf {Q}\mathbf {R}\mathbf {x} + \mathbf {n} \end{aligned}$$
(11)

Since \(\mathbf {Q}\) is orthonormal i.e. \(\mathbf {Q}^H\mathbf {Q} = \mathbf {I}\). The received vector can further be processed as

$$\begin{aligned} \mathbf {Q}^H\mathbf {y}= & {} \mathbf {Q}^H\mathbf {Q}\mathbf {R}\mathbf {x} + \mathbf {Q}^H\mathbf {n} \end{aligned}$$
(12)
$$\begin{aligned} \widetilde{\mathbf {y}}= & {} \mathbf {R}\mathbf {x} + \widetilde{\mathbf {n}} \end{aligned}$$
(13)

where \(\widetilde{\mathbf {y}} = \mathbf {Q}^H\mathbf {y}\) and \(\widetilde{\mathbf {n}} = \mathbf {Q}^H\mathbf {n}\). By utilizing the upper triangular nature of \(\mathbf {R}\), we use backward propagation in order to detect the symbols sequentially. The last layer ( last element of \(\widetilde{\mathbf {y}}\) ) is given by

$$\begin{aligned} \widetilde{y}_{2N_t} = {R}_{2N_t,2N_t}x_{2N_t} + \widetilde{n}_{2N_t} \end{aligned}$$
(14)

From this equation \(x_{2N_t}\) is detected as,

$$\begin{aligned} \widehat{x}_{2N_t}= & {} \frac{\widetilde{y}_{2N_t}}{{R}_{2N_t,2N_t}} \end{aligned}$$
(15)
$$\begin{aligned} \widetilde{x}_{2N_t}= & {} \mathcal {Q}\left( \frac{\widetilde{y}_{2N_t}}{{R}_{2N_t,2N_t}}\right) \end{aligned}$$
(16)

After deciding the symbol \(\widetilde{x}_M\), its interference from upper layer is canceled and the corresponding symbol is detected as

$$\begin{aligned} \widehat{x}_{2N_t-1} = \frac{\widetilde{y}_{2N_t-1}-R_{2N_t-1,2N_t}\widetilde{x}_2N_t}{{R}_{2N_t-1,2N_t-1}} \end{aligned}$$
(17)

Similarly, for the kth layer, \(\widehat{x}_k\) is detected as

$$\begin{aligned} \widehat{x}_{k} = \frac{\widetilde{y}_{k}-\sum _{j=k+1}^{2N_t}R_{k,j}\widetilde{x}_j}{R_{k,k}} \end{aligned}$$
(18)

Thus, in every layer, the interference due to the symbols detected in earlier layers is canceled and the decision about the symbol for the corresponding layer is made. Finally, we will get the symbol vector \(\widetilde{\mathbf {x}}=[\widetilde{x}_1, \widetilde{x}_2,\ldots ,\widetilde{x}_{2N_t}]^\mathrm{T}\). A pseudo code for QR aided SIC based MIMO detection algorithm is given in Algorithm 1

figure c

However, SIC based detection is prone to error propagation [12]. Due to this the BER performance of SIC is sub-optimal. In order to overcome this limitation and to mitigate error propagation to achieve near optimal BER performance, in the next section, we propose MMF-SIC algorithm for detection of symbols in large MIMO systems.

4 Proposed Algorithm for MIMO Detection

In this section, we first discuss the multiple feedback (MF) scheme used in SIC to reduce the error propagation. We will then propose the MMF-SIC algorithm wherein a modified MF scheme is used to improve the reliability. Further, to mitigate error propagation, we have used multiple ordering strategies in the detection sequence based on the SNR and the LLR. These two ordering schemes are used parallely and can be thought of as two branches in MMF-SIC which results in an enhanced detection diversity and successful mitigation of error propagation. To simplify the explanation and highlight the concept of the proposed algorithm, we consider 4-QAM signalling in MIMO systems.

In MF based SIC [12], a reliability criteria is used which is based on the distance of the estimated symbol value \(\widehat{x}_{k}\) from the decision boundary i.e. Voronoi boundary as

$$\begin{aligned} d_{k} = \vert \widehat{x}_{k}\vert = \vert \frac{\left( \widetilde{y}_{k}-\sum _{j=k+1}^{2N_t}R_{k,j}\widetilde{x}_j\right) }{R_{k,k}}\vert \end{aligned}$$
(19)

The distance \(d_k\) is then compared with a threshold value \(d_{th}\). The concept of unreliability region is used which is the area surrounding the Voronoi boundaries with more chances of getting an inaccurate result as shown in Fig. 2. Since, we have converted the complex valued system into an equivalent real valued system, the unreliability region used in this work is as shown in Fig. 3. The threshold value \(d_{th}\) define the limits of the unreliability region. If \(d_k \ge d_{th}\), the estimate \(\widehat{x}_k\) is near to the constellation point and hence the normal SIC is continued with \(\widetilde{x}_k = \mathcal {Q}(\widehat{x}_k)\). Otherwise if \(d_k < d_{th}\) the estimate falls into the unreliability region, S nearer constellation points are used in decision feedback for \(x_k\). The best one out of multiple constellation points in selected based on the ML criteria. In Algorithm 2, we present the MF-SIC algorithm for MIMO detection.

Fig. 2
figure 2

Unreliability region for 4-QAM constellation

Fig. 3
figure 3

Unreliability region for 4-QAM constellation in equivalent real valued MIMO system

figure d

In MF-SIC, when an estimated value falls in the unreliability region, a normal SIC (without multiple feedback loops) is used in the subsequent layers to decide the best symbol for the current layer (as in line 11–14 of Algorithm 2). However, it might happen that, when deciding the symbol for a layer in unreliability region, we encounter furthermore unreliability conditions as shown in Fig. 4. This event has not been considered in MF-SIC which results in a sub-optimal performance as shown in Sect. 5. To improve the error rate performance, we propose MMF-SIC which overcomes this limitations. The MF criteria is used as a separate sub-routine and is called multiple times recursively. In order to reduce the computational complexity of MMF-SIC, we limit the number of recursion. Let L denote the number of times mmf_ subroutine (Algorithm 4) is called from the subroutine itself. The advantage in MMF-SIC is that the MF subroutine can call itself when multiple unreliability conditions occur within the loop. The pseudo code of MMF-SIC along with IMF subroutine is shown in Algorithms 3 and 4.

Fig. 4
figure 4

Occurrence of multiple unreliability conditions

figure e
figure f

So far, we have not considered order in the sequence of detecting symbols which is extremely useful for reducing the error propagation. Ordering of the sequence for detection minimizes error propagation and thus improves the BER performance. In this study, we use multiple ordering techniques namely, SNR based and LLR based ordering. These ordering methods are modifications to Grahm Schmidt orthogonalization [23] and are used while performing the QR decomposition of the channel matrix \(\mathbf {H}\). In Algorithm 5, SNR based sorting for QR decomposition is shown where in each orthogonalization step the channel link with minimum SNR is selected i.e. arranging the layers from 1 to \(2N_t\) in increasing order of SNR [19]. This results in detecting the symbol with higher SNR first so that there will be less chances of occurrence of error in early layers. In Algorithm 6, LLR ordered algorithm for sorting the QR decomposition is shown. In LLR ordering, the SNR is considered together with the instantaneous noise [20]. LLR ordered SIC performs superior over the SNR ordered SIC, but in order to gain more diversity, we consider both the ordering schemes in parallel. Thus the proposed MMF-SIC can be considered as comprising of two parallel branches. The best estimate from the two outputs is selected through the use of ML metric.

figure g
figure h

5 Simulation Results

The simulation results of the MMF-SIC algorithm in terms of error rate performance versus the SNR in dB, error rate performance for different \(N_t\) and the complexity versus number of antennas are shown and compared with other methods such as SNR ordered SIC, LLR ordered SIC and LLR ordered MF-SIC. We consider \(8\times 8\), \(16\times 16\) and \(32\times 32\) MIMO systems with 4-QAM signaling. The simulations are performed in MATLAB and the error is averaged over \(10^4\) samples.

Fig. 5
figure 5

BER performance comparison of uncoded \(8\times 8\) MIMO system with 4-QAM signaling

Fig. 6
figure 6

BER performance comparison for uncoded \(16\times 16\) MIMO system with 4-QAM signaling

Fig. 7
figure 7

BER performance comparison for uncoded \(32\times 32\) MIMO system with 4-QAM signaling

Fig. 8
figure 8

Comparison on BER performance for \(N_t = N_r = 4, 8, 16, 32\) MIMO system with 4-QAM signaling

In Fig. 5, we discuss the error rate performance of the proposed MMF-SIC algorithm for \(8\times 8\) MIMO system with 4-QAM signaling. The threshold value \(d_{th}\) used is 0.75 and 0.9. The performance of the MMF-SIC algorithm is compared with the SNR and LLR ordered SIC, multiple feedback with LLR-SIC and the ML performance. We observe that the MMF-SIC outperforms the other techniques and obtains the near-ML performance. Further, with increase in the \(d_{th}\), the BER performance improves which is due to the fact that the size of reliability region decreases, and hence, only highly reliable decisions will be considered. The error rate performance comparison of \(16\times 16\) MIMO system for different algorithms is shown in Fig. 6. We have used \(d_{th} = 0.75\) and L = 1, 2. Observation reveals that the MMF-SIC performs superior over the other techniques and also we observe that as L increases, the BER performance improves, and shifts toward the optimal performance.

In Fig. 7, the error rate performance of MMF-SIC is compared for 4-QAM modulated \(32\times 32\) MIMO systems. The BER performance of MMF-SIC shows significant improvement over MF-SIC and is close to the single-input single-output (SISO) communication system with additive white Gaussian noise (AWGN) only performance. In Fig. 8, the BER performance of \(N_t = N_r =4, 8, 16 and 32\) MIMO systems is compared. We observe that the error rate performance of MMF-SIC improves with increase in \(N_t\) and shift towards the performance of SISO-AWGN systems.

5.1 Computational Complexity

In this subsection, the plots on computational complexity are shown with respect to the variation in \(N_t\). In Fig. 9, the number of computations of the MMF-SIC algorithm, the LLR ordered SIC (LLR-SIC) and MF aided LLR-SIC algorithms for \(d_{th} = 0.2, 0.5, 0.75\) and 0.9 are compared, and, the number of recursion is limited to 1 only i.e. \(L=1\). Observations reveal that the computational complexity of the MMF-SIC algorithm is comparable with SIC and MF aided SIC, and, depends on the choice of the threshold distance \(d_{th}\) of the unreliability region. Similarly, in Fig. 10, the computational complexity of MMF-SIC is compared with LLR-SIC [5] and MF-LLR-SIC [12] i.e. the LLR ordered SIC and MF-SIC algorithms for \(L = 2\) and \(d_{th} = 0.2, 0.5, 0.75\). Observation reveals that the number of recursions significantly increases the computational complexity of the proposed algorithm.

Fig. 9
figure 9

Number of computations versus number of transmit antennas at SNR = 12 dB in MIMO systems with 4-QAM

Fig. 10
figure 10

Number of computations versus number of transmit antennas at SNR = 12 dB in MIMO systems with 4-QAM

6 Conclusions

We have proposed a modified multiple feedback SIC (MMF-SIC) algorithm for MIMO detection. It is observed that the proposed technique mitigates error propagation successfully. An enhanced BER performance is achieved by MMF-SIC over the existing SIC based detection schemes in MIMO systems. The computational complexity of the MMF-SIC algorithm is compared with the SIC technique and the MF-SIC technique, and, also that it can be controlled by limiting the number of recursive iterations and the threshold distance. Furthermore, simulations validate the improvements in terms of BER performance of MMF-SIC as \(N_t\) increases, and therefore, the algorithm is extremely important for detection in large-MIMO systems.