Minnes FAQ
Memory - FAQ
Det finns 3 aktuella minnestyper: Sdram, DDR sdram och RDram
(OBS! Man kan inte använda olika minnestyper i samma moderkort då de är bundna till kretsen i moderkortet.)
Sdram kallas ofta pc66, pc100, pc133, pc 150, pc166 beroende på vilken frekvens de är specificerade för. Ju högre spec ju snabbare hastighet klarar minnena.
Vanliga Chipsets: intel BX, Via kt133a
Modulerna kallas DIMM*
RDram introducerades tillsammans med intels P4 (willamette) och var då helt klart snabbast på marknaden. Tyvärr var de oxo väldigt dyra att tillverka och eftersom det bara fanns till intel så krympte användningen.
Vanliga chipsets: i850 med stöd för P4 (Willamette/Northwood)
Hastigheter: 800 (100Mhz), 1066 (133Mhz)
Modulerna kallas RIMM
DDR sdram: DDR står för Doubla Data rate och skickar således data vid både uppgången och nedgången av en frekvens. Den teoretiska hastigheten blir då dubbelt så hög som vanlig sdram.
DDR är för närvarande det vanligaste och det bäst presterande minnet och används såväl till system som till grafikkort. Bygger oftast med förpackningen TSOP, finns även med BGA.
Vanliga Chipsets:
till AMD K7 (xp): Via KT266/333/400/600/, Nforce, Nforce2
till intel P4 : i845, i865, i875, sis 645dx,
till A64: K8T800, nforce3, sis755
Hastigheter: av JEDEC godkända pc1600 *(100Mhz)-pc3200(200Mhz)
ännu icke godkända: pc 3500 (217Mhz)-pc4000 (250Mhz)
Modulerna kallas DIMM 184pins.
SO-DIMM för bärbara.
*Det inom parentes är inte den aktiva frekvensen, den aktiva är det dubbla.
SIMM = Single Inline Memory Module (32 bitars databuss)
*DIMM = Dual Inline Memory Module (64 bitars databuss)
DDR2 sdram:
DDR2 bygger på FBGA-chip alltså liknande de nya intelprocessorerna som saknar pins, dvs Land Grid Array. Detta för att minska storlek, signaldistans och materialkostnad. DDR2 har en standard-spänning på 1.8V jämfört med DDR's 2.5, de kräver alltså mindre ström, detta är också en av anledningarna till bytet till DDR2, att spänningarna var tvugna att höjas för att högre frekvenser skulle uppnås. Pga den tätare förpackningen kan modulerna hålla mer minne, mellan 256mb-2Gb, vilket är kan delas upp i 8banks jämfört med ddr's max 4. DDR2 moduler är lika långa som DDR1 men har olika antal pins, 200 respektive 184st. Frekvenserna på DDR2 förväntas kunna ökas till ca 667Mhz under 2004. Det finns eg. ingen standard då det gäller märkning av DDR2 och de märks fortfarande med PC-ratings. Det kommer väl antagligen kallas DDR2PC4200 eller liknande för att man skall kunna skilja de båda standardena åt.
Läs mer om standarden här .
Dual Channel
Istället för att bara låta frekvensen på minnet öka och öka har man löst flaskhalsen med att helt enkelt göra 2 minneskanaler, Dual Channel. På detta sätt fördubblas den teoretiska bandbredden.
Dubbla minneskanaler kom först på RDram moderkorten till P4. Senare kom den numera smått legendariska nforce2 för AMD, som var det första kommerciella kort som stödde Dubbla DDR kanaler. Prestandan ökade mellan 5-15% i och med detta. Intel svarade med att lansera i875/i865 som är deras Dual Channel chipset för P4. Idag är dessa 2 chipset på topp i sina kategorier.
single channel DDR400 = 3200MB/s
dual channel DDR400 = 6400Mb/s
PC-Ratings
PC rating är den teoretiska överförningskapaciteten i MB/s.
Alla olika nummer och siffror kan vara nog så vilseledande. Jag ska försöka klargöra dem här.
Sdram:
Bandbredden är 64bit dvs 8 byte.
8byte överförs vid varje klockcykel.
PC66 gäller för sdram-minnen som klarar 66Mhz
PC100 = 100Mhz * 8 = 800MB/s
PC133 = 133Mhz * 8 = 1066MB/s
RDram:
Varje minne är quadpumpat mot systembussen, samt att man använder 2 minneskanaler. RDram har högfrekvens men låg bandvidd. Bara 16bit jämfört med DDR64bit. 16bit = 2byte.
Alltså 2 byte per klockcykel.
Den höga frekvensen kommer av att minnesbussen körs quadpumpade. De finns generellt i 100 och 133Mhz
400Mhz * 1 rising edge 1 falling edge (DDR) * 2byte = 800Mhz
533Mhz * 1 rising edge 1 falling edge (DDR) * 2byte = 1066Mhz
RDram800Mhz * 2byte * 2 kanaler = PC3200 (en kanal PC1600)
RDram1066Mhz * 2byte * 2 kanaler = PC4200 (en kanal PC2100)
DDR:
DDR bussen är 64bitar bred, alltså 8bytes.
Så man tar helt enkelt frekvensen multiplicerat med 16.
eller den verksamma frekvensen multiplicerat med 8.
ex: 200Mhz*2(DDR) * 8bytes = 3200MB/s
ex2: DDR400 * 8 = 3200MB/s
PC1600 = 100Mhz (DDR200 - 200Mhz aktiv frekvens)
PC2100 = 133Mhz (DDR266)
PC2700 = 166Mhz (DDR333)
PC3200 = 200Mhz (DDR400)
PC3500 = 217Mhz (DDR433)
PC3700 = 233Mhz (DDR466)
PC4000 = 250Mhz (DDR500)
PC4200 = 266Mhz (DDR533)
Minneshastighet i ns
Ibland visas minnets hastighet i nanosekunder(ns). För att räkna ut vilken hastighet de då är specificerade för använder man sej av denna enkla formel.
1000/ 4 ns = 250
alltså 250Mhz (DDR500)
Timings - DDR
På senare tid har det varit väldigt aktuellt med timings. Man ser ofta CAS och CL specifikationer överallt men vad betyder de egentligen ?
För att förstå värdena måste man få lite insikt om hur RAM fungerar.
1. En RAM-bank adresseras, den aktiveras
Väntetid tRCD(RAS to CAS delay)
2. Datan i den aktiva raden(row) läses.
En CAS omgångs väntetid.
3. Banken deaktiveras .
Vänta tRP (RAS precharge)
Samma sak görs om med ny rad.
CAS = Column Acces Strobe
The Latency delay in clockcycles between the assertion of the CAS signal and the availability of valid data on the DQ pins.
Vanliga värden: 2(bäst), 2.5(endast DDR), 3
RAS = Row Acces Strobe
Fördröjningen innan en ny rad kan adresseras.
Command rate: Tiden mellan att ett RAM har valts och att det kan ges kommandon att utföra.
Vanliga värden: 1t (bäst), 2t
tRAS : Is the minimum of clockcycles from active to precharge. För lågt värde kan leda till datakorruption, speciellt i RAID uppsättningar.
tRAS skall aldrig var lägre än tRCD + CAS Latency + 2 cykler.
Varför förklaras här
Vanliga värden: 5,6,7,11
Exempel på timings
2.5-3-3-7-1
CAS latency = 2.5
tRCD = 3
tRP = 3
tRAS = 7
Command Rate = 1
Förklaring: 2-2-2-5-1 är optimalt (ibland kan högre tRAS gynna prestanda)
-----------------------------------
Frågor och Svar:
Fråga: Jag har satt i ett nytt minne i min gamla dator men får bara hälften av det att fungera.
Svar: Äldre datorer med Intel BX eller Via Apollo chipset stöder minnesmoduler med max 16MB per chip. De flesta nya minnesmoduler har 32MB per chip. Därför får man bara halva mängden. inWarehouse har en modul som funkar med dessa chipset, deras art.nr. är e415089.
---
Fråga: Jag har ett pcxxxx minne i min dator och ska köpa en ny modul som har pc-rating pcxxxx, kommer det att fungera?
Svar: Snabba svaret: JA. Men den modulen som har lägre pcrating klarar kanske inte av högre frekvens än vad den är avsedd för, därför kanske man inte kan utnyttja den nya modulens fulla potential frekvensmässigt.
--
Fråga: Varför ser jag personer som rekommenderar PC3200 minnen när det finns så mkt som PC4200?
Svar: För att frekvensen inte är hela sanningen när det gäller minnesprestanda. Timings kan göra en enorm skillnad beroende på chipset och uppgift. Detta märktes bla på nforce2 chipsetten som är mkt beroende av låga timings. På intels senaste chipset har man trott att timings inte spelade liak stor roll bla annat för att sisoft sandra visar högre resultat då frekvensen höjs. Sedan började en del Hårdvarugurus ifrågasätta sisofts resultat och började med så kallade "unbuffered" benchmarks som visar resultat närmare realworld-program. I spel visade det sig att låga timings gav en fördel jämfört med höga frekvenser. Det är därför winbonds chip BH-5 har blivit så populärt just för att det klarar låga timings även i högre frekvenser än det är rekommenderat i.
Fråga: Kan jag använda fyra minnen och köra 1T?
Svar: Ja, men det går endast köra 1T ifall alla fyra minnena är ensidiga, är dom dubbelsidiga (har minnesmoduler på båda sidorna) så går det inte.
Länkar:
tillagt 2006-03
Bra guide till dig med ett A64 / opteron system.
Minnesguide till s754/s939 A64 system
tidigare:
Anandtech minnesguide för i865/875
Mycket genomgående minnesguide på Corsair
Kopiera gärna men skriv källan.
- We are an army of dreamers, and therefore invincible. How can we fail to win, with this imagination overturning everything. - Subcomandante Marcos