完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
嗨,大家好,
我在一个从FIFO场景中通过单个大容量端点读取PC的数据。我一直在高速读取数据(1帧)(~1,5GbPs),并且我需要最小化两个连续传输(2帧,不同缓冲区)之间的时间来实现这个速度。 传输图像大约为10MB,并且在两个连续帧之间有最大时间为2,5毫秒,因此连续请求之间的时间必须少于该时间。不幸的是,PC持续超过2,5毫秒。 有没有人知道如何在不降低帧率的情况下最小化时间?. 提前感谢, 以上来自于百度翻译 以下为原文 Hi all, I am reading data from PC through a single BULK endpoint in a slave fifo scenario. I am continuously reading data (1 frame) at high speed (~1,5Gbps) and I need to minimize the time between two consecutive transfers (2 frames, over different buffers) to achieve that speed. Transferred images are about 10MB and there is a maximum time of ~2,5ms between two consecutive frames, so the time between consecutive requests must be less to that time. Unfortunately the PC last more than 2,5ms. Does anybody know how to minimize that time without decreasing the frame-rate?. Thanks in advance, |
|
相关推荐
5个回答
|
|
你好,
你用什么API做这个阅读? XFEDATA还是Begindataxfer /WaITFrxFEF/FixDATAXFER的异步方法? 当做, 阿南德 以上来自于百度翻译 以下为原文 Hi, What APIs are you using to do this read? Xferdata or the async method of Begindataxfer/waitforxfer/finishdataxfer? Regards, Anand |
|
|
|
你好,阿南,
XFelDATA()函数。 当做, 以色列 以上来自于百度翻译 以下为原文 Hello Anan, XferData() function. Regards, Israel |
|
|
|
我想知道是否可以在同一时间开始多个总线交易(根据UB3.0规范第8.1章,它不是)。
它是,具有2个DMA通道自动从GPIF到批量端点的一对一。GPIF向端点发送一个单独的帧(如需要的缓冲区一样多),并在与另一个端点执行相同的操作之后,等等。同时,PC将在2个不同的线程中等待这两个事务。 这样,当一个事务完成时,PC中的另一个线程就准备好接收数据,因为先前正在等待,并且请求之间的时间被移除。 无论如何,我不确定是否可以如上所述。 最好的问候, 以色列 以上来自于百度翻译 以下为原文 I was wondering If could be possible to begin more than one IN bus transaction at the same time (according to USB3.0 spec chapter 8.1 it isn't). It is, having 2 DMA channels auto one-to-one from GPIF to an IN BULK endpoint. GPIF sends a single frame (as many buffers as required) to an endpoint and after do the same to the other endpoint and so on. Meanwhile, the PC will waiting both transactions in 2 different threads. This way when one transaction finishes, the other thread in the PC is ready to receive data because was waiting previously and the time between requests is removed. Anyway, I am not sure if it can be done as indicated above. Best regards, Israel |
|
|
|
如果使用XFelDATA(),它就是这样工作的。一旦传输完成,它将返回,然后你将排队的下一个转移,有浪费时间从传输完成时,下一个排队。在你的情况下,这就是造成2~5ms延迟的原因。
BeaDimaTaxFr/WaiFracxFr/FixDATAXFER允许您排队多路传输。这样一来,只要一个传输完成,下一个就排队了。所以转移率会更快。请使用SuraMal/Turror作为例子来理解如何使用异步方法。 当做, 阿南德 以上来自于百度翻译 以下为原文 If you use Xferdata() this is how it works. Once the transfer complete it will return and then you'll queue up the next transfer and there is time wasted from the time a transfer completes and the next one is queued. In your case this is what is causing the 2~5ms delay. Begindataxfer/waitforxfer/finishdataxfer lets you queue mulitple transfer. This way as soon as one transfer completes the next one is queued. So the transfer rate will be faster. Please use screamer/streamer as example to understand how to use the async method Regards, Anand |
|
|
|
谢谢你,阿南德,
你让我走上了正确的方向。现在它正在工作。 我还有疑问。我正在与重叠数组大小斗争,因为我将大小设置为CySist.ReopApple AlalLosiScess。最后使用20作为流应用程序。那20意味着什么?. 最好的问候, 以色列 以上来自于百度翻译 以下为原文 Thank you Anand, You put me on the right direction. Now it is working. I have a doubt yet. I was struggling with overlapped array size because I set size to CyConst.OverlapSignalAllocSize. Finally it worked using 20 as in stream application. What does that 20 mean?. Best regards, Israel |
|
|
|
只有小组成员才能发言,加入小组>>
754个成员聚集在这个小组
加入小组2110 浏览 1 评论
1858 浏览 1 评论
3673 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1791 浏览 6 评论
1540 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
575浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
428浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
439浏览 2评论
389浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
921浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 18:29 , Processed in 1.443820 second(s), Total 84, Slave 68 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (威廉希尔官方网站 图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号