Abstract:
A method for communication includes receiving signals at a receiver from multiple sources, including a target signal transmitted by a given transmitter, and estimating a channel response from the given transmitter to the receiver. A filter response is computed by taking a sum including a first autocorrelation of the received signals with a second autocorrelation of the channel response, and applying the sum to the estimated channel response. The filter response is applied to the received signals in order to recover the target signal.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
     This application claims the benefit of U.S. Provisional Patent Applications 61/117,639 and 61/117,644, both filed Nov. 25, 2008, which are incorporated herein by reference. 
    
    
     FIELD OF THE DISCLOSURE 
     The present disclosure relates generally to communication systems, and specifically to filtering of signals in a communication receiver. 
     BACKGROUND OF THE DISCLOSURE 
     Code division multiple access (CDMA) modulation is commonly used in cellular telephone networks and other wireless communication systems. For example, CDMA is used in the Wideband CDMA air interface developed by the 3rd Generation Project Partnership (3GPP), as well as other emerging communication standards; and the term “CDMA,” as used in the context of the present patent application, is intended to encompass all communication schemes that use this type of modulation. CDMA transmitters modulate data streams that are to be transmitted over the air using pseudo-random bit sequences, which are known as spreading codes. Each bit in the spreading code is commonly referred to as a “chip,” and the bit rate of the spreading code (which is typically much larger than the symbol rate of the transmitted data) is known as the chip rate. 
     Each user has a unique spreading code. Thus, multiple CDMA signals, using different spreading codes, can be transmitted simultaneously in the same spectral band. The receiver demodulates the received data signal by correlating the signal with the same spreading code that was used in transmission, in an operation that is known as despreading. Under ideal transmission conditions, the despreading operation will perfectly separate the desired data stream from all of the other CDMA signals in the spectral band. In practice, however, multi-path transmission channels and noise lead to loss of orthogonality between the signals (meaning that different CDMA signals may interfere with one another), which may, if uncorrected, result in errors in decoding the received data. 
     The description above is presented as a general overview of related art in this field and should not be construed as an admission that any of the information it contains constitutes prior art against the present patent application. 
     SUMMARY OF THE DISCLOSURE 
     Embodiments that are described hereinbelow provide methods and devices for filtering received signals. 
     There is therefore provided, in accordance with an embodiment, a method for communication, including receiving signals at a receiver from multiple sources, including a target signal transmitted by a given transmitter and estimating a channel response from the given transmitter to the receiver. A filter response is computed by taking a sum including a first autocorrelation of the received signals with a second autocorrelation of the channel response, and applying the sum to the estimated channel response. The filter response is applied to the received signals in order to recover the target signal. 
     In some embodiments, taking the sum includes computing a first Toeplitz matrix of the received signals and a second Toeplitz matrix of the channel response, and multiplying each of the first and second Toeplitz matrices by its respective transpose conjugate to find the first and second autocorrelations. Typically, the sum is a third matrix, and applying the sum includes inverting the third matrix and multiplying the inverted third matrix by a fourth matrix representing the estimated channel response. The sum may be a weighted sum and may include an adaptive noise factor. 
     In a disclosed embodiment, the signals include code division multiple access (CDMA) signals, and applying the digital filter includes applying an equalization filter in order to orthogonalize the received signals. 
     There is also provided, in accordance with an embodiment a receiver, including a front end, which is configured to receive and digitize signals from multiple sources, including a target signal transmitted by a given transmitter. A filter has a filter response and is configured to filter the received signals in order to recover the target signal. A controller is configured to estimate a channel response from the given transmitter to the receiver and to compute the filter response by taking a sum including a first autocorrelation of the received signals with a second autocorrelation of the channel response, and applying the sum to the estimated channel response. 
     The present disclosure will be more fully understood from the following detailed description of the embodiments thereof, taken together with the drawings, in which: 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a block diagram that schematically illustrates a CDMA receiver, in accordance with a disclosed embodiment; 
         FIG. 2  is a flow chart that schematically illustrates a method for filtering a data signal, in accordance with a disclosed embodiment; and 
         FIG. 3  is a flow chart that schematically illustrates a method for adjusting an adaptive filter, in accordance with a disclosed embodiment. 
     
    
    
     DETAILED DESCRIPTION OF EMBODIMENTS 
       FIG. 1  is a block diagram that schematically illustrates a CDMA receiver  20 , in accordance with a disclosed embodiment. In this simplified illustration, only those elements of the receiver that are necessary for an understanding of the present disclosure are shown in the figure, in abstract, block-level form. The complete design of the receiver will be apparent to those skilled in the art upon reading the description that follows. This sort of receiver is suitable for use, for example, as part of a mobile communication device, such as a cellular telephone, but the principles of its operation may similarly be applied in other sorts of communication devices and systems, including both mobile and stationary systems, operating in accordance with any applicable CDMA-based communication standard. 
     An analog front end (AFE)  22  amplifies, down-converts and digitizes incoming radio signals to generate a stream of digital samples of the incoming radio signals. The samples, taken at the chip rate, are referred to as “chips,” and the sequence of the samples may be represented as a chip vector:
 
 Y=Σ   b   H   b   X   b +η  (1)
 
wherein the sum is taken over all transmitting base stations b. H b  is the channel matrix (i.e., the channel response in matrix form) from base station b to the receiver, X b  is the transmitted vector of chips from base station b, and η is additive noise.
 
     A chip equalizer  24  filters the sample sequence in order to recover the target signal that was transmitted from the base station of interest, b=0, in the form of a chip vector X 0 . The output of the chip equalizer is a restored chip vector:
 
 {circumflex over (X)}   0   =W   +   Y   (2)
 
wherein W is the filter response matrix of the equalizer, and the “+” superscript indicates the Hermitian transpose. Equalizer  24  typically comprises a multi-tap time-domain digital filter, although the equalization function may alternatively be performed in the frequency domain.
 
     The optimal filter for equalizer  24  (in terms of minimizing the mean squared error in the restored chips) is given by:
 
 W =(Σ b   P   b   H   b   H   b   + +σ 2 ) −1   H   0   (3)
 
wherein σ 2  is the noise power, P b  is the power of base station b (relative to the power of its pilot signal), and the superscript “−1” represents matrix inversion. The term H b H b   +  represents the autocorrelation of the channel response for base station b. In common types of CDMA systems, such as WCDMA, the receiver measures the channel response by monitoring a pilot signal that the base station transmits, and comparing the received pilot signal to the known characteristics of the transmitted signal.
 
     Construction of a filter W in accordance with the formula (3) requires that the receiver track the signals from all base stations in order to estimate their channel responses, and also estimate the power of each base station and the noise power. This approach is not practical in many cases. The embodiments described hereinbelow provide alternative methods for computing equalization filters that achieve good performance at lower computational cost. 
     Returning now to  FIG. 1 , the equalized chip sequence of equation (2) is correlated with the appropriate spreading code by a despreader  26  (also referred to as a “dispreader”), which outputs a demodulated sequence of symbols. A decoder  28  processes the symbols to recover the actual data that was transmitted by the base station. 
     A controller  29  receives and processes data generated by the elements of the receiver in order to compute and update processing parameters, and outputs the updated parameters to the appropriate elements. Specifically, the controller comprises a filter adjustment module  27 , which computes the filter response to be applied by equalizer  24 , using methods that are described hereinbelow. For this purpose, the controller in some embodiments comprises a microprocessor, which is programmed in software to carry out these functions. Alternatively or additionally, some or all of the functions of controller  29  may be implemented using dedicated hardware circuits and/or other programmable components, such as a digital signal processor or programmable gate array. 
       FIG. 2  is a flow chart that schematically illustrates a method for filtering a data signal, in accordance with a disclosed embodiment. The method is described, for convenience and clarity, with reference to receiver  20 , as shown in  FIG. 1 , but it may likewise be implemented in receivers and communication devices of other types. In a receiving operation  30 , controller  29  receives data samples based on signals received by AFE  22 . The controller uses these samples for two purposes in the context of the present method: 
     1) The controller estimates the channel response H 0  for the base station currently serving the receiver, in a channel estimation operation  32 . As noted earlier, the channel response is estimated based on the pilot signals transmitted by the base station. For this purpose, controller  29  may, for example, apply methods described by Lohan et al., in “Highly Efficient Techniques for Mitigating the Effects of Multipath Propagation in DS-CDMA Delay Estimation,”  IEEE Transactions on Wireless Communications  4:1 (2005), which is incorporated herein by reference. The controller then computes the channel autocorrelation, H 0 H 0   + , in a channel autocorrelation operation  34 . For this purpose, the channel response may be expressed as a Toeplitz matrix, which is formed by concatenating successive rows containing the channel response vector, each row shifted by one time unit relative to the preceding row. The Toeplitz matrix H 0  is then multiplied by its Hermitian transpose H 0   + . Alternatively, other suitable methods may be used for computing the autocorrelation. 
     2) The controller computes the data autocorrelation YY +  over the received samples, in a data autocorrelation operation  36 . Again, this operation may be performed by arranging vectors of received data samples in a Toeplitz matrix, and then multiplying the Toeplitz matrix by its Hermitian transpose, or using other suitable methods of autocorrelation computation. 
     Controller  29  computes the channel and data autocorrelation results, and may then combine these results, in a summing operation  38 , to give a filter response for application by equalizer  24 :
 
 W =( YY   +   +λH   0   H   0   + ) −1   H   0   (4)
 
Here λ is a variable weighting factor, which may be set empirically. For example, the weighting factor may be set using the formula λ=YY + (0)/HH + (0), meaning that the channel and data autocorrelation components receive equal weights. Alternatively, other values for λ may also provide suitable results.
 
     For improved performance of the equalizer, however, controller  29  may optionally add an adaptive noise factor in the form of a scalar value C, also referred to as a “noise load,” to the diagonal elements of W in operation  38 . Computation of this noise factor, which varies adaptively over time in response to changes in the signal/noise ratio (SNR), is described hereinbelow with reference to  FIG. 3 . The resulting filter response is computed by applying the result of operation  38  to the estimated channel response H 0 , in an applying operation  39 . The filter response is then given by:
 
 W =( YY   +   +λH   0   H   0   +   +CI ) −1   H   0   (5)
 
wherein I is the identity matrix and, again, in accordance with an embodiment of the disclosure, λ may be set according to λ=YY + (0)/HH + (0), as noted above. Equalizer  24  applies this response in filtering the received data samples, as shown above in equation (2), in a filtering operation  40 .
 
       FIG. 3  is a flow chart that schematically illustrates a method for computing the adaptive noise factor C, in accordance with a disclosed embodiment. This method runs in a continual loop, since the noise power—and therefore the optimal value of C—may vary over time. The method provides a simple but efficient feedback mechanism that may be used by controller  29  in modifying the chip equalizer noise term. 
     The method of  FIG. 3  uses a number of variable parameters, including a noise fraction NF, a DIRECTION (indicating whether to increase or decrease NF in each cycle of the loop), and a previous signal/noise ratio (PSNR). The adaptive noise factor C at any time is given by the product of the current noise fraction NF with the initial magnitude of data autocorrelation:
 
 C=NF*YY   + (0)  (6)
 
Initially, NF is set to 0.01, DIRECTION is set to +1, and PSNR is set to 1, in an initialization operation  50 . Alternatively, other suitable initial values may be used.
 
     Controller  29  computes the filter response of equalizer  24  by inserting the current value of NF into equation (6), and inserting the resulting value of C into equation (5), in a filter construction operation  52 . Equalizer  24  applies this filter response to the data samples that it receives from AFE  22 , in a filtering operation  54 . Despreader  26  then despreads the filtered samples in order to extract the received data symbols, in a despreading operation  56 . 
     Controller  29  measures the deviation of the extracted symbols from their expected values in order to estimate a new SNR value, in a SNR estimation operation  58 . The controller may, for example, compute the SNR based on the difference between the extracted symbols from a received pilot signal and the symbols that are known to be transmitted in the pilot signal. Alternatively, the same sort of computation may be applied to signals transmitted over a High-Speed Downlink Packet Access (HSDPA) channel. A method of SNR computation that may be used in operation  58  is described, for example, in U.S. patent application Ser. No. 12/612,692, filed Nov. 5, 2009, entitled “Calculation of Soft Decoding Metrics,” whose disclosure is incorporated herein by reference. 
     The controller compares the new SNR value to the previous SNR value (PSNR), in a comparison operation  60 . If PSNR&lt;NSNR, then the direction of change of NF is switched in a redirection operation  62 , i.e., DIRECTION=−DIRECTION. The noise fraction is then adjusted, in an incrementation operation  64 :
 
 NF=NF+K *DIRECTION  (7)
 
wherein K is a constant factor, such as 0.02. NF is not allowed, however, to increase above a given upper bound or decrease below a given lower bound. For example, NF may be held between a minimum value of 0.01 and a maximum value of 0.2. Alternatively, other bounding values may be used.
 
     Controller  29  returns to operation  52  to construct a new filter response based on the adjusted NF value, and the method continues thenceforth. 
     Although equation (5) above illustrates the use of the adaptive noise factor C in a hybrid equalizer configuration, with a filter response based both on channel autocorrelation and data autocorrelation, this same sort of adaptive noise loading may be used in filters of other types. For example, the adaptive noise factor may be used in a data autocorrelation-based equalizer with the following response:
 
 W =( YY   +   +CI ) −1   H   0   (8)
 
     Alternatively, the adaptive noise factor may be used in a channel autocorrelation-based equalizer:
 
 W =( H   0   H   0   +   +CI ) −1   H   0   (9)
 
     In each case, different values of the parameters and bounds may be used in computing the increment to the noise fraction (NF) in operation  64 , but the basic method may remain the same. 
     Furthermore, although the embodiments above refer specifically to chip equalization, the principles of the methods and devices presented above may likewise be applied in other types of equalization filters. 
     It will thus be appreciated that the embodiments described above are cited by way of example, and that the present disclosure is not limited to what has been particularly shown and described hereinabove. Rather, the scope of the present disclosure includes both combinations and subcombinations of the various features described hereinabove, as well as variations and modifications thereof which would occur to persons skilled in the art upon reading the foregoing description and which are not disclosed in the prior art.