[sdiy] Non-linear properties of SSM2040
Andrew Simper
andy at cytomic.com
Mon Sep 9 02:43:43 CEST 2024
I've modelled the SSM2040 in detail, it's available as a filter module for
the virtual eurorack VCV software: https://cytomic.com/vcv-rack-modules/
and I've done a comparison video matching against the SSI2140 datasheet
version implemented in the LA67 Maca module:
https://www.youtube.com/watch?v=wVYYDvAXEjY
René's summary is great, but I'll add a few more details inline below:
On Sun, 8 Sept 2024 at 22:39, René Schmitz <synth at schmitzbits.de> wrote:
> Hi Rutger and all,
>
>
> The TANH comes from the input side, i.e. the long tail pair transistors,
> this is more or less symmetric as one would expect.
>
> (If you ignore minor effects such as the different Vce voltages, Vbe
> matching, source resistances etc.)
>
>
> For a single stage:
>
> The asymmetry comes from the output of the one-mirror OTA. It can't sink
> past -0.6V (The collector of the output transistor can't go lower than
> it's emitter voltage, with the bases near GND thats about -0.6V).
>
> Thus you see clipping at -0.6V.
>
> It really only makes a difference if you're *not* summing the current
> into a virtual ground. As was done in the 2040 of course, which uses
> emitter followers.
>
> (But you can run the 2040 gain stage into an opamp integrator and do not
> get any of the clipping at all.)
>
The main non-tanh part of the input is due to the finite beta of the input
differential pair.
The "classic" buffer (non-virtual ground) adds some voltage offset (around
-1.05V depending on the BJT used) to the signal, which is then fed back to
the negative input of the same stage, which raises the input by the same
amount, and which gives the circuit extra headroom of around a negative
excursion of around -1.65V before clipping. This will leave positive
excursions intact for the first stage, but since each stage inverts then
this positive waveform will then become negative and get clipped off at the
next stage, which is repeated another two times. This clipping is done
without buffering from the low pass capacitor by the negative input BJT,
but also a near positive voltage rail clipping in a similar manner from the
current mirror. These two unbuffered "diode" clippers drain the low pass
capacitor of current before that stage's voltage is buffered - and the
buffer also adds a little drive.
> BTW the 2164 also has voltage compliance limits for its output current
> (albeit different).
>
> So you can run the 2164 into an "open" load, and get extra
> nonlinearities. Thats mentioned in AN701.
>
>
> If you cascade several inverting 2040 stages, then at the output you get
> (more or less) symmetric clipping because you alternately treat the
> positive and negative input swings at consecutive stages.
>
Yes, it's not quite symmetric since there is a one pole worth of low
passing combined with the flipped clipping, but when the cutoff is wide
open it becomes effectively symmetric for audio rate signals.
>
> I think this was what JH was talking about. But also look at a single
> stage to understand what the root behaviour is.
>
>
>
> Best,
>
> René
>
>
Thanks for the rundown René.
Andy
>
>
>
> Am 08.09.2024 um 12:34 schrieb Rutger Vlek via Synth-diy:
> > Dear all,
> >
> > In the sparse moments between day time job and fatherhood I'm trying
> > to push forward with an idea I've had for a long time. I'm trying to
> > capture the variation in favourable non-linear characteristics from
> > well-known filters (read SSM2040 and Moog Ladder) and implement them
> > in a more modern topology (read SSI2164). Would also be great to be
> > able to select between them, while using the same filter core. I'm not
> > necessarily aiming for perfectly cloning the response of vintage
> > filters, but rather hope to take inspiration from them and perhaps to
> > discover other pleasant non-linearities.
> >
> > I've been approaching this with Spice as well as with mathematical
> > modelling in Python, using a multi-dimensional Newton-Raphson solver
> > with the system of equations needed to describe the various filters.
> >
> > Right now I'm trying to understand the character of the SSM2040, and
> > am a bit puzzled. I am familiar with the inverting cascaded topology
> > of this filter. And with the typical math that describes the
> > non-linearities of an OTA-based filter:
> > Vout = g * tanh(Vin-Vout).
> >
> > I have been reading across the internet about the asymmetrical
> > saturation of this filter, most notably in the application notes for
> > making filters with the SSI2164:
> > https://www.soundsemiconductor.com/downloads/AN701.pdf. Based on this
> > information, I had assumed that the tanh only operates in one
> > direction, something like this:
> > y = tanh(x) if x < 0
> > y =x if x > 0
> >
> > However, in Spice, when simulating the internals of the SSM2040 using
> > Jurgen Haible's schematic
> > (http://jhaible.com/legacy/tonline_stuff/jh2040.gif), I don't see that
> > happening. Instead, I see tanh distortion in both directions.
> >
> > Only when I push the input harder (beyond 1Vpp), I see one side of the
> > output clipping much sooner than the other. This seems in line with
> > the effect described in AN701, but is the SSM2040 really driven that
> > hard in real world applications, and is it really *this* additional
> > effect, on top of the already present tanh distortion, that explains
> > the SSM2040's character? And if so... how would one model it
> > mathematically?
> >
> > Rutger
> >
> > ________________________________________________________
> > This is the Synth-diy mailing list
> > Submit email to: Synth-diy at synth-diy.org
> > View archive at: https://synth-diy.org/pipermail/synth-diy/
> > Check your settings at: https://synth-diy.org/mailman/listinfo/synth-diy
> > Selling or trading? Use marketplace at synth-diy.org
>
> --
> --
> synth at schmitzbits.de
> http://schmitzbits.de
>
> ________________________________________________________
> This is the Synth-diy mailing list
> Submit email to: Synth-diy at synth-diy.org
> View archive at: https://synth-diy.org/pipermail/synth-diy/
> Check your settings at: https://synth-diy.org/mailman/listinfo/synth-diy
> Selling or trading? Use marketplace at synth-diy.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://synth-diy.org/pipermail/synth-diy/attachments/20240909/2e7c0b25/attachment.htm>
More information about the Synth-diy
mailing list