cuPHY  0.1
CUDA PHY Layer Acceration Library
Data Fields
_cuphyPdschCellDynPrm Struct Reference

#include <cuphy_api.h>

Data Fields

uint16_t cellPrmDynIdx
 
uint16_t cellPrmStatIdx
 
uint16_t csiRsPrmsOffset
 
uint16_t dmrsSymLocBmsk
 
uint16_t nCsiRsPrms
 
uint8_t nPdschSym
 
uint8_t pdschStartSym
 
uint16_t slotNum
 

Detailed Description

PDSCH per-cell dynamic parameters

Field Documentation

◆ cellPrmDynIdx

uint16_t _cuphyPdschCellDynPrm::cellPrmDynIdx

Index to cell-dynamic parameter information, i.e., to the pCellPrms array of the cuphyPdschCellGrpDynPrm_t struct

◆ cellPrmStatIdx

uint16_t _cuphyPdschCellDynPrm::cellPrmStatIdx

Index to cell-static parameter information, i.e., to the pCellStatPrms array of the cuphyPdschStatPrms_t struct.

◆ csiRsPrmsOffset

uint16_t _cuphyPdschCellDynPrm::csiRsPrmsOffset

start index for this cell's nCsiRsPrms elements in the pCsiRsPrms array of cuphyPdschCellGrpDynPrm_t; all elements are allocated continuously.

◆ dmrsSymLocBmsk

uint16_t _cuphyPdschCellDynPrm::dmrsSymLocBmsk

DMRS symbol location bitmask (least significant 14 bits are valid); A set bit i, specifies symbol i is DMRS. For example if symbols 2 and 3 are DMRS, then: dmrsSymLocBmsk = 0000 0000 0000 1100

◆ nCsiRsPrms

uint16_t _cuphyPdschCellDynPrm::nCsiRsPrms

CSI-RS information for current cell number of CSI-RS params co-scheduled for this cell

◆ nPdschSym

uint8_t _cuphyPdschCellDynPrm::nPdschSym

PDSCH DMRS + data symbol count. Value: 1->14

◆ pdschStartSym

uint8_t _cuphyPdschCellDynPrm::pdschStartSym

PDSCH time domain resource allocation The pdschStartSym, nPdschSym and dmrsSymLocBmsk fields are also added at the user group level. The current expectation is that the caller uses the UE-group fields only if nPdschSym (cell level) and dmrsSymLocBmsk (cell level) are zero. If these fields are not zero, then the cell-level fields are used, and the implementation assumes these values are identical across all UEs and all UE groups belonging to this cell.

TODO: Other possible design choices:

  • Wrap the time domain resource allocation fields in a seperate struct, and add a pointer both here and at the UE group level. Use one of the two fields depending on which pointer is not nullptr. Note: that from a memory perspective storing the pointer would likely be more expensive, as these 3 fields take up only 4B. PDSCH start symbol location (0-indexing). Value: 0->13

◆ slotNum

uint16_t _cuphyPdschCellDynPrm::slotNum

slot number. Value: 0->319.