Unformatted text preview: de is one where every n-bit code
word can be represented as the original k -bit message followed by the n − k parity bits
(it actually doesn’t matter how the original message bits and parity bits are interspersed).
Figure 6-5 shows a code word in systematic form.
So, given a systematic code, how many parity bits do we absolutely need? We need
to choose n so that single error correction is possible. Since there are n − k parity bits,
each combination of these bits must represent some error condition that we must be able
to correct (or infer that there were no errors). There are 2n−k possible distinct parity bit
combinations, which means that we can distinguish at most that many error conditions.
We therefore arrive at the constraint
n + 1 ≤ 2n − k (6.5) i.e., there have to be enough parity bits to distinguish all corrective actions that might need
to be taken. Given k , we can determine the number of parity bits (n − k ) needed to satisfy
this constraint. Taking the log base 2 of both sides, we can see that the number of parity
bits must grow at least logarithmically with the number of message bits. Not all codes
achieve this minimum (e.g., the rectangular code doesn’t), but the Hamming code, which
we describe next, does....
View Full Document
- Fall '13