[sdiy] Yet more questions: best VC drive approach

rburnett at richieburnett.co.uk rburnett at richieburnett.co.uk
Wed Feb 16 13:36:23 CET 2022

Thanks Andy :-)  I knew they were similar but couldn't recall the 
details.  -Richie,

On 2022-02-16 12:07, Andrew Simper wrote:
> for an ota single stage it's roughly:
> ic = ictrl * tanh(in - vc)
> in a mood ladder single stage it's roughly:
> ic = ictrl * (tanh(in) - tanh(vc))
> Andy
> On Wed, 16 Feb 2022 at 03:56, Rutger Vlek via Synth-diy
> <synth-diy at synth-diy.org> wrote:
>> Amazing! Thanks for taking the time to put this into words. Once
>> again, I want to say I really love this mailinglist!
>> The only question in my mind that remains is how similar or
>> different the situation is in a ladder filter. But I can probably
>> figure that out with the help of Spice now I better understand the
>> OTA case.
>> Thanks!
>> Rutger
>> Op di 15 feb. 2022 17:04 schreef Richie Burnett
>> <rburnett at richieburnett.co.uk>:
>>> The OTA in a cascaded OTA low-pass filter (like the Roland Juno
>>> 106 filter)
>>> works like this...  In each stage the OTA inputs measure the
>>> instantaneous
>>> difference between the input voltage and the capacitor voltage.
>>> This
>>> measurement is then scaled by the control current and finally
>>> converter to a
>>> current output that is fed to the capacitor.  In this way the
>>> behaviour of
>>> the OTA approximates that of a resistor between the input and the
>>> capacitor.
>>> i.e. The current out of the OTA is a scaled version of the voltage
>>> difference between the input voltage and the capacitor voltage.
>>> And that's
>>> exactly what a resistor would do if it was also connected between
>>> the input
>>> voltage and the capacitor.  The difference here is that the
>>> scaling factor
>>> (or "gain") of the OTA is variable and is determined by the
>>> control current
>>> into the OTA.
>>> Now all of that assumes that the OTA's input stage behaves
>>> completely
>>> linearly.  But it doesn't!  The front end of the OTA is a
>>> long-tailed pair
>>> differential amplifier and exhibits the tanh() distortion we
>>> mentioned
>>> earlier in this thread.  For small signals everything said in the
>>> first
>>> paragraph holds true.  But as the signals get larger we start to
>>> see a
>>> reduction in the incremental gain of the OTA as we start to use
>>> more of the
>>> tanh() curve.  The effect is that even for a fixed control current
>>> (cutoff
>>> frequency setting,) the scaling factor for the output current
>>> ("gain" of the
>>> OTA) decreases when there is a large difference between the input
>>> voltage
>>> and the capacitor voltage.  If the scaling factor decreases it is
>>> as if the
>>> resistor value somehow got larger for big signals.  And an
>>> increase in this
>>> "virtual resistance" moves the instantaneous cutoff frequency of
>>> the
>>> resulting RC filter downwards to a lower frequency.
>>> The scaling resistors around the inputs of OTA circuits are an
>>> attempt to
>>> make the differential input voltage relatively small compared to
>>> the thermal
>>> voltage so that the OTA mostly operates in the reasonably linear
>>> region
>>> around the origin of the tanh() curve.  But if you drive the
>>> filter hard
>>> enough or mess about with the resistor values, you can easily
>>> drive the OTA
>>> input stage with signal large enough to drive into the saturation
>>> regions of
>>> the tanh() curve.
>>> I hope this explanation helps.  And I hope others also think it is
>>> valid and
>>> technically sound.  The key takeaway from this analysis for me is
>>> that it is
>>> not the signal amplitude itself that saturates, but rather the
>>> rate of
>>> change of the signal that is limited when the OTA input is driven
>>> hard.
>>> This results in a more subtle distortion than basic saturation.
>>> -Richie,
>>> -----Original Message-----
>>> From: Rutger Vlek
>>> Sent: Tuesday, February 15, 2022 2:43 PM
>>> To: Richie Burnett
>>> Cc: SDIY
>>> Subject: Re: [sdiy] Yet more questions: best VC drive approach
>>> Thanks for the helpful replies since I brought this thread back to
>>> life!
>>> @Richie Burnett  Thanks for the wonderful summary of knowledge on
>>> this! I
>>> was already aware of the tanh characteristic involved, but mainly
>>> struggle
>>> to understand the interaction of it with the capacitor (capacitive
>>> load) in
>>> each stage of the ladder filter. Is the math behind it described
>>> somewhere?
>>> The audio-rate modulation of the filter's cutoff frequency that
>>> occurs as a
>>> consequence of this interaction (if I'm right?) as what fascinates
>>> me
>>> particularly. I already did some experiments on a Nord Modular to
>>> see if I
>>> could somewhat replicate this type of saturation with a feedback
>>> (from
>>> output) or feedforward (from input) signal at each filter stage to
>>> the
>>> control input for frequency (thereby modulating cutoff at audio
>>> rate with
>>> the input or output of each stage). It sounds interesting, when
>>> applied in
>>> modest amounts, but does not quite get to Moog smoothness
>>> territory. I'd
>>> like to understand if there are ways to get closer to the actual
>>> behaviour
>>> inside a ladder filter, and if I could extrapolate that to other
>>> (analog)
>>> topologies, such as a 2164-based filter.
>>> The case for an OTA-C filter seems a bit different, if I
>>> understand
>>> correctly, as it's saturation in the output stage that interacts
>>> with the
>>> capacitor to cause the cutoff modulation described above.
>>> Additionally
>>> there's more tanh saturation happening in the input stage of the
>>> OTA,
>>> without consequences for the cutoff frequency? I presume that this
>>> last
>>> effect is happening in almost all OTA filters, since inputs are so
>>> sensitive, but the first effect (cutoff modulation) is only
>>> happening in
>>> some OTA filters, depending on OTA output loading?
>>> Rutger
>>> Op ma 14 feb. 2022 om 12:14 schreef
>>> <rburnett at richieburnett.co.uk>:
>>> Hi Rutger,
>>> Wow, that is an old thread.  I've slept since then! ;-)
>>> They are both based around a "long tailed pair," which is a
>>> differential
>>> amplifier made up of two transistors.  If you read up about this
>>> arrangement you will find that there is a tanh() function in its
>>> transfer function, that leads to a soft saturation behaviour.
>>> Both the
>>> Moog ladder filter and the input stage of a bare OTA exhibit
>>> similar
>>> tanh() soft distortion.  Although the exact effect on the cutoff
>>> frequency in each type of filter may be subtly different.
>>> There are some good papers out there discussing the
>>> non-linearities in
>>> the Moog ladder filter arrangement.  Ones by Antti Huovilainen,
>>> Tim
>>> Stinchcombe and to a lesser extent Tim Stilson are the ones that
>>> immediately come to mind.  Some of the stuff in those papers is
>>> about
>>> making a digital "DSP" model of the filter, but the first bits
>>> about how
>>> the analogue filter works discusses the non-linear behaviour for
>>> large
>>> signals.
>>> I don't have a reference for OTA operation immediately at hand but
>>> I
>>> would have thought the non-linearities for large input signal
>>> amplitudes
>>> would be discussed in the datasheet, or documented somewhere.  As
>>> I
>>> said, the first stage is just a long-tailed pair diff amp, so
>>> assuming
>>> the OTA doesn't have any fancy linearising diodes, it will have a
>>> tanh()
>>> shape to its transfer function that starts to kick in once the
>>> differential input signal amplitude goes over a few tens of
>>> millivolts.
>>> Hope this helps...
>>> -Richie,
>>> On 2022-02-12 20:15, Rutger Vlek wrote:
>>>> Hi Richie,
>>>> I hope you don't mind me bumping up an old thread. I was reading
>>> back
>>>> what you wrote in 2018 and wondered if you could refer me to
>>> more
>>>> background information on filter saturation. I'd like to
>>> understand
>>>> what happens in a ladder filter, and weather something musically
>>>> similar could also be recreated in other ways (e.g. in other
>>>> topologies than a ladder). If you have an opinion on the latter,
>>>> please share!
>>>> Regards,
>>>> Rutger
>>>> Op vr 9 nov. 2018 10:51 schreef <rburnett at richieburnett.co.uk>:
>>>>> When you over-drive OTA based 1-pole "leaky integrator" stages,
>>> you
>>>>> actually get a signal dependent shift in the cutoff frequency
>>> as the
>>>>> OTA
>>>>> saturates, rather than what you would typically describe as
>>>>> "clipping".
>>>>> This behaviour is down to the way in which the OTA and filter
>>>>> capacitor
>>>>> are wrapped up inside a negative feedback loop.  The behaviour
>>> is
>>>>> quite
>>>>> like how the cutoff frequency of the Moog ladder filter changes
>>>>> dynamically with drive signal level.  It is much more musical
>>> that
>>>>> simple signal clipping.
>>>>> -Richie,
>>>>> On 2018-11-09 08:48, Rutger Vlek wrote:
>>>>>> Hi Jacob,
>>>>>>> This also ensures that the clipping happens in the chip used
>>> for
>>>>> the
>>>>>>> integrators, and not in the OTA's, which sound bad when
>>>>> overdriven.
>>>>>> I presume you refer to the OTA in the VCA that controls the
>>> drive
>>>>>> level? Or do you mean OTAs inside your integrators? In the
>>> latter
>>>>> case
>>>>>> I don't understand what you're saying (sorry)...
>>>>>> Rutger
>>>>>>> Web & Multimedia Specialist
>>>>>>> JacobWatters.com [1]
>>>>>>> Tel: 226-886-3526 [1]
>>>>>>> On Thu, Nov 8, 2018 at 3:32 PM Rutger Vlek
>>> <rutgervlek at gmail.com>
>>>>>>> wrote:
>>>>>>>> Hi guys,
>>>>>>>> I've been wondering about many things lately, hence the
>>> flood of
>>>>>>>> emails to the list :). I also have to admit feeling a bit
>>> stupid
>>>>>>>> about having to ask this.. but here goes:
>>>>>>>> What's the best approach to designing a voltage controlled
>>>>>>>> overdrive? The obvious solution I can think of is having a
>>>>>>>> saturation element preceded by a VCA. While I haven't fully
>>> done
>>>>>>>> my homework on it yet, my guts tell me that this isn't the
>>> best
>>>>>>>> circuit in terms of noise behaviour, as it would require the
>>>>>>>> saturation element to be at high gain constantly while the
>>> VCA
>>>>>>>> various input level. Meaning that any VCA noise would be
>>>>> amplified
>>>>>>>> by the full gain of the saturation element. In guitar stomp
>>>>> boxes,
>>>>>>>> some design place a pot in the feedback loop of an opamp to
>>>>> change
>>>>>>>> gain. Could a similar approach work well for a VC-drive unit
>>> and
>>>>>>>> would it perform better/worse than the first solution I
>>>>> proposed?
>>>>>>>> Finally, I've been thinking about making drive level voltage
>>>>>>>> controlled via power supply to the saturation element
>>>>> (transistor
>>>>>>>> in this case). Feeding the control voltage into a buffer
>>> that
>>>>> puts
>>>>>>>> out the supply to a transistor would also allow to change
>>> drive
>>>>>>>> level.
>>>>>>>> What do you think? How it this typically done? I just bought
>>> a
>>>>>>>> Novation Peak, and am impressed with it's three stages of
>>>>>>>> overdrive although it suffers from noise issues due to the
>>>>> amounts
>>>>>>>> of again at hand. It makes me wonder how I would design such
>>> a
>>>>>>>> stage myself.
>>>>>>>> Rutger
>>>>>>>> _______________________________________________
>>>>>>>> Synth-diy mailing list
>>>>>>>> Synth-diy at synth-diy.org
>>>>>>>> http://synth-diy.org/mailman/listinfo/synth-diy
>>>>>> Links:
>>>>>> ------
>>>>>> [1] http://jacobwatters.com/
>>>>>> _______________________________________________
>>>>>> Synth-diy mailing list
>>>>>> Synth-diy at synth-diy.org
>>>>>> http://synth-diy.org/mailman/listinfo/synth-diy
>>> --
>>> This email has been checked for viruses by AVG.
>>> https://www.avg.com
>> _______________________________________________
>> Synth-diy mailing list
>> Synth-diy at synth-diy.org
>> http://synth-diy.org/mailman/listinfo/synth-diy
>> Selling or trading? Use marketplace at synth-diy.org
> Links:
> ------
> [1] tel:226-886-3526
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at synth-diy.org
> http://synth-diy.org/mailman/listinfo/synth-diy
> Selling or trading? Use marketplace at synth-diy.org

More information about the Synth-diy mailing list