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.

C6678 PCIe使用EDMA3收发数据问题

Other Parts Discussed in Thread: TMS320C6678

各位工程师大家好:

         我最近在使用TMS320C6678做一个项目,需要使用PCIe与PC通信,使用EDMA3收发数据。DSP在将数据上传给PC时需要经常重新映射PCIe空间地址。

         现在遇到的问题是:启动EDMA3发送数据给PC,等待IRP寄存器为1,也就是让EDMA3发送完成,清除中断。然后需要重新将PC不同的物理地址映射到PCIe相同的OB空间,然后继续使用EDMA发送数据给PC,这样传输上去的数据有问题。而如果不重新映射PCIe地址的话就没有问题,或者使用memcpy也没有问题。

         我感觉是第一次EDMA完成后(IRP为1时)实际上PCIe还没有完成传输导致的。请问会出现这样的情况吗?

         如果会出现上述情况,这个问题应该怎么解决呢?这问题已困惑了我很久了,还望大家帮忙解惑。