Computer Help and Spyware Removal Computer Help and Spyware Removal Computer Help and Spyware Removal Computer Help Forums Windows Startup Programs Database Virus, Spyware, and Malware Removal Guides Computer Tutorials Uninstall Database File Database Computer Glossary Computer Resources
 

Alert!  Have a problem and would like to ask us for help? To learn how to ask your question Click Here!
Stop!  Do you have popups or other malware infecting your computer? If so, Start Here!
Question?  Are you having trouble using this site? Then you should visit the New User Orientation Center!
  


Home · Sections · Popular · New Tutorials

Enter keywords that you would like search our tutorials for:
Please note that all keywords must be 4 or more characters long.

 
 

Understanding, Identifying and Upgrading the RAM in your PC
by Rimmer on 13th of Mar 2006   (Views: 95,202)
Print Tutorial Tell a friend
 
Add to del.icio.us! · Submit to reddit! · digg it!

Understanding, Identifying and Upgrading the RAM in your PC



Table of Contents:


Introduction
This tutorial is intended to explain what RAM is and give some background on different memory technologies in order to help you identify the RAM in your PC. It will also discuss RAM speed and timing parameters to help you understand the specifications often quoted on vendors' websites. Its final aim is to assist you in upgrading your system by suggesting some tools and strategies to help you choose new RAM. It is written from the standpoint of a desktop PC owner but most of the concepts apply to laptops and notebooks as well. Like all PC components, RAM has gone through a number of evolutionary changes (and some revolutionary changes) and only the RAM designed for your computer will work in your computer. There are literally hundreds of different RAM products on the market today so it is important to know the correct type for your system. I am attempting to write this for the non-technical user but the further I get the more I descend into techno-babble so you may need to learn a few terms along the way. I'll assume familiarity with common terms like Megabytes and Gigabytes etc. Finally I should say I'm not a memory expert, some of the information here I came across in the process of writing this tutorial, but I hope you will get as much out of this exploration of RAM as I have.

WARNING - this tutorial may contain more than you ever wanted to know about PC memory!

Back to table of contents

Tools Required


Back to table of contents

What is RAM?
The term 'RAM' is an acronym for Random Access Memory, this is the memory that your computer uses to run its operating system and any applications that you start. The name means that the computer can access information held anywhere (i.e. at a random location) in RAM by addressing that part of the RAM directly. In other words if there is some information stored in the 1000th location in memory the system does not have to read the information in the preceding 999 locations to get there, instead it can access the 1000th location simply by specifying it. The alternative would be called sequential access, an example of which would be accessing information stored on a hard drive - the drive can only read the information which is currently passing underneath the read/write heads, so if an application wants information in say sector 14 of a certain track the drive has no option but to read all the information on that track. The drive electronics then separates out the information from sector 14 and returns that to the application, the information from the rest of the track is discarded. So RAM is the quickest way of organising information for retrieval. Why not have everything on your computer stored on RAM? The answer is cost and volatility - RAM costs far more per GB than a hard drive and most RAM requires power to maintain the information stored in it (It's memory is "volatile"). If you had a RAM only computer you would have to reload the operating system and all your applications and data every time you switched off or there was a power cut. There are appropriate uses for this type of computer (e.g. thin clients) but generally a system is best served by a mix of RAM and Drive storage. Your computer needs different amounts of RAM for different tasks and the more applications you open the more RAM is required. You might think that sooner or later you will run out of RAM and then what? Well the operating system is designed to cope with that situation by 'paging' blocks of RAM to the Hard Drive. What that means is if the system is running out of RAM it takes the contents of a 'chunk' of RAM (usually the least used part) and writes it to a reserved area of the Hard Drive, called the Page File or Swap Space. The 'chunk' of RAM is then declared free for use. By using the swap space in this way the system normally never runs out of RAM. But as we have already discussed accessing information on the Hard Drive is inherently slower than accessing it from RAM so the result is the computer slows down. No-one likes a slow computer so what do you do about it? Obviously you want to add more RAM but to do this you need to match the additional RAM with what is already in your PC and you need to be sure your motherboard will support the kind of RAM you intend to use.
Back to table of contents

Different Types of Memory and some Terminology
In "the beginning" RAM came in the form of semiconductor chips which were individually plugged, or soldered, into the motherboard. That made up the original 640KB of system memory that DOS hung onto for so long. Now memory comes in clip-in modules, usually called memory sticks (not to be confused with USB Flash drives which sometimes go by that name). Memory sticks or modules have changed format over the years as their capacity has increased. Here is a list of the main types, in rough order of increasing complexity, along with other terms used to describe them:

  • Pins - Originally the name for the "legs" on a memory module, similar to the legs (or lead) on an electronic chip. The terminology has carried over to describe the number of contacts on memory modules even when they are not pins.

  • Bus - A group of electrical conductors linking different parts of the computer. Just as a bus in real life is a means of transporting large numbers of people from one location to another, so a bus in a computer is a means of transporting large numbers of signals (or data) from one integrated circuit to another. For example the front-side bus (FSB) transports data between the CPU and the Memory Controller (and to other destinations). Buses may contain subgroups that are also buses, for example the "Memory Bus" which links the Memory Controller and the RAM contains an address bus, a data bus and a command bus.

  • SIP - Single Inline Package - an obsolete type of memory module with a single row of (actual) pins along one side.

  • 30pin SIP
    A 30pin SIP module


  • SIMM - Single Inline Memory Module - an obsolete type of memory stick with power and data contacts on one side of the board. 30 pins.

  • 30pin SIMM
    A 30pin SIMM module


  • DRAM - Dynamic Random Access Memory - a generic term describing RAM in which the data needs to be refreshed continually. Very widely used in mass production PCs.

  • SRAM - Static Random Access Memory - a generic term describing RAM in which the data is retained without the need to refresh. Faster, larger and more expensive than DRAM.

  • Cache Memory - Cache is a term used to describe a number of different functions in the computer. Cache memory is a separate store of SRAM used by the CPU to store the most frequently used 'information'. The cache can be accessed more quickly than normal RAM so by storing frequently used functions/data there an overall speed increase can be obtained. There are different "levels" of cache depending on how close they are to the CPU, Level 1 cache is actually part of the CPU chip itself, Level 2 and Level 3 are external to the CPU usually on the motherboard.

  • FP - Fast Page RAM - A type of DRAM, introduced in 1987, which allows multiple accesses to a memory location without the need to re-specify the address.

  • EDO - Extended Data Output RAM - a type of DRAM which uses assumptions about the next memory access to pre-read data. Introduced in 1990 with approx 10% increase in speed over Fast Page. Sometimes known as Hyper Page Mode (HPM).

  • DIMM - Dual Inline Memory Module - a memory stick with power and data contacts on both sides of the board.


  • A DIMM
    A DIMM module *


  • Parity - Parity is part of an error checking process that can be used to verify the integrity of data stored in RAM. The data is stored, as is always the case in computers, in binary - a sequence of eight ones and zeroes which make up the byte of data. The Parity of that data byte is found by determining whether there are an odd number or even number of ones in the data. The parity of each data byte can then be stored by adding an additional bit of data, which can be either a one or a zero. This extra bit of data is called the 'Parity Bit'. In the 'even parity' system if the total number of ones in the byte is an odd number the parity bit is set to one, thus evening up the number of ones. (There is also an 'odd parity' system which is the other way round just to confuse us all). When the data is read back into the system the computer again calculates the parity of the data byte and compares that to the parity bit that was stored with it. If the calculated and stored parities agree then all is well (usually) but if they disagree then there has been an error and the data byte is suspect. To use parity error checking the RAM must be able to store nine bits per byte of information.

  • ECC - Error Correcting Code - RAM that has additional data storage for checksum bits to allow correction of errors 'on the fly'. The memory controller on the motherboard must support this function.

  • SDRAM - Single data-rate Synchronous Dynamic Random Access Memory - Introduced in 1997, memory access is synchronised to the bus clock and the bus is 64 bits wide. 168 pin modules.

  • RAMBUS - A revolutionary memory technology developed by Rambus Inc. based on a type of video memory and designed for use in PCs with Intel processors. Introduced in 1999.

  • RIMM - Rambus Inline Memory Module - the memory stick used in systems using Rambus RAM. 184 pin modules.

  • C-RIMM - The continuity module required to fill empty memory slots in the Rambus system.

  • RDRAM - Rambus DRAM - originally designed to operate at bus speeds of up to 800MHz but only 16bits in width.

  • DDR - Double Data Rate memory - a type of DRAM based on SDRAM technology that operates at twice the bus clock rate. It uses 184 pin modules. Released in 2000. This was the mainstream memory technology to the end of 2005.

  • DDR module
    A DDR module with heatspreaders *


  • SODIMM and SORIMM - Small Outline versions of DIMM and RIMM sticks. These are smaller and thinner memory modules, typically used in laptops. Modules have 144 or 200 pins.

  • SPD - Serial Presence Detect - circuitry (an EEPROM) built in to a RAM module which will send information to the BIOS and to the Memory Controller to inform it what type and how much memory is present, where it is and set up complex timing parameters.

  • Heat Spreader - A thin metal cover making thermal contact with the memory chips and assisting in cooling. Also allows manufacturers to put large logos and badges on the memory modules.

  • DDR2 - Double Data Rate2 memory - a type of DRAM based on DDR technology that operates at twice the clock rate. Released in 2004. This is expected to be the mainstream memory technology to the end of 2007. Not compatible with DDR motherboards. Modules have 240 pins.

  • DDR2 module
    A DDR2 module with large heatspreaders *


  • Dual Channel Memory - There is no difference between Dual Channel DDR Memory and ordinary DDR Memory, it's the motherboard that is different. Systems that have dual channel capabilities can effectively double the bandwidth of the Memory Bus by accessing the RAM modules in pairs. To use Dual Channelling you would purchase RAM in matched pairs and install it symmetrically across the memory channels.

  • Virtual Memory - This is RAM that is simulated by the system when running out of space in the real memory modules, it is actually space on the Hard Drive and as such is far slower to access than real RAM. Significant degradation of system performance occurs if more than a certain percentage of current data resides in virtual memory.

  • Latency - A delay interval. I was hoping to gloss over this but so many RAM companies quote latency figures it's bound to come up. See the section on Latency below.

  • Bank - A group of memory chips (not modules) that together can supply enough data bits to equal the CPU data bus. In the days of 30 pin modules memory chips only held one bit per address and you could only fit 8 chips on a module so to "fill" the 486CPU's data bus (which was 32 bits wide), you needed four modules to make one bank. The introduction of 72 pin SIMMs meant the whole 32bits of data could be supplied by one module, but when the Pentium CPU was introduced with a 64bit data bus so you needed 2 SIMMs to make a bank. This explains why owners of older Pentium systems always had to add or upgrade their memory in pairs. With the introduction of the 168pin DIMM this drawback was overcome and now there can be many banks of RAM on one memory module.

  • Rank - A row of memory chips. Usually a rank fills one side of a memory module so if your module has two ranks that means there are chips on both sides.


For an illustrated guide to memory modules see this link - http://www.crucial.com/library/memorymodid.asp

Back to table of contents

Common RAM Sizes
If I remember correctly the original SIMMs came in 256KB, 512KB and 1MB packages and cost a small fortune. In the days of Windows 95 a computer would commonly have several 4MB or 8MB memory modules. By the time Windows 98 came out these had become 16MB or 32MB modules to make up around 64MB in a good system. For Windows XP computers 128MB is a workable minimum depending on what applications you want to run, modules tend to be 128MB, 256MB or 512MB. Currently systems routinely ship with 512MB sticks and 1GB sticks are becoming more common.
RAM module sizes always double: 4MB, 8MB, 16MB, 32MB, 64MB, 128MB, 256MB, 512MB, 1GB, 2GB, etc. (since strictly speaking 1GB = 1024MB) You wont find any 96MB RAM modules for example, but your system may have an "unusual" amount of total RAM for a couple of reasons

  • The system contains different sized RAM modules.
  • For example your system shows 192MB of RAM. Most likely this was a system that started life with 64MB of SDRAM and was upgraded by adding a 128MB module.

  • The system has onboard video.
  • When a system has onboard video the video 'card' is integrated into the motherboard, but no video memory is provided, instead the system reserves part of the system RAM to act as video memory. How much memory is reserved depends on settings in the BIOS and is usually any standard size from 4MB to 64MB. The 'total' amount of RAM that Windows sees is then the size of the RAM module, less the amount reserved for video. This can result in some very odd-looking amounts for total system RAM. For example a system's total RAM may be reported as 352MB. This could be made up of one 128MB module plus one 256MB module less 32MB reserved for video.

Back to table of contents

RAM Speed
The RAM in Intel based computers is accessed by the CPU via the front-side bus (FSB) and the memory bus. Improvements in technology have changed the speed of the FSB dramatically. Similarly the RAM itself has a maximum speed at which it can reliably operate and this must be at least as high as the memory bus speed. Clearly there is a 'grey area' where the definition of reliable operation is made and this is one difference between 'low quality' and 'high quality' RAM - the high quality RAM is likely to operate with close to 100% reliability significantly above the bus speed for which it is rated. This is one of the regions that overclockers exploit to boost their system performance - increasing the FSB speed to take advantage of the performance 'buffer zone' of good quality RAM.
Obsolete SIMM modules (EDO or FP) were rated by the response of the chips on the module e.g. 70 nanosecond. Older SDRAM sticks were rated as 66MHz, 100MHz (PC100) or 133MHz (PC133) speeds. Original DDR was rated at PC1600 or PC2100. Current DDR is rated as PC3200. Original RIMM modules were PC600, PC700 and PC800 speeds. Current RIMM modules are rated PC1066. Original DDR2 is designed for 400MHz, 533MHz and 667MHz speeds. Latest DDR2 is designed for 800MHz operating speed.
What does this mean in terms of quantity of data that could be transferred per second? Taking information from a variety of memory manufacturers sites we can make a table to show some comparisons of peak memory performance:

Type of RAM PC Rating RAM Speed
in MHz
Peak Throughput
in MB/sec
SDRAM PC100 100 800
SDRAM PC133 133 1100
RIMM PC800 400 1600
RIMM PC1066 533 2100
DDR PC1600 200 1600
DDR PC2100 266 2100
DDR PC2700 366 2700
DDR PC3200 400 3200
Dual Channel RIMM PC800 400 3200
Dual Channel RIMM PC1066 533 4200
Dual Channel DDR2 PC2-3200 400 6400
Dual Channel DDR2 PC2-4200 533 8400
Dual Channel DDR2 PC2-5300 667 10600
Dual Channel DDR2 PC2-6400 800 12800

Back to table of contents


Memory Latency
Now we are getting technical... In the simplest terms Latency is delay. In a computer it is the inevitable pause between asking for some data and having that data available to be used. To give a real life example I looked at the Newegg site and found a couple of pairs of 1GB DDR PC3200 RAM modules which would look nice in my system, but am I better off ordering the OCZ Gold RAM with 2-3-3-8 timing or the Mushkin High-Performance RAM with 2-3-2-6 timing? What the heck do those numbers mean anyway?
I'll try to offer a simple explanation, but if all this terminology really makes your eyes glaze over then just remember if all else is equal then the lower the numbers are, the better the RAM will perform. Then skip to the next section. For the rest of us here goes:
Data is stored in your computer's memory chips in a similar way to storing data in a spreadsheet - it is organised in rows and columns and is sequential along a row. For example in a 16Mbit chip there would be 4,194,304 address locations or "cells" arranged in 2048 rows and 2048 columns. Each cell in the chip holds four bits of data. Part of the chip might look like this:

Address Column 1 Column 2 Column 3 Column 4
Row 1 1101 1001 0100 0110
Row 2 1011 1000 1100 0000
Row 3 1111 1010 0101 1100
Row 4 1011 0011 1010 1100

Keep in mind the ones and zeroes are represented by voltage levels in the form of electrical charge in a capacitor in the real chip and that these are being refreshed repeatedly. To read the data in a particular cell in our 2048x2048 chip the computer needs to indicate which Row the data is in and then indicate the Column that holds the cell containing the required data. It does this by issuing (in binary) an "address" for the Row and then the Column using the same 11 bit address bus in each case (because it takes 11 bits to count up to 2048 in binary). For example to read the data in the green cell in the diagram the computer must first address Row 3 (highlighted in yellow) and after that address is fixed it addresses Column 2 (highlighted in blue). Can you see a delay here already?
Because everything is taking place at mind-boggling speed there has to be a 'pause' between issuing the Row address and issuing the Column address to allow the voltages to stabilise. If the pause is not long enough the Column address could be corrupted by voltage remaining from the Row address resulting in the wrong data being read. Both the Row address and the Column address are "latched" into the memory chip by signals called "strobes", so we have a Row Address Strobe (RAS) and a Column Address Strobe (CAS). The necessary delay between them is called the RAS-CAS delay or TRCD. All the delays referred to are measured in clock cycles rather than actual time intervals.
Once the cell data (1010) has been read the next four bits of data required are (usually) in the same Row but in the next Column along so only the Column address needs to be changed. Again there must be a delay while the previous address 'evaporates' and the new address voltages stabilise before the address can be latched. This delay is called the CAS Latency or CL.
Similarly, once all the required data in a row has been read a different row needs to be addressed. Since the contents of the cells have to be refreshed and this is done on a Row by Row basis there is another delay required called the RAS Precharge time or TRP.
The memory in your computer is not active all the time and during the (tiny) intervals of inactivity certain parts of the memory are shut down to help prevent the chips from overheating. This introduces a delay when they need to be activated again. This is called the "Active to Precharge" delay or TRAS.
Finally there is another delay that must be allowed for, which is the delay between the computer selecting a particular memory chip (as there will be many chips making up your RAM) and being able to issue a command to that chip. This is called the Command Rate and for some reason seems to be without an acronym.
So coming back to the real world and our examples from Newegg can you guess what the quoted "timing" numbers are? That's right - they are the delays or latencies we've just discussed. Here's how a typical timing specification might look:
2-3-2-6-1T

  • The first number (2) is CL, the CAS Latency. This value has the most effect on system performance. It is usually 2, 2.5 or 3 for DDR memory.

  • The second number (3) is TRCD, the RAS to CAS delay. Not as critical as CL, it is usually 2,3 or 4 for DDR memory.

  • The third number (2) is TRP, the RAS Precharge delay. This value has similar effects to TRCD.

  • The fourth number (6) is TRAS, the Active to Precharge delay. This value affects stability more than performance. Typically between 5 and 8 for DDR memory.

  • The last figure (1T) is the Command Rate and is often omitted, as it is almost always 1T. For slow RAM it would be 2T. Strangely some overclockers get very good results by deliberately setting the Command Rate to 2T even with low latency RAM as it allows them more flexibility when tweaking the other latencies and bus speeds.


Note that the numbers are valid only for the rated clock speed and will also be quite different for different types of RAM.

The real life examples were 2-3-3-8 and 2-3-2-6 both of which are good for DDR at 400MHz, but I can now see that the Mushkin 2-3-2-6 RAM may be more stable under heavy load than the OCZ RAM. So I can check the price differential and consider whether that is likely to be an important factor for my computer usage.
These latencies and timing figures have to be entered in the BIOS when the RAM is installed - the reason you've probably never had to do this is they are programmed into the SPD EEPROM on the RAM module and the BIOS reads the values automatically (unless set to manual). If you have two RAM modules with different timing figures then the BIOS takes the highest figure (slowest setting) to work with. The timing figures are manufacturers recommendations for successful operation, there is no law which says the memory module will not work with different timing and this is fertile ground for overclockers to experiment. They switch the BIOS memory settings to Manual so the SPD is ignored and insert their own figures in the BIOS. I am NOT suggesting anyone attempt to do this, unless you know exactly what you are doing. You can destroy your RAM with inappropriate settings.


Back to table of contents

How to Identify your RAM
To properly identify your RAM you need to know the total memory size in Megabytes(MB), how many memory modules there are, the type of RAM you have, its speed and ideally its manufacturer. There are a number of different ways you can find some or all of this information.

  • Check the Paperwork
  • The purchase invoice/docket may specify the RAM used. Or you may have a brochure with system specifications on it. Usually these are vague but they can provide a starting point.

  • Read the POST Messages
  • As the computer boots it performs a Power On Self Test (POST) and this generates various messages about system components including the memory. As the system boots, depending on BIOS settings, you may see a report of the 'Main Processor' type followed by a 'Memory Testing' result which shows how much RAM has been detected. Pressing the 'Pause' key at the top right of your keyboard, at any time, will halt the display so you can read it. Press Enter to continue booting. At some point, depending on BIOS settings, the system may draw a box containing the main system parameters. In the top of the box it will list CPU information on the left and memory information on the right. Again using the 'pause' key will give you time to read it. In the lower part of the box, following information about drives, display type and I/O ports is some information about the physical RAM. In my example system it reports there is SDRAM at ports 2, 3, 4 & 5. This tells me I have 4 sticks of SDRAM making up my 256MB.
    Some systems may not show the POST messages, instead being set to display a manufacturer's logo (look for the settings "Quick Boot" and "Quiet Boot" in the BIOS). Either way in modern system the display may go by so quickly you don't even see it.

  • Ask Windows
  • If you use Windows XP you can check how much RAM you have using the System Information tool. Click Start >> All Programs >> Accessories >> System Tools >> System Information. This will open a 'System Information' window and in the summary it will tell you the total amount of RAM recognised in your system, as circled below. Unfortunately this is all it tells you about your RAM.


    System Information Window
    Total amount of RAM in the System


    The same information can be obtained in all versions of Windows (since Win95) by right-clicking the 'My Computer' icon and clicking on 'Properties'. The 'System Properties' window opens and displays information including the amount of system RAM Windows has detected.

  • Use a System Information/Diagnostic Tool
  • Refer to Bleeping Computer's compendium of Recommended Freeware for a range of diagnostic and information tools: Freeware Replacements for Common Commercial Applications

    • As an example let's use SpeedFan to check what RAM I have: Launching SpeedFan from its desktop icon reveals I have version 4.27 installed. The program takes a few seconds to gather information then settles down at the 'Readings' screen where it shows you fan speeds and component temperatures. Click on the 'Info' tab and click the 'Read info' button. This gathers information and displays it in the 'DIMM info' box. Scroll up and down to see all the information. As shown below SpeedFan tells me I have only one RAM stick (DIMM #0) and it is DDR, it does not store parity information, and the total size is 512MB. If I had more than one stick there would also be information for DIMM #1, DIMM #2, etc.

      SpeedFan Info Window
      SpeedFan 'DIMM info' Box


    • Now let's have a look using Everest Home Edition: Start Everest, in the 'Menu' column on the left hand side click on 'Motherboard'. The right hand window should change to show CPU, CPUID, Motherboard, Memory, SPD, Chipset and BIOS icons. Click on the cryptically named 'SPD' icon (for an explanation see the SPD entry in the previous section). As shown below this reveals a wealth of information. The single entry for 'DIMM1' under device description shows I only have one memory stick. The details below show a serial number, date of manufacture, size (512MB), type (DDR SDRAM), speed (PC3200) and other information including the Manufacturer's name (Kingston Technology Company Inc.) and a link to their website. It incorrectly reports I have four DIMM slots when in fact my motherboard only has two. Note that Everest Home Edition is no longer under development and some of the information may be out of date.

      Everest SPD Information
      Everest Memory Module Properties


      Additional information about the Memory Controller can be found in the 'Motherboard' window by clicking on 'Chipset' and highlighting 'North Bridge'. This will indicate for example whether the Memory Controller can support Dual Channelling, which you will need to consider if you are upgrading.

    • Finally let's check out our RAM using the freeware program CPU-Z. If you downloaded this from the address in the "Required Tools" section you will have a zip file somewhere in your computer. Extract the zip file to a directory called 'CPU-Z' or some name you can remember easily. That's all you need to do, there is no installation process. To run CPU-Z navigate to the CPU-Z folder and double click the cpuz.exe file. This will run the program and present you with a report window which looks like this:

      CPU-Z first screen
      CPU-Z Opening Screen


      We're interested in the RAM at present so click the 'Memory' tab. Here it tells me I have 512MB of DDR SDRAM on a single channel, running at 133MHz. It tells me the ratio of the FSB to the DRAM clock is 3:2 when I would have expected it to be 1:1 (I fixed this later - see under "Look in the BIOS" below). This tab also tells me the timing figures are 2-2-2-6 @133MHz. (See the 'Memory Latency' section for an explanation of these figures). Now click the 'SPD' tab.
      Information for Slot #1 is displayed, a pull down menu lets you select slot #2, slot #3, etc., which in my case say "Empty". The rest of the display looks like this:

      CPU-Z SPD screen
      CPU-Z SPD Screen


      Which shows me my Kingston Value RAM has some pretty ordinary latencies at 200MHz, but otherwise doesn't tell me anything new.

  • Go to the Computer Manufacturer's Website
  • If you have a 'brand name' computer, most manufacturers websites allow you to search by model name or number and find detailed specifications of your system in its original condition. They often include FAQs and Support pages that will give you information about what memory is compatible and how to upgrade. Some of these are excellent and include videos of how to open your case and how to remove and/or add memory. Naturally they will usually only suggest their own brand name memory as an upgrade.

  • Use an Online Configuration Tool
  • Major manufacturers and suppliers of RAM offer downloadable 'Memory Advisor' or 'Configurator' tools that can scan your computer, display the memory specifications and recommend a compatible upgrade. I'll take a look at some of these in the "How to Upgrade your RAM" section.

  • Look in the BIOS
  • Consult your motherboard manual if you don't know how to enter the BIOS - on most systems you press the 'Del' key as the system starts to boot. There are many different formats for the BIOS screen so I cannot be accurate about what options you may see available. On my own system I have American Megatrends Inc. BIOS (AMIBIOS) and clicking on 'Standard BIOS Features' showed 'System Memory : 512MB' with no other information. Looking under 'Advanced BIOS Features' >> 'Advanced Chipset Settings' >> 'Northbridge Config' I found "DRAM Frequency : 266 MHz" which is a manual setting, overriding what is stored in the RAM modules SPD. I changed this setting to 'Auto' so the BIOS would read the SPD for the recommended value. After booting I ran CPU-Z again and the bus ratios had changed to 1:1 and the memory frequency was now 200MHz. (Notice there is some confusion over what frequencies are which. Because the RAM is Dual Data Rate the memory bus runs at 200MHz in this example but the equivalent DRAM Frequency would now be 400MHz.)

  • Open the Case and Read the Labels
  • A quick look inside the computer will tell you how many RAM sticks you have already. If nothing else will give you concrete information then you can power off the system, observe static handling precautions (see below) and remove the RAM already in there. If you are lucky the RAM stick(s) will have a label giving you appropriate information about the size, speed, manufacturer and possibly some warranty information. Some manufacturers are more cryptic than others and may only give you a part number. Some will have no label at all in which case you would have to track down information on individual memory chips using the part numbers printed on them. Following that process is beyond the scope of this tutorial.

Back to table of contents

How much RAM do you need?

"640K should be enough for anybody." - Bill Gates 1981


Ironic that this quote should come from the founder of Microsoft - the company whose Windows operating system goes through computer resources like kids go through birthday cake. Users of Windows XP will quickly realise that it does not run properly on the minimum system requirements of 64MB RAM and many people recommend 512MB as a minimum for running even medium complexity applications. Budget systems are still being released with 128MB of RAM to run XP Home and those owners will soon be wanting to upgrade their memory to make their systems more responsive. So how much RAM is enough for anybody these days? Well there is lots of advice available on the Internet including detailed analyses covering different Operating Systems such as the 'Kingston Ultimate Memory Guide' (see references). There is also a lot of nonsense written about RAM requirements, for example one site said 512MB is adequate for a Windows XP system "if you only run one application at a time or if it's your grandmother's computer" - I'm guessing the author doesn't own a "PC" but instead owns a "Gaming Rig".
To cut a long story short you should look at the maximum RAM your system can accommodate, the maximum you can afford to spend on the upgrade and then aim to at least double what you have now. Assuming you're running Windows XP on a PC with 128MB then if you're an average user on a tight budget aim at adding 128MB or 256MB. If you're an average user that does some digital photography and some gaming look to have 512MB in your machine or if you do more complex stuff or play some serious games on your PC make that 1GB. If money is no object, make it 2GB and if you're a gaming freak... well you won't be reading this tutorial anyway.

Back to table of contents

Can you have too much RAM?

Yes you can!

  • Windows 95 and Windows 98 (first edition) do not recognise more than 256MB of RAM - adding more than this can slow down your system markedly. There is however a fix for this detailed in an AumHa article - see the references section. If you have more than 1GB of RAM (though I can't imagine why you would) Windows may not start.
    See the Microsoft knowledgebase article here: http://support.microsoft.com/?kbid=184447

  • Windows 98SE and Windows ME have trouble with more than 512MB RAM - you may get "Out of Memory" errors or other symptoms.
    See the Microsoft knowledgebase article here: http://support.microsoft.com/kb/q253912/

  • Windows 98SE and Windows ME will not run well with more than 1GB of RAM. This may cause "potential system instability" according to Microsoft.

  • Some versions of the Award BIOS slow down your system markedly when more than 768MB of RAM is installed.

Back to table of contents

How to Upgrade your RAM

  • Consult your Motherboard Manual

  • There are five important things to know about your motherboard during RAM upgrades -
    • How many RAM slots do you have altogether?
    • How many RAM slots are free?
    • What is the maximum amount of RAM the motherboard will address?
    • What is the maximum size of each memory module you can fit into a slot?
    • Is dual channelling supported?

    You might think you could calculate the maximum amount of memory supported from the other parameters but they don't always follow simple arithmetic. For example some motherboards have three slots, each capable of taking a 1GB module, but the maximum addressable RAM is 2GB. If you do not have a manual available some of this information is obtainable by simply taking the cover off the PC and shining a torch (flashlight) inside, for the rest you will need to gather this information from the motherboard manufacturer's website.

  • Flash your BIOS

  • I'm a little uncomfortable including this because if you are not very clear on what you are doing the results may be disastrous. However I have read that upgrading the BIOS can dramatically alter the maximum size of the memory modules you can use in limited systems and also bugs in older versions of your BIOS may be the cause of performance problems. Consult your PC or motherboard manufacturers website for a "How to" on BIOS upgrades (sometimes called "flashing the BIOS"). If your PC already supports 512MB or 1GB modules then you probably don't need to worry about this.

  • Use a 'Configurator'

  • There are online tools provided by major RAM manufacturers and suppliers, which will analyse your system (some automatically) and recommend RAM products that are compatible. Below I have written out my experiences trying a few of these tools:

    • The Corsair Configurator - http://www.corsairmemory.com/corsair/configurator_search.html

    • Since I had the manual handy I knew the model number of my motherboard and chose to search by motherboard in the selector. Every time a choice is made you have to wait a few seconds while the whole frame blanks out and re-appears with your choice displayed, which is a little off-putting, but it did allow me to select my brand and model number and then press the 'GO' button. You might want to go and get a cup of coffee at this point because you need to sit and read for a while to digest the results which are displayed - rather like a Logies award night these include sections for the "Most Popular", "Best Overclocking", and "Lowest Latency" memory modules along with a list of fun facts about my motherboard and it's chipset including a link to the manufacturers website if I want to double check. Clicking on any of the categories gives more readable information on the right of the frame. Below this is a more serious section "A Complete List of Modules Compatible with your Product" which listed lots of modules. One problem was they were listed in a box inside a frame on the webpage, which on my display was about the size of a couple of matchboxes. They were quite legible though. The recommended modules shown in the categories were kits of 2 x 512MB PC3200 184pin DDR ideal for taking advantage of the boards dual-channelling capabilities. Curiously some of the modules recommended were listed as 240pin DIMMs, which could not be plugged in to my motherboard.

    • The Crucial Memory Advisor - http://www.crucial.com//

    • I entered my PC manufacturer (missed it the first time round), failed to enter the model because I didn't know the model number of my QBIC so I used the other option of searching for a motherboard. I found my Soltek motherboard after scrolling down the list and after clicking 'Go' I was presented with a list of Crucial DDR modules ranging from single 128MB sticks to pairs of 1GB sticks (to take advantage of dual channelling). Most of the modules were either PC2700 or PC3200, which fits well with what I have at the moment. Clicking the 'Performance Memory' tab showed me some PC4000 modules that, strangely, weren't listed under the 'All Compatible Upgrades' tab. If you really can't decide there is a 'Crucial Recommends' button that picks out one module, in my case it chose a 512MB PC3200 DDR, which would fit very nicely.

    • The Kingston Memory Search - http://www.kingston.com/

    • This fell at the first hurdle since it didn't list Soltek as a manufacturer under 'MemorySearch'. Most common manufacturers are listed.

    • The Crucial System Scanner - http://www.crucial.com/

    • On the right hand side of the Crucial homepage is a blue 'Scan My System' button. This leads to a software tool that has to download to your system and run. There is a tick-box to agree to their terms and conditions, clicking the continue button leads you to a 'Download the Crucial System Scanner' button which starts the download of a file CrucialScan.exe of about 170KB. They recommend saving it to your desktop.
      Running the program opened a browser window and displayed the slightly disappointing result "The Crucial System Scanner was unable to determine the exact Intel model that you have." But in the left hand frame it did display my current memory as 512MB Non-Parity DDR PC3200 along with the (incorrect) assertion that I had three empty RAM slots.

    • Others

    • The OCZ "Ultimate Memory Configurator" - http://configurator.ocztechnology.com/index.asp
      The "Mushkin Advisor" - http://www.mushkin.com/doc/products/advisor.asp

  • Choices

    • Do you keep the existing RAM?

    • This depends on what speed it is, how many slots you have and whether you are dual channelling. If your original RAM is slow then the new RAM you add will run at the same speed as the original - if the motherboard supports significantly faster RAM it would almost certainly be worth replacing the old RAM. If you have a limited number of RAM slots you may have to bump the original RAM just to get the quantity of RAM you want in the PC. If the PC is dual-channel capable but you only have one RAM stick in there then a pair of upgrade sticks (one for each bank) would be best - do NOT put the original RAM back in a spare slot because then the system will revert to single channel mode. Put it in the anti-static container, label it and give it to another computer owner who can make good use of it.

    • What Series RAM should you buy?

    • Always buy good quality, brand name RAM - one reason for this is confidence that you are getting what you pay for. In a huge market like this there are some suppliers willing to over-rate their products to make a sale, working on the assumption that most people will never know the difference. If you are keeping your existing RAM it would make sense to buy the same brand of RAM to upgrade because you will get the 'best fit' if you do. This becomes more important as you run more advanced applications and games. Also you will find that many manufacturers divide their RAM into series called 'Gold' or 'Platinum', 'Pro' or 'XMS' for example. The higher priced series reach higher performance criteria than the standard modules. If you run business applications the cheapest series will be fine. If you want to game you should check the price differentials and consider a higher performance series. If you want to overclock then you're probably eyeing the top of the range.
      Looking past the hype we need to remember that the difference between "value" RAM and "ultra low latency" RAM is, at best, about 10% in performance terms. Once again, for the average user that's hardly worth the cost, but for the gamer/overclocker that may be worth it's weight in gold. Even when looking at the most important latency CL according to the 'RAM Guy' at Corsair "the bottom line is, moving from CAS-3 to CAS-2 will offer a percentage performance increase in the low single digits for most applications." (see references)

      Fashion is creeping in to RAM design now - do you want your heat spreaders in black or silver? Like some swirling coloured LEDS on your RAM modules? Or want them to glow a mystic blue? No problem! Some manufacturers build a diagnostic function into the LED displays but mostly they are sheer gimmickry. For example one series have LEDs which display scrolling "parametric data" like frequency, voltage and temperature or "your own personal message" - I suppose it might impress the neighbour's kids for a while.

      Xpert module
      LED display module *


    • How much RAM can you afford?

    • Obviously that depends on how deep your pockets are. At present RAM is relatively cheap and it may be tempting to "max out" your motherboard but you should bear in mind the diminishing returns from adding more and more RAM. Installing 2GB of RAM instead of 1GB costs twice as much but it will not double your computer's performance, it may only make a difference of a few percent. If your computer usage is mostly high-end gaming then that few percent may make a big difference to you and it's worth considering. If your usage is browsing, office applications and light games then it will make no noticeable difference and therefore would be a waste of money.

  • What to Order

  • Putting together all the information gathered above, along with your choices, you should now have a clear idea of what you want to put in your system so you can shop around for the best deal. Make a table like the example here so you have all the details at hand:

    No. of RAM Sticks Size of Each Stick RAM Type RAM Speed Latency Preferred Brand Series Total Amount of RAM Add or Replace? Price
    2 (matched pair) 1GB DDR PC3200 2-3-2-6-1T xyz Iridium 2GB Replace $???

    If you are thinking of buying something expensive look for reviews of your chosen RAM such as the ones at Extreme Overclocking - http://www.extremeoverclocking.com/articles.php or PCSTATS - http://www.pcstats.com/articles.cfm before you buy.

  • A note on Dual Channelling

  • I have come across some contradictory information on Dual Channelling of RAM. Remember this is a function of the motherboard, not the RAM, but the RAM must be symmetrically placed on the two memory channels and it has to have "matching" characteristics. Exactly how they match is not clear. RAM manufacturers sell boxed pairs of matched RAM for dual channelling yet according to Intel the memory does not have to be the same brand, have the same latencies or even the same speed to dual channel. They also say you can dual channel using say two 256MB RAM sticks on channel A and one 512MB stick in channel B. In the end the motherboard "decides" whether the dual channelling will be implemented or not. If your computer has (like mine) one memory module in a dual channel system, then adding another module of the same size, and sensibly the same speed, should enable the system to dual channel, but it may not. If the modules are not sufficiently "matched" the system will continue to run with single channel access and most of the benefit of the upgrade would be lost.

    Matched Pair of DDR2 Modules
    Matched Pair of DDR2 Modules *


    Motherboard manufacturers try to make it easy for us to install the RAM by colouring the RAM slots differently for different channels. So you might have a motherboard with four slots, two of them blue and two of them green for example. Unfortunately some manufacturers use the colour to indicate which channel the slot belongs to while others use it to show which is the first slot on each channel. If you get it wrong you can still use all your RAM but you won't have the speed benefit of Dual Channelling. Check your motherboard manual for their recommendation for where to install the RAM modules. After installation use a utility like CPU-Z to check whether Dual Channelling is active or not.

  • Install the New RAM

  • Once you have purchased and received your new RAM all that remains is to install it, which is probably the simplest part of the whole process. Do NOT take the new RAM out of its container until you have read the static precautions detailed below. It's probably best to open the RAM container after you have your computer powered down, the case opened and your static strap attached (if available). Just before inserting or removing any components pull the power cord out of the back of the computer and wait for at least 30 seconds so there is no chance of any voltages left inside the case to cause damage. Then all that is required is to unplug and remove the old RAM if it is being replaced. For modern DIMM slots pressing down on the plastic latches at the ends of the RAM slots will eject the RAM module. Older systems may have less user-friendly mechanisms, but all of them use a mechanical latch at either end of the module. To remove the module you must disengage the latch, do NOT try to just lever the RAM module out.
    Inserting the new RAM is a matter of choosing which slots to use (if your are not using Dual Channelling then just use the next available slot). Hold the module close to and centred on the slot and check the notch in the RAM module lines up with the "key" in the slot to make sure you have the module the right way around.

    Slot key
    RAM slots showing the key (arrowed)


    Then press down (towards the motherboard) on the latches at either end of the vacant slot to put them in the 'open' position. Insert the module in the slot with the gold contacts towards the slot, double check it's the right way round, then push it firmly down into the slot using firm thumb pressure equally on each end of the module. If all is well the latches will pop up to lock the module in place. Do the same thing for any other RAM modules to install and you're done.
    Put any removed modules in the RAM container, take off your static strap, close the computer case and reconnect the power. The system is ready to go.

    For a rather simplistic Flash presentation on installing RAM see this link: http://www.kingston.com/support/howto/default.asp

  • Reboot and check everything is Okay

  • As you reboot your system you may see POST messages reporting the amount of memory present. If Windows will not boot you can use the bootable disc made with Memtest-86 to test the memory. Make a note of any error messages and revert to the original RAM. Then check the troubleshooting sections of your RAM manufacturer's website. When Windows has loaded okay run CPU-Z again to check the new memory has all been recognised and is running at the correct speed and in the correct mode. Then enjoy!

Back to table of contents

Static Precautions

When handling RAM, as with other computer components, care needs to be taken to avoid damaging the component through the discharge of static electricity that builds up on your body or clothing. Static is especially a problem during dry weather and if you have synthetic carpets or clothing. For example a synthetic pullover (sweater) would be a bad choice of garment to wear while upgrading memory, a short-sleeved cotton shirt would be a much better choice. The best way to combat static while working inside your computer is to wear a static strap attached to the chassis and worn on your wrist during the whole process. Disposable static straps are available for a few dollars; professional versions may cost $30-40. Alternatively if you can maintain good contact between yourself and the metal chassis for most of the process and try not to move around too much then that may be adequate without a strap.

Technician's Static Strap
Professional Static Strap

Back to table of contents

Conclusion

I hope this tutorial has informed you of some of the different types of RAM found in computer systems, explained some of the intricacies of RAM timing, shown you how to identify the RAM in your own computer and helped you to choose the correct quantity and type of RAM when upgrading.
Back to table of contents

References and Credits


* Images of Corsair memory products are used with the kind permission of Corsair Memory.

Back to table of contents



Rimmer March 2006.
http://www.bleepingcomputer.com


Add to del.icio.us! · Submit to reddit! · digg it!


Created: March 13th, 2006 at 04:13 pm

This article is published and created for http://www.bleepingcomputer.com, otherwise known as Bleeping Computer, and is covered by all copyright laws. All articles on this website are copyright ©  2003-2008 by Bleeping Computer, LLC. All right reserved. Use of these articles is limited to viewing and printing for personal use only. If you would like to use this material or portions of this material for other purposes you must receive explicit permission from Bleeping Computer before reprinting or redistributing this article in any medium.
Top Top
We have a total of (124) Tutorials in our Database & (19,622,411) Total Views
Google
Web BC



 







Advertise   |   About Us   |   Terms of Use   |   Privacy Policy   |   Contact Us   |   Site Map   |   Chat   |   Tutorials   |   Uninstall List
Discussion Forums   |   The Computer Glossary   |   Resources   |   RSS Feeds   |   Startups   |   The File Database   |   Virus Removal Guides


© 2003-2009 All Rights Reserved Bleeping Computer LLC.
PGT: 0.08161 Queries: 8