USB Interface Chip Vs FPGA Implementation

Nov 16, 2010 6 Replies

Hello all,



We are trying to decide whether or not to purchase a cheap USB host controller to handle a single peripheral device or setup a Spartan 3E 500 gate FPGA to act as the host.


.. we are relatively sure that trying to implement Host code on a spartan



3E is a terrible idea... but cannot actually confirm why other than common sense.


Could you guys help us out with some reasons why the dedicated host chip or FPGA solution might be better? (code or physical layout might be too difficult?)


Thanks in advance



khex


--------------------------------------- Posted through

formatting link


n

or

Isn't this answered by the cost of the FPGA resource ?

If half the device is sitting there unused, and the project worries more about final cost than engineering time, then a FPGA USB is a good fit.

Conversely, if the FPGA is ~full, and adding USB bumps you up to be next device, then it is expensive. Likewise if your project worries more about completion time, than parts costs.

-jg

I'd say go for an external controller chip, unless you are in for the educational experience of designing one.

Writing the code (driver + stack) to talk to a device through an external chip already amounts for quite a challenge. Also, I'd consider it a helpful prerequisite before rolling your own fully custom controller.

n

or

USB host is mostly about software, the hardware isn't too much different, but there is a lot of s/w involved, especially once you start pulling in drivers for things like the HID class. You might be better served using something like a cpu module that gives you a whole cpu-memory-usb complex and has the code done, then implementing your special stuff in the FPGA.

00

an

mon

p or

I'm sure if you only have to support one specific device you could make a lot of short cuts with the fpga implementation, with the external host chip that might not be so easy, but it will most definitely take more time to get it to work

-Lasse

2010-11-16 04:14, khex skrev:

Why not get a Microcontroller with USB host? You can either use it as the main processor, or as an auxiliary processor which will handle the USB protocol fully. That is what the "cheap hosts" are doing, but this gives you more flexibility.

Best Regards Ulf Samuelsson

That's cool that people can get the loan moreover, it opens up new opportunities.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required