Convolutional - Convolutional Codes Convolutional codes...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
Convolutional Codes Convolutional codes derive their name from the fact that in a linear system, the output (as a function of time) is formed by convolving the input (as a function of time) with the impulse response of the system. In the case of convolutional codes however, one usually has more output than inputs and time is discrete. Furthermore, for binary convolutional codes, the input (inputs) is a (are) binary sequences, the same is true for the outputs and linear means using arithmetic modulo 2. A convolutional code is the collection of output sequences produced by the linear system for all possible input sequences. There are many linear systems that can produce the collection of output sequences corresponding to a particular convolutional code. It is customary, however to choose a specific linear system (or encoder) and characterize a particular convolutional code by that specific encoder. We will begin our study using this approach. We will then show that the given convolutional code could have been produced by other encoders. We begin by looking in some detail at the code produced by the encoder shown in Figure 4, below. Figure 4. An encoder for a rate 1/2 convolutional code. The code is said to have rate 1/2 (in terms of our previous notation, R c = 1/2) since each input u i produces two outputs (V i (1) and V i (2) . The inputs u i , i=0, 1, 2, … are binary digits (i.e., u i E (0,1)) and the outputs are given by the equation: v i (1) = u i , i = 0, 1, 2,… v i (2) = u i u i-1 u i-2 i = 0, 1, 2,… where we assume that u -1 = u -2 = 0. (This can alternatively be stated by saying that the encoder starts in the all-zero state .) The addition operator “ ” indicates modulo 2 addition (0 0 = 0, 0 1 = 1 0 = 1, 1 1 = 0). Modulo 2 addition can be implemented by an exclusive or gate. In what follows we will use and + interchangeably. Usually the output is multiplexed into one serial stream, v 0 (1) , v 0 (2) , v 1 (1) , v 1 (2) , v 2 (1) , v 2 (2) ,… but this does not have to be the case. The set of all possible output sequences (corresponding to all possible input sequences) is the set of code words of the code. If the outputs
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
are not multiplexed, a code word in the code is a pair of binary sequences while if the output is multiplexed, a code word is the single multiplexed binary sequence. This encoder is said to have constant length 3 since the output are functions of 3 consecutive input bits . The encoder is also said to have memory length 2 since two previous input bits are stored in the encoder . The number of states in the encoder is 2 2 = 4. v 0 (2) , v 1 (2) , v 2 (2) , … Note that v i (2) = u i so that the output as viewed as a single multiplexed stream can be written as u 0 , v 0 (2) , u 1 , v 1 (2) , u 2 , v 2 (2) , … . Thus, the encoder is in systematic form in that the input bits appear as part of the multiplexed output stream.
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 04/02/2011 for the course ECE 264 taught by Professor Song during the Spring '11 term at UCSB.

Page1 / 37

Convolutional - Convolutional Codes Convolutional codes...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online