Modulo-2 Digital coding uses modulo-2 arithmetic where addition becomes the following operations: 0+0= =0 0+1= =1 It performs the.

Slides:



Advertisements
Similar presentations
Noise, Information Theory, and Entropy (cont.) CS414 – Spring 2007 By Karrie Karahalios, Roger Cheng, Brian Bailey.
Advertisements

Computer Interfacing and Protocols
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Ch 2.7 Error Detection & Correction CS-147 Tu Hoang.
Error Detection and Correction Parity Schemes: Modulo 2 addition (XOR) Word parity Block Parity.
NETWORKING CONCEPTS. ERROR DETECTION Error occures when a bit is altered between transmission& reception ie. Binary 1 is transmitted but received is binary.
Chapter 10 Error Detection and Correction
Coding and Error Control
Fundamentals of Computer Networks ECE 478/578 Lecture #4: Error Detection and Correction Instructor: Loukas Lazos Dept of Electrical and Computer Engineering.
EEC-484/584 Computer Networks Lecture 13 Wenbing Zhao
Practical Session 11 Codes. Hamming Distance General case: The distance between two code words is the amount of 1-bit changes required to reach from one.
Data Communications Chapter 7 Error Detection. Despite the best prevention techniques, errors may still happen. To detect an error, something extra has.
Chapter 2 : Direct Link Networks (Continued). So far... Modulation and Encoding Link layer protocols Error Detection -- Parity Check.
7/2/2015Errors1 Transmission errors are a way of life. In the digital world an error means that a bit value is flipped. An error can be isolated to a single.
Error Detection and Correction
Error Detection and Correction Rizwan Rehman Centre for Computer Studies Dibrugarh University.
Data link layer: services
British Computer Society
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Chapter 10. Error Detection and Correction
Practical Session 10 Error Detecting and Correcting Codes.
Lecture 3-2: Coding and Error Control (Cont.) ECE
Error Detection and Correction
Error Detection and Correction
Computer Communication & Networks Lecture 9 Datalink Layer: Error Detection Waleed Ejaz
CSCI 465 D ata Communications and Networks Lecture 9 Martin van Bommel CSCI 465 Data Communications & Networks 1.
1 © Unitec New Zealand CRC calculation and Hammings code.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Review.
10.1 Chapter 10 Error Detection and Correction Data can be corrupted during transmission. Some applications require that errors be detected and.
Error Detection. Data can be corrupted during transmission. Some applications require that errors be detected and corrected. An error-detecting code can.
Error Detection and Correction – Hamming Code
Error Detection and Correction
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Practical Session 10 Computer Architecture and Assembly Language.
Coding and Error Control
Lecture 4 Error Detecting and Correcting Techniques Dr. Ghalib A. Shah
Dr. Clincy Professor of CS
Simple Parity Check The simplest form of error detection is the parity check used with ASCII codes, originally on asynchronous modem links Each 7 bit ASCII.
2.8 Error Detection and Correction
Computer Architecture and Assembly Language
Data Link Layer Objective: to achieve reliable and efficient communication between 2 adjacent machines Data link layer design issues services provided.
Error Detection and Correction
Subject Name: COMPUTER NETWORKS-1
Communication Networks: Technology & Protocols
: An Introduction to Computer Networks
Dr. Clincy Professor of CS
Advanced Computer Networks
CIS 321 Data Communications & Networking
Error Detection and Correction
Part III Datalink Layer 10.
Digital data communication (Error control)
Chapter 10 Error Detection And Correction
Error Detection Bit Error Rate(BER): It is the ratio of number Ne of errors appearing over a certain time interval t to the number Nt of 1 and 0 pulses.
EEC4113 Data Communication & Multimedia System Chapter 5: Error Control by Muhazam Mustapha, August 2010.
EEC-484/584 Computer Networks
Chapter 9 Error Detection and Correction
Data Link Layer Objective: to achieve reliable and efficient communication between 2 adjacent machines Data link layer design issues services provided.
Coding and Error Control
Data Link Layer Objective: to achieve reliable and efficient communication between 2 adjacent machines Data link layer design issues services provided.
Protocols and the TCP/IP Suite
Chapter 9 Error Detection and Correction
Error Detection and Correction
Error Detection and Correction
Error Detection and Correction
Computer Architecture and Assembly Language
2.8 Error Detection and Correction
Presentation transcript:

Modulo-2 Digital coding uses modulo-2 arithmetic where addition becomes the following operations: 0+0=0 1+1=0 0+1=1 1+0=1 It performs the equivalent operation to an exclusive-OR (XOR) function. For modulo-2 arithmetic, subtraction is the same operation as addition: 0–0=0 1–1=0 0–1=1 1–0=1 Multiplication is performed with the following: 00=0 01=0 10=0 11=1 which is an equivalent operation to a logical AND operation.

Binary Manipulation Link.

Binary Manipulation x4+x4+x2+1+1 becomes x2 as x4+x4 =0

Binary Manipulation Link.

Modulo-2 Division Link.

Hamming distance Hamming difference between 101101010 and 011101100? Link. The Hamming distance can be used to determine how well the code will cope with errors. The minimum Hamming distance min{d(C1,C2)} defines by how many bits the code must change so that one code can become another code. A code C can detect up to N errors for any code word if d(C) is greater than or equal to N+1 (that is, d(C)N+1). A code C can correct up to M errors in any code word if d(C) is greater than or equal to 2M+1 (that is, d(C)2M+1).

Error detection For example: {00000, 01101, 10110, 11011} has a Hamming distance of 3. Link. d(C)N+1 d(C) is 3, thus N must be 2. So we can detect one or two bits in error in the code. Eg 00000 could become 01010 ... and this will be detected as an error, as the code does not exist.

Error correction For example: {00000, 01101, 10110, 11011} has a Hamming distance of 3. Link. d(C)2M+1 d(C) is 3, thus M must be 1. So we can correct one bit in error in the code. Eg 00000 could become 00010 ... and as the nearest code will be “00000”.

Examples What is the Hamming distance of {00000000, 11111111, 11110000, 01010101} Link? How many errors can be detected? How many errors can be corrected? What is the Hamming distance of {10111101011, 10011111011, 11110101011, 10100101011, 10111101000} Link?

Probability Theorem If an event X has a probability of P(X) and event Y has a probability of P(Y) then the probability that either might occur is: P(X or Y) = P(A) + P(B) – P(X and Y) If one event prevents the other from happening, then they are mutually exclusive, thus P(X and Y) will be zero. This will give: P(X or Y) = P(X) + P(Y)

Probability Theorem If an event X has a probability of P(X) and event Y has a probability of P(Y) then the probability that both might occur is: P(X and Y)=P(X)P(Y | X) P(X and Y)=P(Y)P(X | Y) P(Y | X) is the probability that event Y will occur, assuming X has already occurred. If the two events are independent then P(X | Y) will be P(X) and P(Y | X) will be P(Y): P(X and Y)=P(X)P(Y)

Error probability n bits transmitted

Error probability The probability of a single error can be determined by assuming that all the other bits are received correctly, thus this will be: p(1-p)n–1 As there are n bit positions then the probability of a single bit error will be: Probability of single error = n.p(1-p)n–1 For example if the received data has 256 bits and the probability of an error in a single bit is 0.001 then: Probability of no error = (1-0.001)256 = 0.774 Probability of error = 1-0.774 = 0.0062 Probability of single error=80.001(1-0.001)256–1 = 0.1984

Linear and cyclic codes Linear Code: sum of any two codes equals another code - {00, 01, 10, 11} and {00000, 01101, 10110, 11011}. Cyclic Codes: Linear Code + When a cyclic shift also gives a code word - {0000, 0110, 0011, 1001, 1100, 0001, 0010, 0100, 1000} Is {000, 010, 011, 100, 001} cyclic?

Block parity Odd parity (make number of 1s odd) or Even parity (make number of 1s even). Detects single bit errors. Cannot detect when two bits in error in the same position. Example (binary). Link. Example (int). Link.

Cyclic redundancy checking (CRC) Example: We have 32, and make it divisible by 9, we add a ‘0’ to make ‘320’, and now divide by 9, to give 35 remainder 4. So lets add ‘4’ to make 324. Now when it is received we divide by 9, and if the answer is zero, there are no errors, and we can ignore the last digit. The error correction code is 16 bits long and is the remainder of the data message polynomial G(x) divided by the generator polynomial P(x) (x16+x12+x5+1, i.e. 10001000000100001). The quotient is discarded and the remainder is truncated to 16 bits. This is then appended to the message as the coded word. CRC-CCITT: x16+x12+x5+1 x16+x12+x5+1 G(x)

CRC Example Example. Link. Figure 5.3

CRC (Receiving) Example. Link. No error!

LRC/VRC Link.

Hamming Codes Error correction: m is number of bits in the data symbol n is number of Hamming bits Eg if we have 4 bits (m=4). Then to correct we need n=3 (as 8 is greater than or equal to 4+3+1). How many error correcting bits would be need for 5 bits?

Hamming Codes

Hamming Codes No error Error in bit 5

Hamming Code Sending: Receiving:

Hamming Code

Hamming Code (receiving) At the receiver we calculate the Syndrome matrix S ... if all zeros ... no error!

Hamming Code (Example) Link.

Hamming Code Let’s check the Syndrome matrix: No error!

Hamming Code Error in bit 5 Error: