Digital Filter Design & Simulation

DISPRO Background
DISPRO Features
DISPRO User Manual
DISPRO Download
StoZ Background
StoZ User Guide
StoZ Download
Contact Me
Guest Book
Win7 Operation


FOREWORD by Dr.  John O'Donnell
In 1971 I introduced the first course in digital signal processing for practicing engineers in Northeastern University's State-of-the-Art In Engineering program, and continued with the program until 1995.  The early tools for filter design were exceedingly primitive, consisting of some public-domain FORTRAN programs no user interface or graphical output.  Large and expensive signal-processing packages for main-frame computers began to be commercially available in the late 1970s, but nothing a student could afford.  In 1982 I began coding DISPRO for the IBM-PC.  Many of the features in DISPRO grew out of my need to explain digital filter behavior in finite-precision arithmetic to my classes.

As I became more experienced with implementing digital filters on various DSP chips I needed to develop digital filters with special characteristics.  DISPRO could be used to design FIR filters with arbitrary magnitude characteristics, but IIR filters with arbitrary characteristics required the use of numerical optimization methods which often did not yield useful results, and usually were not interactive.  Over a period of a few years I developed a software package, STOZXFR, in Visual Basic, that provided real-time user interaction and graphical output, allowing the user to manipulate the poles and zeros of an IIR filter in order to achieve a desired magnitude or delay characteristic in the frequency domain.

I've successfully tackled many projects using DISPRO and STOZXFR, and hope that any one who downloads these design tools will have similar results, and will also learn much about digital filter design and behavior.

What is DISPRO?

DISPRO is a professional-level software package for designing digital filters, and for evaluating the performance of the digital filter when it is implemented with the actual arithmetic characteristics of the target DSP processor.

DISPRO was the first commercially available digital filter design package for the IBM PC, having been introduced in 1983.  It was marketed around the world by Signix Corporation, and is now being offered as freeware by its creator, Dr. John O'Donnell.

Considering its origins, DISPRO was, and remains, a DOS executable.  It will, however, run in a DOS or Command Prompt window under Microsoft Windows XP, and in Vista and Windows 7 using DOSBox  (see discussion on the Win7 Operation page).


        Why freeware?

DISPRO is an extremely useful software package, and it has significant educational value.  There is no economic incentive to convert it to a Windows application, so it is being offered to the DSP fraternity in its original DOS implementation.  It is hoped that as freeware DISPRO will survive its author and be of value as long as future versions of Windows will allow DOS applications to run.

        Unique Features

In addition to the "standard" designs Butterworth, Chebyshev, Elliptic (or Cauer/Foster), and Parks-McClellan-Remez DISPRO provides special implementation features.

  • For IIR filters operating in integer/fixed-point arithmetic DISPRO performs a scaling operation which can eliminate overflow problems, but only if the filter is implemented in what I've labeled the merged-biquad form.  The structure of the merged-biquad implementation is described here.

  • The operation of IIR and FIR filters can be simulated in integer/fixed-point arithmetic for wordlengths of 4 to 24 bits; filter coefficient precision can be specified to a different precision, if desired.  As a quick check on overflow problems the filter can also be simulated in 32-bit floating point.

  • The time-domain output of the filter in simulated fixed-point arithmetic can be plotted, and also spectrum analyzed using the FFT.

  • The numerical details of the time response (to an impulse, an arbitrary signal, or a sinusoid) can be listed on the screen for IIR and FIR filters, with overflows flagged in color.

  • For IIR filters the sinusoidal response for all state variables can be plotted on either a linear or dB scale this serves primarily to indicate the superior overflow performance of the merged-biquad IIR filter implementation.

Complete details are found at DISPRO Features.

What is STOZXFR?

STOZXFR provides two capabilities: (i) interactive adjustment of a z-domain transfer function to achieve a desired magnitude or delay characteristic, and (ii) conversion of an arbitrary s-domain transfer function to a z-domain equivalent which can be adjusted to optimize the match between s- and z-domain characteristics.  It is a Windows application optimized for a 1024x768 display.  More details are at StoZ Background, and a detailed operations guide is at StoZ User Guide.


This Web site last updated on 4 October 2013                                                        Hit Counter

[Digital Logic Design - THE resource for Digital Logic Design! ]

[ Home ] DISPRO Background ] DISPRO Features ] DISPRO User Manual ] DISPRO Download ] Merged-Biquad ] StoZ Background ] StoZ User Guide ] StoZ Download ] Contact Me ] Consulting ] Guest Book ] Win7 Operation ]

[This is the personal web site of Dr. John O'Donnell]