Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
spbro
OpenXG-RAN
Commits
765bb64b
Commit
765bb64b
authored
Oct 01, 2024
by
rmagueta
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix SNR based on SRS
parent
e15fa14c
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
66 additions
and
91 deletions
+66
-91
openair1/PHY/INIT/nr_init.c
openair1/PHY/INIT/nr_init.c
+1
-1
openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c
openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c
+53
-79
openair1/PHY/TOOLS/signal_energy.c
openair1/PHY/TOOLS/signal_energy.c
+2
-2
openair1/PHY/TOOLS/tests/test_signal_energy.cpp
openair1/PHY/TOOLS/tests/test_signal_energy.cpp
+1
-1
openair1/PHY/TOOLS/tools_defs.h
openair1/PHY/TOOLS/tools_defs.h
+2
-2
openair1/SCHED_NR/phy_procedures_nr_gNB.c
openair1/SCHED_NR/phy_procedures_nr_gNB.c
+4
-4
openair1/SIMULATION/NR_PHY/ulsim.c
openair1/SIMULATION/NR_PHY/ulsim.c
+2
-1
openair2/GNB_APP/L1_nr_paramdef.h
openair2/GNB_APP/L1_nr_paramdef.h
+1
-1
No files found.
openair1/PHY/INIT/nr_init.c
View file @
765bb64b
...
...
@@ -495,7 +495,7 @@ void init_nr_transport(PHY_VARS_gNB *gNB)
gNB
->
max_nb_pucch
=
buffer_ul_slots
?
MAX_MOBILES_PER_GNB
*
buffer_ul_slots
:
1
;
gNB
->
max_nb_pusch
=
buffer_ul_slots
?
MAX_MOBILES_PER_GNB
*
buffer_ul_slots
:
1
;
gNB
->
max_nb_srs
=
buffer_ul_slots
<<
1
;
// assuming at most 2 SRS per slot
gNB
->
max_nb_srs
=
buffer_ul_slots
?
buffer_ul_slots
<<
1
:
1
;
// assuming at most 2 SRS per slot
gNB
->
pucch
=
(
NR_gNB_PUCCH_t
*
)
malloc16
(
gNB
->
max_nb_pucch
*
sizeof
(
NR_gNB_PUCCH_t
));
for
(
int
i
=
0
;
i
<
gNB
->
max_nb_pucch
;
i
++
)
{
...
...
openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c
View file @
765bb64b
This diff is collapsed.
Click to expand it.
openair1/PHY/TOOLS/signal_energy.c
View file @
765bb64b
...
...
@@ -111,7 +111,7 @@ int32_t signal_energy_amp_shift(int32_t *input,uint32_t length)
return
((
temp
>
0
)
?
temp
:
1
);
}
int32_t
signal_energy_nodc
(
const
c16_t
*
input
,
uint32_t
length
)
u
int32_t
signal_energy_nodc
(
const
c16_t
*
input
,
uint32_t
length
)
{
// init
simde__m128
mm0
=
simde_mm_setzero_ps
();
...
...
@@ -134,7 +134,7 @@ int32_t signal_energy_nodc(const c16_t *input, uint32_t length)
// Ave
float
sums
[
4
];
simde_mm_store_ps
(
sums
,
mm0
);
return
(
in
t
)((
sums
[
0
]
+
sums
[
1
]
+
sums
[
2
]
+
sums
[
3
]
+
leftover_sum
)
/
(
float
)
length
);
return
(
uint32_
t
)((
sums
[
0
]
+
sums
[
1
]
+
sums
[
2
]
+
sums
[
3
]
+
leftover_sum
)
/
(
float
)
length
);
}
double
signal_energy_fp
(
double
*
s_re
[
2
],
double
*
s_im
[
2
],
uint32_t
nb_antennas
,
uint32_t
length
,
uint32_t
offset
)
...
...
openair1/PHY/TOOLS/tests/test_signal_energy.cpp
View file @
765bb64b
#include <gtest/gtest.h>
extern
"C"
{
#include "openair1/PHY/TOOLS/tools_defs.h"
extern
int32_t
signal_energy_nodc
(
const
c16_t
*
input
,
uint32_t
length
);
extern
u
int32_t
signal_energy_nodc
(
const
c16_t
*
input
,
uint32_t
length
);
}
#include <vector>
#include <algorithm>
...
...
openair1/PHY/TOOLS/tools_defs.h
View file @
765bb64b
...
...
@@ -758,10 +758,10 @@ int32_t signal_energy_amp_shift(int32_t *input, uint32_t length);
int32_t
subcarrier_energy
(
int32_t
*
,
uint32_t
,
int32_t
*
subcarrier_energy
,
uint16_t
rx_power_correction
);
#endif
/*!\fn
int32_t signal_energy_nodc(int32
_t *,uint32_t);
/*!\fn
uint32_t signal_energy_nodc(c16
_t *,uint32_t);
\brief Computes the signal energy per subcarrier, without DC removal
*/
int32_t
signal_energy_nodc
(
const
c16_t
*
input
,
uint32_t
length
);
u
int32_t
signal_energy_nodc
(
const
c16_t
*
input
,
uint32_t
length
);
int32_t
signal_power
(
int32_t
*
,
uint32_t
);
int32_t
interference_power
(
int32_t
*
,
uint32_t
);
...
...
openair1/SCHED_NR/phy_procedures_nr_gNB.c
View file @
765bb64b
...
...
@@ -729,8 +729,8 @@ int phy_procedures_gNB_uespec_RX(PHY_VARS_gNB *gNB, int frame_rx, int slot_rx)
const
int
soffset
=
(
slot_rx
&
3
)
*
gNB
->
frame_parms
.
symbols_per_slot
*
gNB
->
frame_parms
.
ofdm_symbol_size
;
int
offset
=
10
*
gNB
->
frame_parms
.
ofdm_symbol_size
+
gNB
->
frame_parms
.
first_carrier_offset
;
LOG_D
(
PHY
,
"frame %d, slot %d: UL signal energy %
d
\n
"
,
LOG_D
(
NR_
PHY
,
"frame %d, slot %d: UL signal energy %
u
\n
"
,
frame_rx
,
slot_rx
,
signal_energy_nodc
(
&
gNB
->
common_vars
.
rxdataF
[
0
][
soffset
+
offset
+
(
47
*
12
)],
12
*
18
));
...
...
@@ -761,8 +761,8 @@ int phy_procedures_gNB_uespec_RX(PHY_VARS_gNB *gNB, int frame_rx, int slot_rx)
nfapi_nr_uci_pucch_pdu_format_0_1_t
*
uci_pdu_format0
=
&
gNB
->
uci_pdu_list
[
num_ucis
].
pucch_pdu_format_0_1
;
offset
=
pucch_pdu
->
start_symbol_index
*
gNB
->
frame_parms
.
ofdm_symbol_size
+
(
gNB
->
frame_parms
.
first_carrier_offset
+
pucch_pdu
->
prb_start
*
12
);
LOG_D
(
PHY
,
"frame %d, slot %d: PUCCH signal energy %
d
\n
"
,
LOG_D
(
NR_
PHY
,
"frame %d, slot %d: PUCCH signal energy %
u
\n
"
,
frame_rx
,
slot_rx
,
signal_energy_nodc
(
&
gNB
->
common_vars
.
rxdataF
[
0
][
soffset
+
offset
],
12
));
...
...
openair1/SIMULATION/NR_PHY/ulsim.c
View file @
765bb64b
...
...
@@ -723,7 +723,7 @@ int main(int argc, char *argv[])
NR_gNB_ULSCH_t
*
ulsch_gNB
=
&
gNB
->
ulsch
[
UE_id
];
NR_Sched_Rsp_t
*
Sched_INFO
=
malloc
(
sizeof
(
*
Sched_INFO
));
NR_Sched_Rsp_t
*
Sched_INFO
=
malloc
16_clear
(
sizeof
(
*
Sched_INFO
));
memset
((
void
*
)
Sched_INFO
,
0
,
sizeof
(
*
Sched_INFO
));
nfapi_nr_ul_tti_request_t
*
UL_tti_req
=
&
Sched_INFO
->
UL_tti_req
;
Sched_INFO
->
sched_response_id
=
-
1
;
...
...
@@ -1070,6 +1070,7 @@ int main(int argc, char *argv[])
srs_pdu
->
subcarrier_spacing
=
frame_parms
->
subcarrier_spacing
;
srs_pdu
->
num_ant_ports
=
n_tx
==
4
?
2
:
n_tx
==
2
?
1
:
0
;
srs_pdu
->
sequence_id
=
40
;
srs_pdu
->
time_start_position
=
frame_parms
->
symbols_per_slot
-
1
;
srs_pdu
->
config_index
=
rrc_get_max_nr_csrs
(
srs_pdu
->
bwp_size
,
srs_pdu
->
bandwidth_index
);
srs_pdu
->
resource_type
=
NR_SRS_Resource__resourceType_PR_periodic
;
srs_pdu
->
t_srs
=
1
;
...
...
openair2/GNB_APP/L1_nr_paramdef.h
View file @
765bb64b
...
...
@@ -78,7 +78,7 @@
{CONFIG_STRING_L1_PUCCH0_DTX_THRESHOLD, NULL, 0, .uptr=NULL, .defintval=100, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_PRACH_DTX_THRESHOLD, NULL, 0, .uptr=NULL, .defintval=150, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_PUSCH_DTX_THRESHOLD, NULL, 0, .uptr=NULL, .defintval=50, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_SRS_DTX_THRESHOLD, NULL, 0, .uptr=NULL, .defintval=
5
0, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_SRS_DTX_THRESHOLD, NULL, 0, .uptr=NULL, .defintval=
3
0, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_MAX_LDPC_ITERATIONS, NULL, 0, .uptr=NULL, .defintval=8, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_RX_THREAD_CORE, NULL, 0, .uptr=NULL, .defintval=-1, TYPE_UINT, 0}, \
{CONFIG_STRING_L1_TX_THREAD_CORE, NULL, 0, .uptr=NULL, .defintval=-1, TYPE_UINT, 0}, \
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment