CIS 107a: Introduction to Hardware Concepts

Chapter 6: Upgrading Memory

 

Objectives:

This chapter discusses features and functions memory. The objectives important to this chapter are:

  1. Types of physical memory housed on the system board and expansion boards
  2. How to upgrade the memory in your computer
Concepts:

The chapter begins with a statement that physical memory in a computer can be divided into two categories:

  • RAM - Random Access Memory, which is temporary, but can be written to
  • ROM - Read Only Memory, which is static, and cannot be written to (except with special equipment, or special procedures. More on this below.)

ROM chips are generally meant to hold instructions that do not change very often. Some of these chips hold the BIOS of the computer, which is not meant to change until the manufacturer makes an upgrade available. When this happens, the chip may be replaced with a new one, or it may be reprogrammed by one of several special processes, such as a Flash BIOS upgrade. Chips that can be reprogrammed are called EPROM chips (erasable programmable ROM) or EEPROM (electrically erasable programmable ROM) chips. Memory on EEPROMs is referred to as Flash Memory. Data stored in ROM memory does not require power to be retained on the chip, but it does require power to use it or to reprogram it.

RAM comes in several sorts of packages. Some RAM chips are soldered onto motherboards or on expansion cards. RAM that is meant to be replaced by the user is more often contained on a SIMM (Single Inline Memory Module) or a DIMM (Dual Inline Memory Module). SIMMs have chips on one side of a small card, while DIMMs typically have chips on both sides of the card. DIMMs also have little notches in their connectors, to identify whether they use 3.3 volts or 5 volts, and to identify them as registered (RFU), buffered, or unbuffered. Different systems will require different DIMMs.

A newer technology called RIMM uses Direct Rambus DRAM. A system that uses these modules must have either a RIMM or a dummy RIMM (called a C-RIMM, or Continuity RIMM) in each of its RIMM slots. In other words, if you have RIMM slots, you must fill them all with either RIMMs or C-RIMMs. You may note that there is no definition of the RIMM acronym here. It is not really an acronym, but a trademark term that belongs the the Kingston Technology company.

SIMMs and DIMMs can be either DRAM (dynamic) or SRAM (static). The word static is misleading here. DRAM chips need to have their data refreshed dynamically every few milliseconds (often, every 4 milliseconds) with a jolt of power. SRAM chips do not need to have this periodic jolt, and will retain the data placed on them without the jolt, but only until the power is turned off on the computer. In this respect, DRAM and SRAM chips will both lose their data when the computer is turned off. SRAM chips are more expensive, but give faster access, so they are used where this speed advantage is necessary.

Some DIMMs support dual channeling, which allows the system memory controller to read two DIMMs at the same time.

One place a speed advantage is useful is for cache memory. A cache is a place where data or instructions are placed that the computer expects to need soon or often. A separate controller chip was sometimes assigned the task of placing frequently used instructions in cache memory. In modern computers, the cache controller is more likely to be part of the main processor.

SRAM may be found in various amounts on a motherboard. Common amounts are 64KB, 128KB, 256KB, or 512KB. You may also find 1GB or 2GB modules. If you are adding SRAM to a system, you will need to know whether to buy synchronous or asynchronous SRAM. Synchronous SRAM is in tune with the system clock (synchronized with it), so it can pass data better. Asynchronous SRAM is not in tune with the system clock, so data sent to or from it must travel in chunks, each chunk limited in size to the amount that can be transported inside one clock cycle. This is less efficient.

To check out options on buying RAM, I recommend looking at the Crucial Technology web site. Dr. Andrews recommends this site and the Kingston Technology site as well. As an exercise, assume you are buying memory for a Dell Optiplex GX1 (an older model) whose processor runs at 450 MHz. The computer currently has 128 MB of RAM. How much will it cost to take this system to the maximum RAM supported for it?

SDRAM does not stand for static dynamic RAM. In this acronym, the S stands for synchronous. This means that this kind of RAM synchronizes with the system clock. Note that SDRAM comes in varieties that do error checking (ECC and parity), and varieties that do not (non-parity). Count the number of chips on a single module. According to the Crucial web site, if the number is evenly divisible by 3 or 5, you have error checking RAM. If not, you don't.

Memory comes in various speeds, measured in several ways. Some is measured in nanoseconds (ns). A nanosecond is one billionth of a second. To picture it, electricity travels 11.78 inches along a copper wire in a nanosecond. In a microsecond (one millionth of a second), it travels 984 feet. (For readers outside the United States, these measurements are in US terms. The words millionth and billionth can have different meanings elsewhere. See the discussion of nanosecond on WhatIs.com.) If memory is rated at 70 nanoseconds (ns), it is slower than memory rated at 60 ns. Smaller numbers are faster. SDRAM, DDR, and RIMM memory is measured differently. It is rated in MHz, or in a PC rating. For example, a MHz rating may state that the RAM is capable of running at 333 or 400 MHz.

A PC rating will tell us the throughput of the module, in round numbers. A module that can process 64 bits at a time is processing 8 bytes at a time. We multiply the 8 bytes times the MHz rating of the module to get a PC rating: a module rated at 400 MHz times 8 bytes gives us a PC rating of PC3200.

Memory can also be measured and rated by it latency. In general, latency means "how long do we have to wait?" How long does it take to actually read or write to the module? Not a long time, to be sure, but the lower the latency rating, the faster the memory is. It may be expressed as column access strobe (CAS) latency or row access strobe (RAS) latency. They refer to the number of clock cycles it takes to read or write a column or row of data in the memory module.

More on SIMMs, DIMMs, and RIMMs:
  SIMM DIMM RIMM
pins in connector 30 or 72 pins 168, 184, or 240 pins; may have one or two notches 184 or 232 pins; has two notches
common speed ratings 60, 70, or 80 ns 200 to 400 MHz 266 and 400 MHz
common sizes (not currently used) 8 MB to 2 GB 64 MB to 512 MB
data path size 32 bits 64 bits 16, 32, or 64 bits

The text points out an idea that would not occur to most troubleshooters: memory cards and the sockets they connect to usually have either tin or gold connectors (leads). If you plug a tin plated card into a gold plated socket (or vice versa) you could have a corrosive reaction between the two metals. Don't mix metals if you can avoid it.

Adding and upgrading RAM are discussed. The author presents a list of questions that should be answered before buying RAM:

  • How much memory do I need?
  • How much memory can my computer physically accommodate?
  • What increments of memory does my system board support?
  • How much additional memory is cost effective?
  • What kind of memory can fit on my system board?
  • What memory is compatible with the memory I already have installed?

Have you tried to answer the problem I asked above using the Crucial web site, or the site of another vendor? These are questions you have to ask yourself in order to solve the problem.

A critical issue brought up in this section is the idea of banks of memory. Typically, you have several slots in the motherboard into which you can insert SIMMs or DIMMs. Often, SIMM slots are grouped in banks. A bank could be one slot, two slots, four slots, or another combination. The short story is that if you use a bank, you must fill it. Also, if you use a bank, you must use the same kind of SIMM in each slot in the bank. Different banks may have different size SIMMs in them, and may have different speed SIMMs in them. However, the RAM of the system will all run at the same speed as the slowest SIMM in the computer. As noted above, if you are using RIMMs, you must fill all RIMM slots with a RIMM or a C-RIMM for the system to work.

Installing Memory is a more important concept. As the illustration in the text shows, you often must insert a SIMM module into the socket at an angle (45 degrees is preferred), then straighten it a bit to lock it into place. Sometimes with DIMMs there are actual locks to move at the ends of the socket, sometimes not. Inserting a DIMM straight down into its socket should engage the locks when the module is seated.

It was often necessary on older computers to adjust the CMOS settings after changing the amount of memory on the motherboard. Newer computers tend to sense the new amount automatically. If your system does not recognize the memory you have added, consider upgrading the BIOS.

Adding RAM can be tricky. If the system misbehaves after changing the installed RAM, check all the factors. Is it physically installed correctly? Does the BIOS recognize it? Did you buy the right kind? Have you put more memory on the motherboard than it can address? Any of these problems will lead to a computer that does not work.