
Fundamentals of Convolutional Coding
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
Additional editions


Persons
Content
Preface xi
Acknowledgement xiv
1 Introduction 1
1.1 Why error control? 1
1.2 Block codes-a primer 8
1.3 Codes on graphs 21
1.4 A first encounter with convolutional codes 28
1.5 Block codes versus convolutional codes 35
1.6 Capacity limits and potential coding gain revisited 36
1.7 Comments 39
Problems 41
2 Convolutional encoders-Structural properties 49
2.1 Convolutional codes and their encoders 49
2.2 The Smith form of polynomial convolutional generator matrices 58
2.3 Encoder inverses 67
2.4 Encoder and code equivalences 76
2.5 Basic encoding matrices 79
2.6 Minimalbasic encoding matrices 82
2.7 Minimal encoding matrices and minimal encoders 90
2.8 Canonical encoding matrices* 109
2.9 Minimality via the invariantfactor theorem* 127
2.10 Syndrome formers and dual encoders 131
2.11 Systematic convolutional encoders 139
2.12 Some properties of generator matrices-an overview 150
2.13 Comments 150
Problems 152
3 Distance properties of convolutional codes 161
3.1 Distance measures-a first encounter 161
3.2 Active distances 171
3.3 Properties of convolutional codes via the active distances 179
3.4 Lower bound on the distance profile 181
3.5 Upper bounds on the free distance 186
3.6 Timevarying convolutional codes 191
3.7 Lower bound on the free distance 195
3.8 Lower bounds on the active distances* 200
3.9 Distances of cascaded concatenated codes* 207
3.10 Path enumerators 213
3.11 Comments 220
Problems 221
4 Decoding of convolutional codes 225
4.1 The Viterbi algorithm revisited 226
4.2 Error bounds for timeinvariant convolutional codes 235
4.3 Tighter error bounds for timeinvariant convolutional codes 250
4.4 Exact bit error probability for Viterbi decoding 255
4.5 The BCJR algorithm for APP decoding 271
4.6 The oneway algorithm for APP decoding 283
4.7 A simple upper bound on the bit error probability for extremely noisy channels 288
4.8 Tailbiting trellises 293
4.9 Decoding of tailbiting codes 302
4.10 BEAST decoding of tailbiting codes 308
4.11 Comments 323
Problems 324
5 Random ensemble bounds for decoding error probability 333
5.1 Upper bounds on the output error burst lengths 333
5.2 Bounds for periodically timevarying convolutional codes 345
5.3 Lower error probability bounds for convolutional codes 355
5.4 General bounds for timevarying convolutional codes 363
5.5 Bounds for finite backsearch limits 375
5.6 Quantization of channel outputs 379
5.7 Comments 384
Problems 384
6 List decoding 387
6.1 List decoding algorithms 388
6.2 List decoding-performance 391
6.3 The list minimum weight 397
6.4 Upper bounds on the probability of correct path loss 407
6.5 Lower bound on the probability of correct path loss 416
6.6 Correct path loss for timeinvariant convolutional codes 418
6.7 Comments 422
Problems 423
7 Sequential decoding 425
7.1 The Fano metric 426
7.2 The stack algorithm 431
7.3 The Fano algorithm 433
7.4 The Creeper algorithm* 436
7.5 Simulations 448
7.6 Computational analysis of the stack algorithm 450
7.7 Error probability analysis of the stack algorithm 460
7.8 Analysis of the Fano algorithm 471
7.9 Analysis of Creeper* 477
7.10 Comments 480
Problems 481
8 Lowdensity paritycheck codes 485
8.1 LDPC block codes 486
8.2 LDPC convolutional codes 496
8.3 Block and convolutional permutors 508
8.4 Lower bounds on distances of LDPC codes 517
8.5 Iterative decoding of LDPC codes 529
8.6 Iterative limits and thresholds 538
8.7 Braided block codes* 553
8.8 Comments 562
Problems 562
9 Turbo coding 567
9.1 Parallel concatenation of two convolutional codes 567
9.2 Distance bounds of turbo codes 570
9.3 Parallel concatenation of three and more convolution codes 573
9.4 Iterative decoding of turbo codes 582
9.5 Braided convolutional codes* 586
9.6 Comments 591
Problems 591
10 Convolutional codes with good distance properties 593
10.1 Computing the Viterbi spectrum using FAST 594
10.2 The magnificient BEAST 598
10.3 Some classes of rate R = 1=2 convolutional codes 604
10.4 Low rate convolutional codes 608
10.5 High rate convolutional codes 621
10.6 Tailbiting trellis encoders 622
10.7 Comments 622
Appendix A: Minimal encoders 627
Appendix B: Wald's identity 635
References 647
Index 659
CHAPTER 1
INTRODUCTION
1.1 WHY ERROR CONTROL?
The fundamental idea of information theory is that all communication is essentially digital-it is equivalent to generating, transmitting, and receiving randomly chosen bi nary digits, bits. When these bits are transmitted over a communication channel- or stored in a memory-it is likely that some of them will be corrupted by noise. In his 1948 landmark paper "A Mathematical Theory of Communication" [Sha48] Claude E. Shannon recognized that randomly chosen binary digits could (and should) be used for measuring the generation, transmission, and reception of information. Moreover, he showed that the problem of communicating information from a source over a channel to a destination can always be separated-without sacrificing optimality- into the following two subproblems: representing the source output efficiently as a sequence of binary digits (source coding) and transmitting binary, random, independent digits over the channel (channel coding). In Fig. 1.1 we show a general digital communication system. We use Shannon's separation principle and split the encoder and decoder into two parts each as shown in Fig. 1.2. The channel coding parts can be designed independently of the source coding parts, which simplifies the use of the same communication channel for different sources.
Figure 1.1 Overview of a digital communication system.
Figure 1.2 A digital communication system with separate source and channel coding.
To a computer specialist, "bit" and "binary digit" are entirely synonymous. In information theory, however, "bit" is Shannon's unit of information [Sha48, Mas82]. For Shannon, information is what we receive when uncertainty is reduced. We get exactly 1 bit of information from a binary digit when it is drawn in an experiment in which successive outcomes are independent of each other and both possible values, 0 and 1, are equiprobable; otherwise, the information is less than 1. In the sequel, the intended meaning of "bit" should be clear from the context.
Shannon's celebrated channel coding theorem states that every communication channel is characterized by a single parameter Ct, the channel capacity, such that Rt randomly chosen bits per second can be transmitted arbitrarily reliably over the channel if and only if Rt ? Ct. We call Rt the data transmission rate. Both Ct and Rt are measured in bits per second. Shannon showed that the specific value of the signal-to-noise ratio is not significant as long as it is large enough, that is, so large that Rt ? Ct holds; what matters is how the information bits are encoded. The information should not be transmitted one information bit at a time, but long information sequences should be encoded such that each information bit has some influence on many of the bits transmitted over the channel. This radically new idea gave birth to the subject of coding theory.
Error control coding should protect digital data against errors that occur during transmission over a noisy communication channel or during storage in an unreliable memory. The last decades have been characterized not only by an exceptional increase in data transmission and storage but also by a rapid development in micro-electronics, providing us with both a need for and the possibility of implementing sophisticated algorithms for error control.
Before we study the advantages of coding, we shall consider the digital communication channel in more detail. At a fundamental level, a channel is often an analog channel that transfers waveforms (Fig. 1.3). Digital data u0u1u2 ., where ui ? {0,1}, must be modulated into waveforms to be sent over the channel.
Figure 1.3 A decomposition of a digital communication channel.
In communication systems where carrier phase tracking is possible (coherent demodulation), phase-shift keying (PSK) is often used. Although many other modulation systems are in use, PSK systems are very common and we will use one of them to illustrate how modulations generally behave. In binary PSK (BPSK), the modulator generates the waveform
(1.1)for the input 1 and s0(t) = -s1(t) for the input 0. This is an example of antipodal signaling. Each symbol has duration t seconds and energy Es = ST, where S is the power and . The transmitted waveform is
(1.2)Assume that we have a waveform channel such that additive white Gaussian noise (AWGN) n(t) with zero mean and two-sided power spectral density N0/2 is added to the transmitted waveform v(t), that is, the received waveform r(t) is given by
(1.3)where
(1.4)and
(1.5)where E[·] and d(·) denote the mathematical expectation and the delta function, respectively.
Based on the received waveform during a signaling interval, the demodulator produces an estimate of the transmitted symbol. The optimum receiver is a matched filter with impulse response
(1.6)which is sampled each t seconds (Fig. 1.4). The matched filter output Zi at the sample time iT,
(1.7)is a Gaussian random variable N(µ, s2) with mean
(1.8)where the sign is + or - according to whether the modulator input was 1 or 0, respectively, and variance
(1.9)Figure 1.4 Matched filter receiver.
After the sampler we can make a hard decision, that is, a binary quantization with threshold zero, of the random variable Zi. Then we obtain the simplest and most important binary-input and binary-output channel model, the binary symmetric channel (BSC) with crossover probability ? (Fig. 1.5). The crossover probability is of course closely related to the signal-to-noise ratio Es/N0. Since the channel output for a given signaling interval depends only on the transmitted waveform and noise during that interval and not on other intervals, the channel is said to be memoryless.
Figure 1.5 Binary symmetric channel.
Because of symmetry, we can without loss of generality assume that a 0, that is, , is transmitted over the channel. Then we have a channel "error" if and only if the matched filter output at the sample time iT is positive. Thus, the probability that Zi > 0 given that a 0 is transmitted is
(1.10)where Zi is a Gaussian random variable, , and Es is the energy per symbol. Since the probability density function of Zi is
(1.11)we have
(1.12)where
(1.13)is the complementary error function of Gaussian statistics (often called the Q-function).
When coding is used, we prefer measuring the energy per information bit, Eb, rather than per symbol. For uncoded BPSK, we have Eb = Es. Letting Pb denote the bit error probability (or bit error rate), that is, the probability that an information bit is erroneously delivered to the destination, we have for uncoded BPSK
(1.14)How much better can we do with coding?
It is clear that when we use coding, it is a waste of information to make hard decisions. Since the influence of each information bit will be spread over several channel symbols, the decoder can benefit from using the value of Zi (hard decisions use only the sign of Zi) as an indication of how reliable the received symbol is. The demodulator can give the analog value of Zi as its output, but it is often more practical to use, for example, a three-bit quantization-a soft decision. By introducing seven thresholds, the values of Zi are divided into eight intervals and we obtain an eight-level soft-quantized discrete memoryless channel (DMC) as shown in Fig. 1.6.
Figure 1.6 Binary input, 8-ary output, DMC.
Shannon [Sha48] showed that the capacity of the bandlimited AWGN channel with bandwidth W is1
(1.15)where N0/2 and S denote the two-sided noise spectral density and the signaling power, respectively. If the bandwidth W goes to infinity, we have
(1.16)If we transmit K information bits during t seconds, where t is a multiple of bit duration T, we have
(1.17)Since the data transmission rate is Rt = K/t bits/s, the energy per bit can be written
(1.18)Combining...
System requirements
File format: ePUB
Copy protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePub works well for novels and non-fiction books – i.e., „flowing” text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our ebook Help page.