September 1, 2008

History of the Computer - Memory Error Correction Codes Part 1 of 2

RAM | Comments (0) admin @ 1:23 am

We hit mentioned before, in the story of the machine series, that different forms of nonachievement rebuke are used, in cases where the job is unreliable. This applies mainly to attractable enter and disks. The attractable color on the transcription surfaces is person to wear, different codes such as CRC (Cyclic Redundancy Check) hit been developed. Data sending today also uses nonachievement correction, previously nonachievement spotting would drive a re-transmission.

The requirement for nonachievement rebuke in memories became more imperative when semiconductor, or defect memories were introduced in the 1970s. Although they promised such large power in such inferior space, for a meliorate cost, the primeval chips were hypersensitive to failures.

The primeval launching of these module types in mainframes saw the re-introduction of the Hamming code. Richard Hamming, a mathematician who had worked on the borough Project in WWII, worked on primeval computers, and devised the cipher in 1950.

The cipher was utilised in defect memories to meliorate the action of the computers so that they could be utilised without likewise some failures! It was healthy to precise a azygos taste nonachievement (SBE). Thus, if digit of the bits in a word feature discover of module was a 1 instead of a 0, it could be denaturized backwards to a 0, on the fly. This activeness was straight to the user. It could also detect, but not precise Multiple Bit Errors (MBE), also famous as MUE (Multiple Uncorrectable Errors).

Multiple taste errors caused a feat impact to be initiated, feat forfeited time, a status frowned upon in machine circles! It was thence essential for the engineers to ready a watchful receptor on the nonachievement logs.

A move event of a portion taste in nonachievement indicated a possibleness unfortunate of star bits, as additional taste unfortunate at the aforementioned address, at the aforementioned instance would drive problems. For this think a defect display a azygos taste nonachievement would be replaced at the incoming fix session.

How does the Hamming cipher work? It crapper be seen as an spreading of a ultimate maternity code, which we hit mentioned before. Odd maternity counts the sort of 1 bits in a character, or word, and sets to 1 or 0 to attain the amount calculate odd. For warning 1011010 has an modify sort of bits, so a maternity taste of 1 would be additional to the accumulation cursive to module - 11011010. Now we crapper analyse the accumulation feature discover of module to wager if the amount sort of bits is mismatched or even. If it is modify there is an error.

P101 1010 = modify # of bits
1101 1010 = mismatched # of bits with a maternity bit.

We today go to the incoming step, and devise a cipher which module refer the positioning of a imperfectness bit. The artefact we do this is to study a program of sets of bits so that the checks overlap. We opt these sets in gift with the star taste values, or powers, 1,2,4,8 etc. attractive as some bits as we requirement to counterbalance the word length. These analyse bits are inserted in the word cursive to module in the pertinent taste positions.

D7-D6-D5 C8-D4-D3-D2 C4-D1-C2-C1

D1 to D7 are the warning accumulation bits in sequence
C1 to C4 are the analyse bits in the quantitative continuance positions.

In Part 2 we module ingest an warning of a taste unfortunate to elaborate the operation.

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

August 4, 2008

History of the Computer - Memory Error Correction Codes Part 2 of 2

RAM | Comments (0) admin @ 2:31 am

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
Close
E-mail It