Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Crc

2,448 views

Published on

Computer Network , Cyclic Redundancy check , Polynomial division , polynomial operations.

Published in: Engineering

Crc

  1. 1. CRC Cyclic Redundancy Check Prof. Chintan Patel Chintan.patel@marwadieducation.edu.in
  2. 2. Introduction • Most powerful and Easy to implement technique • Checksum calculation is based on summation while CRC is based on binary division • Cyclic Redundancy check bits are appended at the end of data unit. • If a K bit message is to be transmitted, the transmitter generates an r-bit sequence called as FCS(Frame check sequence). • So k+r bits are actually being transmitted. • Generator Polynomial : it is a predetermined number of length r+1 which is used to generate FCS bits • NOTE : Generator polynomial is decided by sender and receiver by their mutual understanding. Prof. Chintan Patel
  3. 3. • Procedure at sender side : 1. Determine size of original massage (k bits) 2. Establish Generator Polynomial (r + 1 bits). 3. Append r zeros with original message [x = (k (Message)+ r (zeros))] 4. Divide this x by the generator polynomial. 5. Append remainder(also considered as a FCS of r bits) with original message k. 6. Transmit this data. • Procedure at Receiver side : 1. Receive k + r bits 2. Establish Generator Polynomial(r+1 bits) 3. Divide this bits by generator polynomial. 4. If remainder is all bits 0 , no error in transmission Prof. Chintan Patel
  4. 4. CRC Sender and Receiver Prof. Chintan Patel
  5. 5. Concepts……………….. 1. How to represent a binary sequence using polynomial, and how to represent polynomial using binary sequence? 7 + 0x – M1 = 0010,1101  M1(x) = 0x 6 + 1x 5 + 0x 4 + 1x 3 + 1x 2 + 0x 1 + 0 – 1x 5 + x = x 3 + x 2 + 1 2. How to subtract (or add) two polynomials? – Represent the polynomials using binary sequences – Perform bit-wise XOR between the two sequences – Convert the XOR result back to polynomial 7 + x • M1(x) – M2(x)  M1 ⊕ M2 = 00101101 ⊕ 10000100 = 10101001 x 5 + x 3 + 1 Prof. Chintan Patel
  6. 6. Polynomial Division • Dividing a polynomial with another one of lower degree is similar to normal polynomial division with “subtract” simple (XOR). Prof. Chintan Patel
  7. 7. Example 1 • Given information – Generator polynomial = X3 + x + 1 – Data part = X3 + x2 + 1 • What will be FCS Value ? • What will be final bits transmitted by sender?. Prof. Chintan Patel
  8. 8. Solution • Convert polynomial to binary – Generator polynomial = 1011 (r + 1 = 4 bits) – Original Message = 1101 • Append 3(r bits), 0’S with original message. • So it will be 1101000 • Divide this sequence by 1011 • Reminder or FCS Value = 001. • Append this reminder with original message. So it will be 1101001, which will be transmitted by sender Prof. Chintan Patel
  9. 9. Example 2 • Use CRC with general polynomial x3 + 1 to encode the value: 10101111 Prof. Chintan Patel
  10. 10. Example 3 • Obtain the 4-bit CRC code word for the data bit sequence 10011011100 (leftmost bit is the least significant) using the generator polynomial = 10101 Prof. Chintan Patel
  11. 11. Solution Prof. Chintan Patel
  12. 12. Practice Examples 1 P : 1001 D : 101110 2 P : 1101 D : 10010110101 3 P : 1011 D : 11010011101100 Prof. Chintan Patel
  13. 13. Prof. Chintan Patel

×