diff options
author | RobertWalstab <robert.walstab@gmail.com> | 2020-07-14 10:32:26 +0200 |
---|---|---|
committer | Aaron Rossetto <aaron.rossetto@ni.com> | 2020-07-20 16:01:03 -0500 |
commit | 83a4756c957dd7698baeb56e13260d8edaa7bc2e (patch) | |
tree | 969e5165de8ff8acce3799885d69da0700593010 | |
parent | e962cc4a5e51e2326eb656ee2a779ea26774687b (diff) | |
download | uhd-83a4756c957dd7698baeb56e13260d8edaa7bc2e.tar.gz uhd-83a4756c957dd7698baeb56e13260d8edaa7bc2e.tar.bz2 uhd-83a4756c957dd7698baeb56e13260d8edaa7bc2e.zip |
fpga: remove liberio
-rw-r--r-- | fpga/usrp3/lib/rfnoc/xport/Makefile.srcs | 1 | ||||
-rw-r--r-- | fpga/usrp3/lib/rfnoc/xport/liberio_chdr64_adapter.v | 124 | ||||
-rw-r--r-- | fpga/usrp3/lib/rfnoc/xport/rfnoc_xport_types.vh | 3 | ||||
-rw-r--r-- | fpga/usrp3/top/x300/nirio_chdr64_adapter.v | 2 |
4 files changed, 3 insertions, 127 deletions
diff --git a/fpga/usrp3/lib/rfnoc/xport/Makefile.srcs b/fpga/usrp3/lib/rfnoc/xport/Makefile.srcs index 12582750b..cb3a97d5b 100644 --- a/fpga/usrp3/lib/rfnoc/xport/Makefile.srcs +++ b/fpga/usrp3/lib/rfnoc/xport/Makefile.srcs @@ -13,5 +13,4 @@ eth_ipv4_chdr64_adapter.v \ eth_ipv4_chdr64_dispatch.v \ eth_interface.v \ eth_internal.v \ -liberio_chdr64_adapter.v \ )) diff --git a/fpga/usrp3/lib/rfnoc/xport/liberio_chdr64_adapter.v b/fpga/usrp3/lib/rfnoc/xport/liberio_chdr64_adapter.v deleted file mode 100644 index 2fff4b0d0..000000000 --- a/fpga/usrp3/lib/rfnoc/xport/liberio_chdr64_adapter.v +++ /dev/null @@ -1,124 +0,0 @@ -// -// Copyright 2019 Ettus Research, A National Instruments brand -// -// SPDX-License-Identifier: LGPL-3.0-or-later -// -// Module: liberio_chdr64_adapter -// Description: The transport adapter for a liberio transport with CHDR_W of -// 64. A tuser field is used to identify the DMA engine for return routes. -// The stream for a given SrcEPID with ID s_dma_tuser will return packets to -// that EPID with same ID on m_dma_tuser (after an Advertise management -// operation). -// -// Parameters: -// - PROTOVER: RFNoC protocol version {8'd<major>, 8'd<minor>} -// - RT_TBL_SIZE: Log2 of the depth of the return-address routing table -// - NODE_INST: The node type to return for a node-info discovery -// - DMA_ID_WIDTH: The width of the tuser signal that identifies the DMA engine) -// -// Signals: -// - device_id : The ID of the device that has instantiated this module -// - s_dma_*: The input DMA stream from the CPU (plus tuser for source DMA engine ID) -// - m_dma_*: The output DMA stream to the CPU (plus tuser for dest DMA engine ID) -// - s_chdr_*: The input CHDR stream from the rfnoc infrastructure -// - m_chdr_*: The output CHDR stream to the rfnoc infrastructure -// - -module liberio_chdr64_adapter #( - parameter [15:0] PROTOVER = {8'd1, 8'd0}, - parameter RT_TBL_SIZE = 6, - parameter NODE_INST = 0, - parameter DMA_ID_WIDTH = 8 -)( - // Clocking and reset interface - input wire clk, - input wire rst, - // Device info - input wire [15:0] device_id, - // AXI-Stream interface to/from DMA engines - input wire [63:0] s_dma_tdata, - input wire [DMA_ID_WIDTH-1:0] s_dma_tuser, - input wire s_dma_tlast, - input wire s_dma_tvalid, - output wire s_dma_tready, - output wire [63:0] m_dma_tdata, - output wire [DMA_ID_WIDTH-1:0] m_dma_tuser, - output wire m_dma_tlast, - output wire m_dma_tvalid, - input wire m_dma_tready, - // AXI-Stream interface to/from CHDR infrastructure - input wire [63:0] s_chdr_tdata, - input wire s_chdr_tlast, - input wire s_chdr_tvalid, - output wire s_chdr_tready, - output wire [63:0] m_chdr_tdata, - output wire m_chdr_tlast, - output wire m_chdr_tvalid, - input wire m_chdr_tready -); - - `include "../core/rfnoc_chdr_utils.vh" - `include "../core/rfnoc_chdr_internal_utils.vh" - `include "rfnoc_xport_types.vh" - - //--------------------------------------- - // CHDR Transport Adapter - //--------------------------------------- - wire [DMA_ID_WIDTH-1:0] m_axis_xport_tuser; - - chdr_xport_adapter_generic #( - .PROTOVER (PROTOVER), - .CHDR_W (64), - .USER_W (DMA_ID_WIDTH), - .TBL_SIZE (RT_TBL_SIZE), - .NODE_SUBTYPE (NODE_SUBTYPE_XPORT_LIBERIO_CHDR64), - .NODE_INST (NODE_INST), - .ALLOW_DISC (0) - ) xport_adapter_gen_i ( - .clk (clk), - .rst (rst), - .device_id (device_id), - .s_axis_xport_tdata (s_dma_tdata), - .s_axis_xport_tuser (s_dma_tuser), - .s_axis_xport_tlast (s_dma_tlast), - .s_axis_xport_tvalid (s_dma_tvalid), - .s_axis_xport_tready (s_dma_tready), - .m_axis_xport_tdata (m_dma_tdata), - .m_axis_xport_tuser (m_axis_xport_tuser), - .m_axis_xport_tlast (m_dma_tlast), - .m_axis_xport_tvalid (m_dma_tvalid), - .m_axis_xport_tready (m_dma_tready), - .s_axis_rfnoc_tdata (s_chdr_tdata), - .s_axis_rfnoc_tlast (s_chdr_tlast), - .s_axis_rfnoc_tvalid (s_chdr_tvalid), - .s_axis_rfnoc_tready (s_chdr_tready), - .m_axis_rfnoc_tdata (m_chdr_tdata), - .m_axis_rfnoc_tlast (m_chdr_tlast), - .m_axis_rfnoc_tvalid (m_chdr_tvalid), - .m_axis_rfnoc_tready (m_chdr_tready), - .ctrlport_req_wr (/* unused */), - .ctrlport_req_rd (/* unused */), - .ctrlport_req_addr (/* unused */), - .ctrlport_req_data (/* unused */), - .ctrlport_resp_ack (/* unused */ 1'b0), - .ctrlport_resp_data (/* unused */ 32'd0) - ); - - // Ensure tdest does not change for entire packet - reg m_hdr = 1'b1; - always @(posedge clk) begin - if (rst) - m_hdr <= 1'b1; - else if (m_dma_tvalid && m_dma_tready) - m_hdr <= m_dma_tlast; - end - - reg [DMA_ID_WIDTH-1:0] cached_dest = {DMA_ID_WIDTH{1'b0}}; - always @(posedge clk) begin - if (m_hdr) - cached_dest <= m_axis_xport_tuser; - end - - assign m_dma_tuser = m_hdr ? m_axis_xport_tuser : cached_dest; - -endmodule // liberio_chdr64_adapter diff --git a/fpga/usrp3/lib/rfnoc/xport/rfnoc_xport_types.vh b/fpga/usrp3/lib/rfnoc/xport/rfnoc_xport_types.vh index 5b273a4b4..841835a10 100644 --- a/fpga/usrp3/lib/rfnoc/xport/rfnoc_xport_types.vh +++ b/fpga/usrp3/lib/rfnoc/xport/rfnoc_xport_types.vh @@ -7,5 +7,6 @@ // Add all new transport types here localparam [7:0] NODE_SUBTYPE_XPORT_GENERIC = 8'd0; localparam [7:0] NODE_SUBTYPE_XPORT_IPV4_CHDR64 = 8'd1; -localparam [7:0] NODE_SUBTYPE_XPORT_LIBERIO_CHDR64 = 8'd2; +// localparam [7:0] NODE_SUBTYPE_XPORT_LIBERIO_CHDR64 = 8'd2; +// Subtype 2 used to be Liberio, is now reserved to avoid conflict. localparam [7:0] NODE_SUBTYPE_XPORT_NIRIO_CHDR64 = 8'd3; diff --git a/fpga/usrp3/top/x300/nirio_chdr64_adapter.v b/fpga/usrp3/top/x300/nirio_chdr64_adapter.v index 8073e198b..370817c61 100644 --- a/fpga/usrp3/top/x300/nirio_chdr64_adapter.v +++ b/fpga/usrp3/top/x300/nirio_chdr64_adapter.v @@ -107,4 +107,4 @@ module nirio_chdr64_adapter #( .ctrlport_resp_data (/* unused */ 32'd0) ); -endmodule // liberio_chdr64_adapter +endmodule |