gr::fec::code::polar_decoder_sc
gr::fec::code::polar_decoder_common
gnuradio/fec/polar_decoder_sc.h
volk::vector< float > volk::vector<float> gr::fec::code::polar_decoder_sc::d_llr_vec d_llr_vec gr::fec::code::polar_decoder_sc::d_llr_vec
volk::vector< unsigned char > volk::vector<unsigned char> gr::fec::code::polar_decoder_sc::d_u_hat_vec d_u_hat_vec gr::fec::code::polar_decoder_sc::d_u_hat_vec
generic_decoder::sptr static generic_decoder::sptr gr::fec::code::polar_decoder_sc::make (int block_size, int num_info_bits, std::vector< int > frozen_bit_positions, std::vector< uint8_t > frozen_bit_values) make gr::fec::code::polar_decoder_sc::make int block_size int num_info_bits std::vector< int > frozen_bit_positions std::vector< uint8_t > frozen_bit_values

block_size

codeword size. MUST be a power of 2.

num_info_bits

represents the number of information bits in a block. Also called frame_size. <= block_size

frozen_bit_positions

is an integer vector which defines the position of all frozen bits in a block. Its size MUST be equal to block_size - num_info_bits. Also it must be sorted and every position must only occur once.

frozen_bit_values

holds an unpacked byte for every frozen bit position. It defines if a frozen bit is fixed to '0' or '1'. Defaults to all ZERO.

gr::fec::code::polar_decoder_sc::~polar_decoder_sc
() override
~polar_decoder_sc
gr::fec::code::polar_decoder_sc::~polar_decoder_sc
void void gr::fec::code::polar_decoder_sc::generic_work (void *in_buffer, void *out_buffer) override generic_work gr::fec::code::polar_decoder_sc::generic_work generic_work void * in_buffer void * out_buffer
gr::fec::code::polar_decoder_sc::polar_decoder_sc
(int block_size, int num_info_bits, std::vector< int > frozen_bit_positions, std::vector< uint8_t > frozen_bit_values)
polar_decoder_sc
gr::fec::code::polar_decoder_sc::polar_decoder_sc
int block_size
int num_info_bits
std::vector< int > frozen_bit_positions
std::vector< uint8_t > frozen_bit_values
unsigned char unsigned char gr::fec::code::polar_decoder_sc::retrieve_bit_from_llr (float llr, const int pos) retrieve_bit_from_llr gr::fec::code::polar_decoder_sc::retrieve_bit_from_llr float llr const int pos
void void gr::fec::code::polar_decoder_sc::sc_decode (float *llrs, unsigned char *u) sc_decode gr::fec::code::polar_decoder_sc::sc_decode float * llrs unsigned char * u

Standard successive cancellation (SC) decoder for POLAR codes.

It expects float input with bits mapped 1 --> 1, 0 --> -1 Or: f = 2.0 * bit - 1.0

gr::fec::code::polar_common
gr::fec::code::polar_decoder_common
gr::fec::code::polar_decoder_sc
gr::fec::generic_decoder
gr::fec::code::polar_common
d_frozen_bit_positions
d_info_bit_positions
d_info_bit_positions_reversed
d_frozen_bit_values
gr::fec::code::polar_decoder_common
gr::fec::code::polar_decoder_sc
gr::fec::generic_decoder
d_logger
d_name
std::basic_string< Char >
std::shared_ptr< logger >
std::string
std::vector< int >
std::vector< uint8_t >
- gr::fec::code::polar_decoder_sc
  alias
- gr::fec::code::polar_decoder_sc
  base_unique_id
- gr::fec::code::polar_decoder_sc
  bit_reverse
- gr::fec::code::polar_decoder_sc
  block_power
- gr::fec::code::polar_decoder_sc
  block_size
- gr::fec::code::polar_decoder_sc
  butterfly
- gr::fec::code::polar_decoder_sc
  butterfly_generic
- gr::fec::code::polar_decoder_sc
  butterfly_volk
- gr::fec::code::polar_decoder_sc
  d_frozen_bit_positions
- gr::fec::code::polar_decoder_sc
  d_frozen_bit_values
- gr::fec::code::polar_decoder_sc
  d_info_bit_positions
- gr::fec::code::polar_decoder_sc
  d_info_bit_positions_reversed
- gr::fec::code::polar_decoder_sc
  d_llr_vec
- gr::fec::code::polar_decoder_sc
  d_logger
- gr::fec::code::polar_decoder_sc
  d_name
- gr::fec::code::polar_decoder_sc
  d_u_hat_vec
- gr::fec::code::polar_decoder_sc
  d_volk_frozen_bit_mask
- gr::fec::code::polar_decoder_sc
  d_volk_frozen_bits
- gr::fec::code::polar_decoder_sc
  d_volk_temp
- gr::fec::code::polar_decoder_sc
  even_u_values
- gr::fec::code::polar_decoder_sc
  extract_info_bits
- gr::fec::code::polar_decoder_sc
  generic_decoder
- gr::fec::code::polar_decoder_sc
  generic_decoder
- gr::fec::code::polar_decoder_sc
  generic_work
- gr::fec::code::polar_decoder_sc
  get_history
- gr::fec::code::polar_decoder_sc
  get_input_conversion
- gr::fec::code::polar_decoder_sc
  get_input_item_size
- gr::fec::code::polar_decoder_sc
  get_input_size
- gr::fec::code::polar_decoder_sc
  get_iterations
- gr::fec::code::polar_decoder_sc
  get_output_conversion
- gr::fec::code::polar_decoder_sc
  get_output_item_size
- gr::fec::code::polar_decoder_sc
  get_output_size
- gr::fec::code::polar_decoder_sc
  get_shift
- gr::fec::code::polar_decoder_sc
  initialize_decoder
- gr::fec::code::polar_decoder_sc
  is_frozen_bit
- gr::fec::code::polar_decoder_sc
  llr_bit_decision
- gr::fec::code::polar_decoder_sc
  llr_even
- gr::fec::code::polar_decoder_sc
  llr_odd
- gr::fec::code::polar_decoder_sc
  make
- gr::fec::code::polar_decoder_sc
  my_id
- gr::fec::code::polar_decoder_sc
  next_frozen_bit
- gr::fec::code::polar_decoder_sc
  num_info_bits
- gr::fec::code::polar_decoder_sc
  odd_xor_even_values
- gr::fec::code::polar_decoder_sc
  polar_common
- gr::fec::code::polar_decoder_sc
  polar_decoder_common
- gr::fec::code::polar_decoder_sc
  polar_decoder_sc
- gr::fec::code::polar_decoder_sc
  print_packed_bit_array
- gr::fec::code::polar_decoder_sc
  print_pretty_llr_vector
- gr::fec::code::polar_decoder_sc
  print_unpacked_bit_array
- gr::fec::code::polar_decoder_sc
  rate
- gr::fec::code::polar_decoder_sc
  retrieve_bit_from_llr
- gr::fec::code::polar_decoder_sc
  sc_decode
- gr::fec::code::polar_decoder_sc
  set_frame_size
- gr::fec::code::polar_decoder_sc
  setup_info_bit_positions_reversed
- gr::fec::code::polar_decoder_sc
  setup_volk_vectors
- gr::fec::code::polar_decoder_sc
  sptr
- gr::fec::code::polar_decoder_sc
  unique_id
- gr::fec::code::polar_decoder_sc
  volk_encode
- gr::fec::code::polar_decoder_sc
  volk_encode_block
- gr::fec::code::polar_decoder_sc
  ~generic_decoder
- gr::fec::code::polar_decoder_sc
  ~polar_common
- gr::fec::code::polar_decoder_sc
  ~polar_decoder_common
- gr::fec::code::polar_decoder_sc
  ~polar_decoder_sc