Posted by & filed under Filters, Matrix12, Oberheim, Synth DIY, Vintage synths, Xpander.

Last time we looked at reconfigurable filters, filters that include switches to rearrange parts of the circuit during normal use. However, that’s not the only way to produce different responses from a single filter circuit. This time, we’ll look at another approach: pole mixing.

“Pole mixing”? It sounds like stirring a cake with a broom handle…

Either that or a DJ doing a set up a flagstaff, right? Nope!

You’ll have heard people talking about filter “poles”. Without going into the maths of it, this is related to the number of 6dB/oct stages they have. A 1-pole filter has one stage, a 2-pole filter has two stages, etc etc. Most classic synth filters are 4-pole filters, although 2-pole filters have had their proponents, notably Oberheim.

Let’s say we’ve built a four-pole lowpass synth filter, fat and juicy and with enough funk to make your punks daft. It could be based on OTAs, or VCAs, or it could be a transistor ladder filter. Usually you’d take the output of the filter from the output of that final fourth stage. But that’s not the only option. You don’t have to. You could instead take the output from the first, second or third stage. If you did, you’d get a 1-pole, a 2-pole, and a 3-pole response to choose from. You could even take the output straight from the input, and thereby provide a way to bypass the filter.

Pole-mixing is based on the fact that we have all of these different responses available from the filter core. By mixing them in different amounts, both positive and negative, we can create many different responses.

Wow! So how does that work?

To give a simple example, we can imagine making a highpass filter by starting with the input signal and then taking away a lowpass filtered version of that signal. What’s left is the bit that the lowpass filter removed – the high frequencies.

This is a simplification, but it explains the idea. In a similar way, by taking a lowpass response and removing another, we can make a bandpass response.

Pole-mixing to get bandpass filter response

 

More complex responses need more complicated mixing, and a careful balance of the various outputs, but the principle is the same.

Oberheim Matrix/Xpander pole-mixing filter

The first commercial synth with a pole-mixing filter was the either the Oberheim Matrix-12 or Xpander, although the concept is discussed in Bernie Hutchin’s Electronotes (where else?!?) quite a bit earlier than this. I can’t find out accurately which of these synths hit the market first, but they’re basically different versions of the same thing, so it doesn’t matter much. The filter was a revelation to the analog synth world of the mid 1980s. Never before had an analog polysynth had a filter that could produce 15 different filter responses. There have been very few since that do.

The Matrix/Xpander uses the filter in the CEM3372 synth voicing chip, and cleverly hacks the chip, tapping the signals from each stage’s filter capacitor with a buffer to get outputs from each pole. Note that the buffers alternate between non-inverting and inverting. This is because we need to be able to subtract poles from the mixture as well as add them.

Another important point is that the Xpander filter doesn’t directly use the input signal. Instead, in cases where the input signal is required the filter capacitor for stage one is disconnected (SW1) which gives us the input signal followed by three lowpass stages.

What a great idea! Does anyone build a synth with a pole-mixing filter these days?

The same idea appeared in the Mutable Instruments Shruthi 4-pole Mission filter board back in 2015. It has a filter core based on the V2164. It uses the same tactic as the original Xpander, using a an eight-way switch to select resistor combinations, coupled with a switch to disable the first filter stage. Mutable Instruments don’t build Shruthi’s any more, but the design files are available if you want to have a go.

The Intellijel Polaris Eurorack module is also based on the V2164, but includes more resistor combinations for a total of 27 different responses.

At the other end of the synth market, the same idea appeared again more recently in the Modal Electronics 008 synth. Similarly, this uses eight selectable resistor sets and a switchable first stage – it is possible to deduce this from the selection of responses that it offers. Oberheim’s idea from 1984 has survived into top end synths in 2017!

What responses can we get from a pole-mixing filter?

The usual way to describe the responses in a filter like this is to describe the weightings of the different outputs. The input is first, followed by the 1-pole output, then the 2-pole, 3-pole, and finally the 4-pole. These are sometimes labelled A, B, C, D, and E.

I’m presenting it like this:

  • Response name {Input, 1-pole, 2-pole, 3-pole, 4-pole}

Note that because the stages are inverting, the 1-pole (6dB/oct) and 3-pole (18dB/oct) outputs are inverted with respect to the input. It is important for the mixing that the inputs to the mixer alternate between non-inverted and inverted (e.g. we add one pole, then subtract the next, add the next, and so on). Since this is achieved by using inverting stages, or adding inverting buffers to some stages (as in the Xpander design), these inversions are ignored in the weightings below. It boils down to “the second and fourth columns are inverted”.

Lowpass responses

These are the simplest, since we can just take the output from each filter stage, and no mixing is required.

  • 6dB lowpass {0, 1, 0, 0, 0}
  • 12dB lowpass {0, 0, 1, 0, 0}
  • 18dB lowpass {0, 0, 0, 1, 0}
  • 24dB lowpass {0, 0, 0, 0, 1}

Highpass responses

These are proper mixed responses that need careful matching of the outputs. If the outputs are not well matched, the cancellation of the signal in the stop band will not be good, and you’ll have a highpass filter with some “leakage” of low frequencies. For musical use, this may well not be that important.

  • 6dB highpass {1, 1, 0, 0, 0}
  • 12dB highpass {1, 2, 1, 0, 0}
  • 18dB highpass {1, 3, 3, 1, 0}
  • 24dB highpass {1, 4, 6, 4, 1}

Bandpass responses

Note that a 12dB bandpass filter can be formed by a 6dB highpass followed by a 6dB lowpass. Thus the coefficients are the same as the 6dB highpass, but “pushed right” by one place, giving an extra 6dB lowpass. The same principle applies for the 24dB bandpass. The coefficients are the same as the 12dB highpass, but pushed right by two places, giving an extra 12dB lowpass.

  • 12dB bandpass  {0, 1, 1, 0, 0}
  • 24dB bandpass {0, 0, 1, 2, 1}

It’s also possible to have asymmetric bandpass responses, with unequal slopes on the two sides.

  • 6dB highpass + 6dB lowpass  = 12dB bandpass
  • 6dB highpass + 12dB lowpass {0, 0, 1, 1, 0}
  • 6dB highpass + 18dB lowpass {0, 0, 0, 1, 1}
  • 12dB highpass + 6dB lowpass {0, 1, 2, 1, 0}
  • 12dB highpass + 12dB lowpass = 24dB bandpass
  • 18dB highpass + 6dB lowpass {0, 1, 3, 3, 1}

Notch responses

A 12dB notch filter is formed by adding the 12dB lowpass response to a 12dB highpass.

  • 12dB notch {1, 2, 2, 0, 0}

Presumably you could do the same thing with a 18dB highpass and 18dB Lowpass, but I haven’t confirmed it:

  • 18dB notch {1, 3, 3, 2, 0}

There are many other possible notch responses. For example, you can create a notch by mixing an allpass response with the input signal (the classic phaser).

Allpass responses

It is also possible to get allpass responses from the filter core.

  • 6dB all pass {1, 2, 0, 0, 0}
  • 12dB all pass {1, 4, 4, 0, 0}
  • 18dB all pass {1, 6, 12, 8, 0}
  • 24dB all pass {1, 8, 24, 32, 16}

Since an allpass filter doesn’t actually remove anything, these responses are underwhelming on their own. However, adding the allpass output to the input causes phase cancellation and creates notches that we can hear. This changes these responses into a phaser.

These responses have all had {1,0,0,0,0} added and then been simplified by dividing by two.

  • 6dB phaser {1, 1, 0, 0, 0}
  • 12dB phaser {1, 2, 2, 0, 0}
  • 18dB phaser {1, 3, 6, 4, 0}
  • 24dB phaser {1, 4, 12, 16, 8}

Ok, so what filter responses did the Oberheim Xpander/Matrix12 include?

It included eight basic responses, which could then be altered by disconnecting the first stage. This effectively moves the coefficients left one place. The responses from the Xpander service manual are:

With the first stage switched on

  • 24dB lowpass {0, 0, 0, 0, 1}
  • 12dB lowpass {0, 0, 1, 0, 0}
  • 12dB highpass + 6db lowpass {0, 1, 2, 1, 0}
  • 18dB highpass + 6db lowpass {0, 1, 3, 3, 1}
  • 24dB bandpass {0, 0, 1, 2, 1}
  • 12dB notch + 6db lowpass {0, 1, 2, 2, 0}
  • 12dB bandpass {0, 1, 1, 0, 0}
  • 18dB allpass + 6dB lowpass {0, 1, 3, 6, 4}

With the first stage switched off

  • 18dB lowpass {0, 0, 0, 1, 0}
  • 6dB lowpass {0, 1, 0, 0, 0}
  • 12dB highpass  {1, 2, 1, 0, 0}
  • 18dB highpass  {1, 3, 3, 1, 0}
  • 12dB highpass + 6dB lowpass {0, 1, 2, 1, 0}
  • 12dB notch {1, 2, 2, 0, 0}
  • 6dB highpass {1, 1, 0, 0, 0}
  • 18dB allpass {1, 3, 6, 4, 0}

Note that the fifth response with the first stage switched off is a copy of the third response with it switched on (12dB HP + 6dB  LP). This is why the Xpander/Matrix12 had 15 responses instead of the 16 you’d expect – one is a duplicate.

Building a pole-mixing filter

There are two parts to a pole-mixing filter, the 4-pole filter core itself, and then the pole mixing. Since we need alternate positive and negative outputs, it helps if the filter stages are inverting. Luckily for us, this is easy to arrange with either the V2164 or the AS3320. The two filters are below. Both of them share the same mixing section.

V2164 4-pole voltage-controlled filter core

The best way to set the V2164 as a filter is to use the VCA to control the cutoff frequency of an op-amp integrator. Since these integrators are inverting, our filter stage is inverting.

This design is based on Olivier Gillet’s Shruthi 4-pole Mission filter mentioned above. The resonance CV mixer has been altered to allow external CV inputs and add some further protection.

AS3320 4-pole voltage-controlled filter core

We can simplify the circuit even further by using the AS3320, which doesn’t need external buffers, and includes voltage-controlled resonance. Furthermore, the stages inside the chip are inverting, so we don’t need to add anything. This makes a fantastically simple filter core for a very powerful filter.

About the only downside of the chip for this use is the fact that the filter stages have a heavy DC bias (6.5V) this makes large DC-blocking caps necessary on the stage outputs. It’d be nice if these weren’t required. Still, it’s not a big thing.

Pole mixer for either V2164 or AS3320 filter core

This mixer takes the five outputs (Input, LP1, LP2, LP3, LP4) marked on the above schematics and provides many different responses.

The pole mixer is a standard inverting op-amp audio mixer circuit. The only complicated part of a pole mixer circuit like this is choosing the resistor values so that it is possible to get other values that give the required gains. The gains need to be accurate, so 1% resistors or better must be used. If you choose E24 series values, you will probably need to combine values to get accurate results, so many pole-mixing designs use E48 or E96 values for at least some cases.

All of the basic lowpass, highness, bandpass, notch, and all pass responses listed above can be done with only five coefficient (gain) values: 1, 2, 3, 4, and 6. A good design should make these values easy to find. The only value in the E24 series that comes close is 30K, which gives 15K for x2, 10K for x3, 7.5K for x4 and 5K for x6. All of these except 5K are standard E24 values. For 5K, the closest is 4.99K from the E96 series. More complex responses including some notches and higher-order all pass filters require more exact values which will be beyond the E24 series whatever you do.

The Xpander and Shruthi designs use a 100K resistor as the basic value. This means we need 50K to give a gain of two, 33.3K to give gain of three, 25K to give a gain of four, and 16.667 to give a gain of six. None of these values are exactly possible, with 49.9K, 33.2K, 24.9K, and 16.5K being the closest values available, all from the E48 or E96 series.

There is an alternative approach, if board space is less of an issue. If we choose a 100K resistor as our basic value, paralleling two 100K resistors gives us a 50K value, and paralleling three gives us 33.3K. We can carry on adding more to get other multiplication factors. So far, I’ve never seen a circuit which took this approach, but it should work and might make sense with resistor arrays.

Note that it is possible to use an analog switch IC to select between different resistor sets as demonstrated in the schematic above, but it is also possible to use multiple mixers to provide various outputs simultaneously.

Multimode filters, Part 1: Reconfigurable filters

Multimode filters, Part 3: State variable filters coming one year soon!

Further reading on pole-mixing filters

The Xpander service manual is where I first saw this technique described.

“Multifunction VCF” from Oberheim Xpander service manual

However, Oberheim weren’t the first. They probably read about it in Bernie Hutchins’ Electronotes newsletter!:

EN85 “Additional Design ideas for Voltage Controlled Filters”, Bernie Hutchins

Sound Semiconductor have also recently released an extremely good application note which covers many filter-building techniques, including this one. One interesting twist they give it is to use pole-mixed bandpass responses for the feedback to avoid the “passband droop” effect at high resonance – a nice trick!

“AN701 – Designing VCFs”, Sound Semiconductor

There’s also an excellent explanation over on the Mutable Instruments site:

“SSM2164 4-pole with pole mixing”, Mutable Instruments

Comments and Feedback

As usual, if you spot any errors, get in touch, or comment below.

    Related Products

  • AS3320 VCF

    The AS3320 is a high performance voltage-controlled four-pole filter modelled after the CEM3320, with on-chip voltage-controllable resonance. The chip can be configured as an lowpass, highpass, bandpass, or all pass filter. It has an exponential (V/Oct) frequency control input which can cover more than ten octaves with little control voltage feedthrough. The Resonance CV allows control of the resonance from zero to low distortion oscillation. For more demanding applications, further trimming can improve control voltage rejection. Each filter section is... Read more »...

    More Info Buy Now
  • V2164 Quad VCA

    The CoolAudio V2164 quad vca chip is a great chip for making VCFs or VCAs. You get four independent voltage controlled amplifiers(VCAs) in a single package, so per-VCA cost is very low. Each VCA has a 100dB dynamic range and accepts control voltages from 0V (0dB) to 3.3V (-100dB). Note that this is an exponential response of -33mV/dB. Negative voltages can give gain up to +20dB. Supply voltage is ±4V to ±18V. Download V2164 datasheet            ...

    More Info Buy Now
  • CEM3372 synth voicing chip

    The CEM3372 contains a two-input voltage-controlled mixer, a 4-pole lowpass filter, and a voltage-controlled amplifier. It’s basically an entire synth voice on a chip, minus the oscillators and envelopes. This chip was used in several classic synthesizers, including the Sequential Prophet T8, their flagship synth at the time they went bust. It was also used in the Oberheim Matrix 12 and Xpander synths, which were the most sophisticated analog synths ever built at the time. Download CEM3372 Signal Processor datasheet... Read more »...

    More Info Buy Now
  • AS2164 Quad VCA

    The Alfa AS2164 quad vca chip is a great chip for making VCFs or VCAs. You get four independent voltage controlled amplifiers(VCAs) in a single package, so per-VCA cost is very low. Each VCA has a 100dB dynamic range and accepts attenuation control voltages from 0V (0dB) to 3.3V (-100dB). Note that this is an exponential response of -33mV/dB. Negative control voltages can give gain up to +20dB. Supply voltage is ±4V to ±18V, so this is a chip that can... Read more »...

    More Info Buy Now

3 Responses to “Multimode filters, Part 2: Pole-mixing filters”

  1. Paul

    So that’s how they do it…

    An interesting and informative article (as ever).

    How easy would it be to do this in a DSP? This would mean that you wouldn’t have to worry about component tolerances and drift and could extend it to higher order configurations with no hardware overhead. Moreover you could get the chip count down to 1.

    Reply
  2. Robert

    There’s the Doepfer A106-6 Xpander filter which uses the CEM3328 to achieve this topology. It gives multiple outs of different responses and is thoroughly investigated by Learning Modular https://www.youtube.com/watch?v=HjfzhI0ZQ50 ; the ‘3328 is a cutdown ‘3372 without the additional vca and mixer inputs iirc.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *