Lesson 13 of 30 intermediate 4 min read

Before this:Convolution & impulse response

FIR filters

Key takeaways A FIR (finite impulse response) filter is convolution with a fixed set of taps — its output depends only on current and past inputs, so its impulse response has a finite length and it’s always stable. FIR filters can be designed with sharp responses and linear phase (no shape distortion), which makes them the workhorse for isolating one channel from a wideband capture.

FIR filters are the most common filter in software radio. This lesson shows what they are and how they carve one channel out of a crowded band.

What makes a filter FIR

A FIR filter is exactly the tapped convolution from the last lesson:

output[n] = tap0*x[n] + tap1*x[n-1] + ... + tapK*x[n-K]

The key property: the output depends only on the input samples, never on previous outputs. So when the input impulse passes the last tap, the output goes silent — the impulse response is finite, K+1 samples long. Because nothing feeds back, a FIR filter can never run away or ring forever; it is unconditionally stable.

Taps set the shape

The taps are the filter. Choose them well and you get a low-pass filter (keep low frequencies, reject high), a band-pass (keep a middle band), or a high-pass. More taps buy a sharper transition between “keep” and “reject” — at a higher compute cost, since each output sample is that many multiply-adds.

Designers rarely pick taps by hand. A design method (often a windowed sinc, using the window functions from Unit 2) turns a specification — “flat below 6 kHz, at least 60 dB down above 8 kHz” — into the tap values. GopherTrunk’s channel filters, for instance, use a Kaiser-windowed design tuned for a stopband more than 60 dB below the passband.

Linear phase: keeping the shape

A FIR filter whose taps are symmetric has linear phase: every frequency is delayed by the same amount of time. That matters because a digital signal’s information is in its precise shape — the transitions between symbols. A filter that delayed different frequencies by different amounts would smear those transitions and cause errors. Linear phase preserves the shape, which is why FIR is preferred right before demodulation.

Isolating a channel

Here’s the job FIR filters do constantly in a scanner. A capture is 2.4 MHz wide and full of signals; your channel is 12.5 kHz somewhere in it. After mixing that channel to zero, a low-pass FIR keeps only the narrow band around zero and rejects everything else:

keep this FIR passband one clean channel
A low-pass FIR keeps the narrow band around zero and rejects the rest — one channel pulled cleanly out of a crowded capture.

That same filter also does double duty as the anti-aliasing guard before the rate is reduced — the subject of decimation.

Quick check: why is a FIR filter always stable?

Recap

  • A FIR filter is convolution with fixed taps; output depends only on inputs, so it’s finite and stable.
  • The taps set the response — low-pass, band-pass, high-pass; more taps mean a sharper cutoff.
  • Symmetric taps give linear phase, preserving a digital signal’s shape.
  • FIR filters isolate a channel and guard against aliasing before rate reduction.

Next up: IIR filters, which trade some of that predictability for efficiency.

Frequently asked questions

What does FIR stand for and mean?

FIR is Finite Impulse Response. The filter’s response to a single impulse lasts a finite number of samples — exactly the number of taps — then stops, because the output depends only on the current and past inputs, never on past outputs. This makes FIR filters stable and predictable.

Why are FIR filters used for isolating radio channels?

FIR filters can have very sharp, precisely designed frequency responses and linear phase, meaning all frequencies are delayed equally so the signal’s shape isn’t distorted. That precise, distortion-free selectivity is exactly what you want to cut one narrow channel out of a wide capture before demodulating it.