![RAM 中是否有任何类型的控制器?](https://linux22.com/image/1584655/RAM%20%E4%B8%AD%E6%98%AF%E5%90%A6%E6%9C%89%E4%BB%BB%E4%BD%95%E7%B1%BB%E5%9E%8B%E7%9A%84%E6%8E%A7%E5%88%B6%E5%99%A8%EF%BC%9F.png)
我无法理解它(可能是语言障碍和/或我的母语中缺乏好的文章)。
让我们考虑一下普通消费类个人电脑。
所以有 CPU。如今 CPU 有一个 MMU(内存管理单元),负责从 RAM 写入和读取。
它是如何工作的?
它是直接从 RAM 读取还是更像是 CPU 和内存之间的中间件?
例如
CPU(“嘿,我有这个虚拟地址——把存储在那里的数据给我”)-> MMU(“好的,这个虚拟地址看起来像物理地址”)-> RAM(“???”);
RAM 是否会说“我会处理它 - 这是你的数据”(其中有某种控制器)还是 MMU 正在执行此操作(直接从 RAM 读取)?
答案1
您可以用任意一种方式来执行此操作,这取决于模块的实现。
维基百科上的内存控制器,强调添加。
DRAM 的读写是通过选择 DRAM 的行和列数据地址作为多路复用器电路的输入来实现的,其中DRAM 上的解复用器使用转换后的输入来选择正确的内存位置并返回数据,然后通过多路复用器传回以合并数据,从而减少操作所需的总线宽度。
多路复用器的实现方式取决于芯片。