您好:
我们的应用中将C6678与FPGA互连,在测试中,C6678循环向FPGA发送16K数据+门铃,但是我们发现在过程中大约每隔几十次或上百次会有一个门铃发送失败。completion code = 0x1.无法确定FPGA是否收到这个出错的门铃。
在这种情况下,C6678会花6-7秒时间才能跳出Completion code轮询过程。
DIO格式为NWRITE,priority = 0
门铃priority = 1
请问问题可能的原因是什么?有无解决方法?谢谢!
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好:
我们的应用中将C6678与FPGA互连,在测试中,C6678循环向FPGA发送16K数据+门铃,但是我们发现在过程中大约每隔几十次或上百次会有一个门铃发送失败。completion code = 0x1.无法确定FPGA是否收到这个出错的门铃。
在这种情况下,C6678会花6-7秒时间才能跳出Completion code轮询过程。
DIO格式为NWRITE,priority = 0
门铃priority = 1
请问问题可能的原因是什么?有无解决方法?谢谢!
怀疑是你的FPGA回包有问题或者是链路问题,几种调试的方法你可以试试
1. 用NWRITE写,不设门铃,看是否还会出错
2. 检查SRIO的一些链路状态寄存器看是否存在问题, 如SPn_ERR_STAT, ERR_DET, SPn_ERR_DET
3. 降低线速看是否正常
您好Allen,谢谢您的回答!不过我还想问一下,您说的这些寄存器中最常用/最有用的位是哪些呢?它们一般又代表什么错误?
一般还是先从completion code入手,这些寄存器结合来判断可能的错误,具体的寄存器说明看手册吧,新的SRIO手册已经写得很详细了