Abstract:
A method and apparatus for transmitting data in code division multiple access communications. The method includes processing spread first data with a channel response matrix using an equalization circuit to pre-equalize the spread data to compensate for a channel response prior to transmission. The pre-equalized data is received and recovered by a receiver. Second data, transmitted from the receiver, is received and recovered using the equalization circuit to equalize the second data to compensate for a channel response that the first data encountered.

Description:
CROSS REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. patent application Ser. No. 10/335,347 filed on Dec. 31, 2002,which claims the benefit of U.S. Provisional Application No. 60/396,490 filed on Jul. 17, 2002,and U.S. Provisional Application No. 60/368,639 filed on Mar. 28, 2002,which are incorporated by reference as if fully set forth. 
    
    
     FIELD OF INVENTION 
     The application is related to wireless communications. 
     BACKGROUND 
     In code division multiple access (CDMA) communication systems, multiple communications may be simultaneously sent over a shared frequency spectrum. Each communication is distinguished by the code used to transmit the communication. 
     In some CDMA communication systems, to better utilize the shared spectrum, the spectrum is time divided into frames having a predetermined number of time slots, such as fifteen time slots. This type of system is referred to as a hybrid CDMA/time division multiple access (TDMA) communication system. One such system, which restricts uplink communications and downlink communications to particular time slots, is a time division duplex communication (TDD) system. 
     One approach to receive the multiple communications transmitted within the shared spectrum is joint detection. In joint detection, the data from the multiple communications is determined together. In the following description a capitalized symbol X represents a matrix, and the symbol {right arrow over (x)} represents a column vector. The joint detection is typically modeled per Equation 1:
 
 {right arrow over (r)}=A{right arrow over (d)}+{right arrow over (n)};   Equation 1
 
The received signal vector {right arrow over (r)} is a function of the system transmission matrix A, the transmittal data vector {right arrow over (d)}, and the noise vector {right arrow over (n)}. The system transmission matrix A contains the contributions of individual users as per Equation 2:
 
 A=└A   (1)   , A   (2)   , . . . ,A   (K) ┘;   Equation 2
 
where A (k)  represents the contribution of user k to the system transmission matrix A. Each user system transmission matrix is a function of the channel impulse response and the spreading code of that user per Equation 3:
 
 A   (k)   =H   (k)   C   (k) ;   Equation 3
 
Where H (k)  is the channel response matrix and C (k)  is the code matrix for user k.
 
     A Minimum Mean Square Error (MMSE) estimate for the data vector             is obtained from Equation 4:
                       d     -&gt;   ^       =         (       A   H     ⁢     R   n     -   1       ⁢   A     )       -   1       ⁢     A   H     ⁢     R   n     -   1       ⁢     r   -&gt;         ;           Equation   ⁢           ⁢   4               
where R n  is the covariance matrix of the noise. When the noise is white, R n  is a diagonal matrix and the MMSE estimate for the data is per Equations 5A and 5B:
 
                       d     -&gt;   ^       =         (         A   H     ⁢   A     +       σ   2     ⁢   I       )       -   1       ⁢     A   H     ⁢     r   -&gt;         ;           Equation   ⁢           ⁢   5   ⁢   A               
which may alternatively be written as:
 
                       d     -&gt;   ^       =           A   H     ⁡     (       AA   H     +       σ   2     ⁢   I       )         -   1       ⁢     r   -&gt;         ;           Equation   ⁢           ⁢   5   ⁢   B               
Equations 5A and 5B are interchangeable using matrix inversion lemma.
 
     Similarly, a zero forcing (ZF) estimate is obtained from Equations 6A and 6B: 
                       d     -&gt;   ^       =         (       A   H     ⁢   A     )       -   1       ⁢     A   H     ⁢     r   -&gt;         ;           Equation   ⁢           ⁢   6   ⁢           ⁢   A               
which may also be written as:
 
     
       
         
           
             
               
                 
                   
                     
                       d 
                       
                         -&gt; 
                         ^ 
                       
                     
                     = 
                     
                       
                         
                           
                             A 
                             H 
                           
                           ⁡ 
                           
                             ( 
                             
                               AA 
                               H 
                             
                             ) 
                           
                         
                         
                           - 
                           1 
                         
                       
                       ⁢ 
                       
                         r 
                         -&gt; 
                       
                     
                   
                   ; 
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   6 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   B 
                 
               
             
           
         
       
     
     Equations 6A and 6B are interchangeable using matrix inversion lemma. 
     In a CDMA system, when all codes go through the same propagation channel, as in the case of a typical downlink transmission or when one uplink user monopolizes a time slot (H (k) =H) the transmitted vector of spread symbols {right arrow over (s)} are obtained from Equation 7: 
                       s   -&gt;     =       C   ⁢     d   -&gt;       =       ∑     k   =   1     K     ⁢           ⁢       C     (   k   )       ⁢       d   -&gt;       (   k   )               ;           Equation   ⁢           ⁢   7               
The received signal is modeled using Equation 8:
 
 {right arrow over (r)}=H{right arrow over (s)}+{right arrow over (n)};    Equation 8
 
     The MMSE estimate for the spread symbols {right arrow over (s)} is obtained as shown in Equations 9A and 9B: 
                       s     -&gt;   ^       =         (         H   H     ⁢   H     +       σ   2     ⁢   I       )       -   1       ⁢     H   H     ⁢     r   -&gt;         ;           Equation   ⁢           ⁢   9   ⁢   A               
or equivalently:
 
     
       
         
           
             
               
                 
                   
                     s 
                     
                       -&gt; 
                       ^ 
                     
                   
                   = 
                   
                     
                       
                         
                           H 
                           H 
                         
                         ⁡ 
                         
                           ( 
                           
                             
                               HH 
                               H 
                             
                             + 
                             
                               
                                 σ 
                                 2 
                               
                               ⁢ 
                               I 
                             
                           
                           ) 
                         
                       
                       
                         - 
                         1 
                       
                     
                     ⁢ 
                     
                       r 
                       -&gt; 
                     
                   
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   9 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   B 
                 
               
             
           
         
       
     
     Equations 9A and 9B are interchangeable using matrix inversion lemma. The ZF estimate, (derived from Equation 6) for {right arrow over (ŝ)} is obtained by Equations 10A and 10B: 
                       s     -&gt;   ^       =         (       H   H     ⁢   H     )       -   1       ⁢     H   H     ⁢     r   -&gt;         ;           Equation   ⁢           ⁢   10   ⁢           ⁢   A               
or equivalently:
 
     
       
         
           
             
               
                 
                   
                     
                       s 
                       
                         -&gt; 
                         ^ 
                       
                     
                     = 
                     
                       
                         
                           
                             H 
                             H 
                           
                           ⁡ 
                           
                             ( 
                             
                               HH 
                               H 
                             
                             ) 
                           
                         
                         
                           - 
                           1 
                         
                       
                       ⁢ 
                       
                         r 
                         -&gt; 
                       
                     
                   
                   ; 
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   10 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   B 
                 
               
             
           
         
       
     
     Equations 10A and 10B are interchangeable using matrix inversion lemma. The estimate of the spread symbols             can be followed by a code Matched Filter (MF) to recover the data symbols.
     When multiple antennas are used at the receiver, the received vector may also be represented by Equation 1. The definition of the vectors and matrix involved are modified to represent the contributions from different antennas as per Equation 11: 
                       [             r   -&gt;     1             ⋮               r   -&gt;     N           ]     =         [           A   1             ⋮             A   N           ]     ⁢     d   -&gt;       +     [             n   -&gt;     1             ⋮               n   -&gt;     N           ]         ;           Equation   ⁢           ⁢   11               
where {right arrow over (r)} i , A i , and {right arrow over (n)} i  are the terms associated with receive antenna element i. A i  is constructed for each antenna with a different channel response per Equation 3 and A has components associated with each of K users per Equation 12:
 
 A=[A   (1)   , A   (2)   , . . . , A   (K) ];   Equation 12
 
     When multiple transmit antenna elements, such as M transmit elements, are used at the transmitter, the received vector {right arrow over (r)} i  is also per Equation 1. The appropriate definition of the vectors and matrix involved is represented in Equation 13: 
                       r   -&gt;     =         [       A   1   ′     ⁢           ⁢   …   ⁢           ⁢     A   M   ′       ]     ⁡     [             d   -&gt;     1             ⋮               d   -&gt;     M           ]       +     n   -&gt;         ;           Equation   ⁢           ⁢   13               
where {right arrow over (r)} is the composite received signal, and A′ m , m=1,2, . . . ,M is the system transmission matrix for signal transmission from the m th  transmit element to the receiver, {right arrow over (d)} m , m=1, 2 . . . M is the data vector transmitted from transmit antenna m.
 
     The components of A due to an i th  antenna element is denoted as A i ′. Each A i ′ component has contributions from all K users per Equation 14:
 
 A′=[A′   (1)   , A′   (2)   , . . . , A′   (K) ];   Equation 14
 
The contribution of each user to each antenna element is a function of the channel impulse response and the spreading (derived from Equation 3) codes as shown in Equation 15:
 
 A′   (k)   =H′   (k)   C   (k) ;   Equation 15
 
     Multiple antennas at both the transmitter and the receiver are referred to as a Multiple Input Multiple Output (MIMO) system. The received signal for a MIMO system may be represented by Equation 11 rewritten as Equation 16. 
                       [             r   -&gt;     1             ⋮               r   -&gt;     N           ]     =           [           A   1             ⋮             A   N           ]     ⁡     [       A   1   ′     ⁢           ⁢   …   ⁢           ⁢     A   M   ′       ]       ⁡     [             d   -&gt;     1             ⋮               d   -&gt;     M           ]       +     [             n   -&gt;     1             ⋮               n   -&gt;     N           ]         ;           Equation   ⁢           ⁢   16               
Where N is the number of receive antennas; M is the number of transmit antennas; A n , n=1,2, . . . ,N is the transmission matrix for reception; and A′ m , m=1, 2, . . . ,M is the transmission matrix for transmission. With appropriate definitions of vectors and matrices involved, Equation 16 is rewritten as Equation 17:
 
 {right arrow over (r)}=Λ{right arrow over (d)}+{right arrow over (n)};    Equation 17
 
where Λ is the composite system transmission matrix for both transmission and reception. The MMSE estimate for the data vector shown in Equation 5 is represented by Equations 18A and 18B:
 
                       d     -&gt;   ^       =         (         Λ   H     ⁢   Λ     +       σ   2     ⁢   I       )       -   1       ⁢     Λ   H     ⁢     r   -&gt;         ;           Equation   ⁢           ⁢   18   ⁢           ⁢   A               
or equivalently
 
                     d     -&gt;   ^       =           Λ   H     ⁡     (       Λ   ⁢           ⁢     Λ   H       +       σ   2     ⁢   I       )         -   1       ⁢     r   -&gt;               Equation   ⁢           ⁢   18   ⁢           ⁢   B               
Equations 18A and 18B are interchangeable using matrix inversion lemma. The ZF estimate can be obtained from Equations 19A and 19B:
 
                       d     -&gt;   ^       =         (       Λ   H     ⁢   Λ     )       -   1       ⁢     Λ   H     ⁢     r   -&gt;         ;           Equation   ⁢           ⁢   19   ⁢           ⁢   A               
or equivalently:
 
                       d     -&gt;   ^       =           Λ   H     ⁡     (     Λ   ⁢           ⁢     Λ   H       )         -   1       ⁢     r   -&gt;         ;           Equation   ⁢           ⁢   19   ⁢           ⁢   B               
Equations 19A and 19B are interchangeable using matrix inversion lemma.
 
     A receiver implementing these approaches effectively performs a matrix inversion, which has a high complexity. To reduce the complexity, an approximate Cholesky decomposition or fast Fourier transforms are used. Although these approaches reduce the receiver complexity, it is desirable to have alternate approaches to simplify the transmitting and receiving of data. 
     SUMMARY 
     A channel response is determined as a channel response matrix H approximating a wireless channel that the data will experience after transmission. The data to be transmitted is spread, and the spread data is processed with the channel response matrix H. The spread and processed data is then transmitted. The data is received and recovered from the transmitted spread and processed data. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a simplified diagram of a transmitter and receiver using transmit processing using receiver functions. 
         FIG. 2  is a flow chart of transmission using receiver functions. 
     
    
    
     DETAILED DESCRIPTION 
     A system is described herein in conjunction with a time division duplex (TDD) mode of a CDMA system, (such as the proposed TDD mode of the third generation partnership project (3GPP) wideband CDMA system). However, the following can be applied to any spread spectrum communication system, such as frequency division duplex (FDD) system or a time division synchronous code division multiple access (TD-SCDMA) system. 
       FIG. 1  is a diagram of a simplified transmitter  10  and receiver  12  for use in transmit processing using receiver functions. The transmitter  10  can be located at a base station, user equipment (UE) or both, and the receiver  12  can be located at a UE, base station or both. Data to be communicated from the transmitter  10  to the receiver  12  is input into a spreading and modulation device  14  and a pre-equalizer  15 . The data can be for a single code transmission to a single receiver, for a multi-code transmission to a single receiver, single code transmissions to multiple receivers, multi-code transmissions to multiple receivers or a combination of single and multi-code transmissions to multiple receivers. 
     The data is spread using the appropriate code(s), pre-equalized to compensate for the anticipated channel responses of the wireless radio interface  18  and modulated, such as by using quadrature phase shift keying (QPSK), M-ary quadrature amplitude modulation (QAM) or other modulation schemes, and to upconvert to radio frequency. The radio frequency signal is radiated by an antenna or M element antenna array  16   1 - 16   M  through a wireless radio interface  18 . 
     An antenna, or N element antenna array  20   1 - 20   N , at the receiver  12  receives the radiated signal with other signals and noise as a received vector {right arrow over (r)}. A data detector  22  processes the received vector to recover the data {right arrow over (d)}. The structure of the data detector  22  may be simplified over a typical joint detection receiver due to the pre-equalization at the transmitter  10 , such as by being implemented by code matched filters. 
     The transmitter  10  effectively compensates for the channel distortion prior to transmission. As a result, the received vector {right arrow over (r)} is approximately the spread data vector {right arrow over (s)}. 
     The pre-equalization makes use of the channel and code information available at a receiver  12  to process the transmit vector appropriately so that when that signal is received at the receiver  12  it is already compensated for channel impairments. The channel information can be signaled from the receiver  12 , may be derived from signals received at the transmitter  10  within the same frequency spectrum. To illustrate, for a base station of a TDD/CDMA communication system, the channel information may be gathered in an uplink time slot for a subsequent downlink transmission time slot. 
     When processing at the transmitter  10  is used, the received signal obtained from Equation 20A: 
                       r   -&gt;     =         [       A   1   ′     ⁢           ⁢   …   ⁢           ⁢     A   M   ′       ]     ⁡     [             d   -&gt;     1             ⋮               d   -&gt;     M           ]       +     n   -&gt;         ;           Equation   ⁢           ⁢   20   ⁢           ⁢   A               
In terms of the channel and code matrices, Equation 20A becomes Equation 20B:
 
     
       
         
           
             
               
                 
                   
                     r 
                     -&gt; 
                   
                   = 
                   
                     
                       
                         
                           [ 
                           
                             
                               H 
                               1 
                               ′ 
                             
                             ⁢ 
                             
                                 
                             
                             ⁢ 
                             … 
                             ⁢ 
                             
                                 
                             
                             ⁢ 
                             
                               H 
                               M 
                               ′ 
                             
                           
                           ] 
                         
                         ⁡ 
                         
                           [ 
                           
                             
                               
                                 
                                   C 
                                   1 
                                 
                               
                               
                                 
                                     
                                 
                               
                               
                                 
                                     
                                 
                               
                             
                             
                               
                                 
                                     
                                 
                               
                               
                                 ⋱ 
                               
                               
                                 
                                     
                                 
                               
                             
                             
                               
                                 
                                     
                                 
                               
                               
                                 
                                     
                                 
                               
                               
                                 
                                   C 
                                   M 
                                 
                               
                             
                           
                           ] 
                         
                       
                       ⁡ 
                       
                         [ 
                         
                           
                             
                               
                                 
                                   d 
                                   -&gt; 
                                 
                                 1 
                               
                             
                           
                           
                             
                               ⋮ 
                             
                           
                           
                             
                               
                                 
                                   d 
                                   -&gt; 
                                 
                                 M 
                               
                             
                           
                         
                         ] 
                       
                     
                     + 
                     
                       n 
                       -&gt; 
                     
                   
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   20 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   B 
                 
               
             
           
         
       
     
     The code matrix C 1  through C M  can differ based on the transmission scheme. One such scheme is space code transmit diversity (SCTD), where each antenna is assigned a different transmission code. In some transmit diversity schemes the same code matrix is used for each antenna. One such scheme is transmit adaptive antennas (TxAA). Although transmit processing using receiver functions is described in conjunction with each antenna transmitting the same code matrix C, it is also applicable to systems where the code matrix varies by antenna using an analogous approach. 
     In some systems, the transmit data bits {right arrow over (d)} 1  through {right arrow over (d)} M  can differ based on the transmission scheme, in particular whether transmit diversity is used. Although an analogous approach can be applied to systems having differing data vectors per antenna, the following is described in conjunction with each antenna transmitting the same data vector {right arrow over (d)}. For systems where the same data and code matrix is transmitted from each antenna, the system is modeled per Equation 21. 
                           r   -&gt;     =         [       A   1   ′     ⁢           ⁢   …   ⁢           ⁢     A   M   ′       ]     ⁡     [           d   -&gt;             ⋮             d   -&gt;           ]       +     n   -&gt;                   =           [       H   1   ′     ⁢           ⁢   …   ⁢           ⁢     H   M   ′       ]     ⁡     [         C                                               ⋱                                               C         ]       ⁡     [           d   -&gt;             ⋮             d   -&gt;           ]       +     n   -&gt;                     =         [       H   1   ′     ⁢           ⁢   …   ⁢           ⁢     H   M   ′       ]     ⁡     [           C   ⁢     d   -&gt;               ⋮             C   ⁢     d   -&gt;             ]       +     n   -&gt;         ;                 Equation   ⁢           ⁢   21               
The transmit vector is shown by Equation 22:
 
     
       
         
           
             
               
                 
                   
                     [ 
                     
                       
                         
                           
                             C 
                             ⁢ 
                             
                               d 
                               -&gt; 
                             
                           
                         
                       
                       
                         
                           ⋮ 
                         
                       
                       
                         
                           
                             C 
                             ⁢ 
                             
                               d 
                               -&gt; 
                             
                           
                         
                       
                     
                     ] 
                   
                   ; 
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   22 
                 
               
             
           
         
       
     
     The pseudo-inverse of H from the right is H H (HH H ) −1 . The data signal after processing is transmitted with this pseudo-inverse. Accordingly, the transmitted signal {right arrow over (t)}′ is shown by Equation 23:
 
 {right arrow over (t)}′=H   H (HH H ) −1   C{right arrow over (d)};    Equation 23
 
     The resulting received vector is shown in Equation 24: 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           r 
                           -&gt; 
                         
                         = 
                         
                           
                             
                               
                                 HH 
                                 H 
                               
                               ⁡ 
                               
                                 ( 
                                 
                                   HH 
                                   H 
                                 
                                 ) 
                               
                             
                             
                               - 
                               1 
                             
                           
                           ⁢ 
                           C 
                           ⁢ 
                           
                             d 
                             -&gt; 
                           
                         
                       
                     
                   
                   
                     
                       
                         
                           = 
                           
                             C 
                             ⁢ 
                             
                               d 
                               -&gt; 
                             
                           
                         
                         ; 
                       
                     
                   
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   24 
                 
               
             
           
         
       
     
     If the pre-equalization is ideal, a clean signal is received  12  at the receiver without any need for further processing. However, in practice due to noise and variations in the channel conditions, typically some degradation to the received signal occurs. However, the required processing to remove degradation is greatly decreased, further increasing the required complexity of the receiver  12 . 
     One of the advantages of a MMSE or ZF type receiver is that MMSE or ZF circuits are commonly at the transmitter  10  site. To illustrate, a base station typically has an MMSE type receiver. Accordingly, a single MMSE circuit can be used for processing the received and transmitted data at the base station. As a result, the circuitry for a receiver  12  and a transmitter  10  implementing transmit processing using receiver functions can be consolidated into either the UE or the base station, with the other communicating unit having simplified circuitry. 
     For example, the base station may use the pre-equalization transmitter  10  and a MMSE receiver. The matrix or effective matrix inversion can be performed by the same circuit. As a result, the receiver circuitry at the UE can be simplified, such as a single or group of code matched filters. The simplified receiver circuitry also extends the battery life at the receiver  12 . 
     The common used circuitry is not limited to MMSE or ZF receiver circuitry, but it is rather general in that any receiver  12  structure that is capable of performing matrix operations and calculating matrix inverse is suited to do processing at the transmitter  10 . Another advantage of the pre-equalization is that the transmitted signal is focused on the receiver  12 . For downlink signals in particular, the interference to other users is reduced. 
     Referring to  FIG. 2 , a method  30  is shown. The method commences with obtaining wireless channel information, which may be in the form of a channel impulse response H (step  32 ). The data for transmission is then pre-equalized using the channel impulse response H (step  34 ). The pre-equalized data is transmitted across the wireless radio interface (step  36 ) and is received as a received vector (step  38 ) at the receiver. The data is then recovered from the received vector, such as by using code matched filters (step  40 ).