generator polynomial, g(x) in crc
TRANSCRIPT
![Page 1: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/1.jpg)
Generator Polynomial, G(x) in CRC
By: Gurpal Singh
Roll No. 031
![Page 2: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/2.jpg)
Overview: Cyclic Redundancy Check(CRC) codes
– Invented by W. Wesley Peterson, and published in 1961
– A type of linear block codes
a group of error control bits (which is the remainder of a
polynomial division of a message polynomial by a generator
polynomial) is appended to the end of the message block
– with considerable burst-error detection capability
– The receiver generally has the ability to send
retransmission requests back to the data source through a feedback
channel
–it does not make corrections
–easy to implement in hardware
![Page 3: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/3.jpg)
Notations
m = Number of binary digits in the message before encoding
c = Number of check bits
n = m+c = number of binary digits in the encoded message
![Page 4: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/4.jpg)
Diagram:
![Page 5: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/5.jpg)
Principles of Error Detection and Error Correction • An encoded message containing errors can
be represented by
H (X) = F (X) + E (X)
H (X) = Received encoded message polynomial
F (X) = encoded message polynomial
E (X) = error polynomial
![Page 6: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/6.jpg)
Principles of Error Detection and Error Correction Contd…
• To detect error, divide the received, possible erroneous message H(X) by G(X) and test the remainder.
• If the remainder is nonzero an error has been detected.
• If the remainder is zero, either no error or an undetectable error has occurred
![Page 7: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/7.jpg)
Generator Polynomial, G(x)
![Page 8: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/8.jpg)
General Characteristics of G(x)
For r-bit checksum, G should be of degree r, because otherwise first bit of checksum will always be zero and waste the bit of checksum.The last coefficient should be 1, because otherwise the last bit of checksum would always be zero.
![Page 9: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/9.jpg)
Two Questions?
1. How to design GENERATOR POLYNOMIAL G(x)?
2. How to choose GENERATOR POLYNOMIAL G(x)?
![Page 10: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/10.jpg)
Answer 1
![Page 11: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/11.jpg)
For Single-Bit error
If generator has more than one term and coefficient of x0 is 1, all single errors can caught.
![Page 12: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/12.jpg)
Two isolated single-bit errors
If a generator cannot divide xt+1 (t between 2 and n-1 ), then all isolated double errors can be detected.
![Page 13: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/13.jpg)
Odd numbers of errors
A generator that contains a factor of x+1 can detect all odd numbered errors.
![Page 14: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/14.jpg)
Burst Errors
All burst errors with L <= r will be detected.All burst errors with L = r+1 will be detected with probability 1- (1/2)r-1.All burst errors with L > r+1 will be detected with probability 1- (1/2)r
![Page 15: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/15.jpg)
Characteristics of good G(x)
1. It should have at least two terms.2. The coefficient of term x0 should
be 1.3. It should not divide xt+1, for t
between 2 and n-1.4. It should have the factor x+1.
![Page 16: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/16.jpg)
Answer 2
![Page 17: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/17.jpg)
Hamming distance
-is the minimum possible number of bit inversions that must be injected into a message to create an error that is undetectable by that message's CRC-based Frame Check Sequence.
e.g. if a CRC polynomial has HD=6 for a given network, that means there are no possible combinations of 1-, 2-, 3-, 4-, nor 5-bit errors (where a bit error is an inversion of a bit value) that can result in an undetected error, but there is at least one combination of 6 bits that, when corrupted as a set within a message, is undetectable by that CRC.
![Page 18: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/18.jpg)
Factors:
Code length n(and number of r-bits can be used).Largest value of hamming distance minimum.Lowest undetected error probability.
![Page 19: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/19.jpg)
Generator Polynomial(CRC codes) with HD
![Page 20: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/20.jpg)
Common CRC codes
![Page 21: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/21.jpg)
Query…
![Page 22: Generator Polynomial, G(x) in CRC](https://reader038.vdocument.in/reader038/viewer/2022102922/547d1fbfb4af9fe3098b4598/html5/thumbnails/22.jpg)
THANK
YOU