Updated phy_simulators to use new chest
Added a CI test case for dlsim to test 256 QAM
This commit is contained in:
@@ -1100,7 +1100,9 @@
|
|||||||
(Test15: 6 PTRS, 5 Interpolated Symbols),
|
(Test15: 6 PTRS, 5 Interpolated Symbols),
|
||||||
(Test16: 11 PTRS, 0 Interpolated Symbols),
|
(Test16: 11 PTRS, 0 Interpolated Symbols),
|
||||||
(Test17: 2 DMRS Symbols),
|
(Test17: 2 DMRS Symbols),
|
||||||
(Test18: 3 DMRS Symbols)</desc>
|
(Test18: 3 DMRS Symbols),
|
||||||
|
(Test19: 106 PDSCH-PRBs MCS 28),
|
||||||
|
(Test20: 256 QAM MCS 27)</desc>
|
||||||
<pre_compile_prog></pre_compile_prog>
|
<pre_compile_prog></pre_compile_prog>
|
||||||
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
||||||
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
||||||
@@ -1108,24 +1110,26 @@
|
|||||||
<pre_exec_args></pre_exec_args>
|
<pre_exec_args></pre_exec_args>
|
||||||
<main_exec> $OPENAIR_DIR/targets/bin/nr_dlsim.Rel15</main_exec>
|
<main_exec> $OPENAIR_DIR/targets/bin/nr_dlsim.Rel15</main_exec>
|
||||||
<main_exec_args>-n100 -R106 -b106 -s5
|
<main_exec_args>-n100 -R106 -b106 -s5
|
||||||
-n100 -R217 -b217 -s5
|
-n100 -R217 -b217 -s5
|
||||||
-n100 -R273 -b273 -s5
|
-n100 -R273 -b273 -s5
|
||||||
-n100 -R106 -a25 -s5
|
-n100 -R106 -a25 -s5
|
||||||
-n100 -R106 -a51 -s5
|
-n100 -R106 -a51 -s5
|
||||||
-n100 -R217 -b100 -s5
|
-n100 -R217 -b100 -s5
|
||||||
-n100 -R217 -a80 -s5
|
-n100 -R217 -a80 -s5
|
||||||
-n100 -R217 -a110 -s5 -b100
|
-n100 -R217 -a110 -s5 -b100
|
||||||
-n100 -e27 -s30
|
-n100 -e27 -s30
|
||||||
-n100 -e16 -s10
|
-n100 -e16 -s10
|
||||||
-n100 -s1 -t25
|
-n100 -s1 -t25
|
||||||
-n100 -s1 -t33
|
-n100 -s1 -t33
|
||||||
-n100 -s1 -t50
|
-n100 -s1 -t50
|
||||||
-n100 -s5 -T 2 2 2
|
-n100 -s5 -T 2 2 2
|
||||||
-n100 -s5 -T 2 1 2
|
-n100 -s5 -T 2 1 2
|
||||||
-n100 -s5 -T 2 0 4
|
-n100 -s5 -T 2 0 4
|
||||||
-n100 -s2 -U 2 0 1
|
-n100 -s2 -U 2 0 1
|
||||||
-n100 -s2 -U 2 0 2</main_exec_args>
|
-n100 -s2 -U 2 0 2
|
||||||
<tags>nr_dlsim.test1 nr_dlsim.test2 nr_dlsim.test3 nr_dlsim.test4 nr_dlsim.test5 nr_dlsim.test6 nr_dlsim.test7 nr_dlsim.test8 nr_dlsim.test9 nr_dlsim.test10 nr_dlsim.test11 nr_dlsim.test12 nr_dlsim.test13 nr_dlsim.test14 nr_dlsim.test15 nr_dlsim.test16 nr_dlsim.test17 nr_dlsim.test18</tags>
|
-n100 -s25 -e28 -t75
|
||||||
|
-n100 -s35 -q -e27 -t75</main_exec_args>
|
||||||
|
<tags>nr_dlsim.test1 nr_dlsim.test2 nr_dlsim.test3 nr_dlsim.test4 nr_dlsim.test5 nr_dlsim.test6 nr_dlsim.test7 nr_dlsim.test8 nr_dlsim.test9 nr_dlsim.test10 nr_dlsim.test11 nr_dlsim.test12 nr_dlsim.test13 nr_dlsim.test14 nr_dlsim.test15 nr_dlsim.test16 nr_dlsim.test17 nr_dlsim.test18 nr_dlsim.test19 nr_dlsim.test20</tags>
|
||||||
<search_expr_true>PDSCH test OK</search_expr_true>
|
<search_expr_true>PDSCH test OK</search_expr_true>
|
||||||
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
|
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
|
||||||
<nruns>3</nruns>
|
<nruns>3</nruns>
|
||||||
|
|||||||
@@ -323,6 +323,7 @@ int main(int argc, char **argv)
|
|||||||
uint16_t rbSize = 106;
|
uint16_t rbSize = 106;
|
||||||
uint8_t mcsIndex = 9;
|
uint8_t mcsIndex = 9;
|
||||||
uint8_t dlsch_threads = 0;
|
uint8_t dlsch_threads = 0;
|
||||||
|
int fd_inter = 0;
|
||||||
if ( load_configmodule(argc,argv,CONFIG_ENABLECMDLINEONLY) == 0) {
|
if ( load_configmodule(argc,argv,CONFIG_ENABLECMDLINEONLY) == 0) {
|
||||||
exit_fun("[NR_DLSIM] Error, configuration module init failed\n");
|
exit_fun("[NR_DLSIM] Error, configuration module init failed\n");
|
||||||
}
|
}
|
||||||
@@ -333,7 +334,7 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
FILE *scg_fd=NULL;
|
FILE *scg_fd=NULL;
|
||||||
|
|
||||||
while ((c = getopt (argc, argv, "f:hA:pf:g:i:j:n:s:S:t:x:y:z:M:N:F:GR:dPIL:Ea:b:d:e:m:w:T:U:q")) != -1) {
|
while ((c = getopt (argc, argv, "f:hA:pf:g:j:n:s:S:t:x:y:z:M:N:F:GR:dPIL:Ea:b:d:e:m:w:T:U:qi")) != -1) {
|
||||||
switch (c) {
|
switch (c) {
|
||||||
case 'f':
|
case 'f':
|
||||||
scg_fd = fopen(optarg,"r");
|
scg_fd = fopen(optarg,"r");
|
||||||
@@ -385,14 +386,10 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
/*case 'i':
|
case 'i':
|
||||||
interf1=atoi(optarg);
|
fd_inter=1;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'j':
|
|
||||||
interf2=atoi(optarg);
|
|
||||||
break;*/
|
|
||||||
|
|
||||||
case 'n':
|
case 'n':
|
||||||
n_trials = atoi(optarg);
|
n_trials = atoi(optarg);
|
||||||
break;
|
break;
|
||||||
@@ -552,7 +549,7 @@ int main(int argc, char **argv)
|
|||||||
printf("-g [A,B,C,D,E,F,G] Use 3GPP SCM (A,B,C,D) or 36-101 (E-EPA,F-EVA,G-ETU) models (ignores delay spread and Ricean factor)\n");
|
printf("-g [A,B,C,D,E,F,G] Use 3GPP SCM (A,B,C,D) or 36-101 (E-EPA,F-EVA,G-ETU) models (ignores delay spread and Ricean factor)\n");
|
||||||
printf("-y Number of TX antennas used in gNB\n");
|
printf("-y Number of TX antennas used in gNB\n");
|
||||||
printf("-z Number of RX antennas used in UE\n");
|
printf("-z Number of RX antennas used in UE\n");
|
||||||
//printf("-i Relative strength of first intefering gNB (in dB) - cell_id mod 3 = 1\n");
|
printf("-i Activate freq domain interpolation for channel estimation. Average over 1 PRB by default.\n");
|
||||||
//printf("-j Relative strength of second intefering gNB (in dB) - cell_id mod 3 = 2\n");
|
//printf("-j Relative strength of second intefering gNB (in dB) - cell_id mod 3 = 2\n");
|
||||||
printf("-R N_RB_DL\n");
|
printf("-R N_RB_DL\n");
|
||||||
printf("-O oversampling factor (1,2,4,8,16)\n");
|
printf("-O oversampling factor (1,2,4,8,16)\n");
|
||||||
@@ -817,6 +814,7 @@ int main(int argc, char **argv)
|
|||||||
UE->if_inst->phy_config_request = nr_ue_phy_config_request;
|
UE->if_inst->phy_config_request = nr_ue_phy_config_request;
|
||||||
UE->if_inst->dl_indication = nr_ue_dl_indication;
|
UE->if_inst->dl_indication = nr_ue_dl_indication;
|
||||||
UE->if_inst->ul_indication = dummy_nr_ue_ul_indication;
|
UE->if_inst->ul_indication = dummy_nr_ue_ul_indication;
|
||||||
|
UE->fd_lin_interpolation = fd_inter;
|
||||||
|
|
||||||
|
|
||||||
UE_mac->if_module = nr_ue_if_module_init(0);
|
UE_mac->if_module = nr_ue_if_module_init(0);
|
||||||
|
|||||||
@@ -235,6 +235,7 @@ int main(int argc, char **argv)
|
|||||||
float effRate;
|
float effRate;
|
||||||
//float eff_tp_check = 0.7;
|
//float eff_tp_check = 0.7;
|
||||||
uint8_t snrRun;
|
uint8_t snrRun;
|
||||||
|
int fd_inter = 0;
|
||||||
|
|
||||||
int enable_ptrs = 0;
|
int enable_ptrs = 0;
|
||||||
int modify_dmrs = 0;
|
int modify_dmrs = 0;
|
||||||
@@ -270,7 +271,7 @@ int main(int argc, char **argv)
|
|||||||
/* initialize the sin-cos table */
|
/* initialize the sin-cos table */
|
||||||
InitSinLUT();
|
InitSinLUT();
|
||||||
|
|
||||||
while ((c = getopt(argc, argv, "a:b:c:d:ef:g:h:i:j:kl:m:n:p:r:s:y:z:F:G:H:M:N:PR:S:T:U:L:Z")) != -1) {
|
while ((c = getopt(argc, argv, "a:b:c:d:ef:g:h:j:kl:m:n:p:r:s:y:z:F:G:H:M:N:PR:S:T:U:L:Zi")) != -1) {
|
||||||
printf("handling optarg %c\n",c);
|
printf("handling optarg %c\n",c);
|
||||||
switch (c) {
|
switch (c) {
|
||||||
|
|
||||||
@@ -362,14 +363,10 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
/*case 'i':
|
case 'i':
|
||||||
interf1 = atoi(optarg);
|
fd_inter=1;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'j':
|
|
||||||
interf2 = atoi(optarg);
|
|
||||||
break;*/
|
|
||||||
|
|
||||||
case 'k':
|
case 'k':
|
||||||
printf("Setting threequarter_fs_flag\n");
|
printf("Setting threequarter_fs_flag\n");
|
||||||
openair0_cfg[0].threequarter_fs= 1;
|
openair0_cfg[0].threequarter_fs= 1;
|
||||||
@@ -521,7 +518,7 @@ int main(int argc, char **argv)
|
|||||||
printf("-f Number of frames to simulate\n");
|
printf("-f Number of frames to simulate\n");
|
||||||
printf("-g [A,B,C,D,E,F,G] Use 3GPP SCM (A,B,C,D) or 36-101 (E-EPA,F-EVA,G-ETU) models (ignores delay spread and Ricean factor)\n");
|
printf("-g [A,B,C,D,E,F,G] Use 3GPP SCM (A,B,C,D) or 36-101 (E-EPA,F-EVA,G-ETU) models (ignores delay spread and Ricean factor)\n");
|
||||||
printf("-h This message\n");
|
printf("-h This message\n");
|
||||||
//printf("-i Relative strength of first intefering eNB (in dB) - cell_id mod 3 = 1\n");
|
printf("-i Activate freq domain interpolation for channel estimation. Average over 1 PRB by default.\n");
|
||||||
//printf("-j Relative strength of second intefering eNB (in dB) - cell_id mod 3 = 2\n");
|
//printf("-j Relative strength of second intefering eNB (in dB) - cell_id mod 3 = 2\n");
|
||||||
printf("-s Starting SNR, runs from SNR0 to SNR0 + 10 dB if ending SNR isn't given\n");
|
printf("-s Starting SNR, runs from SNR0 to SNR0 + 10 dB if ending SNR isn't given\n");
|
||||||
printf("-m MCS value\n");
|
printf("-m MCS value\n");
|
||||||
@@ -604,6 +601,7 @@ int main(int argc, char **argv)
|
|||||||
gNB->UL_INFO.crc_ind.crc_list = (nfapi_nr_crc_t *)malloc(NB_UE_INST*sizeof(nfapi_nr_crc_t));
|
gNB->UL_INFO.crc_ind.crc_list = (nfapi_nr_crc_t *)malloc(NB_UE_INST*sizeof(nfapi_nr_crc_t));
|
||||||
gNB->UL_INFO.rx_ind.number_of_pdus = 0;
|
gNB->UL_INFO.rx_ind.number_of_pdus = 0;
|
||||||
gNB->UL_INFO.crc_ind.number_crcs = 0;
|
gNB->UL_INFO.crc_ind.number_crcs = 0;
|
||||||
|
gNB->fd_interpolation = fd_inter;
|
||||||
frame_parms = &gNB->frame_parms; //to be initialized I suppose (maybe not necessary for PBCH)
|
frame_parms = &gNB->frame_parms; //to be initialized I suppose (maybe not necessary for PBCH)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user