cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
652 Views
Registered: ‎03-29-2019

Fastest method for outputting data to pc.

Jump to solution

Hello! 

I am an engineering intern working on a DSP project using a Zedboard and the AD9364 tranceiver from analog devices

I am trying to learn how to output data to a pc as fast as possible. 

The project requires that I run the tranceiver's sampling rate at 28MHz. Each sample is 4 bytes, so that's roughly 100MBps. Currently, I am outputting the data from the zedboard's memory using xil_printf to tera term and formatting in a csv. However, xil_printf is too slow to keep up with the capture rate, and the system lags. I have looked into using the XUart functionality, but it seems that the highest baud rate is 115200, which would also be too slow?

In general, what is the fastest way to ouput data from the zedboard? How do DSP projects usually handle exporting large amounts of data real time?

I am very new to this, and I apologize if anything is unclear or naive. Thank you very much for your help!

-Scott

 

 

 

 

Tags (3)
0 Kudos
1 Solution

Accepted Solutions
Highlighted
Advisor
Advisor
610 Views
Registered: ‎04-26-2015

Normally you would just avoid outputting large amounts of data in real-time. The big advantage of something like the Zynq is that you can do all the processing on-chip, without needing to send large amounts of data to a PC for additional processing. Where data does need to be sent to a PC quickly, normally a PCIe development board would be used.

 

100MB/s is a pretty substantial data rate. The only interface on the Zedboard that might handle it is the 1Gbps ethernet - although that will have overheads and I'm not 100% confident that you'll be able to maintain a steady 100MB/s.

View solution in original post

3 Replies
Highlighted
Advisor
Advisor
611 Views
Registered: ‎04-26-2015

Normally you would just avoid outputting large amounts of data in real-time. The big advantage of something like the Zynq is that you can do all the processing on-chip, without needing to send large amounts of data to a PC for additional processing. Where data does need to be sent to a PC quickly, normally a PCIe development board would be used.

 

100MB/s is a pretty substantial data rate. The only interface on the Zedboard that might handle it is the 1Gbps ethernet - although that will have overheads and I'm not 100% confident that you'll be able to maintain a steady 100MB/s.

View solution in original post

Highlighted
Explorer
Explorer
584 Views
Registered: ‎07-17-2014

@u4223374 wrote:

 

100MB/s is a pretty substantial data rate. The only interface on the Zedboard that might handle it is the 1Gbps ethernet - although that will have overheads and I'm not 100% confident that you'll be able to maintain a steady 100MB/s.


If it were me, I would investigate having the FPGA directly place data into jumbo frame'd ethernet (maybe without IP on top) in a pure layer2 environment. That might do it.

But even Windows can sometimes choke on a full Gb of bandwidth.

Now -- if you had dual Gb Ethernet interfaces and the FPGA directly pumped into those -- the interfaces should handle it... (as well as the receiving PCs that need to record/process the data)



Highlighted
Visitor
Visitor
527 Views
Registered: ‎03-29-2019
Thank you very much for your reply! This clears up a lot.
0 Kudos