Cypress技术论坛
直播中

李辰圻

7年用户 214经验值
私信 关注
[问答]

PC处理速度UVC数据太低?

大家好!
在CyPress FX3上成功完成了YUV格式数据UVC批量模式的传输,通过打印每秒DMABUF计数,测试了数据传输速度,最大可达200 Mb/s。
ARG:
最大突发大小=16
DMABUF大小=16×1024
DMABUF计数=10
然而,帧速率与理论值相差甚远,我用初次捕获法观察帧速率,当分辨率为2592x1944时,帧速率最高可达10fPS,即PC的实际速度小于100Mb/s。然后,我改变了ARGSTO测试,当DMABUF大小=6×102时。4,速度约为100Mb/s,分辨率为2592x1944时帧速可达10fPS。即使当DMA BUF大小=32×1024,DMA BUF计数=5时,当分辨率为2592x1944时,FrAMATETE仍然是10FPS,但是数据传输速度可以达到250Mb/s。
所以我猜PC机处理UVC数据的速度太低了!也许它受到UVC驱动程序或解码器的限制,或者别的什么东西!
最后,我想通过使用批量流协议来提高速度,但是失败了!(它可以启动多个DMA信道来传输数据,但是速度总是在7Mb/s左右,数据大小总是在1024B),我参考了FX3SDK中的CyfxBulkFipe,我不知道UVC批量模式是否能够支持流协议!能告诉我答案吗?
谢谢!对不起,我的错误和表达不清楚!

以上来自于百度翻译


     以下为原文
  hello!everybody !
     I successfully finished  transfering YUV -format data in UVC BULK mode on cypress FX3,I tested the data transfering speed by printing the DMA buf counts per second ,and it almostly  reach to 200MB/S more.
    args:
     max burst size  = 16
    DMA BUF size = 16*1024
    DMA BUF counts = 10
    however,the frame rate is far away from the theoretical value,I watched the frame rate using debut capture,and framerate is at most up to 10fps when the resolution is 2592x1944, namely,the actual speed at PC is less than 100MB/S.  then I changed the args to test,and when DMA BUF size = 6*1024,the speed is about 100MB/S,and framerate can be up to 10fps when the resolution is 2592x1944.  even when the DMA BUF size = 32*1024, DMA BUF counts = 5 ,framerate is still   10fps when the resolution is 2592x1944.  but  the  data transfering speed can be up to 250MB/S .
    so I  guess that the speed of PC processing UVC data is too low!   Maybe it's restricted by UVC driver or decoder or something else!
    at last, I wanna improve the speed by using BULK stream protocol,but it failed ! (it can start the mulitiple DMA channels to transfer datas,but the speed is always about 7MB/S,and the data size every times is always 1024B) I referred the example  cyfxbulkstreams in FX3 SDK, I dont know whether UVC bulk mode can support the stream protocol!  can anyone tell me the answer?
    thx! and sorry for my mistakes and unclear expressiong!

回帖(7)

何柳青

2019-4-25 10:01:18
你好,
从我所知道的大容量流仍然没有适当的主机控制器的支持。请让我知道您的安装配置(特别是主机控制器,它是否声称完全支持批量流)
当做,
阿南德

以上来自于百度翻译


     以下为原文
  Hi,
    From what I'm aware of Bulk streams is still not properly supported by host controllers. Please let me know your setup configuration (esp the host controller and whether it claims complete support for bulk stream)
    Regards,
    Anand
举报

李辰圻

2019-4-25 10:15:50
你好!阿南德!
谢谢你的回答!
我发现这个社区有人说,Windows XPU的UB3.Sys2可能不支持批量流,并且我还发现CyPress FX2SDK的示例CyfxBulkFipe不能正常工作,我想它不能成功枚举,因为我看不到任何设备信息、接口和EndoPo。下载后的USB控制器中心。
SRRY没有清楚地知道关于MyStand配置的任何说法,对于TRAM中的4,我在EP中用4个流配置端点AS1块,EP同伴描述符中的流是2(2 ^ 2=4)。我还配置了具有相同回调函数的4个DMA通道,我只是参考CyfxBulkFielsFask的所有内容。
对于主机控制器,我不确定哪一个是主控制器,有两个,ASMIXHCI控制器和标准增强PCI到USB主机控制器。

以上来自于百度翻译


     以下为原文
  Hi! Anand!
    thx for ur answear!
    I found that someone at  this community said the u***3.sys of  windows xp maybe not support the bulk streams, and I also identified the example  cyfxbulkstreams  from CYPRESS FX2 SDK can not work normally,I suppose it can not enumerate successfully  because I can not see any device info ,interface,and endpoints in USB controller  center after download. 
    srry about no understanding what u said about my setup configuration   clearly,  for 4 IN treams, I config the endpoint as  1 bulk IN ep with 4 streams ,and the streams in ep companion descriptor is 2(2^2=4) .  I also config the 4 DMA channels with the same callback function, I just do everything referring the cyfxbulkstreams   example .
    For host controllor , I m not sure which is the propor one, there are two ,ASMedia XHCI Controller  and Standard Enhanced PCI to USB Host Controller.
举报

何柳青

2019-4-25 10:22:26
XHCI一个将是USP3.0的一个。我不太确定ASMIVER是否支持流。请创建一个技术支持案例(MyActudio & Gt;MyPases),这样我们的人就可以研究这个问题,并建议测试批量流的合适方法。
当做,
阿南德

以上来自于百度翻译


     以下为原文
  The xHCI one would be the one for USB3.0. I'm not too sure if the ASMedia one supports stream. Please create a tech support case (MyAccount -> MyCases) so that our guys can look into this and suggest suitable way of testing Bulk stream.
    Regards,
    Anand
举报

李辰圻

2019-4-25 10:32:19
嗨!阿南德!
我已经创建了一个新的Myase. iReCaltTa上面的错误,我试图识别的例子是CyPress FX3SDK的CyfxBulkFipe。我发现在USB控制中心的底部“编程成功”在下载图像到RAM中,虽然它不提供任何关于接口和端点的信息,所以我想也许我只需要一个PC软件来识别它!
当做,
安迪

以上来自于百度翻译


     以下为原文
  hi! Anand!
    i have created a new mycase!I correct a mistake above,the example that  I try to identify is cyfxbulkstreams  from CYPRESS FX3 SDK. and I found the presentation "programing successful"at the bottom of USB Control Center  after download the image into RAM although it dont present any information about interface and endpoint,so  I suppose that maybe I just need a software in PC to identify it!
    Regards,
    Andy
举报

更多回帖

发帖
×
20
完善资料,
赚取积分