几乎所有类型的易失性存储器都是基于动态随机存取存储器或 DRAM, 它比静态内存(SRAM)速度慢,但成本低,这是其广泛使用的主要原因。DRAM 的最新迭代是 DDR4 内存,它的下一代DDR5也即将上市。在本文中,我们将对 DDR3、DDR4 和 DDR5进行对比,并分析其差异。
DDR4 在 1200 到 1600MHz 之间运行,OEM 通常将 DDR4 速度宣传为 DDR4-3200 或 DDR4-3600,这不是操作频率,而是 MT/s 的数量(每秒百万次传输)。在 DDR4 内存中,每个周期发生两次传输(双倍数据速率),这就是有效数据速率是频率两倍的原因:1800MHz 为 3600MT/s,1600MHz 为 3200MT/s。
DDR4 是目前 DRAM 主流版本,于 2014 年发布,最初专注于降低电压和功耗,而不是提高工作频率,随着 AMD 锐龙处理器和 MCM 设计的到来,高速 DDR4 内存突然变得更加重要。以 1800MHz(或 3600MT/s)运行的 DDR4 内存模块现已广泛使用,有些甚至可以推到高达 5000MT/s。
DDR4 与 DDR3
除了明显的(更快的频率和更低的延迟)之外,DDR4 内存相对于 DDR3 的主要优势是更大的 DIMM 大小(高达 64 GB,DDR3 限制为 16 GB)和较低的工作电压,在1200到1600MHz运行时,DDR4运行在1.2v电压,而DDR3运行在1.5v电压,运行在400到1067MHz之间。
与从 DDR2 到 DDR3 的过渡不同,转向 DDR4 并没有增加突发长度或预取,DDR3 和 DDR4 的突发长度均为 8,预取为 8n。
但是,DDR3 和 DDR4 内存有一个关键区别,正如上面看到的,DDR3 具有 8n 预取,通过多路复用器连接到 I/O 控制器。
尽管 DDR4 保持与 DDR3 相同的 8n 预取和突发长度,但它每个通道有两个存储库组,两个 bank 组是分开的,可以执行两个独立的 8n 预取,这是通过使用多路复用器对其内部组进行时分多路复用来完成的。因此,DDR4 的有效预取比 DDR3 更宽。
DDR4 与 DDR5 内存
下一代 DDR5 内存标准已经公布,它们比现有的 DDR4 模块迈出了实质性的一步,DDR5 每个 DIMM 起步 4800Mbps 带宽,比 DDR4 的 3200Mbps 高出 50%,这种巨大的提升是通过内存结构的如下改进实现的:
32-Bank结构: DDR5采用32- bank结构,8个bank组,是DDR4的16bank设计的两倍,这有效地使内存访问可用性加倍。作为补充,DDR5还采用了Same Bank Refresh功能,与 DDR4 不同,当一条内存条正在运行或刷新时,允许访问其它内存条。
突发长度:使用 DDR4,突发速率被限制为 8,允许一次从缓存传输多达 16B。DDR5 将其增加到 16,并支持 32 长度模式,这允许仅使用一个 DIMM 来获取高达 64 字节的缓存行数据。
要了解突发长度的含义,需要知道内存是如何访问的。当 CPU 或缓存请求新数据时,地址被发送到内存模块和对应的行,然后定位对应列(如果不存在,则加载新行)。
然后整个列通过内存总线发送,以突发方式发送。对于 DDR4,每次突发为 8(或 16B)。使用 DDR5,它已增加到 16 个,进一步扩展到 32 个 (64B)。
内存访问(来源:Anandtech)
16n 预取:预取也已扩展到 16n 以跟上增加的突发长度,与 DDR4 一样,每个通道将有两个内存组阵列,通过 MUX 连接,从而实现更高的有效预取率。
- 通过采用决策反馈均衡 (DFE) 电路,在通道高速运行期间消除反射噪声,DDR5 显着提高了每个引脚的速度。
功能/选项 | DDR4 | DDR5 | DDR5优势 |
---|---|---|---|
数据速率 | 1600-3200 | 3200-6400 | 提高性能和带宽 |
VDD /VDDQ /VPP | 1.2/1.2/2.5 | 1.1/1.1/1.8 | 降低功率 |
内部VREF | VREF DQ | VREF DQ,VREF CA,VREF CS | 提高电压裕度,降低 BOM 成本 |
DRAM容量 | 2Gb-16Gb | 8Gb-64Gb | 支持更大的模组容量 |
预取 | 8n | 16n | 保持内部内核时钟低频 |
DQ 接收器均衡 | CTLE | DFE | 改善 DRAM 内接收到的 DQ 数据眼的开放度 |
占空比调整 (DCA) | 无 | DQS 和 DQ | 改进传输的 DQ/DQS 引脚上的信号 |
内部 DQS 延迟 监控 | 无 | DQS间隔振荡器 | 提高对环境变化的稳健性 |
片上 ECC | 无 | 128b+8b SEC,错误检查和消除 | 加强片上 RAS |
CRC | 写 | 读/写 | 通过保护读取数据增强系统 RAS |
BG | 4 BG x 4 bank (x4/x8) 2 BG x 4 bank (x16) | 8 BG x 2 bank (8Gb x4/x8) 4 BG x 2 bank (8Gb x16) 8 BG x 4 bank (16-64Gb x4/x8) 4 BG x 4 bank (16-64Gb x16) | 提高带宽/性能 |
命令/地址接口 | ODT、CKE、ACT、RAS、 CAS、WE、A<X:0> | CA<13:0> | 显着减少 CA 引脚数 |
ODT | DQ、DQS、DM/DBI | DQ、DQS、DM、CA 总线 | 提高信号完整性,降低 BOM 成本 |
突发长度 | BL8(和BL4) | BL16、BL32(和 BC8 OTF、BL32 OTF) | 仅允许 1 个 DIMM 子通道的 64B 高速缓存线提取。 |
MIR(“镜像”引脚) | 无 | 有 | 改进 DIMM 信号 |
总线反转 | 数据总线反转 (DBI) | 命令/地址反转 (CAI) | 降低模块上的VDDQ噪声 |
CA训练、CS训练 | 无 | CA训练、CS训练 | 提高 CA 和 CS 引脚的时序裕量 |
编写练级训练模式 | 有 | 改进 | 补偿不匹配的 DQ-DQS 路径 |
阅读训练模式 | 可能与 MPR | 用于串行(用户定义)、时钟和 LFSR 生成的训练模式的专用 MR | 使读取时序裕度更加稳健 |
模式寄存器 | 7 x 17 位 | 高达 256 x 8 位(LPDDR 类型读/写) | 提供扩展空间 |
预充电命令 | 所有bank和每个Bank | 所有Bank、每个Bank和同一Bank | PREsb 在每个 BG 中启用特定于预充电的 bank |
刷新命令 | 所有Bank | 所有Bank和同一Bank | REFsb 可以刷新每个 BG 中的特定 bank |
环回模式 | 无 | 有 | 启用 DQ 和 DQS 信号测试 |
- DDR5 还将内存密度从 16Gb 一路(向上)增加到 64Gb,并且 VDD 和 VPP 电压都从1.2v下降到 1.1v,以减少功耗。
- 同时,DDR5还将带来高达4200MHz(或8400MT/s)的工作时钟,而DDR4则被限制在1600MHz(或3200MT/s)。
- 最后,与 LPDDR4 和 5 类似,DDR5 将每个通道的总线宽度限制为 32 位(ECC 为 40 位),但同时每个 DIMM 使用两个通道,相反,一些 OEM 将使用四通道内存而不是双通道来弥补这一点。
最后,DDR5还添加了片上 ECC,并且模式寄存器也得到了显着升级,可以在上表中看到整个更改列表。