From 96e348ac8494dbf9d24ff5af2f166526b5ea2b5e Mon Sep 17 00:00:00 2001 From: Alex Forencich Date: Fri, 7 Feb 2025 23:24:28 -0800 Subject: [PATCH] eth: Invert TX completion output control Signed-off-by: Alex Forencich --- rtl/eth/taxi_axis_baser_tx_64.sv | 4 ++-- rtl/eth/taxi_axis_gmii_tx.sv | 2 +- rtl/eth/taxi_axis_xgmii_tx_32.sv | 2 +- rtl/eth/taxi_axis_xgmii_tx_64.sv | 4 ++-- tb/eth/taxi_axis_baser_tx_64/test_taxi_axis_baser_tx_64.py | 4 ++-- tb/eth/taxi_axis_gmii_tx/test_taxi_axis_gmii_tx.py | 2 +- tb/eth/taxi_axis_xgmii_tx_32/test_taxi_axis_xgmii_tx_32.py | 4 ++-- tb/eth/taxi_axis_xgmii_tx_64/test_taxi_axis_xgmii_tx_64.py | 4 ++-- 8 files changed, 13 insertions(+), 13 deletions(-) diff --git a/rtl/eth/taxi_axis_baser_tx_64.sv b/rtl/eth/taxi_axis_baser_tx_64.sv index f7aa3ac..1e2d878 100644 --- a/rtl/eth/taxi_axis_baser_tx_64.sv +++ b/rtl/eth/taxi_axis_baser_tx_64.sv @@ -641,9 +641,9 @@ always_ff @(posedge clk) begin m_axis_tx_cpl_tag_reg <= s_axis_tx.tid; if (TX_CPL_CTRL_IN_TUSER) begin if (PTP_TS_FMT_TOD) begin - m_axis_tx_cpl_valid_int_reg <= (s_axis_tx.tuser >> 1) != 0; + m_axis_tx_cpl_valid_int_reg <= (s_axis_tx.tuser >> 1) == 0; end else begin - m_axis_tx_cpl_valid_reg <= (s_axis_tx.tuser >> 1) != 0; + m_axis_tx_cpl_valid_reg <= (s_axis_tx.tuser >> 1) == 0; end end else begin if (PTP_TS_FMT_TOD) begin diff --git a/rtl/eth/taxi_axis_gmii_tx.sv b/rtl/eth/taxi_axis_gmii_tx.sv index ccc88af..220a024 100644 --- a/rtl/eth/taxi_axis_gmii_tx.sv +++ b/rtl/eth/taxi_axis_gmii_tx.sv @@ -185,7 +185,7 @@ always_comb begin m_axis_tx_cpl_ts_next = ptp_ts; m_axis_tx_cpl_tag_next = s_axis_tx.tid; if (TX_CPL_CTRL_IN_TUSER) begin - m_axis_tx_cpl_valid_next = (s_axis_tx.tuser >> 1) != 0; + m_axis_tx_cpl_valid_next = (s_axis_tx.tuser >> 1) == 0; end else begin m_axis_tx_cpl_valid_next = 1'b1; end diff --git a/rtl/eth/taxi_axis_xgmii_tx_32.sv b/rtl/eth/taxi_axis_xgmii_tx_32.sv index 4d44f24..553a3cb 100644 --- a/rtl/eth/taxi_axis_xgmii_tx_32.sv +++ b/rtl/eth/taxi_axis_xgmii_tx_32.sv @@ -262,7 +262,7 @@ always_comb begin end m_axis_tx_cpl_tag_next = s_axis_tx.tid; if (TX_CPL_CTRL_IN_TUSER) begin - m_axis_tx_cpl_valid_next = (s_axis_tx.tuser >> 1) != 0; + m_axis_tx_cpl_valid_next = (s_axis_tx.tuser >> 1) == 0; end else begin m_axis_tx_cpl_valid_next = 1'b1; end diff --git a/rtl/eth/taxi_axis_xgmii_tx_64.sv b/rtl/eth/taxi_axis_xgmii_tx_64.sv index 262e380..e92fb9c 100644 --- a/rtl/eth/taxi_axis_xgmii_tx_64.sv +++ b/rtl/eth/taxi_axis_xgmii_tx_64.sv @@ -560,9 +560,9 @@ always_ff @(posedge clk) begin m_axis_tx_cpl_tag_reg <= s_axis_tx.tid; if (TX_CPL_CTRL_IN_TUSER) begin if (PTP_TS_FMT_TOD) begin - m_axis_tx_cpl_valid_int_reg <= (s_axis_tx.tuser >> 1) != 0; + m_axis_tx_cpl_valid_int_reg <= (s_axis_tx.tuser >> 1) == 0; end else begin - m_axis_tx_cpl_valid_reg <= (s_axis_tx.tuser >> 1) != 0; + m_axis_tx_cpl_valid_reg <= (s_axis_tx.tuser >> 1) == 0; end end else begin if (PTP_TS_FMT_TOD) begin diff --git a/tb/eth/taxi_axis_baser_tx_64/test_taxi_axis_baser_tx_64.py b/tb/eth/taxi_axis_baser_tx_64/test_taxi_axis_baser_tx_64.py index 83ffdfb..1c6aac0 100644 --- a/tb/eth/taxi_axis_baser_tx_64/test_taxi_axis_baser_tx_64.py +++ b/tb/eth/taxi_axis_baser_tx_64/test_taxi_axis_baser_tx_64.py @@ -79,7 +79,7 @@ async def run_test(dut, payload_lengths=None, payload_data=None, ifg=12): test_frames = [payload_data(x) for x in payload_lengths()] for test_data in test_frames: - await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=2)) + await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=0)) for test_data in test_frames: rx_frame = await tb.sink.recv() @@ -130,7 +130,7 @@ async def run_test_alignment(dut, payload_data=None, ifg=12): start_lane = [] for test_data in test_frames: - await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=2)) + await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=0)) for test_data in test_frames: rx_frame = await tb.sink.recv() diff --git a/tb/eth/taxi_axis_gmii_tx/test_taxi_axis_gmii_tx.py b/tb/eth/taxi_axis_gmii_tx/test_taxi_axis_gmii_tx.py index 311da95..6ee9ec6 100644 --- a/tb/eth/taxi_axis_gmii_tx/test_taxi_axis_gmii_tx.py +++ b/tb/eth/taxi_axis_gmii_tx/test_taxi_axis_gmii_tx.py @@ -95,7 +95,7 @@ async def run_test(dut, payload_lengths=None, payload_data=None, ifg=12, enable_ test_frames = [payload_data(x) for x in payload_lengths()] for test_data in test_frames: - await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=2)) + await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=0)) for test_data in test_frames: rx_frame = await tb.sink.recv() diff --git a/tb/eth/taxi_axis_xgmii_tx_32/test_taxi_axis_xgmii_tx_32.py b/tb/eth/taxi_axis_xgmii_tx_32/test_taxi_axis_xgmii_tx_32.py index 296571d..895469e 100644 --- a/tb/eth/taxi_axis_xgmii_tx_32/test_taxi_axis_xgmii_tx_32.py +++ b/tb/eth/taxi_axis_xgmii_tx_32/test_taxi_axis_xgmii_tx_32.py @@ -68,7 +68,7 @@ async def run_test(dut, payload_lengths=None, payload_data=None, ifg=12): test_frames = [payload_data(x) for x in payload_lengths()] for test_data in test_frames: - await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=2)) + await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=0)) for test_data in test_frames: rx_frame = await tb.sink.recv() @@ -115,7 +115,7 @@ async def run_test_alignment(dut, payload_data=None, ifg=12): start_lane = [] for test_data in test_frames: - await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=2)) + await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=0)) for test_data in test_frames: rx_frame = await tb.sink.recv() diff --git a/tb/eth/taxi_axis_xgmii_tx_64/test_taxi_axis_xgmii_tx_64.py b/tb/eth/taxi_axis_xgmii_tx_64/test_taxi_axis_xgmii_tx_64.py index 70bb756..649d12c 100644 --- a/tb/eth/taxi_axis_xgmii_tx_64/test_taxi_axis_xgmii_tx_64.py +++ b/tb/eth/taxi_axis_xgmii_tx_64/test_taxi_axis_xgmii_tx_64.py @@ -68,7 +68,7 @@ async def run_test(dut, payload_lengths=None, payload_data=None, ifg=12): test_frames = [payload_data(x) for x in payload_lengths()] for test_data in test_frames: - await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=2)) + await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=0)) for test_data in test_frames: rx_frame = await tb.sink.recv() @@ -119,7 +119,7 @@ async def run_test_alignment(dut, payload_data=None, ifg=12): start_lane = [] for test_data in test_frames: - await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=2)) + await tb.source.send(AxiStreamFrame(test_data, tid=0, tuser=0)) for test_data in test_frames: rx_frame = await tb.sink.recv()