Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

is CRC a error correcting code also??????

Status
Not open for further replies.

stay_in_chaos

Junior Member level 1
Joined
Dec 30, 2005
Messages
17
Helped
1
Reputation
2
Reaction score
0
Trophy points
1,281
Activity points
1,450
hi,
as i knew that crc is error detecting code and i had a doubt that is it a error correcting code also
according to me it is only a error detecting code there is no as such error correcting syndrome (untill it is used with any other error corerting code like reed solme, veterbi,etc)

so is mine understanding correct

or is yes/no can you let me know how is it error correcting code also if any site which CLEARLY specifies that it is erroe correcting (that is how many bits one bit ,two bit ,etc)

Pls reply me back soon

thanks in advance
 

CRC's only detect errors. CRC's cannot correct errors, they can only be used to detect when it is necessary to send the data again.
 

CRC can be even used for error correction also.

any body having a crc calulator tool or link pls provide me for crc 8 polynomial
 

hi,
how you are saying, crc can correct errors. do you have any documents or link. it will be usefull for all.

thanx
 

I strongly disagree that crc, in itself, can correct the errors, it only detects errors and normally, once crc detects the errors it asks to send the data again, that is how the correct data is received when there is an error, with reed solomon codes, or other error correcting codes, once the data is received, by itself, any errors that is within the error number that the code can correct, will be automatically corrected, and it does not need to resend data, all it needs is the data either corrupt or valid. It's like reading a sentence, when you read a word in the sentence that is mispelled, you correct it right away,(error correcting codes), or you could ask for another copy of the article you are reading(error detecting code)
 

CRC designed to detect error(s) in incoming data packet.
it is not designed to correct data.
One CRC word used for one packet,
how it could correct entire packet !!!??
:D

Regards,
Davood.
 

see as you all know the crc is only used for error detection but it can even be used for error correction for single bit by generating the particular syndrome for each and each bit and if at the receiver side if the crc calculated doesn't matches with the received crc then both the received crc and calculated crc are exored and tha valve generated, if matches with any of syndrome then it can be be coorected or in case if doesn't maches that is multiple bit error that can't be corrected .

basically all this error correction throgh crc is follwed in high speed transmission.
speed more then 10Gbps.

if in case nay body find a crc error correction(1 bit) for 8 bit polynomial(x8+x2+x+1)then pls let me know .


thanks for your advice
 

if the "packet" protected by CRC is short enough, certiainly, correction is possible. Essentially, CRC is also line coding, like BCH, RS...
 

Hi,

probably out of my depth here, but in order to make CRC into an FEC code I think it needs a slight modification, the result of this modification is closer to a cyclic code (like BCH algorithms) than it is to actual CRC. It's just that they are fairly similar. So really, I guess it depends on how you look at it, if you change something into something else, is it still called the same thing? After all CRC is cyclic redundancy check, its a check, NOT a correction algorithm, when it can be used in certain circumstances to 'correct' errors, its no longer CRC.

My two cents,

BuriedCode.
 

CRC's can be used for ERROR CORRECTION it is just one form of BCH, most people use it only for detection though. CRC's used in RDS are used for correction !!.

regards,

Paul.
 

my take on the subject.

in this site, verilog and VHDL codes can be generated for CRCs.
www.easics.com/webtools/crctool

in general, BCH algorithm, if its not generic and caters to a particular polynomial, doesn't use chien-search or berlekamp-massey algorithm to spot the error and correct it.

instead, on the transmit and receive side, its nothing but a LFSR and a xor operation on the resulting checksum is used to determine the syndrome.

similar to a CRC.
 

it correct only one bit error not multibit error
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top