Types of Memory
This information on RAM is from PC Magazine, Volume 16, Number 18, October
21, 1997, PC Tech.
An important measurement of RAM performance is access time, the amount of
time that passes between the instant the CPU issues an instruction to RAM
to read a particular piece of data from a particular address and the moment
the CPU actually receives the data. Today's RAM chips typically have a 60-ns
access time, which means it takes 60 nanoseconds (a nanosecond is a billionth
of a second) to perform this round-trip function. This access time is much
faster than that of the 100- to 120-ns chips of a few years ago, but it's
still much slower than the ideal access time of zero, which would be realizable
if the CPU itself stored all the data. To speed things further, the CPU has
access to cache memory (usually referred to as "the cache"). At 20 ns or
better, cache memory is faster than main memory, but systems contain less
of it than main memory (cache memory is expensive).
RAM (random-access memory)
This is the umbrella term for all memory that can be read from or written
to in a nonlinear fashion. However, it has come to refer specifically to
chip-based memory, since all chip-based memory is random-access. It is not
the opposite of ROM. The computer can read ROM; it can read and write to
SIMM (single in-line memory module)
DIMM (dual in-line memory module). SIMM and DIMM refer not to memory types,
but to modules (circuit boards plus chips) in which RAM is packaged. SIMMs,
the older of the two, offer a data path of 32 bits. Because Pentiums are
designed to handle a much wider data path than that, SIMMs must be used in
pairs on Pentium motherboards (they can be used singly on boards based on
486 or slower processors). DIMMs, which are of more recent origin, offer
a 64-bit path, which makes them more suitable for use with the Pentium and
other more recent processors. From a buyer's standpoint, the good news is
that one DIMM will handle the work of two SIMMs and thus can be used singly
on a Pentium motherboard. DIMMs are more economical in the long run, because
you can add one at a time to your system.
DRAM (dynamic RAM)
Dynamic RAM is the standard main memory type in computers today and is what
you're referring to when you tell someone your PC has 32MB of RAM. In DRAM,
information is stored as a series of charges in a capacitor. Within a millisecond
of being electronically charged, the capacitor discharges and needs to be
refreshed to retain its values. This constant refreshing is the reason for
the use of the term dynamic.
FPM RAM (fast page-mode RAM)
Until the advent of EDO RAM (see below), all main memory found in PCs was
of the fast pagemode variety. That's why the name wasn't well known: There
was no need to state the type, since there was only one. The access times
of FPM RAM dropped as the technology matured, from 120 ns (nanoseconds) down
to the now-common access time of 60 ns. The Pentium processor, however, allows
for a bus speed of 66 MHz, which is faster than FPM RAM can keep up with.
The speed of a 60-ns RAM module performing random page access (where page
refers to a region of address space) is below 30 MHz - far slower than the
bus speed. So DRAM makers came up with the concept of the RAM cache.
EDO RAM (extended-data-out RAM)
Despite the hype surrounding it, EDO RAM is no more than another type of
FPM RAM. Essentially, it recognizes that most of the time when the CPU requests
memory for a particular address, it's going to want some more addresses nearby.
Instead of forcing each memory access to start afresh, EDO RAM hangs onto
the location of the previous access, thereby speeding access to nearby addresses.
EDO RAM speeds up the memory cycle, with improvements in memory performance
of as much as 40 percent. But EDO is effective only up to a bus speed of
66 MHz, and that's quickly being bypassed by the most recent crop of AMD,
Cyrix, and Intel processors.
BEDO RAM (burst extended-data-out RAM)
As the need for faster access to DRAM has increased, technologies have been
developed to provide it. One such technology is known as bursting, in which
large blocks of data are sent and processed in the form of an uninterrupted
"burst" of smaller units. What this means to DRAM is that the burst carries
details not only about the address of the first page, but also of the next
few. BEDO RAM can handle four data elements in one burst, and this allows
the final three elements to avoid experiencing the delays of the first -
all the addresses are ready to be processed. The DRAM is given the first
address, and then can process the rest at a rate of 10 ns each. BEDO RAM,
however, despite its substantial speed increase, still has difficulty moving
past the 66-MHz bus barrier. BEDO RAM exists because SDRAM manufacturers
were uninterested in pricing SDRAM to be competitive with EDO RAM; as a result,
more work was done with EDO to add bursting technologies for speed rivaling
that of SDRAM. Hence BEDO RAM.
SDRAM (synchronous dynamic RAM)
Resources galore are being poured into SDRAM development, and it has begun
making its appearance in the PC ads. The reason for its increasing popularity
is twofold. First, SDRAM can handle bus speeds of up to 100 MHz, and these
are fast approaching. Second, SDRAM is synchronized with the system clock
itself, a technical feat that has eluded PC engineers until now. SDRAM technology
allows two pages of memory to be opened simultaneously A new standard for
SDRAM is being developed by the SClzzL Association at Santa Clara University
(California) along with many industry leaders. Called SLDRAM, this technology
improves on SDRAM by offering a higher bus speed and by using packets (small
packs of data) to take care of address requests, timing, and commands to
the DRAM. The result is less reliance on improvements in DRAM chip design,
and ideally a lower-cost solution for high-performance memory. Watch for
SLDRAM in the near future.
SRAM (static random-access memory)
The difference between SRAM and DRAM is that where DRAM must be refreshed
constantly, SRAM stores data without an automatic refresh. The only time
a refresh occurs, in fact, is when a write command is performed. If the write
command doesn't occur, nothing in the SRAM changes, which is why it's called
static. The benefit of SRAM is that it's much faster than DRAM, reaching
speeds of 12 ns as compared with BEDO's 50 ns. The disadvantage is that SRAM
is much more expensive than DRAM. SRAM's most common use in PCs is in the
second-level cache, also called the L2 cache.
Caching is the art of predicting what data will be requested next and having
that data already in hand, thus speeding execution. When your CPU makes a
data request, the data can be found in one of four places: the L1 cache,
the L2 cache, main memory, or in a physical storage system (such as a hard
disk). L1 cache exists on the CPU, and is much smaller than the other three.
The L2 cache (second-level cache) is a separate memory area, and is configured
with SRAM. Main memory is much larger and consists of DRAM, and the physical
storage system is much larger again but is also much, much slower than the
other storage areas. The data search begins in the L1 cache, then moves out
to the L2 cache, then to DRAM, and then to physical storage. Each level consists
of progressively slower components. The function of the L2 cache is to stand
between DRAM and the CPU, offering faster access than DRAM but requiring
sophisticated prediction technology to make it useful. The term cache hit
refers to a successful location of data in L2, not L1. The purpose of a cache
system is to bring the speed of accessing memory as close as possible to
the speed of the CPU itself.
Async SRAM (asynchronous SRAM)
Async SRAM has been with us since the days of the 386, and is still in place
in the L2 cache of many PCs. It's called asynchronous because it's not in
sync with the system clock, and therefore the CPU must wait for data requested
from the L2 cache. The wait isn't as long as it is with DRAM, but it's still
Sync SRAM (synchronous bursts RAM)
Like SDRAM, Sync SRAM is synchronized with the system clock, so it's faster
than the Async SRAM commonly used for L2 caches, with speeds of about 8.5
ns. Unfortunately, Sync SRAM isn't being produced in sufficient quantities
to drive its cost down, so it seems destined for a relatively short life.
That's especially true because it loses the ability to synchronize at bus
speeds higher than 66 MHz. For the new breed of machines, therefore, let's
welcome . . .
PB SRAM (pipeline burst SRAM)
Using burst technology, SRAM requests can be pipelined, or collected so that
requests within the burst are executed on a nearly instantaneous basis. PB
SRAM uses Pipening, and while it's slightly behind system synchronization
speeds, it's a possible improvement over Sync SRAM because it's designed
to work well with bus speeds of 75 MHz and higher. Look for PB SRAM to be
a major player in Pentium II systems and beyond.
VRAM (video RAM)
VRAM is aimed precisely at video performance, and you'll find it primarily
on video accelerator cards or on motherboards that incorporate video technology.
VRAM is used to store the pixel values of a graphical display, and the board's
controller reads continuously from this memory to refresh the display Its
purpose is not only to give you faster video performance than you'd get with
a standard video board, but to reduce strain on the CPU. VRAM is dual-ported
memory; there are two access ports to the memory cells, with one used to
constantly refresh the display and the other used to change the data that
will be displayed. Two ports means a doubling of bandwidth, and faster video
performance as a result. By comparison, DRAM and SRAM have only one access
WRAM (Windows RAM)
Like VRAM, WRAM is a dual-ported type of RAM and it is used exclusively for
graphics performance. WRAM is similar to VRAM in its operation, but it offers
a higher overall bandwidth (roughly 25 percent higher), in addition to several
graphics features that applications developers can exploit. These include
a double-buffering data system several times faster than VRAM's buffer, resulting
in considerably faster screen refresh rates.
SGRAM (synchronous graphics RAM)
Unlike VRAM and WRAM, and despite the fact that its primary use is on video
accelerator cards, SGRAM is a single-ported RAM type. It speeds performance
through a dual-bank feature, in which two memory pages can be opened
simultaneously; it therefore approximates dual-porting. SGRAM is proving
to be a significant player in 3-D video technology because of a block-write
feature that speeds up screen fills and allows fast memory clearing.
Three-dimensional video requires extremely fast clearing, in the range of
30 to 40 times per second.
Read Only Memory. The data on a ROM is inserted during its manufacture, and
then cannot be changed. A photosenstitive material is etched to hold the
required bit pattern
Programmable ROM. Using special equipment, it is possible to program these
chips once. The PROM is created blank, then the program can be added later.
Once the program has been set it cannot be changed.
Erasable PROM. By exposing the EPROM to ultraviolet light for an extended
time (15 minutes), the EPROM will be reset to all zeros. Then it can be
Electrically Erasble PROM. Instead of using ultraviolet light, these chips
can be erased by applying electric pulses to it. Chips such as these can
be used to store the BIOS of a computer. In this way the BIOS can be upgraded
using a software program, instead of replacing the chip.