Continue to Site

# Help me out understand a CRC residual

Status
Not open for further replies.

#### copper230230

##### Newbie level 6
Dear Sirs,
When I study the USB spec, it said that the CRC polynomial of token was:
G(x) = X^5 + X^2+1

When the host send message with crc to device, then device use this CRC to
check these data. If no error occured, the residual was X^5+X^3+X^2.

I also found some document, but I can't understand what it meant at the item
3 at page 2.
( www.usb.org/developers/whitepapers/crcdes.pdf )

Why the residual will always be a constant?

If someone can kindly tell me the math inside this constant which CRC
residual.
Thanks!!

Help the for CRC

TRy to see the things this way

1 . Inverting a number is adding a Constant to it .
For 4 bit binary number we will be adding 1111 to invert the given no

e.g. Take 1011

when inverted 0100 (a)

Also : 1111
+ 1011
--------------------------
0100

Note it is Polynomial Arithmetic or Modulo 2 Arithmetic (There's no Concept of Carry
and Addition is same as Subtraction)

So by inverting Checksum we only are adding a Constant to it

This is all I could get

Hope it helps u

And I get a few more POINTS

Status
Not open for further replies.