What is the noise bandwidth of a digital filter and how does it differ from the 3 dB bandwidth?
Filter Noise Bandwidth
The noise bandwidth is the correct bandwidth to use in noise power calculations. Using the 3 dB bandwidth is a common error that leads to 0.5-2 dB underestimation of the noise floor.
| Parameter | Superheterodyne | Direct Conversion | Digital IF |
|---|---|---|---|
| Image Rejection | 60-90 dB (filter) | 30-50 dB (mismatch) | N/A (digital) |
| DC Offset | No issue | Major issue | No issue |
| LO Leakage | Low | High | Low |
| Integration | Difficult | Easy (single chip) | Moderate |
| Dynamic Range | 80-120 dB | 60-90 dB | 70-100 dB |
- Performance verification: confirm specifications against the application requirements before finalizing the design
- Environmental factors: temperature range, humidity, and vibration affect long-term reliability and parameter drift
- Cost vs. performance: evaluate whether the application demands premium components or standard commercial grades
Frequently Asked Questions
When does this matter most?
The noise bandwidth correction matters most when: using a low-order filter (1st or 2nd order: the noise BW is 11-57% wider than the 3 dB BW, corresponding to 0.5-2 dB error in noise calculation). Making precision noise figure measurements (the measurement accuracy depends on knowing the exact noise bandwidth of the measurement filter; calibrated noise figure meters account for this internally). Calculating the sensitivity of a receiver with a Gaussian or Butterworth IF filter (common in spectrum analyzers: the resolution bandwidth (RBW) is the 3 dB BW, but the noise bandwidth is wider; spectrum analyzers typically display the noise bandwidth correction factor in their specifications).
How do I calculate it for a digital filter?
For a digital filter: compute the noise bandwidth numerically by: evaluating the filter's frequency response H(f) at closely-spaced frequency points. Computing |H(f)|^2 at each point. Summing (integrating) |H(f)|^2 across all frequencies. Dividing by the peak value |H_max|^2. The result is the noise bandwidth in Hz (or as a ratio to the 3 dB bandwidth). In MATLAB/Python: use the freqz function to compute H(f), then: B_n = sum(abs(H).^2) × (f_s / N_points) / max(abs(H).^2), where f_s is the sampling frequency and N_points is the number of frequency evaluation points.
What about matched filters?
Matched filter noise bandwidth: a matched filter is designed to maximize the SNR for a specific pulse shape. The matched filter's noise bandwidth is: B_n = 1 / (pulse duration × processing gain factor). For a rectangular pulse of duration T: the matched filter's noise bandwidth is 1/T (equal to the pulse bandwidth). For a chirp (linear FM) pulse of duration T and bandwidth B: the matched filter's noise bandwidth is approximately B (much wider than 1/T), and the processing gain is B×T (the time-bandwidth product). The noise bandwidth of the matched filter is the correct bandwidth for calculating the post-filter SNR.