aboutsummaryrefslogtreecommitdiffstats
path: root/host/utils/rfnoc/templates
diff options
context:
space:
mode:
Diffstat (limited to 'host/utils/rfnoc/templates')
-rw-r--r--host/utils/rfnoc/templates/CMakeLists.txt16
-rw-r--r--host/utils/rfnoc/templates/modules/CMakeLists.txt24
-rw-r--r--host/utils/rfnoc/templates/modules/chdr_xb_sep_transport.v.mako23
-rw-r--r--host/utils/rfnoc/templates/modules/connect_clk_domains.v.mako12
-rw-r--r--host/utils/rfnoc/templates/modules/connect_io_ports.v.mako20
-rw-r--r--host/utils/rfnoc/templates/modules/ctrl_crossbar.v.mako39
-rw-r--r--host/utils/rfnoc/templates/modules/device_io_ports.v.mako9
-rw-r--r--host/utils/rfnoc/templates/modules/device_transport.v.mako13
-rw-r--r--host/utils/rfnoc/templates/modules/drive_unused_ports.v.mako21
-rw-r--r--host/utils/rfnoc/templates/modules/rfnoc_block.v.mako91
-rw-r--r--host/utils/rfnoc/templates/modules/sep_xb_wires.v.mako12
-rw-r--r--host/utils/rfnoc/templates/modules/static_router.v.mako15
-rw-r--r--host/utils/rfnoc/templates/modules/stream_endpoints.v.mako92
-rw-r--r--host/utils/rfnoc/templates/rfnoc_image_core.v.mako159
14 files changed, 0 insertions, 546 deletions
diff --git a/host/utils/rfnoc/templates/CMakeLists.txt b/host/utils/rfnoc/templates/CMakeLists.txt
deleted file mode 100644
index 88c5e3bd4..000000000
--- a/host/utils/rfnoc/templates/CMakeLists.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-#
-# Copyright 2019 Ettus Research, A National Instrument Brand
-#
-# SPDX-License-Identifier: GPL-3.0-or-later
-#
-
-########################################################################
-# This file included, use CMake directory variables
-########################################################################
-set(RFNOC_PKG_FILES ${RFNOC_PKG_FILES})
-set(RFNOC_PKG_TOP_FILES
- ${CMAKE_CURRENT_SOURCE_DIR}/rfnoc_image_core.v.mako
-)
-list(APPEND RFNOC_PKG_FILES ${RFNOC_PKG_TOP_FILES})
-add_subdirectory(modules)
-set(RFNOC_PKG_FILES ${RFNOC_PKG_FILES} PARENT_SCOPE)
diff --git a/host/utils/rfnoc/templates/modules/CMakeLists.txt b/host/utils/rfnoc/templates/modules/CMakeLists.txt
deleted file mode 100644
index ee69b63b5..000000000
--- a/host/utils/rfnoc/templates/modules/CMakeLists.txt
+++ /dev/null
@@ -1,24 +0,0 @@
-#
-# Copyright 2017 Ettus Research, National Instruments Company
-#
-# SPDX-License-Identifier: GPL-3.0-or-later
-#
-
-########################################################################
-# This file included, use CMake directory variables
-########################################################################
-set(RFNOC_PKG_FILES ${RFNOC_PKG_FILES})
-set(RFNOC_PKG_TOP_FILES
- ${CMAKE_CURRENT_SOURCE_DIR}/chdr_xb_sep_transport.v.mako
- ${CMAKE_CURRENT_SOURCE_DIR}/connect_io_ports.v.mako
- ${CMAKE_CURRENT_SOURCE_DIR}/ctrl_crossbar.v.mako
- ${CMAKE_CURRENT_SOURCE_DIR}/device_io_ports.v.mako
- ${CMAKE_CURRENT_SOURCE_DIR}/device_transport.v.mako
- ${CMAKE_CURRENT_SOURCE_DIR}/drive_unused_ports.v.mako
- ${CMAKE_CURRENT_SOURCE_DIR}/rfnoc_block.v.mako
- ${CMAKE_CURRENT_SOURCE_DIR}/sep_xb_wires.v.mako
- ${CMAKE_CURRENT_SOURCE_DIR}/static_router.v.mako
- ${CMAKE_CURRENT_SOURCE_DIR}/stream_endpoints.v.mako
-)
-list(APPEND RFNOC_PKG_FILES ${RFNOC_PKG_TOP_FILES})
-set(RFNOC_PKG_FILES ${RFNOC_PKG_FILES} PARENT_SCOPE)
diff --git a/host/utils/rfnoc/templates/modules/chdr_xb_sep_transport.v.mako b/host/utils/rfnoc/templates/modules/chdr_xb_sep_transport.v.mako
deleted file mode 100644
index 0862a1ac1..000000000
--- a/host/utils/rfnoc/templates/modules/chdr_xb_sep_transport.v.mako
+++ /dev/null
@@ -1,23 +0,0 @@
-<%page args="seps, transports"/>\
-\
-<%
- import re
- sep2xb = ""
- xb2sep = ""
- for sep in reversed(list(seps.keys())):
- sep2xb += "%s_to_xb_wire, " % sep
- xb2sep += "xb_to_%s_wire, " % sep
- for transport in reversed(transports):
- sep2xb += "s_%s_wire, " % transport["name"]
- xb2sep += "m_%s_wire, " % transport["name"]
- sep2xb = sep2xb[:-2]
- xb2sep = xb2sep[:-2]
-%>\
- .s_axis_tdata ({${re.sub("wire", "tdata", sep2xb)}}),
- .s_axis_tlast ({${re.sub("wire", "tlast", sep2xb)}}),
- .s_axis_tvalid ({${re.sub("wire", "tvalid", sep2xb)}}),
- .s_axis_tready ({${re.sub("wire", "tready", sep2xb)}}),
- .m_axis_tdata ({${re.sub("wire", "tdata", xb2sep)}}),
- .m_axis_tlast ({${re.sub("wire", "tlast", xb2sep)}}),
- .m_axis_tvalid ({${re.sub("wire", "tvalid", xb2sep)}}),
- .m_axis_tready ({${re.sub("wire", "tready", xb2sep)}}),
diff --git a/host/utils/rfnoc/templates/modules/connect_clk_domains.v.mako b/host/utils/rfnoc/templates/modules/connect_clk_domains.v.mako
deleted file mode 100644
index df055645c..000000000
--- a/host/utils/rfnoc/templates/modules/connect_clk_domains.v.mako
+++ /dev/null
@@ -1,12 +0,0 @@
-<%page args="connections, clocks"/>\
-\
-%for connection in connections:
-<%
- src_name = connection["srcblk"] # Should always be "_device_"
- src = clocks[(src_name, connection["srcport"])]
- dst_name = connection["dstblk"]
- dst = clocks[(dst_name, connection["dstport"])]
-%>\
- assign ${dst_name}_${dst["name"]}_clk = ${src["name"]}_clk;
-%endfor
-
diff --git a/host/utils/rfnoc/templates/modules/connect_io_ports.v.mako b/host/utils/rfnoc/templates/modules/connect_io_ports.v.mako
deleted file mode 100644
index c37697d88..000000000
--- a/host/utils/rfnoc/templates/modules/connect_io_ports.v.mako
+++ /dev/null
@@ -1,20 +0,0 @@
-<%page args="connections, io_ports, names"/>\
-\
-%for connection in connections:
-<%
- src_name = connection["srcblk"]
- src = io_ports[(src_name, connection["srcport"], names[0])]
- dst_name = connection["dstblk"]
- dst = io_ports[(dst_name, connection["dstport"], names[1])]
-%>\
- %for src_wire, dst_wire in zip(src["wires"], dst["wires"]):
-<%
- swire = src_wire["name"] if src_name == "_device_" else "%s_%s" % (src_name, src_wire["name"])
- dwire = dst_wire["name"] if dst_name == "_device_" else "%s_%s" % (dst_name, dst_wire["name"])
- if src_wire["direction"] == "output":
- swire, dwire = dwire, swire
-%>\
- assign ${dwire} = ${swire};
- %endfor
-
-%endfor
diff --git a/host/utils/rfnoc/templates/modules/ctrl_crossbar.v.mako b/host/utils/rfnoc/templates/modules/ctrl_crossbar.v.mako
deleted file mode 100644
index 5872e270e..000000000
--- a/host/utils/rfnoc/templates/modules/ctrl_crossbar.v.mako
+++ /dev/null
@@ -1,39 +0,0 @@
-<%page args="seps, blocks"/>\
-\
-<%
- import re
- axisstr = ""
- for block in reversed(list(blocks.keys())):
- axisstr += "{0}_%s_ctrl_{1}, " % block
- for sep in reversed(list(seps.keys())):
- axisstr += "{0}_%s_ctrl_{1}, " % sep
- axisstr += "{0}_core_ctrl_{1}"
-%>\
-%for block in blocks:
- wire [31:0] m_${block}_ctrl_tdata , s_${block}_ctrl_tdata ;
- wire m_${block}_ctrl_tlast , s_${block}_ctrl_tlast ;
- wire m_${block}_ctrl_tvalid, s_${block}_ctrl_tvalid;
- wire m_${block}_ctrl_tready, s_${block}_ctrl_tready;
-%endfor
-
- axis_ctrl_crossbar_nxn #(
- .WIDTH (32),
- .NPORTS (${len(seps) + len(blocks) + 1}),
- .TOPOLOGY ("TORUS"),
- .INGRESS_BUFF_SIZE(5),
- .ROUTER_BUFF_SIZE (5),
- .ROUTING_ALLOC ("WORMHOLE"),
- .SWITCH_ALLOC ("PRIO")
- ) ctrl_xb_i (
- .clk (rfnoc_ctrl_clk),
- .reset (rfnoc_ctrl_rst),
- .s_axis_tdata ({${axisstr.format("m", "tdata ")}}),
- .s_axis_tvalid ({${axisstr.format("m", "tvalid")}}),
- .s_axis_tlast ({${axisstr.format("m", "tlast ")}}),
- .s_axis_tready ({${axisstr.format("m", "tready")}}),
- .m_axis_tdata ({${axisstr.format("s", "tdata ")}}),
- .m_axis_tvalid ({${axisstr.format("s", "tvalid")}}),
- .m_axis_tlast ({${axisstr.format("s", "tlast ")}}),
- .m_axis_tready ({${axisstr.format("s", "tready")}}),
- .deadlock_detected()
- );
diff --git a/host/utils/rfnoc/templates/modules/device_io_ports.v.mako b/host/utils/rfnoc/templates/modules/device_io_ports.v.mako
deleted file mode 100644
index abfb86c98..000000000
--- a/host/utils/rfnoc/templates/modules/device_io_ports.v.mako
+++ /dev/null
@@ -1,9 +0,0 @@
-<%page args="io_ports"/>\
-<%import six%>\
-//// IO ports //////////////////////////////////
-%for name, io_port in six.iteritems(io_ports):
-// ${name}
- %for wire in io_port["wires"]:
- ${wire["direction"]} wire [${"%3d" % wire["width"]}-1:0] ${wire["name"]},
- %endfor
-%endfor
diff --git a/host/utils/rfnoc/templates/modules/device_transport.v.mako b/host/utils/rfnoc/templates/modules/device_transport.v.mako
deleted file mode 100644
index 3d752ce13..000000000
--- a/host/utils/rfnoc/templates/modules/device_transport.v.mako
+++ /dev/null
@@ -1,13 +0,0 @@
-<%page args="transports"/>\
-\
-%for i, transport in enumerate(transports):
- // Transport ${i} (${transport["name"]} ${transport["type"]})
- input wire [${transport["width"]}-1:0] s_${transport["name"]}_tdata,
- input wire s_${transport["name"]}_tlast,
- input wire s_${transport["name"]}_tvalid,
- output wire s_${transport["name"]}_tready,
- output wire [${transport["width"]}-1:0] m_${transport["name"]}_tdata,
- output wire m_${transport["name"]}_tlast,
- output wire m_${transport["name"]}_tvalid,
- input wire m_${transport["name"]}_tready${"," if i < len(transports) - 1 else ""}
-%endfor
diff --git a/host/utils/rfnoc/templates/modules/drive_unused_ports.v.mako b/host/utils/rfnoc/templates/modules/drive_unused_ports.v.mako
deleted file mode 100644
index dfa1e7eb6..000000000
--- a/host/utils/rfnoc/templates/modules/drive_unused_ports.v.mako
+++ /dev/null
@@ -1,21 +0,0 @@
-<%page args="connections, block_ports"/>\
-<%
- sources = []
- destinations = []
- for connection in connections:
- sources.append((connection["srcblk"], connection["srcport"]))
- destinations.append((connection["dstblk"], connection["dstport"]))
-%>\
-%for (block_name, port_name, direction) in block_ports:
- %if direction == "input":
- %if not (block_name, port_name) in destinations:
- assign s_${block_name}_${port_name}_tdata = {CHDR_W{1'b0}};
- assign s_${block_name}_${port_name}_tlast = 1'b0;
- assign s_${block_name}_${port_name}_tvalid = 1'b0;
- %endif
- %elif direction == "output":
- %if not (block_name, port_name) in sources:
- assign m_${block_name}_${port_name}_tready = 1'b1;
- %endif
- %endif
-%endfor
diff --git a/host/utils/rfnoc/templates/modules/rfnoc_block.v.mako b/host/utils/rfnoc/templates/modules/rfnoc_block.v.mako
deleted file mode 100644
index ee4a811a8..000000000
--- a/host/utils/rfnoc/templates/modules/rfnoc_block.v.mako
+++ /dev/null
@@ -1,91 +0,0 @@
-<%page args="block_id, block_number, block_name, block, block_params, block_ports"/>\
-\
-<%
- import re
- import six
-
- # Create two strings, one for the input and one for the output, that each
- # contains all the signal names to be connected to the input or output
- # AXIS-CHDR ports of this block.
- axis_inputs = ""
- axis_outputs = ""
- for port_desc in block_ports:
- if port_desc[0] == block_name:
- port_name = port_desc[1]
- if port_desc[2] == "input":
- axis_inputs = "{0}_%s_%s_{1}, " % (block_name, port_name) + axis_inputs
- elif port_desc[2] == "output":
- axis_outputs = "{0}_%s_%s_{1}, " % (block_name, port_name) + axis_outputs
- axis_inputs = axis_inputs[:-2]
- axis_outputs = axis_outputs[:-2]
-%>\
-
- // ----------------------------------------------------
- // ${block_name}
- // ----------------------------------------------------
-%for clock in block.clocks:
- %if not clock["name"] in ["rfnoc_chdr", "rfnoc_ctrl"]:
- wire ${block_name}_${clock["name"]}_clk;
- %endif
-%endfor
- wire [CHDR_W-1:0] ${axis_inputs.format("s", "tdata ")};
- wire ${axis_inputs.format("s", "tlast ")};
- wire ${axis_inputs.format("s", "tvalid")};
- wire ${axis_inputs.format("s", "tready")};
- wire [CHDR_W-1:0] ${axis_outputs.format("m", "tdata ")};
- wire ${axis_outputs.format("m", "tlast ")};
- wire ${axis_outputs.format("m", "tvalid")};
- wire ${axis_outputs.format("m", "tready")};
-
-%if hasattr(block, "io_ports"):
- %for name, io_port in six.iteritems(block.io_ports):
- // ${name}
- %for wire in io_port["wires"]:
- wire [${"%3d" % wire["width"]}-1:0] ${block_name}_${wire["name"]};
- %endfor
- %endfor
-%endif
-
- rfnoc_block_${block.module_name} #(
- .THIS_PORTID(${block_id}),
- .CHDR_W(CHDR_W),
-%for name, value in six.iteritems(block_params):
- .${name}(${value}),
-%endfor
- .MTU(MTU)
- ) b_${block_name}_${block_number} (
- .rfnoc_chdr_clk (rfnoc_chdr_clk),
- .rfnoc_ctrl_clk (rfnoc_ctrl_clk),
-%for clock in block.clocks:
- %if not clock["name"] in ["rfnoc_chdr", "rfnoc_ctrl"]:
- .${clock["name"]}_clk(${block_name}_${clock["name"]}_clk),
- %endif
-%endfor
- .rfnoc_core_config (rfnoc_core_config[512*${block_number + 1}-1:512*${block_number}]),
- .rfnoc_core_status (rfnoc_core_status[512*${block_number + 1}-1:512*${block_number}]),
-
-%if hasattr(block, "io_ports"):
- %for name, io_port in six.iteritems(block.io_ports):
- %for wire in io_port["wires"]:
- .${wire["name"]}(${block_name}_${wire["name"]}),
- %endfor
- %endfor
-%endif
-
- .s_rfnoc_chdr_tdata ({${axis_inputs.format("s", "tdata ")}}),
- .s_rfnoc_chdr_tlast ({${axis_inputs.format("s", "tlast ")}}),
- .s_rfnoc_chdr_tvalid({${axis_inputs.format("s", "tvalid")}}),
- .s_rfnoc_chdr_tready({${axis_inputs.format("s", "tready")}}),
- .m_rfnoc_chdr_tdata ({${axis_outputs.format("m", "tdata ")}}),
- .m_rfnoc_chdr_tlast ({${axis_outputs.format("m", "tlast ")}}),
- .m_rfnoc_chdr_tvalid({${axis_outputs.format("m", "tvalid")}}),
- .m_rfnoc_chdr_tready({${axis_outputs.format("m", "tready")}}),
- .s_rfnoc_ctrl_tdata (s_${block_name}_ctrl_tdata ),
- .s_rfnoc_ctrl_tlast (s_${block_name}_ctrl_tlast ),
- .s_rfnoc_ctrl_tvalid(s_${block_name}_ctrl_tvalid),
- .s_rfnoc_ctrl_tready(s_${block_name}_ctrl_tready),
- .m_rfnoc_ctrl_tdata (m_${block_name}_ctrl_tdata ),
- .m_rfnoc_ctrl_tlast (m_${block_name}_ctrl_tlast ),
- .m_rfnoc_ctrl_tvalid(m_${block_name}_ctrl_tvalid),
- .m_rfnoc_ctrl_tready(m_${block_name}_ctrl_tready)
- );
diff --git a/host/utils/rfnoc/templates/modules/sep_xb_wires.v.mako b/host/utils/rfnoc/templates/modules/sep_xb_wires.v.mako
deleted file mode 100644
index 4aa7d56bb..000000000
--- a/host/utils/rfnoc/templates/modules/sep_xb_wires.v.mako
+++ /dev/null
@@ -1,12 +0,0 @@
-<%page args="seps"/>\
-\
-%for sep in seps:
- wire [CHDR_W-1:0] xb_to_${sep}_tdata ;
- wire xb_to_${sep}_tlast ;
- wire xb_to_${sep}_tvalid;
- wire xb_to_${sep}_tready;
- wire [CHDR_W-1:0] ${sep}_to_xb_tdata ;
- wire ${sep}_to_xb_tlast ;
- wire ${sep}_to_xb_tvalid;
- wire ${sep}_to_xb_tready;
-%endfor
diff --git a/host/utils/rfnoc/templates/modules/static_router.v.mako b/host/utils/rfnoc/templates/modules/static_router.v.mako
deleted file mode 100644
index 3649c278b..000000000
--- a/host/utils/rfnoc/templates/modules/static_router.v.mako
+++ /dev/null
@@ -1,15 +0,0 @@
-<%page args="connections"/>\
-\
-%for connection in connections:
-<%
- srcblk = connection["srcblk"]
- dstblk = connection["dstblk"]
- srcport = "in" if connection["srcport"] == None else connection["srcport"]
- dstport = "out" if connection["dstport"] == None else connection["dstport"]
-%>\
- assign s_${dstblk}_${dstport}_tdata = m_${srcblk}_${srcport}_tdata ;
- assign s_${dstblk}_${dstport}_tlast = m_${srcblk}_${srcport}_tlast ;
- assign s_${dstblk}_${dstport}_tvalid = m_${srcblk}_${srcport}_tvalid;
- assign m_${srcblk}_${srcport}_tready = s_${dstblk}_${dstport}_tready;
-
-%endfor \ No newline at end of file
diff --git a/host/utils/rfnoc/templates/modules/stream_endpoints.v.mako b/host/utils/rfnoc/templates/modules/stream_endpoints.v.mako
deleted file mode 100644
index f8ecccb77..000000000
--- a/host/utils/rfnoc/templates/modules/stream_endpoints.v.mako
+++ /dev/null
@@ -1,92 +0,0 @@
-<%page args="seps"/>\
-<%
- import math
- import re
- import six
-
- axis_inputs = {}
- axis_outputs = {}
- for i, sep in enumerate(seps):
- inputs = ""
- outputs = ""
- for data_i in range(0,seps[sep]["num_data_i"]):
- inputs = "s_{0}_in%d_{1}, " % (data_i) + inputs
- axis_inputs[sep] = inputs[:-2]
- for data_o in range(0,seps[sep]["num_data_o"]):
- outputs = "m_{0}_out%d_{1}, " % (data_o) + outputs
- axis_outputs[sep] = outputs[:-2]
-%>\
-\
-%for i, sep in enumerate(seps):
-<%
-# If buff_size == 0, then we assume that we will never transmit through this SEP
-buff_size = seps[sep]["buff_size"]
-if buff_size > 0:
- buff_size = int(math.ceil(math.log(buff_size, 2)))
- # FIXME MTU assumed to be 10 here -- forcing to at least accommodate 2 pkts
- buff_size = max(buff_size, 10+1)
-else:
- buff_size = 5
-%>\
- wire [CHDR_W-1:0] ${axis_outputs[sep].format(sep,"tdata")};
- wire ${axis_outputs[sep].format(sep,"tlast")};
- wire ${axis_outputs[sep].format(sep,"tvalid")};
- wire ${axis_outputs[sep].format(sep,"tready")};
- wire [CHDR_W-1:0] ${axis_inputs[sep].format(sep,"tdata")};
- wire ${axis_inputs[sep].format(sep,"tlast")};
- wire ${axis_inputs[sep].format(sep,"tvalid")};
- wire ${axis_inputs[sep].format(sep,"tready")};
- wire [31:0] m_${sep}_ctrl_tdata , s_${sep}_ctrl_tdata ;
- wire m_${sep}_ctrl_tlast , s_${sep}_ctrl_tlast ;
- wire m_${sep}_ctrl_tvalid, s_${sep}_ctrl_tvalid;
- wire m_${sep}_ctrl_tready, s_${sep}_ctrl_tready;
-
- chdr_stream_endpoint #(
- .PROTOVER (PROTOVER),
- .CHDR_W (CHDR_W),
- .AXIS_CTRL_EN (${int(seps[sep]["ctrl"])}),
- .AXIS_DATA_EN (${int(seps[sep]["data"])}),
- .NUM_DATA_I (${int(seps[sep]["num_data_i"])}),
- .NUM_DATA_O (${int(seps[sep]["num_data_o"])}),
- .INST_NUM (${i}),
- .CTRL_XBAR_PORT (${i+1}),
- .INGRESS_BUFF_SIZE (${buff_size}),
- .MTU (MTU),
- .REPORT_STRM_ERRS (1)
- ) ${sep}_i (
- .rfnoc_chdr_clk (rfnoc_chdr_clk ),
- .rfnoc_chdr_rst (rfnoc_chdr_rst ),
- .rfnoc_ctrl_clk (rfnoc_ctrl_clk ),
- .rfnoc_ctrl_rst (rfnoc_ctrl_rst ),
- .device_id (device_id ),
- .s_axis_chdr_tdata (xb_to_${sep}_tdata ),
- .s_axis_chdr_tlast (xb_to_${sep}_tlast ),
- .s_axis_chdr_tvalid (xb_to_${sep}_tvalid ),
- .s_axis_chdr_tready (xb_to_${sep}_tready ),
- .m_axis_chdr_tdata (${sep}_to_xb_tdata ),
- .m_axis_chdr_tlast (${sep}_to_xb_tlast ),
- .m_axis_chdr_tvalid (${sep}_to_xb_tvalid ),
- .m_axis_chdr_tready (${sep}_to_xb_tready ),
- .s_axis_data_tdata ({${axis_inputs[sep].format(sep,"tdata")}}),
- .s_axis_data_tlast ({${axis_inputs[sep].format(sep,"tlast")}}),
- .s_axis_data_tvalid ({${axis_inputs[sep].format(sep,"tvalid")}}),
- .s_axis_data_tready ({${axis_inputs[sep].format(sep,"tready")}}),
- .m_axis_data_tdata ({${axis_outputs[sep].format(sep,"tdata")}}),
- .m_axis_data_tlast ({${axis_outputs[sep].format(sep,"tlast")}}),
- .m_axis_data_tvalid ({${axis_outputs[sep].format(sep,"tvalid")}}),
- .m_axis_data_tready ({${axis_outputs[sep].format(sep,"tready")}}),
- .s_axis_ctrl_tdata (s_${sep}_ctrl_tdata ),
- .s_axis_ctrl_tlast (s_${sep}_ctrl_tlast ),
- .s_axis_ctrl_tvalid (s_${sep}_ctrl_tvalid),
- .s_axis_ctrl_tready (s_${sep}_ctrl_tready),
- .m_axis_ctrl_tdata (m_${sep}_ctrl_tdata ),
- .m_axis_ctrl_tlast (m_${sep}_ctrl_tlast ),
- .m_axis_ctrl_tvalid (m_${sep}_ctrl_tvalid),
- .m_axis_ctrl_tready (m_${sep}_ctrl_tready),
- .strm_seq_err_stb ( ),
- .strm_data_err_stb ( ),
- .strm_route_err_stb ( ),
- .signal_data_err (1'b0 )
- );
-
-%endfor
diff --git a/host/utils/rfnoc/templates/rfnoc_image_core.v.mako b/host/utils/rfnoc/templates/rfnoc_image_core.v.mako
deleted file mode 100644
index a18ff53a1..000000000
--- a/host/utils/rfnoc/templates/rfnoc_image_core.v.mako
+++ /dev/null
@@ -1,159 +0,0 @@
-<%
- import datetime
-%>//
-// Copyright ${datetime.datetime.now().year} ${config.copyright}
-//
-// ${config.license}
-//
-
-// Module: rfnoc_image_core (for ${config.device.type})
-// This file was autogenerated by UHD's image builder tool (rfnoc_image_builder)
-// Re-running that tool will overwrite this file!
-// File generated on: ${datetime.datetime.now().isoformat()}
-% if source:
-// Source: ${source}
-% endif
-% if source_hash:
-// Source SHA256: ${source_hash}
-% endif
-
-module rfnoc_image_core #(
- parameter [15:0] PROTOVER = {8'd1, 8'd0}
-)(
- // Clocks
- input wire chdr_aclk,
- input wire ctrl_aclk,
- input wire core_arst,
-%for clock in config.device.clocks:
- input wire ${clock["name"]}_clk,
-%endfor
- // Basic
- input wire [15:0] device_id,
-<%include file="/modules/device_io_ports.v.mako" args="io_ports=config.device.io_ports"/>\
-<%include file="/modules/device_transport.v.mako" args="transports=config.device.transports"/>\
-);
-
- localparam CHDR_W = 64;
- localparam MTU = 10;
- localparam EDGE_TBL_FILE = `"`RFNOC_EDGE_TBL_FILE`";
-
- wire rfnoc_chdr_clk, rfnoc_chdr_rst;
- wire rfnoc_ctrl_clk, rfnoc_ctrl_rst;
-
- // ----------------------------------------------------
- // CHDR Crossbar
- // ----------------------------------------------------
-<%include file="/modules/sep_xb_wires.v.mako" args="seps=config.stream_endpoints"/>\
-
- chdr_crossbar_nxn #(
- .CHDR_W (CHDR_W),
- .NPORTS (${len(config.stream_endpoints) + len(config.device.transports)}),
- .DEFAULT_PORT (0),
- .MTU (MTU),
- .ROUTE_TBL_SIZE (6),
- .MUX_ALLOC ("ROUND-ROBIN"),
- .OPTIMIZE ("AREA"),
- .NPORTS_MGMT (${len(config.device.transports)}),
- .EXT_RTCFG_PORT (0),
- .PROTOVER (PROTOVER)
- ) chdr_xb_i (
- .clk (rfnoc_chdr_clk),
- .reset (rfnoc_chdr_rst),
- .device_id (device_id),
-<%include file="/modules/chdr_xb_sep_transport.v.mako" args="seps=config.stream_endpoints, transports=config.device.transports"/>\
- .ext_rtcfg_stb (1'h0),
- .ext_rtcfg_addr (16'h0),
- .ext_rtcfg_data (32'h0),
- .ext_rtcfg_ack ()
- );
-
- // ----------------------------------------------------
- // Stream Endpoints
- // ----------------------------------------------------
-
-<%include file="/modules/stream_endpoints.v.mako" args="seps=config.stream_endpoints"/>\
-
-<%
- from collections import OrderedDict
- ctrl_seps = OrderedDict((k, v) for k, v in config.stream_endpoints.items() if v.get('ctrl'))
-%>
- // ----------------------------------------------------
- // Control Crossbar
- // ----------------------------------------------------
-
- wire [31:0] m_core_ctrl_tdata , s_core_ctrl_tdata ;
- wire m_core_ctrl_tlast , s_core_ctrl_tlast ;
- wire m_core_ctrl_tvalid, s_core_ctrl_tvalid;
- wire m_core_ctrl_tready, s_core_ctrl_tready;
-<%include file="/modules/ctrl_crossbar.v.mako" args="seps=ctrl_seps, blocks=config.noc_blocks"/>\
-
- // ----------------------------------------------------
- // RFNoC Core Kernel
- // ----------------------------------------------------
- wire [(512*${len(config.noc_blocks)})-1:0] rfnoc_core_config, rfnoc_core_status;
-
- rfnoc_core_kernel #(
- .PROTOVER (PROTOVER),
- .DEVICE_TYPE (16'h${config.device.type_id}),
- .DEVICE_FAMILY ("${config.device.family}"),
- .SAFE_START_CLKS (0),
- .NUM_BLOCKS (${len(config.noc_blocks)}),
- .NUM_STREAM_ENDPOINTS(${len(config.stream_endpoints)}),
- .NUM_ENDPOINTS_CTRL (${len(ctrl_seps)}),
- .NUM_TRANSPORTS (${len(config.device.transports)}),
- .NUM_EDGES (${len(config.block_con)}),
- .CHDR_XBAR_PRESENT (1),
- .EDGE_TBL_FILE (EDGE_TBL_FILE)
- ) core_kernel_i (
- .chdr_aclk (chdr_aclk),
- .chdr_aclk_locked (1'b1),
- .ctrl_aclk (ctrl_aclk),
- .ctrl_aclk_locked (1'b1),
- .core_arst (core_arst),
- .core_chdr_clk (rfnoc_chdr_clk),
- .core_chdr_rst (rfnoc_chdr_rst),
- .core_ctrl_clk (rfnoc_ctrl_clk),
- .core_ctrl_rst (rfnoc_ctrl_rst),
- .s_axis_ctrl_tdata (s_core_ctrl_tdata ),
- .s_axis_ctrl_tlast (s_core_ctrl_tlast ),
- .s_axis_ctrl_tvalid (s_core_ctrl_tvalid),
- .s_axis_ctrl_tready (s_core_ctrl_tready),
- .m_axis_ctrl_tdata (m_core_ctrl_tdata ),
- .m_axis_ctrl_tlast (m_core_ctrl_tlast ),
- .m_axis_ctrl_tvalid (m_core_ctrl_tvalid),
- .m_axis_ctrl_tready (m_core_ctrl_tready),
- .device_id (device_id),
- .rfnoc_core_config (rfnoc_core_config),
- .rfnoc_core_status (rfnoc_core_status)
- );
-
- // ----------------------------------------------------
- // Blocks
- // ----------------------------------------------------
-%for i, name in enumerate(config.noc_blocks):
-<%include file="/modules/rfnoc_block.v.mako" args="block_id=i + len(ctrl_seps) + 1, block_number=i, block_name=name, block=config.blocks[config.noc_blocks[name]['block_desc']], block_params=config.noc_blocks[name]['parameters'], block_ports=config.block_ports"/>
-%endfor
-
- // ----------------------------------------------------
- // Static Router
- // ----------------------------------------------------
-<%include file="/modules/static_router.v.mako" args="connections=config.block_con"/>\
-
- // ----------------------------------------------------
- // Unused Ports
- // ----------------------------------------------------
-<%include file="/modules/drive_unused_ports.v.mako" args="connections=config.block_con, block_ports=config.block_ports"/>\
-
- // ----------------------------------------------------
- // Clock Domains
- // ----------------------------------------------------
-<%include file="/modules/connect_clk_domains.v.mako" args="connections=config.clk_domain_con, clocks=config.clocks"/>\
-
- // ----------------------------------------------------
- // IO Port Connection
- // ----------------------------------------------------
- // Master/Slave Connections:
-<%include file="/modules/connect_io_ports.v.mako" args="connections=config.io_port_con_ms, io_ports=config.io_ports, names=('master', 'slave')"/>\
- // Broadcaster/Listener Connections:
-<%include file="/modules/connect_io_ports.v.mako" args="connections=config.io_port_con_bl, io_ports=config.io_ports, names=('broadcaster', 'listener')"/>\
-endmodule