I understand this now. The only remaining question is that in the following
reference, how is gamma_(i,j) in section 6.1 derived, when it is equated to
V(x_k)X(i,j) + R(Z_k)Z(i,j).
http://csee.wvu.edu/~mvalenti/documents/valenti01.pdf
This gamma equation seems to be a correlation of LLRs with 0 and 1. How is
this expression derived?
_____________________________
Posted through www.DSPRelated.com
Reply by Alexander Petrov●January 7, 20142014-01-07
> Alexander's reference is for a different case and I'm still not very
clear.
Why? QAM soft demapper does not depend on type of binary code.
One nuance about high order constellations(>16QAM), bits are unequal
protection, and some bits may be uncoded, like Ungerboeck set
partitioning.
_____________________________
Posted through www.DSPRelated.com
Reply by Eric Jacobsen●January 7, 20142014-01-07
On Mon, 06 Jan 2014 22:13:46 -0600, "commsignal" <58672@dsprelated>
wrote:
>For BPSK you generate the channel LLRs by scaling each received symbol
>>to its corresponding bit. For QPSK you do the same but on two axes
>>instead of one. For higher-order modulations you must take some
>>additional care to really get a useful channel soft-decision LLR for
>>each bit, but it is possible to do and depends on how the mapping is
>>constructed.
>>
>>Once that is done and there is a channel LLR value for each received
>>decoder input bit, that job doesn't have to be done again and the
>>decoder doesn't really care what the modulation type was.
>>
>>
>>Eric Jacobsen
>>Anchor Hill Communications
>>http://www.anchorhill.com
>>
>
>Do you have some document which describes this in detail? Alexander's
>reference is for a different case and I'm still not very clear.
You could try some search terms like "high-order modulation
soft-decision" or something like that.
You just need a soft-decision (LLR) input value for each coded bit.
For BPSK that's one bit per symbol, two for QPSK. For 16QAM there
are two bits per axis, so you need to generate two LLR values per
symbol per axis to get the four channel bits per symbol.
For high-order modulations (e.g., 16QAM or above) specifically how to
do the scaling for the LLR sometimes depends on the mapping of the
constellation.
Eric Jacobsen
Anchor Hill Communications
http://www.anchorhill.com
Reply by commsignal●January 7, 20142014-01-07
For BPSK you generate the channel LLRs by scaling each received symbol
>to its corresponding bit. For QPSK you do the same but on two axes
>instead of one. For higher-order modulations you must take some
>additional care to really get a useful channel soft-decision LLR for
>each bit, but it is possible to do and depends on how the mapping is
>constructed.
>
>Once that is done and there is a channel LLR value for each received
>decoder input bit, that job doesn't have to be done again and the
>decoder doesn't really care what the modulation type was.
>
>
>Eric Jacobsen
>Anchor Hill Communications
>http://www.anchorhill.com
>
Do you have some document which describes this in detail? Alexander's
reference is for a different case and I'm still not very clear.
_____________________________
Posted through www.DSPRelated.com
Reply by Eric Jacobsen●January 6, 20142014-01-06
On Sun, 05 Jan 2014 23:00:55 -0600, "commsignal" <58672@dsprelated>
wrote:
>>On Sun, 05 Jan 2014 18:10:25 -0600, "commsignal" <58672@dsprelated>
>>wrote:
>>
>>>>On Thu, 02 Jan 2014 19:21:48 -0600, "commsignal" <58672@dsprelated>
>>>>wrote:
>>>>
>>>>>Hi,
>>>>> Turbo codes implementation through BCJR algorithm for binary
>>>modulation
>>>>>is straightforward. Can someone inform me about how to do that for
>>>>>multi-level modulation, say QPSK or 16-QAM. Specifically, how does the
>>>>>decoder function. Any reference paper is also welcome.
>>>>>Thanks.
>>>>
>>>>There is no difference in the BCJR algorithm or anything else for
>>>>Turbo Codes in higher-order modulation. The only difference is
>>>>generating the soft decision metrics for each bit, and that's no
>>>>different than for any other typical FEC with soft-decision input.
>>>>
>>>>You can look generally at soft-decision slicing for whatever
>>>>modulation type you're interested in, and it will be the same or very
>>>>similar for a Turbo Code.
>>>>
>>>>
>>>>Eric Jacobsen
>>>>Anchor Hill Communications
>>>>http://www.anchorhill.com
>>>>
>>>
>>>Hi Eric,
>>> Thanks for your input. What I want to know is that how should I
>compute
>>>gamma (the transition probabilities) and extrinsic information for each
>bit
>>>in multi-level modulations. Should I just compute gamma as usual (
>>>p(r|bit).Apriori(bit) ) and the extrinsic information as
>>>LLR-Apriori(bit)-channel information. Now is this channel information
>equal
>>>to p(r|bit) above?
>>>Thanks again.
>>
>>Are you doing turbo demodulation/turbo equalization or just turbo
>>decoding?
>>
>>If you're just doing turbo decoding, once the channel LLRs are
>>generated by the slicer you don't need to revisit the modulation type
>>during decoding.
>>
>>
>>Eric Jacobsen
>>Anchor Hill Communications
>>http://www.anchorhill.com
>>
>
>It's just decoding. I might be confusing something. When you say, "The only
>difference is generating the soft decision metrics for each bit", what
>exactly do you mean? Thanks.
For BPSK you generate the channel LLRs by scaling each received symbol
to its corresponding bit. For QPSK you do the same but on two axes
instead of one. For higher-order modulations you must take some
additional care to really get a useful channel soft-decision LLR for
each bit, but it is possible to do and depends on how the mapping is
constructed.
Once that is done and there is a channel LLR value for each received
decoder input bit, that job doesn't have to be done again and the
decoder doesn't really care what the modulation type was.
Eric Jacobsen
Anchor Hill Communications
http://www.anchorhill.com
Reply by Alexander Petrov●January 6, 20142014-01-06
>Hi,
> Turbo codes implementation through BCJR algorithm for binary
modulation
>is straightforward. Can someone inform me about how to do that for
>multi-level modulation, say QPSK or 16-QAM. Specifically, how does the
>decoder function. Any reference paper is also welcome.
>Thanks.
>
>_____________________________
>Posted through www.DSPRelated.com
>
http://downloads.hindawi.com/journals/jece/2007/053517.pdf
_____________________________
Posted through www.DSPRelated.com
Reply by commsignal●January 6, 20142014-01-06
>On Sun, 05 Jan 2014 18:10:25 -0600, "commsignal" <58672@dsprelated>
>wrote:
>
>>>On Thu, 02 Jan 2014 19:21:48 -0600, "commsignal" <58672@dsprelated>
>>>wrote:
>>>
>>>>Hi,
>>>> Turbo codes implementation through BCJR algorithm for binary
>>modulation
>>>>is straightforward. Can someone inform me about how to do that for
>>>>multi-level modulation, say QPSK or 16-QAM. Specifically, how does the
>>>>decoder function. Any reference paper is also welcome.
>>>>Thanks.
>>>
>>>There is no difference in the BCJR algorithm or anything else for
>>>Turbo Codes in higher-order modulation. The only difference is
>>>generating the soft decision metrics for each bit, and that's no
>>>different than for any other typical FEC with soft-decision input.
>>>
>>>You can look generally at soft-decision slicing for whatever
>>>modulation type you're interested in, and it will be the same or very
>>>similar for a Turbo Code.
>>>
>>>
>>>Eric Jacobsen
>>>Anchor Hill Communications
>>>http://www.anchorhill.com
>>>
>>
>>Hi Eric,
>> Thanks for your input. What I want to know is that how should I
compute
>>gamma (the transition probabilities) and extrinsic information for each
bit
>>in multi-level modulations. Should I just compute gamma as usual (
>>p(r|bit).Apriori(bit) ) and the extrinsic information as
>>LLR-Apriori(bit)-channel information. Now is this channel information
equal
>>to p(r|bit) above?
>>Thanks again.
>
>Are you doing turbo demodulation/turbo equalization or just turbo
>decoding?
>
>If you're just doing turbo decoding, once the channel LLRs are
>generated by the slicer you don't need to revisit the modulation type
>during decoding.
>
>
>Eric Jacobsen
>Anchor Hill Communications
>http://www.anchorhill.com
>
It's just decoding. I might be confusing something. When you say, "The only
difference is generating the soft decision metrics for each bit", what
exactly do you mean? Thanks.
_____________________________
Posted through www.DSPRelated.com
Reply by Eric Jacobsen●January 6, 20142014-01-06
On Sun, 05 Jan 2014 18:10:25 -0600, "commsignal" <58672@dsprelated>
wrote:
>>On Thu, 02 Jan 2014 19:21:48 -0600, "commsignal" <58672@dsprelated>
>>wrote:
>>
>>>Hi,
>>> Turbo codes implementation through BCJR algorithm for binary
>modulation
>>>is straightforward. Can someone inform me about how to do that for
>>>multi-level modulation, say QPSK or 16-QAM. Specifically, how does the
>>>decoder function. Any reference paper is also welcome.
>>>Thanks.
>>
>>There is no difference in the BCJR algorithm or anything else for
>>Turbo Codes in higher-order modulation. The only difference is
>>generating the soft decision metrics for each bit, and that's no
>>different than for any other typical FEC with soft-decision input.
>>
>>You can look generally at soft-decision slicing for whatever
>>modulation type you're interested in, and it will be the same or very
>>similar for a Turbo Code.
>>
>>
>>Eric Jacobsen
>>Anchor Hill Communications
>>http://www.anchorhill.com
>>
>
>Hi Eric,
> Thanks for your input. What I want to know is that how should I compute
>gamma (the transition probabilities) and extrinsic information for each bit
>in multi-level modulations. Should I just compute gamma as usual (
>p(r|bit).Apriori(bit) ) and the extrinsic information as
>LLR-Apriori(bit)-channel information. Now is this channel information equal
>to p(r|bit) above?
>Thanks again.
Are you doing turbo demodulation/turbo equalization or just turbo
decoding?
If you're just doing turbo decoding, once the channel LLRs are
generated by the slicer you don't need to revisit the modulation type
during decoding.
Eric Jacobsen
Anchor Hill Communications
http://www.anchorhill.com
Reply by commsignal●January 5, 20142014-01-05
>On Thu, 02 Jan 2014 19:21:48 -0600, "commsignal" <58672@dsprelated>
>wrote:
>
>>Hi,
>> Turbo codes implementation through BCJR algorithm for binary
modulation
>>is straightforward. Can someone inform me about how to do that for
>>multi-level modulation, say QPSK or 16-QAM. Specifically, how does the
>>decoder function. Any reference paper is also welcome.
>>Thanks.
>
>There is no difference in the BCJR algorithm or anything else for
>Turbo Codes in higher-order modulation. The only difference is
>generating the soft decision metrics for each bit, and that's no
>different than for any other typical FEC with soft-decision input.
>
>You can look generally at soft-decision slicing for whatever
>modulation type you're interested in, and it will be the same or very
>similar for a Turbo Code.
>
>
>Eric Jacobsen
>Anchor Hill Communications
>http://www.anchorhill.com
>
Hi Eric,
Thanks for your input. What I want to know is that how should I compute
gamma (the transition probabilities) and extrinsic information for each bit
in multi-level modulations. Should I just compute gamma as usual (
p(r|bit).Apriori(bit) ) and the extrinsic information as
LLR-Apriori(bit)-channel information. Now is this channel information equal
to p(r|bit) above?
Thanks again.
_____________________________
Posted through www.DSPRelated.com
Reply by Eric Jacobsen●January 2, 20142014-01-02
On Thu, 02 Jan 2014 19:21:48 -0600, "commsignal" <58672@dsprelated>
wrote:
>Hi,
> Turbo codes implementation through BCJR algorithm for binary modulation
>is straightforward. Can someone inform me about how to do that for
>multi-level modulation, say QPSK or 16-QAM. Specifically, how does the
>decoder function. Any reference paper is also welcome.
>Thanks.
There is no difference in the BCJR algorithm or anything else for
Turbo Codes in higher-order modulation. The only difference is
generating the soft decision metrics for each bit, and that's no
different than for any other typical FEC with soft-decision input.
You can look generally at soft-decision slicing for whatever
modulation type you're interested in, and it will be the same or very
similar for a Turbo Code.
Eric Jacobsen
Anchor Hill Communications
http://www.anchorhill.com