On Thu, 2004-10-28 at 13:25 -0700, Eric Blossom wrote:
> > I have to write a custom driver for a FX2 based camera module that
> > should be able to reach a bulk throughput of about 30 MBytes/sec from
> > the device to user space memory. The available CPU performance is less
> > than a 1GHz VIA EDEN. Is the libusb capable to provide this performance?
> 
> Yes.  With a bit of help.  The biggest issue is generally usb host
> controllers.  
> 
> We built an FX2 based software radio peripheral and we routinely
> sustain 32MB/sec in either direction.  CPU consumption is minimal --
> on the order of 5% of a 1.4 GHz Pentium M.  We did it all in user
> space using libusb, with an added layer on top that does "fast usb" by
> keeping multiple URBs in flight using usbdevice_fs.
> 
> You can find all the code including the firmware and the fast usb
> library (fusb*.{h,cc}) at ftp://ftp.gnu.org/pub/gnu/gnuradio/usrp-0.5.tar.gz
> 
> More info on the device at 
> http://comsec.com/wiki?UniversalSoftwareRadioPeripheral

I have tried to reproduce your bandwidth results by patching the
fx2_programmer
(http://volodya-project.sourceforge.net/fx2_programmer.php) to use your
fast_usb code in it's bench_bulk function to get the data. To produce
some data in the FX2, I used the included ex3 program. I connected the
FX2 to a NEC based USB2 PCI extension card:

   0000:00:0c.2 USB Controller: NEC Corporation USB 2.0 (rev 04)
(prog-if 20 [EHCI])
           Subsystem: Unknown device 0ee4:3383

The original fx2_programmer reached about 15 MB/sec with plain libusb
usb_read_bulk calls. The patched version (using fusb) got up to about 23
MB/sec - but no more... :-/

You mentioned the host-controllers are generally the biggest issue
regarding throughput. Do have any experience with this NEC chip? Do you
know another reason why I can't reproduce your 32 MB/sec? Maybe the
ex3.c is the bottleneck - do you have a simple FX2 firmware that works
on any FX2 based device which just produces random data _fast_?

Thanks,
  Axel



-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to