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
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
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
OpenXG
OpenXG-RAN
Commits
b9363eef
Commit
b9363eef
authored
Apr 23, 2019
by
Raymond Knopp
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
insert check on "ru->do_precoding" in RU TX chain for basic behaviour in monolithic eNB case
parent
a64e7eef
Changes
2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
34 additions
and
439 deletions
+34
-439
openair1/PHY/INIT/lte_init.c
openair1/PHY/INIT/lte_init.c
+0
-377
openair1/SCHED/ru_procedures.c
openair1/SCHED/ru_procedures.c
+34
-62
No files found.
openair1/PHY/INIT/lte_init.c
View file @
b9363eef
This diff is collapsed.
Click to expand it.
openair1/SCHED/ru_procedures.c
View file @
b9363eef
...
...
@@ -438,74 +438,46 @@ void feptx_prec(RU_t *ru) {
for
(
aa
=
0
;
aa
<
ru
->
nb_tx
;
aa
++
)
{
memset
(
ru
->
common
.
txdataF_BF
[
aa
],
0
,
sizeof
(
int32_t
)
*
fp
->
ofdm_symbol_size
*
fp
->
symbols_per_tti
);
for
(
p
=
0
;
p
<
NB_ANTENNA_PORTS_ENB
;
p
++
)
{
#ifdef NO_PRECODING
memcpy
((
void
*
)
ru
->
common
.
txdataF_BF
[
aa
],
(
void
*
)
&
eNB
->
common_vars
.
txdataF
[
aa
][
subframe
*
fp
->
symbols_per_tti
*
fp
->
ofdm_symbol_size
],
sizeof
(
int32_t
)
*
fp
->
ofdm_symbol_size
*
fp
->
symbols_per_tti
);
#else
if
(
p
<
fp
->
nb_antenna_ports_eNB
)
{
// For the moment this does nothing different than below, except ignore antenna ports 5,7,8.
for
(
l
=
0
;
l
<
pdcch_vars
->
num_pdcch_symbols
;
l
++
)
beam_precoding
(
eNB
->
common_vars
.
txdataF
,
ru
->
common
.
txdataF_BF
,
subframe
,
fp
,
ru
->
beam_weights
,
l
,
aa
,
p
,
eNB
->
Mod_id
);
}
//if (p<fp->nb_antenna_ports_eNB)
if
(
ru
->
do_precoding
==
0
)
{
if
(
p
==
0
)
memcpy
((
void
*
)
ru
->
common
.
txdataF_BF
[
aa
],
(
void
*
)
&
eNB
->
common_vars
.
txdataF
[
aa
][
subframe
*
fp
->
symbols_per_tti
*
fp
->
ofdm_symbol_size
],
sizeof
(
int32_t
)
*
fp
->
ofdm_symbol_size
*
fp
->
symbols_per_tti
);
}
else
{
if
(
p
<
fp
->
nb_antenna_ports_eNB
)
{
// For the moment this does nothing different than below, except ignore antenna ports 5,7,8.
for
(
l
=
0
;
l
<
pdcch_vars
->
num_pdcch_symbols
;
l
++
)
beam_precoding
(
eNB
->
common_vars
.
txdataF
,
ru
->
common
.
txdataF_BF
,
subframe
,
fp
,
ru
->
beam_weights
,
l
,
aa
,
p
,
eNB
->
Mod_id
);
}
//if (p<fp->nb_antenna_ports_eNB)
// PDSCH region
if
(
p
<
fp
->
nb_antenna_ports_eNB
||
p
==
5
||
p
==
7
||
p
==
8
)
{
for
(
l
=
pdcch_vars
->
num_pdcch_symbols
;
l
<
fp
->
symbols_per_tti
;
l
++
)
{
beam_precoding
(
eNB
->
common_vars
.
txdataF
,
ru
->
common
.
txdataF_BF
,
subframe
,
fp
,
ru
->
beam_weights
,
l
,
aa
,
p
,
eNB
->
Mod_id
);
}
// for (l=pdcch_vars ....)
}
// if (p<fp->nb_antenna_ports_eNB) ...
#endif //NO_PRECODING
if
(
p
<
fp
->
nb_antenna_ports_eNB
||
p
==
5
||
p
==
7
||
p
==
8
)
{
for
(
l
=
pdcch_vars
->
num_pdcch_symbols
;
l
<
fp
->
symbols_per_tti
;
l
++
)
{
beam_precoding
(
eNB
->
common_vars
.
txdataF
,
ru
->
common
.
txdataF_BF
,
subframe
,
fp
,
ru
->
beam_weights
,
l
,
aa
,
p
,
eNB
->
Mod_id
);
}
// for (l=pdcch_vars ....)
}
// if (p<fp->nb_antenna_ports_eNB) ...
}
// ru->do_precoding!=0
}
// for (p=0...)
}
// for (aa=0 ...)
if
(
ru
->
idx
<
2
)
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME
(
VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_RU_FEPTX_PREC
+
ru
->
idx
,
0
);
// VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_RU_FEPTX_PREC+ru->idx,0);
///////////////////////////////////////////////////
/* fdragon
eNB = eNB_list[0];
bw = ru->beam_weights[0];
fp = &eNB->frame_parms;
int nb_antenna_ports=15;
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_RU_FEPTX_PREC+ru->idx , 1);
beam_precoding_one_eNB(eNB->common_vars.txdataF,
ru->common.txdataF_BF,
bw,
subframe,
nb_antenna_ports,
ru->nb_tx,
fp);
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_RU_FEPTX_PREC+ru->idx , 0);
*/
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME
(
VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_RU_FEPTX_PREC
+
ru
->
idx
,
0
);
}
else
{
...
...
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