Page 303 - Analog and Digital Filter Design
P. 303
300 Analog and Digital Filter Design
window in modern operating systems. The source code is supplied, in addition
to the executable program. Ths allows the user to read them with an ASCII
editor, or to modify them and to add features using an ANSI C compiler (I use
Borland’s Turbo C). These programs will now be described in some detail, with
operating instructions.
The supplied filter design programs use tables of normalized component values
or pole locations. This is different from FILTECH, which uses algorithms to
build a table during runtime. The reason for using tables here is speed and
memory requirements; the reason for using algorithms in FILTECH is for higher
accuracy.
The following descriptions assume that the programs have been copied from the
website www.bh.com/companions/0750675470 to a suitable directory on your
computer’s hard drive. During runtime, the programs save the netlist produced
in a file in the current directory. It may be worthwhile running the programs
while reading this section of the book. This should make the descriptions
clearer.
Active-F
Active-fexe is an active filter design program. It can only design lowpass and
highpass filters of the Sallen and Key type, with Butterworth, Chebyshev, and
Bessel responses. It is limited to filter orders from two to nine. The output is dis-
played on the computer screen, and the netlist is output to a file called
“active.ckt .”
When the program is run, it first asks whether a highpass or lowpass filter is
required. Entering a number “1” at this point produces a lowpass design; enter-
ing a “2” causes a highpass design to be produced.
The program then asks whether the filter type is Butterworth, Bessel, or
Chebyshev. There are passband ripple options of 0.1 dB, 0.25dB, 0.5dBY and 1 dB.
The program requires a number between one and six to be entered at this point.
The required filter order must be entered next. This can be a number between
two and nine.
The program then asks for the resistor values. This is the value of series resis-
tors between the input and the op-amp’s noninverting input. A value between
“I” and “le7” can be entered; do not use multiplier coefficients (e.g., 1.2k).
Next enter the cutoff frequency; a value between “1” and ”le9” can be entered.
This is the passband edge, or 3 dB point.