Residual error correction in applications requiring

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: Interpretation of Permutation Performance with Non-Ideal Tracking Loops —Any decoder’s performance degrades when there are small errors in tracking and detecting the received symbols. However, with turbo codes, there is also a possibility to improve the receiver’s tracking performance by feeding back soft information from the decoding process to assist the receiver’s tracking loops. Preliminary assessments (see reference [20]) of potential improvements are encouraging. Residual Error Correction — In applications requiring extremely low error rates, the error rate of a turbo code in the error floor region may be unacceptable despite best efforts to lower it. The solution may be to add an outer code to work in conjunction with the turbo code as the inner code. The outer code would ideally be a binary code such as a BCH code rather than a nonbinary Reed-Solomon code. Because of the sparseness of errors on the error floor (typically a handful of bit errors per block), the outer code could have a very high code- CCSDS 130.1-G-1 Page C-4 June 2006 TM SYNCHRONIZATION AND CHANNEL CODING —SUMMARY OF CONCEPT AND RATIONALE rate and would shift the required Eb/N0 by just a tiny amount. However, an outer code will provide very little benefit at signal-to-noise ratios below the error floor region, because in this region there are frequently codewords for which the turbo decoding algorithm fails to converge and the resulting number of bit errors is beyond the error correction capability of any reasonable outer code. Unfortunately, these errors due to non-convergence of the decoding algorithm do not completely disappear in the error floor region, where they are similarly immune to being corrected by a reasonable outer code. Thus, even in the error floor region, an outer code is only effective at fixing the dominant error events, but the rarer events in this region (due to non-convergence) may still exceed the desired error rate if they are not rare enough. Detecting Turbo Decoding Errors with an Outer CRC Code — Turbo decoders (like Viterbi decoders) are complete decoders, in that they always produce a decoded sequence. Currently these decoders do not detect and mark unreliable sequences, though in principle they could be modified to do so. Alternatively, a separate error detection code, such as a cyclic redundancy check (CRC) code, can be concatenated as an outer code with an inner turbo code, in order to flag unreliable decoded sequences. Let us define by l the redundancy of the error detection code (CRC). The l = 16 CRC code used for the CCSDS standard detects every possible error sequence e with the lowest weights |e| = 1, 2, or 3. An undetected codeword error occurs whenever the error pattern e of the sequence decoded by the turbo code equals one of the nonzero codewords of the CRC code. The CRC/turbo code combination will produce a typical conditional undetected error probability of about 2-l = 2-16≈1.5×10-5. This value must be multiplied by the probability of a codeword error to obtain the (unconditional) undetected error probability. Lowering the Turbo Code’s Error Floor — Even without using an outer BCH code, we have been able to design good turbo codes that lower the error floor to possibly insignificant levels (e.g., 10–9 bit error rate). Such performance may be sufficiently good for space applications to obviate the need for an outer error-correcting code. In that case, a simpler outer code (such as a CRC code) may still be desirable for error detection only. CCSDS 130.1-G-1 Page C-5 June 2006...
View Full Document

Ask a homework question - tutors are online