8
BLOCK AND
CONVOLUTIONAL
CHANNEL CODES
In Chapter 7, we treated channel coding and decoding from a general
viewpoint, and showed that even randomly selected codes on the average yield
performances close to the capacity of a channel. In the case of orthog
4J6
DIGITAL
COM~tt:NICATlcfw_:>l~
Binary BCH codes may be constructed with parameters
(8-1-42)
n =k e mt
dmin = 2t
+1
where m (m ~ 3) and t are arbitrary positive integers. Hence, this class of
binary codes provides the communications system designer with
CHAPTER
TABLE 8-1-5
8:
BLOCK
AND CONVOLUTIONAL
C'HASJ\'EL
CODES
435
SHIFT-REGISTER CONNECTIONS FOR GENERATING
MAXIMUM-LENGTH SEQUENCES
Stages conected
m
to modulo-2 adder
Stages connected
m
to mod111o-2 adder
Stages connected
m
to modulo-2 adder
2
3
4
~
6
4J4
TABLE 8-14
DIGlTAL COMMD.UCATIONS
MAXIMUM-LENGTH
SHIFT-REGISTER CODE FOR rn "'3
Code words
Information bits
0
0
(J
0
0
l
0
()
cfw_)
()
I
0
l
0
I
0
Consequently, the output sequence is periodic with length n = 2"' - l. Since
there are 2"' - 1 possible
CHAPTER
X:
l!LOCK
AND CONVOU'TIONAL
the message bits 0110. the parity check bits are c5 = O. c6
easily verified.
C'HANNH
= 0,
CODES
and c-
433
= 1, as is
It should be noted that the encoder based on the generator polynomial is
simpler when n - k < k (k >
CHAPTER ~:
CODES
BLOCK AND CONVOLUTIONAL CHANNEL
43
Parity check bits
Message
polynomial
p" 'X1p1
FIGURE 813
/@
, To modulator
-.,.~-o\
Message bits
Encoding of a cyclic code by use of the generator polynomial g(p ).
generating the parity check bits for
432
lll(ilTAl
COMMl]:-;l('ATIONS
Mes;.age
bii.
flGURE 8-1-!i
Coded bit;
based
Encoder for an (n, k) cyclic code
on parity polynomial h(p).
message bits are 0110. The contents of the shift register are as follows:
Input
Shift
Shift register contents
0
1
1
430
DIGITAL COMMUNICATIONS
The reader may verify that G1Hi of H, consist of all seven binary vectors of
Note that the column vectors = 0.
length 3, except the all-zero vector. But this is just the
description of the parity check matrix for a (7, 4) Hammin
44()
DIGITAL COMMUNK'ATIONS
when such a code is employed on a binary-input, symmetric channel such as the
A WGN channel with optimum soft-decision decoding, the error probability for the
transmission of the mth code word is the same for all m. Hence, we
a
CHAPTER
11:
BLOCK
ANO CONVOLUTIONAL
CHANNEL CODES
445
Under this condition, the bandwidth expansion factor for orthogonal signaling
can be expressed as
Mo
Beo" 2 log, M
2"
0
2k0
=- =
22R,d,;n
4Rcdmin
while, for coded signaling waveforms. we have B~c =
giv
CHAPTER
~:
BLOCK
AND C'ONVOLCTl()SAL
CHA:-<~El.
('ODES
447
error patterns, etc . until we have a total of 2" = entries in the first column. Thus,
the number of rows that we can have is 2"-", which is equal to the number of
syndromes. Next, we add each err
446
DIGITAL COMMlJNlfATIONS
Minimum-Distance (Maximum-Likelihood) Decoding Then bits from the
demodulator corresponding to a received code word are passed to the decoder,
which compares the received code word with the M possible transmitted code
words and
CHAPTER
~:
BLOCK
A'ID
C'O~\iQLt;TIOSAL
(HAl'i"EL
CODES
443
where cfw_N0j and cfw_N11 represent complex-valued mutually statistically indepen- dent
gaussian random variables with zero mean and variance No. The correlation
metric CM1 is given as
CM1:
L roi
444
DIGITAL
and, hence,
COMMl.'NICATIONS
P., ~
2,
M
P2(m)
n1~2
If dmin is used instead of the weight distribution, the union bound for the code
word error probability in the latter case is
(8-1-67)
The channel bandwidth required to transmit the coded wave
the M possible code words. The detection a! the receiver may be coherent or
noncoherent. In either case. let r0i and r1; denote the input samples to the
combiner. The correlation metrics formed by the decoder may be expressed as
CM;:
,
L lc;1r11 + (I
- c
nlAl'TFR
~:
Bl.OCK
AN!> CONVOl.l'TIONAL
CliA~l'o:l:I
C'Ol>~S
441
This hound is particularly useful since it does not require knowledge of the weight
distribution of the code. When the upper bound in (8-1-52) is compared with the
performance of an uncoded
CHAPTER
H
BLOCK
AND CONVOLUTIOi-;AL
(HAl'NEl
CODES
439
of a code word error, for the A WGN channel, can be realized as a parallel bank
of M filters matched to the M possible transmitted waveforms. The outputs of
the M matched filters at the end of each si
CHAPTER
K
BLOCK
AND CONVOLlfTIOl'iAL
CHA~NEl. COO($
429
where r(p) has degree less than 11 - k. Clearly. Q(p )g(p) is a code word of the cyclic
code. Hence. by adding (modulo-2) r(p) to both sides of (8-1-39). we obtain the
desired systematic code.
To sum
428
DIGITAL
COMMUNICATIONS
where Q1(p) is the quotient. But p" I + R1(p) is a code word of the cyclic code
since p"-1 + R1(p) = Q1(p )g(p ). Therefore the desired polynomial correspond ing
to the /th row of G is p" -t + R1(p ).
Example 8-1-6
For the (7, 4
416
DIGITAL COMllHl!':ICATIONS
Clearly, d;j for i oF j satisfies the condition 0 < cf;1 ~ n. The smallest value of the set
cfw_d;J for the M code words is called the minimum distance of the code and is denoted
as dmin Since the Hamming distance is a measu
CHAPTER
~.
BLOCK
AND CONVOLL'T!ONAL
CHA-.Nfl.
\ODES
415
is defined as b - 1,
and bb _, = I. The division of two elements.
such as a -s- b, is defined as ab -1
then its inverse
We are very familiar with the field of real numbers and the field of complex nu
418
DIGITAL
(l\l.\lLJ\I(
.
rroxs
determines the n - k redundant bits or parity check bits. Note that a generator
matrix of the systematic form generates a linear block code in which the first k bits
of each code word are identical to the information bits
R0
M
= log2
ed0m /4N0
l=1 ed0m /4N0
M
= log M log
M
2
2
M
2
is dm
The distance of equally spaced points around a circle with radius
R
0
sin m . So
= 2 Ec
2
= log M log M e(Ec /N0 ) sin mM
2
2
l
=
1
The plot of R0 for the various levels of M -ary PSK is g
Problem
7.24 :
RememberthatthecapacityoftheBSC is
C =p log2 2p +(1 p)log2 (2(1 p)
where p istheerrorprobability (forbinary antipodalmodulationforthisparticularcase). Then,the
plot with the comparison of the capacity vs the cuto rate R2 for the BSC, with a
R vs R
for BSC
0
2
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
10
5
0
15
5
10
(
d
B
)c
Aswe see,thelossinperformancewhenatwolevelharddecision (insteadofasoftdecision) is
employed isapproximately2dB.
Problem 7.23 :
TheplotwiththecutorateR2 fortheBSC, when thet
CHAPTER
K
BLOCK
AND C'ONYOLUTIONAL
CHANNEL
CODES
449
The syndrome computed for the error is S = (0 0 1 ]. Hence, the error
determined from the table is e = (0 O O 0 1 ). When e is added to Y. the
result is a decoding error. ln other words the (5, 2) code
414
DIGITAL COMMllNlfATIONS
these 2" code words, we may select M = 2" code words (k < n) to form a code.
Thus. a block of k information bits is mapped into a code word of length n
selected from the set of M = 2k code words. We refer to the resulting block
CHAl'lf.R
~:
Bl<)("K
At'D
CO~VOLUTIO!'<Al
CHAN!'[.L
417
CODES
8-1-1 The Generator Matrix and the Parity Check Matrix
x,.2, _ . Xmk denote the tc information bits encoded
into the code word Cm. Throughout this chapter. we follow the
established convention