Reflected Simplex Codebooks for Limited Feedback MIMO Beamforming Daniel J. Ryan 1, Iain B. Collings 2 and Jean-Marc Valin 3 1 Dept. of Electronics & Telecommunications., Norwegian University of Science and Technology (NTNU), NORWAY 2 Wireless Telecommunications Laboratory, CSIRO ICT Centre, AUSTRALIA 3 Octasic Semiconductor, Quebec, CANADA daniel.ryan@iet.ntnu.org, iain.collings@csiro.au,jmvalin@ieee.org Abstract This paper proposes Reflected Simplex codebooks for limited feedback beamforming in multiple-input multipleoutput (MIMO) wireless systems. The codebooks are a geometric construction based on simplices and the A n lattice. We propose a fast codebook search and indexing algorithm. We show that such codebooks perform superior or comparable to other codebooks, with much lower implementation complexity. I. INTRODUCTION A simple technique to obtain the highest possible diversity order in multiple-input multiple-output (MIMO) wireless links is to employ transmit beamforming and receive combining, which simultaneously improves the array gain. This technique requires that the transmitter has channel state information in the form of a transmit beamforming vector. It is often impractical to have a reciprocal channel for the transmitter to estimate the channel, and thus a small number of bits are sent via a feedback path for the transmitter to recreate the beamforming vector. Such systems are known as limited feedback systems (see [1] and references therein). In these limited feedback systems, the transmitter and receiver share a codebook of possible beamforming vectors indexed by a number of bits. The receiver chooses a beamforming vector from the codebook on the basis of maximizing the effective signal-to-noise ratio (SNR) after combining, and sends the corresponding bits to the transmitter. We consider maximum ratio transmission (MRT), where the beamforming vectors are constrained to have unit length, so that the energy expended in each packet transmission is unchanged [2]. The most straightforward approach to designing a limited feedback system is to employ scalar quantization where each component of the beamforming vector is quantized separately. More advanced approaches to the limited feedback design problem involve designing beamforming vector codebooks using the minimum number of feedback bits possible for a given effective SNR after combining [2], neglecting the search and storage requirements. The codebook design strategies which have been suggested generally use numerical optimization techniques e.g. [2], or random vector quantization (RVQ) [3]. Unfortunately, the codebook size must increase exponentially with the number of transmit antennas to maintain a This work was completed in part while Daniel Ryan was an independent researcher and Jean-Marc Valin was with the CSIRO ICT Centre, Australia. given effective SNR or capacity loss with respect to the ideal unquantized system [2, 4]. Since the codebooks have no structure an exhaustive search is usually required. For timevarying channels, the resulting delay due to the excessive search time reduces the effectiveness of the beamforming vector when employed at the transmitter [5]. Recently, we proposed square lattice angular quantization (SLAQ) to reduce both the search and storage complexity of limited feedback [6]. In SLAQ, the elements of codebook vectors are complex integers, and can be considered points of a QAM constellation. These constructions have simple bit-to-symbol mapping algorithms so no codebook storage is required at either the transmitter or receiver. The codebook searching problem is similar to the problem of noncoherent sequence detection, and in [6] it was shown fast noncoherent sequence detection algorithms such as [7] can be utilized to achieve reductions in search complexity orders of magnitude smaller than an exhaustive search. The performance of SLAQ to existing codebooks is similar for the same number of feedback bits, and much better for a given complexity. In this paper we propose Reflected Simplex codebooks as an improvement to the SLAQ codebooks. Like SLAQ codebooks, Reflected Simplex codebooks adhere to a geometric construction. The codebook construction is based on Pyramid Vector Quantization (PVQ) [8], but with important modifications tailoring the construction to the beamforming scenario. Specifically, the codebook vectors are (nearly) all of the vectors that consist of integers that lie within the original and reflected images about the axes of R 2NT of a 2 1-dimensional simplex, where is the number of transmit antennas. We show how the codebooks can be indexed with low time and storage requirements. We also provide a fast algorithm for the search through the codebook for the best beamforming vector, by exploiting a connection with the A n lattice [9]. We show by simulation that the performance of the codebook is superior to other SLAQ codebooks for small numbers of feedback bits, while maintaining comparable performance to other codebooks for much smaller computational resources. II. MIMO BEAMFORMING SYSTEM MODEL We consider a single-user, narrowband wireless MIMO system employing transmit beamforming and receive combining
with transmit antennas and N R receive antennas (for more details see [2]). The channel H C NR NT is assumed to be independent and identically distributed (i.i.d.) complex Gaussian with unit variance. The channel state information (CSI) is perfectly known at the receiver. Given the transmitted symbol x C, the received symbol y C is given by y = z Hwx + z n (1) where w C NT 1 and z C NR 1 are the beamforming and combining vectors respectively with w = z = 1. The vector n C NR consists of i.i.d. circularly symmetric complex Gaussian variables, each with variance N 0. The average symbol energy is E x = E[ x 2 ]. The instantaneous signal-tonoise ratio (SNR), ρ, is ρ ExΓ(H) N 0 where Γ(H) z Hw 2 is the effective channel gain. Note that given any w, it is well known that the combining vector which maximizes the SNR is given by maximum ratio combining (MRC) where z = Hw/ Hw. The resulting effective channel gain is Γ(H) = Hw 2. We consider the case where there is a low-rate, errorfree, zero-delay feedback channel from the receiver to the transmitter, as in [1, 2]. The receiver and transmitter share a codebook C of N possible beamforming vectors, which are indexed by log 2 N bits. To maximize the SNR, the receiver chooses the beamforming vector from the codebook according to w = arg max v C Hv 2 v 2. (2) and then sends the corresponding index bits to the transmitter. The chosen beamforming vector is normalized at the transmitter to have unit norm so that the packet energy is constant. Under this constraint, the ideal infinite-precision beamforming vector is given by the right-singular vector of H corresponding to the largest singular value of H. We denote this vector w opt. This corresponds to maximum ratio transmission (MRT) [2]. III. REFLECTED SIMPLEX CODEBOOKS We first review PVQ and then propose a method of construction for beamforming codebooks based on these codebooks. A. Review of PVQ A PVQ codebook D(N, K) consists of vectors in R N and K is a parameter that determines the granularity of the quantization. The codebook is constructed by first collecting the set of all integer-valued vectors that lie on a segment of the hyperplane that goes through the points Ke 1,...,Ke N. The set of points on the hyperplane with non-negative elements is an (N 1) (dimensional) simplex. The codebook consists of these points and the 2 N 1 images obtained by reflecting the set about the N axes of R N. Precisely: N D(N, K) v R N : v t = K, v t Z. (3) t=1 The parameter K is the height of the simplex, and the length of its edges are 2K. Note that a 2-simplex is an equilateral triangle, and a 3-simplex is a regular tetrahedron. The number of codewords in the PVQ codebook can be calculated by the following recurrence relation [8], V (N, K) = V (N, K 1)+V (K, N 1)+V (N 1, K 1) with V (1, K) = 2 for all K and V (N, 1) = 2N. The value of V (N, K) can then be calculated in O(NK) time by storing the intermediate values in matrix form. The recurrence relation provides a O(N K) method for computationally efficient tabular calculation of V (N, K). This tabular construction is also useful for a fast indexing algorithm [10]. A counting argument [10] gives a codebook size of V (N, K) = min(n,k) L=0 2 L ( N L )( ) K 1 L 1 The total number of bits required to transmit the codebook is given by log 2 V (N, K), where denotes the least integer greater than or equal to its argument. B. Reflected Simplex Codebook Construction We now show how the PVQ codebook can be modified for the limited feedback beamforming problem. To do this we must deal with the conversion between real and complex valued vectors. We must also take into account the invariance to a phase rotation of the codebook vector. We also show how the codebook can be indexed in an efficient manner based on the method in [10]. First, we use the underline notation applied to a complex vector to denote the conversion of the complex vector of dimension to a real-valued vector of dimension N = 2, i.e. for a vector u, u 2t 1 = Re u t and u 2t = Im u t. Definition 1: A Reflected Simplex codebook C(, K) is defined as a function of the number of transmit antennas N = 2, and the simplex height K Z +, as follows C(, K) = v C NT : v D(N, K), v 2r 1 > 0, v 2r 0 where r = l/2, and l is the position of the first nonzero element of v. The purpose of the condition that v 2r 1 > 0, v 2r 0 in the definition is to remove redundant vectors. More specifically, two vectors v 1, v 2 are ambiguous if there exists some γ C such that v 1 = γv 2. This implies that the channel gain is the same for both vectors, i.e. Hv 1 / v 1 = Hv 2 / v 2. The conditions in Definition 1 exist to remove vectors that are redundant due to the phase ambiguity between vectors, where γ = 1. Without such a condition, for every v in C(, K), there would be three phase ambiguous vectors v, jv and jv. By removing these vectors we obtain a codebook size of V (N, K)/4. Thus the number of bits required to encode the codebook will be log 2 V (N, K) 2. This saving of 2
feedback bits, is a significant amount for small codebooks suited to limited feedback beamforming. However, it is not straightforward index the codebook now that these redundant vectors have been removed. In Appendix A, we propose a fast indexing algorithm. The approach is based on the algorithm proposed in [10] for the indexing of the base codebook in (3). This algorithm has complexity O(NK), and avoids multiplication and divisions (except those which can be handled by simple bit shifts). The modification required is to remove the redundant vectors from the complex version of D(N, K) due to the phase ambiguity. The resulting indexing encoding and decoding algorithms are O(N K). Another form of redundancy arises in the Reflected Simplex codebook between a pair of codebook vectors when γ 1, which we call a divisor ambiguity. For example if = 2 and K = 4, the vectors [ 2 + j0 2 + j0 ] and [ 1 + j1 1 + j1 ] exhibit divisor ambiguity, where γ = 1 j. After normalization at the transmitter, these vectors would result in the same channel gain. We have calculated the number of bits of the resulting codebook for a large range of N and K, the end result being that no situation where divisor ambiguities would reduce the integer number of bits was found. However, for some small K a small fraction of a bit may be saved, which may provide some efficiencies when a number of vectors are encoded together. A consequence would be a more complex index decoding and encoding method, but for small codebooks a lookup table may be used. IV. LOW-COMPLEXITY CODEBOOK SEARCH In this section we discuss the duality between the codebook search and noncoherent sequence detection. We use this duality to provide a low-complexity O( log ) algorithm for choosing a beamforming vector. A. Codebook Search via Singular Vector Quantization For the case where N R 2, the search in (2) is equivalent to finding the closest beamforming vector in angle to the optimal unquantized beamforming vector [6], w = arg max v C(N cos2 θ(v,w opt ). (4) T,K) where cos 2 θ(v,u) v u 2 /( v 2 u 2 ). When N R > 2, this can be used as an approximation. This approach is denoted singular vector quantization (SVQ), because it performs a codebook search by quantizing the righthand singular vector associated with the largest singular value of the channel matrix. There exists an equivalence relationship between SVQ using the angular metric and the problem of sequence detection over unknown deterministic flat-fading channels, see [6]. The equivalence can be seen by noting that the cost function in (4) is equivalent to noncoherent detection in the form of the generalized likelihood ratio test (GLRT) [11]. Specifically, consider the detection of a discrete valued input x C T, given an output y = hx + n (5) where n C T is a vector of i.i.d. additive white Gaussian noise and h C is an unknown deterministic channel assumed constant for a period of T symbols. The GLRT-optimal data estimate ˆx GLRT is obtained from the received data by solving ˆx GLRT = arg min min y ĥˆx 2 = argmax ˆx ĥ ˆx cos2 θ(y, ˆx). (6) Low-complexity algorithms exist for polynomial-time sequence detection for sequences of T symbols drawn from a specific constellation, see [7] and references therein. Although we use a similar principal to the search algorithm, here we are concerned with a subset of a higher dimensional lattice. B. Low-Complexity Search Algorithm Consider the real-valued version w opt of the vector w opt. Denote z as the vector in the direction of w opt such that the sum of the absolute values of its components is K, i.e. z w opt K N n=1 w opt n where N = 2. This places z on the reflected simplex, in the same direction as w opt. This is equivalent to setting h = N n=1 w opt n in (6). The codebook search algorithm is now K w = arg min v C(N,K) z v 2 We now demonstrate how to perform this search. This step is equivalent to Step 3 of the PVQ quantization algorithm provided in [8] intended for a mean-squared error criterion. Here we provide an alternative interpretation in terms of a known lattice search algorithm. Without loss of generality, we convert all the elements of z to be non-negative. That is, we assign z + = s z where s n = sgnz n for all n and denotes the Hadamard product. The result of this is that all the elements of v will be non-negative. It follows that, we have projected z onto the hyperplane defined by N u : u n = K, u n 0. n=1 Note, that all the codebook vectors in D(N, K) with nonnegative elements exist on this hyperplane. We now point out that the portion of the codebook D(N, K) of vectors of non-negative elements, is a subset of a translated A n lattice, where n = N 1 [9]. The lattice A n is defined as A n = n+1 a a Z n+1, a l = 0 l=1 It follows that for any vector z C(N, K), then z + Ke 1 A N 1. We propose to choose w as follows: w = s argmin u A N 1 ( z+ Ke 1 ) u 2 + Ke1 This minimization problem corresponds to a search for the closest lattice point, where here the lattice is A N 1. For this
lattice, a fast algorithm for the closest lattice point search was developed in [9]. This algorithm has a complexity independent of K of O(N log N). Note that this lattice based search will always return a vector in D(N, K). This is guaranteed since z +,n u n < z +,n u n, as all the z +,n are positive. Hence, all the u n will be positive and add to K, and therefore u will be a valid vector. The vector w is then rotated so that it belongs to the codebook C(, K) (recalling the conditions in Definition 1), so that thus phase ambiguity is avoided. C. Multiple-Phase Codebook Search Algorithm The discussion in Section IV-A suggests that using multiple scalings of w opt will improve the performance as more of the search region will be covered (corresponding to a search over a greater range of h in the noncoherent detection problem). Specifically, we propose to use L different phase rotations of w opt, uniformly spaced between 0 and π/2. Specifically, ( ) jπl w l w opt exp 2L For each w l the algorithm proceeds as for the least-square algorithms. The best vector according to the metric in 2 is then chosen. V. SIMULATION RESULTS In this section we perform Monte Carlo simulations to examine the average effective channel gain of the Reflected Simplex codebooks compared with the SLAQ codebooks, RVQ and the numerically determined codebooks in [2, 12, 13], which are available for small and codebook size N, and can be considered near-optimal. For RVQ, the codewords are each chosen independently and isotropically from the feasible set of MRT beamforming vectors. Experiment 1: In Figure 1, we show the average effective channel gain Γ ave E[Γ(H)], (where the expectation is over H) as a function of B 1 log 2 S, where S is the codebook size. Plots are shown for a system with N R = 1 receive antennas and = 2, 4, 8 transmit antennas. For SLAQ, the optimal quantization algorithm of [6] is used. For the Reflected Simplex codebooks we use the Multiple-Phase codebook search with L = 3. As an upper bound, the performance of ideal (unquantized) MRT is also plotted, and we see the performance approaches unquantized MRT as K increases. For the RVQ systems we use the analytical curves available from []. Note that for large and N, the RVQ codebook size may be too large for practical search delay or storage constraints. For example, for = 8 when using B = 2.5, 2 20 1 10 6. This is computationally infeasible for the delay and power constraints of a mobile device. The figure indicates that from a practical point of view it would be preferable to choose the Reflected Simplex codebooks over an RVQ codebook of the same size, even though RVQ is asymptotically optimal for large B, [15]. This is because we see that for small the performance of the Γ ave (db) 10 9 8 7 6 5 4 3 2 1 0 Ref. Simplex SLAQ Numerical RVQ Ideal MRT = 8 = 4 = 2 1 2 3 B Fig. 1. Plot of average effective channel gain Γ ave for Reflected Simplex codebooks as a function of the number of bits per channel coefficient. Plots are shown for = 2,4, 8 transmit antennas with N R = 1 receive antennas. The effective channel gain for RVQ, some SLAQ codebooks and some numerical codebooks are shown. N C 10 6 10 4 10 2 10 0 RVQ SLAQ SLAQ Line Search RS SLAQ Scalar 6 bits 6 8 10 11 11 12 0 5 10 15 20 25 σ 2 Q 16 7.5 11.3.1 18.3 21.9 6 11 Fig. 2. Plot of number of metric calculations N C for RVQ, SLAQ and Reflected Simplex Codebooks as a function of the normalized mean quantization error σq. 2 Plots are shown for = 4, N R = 1. Reflected Simplex codebooks is superior to RVQ, while for 8, RVQ is computationally infeasible. We also see that the performance of the Reflected Simplex and SLAQ codebooks is quite close. These geometric constructions can be seen as complementary, as the codebook sizes usually do not match. Therefore, both Reflected Simplex and SLAQ schemes can be used together as a low-delay limited feedback scheme to increase the flexibility of codebook sizes for a given antenna configuration. Experiment 2: In Figure 2, we examine the number of 18 20
codeword metric calculations N C on a logarithmic scale as a function of the quantization loss measured in terms of sin 2 θ(w opt,w). Plots are shown for = 4 with N R = 1, for RS, RVQ and SLAQ codebooks. For the SLAQ codebooks we use search methods proposed in [16], specifically a scalar quantization, a suboptimal multi-phase line search algorithm (with L = 4 line searches) and an optimal plane search. The SLAQ codebooks are derived from QAM constellations with M = 4, 8, 16 and 64 constellation points. The RVQ codebooks use an exhaustive search. The RS codebooks use K = 3, 5, 7, 11 and 16, with a multi-phase search using L = 5. We see that the complexity of RVQ increases rapidly. We also see that the performance of RS for a given number of bits is similar to RVQ for the whole range of codebook sizes. The SLAQ codebooks using the line and plane search also have similar performance to RVQ. We see that the RS codebook search has a much lower complexity than these approaches, and relatively close to a scalar quantization. The graph also highlights the performance gains obtained over a scalar quantization. APPENDIX A FAST INDEXING ALGORITHM The indexing algorithm proceeds as follows. The codebook is divided up into mutually exclusive sets denoted I 1,..., I T, where I t = v : v C(, K), v 1,..., v t 1 = 0 The number of codewords in I t is given by I t = K(K+1)/2 l=1 V (2( t + 1), K 1 2 8l + 1 1 ) The second argument of each V (, ) can be stored in a table for fast calculation. The indexing algorithm first calculates which I t, the codebook vector belongs to. The index is then initialized to t 1 c = I t q=1 These values can be stored in a look-up table for realtime implementation. Now, each set I t is further divided into K(K 1)/2 subsets depending on the K(K + 1)/2 possible values of v 2t 1 and v 2t. These sets are ordered lexicographically as (1, 0), (1, 1), (1, 2), (2, 1), (3, 0),.... where J l,t = v : v I t, l L L = l : K l (K l + 1)/2 + v 2t 1, K l = v 2t + v 2t 1 1. The size of each set is given by J l,t = V (2( t + 1), K 1 2 8l + 1 1 ) The index is then updated as l 1 c = c + J l,t. r=1 Finally, the index is then incremented by the index value returned from the algorithm in for the case of N 2t dimensions and K K l pulses. Pseudo-code for the algorithm is provided in Table I. 1 begin 2 t := 1 3 while ( v 2t 1 = v 2t = 0) and t < 4 t := t + 1; 5 end while; 6 c := t 1 q=1 It ; 7 K 0 := v 2r 1 + v 2r; 8 l := K 0(K 0 1)/2 + v 2r 1 1; 9 c := c + l 1 q=1 Jq,t ; 10 c := c + VectorToIndex([v 2r+1... v 2NT ], 2( t), K K 0); 11 return c; TABLE I LOW COMPLEXITY INDEXING ALGORITHM REFERENCES [1] D. J. Love, R. W. Heath Jr., W. Santipach, and M. L. Honig, What is the value of limited feedback for MIMO channels? IEEE Comms. Mag., vol. 42, no. 10, pp. 54 59, Oct. 2004. [2] D. J. Love and R. W. Heath Jr., Grassmannian beamforming for multiple-input multiple-output wireless systems, IEEE Trans. Inform. Theory, vol. 49, no. 10, pp. 2735 2745, Oct. 2003. [3] W. Santipach and M. L. Honig, Signature optimization for CDMA with limited feedback, IEEE Trans. Inform. Theory, vol. 51, no. 10, pp. 3475 3492, Oct. 2005. [4] K. K. Mukkavilli, A. Sabharwal, E. Erkip, and B. Aazhang, On beamforming with finite rate feedback in multiple antenna systems, IEEE Trans. Inform. Theory, vol. 49, no. 10, pp. 2562 2579, Oct. 2003. [5] K. Huang, B. Mondal, R. W. Heath Jr., and J. G. Andrews, Effect of feedback delay on multi-antenna limited feedback for temporallycorrelated channels, in Proc. IEEE Global Commun. Conf. (GLOBE- COM), San Francisco, CA, USA, Nov. 2006. [6] D. J. Ryan, I. V. L. Clarkson, I. B. Collings, D. Guo, and M. L. Honig, QAM codebooks for low-complexity limited feedback MIMO beamforming, in Proc. IEEE Intern. Conf. on Commun. (ICC), Glasgow, Scotland, Jun. 2007, pp. 4162 4167. [7] D. J. Ryan, I. B. Collings, and I. V. L. Clarkson, GLRT-optimal noncoherent lattice decoding, IEEE Trans. Signal Process., vol. 55, no. 7, pp. 3773 3786, Jul. 2007. [8] T. R. Fischer, A pyramid vector quantizer, IEEE Trans. Inform. Theory, vol. 32, no. 4, pp. 568 583, Jul. 1986. [9] J. H. Conway and N. J. A. Sloane, Voronoi regions of lattices, second moments of polytopes, and quantization, IEEE Trans. Inform. Theory, vol. IT-28, no. 3, pp. 211 6, 1982. [10] T. B. Terriberry and J.-M. Valin, A Multiply-Free Enumeration of Combinations With Replacement and Sign. Online, Dec. 2007. [Online]. Available: http://people.xiph.org/ tterribe/notes/cwrs.html [11] H. Van Trees, Detection, Estimation and Modulation Theory. Part 1: Detection, Estimation, and Linear Modulation Theory. New York: Wiley, 1968. [12] D. J. Love, Grassmannian Subspace Packing. Online, Nov. 2003. [Online]. Available: http://dynamo.ecn.purdue.edu/ djlove/grass.html [13] P. Xia, Codebook Constructions Using the Lloyd Algorithm. Online, Jan. 2005. [Online]. Available: http://www.ece.umn.edu/users/pfxia/codebook/lloyd [] C. K. A. Yeung and D. J. Love, On the performance of random vector quantization limited feedback beamforming in a MISO system, IEEE Trans. Wireless Commun., vol. 6, no. 2, pp. 458 462, Feb. 2007. [15] W. Dai, Y. Liu, and B. Rider, Quantization bounds on Grassmann manifolds and applications to MIMO communications, IEEE Trans. Inform. Theory, vol. 54, no. 3, pp. 1108 1123, Mar. 2008. [16] D. J. Ryan, I. V. L. Clarkson, I. B. Collings, D. Guo, and M. L. Honig, QAM and PSK codebooks for low-complexity limited feedback MIMO beamforming, to appear, IEEE Trans. Commun., Mar. 2009.