getting 1 MSPS samples off of the PSoC | Cypress Semiconductor
getting 1 MSPS samples off of the PSoC
We have done some tests internally.
Using block transfers, we can only get about 500,000 bytes per second over the USB, using libUSB in Linux. This works out to 250,000 samples per second for a 12 bit SAR.
Using isochronous transfers with libUSB, we can get 1,100,000 bytes per second over the USB using libUSB in Linux. (You have to google a lot to get the isochronous transfer examples for LibUSB.) This works out to about 550,000 samples per second from a 12 bit SAR.
Using build in SPI, we can get about 1,200,000 samples per second (without DMA) off of the device. We are using 18 mhz clock, which we just found out is a no-no for 16 bit transfers, according to the data sheet for high speed.
We are currently seeing about 1us between data packets on the SPI. We will be attempting DMA. The DMA wizard refuses to recognize the SPI device (I guess because it is UDB based), and so we stole from the SPIM example project.
I will update this post with the results soon.