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