Electronic Pages  Die Homepage der Familie Beis 
I prepared these utiliies written in Javascript to help you to quickly design and dimension your active SallenKey or Multiple Feedback topology lowpass or highpass filter. Simulation can be done by exporting automatically generated Spicenetlists to an external simulator and running the simulation there.
This page is not intended to teach the basics of filter design. Look at the TIwebsite for an indepth article. Links to more filter design software can be found on the New Wave Instruments company website. Also you may have a look at my homepage. You likely won't be able to understand it  it's German.
No responsibility for any kind of errors or bugs is taken from anybody. This page has been tested with MSIE 6 and Netscape 6.2.
LowPass Filters
In this utility great importance is attached to the possibility of automatical selection of capacitors out of the E6 or E12series. Because dimensioning has to start with a resistor value that can be used throughout all stages, all capacitor values become odd, which is quite impractical. Here you enter the approximate resistor values you wish and the utility now proposes different resistor values, so that the capacitor values will become standard values. Proceed to Active LowPass Filter Design and Dimensioning New: Dimensioning of Active 3Pole Single Stage Low Pass Filters  quite unique! 
HighPass Filters
Highpass filters are easier to dimension, as you start with a single capacitor value that can be used for all capacitors throughout all stages. The resistorvalues anyway become odd. 
Filter Topology
The most common filter topologies are SallenKey and Multiple Feedback filters. The major differences are:
SallenKey 
Multiple Feedback 

Noninverting  Inverting 

Any gain is dependent on the resistor precision 
Less components for gain = 1  Less components for gain > 1 or < 1 
Opamp input capacitance must possibly be taken into account  Opamp input capacitance has almost no effect 
Resistive load for sources even in highpass filters  Capacitive loads can become very high for sources in highpass filters 
In an active filter design for each stage you may select any topology of filter.
Stage Order
The stage order may be arbitrarily mixed. The stage order shown on the design pages is better suitable for high signal levels, a reversed stage order is better for lownoise purposes.
C_{A} and C_{B} Selection in LowPass Filters
SallenKey filter: In the table on the lowpass filter design pages C_{A} and C_{B} are calculated first for the desired R_{X} (= R_{A} = R_{B}) values. In the "C_{X} selection and resulting R_{X}" columns the closest E6 or E12 series values for C_{X} are selected and the corresponding values for R_{A} and R_{B} are calculated. You may manually enter different C_{A} and C_{B}, but C_{B} must always be a minimum multiple of C_{A} (you will get a warning if this requrement is not met). It is recommended to keep C_{B} / C_{A} as close as possible to this minimum mulitple so that R_{A} and R_{B} will be as close as possible, too. In this case the individual values of R_{A} and R_{B} are far less important than the correct sum of both. This might make it easier to find final values for the resistors.
Multpile Feedback filter: Basically the same, but "R_{B}" must be replaced by "R_{C}" and "R_{A}" must be replaced by "R_{A} parallel to R_{B}".
C_{X} Selection in HighPass Filters
In highpass filters you select a capacitor value C_{X} that can be used for all capacitors in all stages. The resistorvalues will be calculated correspondingly.
Part Value Tolerances
Deviations from nominal values of the passive components of course have influence on the frequency response of the filter. These deviations may be caused by component tolerances or due to the fact, that under normal circumstances the ideal values are not available. As a rough estimation it is possible to say: The lower the stage order is, the lower the influence of deviations on the frequency response is. Higher stage orders have a higher quality factor Q and deviations of R and C impinge on the resulting frequency response roughly proportional to the Qfactor.
If you want to find out more about the effects of varying values, generate the netlist of your choice and simulate it using the MonteCarlo option.
OpAmp Selection
As they are not ideal, opamps falsify the ideal frequency response, too. The most important influence is caused by the finite gainbandwidth product of the opamps. In the tables above you find the GBW that is actually used in lowpass filters the corresponding stage. In highpass filters it is the GBW used at the cutofffrequency.
The GBW of the opamp shall be much higher than the GBW in the tables above. It is a good approximation to say: If the opamp GBW is 100 x Q times higher than the GBW of the corresponding stage, the amplitude error will be approx. 1 / 100 = 1%. If you want to know it more exactly, have a look in the TIarticle already mentioned above.
Example 1: For an 8pole Chebychev 3 db 100 Hz filter the highest Q is 23 and GBW is 2.4 kHz. 100 x Q x GBW = 5.5 MHz. The simulation with TL071 shows a gain error of close to 1%.
Example 2: For an 3pole Butterworth 20 kHz filter the highest Q is 1 and GBW is 40 kHz. 100 x Q x GBW = 4 MHz. The simulation with TL071 again shows a gain error of close to 1%.
In the table below you find some opamps and their most important characteristics:
Basic Type  Derivate 
GBW MHz 
Noise (typ.) nV*sqr(Hz) 
Remark 
TL061  TL062, TL064  1  42  Low power (200 uA), FET 
TL071  TL072, TL074  4  18  Standard type for audio, FET 
OPA134  OPA2134, OPA4134  8  8  Low noise, high gain (> very low distortion), FET 
NE5532  10  5  Dual, low noise, high GBW, not too expensive, nice for audio, bipolar  
LT1115  40  0,9  Ultra low noise, high GBW, very expensive, bipolar  
AD797  110  0.9  Ultra low noise, very high GBW, very expensive, bipolar 
Do not use LM324 or LM358 for audio circuits as their unbiased output stages create lots of crossover distortions when the output current changes direction.
Netlist Generator for Simulation
Unfortunately a simulation of the filter is not possible on this website. Instead, you may get a netlist output for the configured filter in order to simulate it on your PC. When you start to generate a netlist you may:
 For lowpass filters use component values for the desired
R_{X} or for the selection for capacitors out of the Eseries
 Generate the netlist either for the SallenKey or the Multiple
Feedback topology
 Get timedomain (stepresponse) analysis and/or frequencydomain
(frequency response) analysis
 Initiate MonteCarlo settings with multiple plots, where all
passive elements are randomly inaccurate as you request
 Get a netlist with ideal amplifiers or with real opamps or
with two filters of both types of amplifiers, supplied by one
source
You may edit the netlists if you desire other options not provided here.
In order to simulate the netlist, execute following steps:
 Click into the netlist
 Press CtrlA and CtrlC (or CtrlInsert) to to select and copy
the whole netlist to clipboard
 Open an ASCII textfile i. e. with the Editor or click into
a previously opened one
 Press CtrlA and CtrlV (or ShiftInsert) to replace previous
text by the whole netlist from clipboard
 Save the textfile (for obvious reasons into the directory and
with the fileextension your simulator expects, i. e. MyFilter.NET)
 Start your simulator and select "Run Simulation from File".
Experiments have been made using SIMetrix Intro. This evaluation version allows to simulate the filter(s) above for up to 4 stages (less with more complex opamps or more with ideal amplifiers). Plot control is provided in the netlists for SIMetrix Intro. The Windows path for the netlist file is likely to be C:\Program Files\SIMetrix4Intro\Work\mynetlist.net.
I strongly recommend to make simulations to make own experiences i. e. which deviation of which value will result in which final frequency or step response.
Trying to simulate an NE5532 I had trouble to get a correct Spice model for it. The only model I found was on the TI webpage for an NE5534 and is quite faulty: It has an unlimited bandwidth as the internal compensation capacitor is missing. For an NE5534 (uncompensated single version of NE5532, min. gain = 3) a capacitor of 3.5 pF must be added between nodes 6 and 7, and for an NE5532 (min. gain = 1) it takes 23.5 pF. For an NE5534 a new symbol with additional connections for external compensation must be created, for the NE5532 this is not the case. I prepared both models, you may download them here. Look for help in your simulator how to integrate the models  it takes some steps.
A few Words from the Author
It was not the first time I wanted to dimension a low pass filter. The book that used to be so helpfull in these cases had vanished (by the way: has anybody seen it?) and I had three dissatisfying choices: Take the other book and find out how to obtain R and C values out of the a_{i} and b_{i} coefficients, or use that evaluation version of a highly professional filter design tool where the display of all Rvalues is suppressed so that they must be guessed, or spend an unpredictable amount of time to search for something better in the internet. Well, I took the third choice, and after that unpredictable amount of time I gave up. Ok, I admit, I'm not a brilliant track hound. Back to choice 1, I started to automate the calculations by a a small Basic program (DOS Basic! I'm not a professional software writer either), and as nice results were early, I thought about all the other desperate filter designers like me without my first book, without the fully licensed filter software and without something like my little Basic program, roaming in vain through the internet... And I thought it might be a nice idea to place my solution on Rod's website (and in the future probably on mine as well). A DOS Basic program? *g*
What about Javascript? I've got no clue about it, I just knew something like this existed. (Yes, I'm not even a skilled website author). So I started to learn it. Of course it should look better and be more flexible than my Basic program, but if I had known before how much time I would spend on it, I swear, I would never have started it! As all the formulas looked so complete and readytouse in my book, I could not imagine how much of mathematical homework still laid in front of me (Yes, yes  another hole in my spectrum of capabilities). I wondered how and why something so different from Basic might work, I learned about the differences of Netscape and MSIE, and I always had a never ending list of features I wanted to add.
What you see here is just meant to be a beginning  I hope so, at least. If I get plenty of feedback (boy, that would be fine), I would like to add functions people really need. But they should be feasible with HTML and Javascript. Meanwhile my intention to make a similar page about active high pass filters (who needs that? I never did!) became true but the other one about passive filters not. The latter looks so simple, but, for example, I did not even find an answer yet if even ordered passive chebychev lowpass filters exist. I've gotta buy a smart book.
Meanwhile I forgot the reason I wanted that filter for, but I found some more tools and information in the internet. Have a look at the link collection of the New Wave Instruments company, for example.
If you found this page helpful, if you have suggestions, particularly if you found bugs please let me know. A sufficiently prepayed letter with any amount of cash is accepted, but in deep emergency a simple email will do (Attention: Parts of this statement was meant to be humorous!).
My name is Uwe Beis and I am nothing but a poor electronics engineer. (There must be something I'm good for at least  mustn't it?.) Did you have a look at my hompage? You likely won't be able to understand it  it's German.
Last update: January, 4^{th}, 2009  Questions? Suggestions? Email Me!  Uwe Beis 