有时候忙标志会一直有,只有重启才能好。刚开始好着,发着发着就不行了,是不是没加速度控制机制,导致缓冲区溢出的原因呢?谢谢
将接收数据包分为每包512B,128DW包,每包尾地址为7f或者ff,这样的请求包连续发送,出现总线忙标志是为什么呢?有时候忙标志会一直有,只有重启才能好。刚开始好着,发着发着就不行了,是不是没加速度控制机制,导致缓冲区溢出的原因呢?谢谢
你问的这些问题,实际上对驱动开发人员来说,是不知道的,属于PCIe Bus Driver和FPGA的通信, 一般开发写的是PCIe Device Driver,而不是Bus Driver。 ==>请问,长数据读请求时是否必须分包,分包大小不超过0x80DW? 肯定要分包,具体分多少,需要看你使用的FPGA中PCIe IP Core的使用说明 ==>如果分包,发送请求包时,是连续发送还是接收完一包再发第二包请求包? 这个问题实在不知道怎么回答,你是在做DMA读写?FPGA的IP Core中肯定会告诉你可以一次发几个,但是需要根据实际情况来决定,因为这个不只是取决于IP Core,还和CPU以及南北桥有关。 另外DMA Read时,是需要有PC反馈信号的,这样你的问题就不成立了。 ==>回复数据头为4DW,请求包中的Fmt=01外,还有哪个必须设置? 这个你真的要问你的FPGA Datasheet。 我是做驱动开发的,不要追问此类和通信协议相关的问题,因为我知道的也不多
21,597
社区成员
21,709
社区内容
加载中
试试用AI创作助手写篇文章吧