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
36ade4a1
Commit
36ade4a1
authored
Sep 27, 2024
by
Jaroslava Fiedlerova
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/fix_fapi_SRS_gNB' into integration_2024_w39
parents
2ba7d59d
db4d8d23
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
10 additions
and
15 deletions
+10
-15
openair1/PHY/NR_TRANSPORT/srs_rx.c
openair1/PHY/NR_TRANSPORT/srs_rx.c
+6
-10
openair1/SCHED_NR/phy_procedures_nr_gNB.c
openair1/SCHED_NR/phy_procedures_nr_gNB.c
+2
-3
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_srs.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_srs.c
+2
-2
No files found.
openair1/PHY/NR_TRANSPORT/srs_rx.c
View file @
36ade4a1
...
...
@@ -67,23 +67,19 @@ int nr_get_srs_signal(PHY_VARS_gNB *gNB,
slot_t
slot
,
nfapi_nr_srs_pdu_t
*
srs_pdu
,
nr_srs_info_t
*
nr_srs_info
,
int32_t
srs_received_signal
[][
gNB
->
frame_parms
.
ofdm_symbol_size
*
(
1
<<
srs_pdu
->
num_symbols
)])
{
#ifdef SRS_DEBUG
LOG_I
(
NR_PHY
,
"Calling %s function
\n
"
,
__FUNCTION__
);
#endif
int32_t
srs_received_signal
[][
gNB
->
frame_parms
.
ofdm_symbol_size
*
(
1
<<
srs_pdu
->
num_symbols
)])
{
c16_t
**
rxdataF
=
gNB
->
common_vars
.
rxdataF
;
const
NR_DL_FRAME_PARMS
*
frame_parms
=
&
gNB
->
frame_parms
;
const
uint16_t
n_symbols
=
(
slot
%
RU_RX_SLOT_DEPTH
)
*
frame_parms
->
symbols_per_slot
;
// number of symbols until this slot
const
uint8_t
l0
=
frame_parms
->
symbols_per_slot
-
1
-
srs_pdu
->
time_start_position
;
// starting symbol in this slot
const
uint64_t
symbol_offset
=
(
n_symbols
+
l0
)
*
frame_parms
->
ofdm_symbol_size
;
const
uint8_t
l0
=
srs_pdu
->
time_start_position
;
// starting symbol in this slot
const
uint64_t
symbol_offset
=
(
n_symbols
+
l0
)
*
frame_parms
->
ofdm_symbol_size
;
const
uint64_t
subcarrier_offset
=
frame_parms
->
first_carrier_offset
+
srs_pdu
->
bwp_start
*
NR_NB_SC_PER_RB
;
const
uint8_t
N_ap
=
1
<<
srs_pdu
->
num_ant_ports
;
const
uint8_t
N_symb_SRS
=
1
<<
srs_pdu
->
num_symbols
;
const
uint8_t
K_TC
=
2
<<
srs_pdu
->
comb_size
;
const
uint8_t
N_symb_SRS
=
1
<<
srs_pdu
->
num_symbols
;
const
uint8_t
K_TC
=
2
<<
srs_pdu
->
comb_size
;
const
uint16_t
M_sc_b_SRS
=
srs_bandwidth_config
[
srs_pdu
->
config_index
][
srs_pdu
->
bandwidth_index
][
0
]
*
NR_NB_SC_PER_RB
/
K_TC
;
int32_t
*
rx_signal
;
...
...
openair1/SCHED_NR/phy_procedures_nr_gNB.c
View file @
36ade4a1
...
...
@@ -606,10 +606,9 @@ static void fill_ul_rb_mask(PHY_VARS_gNB *gNB, int frame_rx, int slot_rx, uint32
if
(
srs
)
{
if
((
srs
->
active
==
1
)
&&
(
srs
->
frame
==
frame_rx
)
&&
(
srs
->
slot
==
slot_rx
))
{
nfapi_nr_srs_pdu_t
*
srs_pdu
=
&
srs
->
srs_pdu
;
for
(
int
symbol
=
0
;
symbol
<
(
1
<<
srs_pdu
->
num_symbols
);
symbol
++
)
{
for
(
int
symbol
=
0
;
symbol
<
(
1
<<
srs_pdu
->
num_symbols
);
symbol
++
)
{
for
(
rb
=
srs_pdu
->
bwp_start
;
rb
<
(
srs_pdu
->
bwp_start
+
srs_pdu
->
bwp_size
);
rb
++
)
{
rb_mask_ul
[
gNB
->
frame_parms
.
symbols_per_slot
-
srs_pdu
->
time_start_position
-
1
+
symbol
][
rb
>>
5
]
|=
1U
<<
(
rb
&
31
);
rb_mask_ul
[
srs_pdu
->
time_start_position
+
symbol
][
rb
>>
5
]
|=
1U
<<
(
rb
&
31
);
}
}
}
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_srs.c
View file @
36ade4a1
...
...
@@ -430,7 +430,7 @@ static void nr_configure_srs(nfapi_nr_srs_pdu_t *srs_pdu,
srs_pdu
->
num_ant_ports
=
srs_resource
->
nrofSRS_Ports
;
srs_pdu
->
num_symbols
=
srs_resource
->
resourceMapping
.
nrofSymbols
;
srs_pdu
->
num_repetitions
=
srs_resource
->
resourceMapping
.
repetitionFactor
;
srs_pdu
->
time_start_position
=
srs_resource
->
resourceMapping
.
startPosition
;
srs_pdu
->
time_start_position
=
NR_NUMBER_OF_SYMBOLS_PER_SLOT
-
1
-
srs_resource
->
resourceMapping
.
startPosition
;
srs_pdu
->
config_index
=
srs_resource
->
freqHopping
.
c_SRS
;
srs_pdu
->
sequence_id
=
srs_resource
->
sequenceId
;
srs_pdu
->
bandwidth_index
=
srs_resource
->
freqHopping
.
b_SRS
;
...
...
@@ -472,7 +472,7 @@ static void nr_configure_srs(nfapi_nr_srs_pdu_t *srs_pdu,
// TODO properly use beam allocation
uint16_t
*
vrb_map_UL
=
&
RC
.
nrmac
[
module_id
]
->
common_channels
[
CC_id
].
vrb_map_UL
[
0
][
buffer_index
*
MAX_BWP_SIZE
];
uint64_t
mask
=
SL_to_bitmap
(
13
-
srs_pdu
->
time_start_position
,
srs_pdu
->
num_symbols
);
uint64_t
mask
=
SL_to_bitmap
(
srs_pdu
->
time_start_position
,
srs_pdu
->
num_symbols
);
for
(
int
i
=
0
;
i
<
srs_pdu
->
bwp_size
;
++
i
)
vrb_map_UL
[
i
+
srs_pdu
->
bwp_start
]
|=
mask
;
}
...
...
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