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
常顺宇
OpenXG-RAN
Commits
04d6de7d
Commit
04d6de7d
authored
5 years ago
by
masayuki.harada
Committed by
shono.takafumi
4 years ago
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add variables TPC command interval and forgetting filter of UL SNR.
parent
dbb8a892
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
8 additions
and
6 deletions
+8
-6
openair2/LAYER2/MAC/eNB_scheduler_fairRR.c
openair2/LAYER2/MAC/eNB_scheduler_fairRR.c
+6
-4
openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
+2
-2
No files found.
openair2/LAYER2/MAC/eNB_scheduler_fairRR.c
View file @
04d6de7d
...
...
@@ -2003,9 +2003,10 @@ schedule_ue_spec_fairRR(module_id_t module_idP,
// this assumes accumulated tpc
// make sure that we are only sending a tpc update once a frame, otherwise the control loop will freak out
int32_t
framex10psubframe
=
UE_info
->
UE_template
[
CC_id
][
UE_id
].
pucch_tpc_tx_frame
*
10
+
UE_info
->
UE_template
[
CC_id
][
UE_id
].
pucch_tpc_tx_subframe
;
int
pucch_tpc_interval
=
10
;
if
(((
framex10psubframe
+
10
)
<=
(
frameP
*
10
+
subframeP
))
||
//normal case
((
framex10psubframe
>
(
frameP
*
10
+
subframeP
))
&&
(((
10240
-
framex10psubframe
+
frameP
*
10
+
subframeP
)
>=
10
))))
//frame wrap-around
if
(((
framex10psubframe
+
pucch_tpc_interval
)
<=
(
frameP
*
10
+
subframeP
))
||
//normal case
((
framex10psubframe
>
(
frameP
*
10
+
subframeP
))
&&
(((
10240
-
framex10psubframe
+
frameP
*
10
+
subframeP
)
>=
pucch_tpc_interval
))))
//frame wrap-around
if
(
ue_sched_ctl
->
pucch1_cqi_update
[
CC_id
]
==
1
)
{
ue_sched_ctl
->
pucch1_cqi_update
[
CC_id
]
=
0
;
UE_info
->
UE_template
[
CC_id
][
UE_id
].
pucch_tpc_tx_frame
=
frameP
;
...
...
@@ -3087,9 +3088,10 @@ void schedule_ulsch_rnti_fairRR(module_id_t module_idP,
// this assumes accumulated tpc
// make sure that we are only sending a tpc update once a frame, otherwise the control loop will freak out
int32_t
framex10psubframe
=
UE_template
->
pusch_tpc_tx_frame
*
10
+
UE_template
->
pusch_tpc_tx_subframe
;
int
pusch_tpc_interval
=
10
;
if
(((
framex10psubframe
+
10
)
<=
(
frameP
*
10
+
subframeP
))
||
//normal case
((
framex10psubframe
>
(
frameP
*
10
+
subframeP
))
&&
(((
10240
-
framex10psubframe
+
frameP
*
10
+
subframeP
)
>=
10
))))
{
//frame wrap-around
if
(((
framex10psubframe
+
pusch_tpc_interval
)
<=
(
frameP
*
10
+
subframeP
))
||
//normal case
((
framex10psubframe
>
(
frameP
*
10
+
subframeP
))
&&
(((
10240
-
framex10psubframe
+
frameP
*
10
+
subframeP
)
>=
pusch_tpc_interval
))))
{
//frame wrap-around
UE_template
->
pusch_tpc_tx_frame
=
frameP
;
UE_template
->
pusch_tpc_tx_subframe
=
subframeP
;
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
View file @
04d6de7d
...
...
@@ -166,12 +166,12 @@ rx_sdu(const module_id_t enb_mod_idP,
* maybe it's even not correct at all?
*/
UE_scheduling_control
->
ta_update
=
(
UE_scheduling_control
->
ta_update
*
3
+
timing_advance
)
/
4
;
double
tpc_forgetting_filter
=
0
.
75
;
if
(
UE_scheduling_control
->
pusch_snr
[
CC_idP
]
==
0
)
{
UE_scheduling_control
->
pusch_snr
[
CC_idP
]
=
ul_cqi
;
}
else
{
UE_scheduling_control
->
pusch_snr
[
CC_idP
]
=
(
UE_scheduling_control
->
pusch_snr
[
CC_idP
]
*
3
+
ul_cqi
)
/
4
;
UE_scheduling_control
->
pusch_snr
[
CC_idP
]
=
(
int
)((
double
)
UE_scheduling_control
->
pusch_snr
[
CC_idP
]
*
tpc_foggot_filter
+
(
double
)
ul_cqi
*
(
1
-
tpc_foggot_filter
))
;
}
UE_scheduling_control
->
ul_consecutive_errors
=
0
;
...
...
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