DSD Noise Shaping Deep Dive: IIR vs FIR, and Choosing Between Orders 3–11
Noise shaping is the single most decisive stage in PCM→DSD conversion quality. This article explains what it does, how structures and orders differ, and how to configure it in DpdoEngine.
1. Why noise shaping is needed
Reducing multi-bit PCM to a 1-bit representation introduces enormous quantization error — without treatment, the in-band SNR would be only about 6 dB/bit, which is unusable.
Noise shaping exploits the ear's insensitivity to high frequencies: a feedback loop pushes the quantization noise into the ultrasonic band (>20 kHz), keeping the in-band noise floor extremely low.
multi-bit signal ──→ [quantizer] ──→ 1-bit output
↑ │
└── error feedback ──┘ (noise shaper)
Resulting noise distribution: suppressed in-band (for high SNR), elevated out-of-band (removed by the playback chain's low-pass filter).
2. IIR vs FIR: which structure?
IIR (infinite impulse response)
- Principle: recursive feedback structure; high-order shaping with modest computation
- Strengths: better in-band performance at a given order; computationally efficient, suited to high oversampling
- Weaknesses: nonlinear phase response
- DpdoEngine structure options: standard IIR, MASH (multi-stage noise shaping), CIFB (chain of integrators with feedback), polynomial
FIR (finite impulse response)
- Principle: feed-forward finite-length filtering, fixed coefficients
- Strengths: linear phase, constant group delay — errors are predictable through multi-stage processing, ideal for mastering workflows
- Weaknesses: high tap counts needed for equivalent performance; in-band shaping efficiency slightly lower than IIR at the same order
- DpdoEngine default: taps auto (minimum 4096 window / 512 Remez)
One-line choice: - General playback/audiophile → 7th- or 11th-order IIR (performance/efficiency balance) - Mastering/multi-stage processing → FIR (predictable phase, no cumulative phase error)
3. Choosing the order: 3/5/7/9/11
The order determines the slope of the shaping curve — higher orders press the in-band noise lower, but at a cost:
- More computation (11th-order IIR noticeably taxes the CPU; 4+ cores recommended)
- Stricter modulator stability requirements (higher-order feedback loops need finer pole/zero tuning)
- Higher out-of-band noise peaks (more demanding on the playback chain's low-pass filter)
DpdoEngine configuration guide:
| Order | Role | Recommended for |
|---|---|---|
| 3 | Entry/low-power | Portable devices, real-time priority |
| 5 | Balanced | General conversion |
| 7 | Default | Mature balance of performance and quality |
| 9 | Advanced | Pursuing a lower in-band floor with ample hardware |
| 11 | Extreme | Pushing quantization noise furthest; demanding hardware |
Advanced parameters:
- --pole V: pole placement (default 8.5), shapes the shaping curve and stability
- --zero: zero optimization
- --mash / --cifb / --poly: switch shaping structure
4. Verifying shaping performance (measurement path)
# Compare 9th vs 11th order in-band performance
dsp_bench --input test.wav --order 9 --order 11
# Measure distortion and noise floor of the output
thdn output.dsf
What to look at: - In-band (20 Hz–20 kHz) noise floor: higher orders push quantization noise further away — lower in-band floor, higher out-of-band peak, steeper curve (the 7th vs 11th difference is most audible in quiet passages and high-frequency detail) - Position and height of the out-of-band noise peak (determines the low-pass burden on the playback chain) - Actual listening: the playback chain is the final judge
5. Common misconceptions
- "Higher order is always better": not necessarily. 11th order demands more from hardware and the playback chain, with more aggressive out-of-band noise — some DACs actually struggle with it. 9th order is the sweet spot for most scenarios.
- "FIR is always better than IIR": FIR wins on phase behavior; IIR wins on in-band shaping efficiency. Different tools for different jobs.
- "The shaper can fix a bad source": it cannot. Noise shaping only handles quantization noise — distortion, clipping, and compression damage in the source are not repaired.
Written by Dpdo. Parameter details in the parameter reference. Measurements are per dsp_bench / thdn output.