This generation of hard symbol inputs to the rs

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: oft’ channel symbol values that are input to a Viterbi decoder for convolutional codes, the symbols input to the Reed-Solomon decoder are ‘hard’, which means that the RS decoder operates on symbols drawn from exactly the same alphabet as that used in producing the encoded symbols. This generation of hard symbol inputs to the RS decoder happens automatically when these symbols are generated by a Viterbi decoder for an inner convolutional code. In this case, the Viterbi decoder generates hard bit-by-bit decisions, and eight consecutive bits from the Viterbi decoder are grouped to form one symbol from the CCSDS 130.1-G-1 Page 5-5 June 2006 TM SYNCHRONIZATION AND CHANNEL CODING —SUMMARY OF CONCEPT AND RATIONALE 256-ary RS alphabet. When the RS code is used without an inner convolutional code, hard decisions should be made on each group of channel symbols corresponding to one RS octet. It is possible to allow the decisions on channel symbols to possess a little bit of ‘softness’, in that a Reed-Solomon decoder may also accept ‘erasures’ in addition to hard symbols from its native alphabet. An erasure is appropriate whenever there is substantial decision uncertainty between two or more hard symbols, because the Reed-Solomon code is capable of correcting twice as many erasures as errors. In the case of Reed-Solomon/convolutional concatenated coding, erasures are never produced by the standard Viterbi algorithm, but they may be generated by some modified versions of it . The ‘errors-only’ Reed-Solomon decoder is somewhat simpler than the ‘errors-and-erasures’ version, but it is convenient to describe the more general case. The basic idea behind all RS decoding algorithms was developed by Berlekamp as described in reference [12], but there are dozens of variants of his basic algorithm in current use. A very detailed discussion on Reed-Solomon decoding algorithms can be found in reference [24]. Unlike the Viterbi decoder for convolutional codes, which always obtains a maximum likelihood decision for each bit, the Reed-Solomon decoder is an ‘incomplete, bounded distance’ decoder. The ‘errors-only’ decoder produces unflagged decoded output if and only if the sequence of received, corrupted symbols differs from a valid codeword by no more than E symbols. For the ‘errors-and-erasures’ version, the corresponding condition is that 2t+e≤2E, where e is the number of erased symbols and t is the number of discrepancies between non-erased received symbols and those of a valid codeword. For both types of decoders, there are error sequences that move the sequence of received symbols outside the ‘bounded-distance’ decoding radius around the true codeword, yet also leave it outside the bounded-distance decoding radius of all other codewords. In this case, the RS decoder is incomplete, because it knows that the received sequence has been corrupted beyond its guaranteed correction capability, and it does not attempt to guess how to fix such corruptions. In fact, this type of ‘detectable’ corruption is much more likely to occur than an error sequence that moves the received symbol sequence inside the decoding radius of an incorrect codeword. For this reason the Reed-Solomon decoder almost always knows when there are too many errors to correct a word. Whenever this happens, the decoder can flag the ‘detected’ error and inform the user of this fact. 5.5 PERFORMANCE OF THE RECOMMENDED REED-SOLOMON CODES In decoding the RS codewords, essentially three events may happen. a) The first event (correct decoding) happens if there are E or fewer RS symbol errors in a codeword. In this case the decoder successfully corrects the errors and outputs the correct information block. b) The second event (detected error) happens if the number of RS symbol errors in a codeword is more than E, but the corrupted codeword is not close to any other codeword within the distance of E symbols. In this case the RS decoder fails to CCSDS 130.1-G-1 Page 5-6 June 2006 TM SYNCHRONIZATION AND CHANNEL CODING —SUMMARY OF CONCEPT AND RATIONALE decode and may (if desired) output the first k undecoded information symbols that in all likelihood contain some symbol errors. c) The third event (undetected error) happens if the number of RS symbol errors in a codeword is more than E, and the corrupted codeword is closer to some other codeword within the distance of E symbols. In this case the decoder is fooled, decodes incorrectly, and outputs a wrong information block. In other words, it claims the decoded block as a correct one and by doing this it may create up to E additional symbol errors (compared to the number of errors in the uncoded information block). Fortunately for most of the RS codes of interest with large alphabet size, in particular for the (255, 223) RS code, the probability that the third event happens is very small (see reference [23]). This probability has very little effect on the error probability performance of an RS code in the range of interest. In reference [23] it has been...
View Full Document

This document was uploaded on 03/06/2014.

Ask a homework question - tutors are online