DSPRelated.com
Forums

Question about RS code

Started by fl September 16, 2005
Hi,

In my research project(Single Carrier-Frequency Domain Equalization), I
have a channel decoded data stream which is modulated/demod in QAM64
form. The error is characterized as burst type due to error
propagation. Most error burst length is 4 QAM64 symbols.

First, I don't want to use interleaving. This is because we want to do
a comparative study. Multi-block interleaving will be unfair for the
reference OFDM, while interleaving in one block will be unnecessary
(or, even worse?) for RS code if RS code uses the same block length.

Then, can I use only RS code? I have read some papers and books. All of
them say RS code is suitable as outer code because it is nonbinary
code. So, my question is: If I use QAM64, which is not binary stream,
RS code is very suitable here to me. So, I do not need to use inner
channel code, e.g. converlutional code. Right? Can you give me your
points? Have you known what applications or papers use only RS code?


Thank you very much.

fl <freelait2000@yahoo.com> wrote:

>In my research project(Single Carrier-Frequency Domain Equalization), I >have a channel decoded data stream which is modulated/demod in QAM64 >form. The error is characterized as burst type due to error >propagation. Most error burst length is 4 QAM64 symbols.
>First, I don't want to use interleaving. This is because we want to do >a comparative study. Multi-block interleaving will be unfair for the >reference OFDM, while interleaving in one block will be unnecessary >(or, even worse?) for RS code if RS code uses the same block length.
I disagree that interleaving is "unfair". You could argue the opposite, that if there is interleaving gain possible and you fail to take it into consideration than that is "unfair". Note that all OFDM systems use a symbol interleaver, so be sure to disable that if you want a "fair" comparison with an uninterleaved single-tone RS system. ;)
>Then, can I use only RS code? I have read some papers and books. All of >them say RS code is suitable as outer code because it is nonbinary >code. So, my question is: If I use QAM64, which is not binary stream, >RS code is very suitable here to me. So, I do not need to use inner >channel code, e.g. converlutional code. Right?
It is useful to map the 6 bits from a QAM symbol onto the 6 bits of a Reed-Solmon symbol over GF(64). Such a single-layer coded system can work pretty well (especially if you include the interleaving ;)), but is usually inferior to the standard concatenated system. Depending somewhat on your performance metrics. If you do everything right your single-tone system should outperform OFDM in light multipath, and underperform it in heavy multipath. Good luck. Steve
On 15 Sep 2005 21:01:54 -0700, "fl" <freelait2000@yahoo.com> wrote:

>Hi, > >In my research project(Single Carrier-Frequency Domain Equalization), I >have a channel decoded data stream which is modulated/demod in QAM64 >form. The error is characterized as burst type due to error >propagation. Most error burst length is 4 QAM64 symbols. > >First, I don't want to use interleaving. This is because we want to do >a comparative study. Multi-block interleaving will be unfair for the >reference OFDM, while interleaving in one block will be unnecessary >(or, even worse?) for RS code if RS code uses the same block length.
Do you mean the OFDM symbols match the RS codeword length? Or do you mean that the OFDM interleaving length is the same as the RS codeword length? I'm not sure why you think one way is more or less fair than the other, or even what you're really comparing. What sort of coding is the reference OFDM system using? Whether or not interleaving helps an RS system depends on the input error distribution and frequency. And if I understand what you meant correctly, you're right that interleaving within one RS codeword won't really do anything to help performance. Interleaving over multiple RS codewords helps performance if the input error distribution is sufficiently bursty that not interleaving would overwhelm the correcting capability within one codeword. So, as usual, it depends. ;)
>Then, can I use only RS code? I have read some papers and books. All of >them say RS code is suitable as outer code because it is nonbinary >code. So, my question is: If I use QAM64, which is not binary stream, >RS code is very suitable here to me. So, I do not need to use inner >channel code, e.g. converlutional code. Right? Can you give me your >points? Have you known what applications or papers use only RS code?
Before economical Viterbi decoders were available there were economical RS decoders, partly becuase the computer tape storage industry drove development of GF(256) solutions. So a lot of wireless communication systems wound up being RS-only because it was the most powerful FEC system available that could be integrated economically into equipment. There are still a lot of modern systems (e.g., point-to-point microwave links) that get by with RS-only since it's still "good enough" for those applications. Many of those do not have interleavers, since the error statistics are such that they don't really help. For many systems RS-only correction isn't "good enough", and once pratical Viterbi decoders became available they became popular. Since Viterbi decoders and convolutional codes are good at correcting randomly distributed bit errors they're good in many communications channels. But, since Viterbi decoders output error statistics can be very bursty when it loses lock on the trellis, an outer RS code is very suited for the additional correction capability, especially with an interleaver several codewords long between the CC and the RS. I hope that helps a little bit. Cheers, Eric Eric Jacobsen Minister of Algorithms, Intel Corp. My opinions may not be Intel's opinions. http://www.ericjacobsen.org
Thank you for your reply.

Eric Jacobsen wrote:
> On 15 Sep 2005 21:01:54 -0700, "fl" <freelait2000@yahoo.com> wrote: > > > Do you mean the OFDM symbols match the RS codeword length?
Yes.
> Or do you > mean that the OFDM interleaving length is the same as the RS codeword > length?
Also yes. I don't think both two yes contradict. Because in OFDM there are 52 subcarriers are used, and guard prefix has to append to SC-FDE, I assume one OFDM symbol is approximately equal to one SC-FDE burst.
> I'm not sure why you think one way is more or less fair than > the other, or even what you're really comparing. What sort of coding > is the reference OFDM system using?
In OFDM, interleaving is in one OFDM symbol. For my SC-FDE, it uses a DFE which is characterized by error propagation. Interleaving in one burst of SC-FDE is not as effective as in several blocks if there are burst errors in one burst. The OFDM I assume is from the standard 802.11 convolutional coding. My purpose is to evaluate the advantage of my design which it has much shorter error propagation length in high order QAM. RS code of one burst length has been demonstrated improving BER comparing with the original long error propagation system. I am not sure whether the RS only coding technique is acceptable. Or, what coding (or other means) to demonstrate the advantage of short error propagation length? There is not much difference in BER if direct comparison of a system with long and short error propagation, because the BER is not dominated by long error propagation.
> > Whether or not interleaving helps an RS system depends on the input > error distribution and frequency. And if I understand what you meant > correctly, you're right that interleaving within one RS codeword won't > really do anything to help performance. Interleaving over multiple > RS codewords helps performance if the input error distribution is > sufficiently bursty that not interleaving would overwhelm the > correcting capability within one codeword. > > So, as usual, it depends. ;) > > >Then, can I use only RS code? I have read some papers and books. All of > >them say RS code is suitable as outer code because it is nonbinary > >code. So, my question is: If I use QAM64, which is not binary stream, > >RS code is very suitable here to me. So, I do not need to use inner > >channel code, e.g. converlutional code. Right? Can you give me your > >points? Have you known what applications or papers use only RS code? > > Before economical Viterbi decoders were available there were > economical RS decoders, partly becuase the computer tape storage > industry drove development of GF(256) solutions. So a lot of wireless > communication systems wound up being RS-only because it was the most > powerful FEC system available that could be integrated economically > into equipment. There are still a lot of modern systems (e.g., > point-to-point microwave links) that get by with RS-only since it's > still "good enough" for those applications. Many of those do not have > interleavers, since the error statistics are such that they don't > really help. > > For many systems RS-only correction isn't "good enough", and once > pratical Viterbi decoders became available they became popular. > Since Viterbi decoders and convolutional codes are good at correcting > randomly distributed bit errors they're good in many communications > channels. But, since Viterbi decoders output error statistics can be > very bursty when it loses lock on the trellis, an outer RS code is > very suited for the additional correction capability, especially with > an interleaver several codewords long between the CC and the RS.
What 'CC' means? Convolutional channel coder?
> > I hope that helps a little bit. > > Cheers, > > Eric > Eric Jacobsen > Minister of Algorithms, Intel Corp. > My opinions may not be Intel's opinions. > http://www.ericjacobsen.org
On 17 Sep 2005 16:02:01 -0700, "fl" <freelait2000@yahoo.com> wrote:

>What 'CC' means? Convolutional channel coder?
Yes, CC = Convolutional Code. Eric Jacobsen Minister of Algorithms, Intel Corp. My opinions may not be Intel's opinions. http://www.ericjacobsen.org