This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:Code Composer Studio
您好!
我想将 DIO 数据包从 FPGA 发送到 C6678的 DRR3。
我更改 了 SRIO_TputBenchmarking_evmc6678_C66TestProject 项目。 我是否应该添加一些保留到 DDR3的新代码(如配置、内存部分、内存访问和...)?
但是、我从 FPGA 发送 NWRITER、但无法写入 C6678的 DDR3 (例如地址0x8000000)。
当我将读取从 DSP 发送到 FPGA、并且预期数据应该写入 C6678的 DDR3 (例如 地址0x8000000)时、也会发生此问题。
非常感谢、
Mohammad
您好!
您需要 DDR3初始化、并且可以使用 GEL 文件来完成。 如何初始化 DDR3? DDR3是否可以由 CPU 内核等其他主器件访问? 如果 SRIO 测试应用可以写入 DSP 的其他位置、例如、MSMC? 这是 DDR3访问问题还是 SRIO 问题?
此致、Eric
您好!
感谢您的评论。
我使用 GEL 文件、在运行程序后、控制台会显示 DDR3初始化已完成。
我在回送模式下在内核0上运行程序、并且可以通过 SRIO 从 DDR3读取/写入。 但在正常模式下、我无法通过 SRIO 从 FPGA 写入 DSP 的 DDR3。
我想确保无需执行其他设置即可从 FPGA 访问 DSP 的 DDR3。 然后、我可以重点介绍 FPGA 方面。
另一个问题是 DDR3的逻辑起始地址为"0x 8000 0000"、 而 DDR3的物理起始地址为"0x 8 0000 0000"。 我应该考虑 FPGA 端的逻辑地址?
此致、
Mohammad
穆罕默德
是的、不需要其他 DDR3初始化。 您需要用于 FPGA 的地址是0x8000:0000的逻辑地址。 DSP MSMC 中有 MPAX 设置、用于将0x8000:0000转换为 SRIO 主器件的物理地址0x8:0000:0000。
使用 CCS 存储器浏览器检查 DSP 内部的0x0bc0:0600区域、请参阅 http://www.ti.com/lit/ug/sprugw7a/sprugw7a.pdf、表3-1
0x600:0x604 SES MPPAXL_0_0:SES MPAXH_0_0 MPAX 寄存器对0对于 SES 权限 ID 0,请参阅3.5.2、3.5.3
0x608:0x60C SES_MPPAXL_0_1:SES_MPAXH_0_1 MPAX 寄存器对1对于 SES 的 PrivID 为0,请参阅3.5.2、3.5.3
…μ A …μ A …μ A —
0x9F8:0x9FC SES_MPPAXL_F_7:SES_MPAXH_F_7 MPAX 寄存器对7对于 PrivID F,SES 请参阅3.5.2、3.5.3
从0到0xF 有16个 PrivID。 每个 PrivID 有8对 MPAX。 对于 SRIO、PrivID 为9 (基于0)。 检查 SRIO 主器件是否具有适合此转换的 MPAX。
或者、您可以使用 MSMC 地址或全局 L2地址切换 DDR 地址、以查看问题是否仅发生在 C6678 DDR3区域中、要了解这是 DDR MPAX 映射问题还是 FPGA 侧问题。
此致、Eric
大家好、
最后 、我能够从 FPGA (Virtex7)向 DSP (C6678)发送 nread/NWRitER。
问题出在 FPGA 中 SRIO IP 内核中的 AXI4流通道。 我 以不良 的方式使用了 AXI4流信号、例如 tVALID、tLast 和 tdata 信号。
此外,我没有在国际法协会中使用其中的一些信号。 这种情况导致了对设计的错误分析。