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
1fd46862
Commit
1fd46862
authored
Nov 21, 2023
by
liuxu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
decrease print info231121
parent
31cc296c
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
38 additions
and
33 deletions
+38
-33
executables/sever_manager_py.py
executables/sever_manager_py.py
+2
-2
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
+4
-2
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
+1
-1
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
+1
-1
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
+7
-7
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_srs.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_srs.c
+1
-1
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
+5
-5
openair2/LAYER2/NR_MAC_gNB/main.c
openair2/LAYER2/NR_MAC_gNB/main.c
+7
-4
openair2/LAYER2/NR_MAC_gNB/slotmap.h
openair2/LAYER2/NR_MAC_gNB/slotmap.h
+1
-1
targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.conf
...ENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.conf
+7
-7
targets/PROJECTS/GENERIC-NR-5GC/CONF/ue.conf
targets/PROJECTS/GENERIC-NR-5GC/CONF/ue.conf
+2
-2
No files found.
executables/sever_manager_py.py
View file @
1fd46862
...
@@ -102,8 +102,8 @@ while True:
...
@@ -102,8 +102,8 @@ while True:
%d, dl_bler %f, ul_bler %f, pucch_snr %ddB, pusch_snr %ddB rsrp %ddBm"
%
(
%d, dl_bler %f, ul_bler %f, pucch_snr %ddB, pusch_snr %ddB rsrp %ddBm"
%
(
frame
,
slot
,
dl_recv_bytes
-
dl_recv_bytes_last
,
dl_velocity
,
ul_recv_bytes
-
ul_recv_bytes_last
,
ul_velocity
,
\
frame
,
slot
,
dl_recv_bytes
-
dl_recv_bytes_last
,
dl_velocity
,
ul_recv_bytes
-
ul_recv_bytes_last
,
ul_velocity
,
\
dl_mcs
,
ul_mcs
,
dl_bler
,
ul_bler
,
pucch_snr
,
pusch_snr
,
rsrp
))
dl_mcs
,
ul_mcs
,
dl_bler
,
ul_bler
,
pucch_snr
,
pusch_snr
,
rsrp
))
dl_recv_bytes_last
=
dl_recv_bytes
dl_recv_bytes_last
=
dl_recv_bytes
ul_recv_bytes_last
=
ul_recv_bytes
ul_recv_bytes_last
=
ul_recv_bytes
count
=
0
count
=
0
for
map_type
in
schedule_data
:
for
map_type
in
schedule_data
:
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler.c
View file @
1fd46862
...
@@ -302,7 +302,8 @@ void gNB_dlsch_ulsch_scheduler(module_id_t module_idP, frame_t frame, sub_frame_
...
@@ -302,7 +302,8 @@ void gNB_dlsch_ulsch_scheduler(module_id_t module_idP, frame_t frame, sub_frame_
sim_socket_manager
.
data_len
=
sizeof
(
sim_socket_t
);
sim_socket_manager
.
data_len
=
sizeof
(
sim_socket_t
);
sim_socket_manager
.
message
=
2
;
sim_socket_manager
.
message
=
2
;
// gnbSendToManager_len = sim_socket_manager.data_len;
// gnbSendToManager_len = sim_socket_manager.data_len;
LOG_D
(
NR_MAC
,
"data_len %d
\n
"
,
sim_socket_manager
.
data_len
);
#ifdef VRB_MAP_TEST_MANAGER
LOG_I
(
NR_MAC
,
"data_len %d
\n
"
,
sim_socket_manager
.
data_len
);
LOG_I
(
NR_MAC
,
"[%d.%d] measurement_flag %x pbch_sched_flag %x random_access_sched_flag %x dl_sched_flag %x ul_sched_flag %x "
LOG_I
(
NR_MAC
,
"[%d.%d] measurement_flag %x pbch_sched_flag %x random_access_sched_flag %x dl_sched_flag %x ul_sched_flag %x "
"ssb %d.%d sib1 %d.%d msg1 %d.%d msg2 %d.%d msg3 %d.%d msg4 %d.%d pdcch %d.%d pdsch %d.%d "
"ssb %d.%d sib1 %d.%d msg1 %d.%d msg2 %d.%d msg3 %d.%d msg4 %d.%d pdcch %d.%d pdsch %d.%d "
"csirs %d.%d prach %d.%d ulsch %d.%d acknack %d.%d csi_report %d.%d sr %d.%d srs %d.%d
\n
"
,
"csirs %d.%d prach %d.%d ulsch %d.%d acknack %d.%d csi_report %d.%d sr %d.%d srs %d.%d
\n
"
,
...
@@ -316,12 +317,13 @@ void gNB_dlsch_ulsch_scheduler(module_id_t module_idP, frame_t frame, sub_frame_
...
@@ -316,12 +317,13 @@ void gNB_dlsch_ulsch_scheduler(module_id_t module_idP, frame_t frame, sub_frame_
sim_socket_manager
.
ulsch_frame
,
sim_socket_manager
.
ulsch_slot
,
sim_socket_manager
.
acknack_frame
,
sim_socket_manager
.
acknack_slot
,
sim_socket_manager
.
ulsch_frame
,
sim_socket_manager
.
ulsch_slot
,
sim_socket_manager
.
acknack_frame
,
sim_socket_manager
.
acknack_slot
,
sim_socket_manager
.
csi_report_frame
,
sim_socket_manager
.
csi_report_slot
,
sim_socket_manager
.
sr_frame
,
sim_socket_manager
.
sr_slot
,
sim_socket_manager
.
csi_report_frame
,
sim_socket_manager
.
csi_report_slot
,
sim_socket_manager
.
sr_frame
,
sim_socket_manager
.
sr_slot
,
sim_socket_manager
.
srs_frame
,
sim_socket_manager
.
srs_slot
);
sim_socket_manager
.
srs_frame
,
sim_socket_manager
.
srs_slot
);
LOG_
D
(
NR_MAC
,
"%d.%d: dl_recv_bytes %dbytes, ul_recv_bytes %dbytes, dl_mcs %d, ul_mcs %d, dl_bler %d, ul_bler %d, pucch_snr %ddB, pusch_snr %ddB, rsrp %ddBm
\n
"
,
LOG_
I
(
NR_MAC
,
"%d.%d: dl_recv_bytes %dbytes, ul_recv_bytes %dbytes, dl_mcs %d, ul_mcs %d, dl_bler %d, ul_bler %d, pucch_snr %ddB, pusch_snr %ddB, rsrp %ddBm
\n
"
,
sim_socket_manager
.
frame
,
sim_socket_manager
.
slot
,
sim_socket_manager
.
frame
,
sim_socket_manager
.
slot
,
(
sim_socket_manager
.
dl_recv_bytes_high16
<<
16
)
+
sim_socket_manager
.
dl_recv_bytes_low16
,
(
sim_socket_manager
.
dl_recv_bytes_high16
<<
16
)
+
sim_socket_manager
.
dl_recv_bytes_low16
,
(
sim_socket_manager
.
ul_recv_bytes_high16
<<
16
)
+
sim_socket_manager
.
ul_recv_bytes_low16
,
(
sim_socket_manager
.
ul_recv_bytes_high16
<<
16
)
+
sim_socket_manager
.
ul_recv_bytes_low16
,
sim_socket_manager
.
dl_mcs
,
sim_socket_manager
.
ul_mcs
,
sim_socket_manager
.
dl_bler
,
sim_socket_manager
.
ul_bler
,
sim_socket_manager
.
pucch_snr
,
sim_socket_manager
.
dl_mcs
,
sim_socket_manager
.
ul_mcs
,
sim_socket_manager
.
dl_bler
,
sim_socket_manager
.
ul_bler
,
sim_socket_manager
.
pucch_snr
,
sim_socket_manager
.
pusch_snr
,
sim_socket_manager
.
rsrp
);
sim_socket_manager
.
pusch_snr
,
sim_socket_manager
.
rsrp
);
#endif
pthread_mutex_unlock
(
&
sim_mutex_socket
);
pthread_mutex_unlock
(
&
sim_mutex_socket
);
sem_post
(
&
gnbSendToManager_sem
);
sem_post
(
&
gnbSendToManager_sem
);
}
}
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
View file @
1fd46862
...
@@ -93,7 +93,7 @@ static void schedule_ssb(frame_t frame,
...
@@ -93,7 +93,7 @@ static void schedule_ssb(frame_t frame,
sim_socket_manager
.
ssb_frame
=
frame
;
sim_socket_manager
.
ssb_frame
=
frame
;
sim_socket_manager
.
ssb_slot
=
slot
;
sim_socket_manager
.
ssb_slot
=
slot
;
sim_socket_manager
.
pbch_sched_flag
|=
0x01
;
sim_socket_manager
.
pbch_sched_flag
|=
0x01
;
LOG_
I
(
MAC
,
"Scheduling ssb %d at frame %d and slot %d
\n
"
,
i_ssb
,
frame
,
slot
);
LOG_
D
(
MAC
,
"Scheduling ssb %d at frame %d and slot %d
\n
"
,
i_ssb
,
frame
,
slot
);
}
}
static
void
fill_ssb_vrb_map
(
NR_COMMON_channels_t
*
cc
,
int
rbStart
,
int
ssb_subcarrier_offset
,
uint16_t
symStart
,
int
CC_id
)
static
void
fill_ssb_vrb_map
(
NR_COMMON_channels_t
*
cc
,
int
rbStart
,
int
ssb_subcarrier_offset
,
uint16_t
symStart
,
int
CC_id
)
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
View file @
1fd46862
...
@@ -1019,7 +1019,7 @@ void nr_schedule_ue_spec(module_id_t module_id,
...
@@ -1019,7 +1019,7 @@ void nr_schedule_ue_spec(module_id_t module_id,
sim_socket_manager
.
dl_sched_flag
|=
0x01
;
sim_socket_manager
.
dl_sched_flag
|=
0x01
;
sim_socket_manager
.
pdcch_slot
=
sim_socket_manager
.
pdsch_slot
=
slot
;
sim_socket_manager
.
pdcch_slot
=
sim_socket_manager
.
pdsch_slot
=
slot
;
sim_socket_manager
.
dl_sched_flag
|=
0x02
;
sim_socket_manager
.
dl_sched_flag
|=
0x02
;
LOG_
I
(
NR_MAC
,
LOG_
D
(
NR_MAC
,
"%4d.%2d [DLSCH/PDSCH/PUCCH] RNTI %04x DCI L %d start %3d RBs %3d startSymbol %2d nb_symbol %2d dmrspos %x MCS %2d nrOfLayers %d TBS %4d HARQ PID %2d round %d RV %d NDI %d dl_data_to_ULACK %d (%d.%d) PUCCH allocation %d TPC %d
\n
"
,
"%4d.%2d [DLSCH/PDSCH/PUCCH] RNTI %04x DCI L %d start %3d RBs %3d startSymbol %2d nb_symbol %2d dmrspos %x MCS %2d nrOfLayers %d TBS %4d HARQ PID %2d round %d RV %d NDI %d dl_data_to_ULACK %d (%d.%d) PUCCH allocation %d TPC %d
\n
"
,
frame
,
frame
,
slot
,
slot
,
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
View file @
1fd46862
...
@@ -1009,7 +1009,7 @@ void nr_configure_pucch(nfapi_nr_pucch_pdu_t *pucch_pdu,
...
@@ -1009,7 +1009,7 @@ void nr_configure_pucch(nfapi_nr_pucch_pdu_t *pucch_pdu,
pucch_pdu
->
bit_len_harq
,
pucch_pdu
->
bit_len_harq
,
pucch_pdu
->
bit_len_csi_part1
);
pucch_pdu
->
bit_len_csi_part1
);
}
else
{
// this is the default PUCCH configuration, PUCCH format 0 or 1
}
else
{
// this is the default PUCCH configuration, PUCCH format 0 or 1
LOG_
I
(
NR_MAC
,
LOG_
D
(
NR_MAC
,
"pucch_acknak: Filling default PUCCH configuration from Tables (r_pucch %d, pucch_Config %p)
\n
"
,
"pucch_acknak: Filling default PUCCH configuration from Tables (r_pucch %d, pucch_Config %p)
\n
"
,
r_pucch
,
r_pucch
,
pucch_Config
);
pucch_Config
);
...
@@ -1971,7 +1971,7 @@ void delete_nr_ue_data(NR_UE_info_t *UE, NR_COMMON_channels_t *ccPtr, uid_alloca
...
@@ -1971,7 +1971,7 @@ void delete_nr_ue_data(NR_UE_info_t *UE, NR_COMMON_channels_t *ccPtr, uid_alloca
destroy_nr_list
(
&
sched_ctrl
->
feedback_ul_harq
);
destroy_nr_list
(
&
sched_ctrl
->
feedback_ul_harq
);
destroy_nr_list
(
&
sched_ctrl
->
retrans_ul_harq
);
destroy_nr_list
(
&
sched_ctrl
->
retrans_ul_harq
);
uid_linear_allocator_free
(
uia
,
UE
->
uid
);
uid_linear_allocator_free
(
uia
,
UE
->
uid
);
LOG_
I
(
NR_MAC
,
"Remove NR rnti 0x%04x
\n
"
,
UE
->
rnti
);
LOG_
D
(
NR_MAC
,
"Remove NR rnti 0x%04x
\n
"
,
UE
->
rnti
);
free
(
UE
);
free
(
UE
);
}
}
...
@@ -2117,9 +2117,9 @@ void configure_UE_BWP(gNB_MAC_INST *nr_mac,
...
@@ -2117,9 +2117,9 @@ void configure_UE_BWP(gNB_MAC_INST *nr_mac,
}
}
if
(
old_dl_bwp_id
!=
DL_BWP
->
bwp_id
)
if
(
old_dl_bwp_id
!=
DL_BWP
->
bwp_id
)
LOG_
I
(
NR_MAC
,
"Switching to DL-BWP %li
\n
"
,
DL_BWP
->
bwp_id
);
LOG_
D
(
NR_MAC
,
"Switching to DL-BWP %li
\n
"
,
DL_BWP
->
bwp_id
);
if
(
old_ul_bwp_id
!=
UL_BWP
->
bwp_id
)
if
(
old_ul_bwp_id
!=
UL_BWP
->
bwp_id
)
LOG_
I
(
NR_MAC
,
"Switching to UL-BWP %li
\n
"
,
UL_BWP
->
bwp_id
);
LOG_
D
(
NR_MAC
,
"Switching to UL-BWP %li
\n
"
,
UL_BWP
->
bwp_id
);
// TDA lists
// TDA lists
if
(
DL_BWP
->
bwp_id
>
0
)
if
(
DL_BWP
->
bwp_id
>
0
)
...
@@ -2269,7 +2269,7 @@ NR_UE_info_t *add_new_nr_ue(gNB_MAC_INST *nr_mac, rnti_t rntiP, NR_CellGroupConf
...
@@ -2269,7 +2269,7 @@ NR_UE_info_t *add_new_nr_ue(gNB_MAC_INST *nr_mac, rnti_t rntiP, NR_CellGroupConf
{
{
NR_ServingCellConfigCommon_t
*
scc
=
nr_mac
->
common_channels
[
0
].
ServingCellConfigCommon
;
NR_ServingCellConfigCommon_t
*
scc
=
nr_mac
->
common_channels
[
0
].
ServingCellConfigCommon
;
NR_UEs_t
*
UE_info
=
&
nr_mac
->
UE_info
;
NR_UEs_t
*
UE_info
=
&
nr_mac
->
UE_info
;
LOG_
I
(
NR_MAC
,
"Adding UE with rnti 0x%04x
\n
"
,
LOG_
D
(
NR_MAC
,
"Adding UE with rnti 0x%04x
\n
"
,
rntiP
);
rntiP
);
dump_nr_list
(
UE_info
->
list
);
dump_nr_list
(
UE_info
->
list
);
...
@@ -2568,7 +2568,7 @@ void nr_csirs_scheduling(int Mod_idP, frame_t frame, sub_frame_t slot, int n_slo
...
@@ -2568,7 +2568,7 @@ void nr_csirs_scheduling(int Mod_idP, frame_t frame, sub_frame_t slot, int n_slo
if
((
frame
*
n_slots_frame
+
slot
-
offset
)
%
period
==
0
)
{
if
((
frame
*
n_slots_frame
+
slot
-
offset
)
%
period
==
0
)
{
LOG_
I
(
NR_MAC
,
"Scheduling CSI-RS in frame %d slot %d Resource ID %ld
\n
"
,
LOG_
D
(
NR_MAC
,
"Scheduling CSI-RS in frame %d slot %d Resource ID %ld
\n
"
,
frame
,
slot
,
nzpcsi
->
nzp_CSI_RS_ResourceId
);
frame
,
slot
,
nzpcsi
->
nzp_CSI_RS_ResourceId
);
UE_info
->
sched_csirs
|=
(
1
<<
dl_bwp
->
bwp_id
);
UE_info
->
sched_csirs
|=
(
1
<<
dl_bwp
->
bwp_id
);
sim_socket_manager
.
csirs_frame
=
frame
;
sim_socket_manager
.
csirs_frame
=
frame
;
...
@@ -3046,7 +3046,7 @@ void nr_mac_update_timers(module_id_t module_id,
...
@@ -3046,7 +3046,7 @@ void nr_mac_update_timers(module_id_t module_id,
if
(
sched_ctrl
->
rrc_processing_timer
>
0
)
{
if
(
sched_ctrl
->
rrc_processing_timer
>
0
)
{
sched_ctrl
->
rrc_processing_timer
--
;
sched_ctrl
->
rrc_processing_timer
--
;
if
(
sched_ctrl
->
rrc_processing_timer
==
0
)
{
if
(
sched_ctrl
->
rrc_processing_timer
==
0
)
{
LOG_
I
(
NR_MAC
,
"(%d.%d) De-activating RRC processing timer for UE %04x
\n
"
,
frame
,
slot
,
UE
->
rnti
);
LOG_
D
(
NR_MAC
,
"(%d.%d) De-activating RRC processing timer for UE %04x
\n
"
,
frame
,
slot
,
UE
->
rnti
);
reset_srs_stats
(
UE
);
reset_srs_stats
(
UE
);
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_srs.c
View file @
1fd46862
...
@@ -333,7 +333,7 @@ void nr_schedule_srs(int module_id, frame_t frame, int slot)
...
@@ -333,7 +333,7 @@ void nr_schedule_srs(int module_id, frame_t frame, int slot)
LOG_D
(
NR_MAC
,
" %d.%d pass1 Scheduling SRS reception for %d.%d
\n
"
,
frame
,
slot
,
sched_frame
,
sched_slot
);
LOG_D
(
NR_MAC
,
" %d.%d pass1 Scheduling SRS reception for %d.%d
\n
"
,
frame
,
slot
,
sched_frame
,
sched_slot
);
// Check if UE will transmit the SRS in this frame
// Check if UE will transmit the SRS in this frame
if
((
sched_frame
*
n_slots_frame
+
sched_slot
-
offset
)
%
period
==
0
)
{
if
((
sched_frame
*
n_slots_frame
+
sched_slot
-
offset
)
%
period
==
0
)
{
LOG_
I
(
NR_MAC
,
" %d.%d Scheduling SRS reception for %d.%d
\n
"
,
frame
,
slot
,
sched_frame
,
sched_slot
);
LOG_
D
(
NR_MAC
,
" %d.%d Scheduling SRS reception for %d.%d
\n
"
,
frame
,
slot
,
sched_frame
,
sched_slot
);
nr_fill_nfapi_srs
(
module_id
,
CC_id
,
UE
,
sched_frame
,
sched_slot
,
srs_resource_set
,
srs_resource
);
nr_fill_nfapi_srs
(
module_id
,
CC_id
,
UE
,
sched_frame
,
sched_slot
,
srs_resource_set
,
srs_resource
);
sched_ctrl
->
sched_srs
.
frame
=
sched_frame
;
sched_ctrl
->
sched_srs
.
frame
=
sched_frame
;
sched_ctrl
->
sched_srs
.
slot
=
sched_slot
;
sched_ctrl
->
sched_srs
.
slot
=
sched_slot
;
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
View file @
1fd46862
...
@@ -1741,7 +1741,7 @@ static void pf_ul(module_id_t module_id,
...
@@ -1741,7 +1741,7 @@ static void pf_ul(module_id_t module_id,
&
sched_ctrl
->
sched_pdcch
,
&
sched_ctrl
->
sched_pdcch
,
false
);
false
);
if
(
CCEIndex
<
0
)
{
if
(
CCEIndex
<
0
)
{
LOG_
I
(
NR_MAC
,
"[UE %04x][%4d.%2d] no free CCE for UL DCI (BSR 0)
\n
"
,
LOG_
D
(
NR_MAC
,
"[UE %04x][%4d.%2d] no free CCE for UL DCI (BSR 0)
\n
"
,
UE
->
rnti
,
UE
->
rnti
,
frame
,
frame
,
slot
);
slot
);
...
@@ -1762,7 +1762,7 @@ static void pf_ul(module_id_t module_id,
...
@@ -1762,7 +1762,7 @@ static void pf_ul(module_id_t module_id,
while
(
rbStart
<
bwpSize
&&
(
rballoc_mask
[
rbStart
]
&
slbitmap
)
!=
slbitmap
)
while
(
rbStart
<
bwpSize
&&
(
rballoc_mask
[
rbStart
]
&
slbitmap
)
!=
slbitmap
)
rbStart
++
;
rbStart
++
;
if
(
rbStart
+
min_rb
>=
bwpSize
)
{
if
(
rbStart
+
min_rb
>=
bwpSize
)
{
LOG_
I
(
NR_MAC
,
"[UE %04x][%4d.%2d] could not allocate continuous UL data: no resources (rbStart %d, min_rb %d, bwpSize %d)
\n
"
,
LOG_
D
(
NR_MAC
,
"[UE %04x][%4d.%2d] could not allocate continuous UL data: no resources (rbStart %d, min_rb %d, bwpSize %d)
\n
"
,
UE
->
rnti
,
UE
->
rnti
,
frame
,
frame
,
slot
,
slot
,
...
@@ -1828,7 +1828,7 @@ static void pf_ul(module_id_t module_id,
...
@@ -1828,7 +1828,7 @@ static void pf_ul(module_id_t module_id,
/* Calculate coefficient*/
/* Calculate coefficient*/
const
uint32_t
tbs
=
ul_pf_tbs
[
current_BWP
->
mcs_table
][
sched_pusch
->
mcs
];
const
uint32_t
tbs
=
ul_pf_tbs
[
current_BWP
->
mcs_table
][
sched_pusch
->
mcs
];
float
coeff_ue
=
(
float
)
tbs
/
UE
->
ul_thr_ue
;
float
coeff_ue
=
(
float
)
tbs
/
UE
->
ul_thr_ue
;
LOG_
I
(
NR_MAC
,
"[UE %04x][%4d.%2d] b %d, ul_thr_ue %f, tbs %d, coeff_ue %f
\n
"
,
LOG_
D
(
NR_MAC
,
"[UE %04x][%4d.%2d] b %d, ul_thr_ue %f, tbs %d, coeff_ue %f
\n
"
,
UE
->
rnti
,
UE
->
rnti
,
frame
,
frame
,
slot
,
slot
,
...
@@ -1928,7 +1928,7 @@ static void pf_ul(module_id_t module_id,
...
@@ -1928,7 +1928,7 @@ static void pf_ul(module_id_t module_id,
sched_pusch
->
rbSize
=
rbSize
;
sched_pusch
->
rbSize
=
rbSize
;
sched_pusch
->
tb_size
=
TBS
;
sched_pusch
->
tb_size
=
TBS
;
LOG_
I
(
NR_MAC
,
"rbSize %d (max_rbSize %d), TBS %d, est buf %d, sched_ul %d, B %d, CCE %d, num_dmrs_symb %d, N_PRB_DMRS %d
\n
"
,
LOG_
D
(
NR_MAC
,
"rbSize %d (max_rbSize %d), TBS %d, est buf %d, sched_ul %d, B %d, CCE %d, num_dmrs_symb %d, N_PRB_DMRS %d
\n
"
,
rbSize
,
max_rbSize
,
sched_pusch
->
tb_size
,
sched_ctrl
->
estimated_ul_buffer
,
sched_ctrl
->
sched_ul_bytes
,
B
,
rbSize
,
max_rbSize
,
sched_pusch
->
tb_size
,
sched_ctrl
->
estimated_ul_buffer
,
sched_ctrl
->
sched_ul_bytes
,
B
,
sched_ctrl
->
cce_index
,
sched_pusch
->
dmrs_info
.
num_dmrs_symb
,
sched_pusch
->
dmrs_info
.
N_PRB_DMRS
);
sched_ctrl
->
cce_index
,
sched_pusch
->
dmrs_info
.
num_dmrs_symb
,
sched_pusch
->
dmrs_info
.
N_PRB_DMRS
);
...
@@ -2206,7 +2206,7 @@ void nr_schedule_ulsch(module_id_t module_id, frame_t frame, sub_frame_t slot, n
...
@@ -2206,7 +2206,7 @@ void nr_schedule_ulsch(module_id_t module_id, frame_t frame, sub_frame_t slot, n
sim_socket_manager
.
ulsch_slot
=
sched_pusch
->
slot
;
sim_socket_manager
.
ulsch_slot
=
sched_pusch
->
slot
;
sim_socket_manager
.
ul_sched_flag
|=
0x01
;
sim_socket_manager
.
ul_sched_flag
|=
0x01
;
LOG_
I
(
NR_MAC
,
LOG_
D
(
NR_MAC
,
"ULSCH/PUSCH: %4d.%2d RNTI %04x UL sched %4d.%2d DCI L %d start %2d RBS %3d startSymbol %2d nb_symbol %2d dmrs_pos %x MCS Table %2d MCS %2d nrOfLayers %2d num_dmrs_cdm_grps_no_data %2d TBS %4d HARQ PID %2d round %d RV %d NDI %d est %6d sched %6d est BSR %6d TPC %d
\n
"
,
"ULSCH/PUSCH: %4d.%2d RNTI %04x UL sched %4d.%2d DCI L %d start %2d RBS %3d startSymbol %2d nb_symbol %2d dmrs_pos %x MCS Table %2d MCS %2d nrOfLayers %2d num_dmrs_cdm_grps_no_data %2d TBS %4d HARQ PID %2d round %d RV %d NDI %d est %6d sched %6d est BSR %6d TPC %d
\n
"
,
frame
,
frame
,
slot
,
slot
,
...
...
openair2/LAYER2/NR_MAC_gNB/main.c
View file @
1fd46862
...
@@ -101,14 +101,11 @@ size_t dump_mac_stats(gNB_MAC_INST *gNB, char *output, size_t strlen, bool reset
...
@@ -101,14 +101,11 @@ size_t dump_mac_stats(gNB_MAC_INST *gNB, char *output, size_t strlen, bool reset
NR_UE_sched_ctrl_t
*
sched_ctrl
=
&
UE
->
UE_sched_ctrl
;
NR_UE_sched_ctrl_t
*
sched_ctrl
=
&
UE
->
UE_sched_ctrl
;
NR_mac_stats_t
*
stats
=
&
UE
->
mac_stats
;
NR_mac_stats_t
*
stats
=
&
UE
->
mac_stats
;
const
int
avg_rsrp
=
stats
->
num_rsrp_meas
>
0
?
stats
->
cumul_rsrp
/
stats
->
num_rsrp_meas
:
0
;
const
int
avg_rsrp
=
stats
->
num_rsrp_meas
>
0
?
stats
->
cumul_rsrp
/
stats
->
num_rsrp_meas
:
0
;
printf
(
"stats->dl.total_bytes %ld stats->ul.total_bytes %ld
\n
"
,
stats
->
dl
.
total_bytes
,
stats
->
ul
.
total_bytes
);
sim_socket_manager
.
dl_recv_bytes_high16
=
(
stats
->
dl
.
total_bytes
>>
16
)
&
0x0000ffff
;
sim_socket_manager
.
dl_recv_bytes_high16
=
(
stats
->
dl
.
total_bytes
>>
16
)
&
0x0000ffff
;
sim_socket_manager
.
dl_recv_bytes_low16
=
stats
->
dl
.
total_bytes
&
0x0000ffff
;
sim_socket_manager
.
dl_recv_bytes_low16
=
stats
->
dl
.
total_bytes
&
0x0000ffff
;
sim_socket_manager
.
ul_recv_bytes_high16
=
(
stats
->
ul
.
total_bytes
>>
16
)
&
0x0000ffff
;
sim_socket_manager
.
ul_recv_bytes_high16
=
(
stats
->
ul
.
total_bytes
>>
16
)
&
0x0000ffff
;
sim_socket_manager
.
ul_recv_bytes_low16
=
stats
->
ul
.
total_bytes
&
0x0000ffff
;
sim_socket_manager
.
ul_recv_bytes_low16
=
stats
->
ul
.
total_bytes
&
0x0000ffff
;
printf
(
"sim_socket_manager.dl_recv_bytes_high16 %d sim_socket_manager.dl_recv_bytes_low16 %d sim_socket_manager.ul_recv_bytes_high16 %d sim_socket_manager.ul_recv_bytes_low16 %d
\n
"
,
sim_socket_manager
.
dl_recv_bytes_high16
,
sim_socket_manager
.
dl_recv_bytes_low16
,
sim_socket_manager
.
ul_recv_bytes_high16
,
sim_socket_manager
.
ul_recv_bytes_low16
);
sim_socket_manager
.
dl_mcs
=
sched_ctrl
->
dl_bler_stats
.
mcs
;
sim_socket_manager
.
dl_mcs
=
sched_ctrl
->
dl_bler_stats
.
mcs
;
sim_socket_manager
.
ul_mcs
=
sched_ctrl
->
ul_bler_stats
.
mcs
;
sim_socket_manager
.
ul_mcs
=
sched_ctrl
->
ul_bler_stats
.
mcs
;
sim_socket_manager
.
dl_bler
=
sched_ctrl
->
dl_bler_stats
.
bler
*
10000
;
sim_socket_manager
.
dl_bler
=
sched_ctrl
->
dl_bler_stats
.
bler
*
10000
;
...
@@ -117,12 +114,18 @@ size_t dump_mac_stats(gNB_MAC_INST *gNB, char *output, size_t strlen, bool reset
...
@@ -117,12 +114,18 @@ size_t dump_mac_stats(gNB_MAC_INST *gNB, char *output, size_t strlen, bool reset
sim_socket_manager
.
pusch_snr
=
sched_ctrl
->
pusch_snrx10
/
10
;
sim_socket_manager
.
pusch_snr
=
sched_ctrl
->
pusch_snrx10
/
10
;
sim_socket_manager
.
rsrp
=
avg_rsrp
;
sim_socket_manager
.
rsrp
=
avg_rsrp
;
sim_socket_manager
.
measurement_flag
|=
0x01
;
sim_socket_manager
.
measurement_flag
|=
0x01
;
#ifdef VRB_MAP_TEST_MANAGER
printf
(
"stats->dl.total_bytes %ld stats->ul.total_bytes %ld
\n
"
,
stats
->
dl
.
total_bytes
,
stats
->
ul
.
total_bytes
);
printf
(
"sim_socket_manager.dl_recv_bytes_high16 %d sim_socket_manager.dl_recv_bytes_low16 %d sim_socket_manager.ul_recv_bytes_high16 %d sim_socket_manager.ul_recv_bytes_low16 %d
\n
"
,
sim_socket_manager
.
dl_recv_bytes_high16
,
sim_socket_manager
.
dl_recv_bytes_low16
,
sim_socket_manager
.
ul_recv_bytes_high16
,
sim_socket_manager
.
ul_recv_bytes_low16
);
printf
(
"%d.%d: dl_recv_bytes %dbytes, ul_recv_bytes %dbytes, dl_mcs %d, ul_mcs %d, dl_bler %d, ul_bler %d, pucch_snr %ddB, pusch_snr %ddB, rsrp %ddBm
\n
"
,
printf
(
"%d.%d: dl_recv_bytes %dbytes, ul_recv_bytes %dbytes, dl_mcs %d, ul_mcs %d, dl_bler %d, ul_bler %d, pucch_snr %ddB, pusch_snr %ddB, rsrp %ddBm
\n
"
,
sim_socket_manager
.
frame
,
sim_socket_manager
.
slot
,
sim_socket_manager
.
frame
,
sim_socket_manager
.
slot
,
(
sim_socket_manager
.
dl_recv_bytes_high16
<<
16
)
+
sim_socket_manager
.
dl_recv_bytes_low16
,
(
sim_socket_manager
.
dl_recv_bytes_high16
<<
16
)
+
sim_socket_manager
.
dl_recv_bytes_low16
,
(
sim_socket_manager
.
ul_recv_bytes_high16
<<
16
)
+
sim_socket_manager
.
ul_recv_bytes_low16
,
(
sim_socket_manager
.
ul_recv_bytes_high16
<<
16
)
+
sim_socket_manager
.
ul_recv_bytes_low16
,
sim_socket_manager
.
dl_mcs
,
sim_socket_manager
.
ul_mcs
,
sim_socket_manager
.
dl_bler
,
sim_socket_manager
.
ul_bler
,
sim_socket_manager
.
pucch_snr
,
sim_socket_manager
.
dl_mcs
,
sim_socket_manager
.
ul_mcs
,
sim_socket_manager
.
dl_bler
,
sim_socket_manager
.
ul_bler
,
sim_socket_manager
.
pucch_snr
,
sim_socket_manager
.
pusch_snr
,
sim_socket_manager
.
rsrp
);
sim_socket_manager
.
pusch_snr
,
sim_socket_manager
.
rsrp
);
#endif
output
+=
snprintf
(
output
,
output
+=
snprintf
(
output
,
end
-
output
,
end
-
output
,
"UE RNTI %04x (%d) PH %d dB PCMAX %d dBm, average RSRP %d (%d meas)
\n
"
,
"UE RNTI %04x (%d) PH %d dB PCMAX %d dBm, average RSRP %d (%d meas)
\n
"
,
...
...
openair2/LAYER2/NR_MAC_gNB/slotmap.h
View file @
1fd46862
...
@@ -12,7 +12,7 @@
...
@@ -12,7 +12,7 @@
#define MAX_UE_NUMBER_MAP_SOCKET 1
#define MAX_UE_NUMBER_MAP_SOCKET 1
#define VRB_MAP_TEST_MANAGER
//
#define VRB_MAP_TEST_MANAGER
typedef
struct
{
typedef
struct
{
uint16_t
data_len
;
uint16_t
data_len
;
...
...
targets/PROJECTS/GENERIC-NR-5GC/CONF/gnb.sa.band78.fr1.106PRB.usrpb210.conf
View file @
1fd46862
...
@@ -10,8 +10,8 @@ gNBs =
...
@@ -10,8 +10,8 @@ gNBs =
gNB_name
=
"gNB-OAI"
;
gNB_name
=
"gNB-OAI"
;
//
Tracking
area
code
,
0
x0000
and
0
xfffe
are
reserved
values
//
Tracking
area
code
,
0
x0000
and
0
xfffe
are
reserved
values
tracking_area_code
=
1
;
tracking_area_code
=
1
00
;
plmn_list
= ({
mcc
=
001
;
mnc
=
01
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
; }) });
plmn_list
= ({
mcc
=
466
;
mnc
=
92
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
; }) });
nr_cellid
=
12345678
L
;
nr_cellid
=
12345678
L
;
...
@@ -161,7 +161,7 @@ gNBs =
...
@@ -161,7 +161,7 @@ gNBs =
//////////
AMF
parameters
:
//////////
AMF
parameters
:
amf_ip_address
= ( {
ipv4
=
"1
92.168
.200.14"
;
amf_ip_address
= ( {
ipv4
=
"1
72.11
.200.14"
;
ipv6
=
"192:168:30::17"
;
ipv6
=
"192:168:30::17"
;
active
=
"yes"
;
active
=
"yes"
;
preference
=
"ipv4"
;
preference
=
"ipv4"
;
...
@@ -171,10 +171,10 @@ gNBs =
...
@@ -171,10 +171,10 @@ gNBs =
NETWORK_INTERFACES
:
NETWORK_INTERFACES
:
{
{
GNB_INTERFACE_NAME_FOR_NG_AMF
=
"
eno4
"
;
GNB_INTERFACE_NAME_FOR_NG_AMF
=
"
docker-openxg
"
;
GNB_IPV4_ADDRESS_FOR_NG_AMF
=
"1
92.168.199.23
1/24"
;
GNB_IPV4_ADDRESS_FOR_NG_AMF
=
"1
72.11.200.
1/24"
;
GNB_INTERFACE_NAME_FOR_NGU
=
"
eno4
"
;
GNB_INTERFACE_NAME_FOR_NGU
=
"
docker-openxg
"
;
GNB_IPV4_ADDRESS_FOR_NGU
=
"1
92.168.199.23
1/24"
;
GNB_IPV4_ADDRESS_FOR_NGU
=
"1
72.11.200.
1/24"
;
GNB_PORT_FOR_S1U
=
2152
;
# Spec 2152
GNB_PORT_FOR_S1U
=
2152
;
# Spec 2152
};
};
...
...
targets/PROJECTS/GENERIC-NR-5GC/CONF/ue.conf
View file @
1fd46862
# uicc0 = {
# uicc0 = {
# imsi = "
2089900007487
";
# imsi = "
466920000000001
";
# key = "fec86ba6eb707ed08905757b1bb44b8f";
# key = "fec86ba6eb707ed08905757b1bb44b8f";
# opc= "1006020f0a478bf6b699f15c062e42b3";//"C42449363BBAD02B66D16BC975D77CC1";
# opc= "1006020f0a478bf6b699f15c062e42b3";//"C42449363BBAD02B66D16BC975D77CC1";
# dnn= "oai";
# dnn= "oai";
...
@@ -13,4 +13,4 @@ opc= "000102030405060708090a0b0c0d0e0f";
...
@@ -13,4 +13,4 @@ opc= "000102030405060708090a0b0c0d0e0f";
dnn
=
"internet"
;
dnn
=
"internet"
;
nssai_sst
=
1
;
nssai_sst
=
1
;
nssai_sd
=
0
;
nssai_sd
=
0
;
}
}
\ No newline at end of file
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