10.07.2015 Views

Information Theory, Inference, and Learning ... - Inference Group

Information Theory, Inference, and Learning ... - Inference Group

Information Theory, Inference, and Learning ... - Inference Group

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Copyright Cambridge University Press 2003. On-screen viewing permitted. Printing not permitted. http://www.cambridge.org/0521642981You can buy this book for 30 pounds or $50. See http://www.inference.phy.cam.ac.uk/mackay/itila/ for links.48.2: Linear-feedback shift-registers 575(a)✲ t(a)❵z 7 〈d z 6 〈d z 5 〈d z 4 〈d z 3 〈d z 2 〈d z 1 〈d z 0✛ s✲ ❄ ⊕ ❄ ⊕ ✲ ❄ ⊕ ✲ ❄ ⊕ ✲ ❄ ⊕ ✲ ✲ t(b)z 7〈dz 6〈d✲⊕✻z 5〈dz 4〈dz 3〈d✲⊕✻z 2〈d✲⊕✻z 1✲⊕✻z 0✲ t(b)〈d ✛ sOctal name(1, 353) 8Figure 48.1. Linear-feedbackshift-registers for generatingconvolutional codes with rate 1/2.The symbol 〈d indicates acopying with a delay of one clockcycle. The symbol ⊕ denoteslinear addition modulo 2 with nodelay.The filters are (a) systematic <strong>and</strong>nonrecursive; (b) nonsystematic<strong>and</strong> nonrecursive; (c) systematic<strong>and</strong> recursive.(b)✲ ⊕ ❄ ✲ ⊕ ❄ ✲ ⊕ ❄ ✲ ⊕ ❄ ✲ ⊕ ❄ ✲ t(a)(247, 371) 8(c)z 7z 6✲⊕✻z 5z 4z 3✲⊕✻z 2✲⊕✻⊕✻z 0✲ t(b)〈d 〈d 〈d 〈d 〈d 〈d 〈d✻✲ t(a)✲ ⊕ ❄ ✲ ❄ ⊕ ✲ ❄ ⊕ ✲ ❄ ⊕ ✲ ⊕ ✛ ❵ s ( )1,247z 1✲3718these filters require k = 7 bits of memory, the codes they define are known asa constraint-length 7 codes.Convolutional codes come in three flavours, corresponding to the threetypes of filter in figure 48.1.Systematic nonrecursiveThe filter shown in figure 48.1a has no feedback. It also has the property thatone of the output bits, t (a) , is identical to the source bit s. This encoder isthus called systematic, because the source bits are reproduced transparentlyin the transmitted stream, <strong>and</strong> nonrecursive, because it has no feedback. Theother transmitted bit t (b) is a linear function of the state of the filter. Oneway of describing that function is as a dot product (modulo 2) between twobinary vectors of length k + 1: a binary vector g (b) = (1, 1, 1, 0, 1, 0, 1, 1) <strong>and</strong>the state vector z = (z k , z k−1 , . . . , z 1 , z 0 ). We include in the state vector thebit z 0 that will be put into the first bit of the memory on the next cycle. Thevector g (b) has g κ(b) = 1 for every κ where there is a tap (a downward pointingarrow) from state bit z κ into the transmitted bit t (b) .A convenient way to describe these binary tap vectors is in octal. Thus,this filter makes use of the tap vector 353 8 . I have drawn the delay lines fromright to left to make it easy to relate the diagrams to these octal numbers.11 101 011↓ ↓ ↓3 5 3Table 48.2. How taps in the delayline are converted to octal.Nonsystematic nonrecursiveThe filter shown in figure 48.1b also has no feedback, but it is not systematic.It makes use of two tap vectors g (a) <strong>and</strong> g (b) to create its two transmitted bits.This encoder is thus nonsystematic <strong>and</strong> nonrecursive. Because of their addedcomplexity, nonsystematic codes can have error-correcting abilities superior tothose of systematic nonrecursive codes with the same constraint length.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!