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.

关于TMS320C6678的EDMA问题

1. 6678中共有3组DMA,分别是DMA0,DMA1,DMA2,每组有多少个通道数和队列数,以及SHADOW Regions和Global Region与这些DMA的关系是什么?

2.在使用DMA1时,使用不同的通道数但使用相同的队列(Event Queue)这样会发生冲突吗?

  • 1 每个CC对应的TC通道数如下:

    EDMA3CC0 has two transfer controllers: EDMA3TC1 and EDMA3TC2.
    EDMA3CC1 has four transfer controllers: EDMA3TC0, EDMA3TC1, EDMA3TC2, and EDMA3TC3.
    EDMA3CC2 has four transfer controllers: EDMA3TC0, EDMA3TC1, EDMA3TC2, and EDMA3TC3

    EDMA3CC将其地址空间划分为8个区域(Regions),从每个Region的地址空间都可以访问EDMA3CC的寄存器。即尽管物理上这些寄存器只有一份,但可以通过8个shadow region空间来访问。用户可以设置某个Region只能访问(R/W)这些Register的哪些bit,访问没有授权的bit是无效的。Region机制相当于提供了一个Filter给用户,通过每个shadow region去R/W这些CC的寄存器,只对授权的bit起作用。这样,尽管这些寄存器物理上只有一份,但不同的region去操作它们互不影响

    2 会,TCn和event queue n 是一一对应的。

  • 如上图所示,ChannelNum为通道数,也就是每个核的CoreID,每个核初始化一个通道,每个通道都使用相同的event queue ,也就是CSL_EDMA3_QUE_0.这样初始化DMA可以吗?在进行DMA搬数时会不会发生冲突?

    我想初始化8个通道,但是只有4个event queue ,也就是CSL_EDMA3_QUE_0---------CSL_EDMA3_QUE_3,所以必须要有一些通道使用相同的event queue 。这个该怎么解决?