Yesterday I simulated the circuit:
At 5V CV and 5kHz sine input, I got unity gain with no visible distortion. I then doubled the frequency:
I still didn't get the kind of distortion I expected, but I got SOME distortion (see the blue graph).
Now, this isn't good. I tried both with and without the output filter cap, no change there.
I am however using LT1001 opamps in place of the TL072.
Today I breadboarded the circuit, first without the output cap. The results were very promising. I could see no visible distortion, not even at 20kHz:
Changing to a triangle wave at 40kHz showed a slight distortion at the top of the curve:
Changing again to a square wave showed severe ringing on the output:
I then added a 33pF cap:
It worked wonders for the other waveforms as well:
I then experimented with a lot of other cap values, here are some:
|18pF and 10pF in parallel|
|22pF and 22pF in parallel|
It seems that 33pF is still the best match (or 18pF + 10pF if one wants a tiny ring instead of a rounded edge). It has to be said though, that this is not a very scientific method, and it has a huge error factor in that the breadboard itself may contribute massively, making the capacitance higher than expected.
Just to make sure that I wouldn't get a significantly better result with a lower CV and higher compensating gain, I replaced the CV resistor with 6k8 and the output gain resistor with 22k (I did however not replace the cap. The filter frequency is 1/2*PI*R*C (presumably), so in doubling the R I also halved the output frequency, leading to more rounded corners:
I only realized this right now while writing this post. Still I think the results are quite good, the selected values seem ok though I have to test with both a 33pF and a 47pF cap (specified in the circuit) on the final board to see which one is best.
Anyway, my conclusion is that the Xonik Linear VCA is still a good choice.