Superspeed Dev kit syncslavefifo 32bit example

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

cross mob
Anonymous
Not applicable

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

0 Likes
2 Replies
Anonymous
Not applicable

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

0 Likes
Anonymous
Not applicable

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.

0 Likes