generator polynomial, g(x) in crc
TRANSCRIPT
Generator Polynomial, G(x) in CRC
By: Gurpal Singh
Roll No. 031
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
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
Diagram:
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
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
Generator Polynomial, G(x)
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.
Two Questions?
1. How to design GENERATOR POLYNOMIAL G(x)?
2. How to choose GENERATOR POLYNOMIAL G(x)?
Answer 1
For Single-Bit error
If generator has more than one term and coefficient of x0 is 1, all single errors can caught.
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.
Odd numbers of errors
A generator that contains a factor of x+1 can detect all odd numbered errors.
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
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.
Answer 2
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.
Factors:
Code length n(and number of r-bits can be used).Largest value of hamming distance minimum.Lowest undetected error probability.
Generator Polynomial(CRC codes) with HD
Common CRC codes
Query…
THANK
YOU