On Wed, May 26, 2010 at 05:33:47PM -0400, Sharif Shaher wrote: > Hello, > > I am using a USRP2 to transmit signals and I am interested in knowing > if anyone has any idea as to how the buffering is handled as it relates > to the call to u2->tx_16sc....when I call this function it usually > returns within > a couple of microseconds. This is much quicker then the time required to > actually transmit the data. For example, using an interpolation > rate of 16 yields > a transmit time for a buffer of size 371 samples of about 59.3 usec. Can > someone explain where the data is stored during the xmit. Also, would > someone be able to estimate how long after this call is made does the first > sample actually get transmitted? I am trying to understand the > variability (in > the USRP2 or if the buffering is done on the PC then on the PC) as > it relates > to transmitting and buffering in general. If the data is stored on > the usrp2, how > much storage is available or how many calls to tx_16sc can I make > before the > buffer is full?
On transmit, there is no buffering in user space. The data is given immediately to the kernel. The kernel "does what it likes with it" :-) In general, it's safe to assume that the kernel transmits it as soon as it can, subject to any back pressure being applied from the USRP2 to the host by ethernet PAUSE frames. There is a very small amount of buffering on the USRP2, on the order of a couple of frames. > Also, related, if instead I specify the metadata-md to transmit at a > known time (meta data or md is the last argument to tx_16sc), where > is the data stored after I make this call and it returns. If on the > usrp2, how much storage is available? Nothing changes. The USRP2 FPGA will hold the frame in its queue until it's time to transmit. If needed, the USRP2 will generate PAUSE frames to flow control the host. > Any comments greatly appreciated. > > Thanks, > Sharif Eric _______________________________________________ Discuss-gnuradio mailing list [email protected] http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
