|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
×
小弟最近做项目,采用xilinx K7325t的FPGA的开发板,该卡通过X8的PCIE插在某linux环境下的服务器上。
例化了它的PCIE硬核对服务器内存进行DMA操作时发现,对某大小的数据发起操作时发现回来的数据有地址偏移现象,比如我访问的地址(64位)是0x000000635400000,它返回的数据却是存放在0x000000635490000那块内存的,而且这和数据大小有关系,并不是所有大小的会出现这问题,基本小于一页的不会出现这问题,大于一页的有些有问题有些没问题,大小是页的整数倍的基本没问题,我chipscope抓过读请求的数据包基本没问题,返回的包头也是没问题,但就是数据内容不是我想要的值,而是另一块地址的值(偏的比较大,常见的地址偏移是0x90000或0x80000大小),而且我这chipscope抓包能看见对这块地址没有发起过任何读操作(之后可能会对这地址操作,但出现错误的时候还没有对这地址操作,这个地址以数据的形式曾在链路上出现过,我用来DMA读取访问地址连标的),现在苦于没有很好的定位方法,也并不清楚是软件问题还是逻辑问题,急死我了 |
|