2. DDR存储器基础与Kria选型

在 Kria SOM 上做 DDR 接口设计与验证,第一步不是打开 Vivado 或写约束,而是把“协议—器件—规划”这条链想清楚:DDR4 与 LPDDR4 在信号、时序、功耗和拓扑上有哪些本质差异?Kria SOM 板载的 DDR 器件到底挂在哪、容量多大、位宽多少?应用需要多少带宽和容量,才能反推出合理的接口配置?本节围绕这三个问题展开,为后续的控制器配置、时序约束和板级验证打基础。

一、DDR4 与 LPDDR4 的协议要点差异

DDR4 和 LPDDR4 都属于双倍数据率同步动态随机存储器,核心存储阵列仍是电容加访问晶体管,读写前需要激活行、再访问列,并周期性刷新。但两者面向的场景不同:DDR4 面向标准服务器、桌面和嵌入式板卡,强调容量与带宽;LPDDR4 面向移动和低功耗嵌入式,强调每比特功耗与封装尺寸。

从协议层面看,最值得关注的差异有四点。第一是电压与信号摆幅:DDR4 的 VDD 通常为 1.2V,VDDQ 也是 1.2V;LPDDR4 的 VDD1 为 1.8V、VDD2 为 1.1V、VDDQ 为 1.1V,I/O 摆幅更低,因此对电源完整性和参考电平更敏感。第二是通道结构:DDR4 每个通道为 64 位或 32 位数据,采用单端 DQ 加差分 DQS;LPDDR4 每个 channel 为 16 位,且支持双 channel 结构,DQ 为单端但 DQS 为差分,命令地址总线为单端。第三是命令时序:DDR4 使用 tRCD、tRP、tRAS、CL、CWL 等经典参数;LPDDR4 除这些外,还引入 tDQSCK、tDQS2DQ 等与 DQS 和 DQ 之间偏斜相关的参数,对训练要求更高。第四是低功耗状态:LPDDR4 支持自刷新、深度睡眠和部分阵列自刷新,DDR4 也有自刷新和掉电模式,但 LPDDR4 的状态切换更细、更频繁。

对 Kria 设计者而言,这些差异直接决定控制器 IP 的选择、PCB 走线规则和训练策略。例如 LPDDR4 的 DQS 与 DQ 之间偏斜必须通过写均衡和读训练补偿,而 DDR4 虽然也训练,但容差相对宽松。若把 LPDDR4 当成 DDR4 来约束,很可能在高温或低压角下出现读眼图闭合。

DDR4 与 LPDDR4 协议要点对比及 Kria SOM 选型关注点 DDR4 协议要点 电压域 VDD = 1.2V,VDDQ = 1.2V I/O 摆幅较高,参考电平 Vref = VDDQ/2 通道与位宽 每通道 64bit 或 32bit 数据 DQ 单端,DQS 差分,CA 单端 关键时序参数 tRCD、tRP、tRAS、CL、CWL tDQSCK、tDQSQ 容差相对宽松 低功耗状态 自刷新、掉电模式 状态切换粒度较粗 典型应用 嵌入式板卡、工业控制、视频缓存 LPDDR4 协议要点 电压域 VDD1 = 1.8V,VDD2 = 1.1V,VDDQ = 1.1V I/O 摆幅低,对电源噪声更敏感 通道与位宽 每 channel 16bit,支持双 channel DQ 单端,DQS 差分,CA 单端 关键时序参数 tRCD、tRP、tRAS、CL、CWL tDQSCK、tDQS2DQ 训练要求高 低功耗状态 自刷新、深度睡眠、部分阵列自刷新 状态切换细、频繁 典型应用 移动设备、边缘 AI、低功耗嵌入式 对比 选型

二、Kria SOM 搭载的 DDR 器件规格

Kria 系列 SOM 目前主要有 K26、K24 和 KV260 载板配套的 SOM 形态。以常见的 K26 SOM 为例,其 PS 侧 DDR 通常为 LPDDR4 或 LPDDR4X,容量有 4GB 和 8GB 等选项,位宽为 32bit(双 channel,每 channel 16bit),数据率可达 2400Mbps 至 4266Mbps 量级。PL 侧则通过 DDR4 或 LPDDR4 控制器外接器件,具体取决于 SOM 型号和载板设计。K24 SOM 更偏向成本敏感场景,DDR 容量和位宽相对较小。

需要特别注意的是,Kria SOM 的 DDR 器件是板载的,用户不能随意更换。因此选型阶段必须确认三件事:第一,PS DDR 的容量和位宽是否满足操作系统和应用程序的常驻内存需求;第二,PL DDR 是否独立于 PS DDR,若独立,其容量和带宽是否满足数据缓存或帧缓冲需求;第三,DDR 控制器的最大数据率是否与 SOM 器件额定速率匹配,避免降频使用导致带宽不足。

以 KV260 为例,其 SOM 板载 LPDDR4 为 PS 侧服务,容量 4GB,位宽 32bit,数据率约 2400Mbps。若在 PL 侧需要额外大容量缓存,通常通过载板上的 DDR4 插槽或板载 DDR4 器件实现。设计前应查阅对应 SOM 的硬件手册和 Xilinx/AMD 的 DDR 控制器文档,确认控制器支持的数据率、位宽和时序参数范围。

三、带宽与容量规划方法

带宽规划的核心公式是:理论带宽 = 数据率 × 位宽 / 8。例如 32bit 位宽、2400Mbps 数据率,理论带宽为 2400 × 32 / 8 = 9600MB/s,约 9.6GB/s。但实际可用带宽受刷新、激活、读写切换、命令开销和控制器效率影响,通常只能达到理论值的 60% 至 80%。因此规划时应按 70% 左右估算有效带宽。

容量规划则从应用需求出发。以视频处理为例:若需要缓存 4K 30fps 的 RGB888 帧,单帧大小为 3840 × 2160 × 3 ≈ 24.9MB,若缓存 8 帧,约需 200MB。若同时运行 Linux 系统,PS 侧常驻内存约 1GB 至 2GB,则 4GB LPDDR4 可以满足。若应用涉及多路视频或大模型推理,则需重新核算。

下面给出一个可参考的规划示例表,用于快速估算带宽和容量需求。表中数据为教学示例,实际设计应以具体 SOM 手册和应用实测为准。

应用场景 数据率 (Mbps) 位宽 (bit) 理论带宽 (GB/s) 有效带宽 (GB/s) 容量需求 (GB)
4K30 视频缓存 8 帧 2400 32 9.6 6.7 0.2
Linux + 边缘推理 2400 32 9.6 6.7 2.0
多路视频 + 大模型 4266 32 17.1 12.0 8.0
规划提示:带宽估算时,先算理论值,再乘以 0.7 作为有效带宽;容量估算时,先算应用峰值需求,再预留 30% 余量给系统开销和碎片。

四、从规划到验证的衔接

完成带宽和容量规划后,下一步是确认 DDR 控制器配置是否与规划一致。在 Vivado 中配置 PS DDR 时,需要选择正确的器件型号、数据率、位宽和时序参数。若使用 PL DDR,则需在 IP 中设置对应的控制器模式、数据率和位宽。配置完成后,通过读写测试和眼图扫描验证实际带宽和信号质量。

验证时,可先运行 AMD 提供的 DDR 内存测试工具,观察读写是否通过;再用性能测试程序测量实际带宽,与规划值对比。若实际带宽低于有效带宽的 70%,应检查控制器效率、刷新开销和 PCB 走线质量。若容量不足,则需重新评估应用内存占用或更换 SOM 型号。

注意:LPDDR4 的电源域较多,PCB 设计时需确保 VDD1、VDD2、VDDQ 的电源完整性和去耦电容布局,否则即使控制器配置正确,也可能在高温或低压角下出现训练失败。

本节从协议差异出发,落到 Kria SOM 的具体器件规格,再给出带宽与容量的规划方法。掌握这条链路后,后续的控制器配置、时序约束和板级验证才有明确的依据,而不是盲目试参数。