Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Http://faculty.chemeketa.edu/ascholer/cs160/Files/ecGrid.html."— Presentation transcript:

1

2 Error Detection and Correction
Fixing 0101X011

3 Computer Errors RAM isn't perfect

4 Computer Errors Networks aren't either

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

6 A message 4 bit message: 1

7 A message 4 bit message: An errror: 1 1

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

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

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

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

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

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

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

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

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

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

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

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

20 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

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

22 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

23 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

24 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

25 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 

26 Hamming Code 7 bits could be 27 = 128 codes Only use 16 of them

27 Hamming Code Every good message has distance of 3+ from other good messages:

28 Our Message We get: 0110110 Which message was it meant to be? 0000000

29 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

30 Our Message We get: 0110110 Find the code with distance of 1 0000000

31 Errors Assuming 1 error bit, we can identify correct message: Received codes After decoding , , , , ,

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

33 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

34 Trick 3 : Checksums Message: 00001 All 1 bit errors:

35 Trick 3 : Checksums Checksum for decimal number: Message: 46756
Add digits, mod by 10: Message: 46756 = 28 28 mod (clock size) 10 = 8 Coded message:

36 Trick 3 : Checksums Coded message: 467568 Error message: 461568
= 22 22 mod (clock size) 10 = 2!!! we have a problem

37 Two Errors Coded message: 467568 Error message: 421568 Check: 421568
= 18 18 mod (clock size) 10 = 8!!! we missed it

38 Staircse Code Multiply each digit by its place: 12345 Message: 46756
4 x x x x x 5 = 87 87 mod (clock size) 10 = 7 Coded message:

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

40 Real Life Stair Case ISBN – books:

41 Trick 4: Pinpoint How did I do it?

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

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

44 Trick 4: Pinpoint Message / Checksum

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

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

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

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

49 Hamming Code Hamming Codes as pinpoint parity checks:
/SAMPLE_ html

50 Real Life Checksum Last digit of credit card number calculated to


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

Similar presentations


Ads by Google