Nearly all computing devices require working memory to function properly. Take a look at your favorite device. Whether it's your TV, smartphone, or perhaps even your calculator, chances are it has its own memory module to store temporary data. Your computer works the same way, using its RAM to store this data.
Random Access Memory (RAM) is a type of memory that deals with application data storage. As the computer boots up, data is loaded onto the RAM, then read by the CPU. This data is read sequentially, which means it is accessed at random, increasing the rate at which it is retrieved. For contrast, data contained in Read-Only Memory (ROM) is read sequentially. Thus, it searches the entire device for a specific piece of information before moving on to the next instruction.
The type of data stored within the computer's RAM is more volatile in nature. This means data is not retained. Instead, it disappears once power is removed.
The technology used in the manufacture of RAM sticks today is a far cry from what it was during the early years of the modern computer. These have increased the amount of data stored while also increasing the speed at which these are accessed.
RAM can be categorized into two main types: physical size, processing speed, and memory capacity. These are Static Random Access Memory (SRAM) and Dynamic Random Access Memory (DRAM).
SRAM refers to a type of RAM that stores data statically. This means data is stored on a single capacitor and remains there if power is available. Because data is stored statically, it is easily retrieved and requires less power than DRAM.
SRAM is typically more expensive to manufacture than DRAM because of its complex structure. The complexity of its structure, unfortunately, limits its storage capacity. This makes SRAM more suitable for non-memory intensive applications such as the CPU memory cache and hard drive buffers.
The DRAM is another type of RAM wherein data is stored dynamically. As data is loaded onto the memory module, individual bits of data are placed on separate capacitors. This is beneficial in two ways. First, it increases the amount of data it can hold while 1.) requiring less physical space and 2.) using less power. However, this also means it needs to be constantly refreshed, increasing the amount of power required for data retrieval.
While DRAM has a bigger data storage capacity than SRAM, it is also significantly less expensive to manufacture. This makes it ideal for personal computers as their main memory. Under DRAM, other types are available, with the most popular being synchronous DRAM (SDRAM), which is a faster version of DRAM.
Personal computer systems in the past were only able to use a single DRAM on each device. This was because memory support in CPUs was still limited. However, newer generations of CPUs have upgraded memory controllers that can communicate with multiple memory modules at once. This is known as multi-channel support.
Motherboards facilitate data transfer between the RAM and the processor through pathways called channels. Using these channels, the CPU communicates with the DRAM constantly to exchange memory data.
Through the years, bottlenecks were observed, which occurred when the memory cannot keep up with the technology of the CPU. This was highly present in systems where CPU bus speed exceeded memory speed. This creates an inefficiency in the flow of data between the CPU and the DRAM.
To address this bottleneck, dual-channel memory architecture was introduced. Eventually, triple-channel and quadruple-channel memory architecture were also invented to make memory processing even faster.
Multi-channel memory architecture was created mainly because there was no available technology yet to optimize the memory-CPU channel. So, instead of waiting for an upgrade, an additional channel was introduced with the same technology to increase the efficiency in which data is processed.
For a multi-channel memory configuration to work, the system will require a compatible motherboard with two or more separate memory modules. The memory modules are installed under a parallel configuration to increase the amount of memory bandwidth available. The channels are then read separately by the memory controller. This theoretically halves the time it needs to process data between the CPU and the DRAM.
Out of all of the configurations available, the dual-channel configuration is the most popular, especially among notebooks. Under the dual-channel, a “matched pair” of memory modules is read simultaneously by the memory controller. In a matched pair, both memory modules must have the same:
Some motherboards and CPUs can support multiple memory modes. This will depend on several factors:
Single-Channel (Asymmetric Mode). The single-channel configuration provides single-channel bandwidth. It is activated when a single module or multiple modules with unequal capacities are installed. When running multiple modules on asymmetric mode, the system processes data using the slowest rate.
Dual-Channel (Interleaved Mode). Interleaved mode processes data with higher throughput than the asymmetric mode. This is activated when an equal number of memory modules are in use and are installed in the appropriate DIMM slots. Memory modules must have the same capacity but do not need to have the same speed to operate in dual channel mode. But the same rules for speed apply. Therefore, for optimal efficiency, use identical memory modules.
Triple-Channel. Triple-channel mode can only be activated in motherboards that support the configuration. It is enabled when three identical memory modules are installed in the appropriate DIMM slots. The system reads from three modules in parallel, which increases the available memory bandwidth by 50%. There is also less memory latency, and data is accessed sequentially, making data processing much faster.
Quad-Channel. Quad-channel mode is activated when four DIMM slots are occupied with identical memory modules. When more DIMM slots are available, it can be used when memory modules are installed in multiples of four.
Flex Mode. Flex mode is a special configuration. It occurs when you run single and dual-channel modes simultaneously. This can be achieved in three ways:
Memory is perhaps the essential part of a computer system. Without system memory, programs won't execute. And when there's not enough system memory, programs won't execute properly. For a more efficient way of processing memory data, multi-channel architecture was introduced. This enabled faster processing of data by opening more channels, which increased memory bandwidth considerably.