Multirate Polyphase Filters and Filter Banks, (GREEN Technology, also known as DSP Magic)
Recently, someone posted a question on a DSP blog I visit occasionally. How does one design a very narrow bandwidth low pass filter? One version of the problem is a filter with 10 Hz wide pass band, a 10 Hz wide transition band, and a 1 kHz sample rate. Stopband attenuation >80 dB with passband ripple <0.01 dB. This a very bad combination: low transition bandwidth with high sample rate! I think students post their homework problems on the blog so I seldom volunteer to do their homework. I did however read the many suggestions posted on the blog submitted by regular subscribers to the blog. They were interesting to read but nothing clever and of limited value. Some were just plain silly, but to quote a famous line, “who am I to judge?” The consensus was that some problems are hard and require lots of resources, this is one of them! All it takes is lots of filter coefficients and lots of multiply and adds. 405 taps seemed to be about the right number. When I read one suggestion from someone I know at Westminster University in London, I simply had to throw my hat in the ring. It then became a game: how small could you make the filter and still satisfy the specifications? For a week I submitted daily solutions requiring fewer and fewer coefficients. I started at 38 M&A per input sample and I stopped when I reached 6 M&A per input sample!
The presentation will show how to build narrowband filters with more than an order of magnitude reduction of workload. The only requirement is that there be a large ratio of sample rate to bandwidth. Once we learn the simple trick to accomplish this reduction we pose the question, Can we achieve similar reduction in workload when there is not a large ratio of sample rate to bandwidth? The answer surprisingly is yes! We will share the recipe for the secret sauce so you too will know how wideband filters can also be implement with more than an order of magnitude workload reduction. How about an I-Q filter pair with 1400 taps per arm replaced with a resampling filter requiring only 100 real multiplies?
What this presentation is about and why it matters
This talk by Fred Harris explains how multirate polyphase filters and filter banks let you implement narrowband and wideband filters much more efficiently than a single, long FIR. The practical punchline: if you can change sample rate and rearrange where filtering happens, you often turn hundreds of multiplies-per-sample into a few dozen (or fewer). For engineers building radios, channelizers, software-defined radios, or any system that must isolate many narrow bands inside a wide spectrum, these techniques reduce cost, power, and time-to-market while sometimes enabling designs that were previously impractical.
Who will benefit the most from this presentation
- DSP engineers and system designers working on receivers, channelizers, or software-defined radio.
- Students learning multirate processing, FIR design, or filter-bank concepts who want engineering intuition and practical recipes.
- Anyone optimizing computational load for real-time filtering, resampling, or multi-channel extraction.
What you need to know
The talk builds on a few core ideas. You don’t need to be an expert, but familiarity with the items below will help you get more from the explanations and examples.
- Sampling and aliasing: Understand that sampling repeats the spectrum and that decimation (downsampling) aliases those repeats into lower bands. Harris uses aliasing intentionally as a tool rather than an enemy.
- FIR filtering basics: Convolution, impulse response, and the cost of long FIRs (multiplications per sample) — why a 400–600 tap filter can be expensive in real-time systems.
- IQ representation: Why complex baseband (I/Q) removes image ambiguity and how analog IQ mismatch motivates digital solutions.
- Equivalence theorem (mix–filter order): Mixing (heterodyning) before filtering is equivalent to modulating the filter coefficients and filtering at the carrier — this lets you move filters to the signal instead of moving the signal to the filter.
- Polyphase decomposition: A long FIR can be partitioned into M subfilters (polyphase components) when you plan to decimate by M. That lets most work be done at the lower rate because each input sample only traverses one subfilter.
- Noble identities and twiddle factors: Noble identities permit reordering resampler and filter blocks. Twiddle factors (phasors) reinsert the phase lost when reorganizing delays; they connect the polyphase structure to DFT/FFT operations.
- Filter banks and the (I)DFT: The polyphase outputs can be combined with an IDFT/FFT (or DFT) to give multiple channel outputs simultaneously (analysis/synthesis filter banks, perfect-reconstruction under proper design).
Small inline math reminders you may see in the talk: phasors and rotation use terms like $e^{j\omega n}$; decimation by $M$ creates $M$ aliased Nyquist zones; roots of unity are $e^{j2\pi k/M}$ which play into the IDFT.
Glossary
- Decimation — Downsampling by an integer factor $M$; discards samples and causes spectrum aliasing.
- Interpolation — Upsampling (zero-stuffing) followed by filtering to reconstruct a higher-rate signal.
- Polyphase decomposition — Rewriting an FIR as $M$ subfilters that process staggered input samples; key to efficient decimation/ interpolation.
- Noble identity — Equality that allows swapping certain sampling-rate change operations with filtering without changing overall behavior.
- Twiddle factors — Complex phase multipliers (roots of unity) that appear when reorganizing delays and are closely related to FFT coefficients.
- Filter bank — A set of analysis filters (and their dual synthesis filters) that split a signal into frequency subbands; can be implemented with polyphase+DFT.
- Channelizer — Practical filter bank that extracts many narrow channels from a wideband input (often using polyphase + FFT).
- Equivalence theorem — The principle that mixing then filtering is equivalent to modulating filter coefficients and filtering before mixing.
- Perfect reconstruction — Property of some filter banks that allows exact (or near-exact) recovery of the input after analysis and synthesis.
- Roots of unity — The complex numbers $e^{j2\pi k/M}$ used in DFT/IDFT and in derotation of aliased components.
Final note
Fred Harris’s presentation mixes solid engineering intuition, historical perspective, and practical tricks (equivalence theorem, noble identities, polyphase partitioning) that let you do “applied magic” — achieving dramatic reductions in computation while preserving filter performance. If you work on radios, channelizers, or any system with expensive FIR work, this talk is a compact, example-rich guide to techniques you can apply right away. Bring a notebook: the talk rewards careful listening and will give you concrete ideas for moving filter work into lower-rate domains and leveraging FFTs to share a single long filter across many channels.
Explained everything very well
mycoles
Thank you a lot for the graet talk!
When I do downconversion instead of throwing extra samples away I accumulate and average them. Is it meaningful to do? Can it be implemented in polyphase filter?
Vladimir,
By down conversion do you mean I-Q down conversion or heterodyne with quadrature mixers or multipliers. Filtering after the down conversion is required to average away the sum frequency resulting from the products. The polyphase version of down conversion avoids the complex products at the high input rate.
does this help?
fred
I am sorry if my question made you confused. Thank you a lot for reply!
I meant downsampling. In my application I do downsampling of the radar signal (not I-Q) which comes on 800Hz sample rate by 64 and then filter the result to get clear vital signal.
I just do not discard input samples but accumulate and average 64 samples for one output sample.
You are not discarding samples you are redistributing them... each path is taking 1-mth of the input sample and the remaining samples are being processed by the other M-1 paths. the down sampling happens per path but not the sinput sample stream... the commutator is like playing cards... when the dealer distributes the cards to different players, the total number of cards remains the same... the players just process their assigned subset.
fred
Thank you for the nice example! It is more clear now.
So we use all of the input samples but propagate them through different paths by commutator. And if we don't use resample on the output then the sample rate of the input and output signals are same. Is it correct?
thank you and Well done!
managers always want more as well!
That too!
fred
On 'Down Sample Complex Digital IF', is it correct to say that we're still shifting the freq of the signal down, but after we filter our band of interest first? If we're filtering with a digital filter, then doesn't that present the same high-sample-rate challenge? Is the downsample done by reducing the output sample rate, compared to the input sample rate? thx!
there are two steps.. the equivalency therom interchanges thedown converter and the filter. the down converter the steps to te downside of the down sampler and runs at output rate. the second step is to convert up-converted filter to a polyphase and pull the resampler to its input side. the intenal rotators become a constant on each path and can be pulled out of the filter weights and applied to the output of the path filters . Since we have not selected the desired nyquist zone to extract from the filter path de=rotaed sum.. we can use the filter path sums for form all the de-aliased baseband channel time series. the IFFT makes the cast insignificant> nothing runs at the high input rate now!
Equivalency: Which samples are getting discarded?
TheBOOM,
Good question. Nyquist doesn't address the phase of the samples we keep...only spacing between them but there is no reference time 0. When we build the polyphase filter the starting point is undefined... Unless there is a refernce like a second resampler to which we are keepning them phase locked. I have used the starting point as part of a time synchronizing system. in the M-path polyphase all paths are equivalent except for different delays... that's why we can to time synchronization by inserting or removing delay by changing which weights are in the signal path... amkes a great interpolator chain too!
Dr harris, I appreciate you so much. At my company, all of our 902-928 MHz receivers for meter reading are based on your polyphase channelizer. My colleague has just completed a new implementation using Winograd (prime-factor) Fourier Transforms. We both owe you a debt of gratitude.
Wow, my mind is boiling. I have known undersampling technique as a super smart. And there is so much more! Thank you very much and hope that the second edition of book will be available soon. Best regards and chapeau bas!
fred harris is fantastic as always!
Can't wait for the next edition of your book, fred!
Terrific fred, Looking forward to the new edition of your book - It'll keep me occupied for months !
Thanks Fred for your wonderful presentation. My curiosity has been piqued and I will now read up on Multi Rate Filters, about which I know nothing.
Lalu
Fantastic.
Simply unbeatable.
Best prof ever.
Thank you so much Professor Harris!! That was such a master class.
"Since i'm here and you're not, i'm going to keep going." :D
Deep and entertaining talk!
Delighted to hear there's a new version of the book. It's a good one. Just be cautious about grey-market international versions (ethics aside, the last edition was missing material. Or so I've heard.)
Fred you could self publish and make it available in electronic form
Product placement?
haha!

Vladimir,
the M-path filter was designed to permit the interchange of filtering and resampling and thus only compute the output samples at a lower output sample rate. If you use the M-path without the embedded resampling you would wasting processing cycles. There is no advantage to operate systems at rates significantly above the Nyquist rate. It just raises the cost and the temperature.
fred h