EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

USB Interface Chip Vs FPGA Implementation

Started by khex November 15, 2010
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 http://www.EmbeddedRelated.com
On Nov 16, 4:14=A0pm, "khex" <khexeme1@n_o_s_p_a_m.binghamton.edu>
wrote:
> 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 commo=
n
> 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 > > --------------------------------------- =A0 =A0 =A0 =A0 > Posted throughhttp://www.EmbeddedRelated.com
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.
On Nov 15, 9:14=A0pm, "khex" <khexeme1@n_o_s_p_a_m.binghamton.edu>
wrote:
> 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 commo=
n
> 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?) >
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.
On 16 Nov., 15:54, Andy <amd...@gmail.com> wrote:
> On Nov 15, 9:14=A0pm, "khex" <khexeme1@n_o_s_p_a_m.binghamton.edu> > wrote: > > > 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 5=
00
> > gate FPGA to act as the host. > > > .. we are relatively sure that trying to implement Host code on a spart=
an
> > 3E is a terrible idea... but cannot actually confirm why other than com=
mon
> > sense. > > > Could you guys help us out with some reasons why the dedicated host chi=
p or
> > FPGA solution might be better? (code or physical layout might be too > > difficult?) > > 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. =A0You 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.
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:
> 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. >
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.
> .. 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 http://www.EmbeddedRelated.com
Best Regards Ulf Samuelsson
khex <khexeme1@n_o_s_p_a_m.binghamton.edu> wrote:
> 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?)
Milkymist has a USB Host softcore in XC6SLX -- Uwe Bonnes bon@elektron.ikp.physik.tu-darmstadt.de Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt --------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
That's cool that people can get the <a href="http://bestfinance-blog.com">loan</a> moreover, it opens up new opportunities. 



The 2024 Embedded Online Conference