# Low complexity maximum-likelihood detector for DSTTD architecture based on the QRD-M algorithm

- 238 Downloads

## Abstract

This paper presents a new decoder algorithm for the double space–time transmit diversity (DSTTD) system. The decoder is based on the QRD-M algorithm, which performs a breadth-first search of possible solutions tree. The search is simplified by skipping unlikely candidates, and it is stopped when no promising candidates are left. Furthermore, the search is divided into three concurrent iterations, making possible a fast, parallel implementation either in hardware or software. After presenting an analysis of the capacity and diversity of DSTTD, we present performance results showing that the proposed decoder is capable of achieving near maximum likelihood performance. We also show that the proposed algorithm exhibits lower computational complexity than other existing maximum likelihood detectors.

## Keywords

Space–time codes Double space–time transmit diversity Maximum-likelihood detection QRD-M algorithm## 1 Introduction

It is known that, when transmitting and receiving over multiple antennas, the rich-scattering wireless channel has enormous capacity [1]. Furthermore, this capacity can be exploited to obtain increased data rates, or an increase in reliability; a tradeoff between these two properties can also be achieved [2].

Over the past two decades, techniques known as space–time codes have been developed to exploit these gains. Some space–time codes focus on spatial multiplexing gain; independent symbols are transmitted over different antennas at each channel use, increasing the data rate, but also the interference at the receiver. The Bell Labs layered space–time (V-BLAST) architecture [3] is an example. Space–time block codes (STBC), such as the Alamouti scheme [4] and other orthogonal designs [5], aim to provide transmitter diversity; crucially, this is achieved without requiring channel knowledge at the transmit side. General space–time frameworks have also been proposed, which enable the design of codes that provide a mix of spatial multiplexing and diversity gain. One example is linear dispersion codes [6], which use the maximization of the mutual information between transmitter and receiver as a design criterion.

Hybrid space–time codes present a simple way to achieve both spatial multiplexing and transmit diversity gain [7, 8, 9, 10]. These codes operate in layers, like V-BLAST; however, at least some of the layers consist of a set of antennas transmitting an STBC code. In this paper, we focus on the double space–time transmit diversity (DSTTD) scheme [11], which consists of two layers, each of which is an Alamouti STBC. This architecture provides an increase in data rate, as the two layers transmit in parallel, while still offering the transmit diversity advantage of each underlying Alamouti code. DSTTD has been adopted by the IEEE 802.11n [12] and 802.16e [13] WLAN standards.

The practical feasibility of a space–time code depends on the complexity of the decoder. The maximum-likelihood (ML) decoder is optimum, but its complexity increases exponentially with the constellation size and the number of antennas. On the other hand, the DSTTD code is a linear dispersion code and, as such, can be decoded using the same low-complexity, ordered decision feedback algorithm developed for V-BLAST [10, 14]; however, its performance is quite suboptimal. A number of detectors have been proposed, with less complexity than ML but better performance than ordered decision feedback equalizers. Some of these algorithms were designed for V-BLAST [15, 16]. Others are general near-ML algorithms, such as the sphere decoder [17]. All of them can be easily adapted to DSTTD.

Recently, tree-search algorithms have been applied to STBC decoding [18]; these have enabled near-ML decoding performance with reduced complexity compared to the sphere decoder [8, 19, 20, 21, 22]. Good results have been obtained with decoders based on the *M*-algorithm combined with the QR decomposition of the channel matrix. The reduction in complexity is obtained by reducing the number of distances calculated [19] and by exploiting the structure of the channel matrix [23]. These algorithms have been successfully applied to different STBC architectures, including DSTTD [24, 25].

In this paper, we propose a new decoding algorithm for DSTTD that achieves near-ML performance and exhibits lower complexity than other known decoders. The new algorithm builds on ideas presented in the past. Like the decoders inspired by [23], we exploit the structure of the QR decomposition of the channel matrix to simplify the ML problem. We perform a tree search similar to that of [19] and [22], with an improved search order that allows the decoder to find the optimum solution in fewer iterations. Furthermore, the size of the search performed by the proposed decoder can be easily constrained to impose a maximum limit to the complexity, in many cases with negligible impact on its error performance. Finally, we divide the candidate search into three independent searches that can be executed concurrently, which enables a fast hardware implementation.

The algorithm, as presented, is adapted to work exclusively in the detection of DSTTD. However, with a slight modification it can also detect a two-layer hybrid code where the second layer consists of a spatial antenna (for a total of three transmitter antennas) [26].

The paper is organized as follows. In Sect. 2, we present an analysis of the DSTTD space–time code and show that its capacity is just slightly below that of the underlying MIMO channel. In Sect. 3, we present an overview of existing decoding algorithms for DSTTD. In Sect. 4 we make a detailed presentation of the proposed algorithm. Simulation results, including error rates and complexity, as well as a comparison with other algorithms, are presented in Sect. 5. Finally, we present our conclusions in Sect. 6.

## 2 The double space–time transmit diversity linear dispersion code

*T*time intervals. The double space–time transmit diversity (DSTTD) linear space–time block code transmits \(n_s=4\) complex symbols over \(T=2\) symbol intervals and \(n_t=4\) transmit antennas [11]. The DSTTD space–time code matrix \(\mathbf {S}\) is given by

DSTTD space–time mapping

Time | Antenna 1 | Antenna 2 | Antenna 3 | Antenna 4 |
---|---|---|---|---|

| \(s_1\) | \(s_2\) | \(s_3\) | \(s_4\) |

\(T+1\) | \(s_2^*\) | \(-s_1^*\) | \(s_4^*\) | \(-s_3^*\) |

We assume a rich-scattering, Rayleigh wireless channel with flat and slow fading, where the channel between transmitter antenna *j* and receiver antenna *i* can be modeled as a complex Gaussian gain \(h_{ij}\sim \mathcal {C}(0,1)\) of zero mean and variance 0.5 per dimension. This gain remains constant for several symbol intervals, after which it changes to a new independent realization. The overall channel can be modeled as a random matrix \(\mathbf {H}\) of size \(n_r \times n_t\). The receiver is assumed to have perfect channel state information, obtained using techniques such as those described in [27].

Further assumptions are that all the antennas transmit information symbols from the same *M*-QAM constellation, that the receiver is perfectly synchronized to the transmitter, that each receiver antenna is also subject to additive white Gaussian noise of zero mean and power spectral density \(N_0/2\) per dimension. A block diagram of a DSTTD system is shown in Fig. 1.

### 2.1 Analysis of DSTTD: mutual information and diversity order

The DSTTD code is equivalent to two “stacked” Alamouti \(2\times 1\) codes. Each Alamouti code can be interpreted as a separate layer in a spatial multiplexing code; as such, it belongs to the category of hybrid space–time codes [10]. Hybrid codes are ad-hoc combinations of layered space–time codes, which may potentially achieve maximum spatial multiplexing gain, and (quasi) orthogonal codes, which achieve maximum diversity gain. These codes are interesting because, under certain conditions, they offer larger diversity gain than spatial multiplexing codes, and larger transmission rates than orthogonal codes. In this sense, hybrid codes’ diversity gain and rate can be designed to lie on intermediate points of the diversity-multiplexing trade-off curve described in [2]. At the same time, their structure allows for low complexity decoding (see e.g. [26]).

In the rest of this section we describe some properties of the DSTTD code, with the aim of showing that it offers a diversity-multiplexing trade-off that is close to optimal. Receiver algorithms are studied in subsequent sections.

Note that the DSTTD code has rate \(R=n_s/T=2\). It is not orthogonal, since \(\mathbf {S}\mathbf {S}^{\mathsf {H}}\ne \sum |s_n|^2\mathbf {I}.\) In contrast, a \(2\times 1\) Alamouti code has rate \(R=1\) and is orthogonal.

### 2.2 System equation

## 3 Decoding algorithms for DSTTD

In the previous section we showed that the DSTTD space–time code has the potential for large spatial multiplexing and diversity gains compared to the underlying Alamouti \(2\times 1\) layers. In this section, we present several decoding algorithms that are tailored to the DSTTD code. First, we present the optimal maximum-likelihood decoder. Then, we describe several sub-optimal decoders that have low complexity, making them attractive for hardware or software implementation.

The algorithms presented below all follow three common steps: first, the system equations are rewritten to obtain a more convenient system representation; second, the QR decomposition of the channel matrix is calculated, and finally the actual decoding is performed. The structure of the matrix \(\mathbf {R}\) is exploited to reduce the number of operations performed.

### 3.1 Maximum likelihood decoder

*i*-th symbol in the constellation by \(\Omega (i)\), and \(\mathcal Q[\cdot ]\) denotes a hard decision on a symbol.

### 3.2 OSIC detector using sorted QR decomposition

The ordered, successive interference cancellation (OSIC) detector, coupled with the sorted QR decomposition, results in a very low-complexity but sub-optimal detector. The sorted QR decomposition calculates a triangular matrix \(\mathbf {R}\), a unitary matrix \(\mathbf {Q}\) and a permutation vector \(\mathbf {p}\), such that \(\mathbf {H}_p=\mathbf {QR}\), where \(\mathbf {H}_p\) is the channel matrix \(\mathbf {H}_a\) with its columns reordered according to \(\mathbf {p}\).

### 3.3 Near-ML detector based on improved OSIC algorithm

The OSIC detection algorithm for DSTTD scheme has very low complexity, but sequential instead of joint detection means that, in many cases, the optimum symbol vector is discarded during the vector nulling process. In [19] an efficient scheme based on OSIC detection was proposed to improve upon its error-rate performance by finding better starting points for further searches. In particular, it defines the metric \(D_\theta ^2=f(D_1^2,D_2^2) +D_3^2+D_4^2\), and explores vectors that were discarded by the OSIC detector but may have, in fact, a better metric. The function *f* may be chosen among \(\text {max()}\), \(\text {min()}\) and a weighted average; each one has slightly different performance and complexity properties. In general, though, this detector achieves a significant reduction in complexity compared to optimal ML algorithms such as the sphere decoder, because in practice few additional candidate vectors are examined, but the search usually includes the optimum solution.

### 3.4 Decoders based on the *M*-algorithm

The ML solution to Eq. (11) may be expressed as a search in a tree. Symbol \(s_4\) sits at the root of the tree, and it branches to each possible value of \(s_3\), and so on successively to \(s_1\). Each branch is assigned a distance metric, and the symbols with smallest overall distance are selected as the optimum solution [28].

The *M*-algorithm is a breadth-first, sorted tree search algorithm that may be adapted for MIMO detection [16, 18]. The algorithm reduces the search complexity by storing only the best *M* branches at a time. Small values for *M* result in low complexity, but quite sub-optimal performance; as *M* increases, the complexity also increases but the algorithm’s performance gets closer to the ML decoder.

*M*candidates in the estimation of the symbols \(\hat{s_3}\) and \(\hat{s_4}\); then, the search for \(\hat{s_2}\) and \(\hat{s_1}\) is limited to \(M^2\) candidates. This results in a marked reduction in complexity without a large sacrifice in optimality. The decoding process is presented in Algorithm (2).

### 3.5 The LC maximum likelihood detector

Note the similarity of the matrix \(\mathbf {R}\) in Eq. (15) with the corresponding DSTTD matrix in Eq. (10); likewise, compare the DSTTD decoding metrics in Eq. (12) and the LC-ML decoding procedure in Eq. (17). This would suggest that the strategies presented in [23] might also be applicable to DSTTD decoding. This is explored in the next section.

## 4 Proposed near-ML decoding algorithm

- 1.
Sort the elements of \(\Omega \) in order of increasing distance \(D_3^2\) and store them in vector \(\mathbf {x_3}\). Repeat for distance \(D_4^2\), storing the result in \(\mathbf {x_4}\).

- 2.
Using \(\hat{x}_3=\mathbf {x_3}[1]\) and \(\hat{x}_4=\mathbf {x_4}[1]\), find symbols \(\hat{x}_1,\hat{x}_2\in \Omega \) that minimize \(D_1^2\) and \(D_2^2\). Store the current total distance \(D_T^2=\sum _i D_i^2\).

- 3.
Iterate over all remaining elements of \(\mathbf {x_3}\) and \(\mathbf {x_4}\). For each pair \(\hat{x}_3\in \mathbf {x_3}\), \(\hat{x}_4\in \mathbf {x_4}\), find the pair \(\hat{x}_1\) and \(\hat{x}_2\) that minimizes \(D_T^2\).

- 4.
Return the symbols that produce the smallest total distance.

Note, as well, that the iteration in step 3 can be divided into a number of independent, concurrent iterations. This means that the decoder is amenable to fast implementations, either in hardware or in software, using multiple processors. While execution in a single processor requires a roughly similar amount of memory as other proposed decoders, concurrent execution of the algorithm may involve a small memory usage penalty, because each process requires its own local metric storage.

The proposed algorithm builds on the decoders described in Sect. 3, which were first presented in [19, 23] and [24]. The decoder in [23] is designed for an ABBA code, which is similar to DSTTD but requires \(T=4\). In [19], a pool of candidate symbols is examined per iteration, whereas our proposal examines only one. In addition, [19] requires fine-tuning of a distance weighting function; no such adjustments are required in our proposal. Finally, the algorithm proposed in [24] has fixed complexity, and does not employ any heuristics for stopping the search early.

We present a more detailed description of the proposed algorithm in the next sub-sections; we also propose specific criteria for skipping symbols and for stopping the search. For clarity, we have divided the algorithm into three different stages: pre-processing, parallel candidate search, and post-processing.

### 4.1 Pre-processing

*R*.

### 4.2 Candidate search

- 1.
Variables in bold represent either vectors (lowercase) or matrices (uppercase). \(\varvec{\Omega }\) is a vector whose elements are the constellation symbols.

- 2.
Arithmetic on vectors is performed element by element.

- 3.
Vector indexing is indicated using square brackets.

- 4.
The function \(\text {findmin}(\mathbf {x})\) returns a tuple of the smallest element in vector \(\mathbf {x}\) and its corresponding index.

- 5.
The function \(\text {sortperm}(\mathbf {x})\) returns a vector of indices to the elements of \(\mathbf {x}\) in increasing order.

- 6.
The instruction “break” exits all nested loops.

Index ordering of the three search iterations. \(N_c\) is a user-supplied parameter to constrain the search size

Iteration 1 | Iteration 2 | Iteration 3 | |||
---|---|---|---|---|---|

\(\mathbf {x_3}\) | \(\mathbf {x_4}\) | \(\mathbf {x_3}\) | \(\mathbf {x_4}\) | \(\mathbf {x_3}\) | \(\mathbf {x_4}\) |

2 | 1 | 1 | 2 | 2 | 2 |

3 | 1 | 1 | 3 | 3 | 3 |

\(\vdots \) | \(\vdots \) | \(\vdots \) | \(\vdots \) | \(\vdots \) | \(\vdots \) |

\(N_c\) | 1 | 1 | \(N_c\) | \(N_c\) | \(N_c\) |

3 | 2 | 2 | 3 | ||

\(\vdots \) | \(\vdots \) | \(\vdots \) | \(\vdots \) | ||

\(N_c\) | 2 | 2 | \(N_c\) | ||

\(\vdots \) | \(\vdots \) | \(\vdots \) | \(\vdots \) | ||

\(N_c\) | \(N_c-1\) | \(N_c-1\) | \(N_c\) |

### 4.3 Post-processing

After all three iterations have finished, the estimate \(\hat{\mathbf {s}_i}\) with least distance \(d_i\), \(i=1,2,3\) is selected. If the Boolean flag *reverse* is true, then elements 1 and 2 of \(\hat{\mathbf{s}}\) are swapped with elements 3 and 4. This concludes the decoding process.

## 5 Simulation results and analysis

The detectors used in the comparison are the following. The OSIC detector (Sect. 3.2, [15] has the worst error rate, but it is included as the baseline for low complexity. The DSTTD-adapted QR *M*-algorithm with \(M=2\) (Sect. 3.4, [24] is also included. Next is the near-ML, improved OSIC detector described in Sect. 3.3 [19]; we have chosen the metric function *f*() to be equal to \(\text {max}()\), since it offers the best error performance (with a slight computational complexity increase). Finally, for QPSK, we include the brute-force ML detector (Algorithm 1) to bracket the optimum error performance.

*M*-algorithm detector is approximately 1 dB worse at \(\text {BER}=10^{-3}\) and it diverges for increasing SNR; the OSIC detector is 4 dB worse at the same point. A similar margin exists for 32-QAM.

*M*-algorithm and the proposed algorithm perform a similar number of arithmetic and logic operations when examining a candidate pair. Note that since Algorithm (4) is always executed, the minimum number of examined pairs is one.

For QPSK modulation, limiting the search size has a measurable effect in the bit error rate. For low SNR, setting \(N_c=2\) or \(N_c=3\) results in a reduction in complexity; however, for high SNR, the complexity in all three cases is very similar and converges to the OSIC complexity. This result is interesting, because it implies that, for high SNR, the algorithm initialization phase almost always finds the optimum solution; however, in some cases, it needs to consider further candidates to reach the ML performance.

For 32-QAM, results indicate that setting \(N_c=8\) is enough to achieve ML performance. We again see that, as SNR increases, the complexity tends to 1, albeit more slowly than for QPSK.

## 6 Conclusions

We have presented a receiver algorithm for the DSTTD hybrid space–time code with near-optimal bit error rate and substantially less complexity than other, existing near-ML decoders. The presented decoder is an adaptation of the QRD-M tree search algorithm. After an initial estimate, three concurrent iterations search the tree of candidates and store the solution with least metric. The low complexity results from the decoder skipping over candidates that do not meet a specified criterion, as well as the search being stopped as soon as no promising candidates are left. The concurrent nature of the three iterations suggests the algorithm can be executed on multiple processors, increasing its operating speed.

## Notes

### Acknowledgements

The present article was jointly funded by PFCE Projects and PROFAPI 2018.

### Compliance with ethical standards

### Conflicts of interest

On behalf of all authors, the corresponding author states that there is no conflict of interest.

## References

- 1.Telatar, I. E. (1999). Capacity of multiple-antenna Gaussian channels.
*European Transactions on Telecommunications*,*10*(6), 585–595.CrossRefGoogle Scholar - 2.Zheng, L., & Tse, D. (2003). Diversity and multiplexing: A fundamental tradeoff in multiple-antenna channels.
*IEEE Transactions on Information Theory*,*49*(5), 1073–1096.CrossRefGoogle Scholar - 3.Foschini, G. J. (1996). Layered space-time architecture for wireless communication in a fading environment when using multi-element antennas.
*Bell Labs Technical Journal*,*1*(2), 41–59.CrossRefGoogle Scholar - 4.Alamouti, S. M. (1998). A simple transmit diversity technique for wireless communications.
*IEEE Journal on Selected Areas in Communications*,*16*(8), 1451–1458.CrossRefGoogle Scholar - 5.Tarokh, V., Jafarkhani, H., & Calderbank, A. R. (2002). Space-time block codes from orthogonal designs.
*IEEE Transactions on Information Theory*,*45*(5), 1456–1467.CrossRefGoogle Scholar - 6.Hassibi, B., & Hochwald, B. M. (2002). High-rate codes that are linear in space and time.
*IEEE Transactions on Information Theory*,*48*(7), 1804–1824.CrossRefGoogle Scholar - 7.Cortez, J., Bazdresch, M., Torres, D. & Parra-Michel, R. (2007). An efficient detector for non-orthogonal Space-Time Block Codes with Receiver Antenna Selection. In:
*IEEE 18th international symposium on personal, indoor and mobile radio communications (PIMRC)*. https://doi.org/10.1109/PIMRC.2007.4394046. - 8.Yu, S.-J., Lee, E.-Y., & Song, H.-K. (2015). Combination of STBC and SM scheme with iterative detection in LTE systems.
*Wireless Personal Communications*,*83*(2), 1203–1211.CrossRefGoogle Scholar - 9.Soria, F., Garcia, J., & Barboza, F. (2015). Improved detection of SM-SMux signals for MIMO channels.
*IEEE Latin America Transactions*,*13*(1), 43–47.CrossRefGoogle Scholar - 10.Bazdresch, M., Cortez, J., Longoria, O., & Parra-Michel, R. (2012). A family of hybrid space–time codes for MIMO wireless communications.
*Journal of Applied Research and Technology*,*19*(2), 122–142.Google Scholar - 11.Onggosanusi, E., Dabak, A., & Schmidl, T. (2002). High rate space-time block coded scheme: Performance and improvement in correlated fading channels.
*IEEE Wireless Communications Networking Conference (WCNC)*,. https://doi.org/10.1109/WCNC.2002.993489.Google Scholar - 12.IEEE Standard for Local and Metropolitan Area Networks, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications Amendment 5: Enhancements for Higher Throughput, IEEE Std. 802.11n-2009 (2009).Google Scholar
- 13.IEEE Standard for Local and Metropolitan Area Networks Part 16: Air Interface for Fixed and Mobile Broadband Wireless Access Systems, Amendment 2: Physical and Medium Access Control Layers for Combined Fixed and Mobile Operation in Licensed Bands and Corrigendum 1, IEEE Std. 802.16e-2005 (2006).Google Scholar
- 14.Kim, H. & Park, H. (2005). Efficient successive interference cancellation algorithms for the DSTTD system. In
*16th IEEE international symposium on personal, indoor and mobile radio communications (PIMRC)*. https://doi.org/10.1109/PIMRC.2005.1651399. - 15.Wübben, D., Böhnke, R., Rinas, J., Kühn, V., & Kammeyer, K. D. (2001). Efficient algorithm for decoding layered space–time codes.
*Electronics Letters*,*37*(22), 1348.CrossRefGoogle Scholar - 16.Wu, K., Sang, L., Xiong, C., Zhang, X., & Yang, D. (2009). Novel QRM-MLD algorithm for V-BLAST systems with permuted channel matrix. In
*20th IEEE international symposium on personal, indoor and mobile radio communications (PIMRC)*. https://doi.org/10.1109/PIMRC.2009.5449768. - 17.Hassibi, B., & Vikalo, H. (2005). On the sphere-decoding algorithm: I. Expected complexity.
*IEEE Transactions on Signal Processing*,*53*(8), 2806–2816.CrossRefGoogle Scholar - 18.de Jong, Y., & Willink, T. (2002). Iterative tree search detection for MIMO wireless systems.
*IEEE Transactions on Communications*,*53*(6), 930–935.Google Scholar - 19.Kim, H., & Park, H. (2008). Approaching maximum-likelihood performance with reduced complexity for a double space–time transmit diversity system.
*IET Communications*,*2*(5), 682–689.CrossRefGoogle Scholar - 20.Kim, I., Park, Y. O., & Bang, Y. (2009). Very fast detection for rate-2 quasi-orthogonal STBCs.
*IEEE Transactions on Wireless Communications*,*8*(1), 95–101.CrossRefGoogle Scholar - 21.Lee, Y., & Shieh, H.-W. (2011). A simple layered space–time block nulling technique for DSTTD systems.
*IEEE Communication Letters*,*15*(12), 1323–1325.CrossRefGoogle Scholar - 22.Pai, H.-T. (2012). Adaptive detection for double STBCs based on QR decomposition.
*IEEE Transactions on Vehicular Technology*,*61*(3), 1182–1187.CrossRefGoogle Scholar - 23.Le, M.-T., Pham, V.-S., Mai, L., & Yoon, G. (2005). Low-complexity maximum-likelihood decoder for four-transmit-antenna quasi-orthogonal space–time block code.
*IEEE Transactions on Communications*,*53*(11), 1817–1821.CrossRefGoogle Scholar - 24.Cortez, J., Palacio, R., Ramirez-Pacheco, J. C., & Ruiz-Ibarra, E. (2015). A very low complexity near ML detector based on QRD-M algorithm for STBC-VBLAST architecture. In
*7th IEEE Latin-American conference on communications (LATINCOM)*. https://doi.org/10.1109/LATINCOM.2015.7430123. - 25.Kim, H., & Park, H. (2007). New DSTTD transceiver architecture for low-complexity maximum-likelihood detection. In
*IEEE wireless communications and networking conference (WCNC)*. https://doi.org/10.1109/WCNC.2007.144. - 26.Cortez, J., Bazdresch, M., & Longoria-Gandara, O. (2017). A low-complexity near-ML detector for a 3 \(\times \) nR hybrid space-time code. In
*IEEE 9th Latin-American conference on communications (LATINCOM)*. https://doi.org/10.1109/LATINCOM.2017.8240182. - 27.Longoria-Gandara, O., & Parra-Michel, R. (2011). Estimation of correlated MIMO channels using partial channel state information and DPSS.
*IEEE Transactions on Wireless Communications*,*10*(11), 3711–3719. https://doi.org/10.1109/TWC.2011.091411.101199.CrossRefGoogle Scholar - 28.Anderson, J., & Mohan, S. (1984). Sequential coding algorithms: a survey and cost analysis.
*IEEE Transactions on Communications*,*32*(2), 169–176.CrossRefGoogle Scholar

## Copyright information

**Open Access**This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.