Memory Explained
How Memory Works
Module Components
Memory Types
Technology
Evolution Chart
Error Checking
Measuring Speed
Adding Memory
How Memory Works
In
order to enable computers to work faster, there are several types of
memory available today. Within a single computer there is no longer
just one type of memory. Because the types of memory relate to speed,
it is important to understand the differences when comparing the
components of a computer. So get your memory ready as the following
will explain what all those crazy abbreviations mean.
But first, here is a brief description of how memory works.
All actual computing starts with the the CPU (Central Processing Unit).
The chipset supports the CPU and contains several controllers that control how information travels between the CPU and other components in the PC.
The memory controller is part of the chipset and establishes the information flow between memory and the CPU.
A bus is
a data path that consists of parallel wires and connects the CPU,
memory and other devices. The bus architecture determines how much and
how fast data can move around the motherboard.
The memory bus goes from thememory controller to the computer's memory sockets. Newer systems have a frontside bus (FSB) from the CPU to main memory and a backside bus (BSB) from the memory controller to L2 cache.
For the PC to get information...
The
CPU sends a request to the memory controller to memory and gets a
report back of when the information will be available. This cycle can
vary in length according to memory speed as well as other factors, such
as bus speed.
Residing on the motherboard, the system clock
sends a signal to all components, just like a metronome ticking. Each
click of the clock represents a clock cycle. A clock running at 100Mhz
represents 100 million clock cycles per second. Every action is timed
by the clock where different actions require a different number of
clock cycles.
Many
people assume that the speed of the processor is the speed of the
computer. Most of the time, the system bus and other components run at
different speeds. Because all information processed by the CPU is
written or read from memory, the performance of a system is
dramatically affected by how fast information can travel between the
CPU and memory. Therefore, faster memory technology contributes greatly
to the overall system performance.
Cache memory
is a relatively small amount (normally less than 1 MB) of high speed
memory and resides very close to the CPU. It is designed to supply the
CPU with the most frequently requested data. It takes a fraction of the
time, compared to normal memory, to access cache memory.
The
concept is that 20% of the time, what is needed is in cache. The cache
memory tracks instructions, putting the most frequent used instruction
at the top of the list. Once the cache is full, the lowest need is
dropped.
Today,
most cache memory is incorporated in the CPU. It can also be located
just outside of the CPU. Cache that is closest to the CPU is labeled Level 1, the next closest Level 2, etc.
Interleaving
is a process in which the CPU alternates between two or more memory
banks. Every time the CPU addresses a memory bank, the bank needs about
one clock cycle to reset. The CPU can save processing time by
addressing a second bank while the first bank is resetting.
Module Components
PCB (Printed Circuit Board)
The
green board that holds the memory chips is made up of several layers.
Each layer contains traces and circuitry to control the movement of
data. Usually, higher quality memory modules use more layers. The more
layers, the more space there is between traces. With more space between
traces, the module has less chance of noise interference and is more
reliable.
Traces (Internal Trace Layer)
Think
of traces as roads that data travels on. The width and curvature as
well as the distance between affect both the speed and reliability.
Contact Fingers
The
contact fingers (connections or leads) are used to plug the memory
chips into the module. Contacts can either be tin or gold. Gold is a
better conductor than tin, but more expensive. To help avoid corrosion,
It's always best to match the metal of the module to the metal of the
socket.
Chip Packaging
This is the material coating around the actual silicon. Today's most common packaging are. . .
DIP (Dual In-Line Package)
This
type of packaging was used when memory was installed directly on the
computer's system board. It installed into holes extending into the
surface of the PCB and could either be soldered or inserted into
sockets.
SOJ (Small Outline J-Lead)
This type of packaging was used for surface mount components where they mounted directly onto the surface of the PCB.
TSOP (Thin Small Outline Package)
This is also a surface mount design and was first used to make thin credit card modules for notebook computers.
CSP (Chip Scale Package)
CSP
doesn't use pins to connect to the board. It uses electrical
connections to the board on the underside of the package. RDRAM chips
utilize this type of packaging.
Chip Stacking
For
higher capacity modules, it is necessary to stack chips on top of one
another. Stacking can be internally (not visible) or externally
(visible).
Memory Types
SIMM (Single In-line Memory Modules)
SIMMs
are used to store a single row of DRAM, EDO or BEDO chips where the
module is soldered onto a PCB. One SIMM can contain several chips. When
you add more memory to a computer, most likely you are adding a SIMM.
The
first SIMMs transferred 8 bits of data at a time and contained 30 pins.
When CPU's began to read 32-bit chunks, a wider SIMM was developed and
contained 72 pins.
72
pin SIMMS are 3/4" longer than 30 pin SIMMs and have a notch in the
lower middle of the PCB. 72 pin SIMMs install at a slight angle.
DIMM (Dual In-line Memory Modules)
DIMMs
allow the ability to have two rows of DRAM, EDO or BEDO chips. They are
able to contain twice as much memory on the same size circuit board.
DIMMs contain 168 pins and transfer data in 64 bit chunks.
DIMMs install straight up and down and have two notches on the bottom of the PCB.
SO DIMM (Small Outline DIMM)
SO
DIMMs are commonly used in notebooks and are smaller than normal DIMMs.
There are two types of SO DIMMs. Either 72 pins and a transfer rate of
32 bits or 144 pins with a transfer rate of 64 bits.
RDRAM - RIMM
Rambus,
Inc, in conjunction with Intel has created new technology, Direct
RDRAM, to increase the access speed for memory. RIMMs appeared on
motherboards sometime during 1999. The in-line memory modules are
called RIMMs. They have 184 pins and provide 1.6 GB per second of peak
bandwidth in 16 bit chunks. As chip speed gets faster, so does the
access to memory and the amount of heat produced. An aluminum sheath,
called a heat spreader, covers the module to protect
the chips from overheating.
SO RIMM
Similar in appearance to a SO DIMM and uses Rambus technology.
Technology
DRAM (Dynamic Random Access Memory)
One
of the most common types of computer memory (RAM). It can only hold
data for a short period of time and must be refreshed periodically.
DRAMs are measured by storage capability and access time.
* Storage is rated in megabytes (8 MB, 16 MB, etc).
*
Access time is rated in nanoseconds (60ns, 70ns, 80ns, etc) and
represents the amount of time to save or return information. With a
60ns DRAM, it would require 60 billionths of a second to save or return
information. The lower the nanospeed, the faster the memory operates.
* DRAM chips require two CPU wait states for each execution.
* Can only execute either a read or write operation at one time.
FPM (Fast Page Mode)
At
one time, this was the most common and was often just referred to as
DRAM. It offered faster access to data located within the same row.
EDO (Extended Data Out)
Newer
than DRAM (1995) and requires only one CPU wait state. You can gain a
10 to 15% improvement in performance with EDO memory.
BEDO (Burst Extended Data Out)
A step up from the EDO chips. It requires zero wait states and provides at least another 13 percent increase in performance.
SDRAM (Static RAM)
Introduced
in late 1996, retains memory and does not require refreshing. It
synchronizes itself with the timing of the CPU. It also takes advantage
of interleaving and burst mode functions. SDRAM is faster and more
expensive than DRAM. It comes in speeds of 66, 100, 133, 200, and
266MHz.
DDR SDRAM (Double Data Rate Synchronous DRAM)
Allows
transactions on both the rising and falling edges of the clock cycle.
It has a bus clock speed of 100MHz and will yield an effective data
transfer rate of 200MHz.
Direct Rambus
Extraordinarily
fast. By using doubled clocked provides a transfer rate up to 1.6GBs
yielding a 800MHz speed over a narrow 16 bit bus.
Cache RAM
This is where SRAM is used for storing information required by the CPU. It is in kilobyte sizes of 128KB, 256KB, etc.
Other Memory Types
VRAM (Video RAM)
VRAM
is a video version of FPM and is most often used in video accelerator
cards. Because it has two ports, It provides the extra benefit over
DRAM of being able to execute simultaneous read/write operations at the
same time. One channel is used to refresh the screen and the other
manages image changes. VRAM tends to be more expensive.
Flash Memory
This
is a solid-state, nonvolatile, rewritable memory that functions like
RAM and a hard disk combined. If power is lost, all data remains in
memory. Because of its high speed, durability, and low voltage
requirements, it is ideal for digital cameras, cell phones, printers,
handheld computers, pagers and audio recorders.
Shadow RAM
When
your computer starts up (boots), minimal instructions for performing
the startup procedures and video controls are stored in ROM (Read Only
Memory) in what is commonly called BIOS. ROM executes slowly. Shadow
RAM allows for the capability of moving selected parts of the BIOS code
from ROM to the faster RAM memory.
Evolution of Memory
Year
Introduced
|
Technology
|
Speed
Limit
|
1987
|
FPM
|
50ns
|
1995
|
EDO
|
50ns
|
1997
|
PC66
SDRAM
|
66MHz
|
1998
|
PC100
SDRAM
|
100MHz
|
1999
|
RDRAM
|
800MHz
|
1999/2000
|
PC133
SDRAM
|
133MHz
|
2000
|
DDR
SDRAM
|
266MHz
|
Error Checking
In
order to ensure that memory is working correctly, data integrity, there
are two primary means - parity and error correction code (ECC) or no
checking at all - non-parity.
Parity
This is the most common used method. It can detect errors, but not correct them.
ECC (Error Correction Code)
ECC can detect and correct single-bit errors. It is used in high-end PC's and servers.
Non-Parity
Because
there has been an increased quality of memory components and an
infrequency of errors, more and more manufacturers do no include error
checking capabilities. This also lowers the cost of the PC.
Speed - Access Time, Megahertz (MHz), Bytes Per Second
Prior
to SDRAM, speed was expressed in terms of nanoseconds (ns). This
measured the amount of time it takes the module to deliver a data
request. Therefore, the lower the nanosecond speed, the faster. Typical
speeds were 90, 80, 70 and 60ns. Older 486 machines may have 80 or 90.
More recent Pentiums will have 60 or 70.
Often, the last digit of a memory part number will represents the speed such as -6 = 60ns.
SDRAM
speed is measured in megahertz (MHz). Speed markings on the memory
chips may still specific nanoseconds, but in this case in represents
the number of nanoseconds between clock cycles. To add to the confusion
the markings on t he chips don't match the Mhz value. Here is a
conversion chart.
MHz
Speed
|
Total
Clock Cycles per Second
|
Divide
by 1 billions to get nanoseconds per clock speed.
|
66
|
66,000,000
|
15
|
100
|
100,000,000
|
10
|
133
|
133,000,000
|
8
|
To
calculate bytes per second you need to know the Bus Width and Bus Speed
of your PC. The first thing to remember is 8-bits = 1 byte. If you have
a 64-bit bus, than 8 bytes of information can be transferred at one
time. (64 / 8 bits = 8 bytes)
If
your bus speed is 100Mhz (100 million clock cycles per second) and the
bus width is 1 byte wide, the speed is 100 MB's per second. With a
64-bit width, the speed is 800 MBs per second (64 / 8 * 100,000,000)
Rambus
modules are measured in megabytes per second. Rambus modules are either
400 or 300Mhz. Because they send two pieces of information every clock
cycle, you get 800 or 600Mhz. They have a 16-bit bus width or 2 bytes
(16/8). The 400Mhz module speed is 1600MB a second or 1.6GB a second.
(400,000,000 * 2) * 2. The 300Mhz module provides 1.2GBs a second.
Adding Memory
If
you are running Windows 95 or 98, a minimum of 16 MBs of memory is
necessary. If you have several applications open at once, you will find
by increasing your memory, everything will run faster. Currently the
cost for adding additional memory is very low. Installation of memory
is also fairly simple. It does not require any reconfiguration.The
difficult part is determining what type of memory you need.
Type | Socket | Amount
More information on memory determination...
Looking Inside | Check the Manual | Identification | Still not sure
Type
* FPM – Fast Page - If you have a 486, you probably have FPM
* EDO – Extended Data Out - If you have an early Pentium system, you probably have EDO
* SDRAM - If you have a Pentium or Celeron system purchased in 1999, you probably have SDRAM
Sockets
Memory modules plug into a socket on the motherboard. There are three socket types.
* SIMM – 30 pin – 3 inches in length
* SIMM – 72 pin– 4 inches in length
* DIMM – 168 pin – 5 inches in length
Most
older 486 machines will use 30 pin modules. Later model 486 and Pentium
machines will probably use 72 pin modules. More recent Pentium machines
may have 168 pin.
Amount
Memory sizes increase by the power of 2. This results in sizes of 1, 2, 4, 8, 16, 32, 64, 128, 256 MBs.
* On some older 486 machines, one memory module can be added at a time.
* On most Pentium machines, modules must be added in pairs. Each pair must be of the same size
* SDRAM modules can be added one at a time.
For
example, if you have 8 MBs of memory on a Pentium, you have two 4 MB
modules. To increase to 16 MBs, you need to add two more 4 MB modules.
To increase to 24 MBs, you need to add two 8 MB modules.
Looking Inside
Now
that you know the parameters, how do you determine which type you need?
Looking inside the computer will not provide all of the information. It
will confirm how many modules you currently have. You can also confirm
the type and quantity of open sockets. If you only have four sockets
and each socket contains a module, you will have to replace some of the
existing memory modules.
Check the Manual
The
other place to find the correct information is your owner’s manual. The
manufacturer should have listed the type of memory required. You will
need to determine the parity and speed.
Identification
Now
that you have the necessary information, you find an ad for memory and
still you may not be able to determine which modules you need. Why?
Because the computer industry thrives on confusion and abbreviations.
Here’s how to interpret the coding scheme.
30 pin modules
For 30 pin modules you will see something like
* 1 x 9-60
* 4 x 9-70
* 4 x 8-70
The first number is the size in MB’s. In our example this would be 1MB or 4MB.
The second number
represents parity. The value 9 represents parity and 8 represents
non-parity. (Of course that makes a lot of sense!) The 9 or 8 also
identifies that it is a 30 pin module.
The third value represents the speed.
72 pin modules
For 72 pin modules you will see something like
* 1 x 32-60
* 2 x 32-70
* 4 x 36-60
* 8 x 36-70
Just like the 30 pin modules, the first value
represents the size, EXCEPT it only represents ¼ of the total memory
size. Don’t ask why, just accept it. So the value of 4 represents a 16
MB (4 x 4) module. A value of 8 represents a 32 MB (4 x 8) module.
The second value,
again just like the 30 pin, represents parity and the number of pins.
36 is used for parity and 32 for non-parity. You aren’t asking why
again, are you?
The third value represents the speed, the same as the 30 pin.
Still not sure
If
you still are not sure what type of memory you need, call the
manufacturer or call us. We have a database of about 90% of all
manufactured computers that can provide us with the type of memory and
upgrade options. You will need to provide the manufacturer and model of
your PC.
The more memory the better.
|