What Is the Memory Controller?

The memory controller is an important part of controlling the memory inside the computer system and using the memory controller to exchange data between the memory and the CPU. The memory controller determines the maximum memory capacity, memory bank number, memory type and speed, memory particle data depth and data width and other important parameters that can be used by the computer system. That is to say, it determines the memory performance of the computer system. The overall performance of the computer system has a greater impact.

The advantage of the integrated memory controller in the CPU is that it can effectively control the memory controller to work at the same frequency as the CPU core, and because the data exchange between the memory and the CPU does not need to pass through the North Bridge, it can effectively reduce the transmission delay. For example, this is like moving the goods warehouse directly next to the processing workshop, greatly reducing the time required to transport raw materials and finished products to and from the goods warehouse and the processing workshop, and greatly improving production efficiency. In this way, the overall performance of the system has also been improved. [2]
Take AMD CPU as an example:
The advantages of CPU memory integrated memory controller are many advantages of CPU memory integrated memory controller are three points:
Integrated memory controller in the first CPU
The memory controller of a traditional computer system is located on the motherboard chipset
Many applications have more complex read patterns (almost randomly, especially when cache hits are unpredictable) and do not make efficient use of bandwidth. A typical application of this type is business processing software. Even if it has CPU characteristics such as out of order execution, it will be limited by memory latency. In this way, the CPU must wait until the data required for the operation is loaded by the divisor before executing the instruction (whether the data comes from the CPU cache or the main memory system). The memory latency of the current low-end system is about 120-150ns, and the CPU speed reaches more than 3GHz. A single memory request may waste 200-300 CPU cycles. Even with a cache hit rate of 99%, the CPU may spend 50% of its time waiting for the end of a memory request-for example due to memory latency.
It can be seen that the latency of the Opteron integrated memory controller is much lower than the latency of the chipset supporting the dual-channel DDR memory controller. Intel has also integrated the memory controller inside the processor as planned, which will cause the Northbridge chip to become less important. However, the way the processor accesses main memory has changed, which helps increase bandwidth, reduce memory latency, and improve processor performance.
The memory controller of a traditional computer system is located inside the North Bridge chip of the motherboard chipset. To exchange data with the CPU, the CPU needs to go through five steps: "CPU-North Bridge-Memory-North Bridge-CPU. Data is transmitted through multiple stages, and the data delay is obviously large, which affects the overall performance of the computer system; and AMD's K8 series CPU (including various processors with sockets 754/939/940 and other interfaces) integrates a memory controller and CPU The data exchange process with the memory is simplified to "CPU-memory-CPU" three steps, two steps are omitted, which obviously has lower data latency compared with the traditional memory controller solution, which helps To improve the overall performance of the computer system. [1]

IN OTHER LANGUAGES

Was this article helpful? Thanks for the feedback Thanks for the feedback

How can we help? How can we help?