Information Theory and Coding Basics
Which of the following correctly describes a CRC whose generator polynomial has degree r (r check bits) and a constant term of 1?
- AFor a 1-bit error, its main use is to identify which bit is wrong and correct it
- BIt detects every burst error (an error confined to a contiguous range) of length r bits or less
- CWith a well-chosen generator polynomial, it detects every possible error pattern
Show answer and explanation
Answer: B. It detects every burst error (an error confined to a contiguous range) of length r bits or less
Representing the error pattern as a polynomial E(x), a CRC fails to detect an error only when E(x) is divisible by the generator polynomial G(x). A burst error of length r or less can be written as x^i × B(x) (B(x) of degree r − 1 or less with a constant term of 1), which is not divisible by a degree-r G(x) with a constant term of 1, so it is always detected. On the other hand, patterns that are divisible, such as an error with the same form as G(x) itself, are not detected. CRCs are used mainly to detect errors, and when one is found the data are sent again.
- A. A CRC is used mainly to detect errors, and when one is found the data are sent again. Correction uses error-correcting codes such as Hamming codes.
- B. Correct. A burst error of length r or less is not divisible by the generator polynomial, so it is always detected.
- C. If the error pattern is divisible by the generator polynomial, the remainder does not change, so the error is not detected. Every generator polynomial has such patterns.
Continue: 9 more Information Theory and Coding Basics questions