Error-Detecting and Error-Correcting Codes

Slides:



Advertisements
Similar presentations
Hamming Code.
Advertisements

10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
CSE 461: Error Detection and Correction. Next Topic  Error detection and correction  Focus: How do we detect and correct messages that are garbled during.
NETWORKING CONCEPTS. ERROR DETECTION Error occures when a bit is altered between transmission& reception ie. Binary 1 is transmitted but received is binary.
Quantum Error Correction SOURCES: Michele Mosca Daniel Gottesman Richard Spillman Andrew Landahl.
Error Detection / Correction
CSC 3352 Computer Communications Chapter 3&41 The Link Layer Has 2 main Components The Data Link Layer Medium Access Control (MAC) Examples:SLIP, PPP,
Chapter 3 Coding Theory.
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.
Error detection and correction
Reliability and Channel Coding
Unit 1 Protocols Learning Objectives: Understand the need to detect and correct errors in data transmission.
Forward Error CORRECTION A little magic. Hamming in perspective Typically errors are corrected with retransmission. Hamming lets the receiver determine.
Error Detection and Correction
Faculty of Computer Science © 2006 CMPUT 229 Special-Purpose Codes Binary, BCD, Hamming, Gray, EDC, ECC.
Number Systems and Codes
Hamming Code Rachel Ah Chuen. Basic concepts Networks must be able to transfer data from one device to another with complete accuracy. Data can be corrupted.
Chapter 10 Error Detection and Correction
Topic 2 – Introduction to Computer Codes. Computer Codes A code is a systematic use of a given set of symbols for representing information. As an example,
Information Coding in noisy channel error protection:-- improve tolerance of errors error detection: --- indicate occurrence of errors. Source.
British Computer Society
Data Link Layer: Error Detection and Correction
The Data Link Layer Goal –As reliable as possible, efficient communication Point-to-Point –single connection –bits arrive in order sent Not necessarily.
ENEE244-02xx Digital Logic Design Lecture 3. Announcements Homework 1 due next class (Thursday, September 11) First recitation quiz will be next Monday,
Practical Session 10 Error Detecting and Correcting Codes.
ECE453 – Introduction to Computer Networks Lecture 4 – Data Link Layer (I)
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
Error Detection and Correction
CHAPTER 3: DATA LINK CONTROL Flow control, Error detection – two dimensional parity checks, Internet checksum, CRC, Error control, Transmission efficiency.
Error Detection.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Computer Communication & Networks Lecture 10 Datalink Layer: Error Correction Waleed Ejaz
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 Block Coding Messages are made up of k bits. Transmitted packets have n bits, n > k: k-data bits and r-redundant bits. n = k + r.
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.
Data Link Layer. Data Link Layer Topics to Cover Error Detection and Correction Data Link Control and Protocols Multiple Access Local Area Networks Wireless.
Error Detection and Correction
Data Communications and Networking
1 Digital Design Debdeep Mukhopadhyay Associate Professor Dept of Computer Science and Engineering NYU Shanghai and IIT Kharagpur.
Hamming Distance & Hamming Code
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Computer Architecture Error Correcting Codes Ralph Grishman Oct (Text pp and B-65-67) NYU.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 Product Codes An extension of the concept of parity to a large number of words of data 0110… … … … … … …101.
Data Link Layer 1. 2 Single-bit error 3 Multiple-bit error 4.
Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Error Correction/Detection.
Practical Session 10 Computer Architecture and Assembly Language.
ECE 442 COMMUNICATION SYSTEM DESIGN LECTURE 10. LINEAR BLOCK CODES Husheng Li Dept. of EECS The University of Tennessee.
parity bit is 1: data should have an odd number of 1's
Modulo-2 Digital coding uses modulo-2 arithmetic where addition becomes the following operations: 0+0= =0 0+1= =1 It performs the.
Dr. Clincy Professor of CS
Computer Architecture and Assembly Language
ERROR DETECTION AND CORRECTION
Error Detection and Correction
Character coding schemes
Error Correcting Code.

Welcome to the presentation. Linear Block Codes Almost all block codes used today belong to a subset called linear block codes. The exclusive OR of two.
II. Linear Block Codes.
Dr. Clincy Professor of CS
Dr. Clincy Professor of CS
Information Redundancy Fault Tolerant Computing
CS 325: CS Hardware and Software Organization and Architecture
Error Detection and Correction
Reliability and Channel Coding
Computer Architecture and Assembly Language
Types of Errors Data transmission suffers unpredictable changes because of interference The interference can change the shape of the signal Single-bit.
Lecture 17 Making New Codes from Old Codes (Section 4.6)
Presentation transcript:

Error-Detecting and Error-Correcting Codes Motivation Computers make errors occasionally (data gets corrupted) due to Voltage spikes Cosmic particles Corrupt data causes incorrect behavior Fix Use some bits to hold redundant information Data + Redundancy  Code Words Depending of amount of redundancy (and exact properties of the codes) we can Detect errors Correct errors (automatically) Computer System Organization GCP, DoI, AUEB

Hamming Distance Hamming Distance (between 2 codewords): the number of bits that need to be changed (reversed) to change one codeword into the other codeword Example: change in 1 bit creates a new (valid) codeword Hamming Distance = 1 Equivalently: number of bits that differ 1111 and 1010 are 2 bits apart 1111 and 0000 have distance 4 Hamming Distance of a code: the minimum Hamming Distance between any two codewords of the code Computer System Organization GCP, DoI, AUEB

Hamming Distance of 1 Hamming Distance of 1: change in 1 bit creates a new codeword What happens with change of 1 bit (1 bit in error)? A -000 D -001 F -110 C -011 H -101 G -111 B -010 E -100 Computer System Organization GCP, DoI, AUEB

Hamming Distance of 2 What happens with 1 bit in error? What happens with 2 bits in error? A -000 001 C -110 B -011 D -101 111 010 100 Computer System Organization GCP, DoI, AUEB

Hamming Distance of 3 What happens with 1 bit in error? 2 bits in error? 3 bits in error? A -000 001 110 011 101 B -111 010 100 Computer System Organization GCP, DoI, AUEB

Properties of Distance of Codes Code words have m + r bits (m data, r check) Detecting single bit errors Code must have distance >= 2 Detecting d single bit errors Code must have distance >= d+1 Correcting d single bit errors Code must have distance >= 2d+1 Correcting a single bit error: d = 1, min. distance = 3 (bits) Computer System Organization GCP, DoI, AUEB

Example of Code Distance Properties Consider the code with only 2 code words 1111 and 0000 Distance of 4 1110 Detected as single bit error Distance 1 from 1111 Correctable since only one code word can have single bit error and become “1110” This is the 1111 codeword 1100 Detected as 2 bit errors Distance 2 (e.g., from 1111) Correctable? Computer System Organization GCP, DoI, AUEB

Parity Bit Concept Given the word: 10011011 – add “parity bit” Even Parity: even # of 1’s: 110011011 Odd Parity: odd # of 1’s: 010011011 Computer System Organization GCP, DoI, AUEB

Hamming’s Algorithm (Illustrated in the Single Bit Correction Case) Bits in power of two position are check bits Bit n is checked by bits in the decomposition of n into a sum of powers of 2: 1 + 2 … + 2j = n Bit 9 is checked by 1 and 8 ( 9 = 1 + 23) Bit 1 checks 1, 3, 5, 7, 9, 11 in codeword 1+2 = 3, 1+4 = 5, etc. Bit 2 checks 2, 3, 6, 7, 10, 11 Bit 4 checks 4, 5, 6, 7, 12 Bit 8 checks 8, 9, 10, 11, 12 8 bit data word has codeword of the form D D D D P D D D P D P P 12 11 10 9 8 7 6 5 4 3 2 1 P – Parity (assume even parity) D – Data Computer System Organization GCP, DoI, AUEB

Example: Hamming Code (11,7) Computer System Organization GCP, DoI, AUEB

Error! Retrieved Stored Computer System Organization GCP, DoI, AUEB

Determining Bit in Error Computer System Organization GCP, DoI, AUEB