Monday, October 4, 2010

Understanding Dual Channel Memory Architecture

Dual channel is the ability that some memory controllers have to expand the width of their data buses from 64 to 128 bits. Considering that everything remains the same (clock speeds, for example), the memory maximum theoretical transfer rate is doubled by the use of this technique.

Lets first look at the traditional Single Channel System :

When we say that the memory data bus is 64-bit wide, this means that there 64 wires (yes, physical wires on the motherboard) connecting the memory controller ( north bridge ) and the memory so
ckets. These wires are labeled D0 thru D63. The memory data bus is shared among all memory sockets. The address and control busses will activate the proper memory socket depending on the address where data must be stored or read from. We illustrate this below :

And now on to the newer Dual Channel System :

On systems supporting dual-channel technology, the memory data bus is expanded to 128 bits. This means that on such systems there are 128 wires connecting the memory controller and the memory sockets. These wires are labeled D0 thru D127. Since each memory module can only accept 64 bits per cycle, two memory modules are used to fill the 128-bit data bus. So for dual-channel technology to work you need to have an even number of memory modules on your system (assuming that your AMD CPU or Intel chipset support this technology, of course). If you install just one module this technique won’t work because memory will still be accessed 64 bits per cycle. In other words, dual channel works by accessing two memory modules in parallel, i.e., at the same time.

Because the two modules are accessed at the same time, they must be identical (same capacity, same timings and same clock rate).

here is an video illustrating the performance leap :

Excerpted from Hardware Secrets Article by Gabriel Torres

No comments:

Post a Comment