Unpack K Bits: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
No edit summary
 
(One intermediate revision 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
; C++ files
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/unpack_k_bits_bb_impl.cc]
: [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]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/unpack_k_bits.cc Base class]


; Header files
; Header files
Line 34: Line 32:


; Public header files
; Public header files
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/include/gnuradio/blocks/unpack_k_bits_bb.h]
: [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]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/include/gnuradio/blocks/unpack_k_bits.h Base class]


; Block definition
; Block definition
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/grc/blocks_unpack_k_bits_bb.block.yml]
: [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]