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

    Superspeed Dev kit syncslavefifo 32bit example

    jean-alexis.boulet_2317216

      Hi, 

         

      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?

         

      Thanks

         

      JeanAlexis

        • 1. Re: Superspeed Dev kit syncslavefifo 32bit example
          jean-alexis.boulet_2317216

          HI,

             

          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);
                  CyFxAppErrorHandler(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.

             

          Regards,

             

          Jean-Alexis

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

            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.