ECC -minne: egenskaper och funktion hos detta RAM -minne

ECC -minne

Visst har du någonsin läst eller hört begreppet ECC -minne, särskilt om vi pratar om serverprocessorer, där den här typen av minne används. Men hur skiljer de sig från dem som traditionellt används i datorer? Kan de installeras på en stationär dator eller en bärbar dator? Vad betyder förkortningen ECC? Vi förklarar det för dig.

I en värld av servrar, en typ av RAM minne används som vanligtvis åtföljs av akronymen ECC, förutom det vi kallar registrerat minne, som presenteras i form av RDIMM -moduler. Så i den här artikeln kommer vi inte att beskriva hårdvaran som du normalt hittar på en dator, såvida du inte har en arbetsstation med en CPU av typen HEDT eller så arbetar du dagligen med servrar.

Vad är registrerat RAM eller RDIMM?

RDIMM-minne registrerad

Registrerade RAM -minnen skiljer sig från konventionella på grund av detaljerna i att ha ett register som är beläget mellan minnesmodulen, kallas i detta fall RDIMM, och systemminnesstyrenheten. Detta register är ett minne om att vad det gör är att lagra följande information:

  • Minnesadresser för åtkomst.
  • Kommandon (läs, skriv eller kopiera)
  • Klockhastighet med vilken den kommunicerar med RAM

Det skiljer sig i sin funktion från konventionella DIMM: er medan data skickas genom de klassiska stiften för datakommunikation, kommandona som tillåter åtkomst till minnet utförs med hjälp av detta register. Detta görs för att ha större signalintegritet och sänka den elektriska belastningen på minneskontrollen, en av fördelarna med detta är möjligheten att stödja fler minnesmoduler i systemet.

RDIMM -moduler är dock långsammare att använda än konventionella moduler, eftersom ett ytterligare steg läggs till för åtkomst till registret, vilket leder till mycket lägre bandbredd och mycket högre latens i RDIMM. DIMM -modulerna som används i datorer är dock avsedda att användas i stationära datorer där det vanligtvis inte finns mer än två åtkomstkanaler, vilket är fallet med arbetsstationer som är baserade på HEDT -processorer och även servrar.

Vad är ECC i RAM?

Intel Xeon

Vi måste ta hänsyn till att RAM, som är flyktigt minne, är beroende av elektricitet för att behålla data som lagras och detta gör det sårbart för förlust. Särskilt om vi tar hänsyn till att de vi använder i våra datorer är av DRAM -typen och därför behöver uppdatera belastningen då och då, leder detta till att de är sårbara för magnetiska och elektriska störningar.

Vanligtvis ändras inte bitarna i varje cell i ett RAM -minne vanligtvis, eftersom det finns ett tillräckligt stort avstånd i spänningen mellan båda värdena så att det inte blir ett hopp från ett värde till ett annat, men när nya generationer släpps minskar minnet skillnadsspänning och det är där felkorrigeringsmetoder eller ECC är nödvändiga för att behålla informationen.

Men för att få en idé kommer vi att ta ett enkelt värde i binärt, 011101011, som i decimal motsvarar talet 235.

  • Om den första biten ändras, 111101011, blir värdet 491.
  • Om det är den andra biten som ändras, 001101011, blir värdet 107.
  • En ändring av den tredje biten gör värdet 011001011 och därför 203.

Av vad du kan se kan en enkel förändring i RAM -värdena ändra värdet på en data i en minnesadress och vi måste ta hänsyn till att de inte bara lagrar data, utan också instruktioner och om vi tänker på servrar vi har att ha Tänk på att dessa är utformade för att fungera 24 timmar om dygnet och 7 dagar i veckan, det vill säga ständigt. Det måste beaktas att DRAM inte kommer att förbli stabilt, så med tiden växer felen i det som kan leda till en generaliserad krasch av systemet.

Hammings kod

Código Hamming ECC

Metoden som används för att korrigera felen i ECC -minnesignalen kallas Hamming -kod, detta är inte någon typ av algoritm som körs av CPU: n, utan utförs i minnesstyrenheten i processorn. med stöd för denna typ av RAM. Dess namn beror på den amerikanska matematikern Richard W. Hamming som är den som utvecklade det.

Hur fungerar det? Tanken med Hamming -koden är att lägga till redundansbitar för felkorrigering genom att jämföra paritetsbitarnas värde. För att göra detta är det som görs att räkna bitarna från vänster till höger och de är numrerade, inte efter det värde de lagrar, utan deras position beaktas.

De bitar som i position motsvarar en effekt på 2 (1, 2, 4, 8 ...) är markerade som paritetsbitar, medan resten av bitarna är markerade som data-only bitar. Paritetsbitarna fördubblas i slutet av bitsträngen, därför kallas de också redundansbitar, på grund av att de upprepas. För att kontrollera dataintegriteten är det som görs att jämföra dem med varandra för att kontrollera integriteten för signalen som lagras i minnet.

Código Hamming bits paridad

Om operationen är ett minne skriver du:

  • CPU: n skickar informationen till minneskontrollern där den berättar vilken minnesadress den vill ändra och data den vill skriva.
  • Styrenheten genererar ECC -koden och skickar den till minnet.
  • Data lagras i minnet.

Å andra sidan, om det läses från minnet.

  • CPU: n gör en begäran till en minnesadress till styrenheten som gör förfrågan till RAM.
  • Styrenheten utför Hamming -koden för att utföra kontrollen, om data är korrekta skickas den tillbaka till CPU: n, om den inte är korrekt, utförs felkorrigeringsprocessen automatiskt.

RAM -moduler med ECC

RAM -ECC och inget ECC

ECC -minnesmoduler har fler minneschip trots att de har samma lagringskapacitet, eftersom några av bitarna används för felkorrigering. Det måste beaktas att pariteten i ECC -minnet inte utförs i varje byte. Vad du gör är att använda block med 9 bitar per byte, så i slutändan har du 64 bitar för att lagra data och 8 som paritetsbitar.

Detta innebär också att minneskontrollern i processorn som kommunicerar i RAM -minnet måste kunna generera Hamming -koden och eftersom ECC -typminne vanligtvis används i processorer som är mer avancerade än stationära processorer betyder det att stödet av denna typ minnet kräver inte bara speciella minneskontroller, utan också speciella moderkort som stöder denna typ av minne. Eftersom en hemdator inte ständigt slås på och kommer att ha regelbundna omstarter används inget ECC -minne

Med detta kommer vi till den sista delen av artikeln som är RDIMM med ECC, som uppenbarligen kombinerar egenskaperna hos de två typerna av RAM och med det alla sina fördelar och nackdelar. Hittills, med tanke på att alla RDIMM -minnen är för server och HEDT och att marknaden kräver felkorrigeringskoden, finns det inte en enda RDIMM -minnesmodul som inte är ECC.