[转载]内存小知识

转自:https://www.cnblogs.com/cuckoocommon/p/3967329.html 以及 https://www.jianshu.com/p/58a97182492c 等网页;由于后者原文极其不流畅(估计也是从别的什么地方——大概是手册或者说明书一类的资料——复制来的),某些地方按自己的理解做了修订。

DIMM 简介

DIMM 是在奔腾 CPU 推出后出现的新型内存条,它提供了 64 位的数据通道。了解 DIMM 需要先了解以下几个概念。

1、内存插槽:指用来插 DIMM 内存条的插槽。主板所支持的内存种类和容量都由内存插槽来决定的。一个插槽只能插一根 DIMM 内存条。

2、内存通道:一个 DDR 控制器中可能有一个内存通道,也可能有两个内存通道。内存通道对应实际的一组时钟、命令、地址、数据线。一个内存通道可以连接几个内存插槽。

3、DIMM 内存条:可分为 UDIMM、RDIMM、LRDIMM 等。DIMM 是由多个内存颗粒组合而成的,内存颗粒又分为数据颗粒和 ECC 颗粒,DIMM 中还含有 SPD,里面有关于该 DIMM 条的各种信息。

4、内存颗粒:由行、列、bank 组成。一个内存颗粒的容量由行数 * 列数 * bank 数 * xn 得到。xn 是指 x4、x8 或者 x16。x4 是指由一个行地址、列地址和一个 bank 地址决定的一个存储单元存储了4bit。

5、rank:是指组成一个 64bit 数据的一组颗粒。如果是 x4 的颗粒,则 16 个颗粒组成一个 rank;x8 的则是 8 个颗粒;x16 的 4 个颗粒。

一个 DIMM 条可以由多个 rank 组成,根据该 DIMM 条上颗粒的个数和颗粒的位宽,如果是 x4 的颗粒有 32 个,则有 2 个 rank。

内存标签上的各个参数代表什么意思?

单列、双列和四列 DIMM各是什么含义?

单列 DIMM 具有一组内存芯片,在内存中写入或读取数据时将会访问这些芯片。双列 DIMM 相当于同一模块中包含两个单列 DIMM, 但每次只能访问一列。 四列 DIMM 相当于同一模块中包含两个两列 DIMM,但每次只能访问一列。在 DIMM 中写入或读取数据时,服务器内存控制子系统将在 DIMM 中选择正确的列。双列和四列 DIMM 为现有内存技术提供了最大容量。例如,如果当前 DRAM 技术支持 2 GB 单列 DIMM,则双列 DIMM 为 4 GB,四列 DIMM 为 8 GB。

服务器内存 UDIMM 与 RDIMM 以及 LRDIMM 的区别?

  • UDIMM
    全称是无缓冲双信道内存模块(Unbuffered Dual In-Line Memory Module)。无缓冲是指地址和控制信号不经缓冲器,无需做任何时序调整,直达 DIMM 上的 DRAM 芯片。UDIMM 由于在 CPU 和内存之间没有任何缓冲,因此同频率下延迟较小。数据从 CPU 传到每个内存颗粒时,UDIMM 需保证 CPU 到每个内存颗粒之间的传输距离相等,这样并行传输才有效,而这需要较高的制造工艺,因此 UDIMM 在容量和频率上都较低。容量最大支持 4GB,频率最大支持 2133 MT/s。它不支持服务器内存满配。使用 UDIMM 内存时,尽管支持 3 通道,但每通道最大只能用 2 个插槽,所以每边可以插 6  条,总共只能插 12 条内存,不能插满 18 个插槽。虽然性能会有所下降,但是对于预算比较有限的用户来说,是个很好的方案。
  • RDIMM
    带寄存器的双信道内存模块(Registered Dual In-Line Memory Module),它表示控制器输出的地址和控制信号经过 Register 芯片寄存后输出到 DRAM 芯片,控制器输出的时钟信号经过 PLL 后到达各个 DRAM 芯片。比起 UDIMM 来由于有了寄存器,所以处理速度等各方面性能都有不少提升。它有两种工作模式,Registered 模式(寄存器模式)和 Buffered(缓冲器模式)模式。在支持 Registered 工作模式的主板上工作时,Registered 内存工作于 Registered 模式。这时主板上的地址信号和控制信号会比数据信号先一个时钟周期到达 DIMM,送入 Register 芯片后会在其中停留一个时钟周期,然后在下一个时钟信号的上升沿从 Register 输出,与此时从主板上到达 DIMM 的数据信号一起同时传送到 SDRAM。当 Registered 内存工作在普通的主板上时,为 Buffered 工作模式。这时所有的信号基本上是同时到达 DIMM 的,再同时传输。这时的 Register 芯片在功能上只相当于一个简单的 Buffer,其输入到输出之间是直通的,只简单地起到改善地址信号和控制信号的作用。送到 SDRAM,时序上与 Unbuffered 内存是一样的。RDIMM 适用于不同的主板(不过一般用于服务器),支持最高配置,不会受到内存插槽的数量限制。RDIMM 在内存条上增加的寄存器(位于 CPU 和内存颗粒之间),既减少了并行传输的距离,又保证了并行传输的有效性。由于寄存器效率很高,因此相比 UDIMM,RDIMM 的容量和频率更容易提高。容量支持 32GB,频率支持 3200 MT/s。
  • LRDIMM
    全称是 Load Reduced DIMM,即低负载 DIMM。相比 RDIMM,LRDIMM 并未使用复杂寄存器,只是简单缓冲,缓冲降低了下层主板上的电力负载,但对内存性能几乎无影响。此外,LRDIMM 内存将 RDIMM 内存上的Register 芯片改为 iMB(isolation Memory Buffer)内存隔离缓冲芯片,直接好处就是降低了内存总线负载,进一步提升内存支持容量。LRDIMM 可以说是 RDIMM 的替代品,其一方面降低了内存总线的负载和功耗,另一方面又提供了内存的最大支持容量,虽然其最高频率和 RDIMM 一样,均为 3200 MT/s,但在容量上提高到 64GB。并且,相比 RDIMM,Dual-Rank LRDIMM 内存功耗只有其 50%。
  • 总结
    RDIMM 支持两种工作模式,支持高性能的 Registered DIMM 工作模式,可以达到内存容量的最高配,价格较高。UDIMM 只能工作在 Unbuffered 模式,无法达到内存的最高配,性能不如 RDIMM,但是价格相对较低。
  • 举例说明
    内存插法。这里要说下的是,由于服务器的 CPU 常常会不止一个,所以内存插法要注意。以双 CPU 的服务器为例,左右两边都有内存插槽,它们属于一个 CPU,所以每个 CPU 只能分到 72GB 的内存,即 9*8GB;插内存时候要能对称,尽量避免 5 条 7 条这类的插法。因为内存支持 3 通道,所以可以每边 3 条,或者继续双通道 2 条也可以,但是 5 条分配不均,启动不了的,7 条也一样。

Memory Operating Mode(内存运行模式)

如果安装了有效内存配置,则会显示内存运行类型。设置为 Optimizer mode(优化器模式)时,内存控制器彼此独立运行,以提高内存性能。设置为 Mirror mode(镜像模式)时,则将启用内存镜像。设置为 Advanced ECC Mode(高级 ECC 模式)时,两个控制器将组合成 128 位的模式,运行多位高级 ECC。Spare mode(备用模式)选项仅出现在配有 Intel Xeon 5600 系列处理器的系统中。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注