cuPHY  0.1
CUDA PHY Layer Acceration Library
Data Structures | Typedefs | Functions
Codeword types for polar tree

This section describes application programming interface for computing codeword types (rate-0, rate-1, neither) for codewords within a polar codeword tree. More...

Data Structures

struct  cuphyCompCwTreeTypes_t
 

Typedefs

typedef struct cuphyCompCwTreeTypes * cuphyCompCwTreeTypesHndl_t
 

Functions

cuphyStatus_t cuphyCompCwTreeTypesGetDescrInfo (size_t *pDynDescrSizeBytes, size_t *pDynDescrAlignBytes)
 Helper to compute compCwTreeTypes descriptor buffer sizes and alignments. More...
 
cuphyStatus_t cuphyCreateCompCwTreeTypes (cuphyCompCwTreeTypesHndl_t *pCompCwTreeTypes)
 Allocate and initialize a cuPHY compCwTreeTypes object. More...
 
cuphyStatus_t cuphyDestroyCompCwTreeTypes (cuphyCompCwTreeTypesHndl_t compCwTreeTypesHndl)
 Destroys a cuPHY compCwTreeTypes object. More...
 
cuphyStatus_t cuphySetupCompCwTreeTypes (cuphyCompCwTreeTypesHndl_t compCwTreeTypesHndl, uint16_t nPolUciSegs, const cuphyPolarUciSegPrm_t *pPolUciSegPrmsCpu, const cuphyPolarUciSegPrm_t *pPolUciSegPrmsGpu, uint8_t **pCwTreeTypesAddrs, void *pCpuDynDescCompTree, void *pGpuDynDescCompTree, void *pCpuDynDescCompTreeAddrs, uint8_t enableCpuToGpuDescrAsyncCpy, cuphyCompCwTreeTypesLaunchCfg_t *pLaunchCfg, cudaStream_t strm)
 Setup cuPHY compCwTreeTypes for slot processing. More...
 

Detailed Description

Typedef Documentation

◆ cuphyCompCwTreeTypesHndl_t

typedef struct cuphyCompCwTreeTypes* cuphyCompCwTreeTypesHndl_t

cuPHY compCwTreeTypes handle

Function Documentation

◆ cuphyCompCwTreeTypesGetDescrInfo()

cuphyStatus_t cuphyCompCwTreeTypesGetDescrInfo ( size_t *  pDynDescrSizeBytes,
size_t *  pDynDescrAlignBytes 
)

Computes compCwTreeTypes descriptor buffer sizes and alignments. To be used by the caller to allocate these buffers (in CPU and GPU memories) and provide them to other compCwTreeTypes APIs

Returns CUPHY_STATUS_INVALID_ARGUMENT if pDynDescrSizeBytes and/or pDynDescrAlignBytes is NULL

Returns CUPHY_STATUS_SUCCESS if allocation and initialization were successful.

Parameters
pDynDescrSizeBytes- Size in bytes of dynamic descriptor
pDynDescrAlignBytes- Alignment in bytes of dynamic descriptor
Returns
CUPHY_STATUS_SUCCESS, CUPHY_STATUS_INVALID_ARGUMENT
See also
cuphyStatus_t,cuphyGetErrorName,cuphyGetErrorString,cuphyCreatePucchF1Rx,cuphyDestroyPucchF1Rx

◆ cuphyCreateCompCwTreeTypes()

cuphyStatus_t cuphyCreateCompCwTreeTypes ( cuphyCompCwTreeTypesHndl_t pCompCwTreeTypes)

Allocates a compCwTreeTypes object and returns a handle in the address provided by the caller.

Returns CUPHY_STATUS_INVALID_ARGUMENT if pCompCwTreeTypes is NULL.

Returns CUPHY_STATUS_ALLOC_FAILED if a compCwTreeTypes object cannot be allocated

Returns CUPHY_STATUS_SUCCESS if allocation and initialization were successful

Parameters
pCompCwTreeTypes- Address to return the new compCwTreeTypes instance
Returns
CUPHY_STATUS_SUCCESS, CUPHY_STATUS_ALLOC_FAILED, CUPHY_STATUS_INVALID_ARGUMENT

cuphyStatus_t,cuphyGetErrorName,cuphyGetErrorString,cuphyPucchF0RxGetDescrInfo,cuphySetupPucchF0Rx

◆ cuphyDestroyCompCwTreeTypes()

cuphyStatus_t cuphyDestroyCompCwTreeTypes ( cuphyCompCwTreeTypesHndl_t  compCwTreeTypesHndl)

Destroys a cuPHY compCwTreeTypes object that was previously created by cuphyCreateCompCwTreeTypes. The handle provided to this function should not be used for any operations after this function returns.

Returns CUPHY_STATUS_INVALID_ARGUMENT if compCwTreeTypesHndl is NULL.

Returns CUPHY_STATUS_SUCCESS if destruction was successful.

Parameters
compCwTreeTypesHndl- handle to previously allocated compCwTreeTypes instance
Returns
CUPHY_STATUS_SUCCESS, CUPHY_STATUS_INVALID_ARGUMENT
See also
cuphyStatus_t,cuphyGetErrorName,cuphyGetErrorString,cuphyPucchF0RxGetDescrInfo,cuphyCreatePucchF0Rx,cuphySetupPucchF0Rx

◆ cuphySetupCompCwTreeTypes()

cuphyStatus_t cuphySetupCompCwTreeTypes ( cuphyCompCwTreeTypesHndl_t  compCwTreeTypesHndl,
uint16_t  nPolUciSegs,
const cuphyPolarUciSegPrm_t *  pPolUciSegPrmsCpu,
const cuphyPolarUciSegPrm_t *  pPolUciSegPrmsGpu,
uint8_t **  pCwTreeTypesAddrs,
void *  pCpuDynDescCompTree,
void *  pGpuDynDescCompTree,
void *  pCpuDynDescCompTreeAddrs,
uint8_t  enableCpuToGpuDescrAsyncCpy,
cuphyCompCwTreeTypesLaunchCfg_t *  pLaunchCfg,
cudaStream_t  strm 
)

Setup cuPHY compCwTreeTypes in preparation towards slot execution

Returns CUPHY_STATUS_SUCCESS if setup is successful.

Returns CUPHY_STATUS_INVALID_ARGUMENT if compCwTreeTypesHndl and/or pPolUciSegPrmsCpu and/or pPolUciSegPrmsGpu and/or pCpuDynDescCompTree and/or pGpuDynDescCompTree and/or pLaunchCfg is NULL.

Parameters
compCwTreeTypesHndl- Handle to previously created compCwTreeTypes instance
nPolUciSegs- number of polar UCI segments
pPolUciSegPrmsCpu- starting address of polar UCI segment parameters (CPU)
pPolUciSegPrmsGpu- starting address of polar UCI segment parameters (GPU)
pCwTreeTypesAddrs- pointer to cwTreeTypes addresses
pCpuDynDescCompTree- pointer to compTree descriptor in cpu
pGpuDynDescCompTree- pointer to comptTree descriptor in gpu
pCpuDynDescCompTreeAddrs- pointer to compTreeAddrs descriptor in cpu
enableCpuToGpuDescrAsyncCpy- option to copy cpu descriptors from cpu to gpu
pLaunchCfg- pointer to rate matching launch configuration
strm- stream to perform copy
Returns
CUPHY_STATUS_SUCCESS, CUPHY_STATUS_INVALID_ARGUMENT
See also
cuphyStatus_t,cuphyGetErrorName,cuphyGetErrorString,cuphyPucchF0RxGetDescrInfo,cuphyDestroyPucchF0Rx