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

Device drivers in unix, Device Drivers in UNIX, MS-DOS and Windows System ...

Device Drivers in UNIX, MS-DOS and Windows System Though device drivers are in effect add-on modules they are however considered to be part of system because they are closely i

Show the conditional jump in program with example, Q. Show the conditional ...

Q. Show the conditional jump in program? CMP    AX, BX                      ; compare instruction: sets flags JNE     FIX                             ; if not equal do addi

Digital systems and microprocessors, Your logic function for this assignmen...

Your logic function for this assignment is to be derived from your own student number. The number 1224583 will be used as an example as to how you should derive your function and e

Show the spawned program, Q. Show the spawned program? include "pvm3.h"...

Q. Show the spawned program? include "pvm3.h"  main() {    int ptid, msgtag;    char buf[100];    ptid = pvm_parent();    strcpy(buf, "hello, world from ");

Displaying the towers of hanoi solution, Once you have a solution to the To...

Once you have a solution to the Towers of Hanoi problem, we want to improve the display of the solution. The details of the implementation are up to you. At a minimum, your impleme

Lexical analyser, The aim of this project is for you to construct a fully w...

The aim of this project is for you to construct a fully working compiler for a small simple programming language, SPL. The compiler will read in SPL source code and produce ANSI C

Explain the role of a bus arbiter in a multiprocessor, Explain the role of ...

Explain the role of a bus arbiter in a multiprocessor configuration. Bus arbiter: Which functions to resolve priority between bus masters and allows only one device at a time t

Java Programming, How to parse n size depth node in java and create output ...

How to parse n size depth node in java and create output in same tree format?

Task and parallel task, Task A logically discrete sector of a computati...

Task A logically discrete sector of a computational effort. A task is naturally a program or program-like set of instructions that is implemented by a processor.  Parallel

Difference between non-relocatable self relocatable programs, Differentiate...

Differentiate between non-relocatable self relocatable programs. A non-relocatable program is one which cannot be executed in any memory area other than the area starting at

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