Re: [Fx2lib-devel] Isochronous Streaming Using LibUSB from FPGA
Status: Beta
Brought to you by:
mulicheng
From: Xiaofan C. <xia...@gm...> - 2011-07-08 01:04:46
|
On Fri, Jul 8, 2011 at 8:51 AM, Chris McClelland <fx...@m3...> wrote: > FWIW, even with the FIFO flags clamped to endlessly source (or sink) > data, I have never managed to get bulk reads (or writes) using LibUSB to > give more than 25MiB/s on Linux and 18MiB/s on Windows. Try libusb-1.0 under Linux and it may help since it support async API (for all transfer types). Under Windows, you can try to use libusb-1.0 Windows backend but it does not support isoc transfer since it uses WinUSB. On the other hand, libusb-win32 has its own async API and supports isoc transfer. http://sourceforge.net/apps/trac/libusb-win32/wiki/libusbwin32_documentation http://sourceforge.net/apps/trac/libusb-win32/wiki/libusbwin32_examples > Admittedly that is for bulk transfers which have more overheads than > iso, and I have only tried the 0.1.x releases of LibUSB because they're > API-compatible across Windows, MacOS and Linux. libusb-1.0 API works under Windows, Mac OS X and Linux. The problem is that 1.0.9 release keeps being delayed (first official release to support Windows). But you can use libusb-pbatard. http://www.libusb.org/ http://www.libusb.org/wiki/windows_backend > The only other thing I can suggest is to compare the throughput you get > with my firmware, host code and VHDL[1], but unless your FPGA board is a > Digilent Nexys2, you will have to do some work on the pin constraints > for your board. And remember this only deals with bulk, not iso. > > Sorry I can't be more helpful! > > Chris > > [1] http://www.makestuff.eu/wordpress/?page_id=1400 -- Xiaofan |