All pass filter design with 180 degrees high phase lead

The links you've posted are exactly what you request.
Modifying all-pass filters is possible, there are good books with calculation examples like
"Filters" by Johnson, Johnson and Moore (approx 80's decade).
Not suitable for the faint-hearted though. Inverse Chebyshev's are real fun.
 
If you look carefully, the Rod Elliott schematics dont give what I need.
The links are either of
a) 0 degrees at lows and -180 at highs
b) +180 degrees at lows and 0 degrees at high
If you note, the lows are always leading the highs by 180 degrees, i need exactly the reverse, I need the highs to lead the lows by 180 degrees. It means one of the belows
a) 0 degrees at lows and 180 degrees at highs
b) -180 degrees at lows and 0 degrees at highs.
I would appreciate if someone could help.

And putting and inverter on all-pass does not help.

Thanks,
WA
 
What you want asks for a filter with a right-half-plane pole and a left-half-plane zero. Unfortunately, any circuit with a right-half-plane pole is unstable. That is, if you would try to build such a thing, you would find that you had made a latch or a Schmitt trigger instead of an all-pass filter.

So all in all, you are asking for something that is physically impossible.
 
In post #3, your requirement b) is -180 degrees at lows, 0 degrees at highs>

From MT-20 description of First Order All-Pass, " If the function is a simple RC high pass (Figure 1A), the circuit has a phase shift that goes from −180° at 0 Hz. and
0°at high frequency"

How is that not a match to your b) requirement?
 

Attachments

  • all-pass2.jpg
    all-pass2.jpg
    365.5 KB · Views: 247
Last edited:
Probably, when we look at simple filters.

However I thought subtractive filters or some combination of standard filters could produce the phase response. I was looking at help in this direction
The group delay of a causal all-pass filter cannot be negative (basic time-travel argument). All physical filters are causal. Group delay is the negative of the rate of change of phase with frequency, so that phase can never increase with frequency in an all-pass filter.

Which is just another way of saying the all-pass poles and zeroes are negatives of each other and poles cannot be on the RHS as thats exponential blow-up and unstable. Thus a physical all-pass filter has poles on the left, zeroes on the right, and phase inexorably decreasing with frequency.

Attempting to solve the problem with a Hilbert Transform to flip to negative frequency hits the snag that Hilbert Transforms are not causal.

One approach to designing all-pass filters is to aim for a specific group-delay response, for instance you can even out the delay of some other filter so that its flat whatever band if you want. The price is a constant extra delay due to the fact you can only add more group delay. If you then ignore this constant delay you can have any phase-relationship you want, but relative to a delayed version of the input, not to the actual input.

This is basically pretending to travel in time so that the casual filter looks non-causal. This if fine for playback, but won't wash if the filters part of some feedback system. FIR digital filters for example are usually notionally non-causal, until you remember the delay needed to physically realize one.


Or put another way a non-casual filter plus a constant delay is sometimes casual and thus physically realizable.


Phew, I think I got all that right...


So I think a practical result is that you can convert your existing requirements for phase into group-delay domain, add enough delay to make the group delay non-negative, and then implement an all-pass that fulfills that specfication. It will then look like the filter you actually want, except for some extra constant delay.


Don't expect it to work all the way down to DC either.


And for some applications the delay is going to break things anyway.
 
Wonderfulaudio, what do you want to use your physically unrealizable filter for?

When you post that information, maybe someone can come up with an alternative that is physically realizable. Mark already did so by proposing to add a fixed delay, but maybe there are other alternatives.
 
If your simulation is returning the inverse of what the tutorial says it should, then what do you think is wrong?

Perhaps start by checking which point in the circuit you are using as the reference phase input?

I'm assuming your post correction is the result of reading the tutorial...

I have played around with VituixCAD and another online spice tool and both gave the same phase response. I feel the AD paper (MT-202.pdf) you referred has a typo.
Pls review my schematic and tell me what to change and I shall do so.
I edited the post to upload the attachment. I have read that paper as well as Rod Eliott's all-pass schematic web page before starting this thread.
 
I have played around with VituixCAD and another online spice tool and both gave the same phase response. I feel the AD paper (MT-202.pdf) you referred has a typo.
Pls review my schematic and tell me what to change and I shall do so.
I edited the post to upload the attachment. I have read that paper as well as Rod Eliott's all-pass schematic web page before starting this thread.

No, the paper contains no errors. There are plenty of other examples of the same topology and results on line. You are having a simulation problem. Phase is always measured relative to a reference. If your results are inverted you likely have the reference and measurement points swapped.

But I agree with other posters, go back to the beginning and post exactly why you want this and what you are trying to do, perhaps we could help if we knew more.
 
There is nothing wrong with the simulated phase response, the phase decreases with frequency as it is supposed to in a first-order all-pass. I haven't read the paper, but I guess the people who wrote it just calculate the phase modulo 360 degrees, as you can't see any difference between a sine wave shifted -180 degrees and +180 degrees (or +540 degrees for that matter).

Anyway, it would be good to know what this thing is meant for, so we can start thinking about realizable alternatives.
 
Thank you all for your detailed inputs especially Mark for the detailed explanation. I am not from electronics background and have trouble grasping poles, zeros causality and transforms.

The application is for a beam forming array where minimal phase shift is needed for correct acoustic summation. I have a 2nd order active low pass, (op-amp) for each driver, whose phase I want to correct or at-least minimize. The acoustic summation in the application is most sensitive to phase and hence I am after nullifying it or minimizing it.
 
The usual analogue filters (the ones without any all-pass sections and without delay lines or other exotic parts) are minimum phase, which means they have the smallest possible phase shift for a given magnitude response. Attempts to further reduce their phase shift while keeping the magnitude response the same will therefore always result in unrealizable filters.

Do you really need less-than-minimum phase shifts or do you only need matching phase shifts between various paths?

If you use Linkwitz-Riley low-pass filters, you can make all-pass filters that have exactly the same phase response, except for the effects of tolerances and such. An n-th order Linkwitz-Riley has the same phase response as an n/2-th order all-pass with Butterworth pole positions and the same bandwidth as the Linkwitz-Riley. So a second-order Linkwitz-Riley at 1 kHz has the same phase response as a 1 kHz first-order all-pass, for example.
 
Last edited:
> just calculate the phase modulo 360 degrees

+1. I ran it in old PSpice and got the same Twilight-Zone "answer"-- it time-jumps and claims a leading response; implying it outputs the *next* sine cycle before it happens.

> beam forming

Oddly, in *microwave* beam-forming, we "can" shift time by making the feed-lines a few inches different lengths. But equivalent shifts in audio are 1000s of feet of wire. And before massive processors, audio delay was limited and costly.
 
When you want to approximate a pure delay without going discrete time (digital or bucket brigade device), you could use a chain of analogue all-pass filters, preferably with Bessel or equiripple delay pole positions. It may be inconvenient, but unlike the original question, it's not impossible.
 
Hi,

I am looking for an all pass filter that has
0 degrees shift at low, 90 degrees lead at center frequency and 180 degrees lead at the highs.
Is there any way the schematic at Rod's site can be modified?
Figure 7.5 at Active Filters

https://sound-au.com/articles/af-f75.gif

Thanks and Regards,
WA

I don't think you can achieve that phase respopnse using IIR digital, or analog filters. For those types, phase must overall "decrease" as frequency increases and you want the opposite. Only FIR filters can have that phase behavior over a wide frequency range, and to do so they cause a pure delay so that the overall filter is causal.

Edit: I think the post from Mark Tillotson above is saying the same thing.
 
Last edited: