Example on hamming error correcting code, Computer Engineering

Assignment Help:

Q. Example on hamming error correcting code?

For illustration a 4-bit matching word can stand for 24=16 values that range from 0 to 15 as:

0000, 0001, 0010, 0011, 0100, 0101, 0110, 0111

1000, 1001, 1010, 1011, 1100, 1101, 1110, 1111

Value 0000 or 0 represent no error while other values that are 2i-1 (for 4 bits 24- 1=15 which is from 1 to 15) signify an error condition. Every one of these 2i - 1(or 15 for 4 bits) values can be used to signify an error of an individual bit. Because error can take place at the time of transmission of 'N' bit data and 'i' bit error correction code hence we need to have as a minimum 'N+i' error values to signify them. Thus number of error correction bits must be found from subsequent equation:

2i - 1     >= N+i

If we are presuming 8-bit word then we need to have

2i - 1     >= 8+i

Say at

i=3                     LHS = 23 -1 = 7; RHS = 8+3 = 11 

           i=4                      2i-1 = 24 - 1 = 15; RHS = 8+4 = 12  

Thus for an eight-bit word we need to have as a minimum four-bit error correction code for detecting and correcting errors in a single bit at the time of transmission.

In the same way for 16 bit word we require i = 5

25 -1 = 31 and 16+i = 16+5 = 21

For 16-bit word we require five error correcting bits.

Let's explain this with help of an illustration:

Let's presume 4 bit data as 1010

The logic is displayed in subsequent table:

Source:

This complete information that is (data and P1

1665_Example on hamming error correcting code.png

to P4) is transmitted.  

Presuming one bit error in data.

1140_Example on hamming error correcting code1.png

So  P1  - D1, P3 - D3, P4  -D4 pair are different so, as per Figure b1 is in error, so correct it by completing b1 to get correct data 1010.

Case 2:   Data Received as 1000  (Error in b2)

So   P1 - D1, P2 - D2,   P4 - D4 pair are different so as per figure bit b2 is in error.  So correct it by complementing it to get correct data 1010.

727_Example on hamming error correcting code2.png

Case 3:  

Now let's take a case when data received is correct however on receipt one of parity bit let's say P4 become 0.  Please note in this matter because data is 1010 destination parity bits would be D1=0, D2=1, D3=0, D4=1.  So P1- D1, P2 - D2, P3 - D3 would be same however P4 -D4 are different. This doesn't belong to any of combinations in Figure above. So we conclude P4 received is wrong.


Related Discussions:- Example on hamming error correcting code

Categorize the cpu scheduling algorithms, Categorize the CPU scheduling alg...

Categorize the CPU scheduling algorithms? The various CPU scheduling algorithms are categorized as given below:

What is the use of ''using'' declaration in c++, A using declaration in C++...

A using declaration in C++ makes it likely to use a name from a namespace without the scope operator.

Explain communications and synchronization, Communications Parallel t...

Communications Parallel tasks normally have to exchange data. There are various manners in which this can be achieved like over a network or through a shared memory bus. The

Identify the number of control lines for 16 to 1 multiplexer, The number of...

The number of control lines for 16 to 1 multiplexer is ? Ans. We have 16 = 2 4 , 4 Select lines are needed.

Explain the working of static ram - computer memory, Explain the working of...

Explain the working of Static RAM - Computer Memory? SRAM devices tender extremely fast access times (approximately four times faster than DRAM) but are much more expensive to

Determine grade of service is given worse service or not, The larger the Gr...

The larger the Grade of Service, the worse is the service given, it is true or false. Ans: It is true that larger the Grade of Service, the worse service is provided.

What is an accessor in c++, An accessor is a class operation that does not ...

An accessor is a class operation that does not change the state of an object in C++. The access or functions require to be declared as const operations

Explain about data registers, Q. Explain about data registers? The data...

Q. Explain about data registers? The data registers are used just for storing intermediate results or data and not for operand address calculation. Some dedicated address re

Compiler software difficulty, IA-64 instead depends on the compiler for thi...

IA-64 instead depends on the compiler for this task. Even before the program is fed into the CPU, the compiler studies the code and makes the similar sorts of decisions that would

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd