Abstract:
A multi-input, multi-output pre-filter improves operation of a multi-input receiver by shortening the effective memory of the channel with a set of FIR filters. The coefficients of these FIR filters can be fashioned to provide a variety of controls by the designer, for example, the value of the effective memory.

Description:
RELATED APPLICATION 
     This application is a Continuation application of Ser. No. 09/668,199, now U.S. Pat. No. 7,027,536, filed Sep. 22, 2000, which claims the benefit of Provisional application No. 60/158,713 filed on Oct. 8, 1999. This application is also related to a Provisional application No. 60/158,714, also filed on Oct. 8, 1999. 
    
    
     BACKGROUND OF THE INVENTION 
     The combination of maximum likelihood sequence estimation (MLSE) with receiver diversity is an effective technique for achieving high performance over noisy, frequency-selective, fading channels impaired by co-channel interference. With the addition of transmitter diversity, the resulting multi-input multi-output (MIMO) frequency-selective channel has a significantly higher capacity than its single-input multi-output (SIMO) or single-input single-output (SISO) counterparts. The use of maximum likelihood multi-user detection techniques on these frequency-selective MIMO channels significantly outperforms single-user detection techniques that treat signals from other users as colored noise. However, MLSE complexity increases exponentially with the number of inputs (or transmit antennas) and with the memory of the MIMO channel, making its implementation over sever inter-symbol interference (ISI) channels very costly. 
     The MIMO channel can be modeled as a collection of FIR filters (i.e., an FIR filter between each input point (e.g., transmitting antenna) and each receiving point (e.g. receiving antenna), and the “memory of the channel” corresponds to the number of taps in the FIR filters. 
     The Discrete Matrix Multitone (DMMT) was shown to be a practical transceiver structure that asymptotically achieves the MIMO channel capacity when combined with powerful codes. It uses the Discrete Fourier Transform (DFT) to partition the frequency responses of the underlying frequency-selective channels of the MIMO systems into a large number of parallel, independent, and (approximately) memoryless frequency subchannels. To eliminate inter-block and intra-block interference, a cyclic prefix whose length is equal to the MIMO channel memory is inserted in every block. On severe-ISI MIMO channels, the cyclic prefix overhead reduces the achievable DMMT throughput significantly, unless a large FFT size is used which, in turn, increases the computational complexity, processing delay, and memory requirements in the receiver. 
     In short, the computation complexity increases exponentially with the number of taps in the FIR filters that may be used to model the channel. 
     N. Al-Dhahir and J. M. Cioffi, in “Efficiently-Computed Reduced-Parameter Input-Aided MMSE Equalizers for ML Detection: A Unified Approach,” IEEE Trans. Information Theory, pp. 903-915, May 1996, disclose use of a time-domain pre-filter in the receiver to shorten the effective channel memory and hence reduce the cyclic prefix overhead and/or the number of MLSE states. The disclosed approach, however, is for SISO systems, and not for MIMO systems. 
     SUMMARY 
     An advance in the art is realized with a MIMO pre-filter that is constructed from FIR filters with coefficients that are computed based on environment parameters that are designer-chosen. Given a transmission channel that is modeled as a set of FIR filters with memory ν, a matrix W is computed for a pre-filter that results in an effective transmission channel B with memory N b , where N b &lt;ν, where B is optimized so that B opt =argmin B  trace(R ee ) subject to selected constraints; R ee  being the error autocorrelation function. The coefficients of W, which are sensitive to a variety of designer constraints, are computed by a processor within pre-filter at the front end of a receiver and loaded into an array of FIR filters that form the pre-filter. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWING 
         FIG. 1  shows the major elements of a receiver in accord with the principles disclosed herein; 
         FIG. 2  presents the structure of filters  210 ; and 
         FIG. 3  is a flowchart describing the method carried out by processor  220  within pre-filter  30 . 
     
    
    
     DETAILED DESCRIPTION 
       FIG. 1  depicts the general case of an arrangement with n i  transmitting antennas  11 - 1 ,  11 - 2 , . . .  11 - n   i , that output signals (e.g., space-time encoded signals) to a transmission channel, and n o  receiving antennas  21 - 1 ,  21 - 2 , . . .  21 - n   o . Each transmitting antenna p outputs a complex-valued signal x p , the signals of the n i  antennas pass through a noisy transmission channel, and the n o  receiving antennas Capture the signals that passed through the transmission channel. The received signals are oversampled by a factor of I in element  20  and applied to pre-filter  30 . Thus, the sampling clock at the output of element  20  is of period T s =T/I, where T is the inter-symbol period at the transmitting antennas. The transmission channel&#39;s characterization is also referenced to T s . In the illustrative embodiment disclosed herein, therefore, pre-filter  30  develops n o  output signals that are applied to a conventional multi-input receiver  40 , and the received signal can be expressed by 
                       y   k     (   j   )       =         ∑     i   =   1     N     ⁢       ∑     m   =   0       v     (     i   ,   j     )         ⁢       h   m     (     i   ,   j     )       ⁢     x     k   -   m       (   i   )             +     n   k     (   i   )           ,           (   1   )               
where y k   (j)  is the signal at time k at the j th  receiving antenna, h m   (i,j)  is the m th  coefficient (tap) in the channel impulse response between the i th  transmitting antenna and the j th  receiving antenna, and n (j)  is the noise vector at the j th  receiving antenna. The memory of this path (i.e., the largest value of m for which h m   (i,j)  is not zero) is denoted by ν (i,j) . It not unreasonable to assume, however, that the memory of the transmission channel is the same for all i,j links (n i ×n o  such links), in which case ν (i,j) =ν. Alternatively, the ν (i,j)  limit in equation (1) can be set to that ν which corresponds to maximum length of all of the n i ×n o  channel input responses, i.e., ν=max i,j ν (i,j) . All of these variables in equation (1) are actually I×1 column vectors, corresponding to the I time samples per symbol in the oversampled  FIG. 1  arrangement. By grouping the received samples from all n o  antennas at symbol time k into an n o I×1 column vector y k , one can relate y k  to the corresponding n i ×1 (column) vector of input samples as follows
 
                       y   k     =         ∑     m   =   0     v     ⁢       H   m     ⁢     x     k   -   m           +     n   k         ,           (   2   )               
where H m  is the MIMO channel coefficients matrix of size n o I×n i , x k−m  is a size n i ×1 input (column) vector, and n k  is a size n o I×1 vector.
 
     Over a block of N f  symbol periods, equation (2) can be expressed in matrix notation as follows: 
                     [           y     k   +     N   f     -   1                 y     k   +     N   f     -   2               ⋮             y   k           ]     =     
     ⁢           ⁢         [           ⁢           H   0           H   1         …         H   v         0       …       0           0         H   0           H   1         …         H   v         0       …           ⋮       ⋮       ⋮       ⋮       ⋮       ⋱       ⋮           0       …       0         H   0           H   1         …         H   v           ]     [           ⁢           x     k   +     N   f     -   1                 x     k   +     N   f     -   2               ⋮             x     k   -   v             ]     +     [           ⁢           n     k   +     N   f     -   1                 n     k   +     N   f     -   2               ⋮             n   k           ]               (   3   )               
or, more compactly,
 
 y   k+N     f     −1:k   =Hx   k+N     f     −1:k−ν   +n   k+N     f     −1:k .  (4)
 
The subscripts in equation (4) indicate a range. For example k+N f −1:k indicates the range k+N f −1 and k, inclusive.
 
     It is useful to define the following correlation matrices:
 
 R   xy   ≡E[x   k+N     f     −1:k−ν   y*   k+N     f     −1:k   ]=R   xx   H*   (5)
 
 R   yy   ≡E[y   k+N     f     −1:k   y*   k+N     f     −1:k   ]=HR   xx   H*+R   nn ,  (6)
 
 R   xx   ≡E[x   k+N     f     −1:k−ν   x*   k+N     f     −1:k−ν ] and  (7)
 
 R   nn   ≡E[n   k+N     f     −1:k   n*   k+N     f     −1:k ].  (8)
 
It is assumed that these correlation matrices do not change significantly in time or, at least, do not change significantly over a time interval that corresponds to a TDMA burst (assumed to be much shorter than the channel coherence time), which is much longer than the length of the pre-filter, in symbol periods denoted by N f . Accordingly, a re-computation of the above matrices, and the other parameters disclosed herein, leading to the computation of pre-filter coefficients, need not take place more often than once every TDMA burst.
 
     Once H, R xx  and R nn  are known, R xy  and R yy  are computed by R xx H* and HR xx H*+R nn , respectively. 
     Given the MIMO channel matrix H with ν+1 members (H 0 , H 1 , . . . H ν ), the objective is to create a MIMO pre-filter W (element  30  in  FIG. 1 ) with N f  matrix taps, i.e., matrix W≡[W 0  W 1  . . . W N     f     −1 ] T , that equalizes H so as to create an overall transmission channel for receiver  40  that corresponds to a matrix B with memory N b , where N b &lt;&lt;ν. 
     The matrix B can be expressed as B≡[B 0  B 1  . . . B N     b   ] T  where each B i  is of size n i ×n i . 
     The MIMO channel-shortening pre-filter W (element  30 ) is conditioned, or adjusted, to minimize the equalization Mean Squared Error (MSE), defined by MSE≡trace(R ee ), where R ee  is the autocorrelation matrix of the error vector E k  that is given by
 
 E   k   ={tilde over (B)}*x   k+N     f     −1:k−ν   −W*y   k+N     f     −1:k ,  (9)
 
where the augmented MIMO matrix, {tilde over (B)}*, is
 
 {tilde over (B)}*≡[ 0 n     i     ×n     i     Δ    B*   0    B*   1    . . . B*   N     b    0 n     i     ×n     i     s ]≡[0 n     i     ×n     i     Δ    B*  0 n     i     ×n     i     s ],  (10)
 
Δ is the decision delay that lies in the range 0≦(N f +ν−N b −1), and s≡N f +ν−N b −Δ−1. The n i ×n i  error autocorrelation function R ee  can be expressed by the following:
 
 R   ee   ≡E[E   k   E*   k ]
 
={tilde over ( B )}*( R   xx   −R   xy   R   yy   −1   R   yx ){tilde over ( B )}
 
= {tilde over (B)}*R   ⊥   {tilde over (B)} 
 
= {tilde over (B)}*  R B,   (11)
 
where  R  is a sub-matrix of R ⊥  determined by Δ.
 
     Using the orthogonality principle, which states that E[E k y* k+N     f     −1:k ]=0 it can be shown that the optimum channel-shortening pre-filter and target impulse response filters (W and B, respectively) are related by
 
 W*   opt   ={tilde over (B)}*   opt   R   xy   R   yy   −1  
 
= {tilde over (B)}*   opt   R   xx   H *( HR   xx   H*+R   nn ) −1  
 
= {tilde over (B)}*   opt ( R   xx   −1   +H*R   nn   −1   H ) −1   H*R   nn   −1 .  (12)
 
The last line shows explicitly that the MIMO channel-shortening pre-filter consists of a noise whitener R nn   −1 , a MIMO matched filter H*, and a bank of FIR channel-shortening pre-filter elements.
 
     It remains to optimize {tilde over (B)} such that the MSE is minimized, which may be obtained by computing the parameters of B that, responsive to specified conditions, minimizes the trace (or determinant) of R ee . The following discloses two approaches to such optimization. 
     Under one optimization approach the coefficients of B are constrained so that some coefficient of B is equal to the identity matrix, I. A solution subject to this Identity Tap Constraint (ITC) can be expressed by
 
 B   opt   ITC =argmin B trace( R   ee ) subject to  B*φ=I   n     i   ,  (13)
 
where φ*≡[0 n     i     ×n     i     m    I   n     i    0 n     i     ×n     i     (N     b     −m) ] and 0≦m≦N b . It can be shown that the optimum MIMO target impulse response and the corresponding error autocorrelation matrix are given by
 
 B   opt   ITC   =  R     −1 φ(φ*   R     −1 φ) −1  and  (14)
 
 R   ee,min   ITC =(φ*   R     −1 φ) −1 .  (15)
 
As indicated above,  R  is affected by the delay parameter Δ. Unless dictated by the designer, the delay parameter Δ, which can range between 0 and (N f +ν−N b −1), is chosen to minimize the trace of R ee,min   ITC . Similarly, the index parameter m, which ranges between 0 and N b , and which that affects φ, is chosen to minimize the trace of R ee,min   ITC .
 
     Under a second optimization approach the imposed constraint is B*B=I n     i   . A solution subject to this Ortho-Normality Constraint (ONC) can be expressed by
 
 B   opt   ONC =argmin B trace( R   ee ) subject to  B*B=I   n     i   ,  (16)
 
Defining the eigen-decomposition
 
   R ≡UΣU*=U diag(σ 0 , σ 1  . . . σ n     i     (N     b     +1)−1 ) U*,   (17)
 
where σ 0 ≧σ 1  . . . σ n     i     (N     b     +1)−1 , then the optimum MIMO target response and the resulting error autocorrelation matrix are given by
 
 B   opt   ONC   =U[e   n     i     N     b      . . . e   n     i     (N     b     +1)−1 ],  (18)
 
where e i  is unit vector with a 1 at position i, and 0&#39;s elsewhere, and
 
 R   ee,min   ONC =diag(σ n     i     N     b   , . . . , σ n     i     (N     b     +1)−1 ).  (19)
 
Illustratively, if n i =3 and N b =3, B opt   ONC =U[e 9 ,e 10 ,e 11 ], meaning that B opt   ONC  is a three column matrix comprising the 9 th  through the 11 th  columns of matrix U. Stated in words, the optimum MIMO target impulse response matrix is given by the n i  eigenvectors of  R  that correspond to its n i  smallest eigenvalues. The delay parameter Δ (0≦Δ≦N f +ν−N b −1) that affects  R  is optimized to minimize the trace (or determinant) of R ee,min   ONC .
 
     With the above analysis in mind, a design of a prefilter  30  can proceed for any given set of system parameters, which includes:
         MIMO channel memory between the input points and the output point of the actual transmission channel, ν,   The number of pre-filter taps chosen, N f ,   The shortened MIMO memory, N b ,   The number of inputs to the transmission channel, n i ,   The number of output derived from the transmission channel, n o ,   The autocorrelation matrix of the inputs, R xx ,   The autocorrelation matrix of the noise, R nn ,   The oversampling used, I, and   The decision delay, Δ.       

     The structure of filters  210  is shown in  FIG. 2 . In the illustrated embodiment, it comprises two main components: processor  220  and filter section  210 . 
     Filter section  210  in the  FIG. 2  illustrative example comprises a collection of FIR filters that connect the n o  input array of signals from sampling circuit  20  to an n i  output array of points. That is, there are j×i FIR filters P j,i , that couple input point j to output point i. 
     Processor  220  is responsive to the n o  signals received by antennas  21  and sampled by circuit  20 , and it computes the coefficients of W, as disclosed above. W 0  is a matrix that defines the coefficients in the 0 th  tap of the j×i FIR filters, W 1  is a matrix that defines the coefficients in the 1 st  tap of the j×i FIR filters, etc. 
     The method of developing the parameters of pre-filter  30 , carried out in processor  220 , is shown in  FIG. 3 . Block  100  develops an estimate of the MIMO channel between the input points and the output point of the actual transmission channel. This is accomplished in a conventional manner through the use of training sequences. The estimate of the MIMO channel can be chosen to be limited to a given memory length, ν, or can be allowed to include as much memory as necessary to reach a selected estimate error level. That, in turn, depends on the environment and is basically equal to the delay spread divided by T s . 
     Following step  100 , step  110  determines the matrices, R nn , R xx , R xy , and R yy . The matrix R nn  is computed by first computing n=y−Hx and then computing the expected value E[n*n]—see equation (8) above. The matrix R xx  is computed from the known training sequences—see equation (7) above—(or is pre-computed and installed in processor  220 ). In may be noted that for uncorrelated inputs, R xx =I. The matrices R xy  and R yy  are computed from the known training sequences and the received signal or directly from H and R nn —see equations (5) and (6) above. 
     Following step  110 , step  120  computes R ⊥ =R xx −R xy R yy   −1 R yx , and the sub-matrix  R . From equation (10) is can be seen that  R  is obtained by dropping the first n i Δ rows and the last n i s rows of R ⊥ . 
     In accordance with the ITC approach, selecting some value of 0≦m≦N b  allows completion of the design process. Accordingly, following step  120 , step  130  chooses a value for m, develops φ-≡[0 n     i     ×n     i     m  I n     i    0 n     i     ×n     i     (N     b     −m) ] and carries out the computation of equation (13). Step  140  finally develops the coefficients of matrix W in accordance with equation (12), and installs the developed coefficients within filter  210 . 
     In accordance with the ONC approach, step  130  computes the matrix U in a conventional manner, identifies the unit vectors e i , and thus obtains the matrix B. Step As with the ITC approach, step  140  develops the coefficients of matrix W in accordance with equation (12), and installs the developed coefficients within filter  210 . 
     It should be understood that a number of aspects of the above disclosure, for example, those related to the ITC constraint and to the ONC constraint, are merely illustrative, and that persons skilled in the art may make various modifications that, nevertheless, are within the spirit and scope of this invention. For example, the pre-filter described above generates a multi-output signal, with the number of outputs being n i , that being also the number of transmitting antennas  11 . This, however, is not a limitation of the principles disclosed herein. The number of pre-filter outputs can, for example, be larger than n i , for example as high as n i (N b +1). The performance of the receiver will be better with more filter outputs, but more outputs require more FIR filters, more FIR filter coefficients, and correspondingly, a greater processing power requirement placed on processor  220 .