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.

PC通过PCIE DMA访问DSP板卡内存的问题



大家好,

我的电脑是Win7,用WinDriver编写驱动程序;DSP是C6670,代码是基于这个工程C:\ti\pdk_C6670_1_1_2_6\packages\ti\drv\exampleProjects\PCIE_exampleProject

目前,WinDriver下代码可以实现对DSP BAR1内存空间的读写。但是绝对速度不够,想使用DMA。

我理解的是:PC对DSP BAR1的DMA读写,应该不需要用到DSP的EDMA,而应该由PC作为DMA master。我这样理解对吗?

相反,如果是DSP主动发起对PC内存的DMA读写,则需要用到DSP的EDMA。是这样的吧?

为了简单起见,我打算用PC作为PCIE的master,去发起对DSP内存的DMA读写。

这种是否完全属于Windows DMA编程的范畴?有在WinDriver下实现过类似的DMA吗?

谢谢!

  • 我觉得是这样的。在DSP及pc侧都有一份映射的memory,DSP发起操作时,读写的是DSP 侧PCIE memory,可以是DSP core或者EDMA发起读写,从而达到与对端的数据交换;PC侧也是操作自己的一份PCIE 映射memory,具体PC侧是否有DMA之类的,就不太清楚,可以搜索一下。