Showdown at 133 MHz FSB - Part 2, The Real McCoy

The RDRAM-Story, Continued

The PCXXX-specs are a very misleading designation, because the number behind the 'PC' is only reporting the memory clock. This makes sense as long as it is used for the same memory type, but it's completely ridiculous if it's used to compare two memory designs that are as different as SDRAM and RDRAM. SDRAM has a parallel interface that is 64 bit wide. Clocking SDRAM at 100 MHz leads to 64 bit or 8 Byte * 100 MHz = 800 MB/s for PC100 SDRAM . RDRAM is a serial interface that's only 16 bit wide and it's taking advantage of 'double-pumping', so it can transport data at the rising and falling edge of the clock. Clocking RDRAM at 100 MHz would results in 16 bit or 2 Byte * 2 * 100 MHz = 400 MB/s and it would be called PC200 RDRAM . You can see that RDRAM would require 'PC400'-spec to offer the same bandwidth as SDRAM at PC100 spec. Thus PC800 RDRAM is only offering double the bandwidth of PC100 SDRAM, although it sounds as if it was eight times as fast.

The second problem of RDRAM is its latency. Now what the hell is that? I first decided to go on about data alignment issues and detailed comparisons between the SDRAM and the RDRAM interface, but I finally found a much better way to explain it. As already said, the SDRAM is a parallel interface, while RDRAM is serial. This is why SDRAM doesn't need to be clocked as fast as RDRAM to reach the same bandwidth. At the same time the parallel interface has another big advantage. Just think of 20 motorcyclists on their bikes driving next to each other down a street and waiting for directions. Suddenly they are getting the command 'turn right now!'. Because of the small size of a motorbike and because all of the guys are next to each other, they can turn into this street very fast, almost instantly. This was the example for SDRAM; it 'turns off into little streets very fast'. Now picture a big bus with 20 people in it. The bus driver is also waiting for directions. When he gets the 'turn right now'-command he will have to break and if it's a very tight bend he even might have to reverse to get the big bus around the corner. This was RDRAM, it 'turns around corners rather slowly'.

To get this comparison even closer to reality, you've got to picture the bus going at double the speed of the motorcyclists. Alternatively you could think of 100 fighter planes from WW2 and a Jumbo Jet. The fighter planes are not as fast, but they can bank a whole lot faster than the Jumbo. The only significant difference between these examples and RDRAM is the fact that RDRAM banks faster if it goes faster, not the other way around.

This is the big trouble of RDRAM. It has very high data bandwidth, but high latencies as well. If software requires data that's spread all over memory, it has a serious performance problem. If data comes out of memory in big chunks, RDRAM can easily smoke SDRAM.

PC800, PC700 And PC600 RDRAM

PC800 is currently the fastest RDRAM available, but it is very difficult to produce it. The so-called 'yields' of PC800 RDRAM are very low and thus it's very expensive and in low supply. PC800 RDRAM runs at a clock of 400 MHz and it uses a DDR-way of transporting the data. Thus the 16 bit or 2 Byte data are transported at 800 MHz, explaining the '800' in PC800. The data bandwidth of PC800 RDRAM is 1.6 GB/s and thus double of PC100 SDRAM or 1.6 times as much as PC133 SDRAM.

The story is a bit different with PC700 and PC600. Currently the RDRAM of choice is PC700 RDRAM. It was actually invented very late last year, when it turned out that the yields of PC800 were rather low. Intel's 840 chipset is not able to use it; plugging PC700 into an i840-platform will result in the RDRAM running at PC600-spec, but i820 is able to make proper usage of PC700 RDRAM. This RDRAM-type runs at 356 MHz clock, offering around 1.4 GB/s data bandwidth.

PC600 is the cheapest and slowest RDRAM available for PCs right now, but it is still not coming at an attractive price point compared to SDRAM. If you think that PC600 stands for 300 MHz you're dead wrong. PC600 RDRAM runs at 266 MHz, resulting in a data bandwidth of 1.066 GB/s, which is identical to the data bandwidth of PC133 SDRAM.