DPDK  21.02.0
Data Fields
rte_bbdev_op_ldpc_dec Struct Reference

#include <rte_bbdev_op.h>

Data Fields

struct rte_bbdev_op_data input
 
struct rte_bbdev_op_data hard_output
 
struct rte_bbdev_op_data soft_output
 
struct rte_bbdev_op_data harq_combined_input
 
struct rte_bbdev_op_data harq_combined_output
 
uint32_t op_flags
 
uint8_t rv_index
 
uint8_t iter_max
 
uint8_t iter_count
 
uint8_t basegraph
 
uint16_t z_c
 
uint16_t n_cb
 
uint8_t q_m
 
uint16_t n_filler
 
uint8_t code_block_mode
 
struct rte_bbdev_op_dec_ldpc_cb_params cb_params
 
struct rte_bbdev_op_dec_ldpc_tb_params tb_params
 

Detailed Description

Operation structure for LDPC decode.

An operation can be performed on one CB at a time "CB-mode". An operation can also be performed on one or multiple CBs that logically belong to a TB "TB-mode" (Currently not supported).

The input encoded CB data is the Virtual Circular Buffer data stream.

Each byte in the input circular buffer is the LLR value of each bit of the original CB.

Hard output is a mandatory capability that all BBDEV PMDs support. This is the decoded CBs (CRC24A/B is the last 24-bit in each decoded CB).

Soft output is an optional capability for BBDEV PMDs. If supported, an LLR rate matched output is computed in the soft_output buffer structure. These are A Posteriori Probabilities (APP) LLR samples for coded bits.

HARQ combined output is an optional capability for BBDEV PMDs. If supported, a LLR output is streamed to the harq_combined_output buffer.

HARQ combined input is an optional capability for BBDEV PMDs. If supported, a LLR input is streamed from the harq_combined_input buffer.

The output mbuf data structure is expected to be allocated by the application with enough room for the output data.

Definition at line 440 of file rte_bbdev_op.h.

Field Documentation

struct rte_bbdev_op_data input

The Virtual Circular Buffer for this code block, one LLR per bit of the original CB.

Definition at line 444 of file rte_bbdev_op.h.

struct rte_bbdev_op_data hard_output

The hard decisions buffer for the decoded output, size K for each CB

Definition at line 448 of file rte_bbdev_op.h.

struct rte_bbdev_op_data soft_output

The soft LLR output LLR stream buffer - optional

Definition at line 450 of file rte_bbdev_op.h.

struct rte_bbdev_op_data harq_combined_input

The HARQ combined LLR stream input buffer - optional

Definition at line 452 of file rte_bbdev_op.h.

struct rte_bbdev_op_data harq_combined_output

The HARQ combined LLR stream output buffer - optional

Definition at line 454 of file rte_bbdev_op.h.

uint32_t op_flags

Flags from rte_bbdev_op_ldpcdec_flag_bitmasks

Definition at line 457 of file rte_bbdev_op.h.

uint8_t rv_index

Rate matching redundancy version [3GPP TS38.212, section 5.4.2.1]

Definition at line 462 of file rte_bbdev_op.h.

uint8_t iter_max

The maximum number of iterations to perform in decoding CB in this operation - input

Definition at line 466 of file rte_bbdev_op.h.

uint8_t iter_count

The number of iterations that were performed in decoding CB in this decode operation - output

Definition at line 470 of file rte_bbdev_op.h.

uint8_t basegraph

1: LDPC Base graph 1, 2: LDPC Base graph 2. [3GPP TS38.212, section 5.2.2]

Definition at line 474 of file rte_bbdev_op.h.

uint16_t z_c

Zc, LDPC lifting size. [3GPP TS38.212, section 5.2.2]

Definition at line 478 of file rte_bbdev_op.h.

uint16_t n_cb

Ncb, length of the circular buffer in bits. [3GPP TS38.212, section 5.4.2.1]

Definition at line 482 of file rte_bbdev_op.h.

uint8_t q_m

Qm, modulation order {1,2,4,6,8}. [3GPP TS38.212, section 5.4.2.2]

Definition at line 486 of file rte_bbdev_op.h.

uint16_t n_filler

Number of Filler bits, n_filler = K – K’ [3GPP TS38.212 section 5.2.2]

Definition at line 490 of file rte_bbdev_op.h.

uint8_t code_block_mode

[0 - TB : 1 - CB]

Definition at line 492 of file rte_bbdev_op.h.

Struct which stores Code Block specific parameters

Definition at line 495 of file rte_bbdev_op.h.

Struct which stores Transport Block specific parameters

Definition at line 497 of file rte_bbdev_op.h.


The documentation for this struct was generated from the following file: