History of the Computer - Memory Error Correction Codes Part 2 of 2
32 taste or 64 taste text are common, but for demo purposes, we module ingest our 7 taste word from the warning above, without the maternity bit. We requirement to intend the player maternity bits to indite into module along with the accumulation bits, at the pertinent taste positions.
101 1010 becomes
1-0-1 C4-1-0-1 C3-0-c2-c1
The newborn analyse bits are utilised to create maternity for their pertinent bits. C1 checks apiece move bit, C2 checks apiece move 2 bits, C3 checks apiece move 4 bits, C4 checks apiece move 8 bits.
101 C101 C0CC
1=1 =1=1 =0=C - C1 is a 1 to attain mismatched parity
10= =10= =0C= - C2 is a 1 to attain mismatched parity
=== =101 C=== - C3 is a 1 to attain mismatched parity
101 C=== ==== - C4 is a 1 to attain mismatched parity
Thus the code (Error Correction Code) is 1111, and the word becomes
101 1101 1011
Just for section we crapper add a maternity taste for this newborn word (can’t be likewise careful!)
1101 1101 1011 The coverall maternity taste is not thoughtful in the coding.
This word, which has grown from 7 bits to 12 bits crapper today be cursive to memory. When we requirement to feature the accumulation from module we crapper analyse the taste ornament to wager if we hit a problem. For warning presume bit 7 in our word has dropped, and is today 0. Once again we create the code to study with the digit we stored. The word we feature discover is now
1101 0001 0011 - the maternity taste is incorrect, display modify parity. The code we feature discover is 1111 (same as we wrote). Generate the newborn ECC.
101 C001 C0CC
1=1 =0=1 =0=C - C1 is 0 to attain mismatched parity
10= =00= =0C= - C2 is 0 to attain mismatched parity
=== =001 C=== - C3 is 0 to attain mismatched parity
101 C=== ==== - C4 is 1 to attain mismatched parity
Our newborn code is 1000, patch the digit we feature discover was 1111. We today action an XOR (eXclusive OR) of these digit ECCs. This means, where we hit a 1 taste in digit taste position, but not both, the termination is a 1.
1111 - feature out
1000 - generated
—- - XOR
0111 - termination - C4=0, C1-3=1
The termination is titled the Error Syndrome, and is utilised to precise the imperfectness bit. In this housing we hit bits C1, C2, and C3 = 1. This gives us quantitative 1+2+4=7. The ordinal taste is flipped from 0 to 1, restoring the example data. The code bits are empty soured and the accumulation bits passed on.
Like every nonachievement spotting systems, the more grouping you add, the more possibleness there is for something to go wrong! Sometimes the problems are in the nonachievement spotting logic, and not the data. This grouping detects errors in the analyse bits, as substantially as the accumulation bits! It module precise a azygos taste error, and notice but not precise binary errors.
Tony is an old machine engineer. He is currently webmaster and presenter to http://www.what-why-wisdom.com A ordered of diagrams concomitant these articles haw be seen at http://www.what-why-wisdom.com/history-of-the-computer-0.html RSS take also acquirable - ingest http://www.what-why-wisdom.com/Educational.xml
Tags: computer history, ecc, hamming, history of the computer