Unpack K Bits: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
 
(2 intermediate revisions by one other user not shown)
Line 20: Line 20:
== Example Flowgraph ==
== Example Flowgraph ==


This flowgraph is taken from the [[Guided_Tutorial_PSK_Demodulation]] tutorial.
[[File:Qpsk_stage6_fg.png|800px|]]


[[File:stage6_grc.png|906px|]]
== Source Files ==


== Source Files ==
; C++ files
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/unpack_k_bits_bb_impl.cc Byte implementation]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/unpack_k_bits.cc Base class]
 
; Header files
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/unpack_k_bits_bb_impl.h]
 
; Public header files
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/include/gnuradio/blocks/unpack_k_bits_bb.h Byte implementation]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/include/gnuradio/blocks/unpack_k_bits.h Base class]
 
; Block definition
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/grc/blocks_unpack_k_bits_bb.block.yml]

Latest revision as of 14:40, 9 December 2023

Opposite of Pack K Bits - Converts a byte with k relevant bits to k output bytes with 1 bit each, located in the LSB.

In other words, this block picks the K least significant bits from a byte, and expands them into K bytes of 0 or 1.

Example:

k = 4

in = [0xf5, 0x08]

out = [0,1,0,1,1,0,0,0]

Each input byte produced four output bytes (that are either 0 or 1). Remember that there is no item type of "bit" in GNU Radio, so we have to use bytes to represent single bits.

Parameters

K
Constant for unpacking bits

Example Flowgraph

Qpsk stage6 fg.png

Source Files

C++ files
Byte implementation
Base class
Header files
[1]
Public header files
Byte implementation
Base class
Block definition
[2]