Convolutional Codes706760093
Convolutional Codes706760093
Convolutional codes
1. Introduction
A convolutional encoder processes the information sequence continuously. The n-bit encoder output at a
particular time depends not only on the k-bit information sequence, but also on m previous input blocks,
i.e., a convolutional encoder has a memory order of m. The set of sequences produced by a k-input, n-
output encoder of memory order m is called an (n, k,m) convolutional code.The values of n and k are
much smaller for convolutional codes compared to the block codes.
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Consider a rate R = 1/2, (2, 1, 2) convolutional code specified by the following generator sequences g(1) =
(101), g(2) = (111),
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
5. State Diagram
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
6. Trellis Diagram
The trellis diagram of a convolutional code includes a time-dimension. In each trellis section, the
states are represented twice, once at time l , and another at time l + 1. There is a branch
connecting the state Sl at time l to the state Sl+1 at time l + 1 if there exists an input ul
at time l that drives the encoder to state Sl+1 from state Sl . A trellis diagram for a convolutional
code is obtained by joining the trellis sections at different time units. Each code word is made up
of the labels on the trellis transitions that correspond to a specific path through the trellis.
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
State diagram:
Trellis diagram
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Feedforward Encoder:
The encoder corresponding to a polynomial generator matrix does not contain any feedback path, and
hence it is known as a feedforward encoder.
The output of a feedforward encoder can be represented as a linear combination of the current input and a
finite number of past inputs. This is also referred as nonrecursive encoder.
In figure, the encoder diagram of a rate R = 1, 2-state feedforward encoder with generator matrix G(D) =
[1+D] is shown using a shift register implementation.
Feedback Encoder:
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
The encoder corresponding to a rational generator matrix with atleast one nonpolynomial transfer
function contains a feedback path and is known as a feedback encoder. The output of a feedback encoder
can be represented as a linear combination of past inputs as well as past outputs. Hence the output
depends on infinite number of past inputs. This is also sometimes referred as recursive encoder.
In figure, the encoder diagram of a rate R = 1/2, 2-state feedback encoder with generator matrix G(D) =
[1 1/1+D ] is shown.
Systematic Encoder:
A rate R = k/n convolutional encoder whose k information sequences appear unchanged among the n
code sequences is called a systematic encoder, and its generator matrix is called a systematic
generator matrix. In figure, a systematic rate R = 1/2 feedback convolutional encoder is shown.
Nonsystematic Encoder:
In a nonsystematic convolutional encoder, the k information sequences do not appear unchanged in the n
code sequences. In figure, a nonsystematic rate R = 1/2 feedforward convolutional encoder is shown.
Equivalent Encoder
‘
Two convolutional generator matrices G(D) and G’(D) are equivalent if they encode the same code.
Two convolutional encoders are equivalent if their generator matrices are equivalent.
Two generator matrices G(D) and G’(D) are equivalent if and only
if there exists a rational invertible matrix T(D) such that G’(D) = T(D)G(D)
Example: The generator matrix, G(D) = [1 1/1+D] and G’(D) = [1+D 1] are equivalent.
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Catastrophic Encoder
A convolutional encoder is catastrophic if it encodes some information sequence with infinitely many
non-zero symbols into a code sequence with finitely many non-zero symbols.This means that a finite
number of channel errors may result in infinitely many errors in the receiver.
Example:
G(D) =[1 + D 1 + D2]
If the input sequence u(D) =[1/ 1+D]= 1+D + D2 + ・ ・ ・ , then the output sequence, [1 1 + D] has
only weight 3, even thought the information sequence has infinite weight.
Realization of Convolutional encoder
In controller canonical form realization, to realize a rate R = k/n convolutional encoder, k shift register are
used for input sequences, and n adders are used to form the output sequences. the k input sequences enter
the shift registers at the left end of each shift register.
The n adders used to obtain output sequences are external to the shift register.
In Figure a rate R = 1, nonsystematic convolutional encoder with following generator function G(D) is
implemented in controller canonical form realization.
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
In observer canonical form realization, to realize a rate R = k/n convolutional encoder, n shift register are
used for output sequences. The k input sequences enter the adders internal to the shift registers. The
lowest degree term in the generator polynomial represent the connections to the right hand side of the
shift registers. In Figure a rate R = 1, nonsystematic convolutional encoder with following generator
function G(D) is implemented in observer canonical form realization.
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Example:
Let’s consider a rate R = 2/3 systematic feedforward encoder with enerator matrix
G(D) =[1 0 1+D + D2
0 1 1+D]
The parity check matrix can be written as
H(D) =[h(0) (D) h(1) (D) 1] =[1+ D + D2 1 + D 1]
The controller canonical form realization results in (3, 2, 3) encoder.
The observer canonical form realization results in (3, 2, 2) encoder.
Minimal encoder
A generator matrix of a convolutional code is minimal if its number of states is minimal over all
equivalent generator matrices. A minimal encoder is a realization of a minimal encoding matrix
G(D) with the minimal number of memory elements over all realizations of G(D).
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
9. Distance properties
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
The encoder is returned to all zero sequence after an L bit information sequence,
u = (u0, u1, u2, ・ ・ ・ , uL−1)
During the termination process, the number of states are reduced by half until all trellis paths converge
back to the all-zero state.
For l ≤ m, there is exactly one path of length l, entering each node at level(time) l .
For l > m, there are exactly 2l−m paths of length l, entering each node at level(time) l .
There are total 2l paths of length l .
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology
Lecture Notes on: Convolutional Code
Paper: Information Theory & Coding Code:EC604B Semester:6th
Provided By: Raj Kumar Maity, Assistant Professor, Department of ECE, Haldia Institute of Technology