Skip to main content

Non-uniform quantization using uniform quantizer; μ-law

Short answer

Non-uniform quantization is implemented by companding: a compressor (nonlinear mapping) followed by a uniform quantizer, with an expander at the receiver. μ-law is y = [ln(1+μ|x|)/ln(1+μ)] sgn(x); with μ=255, small signals are amplified more, giving nearly constant SQNR across a wide dynamic range.

Elaborate on the technique of implementing non-uniform quantization using uniform quantization technique. With a suitable diagram, illustrate the working of μ law.

Non-uniform quantization using a uniform quantizer

A non-uniform quantizer is equivalent to a compressor, followed by a uniform quantizer, with an expander at the receiver. This is called companding.

x(t)->[Compressor]--y-->[Uniform  ]-->[Encoder]-->channel
       y = c(x)          quantizer
channel->[Decoder]-->[Expander x = c^-1(y)]-->x^(t)

Technique:

  1. The input xx (normalised to ∣x∣≤1|x| \le 1) is passed through a non-linear compressor y=c(x)y = c(x) with large slope near zero and small slope near full scale.
  2. A uniform quantizer with step Δ\Delta operates on yy. Step Δ\Delta in yy corresponds to a step in xx of
Δx≈Δc′(x)\Delta_x \approx \frac{\Delta}{c'(x)}

so where c′(x)c'(x) is large (small xx) the effective step is fine, and where c′(x)c'(x) is small (large xx) the step is coarse. 3. At the receiver, the expander c−1(y)c^{-1}(y) undoes the compression. Compressor + expander together have a linear overall response. 4. If c(x)c(x) is logarithmic, Δx∝∣x∣\Delta_x \propto |x|, so the noise is proportional to the signal and SQNR is nearly constant for all levels.

In practice c(x)c(x) is implemented digitally as a piecewise-linear segmented characteristic, so standard uniform ADC/DACs can be used.

μ-law

y=ln⁡(1+μ∣x∣)ln⁡(1+μ) sgn(x),0≤∣x∣≤1y = \frac{\ln(1+\mu|x|)}{\ln(1+\mu)}\,\text{sgn}(x), \qquad 0 \le |x| \le 1
  • μ=0\mu = 0: uniform (linear). Standard μ=255\mu = 255 for 8-bit PCM (North America, Japan).
  • Small ∣x∣|x| (μ∣x∣≪1\mu|x| \ll 1): y≈μxln⁡(1+μ)y \approx \frac{\mu x}{\ln(1+\mu)}, linear with large gain (46 for μ=255\mu = 255).
  • Large ∣x∣|x| (μ∣x∣≫1\mu|x| \gg 1): y≈ln⁡(μ∣x∣)ln⁡(1+μ)y \approx \frac{\ln(\mu|x|)}{\ln(1+\mu)}, logarithmic.

Example (μ=255\mu = 255): x=0.01→0.228x = 0.01 \to 0.228, x=0.1→0.591x = 0.1 \to 0.591, x=0.5→0.876x = 0.5 \to 0.876, x=1→1x = 1 \to 1.

 y
1.0|              ____----   mu = 255
   |        __----      __-- mu = 5
   |    _-'      ___---
   |  /    __---    .  mu = 0 (y = x)
   | / _--     .
   |/-    .
   +---------------------> x
   0                   1.0

Larger μ\mu gives more compression and a wider dynamic range with nearly flat SQNR (about 38 dB over 40 dB input range for 8-bit μ=255\mu = 255).

✓ Answer checked by Claude Opus 5.5 (high effort)

All Communication Systems chapter 4 questions →