# Signal Detection Based on Parallel Group Detection Algorithm for High-Load Massive MIMO Systems

Authors: Thanh-Binh Nguyen; Minh-Tuan Le; Vu-Duc Ngo
Journal: Wireless Communications and Mobile Computing
 (2019)

---

## Abstract

In this paper, a parallel group detection (PGD) algorithm is proposed in order to address the degradation in the bit error rate (BER) performance of linear detectors when they are used in high-load massive MIMO systems. The algorithm is constructed by converting the equivalent extended massive MIMO system into two subsystems, which can be simultaneously detected by the classical detection procedures. Then, using the PGD and the classical ZF as well as the QR-decomposition- (QRD-) based detectors, we proposed two new detectors, called ZF-based PGD (ZF-PGD) and QRD-based PGD (QRD-PGD). The PGD is further combined with the sorted longest basis (SLB) algorithm to make the signal recovery more accurate, thereby resulting in two new detectors, namely, the ZF-PGD-SLB and the QRD-PGD-SLB. Various complexity evaluations and simulations prove that the proposed detectors can significantly improve the BER performance compared to their classical linear and QRD counterparts with the practical complexity levels. Hence, our proposed detectors can be used as efficient means of estimating the transmitted signals in high-load massive MIMO systems.


---

## Body

## 1. Introduction

In recent years, massive multiple-input-multiple-output (massive MIMO) systems have been proposed to improve the quality of signal transmission in wireless communications. In a massive MIMO system, each cell site is equipped with very large number of antennas. Therefore, massive MIMO systems can provide not only high energy efficiency but also very high spectral one [1, 2]. Currently, the system with 128 antennas deployed at the BS, which simultaneously serves 8 single-antenna users, has been built successfully in laboratory [3]. Consequently, massive MIMO is expected to be one of the most important technologies for next generation cellular networks.In massive MIMO, all complex signal processing, including signal detection for the uplink, precoding for the downlink, and channel estimation for both, should be implemented at the BS due to large dimension of the system [1]. For uplink scenario, all active users transmit their signals to the BS using the same time-frequency resources. These transmitted signal symbols are recovered at the BS by adopting suitable detectors. The detectors used in massive MIMO systems must satisfy the following requirements: (1) they should provide good BER performance or high spectral efficiency and (2) they should have low complexities. Low complexity linear detectors, such as zero-forcing (ZF) [4–7] or minimum mean square error (MMSE), can provide near-optimal bit error rate (BER) performance when they are used in massive MIMO systems [1]. In [8], the authors proved that if the system uses the Bell Laboratory Space Time (BLAST) detector, it will obtain a huge energy efficiency compared to that of the classical MMSE.It is worth noting that the BER performance of the system depends on the so-called load factorβ, defined by the ratio of the total number of antennas equipped at the users’ side and the ones at the BS. In [9], Björnson et al. declared that there exists no specific value of system’s load factor and the system can be defined unconventionally with arbitrary number of antennas and users. This means, massive MIMO can be defined as either a high-load system (i.e., β≈1) or a low-load one (i.e. β≪1). When β is high, the BER performance given by linear detectors presented in [1] becomes worse. Thus, they are not suitable detectors for signal recovery in high-load scenarios. In spite of the fact that it can provide high BER performance, the BLAST detector in [8] is also not applicable to massive MIMO systems with hundreds of antennas due to its high complexity.In order to improve BER performance of linear detectors in high-load massive MIMO systems, Post Detection Sparse Error Recovery (PDSR) algorithm [10] can be applied. Nevertheless, this algorithm only uses binary phase shift keying (BPSK) or quadrature phase shift keying (QBSK). As a result, the overall system throughput is limited. Another way to improve BER performance of the system is to artificially reduce load factor of the system. In [11], Nguyen et al. proposed group detection (GD) algorithm and the efficient low complexity detectors called the ZF-GD and ZF-IGD. The algorithm is built by dividing a high-load massive MIMO system to two separate subsystems with smaller load factors. As a consequence, these detectors significantly outperform their classical ZF counterpart. Unfortunately, in full-load systems (β=1), they underperform than the classical MMSE detector, thereby making them less attractive.In this paper, we develop our idea called the parallel group detection (PGD) algorithm in [12] for high-load massive MIMO systems. The algorithm is built by dividing the equivalent extended form of high-load massive MIMO system into two smaller load subsystems, which can be detected in parallel by utilizing the classical detectors. Based on the PGD, the classical ZF, and the QRD detectors, we are able to create two new detectors, namely, ZF-PGD and QRD-PGD. In order to improve the accuracy of the signal detection process, the shortest longest basis (SLB) algorithm [13], an efficient lattice reduction technique, is further combined with the PGD to generate two other new detectors, called ZF-PGD-SLB and QRD-PGD-SLB. The empirical simulations and complexity evaluations show that the proposed detectors can significantly improve the BER performance of massive MIMO systems compared to those of the classical linear detectors and the QRD while their complexities are at the practical levels. Consequently, they are the good candidates for signal recovery in high-load massive MIMO systems.Notations: ℂ denotes set of complex numbers; Q is the slicing operation, which slices the received signals to the nearest values in the set of integer numbers corresponding to the QAM constellation; IN is a N×N identity matrix, and 1N is a N×1 one vector, whose elements are all 1; ▪T and ▪H are the transpose and Hermitian transpose operations; E▪ and ⊗ denote the expectation operation and Kronecker product, respectively; and P† is the pseudoinverse of matrix P and ▪ is the round operation.


## 2. Uplink Massive MIMO System Model

Let us consider an uplink scenario of a single-cell massive MIMO system, as depicted in Figure1. In the system, the BS with Nr antennas, located at the cell’s origin, communicates with K multiple-antenna users using the same frequency and time resources. Each user has NT antennas. In order to obtain high spectral efficiency, each user is assumed to use spatial division multiplexing (SDM) scheme. Using this scheme, the serial data stream of each user is first converted into NT substreams, and then they are transmitted simultaneously by this user’s antennas to the BS. Under the above assumptions, the overall transmit signal vector from K users, x∈ℂN×1, N=KNT, can be expressed as(1)x=x1Tx2T⋯xKTT,where xi∈ℂNT×1, i=1,2,…,K, is the transmit signal vector of the ith user satisfying ExixiH=EsINT, and Es is the average energy of M-QAM signals.Figure 1
System model of a single-cell massive MIMO system.The received vector at the BS,y∈ℂNr×1, can be modeled as follows:(2)y=puNTEsHB⊗INT1/2x+n,where pu denotes the transmit power of each user; H∈ℂNr×N and n∈ℂNr×1 are, respectively, small-scale fading channel matrix and noise vector, whose entries are independent identically distributed (i.i.d) random variables with zero mean and unit variance; and B is a K×K diagonal matrix including the large-scale fading coefficients. It is reasonable to assume that the large-scale fading coefficients are the same for one user and different from those of the others because the distances between the antenna elements are very much smaller than those from the users to the BS. The large-scale fading coefficient corresponding to ith user is given by [14](3)bi,i=zidi/d0γ,where bi,i is the ith diagonal element of B; zi is a random variable, representing the shadowing, with zero mean and variance σShadow2; di and d0, respectively, denote the distance from the ith user to the BS and the reference distance; and γ is the path loss factor.For the sake of simplicity, let us defineU=pu/NTEsHB⊗INT1/2. Then, the system model in (2) can be rewritten as(4)y=Ux+n,or equivalently as(5)yex=Uexx+nex,where yex=yT0NTT, Uex=UT1/EsINT, and nex=nT−1/EsxTT, respectively, represent the received signal vector, the channel matrix, and the noise vector of the extended massive MIMO system [15]. Normally, the receiver needs to get the channel state information (CSI), i.e., to estimate the channel matrix U, through the adoption of some estimator, e.g., the MMSE estimator. In this paper, it is assumed that the CSI is perfectly known at the BS for the sake of simplicity.


## 3. Linear Detection and Its Drawbacks

Linear detectors, such as the ZF or the MMSE, have low complexity. Therefore, it is suitable for signal detection in massive MIMO systems. When the load factor of the system is sufficiently small (i.e.,β=N/Nr≪1), the BER performances of the linear detectors become near optimal [1]. However, as the load factor approaches unit, performance of the linear detectors degrades noticeably. By applying the ZF detector to the original system in (4), all N transmitted symbols from K users can be simultaneously detected as follows:(6)x˜=U†y=x+U†n.The weighted vectorx˜ is then sliced to obtain the final output of the ZF detector as(7)x˜=Qx˜.It is easy to observe from (6) that there is an error vector in estimation x˜ given by e=x˜−x=U†n. Therefore, the error covariance matrix is determined as follows:(8)ΦZF=EeeH=UHU−1.The average mean square error (MSE) occurred when recovering one symbol can be determined by(9)MSEZF=1NtraceΦZF=1NtraceUHU−1.Shown in Figure2 is the empirical cumulative distribution function (ECDF) of the MSEZF realized with 103 iterations when N=64, Nr=64:64:264 antennas, or equivalently, the load factor β=N/Nr=1:−0.25:0.25). The large-scale fading coefficients are determined by setting the SNR pu/σ2=27 dB (where σ2 is the noise power), d0=100 m, 100m≤di≤990 m, σShadow2=8 dB, and γ=3.5. The results in Figure 2 clearly show that the MSE significantly reduces as the load factor gets smaller. In the worse case, when N=Nr=64 or β=1, the MSE becomes very large. This indicates that the BER performance of the system will severely degrade. The reasons of this phenomenon can be two-fold: (1) the ZF detector suffers from the noise amplification effect and (2) the diversity order provided by the ZF detector reduces from Nr−N+1 (for Nr>N) to 1.Figure 2
ECDF of MSE of the classical ZF detector realized in103 iterations when Nr=64:64:264, NT=4, K=16, pu/σ2 = 27 dB, d0=100m, 100m≤di≤990m, σShadow2=8dB, and γ=3.5.It is remarkable that when the ZF detection procedures are utilized on extended system in (5), the resultant detector is called the MMSE detector. Therefore, MMSE detection and its MSE can be extended from the ZF ones by substituting channel matrix, U, by its extended form, Uex.


## 4. Proposed Detectors with Parallel Group Detection

### 4.1. Parallel Group Detection Approach

In order to address the problem of performance degradation in very high-load massive MIMO systems, we propose the so-called parallel group detection (PGD) algorithm. In the proposed approach, a massive MIMO system is divided into several parallel subsystems with lower load, which are then detected separately. As a result, the overall system performance can be noticeably improved. In general, the number of parallel branches can be from 2 toN. Nevertheless, the more the number of subsystems generated, the higher the detection complexity required. Therefore, in this paper, a system with two branches, i.e., two subsystems, is considered to keep the complexity at a reasonable level.Figure3 shows the detection scheme using the proposed PGD algorithm when number of parallel branches equals 2. The transmit signal vector x is estimated by the PGD algorithm through the following steps:Step 1: convert the massive MIMO system into its equivalently extended form, as in (5)Step 2: generate 2 subsystems in parallelStep 3: estimate the transmitted subvectors (i.e.,s^1 and s^2) by applying some classical detector on each subsystemStep 4: rearrange the estimated subvectors to get the estimated signal vectorx˜ as x˜=s^1Ts^2TTFigure 3
Block diagram of signal detection using the proposed PGD algorithm.In this section, Step 2 is described in detail. Steps 3 and 4 are presented in the following sections.First of all, we rewrite the extended massive MIMO system in (5) as(10)yex=G1G2s1s2+nex=G1s1+G2s2+nex,where G1∈ℂNr+N×L and G2∈ℂNr+N×N−L are the subchannel matrices obtained by, respectively, taking first L and the remaining N−L columns of the extended channel matrix Uex. Similarly, s1∈ℂL×1 and s2∈ℂN−L×1 denote the transmitted subvectors generated by taking the first L and the remaining elements of the transmitted signal vector x. The value of L should be selected in such a way that the PGD-based detectors meet the following requirements: (1) the BER performances of users belonging to different groups are the nearly same and (2) the total complexities of proposed detectors get as low as possible. In [11], the authors pointed out that the group detection algorithm (GD) is able to achieve the best BER performance at the lowest possible computational cost when the sizes of both subsystems are identical. Following the method in [11], we can find out that L=N/2 is the best value of L that satisfies both of the above requirements. Therefore, throughout the paper, we select L=N/2 as the optimal value.In order to generate the first subsystem, the interference termG2s2 in (10) needs to be eliminated. Let P1=INr+N−G2G2† be the projection term. Then, multiplying both sides of (10) by P1, we get(11)P1yex=P1G1s1+P1nex.Now, definey˜1=P1yex, G˜1=P1G1, n˜1=P1nex as received vector, channel matrix, and noise vector of the first subsystem; then, (11) is further rewritten as(12)y˜1=G˜1s1+n˜1.Similarly, the second subsystem is generated in parallel with the first one as follows:(13)y˜2=G˜2s2+n˜2,where y˜2=P2yex, G˜2=P2G2, n˜2=P2nex, and P2=INr+N−G1G1†.It is noteworthy that the load factor given by each subsystem isβ1=β2=L/Nr+N, which is a half of that of the original system. Therefore, the BER performance of the system is expected to improve as the PGD algorithm is adopted. The PGD algorithm is summarized as in Algorithm 1.Algorithm 1:Proposed PGD algorithm.
Input:y, U, K, NT
Output:x^
(1)
Convert the system to equivalent extended form withyex=yT0NTT; Uex=UT1/EsINT.
(2)
SetL=N/2 and define G1=Uex:,1:L,G2=Uex:,L+1:N.
(3)
ComputeP1=I−G2G2† and P2=I−G1G1†.
(4)
Compute received vectors and channel matrices of the two parallel subsystems asy˜1=P1yex, G˜1=P1G1, y˜2=P2yex, G˜2=P2G2.
(5)
Estimate both transmitted subvectorss^k, k=1,2, by applying a suitable subdetector to the kth subsystem having y˜k, G˜k.
(6)
Rearrange the recovered subvectors to get the overall estimated vector asx^=s^1Ts^2TT.


### 4.2. Proposed ZF-PGD and QRD-PGD Detectors

Theoretically, any classical detectors can be used as subdetectors in the PGD algorithm to estimates^1 and s^2. However, low-complexity detectors should be adopted to keep the complexity at practical levels. In this section, we adopt the classical QRD and the ZF in the PGD to generate two new detectors, called the ZF-PGD and QRD-PGD, as described below.


#### 4.2.1. ZF-PGD Detector

In the ZF-PGD algorithm,s^k, k=1,2, are estimated by the ZF detection procedure to both subsystems in the PGD as follows:(14)s^k=QG˜k†y˜k=Qs˜k+G˜k†n˜k.Similarly to the ZF detector, the error covariance matrices and MSEs for each branch in the ZF-PGD can be determined, respectively, as follows:(15)ΦkZF−PGD=Esk−s˜ksk−s˜kH=EG˜k†n˜kG˜k†n˜kH=G˜kHG˜k−1,(16)MSEkZF−PGD=1LtraceG˜kHG˜k−1.Shown in Figure4 is the ECDF of the classical linear detectors and the ones based on PGD algorithm when the parameters are set almost the same as in Figure 2 except Nr=64 antennas. The illustration shows that the MSEs of the two subsystems detected by the ZF-PGD are equal to each other and much smaller than that of the classical ZF detector. They are even comparable with the MSE of the MMSE detector. This implies that the ZF-PGD can improve the system performance significantly compared to the ZF one.Figure 4
ECDF curves of the MSEs of the classical linear detectors: the ZF-PGD and the ZF-PGD-SLB detectors realized in103 iterations when Nr=64, NT=4, K=16, pu/σ2=27dB, d0=100m, 100m≤di≤990m,σShadow2=8dB, and γ=3.5.


#### 4.2.2. QRD-PGD Detector

In order to further improve the BER performance of the PGD algorithm, the conventional QRD detector is applied to the subsystems to generate the QRD-PGD detector as follows.First, using the QR decomposition to decompose subchannel matrices,G˜k, k=1,2, we get(17)G˜k=QkRk,where Qk is Nr+N×L unitary matrices satisfying that QkHQk=IL and Rk be L×L upper triangle matrices, which can be presented in the matrix form asfollows:(18)Rk=rk1,1rk1,2⋯rk1,L0rk2,2⋯rk2,L⋮⋮⋱⋮000rkL,L,where rki,j denotes the ith row and jth column entry of Rk. Next, multiplying both sides of (17) by QkH, we obtain(19)vk=QkHy˜k=Rksk+QkHn˜k.Finally, ignoring the noise termQkHn˜k in (19), all entries of s^k (denoted by s˜ki, i=L, L−1,…,1) are determined layer by layer using the following rule:(20)s^ki=Qs˜ki=Qvkirki,i,i=L,vki−∑j=i+1Lrki,js^kjrki,i,i≠L,,where vki is ith entry of vk and s^kj is the sliced value of s˜kj.Note that the BER performance given by the QRD-PGD is usually better than that of its ZF-PGD counterpart due to the advantage of the successive interference cancelation (SIC) technique. However, it suffers from the larger delay of the SIC technique. The higher the dimensions of the system are, the higher delay the QRD-PGD suffers. Therefore, the QRD-PGD detector is suitable to be used in small- or medium-size systems.


## 4.1. Parallel Group Detection Approach

In order to address the problem of performance degradation in very high-load massive MIMO systems, we propose the so-called parallel group detection (PGD) algorithm. In the proposed approach, a massive MIMO system is divided into several parallel subsystems with lower load, which are then detected separately. As a result, the overall system performance can be noticeably improved. In general, the number of parallel branches can be from 2 toN. Nevertheless, the more the number of subsystems generated, the higher the detection complexity required. Therefore, in this paper, a system with two branches, i.e., two subsystems, is considered to keep the complexity at a reasonable level.Figure3 shows the detection scheme using the proposed PGD algorithm when number of parallel branches equals 2. The transmit signal vector x is estimated by the PGD algorithm through the following steps:Step 1: convert the massive MIMO system into its equivalently extended form, as in (5)Step 2: generate 2 subsystems in parallelStep 3: estimate the transmitted subvectors (i.e.,s^1 and s^2) by applying some classical detector on each subsystemStep 4: rearrange the estimated subvectors to get the estimated signal vectorx˜ as x˜=s^1Ts^2TTFigure 3
Block diagram of signal detection using the proposed PGD algorithm.In this section, Step 2 is described in detail. Steps 3 and 4 are presented in the following sections.First of all, we rewrite the extended massive MIMO system in (5) as(10)yex=G1G2s1s2+nex=G1s1+G2s2+nex,where G1∈ℂNr+N×L and G2∈ℂNr+N×N−L are the subchannel matrices obtained by, respectively, taking first L and the remaining N−L columns of the extended channel matrix Uex. Similarly, s1∈ℂL×1 and s2∈ℂN−L×1 denote the transmitted subvectors generated by taking the first L and the remaining elements of the transmitted signal vector x. The value of L should be selected in such a way that the PGD-based detectors meet the following requirements: (1) the BER performances of users belonging to different groups are the nearly same and (2) the total complexities of proposed detectors get as low as possible. In [11], the authors pointed out that the group detection algorithm (GD) is able to achieve the best BER performance at the lowest possible computational cost when the sizes of both subsystems are identical. Following the method in [11], we can find out that L=N/2 is the best value of L that satisfies both of the above requirements. Therefore, throughout the paper, we select L=N/2 as the optimal value.In order to generate the first subsystem, the interference termG2s2 in (10) needs to be eliminated. Let P1=INr+N−G2G2† be the projection term. Then, multiplying both sides of (10) by P1, we get(11)P1yex=P1G1s1+P1nex.Now, definey˜1=P1yex, G˜1=P1G1, n˜1=P1nex as received vector, channel matrix, and noise vector of the first subsystem; then, (11) is further rewritten as(12)y˜1=G˜1s1+n˜1.Similarly, the second subsystem is generated in parallel with the first one as follows:(13)y˜2=G˜2s2+n˜2,where y˜2=P2yex, G˜2=P2G2, n˜2=P2nex, and P2=INr+N−G1G1†.It is noteworthy that the load factor given by each subsystem isβ1=β2=L/Nr+N, which is a half of that of the original system. Therefore, the BER performance of the system is expected to improve as the PGD algorithm is adopted. The PGD algorithm is summarized as in Algorithm 1.Algorithm 1:Proposed PGD algorithm.
Input:y, U, K, NT
Output:x^
(1)
Convert the system to equivalent extended form withyex=yT0NTT; Uex=UT1/EsINT.
(2)
SetL=N/2 and define G1=Uex:,1:L,G2=Uex:,L+1:N.
(3)
ComputeP1=I−G2G2† and P2=I−G1G1†.
(4)
Compute received vectors and channel matrices of the two parallel subsystems asy˜1=P1yex, G˜1=P1G1, y˜2=P2yex, G˜2=P2G2.
(5)
Estimate both transmitted subvectorss^k, k=1,2, by applying a suitable subdetector to the kth subsystem having y˜k, G˜k.
(6)
Rearrange the recovered subvectors to get the overall estimated vector asx^=s^1Ts^2TT.


## 4.2. Proposed ZF-PGD and QRD-PGD Detectors

Theoretically, any classical detectors can be used as subdetectors in the PGD algorithm to estimates^1 and s^2. However, low-complexity detectors should be adopted to keep the complexity at practical levels. In this section, we adopt the classical QRD and the ZF in the PGD to generate two new detectors, called the ZF-PGD and QRD-PGD, as described below.


### 4.2.1. ZF-PGD Detector

In the ZF-PGD algorithm,s^k, k=1,2, are estimated by the ZF detection procedure to both subsystems in the PGD as follows:(14)s^k=QG˜k†y˜k=Qs˜k+G˜k†n˜k.Similarly to the ZF detector, the error covariance matrices and MSEs for each branch in the ZF-PGD can be determined, respectively, as follows:(15)ΦkZF−PGD=Esk−s˜ksk−s˜kH=EG˜k†n˜kG˜k†n˜kH=G˜kHG˜k−1,(16)MSEkZF−PGD=1LtraceG˜kHG˜k−1.Shown in Figure4 is the ECDF of the classical linear detectors and the ones based on PGD algorithm when the parameters are set almost the same as in Figure 2 except Nr=64 antennas. The illustration shows that the MSEs of the two subsystems detected by the ZF-PGD are equal to each other and much smaller than that of the classical ZF detector. They are even comparable with the MSE of the MMSE detector. This implies that the ZF-PGD can improve the system performance significantly compared to the ZF one.Figure 4
ECDF curves of the MSEs of the classical linear detectors: the ZF-PGD and the ZF-PGD-SLB detectors realized in103 iterations when Nr=64, NT=4, K=16, pu/σ2=27dB, d0=100m, 100m≤di≤990m,σShadow2=8dB, and γ=3.5.


### 4.2.2. QRD-PGD Detector

In order to further improve the BER performance of the PGD algorithm, the conventional QRD detector is applied to the subsystems to generate the QRD-PGD detector as follows.First, using the QR decomposition to decompose subchannel matrices,G˜k, k=1,2, we get(17)G˜k=QkRk,where Qk is Nr+N×L unitary matrices satisfying that QkHQk=IL and Rk be L×L upper triangle matrices, which can be presented in the matrix form asfollows:(18)Rk=rk1,1rk1,2⋯rk1,L0rk2,2⋯rk2,L⋮⋮⋱⋮000rkL,L,where rki,j denotes the ith row and jth column entry of Rk. Next, multiplying both sides of (17) by QkH, we obtain(19)vk=QkHy˜k=Rksk+QkHn˜k.Finally, ignoring the noise termQkHn˜k in (19), all entries of s^k (denoted by s˜ki, i=L, L−1,…,1) are determined layer by layer using the following rule:(20)s^ki=Qs˜ki=Qvkirki,i,i=L,vki−∑j=i+1Lrki,js^kjrki,i,i≠L,,where vki is ith entry of vk and s^kj is the sliced value of s˜kj.Note that the BER performance given by the QRD-PGD is usually better than that of its ZF-PGD counterpart due to the advantage of the successive interference cancelation (SIC) technique. However, it suffers from the larger delay of the SIC technique. The higher the dimensions of the system are, the higher delay the QRD-PGD suffers. Therefore, the QRD-PGD detector is suitable to be used in small- or medium-size systems.


## 4.2.1. ZF-PGD Detector

In the ZF-PGD algorithm,s^k, k=1,2, are estimated by the ZF detection procedure to both subsystems in the PGD as follows:(14)s^k=QG˜k†y˜k=Qs˜k+G˜k†n˜k.Similarly to the ZF detector, the error covariance matrices and MSEs for each branch in the ZF-PGD can be determined, respectively, as follows:(15)ΦkZF−PGD=Esk−s˜ksk−s˜kH=EG˜k†n˜kG˜k†n˜kH=G˜kHG˜k−1,(16)MSEkZF−PGD=1LtraceG˜kHG˜k−1.Shown in Figure4 is the ECDF of the classical linear detectors and the ones based on PGD algorithm when the parameters are set almost the same as in Figure 2 except Nr=64 antennas. The illustration shows that the MSEs of the two subsystems detected by the ZF-PGD are equal to each other and much smaller than that of the classical ZF detector. They are even comparable with the MSE of the MMSE detector. This implies that the ZF-PGD can improve the system performance significantly compared to the ZF one.Figure 4
ECDF curves of the MSEs of the classical linear detectors: the ZF-PGD and the ZF-PGD-SLB detectors realized in103 iterations when Nr=64, NT=4, K=16, pu/σ2=27dB, d0=100m, 100m≤di≤990m,σShadow2=8dB, and γ=3.5.


## 4.2.2. QRD-PGD Detector

In order to further improve the BER performance of the PGD algorithm, the conventional QRD detector is applied to the subsystems to generate the QRD-PGD detector as follows.First, using the QR decomposition to decompose subchannel matrices,G˜k, k=1,2, we get(17)G˜k=QkRk,where Qk is Nr+N×L unitary matrices satisfying that QkHQk=IL and Rk be L×L upper triangle matrices, which can be presented in the matrix form asfollows:(18)Rk=rk1,1rk1,2⋯rk1,L0rk2,2⋯rk2,L⋮⋮⋱⋮000rkL,L,where rki,j denotes the ith row and jth column entry of Rk. Next, multiplying both sides of (17) by QkH, we obtain(19)vk=QkHy˜k=Rksk+QkHn˜k.Finally, ignoring the noise termQkHn˜k in (19), all entries of s^k (denoted by s˜ki, i=L, L−1,…,1) are determined layer by layer using the following rule:(20)s^ki=Qs˜ki=Qvkirki,i,i=L,vki−∑j=i+1Lrki,js^kjrki,i,i≠L,,where vki is ith entry of vk and s^kj is the sliced value of s˜kj.Note that the BER performance given by the QRD-PGD is usually better than that of its ZF-PGD counterpart due to the advantage of the successive interference cancelation (SIC) technique. However, it suffers from the larger delay of the SIC technique. The higher the dimensions of the system are, the higher delay the QRD-PGD suffers. Therefore, the QRD-PGD detector is suitable to be used in small- or medium-size systems.


## 5. Proposed ZF-PGD-SLB and QRD-PGD-SLB Detectors

### 5.1. Lattice Reduction-Aided PGD Detection Approach

In this section, a new detection approach, called PGD-LR, is considered by combining the lattice reduction (LR) techniques with the PGD to further enhance the BER performance of massive MIMO systems.First of all, the subsystems,y˜k, k=1,2, are converted into the ones in LR domain as follows:(21)y˜k=G˜ksk+n˜k=G˜kTkTk−1sk+n˜k=G˜kLRck+n˜k,where ck=Tk−1sk, G˜kLR=G˜kTk is the channel matrix in the LR domain and Tk is a unimodular matrix (i.e., detTk=±1), whose entries are integer numbers. G˜kLR and Tk are determined by applying LR techniques on the channel matrix G˜k.Next, we apply some classical detectors to (21) to estimate the transmitted vector in LR domain, c˜k. It is worth noting that the entries of ck must be selected from a set of consecutive integer numbers. Therefore, if the signal is modulated by M-QAM method, it needs to be converted to the set of consecutive integer number by the shift-and-scaling operation. Let us define m=logM,α¯=1/2,β¯=m−11+j/2, where j2=−1. Then, the shift-and-scaling transmitted signal vector is s¯k=α¯sk+β¯, thereby leading to the shift-and-scaling signal vector in the LR as follows:(22)c¯k=Tk−1s¯k=α¯ck+β¯Tk−11L.Therefore, the hard decision ofc˜k is given by(23)c^k=1α¯α¯c˜k+β¯Tk−11L−β¯Tk−11L.Oncec^k is determined, the estimated signal subvector, s˜k, is obtained as follows:(24)s˜k=Tkc^k.Finally,s˜k is sliced to get the final output of kth subsystem as s^k=Qs˜k.


### 5.2. Proposed ZF-PGD-SLB and QRD-PGD-SLB Detectors

In practice,G˜kLR and Tk can be carried out by utilizing LR techniques such as Lenstra–Lenstra–Lovasz (LLL) algorithm [16], Seysen algorithm (SA) [17], or element-based lattice reduction (ELR) [13] on the subchannel matrix, G˜k. Among these LR techniques, ELR [13] is the most suitable to be used in massive MIMO systems because of its high performance and low complexity. The ELR finds out G˜kLR and Tk matrices from G˜k by minimizing the diagonal entries of error covariance matrix Φk=G˜kHG˜k−1 in (15). This technique includes two versions called shortest longest vector (SLV) algorithm and shortest longest basis (SLB). While the SLB minimizes all diagonal entries of Φk, the SLV only investigates the maximum one. As a sequence, BER performance given by the SLB is better than that of the SLV, yet at the cost of higher complexity. In this work, we use the SLB as the LR technique and combine it with the proposed ZF-PGD and QRD-PGD to create the ZF-PGD-SLB and QRD-PGD-SLB ones. Due to space limitation, we just summarize the SLB adopted on channel matrix G˜k in Algorithm 2. For more details of this technique, the readers can find them in [13].


#### 5.2.1. ZF-PGD-SLB Detector

In the ZF-PGD-SLB detection algorithm, the transmitted symbols in LR domainc˜k, k=1,2, are determined by utilizing the ZF detection procedure as follows:(25)c˜k=G˜kLRHG˜kLR−1G˜kLRHy˜k.Oncec˜k is obtained, the estimated subvector, s^k, can be easily determined using (23) and (24).Similar to the ZF detector, the error covariance matrix and the MSE for thekth subsystems in the LR domain are, respectively, given by(26)ΦkZF−PGD−SLB=Eck−c˜kck−c˜kH=G˜kLRHG˜kLR−1,(27)MSEkZF−PGD−SLB=1LtraceG˜kLRHG˜kLR−1.Note that the error in estimatings^k depends on the accuracy of c˜k in (25). Hence, (27) can be used as the MSE for estimating s^k. It can be seen from Figure 4 that the MSEs of the subsystems detected by the ZF-PGD-SLB are almost identical and much smaller than those of the ZF and the ZF-PGD counterparts. This indicates that the ZF-PGD-SLB detector is able to noticeably outperform the ZF and the ZF-PGD ones.


#### 5.2.2. QRD-PGD-SLB Detector

In the QRD-PGD-SLB detection algorithm, the transmitted symbols in LR domainc˜k, k=1,2, is determined by adopting the SIC detection technique as follows.First, use QR decomposition to decomposeG˜kLR as(28)G˜kLR=QkLRRkLR,where QkLR and RkLR are, respectively, the unitary matrix and upper triangle one.Next, multiplying both sides of (28) by QkLRH, we get(29)vkLR=QkLRHy˜=RkLRck+QkLRHn˜k.Letrki,jLR be the entry at the ith row, jth column of RkLR and cki and vkiLR, are respectively, the ith entries of ck and vkLR. Applying SIC detection technique, the last entry of c^k (i.e., c^kL) is determined as(30)c^kL=1α¯α¯c˜kL+β¯tkL1L−β¯tkL1L,where c˜kL=vkLLR/rkL,LLR and tkL is Lth row of Tk−1. Once c^kL is determined, the L−1th entry of c^k will be estimated by canceling the interference of c^kL out of vkL−1LR. In general, The ith entry of c˜k c˜ki,i=1,2,…,L−1 is determined as(31)c˜ki=vkiLR−∑j=i+1Lrki,jLRc^kjrki,iLR−1,and its hard-decision value is given by(32)c^ki=1α¯α¯c˜ki+β¯tki1L−β¯tki1L.This process is repeated until all entries ofc^k are obtained.


## 5.1. Lattice Reduction-Aided PGD Detection Approach

In this section, a new detection approach, called PGD-LR, is considered by combining the lattice reduction (LR) techniques with the PGD to further enhance the BER performance of massive MIMO systems.First of all, the subsystems,y˜k, k=1,2, are converted into the ones in LR domain as follows:(21)y˜k=G˜ksk+n˜k=G˜kTkTk−1sk+n˜k=G˜kLRck+n˜k,where ck=Tk−1sk, G˜kLR=G˜kTk is the channel matrix in the LR domain and Tk is a unimodular matrix (i.e., detTk=±1), whose entries are integer numbers. G˜kLR and Tk are determined by applying LR techniques on the channel matrix G˜k.Next, we apply some classical detectors to (21) to estimate the transmitted vector in LR domain, c˜k. It is worth noting that the entries of ck must be selected from a set of consecutive integer numbers. Therefore, if the signal is modulated by M-QAM method, it needs to be converted to the set of consecutive integer number by the shift-and-scaling operation. Let us define m=logM,α¯=1/2,β¯=m−11+j/2, where j2=−1. Then, the shift-and-scaling transmitted signal vector is s¯k=α¯sk+β¯, thereby leading to the shift-and-scaling signal vector in the LR as follows:(22)c¯k=Tk−1s¯k=α¯ck+β¯Tk−11L.Therefore, the hard decision ofc˜k is given by(23)c^k=1α¯α¯c˜k+β¯Tk−11L−β¯Tk−11L.Oncec^k is determined, the estimated signal subvector, s˜k, is obtained as follows:(24)s˜k=Tkc^k.Finally,s˜k is sliced to get the final output of kth subsystem as s^k=Qs˜k.


## 5.2. Proposed ZF-PGD-SLB and QRD-PGD-SLB Detectors

In practice,G˜kLR and Tk can be carried out by utilizing LR techniques such as Lenstra–Lenstra–Lovasz (LLL) algorithm [16], Seysen algorithm (SA) [17], or element-based lattice reduction (ELR) [13] on the subchannel matrix, G˜k. Among these LR techniques, ELR [13] is the most suitable to be used in massive MIMO systems because of its high performance and low complexity. The ELR finds out G˜kLR and Tk matrices from G˜k by minimizing the diagonal entries of error covariance matrix Φk=G˜kHG˜k−1 in (15). This technique includes two versions called shortest longest vector (SLV) algorithm and shortest longest basis (SLB). While the SLB minimizes all diagonal entries of Φk, the SLV only investigates the maximum one. As a sequence, BER performance given by the SLB is better than that of the SLV, yet at the cost of higher complexity. In this work, we use the SLB as the LR technique and combine it with the proposed ZF-PGD and QRD-PGD to create the ZF-PGD-SLB and QRD-PGD-SLB ones. Due to space limitation, we just summarize the SLB adopted on channel matrix G˜k in Algorithm 2. For more details of this technique, the readers can find them in [13].


### 5.2.1. ZF-PGD-SLB Detector

In the ZF-PGD-SLB detection algorithm, the transmitted symbols in LR domainc˜k, k=1,2, are determined by utilizing the ZF detection procedure as follows:(25)c˜k=G˜kLRHG˜kLR−1G˜kLRHy˜k.Oncec˜k is obtained, the estimated subvector, s^k, can be easily determined using (23) and (24).Similar to the ZF detector, the error covariance matrix and the MSE for thekth subsystems in the LR domain are, respectively, given by(26)ΦkZF−PGD−SLB=Eck−c˜kck−c˜kH=G˜kLRHG˜kLR−1,(27)MSEkZF−PGD−SLB=1LtraceG˜kLRHG˜kLR−1.Note that the error in estimatings^k depends on the accuracy of c˜k in (25). Hence, (27) can be used as the MSE for estimating s^k. It can be seen from Figure 4 that the MSEs of the subsystems detected by the ZF-PGD-SLB are almost identical and much smaller than those of the ZF and the ZF-PGD counterparts. This indicates that the ZF-PGD-SLB detector is able to noticeably outperform the ZF and the ZF-PGD ones.


### 5.2.2. QRD-PGD-SLB Detector

In the QRD-PGD-SLB detection algorithm, the transmitted symbols in LR domainc˜k, k=1,2, is determined by adopting the SIC detection technique as follows.First, use QR decomposition to decomposeG˜kLR as(28)G˜kLR=QkLRRkLR,where QkLR and RkLR are, respectively, the unitary matrix and upper triangle one.Next, multiplying both sides of (28) by QkLRH, we get(29)vkLR=QkLRHy˜=RkLRck+QkLRHn˜k.Letrki,jLR be the entry at the ith row, jth column of RkLR and cki and vkiLR, are respectively, the ith entries of ck and vkLR. Applying SIC detection technique, the last entry of c^k (i.e., c^kL) is determined as(30)c^kL=1α¯α¯c˜kL+β¯tkL1L−β¯tkL1L,where c˜kL=vkLLR/rkL,LLR and tkL is Lth row of Tk−1. Once c^kL is determined, the L−1th entry of c^k will be estimated by canceling the interference of c^kL out of vkL−1LR. In general, The ith entry of c˜k c˜ki,i=1,2,…,L−1 is determined as(31)c˜ki=vkiLR−∑j=i+1Lrki,jLRc^kjrki,iLR−1,and its hard-decision value is given by(32)c^ki=1α¯α¯c˜ki+β¯tki1L−β¯tki1L.This process is repeated until all entries ofc^k are obtained.


## 5.2.1. ZF-PGD-SLB Detector

In the ZF-PGD-SLB detection algorithm, the transmitted symbols in LR domainc˜k, k=1,2, are determined by utilizing the ZF detection procedure as follows:(25)c˜k=G˜kLRHG˜kLR−1G˜kLRHy˜k.Oncec˜k is obtained, the estimated subvector, s^k, can be easily determined using (23) and (24).Similar to the ZF detector, the error covariance matrix and the MSE for thekth subsystems in the LR domain are, respectively, given by(26)ΦkZF−PGD−SLB=Eck−c˜kck−c˜kH=G˜kLRHG˜kLR−1,(27)MSEkZF−PGD−SLB=1LtraceG˜kLRHG˜kLR−1.Note that the error in estimatings^k depends on the accuracy of c˜k in (25). Hence, (27) can be used as the MSE for estimating s^k. It can be seen from Figure 4 that the MSEs of the subsystems detected by the ZF-PGD-SLB are almost identical and much smaller than those of the ZF and the ZF-PGD counterparts. This indicates that the ZF-PGD-SLB detector is able to noticeably outperform the ZF and the ZF-PGD ones.


## 5.2.2. QRD-PGD-SLB Detector

In the QRD-PGD-SLB detection algorithm, the transmitted symbols in LR domainc˜k, k=1,2, is determined by adopting the SIC detection technique as follows.First, use QR decomposition to decomposeG˜kLR as(28)G˜kLR=QkLRRkLR,where QkLR and RkLR are, respectively, the unitary matrix and upper triangle one.Next, multiplying both sides of (28) by QkLRH, we get(29)vkLR=QkLRHy˜=RkLRck+QkLRHn˜k.Letrki,jLR be the entry at the ith row, jth column of RkLR and cki and vkiLR, are respectively, the ith entries of ck and vkLR. Applying SIC detection technique, the last entry of c^k (i.e., c^kL) is determined as(30)c^kL=1α¯α¯c˜kL+β¯tkL1L−β¯tkL1L,where c˜kL=vkLLR/rkL,LLR and tkL is Lth row of Tk−1. Once c^kL is determined, the L−1th entry of c^k will be estimated by canceling the interference of c^kL out of vkL−1LR. In general, The ith entry of c˜k c˜ki,i=1,2,…,L−1 is determined as(31)c˜ki=vkiLR−∑j=i+1Lrki,jLRc^kjrki,iLR−1,and its hard-decision value is given by(32)c^ki=1α¯α¯c˜ki+β¯tki1L−β¯tki1L.This process is repeated until all entries ofc^k are obtained.


## 6. Complexity Analysis

In this section, we evaluate the complexity of the classical linear detectors, the QRD, the BLAST, and all the proposed ones. In order to do so, we follow the method in [11, 18, 19] to count the number of necessary floating point operations (flops) to estimate a transmitted signal vector. It is assumed that each real arithmetic operation such as a real addition, a real subtraction, a real multiplication, a real division, or a square root of a real number is counted as a flop. It is worth noting that a multiplication of two matrices with dimensions of c×d and d×e needs a total of ced multiplications and ced−1 additions. In addition, the inversion of c×c matrix requires c3 multiplications and c3 additions [20]. Furthermore, we would like to note that the complexity of a detector can be computed using either the complex or the equivalent real system. However, as shown in [21], the real system requires more flops than the complex one.Under the above assumptions, the complexity of the classical ZF, the MMSE, the QRD, and the BLAST detectors in terms of flops is computed directly on the complex system as follows:(33)CZF=8N3+16N2Nr−2N2+6NNr−2N,(34)CMMSE=8N3+16N2Nr−2N2+6NNr,(35)CQRD=6N2Nr+3N2+12NNr+4N,(36)CBLAST=154N4+2N3Nr+N2Nr2+N16Nr−2.Because the proposed detectors are built based on the extended form of the massive MIMO system with the channel matrixUex including both real and complex values, to evaluate the complexity more exactly, we represent Uex as follows:(37)Uex=G1G2=F1F2D10201D2,where both F1 and F2 are Nr×L complex matrices; D1 and D2 are L×L diagonal real matrices; and 01 and 02 denote L×L zeros matrices, L=N/2.


### 6.1. Complexity Evaluation of the ZF-PGD and QRD-PGD Detectors

It can be seen that the computational costs of the ZF-PGD and the QRD-PGD detectors comprised of two parts: (1) generating the two subsystems and (2) utilizing detection procedures to detects^1 and s^2. Because the subsystems in the PGD algorithm are created exactly the same way and their dimensions are equal to each other, the complexity of the ZF-PGD and QRD-PGD detectors can be computed by using the following equation:(38)CsubD−PGD=2CGe+CsubD,where CsubD−PGD is the total complexity of the ZF-PGD/QRD-PGD, CGe denotes the computational cost of generating a subsystem, and CsubD is number of flops given by applying the classical D detector (D is either the ZF or the QRD) to each subsystem. From the PGD algorithm, CGe is evaluated as(39)CGe=CP1+CG˜1+Cy˜1=N3+4N2Nr+4a2N+N−NNr+4aNNr−2aNr+8aN−aflops,where CP1, CG˜1, and Cy˜1 are, respectively, the numbers of flops to compute the projection term P1, the sub-channel matrix G˜1, and the received vector y˜1; a=Nr+N.Because the dimensions of the subsystems area×L, CsubD can be obtained based on (33) and (35) by, respectively, replacing Nr and N with a=Nr+N and L=N/2 as follows:(40)CsubZF=N3+4aN2−12N2+3aN−Nflops,(41)CsubQRD=32aN2+34N2+6aN+2Nflops.


### 6.2. Complexity Evaluation of the ZF-PGD-SLB and the QRD-PGD-SLB Detectors

From the signal detection procedures of the ZF-PGD-SLB and the QRD-PGD-SLB, we can easily observe that the complexity of these detectors are different from those of their ZF-PGD and the QRD-PGD counterparts by three aspects: (1) converting the subsystems to the ones in the LR domain; (2) utilizing hard decision to estimate transmitted symbols as in (23); and (3) converting the estimated vector c^k in the LR domain to s^k in the transmit constellation. Besides, the dimensions of subsystems in the PGD and the ones in the LR domain are exactly the same. Therefore, the computational complexity of the ZF-PGD-SLB and the QRD-PGD-SLB detectors can be determined based on the following equation:(42)CsubD−PGD−SLB=CsubD−PGD+2CSLB+2CSli+2Cconv,where CsubD−PGD−SLB denotes the complexity of either the ZF-PGD-SLB or the QRD-PGD-SLB detector, CSLB is the number of flops to covert one subsystem to the one in the LR domain (e.g., convert G˜1 to G˜1LR), CSli and Cconv are, respectively, the total complexity of hard decision operation in (23) and of converting c^k to s^k in (24).Following Algorithm2 step by step, CSLB can be evaluated to be(43)CSLB=16L3+16aL2−2L2−2aL+4Cλ+10CΔ+24LCupdate=2N3+4aN2−12N2−aN+4Cλ+10CΔ+12NCupdateflops,where Cλ, CΔ, and Cupdate are, respectively, the average number of times needed to compute λi,j and Δi,j and to update Φ and T′ so that G˜1 and T1 are generated successfully.Algorithm 2:SLB algorithm.
Input:G˜k
Output:G˜kLR, Tk
(1)
SetU˜=G˜k; T′=IN; and compute Φ=U˜HU˜−1.
(2)
Do
(3)
Findj index such that Φj,j is maximum reducible value of Φ.
(4)
λ
i
,
k
=
−
Φ
i
,
j
/
Φ
i
,
i
,
∀
i
≠
j
(5)
ComputeΔi,j=−λi,j2Φi,i−λi,j∗Φi,j−λi,jΦi,j∗ and chose i=argmaxi=1:L;i≠jΔi,j
(6)
IfΔi,j=0,∀i,j=1:L go to (10)
(7)
t
j
′
=
t
j
′
+
λ
i
,
j
t
i
′; % tj′ is jth column of T′
(8)
ϕ
j
=
ϕ
j
+
λ
i
,
j
ϕ
i; % ϕj is jth column of Φ
(9)
ϕ
j
=
ϕ
j
+
λ
i
,
j
ϕ
i; % ϕj is jth row of Φ
(10)
While (true)
(11)
T
k
=
T
′
−
1
H; G˜1LR=U˜TkFrom (23) and (24), the remaining two terms in (42) can be evaluated to be(44)CSli=2L2+4L=N22+2Nflops,(45)Cconv=3L2−L=34N2−N2flops.Note that the complexity ofTk−1 in (23) is already included in the SLB algorithm.The computational complexities of all the detectors are summarized in Table1. The results in Table 1 show that all proposed detectors have the same complexity order as those of linear detectors (i.e., ON3).Table 1
Computational complexity comparison.
Detectors
Number of necessary flops to recover a transmitted signal vector
ZF
8
N
3
+
16
N
2
N
r
−
2
N
2
+
6
N
N
r
−
2
N
MMSE
8
N
3
+
16
N
2
N
r
−
2
N
2
+
6
N
N
r
QRD
6
N
2
N
r
+
3
N
2
+
12
N
N
r
+
4
N
BLAST
15
/
4
N
4
+
2
N
3
N
r
+
N
2
N
r
2
+
N
16
N
r
−
2
ZF-PGD
4
N
3
+
8
N
2
N
r
+
8
a
N
2
−
N
2
+
8
a
2
N
−
2
N
N
r
+
8
a
N
N
r
−
4
a
N
r
+
22
a
N
−
2
a
QRD-PGD
2
N
3
+
8
N
2
N
r
+
8
a
2
N
+
3
a
N
2
+
3
/
2
N
2
+
6
N
−
2
N
N
r
+
8
a
N
N
r
−
4
a
N
r
+
28
a
N
−
2
a
ZF-SLB
24
N
3
+
32
N
2
N
r
+
20
N
2
+
4
N
N
r
+
1
+
4
C
λ
1
+
10
C
△
1
+
24
N
C
update
1
ZF-PGD-SLB
8
N
3
+
8
N
2
N
r
+
16
a
N
2
+
N
2
/
4
+
8
a
2
N
−
2
N
N
r
+
8
a
N
N
r
−
4
a
N
r
+
20
a
N
−
2
a
+
7
/
2
N
+
8
C
λ
+
20
C
△
+
24
N
C
update
QRD-PGD-SLB
6
N
3
+
8
N
2
N
r
+
11
a
N
2
+
9
/
4
N
2
+
8
a
2
N
+
19
/
2
N
−
2
N
N
r
+
8
a
N
N
r
−
4
a
N
r
+
26
a
N
−
2
a
+
8
C
λ
+
20
C
△
+
24
N
C
update
Note. a=Nr+N,N=KNT; Cλ,CΔ,Cupdate,Cλ1,CΔ1, and Cupdate1 are given by simulations.The computational costs of all the detectors with different antenna’s configurations are further illustrated in Figures5 and 6.Figure 5
Complexity curves of the proposed detectors as well as the classical ZF, the MMSE, the QRD, and the BLAST detectors whenNr=N=60:20:200.Figure 6
Complexities of the proposed detectors as well as of the classical ZF, the MMSE, the QRD, and the BLAST detectors whenNr=120; K=8,24; NT=4; and 64-QAM.It can be observed from Figures5 and 6 that the complexities of the detectors increase proportionally with the number of antennas. Although the computational costs of the proposed detectors are higher than those of the classical MMSE and the ZF-SLB, they are very much smaller than those of the BLAST one in high-load systems. It is worth emphasizing that the higher complexities of our proposed detectors than those of the MMSE/ZF-SLB are rewarded by huge SNR gains as illustrated in the following section.It can also be seen from Figure6 that when the load factor reduces from β=0.8 to β=0.27 (or equivalently, the number of data streams reduces from 96 to 32), the gaps between the complexities of the detectors under consideration get much smaller. This implies that the computational costs of proposed detectors and the BLAST one become comparable in very low load systems. Therefore, our proposed detectors are only suitable to use in the systems with sufficiently high load factors.


## 6.1. Complexity Evaluation of the ZF-PGD and QRD-PGD Detectors

It can be seen that the computational costs of the ZF-PGD and the QRD-PGD detectors comprised of two parts: (1) generating the two subsystems and (2) utilizing detection procedures to detects^1 and s^2. Because the subsystems in the PGD algorithm are created exactly the same way and their dimensions are equal to each other, the complexity of the ZF-PGD and QRD-PGD detectors can be computed by using the following equation:(38)CsubD−PGD=2CGe+CsubD,where CsubD−PGD is the total complexity of the ZF-PGD/QRD-PGD, CGe denotes the computational cost of generating a subsystem, and CsubD is number of flops given by applying the classical D detector (D is either the ZF or the QRD) to each subsystem. From the PGD algorithm, CGe is evaluated as(39)CGe=CP1+CG˜1+Cy˜1=N3+4N2Nr+4a2N+N−NNr+4aNNr−2aNr+8aN−aflops,where CP1, CG˜1, and Cy˜1 are, respectively, the numbers of flops to compute the projection term P1, the sub-channel matrix G˜1, and the received vector y˜1; a=Nr+N.Because the dimensions of the subsystems area×L, CsubD can be obtained based on (33) and (35) by, respectively, replacing Nr and N with a=Nr+N and L=N/2 as follows:(40)CsubZF=N3+4aN2−12N2+3aN−Nflops,(41)CsubQRD=32aN2+34N2+6aN+2Nflops.


## 6.2. Complexity Evaluation of the ZF-PGD-SLB and the QRD-PGD-SLB Detectors

From the signal detection procedures of the ZF-PGD-SLB and the QRD-PGD-SLB, we can easily observe that the complexity of these detectors are different from those of their ZF-PGD and the QRD-PGD counterparts by three aspects: (1) converting the subsystems to the ones in the LR domain; (2) utilizing hard decision to estimate transmitted symbols as in (23); and (3) converting the estimated vector c^k in the LR domain to s^k in the transmit constellation. Besides, the dimensions of subsystems in the PGD and the ones in the LR domain are exactly the same. Therefore, the computational complexity of the ZF-PGD-SLB and the QRD-PGD-SLB detectors can be determined based on the following equation:(42)CsubD−PGD−SLB=CsubD−PGD+2CSLB+2CSli+2Cconv,where CsubD−PGD−SLB denotes the complexity of either the ZF-PGD-SLB or the QRD-PGD-SLB detector, CSLB is the number of flops to covert one subsystem to the one in the LR domain (e.g., convert G˜1 to G˜1LR), CSli and Cconv are, respectively, the total complexity of hard decision operation in (23) and of converting c^k to s^k in (24).Following Algorithm2 step by step, CSLB can be evaluated to be(43)CSLB=16L3+16aL2−2L2−2aL+4Cλ+10CΔ+24LCupdate=2N3+4aN2−12N2−aN+4Cλ+10CΔ+12NCupdateflops,where Cλ, CΔ, and Cupdate are, respectively, the average number of times needed to compute λi,j and Δi,j and to update Φ and T′ so that G˜1 and T1 are generated successfully.Algorithm 2:SLB algorithm.
Input:G˜k
Output:G˜kLR, Tk
(1)
SetU˜=G˜k; T′=IN; and compute Φ=U˜HU˜−1.
(2)
Do
(3)
Findj index such that Φj,j is maximum reducible value of Φ.
(4)
λ
i
,
k
=
−
Φ
i
,
j
/
Φ
i
,
i
,
∀
i
≠
j
(5)
ComputeΔi,j=−λi,j2Φi,i−λi,j∗Φi,j−λi,jΦi,j∗ and chose i=argmaxi=1:L;i≠jΔi,j
(6)
IfΔi,j=0,∀i,j=1:L go to (10)
(7)
t
j
′
=
t
j
′
+
λ
i
,
j
t
i
′; % tj′ is jth column of T′
(8)
ϕ
j
=
ϕ
j
+
λ
i
,
j
ϕ
i; % ϕj is jth column of Φ
(9)
ϕ
j
=
ϕ
j
+
λ
i
,
j
ϕ
i; % ϕj is jth row of Φ
(10)
While (true)
(11)
T
k
=
T
′
−
1
H; G˜1LR=U˜TkFrom (23) and (24), the remaining two terms in (42) can be evaluated to be(44)CSli=2L2+4L=N22+2Nflops,(45)Cconv=3L2−L=34N2−N2flops.Note that the complexity ofTk−1 in (23) is already included in the SLB algorithm.The computational complexities of all the detectors are summarized in Table1. The results in Table 1 show that all proposed detectors have the same complexity order as those of linear detectors (i.e., ON3).Table 1
Computational complexity comparison.
Detectors
Number of necessary flops to recover a transmitted signal vector
ZF
8
N
3
+
16
N
2
N
r
−
2
N
2
+
6
N
N
r
−
2
N
MMSE
8
N
3
+
16
N
2
N
r
−
2
N
2
+
6
N
N
r
QRD
6
N
2
N
r
+
3
N
2
+
12
N
N
r
+
4
N
BLAST
15
/
4
N
4
+
2
N
3
N
r
+
N
2
N
r
2
+
N
16
N
r
−
2
ZF-PGD
4
N
3
+
8
N
2
N
r
+
8
a
N
2
−
N
2
+
8
a
2
N
−
2
N
N
r
+
8
a
N
N
r
−
4
a
N
r
+
22
a
N
−
2
a
QRD-PGD
2
N
3
+
8
N
2
N
r
+
8
a
2
N
+
3
a
N
2
+
3
/
2
N
2
+
6
N
−
2
N
N
r
+
8
a
N
N
r
−
4
a
N
r
+
28
a
N
−
2
a
ZF-SLB
24
N
3
+
32
N
2
N
r
+
20
N
2
+
4
N
N
r
+
1
+
4
C
λ
1
+
10
C
△
1
+
24
N
C
update
1
ZF-PGD-SLB
8
N
3
+
8
N
2
N
r
+
16
a
N
2
+
N
2
/
4
+
8
a
2
N
−
2
N
N
r
+
8
a
N
N
r
−
4
a
N
r
+
20
a
N
−
2
a
+
7
/
2
N
+
8
C
λ
+
20
C
△
+
24
N
C
update
QRD-PGD-SLB
6
N
3
+
8
N
2
N
r
+
11
a
N
2
+
9
/
4
N
2
+
8
a
2
N
+
19
/
2
N
−
2
N
N
r
+
8
a
N
N
r
−
4
a
N
r
+
26
a
N
−
2
a
+
8
C
λ
+
20
C
△
+
24
N
C
update
Note. a=Nr+N,N=KNT; Cλ,CΔ,Cupdate,Cλ1,CΔ1, and Cupdate1 are given by simulations.The computational costs of all the detectors with different antenna’s configurations are further illustrated in Figures5 and 6.Figure 5
Complexity curves of the proposed detectors as well as the classical ZF, the MMSE, the QRD, and the BLAST detectors whenNr=N=60:20:200.Figure 6
Complexities of the proposed detectors as well as of the classical ZF, the MMSE, the QRD, and the BLAST detectors whenNr=120; K=8,24; NT=4; and 64-QAM.It can be observed from Figures5 and 6 that the complexities of the detectors increase proportionally with the number of antennas. Although the computational costs of the proposed detectors are higher than those of the classical MMSE and the ZF-SLB, they are very much smaller than those of the BLAST one in high-load systems. It is worth emphasizing that the higher complexities of our proposed detectors than those of the MMSE/ZF-SLB are rewarded by huge SNR gains as illustrated in the following section.It can also be seen from Figure6 that when the load factor reduces from β=0.8 to β=0.27 (or equivalently, the number of data streams reduces from 96 to 32), the gaps between the complexities of the detectors under consideration get much smaller. This implies that the computational costs of proposed detectors and the BLAST one become comparable in very low load systems. Therefore, our proposed detectors are only suitable to use in the systems with sufficiently high load factors.


## 7. Simulation Results

In this section, the BER performances of all the proposed detectors as well as the classical linear detectors, the QRD, and the MMSE-BLAST (in the paper, the detector is referred to as the BLAST for short) ones are investigated. The proposed detectors are also compared with the ZF-SLB one proposed in [13] regarding the BER performance. In the simulation, the channel is assumed to be block fading, which is unchanged within the signal block and changed from one block to another. The main simulation parameters and assumptions are set up as follows: the cell radius, r, and reference distance, d0, are 1000 meters and 100 meters, respectively; all active users are uniformly distributed in the cell such that the distance from the ith user to the BS satisfying 100m≤di≤990m; the large-scale fading coefficients are generated according to (3), where σShadow2=8 dB and γ=3.5. All BER curves are drawn versus SNR defined by pu/σ2 in dB.Figures7 and 8 illustrate the BER curves of the aforementioned detectors for 2 different system configurations: (1) Nr=64, K=16, and NT=4 and (2) Nr=128, K=32, and NT=4 antennas. The results in both figures show that all the proposed detectors significantly outperform their classical ZF and the QRD counterparts. In addition, the ZF-PGD-SLB and the QRD-PGD-SLB detectors provide much better BER performance than the ZF-SLB one. More specifically, BER performance of the ZF-PGD is much better than that of the classical ZF and even comparable to the MMSE detector’s performance (it is well understood that the MMSE detector can be implemented by applying the ZF detector to the extended system defined in equation (5); therefore, the ZF-PGD is able to approach the performance of the MMSE detector, and due to the effects of the projection terms P1 and P2, when generating the two subsystems, the ZF-PGD slightly underperforms than its MMSE counterpart). This result confirms our analysis in Section 3. The illustrations in both these figures show that there are big gaps between the BER curve of the MMSE and those of the remaining proposed detectors. For example, for the first antenna configuration, i.e., Nr=64, K=16, NT=4, the gaps between the MMSE curve and the ones of the QRD-PGD, the ZF-PGD-SLB, and the QRD-PGD-SLB are about 7.4 dB, 11.9 dB, and 13.4 dB at BER=10−4, respectively. These gaps reduce to 6.52 dB, 9.02 dB, and 10.82 dB for Nr=128, K=32, and NT=4. These results imply that in full-load scenarios, as the system size increases, the BER performance gaps between our proposed detectors and those of the MMSE get smaller. This is probably due to the fact that the columns of the channel matrix becomes more orthogonal in pairs when the system size increases, thereby reducing the effect of cochannel interference at the BS.Figure 7
BER curves of the proposed detectors as well as of the ZF, the MMSE, the QRD, the BLAST, and the ZF-SLB ones whenNr=64,K=16,NT=4, and 4-QAM.Figure 8
BER curves of the proposed detectors as well as of the ZF, the MMSE, the QRD, the BLAST, and the ZF-SLB ones whenNr=128,K=32,NT=4, and 4-QAM.It is worth noting that the BER performance of the ZF detector is worse than that of the MMSE even if the SNR is very high. The reason is that there always exists a significant gap between the output SNRs of these two detectors when the SNR reaches to infinity [6]. The results in Figures 7 and 8 also show that the BLAST detector gives the best BER performance among all the detectors under consideration. However, its excessively high complexity prevents it from being practically adopted in massive MIMO systems.Shown in Figure9 are the BER curves of the detectors under consideration when the load factors of the system are β1=0.27 and β2=0.8. The system parameters are set as follows: Nr=120 antennas, K=8,24, and NT=4 antennas, leading to the equivalent dimensions as 120×32 and 120×96. It can be seen from Figure 9 that when the load factor of the system reduces, the BER performances of all considered detectors improve significantly. Besides, the SNR gains between our proposed detectors and the classical ones get much smaller when the load factor reduces. Specifically, when β2=0.8, the ZF-PGD, the ZF, and MMSE detectors have nearly the same BER performance, but they underperform than the ZF-SLB, the proposed ZF-PGD-SLB, and QRD-PGD-SLB detectors by about 2 dB, 2.2 dB, and 3.2 dB at BER = 10−4, respectively. When the load factor reduces to β1=0.27, performances of all considered detectors are just slightly different from each others. This implies that when the system’s load factor is sufficiently small, the proposed detectors are no longer more advantageous than the classical linear detectors with respect to the BER performance. If the detection complexity is taken into account (as illustrated in Figure 6), then the classical ZF and MMSE detectors are the most efficient for signal recovery in massive MIMO systems with low load factors.Figure 9
BER curves of the proposed detectors as well as the ZF, the MMSE, and the ZF-SLB ones whenNr=120; K=8,24; NT=4; and 64-QAM.


## 8. Conclusion

In this paper, the parallel group detection algorithm has been proposed to enhance BER performance of high-load massive MIMO systems. By combining the PGD, the classical ZF, and the QRD detectors, we are able to construct the ZF-PGD and QRD-PGD detectors. Moreover, the PGD is further combined with shortest longest basis (SLB) algorithm to generate two other new detectors, called ZF-PGD-SLB and QRD-PGD-SLB. Various simulation and analytical results show that the proposed detectors remarkably outperform their classical linear detectors and the QRD counterparts, yet at the cost of higher detection complexities. Fortunately, the complexities of the proposed detectors are very much smaller than those of the BLAST in high-load scenario. Consequently, our proposed detectors are suitable for signal detection in high-load massive MIMO systems.



---

*Source: 5609740-2019-12-12.xml*