5 Replies Latest reply on Aug 24, 2020 4:42 AM by YashwantK_46

    (FPGA + FX3 + Streamer) Issue processing data

    PeMa_4730271

      Hi all,

       

      I am stuck for a few days with this issue:

      To begin with, my setup is the following:

      Altera Cyclone V attached through GPIF 2 interface to FX3, which is connected to a windows desktop through USB 3.0 cable.

       

      I validated the system with application note: 001-65974_AN65974_Designing_with_the_EZ-USB_FX3_Slave_FIFO_Interface

      The only difference is that, my FPGA is the Cyclone V and the appnote was made to Cyclone III. Just made the porting and everything was up and running.

       

      On the FPGA side, I just merged the two examples of streamIn and streamOut, because I wanted the system to be bidirectional. And when generating data to send to the desktop I was incrementing it, to be as follows: 32'd0000_0000, 32'd0000_0001, 32'd0000_0002, 32'd0000_0003, etc etc etc

       

      On the FX3 is running the SlaveFIFOsync.img which setups the DMA to dispatch data in AUTO mode with two sockets.

       

      On windows desktop I am using the streamer demo from cypress, to measure the XferRate and to watch the data coming through the USB 3.0.

       

      Now, the issue is:

      If I select one packet for transfer, I can see the data coming correctly like this:

      32'd0000_0000,

      32'd0000_0001,

      32'd0000_0002,

      32'd0000_0003,

      ....

      If I select two packet for transfer, I can see the data coming correctly like this:

      32'd0000_0000,

      32'd0000_0002,

      32'd0000_0004,

      32'd0000_0006,

      ....

      If I select four packet for transfer, I can see the data coming correctly like this:

      32'd0000_0000,

      32'd0000_0004,

      32'd0000_0008,

      32'd0000_000C,

      ....

       

      I dont want to use just one packet for Xfer because the Xfer rate is xtremely low.

      Maybe the data sampling on the streamer app is being done wrong. I think it is only printing the last 32-bit packet of each Xfer. I cannot access to all the packets in the Xfer.

       

      Can anybody help me on this issue please ?

       

      Thanks in advance,

      Pedro