View Single Post
  #16 (permalink)  
Old 03-07-2006, 08:00 PM
Al Clark
Guest
 
Posts: n/a
Default Re: Odd length Hilbert FIR Implementation

Jerry Avins <[email protected]> wrote in news:[email protected]:

> Al Clark wrote:
>
> ...
>
>> Hilbert transformers are very easy using the odd length FIR filter
>> method.
>>
>> This is illustrated in Rick Lyon's book: Understanding Digital Signal
>> Processing (second edition).
>>
>> Basically you create antisymmetric coefficients around the center of
>> your FIR. The output of this filter with be the Q part. You can take
>> the center tap of the delay line to get the I part.
>>
>> The catch to hilbert transformers of this type is that the FIR will
>> be a bandpass. If you need a wide hilbert transformer, you need a
>> long FIR. This makes some sense if you think about it. How would you
>> delay to create 90 degrees at DC (about an infinite number of taps).

>
> Is any kind of realizable Hilbert transformer /not/ a bandpass?


The even length FIR does not place a zero at PI. I never use these since
the In Phase tap would be 1/2 of a delay unit.


>>
>> The other catch to hilbert transformers is that the amplitude
>> response of the Q section will not be exactly 1. It will always have
>> some ripple. You extend the length to improve both the frequency
>> response and bandwidth. The FIR can be created using a windowing
>> method or remez exchange. The windowing method has an interesting
>> property in that 1/2 of the coefficients are 0 anbd therefore you can
>> omit them from your calculation. The center of the hilbert bandpass
>> will be 1/4 the sampling rate. I use Kaiser windows when using the
>> window method.

>
> A Nuttall window works very well too. I think the ripple is smaller
> except maybe near the ends of the passband.


I'll have to check this out.


>
>> The trick I
>> learned recently is that the there will be the same number of 0
>> values for a filter length of 4n-1 as 4n+1. Therefore you might
>> create a 4n+1 filter and then truncate to 4n-1 length. I got better
>> results in my last application for exactly the same computation
>> requirements.
>>
>> The remez exchange will have non zero vaues for each tap, but may
>> yield a flatter response for a wider bandwidth.

>
> If the taps are designated -i to +i with i=0 in the middle, then the
> even tap coefficients are zero, and the odd coefficients are
> proportional to 1/i (including the sign of i) before the window is
> applied. There's a neat formula for the scale factor that I forget,
> but it's easily computed from the gain of a signal at Fs/4.
>
> The three-tap case is interesting. It is a (not terribly good)
> differentiator with 90 degree phase shift.
>
>> I use hilbert transformers all the time to make detectors, since
>> SQRT(I^2 + Q^2) is the magnitude. In many cases, I skip the SQRT
>> since a comparision to a known value might be all that is important
>> (MS vs RMS)

>
> Jerry




--
Al Clark
Danville Signal Processing, Inc.
--------------------------------------------------------------------
Purveyors of Fine DSP Hardware and other Cool Stuff
Available at http://www.danvillesignal.com
Reply With Quote