Overclocking Series: Memory

In the previous article in this series I covered the basics of overclocking, what it means, and what it does to your processor. In this installment I will be covering all aspects of the computer memory subsystem. Let’s start with some definitions, they are always fun.

What?

ran•dom-ac•cess memory (rndm-kss)
n : the most common computer memory which can be used by programs to perform necessary tasks while the computer is on; an integrated circuit memory chip allows information to be stored or accessed in any order and all storage locations are equally accessible

Basically, RAM is used to store all the data that the processor needs to quickly access in order to run the programs you have loaded up. This data may include the actual programs, memory allocations for the programs, swap files used by the processor, files for the operating system, and whatever else is running on your computer at this specific moment. Compared to a hard drive, RAM is considerably faster, but in comparison cache memory on modern computer chips leaves RAM in the dust. Ram is a compromise between density and speed, fitting in between hard drives and cache. Now that we know what RAM is, what does it look like?

SDRAM

SDRAM stands for Synchronous Dynamic Random Access Memory, which was probably the oldest memory type that most people will remember. A SDRAM module has a total of 168 pins and 2 notches that differentiate it from the other memory types. Typical speeds of SDRAM range from PC-66, 100, and 133, however, there were a few enthusiast SDRAM modules that operated at frequencies s high as PC-150. SDRAM operates on the clock pulse generated by the system bus, capable of being access only once per clock cycle. SDRAM typically operates around 3.3 volts.

DDR SDRAM

DDR stands for Double Data Rate SDRAM. DDR operates on both the high and low signal sent by the system clock generator, what this means is that for every clock cycle, the memory can be access twice, effectively doubling the data rate, hence DDR. A DDR SDRAM module has a total of 184 pins with a single notch in the pin structure. In naming DDR SDRAM, there are two nomenclatures that are used, one stating the speeds that the individual memory chips are capable of, and the other stating the theoretical bandwidth provide by an entire memory module. The first nomenclatures is stated as DDR-200 which means Double Data Rate 200 MHz, which means the memory effectively runs at 100 MHz (remember, DDR effectively doubles clock speeds, so halve it to get the right value). So that means that DDR-400 effectively runs at 200 MHz. The other nomenclature used states the theoretical bandwidth possible with the memory module. For example, PC-3200 operates with 3.2GigaBytes per second of bandwidth. One addition this, PC-3200 also operates with DDR-400 chips, so the PC-3200 is just another way to give you more information on the memory module. DDR normally operates at 2.5 volts.

DDR2 SDRAM

DDR2 is the next evolution in computing memory and it contains a lot of innovative designs that have increased performance phenomenally. DDR2 basically is a die-shrink of DDR1 with quite a few optimizations built into the modules to increase efficiency and clock speeds. For example, PC2-3200 utilizes memory chips that run at 100 MHz as opposed to the 200 MHz of DDR. PC2-6400 uses chips running at 200 MHz, which is the speed of DDR-400, so you can see that there is a doubling of bandwidth at the same frequency. DDR2 chip speeds range from DDR2- 400, 533, 667, and 800. The module speed ratings range from PC2-3200, 4200, 5300, and 6400. Each module speed utilizes the chip speed in order, such as PC2-5300 using DDR2-667. DDR2 modules usually run at 1.8 volts. Now that we know the differences between the memory modules, lets talk about time.

Memory Timings

When you are shopping for memory, you may see some numbers that are a bit funny, such as 2-3-3-6-1T. These are called memory timings and they influence how fast that particular module can perform certain functions in order to operate. Normally those numbers come in the series of CAS-tRCD-tRP-tRAS-CMD. Here is a quick explanation of everything.

CAS: Column Address Select Latency-the time it takes to select between columns in memory.
tRCD: RAS to CAS Delay-the time it takes to switch between RAS and CAS access
tRP: RAS Precharge-time it takes to switch between rows
tRAS- the time it takes to go from precharge to activation of a row.
CMD: Command Rate-time between selecting the specific module and sending it a command

In general you are going to want to run the lowest timings possible to keep memory latency from becoming an issue and hampering your computer’s potential. In general, a good PC-3200 stick should be capable of 2-2-2-6-1T timings at 400 MHz and 2.5volts. For DDR2, a good PC2-6400 stick should be able to run somewhere around 5-5-5-10-1T at 800 MHz and ~1.9 volts. Now my knowledge of DDR2 is very sparse due to the fact that I am pro-AMD and haven’t had much experience with DDR2, but my facts are coming from digging around the internet, so if this is impossible, then let me know. Now it is time to discuss how all this stuff fits together to get a computer actually computing.

FSB

Depending on what processor and chipset your system is based on, it will have many different names for the Front Side Bus. This name goes back to when all computers had a Northbridge Chip that contained the memory controller that linked the RAM to the CPU. The FSB speed was the speed that this particular chipset would operate at, determining the maximum bandwidth between the CPU and the memory. Intel based systems still have a Northbridge while AMD based systems now have an integrated on chip memory controller. For both systems, the rules are the same, the FSB is essentially the effective speed of the memory with the bus speed being the speed between the memory and the processor. For Athlon 64’s they come with a HyperTransport link of 1000 MHz and Pentiums can vary from 667 MHz up to 1066 MHz. In general the HT link for A64’s doesn’t do well above 1000 MHz, but for P4’s you can push it as far as it’ll go, usually failing around 1300-1500 MHz, but this depends more on your chipset.

Memory Overclocking

Overclocking memory modules is very similar to processors in that you can push the speed up until it crashed and then increase the voltage. This will get you a little extra performance but it’ll kill you chips quickly when you start hitting 3.2+ volts on DDR or 2.1+ volts on DDR2. The other safer way to overclock these modules involves increases the timings that were discussed above. Whenever your memory causes a crash, bump up the timings a bit and that will solve the stability issue. Perhaps an example will help. I own a set of OCZ Platinum Rev2 PC3200 sticks, which run at DDR-400 tight timings of 2-2-2-5. Now if I were to set the speed to around 440 MHz, I can either pump up the voltage or drop the timings to something like 2-3-3-5. At these looser timings, my memory offers me more bandwidth and slightly better performance. Going further, when I hit something around 500 MHz I need to drop my timings down to around 2.5-3-3-5 and increase voltage a little bit, and they hold stable. The highest I’ve managed to push these chips was up to 532 MHz at 3-4-4-6 when the motherboard failed me, these chips are known to hit in the high 500 MHz. I only displayed different plateaus that I hit with my specific chips, but the principle is there. You need to start with the tightest timings your memory will run at the default speed, and slowly increase the memory speed till you start to become unstable, then loosen timings a bit. With practice you’ll learn what needs to drop and what can stay the same for your specific chips. Be careful with voltage, especially if your chips have no cooling, nobody likes to fry their chips.

That just about wraps up the entire memory subsystem, so between this and the previous review I have covered the entire processor and memory overclocking basics. I think I’m going to take a pause before I tackle video card overclocking and start a writeup on phase change cooling and the single stage unit I’m building next weekend. With every article I write, if you notice an error or know something better, let me know.

The Buzz {1 trackbacks/pingbacks}

  1. Pingback: Vapor Phase Change Cooling at Gomeler.com on April 18, 2006

The Conversation {1 comments}

  1. Russel {Friday March 17, 2006 @ 11:05 am}

    Chris,
    I have no objection to you modifying my idea and implementing it into your website. It is good to know people read your stuff over the web from time to time. Nice work so far by the way on gomeler.com. Feel free to browse my site in the future for more articles if needed.

Speak Your Mind

  • Comment Policy: No flaming unless directed at the author for good reason. All other flaming will be turned into a comment about ponies and rollerskates.