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

C6455的EMIF传输问题

背景介绍:
芯片:DSP:C6455,FPGA:XCV5
每帧数据量:320*300*16bit
传输方式:EMIF 32位传输 异步传输 外部空间CE2
DSP内部时钟:1GHz
数据频率:50Hz

1、由于每一帧的数据量有些大,FPGA存储空间限制,无法一次性写入CE2,分300次写入,每次写入160*32bit,
利用for循环300次,使用mymcpy读取,读取完一帧数据需要3.6*10^6个时钟周期,优化后需要1.7*10^6个时钟
周期,超时严重,无法满足实时性要求;
2、在使用优化后,传输时,每一个32位数据会被读取两次,即在一个CE下拉周期中,AOE下拉两次;

请问:1、有没有其他方式实现EMIF读取,比如DMA读取方式,速度会不会变快
2、如何解决优化时,在一个CE下拉周期中,AOE下拉两次的问题

咫尺和天涯:

我的理解是你用的是CPU读取,可以考虑尝试使用EDMA读取,但是需要注意EDMA每次传输数据大小也有限制。

Tony Tang:

eric zhang61、有没有其他方式实现EMIF读取,比如DMA读取方式,速度会不会变快

EDMA会快很多很多。

eric zhang62、如何解决优化时,在一个CE下拉周期中,AOE下拉两次的问题

你的EMIF是配置成的多少位宽?代码里是按short,还是int型访问的?

赞(0)
未经允许不得转载:TI中文支持网 » C6455的EMIF传输问题
分享到: 更多 (0)