# LLR quantizer

Started by May 4, 2009
```Hi,

Can someone explain how to quantize LLRs values (which are real numbers)
to finite precision i.e. discrete soft bit. I know that Es/No has impact on
quantizer boundaries but I just dont understand how to map correctly LLRs
to discrete soft bit to maximize the decoder performance. This is because
LLRs could be very small or very high values in dependence of Es/No. I also
know fact that generally, quantization to a discrete soft bit is
accomplished, in the prior art, with a linear quantization process, which
determines the quantization range from -a to +b (b can be equal to a) and
divides the range evenly to the more than 2 levels. The LLR having a value
smaller than -a is assigned to the first level (level 0 for example) and
the LLR having a value larger than +b is assigned to the last level (for
example 7). The quantized soft bits, then, become the input for a soft
decoder, which decodes the coded soft bits to the decoded binary bits.
But this technic is far away of optimal. I would like to understand
adaptive quantization of soft bits(Es/No i.e. SNR dependence)

Can someone explain in short example how to achieve this. For example if
we have FEC coding and after QPSK(one symbol carries 2 bits)
soft(LLR)demodulation two LLRs: 16.42 and -3.56, and we know that Es/No is
10dB how to map this LLRs to 3 soft bit precision(000(0) to 111(7)), or we
have the same LLRs but Es/No is 3dB. Maybe some short MATLAB code or just
explanation how to do this.

Thanks and best regards
```
```Melinda wrote:
> Hi,
>
> Can someone explain how to quantize LLRs values (which are real numbers)
> to finite precision i.e. discrete soft bit. I know that Es/No has impact on
> quantizer boundaries but I just dont understand how to map correctly LLRs
> to discrete soft bit to maximize the decoder performance. This is because
> LLRs could be very small or very high values in dependence of Es/No. I also
> know fact that generally, quantization to a discrete soft bit is
> accomplished, in the prior art, with a linear quantization process, which
> determines the quantization range from -a to +b (b can be equal to a) and
> divides the range evenly to the more than 2 levels. The LLR having a value
> smaller than -a is assigned to the first level (level 0 for example) and
> the LLR having a value larger than +b is assigned to the last level (for
> example 7). The quantized soft bits, then, become the input for a soft
> decoder, which decodes the coded soft bits to the decoded binary bits.
> But this technic is far away of optimal. I would like to understand
> adaptive quantization of soft bits(Es/No i.e. SNR dependence)
>
> Can someone explain in short example how to achieve this. For example if
> we have FEC coding and after QPSK(one symbol carries 2 bits)
> soft(LLR)demodulation two LLRs: 16.42 and -3.56, and we know that Es/No is
> 10dB how to map this LLRs to 3 soft bit precision(000(0) to 111(7)), or we
> have the same LLRs but Es/No is 3dB. Maybe some short MATLAB code or just
> explanation how to do this.
>
> Thanks and best regards

Based on what I know, which hasn't extended to actually doing this
particular thing:

My guess is that your best bet is to put a ceiling on the maximum ratio
that you want to pay attention to, so your top and bottom numbers
basically mean "way big".  If I recall my theory correctly, the biggest
coding gain you get from soft decisions comes when you introduce
erasures (I.e. your decoder expects "one" "zero" and "I dunno" from the
quantizer).

So my first approach would be to try to discover a best fixed mapping
from LLR to decoder input.

Keep in mind that if your SNR is really good you don't really need soft
decisions, so there's no coding gain to be had by giving the decoder
something "better".  The soft decisions are only good when you're trying
to eke out a bit more performance from an otherwise marginal channel.

--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Do you need to implement control loops in software?
"Applied Control Theory for Embedded Systems" was written for you.
See details at http://www.wescottdesign.com/actfes/actfes.html
```
```
Melinda wrote:

> Hi,
>
> Can someone explain how to quantize LLRs values (which are real numbers)
> to finite precision i.e. discrete soft bit.

This is the third link in the list:

http://www.vodafone-chair.com/publications/2009/Rave_W_SPL_09.pdf

VLV

```
```On May 4, 1:32&#2013266080;pm, Tim Wescott <t...@seemywebsite.com> wrote:
> Melinda wrote:
> > Hi,
>
> > Can someone explain how to quantize LLRs values (which are real numbers)
> > to finite precision i.e. discrete soft bit. I know that Es/No has impact on
> > quantizer boundaries but I just dont understand how to map correctly LLRs
> > to discrete soft bit to maximize the decoder performance. This is because
> > LLRs could be very small or very high values in dependence of Es/No. I also
> > know fact that generally, quantization to a discrete soft bit is
> > accomplished, in the prior art, with a linear quantization process, which
> > determines the quantization range from -a to +b (b can be equal to a) and
> > divides the range evenly to the more than 2 levels. The LLR having a value
> > smaller than -a is assigned to the first level (level 0 for example) and
> > the LLR having a value larger than +b is assigned to the last level (for
> > example 7). The quantized soft bits, then, become the input for a soft
> > decoder, which decodes the coded soft bits to the decoded binary bits.
> > But this technic is far away of optimal. I would like to understand
> > adaptive quantization of soft bits(Es/No i.e. SNR dependence)
>
> > Can someone explain in short example how to achieve this. For example if
> > we have FEC coding and after QPSK(one symbol carries 2 bits)
> > soft(LLR)demodulation two LLRs: 16.42 and -3.56, and we know that Es/No is
> > 10dB how to map this LLRs to 3 soft bit precision(000(0) to 111(7)), or we
> > have the same LLRs but Es/No is 3dB. Maybe some short MATLAB code or just
> > explanation how to do this.
>
> > Thanks and best regards
>
> Based on what I know, which hasn't extended to actually doing this
> particular thing:
>
> My guess is that your best bet is to put a ceiling on the maximum ratio
> that you want to pay attention to, so your top and bottom numbers
> basically mean "way big". &#2013266080;If I recall my theory correctly, the biggest
> coding gain you get from soft decisions comes when you introduce
> erasures (I.e. your decoder expects "one" "zero" and "I dunno" from the
> quantizer).
>
> So my first approach would be to try to discover a best fixed mapping
> from LLR to decoder input.
>
> Keep in mind that if your SNR is really good you don't really need soft
> decisions, so there's no coding gain to be had by giving the decoder
> something "better". &#2013266080;The soft decisions are only good when you're trying
> to eke out a bit more performance from an otherwise marginal channel.

If I understand, LLR sets the thresholds to maximize the distinctions
between values?  What does it measure to determine where the
thresholds should be?  Also, why would this be better than fixed
thresholds?  How does the noise change where the threshold should be?

Rick
```