# Patent

## Title
High data rate closed loop MIMO scheme combining transmit diversity and data multiplexing

## Abstract

Closed loop multiple-antenna wireless communications system with antenna weights determined by maximizing a composite channel signal-to-interference-plus-noise ratio minimum. Multiplexed symbol streams over subsets of antennas enhance throughout.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is a divisional of prior application Ser. No. 11/468,394, filed Aug. 30, 2006, now U.S. Pat. No. 7,715,798, issued May 11, 2010;
Which was a divisional of prior application Ser. No. 10/301,392, filed Nov. 21, 2002, now U.S. Pat. No. 7,181,167, granted Feb. 20, 2007;
which claims priority from Provisional Application No. 60/331,718, filed Nov. 21, 2001, Provisional Application No. 60/339,704, filed Dec. 13, 2001, and Provisional Application No. 60/343,424, filed Dec. 20, 2001.


BACKGROUND OF THE INVENTION
The present invention relates to wireless digital communications, and more particularly to space diversity transmission systems and methods.
Wireless communication systems include a large variety of approaches, such as frequency division multiple access (FDMA), time division multiple access (TDMA), code division multiple access (CDMA), and combinations. FDMA uses separate frequency bands for duplex communication; whereas, TDMA partitions a single frequency band into time slots which as allocated to one or the other end of a communication link. CDMA uses a spread spectrum approach.
Spread spectrum wireless communications utilize a radio frequency bandwidth greater than the minimum bandwidth required for the transmitted data rate, but many users may simultaneously occupy the bandwidth. Each of the users has a pseudo-random code for “spreading” information to encode it and for “despreading” (by correlation) received spread spectrum signals and recovery of information. Such multiple access typically appears under the name of code division multiple access (CDMA). The pseudo-random code may be an orthogonal (Walsh) code, a pseudo-noise (PN) code, a Gold code, or combinations (modulo-2 additions) of such codes. After despreading the received signal at the correct time instant, the user recovers the corresponding information while other users' interfering signals appear noise-like. For example, the interim standard IS-95 for such CDMA communications employs channels of 1.25 MHz bandwidth and a pseudo-random code pulse (chip) interval TC of 0.8138 microsecond with a transmitted symbol (bit) lasting 64 chips. The recent 3GPP wideband CDMA (WCDMA) proposal employs a 3.84 MHz bandwidth and the CDMA code length applied to each information symbol may vary from 4 chips to 256 chips. Indeed, UMTS (universal mobile telecommunications system) approach UTRA (UMTS terrestrial radio access) provides a spread spectrum cellular air interface with both FDD (frequency division duplex) and TDD (time division duplex) modes of operation. UTRA currently employs 10 ms duration frames partitioned into 15 time slots with each time slot consisting of 2560 chips (TC=0.26 microsecond).
The air interface leads to multipath reception, so a RAKE receiver has individual demodulators (fingers) tracking separate paths and combines the finger results to improve signal-to-noise ratio (SNR). The combining may use a method such as the maximal ratio combining (MRC) in which the individual detected signals in the fingers are synchronized and weighted according to their signal strengths or SNRs and summed to provide the decoding. That is, a RAKE receiver typically has a number of DLL or TDL code tracking loops together with control circuitry for assigning tracking units to the strongest received paths. Also, an antenna array could be used for directionality by phasing the combined signals from the antennas.
Further, UTRA allows for transmit diversity, both open-loop and closed-loop (receiver feedback). The open-loop transmit diversity includes both time-switched transmit diversity (TSTD) and space-time block-coding-based transmit diversity (STTD). Closed loop techniques provide some significant gain over open-loop transmit diversity techniques by using channel state information (CSI) at the transmitter. For FDD the CSI can be made available at the transmitter via a feedback channel; whereas, for TDD the channel can be directly measured at the transmitter by exploiting the reciprocity (uplink and downlink using the same channel).
The current closed-loop transmit diversity transmits only one data stream via all the transmit antennas, hence achieves the maximum diversity gain. However, for a given modulation scheme, its peak data rate is limited. Another possible transmission scheme is to transmit the same number of data streams as the number of transmit antennas. While achieving maximum peak data rate (termed multiplexing gain), the diversity gain of such scheme is limited by the number of receive antennas, especially when the number of receive antennas is the same as the number of transmit antennas (which is typically the case). For instance, when linear detection is used at the receiver, the diversity gain for each steam is Q−P+1, where Q and P are the number of receive and transmit antennas, respectively. Hence, it is sometimes desirable to use a transmission scheme that combines transmit diversity and data multiplexing.
SUMMARY OF THE INVENTION
The present invention provides multi-antenna transmit weighting adapted to a composite channel of physical channel plus equalization and/or interference cancellation.
This has the advantages including increased performance for wireless communications.



BRIEF DESCRIPTION OF THE DRAWINGS
The drawings are heuristic for clarity.
FIGS. 1a-1b are flow diagrams.
FIGS. 2a-2d illustrate transmitters.
FIGS. 3a-3c show receivers.
FIGS. 4-5 present simulation results.



DESCRIPTION OF THE PREFERRED EMBODIMENTS
1. Overview
The preferred embodiment methods determine antenna weightings in closed-loop multi-antenna systems by incorporating the effect of multipath interference as well as the detection scheme used at the receiver for closed-loop transmit diversity weight vector selection. An example of such selection criterion is to maximize minimum signal-to-interference-plus-noise ratio (SINR) of the composite channel (physical channel plus equalization/interference cancellation), where SINR is defined as the ratio between the average power of the desired signal component and the average power of interference plus noise.
Preferred embodiment transmissions and reception use such antenna weightings with adaptive updating and may include multi-input multi-output (MIMO) systems; see FIGS. 1a-1b flow diagrams. These methods apply to the various wireless communications approaches (CDMA, TDMA, etc.), and extend to multiplexed data stream versions. For a TDD system the transmitter is also a receiver over the same physical channel and thus can directly estimate the channel; whereas, in an FDD system the receiver must provide channel state information to the transmitter.
The determination of antenna weightings derives from optimization of SINR of the composite channel, and thus depends upon the detection method. The detection can be by any convenient method such as maximum likelihood, linear zero-forcing, iterative zero-forcing, linear minimum mean square error, iterative minimum mean square error, and so forth.
For a FDD system the receiver must signal the transmitter. Thus with an FDD CDMA cellular system having mobiles with multiple antennas the antenna weighting signaling with be both uplink and downlink.
Preferred embodiment communications systems use preferred embodiment encoding and decoding methods. FIGS. 2a-2c illustrate preferred embodiment transmitter functional blocks, and FIGS. 3a-3b show preferred embodiment receiver functional blocks.
In preferred embodiment cellular wireless communications systems base stations and mobile users could each include one or more digital signal processors (DSPs) and/or other programmable devices with stored programs for performance of the signal processing of the preferred embodiment methods. Alternatively, specialized circuitry could be used. The base stations and mobile users may also contain analog integrated circuits for amplification of inputs to or outputs from antennas and conversion between analog and digital; and these analog and processor circuits may be integrated as a system on a chip (SoC). The stored programs may, for example, be in ROM or flash EEPROM integrated with the processor or external. The antennas may be parts of receivers with multiple finger RAKE detectors for each user's signals. Exemplary DSP cores could be in the TMS320C6xxx or TMS320C5xxx families from Texas Instruments.
2. TDMA-Based Single Stream Preferred Embodiments
The single-stream preferred embodiments consider transmission of a single stream of symbols, . . . , s(n), s(n+1), s(n+2), . . . , from P antennas (P≧2) with antenna weights w1, w2, . . . , wp and reception by Q antennas (Q≧1) with maximal ratio combining (MRC) of multipaths followed by various detection methods. Each detection method leads to a specific method for determination of transmission antenna weightings.
For comparison purposes, first look at the simple case with negligible intersymbol interference. Presume that the channel from P transmit antennas (FIG. 2d) to Q receiver antennas (FIG. 3c) has at most L resolvable paths (L-tap delay line channel model) and that the Q×P channel matrix Hj of attenuations and phase shifts corresponds to the jth delay line tap. With negligible intersymbol interference and a maximal ratio combining (MRC) receiver, the P antenna weightings w1, w2, . . . , wp applied to the symbol stream for transmission over the P antennas are taken to maximize the reception:

w=arg maxuεSuH(Σ1≦j≦LHjHHj)u 

where S denotes the set of all allowable weighting vectors, and u denotes a P-vector of antenna weightings u1, u2, . . . , uP in S. For example, S could be the set of P-vectors u with complex components and ∥u∥=1; in this case, w equals the eigenvector of the P×P matrix (Σ1≦j≦LHjHHj) having the maximum eigenvalue. Whereas, S is a finite set of complex P-vectors with unit norm for FDD CDMA.

In contrast, the first preferred embodiments presume equalization in the receiver and use channel state information (CSI) for the composite channel (physical channel plus equalizer) to determine the P antenna weightings. FIGS. 2a, 3a show a transmitter and receiver for a system with preferred embodiment antenna weighting determinations which adapt to the channel conditions; the “delay” function in the receiver allows time for the transmitter to adjust to antenna weightings as determined by the receiver and signalled to the transmitter. The (q,p)th element of Hj is the channel from the pth transmit antenna to the qth receive antenna for the jth delay or multipath. Let . . . , s(n), s(n+1), s(n+2), . . . denote the stream of transmitted symbols.
First, for a TDMA system the received baseband discrete-time signal (sampled at the symbol rate, extension to sampling at sub-symbol rate is straightforward) is:




  
    r
    ⁡
    
      (
      n
      )
    
  
  =
  
    
      [
      
        
          
            
              
                r
                1
              
              ⁡
              
                (
                n
                )
              
            
          
        
        
          
            
              
                r
                2
              
              ⁡
              
                (
                n
                )
              
            
          
        
        
          
            ...
          
        
        
          
            
              
                r
                Q
              
              ⁡
              
                (
                n
                )
              
            
          
        
      
      ]
    
    =
    
      
        
          ∑
          
            0
            ≤
            j
            ≤
            
              L
              -
              1
            
          
          
            
          
        
        ⁢
        
          
        
        ⁢
        
          
            H
            j
          
          ⁢
          
            ws
            ⁡
            
              (
              
                n
                -
                j
              
              )
            
          
        
      
      +
      
        noise
        ⁡
        
          (
          n
          )
        
      
    
  




where w is the P-vector of weights used at the transmitter and the L taps are relabeled 0≦j≦L−1 to coincide with the corresponding delay. (Code-division differs from the foregoing time-division in that despreading in code-division allows direct tracking of multipaths and replacement of the tapped delay line of time-division with a receiver having multiple tracking units.)

Collect a sequence of N received samples to form one detection window:



  
    r
    =
    
      
        [
        
          
            
              
                r
                ⁡
                
                  (
                  0
                  )
                
              
            
          
          
            
              
                r
                ⁡
                
                  (
                  1
                  )
                
              
            
          
          
            
              ...
            
          
          
            
              
                r
                ⁡
                
                  (
                  
                    N
                    -
                    1
                  
                  )
                
              
            
          
        
        ]
      
      =
      
        
          
            H
            ⁡
            
              (
              
                
                  I
                  N
                
                ⊗
                w
              
              )
            
          
          ⁢
          s
        
        +
        noise
      
    
  




  where




  
    H
    =
    
      [
      
        
          
            
              H
              0
            
          
          
            0
          
          
            0
          
          
            ...
          
          
            0
          
          
            0
          
          
            ...
          
          
            0
          
        
        
          
            
              H
              1
            
          
          
            
              H
              0
            
          
          
            0
          
          
            ...
          
          
            0
          
          
            0
          
          
            ...
          
          
            0
          
        
        
          
            
              H
              2
            
          
          
            
              H
              1
            
          
          
            
              H
              0
            
          
          
            ...
          
          
            0
          
          
            0
          
          
            ...
          
          
            0
          
        
        
          
            ⋮
          
          
            ⋮
          
          
            ⋮
          
          
            ⋱
          
          
            ⋮
          
          
            ⋮
          
          
            
              
            
          
          
            ⋮
          
        
        
          
            
              H
              
                L
                -
                1
              
            
          
          
            
              H
              
                L
                -
                2
              
            
          
          
            
              H
              
                L
                -
                3
              
            
          
          
            ...
          
          
            
              H
              0
            
          
          
            0
          
          
            ...
          
          
            0
          
        
        
          
            0
          
          
            
              H
              
                L
                -
                1
              
            
          
          
            
              H
              
                L
                -
                2
              
            
          
          
            ...
          
          
            
              H
              1
            
          
          
            
              H
              0
            
          
          
            ...
          
          
            0
          
        
        
          
            ⋮
          
          
            ⋮
          
          
            ⋮
          
          
            
              
            
          
          
            
              
            
          
          
            
              
            
          
          
            ⋱
          
          
            
              
            
          
        
        
          
            0
          
          
            0
          
          
            0
          
          
            ...
          
          
            
              H
              
                N
                -
                L
              
            
          
          
            
              H
              
                N
                -
                L
                -
                1
              
            
          
          
            ...
          
          
            
              H
              0
            
          
        
      
      ]
    
  




  
    
      
        I
        N
      
      ⊗
      w
    
    =
    
      [
      
        
          
            w
          
          
            0
          
          
            0
          
          
            ...
          
          
            0
          
        
        
          
            0
          
          
            w
          
          
            0
          
          
            ...
          
          
            0
          
        
        
          
            0
          
          
            0
          
          
            w
          
          
            ...
          
          
            0
          
        
        
          
            ...
          
          
            
              
            
          
          
            
              
            
          
          
            ⋱
          
          
            0
          
        
        
          
            0
          
          
            0
          
          
            0
          
          
            ...
          
          
            w
          
        
      
      ]
    
  



Thus r is an NQ-vector, H is an NQ×NP block Toeplitz channel matrix, (INw) is an NP×N matrix, and s is the N-vector of transmitted symbols of the detection window: s(0), s(1), . . . , s(N−1). N is presumed larger than L so the lower left N-L triangle of H is all Q×P 0s. Indeed, practical systems may use values such as N=16 or 32 and L=6 Also, presume within a detection window the channel state information (CSI) is constant (not updated) and thus also the weights w are constant within the detection window.
Application of a matched filter (including maximal ratio combining of the tap delays) yields the N×1 output y:

y=(INwH)HHr 

More explicitly, (for n<N−L):





  
    y
    ⁡
    
      (
      n
      )
    
  
  =
  
    
      
        
          w
          H
        
        ⁢
        
          H
          0
          H
        
        ⁢
        
          r
          ⁡
          
            (
            n
            )
          
        
      
      +
      
        
          w
          H
        
        ⁢
        
          H
          1
          H
        
        ⁢
        
          r
          ⁡
          
            (
            
              n
              +
              1
            
            )
          
        
      
      +
      ...
      +
      
        
          w
          H
        
        ⁢
        
          H
          
            L
            -
            1
          
          H
        
        ⁢
        
          r
          ⁡
          
            (
            
              n
              +
              L
              -
              1
            
            )
          
        
      
    
    ⁢
    
      

    
    ⁢
    
      
    
    =
    
      
        w
        H
      
      ⁢
      
        {
        
          (
          
            
              ∑
              
                0
                ≤
                j
                ≤
                
                  L
                  -
                  1
                
              
            
            ⁢
            
              
                H
                j
                H
              
              ⁢
              
                r
                ⁡
                
                  (
                  
                    n
                    +
                    j
                  
                  )
                
              
            
          
          }
        
      
    
  




Then in terms of the block of transmitted symbols, s, the output is:





  y
  =
  
    
      
        (
        
          
            I
            N
          
          ⊗
          
            w
            H
          
        
        )
      
      ⁢
      
        
          H
          H
        
        ⁡
        
          [
          
            
              
                H
                ⁡
                
                  (
                  
                    
                      I
                      N
                    
                    ⊗
                    w
                  
                  )
                
              
              ⁢
              s
            
            +
            noise
          
          ]
        
      
    
    ⁢
    
      

    
    ⁢
    
      
    
    =
    
      
        
          (
          
            
              I
              N
            
            ⊗
            
              w
              H
            
          
          )
        
        ⁢
        
          H
          H
        
        ⁢
        
          H
          ⁡
          
            (
            
              
                I
                N
              
              ⊗
              w
            
            )
          
        
        ⁢
        s
      
      +
      
        
          (
          
            
              I
              N
            
            ⊗
            
              w
              H
            
          
          )
        
        ⁢
        
          H
          H
        
        ⁢
        
          
        
        ⁢
        noise
      
    
  




Next, we consider various detection methods. Different types of detection methods can be used at the receiver, such as the simple maximum ratio combining (MRC) receiver above. However, this type of receiver is not resistant to multipath interference. Some examples of interference-resistant detection method include the optimal maximum likelihood detection, linear detection (zero forcing or minimum mean square error), and iterative detection (zero forcing or minimum mean square error). The details of each detection method are given below.
The weight vector w is selected based on a criterion that takes into account the effect of multipath interference. There are a number of possible criteria that can be used, including the Rake-based criterion mentioned in Section 1 (which does not fully account for the effect of multipath interference). An example criterion that includes the effect of multipath interference is to select w such that the off-diagonal elements of matrix (INwH)HHH(INw) are minimized in some sense (e.g. minimize the sum of off-diagonal terms, minimize the off-diagonal term with maximum magnitude). Notice that this criterion does not depend on the receiver type. Different types of receiver, however, respond differently to multipath interference. Hence, intuitively, the selection criteria that take into account the receiver type (detection method) result in better performance. Such receiver-specific selection criteria will be discussed in the following paragraphs.
In general, the optimal maximum likelihood detection would estimate the transmitted symbols s by ŝ which is the vector of symbols that minimizes the sum of the errors in the received signal on the receiver antennas. That is,

ŝ=arg mins∥r−H(INw)s∥2 

where the minimization is taken over the set of possible transmitted symbol vectors which depends on the symbol mapping. The weight vector (w) selection at the receiver can be performed based on symbol error rate (SER) for maximum likelihood detection (which reflects bit error rate or frame error rate of the system). It can be shown that an upper bound of SER is (assuming noise variance is unity)





  SER
  ≤
  
    
      ∑
      
        z
        ∈
        Δ
      
    
    ⁢
    
      
        κ
        z
      
      ⁢
      
        Q
        ⁡
        
          (
          
            
              
                
                  
                  
                    
                      H
                      ⁡
                      
                        (
                        
                          
                            I
                            N
                          
                          ⊗
                          w
                        
                        )
                      
                    
                    ⁢
                    z
                  
                  
                
                2
              
              /
              2
            
          
          )
        
      
    
  




where ={(u−v): u,v εS, u≠v}, S is the set of all possible transmitted symbol vectors, z is the multiplicity of z in S, and Q(.) is the Gaussian Q-function. This upper bound can be used for selecting w: choose w that minimizes the SER upper bound. But such a maximum likelihood detection becomes computationally intensive with larger antenna systems. Both linear and iterative detectors are based on the idea of interference suppression/-cancellation. Possible methods include zero forcing (ZF) and minimum mean square error (MMSE). In the following, the linear MMSE (LMMSE) and iterative MMSE (IMMSE) detectors are explained. A zero-forcing-based detectors (LZF and IZF) can be obtained from MMSE analogs by removing the identity term in the matrix inverse.

Generally, for linear detection use a linear equalizer which transforms the matched filter N-vector window output y into N-vector statistic z=Fy which will estimate transmitted N-vector of symbols s. The N×N matrix F determines the SINR(n) for symbol s(n) in the window, and the minimum SINR(n) determines the overall system error rate (either BER or FER). Consequently, the preferred embodiment methods determine the antenna weightings w to maximize the minimum SINR(n). That is, given equalizer F, pick w so that

w=arg minuεSmin1≦n≦NSINR(n)

where u denotes a P-vector of antenna weightings in the set of allowed weightings S. The dependence of SINR(n) on F and antenna weightings for different detectors is as follows.

For linear zero-forcing (LZF) detection, the N×N equalizer matrix F is found as the inverse of the channel model:

F=[GHG]−1 

where the NQ×N antenna-weighted channel time-window matrix G is given by:

G=H(INw)

so GHG is N×N Hermitian and invertible (a 0 eigenvalue corresponds to either 0 antenna weights, which means no transmission, or a 0 channel, which means no reception). And then SINR(n) is given by:

SINR(n)LZF=ρ/[GHG]−1n,n 

where ρ is the normalized power per symbol and [GHG]−1n,n denotes the row n, column n element of the matrix [GHG]−1. Thus the SINRs for the symbols are proportional to the reciprocals of the diagonal elements of the equalizer matrix.

Similarly for linear minimum mean square error (LMMSE) detection the equalizer matrix F is picked so the mean square error (MSE), E[∥F y−s∥2], is minimized. The (theoretically derived) linear transformation F is given by:

F=[ρ−IN+GHG]−1 

And the resultant SINR(n) is:

SINR(n)LMMSE=ρ/[ρ−1IN+GHG]−1n,n−1

And for these two linear detectors the preferred embodiment antenna weightings w are computed to maximize the minimum composite channel SINR; namely,

wLZF=arg minuεSmin1≦n≦N1/[(INuH)HHH(INu)]−1n,n 

wLMMSE=arg minuεSmin1≦n≦N1/[IN+ρ(INuH)HHH(INu)]−1n,n−1

And when the channel coefficients, H, are updated, the antenna weightings, w, can updated for both transmission and reception. For example, in a TDMA cellular telephone system the updating may occur every 0.5-ms.

For nonlinear detection, such as iterative (decision-feedback) equalizers, more computations are required than for the corresponding linear detector. The iterative equalizer is implemented in N steps with each step making a decision on one of the N symbols in the window. Each step includes a linear transformation (ZF or MMSE) followed by a hard decision-feedback (across space and time). That is, a resulting linearly transformed statistic z=Fy is essentially a soft estimate of a component of s.
The SINR for iterative equalizers (IZF or IMMSE) can be computed as for the linear equalizers. Of course, the optimization to determine the antenna weightings w has higher complexity. The IMMSE detector is a sequence of N linear MMSE detection stages, where each detection outputs both a hard and a soft estimate of one of the N symbols in the detection block. The hard estimate is used to regenerate the interference from the so-far estimated symbols which is then subtracted from the received signal, and the difference used for the next linear symbol estimation. More explicitly, presume the symbols are to be estimated in numerical order and let ŝk denote the hard estimate of the kth symbol sk and let the N-vector ŝ(k) denote the vector with components 1, 2, . . . , k equal to ŝ1, ŝ2, . . . , ŝk, respectively, and with the remaining N-k components all equal to 0. The iteration's nth step will output ŝ(n) from an initialization of ŝ(0)=0. The nth step (nth linear detector) proceeds as follows:
(a) Regenerate the interference created by previously-estimated symbols s1, . . . , sn−1 using the channel matrix; that is, form G ŝ(n−1). Note that only the first n−1 rows of blocks of G are used because the last N−n+1 components of ŝ(n−1) equal 0, so a simpler matrix with rows of blocks n, n+1, . . . N all 0s could be used.
(b) Subtract the regenerated interference of substep (a) from the received signal to have an interference-cancelled signal: r−G ŝ(n−1).
(c) Apply the linear equalizer filter F to the matched-filtered (N×NQ matrix GH) interference-cancelled signal from substep (b) to generate a soft output z(n) which estimates the yet-to-be-estimated symbols sn, sn+1, . . . , sN. Because the interference cancellation (decision feedback) likely is not perfect, further suppress the interfering symbols by use of a modified linear equalizer filter F(n) which derives from the portion of the channel matrix from sources (antennas) n, n+1, . . . , N. That is, z(n)=F(n)GH[r−G ŝn−1)] where the matrix F(n) ignores the portion of the channel relating to the previously-estimated symbols (and analogously G restricted to already estimated symbols and GH restricted to ignore these channels). The particular form of F(n) depends upon the linear detector type and on assumption about the decision feedback error. In effect, the channel matrix is partitioned into two parts with the part relating to the previously-estimated symbols used to generate the interference estimate plus interference-cancelled signal and with the part relating to the yet-to-be-estimated symbols used for detection of the interference-cancelled signal.
(d) Make a hard decision on the pth component of the soft estimate z(n) to generate the hard estimate ŝp and update the hard estimate vector ŝ(n).
In particular, for assumed error-free decision feedback and IZF detection;




  
    
      F
      
        (
        n
        )
      
    
    ⁢
    
      G
      H
    
  
  =
  
    [
    
      
        
          
            0
            
              
                (
                
                  n
                  -
                  1
                
                )
              
              ⁢
              xQ
            
          
        
      
      
        
          
            
              
                [
                
                  
                    A
                    n
                    H
                  
                  ⁢
                  
                    A
                    n
                  
                
                ]
              
              
                -
                1
              
            
            ⁢
            
              A
              n
              H
            
          
        
      
    
    ]
  




where Ak is the NQ×(N−n+1) matrix of the last N−n+1 columns of blocks of G; that is, An=[gn gn+1 . . . gN] with gk the kth column (NQ×1) of the NQ×N channel matrix G. Of course, gk is the channel of the kth symbol from the weighted P antennas to the received NQ-vector. Then the SINR(n) is given by:

SINR(n)=ρ/[AnHAn]−11,1 

And the antenna weightings follows as before from maximizing the minimum SINR(n).

Analogously for IMMSE in which




  
    
      F
      
        (
        n
        )
      
    
    ⁢
    
      G
      H
    
  
  =
  
    [
    
      
        
          
            0
            
              
                (
                
                  n
                  -
                  1
                
                )
              
              ⁢
              xQ
            
          
        
      
      
        
          
            
              
                [
                
                  
                    
                      A
                      n
                      H
                    
                    ⁢
                    
                      A
                      n
                    
                  
                  +
                  
                    
                      ρ
                      
                        -
                        1
                      
                    
                    ⁢
                    
                      I
                      
                        N
                        -
                        n
                        +
                        1
                      
                    
                  
                
                ]
              
              
                -
                1
              
            
            ⁢
            
              A
              n
              H
            
          
        
      
    
    ]
  




and the resulting SINR can be written as

SINR(n)=ρ/[AnHAn+−1IN−n+1]−11,1−1

Ordered iterative detection based on the symbol post-detection SINR is often used to reduce the effect of decision feedback error. Let the detection order be π(1), π(2), . . . , π(N) where π( ) is a permutation of the N integers {1, 2, . . . , N}; that is, the first estimated symbol (hard estimate output of the first step of the iteration) will be ŝπ(1) and the corresponding nonzero element of ŝ(1). The maximum SINR of the components of the first soft estimate z(1), which estimates all P symbols, determines π(1). Similarly, the SINRs of the components of z(2), which estimates all of the symbols except sπ(1), determines π(2), and so forth. The partitioning of the channel matrix at each step is analogous.
Note that the soft estimates z1, z2, . . . , zN for the transmitted block of symbols s1, s2, . . . , sN (i.e., the output z(n)π(n) from the nth step) are used in a sequence decoder, such as a Viterbi decoder or a Turbo decoder, in the form of log likelihood ratios (LLRs).
Other detection schemes are also possible. For example, a receiver consisting of a channel equalizer (to equalize H instead of G) followed by coherent combining with (INw) can be used. In this case, the operation can be described as follows:

z=(INwH)Fr 

where F=[ρ−1INQ+HHH]−1 (LMMSE equalizer) or F=[HHH]−1 (LZF equalizer, which requires Q≧P). In this case, channel equalization is performed to remove the effect of multipath (frequency selectivity). Then, coherent combining with the weight vector is performed in symbol-by-symbol basis. Closed-form expressions of SINR can also be derived from the definition. In practice, such channel equalizer can be implemented as an adaptive filter. Note that this scheme is inferior to the previous equalization scheme as this scheme does not exploit the knowledge of w in equalization. Utilizing was in the previous scheme enables signal space (P-fold) dimensionality reduction.

3. CDMA-Based Single Stream Preferred Embodiments
A CDMA system can have multiple mobile users for the same downlink transmissions from a base station; the uplink channels for different mobiles users are generally different, but for downlink the users experiences a common channel. For the general case of K users after collecting samples of the received signal at the chip rate, the baseband received signal NNCQ-vector (where NC is the CDMA spreading factor) can be written as:




  r
  =
  
    
      
        
          ∑
          
            1
            ≤
            k
            ≤
            K
          
        
        ⁢
        
          
            √
            
              P
              k
            
          
          ⁢
          
            
              H
              k
            
            ⁡
            
              (
              
                
                  C
                  k
                
                ⊗
                
                  I
                  P
                
              
              )
            
          
          ⁢
          
            (
            
              
                I
                N
              
              ⊗
              
                w
                k
              
            
            )
          
          ⁢
          
            s
            k
          
        
      
      +
      noise
    
    ⁢
    
      

    
    ⁢
    
      
    
    =
    
      
        
          [
          
            
              
                
                  
                    
                      
                        
                          
                            
                              
                                √
                                
                                  P
                                  1
                                
                              
                              ⁢
                              
                                
                                  H
                                  1
                                
                                ⁡
                                
                                  (
                                  
                                    
                                      C
                                      1
                                    
                                    ⊗
                                    
                                      I
                                      P
                                    
                                  
                                  )
                                
                              
                              ⁢
                              
                                (
                                
                                  
                                    I
                                    N
                                  
                                  ⊗
                                  
                                    w
                                    1
                                  
                                
                                )
                              
                            
                            ,
                          
                        
                      
                      
                        
                          
                            
                              
                                √
                                
                                  P
                                  2
                                
                              
                              ⁢
                              
                                
                                  H
                                  2
                                
                                ⁡
                                
                                  (
                                  
                                    
                                      C
                                      2
                                    
                                    ⊗
                                    
                                      I
                                      P
                                    
                                  
                                  )
                                
                              
                              ⁢
                              
                                (
                                
                                  
                                    I
                                    N
                                  
                                  ⊗
                                  
                                    w
                                    2
                                  
                                
                                )
                              
                            
                            ,
                          
                        
                      
                    
                  
                
                
                  
                    
                      
                        √
                        
                          P
                          K
                        
                      
                      ⁢
                      
                        
                          H
                          K
                        
                        ⁡
                        
                          (
                          
                            
                              C
                              K
                            
                            ⊗
                            
                              I
                              P
                            
                          
                          )
                        
                      
                      ⁢
                      
                        (
                        
                          
                            I
                            N
                          
                          ⊗
                          
                            w
                            K
                          
                        
                        )
                      
                    
                  
                
              
              ⁢
              ...
            
            ⁢
            
              
            
            ,
          
          ]
        
        ⁡
        
          [
          
            
              
                
                  s
                  1
                
              
            
            
              
                
                  s
                  2
                
              
            
            
              
                ⋮
              
            
            
              
                
                  s
                  K
                
              
            
          
          ]
        
      
      +
      noise
    
  




where K is the number of users, Pk is the power of the kth user, N is the symbol block size, Hk is the NNCQ×NNCP channel matrix of the kth user, Ck is the NNC×N CDMA spreading code matrix of the kth user, wk is the weight vector of user k, and sk is a block of symbols of user k. In this case multiuser interference cancellation (also known as multiuser detection) is needed. Similar to equalization, linear or iterative interference cancellation (ZF or MMSE) can be used and the SINR can be computed in the same manner as for the time-division case by considering the total multiuser channel matrix Htot=[√P1H1(C1IP)(INw1), √P2H2(C2IP)(INw2), . . . , √PKHK(CKIP)(INwK)] so Htot is an NNCQ×NK matrix for a Q-antenna receiver. For example, the linear ZF and MMSE multiuser interference cancellation for CDMA are

z=[z1TzT . . . zKT]T=Fr

F=[HtotHHtot]−1HtotH(LZF), and

F=[HtotHHtot+−1INKP]−1HtotH(LMMSE)

The SINR for each symbol from each CDMA user can also be defined in the same manner as that for TDMA. Similarly, iterative detectors for CDMA are analogous to that for CDMA. In practice, linear multiuser interference cancellation can be implemented in successive or parallel architecture.
For downlink applications where the Hk are all the same (Hk=H) but wk is user-specific (multiple users) interference cancellation described above is a good alternative. Another possible receiver scheme for user k consists of a channel equalizer (which linearly equalizes only the channel H), the kth user despreader (multiplication with CkHIp), and symbol-by-symbol coherent combining with the weight vector (multiplication with (INwkH)). Again, the SINR expression for each symbol from user k can be derived from SINR definition. In this downlink scenario, the weighting vectors for all of the users can be jointly selected at the base station maximizing the minimum SINR across all users and symbols (similar to the previous preferred embodiments for equalizers). This ensures that all of the users experience good performance.
For the downlink applications where both the Hk and the wk are common (one user with multiple codes: Hk=H, wk=w), the above interference cancellation and equalization techniques are applicable. In this single-user multi-code downlink scenario, another receiver scheme can be derived by using the following identity:

H(CkIP)(INw)=H(INNcw)Ck=HeffCk 

The new receiver consists of an equalizer for the effective channel Heff=H(INNcw) followed by a despreader for user k (multiplication with CkH). For weight vector selection, only one weighting vector needs to be determined, and maximizing the minimum SINR criteria again is used.

For TDMA- and CDMA-based systems, other types of equalizers and/or interference cancellers can be designed for mitigating the effect of multipath interference when closed-loop transmit diversity is used. For each type of multipath interference-resistant receiver, an expression of SINR as a function of the channel realization, spreading code matrices (for CDMA), and weight vectors can be derived and used for preferred embodiment weight vector selection.
4. Multiplexed Streams Preferred Embodiments
The multiplexed stream preferred embodiments combine transmit diversity and multiple data streams to achieve higher data rates. FIGS. 2b-2c illustrate transmitters and FIG. 3b shows a receiver. One data stream coming from the symbol mapper is split into M streams. As with the foregoing preferred embodiments, the multiplexed stream preferred embodiment methods determine the antenna weightings from composite channel characteristics.
In more detail, FIG. 2b illustrates a generic preferred embodiment transmitter with M=P/2 units with each unit having two antennas and transmitting one data stream. Each Wm is a 2×1 weighting vector corresponding to the mth data stream; and the preferred embodiment methods provide composite channel determination of the wms.
More generally, each unit could have K antennas and thus M=P/K. The number of transmit antennas P must be a multiple of K. Of course, this scheme can be further generalized by accommodating the possibility of each unit having different number of antennas. That is, group n is assigned to Kn antennas where K1+K2+ . . . +KM=P, where 1≦Km<P, M≧2, and P≧2. For simplicity, we assume that all the units have the same number of antennas for the rest of this description (extension to the most general case is obvious for one skilled in the art).
FIG. 2c illustrates preferred embodiments with a P×M linear transformation (weighting matrix) of the M data streams onto the P antennas.
Thus the FIG. 2b transmitter is a special case with weighting matrix V given




  V
  =
  
    [
    
      
        
          
            w
            1
          
        
        
          0
        
        
          ...
        
        
          0
        
      
      
        
          0
        
        
          
            w
            2
          
        
        
          ...
        
        
          0
        
      
      
        
          ⋮
        
        
          ⋮
        
        
          ⋱
        
        
          ⋮
        
      
      
        
          0
        
        
          0
        
        
          ...
        
        
          
            w
            M
          
        
      
    
    ]
  




For systems with P transmit antennas the peak data rate is the sum of peak data rates of all of the streams. When all of the data streams share the same modulation-coding scheme, the peak data rate is simply M times the peak data rate dictated by the modulation-coding scheme.
Consider the P-antenna transmitter and Q-antenna receiver system of FIGS. 2c, 3b. Denote the data (symbol) streams s1, s2, . . . sM by the M-vector s, and denote the Q×P channel by H. For simplicity, assume that the channel is frequency non-selective (single-tap), although extensions to multipath scenarios follow as analogs of the single-stream preferred embodiment systems described above. Then the received Q-vector signal can be written as:

r=HVs+noise

where the noise is Q-vector AWGN. The Q×M matrix HV is the effective MIMO channel matrix, which includes spatial interference among the symbol streams. To generate sufficient statistics for detection, perform maximal ratio combining (MRC) matched filtering as with the single-stream preferred embodiments:





  y
  =
  
    
      
        V
        H
      
      ⁢
      
        H
        H
      
      ⁢
      r
    
    ⁢
    
      

    
    ⁢
    
      
    
    =
    
      
        V
        H
      
      ⁢
      
        
          H
          H
        
        ⁡
        
          (
          
            HVs
            +
            noise
          
          )
        
      
    
  




Again, various detection methods may be applied; namely, maximum likelihood, zero-forcing (both linear and iterative), and minimum mean square error (both linear and iterative). The maximum likelihood detection solves the following optimization problem:

ŝ=arg mins∥r−HVs∥2 

where the minimization is taken over the set of possible transmitted symbol vectors which depends on the symbol mapping. The linear detection methods apply a linear transformation F to the received y to yield the soft estimation statistic z=F y by choice of F for ZF and MMSE as:

FLZF=[VHHHHV]−1 

FLMMSE=[VHHHHV+IM/ρ]−1 

where ρ is the average symbol power in the sense that E[ssH]=ρIM.

Iterative detectors are constructed from a series of linear transformations followed by decision-feedback interference cancellation; as described in previous preferred embodiments. Again, the cancellation can be ordered according to criteria such as largest SINR.
The multipath channel aspect is treated as in the previous preferred embodiments. In this case, the SINR metric must incorporate the effect of multipath interference.
The preferred embodiment weighting vectors/matrix determination again minimizes the symbol error rate (SER) for maximum likelihood detection, and maximizes the minimum SINR for linear and iterative detections; although other criteria could be used. And the resultant weighting vectors/matrix found by the receiver can be signaled to the transmitter in the feedback channel for an FDD system but may, optionally, be directly determined by the transmitter for a TDD system. Analogous to the single-stream embodiment, the following SER upperbound can be used:




  SER
  ≤
  
    
      ∑
      
        z
        ∈
        Δ
      
    
    ⁢
    
      
        κ
        z
      
      ⁢
      
        Q
        ⁡
        
          (
          
            
              
                
                  
                  HVz
                  
                
                2
              
              /
              2
            
          
          )
        
      
    
  




where Δ={(u−v): u,vεS, u≠v}, S is the set of all possible transmitted symbol vectors, kz is the multiplicity of z in S, and Q(.) is the Gaussian Q-function. This upper bound can be used for selecting V: choose V that minimizes the SER upper bound. The preferred embodiments for linear and iterative detectors find the weights V by maximization:

V=arg maxUεSmin1≦m≦MSINR(m;H,U)

where SINR(m; H, U) is the signal-to-interference+noise ratio for the mth stream with channel H and weighting matrix U in the set S of allowable weighting matrices. This criterion corresponds to minimizing the system bit error rate (BER).

Closed-form expression of SINR(m; H, U) for different detectors can be obtained. Define the following:



  
    
      
        
          A
          =
          
          ⁢
          HU
        
      
      
        
          
          ⁢
          
            (
            
              a
              ⁢
              
                
              
              ⁢
              QxM
              ⁢
              
                
              
              ⁢
              matrix
            
            )
          
        
      
    
    
      
        
          =
          
          ⁢
          
            [
            
              
                a
                1
              
              ,
              
                a
                2
              
              ,
              ...
              ⁢
              
                
              
              ,
              
                a
                M
              
            
            ]
          
        
      
      
        
          
          ⁢
          
            (
            
              each
              ⁢
              
                
              
              ⁢
              
                a
                m
              
              ⁢
              
                
              
              ⁢
              is
              ⁢
              
                
              
              ⁢
              a
              ⁢
              
                
              
              ⁢
              Qx
              ⁢
              
                
              
              ⁢
              1
              ⁢
              
                
              
              ⁢
              vector
            
            )
          
        
      
    
    
      
        
          
            A
            m
          
          =
          
          ⁢
          
            [
            
              
                a
                m
              
              ,
              
                a
                
                  m
                  +
                  1
                
              
              ,
              ...
              ⁢
              
                
              
              ,
              
                a
                M
              
            
            ]
          
        
      
      
        
          
          ⁢
          
            (
            
              a
              ⁢
              
                
              
              ⁢
              
                Qx
                ⁡
                
                  (
                  
                    M
                    -
                    m
                    +
                    1
                  
                  )
                
              
              ⁢
              
                
              
              ⁢
              matrix
            
            )
          
        
      
    
  




  Then




  
    
      
        SINR
        LZF
      
      ⁡
      
        (
        
          
            m
            ;
            H
          
          ,
          U
        
        )
      
    
    =
    
      ρ
      /
      
        
          [
          
            
              A
              H
            
            ⁢
            A
          
          ]
        
        
          m
          ,
          m
        
        
          -
          1
        
      
    
  




  
    
      
        SINR
        ⁡
        
          (
          
            
              m
              ;
              H
            
            ,
            U
          
          )
        
      
      LMMSE
    
    =
    
      
        ρ
        /
        
          
            [
            
              
                
                  I
                  M
                
                /
                ρ
              
              +
              
                
                  A
                  H
                
                ⁢
                A
              
            
            ]
          
          
            m
            ,
            m
          
          
            -
            1
          
        
      
      -
      1
    
  




  
    
      
        SINR
        IZF
      
      ⁡
      
        (
        
          
            m
            ;
            H
          
          ,
          U
        
        )
      
    
    =
    
      ρ
      /
      
        
          [
          
            
              A
              m
              H
            
            ⁢
            
              A
              m
            
          
          ]
        
        
          1
          ,
          1
        
        
          -
          1
        
      
    
  




  
    
      
        SINR
        ⁡
        
          (
          
            
              m
              ;
              H
            
            ,
            U
          
          )
        
      
      IMMSE
    
    =
    
      
        ρ
        /
        
          
            [
            
              
                
                  I
                  M
                
                /
                ρ
              
              +
              
                
                  A
                  m
                  H
                
                ⁢
                
                  A
                  m
                
              
            
            ]
          
          
            1
            ,
            1
          
          
            -
            1
          
        
      
      -
      1
    
  



And for ordered detection in the iterative detectors, the SINR expressions are accordingly modified as previously described.
The foregoing gives the criterion to select the optimal weighting matrix V from the pre-determined set of allowable weighting matrices, SV. Another aspect of preferred embodiment systems is the selection of this set SV of allowable weighting matrices. As given above, one possibility is to choose the following parameterization of V:




  V
  =
  
    [
    
      
        
          
            w
            1
          
        
        
          0
        
        
          ...
        
        
          0
        
      
      
        
          0
        
        
          
            w
            2
          
        
        
          ...
        
        
          0
        
      
      
        
          ⋮
        
        
          ⋮
        
        
          ⋱
        
        
          ⋮
        
      
      
        
          0
        
        
          0
        
        
          ...
        
        
          
            w
            M
          
        
      
    
    ]
  




where each Wm belongs to a set of allowable (PIM)×1 vectors Swm as described above. There are several variations: (1) when all wm are distinct, |SV|=ΠSwm|, so when all Swm, =Sw1, |SV|=|Sw|M; (2) all wm are equal to a single w, and thus |SV|=|Sw|.

Note that V can be any P×M linear transformation, so another possibility is




  V
  =
  
    [
    
      
        
          
            R
            1
          
        
      
      
        
          
            R
            2
          
        
      
      
        
          ⋮
        
      
      
        
          
            R
            
              P
              /
              M
            
          
        
      
    
    ]
  




where Rm is a M×M unitary rotation matrix. In particular, for M=2:





  
    R
    m
  
  =
  
    [
    
      
        
          
            cos
            ⁢
            
              
            
            ⁢
            
              θ
              m
            
          
        
        
          
            
              e
              jφμ
            
            ⁢
            sin
            ⁢
            
              
            
            ⁢
            θ
          
        
      
      
        
          
            -
            
              e
              
                -
                jφm
              
            
          
        
        
          
            cos
            ⁢
            
              
            
            ⁢
            
              θ
              m
            
          
        
      
    
    ]
  




where Φm and θm can be quantized for low-complexity searching to find V. See the following simulation section.

5. Simulation Results
FIGS. 4-5 compare raw BER for the P=Q=4 cases of standard MIMO (64QAM single stream space diversity), a double STTD, and various two-stream preferred embodiments (FIG. 2b) with iterative MMSE detection (with ordering) at 4-bps/Hz and 6-bps/Hz throughput. The curves are: (1) DSTTD: open loop with double STTD; (2) Model: FIG. 2d with weights w1=1/2, wp=exp(−jφp) for p=2,3,4 where the φp are uniformly quantized to 2 bits, so the allowable weight space size is 43=64; (3) DTXAA . . . M1: weight matrix of two 2×1 phase vectors w1 and w2 with each phase of 2-bit quantization, so a total weight space size of 16; (4) DTXAA M3: weight matrix of two 2×1 vectors w1 and w2 with each vector of 1-bit magnitude and 2-bit phase quantization, so a total weight space size of 64; (5) DTXAA . . . . Rot N=4: weight matrix (FIG. 2c) is 2×1 of 2×2 blocks with each 2×2 block a rotation by θm with θm uniformly quantized in range [0,π/2) to 4 values, so the weight space size is 16; and (6) DTXAA . . . . Rot N=8: weight matrix is 2×1 of 2×2 blocks with each 2×2 block a rotation by θm with θm uniformly quantized in range [0,π/2) to 8 values, so the weight space size is 64. Observe that for the same set size, the DTXAA (preferred embodiments) outperforms the conventional by up to 2.5 dB. Even with smaller set size, the preferred embodiments still outperform the conventional by up to 2.2 dB. Note that curve (4) performs the best.
6. Modifications
The preferred embodiments can be modified in various ways while retaining the features of antenna weightings determined from the composite channel.
For example, as mentioned before, other receiver schemes can be used, which result in different error rate or SINR dependence upon the channel and weight vectors. For TDMA and CDMA systems, the channel may exhibit significant frequency selectivity due to multipath effect. In this case, the weight selection criterion must incorporate the effect of multipath interference as well as the receiver scheme that is used to suppress multipath interference. Finally, this scheme can also be applied in OFDM-type systems, where the scheme is applied for each sub-carrier or across sub-carriers.

## Claims

1. A wireless transmitter comprising:
A. a symbol mapping circuitry having a data symbol output;
B. a serial to parallel circuitry having an input coupled with the data symbol output and having plural symbol stream outputs;
C. multiplier circuits, one for each symbol stream output, each multiplier circuit having an symbol input, an antenna weight input, and an output, the symbol input being coupled with a symbol stream output;
D. antenna units, each coupled with the output of one multiplier circuit; and
E. an antenna weight circuitry having plural antenna weight outputs, each antenna weight output being coupled with one antenna weight input, the antenna weight circuitry producing weight signals on the antenna weight outputs in accordance with rectangular matrix that corresponds to a diagonal M.times.M block matrix of (P by M).times.1 vectors, where each (P by M).times.1 vector corresponds to weights for each symbol stream, where P represents a number of antennas and M represents symbol stream outputs.

2. The wireless transmitter of claim 1 in which each antenna unit P has two antennas.

3. The wireless transmitter of claim 1 in which the serial to parallel circuitry has M symbol stream outputs sm.

4. The wireless transmitter of claim 1 in which each antenna weight is a 2×1 weighting vector wm corresponding to the symbol stream output.

5. The wireless transmitter of claim 1 in which each antenna weight is a vector wm corresponding to the symbol stream output, and in which the antenna weight circuitry provides weight signals in accordance with a weighting matrix V, where:




  V
  ⁢
  
    
      
        
          w
          1
        
      
      
        0
      
      
        ...
      
      
        0
      
    
    
      
        0
      
      
        
          w
          2
        
      
      
        ...
      
      
        0
      
    
    
      
        ⋮
      
      
        ⋮
      
      
        ⋮
      
      
        ⋮
      
    
    
      
        0
      
      
        0
      
      
        ...
      
      
        
          w
          m
        
      
    
  




where each vector wm belongs to a set of (P by M)×1 vectors.

6. The wireless transmitter of claim 1 in which the transmitter is included in user equipment.

7. The wireless transmitter of claim 1 in which the transmitter is included in a mobile device.