Abstract:
Systems and techniques for filtering digital samples are disclosed in which a number of filter coefficients are adapted, and the digital samples are filtered by applying one of the filter coefficients to a parameter, applying each remaining filter coefficient to one of the samples, and combining the parameter and the samples. The adaptation of the filter coefficients is a function of the combined parameter and digital samples. It is emphasized that this abstract is provided to comply with the rules requiring an abstract which will allow a searcher or other reader to quickly ascertain the subject matter of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or the meaning of the claims.

Description:
CROSS REFERENCE  
       [0001]    This application claims priority from application Ser. No. 10/081,857, filed Feb. 20, 2002, entitled “Adaptive Filtering with DC Bias Compensation” and assigned to the Assignee of the present invention. 
     
    
     
       BACKGROUND  
         [0002]    1. Field  
           [0003]    The present invention relates generally to communications systems, and more specifically, to systems and techniques for adaptive filtering with DC bias compensation.  
           [0004]    2. Background  
           [0005]    Communications systems are used for transmission of information from one device to another. The devices included in the communications systems typically have either a transmitter, a receiver, or both. The function of the transmitter is to encode information and modulate the encoded information into an analog signal suitable for transmission over a communications channel. The function of the receiver is to detect the analog signal in the presence of noise, demodulate the detected analog signal to recover the encoded information, and decode the information.  
           [0006]    In the process of demodulating the analog signal, the receiver typically performs an analog to digital conversion to obtain digital samples of the detected analog signal. The device used for this purpose is typically an analog-to-digital converter (ADC). Conceptually, this device operates by comparing the input voltage of the detected analog signal to a fixed reference voltage and quantizing the difference into a digital sample with a specified number of bits. The fixed reference voltage can be interpreted as the “zero” of the ADC, or equivalently, as the input signal voltage which translates to a “zero” for the digital sample.  
           [0007]    The reference voltage should always be constant. However, due to various practical factors like noise, tolerance of the ADC components, etc., the reference voltage is typically not fixed. This introduces a bias (possibly slowly time-varying) in the digital output. In the frequency domain, this bias causes a narrow noise peak near the zero frequency (DC) of the signal spectrum. Furthermore, some receiver configurations may introduce a bias in the detected analog signal even before the ADC.  
           [0008]    In receivers employing an adaptive digital filter, the DC bias may have a particularly undesirable effect. Since the adaptive filter shapes its frequency response based on the signal and noise power spectral densities, a narrow noise peak near the zero frequency constrains the adaptive filter to shape its response accordingly. This constraint results in a performance loss because the adaptive filter has fewer degrees of freedom with which to synthesize an optimal response at other frequencies.  
         SUMMARY  
         [0009]    In one aspect of the present invention, a method of filtering a plurality of samples includes adapting a plurality of filter coefficients, and filtering a plurality of samples by applying one of the filter coefficients to a parameter, applying each remaining filter coefficient to one of the samples, and combining the parameter and the samples, wherein the adaptation of the filter coefficients is a function of the combined parameter and samples.  
           [0010]    In another aspect of the present invention, a receiver includes an analog-to-digital converter configured to sample an analog signal to produce a plurality of samples, and a filter having a coefficient generator configured to adapt a plurality of filter coefficients, the filter being configured to apply one of the filter coefficients to a parameter, apply each of the remaining filter coefficients to one of the samples, and combine the parameter and the samples, the adaptation of the filter coefficients being a function of the combined parameter and samples.  
           [0011]    In yet another aspect of the present invention, a filter includes a delay element configured to serially receive a plurality of samples, a coefficient generator configured to adapt a plurality of coefficients, a first multiplier configured to multiply said one of the filter coefficients with the parameter, a second multiplier configured to multiply each remaining filter coefficient with one of the samples from the delay element, and an adder configured to sum the parameter and the samples, wherein the adaptation of the filter coefficients is a function of the summed parameter and samples.  
           [0012]    In a further aspect of the present invention, computer-readable media embodying a program of instructions executable by a computer program performs a method of adapting filter coefficients including adapting a plurality of filter coefficients, and filtering a plurality of samples by applying one of the filter coefficients to a parameter, applying each remaining filter coefficient to one of the samples, and combining the parameter and the samples, wherein the adaptation of the filter coefficients is a function of the combined parameter and samples.  
           [0013]    In yet a further aspect of the present invention, a filter includes means for adapting a plurality of filter coefficients, and means for filtering a plurality of samples by applying one of the filter coefficients to a parameter, applying each of the remaining filter coefficients to one of the samples and combining the parameter and the samples, wherein the adaptation of the filter coefficients is a function of the combined parameter and samples.  
           [0014]    It is understood that other embodiments of the present invention will become readily apparent to those skilled in the art from the following detailed description, wherein it is shown and described only exemplary embodiments of the invention by way of illustration. As will be realized, the invention is capable of other and different embodiments and its several details are capable of modification in various other respects, all without departing from the spirit and scope of the present invention. Accordingly, the drawings and detailed description are to be regarded as illustrative in nature and not as restrictive. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0015]    Aspects of the present invention are illustrated by way of example, and not by way of limitation, in the accompanying drawings in which like reference numerals refer to similar elements:  
         [0016]    [0016]FIG. 1 is a functional block diagram of a communications device employing an exemplary receiver;  
         [0017]    [0017]FIG. 2 is a functional block diagram of an exemplary adaptive filter which can be used with the receiver of FIG. 1;  
         [0018]    [0018]FIG. 3 is functional block diagram of a communications device employing an exemplary receiver with a DC notch filter; and  
         [0019]    [0019]FIG. 4 is a functional block diagram of a communications device employing an exemplary receiver arrangement capable of supporting multiple antennas. 
     
    
     DETAILED DESCRIPTION  
       [0020]    The detailed description set forth below in connection with the appended drawings is intended as a description of exemplary embodiments of the present invention and is not intended to represent the only embodiments in which the present invention can be practiced. The term “exemplary” used throughout this description means “serving as an example, instance, or illustration,” and should not necessarily be construed as preferred or advantageous over other embodiments. The detailed description includes specific details for the purpose of providing a thorough understanding of the present invention. However, it will be apparent to those skilled in the art that the present invention may be practiced without these specific details. In some instances, well known structures and devices are shown in block diagram form in order to avoid obscuring the concepts of the present invention.  
         [0021]    In an exemplary communications device, an adaptive filtering process can be performed which corrects for DC bias. This can be achieved by adapting a number of filter coefficients during the transmission of a known sequence from a remote source. One of the filter coefficients can then be applied to a parameter to produce a weighted parameter, and the remaining filter coefficients can be applied to the digital samples to produce a number of weighted digital samples. The weighted parameter can be combined with the weighted digital samples to produce estimates of the transmitted symbols. The adaptation of the filter coefficients can be performed using any classical least squares algorithm including a “least mean square” (LMS) algorithm, a “recursive least squares” algorithm (RLS), a direct least squares matrix inversion of an estimated autocorrelation matrix, or any other algorithm known in the art.  
         [0022]    [0022]FIG. 1 is a functional block diagram of a communications device employing an exemplary receiver. The communications device  100  includes an antenna  102  configured to receive a wireless transmission. Alternatively, the communications device  100  can be configured to receive a transmission by way of cable, fiber optic link, digital subscriber line, or any other communications medium known in the art.  
         [0023]    In the embodiment shown in FIG. 1, the transmission received by the antenna  102  can be provided to a receiver  104 . The receiver can be based on a heterodyne complex (I-Q) architecture. For ease of explanation, the exemplary receiver will be depicted functionally without reference to separate I (in-phase) and Q (quadrature) channels. The receiver 104 may have an analog front end (AFE)  106  which amplifies, filters and downconverts the transmission to an analog complex baseband signal. The analog baseband signal from the AFE  106  can be provided to an ADC  108  to produce digital complex baseband samples. The digital baseband samples from the ADC  108  can then be provided to an adaptive filter  110 .  
         [0024]    The adaptive filter  110  can be used to compensate for ISI which occurs as a result of the spreading of a transmitted symbol pulse due to the dispersive nature of the communications medium which results in an overlap of adjacent symbol pulses. The adaptive filter  110  may be implemented with a transversal filter, such as a “finite impulse response” (FIR) filter. Alternatively, the adaptive filter  110  can be implemented with a “decision feedback equalizer” (DFE), or any other filter known in the art.  
         [0025]    The adaptive filter  110  may be implemented with a multiple-tap delay line. The output of the taps can be weighted and summed to generate a “soft estimate” of the transmitted symbol. The tap coefficients can be adapted to maximize the Signal to Interference and Noise Ratio (SINR) of the symbols estimates at the filter&#39;s output. The adaptive filter  110  can use a prescribed algorithm, such as a “least mean squares” (LMS) algorithm, a “recursive least squares” (RLS) to estimate the tap coefficients, or any other algorithm known in the art. The “soft estimate” generated by the adaptive filter  110  can be used by a decision making device such as a slicer or a decoder (not shown).  
         [0026]    The exemplary communications device will be described from hereon with the assumption that the received transmission is sampled by the ADC  108  at a rate of one sample per symbol period T, and that the adaptive filter  110  is an T-spaced filter. These assumptions are made for illustrative purposes only, and those skilled in the art will readily appreciate that the inventive concepts described throughout can be extended to other sampling rates and filter tap spacings.  
         [0027]    The digital baseband samples from the ADC  108  can be represented by a stream of digital samples x(k) that contain the transmitted symbols y(k), ISI and noise. This stream {x(k)} can be filtered by the adaptive filter  110  to produce estimates ŷ(k) of the transmitted symbols. For an N-tap FIR adaptive filter, the symbol estimates ŷ(k) can be expressed as: 
           ŷ ( k )= H   H   X ( k ),  (1) 
         [0028]    where k is the temporal index, ŷ(k) is the estimate of the k-th transmitted symbol y(k), H is a column vector of length N containing the filter coefficients, the superscript  H  denotes the Hermitian operation, and X(k) is a column vector of length N containing N consecutive digital samples from the ADC  108 . The column vector H for the filter coefficients can be represented as:  
               H   =     [           h   0               h   1               h   2             ⋮             h     N   -   1             ]       ,           (   2   )                               
 
         [0029]    A common arrangement for the column vector X(k) for the digital samples with N being odd can be expressed as:  
                 X        (   k   )       =     [           x        (     k   -       N   -   1     2       )               ⋮             x        (     k   =       N   -   1     2       )             ]       ,           (   3   )                               
 
         [0030]    Those skilled in the art will appreciate that there could be a variety of other ways to construct the column vector X(k) for the digital samples.  
         [0031]    The standard criterion for optimizing the filter coefficients H of the adaptive filter  110  is by the mean square error (MSE) of the symbol estimates which can be expressed as: 
           e ( H )= E|y ( k ) −ŷ ( k )| 2 ,  (4) 
         [0032]    where E{. . . } denotes statistical expectation. Optimal performance in terms of maximizing signal-to-interference-and-noise ratio is generally achieved by minimizing the MSE. This can be accomplished by adapting the filter coefficients with a least square algorithm, or other known algorithm, using the pilot sequence in the transmission. Since the pilot sequence is known, a priori, the MSE can be minimized using the soft symbol estimates generated by the adaptive filter  110 .  
         [0033]    A typical LMS algorithm is a steepest stochastic gradient search algorithm that uses the instantaneous product of the error e(k)=y(k)−ŷ(k) and the digital baseband samples X(k) as an estimate of the MSE gradientand can be described as follows: 
           H ( k +1)= H ( k )+μ X ( k ) e ( k ) H ,  (5) 
         [0034]    Equation (5) represents an adaptation step of the typical LMS algorithm where μ is a gain constant (or adaptation constant) that regulates the speed and stability of adaptation and the steady state MSE performance of the filter. As can be seen from equation (5), the LMS algorithm can be implemented in a practical system without squaring, averaging, or differentiation.  
         [0035]    In at least one embodiment of the described communications device, a bias correction scheme can be implemented by the adaptive filter  110  to compensate for DC bias introduced by the AFE  106 , the ADC  108  and/or any other receiver component. The bias correction scheme can be implemented with a modified “minimum mean square error” (MMSE) computation from which a LMS algorithm can be derived.  
         [0036]    This approach to bias correction may provide certain advantages. By way of example, it does not require larger wordlengths of the baseband samples to remove a bias smaller than 1 LSB of the baseband samples after conversion from the analog domain to digital and it has the ability to track time varying bias.  
         [0037]    A feedback circuit employing an outer correction loop  112  may be used to control the clipping of the digital baseband samples by the ADC  108  should the DC bias become excessive. Since the ADC  108  uses a finite number of bits to represent the analog baseband signal, clipping may occur if the analog baseband signal falls outside the numerical range that can be represented with the specified number of bits. If the digital baseband samples are clipped, information may be lost irretrievably, thus reducing the performance of the adaptive filter.  
         [0038]    The outer correction loop  112  allows the degree of clipping to be controlled to an acceptable level. The design and implementation of the outer correction loop  112  is well known. For purposes of illustration, the outer correction loop  112  can be designed to monitor the DC bias at the output of the ADC  108 . The outer correction loop  112  sends a feedback a signal to the ADC  108  to compensate for the DC bias if its measured absolute value exceeds a predetermined threshold. The DC bias can be reduced by adjusting the fixed reference voltage of the ADC  108 . The adaptive filter  110  can then be used to remove any residual DC bias whose absolute value at the output of the ADC  108  does not exceed the preset threshold. By correcting the residual DC bias digitally in the adaptive filter  110 , the outer correction loop  112  does not need to be as stringent as those used in the past, thus allowing a superior design that achieves higher performance as well as a cheaper and more flexible implementation.  
         [0039]    The DC bias in the digital baseband samples can be modeled by adding a fixed complex number to the digital baseband samples from an ideal bias-free ADC as follows: 
           x ′( k )= x ( k )+ b,   (6) 
         [0040]    where x(k) denotes the digital baseband samples from an ideal bias-free ADC, b represents the DC bias, and x′(k) denotes the actual digital baseband samples generated by the ADC. Hence, if we ignore the presence of the bias in the digital samples, we have the traditional symbol estimator and its corresponding filter adaptation can be expressed as follows: 
           ŷ ( k )= H   H   X′ ( k ),  (7) 
           H ( k +1)= H ( k )+ X ′( k ) e ( k )*,  (8) 
         [0041]    This solution will suffer performance degradation. However, to correct the symbol estimates ŷ(k) for DC bias, the column vectors of the filter coefficients and digital baseband samples are augmented by one or more dimensions. This approach yields modified symbol estimates which can be represented as:  
                   y   ^          (   k   )       =         C   H          Z        (   k   )         =           [         H           λ         ]     H          [             X   ′          (   k   )               α         ]       =         H   H            X   ′          (   k   )         +       λ   *        α             ,           (   9   )                               
 
         [0042]    where λ is a new coefficient to optimize, α is a fixed parameter whose value is constant and not adapted, and the subscript * denotes complex conjugation. For good performance the fixed parameter α should be chosen to be similar in power level to the digital baseband samples. However, the choice of α is not critical and may take on any value depending on the particular application and overall design constraints.  
         [0043]    Considering the added dimension, a modified MSE computation can be represented as: 
           e ( C )= e ( H ,λ)= E|y ( k ) −ŷ ( k )| 2   =E|y ( k )− C   H   Z ( k )| 2   =E|y ( k )− H   H   X ′( k )−λ*α| 2 ,  (10) 
         [0044]    A modified LMS algorithm using a stochastic steepest descent search algorithm can then be employed to adapt the filter coefficients during the pilot sequence from the following algorithm derived from equation (9):  
                 e        (   k   )       =         y        (   k   )       -         C   H          (   k   )            Z        (   k   )           =         y        (   k   )       -         H        (   k   )       H            X   ′          (   k   )         -         αλ   *          (   k   )            C        (     k   +   1     )           =         C        (   k   )       +     μ                   Z        (   k   )              e        (   k   )       H         =     {             H        (     k   +   1     )       =       H        (   k   )       +     μ                     X   ′          (   k   )              e        (   k   )       H                       λ        (     k   +   1     )       =       λ        (   k   )       +       μαe        (   k   )       H               }             ,           (   11   )                               
 
         [0045]    where  
         [0046]    C H (k)=[H λ];  
         [0047]    Z(k)=[x′(k) α] H ;  
         [0048]    e(k) is the error, which is the difference between y(k) (known a priori) and ŷ(k); and  
         [0049]    μ is the gain constant (or an adaptation constant).  
         [0050]    It is through the modified symbol estimates and modified LMS algorithm of equations (9) and (11) that the totality of the loss may be recovered.  
         [0051]    An exemplary adaptive filter that uses equation (8) to generate symbol estimates ŷ(k) is illustrated in FIG. 2. A coefficient generator  202  can be used to compute and update the filter coefficients, including the new coefficient λ, during transmission of the pilot sequence, using the modified LMS algorithm of equation (11).  
         [0052]    A tapped delay line  204  can employ delay elements, such as shift registers, arranged in series to temporarily store the serial digital baseband samples from the ADC  108  (see FIG. 1). The generation of the soft symbol estimates ŷ(k) entails multiplying the output of each delay element with a filter coefficient using multipliers  206  (one for each delay element output) and multiplying the fixed parameter α with the complex conjugate of the new adapted coefficient λ with a multiplier  208 . The outputs of the multipliers  206  and the multiplier  208  can then be summed with an adder  210  to produce the soft symbol estimates ŷ(k).  
         [0053]    During the adaptation of the filter coefficients, the output of each delay element and the soft symbol estimates ŷ(k) are fed back to the coefficient generator  202 . A locally generated pilot sequence y(k) can be provided to the coefficient generator  202  from a pilot sequence generator (not shown). The gain constant μ and the fixed parameter α can be provided to the coefficient generator  202  from a processor, memory, or any other device. From these inputs, the modified LMS algorithm can be used to adapt the filter coefficients during the pilot sequence of the transmission.  
         [0054]    [0054]FIG. 3 is a functional block diagram of a communications device employing an exemplary receiver with a DC notch filter. A DC notch filter  302  may be placed at the input to the adaptive filter  110  to facilitate the convergence of the modified LMS algorithm by reducing large values of DC bias that might otherwise slow down the convergence of the filter coefficients due to an increase in the eigenvalue spread of the signal autocorrelation matrix. For the purposes of illustration, the DC notch filter  302  is shown at the input to the adaptive filter  110 . However, as those skilled in the art will readily appreciate, the DC notch filter  302  could be placed at any other point in the receiver path if said point is before the adaptive filter.  
         [0055]    There are various ways in which a DC notch filter  302  can be implemented, either digitally or with analog components. For example, the DC notch filter  302  may be implemented as an analog filter in the AFE  106  or as a digital filter after the ADC  108 . It should be noted that the use of the DC notch filter  302  by itself, or together with an outer correction loop  112 , may not completely remove the DC bias because any realizable filter may have residual bias at its output. However, when used in combination with an adaptive filter employing the modified LMS algorithm of equation (11), substantially no loss in receiver performance should be experienced due to DC bias.  
         [0056]    [0056]FIG. 4 is a functional block diagram of a communications device with an exemplary receiver architecture supporting multiple antennas. In this exemplary embodiment of a communications device, multiple antennas  402 ,  404 , and  406  can be arranged for diversity reception in order to mitigate the effects of multipath interference and improve overall system throughput. Each antenna has associated with it a respective AFE  408 ,  410 , and  412 , an ADC  414 ,  416 , and  418 , and an adaptive filter  420 ,  422 , and  424 . Further, each ADC  414 ,  416 , and  418  can be respectively provided with an outer correction loop  426 ,  428 ,  430  to control clipping caused by excessive DC bias. Each of the ADCs  414 ,  416 , and  418  may also have a DC notch filter  432 ,  434 , and  436  positioned at its respective output. Alternatively, the DC notch filters can be located anywhere in the receive path before the adaptive filter and can be implemented as an analog or digital filter.  
         [0057]    The outputs of the adaptive filters  420 ,  422 , and  424  are combined across the antennas to estimate the k-th transmitted symbol y(k). The formulation of equations (1), (2) and (3) still hold with the column vectors of the filter coefficients H and the digital baseband samples x(k) now being represented as follows:  
               H   =     [           H   1               H   2             ·             H   A           ]       ,                  X        (   k   )       =     [             X   1          (   k   )                   X   2          (   k   )               ·               X   A          (   k   )             ]       ,           (   12   )                               
 
         [0058]    where A is the number of antennas, and X i  (k) for i=1 . . . A represents the digital baseband samples from antenna i stacked in a vector of length N. It should be noted that the column vectors H and X(k) both have a length NA.  
         [0059]    Since the DC bias is, in general, different for each antenna, the representative equation for the digital baseband samples input to the adaptive filters becomes: 
           X   i ′( k )= x   i ( k )+ b   i′ ,  (13) 
         [0060]    for i=1 . . . A, where the x i (k) denote digital baseband samples from an ideal bias-free ADC and the x′ i (k) denote the actual digital baseband samples with DC bias that are input to the adaptive filters  420 ,  422  and  424 .  
         [0061]    It follows that the column vector for the actual digital baseband samples input into each of the adaptive filters is:  
                   X   ′          (   k   )       =         X        (   k   )       +     [                     b   1             ·             b   1           }        N                         b   2             ·             b   2           }        N                         b   A             ·             b   A           }        N           ]       =         X        (   k   )       +     MB                 with                 B       ≡     [           b   1               b   2             ·             b   A           ]           ,           (   14   )                               
 
         [0062]    Each row of the matrix M consist of all zeros except for a 1 in the appropriate position to select the DC basis corresponding to that antenna out of the column vector for the DC basis B. By way of example, if N=3 and A=2,  
               M   =     [         1       0           1       0           1       0           0       1           0       1           0       1         ]       ,           (   15   )                               
 
         [0063]    For the multiple antenna case, and using the newly defined H and X′(k) (equation (12)), modified model, cost function and LMS algorithm (equations (9)-(11) applies directly. Note that there is only one bias parameter to adapt, even for the case of multiple antennas.  
         [0064]    Those skilled in the art will apprecite that the various illustrative logical blocks, modules, circuits, and algorithms described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeabiltiy of hardware and software, various illustrative components, blocks, modules, circuits, and algorithms have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.  
         [0065]    The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.  
         [0066]    The methods or algorithms described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.  
         [0067]    The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.  
         [0068]    While the specification describes particular embodiments of the present invention, those of ordinary skill can devise variations of the present invention without departing from the inventive concept.