RRC CSI-RS config for 8 and 12 ports
This commit is contained in:
@@ -87,7 +87,7 @@ static inline const char *rnti_types(nr_rnti_type_t rr)
|
|||||||
#define NR_NUMBER_OF_SYMBOLS_PER_SLOT 14
|
#define NR_NUMBER_OF_SYMBOLS_PER_SLOT 14
|
||||||
#define NR_NUMBER_OF_SYMBOLS_PER_SLOT_EXTENDED_CP 12
|
#define NR_NUMBER_OF_SYMBOLS_PER_SLOT_EXTENDED_CP 12
|
||||||
#define NR_MAX_NB_LAYERS 4 // 8
|
#define NR_MAX_NB_LAYERS 4 // 8
|
||||||
#define NR_MAX_CSI_PORTS 4
|
#define NR_MAX_CSI_PORTS 12
|
||||||
|
|
||||||
// Since the IQ samples are represented by SQ15 R+I (see https://en.wikipedia.org/wiki/Q_(number_format)) we need to compensate when
|
// Since the IQ samples are represented by SQ15 R+I (see https://en.wikipedia.org/wiki/Q_(number_format)) we need to compensate when
|
||||||
// calcualting signal energy. Instead of shifting each sample right by 15, we can normalize the result in dB scale once its
|
// calcualting signal energy. Instead of shifting each sample right by 15, we can normalize the result in dB scale once its
|
||||||
|
|||||||
@@ -479,8 +479,26 @@ static void config_csirs(const NR_ServingCellConfigCommon_t *servingcellconfigco
|
|||||||
resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p4;
|
resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p4;
|
||||||
resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_fd_CDM2;
|
resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_fd_CDM2;
|
||||||
break;
|
break;
|
||||||
|
case 8:
|
||||||
|
resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_other;
|
||||||
|
resourceMapping.frequencyDomainAllocation.choice.other.buf = calloc(1, sizeof(uint8_t));
|
||||||
|
resourceMapping.frequencyDomainAllocation.choice.other.size = 1;
|
||||||
|
resourceMapping.frequencyDomainAllocation.choice.other.bits_unused = 2;
|
||||||
|
resourceMapping.frequencyDomainAllocation.choice.other.buf[0] = 60;
|
||||||
|
resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p8;
|
||||||
|
resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_fd_CDM2;
|
||||||
|
break;
|
||||||
|
case 12:
|
||||||
|
resourceMapping.frequencyDomainAllocation.present = NR_CSI_RS_ResourceMapping__frequencyDomainAllocation_PR_other;
|
||||||
|
resourceMapping.frequencyDomainAllocation.choice.other.buf = calloc(1, sizeof(uint8_t));
|
||||||
|
resourceMapping.frequencyDomainAllocation.choice.other.size = 1;
|
||||||
|
resourceMapping.frequencyDomainAllocation.choice.other.bits_unused = 2;
|
||||||
|
resourceMapping.frequencyDomainAllocation.choice.other.buf[0] = 252;
|
||||||
|
resourceMapping.nrofPorts = NR_CSI_RS_ResourceMapping__nrofPorts_p12;
|
||||||
|
resourceMapping.cdm_Type = NR_CSI_RS_ResourceMapping__cdm_Type_fd_CDM2;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
AssertFatal(1==0,"Number of ports not yet supported\n");
|
AssertFatal(false, "Number of ports not yet supported\n");
|
||||||
}
|
}
|
||||||
resourceMapping.firstOFDMSymbolInTimeDomain = 13; // last symbol of slot
|
resourceMapping.firstOFDMSymbolInTimeDomain = 13; // last symbol of slot
|
||||||
resourceMapping.firstOFDMSymbolInTimeDomain2 = NULL;
|
resourceMapping.firstOFDMSymbolInTimeDomain2 = NULL;
|
||||||
|
|||||||
Reference in New Issue
Block a user