You are on page 1of 3

2017 2nd International Conference for Convergence in Technology (I2CT)

Comprehensive Study of Error Detection by Cyclic


Redundancy Check
Dr. Anil Kumar Singh, Associate Professor,
Department of Information Technology
Jagran Institute of Management,
City: Kanpur (UP), India
E-mail: anil.sysadmin@gmail.com

Abstract – There are different methods are used in detecting the Generator polynomial
error of codeword i.e. parity check etc.. In this paper we will try to
detect the error of codeword with the help of Cyclic Redundancy x3 = 1 0 0 0
Check (CRC). This technique involves binary division of the data. 1
The sender performs a division operation on the bits being sent and 1 0 0 1
calculates the remainder. Before sending the actual bits, the sender
appends the remainder at the end of the real bits. In this paper we Fig. 2 shows the binary value of generator polynomial
have taken two scenarios as 1 and 2. It will help in generating the
codeword and checking the error. In CRC (cyclic redundancy check) also known as polynomial
code, the sender and receiver must agree upon a generator
Keywords: Polynomial, Divisor, Dividend, remainder, CRC, polynomial in advance. Now divide the value
Generator polynomial G(x)
Original data B(x) = 1 0 1 0 0 0 0 1
I. DESCRIPTION
Generator polynomial –G(x) = 1 0 0 1
Scenario 1: Let us take an example of polynomial equation
by the generator polynomial A. Calculate CRC of a message using polynomial division
modulo 2.
II. METHOD
Before calculating the CRC we should know the followings:
Now convert the polynomial equation to binary code.
x Dividend Polynomial B(x) can be divided by a divisor
polynomial G(x) if B(x) is of higher degree than G(x).
Here ‘x’ represent the value of ‘10’ and ‘power’ represent the x Dividend Polynomial B(x) can be divided once by a
‘degree’ of polynomial. divisor polynomial G(x) if B(x) is of same degree
as G(x).
x The remainder obtained when B(x) is divided
Maximum power of x is 7. So the length of binary data will be 8. by G(x) is obtained by performing the exclusive OR.
Now add the all three values with the rules of binary addition.
Here B(x) represents Polynomial and G(x) represents generator
7
x = 1 0 0 0 0 0 0 0 polynomial.
x5 = 1 0 0 0 0 0
1 As per the rules of algebraic field theory, Polynomial
1 0 1 0 0 0 0 1 arithmetic is done modulo 2. There are no borrows for
subtraction or carries for addition. Both are identical to
Fig. 1 shows the binary value of Polynomial equation exclusive OR. [1]

978-1-5090-4307-1/17/$31.00 ©2017 IEEE 556


1001 1 0 1 0 0 0 0 1 1001 1 0 1 0 0 0 0 1 1 1 1

1 0 0 1 1 0 0 1

X 0 1 1 0 X 0 1 1 0

0 0 0 0 0 0 0 0

X 1 1 0 0 X 1 1 0 0

1 0 0 1 1 0 0 1

X 1 0 1 0 X 1 0 1 0

1 0 0 1 1 0 0 1

X 0 1 1 1 X 0 1 1 1
Fig. 3 Calculation of the polynomial original data 0 0 0 0
Now append the remainder in original frame X 1 1 1 1
1 0 0 1
Data bits + CRC = Codeword X 1 1 0 1
1 0 0 1
1 0 1 0 0 0 0 1 1 1 1 X 1 0 0 1
Fig. 4 Codeword 1 0 0 1
Sender sends the codeword to receiver. After receiving the Syndrome 0 0 0 0
codeword, it tries dividing by devisor 1001. If there is a Fig. 6 Calculation of the codeword
remainder, there has been a transmission error.
Syndrome = 0000. It indicates there is no error in transmission.

Fig. 5 CRC generator and checker


Scenario 2: Suppose the fourth bit from the left is inverted
during transmission. Now we will show how this error is
detected at receiver’s end.

1 0 1 0 0 0 0 1 1 1 1

Fig. 7 Codeword

557
CONCLUSION
1 0 1 1 0 0 0 1 1 1 1
The sender before sending the data it generates the codeword
Fig. 8 shows 4th bit inverted as 1 during the transmission
(original data + CRC) with the help of divisor (polynomial
generator).
1001 1 0 1 1 0 0 0 1 1 1 1
Receiver after receiving the codeword it tries to check the error
1 0 0 1 with the help of divisor and if the value of syndrome is zero, it
means no error and if the value of syndrome is nonzero, it means
X 0 1 0 0 there is an error during the transmission.
0 0 0 0 It is found that the error of codeword depends on the value of
X 1 0 0 0 syndrome. The value of syndrome is equal to zero indicated no
error as shown in Fig.6. The value of syndrome nonzero
1 0 0 1 indicated an error as shown in Fig. 9.
X 0 0 1 0
REFERENCES
0 0 0 0
[1]. Andrew S. Tanenbaum, Computer Networks, fourth edition,
X 0 1 0 1 Pearson publication, ISBN 81-7758-165-1
0 0 0 0
X 1 0 1 1
1 0 0 1
X 0 1 0 1
0 0 0 0
X 1 0 1 1
1 0 0 1
Syndrome X 0 1 0

Fig. 9 Calculation of the codeword


Syndrome = 010. It indicates there is an error during the
transmission.

Fig. 10 CRC generator and checker

558

You might also like