b'\n_START_ARTICLE_\nVeaparandusega m\xc3\xa4lu\n_START_PARAGRAPH_\nVeaparandusega m\xc3\xa4lu ehk ECC-m\xc3\xa4lu (ingl. k.\xc2\xa0Error-correcting code memory, l\xc3\xbchidalt\xc2\xa0ECC memory) on teatud t\xc3\xbc\xc3\xbcpi arvuti andmete s\xc3\xa4ilitamise seade, mis leiab ja parandab m\xc3\xa4lus tekkinud vigu.\xc2\xa0_NEWLINE_ECC-m\xc3\xa4llu on integreeritud veaparandusloogika ning selle kiibil olev algoritm parandab \xc3\xbchebitiseid vigu k\xc3\xa4igult: andmed,\xc2\xa0mis loetakse igast s\xc3\xb5nast on alati samad nagu andmed, mis sinna kirjutatud olid, isegi siis, kui \xc3\xbcks v\xc3\xb5i rohkem salvestatud bitte on \xc3\xbcmber p\xc3\xb6\xc3\xb6ratud valesse olekusse. Andmete parandus toimub kiibis endas ilma m\xc3\xa4rgatavate viivituste v\xc3\xb5i latentsusajata, samal ajal protsessorist s\xc3\xb5ltumata._NEWLINE_Suurem osa veat\xc3\xb5rjekoodita m\xc3\xa4ludest ei suuda tekkinud vigu avastada, kuid leidub ka paarsustoega\xc2\xa0ECC-ta m\xc3\xa4lusid, mis leiavad k\xc3\xbcll vead, kuid ei paranda neid._NEWLINE_Emaplaat ja protsessor peavad toetama ECC-veaparandust, muidu t\xc3\xb6\xc3\xb6tavad ECC-moodulid ilma veaparanduseta.\n_START_SECTION_\nErinevused\n_START_PARAGRAPH_\nDIMM-il (ingl. k. Dual in-line Memory Module) on alati peal mingi arv m\xc3\xa4lukiipe. Individuaalsed kiibid v\xc3\xb5ivad kasutada nelja (x4), kaheksat (x8) v\xc3\xb5i 16 (x16) biti laiust andmesiini. Signaalirajad m\xc3\xa4lukontrolleris on otse m\xc3\xa4lukiipidega \xc3\xbchendatud (puhverdamata DIMM-idel), kuid x4 kiibid on siinkohal kasutud \xe2\x80\x93 neid saab kasutada vaid koos puhverdatud kiipidega._NEWLINE_M\xc3\xa4lupiirkonnal, mis on unikaalselt adresseeritav vaid m\xc3\xa4lukontrolleri poolt, on 64 biti laiune (veaparanduseta) andmesiin ning s\xc3\xbcsteemidel, mis toetavad ECC-d, lisatakse veaparanduseks 8 bitti, mis teeb andmesiini 72 bitti laiaks. ECC-ta m\xc3\xa4lumoodulitel on kaheksa x8 kiipi (koosneb kaheksast f\xc3\xbc\xc3\xbcsilisest kiibist) ning ECC-ga m\xc3\xa4lumoodulil on neid \xc3\xbcheksa. x4 (4 biti laiune) DIMM koosneks aga 16 f\xc3\xbc\xc3\xbcsilisest kiibist ning kui tegu on veaparandusega m\xc3\xa4lumooduliga, siis oleks kiipe 18 (16 bitis andmed, kahes bitis veaparandusinfo).\n_START_SECTION_\nVigade t\xc3\xbc\xc3\xbcbid\n_START_PARAGRAPH_\n\xc3\x9chebitine m\xc3\xa4lu viga on andmete viga serveri v\xc3\xa4ljundis v\xc3\xb5i toodangus ning vigade s\xc3\xa4ilimine v\xc3\xb5ib anda suurt m\xc3\xb5ju serveri j\xc3\xb5udlusele. M\xc3\xa4lus esineb kahte t\xc3\xbc\xc3\xbcpi \xc3\xbchebitiseid vigu: riistvaralised (ing. k. hard error) ja tarkvaralised (ing. k. soft error) vead._NEWLINE_Riistvaralised vead v\xc3\xb5ivad tekkida n\xc3\xa4iteks liigse temperatuuri muutumise, pingestressi v\xc3\xb5i f\xc3\xbc\xc3\xbcsilise stressi tekitamisest m\xc3\xa4lu osadele._NEWLINE_Tarkvaralised vead tekivad, kui andmed kirjutatakse v\xc3\xb5i loetakse erinevalt, kui algselt kavatsetud \xe2\x80\x93 n\xc3\xa4iteks pinge muutumine emaplaadil, kosmiline kiirgus v\xc3\xb5i radioaktiivsus v\xc3\xb5ivad tekitada muutusi m\xc3\xa4lu bittides. Kuna bitid s\xc3\xa4ilitavad oma programmeeritud v\xc3\xa4\xc3\xa4rtuse elektrilise laengu kujul, siis seda t\xc3\xbc\xc3\xbcpi h\xc3\xa4ired v\xc3\xb5ivad muuta m\xc3\xa4lu biti laengut, tekitades nendes vea. Serverites v\xc3\xb5ivad seda t\xc3\xbc\xc3\xbcpi vead tekkida andmekandjates, protsessori tuumas, l\xc3\xa4bi v\xc3\xb5rgu\xc3\xbchenduse ning erinevat t\xc3\xbc\xc3\xbcpi m\xc3\xa4lus._NEWLINE_Vea tagaj\xc3\xa4rg s\xc3\xb5ltub s\xc3\xbcsteemist. S\xc3\xbcsteemides, kus ECC puudub, v\xc3\xb5ib rike viia kokku jooksmiseni v\xc3\xb5i isegi andmete h\xc3\xa4vinguni. Suurtes tootmiskohtades on m\xc3\xa4lus tekkinud vead p\xc3\xb5hilised riistvaralised p\xc3\xb5hjused masinate kokku jooksmisel. M\xc3\xa4luvead v\xc3\xb5ivad tekitada ka turvariske. Serverites ja muudes arvutitest s\xc3\xb5ltuvates t\xc3\xb6\xc3\xb6kohtades, kus andmete h\xc3\xa4vimine ja s\xc3\xbcsteemirike peab igal juhul v\xc3\xa4lditud olema (nt. finantssektor, teadust\xc3\xb6\xc3\xb6d), eelistatakse seet\xc3\xb5ttu tihti kasutada ECC-m\xc3\xa4lu.\n_START_SECTION_\nVahem\xc3\xa4lu\n_START_PARAGRAPH_\nPaljud protsessorid kasutavad veaparanduskoode kiibil oleva vahem\xc3\xa4lu jaoks, kaasa arvatud Intel Itaniumi, AMD Athloni ja Opteroni protsessorid._NEWLINE_Alates aastast 2006 on EDC/ECC ja ECC/ECC kaks k\xc3\xb5ige levinumat vahem\xc3\xa4lu vigate kaitseviise kasutusel kommertsmikroprotsessorites. EDC/ECC kasutab vea leidmise koodi (EDC, ingl. k. Error Detection Code) esimese taseme vahem\xc3\xa4lu puhul. Kui viga on leitud, siis andmed taastatakse ECC-kaitstud teise taseme vahem\xc3\xa4lustt. ECC/ECC kasutab ECC-kaitstud esimese taseme ja ECC-kaitstud teise taseme vahem\xc3\xa4lu. Protsessorid, mis rakendavad EDC/ECC-d, kirjutavad alati info teise taseme vahem\xc3\xa4llu, kasutades write-through\xc2\xa0tehnikat (vahem\xc3\xa4lus kutsub iga muudatus esile s\xc3\xbcnkroonse andmete uuendamise p\xc3\xb5him\xc3\xa4lus). Seet\xc3\xb5ttu vea leidmisel esimese taseme vahem\xc3\xa4lust lugemise ajal on andmete koopia alati teisest tasemest k\xc3\xa4ttesaadaval.\n_START_SECTION_\nPuhverm\xc3\xa4lu\n_START_PARAGRAPH_\nPuhverm\xc3\xa4lu kasutab tehnoloogiat, mis on tihti paaris, aga mitte otse seotud, ECC-m\xc3\xa4luga. Puhverm\xc3\xa4lul on "puhver", mis asub RAM-i ja s\xc3\xbcsteemi m\xc3\xa4lu kontrolleri vahel ning v\xc3\xa4hendab m\xc3\xa4lukontrolleri koormust._NEWLINE_Puhverdamata m\xc3\xa4lu korral p\xc3\xb6\xc3\xb6rdub m\xc3\xa4lukontroller otse m\xc3\xa4lupankade juurde. Puhverdatud ECC-m\xc3\xa4lu puhul aga suheldakse k\xc3\xb5igepealt puhverm\xc3\xa4luga ning alles seej\xc3\xa4rel p\xc3\xb6\xc3\xb6rdutakse m\xc3\xa4lupankade poole. Seet\xc3\xb5ttu v\xc3\xb5tavad juhised umbes \xc3\xbche protsessori takti rohkem aega, kuid koormus protsessori m\xc3\xa4lukontrollerile on seel\xc3\xa4bi v\xc3\xa4iksem. Puhverm\xc3\xa4lu tagab, et \xc3\xbcheaegselt saab kasutada rohkem m\xc3\xa4lumooduleid, kui see tavaliselt v\xc3\xb5imalik oleks._NEWLINE_Kuigi ECC RAM ei ole alati puhverdatud, siis peaaegu k\xc3\xb5ik puhverm\xc3\xa4lud on ECC-d. P\xc3\xb5hjuseks on, et s\xc3\xbcsteemid, mis kasutavad suurt m\xc3\xa4lumahtu, peavad peaaegu alati stabiilsust v\xc3\xa4ga t\xc3\xa4htsaks.'