cuPHY  0.1
CUDA PHY Layer Acceration Library
Data Structures | Functions
PDSCH DMRS

This section describes the PDSCH (Physical DOwnlink Shared Channel) DMRS functions of the cuPHY application programming interface. More...

Data Structures

struct  PdschDmrsParams
 Struct that tracks all necessary parameters for PDSCH DMRS computation. This struct is also used in PDSCH modulation. There is one PdschDmrsParams struct per TB. More...
 
struct  PdschUeGrpParams
 Struct that tracks parameters needed for rate-matching/modulation when CSI-RS parameters are present. More...
 

Functions

cuphyStatus_t cuphyPdschDmrsGetDescrInfo (size_t *pDescrSizeBytes, size_t *pDescrAlignBytes)
 : Compute descriptor size and alignment for PDSCH DMRS. More...
 
cuphyStatus_t cuphySetupPdschDmrs (cuphyPdschDmrsLaunchConfig_t pdschDmrsLaunchConfig, PdschDmrsParams *dmrs_params, int num_TBs, uint8_t enable_precoding, cuphyTensorDescriptor_t dmrs_output_desc, void *dmrs_output_addr, void *cpu_desc, void *gpu_desc, uint8_t enable_desc_async_copy, cudaStream_t strm)
 : Setup PDSCH DMRS component. More...
 

Detailed Description

Function Documentation

◆ cuphyPdschDmrsGetDescrInfo()

cuphyStatus_t cuphyPdschDmrsGetDescrInfo ( size_t *  pDescrSizeBytes,
size_t *  pDescrAlignBytes 
)
Parameters
[in,out]pDescrSizeBytesSize in bytes of descriptor
[in,out]pDescrAlignBytesAlignment in bytes of descriptor
Returns
CUPHY_STATUS_SUCCESS or CUPHY_STATUS_INVALID_ARGUMENT

◆ cuphySetupPdschDmrs()

cuphyStatus_t cuphySetupPdschDmrs ( cuphyPdschDmrsLaunchConfig_t  pdschDmrsLaunchConfig,
PdschDmrsParams dmrs_params,
int  num_TBs,
uint8_t  enable_precoding,
cuphyTensorDescriptor_t  dmrs_output_desc,
void *  dmrs_output_addr,
void *  cpu_desc,
void *  gpu_desc,
uint8_t  enable_desc_async_copy,
cudaStream_t  strm 
)
Parameters
[in]pdschDmrsLaunchConfigPointer to DMRS launch config.
[in]dmrs_paramsDMRS config. parameters struct array on the device, with # TBs entries.
[in]num_TBsnumber of TBs.
[in]enable_precodingEnabling pre-coding. Set to true if this batch has any UE with pre-coding enabled.
[in]dmrs_output_descoutput tensor descriptor; dimensions {273*12, 14, 16} tensor.
[in]dmrs_output_addrpointer to output tensor data; each element is a complex number (half-precision).
[in]cpu_descPointer to descriptor in CPU memory
[in]gpu_descPointer to descriptor in GPU memory
[in]enable_desc_async_copyasync copy CPU descriptor into GPU if set.
[in]strmCUDA stream for async copy
Returns
CUPHY_STATUS_SUCCESS or CUPHY_STATUS_INVALID_ARGUMENT or CUPHY_STATUS_MEMCPY_ERROR or CUPHY_STATUS_INTERNAL_ERROR