Obviously, you can’t go onto newegg and place an order for 8 billion cells to install into your
computer. That would be most tedious. To keep the farming metaphor going, cells are packaged into
large plantations of millions of cells, called memory chips. These are then placed, four to eight at a
time, onto a circuit board that connects them, through pins, to the motherboard. This entire apparatus
is called a module. Several organizations of memory on the module have been tossed around through the
years, such as SIMM. Today, the dominant form of memory is the Dual In-line Memory Module. This
arrangement has ~150-200 pins, depending on how modern the configuration is, and has capacities from
8 megabytes to 2 gigabytes. Notebooks generally use a modification on this design, called the Small
Outline Dual In-line Memory Module, or SODIMM.
How reliable is it?
Remember when the original Athlon64 FX-51 was released, and everyone who
wanted a high end rig had to shell out money for super-expensive ECC memory?
What
in the heck was that stuff, anyways? Well,
you’re about to find out. Normal, everyday desktop memory is very reliable. The memory controller
checks it for obvious errors at startup, and then the only manner of error catching the chip has is
‘parity’. This system adds up every bit of data in a byte, and assigns it a number of 1 or 0,
depending on if it’s even or odd. This is done every time information is written into the memory.
When it is read back, it is added up again, and this total is double-checked with the parity bit.
If it matches, then it goes on. If it doesn’t, then it’s deleted. Now, let’s assume you’re a big
business and you don’t like the idea of memory being arbitrarily thrown out without regard to how
critical that information is to your business. That’s where Error-Correction Code (ECC) comes
into play. It retains several bits of data for every byte and then, if an error is found, uses
an algorithm to correct it. These error checking bits are often stored in a separate chip on t
he module, which thus slows down the speed of the RAM, since the signal has to get past the
error checking chip before it can be used. In today’s desktops, though, the only error checking
you’re going to get is from the memory controller. It’s not exactly perfect, but RAM has advanced
to the point where it’s reliable enough to not really need any sort of in depth error checking,
unless you really need that information, such as with a business operation. So why did you have
to use ECC with the FX-51? Because it was a remarketed server chip that was never meant to be
sold to the desktop market, but AMD was forced to release the chip earlier due to pressure from Intel.
What types of RAM are used now, and what’s on the horizon?
Right now, the standard type of RAM found in the majority of computers is
DDR SDRAM. This is a double-bandwidth version of SDRAM. SDRAM differs from
your basic
everyday RAM in two ways.
First of all, it syncronizes signal transfers with the CPU clock.
This way, it can send a signal down the CPU-RAM pipeline without having to
wait for the
previous signal to reach the CPU. The
second is called bursting. It works by taking a row and then going
rapidly through all the columns in a memory chip and sending that information
off in
large bulk. Obviously, if the data is out of
order, this will lead to the data being discarded and then using
the old fashioned, one by one way. The rationale behind this is that most
data is written in order,
and thus can quickly be read.
The chance of error seemed a fair tradeoff. Currently, DDR2 is starting
to take shape as a replacement to DDR, and it offers much greater frequencies
at
a cost of higher latencies. Also on the horizon are
DDR3 and XDR. DDR3 still follows the same basic concept as the original
SDRAM, but is simply a logical progression of technology. It is already in
use in graphics
cards and could see an application in
desktops within the year. XDR is the latest offering by rambus, after
its great RDRAM flop. XDR is said to offer nearly five times the bandwidth
of current DDR
offerings and scale up to six gigahertz.
It will be used in conjunction with a cell processor in the PlayStation
3.
What should I look for in RAM?
First off, let’s go over the basics. You want the fastest RAM your motherboard can support.
If your motherboard supports DDR266, DDR333, and DDR400, buy DDR400. It’s just common sense.
Secondly, you’ll want a RAM that is equal to your front side bus. Normally this falls under the
“get the fastest RAM possible” category, sometimes it doesn’t. For example, with a processor
that has a 266 front side bus, you’ll want DDR533 (since it runs at 266 MHz). If it runs at 200,
get DDR400 (200MHz). That’s the simple part. Then comes the concept of memory timings. This
one is a bit more complicated to explain, but first off, let me say, lower timings generally
equal faster RAM. There are three basic RAM timings that are commonly listed, and a fourth is
sometimes included. The three are CAS latency, CAS to RAS latency, RAS precharge time, and
cycle time, respectively. CAS latency is the amount of time it takes to access a single column,
divided by the bus frequency. Generally, you’ll find CL’s of 2 to 5, depending on the type of RAM.
CAS to RAS latency is the amount of time it takes between the column to fire and the row to fire
a corresponding pulse. This, once again, is almost always between 2 and 5. RAS precharge time
is the amount of time the row takes to recharge before it can continue and activate another row.
Its range is also 2-5. Finally, cycle time is the time it takes between when one RAM access starts
and when another can be started. This can range anywhere from 5 to 16, depending on the quality of
RAM and if you’re using DDR or DDR2. Generally, the lower the combined latencies, the better. It
is important to note that latency doesn’t equal bandwidth. Bandwidth is like the amount of lanes
on the highway; latency is how fast you’re traveling down it. Optimally, you’d want RAM at the
maximum that your motherboard support, and have it running at 2-2-2-5 timings.
What’s the best kind of RAM out there?
For you typical folks, the best RAM usually comes from companies such as
OCZ, Crucial, Corsair, and Kingston. Crucial offers the best performing 2-2-2-5
DDR RAM, but the others are right at
Crucial’s heels. All of these companies also offer low latency RAM in the DDR2 flavor, though
those latencies, due to the limitations of DDR2, don’t go down to 2-2-2-5. For you overclockers
out there, once again, Crucial’s top of the line Ballistix RAM is a good idea, but if you’re
feeling a little dangerous, pick up some OCZ VX. This stuff, at normal voltages, doesn’t really do
much of anything impressive, but if at DDR533 and 3.6 volts, it does 2-2-2-5. Early benchmarks show
this RAM having an almost 10% advantage over other RAMs at the same frequency. Even though it
offers tighter timings, such an advantage is unheard of. So pick some up today if you want a killer setup.
Other concerns:
Generally, if you’re building a new system, you’ll want at least 512 MB of RAM, but preferably
a full gigabyte. It’d be advisable to sacrifice low timings in favor of more RAM, especially
if you have to choose between 512 of fast RAM or a gigabyte of slower RAM. Timings don’t make a
huge difference, so it just makes sense. Also, don’t worry about cooling your RAM. Unless you
crank up the volts on it to above 3.2 or so, it will never get hot enough to melt. After that
point, heatspreaders are very advisable. Also, since the Athlon64 has a built-in memory controller,
you will need a new CPU as well as a new motherboard if you plan on switching to DDR2 or DDR3,
once it’s available to Athlon64 setups.
I hope this article has helped you understand exactly what those expensive
little sticks do for your system. Hopefully you can use this as a guide to
chose your
RAM for your next setup,
or you can just use it to brag to your friends about how smart you
are. Either way, stay tuned for two weeks from now when I go over what motherboards
do
and how they work.
User Comments
- 55 Comments» This story has had 55 comments posted since April 07, 2005 at 11:45 AM EDT.