Joined: 10 Aug 2002
Location: Portland, Oregon USA
|Posted: Thu Aug 22, 2002 1:01 pm Post subject: [Tutorial] Computer Memory Guide
Computer Memory Guide
An introduction to DRAM, ROM, and other bizarre acronymns ... by Tom S. Bair Jr.
One of the most misunderstood computer concepts is memory. Often confused with hard disk space, memory is the computer's active working "space." Metaphorically, memory is the computer's desk, while a hard drive is a computer's file cabinet. Your computer's main processor can act on data in memory far more quickly than it can on data stored on a hard drive. That's why a computer primarily uses hard-drive space for longer-term storage.
Most (but not all) memory chips need constant power to maintain their stored patterns of 1s and 0s. If the power is lost, then all the memory switches revert back to the "off" state, erasing the data from memory. Using my earlier metaphor, turning off the power is like going home for the evening: if you don't move your work from your desk to the file cabinet before you leave, the janitorial crew certainly will, trashing everything you forgot to file.
It's also good to be aware that your system probably contains quite a few different types of memory. Some are used for long-term storage of your computer's configuration, some for video operations, and some for basic system operation. It's this last type that we usually associate with "memory," so we'll look at it first.
System memory is called RAM or Random Access Memory. It is nothing more than a collection of integrated circuits (ICs) that store data as patterns of 1s and 0s (which are ons and offs) in the chip.
Unfortunately, some memory chips are far less efficient than others. (The Keen Grasp of the Obvious Award goes to the readers who figure out which are cheapest.) The industry deals with this disparity by building systems with different, umm, layers of memory. Most systems have three such layers: base RAM, L2 cache, and L1 cache.
When we talk about how much RAM is in our system -- 64 megabytes (MB), 512 MB, etc. -- we're usually talking about the base layer of memory. All of our system's data get stored here. When people talk about adding memory or adding RAM to their computers, they're almost always talking about adding to this base layer. These RAM chips usually sit in sockets on the motherboard and are easy to install or replace.
There are a couple different types of chips your computer might use as base RAM:
Dynamic Random Access Memory (DRAM) uses tiny built-in capacitors to store the 1s and 0s that make up your data. If a charge exists in one of these tiny capacitors, it is read as a 1. No charge in the capacitor is read as a 0.
Capacitors, however, don't hold charges forever -- and tiny capacitors hold their charges for a very short time -- so a constant refresh signal is needed to keep the information in memory. When your computer's power is turned off, the refresh signal disappears and everything that had been stored in memory is lost.
Two major types of DRAM are Fast-Page Mode (FPM) and Extended Data Out (EDO) DRAM. While most older computers use FPM, EDO is found on many Pentiums.
Physically speaking, most DRAM in computers sold from 1990 through 1997 comes packaged in Single Inline Memory Modules (SIMMs). These are little rectangular circuit boards about 4 inches long and .75 inches wide. 386s and most 486s use 30-pin SIMMs; new 486s and most Pentiums use 72-pin SIMMs. (We'll get to really new Pentiums and Pentium IIs in a minute.)
It's easy to spot SIMMs: they sit on the motherboard in nice parallel rows. 72-pin SIMMs often rest at a 45-degree angle in relation to the motherboard. For a variety of reasons, SIMMs are typically installed in pairs.
DRAM SIMMs are measured in terms of capacity (e.g., 16MB, 256MB) and speed. A typical speed rating would be 60 or 70 nanoseconds (ns), with the lower number indicating a faster access time.
Synchronous Dynamic Random Access Memory (SDRAM) is four times faster than standard EDO or FPM DRAM, with a clock rate of 6-10 ns. It typically comes packaged on Dual Inline Memory Modules (DIMMs), which can be installed singly, rather than only in pairs. DIMMs are physically larger than SIMMs. The 168-pin module accommodates a 64-bit data bus width.
Where a SIMM ties each pin together between the front and back of the module, A DIMM keeps all electrical signals separate. DIMMs are also placed into special sockets on the motherboard that will hold the modules tightly in place. Unlike SIMMs, a DIMM is inserted vertically and locked into place in the vertical position. Special plastic clips on either end of the socket snap in place when the DIMM is inserted correctly. The DIMM is also keyed with a series of notches so it cannot be installed backwards.
Rambus In-line Memory Module (RIMM) looks almost identical to DIMMs, but is slightly bigger. Also known as the Direct Rambus Memory Module, these memory devices transfer data in 16-bit chunks along dedicated memory channels.
Intel introduced the PC100 specification as a guideline to memory chip manufacturers for building modules that would function on their 100 MHz chipsets (like the 440BX). Pentium 4 and AMD Athlon processors require the faster PC133 SDRAM for a 133 MHz motherboard, or 200/266 MHz DDR SDRAM.
Cache-ing It In
Base RAM is the cheapest type of system memory and (you guessed it) also the slowest. Unaided, base RAM will slow down our system because it just isn't fast enough to keep up with our Pentium or AMD Athlon chips running at 1 GHz or more.
To speed things along, two layers of faster (but more expensive) Static Random Access Memory (SRAM) are added to keep track of recently used data.
All the data in the cache layers are copies of data in the base RAM layer. When the processor needs a certain piece of data, it first polls the cache to see if it's there. If so, that datum can be retrieved and processed much more quickly than if the processor had to go to the base RAM layer to find it.
The L2 cache, the slower of the two cache layers, sits on the motherboard. A typical system will have 256 kilobytes (K) or 512K of L2 cache, though the newer Pentium II motherboards have up to 2 MB. Some systems will allow you to upgrade your L2 cache, but many won't.
The fastest memory, the L1 cache, actually resides in the processor itself. How much L1 cache you have depends on your processor. The original Pentium contains two 8 KB-on-chip caches, one for program instructions and the other for data. Most Pentium II chips will have a 512K cache. The new Celeron CPUs have either a 0K or 128K L1 cache. Needless to say, you can't upgrade the L1 cache without upgrading your CPU.
Besides the RAM it uses for basic processing operations, your computer also needs a couple other types of memory.
Your video card, for example, has its own memory. Video memory is used to store image data for processing by the video adapter. The more memory an adapter has, the higher quality of image can be displayed.
You can figure out your minimum video memory requirements by multiplying the total number of pixels on your screen by the color depth you want.
Your video image is composed of a set number of dots, or pixels. Your image may be 640 pixels wide by 480 high, 800 wide by 600 high, 1024 by 768, or higher. (Most monitors and video cards allow a range of settings, so you're probably not locked into your current setting.) The total number of pixels you see is calculated by multiplying width by height, e.g., an 800 by 600 image has 480,000 pixels.
Each pixel occupies a certain amount of video memory. If we wanted just two colors -- say, black and white -- each pixel would take up just one bit of memory because one bit (which is either 0 or 1) would be all that's necessary for defining two colors. For 480,000 pixels, that would require 480,000 bits of memory. Since there are eight bits to a byte, you'd need 60,000 (480,000/8) bytes, or 60K, of memory to support that resolution.
By contrast, a 65,536-color screen requires 16 bits of memory per pixel (65,536 = 216) and would therefore need 960,000 bytes, or about a megabyte, of memory to run at a resolution of 800 x 600.
The 3D textures found in popular games require even more memory.
Video cards are built with many different types of memory. Some use regular DRAM, which is relatively slow, and some use faster types of memory such as SDRAM or DDR SDRAM that gives you up to 40 percent more performance than DRAM.
BIOS and ROM
Finally, your system needs to "remember" some information after the system is turned off. Otherwise, every time you booted the system you'd have to spend a few minutes reminding it that you've got a 1.44MB floppy as the A: drive, that you use an internal modem so you don't want the second on-board serial port activated, that you'd like the Num Lock key activated at start-up, etc.
These instructions, and many more, are handled by the BIOS, Basic Input/Output System (pronounced "bye-os"). The BIOS lets your hardware and software communicate with each other. IBM computers contain a copyrighted BIOS that only IBM computers can use. Other companies such as Phoenix, Award, and American Megatrends have developed BIOSs for other manufacturers' computers that emulate or mimic the IBM instruction set without using the same code (which is how the phrase "IBM-compatible" was developed). Every time you turn on your computer, the BIOS company's copyright message and BIOS version number are displayed at boot up.
BIOS information is stored in yet another kind of memory: Read Only Memory (ROM).
The original ROM chips contained transistors that are created in the on or off position. Once created, the transistors in a ROM could not be changed, so the information was considered "Read Only."
The disadvantage to ROM is that the information cannot be changed once the ROM has been programmed. Since it proved to be very inconvenient to remove an IC chip from the computer every time the software was upgraded, a method was needed to permit erasing and reprogramming the chip in place. The answer was the Electrically Erasable Programmable Read Only Memory chip (EEPROM). The chip can be erased by sending a special sequence of electric signals to the chip while it remains on the circuit board. These signals erase all or part of the chip.
EEPROM chips retain their information when the computer is off by using a small battery. Although the battery's charge is designed to last for several years, it will eventually lose its charge and the EEPROMs lose the ability to store your BIOS settings. You can tell when this is happening to you: the computer begins to lose its ability to keep BIOS settings when the power is off.
Word of advice: Because the BIOS settings can eventually be lost when the battery finally loses its charge, you should record the BIOS settings (on paper or floppy disk) so that they can be reset if you replace the battery. The BIOS settings are available from the computer's setup program, which is accessible by a special key, or combination of keys, during startup. Some computers will use the Esc key, Delete key, or one of the function keys; others use Ctrl + Alt + Esc.
This article covered the major memory types you'll encounter in your computer. In the next article, I will go into detail concerning logical memory. This is the way physical memory is "put together" for the operating system to use.
Reprinted with permission of Computer Bits Magazine.