Just messing around with LTSpice I came up with this VCA that simulates shockingly good for what it is:


I don't recall ever seeing the use of an op amp to mix the signal and control voltage in an isolated way like this so I just thought I would post it here for posterity (I will probably never build it myself).

If I plot the current through J1 vs the drain voltage, it's an absolutely perfect diagonal line. But R4 has to be trimmed to be exactly 1/3 R3. In practice maybe this is not possible and the simulation is deceiving me?

With R source 10K and 100mVpp input, attenuation is 37dB and the 2nd harmonic simulates 88dB down. Of course increasing R source or decreasing input would improve things greatly. But at the expense of noise created by from having to boost the signal after attenuating the input.

But when you overdrive this circuit it looks like the kind of distortion that would not be horrible for something like a compressor so one might just put a level control in front so that the user can adjust for maximum noise / distortion balance.

I know you can buy a VCA chip for $5 USD but this looks like this would perform really well with a handful of very common parts.

Now if only there were an equally clever way to linearize the control voltage ...


Note that what is different about this circuit from all of the other FET VCAs I've seen on the Internet, is that different op amp inputs are used to mix the control signal with the control voltage. There are no capacitors coupling the signal and the CV. It's DC coupled. That might be good for something.

Note that when the control voltage gets very close to Vgs(off) the signal does start to affect the linearity of the current through the JFET and you get a compression type of distortion (although I suspect this is true of all circuits like this). For example, the Vgs(off) of the 2N5484 model is 1.5. If I set the CV to 1.49 the attenuation is -4.5dB and the 3rd harmonic is 47 dB down. And this is again with a 100mVpp input which is quite large for this type of circuit.


Also works with a series JFET. Here is a circuit that combines the two to yield better dynamic range (potentially very large if the series JFET is switched completely off because distortion doesn't matter as much when the signal is 60dB down):

enter image description here


The circuit described by Henry Santana in this Electronic Design article:

Op Amp And Two JFETs Form A VCA

is superior in almost every way:

enter image description here

The simulated dynamic range is -180dB which is of course impossible but we'll assume whatever reality is that it's pretty good.

The control voltage is linearized. Trimming is not necessary. Noise simulateed slightly better. And it works at DC.

The only thing that my circuit simulates better at is distortion. THD 0.012% compared to 0.004% in my circuit. The second harmonic is 78 dB down (instead of 88 dB). The distortion is also asymertic whereas in my circuit it is purely symetric. But the distortion actually increases less as the input is increased. Meaning this circuit can take 10Vpp input and distortion is still only 0.864% whereas in my circuit the distortion would be horrendous.

  • \$\begingroup\$ One question : have you measured the distortion in your circuit with real components? I do not believe you can trust JFET simulation models to this level of accuracy. So, expect some trimming or adjustment when you translate from simulation to reality. \$\endgroup\$
    – user16324
    May 26, 2015 at 11:28

1 Answer 1


Note that U1 has a signal gain of 2 and its input is Vout/4, so it applies Vout/2 to the JFET gate, essential to cancelling out most of the second harmonic.

This is a classic basic configuration known since at least the 1970s, though the detail around U1 may be novel.

Figure 7B on this page has some similarities. The opamp has a gain of 11. and feeds back 1/22 of its output to the gate (again driving the gate with 0.5 of the drain voltage)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.