Gå til innhold

Matching av RAM og CPU (DDR2 og DDR3)


Anbefalte innlegg

Ok, dette har plaget meg i lengere tid. Hvordan matcher man ram og CPU? Hvilke faktorer er det som skal matche?

 

Jeg har googlet litt for meg selv i kveld, og kommet frem til følgende:

 

Når nettsider som f.eks komplett.no oppgir at en CPU har en busshastighet på 1333mHz, så er det egentelig feil. La oss ta Intel Core 2 Duo E6750 2.67GHz 1333Mhz Socket LGA775, 4MB som eksempel.

 

Komplett oppgir her en klokkehastighet på 2.66 GHz og en busshastighet på 1333MHz. Etter hva jeg har lest rundt på nettet, så stemmer ikke disse benevningene helt. Det komplett oppgir som busshastighet er nemmelig Megatransfers per second (MT/s). Hvor mye data som forflytter seg, ikke hastigheten. For bushastigheten på denne 2.66GHz CPUen er nemmelig ikke på mer en 333mHz. Det vil si at prosessoren opererer med 333mhz som hastighet både internt i prosessoren, og på bussen ut mot andre enheter. Men hvis den opererer med 333mHz internt, hvordan kan det da stå at den har en ytelse på 2.66GHz?

 

Jo, her kommer den berømte multiplieren inn. For hver "bussherts" eller "clock cycle" mot FSB, så utfører prossessoren så mange "clock cycler" internt som mutliplieren sier. Hvis man her setter multiplieren til 8, så vil man få et tall man kjenner. 333mHz x 8mult = 2.664 mHz = 2,66Ghz. Wolla, selve CPUen oppererer kun på 333mHz, men en multiplier gjør at den utfører mer per hertz.

 

Så, over til dette med megatransfers og ram. Etter hva jeg har forstått så oppererer de fleste nyere prosessorer i dag med en teknologi som AMD kaller "quad pump". Dette betyr i praksis at man kan sende data fire ganger per klokkefrekvens over en bus. Så, hvis hertsen på en bus er på 333mHz, og man har en bus som er "quad pumped", så utgør dette totalt 333mHz x 4 = 1332 ~ 1333MT/s. Dette er så det tallet komplett refererer til som "Busshastighet". Men faktumet er at det er datamengden som sendes, ikke frekvensen det jobbes på.

 

Så da ser vi at hele CPUen jobber på samme frekvens, både internt og med andre komponenter via bussene. Forskjellen ligger bare i hvor mange operasjoner som utføres per herts. Så over til rammen. Hvordan opererer den i forhold til dette.

 

Her har wikipedia en utrolig forklarende greie på dette med DDR2 ram og hastigheter. Komplett oppgir så rammen i kategorier som f.eks "DDR2 PC2-5300" osv. Utifra denne tabellen så ser man så at dette PC2-5300 det forteller oss hvor mye data som overføres. Vi må så bruke denne tabellen for å se hvilken frekvens rammen jobber på. Vi ser da at denne PC2-5300 rammen opererer med en bus hastighet på 333MHz, noe som da matcher vår CPU. Så, denne PC2-5300 rammen snakker da med samme hastighet som CPUen, og ingen trenger å vente på hverandre.

 

Men, CPUen sender jo data 4 ganger per herts over bussen. Hva gjør rammen? Her er jeg veldig usikker, men jeg ville tro at DDR2 rambrikkene oppererer med en slags 2x multiplier. Altså, den sender/mottar data to ganger per klokkefrekvens. Dermed vil denne PC2-5300 brikken med en frekvens på 333mHz sende 333mHz x 2 = 666MT/s. Da snakker den på samme frekvens som CPU, men med halv datamengde per frekvens. Og her kommer da dette med "Dual Channel" inn. Man kan nemmelig parre to og to rambrikker slik at de er synkronisert slik at de da dobbler hastigheten RAMen snakker med CPUen på per hertz. Så, med to identiske rambrikker av typen DDR2 så går vi da fra å sende/mota data 2 ganger per klokkefrekvens, til å sende/motta 4 ganger per klokkefrekvens. Og da er vi oppe i samme hastighet som CPUen, da den også sender data 4 ganger per klokkefrekvens over bussen.

 

DDR3 derimot kan sende data 4 ganger per herts den også, slik at den snakker dermed med samme datamengde som CPUen. Så derfor så vil en DDR3 brikke av typen PC3-10600 snakke med like mye datamengde som to DDR2 brikker av typen PC2-5300 selv om begge oppererer på samme klokkefrekvens.

 

Linker:

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

http://en.wikipedia.org/wiki/Intel_core_2#..._memory_modules

http://en.wikipedia.org/wiki/Dual-channel_architecture

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

http://www.devhardware.com/forums/memory-3...eed-177732.html

 

Som jeg sier i starten, jeg lurer veldig på om jeg har forstått dette riktig, og det er derfor jeg skriver denne posten. Så, noen som kan korigere meg slik at jeg får en riktig forståelse av dette?

Endret av SimDaDim
Lenke til kommentar
Videoannonse
Annonse

prosessoren du snakker om har en intern frekvens på 2,67 GHz, ikke 333 MHz.

 

MT/s er hastigheten AMD oppgir Hypertransport bussen sin på. Intel har fortsatt minnekontrolleren på brikksettet så de gruker noe som kalles for Front Side Bus, eller FSB.

 

Denne er i ditt eksempel på 333 MHz, men siden intel bruker en teknik som heter QDR (Quad pumped Data Rate) som gjør at den leser dataene fire ganger på en ett klokkeslag. Derfor bli busshastigheten effektivt 1333 MHz. Når da bussbredden er på 64 bit blir overføringshastigheten på FSB på 64 bit * 1333 Mhz = 85312 Mb/s noe som er 10664 MB/s.

 

DDR står for Dural Data Rate og betyr at den overfører data to gnager per klokkepusl. Det er to ganger uansett om det er DDR1, DDR2 eller DDR3 forskjellen på DDR teknologiene er i måten chippene er bygd opp, dette fører til at DDR2 når høyere frekvenser og bruker mindre strømm en DDR1 og DDR3 når hyere frekvenser og bruker mindre strøm enn DDR2.

 

DDR minne (uansett om det er DDR1, DDR2 eller DDR3) som kjører på 333 MHz har da en effektiv frekvens på 667 MHz. Bredden på en DDR kanal er 64 Bit (samme som på intel prosesoren) men siden de fleste hovedkort støtter dobble minnekanaler (noe som krever to like minnebrikker) kan man kjøre to brikker på hver sin kanal som da gir oss en total bredde på 128 Bit. 128 Bit * 667 MHz = 85312 Mb/s noe som er 10664 MB/s.

 

AMD prosessorer har Minnekontrolleren integrert på samme silisiumsbrikke som CPUen. De bruker også en annen metode for overføring av data mellom resten av systemet og prosessor/ram delen

Lenke til kommentar

Jepp, prosessoren har selvfølgelig en intern frekvens på 2,67 GHz, men dette er på grunn av multiplieren. "Grunnfrekvensen" om man kan kalle det det, er på 333MHz. Men som jeg viste, prosessoren kan så gange opp denne grunnfrekvensen via det kalt mulitiplier.

 

MT/s er ikke en teknologi eller noe sånt, men en måleenhet for mengde data per sekund.

Gigatransfer (GT) and Megatransfer (MT) are terms used in computer technology, referring to a number of data transfers (or operations). They are most commonly used for measuring the number of transfers per second (GT/s or MT/s).

 

Både AMD og intel kjører data 4 ganger per klokkefrekvens ja, bare at de har forskjellige navn på teknikkene.

 

DDR står faktisk for "double-data-rate" :p Men etter å ha lest på wikipedia så jeg at det der sto:

The primary benefit of DDR3 is the ability to run its I/O bus at four times the speed of the memory cells it contains, thus enabling faster bus speeds and higher peak throughput than earlier memory technologies.

Står det ikke her at den sender data fire ganger per klokkefrekvens? Betyr ikke det da at en DDR3 brikke som oppererer på samme "grunnfrekvens" som en CPU (eks. 333MHz) vil sende like mye datamengde da både CPU og RAM sender 4 ganger per frekvens?

 

Hva har dette med at "AMD prosessorer har Minnekontrolleren integrert på samme silisiumsbrikke som CPUen" å gjøre for hastighet og ytelse? Må man tenkte på no spesielt i forrhold til dette?

Lenke til kommentar

AMD kjører ikke 4 ganger klokkehastigheten, de bruker DDR 2 minne på de prosessorene de selger for øyeblikket. Intel har patentene på QDR og de er nok ikke videre intereserte i å la AMD bruke dem.

 

DDR1 frekvenser: 100 MHz til 200 MHz (effektivt 200 til 400 MHz)

DDR2 frekvenser: 200 HMz til 400 MHZ (effektivt 400 til 800 MHZ)

DDR3 frekvenser: 400 MHz til 800 MHz (effektivt 800 til 1600 MHz)

 

Dette er standardene som legges inn i SPD chippen på rammen. Alle DDR2 brikker over 800 MHz effektivt er egentelig overklokkede 800 MHz brikker.

 

post-43879-1209456271_thumb.png

Intelsystemer har minnekontrolleren på nordsiden (NB på tegningen) mens AMD har den på prosessoren.

 

Intel bruker FSB mellom CPU og NB, denne overfører dataene mellom proseoren og resten av systemet (grafikkort, hardisker, minne og så videre)og denner er QDR.

 

AMD har minnet (RAM) koblet dirkete på prosesoren, der bruker de Hyper TRansport (HT) for overføring av data mellom CPU/RAM delen og resten av systemet. Denne er IKKE QDR, faktisk er den veldig forskjellig fra FSB bussen som Intel bruker.

 

AMD har alltid oppgit HT bussen sin i MT/s mens intel har pelid og oppgi sin FSB i MHz, dette fordi de ikke kan sammenlignes

 

I/O bussen kan kjøre fir ganger så fort som brikkene, på DDR2 kjører I/O på doblete av hastigheten til brikkene, derfor blir den effektive frekvensen til DDR2 koble av DDR1 og den effektive frekvensen til DDR3 blir da fire ganger så høy som DDR1.

Lenke til kommentar

Du har delvis rett og delvis feil.

 

MT/s er ikke hvor mye data som flytter seg, men antall operasjoner som gjøres på et sekund. Så "effektiv/reell busshastighet/hastighet" og MT/s er i realiteten det samme begrepet, i og med at operasjoner foregår synkront med klokkehastigheten. Derfor brukes begrepet MT/s hovedsaklig der transfer ikke er relatert til en klokkehastighet. Jevnt over bruker både produsenter, og nettbutikker "effektiv hastighet" og ikke MT/s. Så derfor er ikke at Komplett skriver busshastighet på 1333 Mhz direkte feil. Hvor mye data som flytter seg avhenger i tillegg av bussbredden som Brusfantomet så greitt beskriver. Dvs. bussbredde 128 bit med effektiv hastighet 800 Mhz flytter nøyaktig samme datamengde som bussbredde 64 bit med 1600 Mhz.

 

DDR3 minne har ikke 4 operasjoner pr klokkeslag, minne kommuniserer med CPU kun med 2 operasjoner pr klokkeslag, dvs på stigende og fallende klokke. At DDR3 bruker en form for Quad teknikk for å håndtere den høye frekvensen er noe annet. Quad pumped sender 2 signaler på både stigende og fallende.

 

Når det gjelder minne må også forhold som forsinkelse (latency) tas med i betraktning. Jeg bruker å tenke på latency som klokkeslag minne trenger for å bestemme seg (tenkepause). Derfor vil man faktisk måtte vente på minne, selv om de kjører synkront i hastighet. Når det gjelder betegnelser på minne så er det som følger.

* PC2-5300, PC3-10666 forteller om teoretisk overføringshastighet i MiB/s

* DDR2-800, DDR2-1333 forteller om teoretisk "effektiv" hastighet eller faktisk MT/s (teoretisk antall operasjoner pr sekund).

 

Latency medfører f.eks at DDR2 minne på 800 Mhz og CAS 4 har bedre ytelse som DDR3 minne på 1066 Mhz og CAS 7, fordi det siste må vente flere klokkeslag pr operasjon de kan gjøre. Derfor sammenligner man ofte minne med bakgrunn i tilgangstid.

 

Latencyen gjør at man faktisk har ytelsesmessig effekt av å la minne arbeide asynkront med CPU, f.eks la minne arbeide med dobbelt hastighet (eller en annen faktor). Det er i realiten det DDR3 minne gjør, og reduserer således effekten av forsinkelse.

 

Vær oppmerksom på at både MiB/s og MT/s er teoretiske kapasiteter. Det at et minne kan klare 800 MT/s betyr ikke at det klarer det antall operasjoner. Samme gjelder båndbredde. Mhz er en reell betegnelse, uansett hva reell ytelse egentlig er.

 

AMD sin HT teknologi og innebygde minnekontroller virker noe annerledes en kommunikasjon via FSB, så man kan ikke drive direkte sammenligning. Andre kan HT og AMD bedre enn meg, så de bør forklare forskjellene. Men glem begrepet FSB når det gjelder AMD. Med Nehalem og Intel QuickPath, kan vi glemme det på Intel også. Blant annet medfører HT helt andre muligheter for at de ulike delene kan arbeide på ulike klokker, noe som er en realitet.

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...