免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1878 | 回复: 0
打印 上一主题 下一主题

[驱动] 请教高手USB performance的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-06-07 09:30 |只看该作者 |倒序浏览
请教USB高手,目前遇到一个USB传输性能的问题。
系统:arm,双核的,跑的是android,CPU约900MHz;
应用: 类似于播放实时的视频数据。视频数据是通过特定的USB设备接收,driver部分读取到数据后会送到后端处理显示。
问题:目前大多数的情况是OK的,但会有一定的概率出现mosaic,后来调整USB的IRQ到CPU1,正常播放就不会有mosaic了。
(我们系统的IRQ默认没有做irq balance)。现在的问题是:当做一些UI或系统操作时,mosaic又会出现,虽然概率比较低。
(UI操作会对视频数据做一些特定的处理)

1.通过mpstat log CPU的idle情况,做UI操作时,idle减少,但不算低,平均有50%~70%左右,不操作UI时是90%多。
2.抓usb bus上的数据分析,发现出现mosaic时,bus上的数据也是有丢掉的。在发生丢掉数据的前面几个packet,usb ack到发出
下一个urb request的时间要比正常时间要长。

(我们猜想是USB设备的buffer较小,实时的数据没有及时读取走,后面新的数据会把它覆盖掉,
   然后读到的数据就不完整了,从而出现mosaic)

我的疑问是CPU的loading并不高,USB request下一个urb时间为什么会变长呢?大家有遇到过类似的问题吗?要怎么解决?
注意设备本身的buffer是不能调整的。Thanks.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP