pcie dma传输不用wbinvd就无法正确读取的问题求助

fys2xxx 2015-12-14 10:06:07
大家好,我的问题如下:

硬件为i7+FPGA 通过PCIE连接;在FPGA端对CPU的内存进行dma读操作,无法读到正确数据。在CPU端操作内存后使用“wbinvd”命令,可以解决问题,但是会影响dma传输速度,怀疑是cpu对内存的操作还在cache上,但是flushcache不起作用,必须“wbinvd”才行,但是重新写会整片cache太占时间,希望大家能给点建议,有没有其他解决方案。

望回复,谢谢!
...全文
373 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
fys2xxx 2016-01-09
  • 打赏
  • 举报
回复
现在通过在c语言中嵌入汇编,不通过cache直接操作内存,避免cache一致性的问题
猪头三小队长 2015-12-15
  • 打赏
  • 举报
回复
intel的内存操作可以用uncachable吗?如果可以的话最好试试这个,因为将来fpga和cpu之间如果没有通信机制就没法在需要的时候flush cache。

1,025

社区成员

发帖
与我相关
我的任务
社区描述
Linux /Unix kernel支持不同的硬件体系,X86, ARM, MIPS, 等等
社区管理员
  • CPU和硬件区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧