Electronic – How to achieve symmetrical analogue low-pass filtering

filterlow pass

I am experimenting with VCFs for an analogue music synthesiser. Initially I tried a 3-stage low-pass filter based on the sinewave-generator circuit in the LM13700 datasheet but having removed the oscillator, as per schematic below:

3-pass LM13700 low-pass filter

I find that its effect on a squarewave, as the filter frequency is swept, is not symmetrical. A series of scope traces shows the effect of the sweep:

LM13700 sweep

If the low-pass filter is meant to attenuate higher harmonics, I would expect to see the square soften to a sine whilst retaining its symmetry. Using a Max293 active switched-capacitor filter does give a more symmetrical sweep (ignore the apparent clipping, it's due to the input running to the rails):

Maxim sweep

Question:
Can anyone explain in simple terms why these filters have different effects on the waveshape symmetry (I assume it's something to do with phase shift in the analogue circuit) and whether the asymmetry can be avoided by using a different analogue design rather than having to use an active filter (with its associated downside of the clock frequency breaking through)?

Thanks

Best Answer

The two filters have similar amplitude responses, but different phase responses. In other words, different harmonics of the original square wave are being delayed (phase shifted) by various amounts by the first filter, but they have a more nearly constant delay (linear phase shift) in the second filter.

While the two waveforms look very different on an oscilloscope, they do actually have essentially the same harmonic content, and will sound very similar if not identical to the ear. Human hearing is actually very insensitive to phase relationships of this sort.

It's relatively difficult to build linear-phase filters in the analog domain, while it's quite easy to do in the digital domain, particularly with an FIR filter. But you need to decide whether the results differ enough in your application in order to make the effort.