500 likes | 520 Views
Explore different error detection methods including repetition, redundancy, Hamming code, checksums, and pinpoint techniques to ensure accurate data transmission and storage in computer systems. Understand how these techniques help in identifying and correcting errors in data.
E N D
http://faculty.chemeketa.edu/ascholer/cs160/Files/ecGrid.htmlhttp://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:
A message • 4 bit message: • An errror:
Trick 1 : Repetition • To avoid misunderstanding, repeat yourself…
Trick 1 : Repetition • An error:
Trick 1 : Repetition • Most common message wins:
Trick 1 : Repetition • What if every message is wrong:
Trick 1 : Repetition • Most common bit wins: Corrected
Trick 1 : Repetition • More errors: "Corrected"
Trick 1 : Repetition • Best 3 out of 5? Corrected
Overhead • Message size : 4 bits • Including repetition : 12 bits
Overhead • 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 theirseats
Trick 2 : Redundancy • Repetion is redundancy • Can we be redundant more efficently?
Hamming Distance • Hamming Distance : number of different bits
Normal Binary • 4 bits : 16 possible values:
Normal Binary • Using all patterns – any error looks like a different message • 1 bit errors for 1010
Normal Binary • Only use half the patterns • All "good" patterns have a distance of 2 from each other
Normal Binary • "Good" patterns have distance of 2:1 bit error is obviously an error • 1 bit errors for 1010
Hamming Code • Use extra bits to "space out" messages • 4 bit message with 3 error correction bits:
Hamming Code • 7 bits could be 27 = 128 codes • Only use 16 of them
Hamming Code • Every good message has distance of 3+ from other good messages:
Our Message • We get: 0110110 • Which message was it meant to be?
Errors • Assuming • Started with valid code word • Only one error • Then • 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
Errors • Assuming 1 error bit, we can identify correct message:
Hamming Code Overhead • Message size : 4 bits • Code word: 7 bits 75% overhead… 512bit message can be encoded with 522bits: 2% overhead!
Trick 3 : Checksums • Parity • Odd or even number of 1's • 1 extra bit used to make odd num of 1's datacheckbit 1001100100 00001 11100
Trick 3 : Checksums • Message: 00001 • All 1 bit errors: 10001 01001001010001100000
Trick 3 : Checksums • Checksum for decimal number: • 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 Check: 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: 12345Message: 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 12345Check: 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:
Trick 4 : Pinpoint • With decimal values:
Trick 4 : Pinpoint • With decimal values: 4 9
Trick 4 : Pinpoint • With decimal values: 4 off by 2 9 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