|
TOOLS HOME
- ULTIMATE MEMORY GUIDE
- MEMORY ASSESSOR
- FLASH MEMORY GUIDE †
- MANUFACTURING VIDEO †
† These links go directly to Kingston U.S. website.
|
|
 |
Ultimate Memory Guide
HOW MUCH MEMORY IS ON A MODULE?
Up to now, we've discussed some of the technical attributes of memory and how
memory functions in a system. What's left are the technical details - the "bits and
bytes," as they say. This section covers the binary numbering system, which
forms the basis of computing, and calculation of a memory module's capacity.
BITS AND BYTES
Computers speak in a "code" called machine language, which uses only two
numerals: 0 and 1. Different combinations of 0s and 1s form what are called binary
numbers. These binary numbers form instructions for the chips and microprocessors
that drive computing devices - such as computers, printers, hard disk drives, and so
on. You may have heard the terms "bit" and "byte." Both of these are units of
information that are important to computing. The term bit is short for "binary digit."
As the name suggests, a bit represents a single digit in a binary number; a bit is
the smallest unit of information used in computing and can have a value of either 1
or a 0. A byte consists of 8 bits. Almost all specifications of your computer's
capabilities are represented in bytes. For example, memory capacity, data-transfer
rates, and data-storage capacity are all measured in bytes or multiples thereof
(such as kilobytes, megabytes, or gigabytes).
This discussion of bits and bytes becomes very relevant when it comes to computing
devices and components working together. Here, we'll address specifically how bits
and bytes form the basis of measuring memory component performance and interaction
with other devices like the CPU.
CPU AND MEMORY REQUIREMENTS
A computer's CPU (central processing unit) processes data in 8-bit chunks. Those
chunks, as we learned in the previous section, are commonly referred to as bytes.
Because a byte is the fundamental unit of processing, the CPU's processing power is
often described in terms of the maximum number of bytes it can process at any given
time. For example, Pentium and PowerPC microprocessors currently are 64-bit
CPUs, which means they can simultaneously process 64 bits, or 8 bytes, at a time.
Each transaction between the CPU and memory is called a bus cycle. The number
of data bits a CPU can transfer during a single bus cycle affects a computer's
performance and dictates what type of memory the computer requires. Most desktop
computers today use 168-pin DIMMs, which support 64-bit data paths. Earlier
72-pin SIMMs supported 32-bit data paths, and were originally used with 32-bit
CPUs. When 32-bit SIMMs were used with 64-bit processors, they had to be
installed in pairs, with each pair of modules making up a memory bank.
The CPU communicated with the bank of memory as one logical unit.
Interestingly, RIMM modules, which are newer than DIMMs, use smaller 16-bit data
paths; however they transmit information very rapidly, sending several packets of
data at a time. RIMM modules use pipelining technology to send four 16-bit packets
at a time to a 64-bit CPU, so information still gets processed in 64-bit chunks.
CALCULATING THE CAPACITY OF A MODULE
Memory holds the information that the CPU needs to process. The capacity of
memory chips and modules are described in megabits (millions of bits) and
megabytes (millions of bytes). When trying to figure out how much memory you
have on a module, there are two important things to remember:
A module consists of a group of chips. If you add together the capacities of all the chips
on the module, you get the total capacity of the module. Exceptions to this rule are:
- If some of the capacity is being used for another function, such as error checking.
- If some of the capacity is not being used, for example some chips may have extra rows to be used as back-ups. (This isn't common.)
While chip capacity is usually expressed in megabits, module capacity is expressed in
megabytes. This can get confusing, especially since many people unknowingly use the
word "bit" when they mean "byte" and vice versa. To help make it clear, we'll adopt the
following standards in this book:
When we talk about the amount of memory on a module, we'll use the term
"module capacity"; when we are referring to chips, we'll use the term "chip
density". Module capacity will be measured in megabytes (MB) with both
letters capital, and chip density will be measured in megabits (Mbit), and we'll
spell out the word "bit" in small letters.
| COMPONENT |
CAPACITY EXPRESSION |
CAPACITY UNITS |
EXAMPLE |
| Chips |
Chip Density |
Mbit (megabits) |
64Mbit |
| Memory Modules |
Module Capacity |
MB (megabytes) |
64MB |
CHIP DENSITY
Each memory chip is a matrix of tiny cells. Each cell holds one bit of information.
Memory chips are often described by how much information they can hold. We call
this chip density. You may have encountered examples of chip densities, such as
"64Mbit SDRAM" or "8M by 8". A 64Mbit chip has 64 million cells and is capable
of holding 64 million bits of data. The expression "8M by 8" describes one kind of
64Mbit chip in more detail.
In the memory industry, DRAM chip densities are often described by their cell organization.
The first number in the expression indicates the depth of the chip (in locations)
and the second number indicates the width of the chip (in bits). If you multiply the
depth by the width, you get the density of the chip. Here are some examples:
CURRENT AVAILABLE CHIP TECHNOLOGY
|
CHIP DEPTH IN MILLIONS OF LOCATIONS |
CHIP WIDTH IN BITS |
CHIP DENSITY = DEPTH x WIDTH |
| 16Mbit Chips |
| 4Mx4 |
4 |
4 |
16 |
| 1Mx16 |
1 |
16 |
16 |
| 2Mx8 |
2 |
8 |
16 |
| 16Mx1 |
16 |
1 |
16 |
| 64Mbit Chips |
| 4Mx16 |
4 |
16 |
64 |
| 8Mx8 |
8 |
8 |
64 |
| 16Mx4 |
16 |
4 |
64 |
| 128Mbit Chips |
| 8Mx16 |
8 |
16 |
128 |
| 16Mx8 |
16 |
8 |
128 |
| 32Mx4 |
32 |
4 |
128 |
| 256Mbit Chips |
| 32Mx8 |
32 |
8 |
256 |
MODULE CAPACITY
It's easy to calculate the capacity of a memory module if you know the capacities of
the chips on it. If there are eight 64Mbit chips, it's a 512Mbit module. However,
because the capacity of a module is described in megabytes, not megabits, you have
to convert bits to bytes. To do this, divide the number of bits by 8. In the case of
the 512Mbit module:
You may hear standard memory modules in the industry being described as:
"4Mx32" (that is, "4 Meg by 32"), or "16Mx64" ("16 Meg by 64"). In these cases,
you can calculate the capacity of the module exactly as if it were a chip:
Here are some additional examples:
STANDARD MODULE TYPES
| STANDARD |
MODULE DEPTH IN LOCATIONS |
MODULE WIDTH IN DATA BITS |
CAPACITY IN MBITS = DEPTH X WIDTH |
CAPACITY IN MB = MBITS/8 |
| 72-Pin |
1Mx32 2Mx32 4Mx32 8Mx32 16Mx32 32Mx32 |
1 2 4 8 16 32 |
32 32 32 32 32 32 |
32 64 128 256 512 1024 |
4 8 16 32 64 128 |
| 168-Pin |
2Mx64 4Mx64 8Mx64 16Mx64 32Mx64 |
2 4 8 16 32 |
64 64 64 64 64 |
128 256 512 1024 2048 |
16 32 64 128 256 |
As we mentioned earlier, there's only room for a certain number of chips on a PCB. Based
on an industry standard 168-pin DIMM, the largest capacity module manufacturers can
make using 64Mbit chips is 128MB; with 128Mbit chips, the largest module possible is
256MB; and with 256Mbit chips, the largest module possible is 512MB.
STACKING
Many large servers and workstations require higher capacity modules in order to
reach system memory capacities of several gigabytes or more. There are two ways to
increase the capacity of a module. Manufacturers can stack chips on top of one
another, or they can stack boards.
CHIP STACKING
With chip stacking, two chips are stacked together and occupy the space that one
chip would normally take up. In some cases, the stacking is done internally at the
chip manufacturing plant and can actually appear to be one chip. In other cases the
chips are stacked externally. The example below shows two externally stacked chips.

Example of externally stacked chips.
BOARD STACKING
As you might expect, board stacking involves putting two memory module printed
circuit boards (PCBs) together. With board stacking, a secondary board mounts onto
the primary board, which fits into the memory socket on the system motherboard.
Example of a stacked module.
|
|