Confirming What I've Learned: CPU, RAM, FSB

chadwickvm

Distinguished
Nov 4, 2003
55
0
18,630
Hello,

I've recently been looking at putting together a new system. It seems things have changed a little since I built my Athlon XP system w/ it's thoroughbred core. I have been doing research on the forums and among other sites on how to figure out the correlation between RAM frequency, FSB, and CPU speed. What I am posting below is what I have come to understand about all of this with a focus on what RAM is needed for a given situation. If anyone could confirm what I have learned is correct, I would be very appreciative. And thus, it begins...

[note] This is assuming a non-overclocked system.

1. When looking at buying RAM for a computer, you must know what speeds that motherboard can support. A new intel system, for example, may support 533mhz RAM, 667mhz RAM, and 800mhz RAM.

2. Based on the front side bus of the CPU you are using, you then need to choose RAM that can match that speed. For example, if you have a new core 2 duo e6400, your CPU would have a FSB of 1066mhz and your RAM would have to meet the amount of throughput needed to equate to 1066mhz so as not to cause a data bottleneck.

3. No motherboard can, in a single channel, move data to the memory controller at the speed of 1066mhz. Therefore, dual channel must be used to combine the throughput of two matching 533mhz RAM modules to equal the 1066mhz of the CPU's ideal FSB speed.

4. The speed that the memory is rated i.e. DDR2 800, is how many times per second the memory could theoretically transmit data and remain stable but is NOT the speed at which it constantly operates. Furthermore, if a motherboard states that it can use DDR2 533, 667, 800, you can safely put in a stick rated at 1066 and the motherboard will simply clock it down to one of its three viable options.

5. In an intel system, the FSB is the bus to the northbridge (memory controller), and the memory bus goes from the memory controller to the RAM itself. Changing the speed of the FSB will also increase the memory bus and so if you wanted to overclock a system from 1066mhz FSB to 1333mhz fsb using matching 667mhz fsb RAM, you would want to make sure you set your bios RAM speed to 533mhz and then clock up the FSB. Similarly, if you are using stock 1066mhz FSB speeds, you could run two matching sticks of 667mhz RAM at their rated 667mhz speed. Doing this would not hurt performance but would not help it at all either because the CPU will have fewer clockcycles than the RAM (CPU at 1066mhz and RAM at 1333mhz).


If this is correct, I have a few questions.

1. I have seen RAM rated to 1066mhz. What is it used for?

2. Theoretically, if motherboards could use RAM rated at 1066mhz, then it would be possible to get full bandwidth out of a single channel on a 1066mhz motherboard using 1066mhz RAM, correct?

3. On a technical note, what is stopping the usage of 1066mhz RAM as a single channel solution for the throughput bottleneck?


Thanks for your time,

Chad
 

miahallen

Distinguished
Oct 2, 2002
572
0
18,990
Clear your head, take a deep breath, and forget what you "know"...

...ready? OK, assuming the E6400 and DDR2-800

Both your CPU speed, FSB speed, and memory speed are all based on the system clock (the one in the NB).

Stock speed of the system clock is 266MHz

CPU speed is attained by multiplying the system clock speed. The E6400 uses an x8 multiplier...266MHz x 8 = 2.13GHz

FSB clock speed is 266MHz, but data rate is 1066MHz
Intel calls this "quad data rate" (QDR), on each cycle of the system clock, the FSB is capable of transmitting 4 bits of data.

memory clock speed works like the CPU, utilizing a multiplier acting on the system clock. Most motherboards auto-detect the speed of your RAM, and set the multiplier accordingly. The confusing part, is that data rate is doubled for DDR (Dual Data Rate). So with our system the system clock is 266, the motherboard auto-detects DDR2-800 and sets the multiplier to x1.5 giving a clock speed of 400MHz. On each clock, the RAM is able to transmit 2 bits of data. This results in a data rate of 800MHz.

In this senario, OCing the system clock to 333 would result in a CPU speed of 2.67GHz, FSB data rate of 1333, and memory speed of 1000MHz.

In the interest of system stability, it would be wise in this case to manually change your RAM's multiplier to x1.2 (if available). Or increase the RAM's voltage and relax the timings.

.........did this help?

Here is a very popluar OC, one I just used while building a new system for a friend:

E6400, DDR2-800

system clock = 400MHz
FSB = 1600MHz

CPU x8 = 3.2GHz
RAM x1 = 800MHz data rate
 

chadwickvm

Distinguished
Nov 4, 2003
55
0
18,630
I believe I under stand it now, thank you.

I'm now down to only two things that confuse me:


Here is a very popluar OC, one I just used while building a new system for a friend:

E6400, DDR2-800

system clock = 400MHz
FSB = 1600MHz data rate
CPU x8 = 3.2GHz
RAM x1 = 800MHz data rate

I've read about ratios of datarate between CPUs and RAM. In the example above, would the ratio be 2:1 (1600mhz CPU datarate to 800mhz RAM datarate)and would that mean a bottleneck? And two, I must still be confused about what Dual Channel RAM is doing in this situation, unless it means that the effective datarate of the RAM becomes 1600mhz giving a 1:1 ratio.

Thanks for your input
 
Hello,

I've recently been looking at putting together a new system. It seems things have changed a little since I built my Athlon XP system w/ it's thoroughbred core. I have been doing research on the forums and among other sites on how to figure out the correlation between RAM frequency, FSB, and CPU speed. What I am posting below is what I have come to understand about all of this with a focus on what RAM is needed for a given situation. If anyone could confirm what I have learned is correct, I would be very appreciative. And thus, it begins...

[note] This is assuming a non-overclocked system.

1. When looking at buying ram for a computer, you must know what speeds that motherboard can support. A new intel system, for example, may support 533mhz ram, 667mhz ram, and 800mhz ram.

You are correct, knowing the maximum supported RAM speed is good. RAM speed supported depends on the chipset. Current Intel chipsets are the 945, 965, and 975. All of them support DDR2-400, DDR2-533, and DDR2-667. The 975X has unofficial support by some board makers for DDR2-800 and the 965 has official support from Intel for DDR2-800.

2. Based on the front side bus of the CPU you are using, you then need to choose ram that can match that speed. For example, if you have a new core 2 duo e6400, your CPU would have a FSB of 1066mhz and your RAM would have to meet the amount of throughput needed to equate to 1066mhz so as not to cause a data bottleneck.

Correct. Intel's FSBs actually access data from the chipset four times a clock tick, so the FSB speed is actually 266 MHz and not 1066 MHz. The 1066 MHz figure is how fast an old-style, single-access-per-clock FSB like on the PIII would have to be to pull in the same amount of data. The Athlon XP's FSB had two accesses per clock cycle, so an Athlon XP 3200+ with a "400 MHz FSB" had an actual FSB frequency of 200 MHz. Again, the 400 MHz is an effective frequency compared to single-access-per-clock FSBs like the original Athlon and PIIIs.

The former is only important because the "real"- lower- FSB speed times the CPU's multiplier gives the actual clock speed of the chip. That's not of huge interest unless you overclock your chip, and then the bus speed is REALLY important.

Intel's Pentium 4/Pentium M/Core/Core 2 FSB transfers 64 bits of data each access. So the 266 MHz FSB on the E6400 has 4 accesses per clock and 8 bytes ber access, which gives us 8,512 MB/sec that the FSB can handle. Memory modules also transfer 8 bytes per access, so it would take DDR2-1066 to yield a single-channel bandwidth to feed the FSB fully, as you have noted. And you are correct in noting that dual-channel transfers 16 bytes per clock so DDR2-533 in dual channel will be as much as the C2D's 266 MHz FSB can handle.

3. No motherboard can, in a single channel, move data to the memory controller at the speed of 1066mhz. Therefore, dual channel must be used to combine the throughput of two matching 533mhz RAM modules to equal the 1066mhz of the CPU's ideal FSB speed.

Correct. The 800 MHz of the P4s, Pentium Ds, and Core 2 Duo E4300/E4400 can run perfectly on a single stick of DDR2-800 as the FSB and RAM both are capable of handling 6400 MB/sec in bandwidth.

4. The speed that the memory is rated i.e. DDR2 800, is how many times per second the memory could theoretically transmit data and remain stable but is NOT the speed at which it constantly operates. Furthermore, if a motherboard states that it can use DDR2 533, 667, 800, you can safely put in a stick rated at 1066 and the motherboard will simply clock it down to one of its three viable options.

That is also correct. DDR memory modules have an actual memory clock speed of 1/4th the rated speed, so DDR2-800 memory runs at a clock speed of 200 MHz. Motherboards have what's known as a memory divider to allow RAM to run at a clock rate that's not the same as the FSB clock. Running RAM at a speed that's the same as the FSB on the E6400 would mean you'd run your RAM at DDR2-1066 speeds, and there are some motherboards that can do that. Running the E6400 with DDR2-800 means the RAM runs at 200 MHz when the FSB is 266 MHz, so there is a 4:3 FSB:RAM divider. DDR2-667 is 8:5, and DDR2-533 runs at half the FSB speed.

Memory modules can safely operate at speeds that are lower than their rated speed, so you can put a DDR2-1066 stick in a board rated for DDR2-800 and it will run at DDR2-800 speeds.

5. In an intel system, the FSB is the bus to the northbridge (memory controller), and the memory bus goes from the memory controller to the ram itself. Changing the speed of the FSB will also increase the memory bus and so if you wanted to overclock a system from 1066mhz FSB to 1333mhz fsb using matching 667mhz fsb RAM, you would want to make sure you set your bios RAM speed to 533mhz and then clock up the FSB. Similarly, if you are using stock 1066mhz FSB speeds, you could run two matching sticks of 667mhz RAM at their rated 667mhz speed. Doing this would not hurt performance but would not help it at all either because the CPU will have fewer clockcycles than the RAM.

That is also correct.


If this is correct, I have two questions.

1. I have seen RAM rated to 1066mhz. What is it used for?

It can be used to have a single channel of RAM provide enough bandwidth to saturate the FSB in a Core 2 Duo with a motherboard that has a 1:1 memory divider (also called DDR2-1066 support.) But usually it's used for people to overclock their chips as it will allow a massive FSB clock and thus massive CPU overclock without overclocking the RAM itself.

2. Theoretically, if motherboards could use ram rated at 1066mhz, then it would be possible to get full bandwidth out of a single channel on a 1066mhz motherboard using 1066mhz RAM, correct?

Spot on. This makes a lot of sense to do as it allows one to upgrade RAM much more easily in the future than if you have to buy pairs of RAM modules.

3. On a technical note, what is stopping the usage of 1066mhz RAM as a single channel solution for the throughput bottleneck?

Probably Intel's chipsets not supporting an official 1:1 memory divider with a 266 MHZ bus speed. Also, DDR2-1066 modules are quite expensive and 2GB DDR2 modules aren't really common, especially at higher speeds like DDR2-1066. If such a module did exist right now, it would cost much more than a pair of DDR2-533 modules and perform slightly worse as the latencies on a 2GB DDR2-1066 stick are much higher than the latencies on 1GB DDR2-533 sticks.
 

chadwickvm

Distinguished
Nov 4, 2003
55
0
18,630
Excellent!

Thanks so much for your input guys.

I think I may post a summary of this on my website -- should I ever get it running -- for my own future reference and hopefully to help out others that were in my situation.
 

NotSoSober

Distinguished
Dec 27, 2006
23
0
18,510
FSB clock speed is 266MHz, but data rate is 1066MHz
Intel calls this "quad data rate" (QDR), on each cycle of the system clock, the FSB is capable of transmitting 4 bits of data.

This is definately NOT true :)

I might be wrong about this next stuff, but if I am then someone can correct me :)

The FSB on core2 system runs at 266 MHz, the bus is 2x64 bits wide and data transfer actually takes place twice per tick (on both the leading and trailing edges of the clock signals front). The 1066 (dont even know if it is right to write MHz after this number :S ) data rate is derived from this. It can transfer 64 bits 4 times per cycle, so effectively would be the same as a 1066MHz 64-bit bus that is only syncronized on one of the clock signals fronts.

Hope I got it right...

Oh, and the point is, the FSB is capable of transmitting 256 bits of data per clock cycle, not 4.
 

miahallen

Distinguished
Oct 2, 2002
572
0
18,990
So I would have been acurate if I had said:

"Intel calls this "quad data rate" (QDR), on each cycle of the system clock, the FSB is capable of transmitting 4 blocks of data."

I was trying not to get too technical :roll:
 
Do you think that we should explain how a CPU with an integrated DRAM controller and a serial chipset bus link (e.g. AMD Athlon 64 series, Transmeta Efficeon) works to the OP? Or would that be off-topic?
 

chadwickvm

Distinguished
Nov 4, 2003
55
0
18,630
To MU_

I am certainly interested in it. however, I wouldn't want to bother you with any more questions than necessary. I've definitely gleaned a lot of new information from what has already been posted here.

Thanks again,

Chad


-- PS Sorry about the long delayed response
 
This is a gross simplification, but the pins or lands on the bottom of Intel CPUs have two basic functions: one is to provide power to the CPU (that's the majority of them) and the other is to talk to the FSB. All the data to the CPU thus comes in and goes out through the FSB. The memory is controlled by the chipset and the memory data passed from the chipset's memory controller to the chipset's FSB interface to the CPU. So as long as the FSB is set up correctly for the Core 2 Duo, the CPU doesn't and can't know what RAM the chipset is talking to. You could thus put a PC133 memory controller in a chipset, and as long as it had the right FSB spec for the C2D, the C2D could use PC133 memory. If you want to run a Core 2 Duo on DDR 400, then what you'd need to do is make a chipset that supports the Core 2 Duo's 1066 MHz FSB and contains a DDR 400 memory controller. I believe VIA makes such a chip and ASRock uses them to make a board that supports Core 2 Duo CPUs and DDR 400 RAM.

The AMD K8 (Athlon 64/Opteron/socket 754 + AM2 Semprons/Turion) chips directly talk to the RAM itself as the memory controller is integrated onto the processor die. Thus you can only use a certain kind of memory with a certain kind of AMD CPU as otherwise the CPU won't be able to talk to the RAM. AMD prevents people from running the wrong memory with the wrong CPU by making a certain socket for CPUs that use the same memory so it's physically impossible to put a DDR-controlling CPU in a DDR2 motherboard.
 

javimars

Distinguished
May 16, 2006
217
0
18,680
This is a gross simplification, but the pins or lands on the bottom of Intel CPUs have two basic functions: one is to provide power to the CPU (that's the majority of them) and the other is to talk to the FSB. All the data to the CPU thus comes in and goes out through the FSB. The memory is controlled by the chipset and the memory data passed from the chipset's memory controller to the chipset's FSB interface to the CPU. So as long as the FSB is set up correctly for the Core 2 Duo, the CPU doesn't and can't know what RAM the chipset is talking to. You could thus put a PC133 memory controller in a chipset, and as long as it had the right FSB spec for the C2D, the C2D could use PC133 memory. If you want to run a Core 2 Duo on DDR 400, then what you'd need to do is make a chipset that supports the Core 2 Duo's 1066 MHz FSB and contains a DDR 400 memory controller. I believe VIA makes such a chip and ASRock uses them to make a board that supports Core 2 Duo CPUs and DDR 400 RAM.

The AMD K8 (Athlon 64/Opteron/socket 754 + AM2 Semprons/Turion) chips directly talk to the RAM itself as the memory controller is integrated onto the processor die. Thus you can only use a certain kind of memory with a certain kind of AMD CPU as otherwise the CPU won't be able to talk to the RAM. AMD prevents people from running the wrong memory with the wrong CPU by making a certain socket for CPUs that use the same memory so it's physically impossible to put a DDR-controlling CPU in a DDR2 motherboard.

so if i find a motherbord that supports c2d and ddr1 and allows me to overclock a e4300 to 3.6ghz(400fsb x9) i will be able to do it?
does dual channel support have anything to do with it? i dont get it ..
 
so if i find a motherbord that supports c2d and ddr1 and allows me to overclock a e4300 to 3.6ghz(400fsb x9) i will be able to do it?
does dual channel support have anything to do with it? i dont get it ..

1. I don't think that the VIA Core 2 Duo DDR chipset allows for very good FSB overclocks because it doesn't support very high FSB speeds. I'd pretty much bet that you won't be able to get the bus speed over 350 MHz, maybe as low as just a little over 300 MHz. If you want to try to overclock that E4300 to a 400 FSB, I'd suck it up and buy an NForce 650 or P965-based motherboard and get some DDR2-800. That would give you a much better chance of hitting that overclock figure. But to tell the truth, a 100% overclock is extremely optimistic and you'd need some EXCELLENT cooling to do it, especially if you want to use the chip at that speed (instead of just OCing it, screenshotting it, and then setting the clock rate back down to sane levels.) The ASRock board wouldn't be a bad choice if you are willing to live with "only" a 50% overclock (300x9) as the chipset can likely hit 300 FSB and run stably and you don't want to part with a lot of nice DDR 400.

2. Dual channel support only means that the memory controller can access two sticks of RAM at once and get 16-byte bursts of data from them as opposed to accessing only one stick at a time and getting 8-byte burst of data. Dual channel has nothing to do with overclocking.
 

PCAnalyst

Distinguished
Nov 7, 2006
467
0
18,780
2. Dual channel support only means that the memory controller can access two sticks of RAM at once and get 16-byte bursts of data from them as opposed to accessing only one stick at a time and getting 8-byte burst of data. Dual channel has nothing to do with overclocking.

What if there is 4 sticks of RAM (2) (2X1gig)? Is the memory controller limited to only dual channel access? or does it see Dual - Dual sticks and how would the performance take a hit by this?
 
A memory controller that can do dual-channel memory access can access RAM in 64-bit (8-byte, single channel) or 128-bit (16-byte, dual-channel) increments. So if you have 4 modules, it will use them as 2 groups of two. The only memory controller that I know of that has four RAM channels would be Intel's Xeon 5000 series that run 4 independent channels of FB-DIMM modules. I don't think that Intel's chipsets care much about 2 sticks versus 4, but AMD's integrated memory controllers have a slightly harder time addressing 4 modules than 2, or at least the Socket 939 units did. Revision D (Winchester) units could run at DDR 400 1T with two sticks in dual channel but could not exceed DDR 200 in dual-channel mode at 1T and DDR 333 at 2T IIRC. The stepping E chips (San Diego, Venice, Toledo, Manchester, Denmark, Venus) have an updated IMC that can run four sticks at DDR 400 2T and DDR 333 1T. These chips also have native straps for DDR 433, 466, and 500 with 2 modules, but that's beyond the point.

I am not sure about socket AM2 CPUs as AMD's technical references about these CPUs has yet to show up and also I do not own one.
 

tommyboyo

Distinguished
Nov 24, 2006
24
0
18,510
Hey guys, I'd like to add in here with a few questions of my own, I did post them on the memory boards but so far I haven't been able to get a solid answer:

I wanted to confirm the 1:1 cpu:ram speed ratio that everyone keeps referring to as 'the ideal'...here's now I see it -

- fsb on a core2duo 6600 is fixed at 1066mhz (we'll assume no overclocking for the sake of this arguement)

- 2 sticks of ddr2-533 ram in dual channel mode also = 1066mhz (266mhz x2 for ddr2, x2 again for 2 sticks)

- therefore RAM can send data at 1066mhz, and the FSB can process 1066mhz as it's maximum, so everything is equal in a 1:1 ratio and you're getting the most out of both.

However what is the situation when you add 2 MORE sticks of RAM to total 4gb? you effectively have 4 sticks each capable of sending at 533mhz, which totals 2132mhz, however the FSB can still only handle 1066mhz. What happens under these circumstances? Does the RAM simply slow down? and what would I do to make sure I had everything set up in the most efficient way? choose another ratio? 4:5? higher? My knowledge is really lacking when it gets down to this level, any help is appreciated!
 

NotSoSober

Distinguished
Dec 27, 2006
23
0
18,510
However what is the situation when you add 2 MORE sticks of RAM to total 4gb? you effectively have 4 sticks each capable of sending at 533mhz, which totals 2132mhz, however the FSB can still only handle 1066mhz. What happens under these circumstances? Does the RAM simply slow down? and what would I do to make sure I had everything set up in the most efficient way? choose another ratio? 4:5? higher? My knowledge is really lacking when it gets down to this level, any help is appreciated!

See, this is one reason why I wasnt comfortable writing MHz behind the 1066 figure :).

Anyway... The FSB clock always runs at a specified frequency (266 MHz in our case) if you add or remove a module it will still run at the same frequency (266MHz). In dual channel mode you can transmit 2*64=128 bits in parallel at once. A single DIMM module can transmit 64 bits, so you need them in pairs in order to use dual-channel, otherwise you will transmit only 64 bits at a time, thus the data-rate will be 533 whatevers. 533 because the bus sends all its data twice in a clock cycle 266*2=533. If you have 4 or 8 or whatever number of memory modules you still only have the 128 bit bus.

This would be so much easier to explain if people could remember SIMMs.
 

tommyboyo

Distinguished
Nov 24, 2006
24
0
18,510
So what you're saying is that when you have 4 sticks of 1gb DDR2-533 on a system with a FSB of 1066, the modules are actually slower on a per module basis, but the same speed overall? in the situation I gave are you effectively running with a ratio of 1:2? Surely this creates a bottleneck? 2 extra sticks of ram sitting around saying "well I could be sending data right now but I'm not, the bus is already full!". Or does each RAM module get downclocked individually (not sure on the teccie phrase sorry) to DDR2-266 (possibly allowing you to improve the timings), giving a total of 1066 again?

unless I'm wrong the situation would be fsb at 1066, ram at 2132 (unless you lock the ram at 1:1), then if you decided to o/c you'd be bringing the fsb up closer to the speed of the RAM, therefore making your memory perform comparatively faster.

urgh, this is getting confusing, and I admit I may be getting futher from the truth rather than closer hehe.
 

NotSoSober

Distinguished
Dec 27, 2006
23
0
18,510
So what you're saying is that when you have 4 sticks of 1gb DDR2-533 on a system with a FSB of 1066, the modules are actually slower on a per module basis, but the same speed overall?

NO, damn it... cant explain it any better though, but I'll try anyway :(

Imagine some parallel wires... lets say 8 of them, between device A and infinity. Kinda like this:
!!------------------------------------------------------------------
D------------------------------------------------------------------
E------------------------------------------------------------------
V------------------------------------------------------------------
I------------------------------------------------------------------
C------------------------------------------------------------------
E------------------------------------------------------------------
A------------------------------------------------------------------

Now lets imagine this is an 8 bit memory bus (dont laugh, I know this is crude and has no control logic or anything but I hope it will help explain).

Now let say we have 2 4-bit memory modules installed, like so...

!!-----------------I------------------------------------------------
D-----------------I------------------------------------------------
E-----------------I------------------------------------------------
V-----------------I------------------------------------------------
I--------------------I----------------------------------------------
C-------------------I----------------------------------------------
E-------------------I----------------------------------------------
A-------------------I----------------------------------------------

Now if we want to install 2 more:

D-----------------I-----------------------I------------------------
E-----------------I-----------------------I------------------------
V-----------------I-----------------------I------------------------
I-----------------I-----------------------I------------------------
C-------------------I-----------------------I----------------------
E-------------------I-----------------------I----------------------
!-------------------I-----------------------I----------------------
A-------------------I-----------------------I----------------------

See if we only installed one module we would get half the throughput, since 4wires would be unused... However nothing is being underclocked, if we have 4 of them some modules just might not get accessed all the time but the memory addresses continue from where they left off in the previous row. Its the same thing if you have 2 "bigger" (more bytes) modules, not all of it is used all the time, just the required addresses. The memory still has to be just as fast with 4.

Oh, here's an idea: think of one large module as 2 smaller ones combined :p. Say 512 MB module as being 2*256MB modules :) .

Hope this helps a little.
 

tommyboyo

Distinguished
Nov 24, 2006
24
0
18,510
=) I appreciate your patience with me, I know that technical people can get easily frustrated by idiots like myself!

Now I'd love to say that your explanation has completely enlightened me and that I now understand perfectly, but I don't :( Feel free to give up on me though, I may well be a lost cause :)

Anyway, if you are feeling charitable, read on....

my limited understanding leads me to believe the following, I'll put it in short statements and label them, so you can basically say "a) true, b) false" etc.

A) core2duo has a FSB of 1066 (mhz?) at stock settings, this represents the amount of data that can be taken to the CPU through the Northbridge at any one time.

B) DDR2-533 ram (for example) is basically 2 lots of 266mhz capability on one chip, hence the doubling of capacity to 533mhz

C) When only one stick is used you are basically leaving a channel redundant, halving the rate at which data moves betwen the RAM and the CPU. When you have 2 sticks you are using them in dual channel mode, and therefore the CPU can utilise both sets of 533mhz at once, so 1066, which is the max that it can handle at stock settings.

D) If you then add more ram, say up to 4gb in the other two slots, you are basically increasing the amount of data that can be held in RAM (which is good as accessing from RAM is better than fetching from a HDD).

E) when you add this extra ram, you theoretically have more bandwidth capacity, therefore if your fsb could support it, you could run ram and fsb in a 1:1 ratio at 2132 (mhz?)

Sooo.....how much of that is actually correct? :)
 
=) I appreciate your patience with me, I know that technical people can get easily frustrated by idiots like myself!

Now I'd love to say that your explanation has completely enlightened me and that I now understand perfectly, but I don't :( Feel free to give up on me though, I may well be a lost cause :)

Anyway, if you are feeling charitable, read on....

my limited understanding leads me to believe the following, I'll put it in short statements and label them, so you can basically say "a) true, b) false" etc.

A) core2duo has a FSB of 1066 (mhz?) at stock settings, this represents the amount of data that can be taken to the CPU through the Northbridge at any one time.

B) DDR2-533 ram (for example) is basically 2 lots of 266mhz capability on one chip, hence the doubling of capacity to 533mhz

C) When only one stick is used you are basically leaving a channel redundant, halving the rate at which data moves betwen the RAM and the CPU. When you have 2 sticks you are using them in dual channel mode, and therefore the CPU can utilise both sets of 533mhz at once, so 1066, which is the max that it can handle at stock settings.

D) If you then add more ram, say up to 4gb in the other two slots, you are basically increasing the amount of data that can be held in RAM (which is good as accessing from RAM is better than fetching from a HDD).

E) when you add this extra ram, you theoretically have more bandwidth capacity, therefore if your fsb could support it, you could run ram and fsb in a 1:1 ratio at 2132 (mhz?)

Sooo.....how much of that is actually correct? :)
Mind if I help out a bit?

A. This number represents the speed (in the unit of MHz) that the microprocessor (in this case a Core 2 Duo) can communicate with the chipset and other devices on the board, such as the system memory.

B. DDR2 is basically an evolution of SDRAM (single data rate) in which data is sent on both the rising and falling edges of clock cycles in a data burst. This number (533) represents the speed of this clock cycle.

C. If you only put in one stick, you are only getting half the possible performance from your RAM.

D. Yep

E. No. You have more bandwidth capacity when you move to a faster rated RAM (like DDR2 667) along with increasing the FSB and using a lower latency. (You know, those 4-4-4-12 numbers that are always being thrown around?)
 

PCAnalyst

Distinguished
Nov 7, 2006
467
0
18,780
I think he would best be served if he were shown the math behind calculating the Bus speeds RAM speeds etc... ex: 533 RAM x (?#) = ?#
so that he can get a better picture of how the numbers add up to maximise his 1066 Bus speed.

...and I'm not the expert on it.
 

Apple_Fritters

Distinguished
Dec 31, 2006
156
0
18,680
There are two channels on a motherboard.
There are two RAM slots physically connected to each channel.
Slots 1 and 2 are physically sodered to the same wires that make channel one.
Slots 3 and 4 are physically sodered to another set of wires that make channel 2.

You seem to believe each slot has it's own channel.
 

tommyboyo

Distinguished
Nov 24, 2006
24
0
18,510
right ok, I think I'm getting it...

A) Although you can achieve a throughput of 1066mhz on one channel if you have a stick of ddr2-1066, you can't achieve the same thing by using two sticks of ddr2-533 on one channel?, 2 sticks of ddr2-533 don't add up to give a capability of 1066 when on the same channel, but when used dual channel they can?

B) Going back to my original question to clarify, if I have 2gb of ddr2-533 running in dual channel mode I have a total speed of 1066, which matches the FSB and runs in a ratio of 1:1

C) If I then put in another 2 sticks of the same RAM to give 4gb total, nothing actually changes in terms of throughput....to put it another way having four 1gb sticks of ddr2-533 is exactly the same as running two 2gb sticks of ddr2-533 in dual channel (if you ignore latencies and all that stuff that comes with bigger capacity sticks) and still gives a ratio of 1:1. Whilst the computer knows there are 4 sticks, all that really matters is the total capacity in each channel...it doesn't matter that it's spread across two DIMMs

Am I getting warmer? :mrgreen: