In my custom design. A FPGA transfers video stream data though gpif port and a FX3 chip transfers it to PC .
But PC doesn't get data continuously , data read stops at 4~8 times transfer for 8192 byte data. (burst mode).
In stop state, DMA Full flags are all full . If try data read again , it also stops at at 4~8 times transfer again.
in pc side , 5ms Sleep Function between transfers disappears the stop situation ( data loss ).
in pc side , I use XferData( buf , 8192) repeatly .
in FX , gpif sync_slave_fifo_2bit , Multi-channel Dma auto mode using thread 0 and 1.
Can you please make sure that your PC does not force FX3 to go into low power mode.
For this, call the CyU3PUsbLPMDisable () API after the CyU3PConnectState API in FX3 firmware.
This will prevent FX3 to go into low power mode.
- Madhu Sudhan