• Character Set:

Description

CRC:Cyclic Redundancy Checkis an error-checking technique widely used in the data link layer, providing both error detection and correction capabilities.
Different from the Hamming code and parity check, CRC is not based on parity relationships but on polynomial checks.

Encoding concept: The calculated checksum is added to the original message, and this combination of the original message and the checksum is then sent as a new message to the receiver.

CRC Check Example
Assuming the CRC generating polynomial is G(x) = x^4 + x + 1 (where x is raised to the power of k, with k=4, following the common CRC-4/ITU parameter model), and the binary representation of the polynomial is 10011.
1. The message to be sent is 101011, with a total of 6 bits; k bits are added to the end of the message (thus adding 4 bits, all set to 0), resulting in the augmented message 1010110000, with a total of 10 bits.
2. The augmented message 1010110000 is divided by 10011 (the binary representation of the generating polynomial) using modulo 2 division, yielding a remainder of 100. Since the remainder is always k bits (where k=4), 0s are added in front of 100 to make it a 4-bit remainder, resulting in 0100.
3. The remainder 0100 (which is the CRC checksum) is added to the end of the original message 101011, resulting in the actual message to be sent: 1010110100.
4. When the receiving end receives this message, it will perform the same division with the generating polynomial. A result of 0 indicates that the transmission process is error-free.