Now some of the RDRAM setup are talked about. What exactly do you want to know? Based on your post you want to know everything. Have you done some research inside and outside of the <font color=red>THGC</font color=red>? (<font color=red>T</font color=red>om's <font color=red>H</font color=red>ardware <font color=red>G</font color=red>uide <font color=red>C</font color=red>ommunity)
Please tell us what you need help with and we can fill in the blanks. There are a lot of good articles that deal with RDRAM all over the net. If you can't find something just post some questions here.
<b>R</b>DRAM is in a <b>R</b>IMM format. (Much like S<b>D</b>RAM is in <b>D</b>IMM format.) RDRAM RIMMs work in a serial communication mode. You just send your request through all of the RAM, and the right chip knows to respond. The rest don't. (Unlike SDRAM where you have to make sure to access just the right location in memory and <i>only</i> that location whenever you make a request.)
RDRAM sends a 16-bit (which is two bytes) packet. RDRAM sends two packets per clock cycle, much like DDR SDRAM. Also like DDR SDRAM, the 'speed' that you see marketed is actually twice the speed of the actual chips in the RAM. (Because it sends twice as much data per clock cycle, it is considered to be the same as twice the speed, even if it really isn't.)
So for example PC600 is 600MHz in marketspeak. (Which in reality is 300MHz but sending two signals per clock cycle.) So the amount of data streamed by PC600 is then 600 x 2 bytes = 1200 bytes per second of bandwidth.
RDRAM comes in various speeds. PC600 is really 300MHz and has 1200 bytes per second of bandwidth. PC700 is really 350MHz and has 1400 bytes per second of bandwidth. PC800 is really 400MHz and has 1600 bytes per second of bandwidth. PC1066 is really 533MHz and has roughly 2100 bytes per second of bandwidth. These are all of the 16-bit 184-pin versions of RDRAM. (And soon a PC1200 will come out.)
Way back at the time of the Pentium 3, the 1200 bytes per second of bandwidth of PC600 was enough. For the Pentium 4 though, it wouldn't do. So RDRAM introduces it's second trick: dual-channel.
By making the memory controller able to access two memory sticks at once, you can double the bandwidth. (In exactly the same way as dual-channel DDR works.) For the P4 this was <i>always</i> done with RDRAM. So PC800 with it's 1600 bytes per second of bandwidth as single-channel offered 3200 bytes per second of bandwidth as dual-channel. Dual-channel PC1066 offers roughly 4200 bytes per second of bandwidth. This satisfied the P4 and was still all done with simple 16-bit (184 pin) RDRAM.
Then one silly morning, someone decided that installing memory in pairs (as was needed for dual-channel RDRAM) was just too annoying. So they turned around and stuck two sticks of 16-bit RDRAM together in one single stick. It was the first 32-bit RDRAM solution and ended up needing 232 pins, but it offered the same bandwidth as two 16-bit sticks. So using the 32-bit sticks, dual-channel wasn't needed anymore. This was done first (and I think <i>only</i> ... at least for now) with a PC1066 speed. The resulting bandwidth of 4200 bytes per second of each stick of this 32-bit RDRAM was what gave it its name: RIMM4200.
Besides measuring RDRAM in MHz speeds, there are actually also different latencies (measured in nanoseconds) for each of the speed ratings as well. PC600 had a 53ns latency. PC800 came in both 45ns and a 40ns flavours. PC1066 comes in 35ns and 32ns latencies. (And even has a theoretical 30ns version.) The lower the latency, the better.
I think that pretty much covers it since Hyperthreading doesn't really have anything to do with RDRAM. It's just a P4 trick to use more of the CPU by pretending to be two CPUs so that it can cram the second non-existent CPU's requests into any blank spaces during processing.
<font color=blue><pre>If you don't give me accurate and complete system specs
then I can't give you an accurate and complete answer.</pre><p></font color=blue>
Thank you very much for making this easy enough for me to understand. I've felt like I haven't been able to keep track of all the different "scenarios" of RD RAM types, and I was hoping to get a big picture about it, and your explanation has helped me in this way, and I think I finally have a handle on it now.
Would you be so kind as to help me make sure I have this right?...
These are the two types of PC1066 RD RAM, correct?
You are correct. However, note that RIMM4200 PC1066 which is also known as PC4200 is really only 16-bit. It is utilizing both RDRAM channels on one module. <A HREF="http://www17.tomshardware.com/mainboard/20020624/i850e-..." target="_new">THG has a good set of diagrams for showing the archetectural differences of the single channel 16-bit RIMM1600/RIMM2100 and the the dual channel 16-bit RIMM3200/RIMM4200</A>. Notice the termination resistors on the memory module's PCB as well as the difference in the channels and the signal flow.
"And do both of the above types each come in the following two different latencies? (Or how does that work?):
They are the tRAC (Access Time from RAS Active) values for the respective speeds. 40ns for the 800MHz variety, again that is 400MHz x 2 bits per clock cycle, and 32ns for the 1066MHz type. However I have not seen differeing values for modules of the same signal frequency.
"Finally, in the every-day real-world, my best guess is that there would be a significant, noticeable difference between PC1066 RIMM2100 RDRAM and PC1066 RIMM4200 RDRAM. Would that be correct?
Would there also be a significant, noticeable difference between the two above latencies?"
Yes, anytime you can increase clock speed and decrease latencies you will see improvements in "real World" performance. The other way that there has also been improvements in RDRAM is the fact that the terminating resistors are on the module PCB. This makes the traces shorter and thus decreasing the circuit path. At the same speeds of the RIMM2100 the RIMM 4200 gets is done faster. The short the trip, the faster you get there.
I hope this helps.
Here are some articles to help you understand different areas of RAM and RAM architectures.