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

28335 DMA中的CPU arbitration?

当CPU与DMA同时仿问一块SARAM时(比如L7 RAM)到底会不会产生冲突,读写的数据会出错吗?

DATASHEET中的下面这句话该如何理解:

In the case of RAM,a ping-pong scheme can be implemented  to avoid the  CPU and  the  DMA accessing
the same RAMblock concurrently, thus avoiding any stalls or corruption issues.

什么是ping-pong scheme?

比如用一个DMA通道来进行AD采样,将数据放在L7 RAM中,CPU直接去读取L7中的数据。这样就会出现一种情况,当CPU去读L7 RAM时刚好DMA从AD结果寄存器搬来数据,此时芯片做何处理,数据会不会出错?

debing wei:

如果DMA的优先级比CPU高,那么CPU是不是就停在那等DMA把数搬完?

再有一个问题就是28335的RAM分为L1-L7一共8个区域,是不是说CPU可以同时访问其中的多个分区,举个例子CPU在读L6的同时也能写L7,但不能同时对同一个区域进行读写操作?

赞(0)
未经允许不得转载:TI中文支持网 » 28335 DMA中的CPU arbitration?
分享到: 更多 (0)