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.

EDMA参数问题



弱弱的问下。。。有大神知道EDMA3例程中参数instNUM的具体含义是什么了,直接翻译的就不用了哈:Instance of EDMA whose channel is requested.

还有这个参数只能设置0,1,2.具体根据情况怎么设置请讲解下。谢谢了

  • TPCC(EDMA3 Channel Controller) ,例如在6678中有3个TPCC,例如下图from 6678的datasheet

  • James Li2你好,由于我们这里地震了,不能及时的回复你,抱歉。

    我现在有个问题,就是我EDMA3传输用的PING_PONG缓存,8核8通道同时在从DDR3到L2传数据没有问题了,但在从L2到DDR3传数时,PONG缓存存在掉包的现象,我想问下多核多通道EDMA从L2到DDR3传数时,instNUM要怎么配置了?谢谢了

  • 以6678为例, 有3个TPCC(EDMA3CC)
    There are 3 EDMA Channel Controllers on the TCI6608 DSP, EDMA3CC0, EDMA3CC1, and EDMA3C
    EDMA3CC0 has two transfer controllers: EDMA3TC1 and EDMA3TC2.
    EDMA3CC1 has four transfer controllers: EDMA3TC0, EDMA3TC1, EDMA3TC2, and EDMA3TC
    EDMA3CC2 has four transfer controllers: EDMA3TC0, EDMA3TC1, EDMA3TC2, and EDMA3TC
    TC(传输控制器)是执行数据搬移的engine,每个TC通过一个queue接收传输请求,如果8个通道映射到同一个TC,有可能接收传输请求的queue会溢出。可以把8个通道分到同一个TPCC的不同的queue上试试。
    例如,如果使用的是EDMA3CC1就可以映射到TC0,1,2,3上
    通过下面的API实现映射
    CSL_edma3HwChannelSetupQue(hChannel,CSL_EDMA3_QUE_1)

  • James Li2你好,谢谢你的及时解答,但是我的EDMA3传输函数里已经包含了CSL_edma3HwChannelSetupQue(hChannel,CSL_EDMA3_QUE_1),我也用过instNUM 8个核全设成1或者2但效果不明显,我现在instNUM 8个核分别设为2、1、0、2、1、0、2、1.第一次8核同步一起传输没有问题,但是再循环一次传输后必定有一个核的pong缓存要掉包,这是什么原因了?我8个核分别用的不同的通道