rte_bbdev_op_turbo_dec - Man Page

Synopsis

#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
uint32_t op_flags
uint8_t rv_index
uint8_t iter_min:4
uint8_t iter_max:4
uint8_t iter_count
uint8_t ext_scale
uint8_t num_maps
uint8_t code_block_mode

Detailed Description

Operation structure for Turbo decode​. An operation can be performed on one CB at a time "CB-mode"​. An operation can be performed on one or multiple CBs that logically belong to one TB "TB-mode"​. The provided K size parameter of the CB is its size coming from the decode operation​. CRC24A/B check is requested by the application by setting the flag RTE_BBDEV_TURBO_CRC_TYPE_24B for CRC24B check or CRC24A otherwise​. In TB-mode, BBDEV concatenates the decoded CBs one next to the other with relevant CRC24B in between​.

The input encoded CB data is the Virtual Circular Buffer data stream, wk, with the null padding included as described in 3GPP TS 36​.212 section 5​.1​.4​.1​.2 and shown in 3GPP TS 36​.212 section 5​.1​.4​.1 Figure 5​.1​.4-1​. The size of the virtual circular buffer is 3*Kpi, where Kpi is the 32 byte aligned value of K, as specified in 3GPP TS 36​.212 section 5​.1​.4​.1​.1​.

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 of K sizes (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​.

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

Definition at line 430 of file rte_bbdev_op​.h​.

Field Documentation

struct rte_bbdev_op_data input

The Virtual Circular Buffer, wk, size 3*Kpi for each CB

Definition at line 432 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 436 of file rte_bbdev_op​.h​.

struct rte_bbdev_op_data soft_output

The soft LLR output buffer - optional

Definition at line 438 of file rte_bbdev_op​.h​.

uint32_t op_flags

Flags from rte_bbdev_op_td_flag_bitmasks

Definition at line 441 of file rte_bbdev_op​.h​.

uint8_t rv_index

Rv index for rate matching [0:3]

Definition at line 444 of file rte_bbdev_op​.h​.

uint8_t iter_min

The minimum number of iterations to perform in decoding all CBs in this operation - input

Definition at line 448 of file rte_bbdev_op​.h​.

uint8_t iter_max

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

Definition at line 452 of file rte_bbdev_op​.h​.

uint8_t iter_count

The maximum number of iterations that were performed in decoding all CBs in this decode operation - output

Definition at line 456 of file rte_bbdev_op​.h​.

uint8_t ext_scale

5 bit extrinsic scale (scale factor on extrinsic info)

Definition at line 458 of file rte_bbdev_op​.h​.

uint8_t num_maps

Number of MAP engines to use in decode, must be power of 2 (or 0 to auto-select)

Definition at line 462 of file rte_bbdev_op​.h​.

uint8_t code_block_mode

[0 - TB : 1 - CB]

Definition at line 465 of file rte_bbdev_op​.h​.

Author

Generated automatically by Doxygen for DPDK from the source code​.

Info

Version 25.11.3 DPDK