datasheet中EDMA3的diagram显示C6748有两个独立的CC,0和1,二者物理上应该是相互独立的,按理应该可以实现并行操作,为何实际上不行呢?
Tony Tang:
如果方便,请提供一下波形图帮助理解是如何互相打断的。
Jingang Yang:
回复 Tony Tang:
囧,附件传图片一次只能传一张……
本附件的图片显示的是SPI DMA和EMIFA DMA传输不重叠时的“正常”运行结果。
黄色是EMIFA的CS信号,低有效,总共读20*16bit数据——这里还有个问题就是途中的“another question”处,为何此处CS要退出有效状态再进入呢?此时刻刚好在传完16*16bit数据之后。
浅蓝色是SPI的CLK信号,直接反映了SPI传输,总共4*16bit数据。
正常情况二者不相重叠时,SPI数据传输间隔固定有规律。
Jingang Yang:
回复 Tony Tang:
这是不正常情况的波形。
此时EMIFA DMA其实时刻始于SPI第一个16bit后期,然后SPI DMA被其打断,直至CS变高即EMIFA DMA结束后,SPI后3个16bit数据才开始传输。
也就是说,如果同时有两个DMA发生,即使二者对应的channel controler是独立的,在某一绝对时刻也只能有一个DMA数据被传送,right?
但是datasheet中貌似又号称可以simultaneously transfer,到底怎么回事呢?
Tony Tang:
回复 Jingang Yang:
Jingang Yang为何此处CS要退出有效状态再进入呢?此时刻刚好在传完16*16bit数据之后。
这个是因为EMIFA的FIFO深度是32字节。
Jingang Yang:
回复 Tony Tang:
Tony Tang
Jingang Yang为何此处CS要退出有效状态再进入呢?此时刻刚好在传完16*16bit数据之后。
这个是因为EMIFA的FIFO深度是32字节。
Tony Tang:
回复 Jingang Yang:
Jingang Yang那多DMA并发传输的问题呢
从理论上想不出所以然,会不会是DMA配置不对,实际上没有配置到两个DMA上呢?
Jingang Yang:
回复 Tony Tang:
Tony Tang
Jingang Yang那多DMA并发传输的问题呢
从理论上想不出所以然,会不会是DMA配置不对,实际上没有配置到两个DMA上呢?
Tony Tang:
回复 Jingang Yang:
CC1只有一个TC0啊。
Jingang Yang:
回复 Tony Tang:
Tony Tang
CC1只有一个TC0啊。