For an medium-high speed ADC converter, my FPGA is currently receiving 16-bit samples at 54 MHz over an LVDS interface (4 differential signal lines plus 1 differential clock signal). These are video/camera signals.
Now, I need to consider how I can get the image from the FPGA to the PC. I have a micro-controller and a USB-OTG interface. But USB is 480 Mbit/s, and probably down to 35 MB/s effectively (or less), which is not high enough for 16 bits 1.5 MPixels @ 54 frames/sec. That would be 162 MB/sec, far too high for USB 2.0. Am I forced to use USB 3.0? I really did want to get the raw images out to the PC. I also could conceivably perform loss-less compression on the FPGA.
The second question is how to stream this data out of the FPGA. I could buffer the ADC-data in external RAM, or I could set up an interface to the micro-controller, or even directly drive output signals on a port. Either way, what options do I have w.r.t. large streams of data?
Any help would be appreciated!