Preface |
|
xi | |
Acknowledgement |
|
xiv | |
1 Introduction |
|
1 | (48) |
|
|
1 | (7) |
|
|
8 | (13) |
|
|
21 | (7) |
|
1.4 A first encounter with convolutional codes |
|
|
28 | (7) |
|
1.5 Block codes versus convolutional codes |
|
|
35 | (1) |
|
1.6 Capacity limits and potential coding gain revisited |
|
|
36 | (3) |
|
|
39 | (2) |
|
|
41 | (8) |
2 Convolutional encoders-Structural properties |
|
49 | (112) |
|
2.1 Convolutional codes and their encoders |
|
|
49 | (9) |
|
2.2 The Smith form of polynomial convolutional generator matrices |
|
|
58 | (9) |
|
|
67 | (9) |
|
2.4 Encoder and code equivalences |
|
|
76 | (3) |
|
2.5 Basic encoding matrices |
|
|
79 | (3) |
|
2.6 Minimal-basic encoding matrices |
|
|
82 | (8) |
|
2.7 Minimal encoding matrices and minimal encoders |
|
|
90 | (19) |
|
2.8 Canonical encoding matrices |
|
|
109 | (18) |
|
2.9 Minimality via the invariant-factor theorem |
|
|
127 | (4) |
|
2.10 Syndrome formers and dual encoders |
|
|
131 | (8) |
|
2.11 Systematic convolutional encoders |
|
|
139 | (11) |
|
2.12 Some properties of generator matrices-an overview |
|
|
150 | (1) |
|
|
150 | (2) |
|
|
152 | (9) |
3 Distance properties of convolutional codes |
|
161 | (64) |
|
3.1 Distance measures-a first encounter |
|
|
161 | (10) |
|
|
171 | (8) |
|
3.3 Properties of convolutional codes via the active distances |
|
|
179 | (2) |
|
3.4 Lower bound on the distance profile |
|
|
181 | (5) |
|
3.5 Upper bounds on the free distance |
|
|
186 | (5) |
|
3.6 Time-varying convolutional codes |
|
|
191 | (4) |
|
3.7 Lower bound on the free distance |
|
|
195 | (5) |
|
3.8 Lower bounds on the active distances |
|
|
200 | (7) |
|
3.9 Distances of cascaded concatenated codes |
|
|
207 | (6) |
|
|
213 | (7) |
|
|
220 | (1) |
|
|
221 | (4) |
4 Decoding of convolutional codes |
|
225 | (108) |
|
4.1 The Viterbi algorithm revisited |
|
|
226 | (9) |
|
4.2 Error bounds for time-invariant convolutional codes |
|
|
235 | (15) |
|
4.3 Tighter error bounds for time-invariant convolutional codes |
|
|
250 | (5) |
|
4.4 Exact bit error probability for Viterbi decoding |
|
|
255 | (16) |
|
4.5 The BCJR algorithm for APP decoding |
|
|
271 | (12) |
|
4.6 The one-way algorithm for APP decoding |
|
|
283 | (5) |
|
4.7 A simple upper bound on the bit error probability for extremely noisy channels |
|
|
288 | (5) |
|
|
293 | (9) |
|
4.9 Decoding of tailbiting codes |
|
|
302 | (6) |
|
4.10 BEAST decoding of tailbiting codes |
|
|
308 | (15) |
|
|
323 | (1) |
|
|
324 | (9) |
5 Random ensemble bounds for decoding error probability |
|
333 | (54) |
|
5.1 Upper bounds on the output error burst lengths |
|
|
333 | (12) |
|
5.2 Bounds for periodically time-varying convolutional codes |
|
|
345 | (10) |
|
5.3 Lower error probability bounds for convolutional codes |
|
|
355 | (8) |
|
5.4 General bounds for time-varying convolutional codes |
|
|
363 | (12) |
|
5.5 Bounds for finite back-search limits |
|
|
375 | (4) |
|
5.6 Quantization of channel outputs |
|
|
379 | (5) |
|
|
384 | (1) |
|
|
384 | (3) |
6 List decoding |
|
387 | (38) |
|
6.1 List decoding algorithms |
|
|
388 | (3) |
|
6.2 List decoding-performance |
|
|
391 | (6) |
|
6.3 The list minimum weight |
|
|
397 | (10) |
|
6.4 Upper bounds on the probability of correct path loss |
|
|
407 | (9) |
|
6.5 Lower bound on the probability of correct path loss |
|
|
416 | (2) |
|
6.6 Correct path loss for time-invariant convolutional codes |
|
|
418 | (4) |
|
|
422 | (1) |
|
|
423 | (2) |
7 Sequential decoding |
|
425 | (60) |
|
|
426 | (5) |
|
|
431 | (2) |
|
|
433 | (3) |
|
7.4 The Creeper algorithm |
|
|
436 | (12) |
|
|
448 | (2) |
|
7.6 Computational analysis of the stack algorithm |
|
|
450 | (10) |
|
7.7 Error probability analysis of the stack algorithm |
|
|
460 | (11) |
|
7.8 Analysis of the Fano algorithm |
|
|
471 | (6) |
|
|
477 | (3) |
|
|
480 | (1) |
|
|
481 | (4) |
8 Low-density parity-check codes |
|
485 | (82) |
|
|
486 | (10) |
|
8.2 LDPC convolutional codes |
|
|
496 | (12) |
|
8.3 Block and convolutional permutors |
|
|
508 | (9) |
|
8.4 Lower bounds on distances of LDPC codes |
|
|
517 | (12) |
|
8.5 Iterative decoding of LDPC codes |
|
|
529 | (9) |
|
8.6 Iterative limits and thresholds |
|
|
538 | (15) |
|
|
553 | (9) |
|
|
562 | (1) |
|
|
562 | (5) |
9 Turbo coding |
|
567 | (26) |
|
9.1 Parallel concatenation of two convolutional codes |
|
|
567 | (3) |
|
9.2 Distance bounds of turbo codes |
|
|
570 | (3) |
|
9.3 Parallel concatenation of three and more convolution codes |
|
|
573 | (9) |
|
9.4 Iterative decoding of turbo codes |
|
|
582 | (4) |
|
9.5 Braided convolutional codes |
|
|
586 | (5) |
|
|
591 | (1) |
|
|
591 | (2) |
10 Convolutional codes with good distance properties |
|
593 | (34) |
|
10.1 Computing the Viterbi spectrum using FAST |
|
|
594 | (4) |
|
10.2 The magnificient BEAST |
|
|
598 | (6) |
|
10.3 Some classes of rate R =- 1/2 convolutional codes |
|
|
604 | (4) |
|
10.4 Low rate convolutional codes |
|
|
608 | (13) |
|
10.5 High rate convolutional codes |
|
|
621 | (1) |
|
10.6 Tailbiting trellis encoders |
|
|
622 | (1) |
|
|
622 | (5) |
Appendix A: Minimal encoders |
|
627 | (8) |
Appendix B: Wald's identity |
|
635 | (12) |
References |
|
647 | (12) |
Index |
|
659 | |