Http://faculty.chemeketa.edu/ascholer/cs160/Files/ecGrid.html.

Slides:



Advertisements
Similar presentations
Error-Correcting codes
Advertisements

DIGITAL COMMUNICATION Packet error detection (CRC) November 2011 A.J. Han Vinck.
STATISTIC & INFORMATION THEORY (CSNB134) MODULE 12 ERROR DETECTION & CORRECTION.
Hamming Code.
Cyclic Code.
Error Control Code.
Lecture 12 Layer 2 – Data Link Layer Protocols

Quantum Error Correction SOURCES: Michele Mosca Daniel Gottesman Richard Spillman Andrew Landahl.
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.
MAT 1000 Mathematics in Today's World Winter 2015.
Unit 1 Protocols Learning Objectives: Understand the need to detect and correct errors in data transmission.
Faculty of Computer Science © 2006 CMPUT 229 Special-Purpose Codes Binary, BCD, Hamming, Gray, EDC, ECC.
MAT 1000 Mathematics in Today's World Winter 2015.
PrasadDigital Roots1 VEDIC MATHEMATICS : Digital Roots/Sums T. K. Prasad
Cosc 2150: Computer Organization
Error Detection and Correction
Error Coding Transmission process may introduce errors into a message.  Single bit errors versus burst errors Detection:  Requires a convention that.
Error Control Code. Widely used in many areas, like communications, DVD, data storage… In communications, because of noise, you can never be sure that.
COEN 180 Erasure Correcting, Error Detecting, and Error Correcting Codes.
MIMO continued and Error Correction Code. 2 by 2 MIMO Now consider we have two transmitting antennas and two receiving antennas. A simple scheme called.
Data and Computer Communications Chapter 6 – Digital Data Communications Techniques.
Data and Computer Communications by William Stallings Eighth Edition Digital Data Communications Techniques Digital Data Communications Techniques Click.
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 Control Code. Widely used in many areas, like communications, DVD, data storage… In communications, because of noise, you can never be sure that.
Error Detection and Correction
1 Rectangular Codes Triplication codes: m 1 m 2 m 3 m 1 m 1 m 1 m 2 m 2 m 2 m 3 m 3 m 3 Repeated 3 times At receiving end, a majority vote is taken.
Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport.
VLSI AND INTELLIGENT SYTEMS LABORATORY 12 Bit Hamming Code Error Detector/Corrector December 2nd, 2003 Department of Electrical and Computer Engineering.
Computer Communication & Networks Lecture 9 Datalink Layer: Error Detection Waleed Ejaz
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.
10.1 Chapter 10 Error Detection and Correction Data can be corrupted during transmission. Some applications require that errors be detected and.
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
Error-Detecting and Error-Correcting Codes
Computer Architecture Error Correcting Codes Ralph Grishman Oct (Text pp and B-65-67) NYU.
Hamming (4,7) Code Binary Linear Codes Hamming Distance Weight of BLC
Part III: Data Link Layer Error Detection and Correction
Error Detecting and Error Correcting Codes
Practical Session 10 Computer Architecture and Assembly Language.
ERROR DETECTION AND CORRECTION Chapter 8 Data Communications & Networking ERROR DETECTION AND CORRECTION Chapter 8 First Semester 2007/2008.
Hamming Codes The Hamming Code is a Forward Error-correcting Code (FEC) that uses redundant bits to correct a single bit error For 4 bit codes, 3 redundant.
Computer Architecture and Assembly Language
ERROR DETECTION AND CORRECTION
Cyclic Redundancy Check (CRC)
Communication Networks: Technology & Protocols
DATA COMMUNICATION AND NETWORKINGS
Error Correcting Code.
Representing characters
Even/odd parity (1) Computers can sometimes make errors when they transmit data. Even/odd parity: is basic method for detecting if an odd number of bits.

Dr. Clincy Professor of CS
Dr. Clincy Professor of CS
Chapter 9 Error Detection and Correction
Dr. Clincy Professor of CS
Fundamentals of Data Representation
주민등록번호.
CS 325: CS Hardware and Software Organization and Architecture
Error Detection and Correction
Reliability and Channel Coding
Computer Architecture and Assembly Language
Reliability and Channel Coding
Types of Errors Data transmission suffers unpredictable changes because of interference The interference can change the shape of the signal Single-bit.
Error Detection and Correction
Error Detection Learning Objectives:
Presentation transcript:

http://faculty.chemeketa.edu/ascholer/cs160/Files/ecGrid.html

Error Detection and Correction Fixing 0101X011

Computer Errors RAM isn't perfect

Computer Errors Networks aren't either

Computer Errors How the heck do you read 1s and 0's off this?

A message 4 bit message: 1

A message 4 bit message: An errror: 1 1

Trick 1 : Repetition To avoid misunderstanding, repeat yourself… Copy 1 Copy 2 Copy 3 1

Trick 1 : Repetition An error: Copy 1 Copy 2 Copy 3 1

Trick 1 : Repetition Most common message wins: Copy 1 Copy 2 Copy 3 1

Trick 1 : Repetition What if every message is wrong: Copy 1 Copy 2 1

Trick 1 : Repetition Most common bit wins: Copy 1 Copy 2 Copy 3 1 1 Corrected 1

Trick 1 : Repetition More errors: Copy 1 Copy 2 Copy 3 1 "Corrected" 1

Trick 1 : Repetition Best 3 out of 5? Copy 1 Copy 2 Copy 3 Copy 4 1 Corrected 1

Overhead 1 Message size : 4 bits Including repetition : 12 bits

Overhead Message size : 4 bits Including repetition : 12 bits Message size : 4 bits Including repetition : 12 bits 200% overhead 10Mb download is now 30Mb!

Trick 2 : Redundancy Redundancy : more information than strictly required Common linguistic trick: He took his seat She took her seat They took their seats

Trick 2 : Redundancy Redundancy : more information than strictly required Common linguistic trick: He took his seat She took her seat They took their seats

Trick 2 : Redundancy Repetion is redundancy Can we be redundant more efficently?

Hamming Distance Hamming Distance : number of different bits 1010 1 2 3 4 1010 0010, 1110, 1000, 1011 0110, 0000, 0011, 1100, 1111, 1001 1101, 0001, 0111, 0100 0101

Normal Binary 4 bits : 16 possible values: 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Normal Binary Using all patterns – any error looks like a different message 1 bit errors for 1010 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Normal Binary Only use half the patterns All "good" patterns have a distance of 2 from each other 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Normal Binary "Good" patterns have distance of 2: 1 bit error is obviously an error 1 bit errors for 1010 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Hamming Code Message Coded Message 0000  0001  0010  0011  0000000 Use extra bits to "space out" messages 4 bit message with 3 error correction bits: Message Coded Message 0000  0001  0010  0011  0000000 0001011 0010111 0011100

Hamming Code 7 bits could be 27 = 128 codes Only use 16 of them 0000000   1000110 0001011 1001101 0010111 1010001 0011100 1011010 0100101 1100011 0101110 1101000 0110010 1110100 0111001 1111111

Hamming Code Every good message has distance of 3+ from other good messages: 0000000   1000110 0001011 1001101 0010111 1010001 0011100 1011010 0100101 1100011 0101110 1101000 0110010 1110100 0111001 1111111

Our Message We get: 0110110 Which message was it meant to be? 0000000   1000110 0001011 1001101 0010111 1010001 0011100 1011010 0100101 1100011 0101110 1101000 0110010 1110100 0111001 1111111

Errors Assuming Then Started with valid code word Only one error 1 bit from one valid word 2+ bits from another valid code word Valid Code A Valid Code B Valid Code C Error

Our Message We get: 0110110 Find the code with distance of 1 0000000   1000110 0001011 1001101 0010111 1010001 0011100 1011010 0100101 1100011 0101110 1101000 0110010 1110100 0111001 1111111

Errors Assuming 1 error bit, we can identify correct message: Received codes After decoding 0000000, 0000001, 0000010 0000100, 0001000, 0010000 0100000, 1000000 0 0 0 0 0 0 0

Hamming Code Overhead Message size : 4 bits Code word: 7 bits 512bit message can be encoded with 522bits: 2% overhead!

Trick 3 : Checksums Parity 1 extra bit used to make odd num of 1's Odd or even number of 1's 1 extra bit used to make odd num of 1's data checkbit 10011 00100 00001 11100

Trick 3 : Checksums Message: 00001 All 1 bit errors: 10001 01001 00101 00011 00000

Trick 3 : Checksums Checksum for decimal number: Message: 46756 Add digits, mod by 10: Message: 46756 4 + 6 + 7 + 5 + 6 = 28 28 mod (clock size) 10 = 8 Coded message: 467568

Trick 3 : Checksums Coded message: 467568 Error message: 461568 4 + 6 + 1 + 5 + 6 = 22 22 mod (clock size) 10 = 2!!! we have a problem

Two Errors Coded message: 467568 Error message: 421568 Check: 421568 4 + 2 + 1 + 5 + 6 = 18 18 mod (clock size) 10 = 8!!! we missed it

Staircse Code Multiply each digit by its place: 12345 Message: 46756 4 x 1 + 6 x 2 + 7 x 3 + 5 x 4 + 6 x 5 = 87 87 mod (clock size) 10 = 7 Coded message: 467567

Two Errors w Stair Case Coded message: 467567 Error message: 421567 12345 Check: 421567 4 x 1 + 2 x 2 + 1 x 3 + 5 x 4 + 6 x 5 = 61 61 mod (clock size) 10 = 1!!! we caught it

Real Life Stair Case ISBN – books: http://www-math.ucdenver.edu/~wcherowi/jcorner/isbn.html

Trick 4: Pinpoint How did I do it?

Trick 4: Pinpoint How did I do it? Every Row & Col should have odd # of black squares

Trick 4: Pinpoint How did I do it? Every Row & Col should have odd # of black squares

Trick 4: Pinpoint Message / Checksum

Trick 4 : Pinpoint With decimal values: 4 7 1 3 9 2 6

Trick 4 : Pinpoint With decimal values: 4 7 1 5 9 2 6

Trick 4 : Pinpoint With decimal values: 4 7 1 5 9 2 6 4 9

4 9 4 7 1 3 9 2 6 Trick 4 : Pinpoint With decimal values: off by 2

Hamming Code Hamming Codes as pinpoint parity checks: http://www.systems.caltech.edu/EE/Faculty/rjm /SAMPLE_20040708.html

Real Life Checksum Last digit of credit card number calculated to http://tywkiwdbi.blogspot.com/2012/06/checksum-number-on-credit-card.html