Field Guide · algorithm

Also known as: zero-forcing equalizer, ZF equalizer, channel inverse filter

A zero-forcing (ZF) equalizer is a linear filter that removes intersymbol interference (ISI) by applying the inverse of the channel’s frequency response, so the cascade of channel and equalizer is flat and each symbol contributes nothing to its neighbours.1 It is the most intuitive equalizer — literally undo the channel — but inverting the channel also inverts and amplifies noise wherever the channel is weak, which is its defining flaw.

channel H(f)null 1/H(f)peak flat — noise up
ZF inverts the channel: a deep spectral null in H(f) becomes a tall peak in 1/H(f). The signal comes out flat, but noise at that frequency is boosted by the same peak.

How it works

Think of the channel as a filter H(f) that colours the transmitted spectrum and smears symbols together. The ZF equalizer sets its own response to C(f) = 1/H(f):

  • The product H(f)·C(f) = 1 is perfectly flat, so in the time domain the combined impulse response is a single spike — one symbol, zero tails, ISI forced to zero.
  • With a finite-length filter, ZF instead forces the combined impulse response to zero at the sampling instants of neighbouring symbols (the Nyquist “no-ISI” condition), which is where the name comes from.
  • The taps can be solved directly from an estimate of the channel, or learned adaptively by an LMS/RLS rule driven toward the zero-ISI condition.

Noise enhancement

The catch is that ZF ignores noise entirely. Wherever H(f) is small — a deep fade or spectral null from multipath1/H(f) is large, so the equalizer applies enormous gain at exactly the frequencies where the received signal is weakest and dominated by noise. It removes all ISI but can crater the output SNR, badly scattering the constellation on channels with nulls. ZF therefore performs acceptably only when the channel has no severe nulls and the SNR is high.

Contrast with MMSE

The MMSE equalizer fixes this by minimising the total mean-square error — residual ISI plus noise — rather than ISI alone. Its response is roughly H*/(‖H‖² + σ²), which stops short of full inversion near nulls and so avoids the worst noise blow-up. At high SNR (σ² → 0) MMSE reduces to the ZF solution; at low SNR it is substantially better. In both cases a nonlinear decision-feedback equalizer or an MLSE receiver outperforms a purely linear equalizer on severe channels.

Relevance to SDR

Zero forcing is the textbook baseline for linear channel equalization and a useful mental model for what any equalizer is trying to accomplish — flatten the channel. In real receivers it is usually passed over in favour of MMSE, DFE, or MLSE precisely because of its noise-enhancement penalty, but it remains common in high-SNR wireline contexts and as a starting point for adaptive designs. GopherTrunk decodes narrowband, RRC-shaped land-mobile signals with a matched filter and synchronisation rather than an explicit ZF equalizer, so ZF is described here as a canonical equalization concept from the wider RF and communications field.

Sources

  1. Zero-forcing equalizer — Wikipedia, on channel inversion, the zero-ISI condition, and noise enhancement versus MMSE. 

See also