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
littleBu
OpenXG-RAN
Commits
f2974b43
Commit
f2974b43
authored
May 03, 2022
by
Roberto Louro Magueta
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Revert transformPrecoder to transform_precoding
parent
7aa3bfaa
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
36 additions
and
36 deletions
+36
-36
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_interface.h
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_interface.h
+1
-1
nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface_scf.h
nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface_scf.h
+1
-1
nfapi/open-nFAPI/nfapi/src/nfapi_p7.c
nfapi/open-nFAPI/nfapi/src/nfapi_p7.c
+2
-2
openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c
openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c
+1
-1
openair1/PHY/NR_TRANSPORT/nr_ulsch_demodulation.c
openair1/PHY/NR_TRANSPORT/nr_ulsch_demodulation.c
+1
-1
openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
+5
-5
openair1/SIMULATION/NR_PHY/ulsim.c
openair1/SIMULATION/NR_PHY/ulsim.c
+8
-8
openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c
openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c
+8
-8
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
+2
-2
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
+3
-3
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
+3
-3
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
+1
-1
No files found.
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_interface.h
View file @
f2974b43
...
...
@@ -305,7 +305,7 @@ typedef struct
uint8_t
qam_mod_order
;
uint8_t
mcs_index
;
uint8_t
mcs_table
;
uint8_t
transform
Precoder
;
uint8_t
transform
_precoding
;
uint16_t
data_scrambling_id
;
uint8_t
nrOfLayers
;
uint8_t
Tpmi
;
...
...
nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface_scf.h
View file @
f2974b43
...
...
@@ -1210,7 +1210,7 @@ typedef struct
uint8_t
qam_mod_order
;
uint8_t
mcs_index
;
uint8_t
mcs_table
;
uint8_t
transform
Precoder
;
uint8_t
transform
_precoding
;
uint16_t
data_scrambling_id
;
uint8_t
nrOfLayers
;
//DMRS
...
...
nfapi/open-nFAPI/nfapi/src/nfapi_p7.c
View file @
f2974b43
...
...
@@ -947,7 +947,7 @@ static uint8_t pack_ul_tti_request_pusch_pdu(nfapi_nr_pusch_pdu_t *pusch_pdu, ui
push8
(
pusch_pdu
->
qam_mod_order
,
ppWritePackedMsg
,
end
)
&&
push8
(
pusch_pdu
->
mcs_index
,
ppWritePackedMsg
,
end
)
&&
push8
(
pusch_pdu
->
mcs_table
,
ppWritePackedMsg
,
end
)
&&
push8
(
pusch_pdu
->
transform
Precoder
,
ppWritePackedMsg
,
end
)
&&
push8
(
pusch_pdu
->
transform
_precoding
,
ppWritePackedMsg
,
end
)
&&
push16
(
pusch_pdu
->
data_scrambling_id
,
ppWritePackedMsg
,
end
)
&&
push8
(
pusch_pdu
->
nrOfLayers
,
ppWritePackedMsg
,
end
)
&&
push16
(
pusch_pdu
->
ul_dmrs_symb_pos
,
ppWritePackedMsg
,
end
)
&&
...
...
@@ -4481,7 +4481,7 @@ static uint8_t unpack_ul_tti_request_pusch_pdu(void *tlv, uint8_t **ppReadPacked
pull8
(
ppReadPackedMsg
,
&
pusch_pdu
->
qam_mod_order
,
end
)
&&
pull8
(
ppReadPackedMsg
,
&
pusch_pdu
->
mcs_index
,
end
)
&&
pull8
(
ppReadPackedMsg
,
&
pusch_pdu
->
mcs_table
,
end
)
&&
pull8
(
ppReadPackedMsg
,
&
pusch_pdu
->
transform
Precoder
,
end
)
&&
pull8
(
ppReadPackedMsg
,
&
pusch_pdu
->
transform
_precoding
,
end
)
&&
pull16
(
ppReadPackedMsg
,
&
pusch_pdu
->
data_scrambling_id
,
end
)
&&
pull8
(
ppReadPackedMsg
,
&
pusch_pdu
->
nrOfLayers
,
end
)
&&
pull16
(
ppReadPackedMsg
,
&
pusch_pdu
->
ul_dmrs_symb_pos
,
end
)
&&
...
...
openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c
View file @
f2974b43
...
...
@@ -169,7 +169,7 @@ int nr_pusch_channel_estimation(PHY_VARS_gNB *gNB,
gNB
->
pusch_gold_init
[
pusch_pdu
->
scid
]
=
pusch_pdu
->
ul_dmrs_scrambling_id
;
nr_gold_pusch
(
gNB
,
pusch_pdu
->
scid
,
pusch_pdu
->
ul_dmrs_scrambling_id
);
}
if
(
pusch_pdu
->
transform
Precoder
==
transformPrecoder_disabled
)
{
if
(
pusch_pdu
->
transform
_precoding
==
transformPrecoder_disabled
)
{
nr_pusch_dmrs_rx
(
gNB
,
Ns
,
gNB
->
nr_gold_pusch_dmrs
[
pusch_pdu
->
scid
][
Ns
][
symbol
],
&
pilot
[
0
],
(
1000
+
p
),
0
,
nb_rb_pusch
,
(
pusch_pdu
->
bwp_start
+
pusch_pdu
->
rb_start
)
*
NR_NB_SC_PER_RB
,
pusch_pdu
->
dmrs_config_type
);
}
...
...
openair1/PHY/NR_TRANSPORT/nr_ulsch_demodulation.c
View file @
f2974b43
...
...
@@ -2082,7 +2082,7 @@ int nr_rx_pusch(PHY_VARS_gNB *gNB,
nb_re_pusch
);
stop_meas
(
&
gNB
->
ulsch_mrc_stats
);
if
(
rel15_ul
->
transform
Precoder
==
transformPrecoder_enabled
)
{
if
(
rel15_ul
->
transform
_precoding
==
transformPrecoder_enabled
)
{
#ifdef __AVX2__
// For odd number of resource blocks need byte alignment to multiple of 8
int
nb_re_pusch2
=
nb_re_pusch
+
(
nb_re_pusch
&
7
);
...
...
openair1/PHY/NR_UE_TRANSPORT/nr_ulsch_ue.c
View file @
f2974b43
...
...
@@ -282,7 +282,7 @@ void nr_ue_ulsch_procedures(PHY_VARS_NR_UE *UE,
/// Transform-coded "y"-sequences (for definition see 38-211 V15.3.0 2018-09, subsection 6.3.1.4)
int32_t
y
[
max_num_re
]
__attribute__
((
aligned
(
16
)));
if
(
pusch_pdu
->
transform
Precoder
==
transformPrecoder_enabled
)
{
if
(
pusch_pdu
->
transform
_precoding
==
transformPrecoder_enabled
)
{
uint32_t
nb_re_pusch
=
nb_rb
*
NR_NB_SC_PER_RB
;
uint32_t
y_offset
=
0
;
...
...
@@ -377,7 +377,7 @@ void nr_ue_ulsch_procedures(PHY_VARS_NR_UE *UE,
if
((
ul_dmrs_symb_pos
>>
l
)
&
0x01
)
{
is_dmrs_sym
=
1
;
if
(
pusch_pdu
->
transform
Precoder
==
transformPrecoder_disabled
){
if
(
pusch_pdu
->
transform
_precoding
==
transformPrecoder_disabled
){
if
(
dmrs_type
==
pusch_dmrs_type1
)
dmrs_idx
=
(
pusch_pdu
->
bwp_start
+
start_rb
)
*
6
;
...
...
@@ -393,7 +393,7 @@ void nr_ue_ulsch_procedures(PHY_VARS_NR_UE *UE,
}
}
else
if
(
pusch_pdu
->
pdu_bit_map
&
PUSCH_PDU_BITMAP_PUSCH_PTRS
)
{
AssertFatal
(
pusch_pdu
->
transform
Precoder
==
transformPrecoder_disabled
,
"PTRS NOT SUPPORTED IF TRANSFORM PRECODING IS ENABLED
\n
"
);
AssertFatal
(
pusch_pdu
->
transform
_precoding
==
transformPrecoder_disabled
,
"PTRS NOT SUPPORTED IF TRANSFORM PRECODING IS ENABLED
\n
"
);
if
(
is_ptrs_symbol
(
l
,
ulsch_ue
->
ptrs_symbols
))
{
is_ptrs_sym
=
1
;
...
...
@@ -424,7 +424,7 @@ void nr_ue_ulsch_procedures(PHY_VARS_NR_UE *UE,
if
(
is_dmrs
==
1
)
{
// if transform precoding is enabled
if
(
pusch_pdu
->
transform
Precoder
==
transformPrecoder_enabled
)
{
if
(
pusch_pdu
->
transform
_precoding
==
transformPrecoder_enabled
)
{
((
int16_t
*
)
tx_precoding
[
nl
])[(
sample_offsetF
)
<<
1
]
=
(
Wt
[
l_prime
[
0
]]
*
Wf
[
k_prime
]
*
AMP
*
dmrs_seq
[
2
*
dmrs_idx
])
>>
15
;
((
int16_t
*
)
tx_precoding
[
nl
])[((
sample_offsetF
)
<<
1
)
+
1
]
=
(
Wt
[
l_prime
[
0
]]
*
Wf
[
k_prime
]
*
AMP
*
dmrs_seq
[(
2
*
dmrs_idx
)
+
1
])
>>
15
;
}
else
{
...
...
@@ -448,7 +448,7 @@ void nr_ue_ulsch_procedures(PHY_VARS_NR_UE *UE,
((
int16_t
*
)
tx_precoding
[
nl
])[((
sample_offsetF
)
<<
1
)
+
1
]
=
(
beta_ptrs
*
AMP
*
mod_ptrs
[(
ptrs_idx
<<
1
)
+
1
])
>>
15
;
ptrs_idx
++
;
}
else
if
(
!
is_dmrs_sym
||
allowed_xlsch_re_in_dmrs_symbol
(
k
,
start_sc
,
frame_parms
->
ofdm_symbol_size
,
cdm_grps_no_data
,
dmrs_type
))
{
if
(
pusch_pdu
->
transform
Precoder
==
transformPrecoder_disabled
)
{
if
(
pusch_pdu
->
transform
_precoding
==
transformPrecoder_disabled
)
{
((
int16_t
*
)
tx_precoding
[
nl
])[(
sample_offsetF
)
<<
1
]
=
((
int16_t
*
)
tx_layers
[
nl
])[
m
<<
1
];
((
int16_t
*
)
tx_precoding
[
nl
])[((
sample_offsetF
)
<<
1
)
+
1
]
=
((
int16_t
*
)
tx_layers
[
nl
])[(
m
<<
1
)
+
1
];
}
...
...
openair1/SIMULATION/NR_PHY/ulsim.c
View file @
f2974b43
...
...
@@ -323,7 +323,7 @@ int main(int argc, char **argv)
uint16_t
ptrsSymbPerSlot
=
0
;
uint16_t
ptrsRePerSymb
=
0
;
uint8_t
transform
Precoder
=
transformPrecoder_disabled
;
// 0 - ENABLE, 1 - DISABLE
uint8_t
transform
_precoding
=
transformPrecoder_disabled
;
// 0 - ENABLE, 1 - DISABLE
uint8_t
num_dmrs_cdm_grps_no_data
=
1
;
uint8_t
mcs_table
=
0
;
...
...
@@ -581,10 +581,10 @@ int main(int argc, char **argv)
break
;
case
'Z'
:
transform
Precoder
=
transformPrecoder_enabled
;
transform
_precoding
=
transformPrecoder_enabled
;
num_dmrs_cdm_grps_no_data
=
2
;
mcs_table
=
3
;
printf
(
"NOTE: TRANSFORM PRECODING (SC-FDMA) is ENABLED in UPLINK (0 - ENABLE, 1 - DISABLE) : %d
\n
"
,
transformPrecoder
);
printf
(
"NOTE: TRANSFORM PRECODING (SC-FDMA) is ENABLED in UPLINK (0 - ENABLE, 1 - DISABLE) : %d
\n
"
,
transform_precoding
);
break
;
default:
...
...
@@ -879,7 +879,7 @@ int main(int argc, char **argv)
if
((
UE
->
frame_parms
.
nb_antennas_tx
==
4
)
&&
(
precod_nbr_layers
==
4
))
num_dmrs_cdm_grps_no_data
=
2
;
if
(
transform
Precoder
==
transformPrecoder_enabled
)
{
if
(
transform
_precoding
==
transformPrecoder_enabled
)
{
AssertFatal
(
enable_ptrs
==
0
,
"PTRS NOT SUPPORTED IF TRANSFORM PRECODING IS ENABLED
\n
"
);
...
...
@@ -1084,7 +1084,7 @@ int main(int argc, char **argv)
pusch_pdu
->
mcs_table
=
mcs_table
;
pusch_pdu
->
target_code_rate
=
code_rate
;
pusch_pdu
->
qam_mod_order
=
mod_order
;
pusch_pdu
->
transform
Precoder
=
transformPrecoder
;
pusch_pdu
->
transform
_precoding
=
transform_precoding
;
pusch_pdu
->
data_scrambling_id
=
*
scc
->
physCellId
;
pusch_pdu
->
nrOfLayers
=
precod_nbr_layers
;
pusch_pdu
->
ul_dmrs_symb_pos
=
l_prime_mask
;
...
...
@@ -1111,7 +1111,7 @@ int main(int argc, char **argv)
pusch_pdu
->
pusch_ptrs
.
ptrs_ports_list
[
0
].
ptrs_re_offset
=
0
;
// if transform precoding is enabled
if
(
transform
Precoder
==
transformPrecoder_enabled
)
{
if
(
transform
_precoding
==
transformPrecoder_enabled
)
{
pusch_pdu
->
dfts_ofdm
.
low_papr_group_number
=
*
scc
->
physCellId
%
30
;
// U as defined in 38.211 section 6.4.1.1.1.2
pusch_pdu
->
dfts_ofdm
.
low_papr_sequence_number
=
0
;
// V as defined in 38.211 section 6.4.1.1.1.2
...
...
@@ -1171,10 +1171,10 @@ int main(int argc, char **argv)
ul_config
.
ul_config_list
[
0
].
pusch_config_pdu
.
pusch_ptrs
.
ptrs_ports_list
=
(
nfapi_nr_ue_ptrs_ports_t
*
)
malloc
(
2
*
sizeof
(
nfapi_nr_ue_ptrs_ports_t
));
ul_config
.
ul_config_list
[
0
].
pusch_config_pdu
.
pusch_ptrs
.
ptrs_ports_list
[
0
].
ptrs_re_offset
=
0
;
ul_config
.
ul_config_list
[
0
].
pusch_config_pdu
.
transform
Precoder
=
transformPrecoder
;
ul_config
.
ul_config_list
[
0
].
pusch_config_pdu
.
transform
_precoding
=
transform_precoding
;
// if transform precoding is enabled
if
(
transform
Precoder
==
transformPrecoder_enabled
)
{
if
(
transform
_precoding
==
transformPrecoder_enabled
)
{
ul_config
.
ul_config_list
[
0
].
pusch_config_pdu
.
dfts_ofdm
.
low_papr_group_number
=
*
scc
->
physCellId
%
30
;
// U as defined in 38.211 section 6.4.1.1.1.2
ul_config
.
ul_config_list
[
0
].
pusch_config_pdu
.
dfts_ofdm
.
low_papr_sequence_number
=
0
;
// V as defined in 38.211 section 6.4.1.1.1.2
...
...
openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c
View file @
f2974b43
...
...
@@ -216,7 +216,7 @@ void ul_layers_config(NR_UE_MAC_INST_t * mac, nfapi_nr_ue_pusch_pdu_t *pusch_con
else
transformPrecoder
=
NR_PUSCH_Config__transformPrecoder_disabled
;
}
pusch_config_pdu
->
transform
Precoder
=
transformPrecoder
;
pusch_config_pdu
->
transform
_precoding
=
transformPrecoder
;
/* PRECOD_NBR_LAYERS */
if
((
*
pusch_Config
->
txConfig
==
NR_PUSCH_Config__txConfig_nonCodebook
));
...
...
@@ -656,7 +656,7 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
pusch_config_pdu
->
scid
=
0
;
// Transform precoding according to 6.1.3 UE procedure for applying transform precoding on PUSCH in 38.214
pusch_config_pdu
->
transform
Precoder
=
get_transformPrecoding
(
initialUplinkBWP
,
pusch_Config
,
NULL
,
NULL
,
NR_RNTI_TC
,
0
);
// TBR fix rnti and take out
pusch_config_pdu
->
transform
_precoding
=
get_transformPrecoding
(
initialUplinkBWP
,
pusch_Config
,
NULL
,
NULL
,
NR_RNTI_TC
,
0
);
// TBR fix rnti and take out
// Resource allocation in frequency domain according to 6.1.2.2 in TS 38.214
pusch_config_pdu
->
resource_alloc
=
(
mac
->
cg
)
?
pusch_Config
->
resourceAllocation
:
1
;
...
...
@@ -702,7 +702,7 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
/* Transform precoding */
if
(
rnti_type
!=
NR_RNTI_CS
||
(
rnti_type
==
NR_RNTI_CS
&&
dci
->
ndi
==
1
))
{
pusch_config_pdu
->
transform
Precoder
=
get_transformPrecoding
(
initialUplinkBWP
,
pusch_Config
,
NULL
,
dci_format
,
rnti_type
,
0
);
pusch_config_pdu
->
transform
_precoding
=
get_transformPrecoding
(
initialUplinkBWP
,
pusch_Config
,
NULL
,
dci_format
,
rnti_type
,
0
);
}
/*DCI format-related configuration*/
...
...
@@ -743,7 +743,7 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
/* TRANSFORM PRECODING ------------------------------------------------------------------------------------------*/
if
(
pusch_config_pdu
->
transform
Precoder
==
NR_PUSCH_Config__transformPrecoder_enabled
)
{
if
(
pusch_config_pdu
->
transform
_precoding
==
NR_PUSCH_Config__transformPrecoder_enabled
)
{
pusch_config_pdu
->
num_dmrs_cdm_grps_no_data
=
2
;
...
...
@@ -796,7 +796,7 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
pusch_config_pdu
->
mcs_index
=
dci
->
mcs
;
/* MCS TABLE */
if
(
pusch_config_pdu
->
transform
Precoder
==
NR_PUSCH_Config__transformPrecoder_disabled
)
{
if
(
pusch_config_pdu
->
transform
_precoding
==
NR_PUSCH_Config__transformPrecoder_disabled
)
{
pusch_config_pdu
->
mcs_table
=
get_pusch_mcs_table
(
pusch_Config
?
pusch_Config
->
mcs_Table
:
NULL
,
0
,
*
dci_format
,
rnti_type
,
target_ss
,
false
);
}
else
{
pusch_config_pdu
->
mcs_table
=
get_pusch_mcs_table
(
pusch_Config
?
pusch_Config
->
mcs_TableTransformPrecoder
:
NULL
,
1
,
*
dci_format
,
rnti_type
,
target_ss
,
false
);
...
...
@@ -831,12 +831,12 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
mappingtype
,
add_pos
,
dmrslength
,
pusch_config_pdu
->
start_symbol_index
,
mac
->
scc
?
mac
->
scc
->
dmrs_TypeA_Position
:
mac
->
mib
->
dmrs_TypeA_Position
);
if
(
mac
->
ULbwp
[
0
]
&&
pusch_config_pdu
->
transform
Precoder
==
NR_PUSCH_Config__transformPrecoder_disabled
)
{
if
(
mac
->
ULbwp
[
0
]
&&
pusch_config_pdu
->
transform
_precoding
==
NR_PUSCH_Config__transformPrecoder_disabled
)
{
if
(
*
dci_format
!=
NR_UL_DCI_FORMAT_0_1
)
{
pusch_config_pdu
->
num_dmrs_cdm_grps_no_data
=
1
;
}
}
else
if
(
*
dci_format
==
NR_UL_DCI_FORMAT_0_0
||
(
mac
->
ULbwp
[
0
]
&&
pusch_config_pdu
->
transform
Precoder
==
NR_PUSCH_Config__transformPrecoder_enabled
))
else
if
(
*
dci_format
==
NR_UL_DCI_FORMAT_0_0
||
(
mac
->
ULbwp
[
0
]
&&
pusch_config_pdu
->
transform
_precoding
==
NR_PUSCH_Config__transformPrecoder_enabled
))
pusch_config_pdu
->
num_dmrs_cdm_grps_no_data
=
2
;
// Num PRB Overhead from PUSCH-ServingCellConfig
...
...
@@ -857,7 +857,7 @@ int nr_config_pusch_pdu(NR_UE_MAC_INST_t *mac,
mac
->
ULbwp
[
0
]
->
bwp_Dedicated
->
pusch_Config
->
choice
.
setup
&&
mac
->
ULbwp
[
0
]
->
bwp_Dedicated
->
pusch_Config
->
choice
.
setup
->
dmrs_UplinkForPUSCH_MappingTypeB
&&
mac
->
ULbwp
[
0
]
->
bwp_Dedicated
->
pusch_Config
->
choice
.
setup
->
dmrs_UplinkForPUSCH_MappingTypeB
->
choice
.
setup
->
phaseTrackingRS
)
{
if
(
pusch_config_pdu
->
transform
Precoder
==
NR_PUSCH_Config__transformPrecoder_disabled
)
{
if
(
pusch_config_pdu
->
transform
_precoding
==
NR_PUSCH_Config__transformPrecoder_disabled
)
{
nfapi_nr_ue_ptrs_ports_t
ptrs_ports_list
;
pusch_config_pdu
->
pusch_ptrs
.
ptrs_ports_list
=
&
ptrs_ports_list
;
valid_ptrs_setup
=
set_ul_ptrs_values
(
mac
->
ULbwp
[
0
]
->
bwp_Dedicated
->
pusch_Config
->
choice
.
setup
->
dmrs_UplinkForPUSCH_MappingTypeB
->
choice
.
setup
->
phaseTrackingRS
->
choice
.
setup
,
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
View file @
f2974b43
...
...
@@ -1058,9 +1058,9 @@ void fill_msg3_pusch_pdu(nfapi_nr_pusch_pdu_t *pusch_pdu,
pusch_pdu
->
cyclic_prefix
=
0
;
pusch_pdu
->
mcs_table
=
0
;
if
(
scc
->
uplinkConfigCommon
->
initialUplinkBWP
->
rach_ConfigCommon
->
choice
.
setup
->
msg3_transformPrecoder
==
NULL
)
pusch_pdu
->
transform
Precoder
=
1
;
pusch_pdu
->
transform
_precoding
=
1
;
else
pusch_pdu
->
transform
Precoder
=
0
;
pusch_pdu
->
transform
_precoding
=
0
;
pusch_pdu
->
data_scrambling_id
=
*
scc
->
physCellId
;
pusch_pdu
->
nrOfLayers
=
1
;
pusch_pdu
->
ul_dmrs_symb_pos
=
get_l_prime
(
nr_of_symbols
,
mappingtype
,
pusch_dmrs_pos2
,
pusch_len1
,
start_symbol_index
,
scc
->
dmrs_TypeA_Position
);
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_primitives.c
View file @
f2974b43
...
...
@@ -687,11 +687,11 @@ void nr_set_pusch_semi_static(const NR_SIB1_t *sib1,
ps
->
pusch_Config
=
ubwp
&&
ubwp
->
bwp_Dedicated
&&
ubwp
->
bwp_Dedicated
->
pusch_Config
?
ubwp
->
bwp_Dedicated
->
pusch_Config
->
choice
.
setup
:
(
ubwpd
?
ubwpd
->
pusch_Config
->
choice
.
setup
:
NULL
);
if
(
ps
->
pusch_Config
==
NULL
||
!
ps
->
pusch_Config
->
transformPrecoder
)
ps
->
transform
Precoder
=
!
scc
->
uplinkConfigCommon
->
initialUplinkBWP
->
rach_ConfigCommon
->
choice
.
setup
->
msg3_transformPrecoder
;
ps
->
transform
_precoding
=
!
scc
->
uplinkConfigCommon
->
initialUplinkBWP
->
rach_ConfigCommon
->
choice
.
setup
->
msg3_transformPrecoder
;
else
ps
->
transform
Precoder
=
*
ps
->
pusch_Config
->
transformPrecoder
;
ps
->
transform
_precoding
=
*
ps
->
pusch_Config
->
transformPrecoder
;
const
int
target_ss
=
NR_SearchSpace__searchSpaceType_PR_ue_Specific
;
if
(
ps
->
transform
Precoder
)
if
(
ps
->
transform
_precoding
)
ps
->
mcs_table
=
get_pusch_mcs_table
(
ps
->
pusch_Config
?
ps
->
pusch_Config
->
mcs_Table
:
NULL
,
0
,
ps
->
dci_format
,
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_ulsch.c
View file @
f2974b43
...
...
@@ -1794,7 +1794,7 @@ void nr_schedule_ulsch(module_id_t module_id, frame_t frame, sub_frame_t slot)
pusch_pdu
->
qam_mod_order
=
sched_pusch
->
Qm
;
pusch_pdu
->
mcs_index
=
sched_pusch
->
mcs
;
pusch_pdu
->
mcs_table
=
ps
->
mcs_table
;
pusch_pdu
->
transform
Precoder
=
ps
->
transformPrecoder
;
pusch_pdu
->
transform
_precoding
=
ps
->
transform_precoding
;
if
(
ps
->
pusch_Config
&&
ps
->
pusch_Config
->
dataScramblingIdentityPUSCH
)
pusch_pdu
->
data_scrambling_id
=
*
ps
->
pusch_Config
->
dataScramblingIdentityPUSCH
;
else
...
...
@@ -1805,7 +1805,7 @@ void nr_schedule_ulsch(module_id_t module_id, frame_t frame, sub_frame_t slot)
/* FAPI: DMRS */
pusch_pdu
->
ul_dmrs_symb_pos
=
ps
->
ul_dmrs_symb_pos
;
pusch_pdu
->
dmrs_config_type
=
ps
->
dmrs_config_type
;
if
(
pusch_pdu
->
transform
Precoder
)
{
// transform precoding disabled
if
(
pusch_pdu
->
transform
_precoding
)
{
// transform precoding disabled
long
*
scramblingid
=
NULL
;
if
(
ps
->
NR_DMRS_UplinkConfig
&&
pusch_pdu
->
scid
==
0
)
scramblingid
=
ps
->
NR_DMRS_UplinkConfig
->
transformPrecodingDisabled
->
scramblingID0
;
...
...
@@ -1852,7 +1852,7 @@ void nr_schedule_ulsch(module_id_t module_id, frame_t frame, sub_frame_t slot)
LOG_D
(
NR_MAC
,
"PUSCH PDU : data_scrambling_identity %x, dmrs_scrambling_id %x
\n
"
,
pusch_pdu
->
data_scrambling_id
,
pusch_pdu
->
ul_dmrs_scrambling_id
);
/* TRANSFORM PRECODING --------------------------------------------------------*/
if
(
pusch_pdu
->
transform
Precoder
==
NR_PUSCH_Config__transformPrecoder_enabled
){
if
(
pusch_pdu
->
transform
_precoding
==
NR_PUSCH_Config__transformPrecoder_enabled
){
// U as specified in section 6.4.1.1.1.2 in 38.211, if sequence hopping and group hopping are disabled
pusch_pdu
->
dfts_ofdm
.
low_papr_group_number
=
pusch_pdu
->
pusch_identity
%
30
;
...
...
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
View file @
f2974b43
...
...
@@ -350,7 +350,7 @@ typedef struct NR_pusch_semi_static_t {
int
nrOfSymbols
;
NR_PUSCH_Config_t
*
pusch_Config
;
uint8_t
transform
Precoder
;
uint8_t
transform
_precoding
;
uint8_t
mcs_table
;
long
mapping_type
;
...
...
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