110 CONVOLUTIONAL CODES
g(D) with the coefficient of the lowest order in the leftmost position. To convert this vector
to octal numbers, we use right justification, i.e. g = (11101) becomes g = (011101). Now,
the binary vector g = (011101) is equivalent to (35)
8
in octal notation. For example, the
generator matrix of our canonical example code B(2, 1, 2) can be stated as (75)
8
, whereas
the generator matrix (35 23)
8
defines the code B(2, 1, 4).
3.1.7 Encoder Properties
We have already mentioned that a particular encoder is just one possible realisation of
a generator matrix. Moreover, there exist a number of different generator matrices that
produce the same set of output sequences. Therefore, it is important to distinguish between
properties of encoders, generator matrices and codes.
A convolutional code is the set of all possible output sequences of a convolutional
encoder. Two encoders are called equivalent encoders if they encode the same code. Two
encoding matrices G(D) and G
(D) are called equivalent generator matrices if they encode
the same code. For equivalent generator matrices G(D) and G
(D) we have
G
(D) = T(D)G(D),
with T(D) a non-singular k × k matrix.
We call G(D) a polynomial generator matrix if Q
l,j
(D) = 1 for all submatrices G
l,j
(D).
Some polynomial generator matrices lead to an undesired mapping from information se-
quence to code sequence. That is, an information sequence containing many (possibly
infinite) 1s is mapped to a code sequence with only a few (finite) number of 1s. As a
consequence, a small number of transmission errors can lead to a large (possibly infinite)
number of errors in the estimated information sequence. Such a generator matrix is called a
catastrophic generator matrix. Note that the catastrophic behaviour is not a property of the
code but results from the mapping of information sequence to code sequence. Hence, it is a
property of the generator matrix. Methods to test whether a generator matrix is catastrophic
can be found elsewhere (Bossert, 1999; Johannesson and Zigangirov, 1999). The state dia-
gram of the encoder provides a rather obvious condition for a catastrophic mapping. If there
exists a loop (a sequence of state transitions) in the state diagram that produces zero output
for a non-zero input, this is a clear indication of catastrophic mapping.
For example, the generator matrix G(D) = (1 +D, 1 +D
2
) is catastrophic. The corres-
ponding encoder and the state diagram are depicted in Figure 3.11, where the critical loop
in the state diagram is indicated by a dashed line. The generator matrix results from
G(D) = T(D)G
(D)
= (1 +D)(1, 1 + D)
= (1 +D, 1 +D
2
).
Note that in our example all elements of G(D) have a common factor (1 + D). In general,
a generator matrix G(D) of a rate 1/n code is catastrophic if and only if all elements of
G(D) have a common factor other than D.