Types of Memory
  RAM
  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
    RAM.
  
 - 
    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.
  
 - 
    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
    a wait.
  
 - 
    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
    port.
  
 - 
    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.
 
  ROM
  - 
  
- 
    ROM
  
  - 
    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
  
 - 
    PROM
  
 - 
    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.
  
 - 
    EPROM
  
 - 
    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
    reprogrammed.
  
 - 
    EEPROM
  
 - 
    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.
  
-