From b93a02f28f3f5fe0a54d91b3e589af0209199250 Mon Sep 17 00:00:00 2001 From: Istvan-Zsolt Szekely Date: Wed, 11 Sep 2024 13:43:25 +0100 Subject: [PATCH 1/2] util_axis_fifo: Fix tkeep signal value when KEEP_EN is 0 Signed-off-by: Istvan-Zsolt Szekely --- library/util_axis_fifo/util_axis_fifo.v | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/library/util_axis_fifo/util_axis_fifo.v b/library/util_axis_fifo/util_axis_fifo.v index a130779116..b21e7df1bf 100644 --- a/library/util_axis_fifo/util_axis_fifo.v +++ b/library/util_axis_fifo/util_axis_fifo.v @@ -162,7 +162,7 @@ module util_axis_fifo #( end assign m_axis_tkeep = axis_tkeep_d; end else - assign m_axis_tkeep = {DATA_WIDTH/8{1'b1}}; + assign m_axis_tkeep = 'h0; end /* zerodeep */ else @@ -221,7 +221,7 @@ module util_axis_fifo #( end assign m_axis_tkeep = axis_tkeep_d; end else - assign m_axis_tkeep = {DATA_WIDTH/8{1'b1}}; + assign m_axis_tkeep = 'h0; end /* !ASYNC_CLK */ @@ -293,12 +293,12 @@ module util_axis_fifo #( assign m_axis_data = m_axis_data_int_s[DATA_WIDTH-1:0]; end else if (TLAST_EN) begin assign s_axis_data_int_s = {s_axis_tlast, s_axis_data}; - assign m_axis_tkeep = {DATA_WIDTH/8{1'b1}}; + assign m_axis_tkeep = 'h0; assign m_axis_tlast = m_axis_data_int_s[DATA_WIDTH]; assign m_axis_data = m_axis_data_int_s[DATA_WIDTH-1:0]; end else begin assign s_axis_data_int_s = {s_axis_data}; - assign m_axis_tkeep = {DATA_WIDTH/8{1'b1}}; + assign m_axis_tkeep = 'h0; assign m_axis_tlast = 'b0; assign m_axis_data = m_axis_data_int_s[DATA_WIDTH-1:0]; end From 79fc8d8df47c88aa93aeb427d6ef4523c46c7be5 Mon Sep 17 00:00:00 2001 From: Istvan-Zsolt Szekely Date: Thu, 21 Nov 2024 13:48:34 +0000 Subject: [PATCH 2/2] util_axis_fifo: Set tkeep and tlast values to 1 as the standard requires Signed-off-by: Istvan-Zsolt Szekely --- library/util_axis_fifo/util_axis_fifo.v | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/library/util_axis_fifo/util_axis_fifo.v b/library/util_axis_fifo/util_axis_fifo.v index b21e7df1bf..c07a740fb6 100644 --- a/library/util_axis_fifo/util_axis_fifo.v +++ b/library/util_axis_fifo/util_axis_fifo.v @@ -149,7 +149,7 @@ module util_axis_fifo #( end assign m_axis_tlast = axis_tlast_d; end else - assign m_axis_tlast = 'b0; + assign m_axis_tlast = 1'b1; // TKEEP support if (TKEEP_EN) begin @@ -162,7 +162,7 @@ module util_axis_fifo #( end assign m_axis_tkeep = axis_tkeep_d; end else - assign m_axis_tkeep = 'h0; + assign m_axis_tkeep = ~0; end /* zerodeep */ else @@ -206,7 +206,7 @@ module util_axis_fifo #( end assign m_axis_tlast = axis_tlast_d; end else - assign m_axis_tlast = 'b0; + assign m_axis_tlast = 1'b1; // TKEEP support if (TKEEP_EN) begin @@ -221,7 +221,7 @@ module util_axis_fifo #( end assign m_axis_tkeep = axis_tkeep_d; end else - assign m_axis_tkeep = 'h0; + assign m_axis_tkeep = ~0; end /* !ASYNC_CLK */ @@ -289,17 +289,17 @@ module util_axis_fifo #( end else if (TKEEP_EN) begin assign s_axis_data_int_s = {s_axis_tkeep, s_axis_data}; assign m_axis_tkeep = m_axis_data_int_s[MEM_WORD-1-:DATA_WIDTH/8]; - assign m_axis_tlast = 'b0; + assign m_axis_tlast = 1'b1; assign m_axis_data = m_axis_data_int_s[DATA_WIDTH-1:0]; end else if (TLAST_EN) begin assign s_axis_data_int_s = {s_axis_tlast, s_axis_data}; - assign m_axis_tkeep = 'h0; + assign m_axis_tkeep = ~0; assign m_axis_tlast = m_axis_data_int_s[DATA_WIDTH]; assign m_axis_data = m_axis_data_int_s[DATA_WIDTH-1:0]; end else begin assign s_axis_data_int_s = {s_axis_data}; - assign m_axis_tkeep = 'h0; - assign m_axis_tlast = 'b0; + assign m_axis_tkeep = ~0; + assign m_axis_tlast = 1'b1; assign m_axis_data = m_axis_data_int_s[DATA_WIDTH-1:0]; end