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
lizhongxiao
OpenXG-RAN
Commits
08975e45
Commit
08975e45
authored
May 10, 2022
by
Roberto Louro Magueta
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update the ul_prbblacklist based on SRS measurements and an ul_prbblack_SNR_threshold
parent
5ed67b85
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
31 additions
and
11 deletions
+31
-11
openair2/GNB_APP/MACRLC_nr_paramdef.h
openair2/GNB_APP/MACRLC_nr_paramdef.h
+12
-9
openair2/GNB_APP/gnb_config.c
openair2/GNB_APP/gnb_config.c
+1
-0
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
+13
-1
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
+3
-1
targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.2x2.usrpn300.conf
...IC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.2x2.usrpn300.conf
+1
-0
targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.conf
...ENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.conf
+1
-0
No files found.
openair2/GNB_APP/MACRLC_nr_paramdef.h
View file @
08975e45
...
@@ -58,6 +58,7 @@
...
@@ -58,6 +58,7 @@
#define CONFIG_STRING_MACRLC_ULSCH_MAX_FRAME_INACTIVITY "ulsch_max_frame_inactivity"
#define CONFIG_STRING_MACRLC_ULSCH_MAX_FRAME_INACTIVITY "ulsch_max_frame_inactivity"
#define CONFIG_STRING_MACRLC_PUSCHTARGETSNRX10 "pusch_TargetSNRx10"
#define CONFIG_STRING_MACRLC_PUSCHTARGETSNRX10 "pusch_TargetSNRx10"
#define CONFIG_STRING_MACRLC_PUCCHTARGETSNRX10 "pucch_TargetSNRx10"
#define CONFIG_STRING_MACRLC_PUCCHTARGETSNRX10 "pucch_TargetSNRx10"
#define CONFIG_STRING_MACRLC_UL_PRBBLACK_SNR_THRESHOLD "ul_prbblack_SNR_threshold"
#define CONFIG_STRING_MACRLC_PUCCHFAILURETHRES "pucch_FailureThres"
#define CONFIG_STRING_MACRLC_PUCCHFAILURETHRES "pucch_FailureThres"
#define CONFIG_STRING_MACRLC_PUSCHFAILURETHRES "pusch_FailureThres"
#define CONFIG_STRING_MACRLC_PUSCHFAILURETHRES "pusch_FailureThres"
#define CONFIG_STRING_MACRLC_DL_BLER_TARGET_UPPER "dl_bler_target_upper"
#define CONFIG_STRING_MACRLC_DL_BLER_TARGET_UPPER "dl_bler_target_upper"
...
@@ -93,6 +94,7 @@
...
@@ -93,6 +94,7 @@
{CONFIG_STRING_MACRLC_ULSCH_MAX_FRAME_INACTIVITY, NULL, 0, uptr:NULL, defintval:10, TYPE_UINT, 0}, \
{CONFIG_STRING_MACRLC_ULSCH_MAX_FRAME_INACTIVITY, NULL, 0, uptr:NULL, defintval:10, TYPE_UINT, 0}, \
{CONFIG_STRING_MACRLC_PUSCHTARGETSNRX10, NULL, 0, iptr:NULL, defintval:200, TYPE_INT, 0}, \
{CONFIG_STRING_MACRLC_PUSCHTARGETSNRX10, NULL, 0, iptr:NULL, defintval:200, TYPE_INT, 0}, \
{CONFIG_STRING_MACRLC_PUCCHTARGETSNRX10, NULL, 0, iptr:NULL, defintval:150, TYPE_INT, 0}, \
{CONFIG_STRING_MACRLC_PUCCHTARGETSNRX10, NULL, 0, iptr:NULL, defintval:150, TYPE_INT, 0}, \
{CONFIG_STRING_MACRLC_UL_PRBBLACK_SNR_THRESHOLD, NULL, 0, iptr:NULL, defintval:10, TYPE_INT, 0}, \
{CONFIG_STRING_MACRLC_PUCCHFAILURETHRES, NULL, 0, iptr:NULL, defintval:10, TYPE_INT, 0}, \
{CONFIG_STRING_MACRLC_PUCCHFAILURETHRES, NULL, 0, iptr:NULL, defintval:10, TYPE_INT, 0}, \
{CONFIG_STRING_MACRLC_PUSCHFAILURETHRES, NULL, 0, iptr:NULL, defintval:10, TYPE_INT, 0}, \
{CONFIG_STRING_MACRLC_PUSCHFAILURETHRES, NULL, 0, iptr:NULL, defintval:10, TYPE_INT, 0}, \
{CONFIG_STRING_MACRLC_DL_BLER_TARGET_UPPER, "Upper threshold of BLER to decrease DL MCS", 0, dblptr:NULL, defdblval:0.15, TYPE_DOUBLE, 0}, \
{CONFIG_STRING_MACRLC_DL_BLER_TARGET_UPPER, "Upper threshold of BLER to decrease DL MCS", 0, dblptr:NULL, defdblval:0.15, TYPE_DOUBLE, 0}, \
...
@@ -123,14 +125,15 @@
...
@@ -123,14 +125,15 @@
#define MACRLC_ULSCH_MAX_FRAME_INACTIVITY 17
#define MACRLC_ULSCH_MAX_FRAME_INACTIVITY 17
#define MACRLC_PUSCHTARGETSNRX10_IDX 18
#define MACRLC_PUSCHTARGETSNRX10_IDX 18
#define MACRLC_PUCCHTARGETSNRX10_IDX 19
#define MACRLC_PUCCHTARGETSNRX10_IDX 19
#define MACRLC_PUCCHFAILURETHRES_IDX 20
#define MACRLC_UL_PRBBLACK_SNR_THRESHOLD_IDX 20
#define MACRLC_PUSCHFAILURETHRES_IDX 21
#define MACRLC_PUCCHFAILURETHRES_IDX 21
#define MACRLC_DL_BLER_TARGET_UPPER_IDX 22
#define MACRLC_PUSCHFAILURETHRES_IDX 22
#define MACRLC_DL_BLER_TARGET_LOWER_IDX 23
#define MACRLC_DL_BLER_TARGET_UPPER_IDX 23
#define MACRLC_DL_RD2_BLER_THRESHOLD_IDX 24
#define MACRLC_DL_BLER_TARGET_LOWER_IDX 24
#define MACRLC_DL_MAX_MCS_IDX 25
#define MACRLC_DL_RD2_BLER_THRESHOLD_IDX 25
#define MACRLC_HARQ_ROUND_MAX_IDX 26
#define MACRLC_DL_MAX_MCS_IDX 26
#define MACRLC_MIN_GRANT_PRB_IDX 27
#define MACRLC_HARQ_ROUND_MAX_IDX 27
#define MACRLC_MIN_GRANT_MCS_IDX 28
#define MACRLC_MIN_GRANT_PRB_IDX 28
#define MACRLC_MIN_GRANT_MCS_IDX 29
/*---------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------------------------------------------------*/
#endif
#endif
openair2/GNB_APP/gnb_config.c
View file @
08975e45
...
@@ -770,6 +770,7 @@ void RCconfig_nr_macrlc() {
...
@@ -770,6 +770,7 @@ void RCconfig_nr_macrlc() {
RC
.
nb_nr_mac_CC
[
j
]
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_CC_IDX
].
iptr
);
RC
.
nb_nr_mac_CC
[
j
]
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_CC_IDX
].
iptr
);
RC
.
nrmac
[
j
]
->
pusch_target_snrx10
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_PUSCHTARGETSNRX10_IDX
].
iptr
);
RC
.
nrmac
[
j
]
->
pusch_target_snrx10
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_PUSCHTARGETSNRX10_IDX
].
iptr
);
RC
.
nrmac
[
j
]
->
pucch_target_snrx10
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_PUCCHTARGETSNRX10_IDX
].
iptr
);
RC
.
nrmac
[
j
]
->
pucch_target_snrx10
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_PUCCHTARGETSNRX10_IDX
].
iptr
);
RC
.
nrmac
[
j
]
->
ul_prbblack_SNR_threshold
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_UL_PRBBLACK_SNR_THRESHOLD_IDX
].
iptr
);
RC
.
nrmac
[
j
]
->
pucch_failure_thres
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_PUCCHFAILURETHRES_IDX
].
iptr
);
RC
.
nrmac
[
j
]
->
pucch_failure_thres
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_PUCCHFAILURETHRES_IDX
].
iptr
);
RC
.
nrmac
[
j
]
->
pusch_failure_thres
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_PUSCHFAILURETHRES_IDX
].
iptr
);
RC
.
nrmac
[
j
]
->
pusch_failure_thres
=
*
(
MacRLC_ParamList
.
paramarray
[
j
][
MACRLC_PUSCHFAILURETHRES_IDX
].
iptr
);
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
View file @
08975e45
...
@@ -890,7 +890,7 @@ void handle_nr_srs_measurements(const module_id_t module_id,
...
@@ -890,7 +890,7 @@ void handle_nr_srs_measurements(const module_id_t module_id,
const
uint8_t
num_reported_symbols
,
const
uint8_t
num_reported_symbols
,
nfapi_nr_srs_indication_reported_symbol_t
*
reported_symbol_list
)
{
nfapi_nr_srs_indication_reported_symbol_t
*
reported_symbol_list
)
{
LOG_
I
(
NR_MAC
,
"(%d.%d) Received SRS indication for rnti: 0x%04x
\n
"
,
frame
,
slot
,
rnti
);
LOG_
D
(
NR_MAC
,
"(%d.%d) Received SRS indication for rnti: 0x%04x
\n
"
,
frame
,
slot
,
rnti
);
#ifdef SRS_IND_DEBUG
#ifdef SRS_IND_DEBUG
LOG_I
(
NR_MAC
,
"frame = %i
\n
"
,
frame
);
LOG_I
(
NR_MAC
,
"frame = %i
\n
"
,
frame
);
...
@@ -906,6 +906,18 @@ void handle_nr_srs_measurements(const module_id_t module_id,
...
@@ -906,6 +906,18 @@ void handle_nr_srs_measurements(const module_id_t module_id,
rb
,
reported_symbol_list
[
0
].
rb_list
[
rb
].
rb_snr
,
(
reported_symbol_list
[
0
].
rb_list
[
rb
].
rb_snr
>>
1
)
-
64
);
rb
,
reported_symbol_list
[
0
].
rb_list
[
rb
].
rb_snr
,
(
reported_symbol_list
[
0
].
rb_list
[
rb
].
rb_snr
>>
1
)
-
64
);
}
}
#endif
#endif
int
ul_prbblack_SNR_threshold
=
RC
.
nrmac
[
module_id
]
->
ul_prbblack_SNR_threshold
;
uint16_t
*
ulprbbl
=
RC
.
nrmac
[
module_id
]
->
ulprbbl
;
memset
(
ulprbbl
,
0
,
reported_symbol_list
[
0
].
num_rbs
*
sizeof
(
uint16_t
));
for
(
int
rb
=
0
;
rb
<
reported_symbol_list
[
0
].
num_rbs
;
rb
++
)
{
int
snr
=
(
reported_symbol_list
[
0
].
rb_list
[
rb
].
rb_snr
>>
1
)
-
64
;
if
(
snr
<
ul_prbblack_SNR_threshold
)
{
ulprbbl
[
rb
]
=
0x3FFF
;
// all symbols taken
}
LOG_D
(
NR_MAC
,
"ulprbbl[%3i] = 0x%x
\n
"
,
rb
,
ulprbbl
[
rb
]);
}
}
}
long
get_K2
(
NR_ServingCellConfigCommon_t
*
scc
,
long
get_K2
(
NR_ServingCellConfigCommon_t
*
scc
,
...
...
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
View file @
08975e45
...
@@ -721,6 +721,8 @@ typedef struct gNB_MAC_INST_s {
...
@@ -721,6 +721,8 @@ typedef struct gNB_MAC_INST_s {
int
pusch_target_snrx10
;
int
pusch_target_snrx10
;
/// Pucch target SNR
/// Pucch target SNR
int
pucch_target_snrx10
;
int
pucch_target_snrx10
;
/// SNR threshold needed to put or not a PRB in the black list
int
ul_prbblack_SNR_threshold
;
/// PUCCH Failure threshold (compared to consecutive PUCCH DTX)
/// PUCCH Failure threshold (compared to consecutive PUCCH DTX)
int
pucch_failure_thres
;
int
pucch_failure_thres
;
/// PUSCH Failure threshold (compared to consecutive PUSCH DTX)
/// PUSCH Failure threshold (compared to consecutive PUSCH DTX)
...
@@ -735,7 +737,7 @@ typedef struct gNB_MAC_INST_s {
...
@@ -735,7 +737,7 @@ typedef struct gNB_MAC_INST_s {
/// current PDU index (BCH,DLSCH)
/// current PDU index (BCH,DLSCH)
uint16_t
pdu_index
[
NFAPI_CC_MAX
];
uint16_t
pdu_index
[
NFAPI_CC_MAX
];
int
num_ulprbbl
;
int
num_ulprbbl
;
uint16_t
ulprbbl
[
275
];
uint16_t
ulprbbl
[
MAX_BWP_SIZE
];
/// NFAPI Config Request Structure
/// NFAPI Config Request Structure
nfapi_nr_config_request_scf_t
config
[
NFAPI_CC_MAX
];
nfapi_nr_config_request_scf_t
config
[
NFAPI_CC_MAX
];
/// NFAPI DL Config Request Structure
/// NFAPI DL Config Request Structure
...
...
targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.2x2.usrpn300.conf
View file @
08975e45
...
@@ -207,6 +207,7 @@ MACRLCs = (
...
@@ -207,6 +207,7 @@ MACRLCs = (
tr_n_preference
=
"local_RRC"
;
tr_n_preference
=
"local_RRC"
;
#pusch_TargetSNRx10 = 150;
#pusch_TargetSNRx10 = 150;
#pucch_TargetSNRx10 = 200;
#pucch_TargetSNRx10 = 200;
ul_prbblack_SNR_threshold
=
10
;
ulsch_max_frame_inactivity
=
0
;
ulsch_max_frame_inactivity
=
0
;
}
}
);
);
...
...
targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.conf
View file @
08975e45
...
@@ -205,6 +205,7 @@ MACRLCs = (
...
@@ -205,6 +205,7 @@ MACRLCs = (
tr_n_preference
=
"local_RRC"
;
tr_n_preference
=
"local_RRC"
;
pusch_TargetSNRx10
=
150
;
pusch_TargetSNRx10
=
150
;
pucch_TargetSNRx10
=
200
;
pucch_TargetSNRx10
=
200
;
ul_prbblack_SNR_threshold
=
10
;
ulsch_max_frame_inactivity
=
0
;
ulsch_max_frame_inactivity
=
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