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
alex037yang
OpenXG-RAN
Commits
c90c2bf3
Commit
c90c2bf3
authored
Sep 14, 2018
by
lfarizav
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
enabling multiple RRUS
parent
dff70f52
Changes
10
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
96 additions
and
89 deletions
+96
-89
openair1/PHY/LTE_ESTIMATION/lte_adjust_sync.c
openair1/PHY/LTE_ESTIMATION/lte_adjust_sync.c
+1
-1
openair1/PHY/LTE_ESTIMATION/lte_sync_time.c
openair1/PHY/LTE_ESTIMATION/lte_sync_time.c
+2
-2
openair1/PHY/LTE_TRANSPORT/if4_tools.c
openair1/PHY/LTE_TRANSPORT/if4_tools.c
+3
-3
openair1/PHY/LTE_TRANSPORT/initial_sync.c
openair1/PHY/LTE_TRANSPORT/initial_sync.c
+55
-54
openair1/PHY/MODULATION/slot_fep.c
openair1/PHY/MODULATION/slot_fep.c
+2
-2
openair1/SCHED/phy_procedures_lte_ue.c
openair1/SCHED/phy_procedures_lte_ue.c
+1
-0
openair2/RRC/LITE/rrc_UE.c
openair2/RRC/LITE/rrc_UE.c
+5
-2
targets/PROJECTS/GENERIC-LTE-EPC/CONF/rru.band7.tm1.if4p5.25PRB.oaisim.conf
...ENERIC-LTE-EPC/CONF/rru.band7.tm1.if4p5.25PRB.oaisim.conf
+7
-7
targets/RT/USER/lte-ue.c
targets/RT/USER/lte-ue.c
+2
-2
targets/SIMU/USER/oaisim_functions.c
targets/SIMU/USER/oaisim_functions.c
+18
-16
No files found.
openair1/PHY/LTE_ESTIMATION/lte_adjust_sync.c
View file @
c90c2bf3
...
@@ -38,7 +38,7 @@ void lte_adjust_synch(LTE_DL_FRAME_PARMS *frame_parms,
...
@@ -38,7 +38,7 @@ void lte_adjust_synch(LTE_DL_FRAME_PARMS *frame_parms,
unsigned
char
clear
,
unsigned
char
clear
,
short
coef
)
short
coef
)
{
{
printf
(
"lte_adjust_synch: eNB %d, UE %d
\n
"
,
eNB_id
,
ue
->
Mod_id
);
static
int
max_pos_fil
=
0
;
static
int
max_pos_fil
=
0
;
static
int
count_max_pos_ok
=
0
;
static
int
count_max_pos_ok
=
0
;
static
int
first_time
=
1
;
static
int
first_time
=
1
;
...
...
openair1/PHY/LTE_ESTIMATION/lte_sync_time.c
View file @
c90c2bf3
...
@@ -475,7 +475,7 @@ int lte_sync_time(int **rxdata, ///rx data in time domain
...
@@ -475,7 +475,7 @@ int lte_sync_time(int **rxdata, ///rx data in time domain
}
}
}
}
*
eNB_id
=
sync_source
;
//
*eNB_id = sync_source;
LOG_D
(
PHY
,
"[UE] lte_sync_time: Sync source = %d, Peak found at pos %d, val = %d (%d dB)
\n
"
,
sync_source
,
peak_pos
,
peak_val
,
dB_fixed
(
peak_val
)
/
2
);
LOG_D
(
PHY
,
"[UE] lte_sync_time: Sync source = %d, Peak found at pos %d, val = %d (%d dB)
\n
"
,
sync_source
,
peak_pos
,
peak_val
,
dB_fixed
(
peak_val
)
/
2
);
...
@@ -635,7 +635,7 @@ int lte_sync_freq(int **rxdataF, ///rx data in frequency domain
...
@@ -635,7 +635,7 @@ int lte_sync_freq(int **rxdataF, ///rx data in frequency domain
*
eNB_id
=
sync_source
;
*
eNB_id
=
sync_source
;
LOG_D
(
PHY
,
"[UE] lte_sync_time: Sync source = %d, Peak found at pos %d, val = %d (%d dB)
\n
"
,
sync_source
,
peak_pos
,
peak_val
,
dB_fixed
(
peak_val
)
/
2
);
LOG_D
(
PHY
,
"[UE
%d
] lte_sync_time: Sync source = %d, Peak found at pos %d, val = %d (%d dB)
\n
"
,
sync_source
,
peak_pos
,
peak_val
,
dB_fixed
(
peak_val
)
/
2
);
#ifdef DEBUG_PHY
#ifdef DEBUG_PHY
...
...
openair1/PHY/LTE_TRANSPORT/if4_tools.c
View file @
c90c2bf3
...
@@ -46,7 +46,7 @@ const uint16_t alaw2lin_if4p5[256] = {60032, 60288, 59520, 59776, 61056, 61312,
...
@@ -46,7 +46,7 @@ const uint16_t alaw2lin_if4p5[256] = {60032, 60288, 59520, 59776, 61056, 61312,
void send_IF4p5(PHY_VARS_eNB *eNB, int frame, int subframe, uint16_t packet_type, int k) {
void send_IF4p5(PHY_VARS_eNB *eNB, int frame, int subframe, uint16_t packet_type, int k) {
LTE_DL_FRAME_PARMS *fp = &eNB->frame_parms;
LTE_DL_FRAME_PARMS *fp = &eNB->frame_parms;
int32_t
**
txdataF
=
(
eNB
->
CC_id
==
0
)
?
eNB
->
common_vars
.
txdataF
[
0
]
:
PHY_vars_eNB_g
[
0
][
0
]
->
common_vars
.
txdataF
[
0
];
int32_t **txdataF = (eNB->CC_id==0) ? eNB->common_vars.txdataF[0] : PHY_vars_eNB_g[
eNB->Mod_id
][0]->common_vars.txdataF[0];
int32_t **rxdataF = eNB->common_vars.rxdataF[0];
int32_t **rxdataF = eNB->common_vars.rxdataF[0];
int16_t **rxsigF = eNB->prach_vars.rxsigF;
int16_t **rxsigF = eNB->prach_vars.rxsigF;
void *tx_buffer = eNB->ifbuffer.tx[subframe&1];
void *tx_buffer = eNB->ifbuffer.tx[subframe&1];
...
@@ -144,10 +144,10 @@ void send_IF4p5(PHY_VARS_eNB *eNB, int frame, int subframe, uint16_t packet_type
...
@@ -144,10 +144,10 @@ void send_IF4p5(PHY_VARS_eNB *eNB, int frame, int subframe, uint16_t packet_type
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_TRX_COMPR_IF, 1 );
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_TRX_COMPR_IF, 1 );
LOG_D(PHY,"IF4p5_PULFFT: frame %d, subframe %d, symbol %d\n",frame,subframe,symbol_id);
LOG_D(PHY,"IF4p5_PULFFT: frame %d, subframe %d, symbol %d\n",frame,subframe,symbol_id);
for (element_id=0; element_id<db_halflength; element_id++) {
for (element_id=0; element_id<db_halflength; element_id++) {
i
=
(
uint16_t
*
)
&
rxdataF
[
0
][
blockoffsetF
+
element_id
];
i = (uint16_t*) &rxdataF[
eNB->CC_id
][blockoffsetF+element_id];
data_block[element_id] = ((uint16_t) lin2alaw_if4p5[*i]) | ((uint16_t)(lin2alaw_if4p5[*(i+1)]<<8));
data_block[element_id] = ((uint16_t) lin2alaw_if4p5[*i]) | ((uint16_t)(lin2alaw_if4p5[*(i+1)]<<8));
i
=
(
uint16_t
*
)
&
rxdataF
[
0
][
slotoffsetF
+
element_id
];
i = (uint16_t*) &rxdataF[
eNB->CC_id
][slotoffsetF+element_id];
data_block[element_id+db_halflength] = ((uint16_t) lin2alaw_if4p5[*i]) | ((uint16_t)(lin2alaw_if4p5[*(i+1)]<<8));
data_block[element_id+db_halflength] = ((uint16_t) lin2alaw_if4p5[*i]) | ((uint16_t)(lin2alaw_if4p5[*(i+1)]<<8));
//if (element_id==0) LOG_I(PHY,"send_if4p5: symbol %d rxdata0 = (%d,%d)\n",symbol_id,*i,*(i+1));
//if (element_id==0) LOG_I(PHY,"send_if4p5: symbol %d rxdata0 = (%d,%d)\n",symbol_id,*i,*(i+1));
...
...
openair1/PHY/LTE_TRANSPORT/initial_sync.c
View file @
c90c2bf3
This diff is collapsed.
Click to expand it.
openair1/PHY/MODULATION/slot_fep.c
View file @
c90c2bf3
...
@@ -37,7 +37,7 @@ int slot_fep(PHY_VARS_UE *ue,
...
@@ -37,7 +37,7 @@ int slot_fep(PHY_VARS_UE *ue,
LTE_DL_FRAME_PARMS
*
frame_parms
=
&
ue
->
frame_parms
;
LTE_DL_FRAME_PARMS
*
frame_parms
=
&
ue
->
frame_parms
;
LTE_UE_COMMON
*
common_vars
=
&
ue
->
common_vars
;
LTE_UE_COMMON
*
common_vars
=
&
ue
->
common_vars
;
uint8_t
eNB_id
=
0
;
//ue_
common_vars->eNb_id;
uint8_t
eNB_id
=
common_vars
->
eNb_id
;
unsigned
char
aa
;
unsigned
char
aa
;
unsigned
char
symbol
=
l
+
((
7
-
frame_parms
->
Ncp
)
*
(
Ns
&
1
));
///symbol within sub-frame
unsigned
char
symbol
=
l
+
((
7
-
frame_parms
->
Ncp
)
*
(
Ns
&
1
));
///symbol within sub-frame
unsigned
int
nb_prefix_samples
=
(
no_prefix
?
0
:
frame_parms
->
nb_prefix_samples
);
unsigned
int
nb_prefix_samples
=
(
no_prefix
?
0
:
frame_parms
->
nb_prefix_samples
);
...
@@ -253,7 +253,7 @@ int slot_fep_freq(PHY_VARS_UE *ue,
...
@@ -253,7 +253,7 @@ int slot_fep_freq(PHY_VARS_UE *ue,
LTE_DL_FRAME_PARMS
*
frame_parms
=
&
ue
->
frame_parms
;
LTE_DL_FRAME_PARMS
*
frame_parms
=
&
ue
->
frame_parms
;
LTE_UE_COMMON
*
common_vars
=
&
ue
->
common_vars
;
LTE_UE_COMMON
*
common_vars
=
&
ue
->
common_vars
;
uint8_t
eNB_id
=
0
;
//ue_
common_vars->eNb_id;
uint8_t
eNB_id
=
common_vars
->
eNb_id
;
unsigned
char
aa
;
unsigned
char
aa
;
unsigned
char
symbol
=
l
+
((
7
-
frame_parms
->
Ncp
)
*
(
Ns
&
1
));
///symbol within sub-frame
unsigned
char
symbol
=
l
+
((
7
-
frame_parms
->
Ncp
)
*
(
Ns
&
1
));
///symbol within sub-frame
//unsigned int nb_prefix_samples = (no_prefix ? 0 : frame_parms->nb_prefix_samples);
//unsigned int nb_prefix_samples = (no_prefix ? 0 : frame_parms->nb_prefix_samples);
...
...
openair1/SCHED/phy_procedures_lte_ue.c
View file @
c90c2bf3
...
@@ -2982,6 +2982,7 @@ void ue_pbch_procedures(uint8_t eNB_id,PHY_VARS_UE *ue,UE_rxtx_proc_t *proc, uin
...
@@ -2982,6 +2982,7 @@ void ue_pbch_procedures(uint8_t eNB_id,PHY_VARS_UE *ue,UE_rxtx_proc_t *proc, uin
frame_tx
+=
pbch_phase
;
frame_tx
+=
pbch_phase
;
if
(
ue
->
mac_enabled
==
1
)
{
if
(
ue
->
mac_enabled
==
1
)
{
printf
(
"[UE%d] if mac_enabled? then dl_phy_sync_success. UE_mode %s
\n
"
,
ue
->
Mod_id
,
ue
->
UE_mode
[
eNB_id
]
==
NOT_SYNCHED
?
"NOT_SYNCHED"
:
ue
->
UE_mode
[
eNB_id
]
==
NOT_SYNCHED
?
"SYNCHED"
:
"OTHER CHOICE"
);
mac_xface
->
dl_phy_sync_success
(
ue
->
Mod_id
,
frame_rx
,
eNB_id
,
mac_xface
->
dl_phy_sync_success
(
ue
->
Mod_id
,
frame_rx
,
eNB_id
,
ue
->
UE_mode
[
eNB_id
]
==
NOT_SYNCHED
?
1
:
0
);
ue
->
UE_mode
[
eNB_id
]
==
NOT_SYNCHED
?
1
:
0
);
}
}
...
...
openair2/RRC/LITE/rrc_UE.c
View file @
c90c2bf3
...
@@ -87,7 +87,7 @@
...
@@ -87,7 +87,7 @@
#endif
#endif
#include "SIMULATION/TOOLS/defs.h" // for taus
#include "SIMULATION/TOOLS/defs.h" // for taus
#include "PHY/extern.h"
#ifdef PHY_EMUL
#ifdef PHY_EMUL
extern
EMULATION_VARS
*
Emul_vars
;
extern
EMULATION_VARS
*
Emul_vars
;
...
@@ -4317,6 +4317,8 @@ NAS_KENB_REFRESH_REQ,NAS_CELL_SELECTION_REQ,RRC_STATE_INACTIVE,RRC_STATE_IDLE,RR
...
@@ -4317,6 +4317,8 @@ NAS_KENB_REFRESH_REQ,NAS_CELL_SELECTION_REQ,RRC_STATE_INACTIVE,RRC_STATE_IDLE,RR
break
;
break
;
case
RRC_MAC_BCCH_DATA_IND
:
case
RRC_MAC_BCCH_DATA_IND
:
printf
(
"rrc_ue_task:[UE %d] Received %s: frameP %d, eNB %d
\n
"
,
ue_mod_id
,
msg_name
,
RRC_MAC_BCCH_DATA_IND
(
msg_p
).
frame
,
RRC_MAC_BCCH_DATA_IND
(
msg_p
).
enb_index
);
LOG_D
(
RRC
,
"[UE %d] Received %s: frameP %d, eNB %d
\n
"
,
ue_mod_id
,
msg_name
,
LOG_D
(
RRC
,
"[UE %d] Received %s: frameP %d, eNB %d
\n
"
,
ue_mod_id
,
msg_name
,
RRC_MAC_BCCH_DATA_IND
(
msg_p
).
frame
,
RRC_MAC_BCCH_DATA_IND
(
msg_p
).
enb_index
);
RRC_MAC_BCCH_DATA_IND
(
msg_p
).
frame
,
RRC_MAC_BCCH_DATA_IND
(
msg_p
).
enb_index
);
...
@@ -4441,7 +4443,8 @@ NAS_KENB_REFRESH_REQ,NAS_CELL_SELECTION_REQ,RRC_STATE_INACTIVE,RRC_STATE_IDLE,RR
...
@@ -4441,7 +4443,8 @@ NAS_KENB_REFRESH_REQ,NAS_CELL_SELECTION_REQ,RRC_STATE_INACTIVE,RRC_STATE_IDLE,RR
if
(
rrc_get_state
(
ue_mod_id
)
==
RRC_STATE_INACTIVE
)
{
if
(
rrc_get_state
(
ue_mod_id
)
==
RRC_STATE_INACTIVE
)
{
// have a look at MAC/main.c void dl_phy_sync_success(...)
// have a look at MAC/main.c void dl_phy_sync_success(...)
openair_rrc_ue_init
(
ue_mod_id
,
0
);
printf
(
"openair_rrc_ue_init: UE %d
\n
"
,
ue_mod_id
);
openair_rrc_ue_init
(
ue_mod_id
,
PHY_vars_UE_g
[
ue_mod_id
][
0
]
->
common_vars
.
eNb_id
);
}
}
/* Save cell selection criterion */
/* Save cell selection criterion */
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/rru.band7.tm1.if4p5.25PRB.oaisim.conf
View file @
c90c2bf3
...
@@ -149,18 +149,18 @@ eNBs =
...
@@ -149,18 +149,18 @@ eNBs =
NETWORK_INTERFACES
:
NETWORK_INTERFACES
:
{
{
ENB_INTERFACE_NAME_FOR_S1_MME
=
"
lo
"
;
ENB_INTERFACE_NAME_FOR_S1_MME
=
"
enx58ef68b419df
"
;
ENB_IPV4_ADDRESS_FOR_S1_MME
=
"192.168.1
2
.170/24"
;
ENB_IPV4_ADDRESS_FOR_S1_MME
=
"192.168.1
4
.170/24"
;
ENB_INTERFACE_NAME_FOR_S1U
=
"
lo
"
;
ENB_INTERFACE_NAME_FOR_S1U
=
"
enx58ef68b419df
"
;
ENB_IPV4_ADDRESS_FOR_S1U
=
"192.168.1
2
.170/24"
;
ENB_IPV4_ADDRESS_FOR_S1U
=
"192.168.1
4
.170/24"
;
ENB_PORT_FOR_S1U
=
2152
;
# Spec 2152
ENB_PORT_FOR_S1U
=
2152
;
# Spec 2152
};
};
rrh_gw_config
= (
rrh_gw_config
= (
{
{
local_if_name
=
"
lo
"
;
local_if_name
=
"
enx58ef68b419df
"
;
remote_address
=
"192.168.1
2
.171"
;
remote_address
=
"192.168.1
4
.171"
;
local_address
=
"192.168.1
2
.170"
;
local_address
=
"192.168.1
4
.170"
;
local_port
=
50000
;
#for raw option local port must be the same to remote
local_port
=
50000
;
#for raw option local port must be the same to remote
remote_port
=
50000
;
remote_port
=
50000
;
rrh_gw_active
=
"yes"
;
rrh_gw_active
=
"yes"
;
...
...
targets/RT/USER/lte-ue.c
View file @
c90c2bf3
...
@@ -312,9 +312,9 @@ static void *UE_thread_synch(void *arg) {
...
@@ -312,9 +312,9 @@ static void *UE_thread_synch(void *arg) {
case
pbch
:
case
pbch
:
#if DISABLE_LOG_X
#if DISABLE_LOG_X
printf
(
"[UE
thread Synch] Running Initial Synch (mode %d)
\n
"
,
UE
->
mode
);
printf
(
"[UE
%d thread Synch] Running Initial Synch (mode %d)
\n
"
,
UE
->
Mod_id
,
UE
->
mode
);
#else
#else
LOG_I
(
PHY
,
"[UE
thread Synch] Running Initial Synch (mode %d)
\n
"
,
UE
->
mode
);
LOG_I
(
PHY
,
"[UE
%d thread Synch] Running Initial Synch (mode %d)
\n
"
,
UE
->
Mod_id
,
UE
->
mode
);
#endif
#endif
if
(
initial_sync
(
UE
,
UE
->
mode
)
==
0
)
{
if
(
initial_sync
(
UE
,
UE
->
mode
)
==
0
)
{
...
...
targets/SIMU/USER/oaisim_functions.c
View file @
c90c2bf3
...
@@ -1456,7 +1456,7 @@ void init_openair1(void)
...
@@ -1456,7 +1456,7 @@ void init_openair1(void)
// change the nb_connected_eNB
// change the nb_connected_eNB
for
(
CC_id
=
0
;
CC_id
<
MAX_NUM_CCs
;
CC_id
++
)
{
for
(
CC_id
=
0
;
CC_id
<
MAX_NUM_CCs
;
CC_id
++
)
{
for
(
eNB_id
=
0
;
eNB_id
<
enb_properties
->
number
;
eNB_id
++
)
{
init_lte_vars
(
&
frame_parms
[
CC_id
],
init_lte_vars
(
&
frame_parms
[
CC_id
],
oai_emulation
.
info
.
frame_type
[
CC_id
],
oai_emulation
.
info
.
frame_type
[
CC_id
],
oai_emulation
.
info
.
tdd_config
[
CC_id
],
oai_emulation
.
info
.
tdd_config
[
CC_id
],
...
@@ -1471,7 +1471,7 @@ void init_openair1(void)
...
@@ -1471,7 +1471,7 @@ void init_openair1(void)
enb_properties
->
properties
[
eNB_id
]
->
nb_antennas_tx
[
CC_id
],
enb_properties
->
properties
[
eNB_id
]
->
nb_antennas_tx
[
CC_id
],
nb_antennas_rx_ue
,
nb_antennas_rx_ue
,
oai_emulation
.
info
.
eMBMS_active_state
);
oai_emulation
.
info
.
eMBMS_active_state
);
for
(
eNB_id
=
0
;
eNB_id
<
enb_properties
->
number
;
eNB_id
++
)
{
// This is for IF4p5 RRU, gets done by RRC configuration of eNB
// This is for IF4p5 RRU, gets done by RRC configuration of eNB
PHY_vars_eNB_g
[
eNB_id
][
CC_id
]
->
frame_parms
.
prach_config_common
.
prach_ConfigInfo
.
prach_ConfigIndex
=
enb_properties
->
properties
[
eNB_id
]
->
prach_config_index
[
CC_id
];
PHY_vars_eNB_g
[
eNB_id
][
CC_id
]
->
frame_parms
.
prach_config_common
.
prach_ConfigInfo
.
prach_ConfigIndex
=
enb_properties
->
properties
[
eNB_id
]
->
prach_config_index
[
CC_id
];
PHY_vars_eNB_g
[
eNB_id
][
CC_id
]
->
frame_parms
.
prach_config_common
.
prach_ConfigInfo
.
prach_FreqOffset
=
enb_properties
->
properties
[
eNB_id
]
->
prach_freq_offset
[
CC_id
];
PHY_vars_eNB_g
[
eNB_id
][
CC_id
]
->
frame_parms
.
prach_config_common
.
prach_ConfigInfo
.
prach_FreqOffset
=
enb_properties
->
properties
[
eNB_id
]
->
prach_freq_offset
[
CC_id
];
...
@@ -1571,28 +1571,30 @@ void init_openair1(void)
...
@@ -1571,28 +1571,30 @@ void init_openair1(void)
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
rx_total_gain_dB
=
100
;
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
rx_total_gain_dB
=
100
;
// update UE_mode for each eNB_id not just 0
// update UE_mode for each eNB_id not just 0
for
(
eNB_id
=
0
;
eNB_id
<
NB_eNB_INST
;
eNB_id
++
){
if
(
abstraction_flag
==
0
)
{
if
(
abstraction_flag
==
0
)
{
if
(
phy_test
==
0
)
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
UE_mode
[
0
]
=
NOT_SYNCHED
;
if
(
phy_test
==
0
)
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
UE_mode
[
eNB_id
]
=
NOT_SYNCHED
;
else
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
UE_mode
[
0
]
=
PUSCH
;
else
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
UE_mode
[
eNB_id
]
=
PUSCH
;
}
else
{
}
else
{
// 0 is the index of the connected eNB
// 0 is the index of the connected eNB
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
UE_mode
[
0
]
=
PRACH
;
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
UE_mode
[
eNB_id
]
=
PRACH
;
}
}
}
if
(
phy_test
==
1
)
if
(
phy_test
==
1
)
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
mac_enabled
=
0
;
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
mac_enabled
=
0
;
else
else
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
mac_enabled
=
1
;
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
mac_enabled
=
1
;
for
(
eNB_id
=
0
;
eNB_id
<
NB_eNB_INST
;
eNB_id
++
){
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
pdcch_vars
[
0
][
0
]
->
crnti
=
0x1235
+
UE_id
;
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
pdcch_vars
[
0
][
eNB_id
]
->
crnti
=
0x1235
+
UE_id
;
for
(
uint8_t
i
=
0
;
i
<
RX_NB_TH_MAX
;
i
++
)
{
for
(
uint8_t
i
=
0
;
i
<
RX_NB_TH_MAX
;
i
++
)
{
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
pdcch_vars
[
i
][
0
]
->
dciFormat
=
0
;
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
pdcch_vars
[
i
][
eNB_id
]
->
dciFormat
=
0
;
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
pdcch_vars
[
i
][
0
]
->
agregationLevel
=
0xFF
;
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
pdcch_vars
[
i
][
eNB_id
]
->
agregationLevel
=
0xFF
;
}
}
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
current_dlsch_cqi
[
0
]
=
10
;
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
current_dlsch_cqi
[
eNB_id
]
=
10
;
LOG_I
(
EMU
,
"UE %d mode is initialized to %d
\n
"
,
UE_id
,
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
UE_mode
[
0
]
);
LOG_I
(
EMU
,
"UE %d mode is initialized to %d
\n
"
,
UE_id
,
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
UE_mode
[
eNB_id
]
);
}
#if ENABLE_RAL
#if ENABLE_RAL
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
ral_thresholds_timed
=
hashtable_create
(
64
,
NULL
,
NULL
);
PHY_vars_UE_g
[
UE_id
][
CC_id
]
->
ral_thresholds_timed
=
hashtable_create
(
64
,
NULL
,
NULL
);
...
...
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