discuss-gnuradio
[Top][All Lists]
Advanced

[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:23:32 +0200

Thank you very much for your explenation Colby! I now understand how the 
message queue is used in the rx code.

However, I would still like to know more about how the data is transported 
between for example the usrp block and the next block (in the 802.11b rx case 
this would be the resampling block). If I understand it right, the usrp sends 
frames of data including a header, timestamp and a number of data samples. When 
connecting the blocks in the python code, where does the transformation from 
frames into a stream happen? I've tried to read the code and documentation 
about the connection and starting of flow graphs, but I could still use some 
hints...

Tnx,
/Ulrika

________________________________

Från: Colby Boyer [mailto:address@hidden 
Skickat: den 26 augusti 2009 05:09
Till: Ulrika Uppman
Kopia: GNU Radio Discussion
Ämne: Re: [Discuss-gnuradio] fundamentals of block-connections, message queue 
etc.


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



reply via email to

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