IEEE COMMUNICATIONS LETTERS, VOL. 4, NO. 5, MAY2000 161 Lattice Code Decoder for Space-Time Codes Oussama Damen, Ammar Chkeif, and Jean-Claude Belfiore Abstract—We explore in this letter the lattice sphere packing representation of a multi-antenna system and the algebraic space–time (ST) codes. We apply the sphere decoding (SD) algorithm to the resulted lattice code. For the uncoded system, SD yields, with small increase in complexity, a huge improvement over the well-known V-BLAST detection algorithm. SD of algebraic ST codes exploits the full diversity of the coded multi-antenna system, and makes the proposed scheme very appealing to take advantage of the richness of the multi-antenna environment. The fact that the SD does not depend on the constellation size, gives rise to systems with very high spectral efficiency, maximum-likelihood performance, and low decoding complexity. Index Terms—Diversity, lattices, maximum likelihood decoding, multi-antenna, rotated constellations, space-time codes. I. INTRODUCTION R ECENTLY, the field of multi-antenna processing and space–time (ST) coding has attracted large interest in the communication community due to the huge capacity of the multi-antenna environment [1]–[3]. Because of the max- imum-likelihood (ML) detection high complexity sub-optimal detection like the V-BLAST have been proposed for the uncoded system [4]. On the other hand, linear decoders that achieve the ML performance are used for ST coded system, where the ST codes, by means of adding redundancy, renders the multi-antenna system orthogonal and easy to decode [2]. In this letter, we prove that one can reach the ML perfor- mance of the uncoded system with low complexity. Moreover, it is shown that one can achieve the full diversity of the multi-an- tenna system without adding redundancy, and still reach the ML performance with reasonable complexity. Notation: Throughout this letter, matrices and vectors are set in boldface. is the ring of integers. is the field of real numbers. is the set of numbers with , and . II. LATTICE REPRESENTATION OF MULTI-ANTENNA ARCHITECTURE Consider the system of transmit and receive antennas, the single data stream in the input is demultiplexed into substreams, and each substream is modulated independently then transmitted by its dedicated antenna. It is assumed that the same constellation is used for all the substreams. The transmis- sion is done by burst of length over a quasi-static Rayleigh fading channel changing randomly every symbol durations. The power launched by each transmitter is proportional to Manuscript received September 21, 1999. The associate editor coordinating the review of this letter and approving it for publication was Prof. A. Haimovich. The authors are with Ecole Nationale Superieure de Telecommunications, 75634 Paris Cedex 13, France (e-mail: mdamen@com.enst.fr). Publisher Item Identifier S 1089-7798(00)03842-4. so that the total radiated power is constant and independent of . The proximity of antennas presupposes the synchronization of the system. The received signal at each instant time is given by (1) where denotes the transmitted vector which belongs here to the constellation QAM carved from , and is a complex vector AWGN component-wise inde- pendent with a variance per dimension. Moreover, is an transfer matrix of the channel with entries , where is the fading between transmitter and receiver . In the sequel we set . The independence of the receive antennas and the affecting fades of each substream presupposes that the transfer matrix has a full rank almost always; i.e., the event of having two or more dependent columns in is negligible with respect to the probability measure. Equivalently, one can write the system (1) as (2) where , and . denote the real and imaginary part of , re- spectively. Note that the rank of is almost always, and its Gram matrix is positive definite. Hence, we can rep- resent the multi-antenna environment by a lattice sphere packing [5], and one can apply the universal lattice decoder in a multi-an- tenna system. III. SPHERE DECODING The principle of the algorithm is to search the closest lattice point to the received signal within a sphere of radius cen- tered at the received signal (see [6] and references therein). The choice of is very crucial to the speed of the algorithm. In prac- tice, can be adjusted according to the noise (and eventually the fading) variance. When a failure is detected, one can either declare an erasure on the detected symbol, or increase . The complexity of the algorithm is independent of the lat- tice constellation size, which is very useful for high data rate transmission. In [7], Fincke and Pohst showed that if is a lower bound for the eigenvalues of the Gram matrix , then the number of arithmetical operations is (3) 1089–7798/00$10.00 © 2000 IEEE