Commit 442af3c9 authored by Robert Schmidt's avatar Robert Schmidt

Merge remote-tracking branch 'origin/pucch2_polar_rx_dynamic_range_fix' into integration_2024_w14

parents 6719c376 8940400a
...@@ -295,7 +295,16 @@ ...@@ -295,7 +295,16 @@
(Test16: Format 2 19-bit 8/106 PRB), (Test16: Format 2 19-bit 8/106 PRB),
(Test17: Format 2 32-bit 8/106 PRB), (Test17: Format 2 32-bit 8/106 PRB),
(Test18: Format 2 32-bit 16/106 PRB), (Test18: Format 2 32-bit 16/106 PRB),
(Test19: Format 2 64-bit 16/106 PRB)</desc> (Test19: Format 2 64-bit 16/106 PRB),
(Test20: Format 0 1-bit Ack miss 273 PRB),
(Test21: Format 0 2-bit Ack miss 273 PRB),
(Test22: Format 0 2-bit Ack miss+SR 273 PRB),
(Test23: Format 2 4-bit 2/273 PRB),
(Test24: Format 2 7-bit 2/273 PRB),
(Test25: Format 2 11-bit 2/273 PRB),
(Test26: Format 2 12-bit 8/273 PRB),
(Test27: Format 2 19-bit 8/273 PRB),
(Test28: Format 2 64-bit 16/273 PRB)</desc>
<main_exec>nr_pucchsim</main_exec> <main_exec>nr_pucchsim</main_exec>
<main_exec_args>-R 106 -i 1 -P 0 -b 1 -s-2 -n1000 <main_exec_args>-R 106 -i 1 -P 0 -b 1 -s-2 -n1000
-R 106 -i 1 -P 0 -b 2 -s-2 -n1000 -R 106 -i 1 -P 0 -b 2 -s-2 -n1000
...@@ -315,8 +324,17 @@ ...@@ -315,8 +324,17 @@
-R 106 -i 1 -P 2 -q8 -b 19 -s-3 -n1000 -R 106 -i 1 -P 2 -q8 -b 19 -s-3 -n1000
-R 106 -i 1 -P 2 -q8 -b 32 -s-3 -n1000 -R 106 -i 1 -P 2 -q8 -b 32 -s-3 -n1000
-R 106 -i 1 -P 2 -q16 -b 32 -s-3 -n1000 -R 106 -i 1 -P 2 -q16 -b 32 -s-3 -n1000
-R 106 -i 1 -P 2 -q16 -b 64 -s-3 -n1000</main_exec_args> -R 106 -i 1 -P 2 -q16 -b 64 -s-3 -n1000
<tags>test1 test2 test3 test4 test5 test6 test7 test8 test9 test10 test11 test12 test13 test14 test15 test16 test17 test18 test19</tags> -R 273 -z8 -i 1 -P 0 -b 1 -s-2 -n1000
-R 273 -z8 -i 1 -P 0 -b 2 -s-2 -n1000
-R 273 -z8 -i 1 -P 0 -b 2 -s-2 -c -n1000
-R 273 -z8 -i 1 -P 2 -b 4 -s0 -n1000
-R 273 -z8 -i 1 -P 2 -b 7 -s3 -n1000
-R 273 -z8 -i 1 -P 2 -b 11 -s6 -n1000
-R 273 -z8 -i 1 -P 2 -q8 -b 12 -s-3 -n1000
-R 273 -z8 -i 1 -P 2 -q8 -b 19 -s-3 -n1000
-R 273 -z8 -i 1 -P 2 -q16 -b 64 -s-3 -n1000</main_exec_args>
<tags>test1 test2 test3 test4 test5 test6 test7 test8 test9 test10 test11 test12 test13 test14 test15 test16 test17 test18 test19 test20 test21 test22 test23 test24 test25 test26 test27 test28</tags>
<search_expr_true>PUCCH test OK</search_expr_true> <search_expr_true>PUCCH 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>
......
...@@ -1519,7 +1519,7 @@ void nr_decode_pucch2(PHY_VARS_gNB *gNB, ...@@ -1519,7 +1519,7 @@ void nr_decode_pucch2(PHY_VARS_gNB *gNB,
corr_re = ( corr32_re[symb][half_prb>>2][aa]/(2*nc_group_size*4/2)+((int16_t*)(&prod_re[aa]))[0]); corr_re = ( corr32_re[symb][half_prb>>2][aa]/(2*nc_group_size*4/2)+((int16_t*)(&prod_re[aa]))[0]);
corr_im = ( corr32_im[symb][half_prb>>2][aa]/(2*nc_group_size*4/2)+((int16_t*)(&prod_im[aa]))[0]); corr_im = ( corr32_im[symb][half_prb>>2][aa]/(2*nc_group_size*4/2)+((int16_t*)(&prod_im[aa]))[0]);
corr_tmp += corr_re*corr_re + corr_im*corr_im; corr_tmp += (corr_re*corr_re + corr_im*corr_im)>>(Prx/2);
/* /*
LOG_D(PHY,"pucch2 half_prb %d cw %d (%d,%d) aa %d: (%d,%d,%d,%d,%d,%d,%d,%d)x(%d,%d,%d,%d,%d,%d,%d,%d) (%d,%d)+(%d,%d) LOG_D(PHY,"pucch2 half_prb %d cw %d (%d,%d) aa %d: (%d,%d,%d,%d,%d,%d,%d,%d)x(%d,%d,%d,%d,%d,%d,%d,%d) (%d,%d)+(%d,%d)
= (%d,%d) => %d\n", half_prb,cw,cw&15,cw>>4,aa, = (%d,%d) => %d\n", half_prb,cw,cw&15,cw>>4,aa,
......
...@@ -519,7 +519,7 @@ typedef struct { ...@@ -519,7 +519,7 @@ typedef struct {
//! estimated avg subband noise power (dB) //! estimated avg subband noise power (dB)
unsigned int n0_subband_power_avg_dB; unsigned int n0_subband_power_avg_dB;
//! estimated avg subband noise power per antenna (dB) //! estimated avg subband noise power per antenna (dB)
unsigned int n0_subband_power_avg_perANT_dB[NB_ANTENNAS_RX]; unsigned int n0_subband_power_avg_perANT_dB[MAX_ANT];
//! estimated avg noise power per RB (dB) //! estimated avg noise power per RB (dB)
int n0_subband_power_tot_dB[275]; int n0_subband_power_tot_dB[275];
//! estimated avg noise power per RB (dBm) //! estimated avg noise power per RB (dBm)
......
...@@ -347,36 +347,35 @@ int main(int argc, char **argv) ...@@ -347,36 +347,35 @@ int main(int argc, char **argv)
default: default:
case 'h': case 'h':
printf("%s -h(elp) -p(extended_prefix) -N cell_id -f output_filename -F input_filename -g channel_model -n n_frames -t Delayspread -s snr0 -S snr1 -x transmission_mode -y TXant -z RXant -i Intefrence0 -j Interference1 -A interpolation_file -C(alibration offset dB) -N CellId\n", argv[0]); printf("%s -h(elp) -p(extended_prefix) -N cell_id -f output_filename -F input_filename -g channel_model -n n_frames -t Delayspread -s snr0 -S snr1 -x transmission_mode -y TXant -z RXant -i Intefrence0 -j Interference1 -A interpolation_file -C(alibration offset dB) -N CellId\n", argv[0]);
printf("-h This message\n"); //printf("-C Generate Calibration information for Abstraction (effective SNR adjustment to remove Pe bias w.r.t. AWGN)\n");
printf("-p Use extended prefix mode\n"); printf("-A Interpolation_filname Run with Abstraction to generate Scatter plot using interpolation polynomial in file\n");
printf("-b number of HARQ bits (1-2)\n");
printf("-B payload to be transmitted on PUCCH\n");
printf("-c Activate scheduling request\n");
printf("-d Use TDD\n"); printf("-d Use TDD\n");
printf("-f Output filename (.txt format) for Pe/SNR results\n");
printf("-F Input filename (.txt format) for RX conformance testing\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("-i Enter number of ofdm symbols for pucch\n");
printf("-I Starting symbol index for pucch\n");
printf("-h This message\n");
printf("-m initial cyclic shift m0\n");
printf("-n Number of frames to simulate\n"); printf("-n Number of frames to simulate\n");
printf("-N Nid_cell\n");
printf("-o Carrier frequency offset in Hz\n");
printf("-O oversampling factor (1,2,4,8,16)\n");
printf("-p Use extended prefix mode\n");
printf("-P Enter the format of PUCCH\n");
printf("-q PUCCH number of PRB\n");
printf("-r PUCCH starting PRB\n");
printf("-R N_RB_DL\n");
printf("-s Starting SNR, runs from SNR0 to SNR0 + 5 dB. If n_frames is 1 then just SNR is simulated\n"); printf("-s Starting SNR, runs from SNR0 to SNR0 + 5 dB. If n_frames is 1 then just SNR is simulated\n");
printf("-S Ending SNR, runs from SNR0 to SNR1\n"); printf("-S Ending SNR, runs from SNR0 to SNR1\n");
printf("-t Delay spread for multipath channel\n"); printf("-t Delay spread for multipath channel\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("-T to check nacktoack miss for format 1\n");
printf("-x Transmission mode (1,2,6 for the moment)\n"); printf("-x Transmission mode (1,2,6 for the moment)\n");
printf("-y Number of TX antennas used in eNB\n"); printf("-y Number of TX antennas used in eNB\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 eNB (in dB) - cell_id mod 3 = 1\n");
printf("-j Relative strength of second intefering eNB (in dB) - cell_id mod 3 = 2\n");
printf("-o Carrier frequency offset in Hz\n");
printf("-N Nid_cell\n");
printf("-R N_RB_DL\n");
printf("-O oversampling factor (1,2,4,8,16)\n");
printf("-A Interpolation_filname Run with Abstraction to generate Scatter plot using interpolation polynomial in file\n");
//printf("-C Generate Calibration information for Abstraction (effective SNR adjustment to remove Pe bias w.r.t. AWGN)\n");
printf("-f Output filename (.txt format) for Pe/SNR results\n");
printf("-F Input filename (.txt format) for RX conformance testing\n");
printf("-i Enter number of ofdm symbols for pucch\n");
printf("-I Starting symbol index for pucch\n");
printf("-r PUCCH starting PRB\n");
printf("-q PUCCH number of PRB\n");
printf("-P Enter the format of PUCCH\n");
printf("-b number of HARQ bits (1-2)\n");
printf("-B payload to be transmitted on PUCCH\n");
printf("-m initial cyclic shift m0\n");
printf("-T to check nacktoack miss for format 1\n");
exit (-1); exit (-1);
break; break;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment