CyUSB FX3 GpifToUsb misses data sent from FPGA | Cypress Semiconductor
CyUSB FX3 GpifToUsb misses data sent from FPGA
Hello. I'm using Cypress EZ-USB FX3. The following is my problem.
An FPGA is sending data ranging from 1 to 255 to FX3. The GpifToUsb firmware (located in Cypress\EZ-USB FX3 SDK\1.3\firmware\basic_examples\cyfxgpiftousb) is adjusted, where the data bus is 8 bits and the clock is 12MHz. I add a line in the Streamer C# program to write the data sent from FX3 to PC into a txt file so that I can check whether the data received is right.
The data is right in the most time, but sometimes I can find data missing. For example, this byte is 120, the next byte is 147, not 121.
I store the positions where the data misses and find the periodity. If X stands for the CY_FX_DMA_BUF_SIZE in the GpifToUsb project, then the two continuous positions' difference is X. For example, if CY_FX_DMA_BUF_SIZE is 8192, the positions can be 1, 8193, 16385... The number of data missing at each position varies, usually 26 or 27.
So how can I solve the data missing problem? Thank you!