Vad är RAM-tider?

click fraud protection

De flesta datoranvändare bryr sig inte särskilt mycket om prestanda när de köper en dator. Så länge det är tillräckligt snabbt och billigt är det bra nog. De kommer att köpa en dator med en nuvarande eller tidigare generations CPU och leta efter rätt mängd lagringsutrymme till närmaste halvterabyte.

Vissa kanske letar efter CPU-hastighet, antal kärnor eller RAM-kapacitet, men det brukar vara det. Om du är en teknikentusiast kanske du ägnar mer uppmärksamhet åt dessa saker, så att du vet vad du får och om det verkligen är en bra affär.

Ett av sätten att pressa ut mest prestanda ur din dator är att få högpresterande RAM. Det betydande flashiga försäljningssiffran är klockhastigheten för RAM-minnet, såsom DDR4-3200 eller DDR5-6400. Tekniskt sett är den andra siffran inte klockhastigheten. Det är överföringshastigheten. Detta är dubbelt så hög klockhastighet eftersom DDR RAM är Double Data Rate. Ändå låter det högre antalet bättre på marknadsföringsmaterialet.

Den överföringshastigheten är ett mått på RAM-minnets bandbredd, så högre siffror är bättre. Bandbredd är dock inte den enda faktorn för RAM-prestanda. Latens är lika viktigt, om inte mer så.

Vad är latens?

Latens är ett mått på fördröjningen mellan att en process initieras och den faktiskt sker. Ett enkelt exempel är "ping" av din internetanslutning. Om du någonsin har kört ett hastighetstest har du sett din nedladdningshastighet och ping. Nedladdningshastigheten är din internetbandbredd, och ping är latensen mellan att du gör en förfrågan och servern som tar emot den. Som många spelare vet spelar det ingen roll hur snabbt ditt internet är. Du kommer inte att ha en bra upplevelse om du har hög latens.

Högpresterande RAM kommer alltid att annonsera dess hastighet. Det kommer ofta att annonsera minst ett specifikt mått på latens. Det vanligaste och viktigaste måttet på latens är CAS-latens, ibland förkortad till CL. Genom att titta lite djupare på produktspecifikationerna är det i allmänhet möjligt att hitta de fyra huvudsakliga primära tidpunkterna. Dessa är tCL/tCAS (CAS-latensen), tRCD, tRP och tRAS. Dessa tider kan ibland följas av ett femte nummer, en kommandohastighet, men det är något annorlunda och generellt oviktigt.

Grunderna för RAM-drift

Innan vi definierar dessa primära tidpunkter kommer det att vara viktigt att förstå grunderna för hur RAM-minne faktiskt fungerar. Data i RAM-minnet lagras i kolumner, och endast en kan interageras med när som helst. För att kunna läsa från eller skriva till en kolumn måste du först öppna raden där den kolumnen finns. Endast en rad kan vara öppen samtidigt. RAM kan komma med flera banker. I det här fallet kan endast en rad vara tillgänglig per bank. Även om det bara går att interagera med en kolumn på en gång, med en andra rad öppen i en andra bank tillåter nästa läs- eller skrivoperation att köas effektivt.

Det är viktigt att förstå att timings inte är absoluta värden. De är faktiskt multiplar av RAM I/O-klockan eftersom de är enheter av klockcykler. Återigen är RAM Double the Data Rate, vilket är hälften av den annonserade hastigheten. Du måste göra lite matematik för att bestämma den faktiska latensen för specifik timing. Du kan göra 1/(annonserad överföringshastighet i Ts/2) för att få längden på en enskild klockcykel i sekunder och sedan multiplicera det med det tidsförhållande du vill veta värdet på. Alternativt, anta att du vill ha en lättare tid. I så fall kan du göra en överföringshastighet på 2000/annonserad i MT: er för att få längden på en enskild klockcykel i nanosekunder och multiplicera det med tidsförhållandet.

Till exempel, om vi har två uppsättningar RAM, DDR4-3000 CL15 och DDR4-3200 CL16, kan vi göra (2000/3000)*15 och (2000/3200)*16 för att upptäcka att den absoluta CAS-latensen för båda typerna RAM är 10 nanosekunder.

Primära tider

De primära tidpunkterna för RAM-minnet presenteras vanligtvis som en uppsättning av fyra siffror separerade med bindestreck. Ibland kommer dessa att åtföljas av antingen en "1T" eller "2T" på slutet. För följande exempel kommer vi att använda de primära tidpunkterna från två poster i vår senaste artikel om bästa spel-RAM 2022: den G.Skill Trident Z Royal DDR4 3200 CL16-18-18-38 och den G.Skill Trident Z5 RGB DDR5 6400 CL32-39-39-102. För dessa exempel är de primära tidpunkterna 16-18-18-38 respektive 32-39-39-102. Tiden för en enskild klockcykel är 0,625 nanosekunder respektive 0,3125 nanosekunder.

Notera: Alla dessa tidpunkter påverkar alla operationer, läs eller skriv, men i exemplen nedan kommer vi bara att hänvisa till läsoperationer för att göra det enkelt.

CAS-latens

Den första siffran i de primära tiderna är CAS-latensen. Detta är vanligtvis den primära timingen för att förbättras om du försöker överklocka RAM-minnet. CAS-latens kan också betecknas som CL, tCAS eller tCL, med de två senare mer sannolikt att hittas i BIOS och andra konfigurationsverktyg. CAS är en förkortning för Column Address Strobe. Det är tekniskt sett inte en stroboskop längre. Men kommandot läser data från en kolumn i en öppen rad i vad som kallas en "sidträff".

tCL är ett mått på hur många cykler efter att en CAS-instruktion har skickats som svaret kommer att börja returneras över I/O-bussen. Så för vårt DDR4-exempel är CAS-latensen 10 nanosekunder; för vårt DDR5-exempel är CAS-latensen också 10 nanosekunder.

RAS till CAS fördröjning

Den andra posten i de primära tiderna är RAS till CAS-fördröjningen. Detta kommer i allmänhet att betecknas som tRCD och är ett minimivärde, inte ett exakt värde. Om det inte finns några öppna rader när en läsinstruktion kommer in kallas detta för en "page miss". En rad måste först öppnas för att komma åt en kolumn för att läsa dess data. RAS står för Row Access Strobe. Precis som CAS är det inte längre en stroboskop med namnet som en baksmälla, men det är namnet på kommandot som ges för att öppna en rad.

RAS till CAS-fördröjningen är det minsta antal klockcykler som tas för att öppna raden, förutsatt att ingen är öppen. Tiden för att kunna läsa data i det scenariot är tRCD + tCL. Vårt DDR4-exempel har en tRCD på 18, vilket är 11,25 nanosekunder, medan vårt DDR5-exempel har en tRCD på 39, vilket ger 12,1875 nanosekunder.

Rad Förladdningstid

Den tredje primära timingen är Row Precharge Time, vanligtvis förkortad till tRP. Detta värde är viktigt när det finns en annan typ av sidmiss. I det här fallet är den högra raden inte öppen, men en annan rad är det. För att öppna den högra raden måste den andra raden först stängas. Processen att slutföra en rad kallas förladdning. Detta innebär att man skriver värdena till raden som läses från när den öppnades.

Radförladdningstiden är det minsta antal klockcykler som krävs för att slutföra förladdningsprocessen på en öppen rad. Den totala tiden för att kunna läsa data från en cell, i detta scenario, skulle vara tRP + tRCD + tCL. Eftersom värdena för tRP är desamma som tRCD i båda våra exempel är det lätt att se att de tar slut upp med samma värden: 11,25 nanosekunder för DDR4 tRP och 12,1875 nanosekunder för DDR5 tRP.

Radaktiveringstid

Den fjärde primära timingen är radaktiveringstiden, vanligtvis förkortad till tRAS. Detta är det minsta antalet klockcykler mellan kommandot att öppna en rad och förladdningskommandot för att stänga den igen. Det är den tid som behövs för att internt uppdatera raden. Detta är den enda primära timingen som överlappar med en annan, specifikt tRCD. Värdena varierar, men är vanligtvis ungefär tRCD + tCL, även om de kan variera upp till runt tRCD + (2* tCL).

Vårt DDR4-exempel har en tRAS på 38 cykler vilket ger en total tid på 23,75 nanosekunder. Vårt DDR5-exempel har ett rRAS-värde på 102 cykler vilket ger en total tid på 31,875 nanosekunder.

Historiskt sett för synkroniserat DRAM har värden varit mycket nära tRCD + tCL, som vi kan se i vårt exempel på DDR4-timing. tRCD + (2* tCL)-scenariot användes traditionellt för asynkront DRAM, eftersom minneskontrollern behövde ge mer än tillräckligt med tid för operationen att slutföras. Intressant nog använder DDR5 för närvarande också tRCD + (2* tCL) summan. Det är oklart om det beror på en förändring i standarden eller om det är ett barnsjukdomar för tidiga DDR5-produkter som kommer att skärpas när plattformen mognar.

Intressant nog finns det några bevis för att det är möjligt att starta med en tRAS lägre än tRCD + tCL. Teoretiskt borde detta inte riktigt fungera. Det är oklart om detta beror på att detta värde, liksom de flesta andra timings, är ett minimum och minneskontrollern väljer att använda lösare timings i praktiken. Eller om inställningarna bara var delvis stabila. Av de primära tidpunkterna har detta sannolikt den minsta effekten på den faktiska prestandan men kan vara värt att justera om du är ute efter toppprestanda, särskilt med de höga värdena som ses i nuvarande DDR5.

Kommandohastighet

Kommandohastigheten är antalet cykler mellan ett valt DRAM-chip och ett kommando som exekveras på det chipet. Det finns många akronymer för detta värde, som CR, CMD, CPC och tCPD. Det enklaste sättet att avgöra är att siffervärdet vanligtvis följs av ett "T". Trots T-notationen är detta fortfarande ett mått i klockcykler.

Det mesta RAM-minnet du hittar kommer att köras på 2T, även om vissa kan köras på 1T. Det kommer att vara en minimal skillnad eftersom detta är skillnaden för en enskild klockcykel, mindre än en nanosekund.

Sekundära och tertiära tider

Det finns många andra sekundära och tertiära timings som kan ändras. Men att göra det är mycket komplicerat. Även erfarna minnesöverklockare kan ta en dag eller mer att slå in stabila inställningar. Vissa är lättare att anpassa än andra och har mer betydande effekter. Till exempel tREFI och tRFC. Dessa styr hur ofta minnescellerna uppdateras och hur lång tid uppdateringsprocessen tar. Under uppdateringsprocessen måste banken annars sitta sysslolös. Så att ha ett så stort gap mellan uppdateringar och en så kort uppdateringsperiod som möjligt innebär att ditt RAM-minne kan fungera längre.

Justering av dessa värden visar ett särskilt värde när din RAM-konfiguration har ett otillräckligt antal banker. Det är viktigt att förstå att om dessa värden är felaktiga kommer det att orsaka storskaliga minneskorruptionsfel eftersom cellerna inte kommer att uppdateras tillräckligt ofta. Dessa inställningar är också känsliga för RAM-temperatur, eftersom detta direkt påverkar hur snabbt laddningen i en cell avtar och därmed hur ofta den behöver uppdateras.

Minneskontrollförhållande

Senaste generationer av processorer kan tillåta dig att konfigurera minneskontrollerförhållandet. Detta är vanligtvis känt som Gear 1, 2 och 4. Kugghjul 1 får minneskontrollern att köras i förhållandet 1:1 med minnet. Detta resulterar dock i överdrivet strömförbrukning över 3600MTs, vilket påverkar systemets stabilitet. För en viss ökning av latens, byter du till Gear 2 kör minneskontrollern i ett 1:2-förhållande, med halva minnets hastighet. Detta ger i slutändan bara någon fördel från cirka 4400MTs och uppåt. Växel 1 är bättre, men växel 2 kan ge stabilitet vid högre hastigheter.

Även om detta är viktigt för DDR4 RAM, körs DDR5 RAM för närvarande alltid i Gear 2 eftersom det startar snabbare. Även om det för närvarande är onödigt, eftersom tekniken inte är mogen nog att använda, skulle Gear 4 driva minneskontrollern i ett 1:-förhållande med minnet på en fjärdedel av hastigheten. Återigen, detta är bara nödvändigt vid höga hastigheter. Det är dock oklart exakt var denna övergång skulle vara eftersom hårdvaran inte är där än.

Slutsatser

RAM-tider erbjuder otrolig konfigurerbarhet för ditt system-RAM. De är dock också ett djupt kaninhål om du kommer in på full RAM-överklockning. För att göra det enklare att få ut de flesta av fördelarna tillåter XMP-standarden minnestillverkare att specificera sina rekommenderade tider utanför JEDEC-standarderna. Detta kan erbjuda extra prestanda i en nästan plug-and-play-implementering.

I vissa fall kommer XMP-profilen att aktiveras som standard. Ändå är det ofta nödvändigt att välja det manuellt i BIOS. Detta tillämpar automatiskt de högre rekommenderade hastigheterna från leverantören och skärper tiderna till de leverantörstestade inställningarna. Om du bestämmer dig för att konfigurera dina RAM-tider är det viktigt att veta vad de är och vad de gör.