I would like to transfer 2/4bit data coming out from a board to USB. The only other signal that I have is the clock (which is not a multiple / sub-multiple of 100MHz GPIF clock).
I have verified the hardware setup - clock is coming out properly and the data bits are toggling appropriately. When I use the GPIF2USB example, I'm able to read the data using Streamer but there are issues of over sampling and data loss due to GPIF clock and external clock being out of sync (12.3MHz Vs 100MHz GPIF). Can somebody plz. help me with a firmware image with which I can get the data transferred. I know that the minimum data width of GPIF is 8 and I have a software for taking out only 2/4bits out of this.
Any help is deeply appreciated.
Solved! Go to Solution.
- Please let us know what is the PCLK source? Is it from FX3 or from the external board connected to FX3.
- What is the frequency of PCLK on the GPIF II interface?
- Please share the screenshot of Cypress USB Control Center that reads data from the FX3 (in case you are using the device in vendor class) and the expected data from the external board.
The PCLK is externally fed from the application board. It is configurable between 12MHz to 20MHz. I’m currently using 12MHz.
I’m able to read the data using gpif2usb fw image and either control centre or streamer application. Control center is crashing if I try to read more than 32MB. I’ve modified streamer to log the data coming on the USB. I’ve tried to change the gpif config in the gpif2usb fw to sync read with external clock but the application is behaving as if there is no PCLK available. But if I connect the external clock to one pins of D0-D7, in asynch mode it is able to detect clock and data.
I’ll be able to send you the screen shots when I’m back in office.