[LAD] Software sound

gordonjcp at gjcp.net gordonjcp at gjcp.net
Sun Aug 31 20:00:08 UTC 2014

On Sun, Aug 31, 2014 at 07:42:48PM +0000, Fons Adriaensen wrote:
> On Sun, Aug 31, 2014 at 08:13:01PM +0100, W.Boeke wrote:
> > Sorry Fons, if you google "moog filter schematic" you will
> > see 3 stages, where a stage is a capacitor in series with 2
> > transistor emitters (which have a diode V/I characteristic).
> All versions I've every seen have four stages, and with three
> the feedback wouldn't have the right phase. If you find a
> schematic with three stages please post a link.
> Each stage is a capacitor in parallel with the series connection
> of two emitter impedances, and driven by a current source, the
> collector currents of the previous stage.

Correct.  Even the "18dB/octave" Roland TB303 ladder filter has four stages.  Why isn't it 24dB/octave?  Because they're more honest about the real-world performance than Moog :-D

Once you go hanging weirdass source and load impedances off your ladder the response can vary wildly.  Tim Stinchcombe has an incredible analysis which shows all sorts of odd bumps and peaks in what you'd typically expect to be flat passband.

> > About that complicated code: I saw implentations with a lot of
> > code lines, and preventing oscillations originating from the
> > non-linear tanh functions needed a lot of care.
> I analysed this thing to dead around ten years ago, when I wrote
> the MCP plugins. There is no instability problem resulting from
> the non-linearity. The main problem with a straightforward digital 
> implementation is that it becomes a bad approximation at higher
> frequencies, this requires some attention to get right. The easy
> solution is to run it at a higher sample rate.

Ah, the fons-filter.  Extremely stable and a nice acid-y squelch.  Since a tanh function tends to unity at either end, I can't see how that *would* go unstable.  You'd need to have greater than unity gain for it to really go off.

Fons - ever considered turning your analytical skill to the MS20 and Steiner Synthacon diode-chain Sallen-Key filter?

Gordonjcp MM0YEQ

More information about the Linux-audio-dev mailing list