Choosing the Right DDR2 Memory Speed

RickGG

Distinguished
Oct 22, 2006
24
0
18,510
Hi,

I am looking to put together a new system based on the AM2 64 X2 proc (prob 3800 if they get back in stock).

In looking at the ASUS M2N32-SLI board, I understand that the "FSB" is now really a HyperTransport link which runs at 1000Mhz DDR'd to 2000MHZ. I have read that the HT link uses a 200Mhz "reference" speed which is multiplied by a factor of 5 for 1000Mhz Physical (and 2000Mhz DDR'd).

Where I am confused is how to calculate the right DDR2 choice. Before HT, I would have used a formula similar to the following:

PhysicalBusSpeed X 2 = EffectiveBusSpeed

EffectiveBusSpeed x 8 (64 bit data path for DDR) = MemoryBandwidth

So, if I was runnning an EffectiveBusSpeed of 400, I would have opted for a PC3200 DDR 400 chip.

How would I calc the MemoryBandwidth for DDR2 on an HT bus?

Also, in answering this question, can someone please address the potential for overshooting the memory bandwidth? I remember reading somewhere that putting more than DD2800 in an AM2 system is a waste of money unless you plan to OC your proc.

Many thanks,

Rick
 

Compulsive

Distinguished
Oct 22, 2006
7
0
18,510
Hi Rick

I've just been caught out with a M2N32 WS Pro with Memory. :oops:

Check out http://usa.asus.com/products4.aspx?l1=3&l2=101&l3=0&model=1163&modelmenu=1
Download the "QVL Info" and make sure your memory is supported.

Loads of people have reported issues getting the system to boot.

I've tries OCZ - OCZ2P8002GK PC-6400 and OCZ2TA1000VX22GK with no luck. I've got some OCZ2G8002GK on order and will see whah happens (That's Gold not Platinum!)

Hope this saves you some trouble

Compulsive
 

RickGG

Distinguished
Oct 22, 2006
24
0
18,510
HT is for all the NON-memory I/O, so you don't need to worry about it when choosing memory.
OK, then what is the physical speed of the memory controller then? Is it 200 Mhz? In other words, what determines the mobo's ability to support DDR2 800?
 

RickGG

Distinguished
Oct 22, 2006
24
0
18,510
Thanks for the reply. Please help me understand as I am still a bit confused.

Is the AMD memory frequency 200Mhz or 400Mhz?

I thought that it was 200Mhz, which DDR'd was at 400Mhz effective, and that since it is DDR2, the DDR2 equivelent was 800Mhz. Is my understanding incorrect?

Can you please help me understand how DDR2 plays into the AM2 HT bus? If I do buy the Asus board, is the memory clock settable, starting at 200Mhz or does it start at 400Mhz?

I could really use a primer on DDR2 on the AM2 HT platform as I have not been able to find answers to all of my questions.

TIA,

Rick
 

Mondoman

Splendid
Is the AMD memory frequency 200Mhz or 400Mhz?
Max socket 939 memory bus speed is 200MHz (DDR-400). Max socket AM2 memory bus speed is 400MHz (DDR2-800). AMD CPUs come in versions for each socket type; socket 939 versions have builtin DDR memory controllers (cannot use DDR2), while socket AM2 versions have builtin DDR2 memory controllers (cannot use DDR).

Can you please help me understand how DDR2 plays into the AM2 HT bus?
No connection. HT bus is used only for non-memory I/O. AMD CPUs have separate memory controllers builtin. So, memory I/O goes through memory controllers, non-memory (e.g. SATA, USB, etc) goes through HT bus. See block diagram in first ref below.

If I do buy the Asus board, is the memory clock settable, starting at 200Mhz or does it start at 400Mhz?
Depends on the MB. Asus tends to have pretty good flexibility built into its BIOSes, but you will have to get actual specs for the MB(s) you are interested in.

I could really use a primer on DDR2 on the AM2 HT platform as I have not been able to find answers to all of my questions.
Here are some places to start:
http://www.amd.com/us-en/Processors/ProductInformation/0,,30_118_9485_13041%5E13043,00.html
http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/33425.pdf
 

RickGG

Distinguished
Oct 22, 2006
24
0
18,510
Thank you very much for the response.

Man, things have gotten complicated since the SDRAM and DDR days!

In reading the AMD product sheet, it sounds like the IMC supports up to 200Mhz. I assume this is physical clock, which is effectively 400Mhz DDR'd. Is the DDR2 support of 800Mhz based on the fact that the 400Mhz bus is doubled again due to DDR2?

A few questions:

1. Are DDR2 speeds expressed as Physical clock x 2 x 2? For example, is DDR2 800 based on 200Mhz x 2 (DDR) x 2 (DDR2)?

2. Is the choice of of DDR2 speed directly proportional to the CPU speed? In other words, is matching DDR2 speed really based on the CPU and not necessarily the IMC?

2. Is it true that the HT link runs at 200Mhz and is multiplied by 5 to get 1000Mhz which is then DDR'd to 2000Mhz? If this is correct, then is the relevance of the 2000Mhz effective HT speed only from a Southbridge perspective and are all processor and memory calcs based off of the 200Mhz physical speed?

Thank you very much.
 

Mondoman

Splendid
...
In reading the AMD product sheet, it sounds like the IMC supports up to 200Mhz. I assume this is physical clock, which is effectively 400Mhz DDR'd. Is the DDR2 support of 800Mhz based on the fact that the 400Mhz bus is doubled again due to DDR2?
I assume IMC is "integrated memory controllers." You keep connecting DDR and DDR2 in your mind. They are different memory technologies. They have no connection with each other, just as older SDRAM (single data rate) has nothing to do with DDR. DDR2 is the next evolution of desktop memory design after DDR. Both DDR and DDR2 transfer data at twice the underlying bus speed, but DDR2 does not "include" DDR as a subset, just as DDR does not "include" SDRAM as a subset.
A given AMD CPU can ONLY use the type of RAM it is designed for. Socket 939 CPUs use ONLY DDR and cannot use DDR2. Socket AM2 CPUs use ONLY DDR2 and cannot use DDR.
Socket 939 AMD 64 x2 CPUs have IMC with a maximum physical memory bus speed of 200MHz (effective max DDR data rate of 400MHz = DDR-400). Socket AM2 AMD 64 x2 CPUs have different IMC using a different memory technology (DDR2) and have max physical memory bus speed of 400MHz (effective max DDR2 data rate of 800MHz = DDR2-800)

1. Are DDR2 speeds expressed as Physical clock x 2 x 2? For example, is DDR2 800 based on 200Mhz x 2 (DDR) x 2 (DDR2)?
No, DDR2 is physical clock x2. It has nothing to do with DDR.
2. Is the choice of of DDR2 speed directly proportional to the CPU speed? In other words, is matching DDR2 speed really based on the CPU and not necessarily the IMC?
No, the memory bus speed can be varied independently of the internal CPU speed.
2. Is it true that the HT link runs at 200Mhz and is multiplied by 5 to get 1000Mhz which is then DDR'd to 2000Mhz? ...
No, the HT clock is 1000MHz; I think AMD calls it 2000MHz because there are 2 unidirectional links. See here:
http://www.hypertransport.org/tech/tech_htone.cfm?m=5
http://www.hypertransport.org/tech/tech_httwo.cfm?m=4
Remember, the HT bus has nothing to do with memory; memory has its own bus.
 

RickGG

Distinguished
Oct 22, 2006
24
0
18,510
Thanks Mondoman. I guess in my mind, I am trying to build my understanding on DDR2 based on my understanding of DDR. Thanks for clearing up that DDR2 is not necessarily additive to DDR, it is completely different but still doubles the physical "bus" speed.

I have to wonder how many other folks are as confused as I was. I used to be pretty up and up on hardware in the Socket 7 days, but things sure have changed.

Anyway, when you say that
the memory bus speed can be varied independently of the internal CPU speed.
are you referring to the divisor being varied? I have read in many sources, including http://www.hardwaresecrets.com/article/328 that the memory speed is set by a divisor which happens to be half of the multiplier used for setting the CPU clock.

The source suggests that if you have a 2000Mhz CPU, which is running, lets say at 200Mhz X 10, that the memory clock would run at 400Mhz x 2 (2000/5 = 400) and that this is why you would pair DDR2-800 memory with said configuration.

If this is the case (please confirm), then it would seem that using anything less than DDR2-800 would result in a sub-optimal memory configuration since only at 800Mhz is the memory bandwidth running at its stock potential.

In addition (and I think this just now is clicking), I have read that the performance gains (at least right now) of running DDR2-800 over say, DDR2-400 are minimal.

Are these assesments (based on my dim brain) accurate?

Thanks again.
 

Mondoman

Splendid
... when you say that the memory bus speed can be varied independently of the internal CPU speed.
are you referring to the divisor being varied? I have read in many sources, including http://www.hardwaresecrets.com/article/328 that the memory speed is set by a divisor
Yes.
which happens to be half of the multiplier used for setting the CPU clock.
This part doesn't sound right, because that would mean that there is only a fixed memory bus frequency for each CPU freq. My understanding is that the BIOS looks at the DIMM SPD (speed/timing) data and the CPU info to choose a memory bus speed. The speed is chosen to be as fast as possible, subject to the maximum of 400MHz of the CPU memory controller and the max of the specific RAM installed, and the need to have an integer divisor. See here: http://www.behardware.com/articles/625-2/socket-am2-ddr2-according-to-amd.html

...If this is the case (please confirm), then it would seem that using anything less than DDR2-800 would result in a sub-optimal memory configuration since only at 800Mhz is the memory bandwidth running at its stock potential.
You're right that only at 400MHz (DDR2-800) is the memory controller running at its max potential. However, it would seem silly to sell a CPU that would only work with DDR2-800 RAM, and not with, say, DDR2-667 RAM. That's why it's my understanding that the BIOS chooses a divisor at boot up to make best use of the installed memory.

...I have read that the performance gains (at least right now) of running DDR2-800 over say, DDR2-400 are minimal.
Not true for AM2, true for some Intel CPUs. The issue gets complicated, because AMD CPUs seem to be more sensitive to latency. Also, it depends on what you mean by "performance," because any memory effects will be greatly diluted when looking at overall application performance.