vdma配置后可以正常传输数据但读0x0034 S2MM_VDMASR Register寄存器为0x15810

本文详细描述了在配置Xilinx VDMA时遇到的S2MM_VDMASR寄存器错误0x15810,该错误通常出现在启动或热插拔事件中。错误意味着AXI Stream接口的帧大小与寄存器设置不符。解决方案是清除错误并检查HSIZE/VSIZE寄存器设置,以确保与AXI Stream接口帧大小匹配。作者通过清除寄存器错误并重新读取,最终解决了问题。
摘要由CSDN通过智能技术生成

参考链接:https://forums.xilinx.com/t5/Video/how-to-fix-VDMA-S2MM-errors/td-p/845420

配置vdma的过程是痛苦而曲折的。话不多说,这里就说经过一系列更改配置后,读取这个寄存器为

S2MM_VDMASR Register寄存器 0x0034的值为0x15810

通过PG20手册可以看到这里的错误的意思是

S2MM_VDMASR 14bit : Err_Inq

S2MM_VDMASR 11bit : SOFLateErr

S2MM_VDMASR 4 bit : VDMAIntErr

上面的err_inq我暂且不管,4bit的VDMAIntErr  11bit : SOFLateErr错误让我觉得我的配置是有问题的,但通过在线仿真发现数据写进去了,而且并没有错,但我深深的纠结在这里,就担心自己配置错了。曾经这个链接我是看过的,但这就怪我英语水平太差了,竟然没理解上去(我按照那个清除重新读的方法试了,但没看懂前面说的启动和热插拔的意思。第二,我当时试这个方案的时候,我当时的配置还有其他错误,(当时读出的值是0x1d810,清除后变成0x1d000)所以通过清除的方案并没有完全解决问题,就放弃了这个方法,今天我再一次试了这个方案,发现这次就可以了)。今天我再一次打开这个页面,把下面的答案用有道词典翻译了一遍,试了一下,才终于确信,应该不是我的错。

The errors mean the incoming fra

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值