discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] Source Block - Flow Control


From: Marcus Müller
Subject: Re: [Discuss-gnuradio] Source Block - Flow Control
Date: Wed, 15 Oct 2014 08:49:29 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0

Hi David,

since you should be blocking, just do the following in your work
1. sleep till the next full second
2. save timestamp to check if you have already generated output this second
3. generate output

If you want so, this is basically "throttle as a source". The "sleep" is fairly inaccurate compared to things like hardware clocks, but since you most likely have something like a USRP transmitting bursts, this won't be a problem.

Typically, GNU Radio's packet generators take asynchronous messages and turn them into streams. I'd say it's easier for you to take your database source and instead of generating throttled samples just sending a message once in a while -- it also fits the idea of item streams being more continuous from a user's perspective quite nicely, so I fully agree with John.

Greetings,
Marcus

On 15.10.2014 00:02, David Halls wrote:
That sounds promising. The only thing is that the data *is* valid from time zero, but I just want to send the values from my source block, say once per second.

What can I use to block in my block, just not produce any items for some period of time or a number of calls?  and is there anyway to know when I can stop blocking? What will fill the buffers further down the chain?

thanks,

David


-------- Original message --------
From: Matt Ettus
Date:2014/10/14 22:56 (GMT+00:00)
To: David Halls
Cc: Jeff Long ,GNURadio
Subject: Re: [Discuss-gnuradio] Source Block - Flow Control


No, if you don't have anything useful to output in a source block, you can (and should) block while you wait.  If you have something useful, but not as much as requested, you can output only what you have.  There is no need to generate filler in GNU Radio.

Matt


On Tue, Oct 14, 2014 at 2:43 PM, David Halls <address@hidden<mailto:address@hidden>> wrote:
Matt,

In my source block I can limit the calls to the DB ok, but I will still need to output something from the block, won't I? This will then propagate and fill the buffers?

Thanks,

David


-------- Original message --------
From: Matt Ettus
Date:2014/10/14 19:09 (GMT+00:00)
To: Jeff Long
Cc: GNURadio
Subject: Re: [Discuss-gnuradio] Source Block - Flow Control


Jeff,

If there is a hardware device like a USRP in the chain, then you should not use a throttle block.  What you are seeing is the initial startup burst.  When everything starts up, all the buffers are empty, and GNU Radio will generate data until something backs up.  Once they fill up, you are seeing the rate settle down.  This is all normal.

If you really need to rate limit what gets requested of the database during the initial transient (which I don't recommend), you should do that within your source block.

Matt


On Tue, Oct 14, 2014 at 10:56 AM, Jeff Long <address@hidden<mailto:address@hidden>> wrote:
Should have mentioned ... set the throttle rate just slightly higher than what the chain would consume at steady state when all the buffers are filled and the USRP is transmitting. How well this works depends on what the rest of the chain looks like.

- Jeff


On 10/14/2014 05:52 PM, Jeff Long wrote:
Use a throttle block immediately after your source block, setting the
vector size to match your source.

- Jeff

On 10/14/2014 04:34 PM, David Halls wrote:
Dear All,

I am wondering how to add some flow control to a source block, so that
it doesn’t fire out items so quickly.

Later stages of my flow graph are slowed by various bits of processing
and combining, before transmission via USRP, with bursts being
transmitted every few seconds.

What happens is that the block fires out 1,000s of vectors, and then
seems to slow down and settle into sync with the rest of the flow graph
after a few seconds. As my source block is reading in from a Database, I
want to slow this initial rate significantly.

The block outputs vectors of bytes (v_len=144). Any ideas?

Regards,

David

---------------------------------------------------------------

David Halls Ph.D.

Research Engineer

Toshiba Research Europe Limited

32 Queen Square, Bristol, BS1 4ND, UK

Tel: +44 (0) 117 906 0790<tel:%2B44%20%280%29%20117%20906%200790>


------------------------------------------------------------------------

NOTE: The information in this email and any attachments may be
confidential and/or legally privileged. This message may be read, copied
and used only by the intended recipient. If you are not the intended
recipient, please destroy this message, delete any copies held on your
system and notify the sender immediately.

Toshiba Research Europe Limited, registered in England and Wales
(2519556). Registered Office 208 Cambridge Science Park, Milton Road,
Cambridge CB4 0GZ, England. Web: www.toshiba.eu/research/trl<http://www.toshiba.eu/research/trl>



------------------------------------------------------------------------
This email has been scanned for email related threats and delivered
safely by Mimecast.
For more information please visit http://www.mimecast.com
------------------------------------------------------------------------


_______________________________________________
Discuss-gnuradio mailing list
address@hidden<mailto:address@hidden>
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio




_______________________________________________
Discuss-gnuradio mailing list
address@hidden<mailto:address@hidden>
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


________________________________

NOTE: The information in this email and any attachments may be confidential and/or legally privileged. This message may be read, copied and used only by the intended recipient. If you are not the intended recipient, please destroy this message, delete any copies held on your system and notify the sender immediately.

Toshiba Research Europe Limited, registered in England and Wales (2519556). Registered Office 208 Cambridge Science Park, Milton Road, Cambridge CB4 0GZ, England. Web: www.toshiba.eu/research/trl<http://www.toshiba.eu/research/trl>



________________________________
This email has been scanned for email related threats and delivered safely by Mimecast.
For more information please visit http://www.mimecast.com
________________________________


________________________________

NOTE: The information in this email and any attachments may be confidential and/or legally privileged. This message may be read, copied and used only by the intended recipient. If you are not the intended recipient, please destroy this message, delete any copies held on your system and notify the sender immediately.

Toshiba Research Europe Limited, registered in England and Wales (2519556). Registered Office 208 Cambridge Science Park, Milton Road, Cambridge CB4 0GZ, England. Web: www.toshiba.eu/research/trl
---------------------------------------------------------------------------------------
 This email has been scanned for email related threats and delivered safely by Mimecast.
 For more information please visit http://www.mimecast.com
---------------------------------------------------------------------------------------





_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


reply via email to

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