Chunks to Symbols: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
No edit summary
No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Block Docs]]
[[Category:Block Docs]]
Map a stream of unpacked symbol indexes to stream of float or complex constellation points in D dimensions
Map a stream of unpacked symbol indexes to stream of float or complex constellation points in D dimensions
out[n D + k] = symbol_table[in[n] D + k], k=0,1,...,D-1


The combination of [[Packed to Unpacked]] followed by this block handles the general case of mapping from a stream of bytes or shorts into arbitrary float or complex symbols.
The combination of [[Packed to Unpacked]] followed by this block handles the general case of mapping from a stream of bytes or shorts into arbitrary float or complex symbols.
Line 7: Line 9:
(''R''): <span class="plainlinks">[https://wiki.gnuradio.org/index.php/GNURadioCompanion#Variable_Controls ''Run-time adjustable'']</span>
(''R''): <span class="plainlinks">[https://wiki.gnuradio.org/index.php/GNURadioCompanion#Variable_Controls ''Run-time adjustable'']</span>


; Symbol table (''R''): list that maps chunks to symbols.
; Symbol table (''R''): list that maps chunks to symbols. That list should have a length of <number of symbols> x <dimension of the table>


; Dimension : Dimension of the table.
; Dimension : Dimension of the table.
Line 15: Line 17:
== Example Flowgraph ==
== Example Flowgraph ==


Insert description of flowgraph here, then show a screenshot of the flowgraph and the output if there is an interesting GUI.  Currently we have no standard method of uploading the actual flowgraph to the wiki or git repo, unfortunately.  The plan is to have an example flowgraph showing how the block might be used, for every block, and the flowgraphs will live in the git repo.
[[File:Qpsk_test2.png|800px]]


== Source Files ==
== Source Files ==


; C++ files
; C++ files
: [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/lib/chunks_to_symbols_impl.cc]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-digital/lib/chunks_to_symbols_impl.cc chunks_to_symbols_impl.cc]


; Header files
; Header files
: [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/lib/chunks_to_symbols_impl.h]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-digital/lib/chunks_to_symbols_impl.h chunks_to_symbols_impl.h]


; Public header files
; Public header files
: [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/include/gnuradio/digital/chunks_to_symbols.h]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-digital/include/gnuradio/digital/chunks_to_symbols.h chunks_to_symbols.h]


; Block definition
; Block definition
: [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/grc/digital_chunks_to_symbols.block.yml]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-digital/grc/digital_chunks_to_symbols.block.yml digital_chunks_to_symbols.block.yml]

Latest revision as of 14:58, 4 April 2025

Map a stream of unpacked symbol indexes to stream of float or complex constellation points in D dimensions

out[n D + k] = symbol_table[in[n] D + k], k=0,1,...,D-1

The combination of Packed to Unpacked followed by this block handles the general case of mapping from a stream of bytes or shorts into arbitrary float or complex symbols.

Parameters

(R): Run-time adjustable

Symbol table (R)
list that maps chunks to symbols. That list should have a length of <number of symbols> x <dimension of the table>
Dimension
Dimension of the table.
Num ports
Number of input and output stream to process. Each stream is processed isolated from each other.

Example Flowgraph

Qpsk test2.png

Source Files

C++ files
chunks_to_symbols_impl.cc
Header files
chunks_to_symbols_impl.h
Public header files
chunks_to_symbols.h
Block definition
digital_chunks_to_symbols.block.yml