AN65974 saving data into txt file

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

cross mob
Anonymous
Not applicable

Hi!

   

 

   

I am trying to create a C# application that saves data into a text file when the fx3 is interfacing with a FPGA.

   

Using the XferData function from CyUSB.dll, i can only get  transfer rates less then 10MB/s (saving into SSD) while your Streamer application show a throughput around 180MB/s.

   

What is wrong?

   

Thank you!

0 Likes
1 Reply
Anonymous
Not applicable

 Hi,

   

 

   

XferData is an Synchronous (Blocking) API. i.e. It performs synchronous (i.e. blocking)  IO operations and does not return until the transaction completes or the endpoint's TimeOut has elapsed.

   

Whereas, stremaer application uses Asynchronous APIs (BEginxferData, WaitForXfer, FinishXferData). BeginDataXfer is an advanced method for performing  asynchronous IO.  This method sets-up all the parameters for a data transfer,  initiates the transfer, and immediately returns, not waiting for the transfer  to complete. You are seeinng better throughput with streaer mostly due to this. What is the packtes per Xfer and xfers to Queue that you have selected in streamer app?

   

 

   

You can find details in the CyUSB.NET Programmer's manual, when you install the SuperSpeed USBSuite.

   

 

   

Regards,

   

Gayathri

0 Likes