09-08-2015 07:19 PM
To make a bit error rate measurement using USRPs, I am trying to transmit the same array of bits repeatedly. I have had trouble always finding the beginning of this bit array at the receiver and I am wondering if it's actually a problem at the transmitter. The attached code is a slightly modified PSK Tx from the Modulation Toolkit that displays the USRP time difference it took to transmit a block. It keeps track of the average and the maximum time for an iteration.
The average approaches what it should -- the number of samples in the block divided by the samples per second that was set on the USRP. But there are large deviations around this average and I've observed maximum loop times that are 4 times greater than the time it should take to transmit the block. I'm wondering what is happening in these long loops. Is there garbage being transmitted and that is why my receiver is occasionally not finding the start of the bit array and therefore registering high bit error rates?
Anyone know? Thanks!
09-09-2015 06:01 PM
Hi mike1234567890,
What device are you using to take your measurements?
What USRP model are you using?
Your code doesn't seem to have any extraneous functions. One thing I would try is putting the averaging functions in another loop to limit everything in the write loop as much as possible.
09-09-2015 07:22 PM
Thanks for the response.
I used an N210 USRP directly connected via ethernet to a laptop. The time lag is present even if I remove averaging. My laptop's processor and memory appear to run this code easily.
The extra long time lag is not screwing up any comms I am currently trying to do but I would like to mitigate any possible future issues.
I'll think about the easiest way to measure what is coming out of the USRP during these long transmit time intervals using two time-sync'd USRPs.