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
47e8a242
Commit
47e8a242
authored
Jun 15, 2021
by
Sakthivel Velumani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed bug in beam index
parent
b50bc863
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
10 additions
and
2 deletions
+10
-2
openair1/PHY/NR_TRANSPORT/nr_dlsch.c
openair1/PHY/NR_TRANSPORT/nr_dlsch.c
+1
-1
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
+7
-0
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
+2
-1
No files found.
openair1/PHY/NR_TRANSPORT/nr_dlsch.c
View file @
47e8a242
...
@@ -559,7 +559,7 @@ void nr_generate_pdsch(processingData_L1tx_t *msgTx,
...
@@ -559,7 +559,7 @@ void nr_generate_pdsch(processingData_L1tx_t *msgTx,
gNB
->
common_vars
.
beam_id
[
0
][
slot
*
frame_parms
->
symbols_per_slot
+
j
]
=
rel15
->
precodingAndBeamforming
.
prgs_list
[
0
].
dig_bf_interface_list
[
0
].
beam_idx
;
gNB
->
common_vars
.
beam_id
[
0
][
slot
*
frame_parms
->
symbols_per_slot
+
j
]
=
rel15
->
precodingAndBeamforming
.
prgs_list
[
0
].
dig_bf_interface_list
[
0
].
beam_idx
;
}
}
else
{
else
{
LOG_
D
(
PHY
,
"beam index for PDSCH allocation already taken
\n
"
);
LOG_
W
(
PHY
,
"beam index for PDSCH allocation already taken
\n
"
);
}
}
for
(
int
layer
=
0
;
layer
<
rel15
->
nrOfLayers
;
layer
++
)
for
(
int
layer
=
0
;
layer
<
rel15
->
nrOfLayers
;
layer
++
)
free16
(
txdataF_precoding
[
layer
],
2
*
14
*
frame_parms
->
ofdm_symbol_size
);
free16
(
txdataF_precoding
[
layer
],
2
*
14
*
frame_parms
->
ofdm_symbol_size
);
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
View file @
47e8a242
...
@@ -1286,6 +1286,11 @@ void nr_generate_Msg2(module_id_t module_idP, int CC_id, frame_t frameP, sub_fra
...
@@ -1286,6 +1286,11 @@ void nr_generate_Msg2(module_id_t module_idP, int CC_id, frame_t frameP, sub_fra
startSymbolIndex
,
startSymbolIndex
,
mappingtype
,
mappingtype
,
1
);
1
);
pdsch_pdu_rel15
->
precodingAndBeamforming
.
num_prgs
=
1
;
pdsch_pdu_rel15
->
precodingAndBeamforming
.
prg_size
=
275
;
pdsch_pdu_rel15
->
precodingAndBeamforming
.
dig_bf_interfaces
=
1
;
pdsch_pdu_rel15
->
precodingAndBeamforming
.
prgs_list
[
0
].
pm_idx
=
0
;
pdsch_pdu_rel15
->
precodingAndBeamforming
.
prgs_list
[
0
].
dig_bf_interface_list
[
0
].
beam_idx
=
ra
->
beam_id
;
uint8_t
tb_scaling
=
0
;
uint8_t
tb_scaling
=
0
;
int
R
,
Qm
;
int
R
,
Qm
;
...
@@ -1337,6 +1342,7 @@ void nr_generate_Msg2(module_id_t module_idP, int CC_id, frame_t frameP, sub_fra
...
@@ -1337,6 +1342,7 @@ void nr_generate_Msg2(module_id_t module_idP, int CC_id, frame_t frameP, sub_fra
dci_pdu
->
CceIndex
=
CCEIndex
;
dci_pdu
->
CceIndex
=
CCEIndex
;
dci_pdu
->
beta_PDCCH_1_0
=
0
;
dci_pdu
->
beta_PDCCH_1_0
=
0
;
dci_pdu
->
powerControlOffsetSS
=
1
;
dci_pdu
->
powerControlOffsetSS
=
1
;
dci_pdu
->
precodingAndBeamforming
=
pdsch_pdu_rel15
->
precodingAndBeamforming
;
dci_pdu_rel15_t
dci_payload
;
dci_pdu_rel15_t
dci_payload
;
dci_payload
.
frequency_domain_assignment
.
val
=
PRBalloc_to_locationandbandwidth0
(
pdsch_pdu_rel15
->
rbSize
,
dci_payload
.
frequency_domain_assignment
.
val
=
PRBalloc_to_locationandbandwidth0
(
pdsch_pdu_rel15
->
rbSize
,
...
@@ -1726,6 +1732,7 @@ void nr_generate_Msg4(module_id_t module_idP, int CC_id, frame_t frameP, sub_fra
...
@@ -1726,6 +1732,7 @@ void nr_generate_Msg4(module_id_t module_idP, int CC_id, frame_t frameP, sub_fra
dci_pdu
->
CceIndex
=
CCEIndex
;
dci_pdu
->
CceIndex
=
CCEIndex
;
dci_pdu
->
beta_PDCCH_1_0
=
0
;
dci_pdu
->
beta_PDCCH_1_0
=
0
;
dci_pdu
->
powerControlOffsetSS
=
1
;
dci_pdu
->
powerControlOffsetSS
=
1
;
dci_pdu
->
precodingAndBeamforming
=
pdsch_pdu_rel15
->
precodingAndBeamforming
;
dci_pdu_rel15_t
dci_payload
;
dci_pdu_rel15_t
dci_payload
;
dci_payload
.
frequency_domain_assignment
.
val
=
PRBalloc_to_locationandbandwidth0
(
pdsch_pdu_rel15
->
rbSize
,
dci_payload
.
frequency_domain_assignment
.
val
=
PRBalloc_to_locationandbandwidth0
(
pdsch_pdu_rel15
->
rbSize
,
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
View file @
47e8a242
...
@@ -94,6 +94,7 @@ void schedule_ssb(frame_t frame, sub_frame_t slot,
...
@@ -94,6 +94,7 @@ void schedule_ssb(frame_t frame, sub_frame_t slot,
void
schedule_nr_mib
(
module_id_t
module_idP
,
frame_t
frameP
,
sub_frame_t
slotP
)
{
void
schedule_nr_mib
(
module_id_t
module_idP
,
frame_t
frameP
,
sub_frame_t
slotP
)
{
gNB_MAC_INST
*
gNB
=
RC
.
nrmac
[
module_idP
];
gNB_MAC_INST
*
gNB
=
RC
.
nrmac
[
module_idP
];
nfapi_nr_config_request_scf_t
*
cfg
=
&
gNB
->
config
[
0
];
NR_COMMON_channels_t
*
cc
;
NR_COMMON_channels_t
*
cc
;
nfapi_nr_dl_tti_request_t
*
dl_tti_request
;
nfapi_nr_dl_tti_request_t
*
dl_tti_request
;
nfapi_nr_dl_tti_request_body_t
*
dl_req
;
nfapi_nr_dl_tti_request_body_t
*
dl_req
;
...
@@ -228,7 +229,7 @@ void schedule_nr_mib(module_id_t module_idP, frame_t frameP, sub_frame_t slotP)
...
@@ -228,7 +229,7 @@ void schedule_nr_mib(module_id_t module_idP, frame_t frameP, sub_frame_t slotP)
// FR2 is only TDD, to be fixed for flexible TDD
// FR2 is only TDD, to be fixed for flexible TDD
const
int
nr_slots_period
=
tdd
?
n_slots_frame
/
get_nb_periods_per_frame
(
scc
->
tdd_UL_DL_ConfigurationCommon
->
pattern1
.
dl_UL_TransmissionPeriodicity
)
:
n_slots_frame
;
const
int
nr_slots_period
=
tdd
?
n_slots_frame
/
get_nb_periods_per_frame
(
scc
->
tdd_UL_DL_ConfigurationCommon
->
pattern1
.
dl_UL_TransmissionPeriodicity
)
:
n_slots_frame
;
num_tdd_period
=
rel_slot
/
nr_slots_period
;
num_tdd_period
=
rel_slot
/
nr_slots_period
;
gNB
->
tdd_beam_association
[
num_tdd_period
]
=
i_ssb
;
gNB
->
tdd_beam_association
[
num_tdd_period
]
=
cfg
->
ssb_table
.
ssb_beam_id_list
[
i_ssb
].
beam_id
.
value
;
num_ssb
++
;
num_ssb
++
;
AssertFatal
(
num_ssb
<
2
,
"beamforming currently not supported for more than one SSB per slot
\n
"
);
AssertFatal
(
num_ssb
<
2
,
"beamforming currently not supported for more than one SSB per slot
\n
"
);
if
(
get_softmodem_params
()
->
sa
==
1
)
{
if
(
get_softmodem_params
()
->
sa
==
1
)
{
...
...
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