20 Florizel Ave., Ottawa (Nepean) - Ontario K2H 9R3
Canada
Phone: (613) 820 9702 - Fax: (613) 820 4502 - cell: 265 2108
info@pr-consult.com

Memory basics

Memory is the workspace for the computer's processor. It is a temporary storage area where the programs and data being operated on by the processor must reside. Memory storage is considered temporary because the data and programs remain there only as long as the computer has electrical power or is not reset. Before being shut down or reset, any data that has been changed should be saved to a more permanent storage device of some type (usually a hard disk) so it can be reloaded into memory again in the future.

The RAM (random access memory) is a single term that describes the main memory of a computer. Main memory is called RAM because you can randomly (and quickly) access any location in memory. This name is somewhat misleading and often misinterpreted. Read-only memory (ROM), for example, is also randomly accessible, yet is normally differentiated from the system RAM because it cannot normally be written to. Also, disk memory is randomly accessible too, but we don't consider that RAM either.

Over the years, the definition of RAM has changed from a single acronym to become something that means the primary memory workspace used by the processor to run programs, which usually is constructed of a typ of chip called DRAM (Dynamic RAM). One of the characteristics of DRAM chips (and therefore RAM in general) is that they store data dynamically, which means information can be written to RAM over and over again at any time. An important characteristic of RAM is that data is stored only as long as the memory has electrical power.

Therefore, when we talk about a computer's memory, we usually mean the RAM or physical memory in the system, which is primarily the memory chips or modules used by the processor to store primary active programs and data. This is often confused with the term "storage", which should be used when referring to things such as disk and tape drives (although they can be used as a form of RAM called virtual memory).

Memory costs less now that a few years ago, but its useful life has become much shorter. New types of memory are being adopted more quickly than before, and any new systems you purchase now most likely will not accept the same memory as your existing ones. In an upgrade or repair situation, that means you often have to change the memory if you change the motherboard. The chance that you can reuse the memory in an existing motherboard when upgrading to a new one is slim. This is likely to continue in the future, meaning that the system or upgrade motherboard you buy next year most likely can't use the memory in your current systems.

Types of memory
There are three main types of physical memory used in modern PCs:

  • ROM. Read-only memory
  • DRAM. Dynamic random access memory
  • SRAM. Static RAM

ROM
Read-only memory, or ROM, is a type of memory that can permanently or semipermanently hold data. It is called read-only because it is either impossible or difficult to write to. ROM is also often referred to as nonvolatile memory because any data stored in ROM remains there, even if the power is turned off. As such, ROM is an ideal place to put the PC's startup instructions-that is, the software that boots the system.

The motherboard ROM normally contains four main programs, including the following in most systems:

  • POST (power on self test). A series of test routines that ensure the system components are operating properly.
  • CMOS setup. A menu-driven application that allows the user to set system configuration parameters, options, security settings, and performances.
  • Boostrap Loader. The routine that first scans the floppy drive and then the hard disk, looking for an operating system to load.
  • BIOS (basic input/output system) A series of device driver programs designed to present a standard interface to the basic system hardware, especially hardware that must be active during the boot process.

DRAM
Dynamic RAM (DRAM) is the type of memory chip used for most of the main memory in a modern PC. The main advantage of DRAM are that it is very dense, meaning you can pack a lot of bits into a very small chip, and it is inexpensive, which makes it affordable for large amounts of memory

The memory cells in a DRAM chip are tiny capacitors that retain a charge to indicate a bit. The problem with DRAM is that it is dynamic, and because of the design it must be constantly refreshed or the electrical charges in the individual memory capacitors will drain and the data will be lost. Refresh occurs when the system memory controller takes a tiny break and accesses all the rows of data in the memory chips. Most systems have a memory controller (normally built into the North Bridge portion of the motherboard chipset), which is set for an industry-standard refresh rate of 15µs (microseconds). The memory is accessed in such a way that all rows of data will be accessed after exactly 128 of these special refresh cycles. This means that every 1.92ms (millisecons or 128x15µsec), all the rows in the memory are read to refresh the data.

DRAM is used in PC systems because it is inexpensive and the chips can be densely packed, meaning that a lot of memory capacity can fit in a small space. Unfortunately, DRAM is also slow, normally much slower than the processor. For this reason, there have been many different types of DRAM architectures developed to improve performance.

SRAM
There is another distinctly different type of memory that is significantly faster than most types of DRAM. SRAM stands for staticc RAM which is so named because it does not need the periodic refresh rates like DRAM (Dynamic RAM). Because of SRAM's design, not only are refresh rates unnecessary, SRAM is much faster than DRAM and fully able to keep pace with modern processors.

SRAM memory is available in access times of 2ns or less, which means it can keep pace with processors running 500MHz or faster! This is because the SRAM design, which calls for a cluster of six transistors for each bit of storage. The use of transistors but no capacitors means that refresh rates are not necessary because there are no capacitors to lose their charges over time. As long as there is power, SRAM remembers what is stored. With these attributes, why don't we use SRAM for all system memory? The answers are simple. Compared to DRAM, SRAM is much faster, but also much lower in density and much more expensive.

Even though SRAM is too expensive for PC use as main memory, PC designers have found a way to use SRAM to dramatically improve PC performance. Rather than spend the money for all RAM to be SRAM memory, which can run fast enough to match the CPU, it is much more cost-effective to design in a small amount of high-speed SRAM memory, called cache memory. Many individual components have a small amount of cache built into them. Common examples are network cards, CD-ROM drives, and hard drives. Entry level hard drives usually have 128k of cache integrated onto the controller board, high performance drives can have as much as 2Mb.

RAM Memory Speeds

The speed and performance issue with memory is confusing to some because memory speed is usually expressed in ns (nanoseconds), and processor speed has always been expressed in MHz (megahertz). Recently, however, some newer and faster types of memory have speeds expressed in MHz. A nanosecond is defined as one billionth of a second -a very short time indeed. Chip and system speed has been expressed in magahertz (MHz), which is millions of cycles per second. There are systems today with processors running 1.4 gigahertz (GHz, or billion of cycles per second).

Up until 1998, most DRAM memory used in PCs has been rated at an access time of 60ns or higher, which works out to be 16.7MHz or slower! This super-slow 16MHz memory has been installed in systems running up to 300MHz or faster, and you can see what a mismatch there has been between processor and main memory performance. More recently we have 100MHz and 133MHz memory, called PC100 and pc133 respectively.




Some good examples of memory modules



128 MB Mushkin PC100 CAS2






128 MB 800MHz ECC RAMBUS






256 MB Mushkin Basic PC100






512 MB PC133 w/Nanya chips






128 MB ECC PC150 Enhanced HSDRAM