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
ZhouShuya
OpenXG-RAN
Commits
596736af
Commit
596736af
authored
Apr 24, 2018
by
Raymond Knopp
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
dlsim/ulsim functional. lte-softmodem/lte-uesoftmodem compile.
parent
68b86d5f
Changes
26
Hide whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
248 additions
and
252 deletions
+248
-252
cmake_targets/CMakeLists.txt
cmake_targets/CMakeLists.txt
+1
-1
openair1/PHY/INIT/init_top.c
openair1/PHY/INIT/init_top.c
+38
-0
openair1/PHY/LTE_TRANSPORT/dci_tools_common.c
openair1/PHY/LTE_TRANSPORT/dci_tools_common.c
+44
-0
openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
+0
-77
openair1/PHY/LTE_TRANSPORT/transport_proto.h
openair1/PHY/LTE_TRANSPORT/transport_proto.h
+14
-0
openair1/PHY/defs_eNB.h
openair1/PHY/defs_eNB.h
+3
-1
openair1/PHY/phy_vars_ue.h
openair1/PHY/phy_vars_ue.h
+4
-3
openair1/SCHED/phy_procedures_lte_common.c
openair1/SCHED/phy_procedures_lte_common.c
+71
-0
openair1/SCHED_UE/pusch_pc.c
openair1/SCHED_UE/pusch_pc.c
+0
-68
openair2/LAYER2/MAC/config_ue.c
openair2/LAYER2/MAC/config_ue.c
+4
-4
openair2/LAYER2/MAC/eNB_scheduler_phytest.c
openair2/LAYER2/MAC/eNB_scheduler_phytest.c
+7
-8
openair2/LAYER2/MAC/eNB_scheduler_primitives.c
openair2/LAYER2/MAC/eNB_scheduler_primitives.c
+2
-0
openair2/LAYER2/MAC/main_ue.c
openair2/LAYER2/MAC/main_ue.c
+7
-9
openair2/LAYER2/MAC/ra_procedures.c
openair2/LAYER2/MAC/ra_procedures.c
+7
-11
openair2/LAYER2/MAC/rar_tools_ue.c
openair2/LAYER2/MAC/rar_tools_ue.c
+4
-4
openair2/LAYER2/MAC/ue_procedures.c
openair2/LAYER2/MAC/ue_procedures.c
+7
-15
openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.h
openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.h
+1
-0
openair2/RRC/LTE/rrc_UE.c
openair2/RRC/LTE/rrc_UE.c
+2
-9
openair2/RRC/LTE/rrc_eNB_GTPV1U.c
openair2/RRC/LTE/rrc_eNB_GTPV1U.c
+3
-3
openair2/RRC/LTE/rrc_eNB_S1AP.c
openair2/RRC/LTE/rrc_eNB_S1AP.c
+4
-6
targets/COMMON/create_tasks_ue.c
targets/COMMON/create_tasks_ue.c
+1
-1
targets/RT/USER/lte-enb.c
targets/RT/USER/lte-enb.c
+2
-2
targets/RT/USER/lte-softmodem.c
targets/RT/USER/lte-softmodem.c
+2
-1
targets/RT/USER/lte-ue.c
targets/RT/USER/lte-ue.c
+6
-9
targets/RT/USER/lte-uesoftmodem.c
targets/RT/USER/lte-uesoftmodem.c
+13
-15
targets/SIMU/USER/init_lte.h
targets/SIMU/USER/init_lte.h
+1
-5
No files found.
cmake_targets/CMakeLists.txt
View file @
596736af
...
...
@@ -1886,7 +1886,7 @@ add_definitions(-DASN1_MINIMUM_VERSION=924)
add_executable
(
lte-softmodem
${
rrc_h
}
${
s1ap_h
}
#
${OPENAIR_BIN_DIR}/messages_xml.h
${
OPENAIR_BIN_DIR
}
/messages_xml.h
${
OPENAIR_TARGETS
}
/RT/USER/rt_wrapper.c
${
OPENAIR_TARGETS
}
/RT/USER/lte-enb.c
${
OPENAIR_TARGETS
}
/RT/USER/lte-ru.c
...
...
openair1/PHY/INIT/init_top.c
View file @
596736af
...
...
@@ -23,6 +23,44 @@
#include "phy_init.h"
#include "PHY/phy_extern.h"
#include "PHY/CODING/coding_extern.h"
void
generate_64qam_table
(
void
)
{
int
a
,
b
,
c
,
index
;
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
for
(
b
=-
1
;
b
<=
1
;
b
+=
2
)
for
(
c
=-
1
;
c
<=
1
;
c
+=
2
)
{
index
=
(
1
+
a
)
*
2
+
(
1
+
b
)
+
(
1
+
c
)
/
2
;
qam64_table
[
index
]
=
-
a
*
(
QAM64_n1
+
b
*
(
QAM64_n2
+
(
c
*
QAM64_n3
)));
// 0 1 2
}
}
void
generate_16qam_table
(
void
)
{
int
a
,
b
,
index
;
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
for
(
b
=-
1
;
b
<=
1
;
b
+=
2
)
{
index
=
(
1
+
a
)
+
(
1
+
b
)
/
2
;
qam16_table
[
index
]
=
-
a
*
(
QAM16_n1
+
(
b
*
QAM16_n2
));
}
}
void
generate_qpsk_table
(
void
)
{
int
a
,
index
;
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
{
index
=
(
1
+
a
)
/
2
;
qpsk_table
[
index
]
=
-
a
*
QPSK
;
}
}
void
init_lte_top
(
LTE_DL_FRAME_PARMS
*
frame_parms
)
{
...
...
openair1/PHY/LTE_TRANSPORT/dci_tools_common.c
View file @
596736af
...
...
@@ -99,6 +99,7 @@ uint16_t RIV2nb_rb_LUT100[6000];
uint16_t
RIV2first_rb_LUT100
[
6000
];
uint16_t
RIV_max100
=
0
;
extern
RAN_CONTEXT_t
RC
;
extern
uint32_t
current_dlsch_cqi
;
...
...
@@ -163,6 +164,49 @@ int8_t delta_PUSCH_acc[4] = {-1,0,1,3};
int8_t
*
delta_PUCCH_lut
=
delta_PUSCH_acc
;
uint8_t
get_pmi
(
uint8_t
N_RB_DL
,
MIMO_mode_t
mode
,
uint32_t
pmi_alloc
,
uint16_t
rb
)
{
/*
MIMO_mode_t mode = dlsch_harq->mimo_mode;
uint32_t pmi_alloc = dlsch_harq->pmi_alloc;
*/
switch
(
N_RB_DL
)
{
case
6
:
// 1 PRB per subband
if
(
mode
<=
PUSCH_PRECODING1
)
return
((
pmi_alloc
>>
(
rb
<<
1
))
&
3
);
else
return
((
pmi_alloc
>>
rb
)
&
1
);
break
;
default:
case
25
:
// 4 PRBs per subband
if
(
mode
<=
PUSCH_PRECODING1
)
return
((
pmi_alloc
>>
((
rb
>>
2
)
<<
1
))
&
3
);
else
return
((
pmi_alloc
>>
(
rb
>>
2
))
&
1
);
break
;
case
50
:
// 6 PRBs per subband
if
(
mode
<=
PUSCH_PRECODING1
)
return
((
pmi_alloc
>>
((
rb
/
6
)
<<
1
))
&
3
);
else
return
((
pmi_alloc
>>
(
rb
/
6
))
&
1
);
break
;
case
100
:
// 8 PRBs per subband
if
(
mode
<=
PUSCH_PRECODING1
)
return
((
pmi_alloc
>>
((
rb
>>
3
)
<<
1
))
&
3
);
else
return
((
pmi_alloc
>>
(
rb
>>
3
))
&
1
);
break
;
}
}
uint32_t
check_phich_reg
(
LTE_DL_FRAME_PARMS
*
frame_parms
,
uint32_t
kprime
,
uint8_t
lprime
,
uint8_t
mi
)
{
...
...
openair1/PHY/LTE_TRANSPORT/dlsch_modulation.c
View file @
596736af
...
...
@@ -94,42 +94,7 @@ uint8_t is_not_UEspecRS(int8_t lprime, uint8_t re, uint8_t nushift, uint8_t Ncp,
return
(
0
);
}
void
generate_64qam_table
(
void
)
{
int
a
,
b
,
c
,
index
;
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
for
(
b
=-
1
;
b
<=
1
;
b
+=
2
)
for
(
c
=-
1
;
c
<=
1
;
c
+=
2
)
{
index
=
(
1
+
a
)
*
2
+
(
1
+
b
)
+
(
1
+
c
)
/
2
;
qam64_table
[
index
]
=
-
a
*
(
QAM64_n1
+
b
*
(
QAM64_n2
+
(
c
*
QAM64_n3
)));
// 0 1 2
}
}
void
generate_16qam_table
(
void
)
{
int
a
,
b
,
index
;
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
for
(
b
=-
1
;
b
<=
1
;
b
+=
2
)
{
index
=
(
1
+
a
)
+
(
1
+
b
)
/
2
;
qam16_table
[
index
]
=
-
a
*
(
QAM16_n1
+
(
b
*
QAM16_n2
));
}
}
void
generate_qpsk_table
(
void
)
{
int
a
,
index
;
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
{
index
=
(
1
+
a
)
/
2
;
qpsk_table
[
index
]
=
-
a
*
QPSK
;
}
}
...
...
@@ -1969,48 +1934,6 @@ int allocate_REs_in_RB_MCH(int32_t **txdataF,
return
(
0
);
}
uint8_t
get_pmi
(
uint8_t
N_RB_DL
,
MIMO_mode_t
mode
,
uint32_t
pmi_alloc
,
uint16_t
rb
)
{
/*
MIMO_mode_t mode = dlsch_harq->mimo_mode;
uint32_t pmi_alloc = dlsch_harq->pmi_alloc;
*/
switch
(
N_RB_DL
)
{
case
6
:
// 1 PRB per subband
if
(
mode
<=
PUSCH_PRECODING1
)
return
((
pmi_alloc
>>
(
rb
<<
1
))
&
3
);
else
return
((
pmi_alloc
>>
rb
)
&
1
);
break
;
default:
case
25
:
// 4 PRBs per subband
if
(
mode
<=
PUSCH_PRECODING1
)
return
((
pmi_alloc
>>
((
rb
>>
2
)
<<
1
))
&
3
);
else
return
((
pmi_alloc
>>
(
rb
>>
2
))
&
1
);
break
;
case
50
:
// 6 PRBs per subband
if
(
mode
<=
PUSCH_PRECODING1
)
return
((
pmi_alloc
>>
((
rb
/
6
)
<<
1
))
&
3
);
else
return
((
pmi_alloc
>>
(
rb
/
6
))
&
1
);
break
;
case
100
:
// 8 PRBs per subband
if
(
mode
<=
PUSCH_PRECODING1
)
return
((
pmi_alloc
>>
((
rb
>>
3
)
<<
1
))
&
3
);
else
return
((
pmi_alloc
>>
(
rb
>>
3
))
&
1
);
break
;
}
}
inline
int
check_skip
(
int
rb
,
int
subframe_offset
,
LTE_DL_FRAME_PARMS
*
frame_parms
,
int
l
,
int
nsymb
)
__attribute__
((
always_inline
));
...
...
openair1/PHY/LTE_TRANSPORT/transport_proto.h
View file @
596736af
...
...
@@ -72,6 +72,20 @@ void free_eNB_ulsch(LTE_eNB_ULSCH_t *ulsch);
LTE_eNB_ULSCH_t
*
new_eNB_ulsch
(
uint8_t
max_turbo_iterations
,
uint8_t
N_RB_UL
,
uint8_t
abstraction_flag
);
int
dlsch_encoding_all
(
PHY_VARS_eNB
*
eNB
,
unsigned
char
*
a
,
uint8_t
num_pdcch_symbols
,
LTE_eNB_DLSCH_t
*
dlsch
,
int
frame
,
uint8_t
subframe
,
time_stats_t
*
rm_stats
,
time_stats_t
*
te_stats
,
time_stats_t
*
te_wait_stats
,
time_stats_t
*
te_main_stats
,
time_stats_t
*
te_wakeup_stats0
,
time_stats_t
*
te_wakeup_stats1
,
time_stats_t
*
i_stats
);
/** \fn dlsch_encoding(PHY_VARS_eNB *eNB,
uint8_t *input_buffer,
LTE_DL_FRAME_PARMS *frame_parms,
...
...
openair1/PHY/defs_eNB.h
View file @
596736af
...
...
@@ -339,7 +339,7 @@ typedef struct RU_t_s{
void
(
*
wakeup_prach_eNB_br
)(
struct
PHY_VARS_eNB_s
*
eNB
,
struct
RU_t_s
*
ru
,
int
frame
,
int
subframe
);
#endif
/// function pointer to eNB entry routine
void
(
*
eNB_top
)(
struct
PHY_VARS_eNB_s
*
eNB
,
int
frame_rx
,
int
subframe_rx
,
char
*
string
);
void
(
*
eNB_top
)(
struct
PHY_VARS_eNB_s
*
eNB
,
int
frame_rx
,
int
subframe_rx
,
char
*
string
,
struct
RU_t_s
*
ru
);
/// Timing statistics
time_stats_t
ofdm_demod_stats
;
/// Timing statistics (TX)
...
...
@@ -634,6 +634,8 @@ typedef struct {
pthread_mutex_t
mutex_rxtx
;
/// scheduling parameters for RXn-TXnp4 thread
struct
sched_param
sched_param_rxtx
;
/// pipeline ready state
int
pipe_ready
;
}
eNB_rxtx_proc_t
;
typedef
struct
{
...
...
openair1/PHY/phy_vars_ue.h
View file @
596736af
...
...
@@ -23,7 +23,9 @@
#define __PHY_VARS_H__
#include "PHY/types.h"
#include "PHY/defs.h"
#include "PHY/defs_UE.h"
#include "PHY/phy_vars_ue.h"
#include "common/ran_context.h"
char
*
namepointer_chMag
;
...
...
@@ -37,7 +39,7 @@ int16_t *primary_synch1_time;
int16_t
*
primary_synch2_time
;
#include "PHY/CODING/vars.h"
#include "PHY/CODING/
coding_
vars.h"
//PHY_VARS *PHY_vars;
#ifndef OCP_FRAMEWORK
...
...
@@ -54,7 +56,6 @@ unsigned short rev256[256],rev512[512],rev1024[1024],rev4096[4096],rev2048[2048]
char
mode_string
[
4
][
20
]
=
{
"NOT SYNCHED"
,
"PRACH"
,
"RAR"
,
"PUSCH"
};
#include "PHY/LTE_TRANSPORT/vars.h"
...
...
openair1/SCHED/phy_procedures_lte_common.c
View file @
596736af
...
...
@@ -31,6 +31,7 @@
*/
#include "PHY/defs_eNB.h"
#include "PHY/defs_UE.h"
#include "SCHED/sched_common_extern.h"
void
get_Msg3_alloc
(
LTE_DL_FRAME_PARMS
*
frame_parms
,
unsigned
char
current_subframe
,
...
...
@@ -1059,3 +1060,73 @@ void compute_srs_pos(lte_frame_type_t frameType,uint16_t isrs,uint16_t *psrsPeri
}
}
// uint8_t eNB_id,uint8_t harq_pid, uint8_t UE_id,
int16_t
estimate_ue_tx_power
(
uint32_t
tbs
,
uint32_t
nb_rb
,
uint8_t
control_only
,
lte_prefix_type_t
ncp
,
uint8_t
use_srs
)
{
/// The payload + CRC size in bits, "B"
uint32_t
B
;
/// Number of code segments
uint32_t
C
;
/// Number of "small" code segments
uint32_t
Cminus
;
/// Number of "large" code segments
uint32_t
Cplus
;
/// Number of bits in "small" code segments (<6144)
uint32_t
Kminus
;
/// Number of bits in "large" code segments (<6144)
uint32_t
Kplus
;
/// Total number of bits across all segments
uint32_t
sumKr
;
/// Number of "Filler" bits
uint32_t
F
;
// num resource elements
uint32_t
num_re
=
0
.
0
;
// num symbols
uint32_t
num_symb
=
0
.
0
;
/// effective spectral efficiency of the PUSCH
uint32_t
MPR_x100
=
0
;
/// beta_offset
uint16_t
beta_offset_pusch_x8
=
8
;
/// delta mcs
float
delta_mcs
=
0
.
0
;
/// bandwidth factor
float
bw_factor
=
0
.
0
;
B
=
tbs
+
24
;
lte_segmentation
(
NULL
,
NULL
,
B
,
&
C
,
&
Cplus
,
&
Cminus
,
&
Kplus
,
&
Kminus
,
&
F
);
sumKr
=
Cminus
*
Kminus
+
Cplus
*
Kplus
;
num_symb
=
12
-
(
ncp
<<
1
)
-
(
use_srs
==
0
?
0
:
1
);
num_re
=
num_symb
*
nb_rb
*
12
;
if
(
num_re
==
0
)
return
(
0
);
MPR_x100
=
100
*
sumKr
/
num_re
;
if
(
control_only
==
1
)
beta_offset_pusch_x8
=
8
;
// fixme
//(beta_offset_pusch_x8=ue->ulsch[eNB_id]->harq_processes[harq_pid]->control_only == 1) ? ue->ulsch[eNB_id]->beta_offset_cqi_times8:8;
// if deltamcs_enabledm
delta_mcs
=
((
hundred_times_delta_TF
[
MPR_x100
/
6
]
+
10
*
dB_fixed_times10
((
beta_offset_pusch_x8
)
>>
3
))
/
100
.
0
);
bw_factor
=
(
hundred_times_log10_NPRB
[
nb_rb
-
1
]
/
100
.
0
);
#ifdef DEBUG_SEGMENTATION
printf
(
"estimated ue tx power %d (num_re %d, sumKr %d, mpr_x100 %d, delta_mcs %f, bw_factor %f)
\n
"
,
(
int16_t
)
ceil
(
delta_mcs
+
bw_factor
),
num_re
,
sumKr
,
MPR_x100
,
delta_mcs
,
bw_factor
);
#endif
return
(
int16_t
)
ceil
(
delta_mcs
+
bw_factor
);
}
openair1/SCHED_UE/pusch_pc.c
View file @
596736af
...
...
@@ -132,72 +132,4 @@ int8_t get_PHR(uint8_t Mod_id, uint8_t CC_id,uint8_t eNB_index)
return
PHY_vars_UE_g
[
Mod_id
][
CC_id
]
->
ulsch
[
eNB_index
]
->
PHR
;
}
// uint8_t eNB_id,uint8_t harq_pid, uint8_t UE_id,
int16_t
estimate_ue_tx_power
(
uint32_t
tbs
,
uint32_t
nb_rb
,
uint8_t
control_only
,
lte_prefix_type_t
ncp
,
uint8_t
use_srs
)
{
/// The payload + CRC size in bits, "B"
uint32_t
B
;
/// Number of code segments
uint32_t
C
;
/// Number of "small" code segments
uint32_t
Cminus
;
/// Number of "large" code segments
uint32_t
Cplus
;
/// Number of bits in "small" code segments (<6144)
uint32_t
Kminus
;
/// Number of bits in "large" code segments (<6144)
uint32_t
Kplus
;
/// Total number of bits across all segments
uint32_t
sumKr
;
/// Number of "Filler" bits
uint32_t
F
;
// num resource elements
uint32_t
num_re
=
0
.
0
;
// num symbols
uint32_t
num_symb
=
0
.
0
;
/// effective spectral efficiency of the PUSCH
uint32_t
MPR_x100
=
0
;
/// beta_offset
uint16_t
beta_offset_pusch_x8
=
8
;
/// delta mcs
float
delta_mcs
=
0
.
0
;
/// bandwidth factor
float
bw_factor
=
0
.
0
;
B
=
tbs
+
24
;
lte_segmentation
(
NULL
,
NULL
,
B
,
&
C
,
&
Cplus
,
&
Cminus
,
&
Kplus
,
&
Kminus
,
&
F
);
sumKr
=
Cminus
*
Kminus
+
Cplus
*
Kplus
;
num_symb
=
12
-
(
ncp
<<
1
)
-
(
use_srs
==
0
?
0
:
1
);
num_re
=
num_symb
*
nb_rb
*
12
;
if
(
num_re
==
0
)
return
(
0
);
MPR_x100
=
100
*
sumKr
/
num_re
;
if
(
control_only
==
1
)
beta_offset_pusch_x8
=
8
;
// fixme
//(beta_offset_pusch_x8=ue->ulsch[eNB_id]->harq_processes[harq_pid]->control_only == 1) ? ue->ulsch[eNB_id]->beta_offset_cqi_times8:8;
// if deltamcs_enabledm
delta_mcs
=
((
hundred_times_delta_TF
[
MPR_x100
/
6
]
+
10
*
dB_fixed_times10
((
beta_offset_pusch_x8
)
>>
3
))
/
100
.
0
);
bw_factor
=
(
hundred_times_log10_NPRB
[
nb_rb
-
1
]
/
100
.
0
);
#ifdef DEBUG_SEGMENTATION
printf
(
"estimated ue tx power %d (num_re %d, sumKr %d, mpr_x100 %d, delta_mcs %f, bw_factor %f)
\n
"
,
(
int16_t
)
ceil
(
delta_mcs
+
bw_factor
),
num_re
,
sumKr
,
MPR_x100
,
delta_mcs
,
bw_factor
);
#endif
return
(
int16_t
)
ceil
(
delta_mcs
+
bw_factor
);
}
openair2/LAYER2/MAC/config_ue.c
View file @
596736af
...
...
@@ -32,7 +32,7 @@
#include "COMMON/platform_types.h"
#include "COMMON/platform_constants.h"
#include "SCHED
/defs
.h"
#include "SCHED
_UE/sched_UE
.h"
#include "SystemInformationBlockType2.h"
//#include "RadioResourceConfigCommonSIB.h"
#include "RadioResourceConfigDedicated.h"
...
...
@@ -43,9 +43,9 @@
#include "MeasObjectToAddModList.h"
#include "TDD-Config.h"
#include "MAC-MainConfig.h"
#include "
defs
.h"
#include "proto.h"
#include "extern.h"
#include "
mac
.h"
#include "
mac_
proto.h"
#include "
mac_
extern.h"
#include "UTIL/LOG/log.h"
#include "UTIL/LOG/vcd_signal_dumper.h"
...
...
openair2/LAYER2/MAC/eNB_scheduler_phytest.c
View file @
596736af
...
...
@@ -30,22 +30,21 @@
*/
#include "assertions.h"
#include "PHY/defs.h"
#include "PHY/extern.h"
#include "PHY/defs
_eNB
.h"
#include "PHY/
phy_
extern.h"
#include "SCHED/defs.h"
#include "SCHED/extern.h"
#include "SCHED/sched_eNB.h"
#include "LAYER2/MAC/
defs
.h"
#include "LAYER2/MAC/proto.h"
#include "LAYER2/MAC/extern.h"
#include "LAYER2/MAC/
mac
.h"
#include "LAYER2/MAC/
mac_
proto.h"
#include "LAYER2/MAC/
mac_
extern.h"
#include "UTIL/LOG/log.h"
#include "UTIL/LOG/vcd_signal_dumper.h"
#include "UTIL/OPT/opt.h"
#include "OCG.h"
#include "OCG_extern.h"
#include "SIMULATION/TOOLS/
defs
.h" // for taus
#include "SIMULATION/TOOLS/
sim
.h" // for taus
#include "T.h"
...
...
openair2/LAYER2/MAC/eNB_scheduler_primitives.c
View file @
596736af
...
...
@@ -983,6 +983,8 @@ get_rel8_dl_cqi_pmi_size(UE_sched_ctrl * sched_ctl, int CC_idP,
cqi_ReportPeriodic
->
choice
.
setup
.
cqi_FormatIndicatorPeriodic
.
present
);
}
void
fill_nfapi_dl_dci_1A
(
nfapi_dl_config_request_pdu_t
*
dl_config_pdu
,
uint8_t
aggregation_level
,
...
...
openair2/LAYER2/MAC/main_ue.c
View file @
596736af
...
...
@@ -29,20 +29,18 @@
*/
#include "
defs
.h"
#include "proto.h"
#include "extern.h"
#include "
mac
.h"
#include "
mac_
proto.h"
#include "
mac_
extern.h"
#include "assertions.h"
#include "PHY_INTERFACE/extern.h"
#include "PHY/defs.h"
#include "SCHED
/defs
.h"
#include "PHY_INTERFACE/
phy_interface_
extern.h"
#include "PHY/defs
_UE
.h"
#include "SCHED
_UE/sched_UE
.h"
#include "LAYER2/PDCP_v10.1.0/pdcp.h"
#include "RRC/L
ITE/
defs.h"
#include "RRC/L
TE/rrc_
defs.h"
#include "UTIL/LOG/log.h"
#include "RRC/L2_INTERFACE/openair_rrc_L2_interface.h"
#include "SCHED/defs.h"
#include "common/ran_context.h"
...
...
openair2/LAYER2/MAC/ra_procedures.c
View file @
596736af
...
...
@@ -30,24 +30,20 @@
* \warning
*/
#include "extern.h"
#include "
defs
.h"
#include "proto.h"
#include "
mac_
extern.h"
#include "
mac
.h"
#include "
mac_
proto.h"
#include "UTIL/LOG/vcd_signal_dumper.h"
#include "PHY_INTERFACE/extern.h"
#include "SCHED
/defs
.h"
#include "PHY_INTERFACE/
phy_interface_
extern.h"
#include "SCHED
_UE/sched_UE
.h"
#include "COMMON/mac_rrc_primitives.h"
#include "RRC/L
ITE/
extern.h"
#include "RRC/L
TE/rrc_
extern.h"
#include "RRC/L2_INTERFACE/openair_rrc_L2_interface.h"
#include "UTIL/LOG/log.h"
#include "UTIL/OPT/opt.h"
#include "OCG.h"
#include "OCG_extern.h"
#ifdef PHY_EMUL
#include "SIMULATION/simulation_defs.h"
#endif
#include "SIMULATION/TOOLS/defs.h" // for taus
#include "SIMULATION/TOOLS/sim.h" // for taus
/// This routine implements Section 5.1.2 (UE Random Access Resource Selection) from 36.321
void
...
...
openair2/LAYER2/MAC/rar_tools_ue.c
View file @
596736af
...
...
@@ -28,10 +28,10 @@
*/
#include "
defs
.h"
#include "proto.h"
#include "extern.h"
#include "SIMULATION/TOOLS/
defs
.h"
#include "
mac
.h"
#include "
mac_
proto.h"
#include "
mac_
extern.h"
#include "SIMULATION/TOOLS/
sim
.h"
#include "UTIL/LOG/log.h"
#include "OCG.h"
#include "OCG_extern.h"
...
...
openair2/LAYER2/MAC/ue_procedures.c
View file @
596736af
...
...
@@ -33,29 +33,21 @@
#include <pthread.h>
#endif
#include "extern.h"
#include "defs.h"
#include "proto.h"
#ifdef PHY_EMUL
#include "SIMULATION/PHY_EMULATION/impl_defs.h"
#else
#include "SCHED/defs.h"
#include "mac_extern.h"
#include "mac.h"
#include "mac_proto.h"
#include "SCHED_UE/sched_UE.h"
#include "PHY/impl_defs_top.h"
#endif
#include "PHY_INTERFACE/extern.h"
#include "PHY_INTERFACE/phy_interface_extern.h"
#include "COMMON/mac_rrc_primitives.h"
#include "RRC/L2_INTERFACE/openair_rrc_L2_interface.h"
#include "RRC/L
ITE/
extern.h"
#include "RRC/L
TE/rrc_
extern.h"
#include "UTIL/LOG/log.h"
#include "UTIL/LOG/vcd_signal_dumper.h"
#include "UTIL/OPT/opt.h"
#include "OCG.h"
#include "OCG_extern.h"
#ifdef PHY_EMUL
#include "SIMULATION/simulation_defs.h"
#endif
#include "pdcp.h"
#if defined(ENABLE_ITTI)
...
...
@@ -64,7 +56,7 @@
#include "assertions.h"
#include "SIMULATION/TOOLS/
defs
.h" // for taus
#include "SIMULATION/TOOLS/
sim
.h" // for taus
#define DEBUG_HEADER_PARSING 1
#define ENABLE_MAC_PAYLOAD_DEBUG 1
...
...
openair2/LAYER2/RLC/AM_v9.3.0/rlc_am.h
View file @
596736af
...
...
@@ -71,6 +71,7 @@
# include "rlc_am_reassembly.h"
# include "rlc_am_init.h"
# include "RLC-Config.h"
# include "assertions.h"
//# include "rlc_am_test.h"
...
...
openair2/RRC/LTE/rrc_UE.c
View file @
596736af
...
...
@@ -81,15 +81,8 @@
#include "SIMULATION/TOOLS/sim.h" // for taus
#ifdef PHY_EMUL
extern
EMULATION_VARS
*
Emul_vars
;
#endif
extern
eNB_MAC_INST
*
eNB_mac_inst
;
extern
UE_MAC_INST
*
UE_mac_inst
;
#ifdef BIGPHYSAREA
extern
void
*
bigphys_malloc
(
int
);
#endif
// for malloc_clear
#include "PHY/defs_UE.h"
//#define XER_PRINT
...
...
openair2/RRC/LTE/rrc_eNB_GTPV1U.c
View file @
596736af
...
...
@@ -28,9 +28,9 @@
*/
#if defined(ENABLE_USE_MME)
# include "defs.h"
# include "extern.h"
# include "RRC/L
I
TE/MESSAGES/asn1_msg.h"
# include "
rrc_
defs.h"
# include "
rrc_
extern.h"
# include "RRC/LTE/MESSAGES/asn1_msg.h"
# include "rrc_eNB_GTPV1U.h"
# include "rrc_eNB_UE_context.h"
# include "msc.h"
...
...
openair2/RRC/LTE/rrc_eNB_S1AP.c
View file @
596736af
...
...
@@ -27,13 +27,11 @@
* \company Eurecom
* \email: navid.nikaein@eurecom.fr
*/
#if defined(ENABLE_USE_MME)
# include "defs.h"
# include "extern.h"
# include "
rrc_
defs.h"
# include "
rrc_
extern.h"
# include "RRC/L2_INTERFACE/openair_rrc_L2_interface.h"
# include "RRC/LITE/MESSAGES/asn1_msg.h"
# include "RRC/LITE/defs.h"
# include "RRC/LTE/MESSAGES/asn1_msg.h"
# include "rrc_eNB_UE_context.h"
# include "rrc_eNB_S1AP.h"
# include "enb_config.h"
...
...
@@ -57,7 +55,7 @@
#include "UERadioAccessCapabilityInformation.h"
#include "gtpv1u_eNB_task.h"
#include "RRC/L
I
TE/rrc_eNB_GTPV1U.h"
#include "RRC/LTE/rrc_eNB_GTPV1U.h"
#include "TLVDecoder.h"
#include "S1ap-NAS-PDU.h"
...
...
targets/COMMON/create_tasks_ue.c
View file @
596736af
...
...
@@ -36,7 +36,7 @@
# include "lteRALue.h"
# include "lteRALenb.h"
# endif
# include "RRC/L
ITE/
defs.h"
# include "RRC/L
TE/rrc_
defs.h"
# endif
# include "enb_app.h"
...
...
targets/RT/USER/lte-enb.c
View file @
596736af
...
...
@@ -323,7 +323,7 @@ static void* tx_thread(void* param) {
VCD_SIGNAL_DUMPER_DUMP_VARIABLE_BY_NAME
(
VCD_SIGNAL_DUMPER_VARIABLES_FRAME_NUMBER_TX1_ENB
,
proc
->
frame_tx
);
VCD_SIGNAL_DUMPER_DUMP_VARIABLE_BY_NAME
(
VCD_SIGNAL_DUMPER_VARIABLES_FRAME_NUMBER_RX1_ENB
,
proc
->
frame_rx
);
phy_procedures_eNB_TX
(
eNB
,
proc
,
no_relay
,
NULL
,
1
);
phy_procedures_eNB_TX
(
eNB
,
proc
,
1
);
if
(
release_thread
(
&
proc
->
mutex_rxtx
,
&
proc
->
instance_cnt_rxtx
,
thread_name
)
<
0
)
break
;
pthread_mutex_lock
(
&
proc
->
mutex_rxtx
);
...
...
@@ -406,7 +406,7 @@ static void* eNB_thread_rxtx( void* param ) {
if
(
get_nprocs
()
>=
8
)
wakeup_tx
(
eNB
,
eNB
->
proc
.
ru_proc
);
else
{
phy_procedures_eNB_TX
(
eNB
,
proc
,
no_relay
,
NULL
,
1
);
phy_procedures_eNB_TX
(
eNB
,
proc
,
1
);
wakeup_txfh
(
proc
,
eNB
->
proc
.
ru_proc
);
}
...
...
targets/RT/USER/lte-softmodem.c
View file @
596736af
...
...
@@ -140,7 +140,8 @@ static int8_t threequarter_fs=0;
uint32_t
downlink_frequency
[
MAX_NUM_CCs
][
4
];
int32_t
uplink_frequency_offset
[
MAX_NUM_CCs
][
4
];
// This is a dummy declaration (dlsch_demodulation.c is no longer compiled for eNodeB)
int16_t
dlsch_demod_shift
=
0
;
#if defined(ENABLE_ITTI)
static
char
*
itti_dump_file
=
NULL
;
...
...
targets/RT/USER/lte-ue.c
View file @
596736af
...
...
@@ -33,19 +33,16 @@
#include "rt_wrapper.h"
#ifdef OPENAIR2
#include "LAYER2/MAC/defs.h"
#include "RRC/LITE/extern.h"
#endif
#include "PHY_INTERFACE/extern.h"
#include "LAYER2/MAC/mac.h"
#include "RRC/LTE/rrc_extern.h"
#include "PHY_INTERFACE/phy_interface_extern.h"
#undef MALLOC //there are two conflicting definitions, so we better make sure we don't use it at all
//#undef FRAME_LENGTH_COMPLEX_SAMPLES //there are two conflicting definitions, so we better make sure we don't use it at all
#include "PHY/extern.h"
#include "SCHED/extern.h"
#include "LAYER2/MAC/extern.h"
#include "LAYER2/MAC/proto.h"
#include "PHY/phy_extern_ue.h"
#include "LAYER2/MAC/mac_extern.h"
#include "LAYER2/MAC/mac_proto.h"
#include "UTIL/LOG/log_extern.h"
#include "UTIL/OTG/otg_tx.h"
...
...
targets/RT/USER/lte-uesoftmodem.c
View file @
596736af
...
...
@@ -47,7 +47,7 @@
#include "PHY/types.h"
#include "PHY/defs.h"
#include "PHY/defs
_UE
.h"
#include "common/ran_context.h"
#include "common/config/config_userapi.h"
#include "common/utils/load_module_shlib.h"
...
...
@@ -59,22 +59,18 @@
//#undef FRAME_LENGTH_COMPLEX_SAMPLES //there are two conflicting definitions, so we better make sure we don't use it at all
#include "PHY/
vars
.h"
#include "
SCHED/
vars.h"
#include "
LAYER2/MAC/
vars.h"
#include "PHY/
phy_vars_ue
.h"
#include "
PHY/LTE_TRANSPORT/transport_
vars.h"
#include "
SCHED/sched_common_
vars.h"
#include "PHY/MODULATION/modulation_vars.h"
#include "../../SIMU/USER/init_lte.h"
#include "LAYER2/MAC/
defs
.h"
#include "LAYER2/MAC/vars.h"
#include "LAYER2/MAC/proto.h"
#include "RRC/L
ITE/
vars.h"
#include "PHY_INTERFACE/vars.h"
#include "LAYER2/MAC/
mac
.h"
#include "LAYER2/MAC/
mac_
vars.h"
#include "LAYER2/MAC/
mac_
proto.h"
#include "RRC/L
TE/rrc_
vars.h"
#include "PHY_INTERFACE/
phy_interface_
vars.h"
#ifdef SMBV
#include "PHY/TOOLS/smbv.h"
unsigned
short
config_frames
[
4
]
=
{
2
,
9
,
11
,
13
};
#endif
#include "UTIL/LOG/log_extern.h"
#include "UTIL/OTG/otg_tx.h"
#include "UTIL/OTG/otg_externs.h"
...
...
@@ -101,6 +97,8 @@ unsigned short config_frames[4] = {2,9,11,13};
#endif
#include "lte-softmodem.h"
RAN_CONTEXT_t
RC
;
/* temporary compilation wokaround (UE/eNB split */
uint16_t
sf_ahead
;
#ifdef XFORMS
...
...
@@ -386,7 +384,7 @@ static void *scope_thread(void *arg) {
#endif
while
(
!
oai_exit
)
{
dump_ue_stats
(
PHY_vars_UE_g
[
0
][
0
],
&
PHY_vars_UE_g
[
0
][
0
]
->
proc
.
proc_rxtx
[
0
],
stats_buffer
,
0
,
mode
,
rx_input_level_dBm
);
//
dump_ue_stats (PHY_vars_UE_g[0][0], &PHY_vars_UE_g[0][0]->proc.proc_rxtx[0],stats_buffer, 0, mode,rx_input_level_dBm);
//fl_set_object_label(form_stats->stats_text, stats_buffer);
fl_clear_browser
(
form_stats
->
stats_text
);
fl_add_browser_line
(
form_stats
->
stats_text
,
stats_buffer
);
...
...
targets/SIMU/USER/init_lte.h
View file @
596736af
...
...
@@ -20,7 +20,7 @@
*/
#include "PHY/types.h"
#include "PHY/defs.h"
#include "PHY/defs
_eNB
.h"
PHY_VARS_eNB
*
init_lte_eNB
(
LTE_DL_FRAME_PARMS
*
frame_parms
,
uint8_t
eNB_id
,
...
...
@@ -32,10 +32,6 @@ PHY_VARS_UE* init_lte_UE(LTE_DL_FRAME_PARMS *frame_parms,
uint8_t
UE_id
,
uint8_t
abstraction_flag
);
PHY_VARS_RN
*
init_lte_RN
(
LTE_DL_FRAME_PARMS
*
frame_parms
,
uint8_t
RN_id
,
uint8_t
eMBMS_active_state
);
void
init_lte_vars
(
LTE_DL_FRAME_PARMS
*
frame_parms
[
MAX_NUM_CCs
],
uint8_t
frame_type
,
uint8_t
tdd_config
,
...
...
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