Electronics > Projects, Designs, and Technical Stuff
Easiest way to collect some data @50MB/s and dump to computer
SiliconWizard:
Of course an USB-UART solution would likely be the easiest, but don't expect very high speeds. Max speed with FTDI devices (and I don't think you'll get higher with competitors) is something like 3Mbits/s, which will yield something like 300KB/s tops.
If you want better throughput, IME a FT232H or FT2232H in parallel mode would be the fastest way to get there.
Real-world data: in asynchronous mode ("FT245" mode), you're going to get something like 6-8MB/s max. Simple to interface, may be enough for your needs. In synchronous mode, you're going to realistically get something like 30MB/s max, which is not too shabby. Interfacing in synchronous mode is a bit more involved though, and will usually mean having to deal with an additional clock domain in your FPGA.
For even faster speed, USB SS (for instance with FTDI's FT6xx offering) will get you much higher throughput, but if you're looking for an easy solution, the former IMO will be much easier and cheaper. You can find modules/breakout boards for FT232H or FT2232H for pretty cheap, and easy to use. I couldn't find such boards at the moment for FT60x chips, and the official dev boards are more expensive (~$100), and have connectors that may not be easy to interface with depending on your own board (such as FMC.)
Of course as someone suggested, you can make your own boards for this, but that's going to be some additional dev time and is going to definitely cost you more than buying dev boards or modules.
Yet another option would be to embed some soft ethernet controller in your FPGA and add an external ethernet PHY+connector (you can find ready-made boards with that.) I believe some people here have experience doing this, but it's going to be more involved than the above IMO.
ledtester:
See if your logic analyzer is compatible with sigrok:
https://sigrok.org/
sigrok has command line tools which you can use to capture data directly to a file.
Bassman59:
--- Quote from: ataradov on June 12, 2020, 07:04:08 am ---There is equivalent chip from FTDI, which may not require programming, but then you will have to deal with FTDI.
--- End quote ---
The FTDI parts don't allow you to customize all of the device descriptor, so it can't enumerate as a standard device class such as Audio. That greatly limits its applicability.
c64:
Thanks guys, I think I will abandon my ugly idea from the first post of having a memory "buffer".
So it will be all in real time like this: streem of data -> fpga -> some USB 2.0 device -> computer
Now just need to choose "some USB device".
I did some caclulations and data rate will be not more than 45MB/s. With some simple compression inside FPGA I can make it ~42MB/s if needed.
FT232H / FT2232H look very easy to use, but they say maximum speed is 40MB/s, so I think I will go with Cypress FX2 (CY7C68013)
Found quite cheap development board https://banggood.com/EZ-USB-FX2LP-CY7C68013A-USB-Core-Board-Development-Board-Logic-Analyzer-p-1183409.html so no need to make pcb
ataradov:
Yep, I have a couple of those boards and they are fine. And getting 45 MB/s should not be a problem at all.
Again, the only mildly annoying part about it is the need to program the MCU part. And of course you will have to make some PC software. So it is quite a bit of development effort.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version