USB 2.0 Experiences

I'm about to design a peripheral that needs a guaranteed feed of data at about 50 MBits/sec from a PC.

USB 2.0 looks like a contender, so let's assume we go that way.

We do not want to have much intelligence in the peripheral. Basically, it just needs to act as a window onto some hardware registers, and set up the data transfers.

What is the longest interruption of USB data transfers we are likely to see? The peripheral is like a printer that cannot do start/stop so the data stream must keep up with it. That will determine the amount of buffering.

Given we probably need multiple end points, how do we stitch the data streams together?

What is a good USB/processor combination? As we are talking low volume, chip cost is probably not as important as the ease of implementing the peripheral firmware and the PC side driver.

I've been reading USB Complete (2nd ed) by Jan Axelson. Any other recommendations?

Is there a news group for USB?

Many thanks, Bill

Reply to
Bill Davy
Loading thread data ...

Bill Davy wrote: : I'm about to design a peripheral that needs a guaranteed feed of data at : about 50 MBits/sec from a PC.

: USB 2.0 looks like a contender, so let's assume we go that way.

Look at

formatting link
for an example of the Cypress FX2 as a fast USB2 datapump.

Bye

--
Uwe Bonnes                bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
 Click to see the full signature
Reply to
Uwe Bonnes

Nothing about Cypress FX2 at

formatting link
!!!

Larry

formatting link

Reply to
Laurent Gauch

Depends on what mode of transfer (bulk, isochronous, ...) you choose, what other devices you put on that USB link, and how busy the PC is doing other kinds of I/O.

--
Hans-Bernhard Broeker (broeker@physik.rwth-aachen.de)
Even if all the snow were burnt, ashes would remain.
Reply to
Hans-Bernhard Broeker

You could consider SpaceWire as a much simpler pt 2 pt alternative which is easily able to do low 100Mbits over twisted pair. Its an IEEE std 1355 and there is IP in FPGA for it and PCI boards, check out

formatting link

It comes from the remnants of the Transputer project T9000 phy level links which got a life of their own.

regards

johnjakson_usa_com

Reply to
john jakson

Look at the FX2 family of chips from Cypress Semi.

You will probably want to use a BULK transfer mechanism. Given that, it is possible to have an infinitely long delay between packets. However in actual practice the delay between packets will be dominated by your PC's processor load, its USB hub controller and the software you write for sending out your data.

You may be able to use a single endpoint for the data stream but keep in mind that USB data is not a continuous stream like you might be used to with say RS232 serial ports. USB data is sent in packets. You can get a perceived continuous stream by feeding you packets into a FIFO and then unloading the FIFO at a fixed rate. This is something the FX2 chips are very good at accomplishing.

There are several issues you need to deal with on the PC side and companies like Andrew Pargeter & Associates

formatting link
I think) and Jungo will be helpful. Andrew's company has been particularly helpful to me in answering some of my questions.

Rob Young snipped-for-privacy@ieee.org

Reply to
Rob Young

Besides the well known FX2 from Cypress (look for the new A version, low power..), give also a look to NetChip (now PLX) NET2272.

I purchased theirs PCI RDK (developers kit); basically, it's a PCI board that carries the NET2272; you can then develop your target side firmware on a standard PC, using Visual C++.

So far, I'm really satisfied with it. It's very productive to work with, and their support is good. Comes with source firmware for many apps.

See

formatting link

If at all possibile, choose a standard profile that's supported by the OS, you'll save yourself a lot of trouble.

Here you can find a list of Windows supported classes:

formatting link

This is the generic MS page on USB:

formatting link

I do not know Linux enough to give you some notes on it.

If you need help for MS drivers, there's a lot of know how out there. Some links:

formatting link
(buy Walter Oney book, it's excellent)
formatting link
Do not know them...
formatting link
A market standard...
formatting link
Very responsive

in no particular order.

Good luck!

Reply to
Antonio Pasini

Laurent Gauch wrote: : Uwe Bonnes wrote: : > Bill Davy wrote: : > : I'm about to design a peripheral that needs a guaranteed feed of data at : > : about 50 MBits/sec from a PC. : > : > : USB 2.0 looks like a contender, so let's assume we go that way. : > : > Look at

formatting link
for an example of the Cypress FX2 as a fast USB2 : > datapump. : > : > Bye : >

: Nothing about Cypress FX2 at

formatting link
!!!

Sorry, try:

formatting link

--
Uwe Bonnes                bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
 Click to see the full signature
Reply to
Uwe Bonnes

Bill,

I think that you should look at FireWire it is much more robust and may be a good fit. It is not as cheap but it may provide extra flexibility as its architecture and configurations are flexible.

Bob McWilliams Zendex

Reply to
Bob McWilliams

Whopps.... the low power version it's the FX2LP.

Sorry.

Reply to
Antonio Pasini

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.