CRC Check: Generating 3-Bit Burst Error

  • Thread starter Thread starter needhelp83
  • Start date Start date
  • Tags Tags
    Error
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
1 reply · 17K views
needhelp83
Messages
193
Reaction score
0
Consider a message D, presented by the following polynomial
x19 +x17 + x16 +x13 +x12 + x11 + x9 + x5 + x2 + 1
Calculate the CRC code R for that message using a “generator-polynomial”
x7 + x5 + x4 + x3 + x2 + 1.
Represent in binary code the message to be sent (D and R).
Generate 3-bit burst error and show the checking procedure (10 points)

*******************************************************************
D = 10110011101000100101
G = 10111101

Divide using XOR

Added 7 0's to D

101100111010001001010000000/10111101

Transmitted message = 10001100101010110101
R= 111001

Now I need to generate a 3-bit burst error and I assume that could be anywhere. How do I show the check procedure?
 
Physics news on Phys.org
The OP has made a serious error when answering the first part of the question. In view of this and the age (14+ years at time of writing) of the question, I hope the following fairly detailed answer is appropriate.

Data (D) is 10110011101000100101
Generator (G) is 10111101 (8 bits)
Append (8-1=) 7 bits to D to give D’:
D’ = 101100111010001001010000000

Binary-divide (XOR) D’ by G:
101100111010001001010000000 / 10111101
to find remainder, R

Using the calculator here:
https://rndtool.info/CRC-step-by-step-calculator/
Quotient Q = 10001100101010110101
Remainder R=0111001. (This is the frame check sequence (FCS))

Note the quotient from the division is not used. The OP has incorrectly constructed the message to be sent (M) by appending R to Q - which is wrong.

The correct message is constructed by appending R to D, giving:
M = 101100111010001001010111001
______________________

We now create an arbitrary 3-bit burst error. The first and last of the 3-bits must be incorrect. It doesn’t matter if the middle bit is correct or not.

We can put the burst anywhere in M as the question only wants a demonstration of the method.

Make life as easy as possible - choose the 3 most significant bits. (This enables us to have the 3 leftmost bits all zeroes, reducing the number of divisions needed). The erroneous message (M’) is then
M’ = 000100111010001001010111001

To show the checking procedure, we must find the remainder when we binary-divide (XOR) M’ by G:
000100111010001001010111001 / 10111101

We simply need to show that the remainder is non-zero; this demonstrates that we have detected the 3-bit burst error.

Edit - minor only.
 
Reply
  • Like
Likes   Reactions: pbuk and Delta2