I am working with the ZCU106 evaluation board and am trying to research the different means of saving data to a large, non-volatile storage device. We are running our application with petalinux booting from the SD card and the FPGA sampling an ADC (at 400 MHZ) and writing to SDRAM (4 GB on our board). Ideally there would be no interruption in the ADC sampling, but by my calculations the RAM will be filled in a little over 5 seconds.
I am trying to find the best way to copy that data from RAM with as little downtime in the ADC sampling. My leading theory is connecting a 1 TB SSD to the SATA port on the ZCU106 for a theoretical write speed of 6 Gbps. However, it would take roughly 6 seconds to write the full 4 GB RAM across the SATA line. That's introducing a 50% dead time in my writing that I am not sampling.
Other solutions I've looked at is the USB, PCIe end point, and SFP connectors but they do not provide clear solutions. The ZCU106 will be operating in an independent way from any other computing device, so I can't stream the data off to a different device to buffer and store.
Is there another solution I have not discovered yet? One thought was looking at FMC expansion cards for faster write speeds.