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
bdf5d26b
Commit
bdf5d26b
authored
Dec 15, 2021
by
francescomani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
changing the name of a function
parent
20c30c46
Changes
6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
38 additions
and
38 deletions
+38
-38
common/utils/nr/nr_common.c
common/utils/nr/nr_common.c
+2
-2
common/utils/nr/nr_common.h
common/utils/nr/nr_common.h
+1
-1
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
+4
-4
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
+3
-3
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
+10
-10
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
+18
-18
No files found.
common/utils/nr/nr_common.c
View file @
bdf5d26b
...
...
@@ -473,8 +473,8 @@ int get_subband_size(int NPRB,int size) {
}
// from start symbol index and nb or symbols to symbol occupation bitmap in a slot
uint16_t
startandlength_to_bitmat
(
int
startSymbolIndex
,
int
nrOfSymbols
)
{
return
((
(
1
<<
nrOfSymbols
)
-
1
)
<<
startSymbolIndex
)
;
uint16_t
SL_to_bitmap
(
int
startSymbolIndex
,
int
nrOfSymbols
)
{
return
((
1
<<
nrOfSymbols
)
-
1
)
<<
startSymbolIndex
;
}
void
SLIV2SL
(
int
SLIV
,
int
*
S
,
int
*
L
)
{
...
...
common/utils/nr/nr_common.h
View file @
bdf5d26b
...
...
@@ -71,7 +71,7 @@ uint32_t nr_get_code_rate(uint8_t Imcs, uint8_t table_idx);
int
get_subband_size
(
int
NPRB
,
int
size
);
void
SLIV2SL
(
int
SLIV
,
int
*
S
,
int
*
L
);
int
get_dmrs_port
(
int
nl
,
uint16_t
dmrs_ports
);
uint16_t
startandlength_to_bitmat
(
int
startSymbolIndex
,
int
nrOfSymbols
);
uint16_t
SL_to_bitmap
(
int
startSymbolIndex
,
int
nrOfSymbols
);
#define CEILIDIV(a,b) ((a+b-1)/b)
#define ROUNDIDIV(a,b) (((a<<1)+b)/(b<<1))
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
View file @
bdf5d26b
...
...
@@ -1180,7 +1180,7 @@ void nr_generate_Msg2(module_id_t module_idP, int CC_id, frame_t frameP, sub_fra
uint16_t
*
vrb_map
=
cc
[
CC_id
].
vrb_map
;
for
(
int
i
=
0
;
(
i
<
rbSize
)
&&
(
rbStart
<=
(
BWPSize
-
rbSize
));
i
++
)
{
if
(
vrb_map
[
BWPStart
+
rbStart
+
i
]
&
startandlength_to_bitmat
(
startSymbolIndex
,
nrOfSymbols
))
{
if
(
vrb_map
[
BWPStart
+
rbStart
+
i
]
&
SL_to_bitmap
(
startSymbolIndex
,
nrOfSymbols
))
{
rbStart
+=
i
;
i
=
0
;
}
...
...
@@ -1401,7 +1401,7 @@ void nr_generate_Msg2(module_id_t module_idP, int CC_id, frame_t frameP, sub_fra
CCEIndex
,
aggregation_level
);
for
(
int
rb
=
0
;
rb
<
rbSize
;
rb
++
)
{
vrb_map
[
BWPStart
+
rb
+
rbStart
]
|=
startandlength_to_bitmat
(
startSymbolIndex
,
nrOfSymbols
);
vrb_map
[
BWPStart
+
rb
+
rbStart
]
|=
SL_to_bitmap
(
startSymbolIndex
,
nrOfSymbols
);
}
ra
->
state
=
WAIT_Msg3
;
...
...
@@ -1609,7 +1609,7 @@ void nr_generate_Msg4(module_id_t module_idP, int CC_id, frame_t frameP, sub_fra
int
i
=
0
;
while
((
i
<
rbSize
)
&&
(
rbStart
+
rbSize
<=
BWPSize
))
{
if
(
vrb_map
[
BWPStart
+
rbStart
+
i
]
&
startandlength_to_bitmat
(
startSymbolIndex
,
nrOfSymbols
))
{
if
(
vrb_map
[
BWPStart
+
rbStart
+
i
]
&
SL_to_bitmap
(
startSymbolIndex
,
nrOfSymbols
))
{
rbStart
+=
i
+
1
;
i
=
0
;
}
else
{
...
...
@@ -1790,7 +1790,7 @@ void nr_generate_Msg4(module_id_t module_idP, int CC_id, frame_t frameP, sub_fra
CCEIndex
,
aggregation_level
);
for
(
int
rb
=
0
;
rb
<
pdsch_pdu_rel15
->
rbSize
;
rb
++
)
{
vrb_map
[
BWPStart
+
rb
+
pdsch_pdu_rel15
->
rbStart
]
|=
startandlength_to_bitmat
(
startSymbolIndex
,
nrOfSymbols
);
vrb_map
[
BWPStart
+
rb
+
pdsch_pdu_rel15
->
rbStart
]
|=
SL_to_bitmap
(
startSymbolIndex
,
nrOfSymbols
);
}
LOG_D
(
NR_MAC
,
"BWPSize: %i
\n
"
,
pdcch_pdu_rel15
->
BWPSize
);
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
View file @
bdf5d26b
...
...
@@ -314,7 +314,7 @@ void fill_ssb_vrb_map (NR_COMMON_channels_t *cc, int rbStart, uint16_t symStart
uint16_t
*
vrb_map
=
cc
[
CC_id
].
vrb_map
;
for
(
int
rb
=
0
;
rb
<
20
;
rb
++
)
vrb_map
[
rbStart
+
rb
]
=
startandlength_to_bitmat
(
symStart
,
4
);
vrb_map
[
rbStart
+
rb
]
=
SL_to_bitmap
(
symStart
,
4
);
}
...
...
@@ -392,7 +392,7 @@ uint32_t schedule_control_sib1(module_id_t module_id,
int
rbSize
=
0
;
uint32_t
TBS
=
0
;
do
{
if
(
rbSize
<
bwpSize
&&
!
(
vrb_map
[
rbStart
+
rbSize
]
&
startandlength_to_bitmat
(
startSymbolIndex
,
nrOfSymbols
)))
if
(
rbSize
<
bwpSize
&&
!
(
vrb_map
[
rbStart
+
rbSize
]
&
SL_to_bitmap
(
startSymbolIndex
,
nrOfSymbols
)))
rbSize
++
;
else
{
if
(
gNB_mac
->
sched_ctrlCommon
->
sched_pdsch
.
mcs
<
10
)
...
...
@@ -426,7 +426,7 @@ uint32_t schedule_control_sib1(module_id_t module_id,
gNB_mac
->
sched_ctrlCommon
->
cce_index
,
gNB_mac
->
sched_ctrlCommon
->
aggregation_level
);
for
(
int
rb
=
0
;
rb
<
gNB_mac
->
sched_ctrlCommon
->
sched_pdsch
.
rbSize
;
rb
++
)
{
vrb_map
[
rb
+
rbStart
]
=
startandlength_to_bitmat
(
startSymbolIndex
,
nrOfSymbols
);
vrb_map
[
rb
+
rbStart
]
=
SL_to_bitmap
(
startSymbolIndex
,
nrOfSymbols
);
}
return
TBS
;
}
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
View file @
bdf5d26b
...
...
@@ -562,14 +562,14 @@ bool allocate_dl_retransmission(module_id_t module_id,
rbStart
+=
rbSize
;
/* last iteration rbSize was not enough, skip it */
rbSize
=
0
;
while
(
rbStart
<
bwpSize
&&
!
(
rballoc_mask
[
rbStart
]
&
startandlength_to_bitmat
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
)))
!
(
rballoc_mask
[
rbStart
]
&
SL_to_bitmap
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
)))
rbStart
++
;
if
(
rbStart
>=
bwpSize
)
{
LOG_D
(
NR_MAC
,
"cannot allocate retransmission for UE %d/RNTI %04x: no resources
\n
"
,
UE_id
,
UE_info
->
rnti
[
UE_id
]);
return
false
;
}
while
(
rbStart
+
rbSize
<
bwpSize
&&
(
rballoc_mask
[
rbStart
+
rbSize
]
&
startandlength_to_bitmat
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
))
&&
(
rballoc_mask
[
rbStart
+
rbSize
]
&
SL_to_bitmap
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
))
&&
rbSize
<
retInfo
->
rbSize
)
rbSize
++
;
}
...
...
@@ -584,10 +584,10 @@ bool allocate_dl_retransmission(module_id_t module_id,
temp_ps
.
nrOfLayers
=
1
;
nr_set_pdsch_semi_static
(
scc
,
cg
,
sched_ctrl
->
active_bwp
,
bwpd
,
tda
,
f
,
&
temp_ps
);
while
(
rbStart
<
bwpSize
&&
!
(
rballoc_mask
[
rbStart
]
&
startandlength_to_bitmat
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
)))
!
(
rballoc_mask
[
rbStart
]
&
SL_to_bitmap
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
)))
rbStart
++
;
while
(
rbStart
+
rbSize
<
bwpSize
&&
(
rballoc_mask
[
rbStart
+
rbSize
]
&
startandlength_to_bitmat
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
)))
(
rballoc_mask
[
rbStart
+
rbSize
]
&
SL_to_bitmap
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
)))
rbSize
++
;
uint32_t
new_tbs
;
uint16_t
new_rbSize
;
...
...
@@ -670,7 +670,7 @@ bool allocate_dl_retransmission(module_id_t module_id,
/* retransmissions: directly allocate */
*
n_rb_sched
-=
sched_ctrl
->
sched_pdsch
.
rbSize
;
for
(
int
rb
=
0
;
rb
<
sched_ctrl
->
sched_pdsch
.
rbSize
;
rb
++
)
rballoc_mask
[
rb
+
sched_ctrl
->
sched_pdsch
.
rbStart
]
-=
startandlength_to_bitmat
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
);
rballoc_mask
[
rb
+
sched_ctrl
->
sched_pdsch
.
rbStart
]
-=
SL_to_bitmap
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
);
return
true
;
}
...
...
@@ -832,12 +832,12 @@ void pf_dl(module_id_t module_id,
// Freq-demain allocation
while
(
rbStart
<
bwpSize
&&
!
(
rballoc_mask
[
rbStart
]
&
startandlength_to_bitmat
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
)))
!
(
rballoc_mask
[
rbStart
]
&
SL_to_bitmap
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
)))
rbStart
++
;
uint16_t
max_rbSize
=
1
;
while
(
rbStart
+
max_rbSize
<
bwpSize
&&
(
rballoc_mask
[
rbStart
+
max_rbSize
]
&
startandlength_to_bitmat
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
)))
(
rballoc_mask
[
rbStart
+
max_rbSize
]
&
SL_to_bitmap
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
)))
max_rbSize
++
;
sched_pdsch
->
Qm
=
nr_get_Qm_dl
(
sched_pdsch
->
mcs
,
ps
->
mcsTableIdx
);
...
...
@@ -861,7 +861,7 @@ void pf_dl(module_id_t module_id,
/* transmissions: directly allocate */
n_rb_sched
-=
sched_pdsch
->
rbSize
;
for
(
int
rb
=
0
;
rb
<
sched_pdsch
->
rbSize
;
rb
++
)
rballoc_mask
[
rb
+
sched_pdsch
->
rbStart
]
-=
startandlength_to_bitmat
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
);
rballoc_mask
[
rb
+
sched_pdsch
->
rbStart
]
-=
SL_to_bitmap
(
ps
->
startSymbolIndex
,
ps
->
nrOfSymbols
);
}
}
...
...
@@ -904,8 +904,8 @@ void nr_fr1_dlsch_preprocessor(module_id_t module_id, frame_t frame, sub_frame_t
// if any RB in vrb_map is blocked (1), the current RBG will be 0
rballoc_mask
[
i
]
=
(
~
vrb_map
[
i
+
BWPStart
])
&
0x3fff
;
//bitwise not and 14 symbols
// if all the pdsch symbols are free
if
((
rballoc_mask
[
i
]
&
startandlength_to_bitmat
(
startSymbolIndex
,
nrOfSymbols
))
==
startandlength_to_bitmat
(
startSymbolIndex
,
nrOfSymbols
))
if
((
rballoc_mask
[
i
]
&
SL_to_bitmap
(
startSymbolIndex
,
nrOfSymbols
))
==
SL_to_bitmap
(
startSymbolIndex
,
nrOfSymbols
))
n_rb_sched
++
;
}
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
View file @
bdf5d26b
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