Gå til innhold

RAM-FAQ. Ofte stilte spørsmål og svar (oppdatert 06.09.2011)


endrebjo

Anbefalte innlegg

Videoannonse
Annonse

jaja, da fikk jeg prøvd litt mer overklokking her. Fant ut at jeg ikke fikk lov til å stille på CAS faktisk :p Endret det, og når jeg bootet, ble bare default settings lastet. Det som var rart var at når jeg gikk inn i BIOS, sto de nye innstilingene der (de som ikke ble bootet).

 

Jeg kom derimot lenger enn jeg hadde forventet. Var oppe i 290FSB med standard vdimm (kan ikke stille på dette heller i BIOS :p)

 

Utennavn6.jpg.xs.jpg

 

Ikke værst spør du meg ;) Hovedkortet koster 500 eller noe XD ASrock s939 Dual SATA2

 

Med en gang jeg prøvde meg over dette, gikk det galt. Ville ikke boote Vista. Men husk at dette er uten å røre verken vdimm ELLER latency ;)

Lenke til kommentar
jaja, da fikk jeg prøvd litt mer overklokking her. Fant ut at jeg ikke fikk lov til å stille på CAS faktisk :p Endret det, og når jeg bootet, ble bare default settings lastet. Det som var rart var at når jeg gikk inn i BIOS, sto de nye innstilingene der (de som ikke ble bootet).

 

Jeg kom derimot lenger enn jeg hadde forventet. Var oppe i 290FSB med standard vdimm (kan ikke stille på dette heller i BIOS :p)

 

Utennavn6.jpg.xs.jpg

 

Ikke værst spør du meg ;) Hovedkortet koster 500 eller noe XD ASrock s939 Dual SATA2

 

Med en gang jeg prøvde meg over dette, gikk det galt. Ville ikke boote Vista. Men husk at dette er uten å røre verken vdimm ELLER latency ;)

7920361[/snapback]

 

Minnet er vel spesifisert for 266MHz.

Kan nesten ikke regne med bedre overklokking uten et kort som er laget for overklokking. Har ikke sjekka BIOS på det kortet, men antar at det må moddes for overklokking.? Øke vdimm en smule? :p

Lenke til kommentar

Joda, spesifisert for 266 @ 2.5-3-3-6. Jeg var mer fornøyd med at hovedkortet gikk så langt, da jeg har hatt problemer med 260 FSB før :p

 

Anyway, jeg rørte som sagt hverken vdimm eller noe latency så er ikke så aller værst da :p Selv omd et kun er snakk om 10%. Kunne nok ha nådd en del lenger dersom hovedkortet var laget for det. Litt synd at jeg ikke får testet de noe mer egentlig :(

Lenke til kommentar

Hei.

Jeg har et spørsmål: Jeg har ett par Corsair TWINX2048-3200C2 400MHz. (Link) Som har latency 2 3 3 6.

Men mitt A8N-SLI Premium (Link) setter default latency på 3 6 3 3 @ 400MHz og auto Spenning på gud vet hva.

Hvis jeg prøver og sette det manuelt i bios så for det første går ikke "andre" tallet lenger ned enn 5... Så jeg setter den til 2 6 3 3 @ 400MHz og spenningen til 2.75V som er det produsenten har testet produktet på.

Da booter ikke PC'en... Så jeg setter bare ned MHz til 333, og da fungerer alt fint.

 

Men det jeg lurer på er om det er bra? Altså at jeg ikke får justert "andre" tallet riktig. Bør jeg sette denne på 5 istedet for 6? Og når de sier 400MHz, mener de da egentlig 200MHz bare at den blir "doblet"

Har ikke prøvd meg noe særlig fram på spenningen, bare 2.75V

 

Hjelp :dontgetit:

Lenke til kommentar
Hei.

Jeg har et spørsmål: Jeg har ett par Corsair  TWINX2048-3200C2 400MHz. (Link) Som har latency 2 3 3 6.

Men mitt A8N-SLI Premium (Link) setter default latency på 3 6 3 3 @ 400MHz og auto Spenning på gud vet hva.

Hvis jeg prøver og sette det manuelt i bios så for det første går ikke "andre" tallet lenger ned enn 5... Så jeg setter den til 2 6 3 3 @ 400MHz og spenningen til 2.75V som er det produsenten har testet produktet på.

Da booter ikke PC'en... Så jeg setter bare ned MHz til 333, og da fungerer alt fint.

 

Men det jeg lurer på er om det er bra? Altså at jeg ikke får justert "andre" tallet riktig. Bør jeg sette denne på 5 istedet for 6? Og når de sier 400MHz, mener de da egentlig 200MHz bare at den blir "doblet"

Har ikke prøvd meg noe særlig fram på spenningen, bare 2.75V

 

Hjelp :dontgetit:

7954613[/snapback]

 

Minnet kjører egentlig på 200, selv om det kalles 400MHz-minne.

DDR kan hente data 2 ganger pr clockcycle

Men sjekk med CPU-Z hvilken hastighet du har.

333 = 2*166 og er litt lite.

Hvis du klarer 667 er det imponerende bra. :)

Lenke til kommentar

Mulig jeg tar feil her nå, men er det ikke DDR2 RAM som henter informasjon to ganger per syklus?

Vanlig DDR(1) RAM henter kun info èn gang per klokkesyklus.

 

Han har PC-3200RAM som kjører på 400MHz. Hadde hans RAM kjørt som DDR2 ville hastigheten blitt 800MHz effektivt.

Så det har nok vært en liten misforståelse der fra din side Loke_h ;)

 

Men tilbake til problemet.

Når det oppgis timings er det ikke alltid at BIOS og tallene som oppgis fra produsent osv. stemmer overens. Tenker da selvfølgelig på rekkefølgen tallene står i, ikke verdiene, de skal være riktige.

 

Så din RAM skal mest sannsynlig kjøre på 2-3-3-6.

Det at maskinen ikke vil starte opp er et tegn på at timings er for lave; så du må enten sette opp timings, eller sette opp volten.

Jeg vil anbefale deg å prøve med 3-2-3-6 og 3-3-2-6 før du eventuellt setter opp volten, siden vi alelrede har funnet ett tall som stod på "feil plass".

 

Kontroller at det du har satt i BIOS stemmer med det som brukes i CPU-Z slik som det vises til i posten over.

Post igjen dersom det ikke fungerer selv etter du har prøvd å flytte på 2-tallet.

Lenke til kommentar
Mulig jeg tar feil her nå, men er det ikke DDR2 RAM som henter informasjon to ganger per syklus?

Vanlig DDR(1) RAM henter kun info èn gang per klokkesyklus.

 

Han har PC-3200RAM som kjører på 400MHz. Hadde hans RAM kjørt som DDR2 ville hastigheten blitt 800MHz effektivt.

Så det har nok vært en liten misforståelse der fra din side Loke_h ;)

7960007[/snapback]

Du tar feil.

DDR står for Double Data Rate, og betyr at minnet sender eller mottar data to ganger pr. klokkesyklus.

Forskjellen på DDR(1) og DDR2 er hvordan de er laget og hvor mange pinner de har (og litt andre småtterier). Begge sender eller mottar data to ganger pr. klokkesyklus.

Så at en grunnhastighet på 200 MHz blir 400 MHz effektivt, er felles for både DDR(1) og DDR2. :)

Lenke til kommentar
Ok.

Men hva er det da som gjør at DDR2 og 3 RAM kjører på dobbel DDR fart?

 

EDIT: fant det ut på wikipedia, dumt å spørre her uten å sjekke der først :ermm:

7961350[/snapback]

 

Stjålet fra wikipedia:

(Litt lat nå :) )

The key difference between DDR and DDR2 is that in DDR2 the bus is clocked at twice the speed of the memory cells, allowing transfers from two different cells to occur in the same memory cell cycle. Thus, without speeding up the memory cells themselves, DDR2 can effectively operate at twice the bus speed of DDR.

 

http://en.wikipedia.org/wiki/DDR2_SDRAM

 

EDIT:

(Denne EDIT er svar på EDIT i posten over :) )

OK, men lar posten min stå her likevel.

Endret av Loke_h
Lenke til kommentar
Men tilbake til problemet.

Når det oppgis timings er det ikke alltid at BIOS og tallene som oppgis fra produsent osv. stemmer overens. Tenker da selvfølgelig på rekkefølgen tallene står i, ikke verdiene, de skal være riktige.

 

Så din RAM skal mest sannsynlig kjøre på 2-3-3-6.

Det at maskinen ikke vil starte opp er et tegn på at timings er for lave; så du må enten sette opp timings, eller sette opp volten.

Jeg vil anbefale deg å prøve med 3-2-3-6 og 3-3-2-6 før du eventuellt setter opp volten, siden vi alelrede har funnet ett tall som stod på "feil plass".

 

Kontroller at det du har satt i BIOS stemmer med det som brukes i CPU-Z slik som det vises til i posten over.

Post igjen dersom det ikke fungerer selv etter du har prøvd å flytte på 2-tallet.

7960007[/snapback]

Tja, som nevnt i tidligere post så kan jeg ikke sette 2 6 3 3 (altså 6-tallet) lavere enn 5 i bios. Det er rett og slett ikke alternativ for lavere i biosen min.

9666sdfasdfasdf.JPG

Som dere kan se så kjører jeg på 158 MHz:/ og 2 3 3 6 som betyr at i min bios ligger "tras" mellom "CAS" og "RAS to CAS" Som da egentlig betyr at jeg har det satt opp riktig sånn sett. Og det er da min "tras" som ikke går lavere enn 5 i bios.

Men skal jeg prøve å sette opp volten (som nå er på anbefalte 2.75) til hva? og MHz til 400 ?

Endret av leseiD
Lenke til kommentar
Men hva er det da som gjør at DDR2 og 3 RAM kjører på dobbel DDR fart?

7961350[/snapback]

DDR3 ventes jo å skalere en god del høyere enn DDR2 igjen, foreløpig til 1600 MT/s.

 

Det er meget vanskelig å forklare hvordan DDR2 og DDR3 klokker så mye høyere, men de viktigste forskjellene ligger i I/O delen til minnet. Forsjellige implementasjoner forbedrer "renheten" og tidspresisjonen til signalene, dermed får man større spillerom til å øke klokkefrekvensene. DDR2 og DDR3 har intern terminering, som gjør at datasignalene blir mindre forstyrret hverandre, og har også bedre muligheter for tilpasning av Drive Strength o.l slik at fleksibiliteten øker.

 

Stjålet fra wikipedia:

(Litt lat nå :) )

The key difference between DDR and DDR2 is that in DDR2 the bus is clocked at twice the speed of the memory cells, allowing transfers from two different cells to occur in the same memory cell cycle. Thus, without speeding up the memory cells themselves, DDR2 can effectively operate at twice the bus speed of DDR.

7961419[/snapback]

Den forklaringen er tilnærmet 100 % feil. For det første aksepterer jeg ikke at det gir god mening å snakke om "cellefrekvens" - det er ikke noen egen "celleklokke" som tikker avgårde på en gitt frekvens. Både kontrolleren, kommandobussen og DRAM-chipenes indre opererer på samme frekvens, som alltid er halvparten av ekstern datarate. Ethvert synkront DRAM-design har bare én klokkefrekvens, og hele DDR-familien har samme forholdet mellom klokkefrekvens og multiplexet datarate (1:2).

 

Man kan for den del si at celleytelsen ikke behøver å forbedres for hver dobling av datarate, så Wikipedia gir ihvertfall et lite fnugg av sannheten. Med det gis tydelig inntrykk av at cellene er koblet direkte til minnets Read Latch / Multiplexer, og det er bare latterlig. DRAM har som kjent destructive read, dvs at minnecellenes innhold går tapt når raden aktiveres, derfor overføres dataene først fra minnecellene til Sense Amplifiers. Disse er en serie latcher, hvor dataene i prinsippet kan lagres i det uendelige, og leses fra om og om igjen. Hadde det ikke vært for disse, ville det blant annet ikke ha vært mulig å gjenopprette cellenes innhold etter endt operasjon (row precharge) - bare for å ta ett av en lang rekke eksempler. Bredden på fetchingen fra cellene til Sense Amplifiers har ingen sammenheng med I/O protokollen, men avhenger utelukkende av radlengden. Og det er heller ikke noen automatikk i at radlengden øker fra DDR1 til DDR2 - snarere tvert imot.

 

I SDRAM har altså minnet og kontrolleren en felles, synkron klokke, og mange av parameterene benytter en tallverdi hvor fonsinkelsen (tallet) angir antallet synkluser som minnet har til disposisjon for å fullføre en gitt operasjon. Hvis tRCD er 3, vil kontrolleren utsette den påfølgende lesekommandoen i 3 sykluser, i påvente av at minnet fullfører rad-aktiveringen. Hvis klokkefrekven økes, så varer selvsagt hver syklus kortere, og da må man ofte øke latency-tallet slik at minnet igjen får tiden det trenger. Alle sentrale parametre som direkte involverer minnecellene, avhenger bare av tid, og ikke antallet sykluser sett fra et prinsipielt perspektiv.

 

Det eneste leddet hvor bredden må økes, er forbindelsen mellom Sense Amplifiers og Read Latch / Write Latch ((de)multiplexere), fordi det alltid overføres fire istedenfor to kolonner internt. Roten til denne vanlige misforståelsen er trolig at DDR2-800 maksimalt kan ha 200 millioner interne kolonneaksesser pr sekund, fordi det tar to sykluser å multiplexe de fire kolonnene (DDR1 trenger én syklus på å multiplexe to kolonner).

Lenke til kommentar

Forklaringen på X-Bit Labs gir jeg også strykkarakter - blant annet fordi de begår akkurat samme tabben som de fleste andre. Bildene viser tydelig at de mener bredden på fetchingen fra cellene fordobles mellom hver arkitektur, men det avhenger som sagt bare av radlengden. Hver eneste bit i en rad overføres til sense amplifiers under tRCD, så enkelt er det. Det er altså kun ved den neste fetchingen, som går til fra Sense Amps til Read Latch, at bredden økes. Men på dette stadiet har altså dataene forlatt minnecellene, ergo har cellene *ingen* innflytelse lenger. Kvaliteten på cellene avgjør bare hvor lang tid forskjellige operasjoner tar (tRCD, tRP, Write Recovery, osv).

 

På "veien" som dataene tar i en lese-operasjon, er det ihvertfall to komponenter som kan kalles "buffer". De er Sense Amplifiers og Read Latch, som vi ser på bildet. Dataene ligger først i cellene (Memory Array), går deretter til Sense Amplifiers (hele raden i paralell), så overføres fire kolonner (4*64 bits) til Read Latch, hvor de multiplexes etter tur over en ekstern buss som er kvartparten så bred. (Merk at bildet viser en enkelt chip med 16 bits I/O bredde, så forbindelsene med 16 bits tilsvarer den fulle eksterne bredden, mens 64 bits er firedobbel intern).

post-100025-1171744230_thumb.png

Lenke til kommentar

Beklager feilinformasjon.

Som jeg sa i posten:

Litt lat nå : Understatement, for å si det mildt. :)

 

Jeg hadde ikke lest gjennom wikipedias forklaring.

Bare skummet gjennom artikkelen til jeg kom til det avsnittet og kopierte.

 

Nå skal jeg ikke påstå at jeg kan like mye som Quintero på dette området.

På langt nær.

Men deler av artikkelen stemte ikke med det jeg tidligere har lest fra mer seriøse kilder.

(Sjekk http://www.micron.com/products/dram/ddr2/technotes f.eks. for detaljert info om DDR2)

 

Jeg foretok et raskt søk med Google og det ser ut til at de fleste bruker samme

forklaring, med en ekstern frekvens og en intern, som da er 1/2*ekstern.

(I tillegg bruker de en effektiv frekvens, 2*reell frekvens. Selvfølgelig ikke en reell frekvens, men grei for sammenligning.)

Lenke til kommentar
Bra at du fikk det på det rene da Quintero...

Hadde vært flott om noen kunne svare meg på det jeg har postet litt lenger opp i tråden. Føler at jeg ble hijacked litt her  :whistle:

Men kanskje du kan hjelpe meg med det problemet som ga utgangspunktet i ditt foredrag Quintero?  :p

7968642[/snapback]

 

Prøv å endre plassering av brikkene.

Tregeste først.

 

Prøv med CAS 2,5 om det ikke går med 2.

 

Du starter da med innstillinger som du vet går bra, og så reduserer du en verdi av gangen. Og bare et nivå ned. Boot og sjekk at PC er stabil.

Lenke til kommentar
Tja, som nevnt i tidligere post så kan jeg ikke sette 2 6 3 3 (altså 6-tallet) lavere enn 5 i bios. Det er rett og slett ikke alternativ for lavere i biosen min.

<snip>

Som dere kan se så kjører jeg på 158 MHz:/ og  2 3 3 6 som betyr at i min bios ligger "tras" mellom "CAS" og "RAS to CAS" Som da egentlig betyr at jeg har det satt opp riktig sånn sett. Og det er da min "tras" som ikke går lavere enn 5 i bios.

Men skal jeg prøve å sette opp volten (som nå er på anbefalte 2.75) til hva? og MHz til 400 ?

7961835[/snapback]

Ja, parametrene står i en annen rekkefølge i din BIOS. tRAS er den timingen som ikke kan gå lavere enn 5. Memclock Index vil gi riktig hastighet om den står på 400, hvis du ikke øker HTT/FSB (altså hvis du ikke overklokker). De fleste BIOSer viser egentlig klokkefrekvens, men din viser datarate, så 400 = DDR400. Jeg regner med at din BIOS ser ut som på bildet, og anbefaler følgende settings:

 

big_biosramtimings.JPG

CAS# - 2

tRAS - 6

tRCD - 3

tRP - 3

tRC - 8

tRFC - 16

tWTR - 2

tRW - 3

1T/2T Timing - 1T

 

tRFC har lite å si for ytelsen, men bør fungere på 16. 1T skal normalt gå greit så lenge du bare bruker to brikker, men 2T er verdt et forsøk hvis det fortsatt ikke fungerer på DDR400. Får du fortsatt problemer, ville jeg ha prøvd å øke de øvrige timingene med ett hakk for å se.

Lenke til kommentar
Beklager feilinformasjon.
For all del, jeg angrep bare Wikipedia, og en vanlig misoppfatning.

 

Jeg foretok et raskt søk med Google og det ser ut til at de fleste bruker samme

forklaring, med en ekstern frekvens og en intern, som da er 1/2*ekstern.

(I tillegg bruker de en effektiv frekvens, 2*reell frekvens. Selvfølgelig ikke en reell frekvens, men grei for sammenligning.)

7969875[/snapback]

Jada, de aller fleste forklarer det på den måten at cellene har en egen frekvens, men jeg er sikker i min sak.

 

Forøvrig kan det diskuteres hva som er den reelle frekvensen til den eksterne bussen. På DDR2-800 er det 800 millioner pulser pr sekund, så isolert sett vil jeg egentlig kalle det for 800 MHz. Siden minnet bare opererer på halv hastighet kan dog ikke DDR2 påbegynne transaksjoner "mellom" to sykluser (heller ikke etter ekstern klokke). (Men DDR1 har faktisk denne muligheten fordi det i motsetning til DDR2 er støtte for halve CAS-verdier).

 

Hvis minnecellene opererte på halv klokke i forhold til kommandobussen og resten av minnet, ville dette ha vært ståa:

 

"Alle" vet at forsinkelsen til DDR1-400 @ 2-2-2 omtrent tilsvarer DDR2-800 @ 4-4-4, noe jeg forøvrig går god for. Men hvis cellene opererte på halv frekvens, ville jo forsinkelsen ha vært dobbelt så høy. Hvis vi så tenker oss at man brukte den "høye" frekvensen til å måle forsinkelsene ville heller ikke det gitt god mening, for da ville det ikke ha eksistert oddetalls-verdier. Ingen kommandoer kan påbegynnes på synkende syklus, og det ville ikke vært noen hensikt i å måle forsinkelser i en annen klokke enn den interne, siden det er den klokken de fleste forsinkelsene forholder seg til.

 

Høyere klokkefrekvens har ingen negativ betydning for cellene, så at det er deres begrensninger som gjør det nødvendig å gå over til nye arkitekturer er rent oppspinn. Det vil alltid være mulig å tilpasse forsinkelsene vha parametre som ganges med lengden til hver syklus. Faktisk er det i denne sammenhengen en ren skjær fordel med høy frekvens, fordi det tillater mer finkornet justering. Hver celle består av en transistor og en kondensator, og transistoren er koblet til en kommandobuss som opererer på 400 MHz (DDR2-800). Når kontrolleren sender en kommando for rad-aktivering, svitsjer transistoren slik at kondensatoren "kobles" til Sense Amplifiers. Deretter vil den elektriske ladningen tømmes over til SA via bitlines. Som sagt er det ikke noen klokkepulser som konstant "holder igang" cellene - så snart transistoren har svitsjet vil ladningen overføres til SA hvor det forsterkes og forvares trygt. Etter at kommandoen er sendt handler altså denne prosessen bare av tid - et slags elektrisk stabiliserings-forhold.

 

Høyere klokkefrekvens skaper dog problemer for kommando-bussen og I/O delen, altså blant annet når data skal overføres og bufres. Jo høyere datarate, jo strammere blir marginene, og det har tvunget frem behovet for bedre signal-kvalitet. Her har DDR2 innført en rekke nye teknikker, hvor intern, dynamisk terminering trolig er den viktigste. Angående adresse/kommando-bussen er ikke fremskrittet like stort. Mens DDR2 omtrent har fordoblet dataraten, er ikke kommandoraten blitt "dobbelt så bra". Det kan observeres i at Command Rate ofte må settes til 2T selv om man bare bruker to brikker, også på ganske moderate hastigheter.

 

 

Om man skal peke ut en kjerne av sannhet i den vanlige fremleggingsmåten, må det bli at maks antall interne overføringer faktisk er kvartparten av ekstern datarate. DDR2-800 kan ikke ha mer enn 200 millioner overføringer pr sekund mellom Sense Amps og Read Latch fordi det alltid overføres fire kolonner i paralell (dvs dobbel mengde data pr fetching). Og det tar altså to klokkesykluser (fire eksterne timeslots) å overføre disse, så det tar faktisk to reelle sykluser før Read Latch blir frigjort slik at fire nye kolonner kan mottas.

 

 

Edit: Ok, du har rett i at det er 400 MHz i reell frekvens på databussen, selv om det er 800 MT/s (datasignaler). Jeg gikk meg litt vill i at DDR2 har komplementære strobe-signaler (dvs at databussen har to klokker med omvendt polaritet, som opererer på 400 MHz), derfor vil det riktignok være 800 milliioner "topper" pr sekund. Så der må jeg korrigere meg selv :)

Endret av Quintero
Lenke til kommentar

Da slipper jeg å korrigere. :!:

 

Forøvrig kan det tolkes som klokkefrekvens eller frekvens på datasignaler.

Der var jeg kanskje ikke helt tydelig.

800MHz gir jo et godt bilde av hva minne+databuss klarer, når det utnyttes til fulle.

 

EDIT:

Jeg var forøvrig enig i at fremstillingen med halv frekvens på minneceller ikke gav et riktig bilde, hvis det var uklart.

Bare sånn at vi ikke krangler om det vi er enige om. ;)

Endret av Loke_h
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...