SynthMaker Circuits Manual Open SynthMaker (opens in a new tab)
Chapter 7 · Voltage control

How an OTA filter works: two integrators and a current

An OTA filter is two OTAs, each charging a capacitor, in a loop: a 12 dB per octave low-pass whose cutoff follows the OTAs' bias current, 6.75 Hz per µA here, so 120 µA gives 810 Hz. Feeding the middle back sets the resonance: Q = Rq / 100 kΩ.

OtaFilter · the parts list
circuit OtaFilter  setting input: 6 V, from 0.6 V to 30 V  setting output: 20 V, from 2 V to 100 V  setting cutoff: 120k, from 1M to 33k  setting resonance: 300k, from 47k to 1M  V1 vcc gnd 15V  R1 in p1 100k  R2 p1 gnd 220  A1 p1 m1 c1 abc1 CA3080  Rlp out m1 100k  Rq bp m1 resonance  R4 m1 gnd 220  Ca c1 gnd 1n  U3 c1 bp bp opamp  R5 bp p2 100k  R6 p2 gnd 220  A2 p2 gnd c2 abc2 CA3080  Cb c2 gnd 1n  U4 c2 out out opamp  Rk1 vcc abc1 cutoff  Rk2 vcc abc2 cutoffend
Scope · out

Press Play to see the wave after the circuit, at out.

A short riff through the circuit, round and round. Turn the knobs while it plays. Open in SynthMaker ↗ (opens in a new tab)

What you're hearing

An OTA and a capacitor make an integrator whose speed is a current. An OTA's output is a current: the voltage between its inputs times gm = Iabc / 2Vt, where Iabc is the current into its bias pin (see how a VCA works). Into a capacitor, a current changes the voltage at I / C. At 120 µA, gm is 2.32 mS, so 1 mV between the inputs makes 2.32 µA, and that moves a 1 nF capacitor 2.3 V per ms. Double the bias current and it moves twice as fast. Feed the capacitor's voltage back to the OTA's minus input, and it chases the input but can't keep up with its fastest parts: a one-pole low-pass, 6 dB per octave, here with its corner at 810 Hz. The 100 kΩ and 220 Ω dividers keep the OTAs' inputs down at millivolts.

Two in a loop make a 12 dB low-pass. A1 charges Ca, buffered by U3: that's the band-pass. A2 charges Cb from it, buffered by U4: the low-pass, and the output. The output goes back to A1's minus input through 100 kΩ, closing the loop. Its cutoff is f0 = gm × 0.0022 / (2π × 1 nF) = 2.32 mS × 0.0022 / (2π × 1 nF) ≈ 810 Hz: 6.75 Hz for every µA of bias current. Above it the treble falls 12 dB per octave: at four times the cutoff it's 23.6 dB down. It's the loop of a state-variable filter, two integrators with the band-pass between them. The difference is what sets their speed: resistors there, a current here.

The cutoff knob sets the current. The bias pins sit about 0.6 V above ground, so the current is (15 V − 0.6 V) / Rk, and one knob turns Rk1 and Rk2 together, a dual pot:

cutoff (Rk)bias currentcutoff frequency
1 MΩ14 µA98 Hz
470 kΩ31 µA207 Hz
220 kΩ66 µA442 Hz
120 kΩ120 µA810 Hz
68 kΩ212 µA1.43 kHz
47 kΩ306 µA2.07 kHz
33 kΩ435 µA2.94 kHz

That's 4.9 octaves from end to end. The knob turns on a log taper, so it moves the cutoff evenly in octaves. The cutoff is proportional to the current, so a control voltage at the far end of Rk would move it in hertz, not octaves. A synth puts a transistor before the bias pin, an exponential converter, so that each volt moves the cutoff an octave. This one doesn't follow the keys: you tune it by hand, or wire something into cutoff.

Resonance: less damping. Rq feeds the band-pass back to A1's minus input, and that damps the loop. The bigger Rq, the less it damps and the more the filter rings: Q = Rq / 100 kΩ.

resonance (Rq)Qat the cutoffpeak
47 kΩ0.47−6.5 dBnone
100 kΩ1.00 dB+1.3 dB
220 kΩ2.2+6.9 dB+7.1 dB
300 kΩ3.0+9.6 dB+9.7 dB
470 kΩ4.7+13.5 dB+13.5 dB
1 MΩ10+20 dB+20 dB

At 1 MΩ the peak is ten times the level below the cutoff: every change of cutoff rings like a struck bell. Q stays the same wherever the cutoff is, and at the knob's top it's 10, still short of oscillating on its own.

Keep the input small, or the OTAs bend. An OTA's current is a tanh of its input, a straight line only for a few millivolts: at 30 mV it falls 10% short. For slow changes the loop holds A1's two inputs together: a 110 Hz sine at 6 V puts only 0.2 mV across them. A saw's sudden drop arrives whole before the capacitors can move. At 6 V that's 27 mV across A1's inputs, where tanh is 8% short: only just bending. Press "Input 30 V" and it's 138 mV. The OTA then gives nearly all of its bias current and no more, so its capacitor can't change faster than Iabc / C = 120 µA / 1 nF, 0.12 V per µs. The saw's edges turn into ramps, the ringing roughens, and the sound gets gritty. Circuits 6 turns the input up to 16 V for a little grit.

What the model covers, and what it leaves out. SynthMaker's OTA is the core's law: the tanh, the bias pin's junction and its current setting gm. It has no input bias current, no limit on its output swing and no temperature. Its two OTAs are identical, so their cutoffs move exactly together; real chips differ a little from each other and drift as they warm up. The op-amp buffers are ideal. The circuit runs at twice the sample rate, where even the 2.94 kHz top of the knob plays only a fraction of a percent low.

Try this

  • Press "Resonance 1M: it rings", then turn cutoff from 1 MΩ to 33 kΩ. The ringing peak sweeps from 98 Hz to 2.9 kHz, nearly five octaves.
  • Press "Resonance 47k: no peak", then "Resonance 300k: Q 3". The same cutoff, from soft and dull to a vocal bump 9.7 dB high.
  • Press "Input 30 V: gritty", then turn input back down to 6 V. The edges go from rough to smooth. Output is set higher on that button so the levels match: it's the shape that changes.
  • Open the example sound "Random Filter". Circuits 3's sample and hold turns cutoff to a new place on every eighth note. To change the parts, open it in SynthMaker.

The parts list

OtaFilter · the parts list
circuit OtaFilter  setting input: 6 V, from 0.6 V to 30 V  setting output: 20 V, from 2 V to 100 V  setting cutoff: 120k, from 1M to 33k  setting resonance: 300k, from 47k to 1M  V1 vcc gnd 15V  R1 in p1 100k  R2 p1 gnd 220  A1 p1 m1 c1 abc1 CA3080  Rlp out m1 100k  Rq bp m1 resonance  R4 m1 gnd 220  Ca c1 gnd 1n  U3 c1 bp bp opamp  R5 bp p2 100k  R6 p2 gnd 220  A2 p2 gnd c2 abc2 CA3080  Cb c2 gnd 1n  U4 c2 out out opamp  Rk1 vcc abc1 cutoff  Rk2 vcc abc2 cutoffend

cutoff is written from 1M to 33k, so turning it up makes the resistors smaller, the current bigger and the cutoff higher. One setting turning two resistors is a dual pot.

How we checked it

Checked against ngspice, a standard circuit simulator: the whole filter at Q 3 and Q 10, driven by a 500 Hz sine, is within 0.01% of ngspice across the audible band at the 2× rate it runs at. Measured in SynthMaker, the cutoff follows the bias current at 6.75 Hz per µA, from 97.6 Hz at 14 µA to 2.93 kHz at 435 µA.

Build it step by step

Next and previous

  • Next: What is a low-pass gate (planned)

Further reading