IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 4, NO. 5, SEPTEMBER 2005 2035 Space Time Chase Decoding David J. Love, Member, IEEE, Srinath Hosur, Member, IEEE, Anuj Batra, Member, IEEE, and Robert W. Heath, Jr., Member, IEEE Abstract Multiple-antenna wireless systems are of interest because they provide increased capacity over single-antenna systems. Several space time signaling schemes have been proposed to make use of this increased capacity. Space time techniques, such as space time block coding and spatial multiplexing, can all be viewed as signaling with a multidimensional constellation. Because of the large capacity of multiple-input multiple-output (MIMO) channels, these multidimensional constellations often have large cardinalities. For this reason, it is impractical to perform optimal maximum-likelihood (ML) decoding for space time systems, even for a moderate number of transmit antennas. In this paper, we propose a modified version of the classic Chase decoder for multiple-antenna systems. The decoder applies successive detection to yield an initial estimate of the transmitted bit sequence, constructs a list of candidate symbol vectors using this initial estimate, and then computes bit likelihood information over this list. Three algorithms are presented for constructing the candidate vector list. This decoder can be adjusted to have a fixed or variable complexity, while maintaining performance close to that of an ML decoder. Index Terms Chase decoding, maximum-likelihood (ML) decoding, multiple-input multiple-output (MIMO) systems, spatial multiplexing, sphere decoding. I. INTRODUCTION MULTIPLE-TRANSMIT and multiple-receive antenna wireless systems, often called multiple-input multipleoutput (MIMO) wireless systems, provide substantial gains in capacity compared to single-antenna systems [1]. Many different space time transmission techniques have been designed to take advantage of the large data rates and diversity advantages offered by MIMO communications, but most require optimal maximum-likelihood (ML) decoding, which has a complexity that grows exponentially with the number of transmit antennas. Thus, ML decoding is often impractical, even for a modest number of transmit antennas. Because of the desire for high-performance, yet practical, decoding, decoders that provide a tradeoff between error-rate performance and complexity are needed. We propose space time Chase (ST Chase) decoding for MIMO wireless systems as a solution to this decoding problem. ST Chase decoding is Manuscript received November 29, 2003; revised July 17, 2004; accepted October 28, 2004. The editor coordinating the review of this paper and approving it for publication is H. Boelcskei. D. J. Love is with the Center for Wireless Systems and Applications, School of Electrical and Computer Engineering, Purdue University, West Lafayette, IN 47907 USA (e-mail: djlove@ecn.purdue.edu). S. Hosur and A. Batra are with the Digital Signal Processing Solutions Research and Development Center, Texas Instruments, Dallas, TX 75243 USA (e-mail: hosur@ti.com; batra@ti.com). R. W. Heath, Jr. is with the Wireless Networking and Communications Group, Department of Electrical and Computer Engineering, The University of Texas at Austin, Austin, TX 78712 USA (e-mail: rheath@ece.utexas.edu). Digital Object Identifier 10.1109/TWC.2005.853830 a modification to existing successive-detection decoders that makes no assumption of lattice structure in the transmit constellation and uses ideas originally proposed by Chase in [2] for decoding binary codes. Similar to the decoder presented in [3], the ST Chase decoder operates in two stages: successive detection and list decoding. The decoder refines, in some sense, the initial bit estimates returned from the successive-detection decoder. The initial bit estimates are used to generate a list of candidate symbol vectors that can be used to compute bitlikelihood information. We present three different algorithms for constructing these candidate symbol vectors. These methods are based on the binary-block decoding algorithms proposed in Chase s famous work [2]. The ST Chase-1 algorithm generates a list of all symbol vectors corresponding to bit sequences lying in a Hamming sphere around an initial estimate of the transmitted bit sequence. The second decoding algorithm, called the ST Chase-2 decoder, uses log-likelihood bit information from an initial successive-detection decoder to construct a list using all combinations of bit patterns in the weakest indices. The ST Chase-3 decoder functions similarly to the ST Chase-2 decoder, but only considers the most likely error patterns for each possible error weight. The ST Chase-1 decoder is actually a variant of the listsphere decoder proposed in [4] [6]. The triangularization and subsequent vector search used by list-sphere decoding can be thought of as decoding over a list of candidate symbol vectors by searching a sphere around the zero-forcing (ZF) symbolvector estimate using a modified, channel-dependent distance function. In contrast, the ST Chase-1 algorithm uses a bit vector obtained from successive-detection decoding as the center of a binary sphere using the Hamming distance. The symbol vectors corresponding to binary vectors within the sphere are used to construct a list. Thus, the ST Chase-1 decoder can be viewed as a binary list-sphere decoder because it creates a list using the binary Hamming metric ball. The paper is organized as follows. In Section II, MIMO systems using multidimensional signaling are reviewed. ST Chase decoding is presented in Section III. A variable-complexity modification to the ST Chase decoder is described in Section IV. Section V shows Monte Carlo simulation results. We conclude in Section VI. II. SYSTEM OVERVIEW To exploit the high data rates available in MIMO wireless systems, researchers have developed a wide variety of spatiotemporal signaling techniques (see the discussion and references in [7] [9]). We will focus on systems that use some form of multidimensional modulation. Multidimensional constellations are sets of complex vectors or matrices that have a 1536-1276/$20.00 2005 IEEE
2036 IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 4, NO. 5, SEPTEMBER 2005 bijective mapping to a binary vector space. Note that multidimensional constellations are different from single-dimensional constellations because they are subsets of C n where n>1. 1 We will consider multidimensional constellations that can be written as a set C M, where C is a complex constellation (e.g., 8-phase shift keying (8-PSK), 16-quadrature amplitude modulation (16-QAM), etc.). Assuming perfect pulse shaping and sampling, we will use a matrix input/output relationship that can be modeled as y = Hs + v (1) where y, v C N, s C M, H C N M, and N M. The noise vector v is normalized, so that each entry of v is independent and distributed according to CN(0, 1). To incorporate power constraints, we will assume that E s [ss ]=(ρ/m)i M and ρ is the average signal-to-noise ratio (SNR). Note also that temporal dependence in (1) has been abstracted out, since we are only concerned with vector-by-vector detection of s. We assume that B bits are transmitted by each space time signal. Each transmission of s is obtained from a bijective map M : F B 2 C M. The function M( ) is a modulation function. Thus, the purpose of our decoder is to find an estimate of the vector b F B 2 that generated y in (1) with s = M(b). Note that M and N are not necessarily equal to the number of transmit and receive antennas, respectively. While this may be true with spatial multiplexing, more general space time transmissions will not satisfy this property. In general, H could be an effective channel that is not equal to the actual propagation channel [4]. The effective channel is determined by some function of the actual propagation channel and the space time code as discussed in [8]. For this reason, we will refer to entry i of s (i.e., s i ) as the symbol transmitted on the ith substream, rather than the ith antenna. This system model is more general than that assumed in some of the sphere-decoding implementation literature, for example, [10] and [11], because we make no assumptions about the vector constellation C being written as the Cartesian product of single-dimensional real constellations. We will not require the restriction that each entry of s have real and imaginary parts chosen from a real lattice. Common constellations, such as m-psk, where m>4 will not satisfy the lattice constraint, and the removal of this restriction is an important point to consider throughout this paper. We also make no assumptions about the constellation being decomposable into subsets of PSK constellations, such as those found in the complex sphere decoder discussed in [4]. Our only assumption is that C is a finite subset of C. 1 We use C to denote the field of complex numbers, C M to denote the M-dimensional complex vector space, C N M to denote the set of N M complex matrices, F 2 to denote the two-element finite field F 2 = {0, 1}, F B 2 to denote B-dimensional vector space over F 2, T to denote the transpose of a matrix, to denote the conjugate transpose of a matrix, C M to denote the M-fold Cartesian product of the set C with itself, I M for the M M identity matrix, 2 to denote the vector two-norm, to denote the matrix pseudoinverse, to denote the absolute value, b e to denote entry by entry exclusive-or of b with e (i.e., b e =[b 1 e 1 b 2 e 2 b B e B ] T ), card( ) to denote the cardinality of a set, and E y[ ] to denote expectation with respect to y. Fig. 1. Block diagram of an ST Chase decoder. The receiver in this paper is assumed to have perfect knowledge of H and y. We are interested in determining an estimate of b given y and H. This estimate can be in the form of softor hard-bit information. Soft bit information would be preferential for use with an outer error-correcting code. III. SPACE TIME CHASE DECODING In this section, we propose the ST Chase decoder as a solution to the MIMO decoding problem. Unlike previously proposed decoders, the ST Chase decoder constructs a candidate vector list from the bit level instead of the symbol level. We will combine ideas from sphere decoding and binary-block decoding to create a low-complexity decoder. An ST Chase decoder is shown in Fig. 1. In this decoder, the received vector y and effective channel H are fed into a successive-detection decoder [12] [14]. The successivedetection decoder could be a ZF decoder [12], ordered ZF decoder [13], ordered minimum mean square error (MMSE) decoder [14], etc. This first-step decoder will generate a length B log-likelihood vector ĉ, with the entries of ĉ corresponding to soft estimates of the transmitted bits. While successive detection provides moderate performance, its bit error-rate performance is inferior to ML decoding [8]. Let c = h(ĉ) be a binary vector obtained from making hard decisions on the entries of ĉ, i.e., c i =(1/2)((ĉ i / ĉ i )+1). The fundamental idea behind ST Chase decoding is to think of c as an initial estimate of b in F B 2. Recall that the Hamming distance between b, b F B 2 given by w(b, b ) = card ({i b i b i }). The set F B 2, taken along with the Hamming distance, is a metric space. Therefore, we can define closed balls in F B 2,justas was done in the sphere-decoding literature. Let B H (P, c) = { b F B 2 w(b, c) P }. Note that B H (P, c) can be constructed easily. All that is needed is to compute c e for all e, such that w(e, o) P, where o =[11 1] T. The bit vectors in B H (P, c) can be used to construct a list of candidate symbol vectors in C M to perform ML decoding over. Thus, the set L total = {M(b ) b B H (P, c)} is a list of candidate symbol vectors. Because B H (P, c) is easily constructed, L total can be found by simply remodulating the bit vectors in B H (P, c). is
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 4, NO. 5, SEPTEMBER 2005 2037 ST Chase decoding works by performing ML decoding over asetl L total. We propose three different algorithms for creating L based on algorithms in [2]. Algorithm 1 (ST Chase-1): Set L = L total. Algorithm 2 (ST Chase-2): Let I be the set of indices of the P weakest bits in ĉ. This means that if i I, then ĉ i ĉ j for all j I. Construct L by choosing L = { M(b ) b B H (P, c) and j I,b j = c j }. For example, if P =2and ĉ =[0.3 5.2 0.4 1.5] T, then c = [1101] T and L = { M ( [1101] T), M ( [1111] T), M ( [0 1 0 1] T), M ( [0 1 1 1] T)}. Algorithm 3 (ST Chase-3): Let I j be a set that contains the indices of the j weakest bit locations, where 0 j P. Define I 0 to be the empty set. Construct L as L = {M(b 0 ), M(b 1 ),...,M(b P )}, where b j is c with the bits in the j indices in I j complemented. Once again, ĉ =[0.3 5.2 0.4 1.5] T and P =2yields L = { M ( [1 1 0 1] T), M ( [0101] T), M ( [1 1 1 1] T)}. Once the set of candidate symbol vectors has been constructed, ML decoding can then be performed over L. The decoder would compute the detected bit vector with entries given by ( ( s Ci,1 ˆbi = h ln M L exp ( ) y Hs 2 )) 2 s Ci,0 M L exp ( y Hs 2 2 ) where, once again, h( ) is a function that makes hard decisions and C M i,1 (CM i,0 ) is the set of symbol vectors in CM that have a 1 ( 0 ) in the ith bit position. A. Discussion Notice that the algorithms decrease in complexity. The ST Chase-1 decoder is the most complex of the three algorithms because card(l) = P ( B ) i=0 i, while the ST Chase-2 and ST Chase-3 decoders have lists of cardinality 2 P and P +1, respectively. The integer parameter P must satisfy 0 P B. Interestingly, the parameter P allows a complexity versus performance tradeoff. When P =0, all three ST Chase decoders are equivalent to a successive-detection decoder. When P = B, ST Chase-1 and ST Chase-2 become true ML decoders that compute the log-likelihood information over the entire constellation C. Notice that unlike ST Chase-2 and ST Chase-3, the ST Chase-1 decoder does not require log-likelihood information from the successive-detection decoder. Practically, this can be highly desirable, since the number of computations required for the successive-detection block can be reduced. Also, the ST Chase-1 decoder requires only B bits, rather than L B bits (2) for L log-likelihood bits, to be shared between the successivedetection decoder and the block that creates L. Note that ST Chase decoding can also be successfully employed with outer codes. These algorithms can be easily modified to generate log-likelihood information by letting ( s Ci,1 ˆbi =ln M L exp ( ) y Hs 2 ) 2 s Ci,0 M L exp ( y Hs 2 2 ). (3) When ST Chase-2 or ST Chase-3 decoding is used, some indices will return an empty set for C M i,1 L or CM i,0 L.In this case, it is recommended to use the methods discussed in [4], such as setting the log-likelihood information to an extreme value (such as ±8 for a decoder using 4 bits of log-likelihood information). Because the ST Chase-2 and ST Chase-3 decoders make hard decisions on the most reliable bits according to the successive detection decoder, the reliability of the soft bits computed by these algorithms is often questionable. For this reason, the ST Chase-1 decoder should, in general, be used in conjunction with outer codes. It is interesting to compare the construction of the candidate symbol-vector set L by ST Chase-1 and the list-sphere decoder. The list-sphere decoder constructs these candidates using a modification of the traditional real (or complex) sphere decoder. The ST Chase-1 decoder constructs this set L directly using binary manipulations and modulation. While listsphere-decoding implementations will have to store all possible values of the real lattice (or complex latticelike set), the ST Chase-1 decoder can generate the candidate symbols by remodulating each entry of B(P, c). The ST Chase decoder can make use of the modulation block already present in a multipleantenna wireless transceiver to yield an overall system-level complexity reduction. IV. VARIABLE COMPLEXITY DECODING OPTION All three algorithms discussed in Section III have a fixed complexity. So regardless of the quality of the encountered channel, the decoder will always use the same number of precious clock cycles. It can be argued that the decoder should be able to adapt the complexity to the current channel conditions. In the ST Chase-decoder family, this channel adaptation can be accomplished by varying the value of the parameter P.An easy method for varying the parameter P is using the soft-bit information in ĉ and a threshold τ. The basic idea here is to use τ to fix the average complexity, rather than the per iteration complexity. This variable-complexity option intuitively saves the complexity of the decoder for the channels that need more complex decoding. Let I(τ) be the indices of soft bits in ĉ, such that ĉ i τ. We propose to design τ using an average complexity parameter P avg, where Eĉ [card (I(τ))] = P avg. (4) The expression in (4) will be extremely difficult to compute analytically because the distribution of ĉ depends on the type
2038 IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 4, NO. 5, SEPTEMBER 2005 Fig. 2. BER comparisons for a 9 9 spatial multiplexing system using 4-QAM with various decoders. Fig. 3. BER comparisons for a 3 3 spatial multiplexing system using 16-QAM with fixed and variable-complexity ST Chase decoders. of successive-detection decoder chosen and will often not have a closed-form expression. Therefore, simulation can be used to determine the τ required to yield the desired average complexity. The value of τ can be computed offline and stored within the receiver s memory. For a given received symbol, the ST Chase decoder computes P =card(i(τ)) and then employs either the ST Chase-1, ST Chase-2, or ST Chase-3 decoder using the channel dependent P value. V. S IMULATIONS We performed several Monte Carlo simulations to compare the performance of ST Chase decoding with successive and ML decoding. Five different simulation results are presented. Each of the simulations plots the average bit-error rate (BER) as a function of ρ/b (in decibels) =E b /N 0. The channel H was modeled as a random matrix with independent entries, each distributed according to CN(0, 1). Experiment 1: The first experiment compares the ST Chase decoders with ZF decoding for a 4-QAM 9 9 spatial multiplexing system. The BER results are shown in Fig. 2. ST Chase-1 decoding (with P =4) provides a 7.4-dB gain over ZF decoding. The ST Chase-3 (P =3) and ST Chase-2 (P =8) decoders provide a 0.4- and 1.6-dB improvement, respectively, over ZF decoding. Thus, adding an additional list-search stage onto an existing ZF decoder can yield performance improvements. Experiment 2: This experiment, with results shown in Fig. 3, demonstrates the benefits of using variable-complexity ST Chase decoding. ST-Chase-2 and ST Chase-3 decoders using P =5 bits and ZF-decoding initial bit estimates were simulated for a 3 3 16-QAM spatial multiplexing system, along with ST Chase-2 and ST Chase-3 using P avg =5bits. The value of the soft-bit cutoff ranges needed to provide this average complexity was determined numerically. Using a random complexity provides more than a 0.7-dB gain for ST Chase-3 decoding and more than a 1-dB gain (at a BER of Fig. 4. Coded BER comparisons for the ordered-mmse, list-sphere, and ST Chase-1 decoders. 0.03) for ST Chase-2 decoding. Despite the fact that a random complexity must often be avoided in real-time implementations, this plot specifically shows that the performance difference can be substantial. Experiment 3: The final experiment addressed the use of the ST Chase-1 decoder with an outer convolutional code on a 5 5 spatial multiplexing system using 4-QAM. A rate 1/2 convolutional code of memory two was simulated with interleaving over 600 bits. It was assumed that the bits are interleaved over ten independent channel realizations. The coded BERs for an ordered MMSE decoder, an ST Chase-1 decoder using an ordered MMSE first stage with P =3bits, and a listsphere decoder using 3 ( 10 ) i=0 i = 176 candidate symbol vectors are shown in Fig. 4. The list-sphere decoder was simulated assuming optimal candidates. This means that for every symbol vector decoded, the 176 symbol vectors with minimum values of y Hs 2 2 were chosen. Thus, the simulated curve for the
IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 4, NO. 5, SEPTEMBER 2005 2039 list-sphere decoder is a strict lower bound on the BER. The ST Chase-1 decoder performs within 0.9 db of the optimal listsphere decoder at a BER of 10 3. The ST Chase-1 decoder outperforms ordered MMSE decoding by approximately 2.1 db at a BER of 10 3. VI. CONCLUSION We proposed a new reduced-complexity decoder for wireless systems using space time signaling that is based on the classic Chase decoder presented in [2]. The decoder comes in three different algorithms with varying complexity. The decoder can be modified to provide a given average complexity at the expense of a stochastic complexity. Unlike common spheredecoder implementations, the ST Chase decoder makes no assumption of lattice constellations. Practical issues arising from widespread use of multipleantenna technology are continuing to grow in interest. For multiple-antenna technology to become widespread, researchers must develop low-complexity techniques that use the increased MIMO channel capacity. ST Chase decoding represents a simple high-performance technique that can be implemented as an add-on to an existing spatial multiplexing decoder. Extensions of MIMO ST Chase decoding can possibly be employed in decoding space time trellis-coded systems by only computing distance metrics for the L most likely symbol vectors. Reduced-state or reduced-path ML algorithms have been employed in decoding single-dimensional systems, and the ST Chase decoder could be employed in an MIMO reducedpath ML decoder. ACKNOWLEDGMENT The authors would like to thank Dr. J. T. Coffey of Texas Instruments for his helpful comments. REFERENCES [1] I. E. Telatar, Capacity of multi-antenna Gaussian channels, Eur. Trans. Telecommun., vol. 10, no. 6, pp. 585 595, 1999. [2] D. Chase, Class of algorithms for decoding block codes with channel measurement information, IEEE Trans. Inf. Theory, vol. IT-18, no. 1, pp. 170 182, Jan. 1972. [3] J. H.-Y. Fan, R. D. Murch, and W. H. Mow, A sub-optimum MLD detection scheme for wireless MIMO systems, in Proc. IEEE Int. Symp. Wireless Communication, Hong Kong, Sep. 2002, vol. 2, pp. 7 8. [4] B. M. Hochwald and S. ten Brink, Achieving near-capacity on a multipleantenna channel, IEEE Trans. Commun., vol. 51, no. 3, pp. 389 399, Mar. 2003. [5] J. Boutros, N. Gresset, L. Brunel, and M. Fossorier, Soft-input softoutput lattice sphere decoder for linear channels, in Proc. IEEE Global Telecommunications Conf., San Francisco, CA, Dec. 2003, vol. 3, pp. 1583 1587. [6] A. B. Reid, A. J. Grant, and A. P. Kind, Low complexity list detection for high-rate multiple-antenna channels, in Proc. IEEE Int. Symp. Information Theory, Yokohama, Japan, Jun. Jul. 2003, p. 273. [7] A. Paulraj, R. Nabar, and D. Gore, Introduction to Space Time Wireless Communications. New York: Cambridge Univ. Press, 2003. [8] E. G. Larsson and P. Stoica, Space Time Block Coding for Wireless Communications. New York: Cambridge Univ. Press, 2003. [9] D. Gesbert, M. Shafi, D.-S. Shiu, P. J. Smith, and A. Naguib, From theory to practice: An overview of MIMO space time coded wireless systems, IEEE J. Sel. Areas Commun., vol. 21, no. 3, pp. 281 302, Apr. 2003. [10] E. Viterbo and J. Boutros, A universal lattice code decoder for fading channels, IEEE Trans. Inf. Theory, vol. 45, no. 5, pp. 1639 1642, Jul. 1999. [11] O. Damen, A. Chkeif, and J.-C. Belfiore, Lattice code decoder for space time codes, IEEE Commun. Lett., vol. 4, no. 5, pp. 161 163, May 2000. [12] G. J. Foschini, Layered space time architecture for wireless communication in a fading environment when using multiple antennas, Bell Labs Tech. J., vol. 1, no. 2, pp. 41 59, 1996. [13] G. D. Golden, G. J. Foschini, R. A. Valenzuela, and P. W. Wolniansky, Detection algorithm and initial laboratory results using V-BLAST space time communication architecture, Electron. Lett., vol. 35, no. 1, pp. 14 16, Jan. 1999. [14] R. L. Cupo, G. D. Golden, C. C. Martin, K. L. Sherman, N. R. Sollenberger, J. H. Winters, and P. W. Wolniansky, A four-element adaptive antenna array for IS-136 PCS base stations, in Proc. IEEE Vehicular Technology Conf., Phoenix, AZ, May 1997, vol. 3, pp. 1577 1581.