Rev. 2 | |
Forward Error Correction | CD/CIM550.IOM |
A choice of coding rates (Rate 1/2, 3/4 or 7/8) allows the user to trade off coding gain for bandwidth expansion. Rate 1/2 coding gives the best improvement in error rate, but doubles the transmitted data rate, and hence doubles the occupied bandwidth of the signal. Rate 7/8 coding, at the other extreme, provides the most modest improvement in performance, but only expands the transmitted bandwidth by 14 %.
A major advantage of the Viterbi decoding method is that the performance is independent of data rate, and does not display a pronounced threshold effect (ie, does not fail rapidly below a certain value of Eb/No). This is not true of the Sequential decoding method, as explained in the section below. Note that in BPSK mode, the
Table
For | Against |
Good BER performance - very useful coding gain. | Higher coding gain possible with Sequential. |
|
|
Almost universally used, with de facto standards for |
|
constraint length and coding polynomials |
|
|
|
Shortest decoding delay (~100 bits) of any FEC scheme |
|
- good for coded voice. |
|
|
|
Short constraint length produce small error bursts - |
|
good for coded voice. |
|
No pronounced threshold effect - fails gracefully. |
|
|
|
Coding gain independent of data rate. |
|
|
|
Although the method of convolutional coding and Sequential decoding appear to be very similar to the Viterbi method, there are some fundamental differences. The convolutional encoder is said to be systematic, it does not alter the input data, and the FEC overhead bits are simply appended to the data. The constraint length, k, is much longer (Rate 1/2, k=36. Rate 3/4, k= 63. Rate 7/8, k=87).
This means that when the decoding process fails (that is, when its capacity to correct errors is exceeded) it produces a burst of errors which is in multiples of half the constraint length. An error distribution is produced which is markedly different to that of a Viterbi decoder. This gives rise to a pronounced threshold effect. A reduction in Eb/No of just a few tenths of a dB can make the difference between acceptable BER and a complete loss of synchronization. The decoding algorithm itself (called the Fano algorithm) uses significantly more path memory (4 kbits in this case) than the equivalent Viterbi decoder, giving rise to increased latency.
92