DSPRelated.com
Forums

adaptive quantization and transmission errors

Started by dudelmann November 26, 2009
Hi

I am working on a backward adaptive non-uniform quantizer for use in
wireless transmissions. More precisely my quantizer currently consists of
an adaptive compader (currently atan-based) and a simple uniform quantizer.
This works very well.

Trouble is:

I am going to transmit data over a noisy wireless channel. As of now the
errors are bringing the adaptive expander on the decoder side out of step
with the adaptive compressor on the encoder side.

Any idea how to make an error robust adaptive quantizer?

Suggestions regarding the improvement of my design are as welcome as
suggestions of completely different approaches.

My current design in pseudo c-code:

// compander
  in = atan(y * in);

tx = quantizer(in);

// adaption
  if (tx > thresh_hi)
    y--;
  if (tx < thresh_lo)
    y++;

///// TRANSMISSION

rx = tx + transmission_errors;

out = dequantize(rx);

// expander
  out = tan(out) / y2;

// adaption
  if (rx > thresh_hi)
    y2--;
  if (rx < thresh_lo)
    y2++;



dudelmann wrote:
> Hi > > I am working on a backward adaptive non-uniform quantizer for use in > wireless transmissions. More precisely my quantizer currently consists of > an adaptive compader (currently atan-based) and a simple uniform quantizer. > This works very well. > > Trouble is: > > I am going to transmit data over a noisy wireless channel. As of now the > errors are bringing the adaptive expander on the decoder side out of step > with the adaptive compressor on the encoder side. > > Any idea how to make an error robust adaptive quantizer?
You have to introduce "leakage" into adaptation. I.e. use lowpass filter function instead of integrator function. So the error influence will fade out with time.
> // adaption > if (tx > thresh_hi) > y--; > if (tx < thresh_lo) > y++;
y -= alpha * y; Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com