Hi,

I'm building an application where I receive data from the x310, process the 
data, then transmit it out. I have 3 separate threads running, one for each 
task. The receive task is constantly receiving data from the x310 at 200MS/s 
and putting it into a buffer. The process task takes data from the receive 
buffer, processes it, and puts it into a transmit buffer. The transmit task is 
constantly transmitting data from the transmit buffer at 12.5 MS/s.


I get constant underruns (U's on the console) when I try to receive and 
transmit from the same channel on the x310. However, when I transmit and 
receive on separate channels, underruns no longer occur. I would like to figure 
out a solution to this problem as I want to processes two 200MS/s streams on 1 
x310.


This problem occurs no matter the sample rates. I've tried lowering the receive 
rate to 50MS/s (while transmitting 4x the data to balance things out) and there 
are still constant underruns though at a lower rate.  I know processing time is 
not the issue as I've profiled the time it takes to process, and I have even 
removed the processing task from the application altogether (receive data to a 
buffer and do nothing with the data; constantly transmit 0's from the transmit 
buffer) and the underruns still occur.


I'm running on UHD 3.11.0, and the x310 is is configured with basic TX/RX 
daughterboards and flashed with the XG image for use over two 10 gig ethernet 
links.


Thanks,

Jason

_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to