Help me out understand a CRC residual

Status
Not open for further replies.

copper230230

Newbie level 6
Joined
Feb 6, 2006
Messages
12
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,394
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.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…