From b29f92c1d6064dea7ce34d0003caed867f231093 Mon Sep 17 00:00:00 2001 From: Sakthivel Velumani Date: Thu, 7 Oct 2021 19:02:26 +0530 Subject: [PATCH] Add MCS table option to ulsim --- openair1/SIMULATION/NR_PHY/ulsim.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/openair1/SIMULATION/NR_PHY/ulsim.c b/openair1/SIMULATION/NR_PHY/ulsim.c index 91a45d69b1..d86d913829 100644 --- a/openair1/SIMULATION/NR_PHY/ulsim.c +++ b/openair1/SIMULATION/NR_PHY/ulsim.c @@ -320,7 +320,6 @@ int main(int argc, char **argv) int modify_dmrs = 0; /* L_PTRS = ptrs_arg[0], K_PTRS = ptrs_arg[1] */ int ptrs_arg[2] = {-1,-1};// Invalid values - /* mapping type = dmrs_arg[0], Add Pos = dmrs_arg[1], dmrs config type = dmrs_arg[2] */ int dmrs_arg[3] = {-1,-1,-1};// Invalid values uint16_t ptrsSymPos = 0; uint16_t ptrsSymbPerSlot = 0; @@ -519,6 +518,10 @@ int main(int argc, char **argv) exit(-1); } break; + + case 'B': + mcs_table = atoi(optarg); + break; case 'F': input_fd = fopen(optarg, "r"); @@ -610,6 +613,7 @@ int main(int argc, char **argv) printf("-y Number of TX antennas used at UE\n"); printf("-z Number of RX antennas used at gNB\n"); printf("-A Interpolation_filname Run with Abstraction to generate Scatter plot using interpolation polynomial in file\n"); + printf("-B MCS table\n"); //printf("-C Generate Calibration information for Abstraction (effective SNR adjustment to remove Pe bias w.r.t. AWGN)\n"); printf("-F Input filename (.txt format) for RX conformance testing\n"); printf("-G Offset of samples to read from file (0 default)\n"); @@ -895,6 +899,7 @@ int main(int argc, char **argv) dmrs_config_type = pusch_dmrs_type1; else if(dmrs_arg[2] == 2) dmrs_config_type = pusch_dmrs_type2; + num_dmrs_cdm_grps_no_data = dmrs_arg[3]; } uint8_t length_dmrs = pusch_len1; @@ -1555,7 +1560,12 @@ int main(int argc, char **argv) roundStats[snrRun],effRate[snrRun],effTP[snrRun],TBS); FILE *fd=fopen("nr_ulsim.log","w"); + if (fd == NULL) { + printf("Problem with filename %s\n", "nr_ulsim.log"); + exit(-1); + } dump_pusch_stats(fd,gNB); + fclose(fd); printf("*****************************************\n"); printf("\n"); @@ -1589,7 +1599,6 @@ int main(int argc, char **argv) printf("*************\n"); printf("PUSCH test OK\n"); printf("*************\n"); - break; } snrStats[snrRun] = SNR;