作者:Kathy Ren,AMD工程师;来源:AMD开发者社区
Versal器件上DDR4硬核控制器DDRMC跑仿真时,按照IP的默认设置,在IP wizard中使能了“Internal Responder”,就可以直接进行仿真了。这种方法非常的简单,但是,DDR4这一侧的模型是包含在内部的,接口信号是隐藏的,所以用户无法直接观察到DDR4管脚上的波形。
如果需要看到DDR4管脚这一侧的信号,则需要通过修改设计,把memory厂商提供的仿真模型外接到DDRMC上,再去进行仿真。
具体操作的流程如下:
1. AXI NOC IP中去掉 “Enable Internal responder”的勾选。
2. 点击“阅读原文”从Micron官网上下载最新版本的DDR4仿真模型
3. 在testbench中例化Micron DDR4仿真模型,并设置memory数据宽度,容量等相关参数。
4. 在Source File Properties窗口中选择 General -> Type。修改design_1_wrapper.v的文件类型,从 Verilog改成SystemVerilog。
5. 在design_1_wrapper.v文件中添加容量配置,如下:
import arch_package::*;
parameter UTYPE_density CONFIGURED_DENSITY = _4G; //BASED ON DRAM(COMPONENT) DENSITY
6. 确认命令地址信号的位宽和模型的正确连接。注意,当选项COMMAND ADDRESS MIRRORING打开的时候,每个rank的Bank Group和Bank地址线都要单独生成。
7. 通过Tcl使能模式寄存器的初始化流程:
set_property CONFIG.MC_XLNX_RESPONDER "false" [get_ips design_1_axi_noc_0_0]
8. 点击“Run Simulation”或者运行脚本launch_simulation开始仿真。
【直播预告】