Iterative Receiver Design

In convolutional codes, a codeword is obtained by passing a binary information sequence through a finite-length shift register. A typical convolutional encoder is depicted in Fig. 8.15. Note that N in = 1 and N out = 2. We will consider only codes with N in = 1. The encoder consists of a sequence of L memory blocks (registers), and binary adders. In our example, L = 3. Observe that the code is systematic, since
.
Convolutional codes are usually described by feedforward and feedback polynomials, reflecting the relation between the outputs and the values in the registers. In our example, the feedback polynomial is g FB( D) = 1 + D 2 + D 3 (since we feed back the output of the second and third register), while the feedforward polynomial is g FF( D) = 1 + D + D 3 (since we feed forward the output of the first and third register). When the feedback polynomial is trivial (i.e., g FB( D) = 1), we say that the code is non-recursive. In our example from Fig. 8.15, we have a recursive systematic convolutional code.
1: <i class="emphasis">input</i>: <span class="inlinemediaobject"><a NAME="IMG_1228"> href="portalcontent.asp?bkid=23174&image_src=https://images.books24x7.com/bookimages/id_23174/fig182%5F02%5F0%2Ejpg&image_id=1228&previd=IMG_1228"> target="_parent"><img alt="Image from book"> border="0"> height="18"> id="IMG_1228">