[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
SV: [Discuss-gnuradio] fundamentals of block-connections, message queue
From: |
Ulrika Uppman |
Subject: |
SV: [Discuss-gnuradio] fundamentals of block-connections, message queue etc. |
Date: |
Wed, 26 Aug 2009 13:24:37 +0200 |
Hi Milo,
As I understand (if we're still are talking about the 802.11b code), the tx
side uses multiple message queues "in between" the processing blocks to handle
the different data rates. I'm not sure I understand your question, but yes the
detete_head() function is used to extract messages from the queue. Take a look
in the bbn_80211b_pkt.py and I think you will see how the message queues are
used there.
/Ulrika
________________________________
Från: Milo Wong [mailto:address@hidden
Skickat: den 26 augusti 2009 06:47
Till: Colby Boyer
Kopia: Ulrika Uppman; GNU Radio Discussion
Ämne: Re: [Discuss-gnuradio] fundamentals of block-connections, message queue
etc.
Hi Colby,
Based on what you said, is that means, at Tx side, the encoded data stream from
encoder should also be loaded into gr.msg_queue() and applies delete_head()
funtion?
Thank you,
Milo
On Tue, Aug 25, 2009 at 8:08 PM, Colby Boyer <address@hidden> wrote:
Within the BBN RX side, all the processing blocks are stuck together so
that data "streams" from each block to the next. In the final block, when a
packet is successfully decoded it is loaded in a message queue. The loading
into the message queue is done within the C++ code, not the python.
There is another thread running that will sleep on an empty queue and
will not wake up until something is inserted into the queue. When a message
enters the queue, the thread wakes up, takes out the message and then prints it
out via a call back function.
Check the source code for the message queue to see if there is another
function to add a message.
Thanks,
Colby
On Tue, Aug 25, 2009 at 8:08 AM, Ulrika Uppman <address@hidden> wrote:
Hi everyone,
I'm trying to get a grip of how the software code works in
gnuradio. At the moment I'm looking at the bbn 802.11b rx implementation.
I would like to understand how the data stream is transported
from the usrp source block and further to the rest of the processing blocks
that are connected together. There is a message queue involved, but how and
where is the data added to the queue? Is there another way of putting data in
the message queue than using the inset_tail function?
I have read the general documentation on how the gnuradio code
is built by David Shen, and I have also been reading the gr code, but I still
can't seem to figure it all out. Can someone please point me in the right
direction on where to look for this kind of documentation?
Thanks!
/Ulrika
_______________________________________________
Discuss-gnuradio mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
_______________________________________________
Discuss-gnuradio mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio