Vad är en minnesuppdatering?

Både SRAM och DRAM är former av flyktigt minne. Det betyder att de behöver en strömförsörjning för att behålla den data de lagrar. Du kanske har hört talas om att data raderas från RAM när din dator stängs av, men det är inte helt sant. Uppgifterna raderas inte uttryckligen; laddningen som indikerar en binär 1 eller 0 i minnescellerna försvinner. Även om metoden skiljer sig är effekten densamma; uppgifterna görs otillgängliga.

Processen att undkomma laddningen är avgörande för RAM. Det är så viktigt att det är den som skiljer SRAM och DRAM. Static Random Access Memory ( SRAM ) celler använder sex transistorer anslutna som ett par korskopplade växelriktare. Denna struktur bibehåller sin laddning på obestämd tid så länge som minnescellen har en strömförsörjning. Dynamic Random Access Memory ( DRAM ) celler använder en enda transistor som ständigt tappar sin laddning och behöver uppdateras regelbundet.

Denna strukturskillnad lämpar sig också för skillnaderna i användning mellan SRAM och DRAM. DRAM erbjuder betydligt större lagringstäthet men kräver mer komplicerade uppdateringskretsar, även om denna effekt inte räcker för att kompensera densitetsfördelen. SRAM är dock snabbare än DRAM. I processorcacher används SRAM i små mängder, medan DRAM tillhandahåller system-RAM med hög volym.

The Anatomy of a Refresh

För att förstå hur DRAM uppdateras är det bra att veta hur det läses. DRAM-data läses i rader, med en hel rad som läses på en gång. För att göra det laddas en rads ordrad. Detta gör att raden av minnesceller laddas ur till sina respektive bitlinjer. Bitledningarnas jämförande spänningar matas in i avkänningsförstärkare, som förstärker laddningen till minimum eller maximum beroende på tillståndet för varje bitlinje.

Avkänningsförstärkarna öppnas sedan och är tillgängliga för avläsning. Data läses sedan från varje specificerad kolumn till minnesbussen för att överföras till CPU:n. När väl den erforderliga datan har lästs från raden, stängs radens ordlinje och avkänningsförstärkarna av medan bitlinjerna förladdas igen.

Även om detta är mycket komplicerat, kanske du har märkt något viktigt. Läsprocessen laddar ur minnescellerna. Med cellen urladdad, omläsning av dem skulle få alla nollor, data skulle gå förlorade. Att läsa DRAM är destruktivt, men data finns kvar i ditt RAM när du läser det. Det saknas ett steg som förklarar denna diskrepans. Medan avkänningsförstärkarna är låsta, matas deras tillstånd tillbaka till minnescellerna de läser från, vilket håller låga celler låga och laddar höga celler. Detta görs automatiskt vid varje läsoperation och är en uppdateringsoperation.

En uppdateringsoperation fungerar på samma grund, men istället för att överföra begärd data till minnesbussen laddar avkänningsförstärkarna bara upp minnescellerna innan de stängs av igen.

Varför är en uppdatering nödvändig?

Det är lätt att förstå varför det är nödvändigt att uppdatera en minnescell efter en destruktiv läsoperation. Det är mindre intuitivt varför andra uppdateringar behövs. Tyvärr är de små transistorerna som används för att upprätthålla laddningen av varje cell inte perfekta för att behålla en laddning. Det bara läcker bort. Detta händer ganska snabbt. JEDEC-standarden för nuvarande minnesstandarder kräver att alla rader i ett DRAM-chip uppdateras var 64:e ms.

För att förhindra prestandaförlust utförs processen opportunistiskt var 64:e ms och uppdaterar hela DRAM-kretsen i en batch. Rader som läses har redan uppdaterats, men medan DRAM-minnet är ledigt uppdateras olästa rader i bakgrunden.

Forskning har visat att DRAM-celler kan behålla sina data i 10 sekunder utan att uppdateras. Vissa statistiska extremvärden kan till och med behålla data i upp till en minut. Tyvärr får du också utstickare åt andra hållet som inte kan hålla sin laddning ens för en sekund. En mycket konservativ uppdateringscykeltimer är vald för att undvika dataförlust eller korruption. Ändå är modernt DRAM tillräckligt snabbt för att uppdatera var 64:e ms inte innebär en märkbar prestandaförlust.

Tips: Forskare har funnit att laddningsretention kan variera avsevärt mellan celler, även i ett enda DRAM-chip. Ibland blir bra celler plötsligt sämre på att hålla sin laddning, så du kan inte heller plocka körsbär på ett tillförlitligt sätt.

Forskning har också funnit att temperatur spelar en betydande roll i laddningsavklingningshastigheten. Laddning över 85 grader Celsius kan avta betydligt snabbare, så uppdateringscykeln halveras. Omvänt kan kall DRAM behålla sin laddning längre. Detta är tillräckligt känt för att "kallstart"-attacker kan användas för att försöka återställa data "förlorade" vid avstängning från RAM genom att kyla det.

Slutsats

DRAM-celler behöver regelbundet uppdateras för att lagra data på lång sikt av två anledningar. För det första är läsoperationen destruktiv. För det andra avtar transistorns laddning med tiden. För att förhindra dataförlust skrivs läst data tillbaka till samma minnesceller och celler som inte har lästs nyligen uppdateras regelbundet. Uppdateringsprocessen är vanligtvis bara nödvändig med några sekunders mellanrum. Men alla rader uppdateras på en mycket konservativ tidsskala för att förhindra dataförlust från celler som är statistiska extremvärden i hur snabbt deras laddning avtar.

Det skulle vara möjligt att minska hur ofta uppdateringar som behövs med temperatursensorer och teknik för retentionsmedvetenhet. Detta skulle innebära att föredra användningen av celler som är bra på att hålla en laddning. Genom att göra det skulle man, där det är möjligt, undvika de statistiska extremvärden som kräver en sådan konservativ justering. Sådana tekniker används dock inte i allmänhet, eftersom de lägger till kostnad och komplexitet för att lösa ett problem med minimal prestandapåverkan. Dela dina tankar i kommentarerna nedan.


Hur man klona en hårddisk

Hur man klona en hårddisk

I den moderna digitala tidsåldern, där data är en värdefull tillgång, kan kloning av en hårddisk på Windows vara en avgörande process för många. Denna omfattande guide

Hur fixar jag drivrutinen WUDFRd kunde inte laddas på Windows 10?

Hur fixar jag drivrutinen WUDFRd kunde inte laddas på Windows 10?

Står du inför felmeddelandet när du startar din dator som säger att drivrutinen WUDFRd inte kunde laddas på din dator?

Så här åtgärdar du NVIDIA GeForce Experience Error Code 0x0003

Så här åtgärdar du NVIDIA GeForce Experience Error Code 0x0003

Upplever du NVIDIA GeForce-felkod 0x0003 på ditt skrivbord? Om ja, läs bloggen för att hitta hur du åtgärdar det här felet snabbt och enkelt.

Vad är SMPS?

Vad är SMPS?

Lär dig vad som är SMPS och innebörden av olika effektivitetsklasser innan du väljer en SMPS för din dator.

Varför slås inte min Chromebook på

Varför slås inte min Chromebook på

Få svar på frågan Varför slås inte min Chromebook på? I den här användbara guiden för Chromebook-användare.

Hur man rapporterar nätfiskebedrägerier till Google

Hur man rapporterar nätfiskebedrägerier till Google

Lär dig hur du rapporterar en bedragare till Google för att hindra dem från att lura andra med den här guiden.

Roomba stannar, sticker och vänder sig om – fixa

Roomba stannar, sticker och vänder sig om – fixa

Åtgärda ett problem där din Roomba robotdammsugare stannar, fastnar och fortsätter att vända sig om.

Hur man ändrar grafikinställningar på Steam Deck

Hur man ändrar grafikinställningar på Steam Deck

Steam Deck erbjuder en robust och mångsidig spelupplevelse precis vid dina fingertoppar. Dock för att optimera ditt spelande och säkerställa bästa möjliga

Vad är isoleringsbaserad säkerhet?

Vad är isoleringsbaserad säkerhet?

Vi skulle fördjupa oss i ett ämne som blir allt viktigare i världen av cybersäkerhet: isoleringsbaserad säkerhet. Detta förhållningssätt till

Hur man använder Auto Clicker för Chromebook

Hur man använder Auto Clicker för Chromebook

Idag skulle jag fördjupa dig i ett verktyg som kan automatisera repetitiva klickuppgifter på din Chromebook: Auto Clicker. Detta verktyg kan spara tid och