FPGA通过upp和DSP进行数据传输,DSP接收数据buffer(RecvBuffer)长度为30字节,发送数据(SendBuffer)长度为28字节,RecvBuffer和SendBuffer的地址分别为0xc70de280和0xc70de2a0,使能cache。FPGA发送数据给DSP,DSP处理后应答FPGA,同时调用Cache_wb更新SendBuffer中数据到DDR中,通过仿真查看RecvBuffer的数据变化,RecvBuffer确实收到了新的数据,但是调用cache_wb后RecvBuffer中的数据被修改为上一次接收的数据了。在回写SendBuffer数据到DDR中时,RecvBuffer中数据为什么也被回写了?
user5880776:
回复 Tony Tang:
非常感谢您的回复,应该是这样的,我把接收的buffer增大到128bytes(c6748的L2的chache line size是128bytes)后没有异常了。