How to Increase data Transfer Rate in FX3?

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

cross mob
GiSa_4520796
Level 4
Level 4
First like received

Hello,

I am transferring video data from FPGA to FX3 S0 port(SD Card) and able to receive it succesfully. When I am seeing video using host application(GUI),the data is receiving very slow i.e.. only one frame for 10 seconds.How to increase the data transfer rate?

Regards,

Srujana.

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

Hi Srujana,

As I mentioned it depends on Host side implementation to make the transfer faster.

Regards,

Hemanth

Hemanth

View solution in original post

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

Hi Srujana,

Is your device UVC class or vendor class?

Please share your firmware.

Regards,

Hemanth

Hemanth
0 Likes
lock attach
Attachments are accessible only for community members.

Hello,

I am not using UVC Classes.Please find below attached firmware.

I am using Sandisk (Micro SDHC UHC-1) SD Card.

Regards,

Srujana.

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

Hi Srujana,

I see that you are performing read from SD card by issuing vendor commands 0x98 and 0x99 - which makes the call CyU3PSibReadWriteRequest(). You use an AUTO channel(glChHandleMscIn) for transferring the data read. Please confirm.

Regards,

Hemanth

Hemanth
0 Likes

Hello,

Yes,I am reading SD Card data using vendor commands.Now I changed manual DMA Channel to Auto DMA Channel.But the data transfer speed is same for both.

Regards,

Srujana.

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

Please try increasing intfParams.maxFreq (You can use AUTO channel only)

Regards,

Hemanth

Hemanth
0 Likes

Hello,

Thanks for your reply.

Now,I am using 52Mhz with DDR Enabled.

intfParams.useDdr          = CyTrue;                      

intfParams.maxFreq        = CY_U3P_SIB_FREQ_52MHZ;  

With this configuration,I am getting data very fast upto SD Card and when I am transfering the same data from SD Card to PC using external host application,the data transfer is very very slow.What might be the reason?

Regards,

Srujana.

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

It depends on how you are reading from Host. Are you using control center? If yes, use streamer and test. Keep the streamer On, requesting data from the IN endpoint. And then issue vendor command to get the data. How much data are you requesting when you issue vendor command?

Regards,

Hemanth

Hemanth
0 Likes

Hello,

Yes,I am using Control Center.

How much data are you requesting when you issue vendor command?

     As of now,I am testing with 4096 bytes.

Regards,

Srujana.

0 Likes

Hello,

When I am using Streamer Application and requesting data through IN Endpoint,I am getting results as attached.I am getting PROD Events Xfer_cmplt event also.And I am supplying 49Mhz frequency to SD Card.

Capture.PNG

Regards,

Srujana.

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

Hi Srujana,

As I mentioned it depends on Host side implementation to make the transfer faster.

Regards,

Hemanth

Hemanth
0 Likes