Virtex5 FPGA Board and USB interface

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
Dear all,

I am working on a project where I need to store datas on the Flash
memory of my FPGA board. I would like to do it with the USB interface
but it is much more complicated than I could thought.

I don't have any experience on USB management but in my "dream" I
would like to be able to connect an USB flash drive to the FPGA, and
be able to then copy 2 files on the usb flash drive to the flash
memory of the FPGA Board.

I have begin to read about the Cypress CY7C68013A-100AC which is the
controller provided with my FPGA board, but I could not really
understand how I can make my plan working.

Since my flash memory is interface by the FPGA, I assume I have to
code something in the FPGA. But in an other hand, the management of
the USB seems to be done by configurating the 8051 inside the

In fact, I don't really know how to interface the USB to the flash
memory of the Board. I also assume the "file management" of the Flash
USB drive should be manage by the USB controller, but how command it
by the FPGA ...

Here are my problems, and you can maybe see that I am a little bit

If some people could help me in this, I would be very grateful :)


Re: Virtex5 FPGA Board and USB interface
Quoted text here. Click to load it

Have a look at the FTDI vinculum, it takes most of the work out of
accessing USB sticks.


Re: Virtex5 FPGA Board and USB interface

Check out this thread, I think it contains some information that might
be useful to you (not specific to the Cypress chip, but some good
stuff on accessing USB sticks in general):

-- Hauke D

Re: Virtex5 FPGA Board and USB interface
Quoted text here. Click to load it

Thank you for you help, I am going to read it carefully

About the vinculum, thank you for the tip but I have to use the FPGA
board I have with the Cypress controller.

If anyone else has advices, don't hesitate :)


Re: Virtex5 FPGA Board and USB interface
The cypress controller you mentioned (68013a) is a nice peripheral
controller, but it is unfortunately not a host.  Cypress does have a
range of easy to use host chips, but this is not one of them (and last
I checked none of them were high speed).  Connecting a flash drive
(which is also a 'peripheral' or 'device') requires a host interface.
The cypress chip, however could be easily used to download files from
a PC or other portable host.

The easiest way to interface the 68013a to a host is simply to
configure it in Slave FIFO mode, such that you merely monitor the
levels of the various endpoints, and read off the data.  The endpoints
as well as the operating state are configured by the onboard
microcontroller.  The configuration can be done via an external EEPROM
if your board has one, or by downloading over USB and

We use this chip as a cheap interface for a monitoring application,
just by filling up the fifos as we receive the data.

Hope this helps.

Re: Virtex5 FPGA Board and USB interface
Quoted text here. Click to load it

I just understand that ! It's a shame but I don't have the choice ...

Quoted text here. Click to load it

I am going to read more about Slave FIFO, but it seems to be quite
complicated. Thank you for your help !


Site Timeline