Explain about hamming error correcting code, Computer Engineering

Assignment Help:

Q. Explain about Hamming error correcting code?

Richard Hamming at Bell Laboratories worked out this code. We will only introduce this code with help of an illustration for 4 bit data. Let's presume a 4 bit number b4, b3, b2, b1.  In order to create a simple error detection code which detects error in one bit only we can just add an odd parity bit.  Though if we want to find which bit is in error then we may have to employ parity bits for different combinations of these 4 bits in such a way that a bit error can be recognized uniquely.  For illustration we can create four parity sets as below

Source Parity                            Destination Parity

b1, b2, b3                                                        P1                                            D1

b2, b3, b4                                                        P2                                            D2

b3, b4, b1                                                        P3                                            D3

b1, b2, b3, b4                                                  P4                                            D4

Now very interesting phenomenon can be noticed in above displayed parity pairs.  Assume data bit b1 is in error on transmission then it will cause alteration in destination parity D1, D3, D4.

ERROR IN                                                     Cause change in Destination Parity 

(One bit only)

b1                                                                                             D1, D3, D4

b2                                                                                             D1, D2, D4

b3                                                                                             D1, D2, D3, D4

b4                                                                                             D2, D3, D4

Figure: The error detection parity code mismatch

So by simply comparing parity bits of source and destination we can recognize that which of four bits is in error. This bit then can be complemented to eliminate error. Please note that even source parity bit can be in error on transmission but under assumption that just one bit (irrespective of data or parity) is in error it would be detected as just one destination parity would be different. What should be length of error detection code that detects error in one bit? Before responding this question we have to look in comparison logic of error detection. Error detection is done by comparing two ‘i’ bit error detection and correction codes fed to comparison logic bit by bit (see figure below). Let’s have comparison logic that produces a zero if compared bits are same or else it generates a one. Consequently if similar Position bits are similar then we obtained zero at that bit Position however if they are dissimilar that is this bit position may point to an error then this Particular bit position would be marked as one. This way a matching word is built. This matching word is ‘i’ bit long so can signify 2i values or combinations.


Related Discussions:- Explain about hamming error correcting code

What is edi (electronic data interchange), What is EDI (Electronic Data Int...

What is EDI (Electronic Data Interchange)? EDI: Electronic Data Interchange (EDI) is used by organizations for transactions that happen on regular basis to a pre-determined for

The concept of parallel execution and concurrent , The Concept of Parallel ...

The Concept of Parallel Execution and Concurrent Real world systems are obviously concurrent, and computer science is about modelling the actual world. Examples of actual worl

What is the system call available to transmit a signal, What is the system ...

What is the system call available to transmit a signal? System call Kill is used to send a signal to a method or a group of processes. Int kill (pad tepid, Int sig); This

Returns the information about tasks running, Returns the information about ...

Returns the information about tasks running int info = pvm_tasks( int where, int *ntask, struct pvmtaskinfo **taskp ) struct pvmtaskinfo {  int ti_tid; int ti_pt

How to clear computer motherboard cmos password, As CMOS is a special chip ...

As CMOS is a special chip with its own battery, the best way to clear out a CMOS chip is to cut off it from its power supply. To clear the CMOS password you just take away the

What is branch target, What is branch target? As a result of branch ins...

What is branch target? As a result of branch instruction, the processor fetches and implements the instruction at a new address called as branch target, instead of the instruct

Explain the program translation model, Explain the program translation mode...

Explain the program translation model The program translation model makes the execution gap through translating a program written in a programming language, termed as the sou

Concept of pipelining, Describe the concept of pipelining. Ans: Pipeli...

Describe the concept of pipelining. Ans: Pipelining is the means of executing machine instructions concurrently. This is the effective way of organizing concurrent activity in

Push and pop, Suupose a stack-oriented processor that haves the stack opera...

Suupose a stack-oriented processor that haves the stack operations PUSH and POP.  Arithmetic operations automatically involve the top one or two stack elements. Starting with an

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