Professional Documents
Culture Documents
Comprehensive Study of Error Detection by Cyclic Redundancy Check
Comprehensive Study of Error Detection by Cyclic Redundancy Check
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]
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.
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
558