USB Endpoint configaration

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
ThM_3776866
Level 4
Level 4
First like received First like given Welcome!

Hi all,

I am working on cypress FX3. I need to pass data from host  to FPGA through cypress. I am stuck with DMA buffer and endpoint creation  concept.

1.How the data in exchange between one end point to another endpoint?

2. is DMA buffer needed for USB data read ? is it possible to read USB data without DMA.

0 Likes
1 Solution
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi,

- Based on your description you intend to send the data from USB Endpoint to GPIF interface of FX3.

- To do that you need to create a DMA channel between USB Producer Socket and PIB Consumer Socket.

Please refer to following App Note where it is implemented:

http://www.cypress.com/documentation/application-notes/an65974-designing-ez-usb-fx3-slave-fifo-inter...

Regards,

Hemanth

Hemanth

View solution in original post

0 Likes
4 Replies
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi,

- Based on your description you intend to send the data from USB Endpoint to GPIF interface of FX3.

- To do that you need to create a DMA channel between USB Producer Socket and PIB Consumer Socket.

Please refer to following App Note where it is implemented:

http://www.cypress.com/documentation/application-notes/an65974-designing-ez-usb-fx3-slave-fifo-inter...

Regards,

Hemanth

Hemanth
0 Likes

Thanks for answer and i got source code and related document. The source code is for 32 bit interface, but FPGA output is only 8 bit. How to i configure 8 bit GPIF ll instead of 32 bit .

0 Likes
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi,

Please check the GPIF designer project in the following path:

AN65974\FX3 Firmware\GPIFII_Designer_sync_SlaveFIFO.cydsn

- In this you need to change the bus width to 8 (and make sure that the pins displayed in the IO matrix display for the GPIF interface are connected to FPGA)

- Along with this in the firmware, you need to assign the macro CY_FX_SLFIFO_GPIF_16_32BIT_CONF_SELECT to 0.

Regards,

Hemanth

Hemanth
0 Likes
ThM_3776866
Level 4
Level 4
First like received First like given Welcome!

Thank you Hemanth sir, i will try and let you know.

0 Likes