From: Jerry Avins on 7 Aug 2010 10:48 On 8/7/2010 12:33 AM, Vladimir Vassilevsky wrote: > > > jungledmnc wrote: >> Thanks. Could you please point me to some keywords to search for? > > The keyword is DIY. A +/-45 degree IIR phase shifter is typical numeric > optimization problem (minimizing error vector magnitude). For the audio > purposes, you will likely need a filter of the order of 6...8. I think the necessary order depends on the effective bandwidth. Using analog circuits to cover the telephone voice decade (300 .. 3000 Hz) three all-passes per channel are enough. The overall phase shift increases steadily with frequency -- each all-pass section ultimately adds 180 degrees -- but the difference remains close to 90 degrees where it counts. Parallel all-pass chains are superior to a HT in one channel and a delay in the other because of the effects of ripple in the HT approximation. I think I remember that Clay Turner wrote an article on the design of parallel IIR chains. Perhaps he will point you to it. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
From: robert bristow-johnson on 7 Aug 2010 11:02 On Aug 6, 6:01 pm, Vladimir Vassilevsky <nos...(a)nowhere.com> wrote: > jungledmnc wrote: > > Hi, > > I want to create a frequency shifter for audio. First I need to get an > > analytical signal via a hilbert transformer. I started by checking out how > > long the Hilbert FIR would be. Unfortunately I ended with 20ms, which seems > > to be related to -3dB at 50Hz (1/0.02). Isn't there another way to do that? > > I mean 20ms is a relatively long delay for realtime processing and also 800 > > taps would need relatively lots of CPU power. > > Don't use Hilbert FIR. Use IIR allpass filter. > On Aug 7, 12:33 am, Vladimir Vassilevsky <nos...(a)nowhere.com> wrote: > ... A +/-45 degree IIR phase shifter is typical numeric > optimization problem (minimizing error vector magnitude). For the audio > purposes, you will likely need a filter of the order of 6...8. for a broadbanded frequency shifter, i am not very confident that you can do this; accomplish a reasonably flat +/- pi/4 phase shift over several octaves of audio, with an 8th-order IIR APF. in fact, i just don't believe it. do you mean some linear phase + pi/4 and the same linear phase - pi/4? r b-j
From: Vladimir Vassilevsky on 7 Aug 2010 11:12 Jerry Avins wrote: > On 8/7/2010 12:33 AM, Vladimir Vassilevsky wrote: > >> jungledmnc wrote: >> >>> Thanks. Could you please point me to some keywords to search for? >> >> >> The keyword is DIY. A +/-45 degree IIR phase shifter is typical numeric >> optimization problem (minimizing error vector magnitude). For the audio >> purposes, you will likely need a filter of the order of 6...8. > > > I think the necessary order depends on the effective bandwidth. Using > analog circuits to cover the telephone voice decade (300 .. 3000 Hz) > three all-passes per channel are enough. The overall phase shift > increases steadily with frequency -- each all-pass section ultimately > adds 180 degrees -- but the difference remains close to 90 degrees where > it counts. The goal is minimizing total error vector rather then just the error of phase. So the filters don't have to be exactly allpass. This provides for additional degree of freedom; you may get by lower orders. > Parallel all-pass chains are superior to a HT in one channel and a delay > in the other because of the effects of ripple in the HT approximation. I > think I remember that Clay Turner wrote an article on the design of > parallel IIR chains. Perhaps he will point you to it. Clay presented neat idea of using the same FIR filter in +45 and -45 paths of HT, so the magnitude in both channels is identical by design. However I am unaware of IIR methods other then bruteforce optimization. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
From: Jerry Avins on 7 Aug 2010 11:31 On 8/7/2010 11:12 AM, Vladimir Vassilevsky wrote: > > > Jerry Avins wrote: > >> On 8/7/2010 12:33 AM, Vladimir Vassilevsky wrote: >> >>> jungledmnc wrote: >>> >>>> Thanks. Could you please point me to some keywords to search for? >>> >>> >>> The keyword is DIY. A +/-45 degree IIR phase shifter is typical numeric >>> optimization problem (minimizing error vector magnitude). For the audio >>> purposes, you will likely need a filter of the order of 6...8. >> >> >> I think the necessary order depends on the effective bandwidth. Using >> analog circuits to cover the telephone voice decade (300 .. 3000 Hz) >> three all-passes per channel are enough. The overall phase shift >> increases steadily with frequency -- each all-pass section ultimately >> adds 180 degrees -- but the difference remains close to 90 degrees >> where it counts. > > The goal is minimizing total error vector rather then just the error of > phase. So the filters don't have to be exactly allpass. This provides > for additional degree of freedom; you may get by lower orders. > >> Parallel all-pass chains are superior to a HT in one channel and a >> delay in the other because of the effects of ripple in the HT >> approximation. I think I remember that Clay Turner wrote an article on >> the design of parallel IIR chains. Perhaps he will point you to it. > > Clay presented neat idea of using the same FIR filter in +45 and -45 > paths of HT, so the magnitude in both channels is identical by design. > However I am unaware of IIR methods other then bruteforce optimization. There are symmetries that can be exploited. Once symmetry constraints are applied. t relatively simple one-decade case becomes dependent on a single parameter that trades phase ripple for bandwidth. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
From: robert bristow-johnson on 7 Aug 2010 12:13
On Aug 7, 11:12 am, Vladimir Vassilevsky <nos...(a)nowhere.com> wrote: > Jerry Avins wrote: > > On 8/7/2010 12:33 AM, Vladimir Vassilevsky wrote: > > >> jungledmnc wrote: > > >>> Thanks. Could you please point me to some keywords to search for? > > >> The keyword is DIY. A +/-45 degree IIR phase shifter is typical numeric > >> optimization problem (minimizing error vector magnitude). For the audio > >> purposes, you will likely need a filter of the order of 6...8. > > > I think the necessary order depends on the effective bandwidth. Using > > analog circuits to cover the telephone voice decade (300 .. 3000 Hz) > > three all-passes per channel are enough. The overall phase shift > > increases steadily with frequency -- each all-pass section ultimately > > adds 180 degrees -- but the difference remains close to 90 degrees where > > it counts. > > The goal is minimizing total error vector rather then just the error of > phase. So the filters don't have to be exactly allpass. This provides > for additional degree of freedom; you may get by lower orders. > > > Parallel all-pass chains are superior to a HT in one channel and a delay > > in the other because of the effects of ripple in the HT approximation. I > > think I remember that Clay Turner wrote an article on the design of > > parallel IIR chains. Perhaps he will point you to it. > > Clay presented neat idea of using the same FIR filter in +45 and -45 > paths of HT, so the magnitude in both channels is identical by design. > However I am unaware of IIR methods other then bruteforce optimization. Clay's idea (similar to one that i have had previously and i've seen this +/- 45 degree thing somewhere else, maybe even a grad school textbook) is FIR, not IIR. i haven't come to a conclusion regarding this, but in a regular 90- degree delayed Hilbert transformer, half-band symmetry can be used to eliminate (set to zero) every other FIR tap (except the center tap). i am wondering if half-band symmetry can also be used with the 45 degree delayed Hilbert. Jerry, Clay, do you know offhand? i s'pose i can look at this and work it out. r b-j |