CRC Divider Calculation

I am trying to understand CRC, and I am confused how to calculate the "divisor".

In the example on wikipedia, the divisor is 11 (1011) to enter 110 100 111 110 100

11010011101100 000 <--- input left shifted by 3 bits 1011 <--- divisor (4 bits) = x³+x+1 ------------------ 01100011101100 000 <--- result 

How is a divisor calculated? In this example (x³ + x + 1) x is 2? Where did 2 come from?

+6
source share
3 answers

From the “CRC Mathematics” section of the same Wikipedia, “The mathematical analysis of this shared-like process shows how to choose a divisor that guarantees good error detection properties.” This is the key to this. Some divisors are better than others, so you just find the standard and usually use it.

The bottom of this page describes some of the CRCs used and the polynomial that defines their divisors.

+1
source

This is written in the following @wikipedia sentence:

If the input bit above the leftmost dividing bit is 0, do nothing. If the input bit above the leftmost division of the divider is 1, the divider will be XORed by the input.

It means:

 1101 xor 1011 => 0110 
0
source

A binary divisor is simply the coefficients of its polynomial. x ^ 3 + x + 1 = 1 * x ^ 3 + 0 * x ^ 2 + 1 * x + 1 * 1; read the odds to get 1 0 1 1

  maninder singh walia walia 
-2
source

Source: https://habr.com/ru/post/896411/


All Articles