目前,许多嵌入式 SoC 的 DDR 规格从 DDR4 升级到 DDR5。本系列设计须知文章是笔者参与一个 DDR5 SoC 项目时,总结的一些 DDR4 升级到 DDR5 的设计要点。
DDR5 tREFI 变化
根据 JEDEC79-5 第 4.13.5 章节,DDR5 所需的刷新间隔参数 tREFI 从 DDR4 时代的 7.9us,减少到了 3.9us。这会对 DDR 的带宽性能产生直接影响。
JEDEC79-5 这是笔者手上一份比较早期的 Spec,建议有条件的读者参阅更新版本的 Spec。
表 1 DDR5 tREFI 和 tRFC参数
表 2 DDR4 tREFI 和 tRFC 参数
tREFI (Refresh Interval)是两次刷新命令之间的最大间隔,在不考虑延后刷新命令的情况下。tRFC 是单次刷新命令的持续时间。
从上表可以看到,以 16Gb 颗粒为例,DDR5 需要加密一倍的刷新命令,不过单次刷新命令持续时间稍短一些。
- DDR4 tRFEI = 7.8us, tRFC = 350ns (Option-2)
- DDR5 tREFI = 3.9us,tRFC = 295ns
这里仅考虑 Normal 刷新模式和普通工作温度(0°C - 85°C)。并且只考虑 DDR5 的全 Bank 刷新 (REFab) 命令,这是 DDR5 新引入的特性,将刷新命令分为全 Bank 刷新以及单个 Bank 刷新(REFsb)。
目前,项目中仍然沿用 DDR4 的刷新方式,也就是只用到 DDR5 的全 Bank 刷新,后期再研究下单个 Bank 刷新的应用场景。
刷新间隔对理论带宽性能的影响
在评估 DDR 性能时,通常会在对同一行进行连续读或写操作的场景中衡量其最高带宽和利用率(Utilization)。此时影响 DDR 性能的主要因素就是刷新命令。刷新期间将不能给 DDR 发送新的读写命令。
仍以 16Gb 器件为例:
DDR4 Utilization = (7.8us - 350ns) / 7.8us = 95.5%
DDR5 Utilization = (3.9us - 295ns) / 3.9us = 92.4%
可以看到 DDR5 的理论带宽因为刷新命令密度需要增加一倍,所以低于 DDR4 的理论带宽。
延后刷新命令特性
延后刷新命令也就是灵活调度刷新命令(Refresh Operation Scheduling Flexibility )特性,可以将 N 个刷新命令延后发送,以增大两个刷新命令之间的间隔,不过还是需要保证这 N 个刷新命令之间的平均刷新间隔满足 tREFI。
DDR5 因为刷新间隔更小,所以为了避免打断一些连续读写命令,会更频繁地使用延后刷新特性。如果项目中有实际的应用场景,笔者后续再更新相关文章。
不过需要注意的是 DDR4 最多允许 8 个延后刷新命令,而 DDR5 在普通情况下只允许最多 4 个全 Bank 刷新命令。
图 1. DDR5 延后刷新命令
图 2. DDR4 延后刷新命令
总结
尽管 DDR5 相比于 DDR4,数据速率得到提升,但因为 DDR5 的刷新命令密度需要增加一倍,所以最大理论带宽低于 DDR4 的理论带宽,DDR5 和 DDR4 最大理论带宽分别是 92.4% 和 95.5%。
参考文献
JESD79-5
JESD79-4C
后续选题
DDR5 不同的读写 tCCD 参数, Masked 写对性能的影响
DDR5 额外刷新命令(RFM)对性能的影响
END
作者:LJGibbs
原文:https://zhuanlan.zhihu.com/p/...
相关文章推荐
- DeepSeek 推荐的开源项目
- 跨时钟域背景下的亚稳态和 MTBF 是什么
- FPGA DSP:Vivado 中带有 DDS 的 FIR 滤波器
- DeepSeek 接入到 VSCode 实现提词及代码助写
- 基于 FPGA 的遥感图像智能处理系统
更多 FPGA 干货请关注FPGA的逻辑技术专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。