From b87405ad7cf1eea77dae5a57001026d53d72bac0 Mon Sep 17 00:00:00 2001 From: Cedric Roux <cedric.roux@eurecom.fr> Date: Mon, 6 Jun 2016 11:40:46 +0200 Subject: [PATCH] add PHY uplink dci/retrans/ack/nack T traces --- common/utils/T/T_messages.txt | 16 ++++++++++++++++ openair1/PHY/LTE_TRANSPORT/phich.c | 2 ++ openair1/SCHED/phy_procedures_lte_eNb.c | 6 ++++++ 3 files changed, 24 insertions(+) diff --git a/common/utils/T/T_messages.txt b/common/utils/T/T_messages.txt index 5347f054f7..e6c83b5105 100644 --- a/common/utils/T/T_messages.txt +++ b/common/utils/T/T_messages.txt @@ -19,6 +19,22 @@ ID = ENB_DLSCH_UE_NACK DESC = eNodeB downlink UE NACK as seen by the PHY layer in process_HARQ_feedback GROUP = ALL:PHY:GRAPHIC:ENB FORMAT = int,eNB_ID : int,frame : int,subframe : int,UE_id : int,rnti +ID = ENB_ULSCH_UE_DCI + DESC = eNodeB uplink UE specific DCI as sent by the PHY layer + GROUP = ALL:PHY:GRAPHIC:ENB + FORMAT = int,eNB_ID : int,frame : int,subframe : int,UE_id : int,rnti +ID = ENB_ULSCH_UE_NO_DCI_RETRANSMISSION + DESC = eNodeB uplink UE retransmission due to PHICH NACK (see generate_phich_top) + GROUP = ALL:PHY:GRAPHIC:ENB + FORMAT = int,eNB_ID : int,frame : int,subframe : int,UE_id : int,rnti +ID = ENB_ULSCH_UE_ACK + DESC = eNodeB uplink UE ACK as seen by the PHY layer + GROUP = ALL:PHY:GRAPHIC:ENB + FORMAT = int,eNB_ID : int,frame : int,subframe : int,UE_id : int,rnti +ID = ENB_ULSCH_UE_NACK + DESC = eNodeB uplink UE NACK as seen by the PHY layer + GROUP = ALL:PHY:GRAPHIC:ENB + FORMAT = int,eNB_ID : int,frame : int,subframe : int,UE_id : int,rnti ID = ENB_INPUT_SIGNAL DESC = eNodeB received signal in the time domain for a duration of 1ms GROUP = ALL:PHY:GRAPHIC:HEAVY:ENB diff --git a/openair1/PHY/LTE_TRANSPORT/phich.c b/openair1/PHY/LTE_TRANSPORT/phich.c index e08ad239bd..ddf78bdcce 100644 --- a/openair1/PHY/LTE_TRANSPORT/phich.c +++ b/openair1/PHY/LTE_TRANSPORT/phich.c @@ -1506,6 +1506,8 @@ void generate_phich_top(PHY_VARS_eNB *phy_vars_eNB, if ((ulsch_eNB[UE_id]->harq_processes[harq_pid]->dci_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 ) { + T(T_ENB_ULSCH_UE_NO_DCI_RETRANSMISSION, T_INT(phy_vars_eNB->Mod_id), T_INT(phy_vars_eNB->proc[sched_subframe].frame_tx), + T_INT(subframe), T_INT(UE_id), T_INT(ulsch_eNB[UE_id]->rnti)); 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); ulsch_eNB[UE_id]->harq_processes[harq_pid]->subframe_scheduling_flag = 1; diff --git a/openair1/SCHED/phy_procedures_lte_eNb.c b/openair1/SCHED/phy_procedures_lte_eNb.c index e8c2e87414..f0d811a3ac 100755 --- a/openair1/SCHED/phy_procedures_lte_eNb.c +++ b/openair1/SCHED/phy_procedures_lte_eNb.c @@ -1250,6 +1250,9 @@ void phy_procedures_eNB_TX(unsigned char sched_subframe,PHY_VARS_eNB *phy_vars_e else UE_id = i; + T(T_ENB_ULSCH_UE_DCI, T_INT(phy_vars_eNB->Mod_id), T_INT(frame), T_INT(subframe), T_INT(UE_id), + T_INT(DCI_pdu->dci_alloc[i].rnti)); + if (UE_id<0) { LOG_E(PHY,"[eNB %"PRIu8"] Frame %d: Unknown UE_id for rnti %"PRIx16"\n",phy_vars_eNB->Mod_id,phy_vars_eNB->proc[sched_subframe].frame_tx,DCI_pdu->dci_alloc[i].rnti); mac_exit_wrapper("Invalid UE id (< 0) detected"); @@ -2795,6 +2798,7 @@ void phy_procedures_eNB_RX(const unsigned char sched_subframe,PHY_VARS_eNB *phy_ } if (ret == (1+MAX_TURBO_ITERATIONS)) { + T(T_ENB_ULSCH_UE_NACK, T_INT(phy_vars_eNB->Mod_id), T_INT(frame), T_INT(subframe), T_INT(i), T_INT(phy_vars_eNB->ulsch_eNB[i]->rnti)); /* if (phy_vars_eNB->ulsch_eNB[i]->harq_processes[harq_pid]->round>0) { @@ -2919,6 +2923,8 @@ void phy_procedures_eNB_RX(const unsigned char sched_subframe,PHY_VARS_eNB *phy_ } } // ulsch in error else { + T(T_ENB_ULSCH_UE_ACK, T_INT(phy_vars_eNB->Mod_id), T_INT(frame), T_INT(subframe), T_INT(i), T_INT(phy_vars_eNB->ulsch_eNB[i]->rnti)); + if (phy_vars_eNB->ulsch_eNB[i]->Msg3_flag == 1) { LOG_I(PHY,"[eNB %d][PUSCH %d] Frame %d subframe %d ULSCH received, setting round to 0, PHICH ACK\n", phy_vars_eNB->Mod_id,harq_pid, -- GitLab