2 Replies Latest reply on May 8, 2017 7:16 AM by raghuramh_86

    Superspeed Dev kit syncslavefifo 32bit example



      I'm trying to test the USB3 technology with the Superspeed Explorer Kit (CYUSB3KIT-003), the  FMC interconnect board(CYUSB3ACC-005) and the xilinx kintex developement kit KC705.


      I was able to run the the default streaming example  in stand alone (only the CYUSBkit) without issue.


      I was also able to to run the AN65974/SF_loopback.img example in the FX3 and my code in the xilinx FPGA.


      However, if i try any other file at the same location the test failed (BULK IN transfer failed with Error Code:997)


      I would like to know why?




      I also did try to recompile myself the FX3 FW.


      I builded in release the slfifosync example found there "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\firmware\slavefifo_examples"


      The Stream In work in Control center but the throughtput in Streamer.exe is very slow(32000KB/s) or have error depending on the packets and Xfer configuration.




      When i do recompile the same code in 32 bit mode CY_FX_SLFIFO_GPIF_16_32BIT_CONF_SELECT(1) and program the FX3 in RAM after a reset with the KC705 at off, the device won't enumerate in control center. So there is no way I can test a streamer program in my FPGA with a 32 bits interface.


      Anyone know how to fix those issues?





        • 1. Re: Superspeed Dev kit syncslavefifo 32bit example



          I did try to narrow down the issue using the OOpenOCD debbuger in eclipse.


          Using break point I did find the fonction that returned with error in cyfxslfifosync.c


              /* Load the GPIF configuration for Slave FIFO sync mode. */
              apiRetStatus = CyU3PGpifLoad (&Sync_Slave_Fifo_2Bit_CyFxGpifConfig);
              if (apiRetStatus != CY_U3P_SUCCESS)
                  CyU3PDebugPrint (4, "CyU3PGpifLoad failed, Error Code = %d\n",apiRetStatus);


          The apiRetStatus value was 70 so the error code was : CY_U3P_ERROR_NOT_SUPPORTED


          The description say CY_U3P_ERROR_NOT_SUPPORTED - if a 32 bit GPIF configuration is being used on a part that does not support this.\n


          I would like to know why i got this error?


          To my knowledge the superspeed devkit do support 32bits GPIF operation.





          • 2. Re: Superspeed Dev kit syncslavefifo 32bit example

            Hi Jean-Alexis,




            FX3 supports 32-bit GPIF configuration.


            Please make sure to disconnect the PMODE[2:0]  pins of the connector on the interconnect board. This is to ensure that device comes up as FX3 Bootloader.


            Or else you need to connect the FPGA after programming FX3.