Hello People I am trying to simulate turbo codes over frequency selective channel. I am using adaptive DFE to equalise the channel using LMS. Now, the results that I am getting is starnge in the sense that for channel B of proakis, I am getting BER of 10^-4 at 14 dB for first pass. If I use same channel for BICM-ID, I am getting 10^-4 at 8 dB for first pass. I am confident about this result. Is this possible for turbo codes? Also there is no improvement in both turbo codes and bicm-id as I do more iterations. Your opinion matters a lot. Thanks. Chintan
Turbo codes over frequency selective channel
Started by ●September 26, 2008
Reply by ●September 26, 20082008-09-26
cpshah99 <cpshah99@rediffmail.com> wrote:>I am trying to simulate turbo codes over frequency selective channel. >I am using adaptive DFE to equalise the channel using LMS.>Now, the results that I am getting is starnge in the sense that for >channel B of proakis, I am getting BER of 10^-4 at 14 dB for first pass.>If I use same channel for BICM-ID, I am getting 10^-4 at 8 dB for first >pass. I am confident about this result.>Is this possible for turbo codes?Yes, it's possible. The only think I can think of as a further simulation test is to replace the DFE with a MLSE equalizer (very compute-instensive in most cases) and see if the performance differential still holds. If so this will tell you the interleaving gain from the BICM-ID is the source in the performance difference, as opposed to something in the implementation. You should of course have confirmed that the Turbo codes version is close to capacity (within 1 dB) on the non-frequency-selective channel. Steve
Reply by ●September 26, 20082008-09-26
>cpshah99 <cpshah99@rediffmail.com> wrote: > >>I am trying to simulate turbo codes over frequency selective channel. >>I am using adaptive DFE to equalise the channel using LMS. > >>Now, the results that I am getting is starnge in the sense that for >>channel B of proakis, I am getting BER of 10^-4 at 14 dB for firstpass.> >>If I use same channel for BICM-ID, I am getting 10^-4 at 8 dB for first >>pass. I am confident about this result. > >>Is this possible for turbo codes? > >Yes, it's possible. The only think I can think of as a further >simulation test is to replace the DFE with a MLSE equalizer (very >compute-instensive in most cases) and see if the performance >differential still holds. If so this will tell you the interleaving >gain from the BICM-ID is the source in the performance difference, >as opposed to something in the implementation. > >You should of course have confirmed that the Turbo codes version is >close to capacity (within 1 dB) on the non-frequency-selective >channel. > >Steve >%%% Hi Steve Thanks a lot for replying. Yes, I have confirmed that the my turbo code is within 1 dB on AWGN(non freq selective). So far I have not tried to implement MLSE because it is a bit complicated to implement. And my ultimate aim is to use adaptive equaliser, mainly DFE. Is it possible that in BICM, the channel itself is one encoder and thats why there is performance difference.? Thanks a lot again, Chintan.
Reply by ●September 26, 20082008-09-26
cpshah99 <cpshah99@rediffmail.com> wrote:>>Yes, it's possible. The only think I can think of as a further >>simulation test is to replace the DFE with a MLSE equalizer (very >>compute-instensive in most cases) and see if the performance >>differential still holds. If so this will tell you the interleaving >>gain from the BICM-ID is the source in the performance difference, >>as opposed to something in the implementation. >> >>You should of course have confirmed that the Turbo codes version is >>close to capacity (within 1 dB) on the non-frequency-selective >>channel.>Hi Steve>Thanks a lot for replying.>Yes, I have confirmed that the my turbo code is within 1 dB on AWGN(non >freq selective). So far I have not tried to implement MLSE because it is a >bit complicated to implement. And my ultimate aim is to use adaptive >equaliser, mainly DFE. > >Is it possible that in BICM, the channel itself is one encoder and thats >why there is performance difference.?I have never implemented BICM so my knowledge of it is superficial, but my impression is it is a way of getting an exceptional amount of interleaver gain. Yes, state within the channel serves as encoder state in the hoped-for scenario, so in that respect it has a family resemblance to partial response. You "ought to" be able to do as well with a MLSE approach using a BCJR equalizer forming the exact metrics needed by the turbo code. In a practical sense you could only even simulate this for 2-ary modulation. The DFE can also come pretty close to capacity, up to 8-ary modulation, most of the time. It is a clean shot at a effective non-complex modem. This was used in the seldom-implemented 22 mbps mode of 802.11b. If you're 16-ary or above, your options dwindle. Maybe BCIM dominates there. I would want to see DFE resembling BCIM up to 8-ary, or understand why if not. Hope this helps. Steve
Reply by ●September 26, 20082008-09-26
cpshah99 wrote:> Hello People > > I am trying to simulate turbo codes over frequency selective channel. > I am using adaptive DFE to equalise the channel using LMS.You are doing the wrong thing. Equalization prior to the turbo decoder is nonsense. You should either modify turbo decoder so it would take care of the memory of the channel or apply MLSE and use path metrics as the input for the turbo decoder. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
Reply by ●September 26, 20082008-09-26
On Fri, 26 Sep 2008 04:57:01 -0500, "cpshah99" <cpshah99@rediffmail.com> wrote:>Hello People > >I am trying to simulate turbo codes over frequency selective channel. >I am using adaptive DFE to equalise the channel using LMS. > >Now, the results that I am getting is starnge in the sense that for >channel B of proakis, I am getting BER of 10^-4 at 14 dB for first pass. > >If I use same channel for BICM-ID, I am getting 10^-4 at 8 dB for first >pass. I am confident about this result. > >Is this possible for turbo codes? Also there is no improvement in both >turbo codes and bicm-id as I do more iterations. > >Your opinion matters a lot. > >Thanks. > >ChintanCan you describe the codes you're using a bit better? Not all Turbo Codes are created equal and I'm not sure what you're using with the BICM-ID. The general idea of BICM (and the interleaver in a TC) is to minimize correlation between adjacent bits and symbols. Since any trellis-based code has sensitivity to adjacent bit errors, spreading out the bits from a fading event (or a bad, high-order symbol) minimizes the likelihood of the decoder losing track of the trellis. Losing trellis lock/code lock often dominates the error performance of a constituent decoder, so this is a Big Deal. So it sounds like your TC has more sensitivity to the channel conditions than the BICM-ID code. That may have more to do with the code designs than the difference between TC and BICM-ID. How well does the BICM-ID perform in AWGN? Eric Jacobsen Minister of Algorithms Abineau Communications http://www.ericjacobsen.org Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php
Reply by ●September 26, 20082008-09-26
>On Fri, 26 Sep 2008 04:57:01 -0500, "cpshah99" ><cpshah99@rediffmail.com> wrote: > >>Hello People >> >>I am trying to simulate turbo codes over frequency selective channel. >>I am using adaptive DFE to equalise the channel using LMS. >> >>Now, the results that I am getting is starnge in the sense that for >>channel B of proakis, I am getting BER of 10^-4 at 14 dB for firstpass.>> >>If I use same channel for BICM-ID, I am getting 10^-4 at 8 dB for first >>pass. I am confident about this result. >> >>Is this possible for turbo codes? Also there is no improvement in both >>turbo codes and bicm-id as I do more iterations. >> >>Your opinion matters a lot. >> >>Thanks. >> >>Chintan > >Can you describe the codes you're using a bit better? Not all Turbo >Codes are created equal and I'm not sure what you're using with the >BICM-ID. > >The general idea of BICM (and the interleaver in a TC) is to minimize >correlation between adjacent bits and symbols. Since any >trellis-based code has sensitivity to adjacent bit errors, spreading >out the bits from a fading event (or a bad, high-order symbol) >minimizes the likelihood of the decoder losing track of the trellis. >Losing trellis lock/code lock often dominates the error performance of >a constituent decoder, so this is a Big Deal. > >So it sounds like your TC has more sensitivity to the channel >conditions than the BICM-ID code. That may have more to do with the >code designs than the difference between TC and BICM-ID. > >How well does the BICM-ID perform in AWGN? > > >Eric Jacobsen >Minister of Algorithms >Abineau Communications >http://www.ericjacobsen.org > >Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php >%%%% Hello All Thanks again. I am using rate 1/2 convolution code for both TC and BICM-ID with constraint length 5. In case of AWGN, TC outperforms BICM-ID (I am comparing first iteration) by 3 dB at BER 10^-3. And I have confirmed my TC results with that And for the freq selective case I have kept all the parameters same. But I can see the same trend as I increase the number of iterations in TC and BICM-ID. Both tends to give little gain, as DFE creates burst errors, and moreover even tho I am using interleaver, the decoder is not able to correct the errors. But one more doubt as VLV said, why cant I use (equaliser -> decoder)? If I can use the same approache for BICM-ID then why not for TC? (Sorry for this but I cant understand this). Thanks a lot. Chintan
Reply by ●September 26, 20082008-09-26
On Fri, 26 Sep 2008 12:46:16 -0500, "cpshah99" <cpshah99@rediffmail.com> wrote:>>On Fri, 26 Sep 2008 04:57:01 -0500, "cpshah99" >><cpshah99@rediffmail.com> wrote: >> >>>Hello People >>> >>>I am trying to simulate turbo codes over frequency selective channel. >>>I am using adaptive DFE to equalise the channel using LMS. >>> >>>Now, the results that I am getting is starnge in the sense that for >>>channel B of proakis, I am getting BER of 10^-4 at 14 dB for first >pass. >>> >>>If I use same channel for BICM-ID, I am getting 10^-4 at 8 dB for first >>>pass. I am confident about this result. >>> >>>Is this possible for turbo codes? Also there is no improvement in both >>>turbo codes and bicm-id as I do more iterations. >>> >>>Your opinion matters a lot. >>> >>>Thanks. >>> >>>Chintan >> >>Can you describe the codes you're using a bit better? Not all Turbo >>Codes are created equal and I'm not sure what you're using with the >>BICM-ID. >> >>The general idea of BICM (and the interleaver in a TC) is to minimize >>correlation between adjacent bits and symbols. Since any >>trellis-based code has sensitivity to adjacent bit errors, spreading >>out the bits from a fading event (or a bad, high-order symbol) >>minimizes the likelihood of the decoder losing track of the trellis. >>Losing trellis lock/code lock often dominates the error performance of >>a constituent decoder, so this is a Big Deal. >> >>So it sounds like your TC has more sensitivity to the channel >>conditions than the BICM-ID code. That may have more to do with the >>code designs than the difference between TC and BICM-ID. >> >>How well does the BICM-ID perform in AWGN? >> >> >>Eric Jacobsen >>Minister of Algorithms >>Abineau Communications >>http://www.ericjacobsen.org >> >>Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php >> > >%%%% > >Hello All > >Thanks again. > >I am using rate 1/2 convolution code for both TC and BICM-ID with >constraint length 5.What's the block size for each? That can make a big difference as well. Single carrier or multi-carrier? Is there a channel interleaver prior to the TC or just the code interleaver? If there's no channel interleaver, you might try adding one. The length may depend on the channel, the code block length, and whether your system is single carrier or multicarrier.>In case of AWGN, TC outperforms BICM-ID (I am comparing first iteration) >by 3 dB at BER 10^-3. And I have confirmed my TC results with that > >And for the freq selective case I have kept all the parameters same. But I >can see the same trend as I increase the number of iterations in TC and >BICM-ID. Both tends to give little gain, as DFE creates burst errors, and >moreover even tho I am using interleaver, the decoder is not able to >correct the errors. > >But one more doubt as VLV said, why cant I use (equaliser -> decoder)? If >I can use the same approache for BICM-ID then why not for TC? (Sorry for >this but I cant understand this).Many, many systems (I'd opine most systems) have the EQ prior to the decoder, just as you're doing. I think VLV is talking about what I call Turbo Demodulation, where the decoder and EQ are integrated and iterate between them. That adds a fair amount of complexity (and potentially latency), so it's often not used and things are done as you're doing. No worries. Eric Jacobsen Minister of Algorithms Abineau Communications http://www.ericjacobsen.org Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php
Reply by ●September 26, 20082008-09-26
>On Fri, 26 Sep 2008 12:46:16 -0500, "cpshah99" ><cpshah99@rediffmail.com> wrote: > >>>On Fri, 26 Sep 2008 04:57:01 -0500, "cpshah99" >>><cpshah99@rediffmail.com> wrote: >>> >>>>Hello People >>>> >>>>I am trying to simulate turbo codes over frequency selective channel. >>>>I am using adaptive DFE to equalise the channel using LMS. >>>> >>>>Now, the results that I am getting is starnge in the sense that for >>>>channel B of proakis, I am getting BER of 10^-4 at 14 dB for first >>pass. >>>> >>>>If I use same channel for BICM-ID, I am getting 10^-4 at 8 dB forfirst>>>>pass. I am confident about this result. >>>> >>>>Is this possible for turbo codes? Also there is no improvement inboth>>>>turbo codes and bicm-id as I do more iterations. >>>> >>>>Your opinion matters a lot. >>>> >>>>Thanks. >>>> >>>>Chintan >>> >>>Can you describe the codes you're using a bit better? Not all Turbo >>>Codes are created equal and I'm not sure what you're using with the >>>BICM-ID. >>> >>>The general idea of BICM (and the interleaver in a TC) is to minimize >>>correlation between adjacent bits and symbols. Since any >>>trellis-based code has sensitivity to adjacent bit errors, spreading >>>out the bits from a fading event (or a bad, high-order symbol) >>>minimizes the likelihood of the decoder losing track of the trellis. >>>Losing trellis lock/code lock often dominates the error performance of >>>a constituent decoder, so this is a Big Deal. >>> >>>So it sounds like your TC has more sensitivity to the channel >>>conditions than the BICM-ID code. That may have more to do with the >>>code designs than the difference between TC and BICM-ID. >>> >>>How well does the BICM-ID perform in AWGN? >>> >>> >>>Eric Jacobsen >>>Minister of Algorithms >>>Abineau Communications >>>http://www.ericjacobsen.org >>> >>>Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php >>> >> >>%%%% >> >>Hello All >> >>Thanks again. >> >>I am using rate 1/2 convolution code for both TC and BICM-ID with >>constraint length 5. > >What's the block size for each? That can make a big difference as >well. > >Single carrier or multi-carrier? > >Is there a channel interleaver prior to the TC or just the code >interleaver? If there's no channel interleaver, you might try >adding one. The length may depend on the channel, the code block >length, and whether your system is single carrier or multicarrier. > > >>In case of AWGN, TC outperforms BICM-ID (I am comparing firstiteration)>>by 3 dB at BER 10^-3. And I have confirmed my TC results with that >> >>And for the freq selective case I have kept all the parameters same. ButI>>can see the same trend as I increase the number of iterations in TC and >>BICM-ID. Both tends to give little gain, as DFE creates burst errors,and>>moreover even tho I am using interleaver, the decoder is not able to >>correct the errors. >> >>But one more doubt as VLV said, why cant I use (equaliser -> decoder)?If>>I can use the same approache for BICM-ID then why not for TC? (Sorryfor>>this but I cant understand this). > >Many, many systems (I'd opine most systems) have the EQ prior to the >decoder, just as you're doing. I think VLV is talking about what I >call Turbo Demodulation, where the decoder and EQ are integrated and >iterate between them. That adds a fair amount of complexity (and >potentially latency), so it's often not used and things are done as >you're doing. > >No worries. > >Eric Jacobsen >Minister of Algorithms >Abineau Communications >http://www.ericjacobsen.org > >Blog: http://www.dsprelated.com/blogs-1/hf/Eric_Jacobsen.php >%%%%% Hi Eric Thanks a lot. So basically my results, i.e. the performance diff in TC and BICM over freq selective channel, are 'somewhat' correct. One que popped up in my mind, can we compare TC and BICM-ID as, TC is coding scheme whereas BICM-ID is coded modulation. I can understand what VLV is saying is that, if it is turbo equalisation, there are many papers by Catherine Douillard, Michael Tuchler and many more. Thanks a lot. Chintan
Reply by ●September 26, 20082008-09-26
cpshah99 <cpshah99@rediffmail.com> wrote:>Thanks a lot. So basically my results, i.e. the performance diff in TC and >BICM over freq selective channel, are 'somewhat' correct. > >One que popped up in my mind, can we compare TC and BICM-ID as, TC is >coding scheme whereas BICM-ID is coded modulation. > >I can understand what VLV is saying is that, if it is turbo equalisation, >there are many papers by Catherine Douillard, Michael Tuchler and many >more.If there is no interleaver between the equalizer and the inner decoder of the turbo decoder, yes you can (in many cases) combine these into one larger BCJR decoder. However it is in many cases not practical to do so, so keeping them separate is not "nonsensical" in many systems. Lots of systems have an equalizer followed by a turbo decoder. Steve






