EZUSB的驱动版本会不会影响68013A的读写速度?

[复制链接]
4729|7
 楼主| ddnionio 发表于 2011-11-9 22:11 | 显示全部楼层 |阅读模式
大家好,这是我第一次发帖~如果有什么格式的问题很多多包涵。
这个帖子在“USB技术专区”也发了。因为比较紧急,希望能得到宝贵的意见~
背景:
我是一个研究生,最近我们实验室在做一个项目,要求FPGA采集数据,马上给68013A(其工作在slave fifo模式,AUTOIN,512字节,4缓冲),然后PC上的程序去读这些数据。由于FPGA采集速率是30Mbytes/s(至少是这个速度,也可以增加),而我的PC程序读数据的速度最多只能到达26Mbytes/s, 这样这个项目就似乎不能完成了。

测试:
我之前看了这个板上很多帖子,很多人说68013A速度能到40M+
经过我们测试,速度的瓶颈在PC程序和68013A之间(我们测试方法是看flag满的信号,因为出现了flag满,就说明出现了PC没有及时读数据的情况)。我是根据一块开发板的例程改写的(例程是VC,我是QT,但是关于USB的部分都是调用windowAPI)。那个例程测速也只能到26M,所以我的移植没有出什么问题。我们一次读的数据是127*512个。

我的问题:
1,怀疑会不会和驱动有关?我现在用的是网上传说最原始的驱动,EZ-USB的驱动,是靠调用IOCTL来工作的。有木有大侠们用这个驱动也能速度达到40M的??
2,如果我换了一个驱动,现在cypress上面的驱动是SuiteUSB(我还来不及研究),我的固件是不是要重写?驱动和固件有联系吗?

PS:AUTOIN的模式下,我看FX2的技术手册,固件的TD_POLL是空函数。对吧

谢谢大家~
liangziusb 发表于 2011-11-10 08:20 | 显示全部楼层
我来回复一个,
1、USB的传输速度和你说的驱动程序是有很大关系,建议你用各个版本的驱动去试一下。
2、USB的传输速度除了和驱动有关系外,还有其它很多因素,如主板的芯片组,线缆,上位机程序等因素有关,想想木桶效应吧。
3、要想获得最大的传输速度,要用Slave FIFO模式。
 楼主| ddnionio 发表于 2011-11-10 12:11 | 显示全部楼层
我就是slave fifo模式的。
换驱动可能要改动程序的很多部分。要不要换固件呢?
我想知道有么有人在ez-usb这种驱动下,完成PC读USB的速度30M+的?
287075766 发表于 2011-11-10 13:39 | 显示全部楼层
是不是使用的DMA模式?
小工程师 发表于 2011-11-11 18:02 | 显示全部楼层
建议用最新的驱动Cyusb.sys
liangziusb 发表于 2011-11-12 13:27 | 显示全部楼层
用sync slave fifo模式,固件不用动,驱动用最新的开发包,试一下吧。
japrincess 发表于 2011-12-9 08:43 | 显示全部楼层
winkle.zhang 发表于 2012-5-12 21:03 | 显示全部楼层
学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

8

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部