我正在使用 Zynq 板,其中创建了自定义 AXI 4 lite 从外设,然后从 IP 存储库添加。然后这些块已经成功连接Run Connection Automation
。然后成功生成比特流。
进一步推出了 SDK。有一个空白的 C 项目,其中包含用于 ZYNQ PS 的简单代码。此代码已按照 pdf“设计自定义 AXI4 lite Slave Peripheral ”(下图所示)进行了更改。
自定义 AXI 从外设的写入和读取功能
现在 SDK 执行没有任何错误,但是当我在 SDK 监视器上观察地址时,没有数据写入其中(如下图所示)。
我可能哪里出错了,或者我错过了什么?在 Vivado 16.2 上使用 vhdl。
我已经尝试过: -使用 XSDB 控制台处理命令
mwr -force 0x43C00000 0x01234
那里没有变化。
检查 Vivado 地址编辑器以包含相同的基地址
xparamters.h
非常感谢你提前..
更新:该xparameters.h
文件没有与vivado地址编辑器相同的基地址和高地址。因此尝试将链接器脚本中的“内存区域”从 DDR 更改为 RAM 在此处输入图像描述,
现在,当在“变量”窗口中观察时,当单击“步入”按钮时,我确实得到了预期的值变化,在此处输入图像描述 .. XSDB 控制台输出和内存监视器输出保持不变。
该hardware platform specification
文件确实显示了具有正确预期基址和高地址的自定义 AXI lite。在此处输入图像描述