OFDM Serializer: Difference between revisions
(Created page with "Category:Block Docs Category:Stub Docs This is the template for the "Page-per-block Docs". This first section should describe what the block...") |
No edit summary |
||
Line 1: | Line 1: | ||
[[Category:Block Docs]] | [[Category:Block Docs]] | ||
Serializes complex modulations symbols from OFDM sub-carriers. | |||
This is the inverse block to the [[OFDM Carrier Allocator]]. It outputs the complex data symbols as a tagged stream, discarding the pilot symbols. | |||
If given, two different tags are parsed: The first key () specifies the number of OFDM symbols in the frame at the input. The second key () specifies the number of complex symbols that are coded into this frame. If given, this second key is then used at the output, otherwise, is used. If both are given, the packet length specifies the maximum number of output items, and the frame length specifies the exact number of consumed input items. | |||
It is possible to correct a carrier offset in this function by passing another tag with said offset. | |||
; Input: Complex vectors of length | |||
; Output: Complex scalars, in the same order as specified in occupied_carriers. | |||
== Parameters == | == Parameters == | ||
; | ; FFT length | ||
: | : FFT length | ||
; Occupied Carriers | |||
: See [[OFDM Carrier Allocator]] | |||
; Length Tag Key | |||
: The key of the tag identifying the length of the input frame in OFDM symbols. | |||
; Packet Length Tag Key | |||
: The key of the tag identifying the number of complex symbols in this packet. | |||
; Symbols skipped | |||
: If the first symbol is not allocated as in occupied_carriers[0], set this | |||
; Carrier Offset Key | |||
: When this block should correct a carrier offset, specify the tag key of the offset here (not necessary if following an ofdm_frame_equalizer_vcvc) | |||
; | ; Input is shifted | ||
: | : If the input has the DC carrier on index 0 (i.e. it is not FFT shifted), set this to false | ||
== Example Flowgraph == | == Example Flowgraph == | ||
Line 21: | Line 41: | ||
; C++ files | ; C++ files | ||
: [https://github.com/gnuradio/gnuradio | : [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/lib/ofdm_serializer_vcc_impl.cc] | ||
; Header files | ; Header files | ||
: [https://github.com/gnuradio/gnuradio | : [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/lib/ofdm_serializer_vcc_impl.h] | ||
; Public header files | ; Public header files | ||
: [https://github.com/gnuradio/gnuradio | : [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/include/gnuradio/digital/ofdm_serializer_vcc.h] | ||
; Block definition | ; Block definition | ||
: [https://github.com/gnuradio/gnuradio | : [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/grc/digital_ofdm_serializer_vcc.block.yml] |
Revision as of 15:44, 9 September 2019
Serializes complex modulations symbols from OFDM sub-carriers.
This is the inverse block to the OFDM Carrier Allocator. It outputs the complex data symbols as a tagged stream, discarding the pilot symbols.
If given, two different tags are parsed: The first key () specifies the number of OFDM symbols in the frame at the input. The second key () specifies the number of complex symbols that are coded into this frame. If given, this second key is then used at the output, otherwise, is used. If both are given, the packet length specifies the maximum number of output items, and the frame length specifies the exact number of consumed input items.
It is possible to correct a carrier offset in this function by passing another tag with said offset.
- Input
- Complex vectors of length
- Output
- Complex scalars, in the same order as specified in occupied_carriers.
Parameters
- FFT length
- FFT length
- Occupied Carriers
- See OFDM Carrier Allocator
- Length Tag Key
- The key of the tag identifying the length of the input frame in OFDM symbols.
- Packet Length Tag Key
- The key of the tag identifying the number of complex symbols in this packet.
- Symbols skipped
- If the first symbol is not allocated as in occupied_carriers[0], set this
- Carrier Offset Key
- When this block should correct a carrier offset, specify the tag key of the offset here (not necessary if following an ofdm_frame_equalizer_vcvc)
- Input is shifted
- If the input has the DC carrier on index 0 (i.e. it is not FFT shifted), set this to false
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.
Source Files
- C++ files
- [1]
- Header files
- [2]
- Public header files
- [3]
- Block definition
- [4]