# Cyclic Redundancy Check Data LinkError Detection / CorrectionMethod

CRC error detection computes the remainder of a polynomial division of a generator polynomial into a message. The remainder, which is usually 16 or 32 bits, is then appended to the message. When another remainder is computed, a nonzero value indicates an error. Depending on the generator polynomial's size, the process can fail in several ways, however. It is very difficult to determine how effective a given CRC will be at detecting errors.

The probability p that a completely random (bad) message will be incorrectly accepted as valid (not detected as a CRC error), is completely a function of the code rate: p = 2-r = 2-(n - k). Where

• r is the number of redundant bits (32 bits for CRC-32) (equal to n-k)
• k is the number of original bits of data
• n is the number of bits of the transmitted message = k+r

Use of the CRC technique for error correction normally requires the ability to send retransmission requests back to the data source.

Comments:

• There is a little mistake in the sentence regarding the probability that a random code word is not detectable as an error: It is not 1 - 2^-r but 2^-r instead (r = n - k). 1 - 2^-r gives the rate of detectable errors !+

Oops, you are right. I hope it's fixed now. Thank you.

David A Cary Says:

16-bit CRC routine (isochronous) for the polynomial 0x8005
Scott Dattalo, Dave Dribin (2002-08-24)
http://www.piclist.com/techref/postbot.asp?by=time&id=piclist\2002\08\24\233838a&tgt=post
+

A quick guide to CRC: With example calcuation of CRC 16 by Pierre Desrochers +

See also:

Code:

 file: /Techref/method/error/crc.htm, 6KB, , updated: 2011/11/28 21:08, local time: 2017/9/24 01:41, TOP NEW HELP FIND:  54.81.59.211:LOG IN

 ©2017 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions?Please DO link to this page! Digg it! / MAKE! /  Cyclic Redundancy Check error detection

After you find an appropriate page, you are invited to your to this massmind site! (posts will be visible only to you before review) Just type in the box and press the Post button. (HTML welcomed, but not the <A tag: Instead, use the link box to link to another page. A tutorial is available Members can login to post directly, become page editors, and be credited for their posts.

Link? Put it here:
if you want a response, please enter your email address:
Attn spammers: All posts are reviewed before being made visible to anyone other than the poster.
 Did you find what you needed? "No. I'm looking for: " "No. Take me to the search page." "No. Take me to the top so I can drill down by catagory" "No. I'm willing to pay for help, please refer me to a qualified consultant" "No. But I'm interested. me at when this page is expanded."

 PICList 2017 contributors: o List host: MIT, Site host massmind.org, Top posters @20170924 RussellMc, Van Horn, David, James Cameron, Sean Breheny, alan.b.pearce, IVP, Neil, Bob Blick, David C Brown, Denny Esterline, * Page Editors: James Newton, David Cary, and YOU! * Roman Black of Black Robotics donates from sales of Linistep stepper controller kits. * Ashley Roll of Digital Nemesis donates from sales of RCL-1 RS232 to TTL converters. * Monthly Subscribers: Gregg Rew. on-going support is MOST appreciated! * Contributors: Richard Seriani, Sr.

.