PC Hardware

Memory Configuration

The capability of the computer's CPU, its memory chip configuration, and its operating system all play roles in how the computer's memory is allocated. Technicians should understand the terms and processes involved, both for their own benefit and in order to explain the details to a customer if the question arises.

As mentioned earlier, the CPU processes data in byte-wide (8-bit) pieces. The power of a processor is often expressed by how many such pieces it can handle at a time. For example, the Intel Pentium is a 64-bit CPU, meaning that it can handle 64 bits at once. That amounts to 8 bytes (8 x 8). These terms always refer to byte-wide memory (8 bits).

It's important to remember that each 30-pin SIMM always supplies 8 data bits (one byte) per CPU clock cycle, no matter how many megabytes it holds. When the bus cycle demand is greater than the number of bits a module provides, a bank of modules equal to the bit width must be used to feed the data demands of the CPU and fill the entire data bus. An 8-bit data bus (8086 or 8088) needs 8-bit-wide memory to fill one bank. A 16-bit data bus requires 16-bit-wide memory to fill one bank, and so on. If you are installing 30-pin SIMMs (each is 8 bits wide) on a 16-bit machine, you would need two rows of chips to completely fill the data bus.

A 286 processor needs two rows of chips to make one bank. A 386DX and a 486 have 32-bit external data buses-four rows to make a bank. The Pentium and Pentium Pro each have 64-bit external data buses-eight rows of 8-bit-wide memory to make one bank. Each of the rows that make a bank must be filled with identical chips (size and speed). See Figure 7.4.

Click to view at full size.

Figure 7.4 Banking

Most motherboards provide several rows of slots for adding memory, often referred to as banks. Be careful with the word "bank." It is used to describe the necessary rows of chips, as well as the slots into which they are inserted.

SIMMs usually require matched pairs to form a bank of memory, whereas DIMMS require only one card. To calculate the number of SIMMs needed to make one bank, use the following formula: Divide the number of data bits per CPU cycle by the bit width of the module. (For 30-pin SIMMs, that is always 8 bits.) A 32-bit external data bus with 30-pin SIMMs requires 32 (the width of the data bus) divided by 8 (the number of bits per SIMM module) or 4 (30-pin SIMMs per bank).

There are some rules to follow when banking:

  • All rows in a bank must be either completely filled or completely empty.

  • Each bank is numbered, starting with bank 0.

  • In most systems, DRAM should be installed in bank 0 before any other bank is used.

  • Refer to the motherboard documentation for bank numbering and installation directions.