discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] USRP2 xmit buffering


From: Eric Blossom
Subject: Re: [Discuss-gnuradio] USRP2 xmit buffering
Date: Wed, 26 May 2010 20:59:31 -0700
User-agent: Mutt/1.5.20 (2009-08-17)

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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]