TI中文支持网
TI专业的中文技术问题搜集分享网站

C6678两板互联,不能用EDMA往PCIe data区写数据?

问题就是题目所述。按照 技术文档 SPRUGS6C 里第2.9.3 edma transfer examples里面配置好参数后,就是不能往0x60000000起始的地址区域写数据。当把paramsetup.dstAddr换成DDR3或者L2的地址就可以往里面写看到数据被成功搬移了进去。唯独换成0x60000000开始的地址,搬进去的始终全是0。望专家解答!谢谢。

Brighton Feng:

请尝试下面的例程:

http://www.deyisupport.com/question_answer/dsp_arm/c6000_multicore/f/53/t/47664.aspx?pi239031348=1

PCIE例程的文档在.\doc\KeyStone_1_PCIE_STK_User's_Guide.doc

lieying fan:

回复 Brighton Feng:

我使用dsp与fpga互连,现在能看到fpga打到dsp的pcie地址段0x60000000的数据,而且我在dsp端用地址调用的方式可以取到数,但是太慢,我想用edma把数搬到ddr3上,怎么搞?

lieying fan:

回复 Brighton Feng:

我参考了www.ti.com/lit/sprugs6d,就是官网提供的pcie user guide文档,里面在用edma搬移0X60000000地址段的数据时,提供了一个例程,我使用myParamSetup.option=0x00100008这种设置,可以实现内存之间的搬移,但是如果配置源地址和目的地址为0X60000000时,就不能实现正常搬移,将myParamSetup.option修改为0x00100004,还是搬不动数,我想问一下会是edma通道选择的问题么?

yuanwen dong:

我试过pdk_C6678_xx_xx_xx_xx\packages\ti\drv\pcie\example\下面的PCIE例子,用两块C6678EVM开发板用背板相连,这个例子可以正常通信,显示传输正常。

两个C6678配置的PCIE模式应该不同,通过宏定义来区分编译,一个是PCIE服务端,另一个PCIE终端节点模式。

Best Regards

William.dong@enea.com

赞(0)
未经允许不得转载:TI中文支持网 » C6678两板互联,不能用EDMA往PCIe data区写数据?
分享到: 更多 (0)