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:

OrderRoleRecommended for
3Entry/low-powerPortable devices, real-time priority
5BalancedGeneral conversion
7DefaultMature balance of performance and quality
9AdvancedPursuing a lower in-band floor with ample hardware
11ExtremePushing 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.