Simple question regarding sending data to FPGA through USB

Guest rpurba

Recommended Posts

I have a project that requires me to send and receive data (bulk transfer) to and from FPGA (UART).

Is USB chip communication only limited to writing configuration data to FLASH?  Or I can configure it to do both?

I assume we can do both but I need to make sure.

Thanks in advance for your help.


Link to comment
Share on other sites

Hello rpurba,

The FT2232 USB chip that is used with the Papilio One has two serial channels. One of those two channels is connected directly to the JTAG pins of the Spartan 3E FPGA and the other channel is connected to two general I/O pins of the FPGA. This provides a lot of flexibility to accomplish whatever it is that you want with the FPGA. You can send and receive data from your Verilog/VHDL code directly through the FT2232 USB chip using the rx/tx pins which will allow speeds up to 1Mbaud.

FPGA bitstreams are loaded to the Spartan 3E over the JTAG channel which happens very quickly, less than 2 seconds.

The SPI Flash chip that can be used to store configuration bitstreams is not directly connected to the FT2232 USB chip. Instead, when the SPI chip is to be programmed, a special bitstream is loaded to the FPGA which connects the SPI Flash pins to the JTAG pins that are connected to the FT2232. The Papilio Loader application then controls the JTAG pins to program the SPI Flash.

I hope this answers your question, the summary is that it is possible to send and receive data to and from the FPGA as a virtual com port (UART).

The schematic for the Papilio One is located here if you want to take a look.


Link to comment
Share on other sites


This topic is now archived and is closed to further replies.