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
zzha zzha
OpenXG-RAN
Commits
9df2b440
Commit
9df2b440
authored
Dec 08, 2022
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/optimize_lte_tx_tm2' into integration_2022_wk49
parents
3d4b0ac5
c8c158e0
Changes
6
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
1200 additions
and
87 deletions
+1200
-87
openair1/PHY/INIT/lte_init.c
openair1/PHY/INIT/lte_init.c
+2
-0
openair1/PHY/LTE_ESTIMATION/lte_eNB_measurements.c
openair1/PHY/LTE_ESTIMATION/lte_eNB_measurements.c
+1
-1
openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
+1183
-82
openair1/PHY/LTE_TRANSPORT/power_control.c
openair1/PHY/LTE_TRANSPORT/power_control.c
+8
-4
openair1/PHY/LTE_TRANSPORT/transport_eNB.h
openair1/PHY/LTE_TRANSPORT/transport_eNB.h
+4
-0
openair1/PHY/LTE_TRANSPORT/transport_proto.h
openair1/PHY/LTE_TRANSPORT/transport_proto.h
+2
-0
No files found.
openair1/PHY/INIT/lte_init.c
View file @
9df2b440
...
@@ -535,6 +535,8 @@ int phy_init_lte_eNB(PHY_VARS_eNB *eNB,
...
@@ -535,6 +535,8 @@ int phy_init_lte_eNB(PHY_VARS_eNB *eNB,
}
}
eNB
->
pdsch_config_dedicated
->
p_a
=
dB0
;
//defaul value until overwritten by RRCConnectionReconfiguration
eNB
->
pdsch_config_dedicated
->
p_a
=
dB0
;
//defaul value until overwritten by RRCConnectionReconfiguration
init_modulation_LUTs
();
return
(
0
);
return
(
0
);
}
}
...
...
openair1/PHY/LTE_ESTIMATION/lte_eNB_measurements.c
View file @
9df2b440
...
@@ -107,7 +107,7 @@ void lte_eNB_I0_measurements(PHY_VARS_eNB *eNB,
...
@@ -107,7 +107,7 @@ void lte_eNB_I0_measurements(PHY_VARS_eNB *eNB,
n0_power_tot
=
0
;
n0_power_tot
=
0
;
int
offset0
=
(
frame_parms
->
first_carrier_offset
+
(
rb
*
12
))
%
frame_parms
->
ofdm_symbol_size
;
int
offset0
=
(
frame_parms
->
first_carrier_offset
+
(
rb
*
12
))
%
frame_parms
->
ofdm_symbol_size
;
if
((
rb_mask
[
rb
>>
5
]
&
(
1
<<
(
rb
&
31
)))
==
0
)
{
// check that rb was not used in this subframe
if
((
rb_mask
[
rb
>>
5
]
&
(
1
U
<<
(
rb
&
31
)))
==
0
)
{
// check that rb was not used in this subframe
nb_rb
++
;
nb_rb
++
;
for
(
aarx
=
0
;
aarx
<
frame_parms
->
nb_antennas_rx
;
aarx
++
)
{
for
(
aarx
=
0
;
aarx
<
frame_parms
->
nb_antennas_rx
;
aarx
++
)
{
measurements
->
n0_subband_power
[
aarx
][
rb
]
=
0
;
measurements
->
n0_subband_power
[
aarx
][
rb
]
=
0
;
...
...
openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
View file @
9df2b440
This diff is collapsed.
Click to expand it.
openair1/PHY/LTE_TRANSPORT/power_control.c
View file @
9df2b440
...
@@ -56,8 +56,10 @@ double computeRhoA_eNB(uint8_t pa,
...
@@ -56,8 +56,10 @@ double computeRhoA_eNB(uint8_t pa,
sqrt_rho_a_lin
=
pow
(
10
,(
0
.
05
*
rho_a_dB
));
sqrt_rho_a_lin
=
pow
(
10
,(
0
.
05
*
rho_a_dB
));
if
(
dlsch_eNB
)
{
dlsch_eNB
->
sqrt_rho_a
=
(
short
)
(
sqrt_rho_a_lin
*
pow
(
2
,
13
));
dlsch_eNB
->
sqrt_rho_a
=
(
short
)
(
sqrt_rho_a_lin
*
pow
(
2
,
13
));
dlsch_eNB
->
pa
=
pa
;
}
#if DEBUG_PC
#if DEBUG_PC
printf
(
"eNB: p_a=%d, value=%f, sqrt_rho_a=%d
\n
"
,
p_a
,
pa_values
[
pdsch_config_dedicated
->
p_a
],
dlsch_eNB
->
sqrt_rho_a
);
printf
(
"eNB: p_a=%d, value=%f, sqrt_rho_a=%d
\n
"
,
p_a
,
pa_values
[
pdsch_config_dedicated
->
p_a
],
dlsch_eNB
->
sqrt_rho_a
);
#endif
#endif
...
@@ -86,8 +88,10 @@ double computeRhoB_eNB(uint8_t pa,
...
@@ -86,8 +88,10 @@ double computeRhoB_eNB(uint8_t pa,
sqrt_rho_b_lin
=
pow
(
10
,(
0
.
05
*
rho_b_dB
));
sqrt_rho_b_lin
=
pow
(
10
,(
0
.
05
*
rho_b_dB
));
if
(
dlsch_eNB
)
{
dlsch_eNB
->
sqrt_rho_b
=
(
short
)
(
sqrt_rho_b_lin
*
pow
(
2
,
13
));
dlsch_eNB
->
sqrt_rho_b
=
(
short
)
(
sqrt_rho_b_lin
*
pow
(
2
,
13
));
dlsch_eNB
->
pb
=
pb
;
}
#ifdef DEBUG_PC
#ifdef DEBUG_PC
printf
(
"eNB: n_ant=%d, p_b=%d -> rho_b/rho_a=%f -> sqrt_rho_b=%d
\n
"
,
n_antenna_port
,
pb
,
ratioPB
[
1
][
pb
],
dlsch_eNB
->
sqrt_rho_b
);
printf
(
"eNB: n_ant=%d, p_b=%d -> rho_b/rho_a=%f -> sqrt_rho_b=%d
\n
"
,
n_antenna_port
,
pb
,
ratioPB
[
1
][
pb
],
dlsch_eNB
->
sqrt_rho_b
);
#endif
#endif
...
...
openair1/PHY/LTE_TRANSPORT/transport_eNB.h
View file @
9df2b440
...
@@ -178,6 +178,10 @@ typedef struct {
...
@@ -178,6 +178,10 @@ typedef struct {
uint8_t
Kmimo
;
uint8_t
Kmimo
;
/// Nsoft parameter related to UE Category
/// Nsoft parameter related to UE Category
uint32_t
Nsoft
;
uint32_t
Nsoft
;
/// current pa value
int
pa
;
/// current pb value
int
pb
;
/// amplitude of PDSCH (compared to RS) in symbols without pilots
/// amplitude of PDSCH (compared to RS) in symbols without pilots
int16_t
sqrt_rho_a
;
int16_t
sqrt_rho_a
;
/// amplitude of PDSCH (compared to RS) in symbols containing pilots
/// amplitude of PDSCH (compared to RS) in symbols containing pilots
...
...
openair1/PHY/LTE_TRANSPORT/transport_proto.h
View file @
9df2b440
...
@@ -222,6 +222,8 @@ int32_t dlsch_encoding_2threads(PHY_VARS_eNB *eNB,
...
@@ -222,6 +222,8 @@ int32_t dlsch_encoding_2threads(PHY_VARS_eNB *eNB,
\param frame_parms Frame parameter descriptor
\param frame_parms Frame parameter descriptor
*/
*/
void
init_modulation_LUTs
(
void
);
int32_t
allocate_REs_in_RB
(
PHY_VARS_eNB
*
phy_vars_eNB
,
int32_t
allocate_REs_in_RB
(
PHY_VARS_eNB
*
phy_vars_eNB
,
int32_t
**
txdataF
,
int32_t
**
txdataF
,
uint32_t
*
jj
,
uint32_t
*
jj
,
...
...
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