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
Michael Black
OpenXG-RAN
Commits
edb6b9b4
Commit
edb6b9b4
authored
3 years ago
by
rmagueta
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Increase SRS periodicity to get higher bitrate
parent
9e2ab1a3
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
6 additions
and
6 deletions
+6
-6
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_srs.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_srs.c
+1
-1
openair2/RRC/NR/MESSAGES/asn1_msg.c
openair2/RRC/NR/MESSAGES/asn1_msg.c
+5
-5
No files found.
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_srs.c
View file @
edb6b9b4
...
@@ -175,7 +175,7 @@ void nr_schedule_srs(int module_id, frame_t frame) {
...
@@ -175,7 +175,7 @@ void nr_schedule_srs(int module_id, frame_t frame) {
// Check if UE will transmit the SRS in this frame
// Check if UE will transmit the SRS in this frame
if
(
((
frame
-
offset
/
n_slots_frame
)
*
n_slots_frame
)
%
period
==
0
)
{
if
(
((
frame
-
offset
/
n_slots_frame
)
*
n_slots_frame
)
%
period
==
0
)
{
LOG_D
(
NR_MAC
,
"
(%d.%d) Scheduling SRS reception
\n
"
,
frame
,
offset
%
n_slots_frame
);
LOG_D
(
NR_MAC
,
"
Scheduling SRS reception for %d.%d
\n
"
,
frame
,
offset
%
n_slots_frame
);
nr_fill_nfapi_srs
(
module_id
,
CC_id
,
UE_id
,
offset
%
n_slots_frame
,
srs_resource
);
nr_fill_nfapi_srs
(
module_id
,
CC_id
,
UE_id
,
offset
%
n_slots_frame
,
srs_resource
);
sched_ctrl
->
sched_srs
.
frame
=
frame
;
sched_ctrl
->
sched_srs
.
frame
=
frame
;
sched_ctrl
->
sched_srs
.
slot
=
offset
%
n_slots_frame
;
sched_ctrl
->
sched_srs
.
slot
=
offset
%
n_slots_frame
;
...
...
This diff is collapsed.
Click to expand it.
openair2/RRC/NR/MESSAGES/asn1_msg.c
View file @
edb6b9b4
...
@@ -1021,8 +1021,8 @@ void fill_initial_SpCellConfig(rnti_t rnti,
...
@@ -1021,8 +1021,8 @@ void fill_initial_SpCellConfig(rnti_t rnti,
// This assert will never happen in the current implementation because NUMBER_OF_UE_MAX = 4.
// This assert will never happen in the current implementation because NUMBER_OF_UE_MAX = 4.
// However, if in the future NUMBER_OF_UE_MAX is increased, it will be necessary to improve the allocation of SRS resources,
// However, if in the future NUMBER_OF_UE_MAX is increased, it will be necessary to improve the allocation of SRS resources,
// where the startPosition =
1, 2 or 3 and sl40 = 7, 17, 27 or 37 only give us 12
different allocations.
// where the startPosition =
2 or 3 and sl160 = 17, 17, 27 ... 157 only give us 30
different allocations.
AssertFatal
(
uid
>=
0
&&
uid
<
12
,
"gNB cannot allocate the SRS resources
\n
"
);
AssertFatal
(
uid
>=
0
&&
uid
<
30
,
"gNB cannot allocate the SRS resources
\n
"
);
int
curr_bwp
=
NRRIV2BW
(
scc
->
downlinkConfigCommon
->
initialDownlinkBWP
->
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
int
curr_bwp
=
NRRIV2BW
(
scc
->
downlinkConfigCommon
->
initialDownlinkBWP
->
genericParameters
.
locationAndBandwidth
,
MAX_BWP_SIZE
);
SpCellConfig
->
servCellIndex
=
NULL
;
SpCellConfig
->
servCellIndex
=
NULL
;
...
@@ -1182,7 +1182,7 @@ void fill_initial_SpCellConfig(rnti_t rnti,
...
@@ -1182,7 +1182,7 @@ void fill_initial_SpCellConfig(rnti_t rnti,
srs_res0
->
transmissionComb
.
choice
.
n2
=
calloc
(
1
,
sizeof
(
*
srs_res0
->
transmissionComb
.
choice
.
n2
));
srs_res0
->
transmissionComb
.
choice
.
n2
=
calloc
(
1
,
sizeof
(
*
srs_res0
->
transmissionComb
.
choice
.
n2
));
srs_res0
->
transmissionComb
.
choice
.
n2
->
combOffset_n2
=
0
;
srs_res0
->
transmissionComb
.
choice
.
n2
->
combOffset_n2
=
0
;
srs_res0
->
transmissionComb
.
choice
.
n2
->
cyclicShift_n2
=
0
;
srs_res0
->
transmissionComb
.
choice
.
n2
->
cyclicShift_n2
=
0
;
srs_res0
->
resourceMapping
.
startPosition
=
1
+
uid
%
3
;
srs_res0
->
resourceMapping
.
startPosition
=
2
+
uid
%
2
;
srs_res0
->
resourceMapping
.
nrofSymbols
=
NR_SRS_Resource__resourceMapping__nrofSymbols_n1
;
srs_res0
->
resourceMapping
.
nrofSymbols
=
NR_SRS_Resource__resourceMapping__nrofSymbols_n1
;
srs_res0
->
resourceMapping
.
repetitionFactor
=
NR_SRS_Resource__resourceMapping__repetitionFactor_n1
;
srs_res0
->
resourceMapping
.
repetitionFactor
=
NR_SRS_Resource__resourceMapping__repetitionFactor_n1
;
srs_res0
->
freqDomainPosition
=
0
;
srs_res0
->
freqDomainPosition
=
0
;
...
@@ -1197,8 +1197,8 @@ void fill_initial_SpCellConfig(rnti_t rnti,
...
@@ -1197,8 +1197,8 @@ void fill_initial_SpCellConfig(rnti_t rnti,
if
(
carrier
->
do_SRS
)
{
if
(
carrier
->
do_SRS
)
{
srs_res0
->
resourceType
.
present
=
NR_SRS_Resource__resourceType_PR_periodic
;
srs_res0
->
resourceType
.
present
=
NR_SRS_Resource__resourceType_PR_periodic
;
srs_res0
->
resourceType
.
choice
.
periodic
=
calloc
(
1
,
sizeof
(
*
srs_res0
->
resourceType
.
choice
.
periodic
));
srs_res0
->
resourceType
.
choice
.
periodic
=
calloc
(
1
,
sizeof
(
*
srs_res0
->
resourceType
.
choice
.
periodic
));
srs_res0
->
resourceType
.
choice
.
periodic
->
periodicityAndOffset_p
.
present
=
NR_SRS_PeriodicityAndOffset_PR_sl
4
0
;
srs_res0
->
resourceType
.
choice
.
periodic
->
periodicityAndOffset_p
.
present
=
NR_SRS_PeriodicityAndOffset_PR_sl
16
0
;
srs_res0
->
resourceType
.
choice
.
periodic
->
periodicityAndOffset_p
.
choice
.
sl
40
=
7
+
(
uid
/
3
)
*
10
;
// 7/17/27/3
7 are mixed slots
srs_res0
->
resourceType
.
choice
.
periodic
->
periodicityAndOffset_p
.
choice
.
sl
160
=
17
+
(
uid
>
1
)
*
10
;
// 17/17/.../147/15
7 are mixed slots
}
else
{
}
else
{
srs_res0
->
resourceType
.
present
=
NR_SRS_Resource__resourceType_PR_aperiodic
;
srs_res0
->
resourceType
.
present
=
NR_SRS_Resource__resourceType_PR_aperiodic
;
srs_res0
->
resourceType
.
choice
.
aperiodic
=
calloc
(
1
,
sizeof
(
*
srs_res0
->
resourceType
.
choice
.
aperiodic
));
srs_res0
->
resourceType
.
choice
.
aperiodic
=
calloc
(
1
,
sizeof
(
*
srs_res0
->
resourceType
.
choice
.
aperiodic
));
...
...
This diff is collapsed.
Click to expand it.
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