Skip to content
Snippets Groups Projects
Commit b0ee0f4c authored by Cedric Roux's avatar Cedric Roux
Browse files

add UE downlink DCI logging

parent bc3aa858
No related branches found
No related tags found
No related merge requests found
...@@ -7,6 +7,10 @@ ID = ENB_DL_TICK ...@@ -7,6 +7,10 @@ ID = ENB_DL_TICK
DESC = eNodeB downlink tick - one tick per ms at start of downlink processing DESC = eNodeB downlink tick - one tick per ms at start of downlink processing
GROUP = ALL:PHY:GRAPHIC:ENB GROUP = ALL:PHY:GRAPHIC:ENB
FORMAT = int,eNB_ID : int,frame : int,subframe FORMAT = int,eNB_ID : int,frame : int,subframe
ID = ENB_DLSCH_UE_DCI
DESC = eNodeB downlink 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 : int,dci_format
ID = ENB_INPUT_SIGNAL ID = ENB_INPUT_SIGNAL
DESC = eNodeB received signal in the time domain for a duration of 1ms DESC = eNodeB received signal in the time domain for a duration of 1ms
GROUP = ALL:PHY:GRAPHIC:HEAVY:ENB GROUP = ALL:PHY:GRAPHIC:HEAVY:ENB
......
...@@ -147,32 +147,27 @@ static void enb_main_gui(gui *g, event_handler *h, void *database) ...@@ -147,32 +147,27 @@ static void enb_main_gui(gui *g, event_handler *h, void *database)
/* downlink UE DCIs */ /* downlink UE DCIs */
line = new_container(g, HORIZONTAL); line = new_container(g, HORIZONTAL);
widget_add_child(g, top_container, line, -1); widget_add_child(g, top_container, line, -1);
timeline_plot = new_timeline(g, 512, 4, 5); timeline_plot = new_timeline(g, 512, 8, 5);
widget_add_child(g, line, timeline_plot, -1); widget_add_child(g, line, timeline_plot, -1);
container_set_child_growable(g, line, timeline_plot, 1); container_set_child_growable(g, line, timeline_plot, 1);
for (i = 0; i < 4; i++) widget_add_child(g, line, new_label(g,"DL/UL TICK/DCI/ACK/NACK "), 0);
for (i = 0; i < 8; i++)
timeline_set_subline_background_color(g, timeline_plot, i, timeline_set_subline_background_color(g, timeline_plot, i,
new_color(g, i & 1 ? "#ddd" : "#eee")); new_color(g, i & 1 ? "#ddd" : "#eee"));
timelog = new_timelog(h, database, "ENB_DL_TICK");
timeview = new_view_time(3600, 10, g, timeline_plot); timeview = new_view_time(3600, 10, g, timeline_plot);
/* tick logging */
timelog = new_timelog(h, database, "ENB_DL_TICK");
subview = new_subview_time(timeview, 0, FOREGROUND_COLOR); subview = new_subview_time(timeview, 0, FOREGROUND_COLOR);
logger_add_view(timelog, subview); logger_add_view(timelog, subview);
widget_add_child(g, line, new_label(g,"DL TICK/DCI/ACK/NACK "), 0); /* DCI logging */
timelog = new_timelog(h, database, "ENB_DLSCH_UE_DCI");
subview = new_subview_time(timeview, 1, new_color(g, "#228"));
logger_add_view(timelog, subview);
/* uplink UE DCIs */ /* uplink UE DCIs */
line = new_container(g, HORIZONTAL);
widget_add_child(g, top_container, line, -1);
timeline_plot = new_timeline(g, 512, 4, 5);
widget_add_child(g, line, timeline_plot, -1);
container_set_child_growable(g, line, timeline_plot, 1);
for (i = 0; i < 4; i++)
timeline_set_subline_background_color(g, timeline_plot, i,
new_color(g, i & 1 ? "#ddd" : "#eee"));
timelog = new_timelog(h, database, "ENB_UL_TICK"); timelog = new_timelog(h, database, "ENB_UL_TICK");
timeview = new_view_time(3600, 10, g, timeline_plot); subview = new_subview_time(timeview, 4, FOREGROUND_COLOR);
subview = new_subview_time(timeview, 0, FOREGROUND_COLOR);
logger_add_view(timelog, subview); logger_add_view(timelog, subview);
widget_add_child(g, line, new_label(g,"UL TICK/DCI/ACK/NACK "), 0);
} }
int main(int n, char **v) int main(int n, char **v)
...@@ -235,6 +230,7 @@ int main(int n, char **v) ...@@ -235,6 +230,7 @@ int main(int n, char **v)
on_off(database, "ENB_INPUT_SIGNAL", is_on, 1); on_off(database, "ENB_INPUT_SIGNAL", is_on, 1);
on_off(database, "ENB_UL_TICK", is_on, 1); on_off(database, "ENB_UL_TICK", is_on, 1);
on_off(database, "ENB_DL_TICK", is_on, 1); on_off(database, "ENB_DL_TICK", is_on, 1);
on_off(database, "ENB_DLSCH_UE_DCI", is_on, 1);
for (i = 0; i < on_off_n; i++) for (i = 0; i < on_off_n; i++)
on_off(database, on_off_name[i], is_on, on_off_action[i]); on_off(database, on_off_name[i], is_on, on_off_action[i]);
......
...@@ -1162,6 +1162,9 @@ void phy_procedures_eNB_TX(unsigned char sched_subframe,PHY_VARS_eNB *phy_vars_e ...@@ -1162,6 +1162,9 @@ void phy_procedures_eNB_TX(unsigned char sched_subframe,PHY_VARS_eNB *phy_vars_e
else else
UE_id = i; UE_id = i;
T(T_ENB_DLSCH_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), T_INT(DCI_pdu->dci_alloc[i].format));
if (UE_id>=0) { if (UE_id>=0) {
if ((frame%100)==0) { if ((frame%100)==0) {
LOG_D(PHY,"Frame %3d, SF %d \n",frame,subframe); LOG_D(PHY,"Frame %3d, SF %d \n",frame,subframe);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment