<SCRIPT language='JavaScript1.1' SRC="http://ad.doubleclick.net/adj/N5823.FedMedia/B4470156.26;abr=!ie;sz=300x250;click=http://thirdparty.fmpub.net/click/261739?r=;ord=3564716353?"> </SCRIPT>
The system RAM memory prevents the PC of achieving its maximum capable performance. This happens because the processor (CPU) is faster than RAM memory and usually it has to wait for the RAM memory to deliver data. During this wait time the CPU is idle, doing nothing (that's not absolutely true, but it fits in our explanation). In a perfect computer, the RAM memory would be as fast as the CPU. Dual channel is a technique used to double the communication speed between the memory controller and the RAM memory, and thus improving the system performance. In this tutorial we will explain everything you need to know about dual channel technology: how it works, how to set it up, how to calculate transfer speeds and more.
Before explaining what dual channel is, let’s first explain how RAM memory is traditionally connected to the system.
Memory is controlled by a circuit called memory controller. This circuit is physically inside the chipset (north bridge chip – or MCH, Memory Controller Hub, as Intel calls this chip –, to be more specific), in the case of Intel CPUs, and inside the CPU, in the case of current AMD CPUs (i.e., CPUs based on AMD64 architecture on: Athlon 64, Phenom, etc; older AMD CPUs like Athlon XP use the same scheme as Intel CPUs).
RAM is connected to the memory controller thru a series of wires. These wires are divided into three groups: data, address and control. The wires from the data bus will carry data that is being read (i.e., transferred from the memory to the memory controller and then to the CPU) or written (i.e., transferred from the memory controller to the memory, coming from the CPU). The wires from the address bus tells the memory modules where exactly (i.e., which address) that data must be retrieved from or stored. And the control wires send commands to the memory modules, telling them what kind of operation is being done – for example, if it is a write (store) or a read operation. Another important wire present on the control bus is the memory clock signal. We summarize this in Figure 1. Our drawing is based on an Intel system. On AMD CPUs the memory controller is inside the CPU and thus the memory bus comes directly from the CPU with no “middleman”.
click to enlarge
Figure 1: How memory is accessed.
The memory speeds (clock rates), maximum capacity and types (DDR, DDR2, DDR3, etc) a system can accept is defined by the chipset (Intel) or by the CPU (AMD). For example, accepting DDR3 memories on an Intel system will depend on the chipset (and on the motherboard providing the right kind of memory sockets) and not on the CPU. AMD systems currently can’t work with DDR3 memories because the embedded memory controller can’t recognize this technology.
As for the clock rates, if the memory controller can only generate a clock rate of, let’s say, 667 MHz (333 MHz x 2), your DDR2-800 memories will work at 667 MHz on this particular system. This is a physical limitation of your memory controller. Usually you will see this kind of limitation only on Intel systems, as AMD CPUs can recognize DDR2 memories up to 800 MHz (socket AM2 CPUs) or up to 1,066 MHz (socket AM2+ Phenom CPUs).
Another interesting thing refers to the maximum amount of memory the system can recognize. Most Intel CPUs have a 32- or a 36-bit memory address bus (here we are referring to the address bus available on the CPU external bus, i.e., on the CPU front side bus). This allows the CPU to recognize up to 4 GB (2^32) or 64 GB (2^36) of memory, respectively. But since it is the memory controller who will access the memory (not the CPU directly), this middleman may limit the maximum amount of RAM your system can have. For example, Intel P35 and G33 chipsets can only access up to 8 GB of RAM (2 GB per memory socket). Plus the motherboard manufacturer may not make available enough memory sockets on the motherboard in order to achieve the maximum amount of RAM that the CPU can theoretically access. For example, if a manufacturer produces a motherboard based on Intel G33 chipset with only two memory sockets, the maximum amount of memory you can have is 4 GB (2 GB per socket), even thought the chipset is capable of accessing up to 8 GB.
Since all kinds of memory modules available today are 64-bit devices, the memory data bus is 64-bit wide. What dual channel technology does is expand the memory data bus from 64 to 128 bits.