Commit 048ab767 authored by Raymond Knopp's avatar Raymond Knopp

git-svn-id: http://svn.eurecom.fr/openair4G/trunk@5751 818b1a75-f10b-46b9-bf7c-635c3b92a50f
parent 00d60239
...@@ -49,7 +49,7 @@ __m128i zeroPMI; ...@@ -49,7 +49,7 @@ __m128i zeroPMI;
#define k1 ((long long int) 1000) #define k1 ((long long int) 1000)
#define k2 ((long long int) (1024-k1)) #define k2 ((long long int) (1024-k1))
#define DEBUG_MEAS //#define DEBUG_MEAS
#ifdef USER_MODE #ifdef USER_MODE
void print_shorts(char *s,__m128i *x) { void print_shorts(char *s,__m128i *x) {
......
...@@ -1343,12 +1343,13 @@ void generate_phich_top(PHY_VARS_eNB *phy_vars_eNB, ...@@ -1343,12 +1343,13 @@ void generate_phich_top(PHY_VARS_eNB *phy_vars_eNB,
harq_pid = subframe2harq_pid(frame_parms,pusch_frame,pusch_subframe); harq_pid = subframe2harq_pid(frame_parms,pusch_frame,pusch_subframe);
for (UE_id=0;UE_id<NUMBER_OF_UE_MAX;UE_id++) { for (UE_id=0;UE_id<NUMBER_OF_UE_MAX;UE_id++) {
if (ulsch_eNB[UE_id]) { if ((ulsch_eNB[UE_id])&&(ulsch_eNB[UE_id]->rnti>0)) {
LOG_D(PHY,"[eNB][PUSCH %d/%x] Frame %d subframe %d (pusch_subframe %d,pusch_frame %d) phich active %d\n",
harq_pid,ulsch_eNB[UE_id]->rnti,phy_vars_eNB->proc[sched_subframe].frame_tx,subframe,pusch_subframe,pusch_frame,ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_active);
if (ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_active == 1) { if (ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_active == 1) {
LOG_D(PHY,"[eNB][PUSCH %x/%d] Frame %d subframe %d (pusch_subframe %d,pusch_frame %d) phich active %d\n", LOG_D(PHY,"[eNB][PUSCH %d/%x] Frame %d subframe %d (pusch_subframe %d,pusch_frame %d) phich active %d\n",
ulsch_eNB[UE_id]->rnti,harq_pid,phy_vars_eNB->proc[sched_subframe].frame_tx,subframe,pusch_subframe,pusch_frame,ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_active); harq_pid,ulsch_eNB[UE_id]->rnti,phy_vars_eNB->proc[sched_subframe].frame_tx,subframe,pusch_subframe,pusch_frame,ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_active);
ngroup_PHICH = (ulsch_eNB[UE_id]->harq_processes[harq_pid]->first_rb + ngroup_PHICH = (ulsch_eNB[UE_id]->harq_processes[harq_pid]->first_rb +
ulsch_eNB[UE_id]->harq_processes[harq_pid]->n_DMRS)%Ngroup_PHICH; ulsch_eNB[UE_id]->harq_processes[harq_pid]->n_DMRS)%Ngroup_PHICH;
...@@ -1398,7 +1399,7 @@ void generate_phich_top(PHY_VARS_eNB *phy_vars_eNB, ...@@ -1398,7 +1399,7 @@ void generate_phich_top(PHY_VARS_eNB *phy_vars_eNB,
if ((ulsch_eNB[UE_id]->harq_processes[harq_pid]->dci_alloc == 0) && if ((ulsch_eNB[UE_id]->harq_processes[harq_pid]->dci_alloc == 0) &&
(ulsch_eNB[UE_id]->harq_processes[harq_pid]->rar_alloc == 0) ){ (ulsch_eNB[UE_id]->harq_processes[harq_pid]->rar_alloc == 0) ){
if (ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_ACK==0 ){ if (ulsch_eNB[UE_id]->harq_processes[harq_pid]->phich_ACK==0 ){
LOG_D(PHY,"[eNB %d][PUSCH %d] frame %d, subframe %d : PHICH ACK / (no format0 DCI) Setting subframe_scheduling_flag\n", LOG_D(PHY,"[eNB %d][PUSCH %d] frame %d, subframe %d : PHICH NACK / (no format0 DCI) Setting subframe_scheduling_flag\n",
phy_vars_eNB->Mod_id,harq_pid,phy_vars_eNB->proc[sched_subframe].frame_tx,subframe); phy_vars_eNB->Mod_id,harq_pid,phy_vars_eNB->proc[sched_subframe].frame_tx,subframe);
ulsch_eNB[UE_id]->harq_processes[harq_pid]->subframe_scheduling_flag = 1; ulsch_eNB[UE_id]->harq_processes[harq_pid]->subframe_scheduling_flag = 1;
// ulsch_eNB[UE_id]->harq_processes[harq_pid]->Ndi = 0; // ulsch_eNB[UE_id]->harq_processes[harq_pid]->Ndi = 0;
......
...@@ -94,7 +94,7 @@ unsigned char NB_RN_INST=0; ...@@ -94,7 +94,7 @@ unsigned char NB_RN_INST=0;
unsigned char NB_INST=0; unsigned char NB_INST=0;
#endif #endif
unsigned int ULSCH_max_consecutive_errors = 20; unsigned int ULSCH_max_consecutive_errors = 5;
int flag_LA=0; int flag_LA=0;
int flagMag; int flagMag;
......
...@@ -552,7 +552,7 @@ LTE_eNB_UE_stats* get_eNB_UE_stats(uint8_t Mod_id, uint8_t CC_id,uint16_t rnti) ...@@ -552,7 +552,7 @@ LTE_eNB_UE_stats* get_eNB_UE_stats(uint8_t Mod_id, uint8_t CC_id,uint16_t rnti)
} }
UE_id = find_ue(rnti, PHY_vars_eNB_g[Mod_id][CC_id]); UE_id = find_ue(rnti, PHY_vars_eNB_g[Mod_id][CC_id]);
if (UE_id == -1) { if (UE_id == -1) {
LOG_E(PHY,"get_eNB_UE_stats: UE with rnti %x not found\n",rnti); // LOG_E(PHY,"get_eNB_UE_stats: UE with rnti %x not found\n",rnti);
return NULL; return NULL;
} }
return(&PHY_vars_eNB_g[Mod_id][CC_id]->eNB_UE_stats[(uint32_t)UE_id]); return(&PHY_vars_eNB_g[Mod_id][CC_id]->eNB_UE_stats[(uint32_t)UE_id]);
......
...@@ -3591,14 +3591,14 @@ void phy_UE_lte_check_measurement_thresholds(instance_t instanceP, ral_threshold ...@@ -3591,14 +3591,14 @@ void phy_UE_lte_check_measurement_thresholds(instance_t instanceP, ral_threshold
LOG_E(PHY,"[UE %d] Frame %d, subframe %d RRC Connection lost, returning to PRACH\n",phy_vars_ue->Mod_id, LOG_E(PHY,"[UE %d] Frame %d, subframe %d RRC Connection lost, returning to PRACH\n",phy_vars_ue->Mod_id,
phy_vars_ue->frame,next_slot>>1); phy_vars_ue->frame,next_slot>>1);
phy_vars_ue->UE_mode[eNB_id] = PRACH; phy_vars_ue->UE_mode[eNB_id] = PRACH;
mac_xface->macphy_exit("Connection lost"); // mac_xface->macphy_exit("Connection lost");
} }
else if (ret == PHY_RESYNCH) { else if (ret == PHY_RESYNCH) {
LOG_E(PHY,"[UE %d] Frame %d, subframe %d RRC Connection lost, trying to resynch\n", LOG_E(PHY,"[UE %d] Frame %d, subframe %d RRC Connection lost, trying to resynch\n",
phy_vars_ue->Mod_id, phy_vars_ue->Mod_id,
phy_vars_ue->frame,next_slot>>1); phy_vars_ue->frame,next_slot>>1);
phy_vars_ue->UE_mode[eNB_id] = RESYNCH; phy_vars_ue->UE_mode[eNB_id] = RESYNCH;
mac_xface->macphy_exit("Connection lost"); // mac_xface->macphy_exit("Connection lost");
//exit(-1); //exit(-1);
} else if (ret == PHY_HO_PRACH) { } else if (ret == PHY_HO_PRACH) {
LOG_I(PHY,"[UE %d] Frame %d, subframe %d, return to PRACH and perform a contention-free access\n", LOG_I(PHY,"[UE %d] Frame %d, subframe %d, return to PRACH and perform a contention-free access\n",
......
...@@ -187,7 +187,7 @@ uint64_t DLSCH_alloc_pdu_1[2]; ...@@ -187,7 +187,7 @@ uint64_t DLSCH_alloc_pdu_1[2];
#define CCCH_RB_ALLOC computeRIV(PHY_vars_eNB->lte_frame_parms.N_RB_UL,0,2) #define CCCH_RB_ALLOC computeRIV(PHY_vars_eNB->lte_frame_parms.N_RB_UL,0,2)
//#define DLSCH_RB_ALLOC 0x1fbf // igore DC component,RB13 //#define DLSCH_RB_ALLOC 0x1fbf // igore DC component,RB13
//#define DLSCH_RB_ALLOC 0x0001 //#define DLSCH_RB_ALLOC 0x0001
void do_OFDM_mod(mod_sym_t **txdataF, int32_t **txdata, uint16_t next_slot, LTE_DL_FRAME_PARMS *frame_parms) { void do_OFDM_mod_l(mod_sym_t **txdataF, int32_t **txdata, uint16_t next_slot, LTE_DL_FRAME_PARMS *frame_parms) {
int aa, slot_offset, slot_offset_F; int aa, slot_offset, slot_offset_F;
...@@ -1922,12 +1922,12 @@ int main(int argc, char **argv) { ...@@ -1922,12 +1922,12 @@ int main(int argc, char **argv) {
start_meas(&PHY_vars_eNB->ofdm_mod_stats); start_meas(&PHY_vars_eNB->ofdm_mod_stats);
do_OFDM_mod(PHY_vars_eNB->lte_eNB_common_vars.txdataF[eNB_id], do_OFDM_mod_l(PHY_vars_eNB->lte_eNB_common_vars.txdataF[eNB_id],
PHY_vars_eNB->lte_eNB_common_vars.txdata[eNB_id], PHY_vars_eNB->lte_eNB_common_vars.txdata[eNB_id],
(subframe*2), (subframe*2),
&PHY_vars_eNB->lte_frame_parms); &PHY_vars_eNB->lte_frame_parms);
do_OFDM_mod(PHY_vars_eNB->lte_eNB_common_vars.txdataF[eNB_id], do_OFDM_mod_l(PHY_vars_eNB->lte_eNB_common_vars.txdataF[eNB_id],
PHY_vars_eNB->lte_eNB_common_vars.txdata[eNB_id], PHY_vars_eNB->lte_eNB_common_vars.txdata[eNB_id],
(subframe*2)+1, (subframe*2)+1,
&PHY_vars_eNB->lte_frame_parms); &PHY_vars_eNB->lte_frame_parms);
...@@ -1935,7 +1935,7 @@ int main(int argc, char **argv) { ...@@ -1935,7 +1935,7 @@ int main(int argc, char **argv) {
stop_meas(&PHY_vars_eNB->ofdm_mod_stats); stop_meas(&PHY_vars_eNB->ofdm_mod_stats);
stop_meas(&PHY_vars_eNB->phy_proc_tx); stop_meas(&PHY_vars_eNB->phy_proc_tx);
do_OFDM_mod(PHY_vars_eNB->lte_eNB_common_vars.txdataF[eNB_id], do_OFDM_mod_l(PHY_vars_eNB->lte_eNB_common_vars.txdataF[eNB_id],
PHY_vars_eNB->lte_eNB_common_vars.txdata[eNB_id], PHY_vars_eNB->lte_eNB_common_vars.txdata[eNB_id],
(subframe*2)+2, (subframe*2)+2,
&PHY_vars_eNB->lte_frame_parms); &PHY_vars_eNB->lte_frame_parms);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment