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

Find the boolean expression for the logic circuit, Find the boolean express...

Find the boolean expression for the logic circuit shown below. Ans. Output of Gate-1 (NAND) = (AB)' Output of Gate-2 (NOR) = (A'+B)' Output of Gate-3 (NOR) = [(AB)' + (

Explain in detail about the dynamic timing, Explain in detail about the Dyn...

Explain in detail about the Dynamic timing a. Design is simulated in full timing mode. b. Not all possibilities tested, as it is dependent on input test vectors. c. Simul

Greedy search - artificial intelligence, Greedy Search - artificial intelli...

Greedy Search - artificial intelligence: If we have a heuristic function for states, defined as above, so we can simply measure each state with respect to this measure and ord

State the features of pentium series of microprocessors, State the features...

State the features of Pentium series of microprocessors: Pentium is a 32-bit superscalar, CISC microprocessor.  The term superscalar is used for processor that contains more th

Classification according to part of instruction and data, Classification ac...

Classification according to part of instruction and data: According to the parts of instruction and data, following parts are identified under this classification: Scal

Single program multiple data, SPMD is actually a "high level" programming m...

SPMD is actually a "high level" programming model that can be built upon any combination of the previously mentioned parallel programming models. A single program is executed by al

Posix threads and mutex, The objective of this practical assignment is to u...

The objective of this practical assignment is to use the POSIX environment to write a program that simulates the supply and demand between three processes: warehouse, factory and r

What is demand paging, What is major difference between the Historic Unix a...

What is major difference between the Historic Unix and the new BSD release of Unix System V in terms of Memory Management? Historic Unix uses Swapping - Whole process is tran

Difference b/w non-relocatable and relocatable programs, Differentiate bet...

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

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