5.1 Understanding Memory
This chapter focuses on general-purpose memory, where PCs store
programs and data that are currently in use, the pipeline that
supplies data to and receives results from the processor.
General-purpose memory, called read-write
memory
or
random access memory (RAM), must be
readable-from and writable-to. Two types of RAM are used on modern
PCs:
- Dynamic RAM (DRAM)
-
Dynamic RAM stores data for only a tiny
fraction of a second before losing it. To maintain stored data, the
system must constantly refresh DRAM, which
exacts a performance penalty and limits its speed. Typical DRAM
provides 60 ns access, but costs only a dollar per megabyte.
- Static RAM (SRAM)
-
Static RAM automatically maintains its
contents as long as power is applied to it, without requiring
refresh. SRAM is the fastest memory type available, but is very
expensive and power-hungry.
PCs use a
tiered memory
architecture that takes advantage of these characteristics:
- Main memory
-
The bulk of a PC's memory uses DRAM and is called
main memory. It is large—typically 32 MB to
256 MB or more—but too slow to keep up with a modern CPU. Main
memory is where the CPU stores programs and data that it will soon
need. Main memory functions as a buffer between the CPU and disk and
stores tens to hundreds of megabytes.
- Cache memory
-
Cache
memory
is a small amount of fast SRAM that buffers access between the CPU
and main memory.
Modern PCs have at least one, typically two, and sometimes three
layers of
cache memory:
- Primary cache memory
-
Primary
cache, also called Level 1 cache or
L1 cache, is typically 16 to 128 KB of very fast
memory on the same chip as the CPU itself. L1 cache size and
efficiency are major factors in CPU performance. The amount and type
of L1 cache is determined by the CPU you use, and cannot be upgraded.
- Secondary cache memory
-
L1 cache is not large enough to eliminate the speed disparity between
processors and main memory. Secondary cache,
also called Level 2
cache, L2
cache,
or (on Pentium-class motherboards) external
cache, bridges that gap with a reasonable compromise
between cost and performance. L2 cache resides on the motherboard of
most Socket 7 systems—where it can be upgraded—but is a
non-upgradable part of the CPU package (or of the CPU substrate
itself) on Celeron, Pentium II/III/4, and AMD K6-III/Athlon/Duron
systems.
Depending on its type, external
L2 cache on Pentium-class motherboards may
be upgraded as follows:
- Discrete SRAM chips
-
Older motherboards often use individual
socketed or soldered SRAM chips. If free sockets are available, you
can expand L2 cache by adding SRAM and TAG chips of the appropriate
number, type, and speed. TAG RAM is a dedicated
chip or chips in the L2 cache subsystem that caches addresses as
opposed to caching user data, which is stored in SRAM chips in the
portion of the L2 cache subsystem called the data
store. TAG RAM capacity determines the number of addresses
that can be cached, and therefore the maximum cacheable memory area.
Data store capacity determines how much data the L2 cache can contain
at any one time. A larger data store makes it more likely that the
data will be found in cache (called a cache
hit). In theory, the sizes of TAG RAM and the data store
need not be related. In practice, most chipsets that use TAG RAM link
TAG RAM size and data store size.
- Cache on a Stick
-
Later fifth-generation systems use Cache on a
Stick (COASt) modules, also called
Card-Edge Low
Profile (CELP) modules, which install in a socket that
looks much like a PCI slot. COASt modules come in various types and
speeds, so when upgrading be sure to purchase the correct type.
- High-density surface-mount SRAM packages
-
Most current Super Socket 7 motherboards use surface-mount SRAM
packages, which are not upgradable. Some motherboards have available
sockets, and can be upgraded by adding the type of chips specified by
the documentation.
Most Pentium motherboards have 256 or 512 KB of L2 cache, but
inexpensive systems may have none. You can improve the performance of
such systems at relatively small cost by installing 256 KB of L2
cache, although the improvement will be marginal. Upgrading such
elderly systems is usually a poor decision, because the money you
spend in incremental upgrades would be better spent on replacing the
motherboard, processor, and memory with current products.
|
Some PCs and motherboards arrive with cache memory installed but
disabled. Always check the Chipset Setup section of CMOS Setup to
verify that L1 and L2 cache are both enabled.
|
|
|