From 57356cc4ee8fb92ab3c63f588e847860a4cc686d Mon Sep 17 00:00:00 2001 From: IstvanZsSzekely <122256380+IstvanZsSzekely@users.noreply.github.com> Date: Fri, 26 Jan 2024 13:31:21 +0200 Subject: [PATCH] util_axis_fifo: Update (#1255) * util_axis_fifo: Update - Added missing signal drivers for tlast and tkeep Signed-off-by: Istvan-Zsolt Szekely --- library/util_axis_fifo/util_axis_fifo.v | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/library/util_axis_fifo/util_axis_fifo.v b/library/util_axis_fifo/util_axis_fifo.v index 1916b9528..a13077911 100644 --- a/library/util_axis_fifo/util_axis_fifo.v +++ b/library/util_axis_fifo/util_axis_fifo.v @@ -1,6 +1,6 @@ // *************************************************************************** // *************************************************************************** -// Copyright (C) 2014-2023 Analog Devices, Inc. All rights reserved. +// Copyright (C) 2014-2024 Analog Devices, Inc. All rights reserved. // // In this HDL repository, there are many different and unique modules, consisting // of various HDL (Verilog or VHDL) components. The individual modules are @@ -148,8 +148,8 @@ module util_axis_fifo #( axis_tlast_d <= s_axis_tlast; end assign m_axis_tlast = axis_tlast_d; - - end + end else + assign m_axis_tlast = 'b0; // TKEEP support if (TKEEP_EN) begin @@ -161,8 +161,8 @@ module util_axis_fifo #( axis_tkeep_d <= s_axis_tkeep; end assign m_axis_tkeep = axis_tkeep_d; - - end + end else + assign m_axis_tkeep = {DATA_WIDTH/8{1'b1}}; end /* zerodeep */ else @@ -205,7 +205,8 @@ module util_axis_fifo #( end end assign m_axis_tlast = axis_tlast_d; - end + end else + assign m_axis_tlast = 'b0; // TKEEP support if (TKEEP_EN) begin @@ -219,8 +220,8 @@ module util_axis_fifo #( end end assign m_axis_tkeep = axis_tkeep_d; - - end + end else + assign m_axis_tkeep = {DATA_WIDTH/8{1'b1}}; end /* !ASYNC_CLK */ @@ -288,13 +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_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_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_tlast = 'b0; assign m_axis_data = m_axis_data_int_s[DATA_WIDTH-1:0]; end