Comb filter

From Wikipedia, the free encyclopedia

In signal processing, a comb filter adds a delayed version of a signal to itself, causing constructive and destructive interference. The frequency response of a comb filter consists of a series of regularly-spaced spikes, giving the appearance of a comb.

Comb filters exists in two different forms, feedforward and feedback; the names refer to the direction in which signals are delayed before they are added to the input.

Comb filters may be implemented in discrete time or continuous time; this article will focus on discrete-time implementations; the properties of the continuous-time comb filter are very similar.

Contents

[edit] Feedforward form

Feedforward comb filter structure
Enlarge
Feedforward comb filter structure
Feedforward magnitude response for various positive values of α
Enlarge
Feedforward magnitude response for various positive values of α
Feedforward magnitude response for various negative values of α
Enlarge
Feedforward magnitude response for various negative values of α

The general structure of a feedforward comb filter is shown on the right. It may be described by the following difference equation:

\ y[n] = x[n] + \alpha x[n-K]

where K is the delay length (measured in samples), and α is a scaling factor applied to the delayed signal. If we take the Z transform of both sides of the equation, we obtain:

\ Y(z) = (1 + \alpha z^{-K}) X(z)

We define the transfer function as:

\ H(z) = \frac{Y(z)}{X(z)} = 1 + \alpha z^{-K} = \frac{z^K + \alpha}{z^K}

[edit] Frequency response

To obtain the frequency response of a discrete-time system expressed in the Z domain, we make the substitution z = ejω. Therefore, for our feedforward comb filter, we get:

\ H(e^{j \omega}) = 1 + \alpha e^{-j \omega K}

Often of interest is the magnitude response, which ignores phase. This is defined as:

\ | H(e^{j \omega}) | = \sqrt{\Re\{H(e^{j \omega})\}^2 + \Im\{H(e^{j \omega})\}^2}

In the case of the feedforward comb filter, this is:

\ | H(e^{j \omega}) | = \sqrt{(1 + \alpha^2) + 2 \alpha \cos(\omega K)}

Notice that the (1 + α2) term is constant, whereas the 2αcos(ωK) term varies periodically. Hence the magnitude response of the comb filter is periodic.

The graphs to the right show the magnitude response for various values of α, demonstrating this periodicity. Some important properties:

  • The response periodically drops to a local minimum (sometimes known as a notch), and periodically rises to a local maximum (sometimes known as a peak).
  • The levels of the maxima and minima are always equidistant from 1.
  • When \alpha = \pm 1, the minima have zero amplitude. In this case, the minima are sometimes known as nulls.
  • The maxima for positive values of α coincide with the minima for negative values of α, and vice versa.

[edit] Pole-zero interpretation

Looking again at the Z-domain transfer function of the feedforward comb filter:

\ H(z) = \frac{z^K + \alpha}{z^K}

we see that the numerator is equal to zero whenever zK = − α. This has K solutions, equally spaced around a circle in the complex plane; these are the zeros of the transfer function. The denominator is zero at zK = 0, giving K poles at z = 0. This leads to a pole-zero plot like the ones shown below.

Pole-zero plot of feedfoward comb filter with K = 8 and α = 0.5
Enlarge
Pole-zero plot of feedfoward comb filter with K = 8 and α = 0.5
Pole-zero plot of feedfoward comb filter with K = 8 and α =  − 0.5
Enlarge
Pole-zero plot of feedfoward comb filter with K = 8 and α = − 0.5


[edit] Feedback form

Feedback comb filter structure
Enlarge
Feedback comb filter structure
Feedback magnitude response for various positive values of α
Enlarge
Feedback magnitude response for various positive values of α
Feedback magnitude response for various negative values of α
Enlarge
Feedback magnitude response for various negative values of α

Similarly, the general structure of a feedback comb filter is shown on the right. It may be described by the following difference equation:

\ y[n] = x[n] + \alpha y[n-K]

If we rearrange this equation so that all terms in y are on the left-hand side, and then take the Z transform, we obtain:

\ (1 - \alpha z^{-K}) Y(z) = X(z)

The transfer function is therefore:

\ H(z) = \frac{Y(z)}{X(z)} = \frac{1}{1 - \alpha z^{-K}} = \frac{z^K}{z^K - \alpha}

[edit] Frequency response

If we make the substitution z = ejω into the Z-domain expression for the feedback comb filter, we get:

\ H(e^{j \omega}) = \frac{1}{1 - \alpha e^{-j \omega K}}

The magnitude response is as follows:

\ | H(e^{j \omega}) | = \frac{1}{\sqrt{(1 + \alpha^2) - 2 \alpha \cos(\omega K)}}

Again, the response is periodic, as the graphs to the right demonstrate. The feedback comb filter has some properties in common with the feedforward form:

  • The response periodically drops to a local minimum and rises to a local maximum.
  • The maxima for positive values of α coincide with the minima for negative values of α, and vice versa.

However, there are also some important differences, due to the fact that the magnitude response has a term in the denominator:

  • The levels of the maxima and minima are no longer equidistant from 1.
  • The filter is only stable if | α | is strictly less than 1. As can be seen from the graphs, as | α | increases, the amplitude of the maxima rises increasingly rapidly.

[edit] Pole-zero interpretation

Looking again at the Z-domain transfer function of the feedback comb filter:

\ H(z) = \frac{z^K}{z^K - \alpha}

This time, the numerator is zero at zK = 0, giving K zeros at z = 0. The denominator is equal to zero whenever zK = α. This has K solutions, equally spaced around a circle in the complex plane; these are the poles of the transfer function. This leads to a pole-zero plot like the ones shown below.

Pole-zero plot of feedback comb filter with K = 8 and α = 0.5
Enlarge
Pole-zero plot of feedback comb filter with K = 8 and α = 0.5
Pole-zero plot of feedback comb filter with K = 8 and α =  − 0.5
Enlarge
Pole-zero plot of feedback comb filter with K = 8 and α = − 0.5

[edit] Continuous-time comb filters

Comb filters may also be implemented in continuous time. The feedforward form may be described by the following equation:

\ y(t) = x(t) + \alpha x(t - \tau)

and the feedback form by:

\ y(t) = x(t) + \alpha y(t - \tau)

where τ is the delay (measured in seconds).

They have the following frequency responses, respectively:

\ H(\omega) = 1 + \alpha e^{-j \omega \tau}
\ H(\omega) = \frac{1}{1 - \alpha e^{-j \omega \tau}}

Continuous-time implementations share all the properties of the respective discrete-time implementations.

[edit] Applications

Comb filters are used in a variety of signal processing applications. These include:

  • 2D and 3D comb filters implemented in hardware (and occasionally software) for NTSC television decoders. The filters work to reduce artifacts such as dot crawl.