Block Code
Block Code
Block Code
properties
Note
Solution
We first find all the Hamming distances.
Solution
This code guarantees the detection of up to three errors
(s = 3), but it can correct up to one error. In other words,
if this code is used for error correction, part of its capability
is wasted. Error correction codes need to have an odd
minimum distance (3, 5, 7, . . . ).
10-3 LINEAR BLOCK CODES
Modulo 2 arithmetic:
r 0 = a2 + a 1 + a 0
r 1 = a 3 + a 2 + a1
r 2 = a1 + a0 + a3
Calculating the syndrome at the receiver:
s0 = b2 + b1 + b 0
s1 = b3 + b2 + b1
s2 = b1 + b0 + b3
Figure 10.12 The structure of the encoder and decoder for a Hamming code
Table 10.5 Logical decision made by the correction logic analyzer
Example 10.13
10.
Figure 10.19 The CRC encoder design using shift registers
10.
Figure 10.20 General design of encoder and decoder of a CRC code
10.
Using Polynomials
10.
Figure 10.22 CRC division using polynomials
10.
Note
10.
Note
In a cyclic code,
If s(x) ≠ 0, one or more bits is corrupted.
If s(x) = 0, either
a. No bit is corrupted. or
b. Some bits are corrupted, but the
decoder failed to detect them.
10.
Note
10.
Example 10.15
10.
Figure 10.23 Representation of two isolated single-bit errors using polynomials
10.
Note
10.
Example 10.16
10.
Note
10.
Example 10.17
Solution
a. This generator can detect all burst errors with a length
less than or equal to 6 bits; 3 out of 100 burst errors
with length 7 will slip by; 16 out of 1000 burst errors of
length 8 or more will slip by.
10.
Example 10.17 (continued)
10.
Note
10.
Table 10.7 Standard polynomials
10.
10-5 CHECKSUM
10.
Example 10.18
10.
Example 10.19
10.
Example 10.20
Solution
The number 21 in binary is 10101 (it needs five bits). We
can wrap the leftmost bit and add it to the four rightmost
bits. We have (0101 + 1) = 0110 or 6.
10.
Example 10.21
Solution
In one’s complement arithmetic, the negative or
complement of a number is found by inverting all bits.
Positive 6 is 0110; negative 6 is 1001. If we consider only
unsigned numbers, this is 9. In other words, the
complement of 6 is 9. Another way to find the complement
of a number in one’s complement arithmetic is to subtract
the number from 2n − 1 (16 − 1 in this case).
10.
Example 10.22
10.
Example 10.22 (continued)
10.
Figure 10.24 Example 10.22
10.
Note
Sender site:
1. The message is divided into 16-bit words.
2. The value of the checksum word is set to 0.
3. All words including the checksum are
added using one’s complement addition.
4. The sum is complemented and becomes the
checksum.
5. The checksum is sent with the data.
10.
Note
Receiver site:
1. The message (including checksum) is
divided into 16-bit words.
2. All words are added using one’s
complement addition.
3. The sum is complemented and becomes the
new checksum.
4. If the value of checksum is 0, the message
is accepted; otherwise, it is rejected.
10.
Example 10.23
10.