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

C6678 SRIO和内存拷贝

6678与FPGA使用SRIO通信,FPGA写数据到DSP的DDR3内存上,

问题:

FPGA在DSP的DDR3地址为0x80010000上写完一段数据后发送doorbell通知DSP处理,DSP使用memcpy将这一段数据拷贝到DDR3另外的空间地址0x90000000

上,结果发现拷贝的数据就不对, 必须在地址0x80010000上使用CACHE_invL1d()函数才能拷贝正确,这个现象不知道是什么情况,怎么解决?因为不想

用 CACHE_invL1d()函数,也看到别人这样做就不需要使用CACHE_invL1d()函数,是我的配置有问题么?请各位高手指导!

Shine:

请问这段DDR memory使能cache了吗?如果使能了,在读数据前需要CACHE_invL1d来保证cache一致性。

如果不想维护cache一致性的话,可以将这段memory属性定义为noncacheable

zhiyuc:

回复 Shine:

没有对这段DDR memory使能cache呀,如果使能的话怎么使能?我查找一下看看

Shine:

回复 zhiyuc:

请查看MAR寄存器看有没有使能DDR memory?

赞(0)
未经允许不得转载:TI中文支持网 » C6678 SRIO和内存拷贝
分享到: 更多 (0)