ECC-minne, även känt som Error-Correcting Code-minne, har förmågan att upptäcka och korrigera fel i data. Det används ofta i avancerade stationära datorer, servrar och arbetsstationer för att förbättra systemets stabilitet och säkerhet.
Minnet är en elektronisk enhet och fel kan uppstå under dess användning. För användare med höga stabilitetskrav kan minnesfel leda till kritiska problem. Minnesfel kan delas in i två typer: hårda fel och mjuka fel. Hårda fel orsakas av hårdvaruskador eller defekter, och data är konsekvent felaktiga. Dessa fel kan inte korrigeras. Å andra sidan uppstår mjuka fel slumpmässigt på grund av faktorer som elektronisk störning nära minnet och kan korrigeras.
För att upptäcka och korrigera mjuka minnesfel introducerades konceptet med minnes "paritetskontroll". Den minsta enheten i minnet är en bit, representerad av antingen 1 eller 0. Åtta på varandra följande bitar utgör en byte. Minne utan paritetskontroll har bara 8 bitar per byte, och om någon bit lagrar ett felaktigt värde kan det leda till felaktiga data och applikationsfel. Paritetskontroll lägger till en extra bit till varje byte som en felkontrollbit. Efter att ha lagrat data i en byte har de åtta bitarna ett fast mönster. Till exempel, om bitarna lagrar data som 1, 1, 1, 0, 0, 1, 0, 1, är summan av dessa bitar udda (1+1+1+0+0+1+0+1=5 ). För jämn paritet definieras paritetsbiten som 1; annars är den 0. När CPU:n läser den lagrade datan lägger den ihop de första 8 bitarna och jämför resultatet med paritetsbiten. Denna process kan upptäcka minnesfel, men paritetskontroll kan inte korrigera dem. Dessutom kan paritetskontroll inte upptäcka dubbelbitsfel, även om sannolikheten för dubbelbitsfel är låg.
ECC-minne (Error Checking and Correcting) lagrar å andra sidan en krypterad kod vid sidan av databitarna. När data skrivs in i minnet sparas motsvarande ECC-kod. Vid återläsning av lagrad data jämförs den sparade ECC-koden med den nyligen genererade ECC-koden. Om de inte stämmer överens avkodas koderna för att identifiera den felaktiga biten i datan. Den felaktiga biten kasseras sedan och minnesstyrenheten släpper rätt data. Korrigerade data skrivs sällan tillbaka till minnet. Om samma felaktiga data läses igen, upprepas korrigeringsprocessen. Omskrivning av data kan införa overhead, vilket leder till en märkbar prestandaminskning. ECC-minne är dock avgörande för servrar och liknande applikationer, eftersom det ger felkorrigeringsmöjligheter. ECC-minne är dyrare än vanligt minne på grund av dess extra funktioner.
Att använda ECC-minne kan ha en betydande inverkan på systemets prestanda. Även om det kan minska den totala prestandan är felkorrigering avgörande för kritiska applikationer och servrar. Som ett resultat är ECC-minne ett vanligt val i miljöer där dataintegritet och systemstabilitet är av största vikt.
Posttid: 19 juli 2023