Digital Electronics NUMBER SYSTEM BINARY CODES TYPES OF BINARY CODES BCD CODE EFFICIENCY OF BCD EXCESS-3 CODE GRAY CODE M out of N CODING SCHEME with EFFICIENCY PARITY BIT ERROR DETECTION by PARITY QUESTION HAMMING CODE (General form) Relation of PARITY BIT with MESSAGE BITS ILLUSTRATION-I ILLUSTRATION-II BOOLEAN ALGEBRA K MAPS COMBINATIONAL CKT SEQUENTIAL CIRCUITS TIMING CIRCUITS

Eg. So let’s form hamming code using 4-bit message bits 1101 with parity bits as even parity bit and check how it is able to detect and correct error.

As we have already decided parity bit positions and their corresponding message bits for a 4-bit message

For the moment we have hamming code as P1    P2    1  P3 1 0 1

As we have already seen              P1 Checks bit number 1,3,5,7

So P1 = 1 to make number of 1’s to 4 i.e. even in positions 1,3,5,7

P2 Checks bit number 2,3,6,7

So P2 = 0 to make number of 1’s to 2 i.e. even in positions 2,3,6,7

P3 Checks bit number 4,5,6,7

So P3 = 0 to make number of 1’s to 2 i.e. even in positions 4,5,6,7

Hence we have the hamming code as 1010101

As we have already mentioned that hamming code can only detect and correct only single error. So we have error at 5th position which means bit changes from 1 to 0 so we have data changed from 1010101 to 1010001

Now let’s start checking all 3 parity bits starting from P1

P1 Checks bit number 1,3,5,7 and we see we have number 1’s in these bits is 3 i.e. odd which is wrong as it should have been even so put a 1

P2 Checks bit number 2,3,6,7 and we see we have number 1’s in these bits is 2 i.e. even which is right so put a 0

P3 Checks bit number 4,5,6,7 and we see we have number 1’s in these bits is 1 i.e. odd which is wrong as it should have been even so put a 1

Now we collect all the bits recorded with bit from P1 as LSB

So we get 101 hence we get bit 5 with

So as Pand P3 give wrong results so now we find which code bit position is common but not found in code bit position of parity bit P2 and we see that we 5 and 7 common for P1  and P3 but 7 is also present in P2 so we are left with code position 5.

RULE TO FIND POSITION OF ERROR: We start from P1 and start checking whether bit is correct or wrong and if it is wrong then we put a 1 and put a zero if it is correct. And while we reach end we collect all those bits taking bit from P1 as LSB. The decimal equivalent we get from the bits collected is the bit position of error

Hence we have the bit change in position 5 so re-change it to get the correct value.  Hence we change 5th bit of received message which is 1010001, we get 1010101 which is correct one.

So we see hamming code is able to detect and correct single error.