Download - Chapter9(Error Detection and Correction)
![Page 1: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/1.jpg)
11
Kyung Hee University
Prof. Choong Seon HONG
Error Detection and CorrectionError Detection and Correction
![Page 2: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/2.jpg)
22
Kyung Hee University
99 장 장 Error Detection and CorrectionError Detection and Correction
9.1 Types of Errors
9.2 Detection
9.3 Error Correction
![Page 3: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/3.jpg)
33
Kyung Hee University
Error Detection and CorrectionError Detection and Correction
Data can be corrupted during transmission. For reliable
communication, error must be detected and corrected
are implemented either at the data link layer or the
transport layer of the OSI model
![Page 4: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/4.jpg)
44
Kyung Hee University
9.1 Type of Errors9.1 Type of Errors
![Page 5: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/5.jpg)
55
Kyung Hee University
Type of Errors(cont’d)Type of Errors(cont’d)
Single-Bit Error
~ is when only one bit in the data unit has changed (ex :
ASCII STX - ASCII LF)
![Page 6: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/6.jpg)
66
Kyung Hee University
Type of Errors(cont’d)Type of Errors(cont’d)
Multiple-Bit Error
~ is when two or more nonconsecutive bits in the data
unit have changed(ex : ASCII B - ASCII LF)
![Page 7: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/7.jpg)
77
Kyung Hee University
Type of Errors(cont’d)Type of Errors(cont’d)
Burst Error
~ means that two or more consecutive bits in the data
unit have changed
![Page 8: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/8.jpg)
88
Kyung Hee University
9.2 Detection9.2 Detection
Error detection uses the concept of redundancy, which
means adding extra bits for detecting errors at the
destination
![Page 9: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/9.jpg)
99
Kyung Hee University
Detection(cont’d)Detection(cont’d)
Redundancy
![Page 10: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/10.jpg)
1010
Kyung Hee University
Detection(cont’d)Detection(cont’d)
Detection methods
VRC(Vertical Redundancy Check)
LRC(Longitudinal Redundancy)
CRC(Cyclical redundancy Check)
Checksum
![Page 11: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/11.jpg)
1111
Kyung Hee University
Detection(cont’d)Detection(cont’d)
VRC(Vertical Redundancy Check)
A parity bit is added to every data unit so that the total number of 1s(including the parity bit) becomes even for even-parity check or odd for odd-parity check
VRC can detect all single-bit errors. It can detect multiple-bit or burst errors only the total number of errors is odd.
![Page 12: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/12.jpg)
1212
Kyung Hee University
Detection(cont’d)Detection(cont’d)
Even parity VRC concept
![Page 13: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/13.jpg)
1313
Kyung Hee University
Detection(cont’d)Detection(cont’d)LRC(Longitudinal Redundancy Check)
Parity bits of all the positions are assembled into a new data unit, which is added to the end of the data block
![Page 14: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/14.jpg)
1414
Kyung Hee University
Detection(cont’d)Detection(cont’d)
CRC(Cyclic Redundancy Check)
~ is based on binary division.
![Page 15: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/15.jpg)
1515
Kyung Hee University
Detection(cont’d)Detection(cont’d)
CRC generator
~ uses modular-2 division.
Binary Divisionin aCRC Generator
![Page 16: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/16.jpg)
1616
Kyung Hee University
Detection(cont’d)Detection(cont’d)
Binary Divisionin aCRC Checker
![Page 17: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/17.jpg)
1717
Kyung Hee University
Detection(cont’d)Detection(cont’d)
Polynomials
CRC generator(divisor) is most often represented not as a string of 1s and 0s, but as an algebraic polynomial.
![Page 18: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/18.jpg)
1818
Kyung Hee University
Detection(cont’d)Detection(cont’d)
A polynomial representing a divisor
![Page 19: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/19.jpg)
1919
Kyung Hee University
Detection(cont’d)Detection(cont’d)
Standard polynomials
![Page 20: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/20.jpg)
2020
Kyung Hee University
Detection(cont’d)Detection(cont’d)
Checksum
~ used by the higher layer protocols
~ is based on the concept of redundancy(VRC, LRC, CRC
….)
![Page 21: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/21.jpg)
2121
Kyung Hee University
Detection(cont’d)Detection(cont’d)
Checksum Generator
![Page 22: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/22.jpg)
2222
Kyung Hee University
Detection(cont’d)Detection(cont’d)
To create the checksum the sender does the following:
The unit is divided into K sections, each of n bits.
Section 1 and 2 are added together using one’s complement.
Section 3 is added to the result of the previous step.
Section 4 is added to the result of the previous step.
The process repeats until section k is added to the result of the previous step.
The final result is complemented to make the checksum.
![Page 23: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/23.jpg)
2323
Kyung Hee University
Detection(cont’d)Detection(cont’d)
data unit and checksum
![Page 24: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/24.jpg)
2424
Kyung Hee University
Detection(cont’d)Detection(cont’d)
![Page 25: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/25.jpg)
2525
Kyung Hee University
9.3 Error Correction9.3 Error Correction
~ can be handled in two ways
when an error is discovered, the receiver can have the
sender retransmit the entire data unit.
a receiver can use an error-correcting code, which
automatically corrects certain errors.
![Page 26: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/26.jpg)
2626
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)
Single-Bit Error Correction
parity bit
The secret of error correction is to locate the invalid bit or bits
For ASCII code, it needs a three-bit redundancy code(000-111)
![Page 27: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/27.jpg)
2727
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)
Redundancy Bits
~ to calculate the number of redundancy bits (R) required
to correct a given number of data bit (M)
![Page 28: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/28.jpg)
2828
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)
If the total number of bits in a transmittable unit is m+r,
then r must be able to indicate at least m+r+1 different
states
2r m + r + 1
ex) For value of m is 7(ASCII) , the smallest r value that
can satisfy this equation is 4
24 7 + 4 + 1
![Page 29: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/29.jpg)
2929
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)
Relationship between data and redundancy bits
Number of Data Bits(m)
Number of Redundancy Bits(r)
Total Bits(m+r)
1234567
2333444
356791011
![Page 30: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/30.jpg)
3030
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)
Hamming Code
~ developed by R.W.Hamming
positions of redundancy bits in Hamming code
![Page 31: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/31.jpg)
3131
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)
each r bit is the VRC bit for one combination of data
bits
r1 = bits 1, 3, 5, 7, 9, 11
r2 = bits 2, 3, 6, 7, 10, 11
r4 = bits 4, 5, 6, 7
r8 = bits 8, 9, 10, 11
![Page 32: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/32.jpg)
3232
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)
Redundancy bits calculation(cont’d)
![Page 33: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/33.jpg)
3333
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)
Redundancy bits calculation
![Page 34: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/34.jpg)
3434
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)Calculating the r values
Calculating Even Parity
![Page 35: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/35.jpg)
3535
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)
Error Detection and Correction
![Page 36: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/36.jpg)
3636
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)Error detection using Hamming Code
![Page 37: Chapter9(Error Detection and Correction)](https://reader033.vdocuments.us/reader033/viewer/2022061104/543d683db1af9f350a8b4815/html5/thumbnails/37.jpg)
3737
Kyung Hee University
Error Correction(cont’d)Error Correction(cont’d)
Multiple-Bit Error Correction
redundancy bits calculated on overlapping sets of data units can also be used to correct multiple-bit errors.
Ex) to correct double-bit errors, we must take into consideration that two bits can be a combination of any two bits in the entire sequence