hdk/common/lib/hbm_wrapper.sv (1,587 lines of code) (raw):
// ============================================================================
// Amazon FPGA Hardware Development Kit
//
// Copyright 2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
//
// Licensed under the Amazon Software License (the "License"). You may not use
// this file except in compliance with the License. A copy of the License is
// located at
//
// http://aws.amazon.com/asl/
//
// or in the "license" file accompanying this file. This file is distributed on
// an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, express or
// implied. See the License for the specific language governing permissions and
// limitations under the License.
// ============================================================================
// HBM Wrapper
// - Wrapper for HBM IP
// - Implements an MMCM to generate 100MHz and 450MHz clock for the HBM IP.
// - AXI interface run @450MHz.
// - Parameterized number of AXI interfaces.
// User can choose to connect upto 32 AXI interfaces to the HBM.
// - User can connect using AXI4 Protocol, and leverage AXI4-to-AXI3 protocol convertor
// by setting parameter AXI4_INTERFACE=1
// - Unused HBM ports are automatically tied off.
// - Stats interface to reset the HBM, status check for HBM initialization.
//
//------------------------------------------
// HBM Stats Interface Reset Routine:
// // Issue HBM soft reset
// write 0x1 @ addr 0x00
// write 0x0 @ addr 0x00
// // Poll for lock
// poll bits[3:1] = 3'b111 @ addr 0x00
//
module hbm_wrapper
#(
parameter NUM_OF_AXI_PORTS = 1, // Number of AXI ports to connect to the HBM
parameter AXI4_INTERFACE = 0, // 1 = Instantiate Xilinx AXI4-to-AXI3 Protocol Convertor.
parameter AXLEN_WIDTH = AXI4_INTERFACE ? 8 : 4 // width of axlen. For AXI4 interface this must be 8, for AXI3 interface this must be 4.
)
(
input logic i_clk_250m, // Input clk 250 MHz
input logic i_rst_250m_n, // Input reset syncd to i_clk_250m
output logic o_clk_450m, // Output clk 450MHz. This is the clock for AXI interfaces.
output logic o_rst_450m_n, // Output reset syncd to o_clk_450m
output logic o_clk_100m, // Output clk 100Mhz. This is the APB clock used by HBM's APB interface.
output logic o_rst_100m_n, // Output clk 100Mhz. Reset synchronized to 100MHz clock
// AXI3/4 bus to HBM. These must be in o_clk_450m clk domain
input logic [33 : 0] i_axi_araddr [0:NUM_OF_AXI_PORTS-1],
input logic [1 : 0] i_axi_arburst [0:NUM_OF_AXI_PORTS-1],
input logic [5 : 0] i_axi_arid [0:NUM_OF_AXI_PORTS-1],
input logic [AXLEN_WIDTH-1 : 0] i_axi_arlen [0:NUM_OF_AXI_PORTS-1],
input logic [2 : 0] i_axi_arsize [0:NUM_OF_AXI_PORTS-1],
input logic i_axi_arvalid [0:NUM_OF_AXI_PORTS-1],
input logic [33 : 0] i_axi_awaddr [0:NUM_OF_AXI_PORTS-1],
input logic [1 : 0] i_axi_awburst [0:NUM_OF_AXI_PORTS-1],
input logic [5 : 0] i_axi_awid [0:NUM_OF_AXI_PORTS-1],
input logic [AXLEN_WIDTH-1 : 0] i_axi_awlen [0:NUM_OF_AXI_PORTS-1],
input logic [2 : 0] i_axi_awsize [0:NUM_OF_AXI_PORTS-1],
input logic i_axi_awvalid [0:NUM_OF_AXI_PORTS-1],
input logic i_axi_rready [0:NUM_OF_AXI_PORTS-1],
input logic i_axi_bready [0:NUM_OF_AXI_PORTS-1],
input logic [255 : 0] i_axi_wdata [0:NUM_OF_AXI_PORTS-1],
input logic i_axi_wlast [0:NUM_OF_AXI_PORTS-1],
input logic [31 : 0] i_axi_wstrb [0:NUM_OF_AXI_PORTS-1],
input logic i_axi_wvalid [0:NUM_OF_AXI_PORTS-1],
output logic o_axi_arready [0:NUM_OF_AXI_PORTS-1],
output logic o_axi_awready [0:NUM_OF_AXI_PORTS-1],
output logic [255 : 0] o_axi_rdata [0:NUM_OF_AXI_PORTS-1],
output logic [5 : 0] o_axi_rid [0:NUM_OF_AXI_PORTS-1],
output logic o_axi_rlast [0:NUM_OF_AXI_PORTS-1],
output logic [1 : 0] o_axi_rresp [0:NUM_OF_AXI_PORTS-1],
output logic o_axi_rvalid [0:NUM_OF_AXI_PORTS-1],
output logic o_axi_wready [0:NUM_OF_AXI_PORTS-1],
output logic [5 : 0] o_axi_bid [0:NUM_OF_AXI_PORTS-1],
output logic [1 : 0] o_axi_bresp [0:NUM_OF_AXI_PORTS-1],
output logic o_axi_bvalid [0:NUM_OF_AXI_PORTS-1],
cfg_bus_t.slave hbm_stat_bus, // CFG Stats bus to HBM (in i_clk_250m domain)
output logic [7:0] o_cl_sh_hbm_stat_int = '0, // output [7:0] No interrupts from HBM
output logic o_hbm_ready = '0 // output HBM Init Ready (in clk 250mhz domain)
);
//==================================================================
// local signals
//==================================================================
localparam HBM_DATA_WIDTH = 256;
localparam ADDR_WIDTH = 34;
localparam ID_WIDTH = 6;
localparam DEF_AWLOCK = 32'd0;
localparam DEF_AWCACHE = 4'h1; // Device bufferable, non-cacheable
localparam DEF_AWPROT = 32'd0;
localparam DEF_AWREGION = 32'd0;
localparam DEF_AWQOS = 32'd0;
localparam DEF_AXSIZE = 3'($clog2(HBM_DATA_WIDTH/8));
localparam DEF_PARITY = 32'd0;
logic apb_clk;
logic axi_clk;
logic mmcm_lock;
logic cfg_hbm_reset = '0;
logic [1:0] hbm_ready_q;
logic [1:0] apb_complete;
//=================================================================
// Pipe reset for better timing
//=================================================================
logic sync_rst_n;
assign clk = i_clk_250m;
always_ff @(posedge clk)
sync_rst_n <= i_rst_250m_n;
// PIPE for resets into SLR0
logic slr0_sync_rst_n;
lib_pipe #(.WIDTH(1), .STAGES(4)) SLR0_PIPE_RST_N (.clk(clk), .rst_n(1'b1), .in_bus(sync_rst_n), .out_bus(slr0_sync_rst_n));
//==================================================================
// Synchronize resets
//===================================================================
logic hbm_rst_q;
lib_pipe
#(
.WIDTH (1),
.STAGES (4)
)
SLR0_PIPE_HBM_RST_N
(
.clk (clk),
.rst_n (1'b1),
.in_bus (slr0_sync_rst_n & ~cfg_hbm_reset),
.out_bus (hbm_rst_q)
);
// reset in apb_clk domain
logic apb_rst_sync_n;
sync
#(
.WIDTH($bits(apb_rst_sync_n))
)
SYNC_RST_APB_CLK
(
.clk (apb_clk ),
.rst_n (hbm_rst_q ),
.in (1'd1 ),
.sync_out (apb_rst_sync_n )
);
logic apb_rst_n;
lib_pipe #(.WIDTH(1), .STAGES(4)) SLR0_APB_RST_N (.clk(apb_clk), .rst_n(1'b1), .in_bus(apb_rst_sync_n), .out_bus(apb_rst_n));
// reset in axi_clk domain
logic axi_rst_sync_n;
sync
#(
.WIDTH($bits(axi_rst_sync_n))
)
SYNC_RST_AXI_CLK
(
.clk (axi_clk ),
.rst_n (hbm_rst_q ),
.in (1'd1 ),
.sync_out (axi_rst_sync_n )
);
logic axi_rst_n;
lib_pipe #(.WIDTH(1), .STAGES(4)) SLR0_AXI_RST_N (.clk(axi_clk), .rst_n(1'b1), .in_bus(axi_rst_sync_n), .out_bus(axi_rst_n));
//==================================================================
// HBM CSRs
//==================================================================
//HBM CFG BUS
cfg_bus_t hbm_cfg_bus_q();
always_ff @(posedge clk)
if (!slr0_sync_rst_n) begin
hbm_cfg_bus_q.wr <= 1'd0;
hbm_cfg_bus_q.rd <= 1'd0;
hbm_cfg_bus_q.ack <= 1'd0;
end
else begin
hbm_cfg_bus_q.wr <= hbm_stat_bus.wr;
hbm_cfg_bus_q.rd <= hbm_stat_bus.rd;
hbm_cfg_bus_q.ack <= (hbm_cfg_bus_q.wr | hbm_cfg_bus_q.rd);
hbm_cfg_bus_q.addr <= hbm_stat_bus.addr;
hbm_cfg_bus_q.wdata <= hbm_stat_bus.wdata;
end // else: !if(!sync_rst_n)
assign hbm_stat_bus.ack = hbm_cfg_bus_q.ack;
assign hbm_stat_bus.rdata = hbm_cfg_bus_q.rdata;
//
// HBM CSRs :
// 0x00 : bit[0] = SW reset for HBM (R/W)
// 1: Assert Reset for HBM
// 0: Deassert Reset for HBM
// bit[2:1] = HBM initialized (R/O)
// bit[3] = 100MHz MMCM locked (R/O)
//
always_ff @(posedge clk)
if (hbm_cfg_bus_q.wr && !hbm_cfg_bus_q.ack && (hbm_cfg_bus_q.addr[7:0] == '0))
cfg_hbm_reset <= hbm_cfg_bus_q.wdata[0];
// HBM CSR Read datapath
always_ff @(posedge clk)
if (hbm_cfg_bus_q.addr[7:0] == '0)
hbm_cfg_bus_q.rdata <= 32'({mmcm_lock, // bit[3]
hbm_ready_q, // bit[2:1]
cfg_hbm_reset}); // bit[0]
else
hbm_cfg_bus_q.rdata <= 32'hdead_dead;
//==================================================================
// HBM requires following clocks:
// - 100 MHz REF CLK, AND APB CLOCKS
// - 450 MHz AXI CLK
//==================================================================
cl_hbm_mmcm HBM_MMCM_I
(
.clk_out1 (apb_clk ), // output clk_out1 = 100MHz
.clk_out2 (axi_clk ), // output clk_out2 = 450MHz
.resetn (slr0_sync_rst_n ), // input resetn
.locked (mmcm_lock ), // output locked
.clk_in1 (clk ) // input clk_in1
);
//
// Clock and reset outputs
//
always_comb begin : CLK_OUT
o_clk_450m = axi_clk;
o_rst_450m_n = axi_rst_n;
o_clk_100m = apb_clk;
o_rst_100m_n = apb_rst_n;
end : CLK_OUT
//==================================================================
// Structure for AXI4/AXI3 bus
//==================================================================
typedef struct {
logic [ADDR_WIDTH-1 : 0] araddr ;
logic [1 : 0] arburst ;
logic [ID_WIDTH-1 : 0] arid ;
logic [AXLEN_WIDTH-1 : 0] arlen ;
logic [2 : 0] arsize ;
logic arvalid ;
logic [ADDR_WIDTH-1 : 0] awaddr ;
logic [1 : 0] awburst ;
logic [ID_WIDTH-1 : 0] awid ;
logic [AXLEN_WIDTH-1 : 0] awlen ;
logic [2 : 0] awsize ;
logic awvalid ;
logic rready ;
logic bready ;
logic [ID_WIDTH-1:0] wid;
logic [255 : 0] wdata ;
logic wlast ;
logic [31 : 0] wstrb ;
logic wvalid ;
logic arready ;
logic awready ;
logic [255 : 0] rdata ;
logic [ID_WIDTH-1 : 0] rid ;
logic rlast ;
logic [1 : 0] rresp ;
logic rvalid ;
logic wready ;
logic [ID_WIDTH-1 : 0] bid ;
logic [1 : 0] bresp ;
logic bvalid ;
} st_axi_bus_t;
//
// Convert input/output axi bus to structure for convenience
//
st_axi_bus_t st_axi_bus [0:NUM_OF_AXI_PORTS-1];
always_comb begin : CNV_TO_AXI_STRUCT_I //{
for (int ii = 0; ii < NUM_OF_AXI_PORTS; ii++) begin //{
st_axi_bus[ii].araddr = i_axi_araddr [ii];
st_axi_bus[ii].arburst = i_axi_arburst [ii];
st_axi_bus[ii].arid = i_axi_arid [ii];
st_axi_bus[ii].arlen = i_axi_arlen [ii];
st_axi_bus[ii].arsize = i_axi_arsize [ii];
st_axi_bus[ii].arvalid = i_axi_arvalid [ii];
st_axi_bus[ii].awaddr = i_axi_awaddr [ii];
st_axi_bus[ii].awburst = i_axi_awburst [ii];
st_axi_bus[ii].awid = i_axi_awid [ii];
st_axi_bus[ii].awlen = i_axi_awlen [ii];
st_axi_bus[ii].awsize = i_axi_awsize [ii];
st_axi_bus[ii].awvalid = i_axi_awvalid [ii];
st_axi_bus[ii].rready = i_axi_rready [ii];
st_axi_bus[ii].bready = i_axi_bready [ii];
st_axi_bus[ii].wdata = i_axi_wdata [ii];
st_axi_bus[ii].wlast = i_axi_wlast [ii];
st_axi_bus[ii].wstrb = i_axi_wstrb [ii];
st_axi_bus[ii].wvalid = i_axi_wvalid [ii];
o_axi_arready [ii] = st_axi_bus[ii].arready;
o_axi_awready [ii] = st_axi_bus[ii].awready;
o_axi_rdata [ii] = st_axi_bus[ii].rdata;
o_axi_rid [ii] = st_axi_bus[ii].rid;
o_axi_rlast [ii] = st_axi_bus[ii].rlast;
o_axi_rresp [ii] = st_axi_bus[ii].rresp;
o_axi_rvalid [ii] = st_axi_bus[ii].rvalid;
o_axi_wready [ii] = st_axi_bus[ii].wready;
o_axi_bid [ii] = st_axi_bus[ii].bid;
o_axi_bresp [ii] = st_axi_bus[ii].bresp;
o_axi_bvalid [ii] = st_axi_bus[ii].bvalid;
end //}
end : CNV_TO_AXI_STRUCT_I //}
//==========================================================================
// AXI4 to AXI3 Protocol convertor
//==========================================================================
st_axi_bus_t st_axi3_bus [0:NUM_OF_AXI_PORTS-1];
genvar gg;
generate //{
if (AXI4_INTERFACE == 1) begin : AXI4_INTERFACE_EQ_1 //{
// Instantiate Protocol Convertors for all the AXI3 ports
for (gg = 0; gg < NUM_OF_AXI_PORTS; gg++) begin : AXI4_TO_AXI3_CONV_I //{
cl_axi4_to_axi3_conv CL_AXI4_TO_AXI3_CONV_I
(
.aclk (axi_clk ), // input wire aclk
.aresetn (axi_rst_n ), // input wire aresetn
.s_axi_awid (st_axi_bus[gg].awid ), // input wire [5 : 0] s_axi_awid
.s_axi_awaddr (st_axi_bus[gg].awaddr ), // input wire [33 : 0] s_axi_awaddr
.s_axi_awlen (st_axi_bus[gg].awlen ), // input wire [7 : 0] s_axi_awlen
.s_axi_awsize (st_axi_bus[gg].awsize ), // input wire [2 : 0] s_axi_awsize
.s_axi_awburst (st_axi_bus[gg].awburst ), // input wire [1 : 0] s_axi_awburst
.s_axi_awlock (DEF_AWLOCK ), // input wire [0 : 0] s_axi_awlock
.s_axi_awcache (DEF_AWCACHE ), // input wire [3 : 0] s_axi_awcache
.s_axi_awprot (DEF_AWPROT ), // input wire [2 : 0] s_axi_awprot
.s_axi_awregion (DEF_AWREGION ), // input wire [3 : 0] s_axi_awregion
.s_axi_awqos (DEF_AWQOS ), // input wire [3 : 0] s_axi_awqos
.s_axi_awvalid (st_axi_bus[gg].awvalid ), // input wire s_axi_awvalid
.s_axi_awready (st_axi_bus[gg].awready ), // output wire s_axi_awready
.s_axi_wdata (st_axi_bus[gg].wdata ), // input wire [255 : 0] s_axi_wdata
.s_axi_wstrb (st_axi_bus[gg].wstrb ), // input wire [31 : 0] s_axi_wstrb
.s_axi_wlast (st_axi_bus[gg].wlast ), // input wire s_axi_wlast
.s_axi_wvalid (st_axi_bus[gg].wvalid ), // input wire s_axi_wvalid
.s_axi_wready (st_axi_bus[gg].wready ), // output wire s_axi_wready
.s_axi_bid (st_axi_bus[gg].bid ), // output wire [5 : 0] s_axi_bid
.s_axi_bresp (st_axi_bus[gg].bresp ), // output wire [1 : 0] s_axi_bresp
.s_axi_bvalid (st_axi_bus[gg].bvalid ), // output wire s_axi_bvalid
.s_axi_bready (st_axi_bus[gg].bready ), // input wire s_axi_bready
.s_axi_arid (st_axi_bus[gg].arid ), // input wire [5 : 0] s_axi_arid
.s_axi_araddr (st_axi_bus[gg].araddr ), // input wire [33 : 0] s_axi_araddr
.s_axi_arlen (st_axi_bus[gg].arlen ), // input wire [7 : 0] s_axi_arlen
.s_axi_arsize (st_axi_bus[gg].arsize ), // input wire [2 : 0] s_axi_arsize
.s_axi_arburst (st_axi_bus[gg].arburst ), // input wire [1 : 0] s_axi_arburst
.s_axi_arlock (DEF_AWLOCK ), // input wire [0 : 0] s_axi_arlock
.s_axi_arcache (DEF_AWCACHE ), // input wire [3 : 0] s_axi_arcache
.s_axi_arprot (DEF_AWPROT ), // input wire [2 : 0] s_axi_arprot
.s_axi_arregion (DEF_AWREGION ), // input wire [3 : 0] s_axi_arregion
.s_axi_arqos (DEF_AWQOS ), // input wire [3 : 0] s_axi_arqos
.s_axi_arvalid (st_axi_bus[gg].arvalid ), // input wire s_axi_arvalid
.s_axi_arready (st_axi_bus[gg].arready ), // output wire s_axi_arready
.s_axi_rid (st_axi_bus[gg].rid ), // output wire [5 : 0] s_axi_rid
.s_axi_rdata (st_axi_bus[gg].rdata ), // output wire [255 : 0] s_axi_rdata
.s_axi_rresp (st_axi_bus[gg].rresp ), // output wire [1 : 0] s_axi_rresp
.s_axi_rlast (st_axi_bus[gg].rlast ), // output wire s_axi_rlast
.s_axi_rvalid (st_axi_bus[gg].rvalid ), // output wire s_axi_rvalid
.s_axi_rready (st_axi_bus[gg].rready ), // input wire s_axi_rready
.m_axi_awid (st_axi3_bus[gg].awid ), // output wire [5 : 0] m_axi_awid
.m_axi_awaddr (st_axi3_bus[gg].awaddr ), // output wire [33 : 0] m_axi_awaddr
.m_axi_awlen (st_axi3_bus[gg].awlen ), // output wire [3 : 0] m_axi_awlen
.m_axi_awsize (st_axi3_bus[gg].awsize ), // output wire [2 : 0] m_axi_awsize
.m_axi_awburst (st_axi3_bus[gg].awburst ), // output wire [1 : 0] m_axi_awburst
.m_axi_awlock ( ), // output wire [1 : 0] m_axi_awlock
.m_axi_awcache ( ), // output wire [3 : 0] m_axi_awcache
.m_axi_awprot ( ), // output wire [2 : 0] m_axi_awprot
.m_axi_awqos ( ), // output wire [3 : 0] m_axi_awqos
.m_axi_awvalid (st_axi3_bus[gg].awvalid ), // output wire m_axi_awvalid
.m_axi_awready (st_axi3_bus[gg].awready ), // input wire m_axi_awready
.m_axi_wid (st_axi3_bus[gg].wid ), // output wire [5 : 0] m_axi_wid
.m_axi_wdata (st_axi3_bus[gg].wdata ), // output wire [255 : 0] m_axi_wdata
.m_axi_wstrb (st_axi3_bus[gg].wstrb ), // output wire [31 : 0] m_axi_wstrb
.m_axi_wlast (st_axi3_bus[gg].wlast ), // output wire m_axi_wlast
.m_axi_wvalid (st_axi3_bus[gg].wvalid ), // output wire m_axi_wvalid
.m_axi_wready (st_axi3_bus[gg].wready ), // input wire m_axi_wready
.m_axi_bid (st_axi3_bus[gg].bid ), // input wire [5 : 0] m_axi_bid
.m_axi_bresp (st_axi3_bus[gg].bresp ), // input wire [1 : 0] m_axi_bresp
.m_axi_bvalid (st_axi3_bus[gg].bvalid ), // input wire m_axi_bvalid
.m_axi_bready (st_axi3_bus[gg].bready ), // output wire m_axi_bready
.m_axi_arid (st_axi3_bus[gg].arid ), // output wire [5 : 0] m_axi_arid
.m_axi_araddr (st_axi3_bus[gg].araddr ), // output wire [33 : 0] m_axi_araddr
.m_axi_arlen (st_axi3_bus[gg].arlen ), // output wire [3 : 0] m_axi_arlen
.m_axi_arsize (st_axi3_bus[gg].arsize ), // output wire [2 : 0] m_axi_arsize
.m_axi_arburst (st_axi3_bus[gg].arburst ), // output wire [1 : 0] m_axi_arburst
.m_axi_arlock ( ), // output wire [1 : 0] m_axi_arlock
.m_axi_arcache ( ), // output wire [3 : 0] m_axi_arcache
.m_axi_arprot ( ), // output wire [2 : 0] m_axi_arprot
.m_axi_arqos ( ), // output wire [3 : 0] m_axi_arqos
.m_axi_arvalid (st_axi3_bus[gg].arvalid ), // output wire m_axi_arvalid
.m_axi_arready (st_axi3_bus[gg].arready ), // input wire m_axi_arready
.m_axi_rid (st_axi3_bus[gg].rid ), // input wire [5 : 0] m_axi_rid
.m_axi_rdata (st_axi3_bus[gg].rdata ), // input wire [255 : 0] m_axi_rdata
.m_axi_rresp (st_axi3_bus[gg].rresp ), // input wire [1 : 0] m_axi_rresp
.m_axi_rlast (st_axi3_bus[gg].rlast ), // input wire m_axi_rlast
.m_axi_rvalid (st_axi3_bus[gg].rvalid ), // input wire m_axi_rvalid
.m_axi_rready (st_axi3_bus[gg].rready ) // output wire m_axi_rready
);
end : AXI4_TO_AXI3_CONV_I //}
end : AXI4_INTERFACE_EQ_1 //}
else begin : AXI4_INTERFACE_EQ_0 //{
always_comb begin : NO_PROT_CONV_I //{
// No need for protocol convertor if the input is already in AXI3
for (int ii = 0; ii < NUM_OF_AXI_PORTS; ii++) begin //{
st_axi3_bus[ii].araddr = st_axi_bus[ii].araddr;
st_axi3_bus[ii].arburst = st_axi_bus[ii].arburst;
st_axi3_bus[ii].arid = st_axi_bus[ii].arid;
st_axi3_bus[ii].arlen = st_axi_bus[ii].arlen;
st_axi3_bus[ii].arsize = st_axi_bus[ii].arsize;
st_axi3_bus[ii].arvalid = st_axi_bus[ii].arvalid;
st_axi3_bus[ii].awaddr = st_axi_bus[ii].awaddr;
st_axi3_bus[ii].awburst = st_axi_bus[ii].awburst;
st_axi3_bus[ii].awid = st_axi_bus[ii].awid;
st_axi3_bus[ii].awlen = st_axi_bus[ii].awlen;
st_axi3_bus[ii].awsize = st_axi_bus[ii].awsize;
st_axi3_bus[ii].awvalid = st_axi_bus[ii].awvalid;
st_axi3_bus[ii].rready = st_axi_bus[ii].rready;
st_axi3_bus[ii].bready = st_axi_bus[ii].bready;
st_axi3_bus[ii].wdata = st_axi_bus[ii].wdata;
st_axi3_bus[ii].wlast = st_axi_bus[ii].wlast;
st_axi3_bus[ii].wstrb = st_axi_bus[ii].wstrb;
st_axi3_bus[ii].wvalid = st_axi_bus[ii].wvalid;
st_axi_bus[ii].arready = st_axi3_bus[ii].arready;
st_axi_bus[ii].awready = st_axi3_bus[ii].awready;
st_axi_bus[ii].rdata = st_axi3_bus[ii].rdata;
st_axi_bus[ii].rid = st_axi3_bus[ii].rid;
st_axi_bus[ii].rlast = st_axi3_bus[ii].rlast;
st_axi_bus[ii].rresp = st_axi3_bus[ii].rresp;
st_axi_bus[ii].rvalid = st_axi3_bus[ii].rvalid;
st_axi_bus[ii].wready = st_axi3_bus[ii].wready;
st_axi_bus[ii].bid = st_axi3_bus[ii].bid;
st_axi_bus[ii].bresp = st_axi3_bus[ii].bresp;
st_axi_bus[ii].bvalid = st_axi3_bus[ii].bvalid;
end //}
end : NO_PROT_CONV_I //}
end : AXI4_INTERFACE_EQ_0 //}
endgenerate //}
//==================================================================
// HBM AXI ports tieoff
//==================================================================
st_axi_bus_t st_hbm_axi3[0:31];
always_comb begin : HBM_TIEOFF_I //{
for (int ii = 0; ii < 32; ii++) begin //{
if (ii < NUM_OF_AXI_PORTS) begin //{
st_hbm_axi3[ii].araddr = st_axi3_bus[ii].araddr;
st_hbm_axi3[ii].arburst = st_axi3_bus[ii].arburst;
st_hbm_axi3[ii].arid = st_axi3_bus[ii].arid;
st_hbm_axi3[ii].arlen = st_axi3_bus[ii].arlen;
st_hbm_axi3[ii].arsize = st_axi3_bus[ii].arsize;
st_hbm_axi3[ii].arvalid = st_axi3_bus[ii].arvalid;
st_hbm_axi3[ii].awaddr = st_axi3_bus[ii].awaddr;
st_hbm_axi3[ii].awburst = st_axi3_bus[ii].awburst;
st_hbm_axi3[ii].awid = st_axi3_bus[ii].awid;
st_hbm_axi3[ii].awlen = st_axi3_bus[ii].awlen;
st_hbm_axi3[ii].awsize = st_axi3_bus[ii].awsize;
st_hbm_axi3[ii].awvalid = st_axi3_bus[ii].awvalid;
st_hbm_axi3[ii].rready = st_axi3_bus[ii].rready;
st_hbm_axi3[ii].bready = st_axi3_bus[ii].bready;
st_hbm_axi3[ii].wdata = st_axi3_bus[ii].wdata;
st_hbm_axi3[ii].wlast = st_axi3_bus[ii].wlast;
st_hbm_axi3[ii].wstrb = st_axi3_bus[ii].wstrb;
st_hbm_axi3[ii].wvalid = st_axi3_bus[ii].wvalid;
st_axi3_bus[ii].arready = st_hbm_axi3[ii].arready;
st_axi3_bus[ii].awready = st_hbm_axi3[ii].awready;
st_axi3_bus[ii].rdata = st_hbm_axi3[ii].rdata;
st_axi3_bus[ii].rid = st_hbm_axi3[ii].rid;
st_axi3_bus[ii].rlast = st_hbm_axi3[ii].rlast;
st_axi3_bus[ii].rresp = st_hbm_axi3[ii].rresp;
st_axi3_bus[ii].rvalid = st_hbm_axi3[ii].rvalid;
st_axi3_bus[ii].wready = st_hbm_axi3[ii].wready;
st_axi3_bus[ii].bid = st_hbm_axi3[ii].bid;
st_axi3_bus[ii].bresp = st_hbm_axi3[ii].bresp;
st_axi3_bus[ii].bvalid = st_hbm_axi3[ii].bvalid;
end //}
else begin //{
st_hbm_axi3[ii].araddr = '0;
st_hbm_axi3[ii].arburst = '0;
st_hbm_axi3[ii].arid = '0;
st_hbm_axi3[ii].arlen = '0;
st_hbm_axi3[ii].arsize = '0;
st_hbm_axi3[ii].arvalid = '0;
st_hbm_axi3[ii].awaddr = '0;
st_hbm_axi3[ii].awburst = '0;
st_hbm_axi3[ii].awid = '0;
st_hbm_axi3[ii].awlen = '0;
st_hbm_axi3[ii].awsize = '0;
st_hbm_axi3[ii].awvalid = '0;
st_hbm_axi3[ii].rready = '0;
st_hbm_axi3[ii].bready = '0;
st_hbm_axi3[ii].wdata = '0;
st_hbm_axi3[ii].wlast = '0;
st_hbm_axi3[ii].wstrb = '0;
st_hbm_axi3[ii].wvalid = '0;
end //}
end //}
end : HBM_TIEOFF_I //}
// NOTE Connecting PCIS bus into AXI_16_AWADDR port of HBM
//================================================================================
// HBM controller
//================================================================================
cl_hbm HBM_CORE_I
(
.HBM_REF_CLK_0 (apb_clk ), // input wire HBM_REF_CLK_0
.HBM_REF_CLK_1 (apb_clk ), // input wire HBM_REF_CLK_1
.AXI_00_ACLK (axi_clk ), // input wire AXI_00_ACLK
.AXI_00_ARESET_N (axi_rst_n ), // input wire AXI_00_ARESET_N
.AXI_00_ARADDR (st_hbm_axi3[00].araddr ), // input wire [33 : 0] AXI_00_ARADDR
.AXI_00_ARBURST (st_hbm_axi3[00].arburst ), // input wire [1 : 0] AXI_00_ARBURST
.AXI_00_ARID (st_hbm_axi3[00].arid ), // input wire [5 : 0] AXI_00_ARID
.AXI_00_ARLEN (st_hbm_axi3[00].arlen ), // input wire [3 : 0] AXI_00_ARLEN
.AXI_00_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_00_ARSIZE
.AXI_00_ARVALID (st_hbm_axi3[00].arvalid ), // input wire AXI_00_ARVALID
.AXI_00_AWADDR (st_hbm_axi3[00].awaddr ), // input wire [33 : 0] AXI_00_AWADDR
.AXI_00_AWBURST (st_hbm_axi3[00].awburst ), // input wire [1 : 0] AXI_00_AWBURST
.AXI_00_AWID (st_hbm_axi3[00].awid ), // input wire [5 : 0] AXI_00_AWID
.AXI_00_AWLEN (st_hbm_axi3[00].awlen ), // input wire [3 : 0] AXI_00_AWLEN
.AXI_00_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_00_AWSIZE
.AXI_00_AWVALID (st_hbm_axi3[00].awvalid ), // input wire AXI_00_AWVALID
.AXI_00_RREADY (st_hbm_axi3[00].rready ), // input wire AXI_00_RREADY
.AXI_00_BREADY (st_hbm_axi3[00].bready ), // input wire AXI_00_BREADY
.AXI_00_WDATA (st_hbm_axi3[00].wdata ), // input wire [255 : 0] AXI_00_WDATA
.AXI_00_WLAST (st_hbm_axi3[00].wlast ), // input wire AXI_00_WLAST
.AXI_00_WSTRB (st_hbm_axi3[00].wstrb ), // input wire [31 : 0] AXI_00_WSTRB
.AXI_00_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_00_WDATA_PARITY
.AXI_00_WVALID (st_hbm_axi3[00].wvalid ), // input wire AXI_00_WVALID
.AXI_00_ARREADY (st_hbm_axi3[00].arready ), // output wire AXI_00_ARREADY
.AXI_00_AWREADY (st_hbm_axi3[00].awready ), // output wire AXI_00_AWREADY
.AXI_00_RDATA_PARITY ( ), // output wire [31 : 0] AXI_00_RDATA_PARITY
.AXI_00_RDATA (st_hbm_axi3[00].rdata ), // output wire [255 : 0] AXI_00_RDATA
.AXI_00_RID (st_hbm_axi3[00].rid ), // output wire [5 : 0] AXI_00_RID
.AXI_00_RLAST (st_hbm_axi3[00].rlast ), // output wire AXI_00_RLAST
.AXI_00_RRESP (st_hbm_axi3[00].rresp ), // output wire [1 : 0] AXI_00_RRESP
.AXI_00_RVALID (st_hbm_axi3[00].rvalid ), // output wire AXI_00_RVALID
.AXI_00_WREADY (st_hbm_axi3[00].wready ), // output wire AXI_00_WREADY
.AXI_00_BID (st_hbm_axi3[00].bid ), // output wire [5 : 0] AXI_00_BID
.AXI_00_BRESP (st_hbm_axi3[00].bresp ), // output wire [1 : 0] AXI_00_BRESP
.AXI_00_BVALID (st_hbm_axi3[00].bvalid ), // output wire AXI_00_BVALID
.AXI_01_ACLK (axi_clk ), // input wire AXI_01_ACLK
.AXI_01_ARESET_N (axi_rst_n ), // input wire AXI_01_ARESET_N
.AXI_01_ARADDR (st_hbm_axi3[01].araddr ), // input wire [33 : 0] AXI_01_ARADDR
.AXI_01_ARBURST (st_hbm_axi3[01].arburst ), // input wire [1 : 0] AXI_01_ARBURST
.AXI_01_ARID (st_hbm_axi3[01].arid ), // input wire [5 : 0] AXI_01_ARID
.AXI_01_ARLEN (st_hbm_axi3[01].arlen ), // input wire [3 : 0] AXI_01_ARLEN
.AXI_01_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_01_ARSIZE
.AXI_01_ARVALID (st_hbm_axi3[01].arvalid ), // input wire AXI_01_ARVALID
.AXI_01_AWADDR (st_hbm_axi3[01].awaddr ), // input wire [33 : 0] AXI_01_AWADDR
.AXI_01_AWBURST (st_hbm_axi3[01].awburst ), // input wire [1 : 0] AXI_01_AWBURST
.AXI_01_AWID (st_hbm_axi3[01].awid ), // input wire [5 : 0] AXI_01_AWID
.AXI_01_AWLEN (st_hbm_axi3[01].awlen ), // input wire [3 : 0] AXI_01_AWLEN
.AXI_01_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_01_AWSIZE
.AXI_01_AWVALID (st_hbm_axi3[01].awvalid ), // input wire AXI_01_AWVALID
.AXI_01_RREADY (st_hbm_axi3[01].rready ), // input wire AXI_01_RREADY
.AXI_01_BREADY (st_hbm_axi3[01].bready ), // input wire AXI_01_BREADY
.AXI_01_WDATA (st_hbm_axi3[01].wdata ), // input wire [255 : 0] AXI_01_WDATA
.AXI_01_WLAST (st_hbm_axi3[01].wlast ), // input wire AXI_01_WLAST
.AXI_01_WSTRB (st_hbm_axi3[01].wstrb ), // input wire [31 : 0] AXI_01_WSTRB
.AXI_01_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_01_WDATA_PARITY
.AXI_01_WVALID (st_hbm_axi3[01].wvalid ), // input wire AXI_01_WVALID
.AXI_01_ARREADY (st_hbm_axi3[01].arready ), // output wire AXI_01_ARREADY
.AXI_01_AWREADY (st_hbm_axi3[01].awready ), // output wire AXI_01_AWREADY
.AXI_01_RDATA_PARITY ( ), // output wire [31 : 0] AXI_01_RDATA_PARITY
.AXI_01_RDATA (st_hbm_axi3[01].rdata ), // output wire [255 : 0] AXI_01_RDATA
.AXI_01_RID (st_hbm_axi3[01].rid ), // output wire [5 : 0] AXI_01_RID
.AXI_01_RLAST (st_hbm_axi3[01].rlast ), // output wire AXI_01_RLAST
.AXI_01_RRESP (st_hbm_axi3[01].rresp ), // output wire [1 : 0] AXI_01_RRESP
.AXI_01_RVALID (st_hbm_axi3[01].rvalid ), // output wire AXI_01_RVALID
.AXI_01_WREADY (st_hbm_axi3[01].wready ), // output wire AXI_01_WREADY
.AXI_01_BID (st_hbm_axi3[01].bid ), // output wire [5 : 0] AXI_01_BID
.AXI_01_BRESP (st_hbm_axi3[01].bresp ), // output wire [1 : 0] AXI_01_BRESP
.AXI_01_BVALID (st_hbm_axi3[01].bvalid ), // output wire AXI_01_BVALID
.AXI_02_ACLK (axi_clk ), // input wire AXI_02_ACLK
.AXI_02_ARESET_N (axi_rst_n ), // input wire AXI_02_ARESET_N
.AXI_02_ARADDR (st_hbm_axi3[02].araddr ), // input wire [33 : 0] AXI_02_ARADDR
.AXI_02_ARBURST (st_hbm_axi3[02].arburst ), // input wire [1 : 0] AXI_02_ARBURST
.AXI_02_ARID (st_hbm_axi3[02].arid ), // input wire [5 : 0] AXI_02_ARID
.AXI_02_ARLEN (st_hbm_axi3[02].arlen ), // input wire [3 : 0] AXI_02_ARLEN
.AXI_02_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_02_ARSIZE
.AXI_02_ARVALID (st_hbm_axi3[02].arvalid ), // input wire AXI_02_ARVALID
.AXI_02_AWADDR (st_hbm_axi3[02].awaddr ), // input wire [33 : 0] AXI_02_AWADDR
.AXI_02_AWBURST (st_hbm_axi3[02].awburst ), // input wire [1 : 0] AXI_02_AWBURST
.AXI_02_AWID (st_hbm_axi3[02].awid ), // input wire [5 : 0] AXI_02_AWID
.AXI_02_AWLEN (st_hbm_axi3[02].awlen ), // input wire [3 : 0] AXI_02_AWLEN
.AXI_02_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_02_AWSIZE
.AXI_02_AWVALID (st_hbm_axi3[02].awvalid ), // input wire AXI_02_AWVALID
.AXI_02_RREADY (st_hbm_axi3[02].rready ), // input wire AXI_02_RREADY
.AXI_02_BREADY (st_hbm_axi3[02].bready ), // input wire AXI_02_BREADY
.AXI_02_WDATA (st_hbm_axi3[02].wdata ), // input wire [255 : 0] AXI_02_WDATA
.AXI_02_WLAST (st_hbm_axi3[02].wlast ), // input wire AXI_02_WLAST
.AXI_02_WSTRB (st_hbm_axi3[02].wstrb ), // input wire [31 : 0] AXI_02_WSTRB
.AXI_02_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_02_WDATA_PARITY
.AXI_02_WVALID (st_hbm_axi3[02].wvalid ), // input wire AXI_02_WVALID
.AXI_02_ARREADY (st_hbm_axi3[02].arready ), // output wire AXI_02_ARREADY
.AXI_02_AWREADY (st_hbm_axi3[02].awready ), // output wire AXI_02_AWREADY
.AXI_02_RDATA_PARITY ( ), // output wire [31 : 0] AXI_02_RDATA_PARITY
.AXI_02_RDATA (st_hbm_axi3[02].rdata ), // output wire [255 : 0] AXI_02_RDATA
.AXI_02_RID (st_hbm_axi3[02].rid ), // output wire [5 : 0] AXI_02_RID
.AXI_02_RLAST (st_hbm_axi3[02].rlast ), // output wire AXI_02_RLAST
.AXI_02_RRESP (st_hbm_axi3[02].rresp ), // output wire [1 : 0] AXI_02_RRESP
.AXI_02_RVALID (st_hbm_axi3[02].rvalid ), // output wire AXI_02_RVALID
.AXI_02_WREADY (st_hbm_axi3[02].wready ), // output wire AXI_02_WREADY
.AXI_02_BID (st_hbm_axi3[02].bid ), // output wire [5 : 0] AXI_02_BID
.AXI_02_BRESP (st_hbm_axi3[02].bresp ), // output wire [1 : 0] AXI_02_BRESP
.AXI_02_BVALID (st_hbm_axi3[02].bvalid ), // output wire AXI_02_BVALID
.AXI_03_ACLK (axi_clk ), // input wire AXI_03_ACLK
.AXI_03_ARESET_N (axi_rst_n ), // input wire AXI_03_ARESET_N
.AXI_03_ARADDR (st_hbm_axi3[03].araddr ), // input wire [33 : 0] AXI_03_ARADDR
.AXI_03_ARBURST (st_hbm_axi3[03].arburst ), // input wire [1 : 0] AXI_03_ARBURST
.AXI_03_ARID (st_hbm_axi3[03].arid ), // input wire [5 : 0] AXI_03_ARID
.AXI_03_ARLEN (st_hbm_axi3[03].arlen ), // input wire [3 : 0] AXI_03_ARLEN
.AXI_03_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_03_ARSIZE
.AXI_03_ARVALID (st_hbm_axi3[03].arvalid ), // input wire AXI_03_ARVALID
.AXI_03_AWADDR (st_hbm_axi3[03].awaddr ), // input wire [33 : 0] AXI_03_AWADDR
.AXI_03_AWBURST (st_hbm_axi3[03].awburst ), // input wire [1 : 0] AXI_03_AWBURST
.AXI_03_AWID (st_hbm_axi3[03].awid ), // input wire [5 : 0] AXI_03_AWID
.AXI_03_AWLEN (st_hbm_axi3[03].awlen ), // input wire [3 : 0] AXI_03_AWLEN
.AXI_03_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_03_AWSIZE
.AXI_03_AWVALID (st_hbm_axi3[03].awvalid ), // input wire AXI_03_AWVALID
.AXI_03_RREADY (st_hbm_axi3[03].rready ), // input wire AXI_03_RREADY
.AXI_03_BREADY (st_hbm_axi3[03].bready ), // input wire AXI_03_BREADY
.AXI_03_WDATA (st_hbm_axi3[03].wdata ), // input wire [255 : 0] AXI_03_WDATA
.AXI_03_WLAST (st_hbm_axi3[03].wlast ), // input wire AXI_03_WLAST
.AXI_03_WSTRB (st_hbm_axi3[03].wstrb ), // input wire [31 : 0] AXI_03_WSTRB
.AXI_03_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_03_WDATA_PARITY
.AXI_03_WVALID (st_hbm_axi3[03].wvalid ), // input wire AXI_03_WVALID
.AXI_03_ARREADY (st_hbm_axi3[03].arready ), // output wire AXI_03_ARREADY
.AXI_03_AWREADY (st_hbm_axi3[03].awready ), // output wire AXI_03_AWREADY
.AXI_03_RDATA_PARITY ( ), // output wire [31 : 0] AXI_03_RDATA_PARITY
.AXI_03_RDATA (st_hbm_axi3[03].rdata ), // output wire [255 : 0] AXI_03_RDATA
.AXI_03_RID (st_hbm_axi3[03].rid ), // output wire [5 : 0] AXI_03_RID
.AXI_03_RLAST (st_hbm_axi3[03].rlast ), // output wire AXI_03_RLAST
.AXI_03_RRESP (st_hbm_axi3[03].rresp ), // output wire [1 : 0] AXI_03_RRESP
.AXI_03_RVALID (st_hbm_axi3[03].rvalid ), // output wire AXI_03_RVALID
.AXI_03_WREADY (st_hbm_axi3[03].wready ), // output wire AXI_03_WREADY
.AXI_03_BID (st_hbm_axi3[03].bid ), // output wire [5 : 0] AXI_03_BID
.AXI_03_BRESP (st_hbm_axi3[03].bresp ), // output wire [1 : 0] AXI_03_BRESP
.AXI_03_BVALID (st_hbm_axi3[03].bvalid ), // output wire AXI_03_BVALID
.AXI_04_ACLK (axi_clk ), // input wire AXI_04_ACLK
.AXI_04_ARESET_N (axi_rst_n ), // input wire AXI_04_ARESET_N
.AXI_04_ARADDR (st_hbm_axi3[04].araddr ), // input wire [33 : 0] AXI_04_ARADDR
.AXI_04_ARBURST (st_hbm_axi3[04].arburst ), // input wire [1 : 0] AXI_04_ARBURST
.AXI_04_ARID (st_hbm_axi3[04].arid ), // input wire [5 : 0] AXI_04_ARID
.AXI_04_ARLEN (st_hbm_axi3[04].arlen ), // input wire [3 : 0] AXI_04_ARLEN
.AXI_04_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_04_ARSIZE
.AXI_04_ARVALID (st_hbm_axi3[04].arvalid ), // input wire AXI_04_ARVALID
.AXI_04_AWADDR (st_hbm_axi3[04].awaddr ), // input wire [33 : 0] AXI_04_AWADDR
.AXI_04_AWBURST (st_hbm_axi3[04].awburst ), // input wire [1 : 0] AXI_04_AWBURST
.AXI_04_AWID (st_hbm_axi3[04].awid ), // input wire [5 : 0] AXI_04_AWID
.AXI_04_AWLEN (st_hbm_axi3[04].awlen ), // input wire [3 : 0] AXI_04_AWLEN
.AXI_04_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_04_AWSIZE
.AXI_04_AWVALID (st_hbm_axi3[04].awvalid ), // input wire AXI_04_AWVALID
.AXI_04_RREADY (st_hbm_axi3[04].rready ), // input wire AXI_04_RREADY
.AXI_04_BREADY (st_hbm_axi3[04].bready ), // input wire AXI_04_BREADY
.AXI_04_WDATA (st_hbm_axi3[04].wdata ), // input wire [255 : 0] AXI_04_WDATA
.AXI_04_WLAST (st_hbm_axi3[04].wlast ), // input wire AXI_04_WLAST
.AXI_04_WSTRB (st_hbm_axi3[04].wstrb ), // input wire [31 : 0] AXI_04_WSTRB
.AXI_04_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_04_WDATA_PARITY
.AXI_04_WVALID (st_hbm_axi3[04].wvalid ), // input wire AXI_04_WVALID
.AXI_04_ARREADY (st_hbm_axi3[04].arready ), // output wire AXI_04_ARREADY
.AXI_04_AWREADY (st_hbm_axi3[04].awready ), // output wire AXI_04_AWREADY
.AXI_04_RDATA_PARITY ( ), // output wire [31 : 0] AXI_04_RDATA_PARITY
.AXI_04_RDATA (st_hbm_axi3[04].rdata ), // output wire [255 : 0] AXI_04_RDATA
.AXI_04_RID (st_hbm_axi3[04].rid ), // output wire [5 : 0] AXI_04_RID
.AXI_04_RLAST (st_hbm_axi3[04].rlast ), // output wire AXI_04_RLAST
.AXI_04_RRESP (st_hbm_axi3[04].rresp ), // output wire [1 : 0] AXI_04_RRESP
.AXI_04_RVALID (st_hbm_axi3[04].rvalid ), // output wire AXI_04_RVALID
.AXI_04_WREADY (st_hbm_axi3[04].wready ), // output wire AXI_04_WREADY
.AXI_04_BID (st_hbm_axi3[04].bid ), // output wire [5 : 0] AXI_04_BID
.AXI_04_BRESP (st_hbm_axi3[04].bresp ), // output wire [1 : 0] AXI_04_BRESP
.AXI_04_BVALID (st_hbm_axi3[04].bvalid ), // output wire AXI_04_BVALID
.AXI_05_ACLK (axi_clk ), // input wire AXI_05_ACLK
.AXI_05_ARESET_N (axi_rst_n ), // input wire AXI_05_ARESET_N
.AXI_05_ARADDR (st_hbm_axi3[05].araddr ), // input wire [33 : 0] AXI_05_ARADDR
.AXI_05_ARBURST (st_hbm_axi3[05].arburst ), // input wire [1 : 0] AXI_05_ARBURST
.AXI_05_ARID (st_hbm_axi3[05].arid ), // input wire [5 : 0] AXI_05_ARID
.AXI_05_ARLEN (st_hbm_axi3[05].arlen ), // input wire [3 : 0] AXI_05_ARLEN
.AXI_05_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_05_ARSIZE
.AXI_05_ARVALID (st_hbm_axi3[05].arvalid ), // input wire AXI_05_ARVALID
.AXI_05_AWADDR (st_hbm_axi3[05].awaddr ), // input wire [33 : 0] AXI_05_AWADDR
.AXI_05_AWBURST (st_hbm_axi3[05].awburst ), // input wire [1 : 0] AXI_05_AWBURST
.AXI_05_AWID (st_hbm_axi3[05].awid ), // input wire [5 : 0] AXI_05_AWID
.AXI_05_AWLEN (st_hbm_axi3[05].awlen ), // input wire [3 : 0] AXI_05_AWLEN
.AXI_05_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_05_AWSIZE
.AXI_05_AWVALID (st_hbm_axi3[05].awvalid ), // input wire AXI_05_AWVALID
.AXI_05_RREADY (st_hbm_axi3[05].rready ), // input wire AXI_05_RREADY
.AXI_05_BREADY (st_hbm_axi3[05].bready ), // input wire AXI_05_BREADY
.AXI_05_WDATA (st_hbm_axi3[05].wdata ), // input wire [255 : 0] AXI_05_WDATA
.AXI_05_WLAST (st_hbm_axi3[05].wlast ), // input wire AXI_05_WLAST
.AXI_05_WSTRB (st_hbm_axi3[05].wstrb ), // input wire [31 : 0] AXI_05_WSTRB
.AXI_05_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_05_WDATA_PARITY
.AXI_05_WVALID (st_hbm_axi3[05].wvalid ), // input wire AXI_05_WVALID
.AXI_05_ARREADY (st_hbm_axi3[05].arready ), // output wire AXI_05_ARREADY
.AXI_05_AWREADY (st_hbm_axi3[05].awready ), // output wire AXI_05_AWREADY
.AXI_05_RDATA_PARITY ( ), // output wire [31 : 0] AXI_05_RDATA_PARITY
.AXI_05_RDATA (st_hbm_axi3[05].rdata ), // output wire [255 : 0] AXI_05_RDATA
.AXI_05_RID (st_hbm_axi3[05].rid ), // output wire [5 : 0] AXI_05_RID
.AXI_05_RLAST (st_hbm_axi3[05].rlast ), // output wire AXI_05_RLAST
.AXI_05_RRESP (st_hbm_axi3[05].rresp ), // output wire [1 : 0] AXI_05_RRESP
.AXI_05_RVALID (st_hbm_axi3[05].rvalid ), // output wire AXI_05_RVALID
.AXI_05_WREADY (st_hbm_axi3[05].wready ), // output wire AXI_05_WREADY
.AXI_05_BID (st_hbm_axi3[05].bid ), // output wire [5 : 0] AXI_05_BID
.AXI_05_BRESP (st_hbm_axi3[05].bresp ), // output wire [1 : 0] AXI_05_BRESP
.AXI_05_BVALID (st_hbm_axi3[05].bvalid ), // output wire AXI_05_BVALID
.AXI_06_ACLK (axi_clk ), // input wire AXI_06_ACLK
.AXI_06_ARESET_N (axi_rst_n ), // input wire AXI_06_ARESET_N
.AXI_06_ARADDR (st_hbm_axi3[06].araddr ), // input wire [33 : 0] AXI_06_ARADDR
.AXI_06_ARBURST (st_hbm_axi3[06].arburst ), // input wire [1 : 0] AXI_06_ARBURST
.AXI_06_ARID (st_hbm_axi3[06].arid ), // input wire [5 : 0] AXI_06_ARID
.AXI_06_ARLEN (st_hbm_axi3[06].arlen ), // input wire [3 : 0] AXI_06_ARLEN
.AXI_06_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_06_ARSIZE
.AXI_06_ARVALID (st_hbm_axi3[06].arvalid ), // input wire AXI_06_ARVALID
.AXI_06_AWADDR (st_hbm_axi3[06].awaddr ), // input wire [33 : 0] AXI_06_AWADDR
.AXI_06_AWBURST (st_hbm_axi3[06].awburst ), // input wire [1 : 0] AXI_06_AWBURST
.AXI_06_AWID (st_hbm_axi3[06].awid ), // input wire [5 : 0] AXI_06_AWID
.AXI_06_AWLEN (st_hbm_axi3[06].awlen ), // input wire [3 : 0] AXI_06_AWLEN
.AXI_06_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_06_AWSIZE
.AXI_06_AWVALID (st_hbm_axi3[06].awvalid ), // input wire AXI_06_AWVALID
.AXI_06_RREADY (st_hbm_axi3[06].rready ), // input wire AXI_06_RREADY
.AXI_06_BREADY (st_hbm_axi3[06].bready ), // input wire AXI_06_BREADY
.AXI_06_WDATA (st_hbm_axi3[06].wdata ), // input wire [255 : 0] AXI_06_WDATA
.AXI_06_WLAST (st_hbm_axi3[06].wlast ), // input wire AXI_06_WLAST
.AXI_06_WSTRB (st_hbm_axi3[06].wstrb ), // input wire [31 : 0] AXI_06_WSTRB
.AXI_06_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_06_WDATA_PARITY
.AXI_06_WVALID (st_hbm_axi3[06].wvalid ), // input wire AXI_06_WVALID
.AXI_06_ARREADY (st_hbm_axi3[06].arready ), // output wire AXI_06_ARREADY
.AXI_06_AWREADY (st_hbm_axi3[06].awready ), // output wire AXI_06_AWREADY
.AXI_06_RDATA_PARITY ( ), // output wire [31 : 0] AXI_06_RDATA_PARITY
.AXI_06_RDATA (st_hbm_axi3[06].rdata ), // output wire [255 : 0] AXI_06_RDATA
.AXI_06_RID (st_hbm_axi3[06].rid ), // output wire [5 : 0] AXI_06_RID
.AXI_06_RLAST (st_hbm_axi3[06].rlast ), // output wire AXI_06_RLAST
.AXI_06_RRESP (st_hbm_axi3[06].rresp ), // output wire [1 : 0] AXI_06_RRESP
.AXI_06_RVALID (st_hbm_axi3[06].rvalid ), // output wire AXI_06_RVALID
.AXI_06_WREADY (st_hbm_axi3[06].wready ), // output wire AXI_06_WREADY
.AXI_06_BID (st_hbm_axi3[06].bid ), // output wire [5 : 0] AXI_06_BID
.AXI_06_BRESP (st_hbm_axi3[06].bresp ), // output wire [1 : 0] AXI_06_BRESP
.AXI_06_BVALID (st_hbm_axi3[06].bvalid ), // output wire AXI_06_BVALID
.AXI_07_ACLK (axi_clk ), // input wire AXI_07_ACLK
.AXI_07_ARESET_N (axi_rst_n ), // input wire AXI_07_ARESET_N
.AXI_07_ARADDR (st_hbm_axi3[07].araddr ), // input wire [33 : 0] AXI_07_ARADDR
.AXI_07_ARBURST (st_hbm_axi3[07].arburst ), // input wire [1 : 0] AXI_07_ARBURST
.AXI_07_ARID (st_hbm_axi3[07].arid ), // input wire [5 : 0] AXI_07_ARID
.AXI_07_ARLEN (st_hbm_axi3[07].arlen ), // input wire [3 : 0] AXI_07_ARLEN
.AXI_07_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_07_ARSIZE
.AXI_07_ARVALID (st_hbm_axi3[07].arvalid ), // input wire AXI_07_ARVALID
.AXI_07_AWADDR (st_hbm_axi3[07].awaddr ), // input wire [33 : 0] AXI_07_AWADDR
.AXI_07_AWBURST (st_hbm_axi3[07].awburst ), // input wire [1 : 0] AXI_07_AWBURST
.AXI_07_AWID (st_hbm_axi3[07].awid ), // input wire [5 : 0] AXI_07_AWID
.AXI_07_AWLEN (st_hbm_axi3[07].awlen ), // input wire [3 : 0] AXI_07_AWLEN
.AXI_07_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_07_AWSIZE
.AXI_07_AWVALID (st_hbm_axi3[07].awvalid ), // input wire AXI_07_AWVALID
.AXI_07_RREADY (st_hbm_axi3[07].rready ), // input wire AXI_07_RREADY
.AXI_07_BREADY (st_hbm_axi3[07].bready ), // input wire AXI_07_BREADY
.AXI_07_WDATA (st_hbm_axi3[07].wdata ), // input wire [255 : 0] AXI_07_WDATA
.AXI_07_WLAST (st_hbm_axi3[07].wlast ), // input wire AXI_07_WLAST
.AXI_07_WSTRB (st_hbm_axi3[07].wstrb ), // input wire [31 : 0] AXI_07_WSTRB
.AXI_07_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_07_WDATA_PARITY
.AXI_07_WVALID (st_hbm_axi3[07].wvalid ), // input wire AXI_07_WVALID
.AXI_07_ARREADY (st_hbm_axi3[07].arready ), // output wire AXI_07_ARREADY
.AXI_07_AWREADY (st_hbm_axi3[07].awready ), // output wire AXI_07_AWREADY
.AXI_07_RDATA_PARITY ( ), // output wire [31 : 0] AXI_07_RDATA_PARITY
.AXI_07_RDATA (st_hbm_axi3[07].rdata ), // output wire [255 : 0] AXI_07_RDATA
.AXI_07_RID (st_hbm_axi3[07].rid ), // output wire [5 : 0] AXI_07_RID
.AXI_07_RLAST (st_hbm_axi3[07].rlast ), // output wire AXI_07_RLAST
.AXI_07_RRESP (st_hbm_axi3[07].rresp ), // output wire [1 : 0] AXI_07_RRESP
.AXI_07_RVALID (st_hbm_axi3[07].rvalid ), // output wire AXI_07_RVALID
.AXI_07_WREADY (st_hbm_axi3[07].wready ), // output wire AXI_07_WREADY
.AXI_07_BID (st_hbm_axi3[07].bid ), // output wire [5 : 0] AXI_07_BID
.AXI_07_BRESP (st_hbm_axi3[07].bresp ), // output wire [1 : 0] AXI_07_BRESP
.AXI_07_BVALID (st_hbm_axi3[07].bvalid ), // output wire AXI_07_BVALID
.AXI_08_ACLK (axi_clk ), // input wire AXI_08_ACLK
.AXI_08_ARESET_N (axi_rst_n ), // input wire AXI_08_ARESET_N
.AXI_08_ARADDR (st_hbm_axi3[08].araddr ), // input wire [33 : 0] AXI_08_ARADDR
.AXI_08_ARBURST (st_hbm_axi3[08].arburst ), // input wire [1 : 0] AXI_08_ARBURST
.AXI_08_ARID (st_hbm_axi3[08].arid ), // input wire [5 : 0] AXI_08_ARID
.AXI_08_ARLEN (st_hbm_axi3[08].arlen ), // input wire [3 : 0] AXI_08_ARLEN
.AXI_08_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_08_ARSIZE
.AXI_08_ARVALID (st_hbm_axi3[08].arvalid ), // input wire AXI_08_ARVALID
.AXI_08_AWADDR (st_hbm_axi3[08].awaddr ), // input wire [33 : 0] AXI_08_AWADDR
.AXI_08_AWBURST (st_hbm_axi3[08].awburst ), // input wire [1 : 0] AXI_08_AWBURST
.AXI_08_AWID (st_hbm_axi3[08].awid ), // input wire [5 : 0] AXI_08_AWID
.AXI_08_AWLEN (st_hbm_axi3[08].awlen ), // input wire [3 : 0] AXI_08_AWLEN
.AXI_08_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_08_AWSIZE
.AXI_08_AWVALID (st_hbm_axi3[08].awvalid ), // input wire AXI_08_AWVALID
.AXI_08_RREADY (st_hbm_axi3[08].rready ), // input wire AXI_08_RREADY
.AXI_08_BREADY (st_hbm_axi3[08].bready ), // input wire AXI_08_BREADY
.AXI_08_WDATA (st_hbm_axi3[08].wdata ), // input wire [255 : 0] AXI_08_WDATA
.AXI_08_WLAST (st_hbm_axi3[08].wlast ), // input wire AXI_08_WLAST
.AXI_08_WSTRB (st_hbm_axi3[08].wstrb ), // input wire [31 : 0] AXI_08_WSTRB
.AXI_08_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_08_WDATA_PARITY
.AXI_08_WVALID (st_hbm_axi3[08].wvalid ), // input wire AXI_08_WVALID
.AXI_08_ARREADY (st_hbm_axi3[08].arready ), // output wire AXI_08_ARREADY
.AXI_08_AWREADY (st_hbm_axi3[08].awready ), // output wire AXI_08_AWREADY
.AXI_08_RDATA_PARITY ( ), // output wire [31 : 0] AXI_08_RDATA_PARITY
.AXI_08_RDATA (st_hbm_axi3[08].rdata ), // output wire [255 : 0] AXI_08_RDATA
.AXI_08_RID (st_hbm_axi3[08].rid ), // output wire [5 : 0] AXI_08_RID
.AXI_08_RLAST (st_hbm_axi3[08].rlast ), // output wire AXI_08_RLAST
.AXI_08_RRESP (st_hbm_axi3[08].rresp ), // output wire [1 : 0] AXI_08_RRESP
.AXI_08_RVALID (st_hbm_axi3[08].rvalid ), // output wire AXI_08_RVALID
.AXI_08_WREADY (st_hbm_axi3[08].wready ), // output wire AXI_08_WREADY
.AXI_08_BID (st_hbm_axi3[08].bid ), // output wire [5 : 0] AXI_08_BID
.AXI_08_BRESP (st_hbm_axi3[08].bresp ), // output wire [1 : 0] AXI_08_BRESP
.AXI_08_BVALID (st_hbm_axi3[08].bvalid ), // output wire AXI_08_BVALID
.AXI_09_ACLK (axi_clk ), // input wire AXI_09_ACLK
.AXI_09_ARESET_N (axi_rst_n ), // input wire AXI_09_ARESET_N
.AXI_09_ARADDR (st_hbm_axi3[09].araddr ), // input wire [33 : 0] AXI_09_ARADDR
.AXI_09_ARBURST (st_hbm_axi3[09].arburst ), // input wire [1 : 0] AXI_09_ARBURST
.AXI_09_ARID (st_hbm_axi3[09].arid ), // input wire [5 : 0] AXI_09_ARID
.AXI_09_ARLEN (st_hbm_axi3[09].arlen ), // input wire [3 : 0] AXI_09_ARLEN
.AXI_09_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_09_ARSIZE
.AXI_09_ARVALID (st_hbm_axi3[09].arvalid ), // input wire AXI_09_ARVALID
.AXI_09_AWADDR (st_hbm_axi3[09].awaddr ), // input wire [33 : 0] AXI_09_AWADDR
.AXI_09_AWBURST (st_hbm_axi3[09].awburst ), // input wire [1 : 0] AXI_09_AWBURST
.AXI_09_AWID (st_hbm_axi3[09].awid ), // input wire [5 : 0] AXI_09_AWID
.AXI_09_AWLEN (st_hbm_axi3[09].awlen ), // input wire [3 : 0] AXI_09_AWLEN
.AXI_09_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_09_AWSIZE
.AXI_09_AWVALID (st_hbm_axi3[09].awvalid ), // input wire AXI_09_AWVALID
.AXI_09_RREADY (st_hbm_axi3[09].rready ), // input wire AXI_09_RREADY
.AXI_09_BREADY (st_hbm_axi3[09].bready ), // input wire AXI_09_BREADY
.AXI_09_WDATA (st_hbm_axi3[09].wdata ), // input wire [255 : 0] AXI_09_WDATA
.AXI_09_WLAST (st_hbm_axi3[09].wlast ), // input wire AXI_09_WLAST
.AXI_09_WSTRB (st_hbm_axi3[09].wstrb ), // input wire [31 : 0] AXI_09_WSTRB
.AXI_09_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_09_WDATA_PARITY
.AXI_09_WVALID (st_hbm_axi3[09].wvalid ), // input wire AXI_09_WVALID
.AXI_09_ARREADY (st_hbm_axi3[09].arready ), // output wire AXI_09_ARREADY
.AXI_09_AWREADY (st_hbm_axi3[09].awready ), // output wire AXI_09_AWREADY
.AXI_09_RDATA_PARITY ( ), // output wire [31 : 0] AXI_09_RDATA_PARITY
.AXI_09_RDATA (st_hbm_axi3[09].rdata ), // output wire [255 : 0] AXI_09_RDATA
.AXI_09_RID (st_hbm_axi3[09].rid ), // output wire [5 : 0] AXI_09_RID
.AXI_09_RLAST (st_hbm_axi3[09].rlast ), // output wire AXI_09_RLAST
.AXI_09_RRESP (st_hbm_axi3[09].rresp ), // output wire [1 : 0] AXI_09_RRESP
.AXI_09_RVALID (st_hbm_axi3[09].rvalid ), // output wire AXI_09_RVALID
.AXI_09_WREADY (st_hbm_axi3[09].wready ), // output wire AXI_09_WREADY
.AXI_09_BID (st_hbm_axi3[09].bid ), // output wire [5 : 0] AXI_09_BID
.AXI_09_BRESP (st_hbm_axi3[09].bresp ), // output wire [1 : 0] AXI_09_BRESP
.AXI_09_BVALID (st_hbm_axi3[09].bvalid ), // output wire AXI_09_BVALID
.AXI_10_ACLK (axi_clk ), // input wire AXI_10_ACLK
.AXI_10_ARESET_N (axi_rst_n ), // input wire AXI_10_ARESET_N
.AXI_10_ARADDR (st_hbm_axi3[10].araddr ), // input wire [33 : 0] AXI_10_ARADDR
.AXI_10_ARBURST (st_hbm_axi3[10].arburst ), // input wire [1 : 0] AXI_10_ARBURST
.AXI_10_ARID (st_hbm_axi3[10].arid ), // input wire [5 : 0] AXI_10_ARID
.AXI_10_ARLEN (st_hbm_axi3[10].arlen ), // input wire [3 : 0] AXI_10_ARLEN
.AXI_10_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_10_ARSIZE
.AXI_10_ARVALID (st_hbm_axi3[10].arvalid ), // input wire AXI_10_ARVALID
.AXI_10_AWADDR (st_hbm_axi3[10].awaddr ), // input wire [33 : 0] AXI_10_AWADDR
.AXI_10_AWBURST (st_hbm_axi3[10].awburst ), // input wire [1 : 0] AXI_10_AWBURST
.AXI_10_AWID (st_hbm_axi3[10].awid ), // input wire [5 : 0] AXI_10_AWID
.AXI_10_AWLEN (st_hbm_axi3[10].awlen ), // input wire [3 : 0] AXI_10_AWLEN
.AXI_10_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_10_AWSIZE
.AXI_10_AWVALID (st_hbm_axi3[10].awvalid ), // input wire AXI_10_AWVALID
.AXI_10_RREADY (st_hbm_axi3[10].rready ), // input wire AXI_10_RREADY
.AXI_10_BREADY (st_hbm_axi3[10].bready ), // input wire AXI_10_BREADY
.AXI_10_WDATA (st_hbm_axi3[10].wdata ), // input wire [255 : 0] AXI_10_WDATA
.AXI_10_WLAST (st_hbm_axi3[10].wlast ), // input wire AXI_10_WLAST
.AXI_10_WSTRB (st_hbm_axi3[10].wstrb ), // input wire [31 : 0] AXI_10_WSTRB
.AXI_10_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_10_WDATA_PARITY
.AXI_10_WVALID (st_hbm_axi3[10].wvalid ), // input wire AXI_10_WVALID
.AXI_10_ARREADY (st_hbm_axi3[10].arready ), // output wire AXI_10_ARREADY
.AXI_10_AWREADY (st_hbm_axi3[10].awready ), // output wire AXI_10_AWREADY
.AXI_10_RDATA_PARITY ( ), // output wire [31 : 0] AXI_10_RDATA_PARITY
.AXI_10_RDATA (st_hbm_axi3[10].rdata ), // output wire [255 : 0] AXI_10_RDATA
.AXI_10_RID (st_hbm_axi3[10].rid ), // output wire [5 : 0] AXI_10_RID
.AXI_10_RLAST (st_hbm_axi3[10].rlast ), // output wire AXI_10_RLAST
.AXI_10_RRESP (st_hbm_axi3[10].rresp ), // output wire [1 : 0] AXI_10_RRESP
.AXI_10_RVALID (st_hbm_axi3[10].rvalid ), // output wire AXI_10_RVALID
.AXI_10_WREADY (st_hbm_axi3[10].wready ), // output wire AXI_10_WREADY
.AXI_10_BID (st_hbm_axi3[10].bid ), // output wire [5 : 0] AXI_10_BID
.AXI_10_BRESP (st_hbm_axi3[10].bresp ), // output wire [1 : 0] AXI_10_BRESP
.AXI_10_BVALID (st_hbm_axi3[10].bvalid ), // output wire AXI_10_BVALID
.AXI_11_ACLK (axi_clk ), // input wire AXI_11_ACLK
.AXI_11_ARESET_N (axi_rst_n ), // input wire AXI_11_ARESET_N
.AXI_11_ARADDR (st_hbm_axi3[11].araddr ), // input wire [33 : 0] AXI_11_ARADDR
.AXI_11_ARBURST (st_hbm_axi3[11].arburst ), // input wire [1 : 0] AXI_11_ARBURST
.AXI_11_ARID (st_hbm_axi3[11].arid ), // input wire [5 : 0] AXI_11_ARID
.AXI_11_ARLEN (st_hbm_axi3[11].arlen ), // input wire [3 : 0] AXI_11_ARLEN
.AXI_11_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_11_ARSIZE
.AXI_11_ARVALID (st_hbm_axi3[11].arvalid ), // input wire AXI_11_ARVALID
.AXI_11_AWADDR (st_hbm_axi3[11].awaddr ), // input wire [33 : 0] AXI_11_AWADDR
.AXI_11_AWBURST (st_hbm_axi3[11].awburst ), // input wire [1 : 0] AXI_11_AWBURST
.AXI_11_AWID (st_hbm_axi3[11].awid ), // input wire [5 : 0] AXI_11_AWID
.AXI_11_AWLEN (st_hbm_axi3[11].awlen ), // input wire [3 : 0] AXI_11_AWLEN
.AXI_11_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_11_AWSIZE
.AXI_11_AWVALID (st_hbm_axi3[11].awvalid ), // input wire AXI_11_AWVALID
.AXI_11_RREADY (st_hbm_axi3[11].rready ), // input wire AXI_11_RREADY
.AXI_11_BREADY (st_hbm_axi3[11].bready ), // input wire AXI_11_BREADY
.AXI_11_WDATA (st_hbm_axi3[11].wdata ), // input wire [255 : 0] AXI_11_WDATA
.AXI_11_WLAST (st_hbm_axi3[11].wlast ), // input wire AXI_11_WLAST
.AXI_11_WSTRB (st_hbm_axi3[11].wstrb ), // input wire [31 : 0] AXI_11_WSTRB
.AXI_11_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_11_WDATA_PARITY
.AXI_11_WVALID (st_hbm_axi3[11].wvalid ), // input wire AXI_11_WVALID
.AXI_11_ARREADY (st_hbm_axi3[11].arready ), // output wire AXI_11_ARREADY
.AXI_11_AWREADY (st_hbm_axi3[11].awready ), // output wire AXI_11_AWREADY
.AXI_11_RDATA_PARITY ( ), // output wire [31 : 0] AXI_11_RDATA_PARITY
.AXI_11_RDATA (st_hbm_axi3[11].rdata ), // output wire [255 : 0] AXI_11_RDATA
.AXI_11_RID (st_hbm_axi3[11].rid ), // output wire [5 : 0] AXI_11_RID
.AXI_11_RLAST (st_hbm_axi3[11].rlast ), // output wire AXI_11_RLAST
.AXI_11_RRESP (st_hbm_axi3[11].rresp ), // output wire [1 : 0] AXI_11_RRESP
.AXI_11_RVALID (st_hbm_axi3[11].rvalid ), // output wire AXI_11_RVALID
.AXI_11_WREADY (st_hbm_axi3[11].wready ), // output wire AXI_11_WREADY
.AXI_11_BID (st_hbm_axi3[11].bid ), // output wire [5 : 0] AXI_11_BID
.AXI_11_BRESP (st_hbm_axi3[11].bresp ), // output wire [1 : 0] AXI_11_BRESP
.AXI_11_BVALID (st_hbm_axi3[11].bvalid ), // output wire AXI_11_BVALID
.AXI_12_ACLK (axi_clk ), // input wire AXI_12_ACLK
.AXI_12_ARESET_N (axi_rst_n ), // input wire AXI_12_ARESET_N
.AXI_12_ARADDR (st_hbm_axi3[12].araddr ), // input wire [33 : 0] AXI_12_ARADDR
.AXI_12_ARBURST (st_hbm_axi3[12].arburst ), // input wire [1 : 0] AXI_12_ARBURST
.AXI_12_ARID (st_hbm_axi3[12].arid ), // input wire [5 : 0] AXI_12_ARID
.AXI_12_ARLEN (st_hbm_axi3[12].arlen ), // input wire [3 : 0] AXI_12_ARLEN
.AXI_12_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_12_ARSIZE
.AXI_12_ARVALID (st_hbm_axi3[12].arvalid ), // input wire AXI_12_ARVALID
.AXI_12_AWADDR (st_hbm_axi3[12].awaddr ), // input wire [33 : 0] AXI_12_AWADDR
.AXI_12_AWBURST (st_hbm_axi3[12].awburst ), // input wire [1 : 0] AXI_12_AWBURST
.AXI_12_AWID (st_hbm_axi3[12].awid ), // input wire [5 : 0] AXI_12_AWID
.AXI_12_AWLEN (st_hbm_axi3[12].awlen ), // input wire [3 : 0] AXI_12_AWLEN
.AXI_12_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_12_AWSIZE
.AXI_12_AWVALID (st_hbm_axi3[12].awvalid ), // input wire AXI_12_AWVALID
.AXI_12_RREADY (st_hbm_axi3[12].rready ), // input wire AXI_12_RREADY
.AXI_12_BREADY (st_hbm_axi3[12].bready ), // input wire AXI_12_BREADY
.AXI_12_WDATA (st_hbm_axi3[12].wdata ), // input wire [255 : 0] AXI_12_WDATA
.AXI_12_WLAST (st_hbm_axi3[12].wlast ), // input wire AXI_12_WLAST
.AXI_12_WSTRB (st_hbm_axi3[12].wstrb ), // input wire [31 : 0] AXI_12_WSTRB
.AXI_12_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_12_WDATA_PARITY
.AXI_12_WVALID (st_hbm_axi3[12].wvalid ), // input wire AXI_12_WVALID
.AXI_12_ARREADY (st_hbm_axi3[12].arready ), // output wire AXI_12_ARREADY
.AXI_12_AWREADY (st_hbm_axi3[12].awready ), // output wire AXI_12_AWREADY
.AXI_12_RDATA_PARITY ( ), // output wire [31 : 0] AXI_12_RDATA_PARITY
.AXI_12_RDATA (st_hbm_axi3[12].rdata ), // output wire [255 : 0] AXI_12_RDATA
.AXI_12_RID (st_hbm_axi3[12].rid ), // output wire [5 : 0] AXI_12_RID
.AXI_12_RLAST (st_hbm_axi3[12].rlast ), // output wire AXI_12_RLAST
.AXI_12_RRESP (st_hbm_axi3[12].rresp ), // output wire [1 : 0] AXI_12_RRESP
.AXI_12_RVALID (st_hbm_axi3[12].rvalid ), // output wire AXI_12_RVALID
.AXI_12_WREADY (st_hbm_axi3[12].wready ), // output wire AXI_12_WREADY
.AXI_12_BID (st_hbm_axi3[12].bid ), // output wire [5 : 0] AXI_12_BID
.AXI_12_BRESP (st_hbm_axi3[12].bresp ), // output wire [1 : 0] AXI_12_BRESP
.AXI_12_BVALID (st_hbm_axi3[12].bvalid ), // output wire AXI_12_BVALID
.AXI_13_ACLK (axi_clk ), // input wire AXI_13_ACLK
.AXI_13_ARESET_N (axi_rst_n ), // input wire AXI_13_ARESET_N
.AXI_13_ARADDR (st_hbm_axi3[13].araddr ), // input wire [33 : 0] AXI_13_ARADDR
.AXI_13_ARBURST (st_hbm_axi3[13].arburst ), // input wire [1 : 0] AXI_13_ARBURST
.AXI_13_ARID (st_hbm_axi3[13].arid ), // input wire [5 : 0] AXI_13_ARID
.AXI_13_ARLEN (st_hbm_axi3[13].arlen ), // input wire [3 : 0] AXI_13_ARLEN
.AXI_13_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_13_ARSIZE
.AXI_13_ARVALID (st_hbm_axi3[13].arvalid ), // input wire AXI_13_ARVALID
.AXI_13_AWADDR (st_hbm_axi3[13].awaddr ), // input wire [33 : 0] AXI_13_AWADDR
.AXI_13_AWBURST (st_hbm_axi3[13].awburst ), // input wire [1 : 0] AXI_13_AWBURST
.AXI_13_AWID (st_hbm_axi3[13].awid ), // input wire [5 : 0] AXI_13_AWID
.AXI_13_AWLEN (st_hbm_axi3[13].awlen ), // input wire [3 : 0] AXI_13_AWLEN
.AXI_13_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_13_AWSIZE
.AXI_13_AWVALID (st_hbm_axi3[13].awvalid ), // input wire AXI_13_AWVALID
.AXI_13_RREADY (st_hbm_axi3[13].rready ), // input wire AXI_13_RREADY
.AXI_13_BREADY (st_hbm_axi3[13].bready ), // input wire AXI_13_BREADY
.AXI_13_WDATA (st_hbm_axi3[13].wdata ), // input wire [255 : 0] AXI_13_WDATA
.AXI_13_WLAST (st_hbm_axi3[13].wlast ), // input wire AXI_13_WLAST
.AXI_13_WSTRB (st_hbm_axi3[13].wstrb ), // input wire [31 : 0] AXI_13_WSTRB
.AXI_13_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_13_WDATA_PARITY
.AXI_13_WVALID (st_hbm_axi3[13].wvalid ), // input wire AXI_13_WVALID
.AXI_13_ARREADY (st_hbm_axi3[13].arready ), // output wire AXI_13_ARREADY
.AXI_13_AWREADY (st_hbm_axi3[13].awready ), // output wire AXI_13_AWREADY
.AXI_13_RDATA_PARITY ( ), // output wire [31 : 0] AXI_13_RDATA_PARITY
.AXI_13_RDATA (st_hbm_axi3[13].rdata ), // output wire [255 : 0] AXI_13_RDATA
.AXI_13_RID (st_hbm_axi3[13].rid ), // output wire [5 : 0] AXI_13_RID
.AXI_13_RLAST (st_hbm_axi3[13].rlast ), // output wire AXI_13_RLAST
.AXI_13_RRESP (st_hbm_axi3[13].rresp ), // output wire [1 : 0] AXI_13_RRESP
.AXI_13_RVALID (st_hbm_axi3[13].rvalid ), // output wire AXI_13_RVALID
.AXI_13_WREADY (st_hbm_axi3[13].wready ), // output wire AXI_13_WREADY
.AXI_13_BID (st_hbm_axi3[13].bid ), // output wire [5 : 0] AXI_13_BID
.AXI_13_BRESP (st_hbm_axi3[13].bresp ), // output wire [1 : 0] AXI_13_BRESP
.AXI_13_BVALID (st_hbm_axi3[13].bvalid ), // output wire AXI_13_BVALID
.AXI_14_ACLK (axi_clk ), // input wire AXI_14_ACLK
.AXI_14_ARESET_N (axi_rst_n ), // input wire AXI_14_ARESET_N
.AXI_14_ARADDR (st_hbm_axi3[14].araddr ), // input wire [33 : 0] AXI_14_ARADDR
.AXI_14_ARBURST (st_hbm_axi3[14].arburst ), // input wire [1 : 0] AXI_14_ARBURST
.AXI_14_ARID (st_hbm_axi3[14].arid ), // input wire [5 : 0] AXI_14_ARID
.AXI_14_ARLEN (st_hbm_axi3[14].arlen ), // input wire [3 : 0] AXI_14_ARLEN
.AXI_14_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_14_ARSIZE
.AXI_14_ARVALID (st_hbm_axi3[14].arvalid ), // input wire AXI_14_ARVALID
.AXI_14_AWADDR (st_hbm_axi3[14].awaddr ), // input wire [33 : 0] AXI_14_AWADDR
.AXI_14_AWBURST (st_hbm_axi3[14].awburst ), // input wire [1 : 0] AXI_14_AWBURST
.AXI_14_AWID (st_hbm_axi3[14].awid ), // input wire [5 : 0] AXI_14_AWID
.AXI_14_AWLEN (st_hbm_axi3[14].awlen ), // input wire [3 : 0] AXI_14_AWLEN
.AXI_14_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_14_AWSIZE
.AXI_14_AWVALID (st_hbm_axi3[14].awvalid ), // input wire AXI_14_AWVALID
.AXI_14_RREADY (st_hbm_axi3[14].rready ), // input wire AXI_14_RREADY
.AXI_14_BREADY (st_hbm_axi3[14].bready ), // input wire AXI_14_BREADY
.AXI_14_WDATA (st_hbm_axi3[14].wdata ), // input wire [255 : 0] AXI_14_WDATA
.AXI_14_WLAST (st_hbm_axi3[14].wlast ), // input wire AXI_14_WLAST
.AXI_14_WSTRB (st_hbm_axi3[14].wstrb ), // input wire [31 : 0] AXI_14_WSTRB
.AXI_14_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_14_WDATA_PARITY
.AXI_14_WVALID (st_hbm_axi3[14].wvalid ), // input wire AXI_14_WVALID
.AXI_14_ARREADY (st_hbm_axi3[14].arready ), // output wire AXI_14_ARREADY
.AXI_14_AWREADY (st_hbm_axi3[14].awready ), // output wire AXI_14_AWREADY
.AXI_14_RDATA_PARITY ( ), // output wire [31 : 0] AXI_14_RDATA_PARITY
.AXI_14_RDATA (st_hbm_axi3[14].rdata ), // output wire [255 : 0] AXI_14_RDATA
.AXI_14_RID (st_hbm_axi3[14].rid ), // output wire [5 : 0] AXI_14_RID
.AXI_14_RLAST (st_hbm_axi3[14].rlast ), // output wire AXI_14_RLAST
.AXI_14_RRESP (st_hbm_axi3[14].rresp ), // output wire [1 : 0] AXI_14_RRESP
.AXI_14_RVALID (st_hbm_axi3[14].rvalid ), // output wire AXI_14_RVALID
.AXI_14_WREADY (st_hbm_axi3[14].wready ), // output wire AXI_14_WREADY
.AXI_14_BID (st_hbm_axi3[14].bid ), // output wire [5 : 0] AXI_14_BID
.AXI_14_BRESP (st_hbm_axi3[14].bresp ), // output wire [1 : 0] AXI_14_BRESP
.AXI_14_BVALID (st_hbm_axi3[14].bvalid ), // output wire AXI_14_BVALID
.AXI_15_ACLK (axi_clk ), // input wire AXI_15_ACLK
.AXI_15_ARESET_N (axi_rst_n ), // input wire AXI_15_ARESET_N
.AXI_15_ARADDR (st_hbm_axi3[15].araddr ), // input wire [33 : 0] AXI_15_ARADDR
.AXI_15_ARBURST (st_hbm_axi3[15].arburst ), // input wire [1 : 0] AXI_15_ARBURST
.AXI_15_ARID (st_hbm_axi3[15].arid ), // input wire [5 : 0] AXI_15_ARID
.AXI_15_ARLEN (st_hbm_axi3[15].arlen ), // input wire [3 : 0] AXI_15_ARLEN
.AXI_15_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_15_ARSIZE
.AXI_15_ARVALID (st_hbm_axi3[15].arvalid ), // input wire AXI_15_ARVALID
.AXI_15_AWADDR (st_hbm_axi3[15].awaddr ), // input wire [33 : 0] AXI_15_AWADDR
.AXI_15_AWBURST (st_hbm_axi3[15].awburst ), // input wire [1 : 0] AXI_15_AWBURST
.AXI_15_AWID (st_hbm_axi3[15].awid ), // input wire [5 : 0] AXI_15_AWID
.AXI_15_AWLEN (st_hbm_axi3[15].awlen ), // input wire [3 : 0] AXI_15_AWLEN
.AXI_15_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_15_AWSIZE
.AXI_15_AWVALID (st_hbm_axi3[15].awvalid ), // input wire AXI_15_AWVALID
.AXI_15_RREADY (st_hbm_axi3[15].rready ), // input wire AXI_15_RREADY
.AXI_15_BREADY (st_hbm_axi3[15].bready ), // input wire AXI_15_BREADY
.AXI_15_WDATA (st_hbm_axi3[15].wdata ), // input wire [255 : 0] AXI_15_WDATA
.AXI_15_WLAST (st_hbm_axi3[15].wlast ), // input wire AXI_15_WLAST
.AXI_15_WSTRB (st_hbm_axi3[15].wstrb ), // input wire [31 : 0] AXI_15_WSTRB
.AXI_15_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_15_WDATA_PARITY
.AXI_15_WVALID (st_hbm_axi3[15].wvalid ), // input wire AXI_15_WVALID
.AXI_15_ARREADY (st_hbm_axi3[15].arready ), // output wire AXI_15_ARREADY
.AXI_15_AWREADY (st_hbm_axi3[15].awready ), // output wire AXI_15_AWREADY
.AXI_15_RDATA_PARITY ( ), // output wire [31 : 0] AXI_15_RDATA_PARITY
.AXI_15_RDATA (st_hbm_axi3[15].rdata ), // output wire [255 : 0] AXI_15_RDATA
.AXI_15_RID (st_hbm_axi3[15].rid ), // output wire [5 : 0] AXI_15_RID
.AXI_15_RLAST (st_hbm_axi3[15].rlast ), // output wire AXI_15_RLAST
.AXI_15_RRESP (st_hbm_axi3[15].rresp ), // output wire [1 : 0] AXI_15_RRESP
.AXI_15_RVALID (st_hbm_axi3[15].rvalid ), // output wire AXI_15_RVALID
.AXI_15_WREADY (st_hbm_axi3[15].wready ), // output wire AXI_15_WREADY
.AXI_15_BID (st_hbm_axi3[15].bid ), // output wire [5 : 0] AXI_15_BID
.AXI_15_BRESP (st_hbm_axi3[15].bresp ), // output wire [1 : 0] AXI_15_BRESP
.AXI_15_BVALID (st_hbm_axi3[15].bvalid ), // output wire AXI_15_BVALID
.AXI_16_ACLK (axi_clk ), // input wire AXI_16_ACLK
.AXI_16_ARESET_N (axi_rst_n ), // input wire AXI_16_ARESET_N
.AXI_16_ARADDR (st_hbm_axi3[16].araddr ), // input wire [33 : 0] AXI_16_ARADDR
.AXI_16_ARBURST (st_hbm_axi3[16].arburst ), // input wire [1 : 0] AXI_16_ARBURST
.AXI_16_ARID (st_hbm_axi3[16].arid ), // input wire [5 : 0] AXI_16_ARID
.AXI_16_ARLEN (st_hbm_axi3[16].arlen ), // input wire [3 : 0] AXI_16_ARLEN
.AXI_16_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_16_ARSIZE
.AXI_16_ARVALID (st_hbm_axi3[16].arvalid ), // input wire AXI_16_ARVALID
.AXI_16_AWADDR (st_hbm_axi3[16].awaddr ), // input wire [33 : 0] AXI_16_AWADDR
.AXI_16_AWBURST (st_hbm_axi3[16].awburst ), // input wire [1 : 0] AXI_16_AWBURST
.AXI_16_AWID (st_hbm_axi3[16].awid ), // input wire [5 : 0] AXI_16_AWID
.AXI_16_AWLEN (st_hbm_axi3[16].awlen ), // input wire [3 : 0] AXI_16_AWLEN
.AXI_16_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_16_AWSIZE
.AXI_16_AWVALID (st_hbm_axi3[16].awvalid ), // input wire AXI_16_AWVALID
.AXI_16_RREADY (st_hbm_axi3[16].rready ), // input wire AXI_16_RREADY
.AXI_16_BREADY (st_hbm_axi3[16].bready ), // input wire AXI_16_BREADY
.AXI_16_WDATA (st_hbm_axi3[16].wdata ), // input wire [255 : 0] AXI_16_WDATA
.AXI_16_WLAST (st_hbm_axi3[16].wlast ), // input wire AXI_16_WLAST
.AXI_16_WSTRB (st_hbm_axi3[16].wstrb ), // input wire [31 : 0] AXI_16_WSTRB
.AXI_16_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_16_WDATA_PARITY
.AXI_16_WVALID (st_hbm_axi3[16].wvalid ), // input wire AXI_16_WVALID
.AXI_16_ARREADY (st_hbm_axi3[16].arready ), // output wire AXI_16_ARREADY
.AXI_16_AWREADY (st_hbm_axi3[16].awready ), // output wire AXI_16_AWREADY
.AXI_16_RDATA_PARITY ( ), // output wire [31 : 0] AXI_16_RDATA_PARITY
.AXI_16_RDATA (st_hbm_axi3[16].rdata ), // output wire [255 : 0] AXI_16_RDATA
.AXI_16_RID (st_hbm_axi3[16].rid ), // output wire [5 : 0] AXI_16_RID
.AXI_16_RLAST (st_hbm_axi3[16].rlast ), // output wire AXI_16_RLAST
.AXI_16_RRESP (st_hbm_axi3[16].rresp ), // output wire [1 : 0] AXI_16_RRESP
.AXI_16_RVALID (st_hbm_axi3[16].rvalid ), // output wire AXI_16_RVALID
.AXI_16_WREADY (st_hbm_axi3[16].wready ), // output wire AXI_16_WREADY
.AXI_16_BID (st_hbm_axi3[16].bid ), // output wire [5 : 0] AXI_16_BID
.AXI_16_BRESP (st_hbm_axi3[16].bresp ), // output wire [1 : 0] AXI_16_BRESP
.AXI_16_BVALID (st_hbm_axi3[16].bvalid ), // output wire AXI_16_BVALID
.AXI_17_ACLK (axi_clk ), // input wire AXI_17_ACLK
.AXI_17_ARESET_N (axi_rst_n ), // input wire AXI_17_ARESET_N
.AXI_17_ARADDR (st_hbm_axi3[17].araddr ), // input wire [33 : 0] AXI_17_ARADDR
.AXI_17_ARBURST (st_hbm_axi3[17].arburst ), // input wire [1 : 0] AXI_17_ARBURST
.AXI_17_ARID (st_hbm_axi3[17].arid ), // input wire [5 : 0] AXI_17_ARID
.AXI_17_ARLEN (st_hbm_axi3[17].arlen ), // input wire [3 : 0] AXI_17_ARLEN
.AXI_17_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_17_ARSIZE
.AXI_17_ARVALID (st_hbm_axi3[17].arvalid ), // input wire AXI_17_ARVALID
.AXI_17_AWADDR (st_hbm_axi3[17].awaddr ), // input wire [33 : 0] AXI_17_AWADDR
.AXI_17_AWBURST (st_hbm_axi3[17].awburst ), // input wire [1 : 0] AXI_17_AWBURST
.AXI_17_AWID (st_hbm_axi3[17].awid ), // input wire [5 : 0] AXI_17_AWID
.AXI_17_AWLEN (st_hbm_axi3[17].awlen ), // input wire [3 : 0] AXI_17_AWLEN
.AXI_17_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_17_AWSIZE
.AXI_17_AWVALID (st_hbm_axi3[17].awvalid ), // input wire AXI_17_AWVALID
.AXI_17_RREADY (st_hbm_axi3[17].rready ), // input wire AXI_17_RREADY
.AXI_17_BREADY (st_hbm_axi3[17].bready ), // input wire AXI_17_BREADY
.AXI_17_WDATA (st_hbm_axi3[17].wdata ), // input wire [255 : 0] AXI_17_WDATA
.AXI_17_WLAST (st_hbm_axi3[17].wlast ), // input wire AXI_17_WLAST
.AXI_17_WSTRB (st_hbm_axi3[17].wstrb ), // input wire [31 : 0] AXI_17_WSTRB
.AXI_17_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_17_WDATA_PARITY
.AXI_17_WVALID (st_hbm_axi3[17].wvalid ), // input wire AXI_17_WVALID
.AXI_17_ARREADY (st_hbm_axi3[17].arready ), // output wire AXI_17_ARREADY
.AXI_17_AWREADY (st_hbm_axi3[17].awready ), // output wire AXI_17_AWREADY
.AXI_17_RDATA_PARITY ( ), // output wire [31 : 0] AXI_17_RDATA_PARITY
.AXI_17_RDATA (st_hbm_axi3[17].rdata ), // output wire [255 : 0] AXI_17_RDATA
.AXI_17_RID (st_hbm_axi3[17].rid ), // output wire [5 : 0] AXI_17_RID
.AXI_17_RLAST (st_hbm_axi3[17].rlast ), // output wire AXI_17_RLAST
.AXI_17_RRESP (st_hbm_axi3[17].rresp ), // output wire [1 : 0] AXI_17_RRESP
.AXI_17_RVALID (st_hbm_axi3[17].rvalid ), // output wire AXI_17_RVALID
.AXI_17_WREADY (st_hbm_axi3[17].wready ), // output wire AXI_17_WREADY
.AXI_17_BID (st_hbm_axi3[17].bid ), // output wire [5 : 0] AXI_17_BID
.AXI_17_BRESP (st_hbm_axi3[17].bresp ), // output wire [1 : 0] AXI_17_BRESP
.AXI_17_BVALID (st_hbm_axi3[17].bvalid ), // output wire AXI_17_BVALID
.AXI_18_ACLK (axi_clk ), // input wire AXI_18_ACLK
.AXI_18_ARESET_N (axi_rst_n ), // input wire AXI_18_ARESET_N
.AXI_18_ARADDR (st_hbm_axi3[18].araddr ), // input wire [33 : 0] AXI_18_ARADDR
.AXI_18_ARBURST (st_hbm_axi3[18].arburst ), // input wire [1 : 0] AXI_18_ARBURST
.AXI_18_ARID (st_hbm_axi3[18].arid ), // input wire [5 : 0] AXI_18_ARID
.AXI_18_ARLEN (st_hbm_axi3[18].arlen ), // input wire [3 : 0] AXI_18_ARLEN
.AXI_18_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_18_ARSIZE
.AXI_18_ARVALID (st_hbm_axi3[18].arvalid ), // input wire AXI_18_ARVALID
.AXI_18_AWADDR (st_hbm_axi3[18].awaddr ), // input wire [33 : 0] AXI_18_AWADDR
.AXI_18_AWBURST (st_hbm_axi3[18].awburst ), // input wire [1 : 0] AXI_18_AWBURST
.AXI_18_AWID (st_hbm_axi3[18].awid ), // input wire [5 : 0] AXI_18_AWID
.AXI_18_AWLEN (st_hbm_axi3[18].awlen ), // input wire [3 : 0] AXI_18_AWLEN
.AXI_18_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_18_AWSIZE
.AXI_18_AWVALID (st_hbm_axi3[18].awvalid ), // input wire AXI_18_AWVALID
.AXI_18_RREADY (st_hbm_axi3[18].rready ), // input wire AXI_18_RREADY
.AXI_18_BREADY (st_hbm_axi3[18].bready ), // input wire AXI_18_BREADY
.AXI_18_WDATA (st_hbm_axi3[18].wdata ), // input wire [255 : 0] AXI_18_WDATA
.AXI_18_WLAST (st_hbm_axi3[18].wlast ), // input wire AXI_18_WLAST
.AXI_18_WSTRB (st_hbm_axi3[18].wstrb ), // input wire [31 : 0] AXI_18_WSTRB
.AXI_18_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_18_WDATA_PARITY
.AXI_18_WVALID (st_hbm_axi3[18].wvalid ), // input wire AXI_18_WVALID
.AXI_18_ARREADY (st_hbm_axi3[18].arready ), // output wire AXI_18_ARREADY
.AXI_18_AWREADY (st_hbm_axi3[18].awready ), // output wire AXI_18_AWREADY
.AXI_18_RDATA_PARITY ( ), // output wire [31 : 0] AXI_18_RDATA_PARITY
.AXI_18_RDATA (st_hbm_axi3[18].rdata ), // output wire [255 : 0] AXI_18_RDATA
.AXI_18_RID (st_hbm_axi3[18].rid ), // output wire [5 : 0] AXI_18_RID
.AXI_18_RLAST (st_hbm_axi3[18].rlast ), // output wire AXI_18_RLAST
.AXI_18_RRESP (st_hbm_axi3[18].rresp ), // output wire [1 : 0] AXI_18_RRESP
.AXI_18_RVALID (st_hbm_axi3[18].rvalid ), // output wire AXI_18_RVALID
.AXI_18_WREADY (st_hbm_axi3[18].wready ), // output wire AXI_18_WREADY
.AXI_18_BID (st_hbm_axi3[18].bid ), // output wire [5 : 0] AXI_18_BID
.AXI_18_BRESP (st_hbm_axi3[18].bresp ), // output wire [1 : 0] AXI_18_BRESP
.AXI_18_BVALID (st_hbm_axi3[18].bvalid ), // output wire AXI_18_BVALID
.AXI_19_ACLK (axi_clk ), // input wire AXI_19_ACLK
.AXI_19_ARESET_N (axi_rst_n ), // input wire AXI_19_ARESET_N
.AXI_19_ARADDR (st_hbm_axi3[19].araddr ), // input wire [33 : 0] AXI_19_ARADDR
.AXI_19_ARBURST (st_hbm_axi3[19].arburst ), // input wire [1 : 0] AXI_19_ARBURST
.AXI_19_ARID (st_hbm_axi3[19].arid ), // input wire [5 : 0] AXI_19_ARID
.AXI_19_ARLEN (st_hbm_axi3[19].arlen ), // input wire [3 : 0] AXI_19_ARLEN
.AXI_19_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_19_ARSIZE
.AXI_19_ARVALID (st_hbm_axi3[19].arvalid ), // input wire AXI_19_ARVALID
.AXI_19_AWADDR (st_hbm_axi3[19].awaddr ), // input wire [33 : 0] AXI_19_AWADDR
.AXI_19_AWBURST (st_hbm_axi3[19].awburst ), // input wire [1 : 0] AXI_19_AWBURST
.AXI_19_AWID (st_hbm_axi3[19].awid ), // input wire [5 : 0] AXI_19_AWID
.AXI_19_AWLEN (st_hbm_axi3[19].awlen ), // input wire [3 : 0] AXI_19_AWLEN
.AXI_19_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_19_AWSIZE
.AXI_19_AWVALID (st_hbm_axi3[19].awvalid ), // input wire AXI_19_AWVALID
.AXI_19_RREADY (st_hbm_axi3[19].rready ), // input wire AXI_19_RREADY
.AXI_19_BREADY (st_hbm_axi3[19].bready ), // input wire AXI_19_BREADY
.AXI_19_WDATA (st_hbm_axi3[19].wdata ), // input wire [255 : 0] AXI_19_WDATA
.AXI_19_WLAST (st_hbm_axi3[19].wlast ), // input wire AXI_19_WLAST
.AXI_19_WSTRB (st_hbm_axi3[19].wstrb ), // input wire [31 : 0] AXI_19_WSTRB
.AXI_19_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_19_WDATA_PARITY
.AXI_19_WVALID (st_hbm_axi3[19].wvalid ), // input wire AXI_19_WVALID
.AXI_19_ARREADY (st_hbm_axi3[19].arready ), // output wire AXI_19_ARREADY
.AXI_19_AWREADY (st_hbm_axi3[19].awready ), // output wire AXI_19_AWREADY
.AXI_19_RDATA_PARITY ( ), // output wire [31 : 0] AXI_19_RDATA_PARITY
.AXI_19_RDATA (st_hbm_axi3[19].rdata ), // output wire [255 : 0] AXI_19_RDATA
.AXI_19_RID (st_hbm_axi3[19].rid ), // output wire [5 : 0] AXI_19_RID
.AXI_19_RLAST (st_hbm_axi3[19].rlast ), // output wire AXI_19_RLAST
.AXI_19_RRESP (st_hbm_axi3[19].rresp ), // output wire [1 : 0] AXI_19_RRESP
.AXI_19_RVALID (st_hbm_axi3[19].rvalid ), // output wire AXI_19_RVALID
.AXI_19_WREADY (st_hbm_axi3[19].wready ), // output wire AXI_19_WREADY
.AXI_19_BID (st_hbm_axi3[19].bid ), // output wire [5 : 0] AXI_19_BID
.AXI_19_BRESP (st_hbm_axi3[19].bresp ), // output wire [1 : 0] AXI_19_BRESP
.AXI_19_BVALID (st_hbm_axi3[19].bvalid ), // output wire AXI_19_BVALID
.AXI_20_ACLK (axi_clk ), // input wire AXI_20_ACLK
.AXI_20_ARESET_N (axi_rst_n ), // input wire AXI_20_ARESET_N
.AXI_20_ARADDR (st_hbm_axi3[20].araddr ), // input wire [33 : 0] AXI_20_ARADDR
.AXI_20_ARBURST (st_hbm_axi3[20].arburst ), // input wire [1 : 0] AXI_20_ARBURST
.AXI_20_ARID (st_hbm_axi3[20].arid ), // input wire [5 : 0] AXI_20_ARID
.AXI_20_ARLEN (st_hbm_axi3[20].arlen ), // input wire [3 : 0] AXI_20_ARLEN
.AXI_20_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_20_ARSIZE
.AXI_20_ARVALID (st_hbm_axi3[20].arvalid ), // input wire AXI_20_ARVALID
.AXI_20_AWADDR (st_hbm_axi3[20].awaddr ), // input wire [33 : 0] AXI_20_AWADDR
.AXI_20_AWBURST (st_hbm_axi3[20].awburst ), // input wire [1 : 0] AXI_20_AWBURST
.AXI_20_AWID (st_hbm_axi3[20].awid ), // input wire [5 : 0] AXI_20_AWID
.AXI_20_AWLEN (st_hbm_axi3[20].awlen ), // input wire [3 : 0] AXI_20_AWLEN
.AXI_20_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_20_AWSIZE
.AXI_20_AWVALID (st_hbm_axi3[20].awvalid ), // input wire AXI_20_AWVALID
.AXI_20_RREADY (st_hbm_axi3[20].rready ), // input wire AXI_20_RREADY
.AXI_20_BREADY (st_hbm_axi3[20].bready ), // input wire AXI_20_BREADY
.AXI_20_WDATA (st_hbm_axi3[20].wdata ), // input wire [255 : 0] AXI_20_WDATA
.AXI_20_WLAST (st_hbm_axi3[20].wlast ), // input wire AXI_20_WLAST
.AXI_20_WSTRB (st_hbm_axi3[20].wstrb ), // input wire [31 : 0] AXI_20_WSTRB
.AXI_20_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_20_WDATA_PARITY
.AXI_20_WVALID (st_hbm_axi3[20].wvalid ), // input wire AXI_20_WVALID
.AXI_20_ARREADY (st_hbm_axi3[20].arready ), // output wire AXI_20_ARREADY
.AXI_20_AWREADY (st_hbm_axi3[20].awready ), // output wire AXI_20_AWREADY
.AXI_20_RDATA_PARITY ( ), // output wire [31 : 0] AXI_20_RDATA_PARITY
.AXI_20_RDATA (st_hbm_axi3[20].rdata ), // output wire [255 : 0] AXI_20_RDATA
.AXI_20_RID (st_hbm_axi3[20].rid ), // output wire [5 : 0] AXI_20_RID
.AXI_20_RLAST (st_hbm_axi3[20].rlast ), // output wire AXI_20_RLAST
.AXI_20_RRESP (st_hbm_axi3[20].rresp ), // output wire [1 : 0] AXI_20_RRESP
.AXI_20_RVALID (st_hbm_axi3[20].rvalid ), // output wire AXI_20_RVALID
.AXI_20_WREADY (st_hbm_axi3[20].wready ), // output wire AXI_20_WREADY
.AXI_20_BID (st_hbm_axi3[20].bid ), // output wire [5 : 0] AXI_20_BID
.AXI_20_BRESP (st_hbm_axi3[20].bresp ), // output wire [1 : 0] AXI_20_BRESP
.AXI_20_BVALID (st_hbm_axi3[20].bvalid ), // output wire AXI_20_BVALID
.AXI_21_ACLK (axi_clk ), // input wire AXI_21_ACLK
.AXI_21_ARESET_N (axi_rst_n ), // input wire AXI_21_ARESET_N
.AXI_21_ARADDR (st_hbm_axi3[21].araddr ), // input wire [33 : 0] AXI_21_ARADDR
.AXI_21_ARBURST (st_hbm_axi3[21].arburst ), // input wire [1 : 0] AXI_21_ARBURST
.AXI_21_ARID (st_hbm_axi3[21].arid ), // input wire [5 : 0] AXI_21_ARID
.AXI_21_ARLEN (st_hbm_axi3[21].arlen ), // input wire [3 : 0] AXI_21_ARLEN
.AXI_21_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_21_ARSIZE
.AXI_21_ARVALID (st_hbm_axi3[21].arvalid ), // input wire AXI_21_ARVALID
.AXI_21_AWADDR (st_hbm_axi3[21].awaddr ), // input wire [33 : 0] AXI_21_AWADDR
.AXI_21_AWBURST (st_hbm_axi3[21].awburst ), // input wire [1 : 0] AXI_21_AWBURST
.AXI_21_AWID (st_hbm_axi3[21].awid ), // input wire [5 : 0] AXI_21_AWID
.AXI_21_AWLEN (st_hbm_axi3[21].awlen ), // input wire [3 : 0] AXI_21_AWLEN
.AXI_21_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_21_AWSIZE
.AXI_21_AWVALID (st_hbm_axi3[21].awvalid ), // input wire AXI_21_AWVALID
.AXI_21_RREADY (st_hbm_axi3[21].rready ), // input wire AXI_21_RREADY
.AXI_21_BREADY (st_hbm_axi3[21].bready ), // input wire AXI_21_BREADY
.AXI_21_WDATA (st_hbm_axi3[21].wdata ), // input wire [255 : 0] AXI_21_WDATA
.AXI_21_WLAST (st_hbm_axi3[21].wlast ), // input wire AXI_21_WLAST
.AXI_21_WSTRB (st_hbm_axi3[21].wstrb ), // input wire [31 : 0] AXI_21_WSTRB
.AXI_21_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_21_WDATA_PARITY
.AXI_21_WVALID (st_hbm_axi3[21].wvalid ), // input wire AXI_21_WVALID
.AXI_21_ARREADY (st_hbm_axi3[21].arready ), // output wire AXI_21_ARREADY
.AXI_21_AWREADY (st_hbm_axi3[21].awready ), // output wire AXI_21_AWREADY
.AXI_21_RDATA_PARITY ( ), // output wire [31 : 0] AXI_21_RDATA_PARITY
.AXI_21_RDATA (st_hbm_axi3[21].rdata ), // output wire [255 : 0] AXI_21_RDATA
.AXI_21_RID (st_hbm_axi3[21].rid ), // output wire [5 : 0] AXI_21_RID
.AXI_21_RLAST (st_hbm_axi3[21].rlast ), // output wire AXI_21_RLAST
.AXI_21_RRESP (st_hbm_axi3[21].rresp ), // output wire [1 : 0] AXI_21_RRESP
.AXI_21_RVALID (st_hbm_axi3[21].rvalid ), // output wire AXI_21_RVALID
.AXI_21_WREADY (st_hbm_axi3[21].wready ), // output wire AXI_21_WREADY
.AXI_21_BID (st_hbm_axi3[21].bid ), // output wire [5 : 0] AXI_21_BID
.AXI_21_BRESP (st_hbm_axi3[21].bresp ), // output wire [1 : 0] AXI_21_BRESP
.AXI_21_BVALID (st_hbm_axi3[21].bvalid ), // output wire AXI_21_BVALID
.AXI_22_ACLK (axi_clk ), // input wire AXI_22_ACLK
.AXI_22_ARESET_N (axi_rst_n ), // input wire AXI_22_ARESET_N
.AXI_22_ARADDR (st_hbm_axi3[22].araddr ), // input wire [33 : 0] AXI_22_ARADDR
.AXI_22_ARBURST (st_hbm_axi3[22].arburst ), // input wire [1 : 0] AXI_22_ARBURST
.AXI_22_ARID (st_hbm_axi3[22].arid ), // input wire [5 : 0] AXI_22_ARID
.AXI_22_ARLEN (st_hbm_axi3[22].arlen ), // input wire [3 : 0] AXI_22_ARLEN
.AXI_22_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_22_ARSIZE
.AXI_22_ARVALID (st_hbm_axi3[22].arvalid ), // input wire AXI_22_ARVALID
.AXI_22_AWADDR (st_hbm_axi3[22].awaddr ), // input wire [33 : 0] AXI_22_AWADDR
.AXI_22_AWBURST (st_hbm_axi3[22].awburst ), // input wire [1 : 0] AXI_22_AWBURST
.AXI_22_AWID (st_hbm_axi3[22].awid ), // input wire [5 : 0] AXI_22_AWID
.AXI_22_AWLEN (st_hbm_axi3[22].awlen ), // input wire [3 : 0] AXI_22_AWLEN
.AXI_22_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_22_AWSIZE
.AXI_22_AWVALID (st_hbm_axi3[22].awvalid ), // input wire AXI_22_AWVALID
.AXI_22_RREADY (st_hbm_axi3[22].rready ), // input wire AXI_22_RREADY
.AXI_22_BREADY (st_hbm_axi3[22].bready ), // input wire AXI_22_BREADY
.AXI_22_WDATA (st_hbm_axi3[22].wdata ), // input wire [255 : 0] AXI_22_WDATA
.AXI_22_WLAST (st_hbm_axi3[22].wlast ), // input wire AXI_22_WLAST
.AXI_22_WSTRB (st_hbm_axi3[22].wstrb ), // input wire [31 : 0] AXI_22_WSTRB
.AXI_22_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_22_WDATA_PARITY
.AXI_22_WVALID (st_hbm_axi3[22].wvalid ), // input wire AXI_22_WVALID
.AXI_22_ARREADY (st_hbm_axi3[22].arready ), // output wire AXI_22_ARREADY
.AXI_22_AWREADY (st_hbm_axi3[22].awready ), // output wire AXI_22_AWREADY
.AXI_22_RDATA_PARITY ( ), // output wire [31 : 0] AXI_22_RDATA_PARITY
.AXI_22_RDATA (st_hbm_axi3[22].rdata ), // output wire [255 : 0] AXI_22_RDATA
.AXI_22_RID (st_hbm_axi3[22].rid ), // output wire [5 : 0] AXI_22_RID
.AXI_22_RLAST (st_hbm_axi3[22].rlast ), // output wire AXI_22_RLAST
.AXI_22_RRESP (st_hbm_axi3[22].rresp ), // output wire [1 : 0] AXI_22_RRESP
.AXI_22_RVALID (st_hbm_axi3[22].rvalid ), // output wire AXI_22_RVALID
.AXI_22_WREADY (st_hbm_axi3[22].wready ), // output wire AXI_22_WREADY
.AXI_22_BID (st_hbm_axi3[22].bid ), // output wire [5 : 0] AXI_22_BID
.AXI_22_BRESP (st_hbm_axi3[22].bresp ), // output wire [1 : 0] AXI_22_BRESP
.AXI_22_BVALID (st_hbm_axi3[22].bvalid ), // output wire AXI_22_BVALID
.AXI_23_ACLK (axi_clk ), // input wire AXI_23_ACLK
.AXI_23_ARESET_N (axi_rst_n ), // input wire AXI_23_ARESET_N
.AXI_23_ARADDR (st_hbm_axi3[23].araddr ), // input wire [33 : 0] AXI_23_ARADDR
.AXI_23_ARBURST (st_hbm_axi3[23].arburst ), // input wire [1 : 0] AXI_23_ARBURST
.AXI_23_ARID (st_hbm_axi3[23].arid ), // input wire [5 : 0] AXI_23_ARID
.AXI_23_ARLEN (st_hbm_axi3[23].arlen ), // input wire [3 : 0] AXI_23_ARLEN
.AXI_23_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_23_ARSIZE
.AXI_23_ARVALID (st_hbm_axi3[23].arvalid ), // input wire AXI_23_ARVALID
.AXI_23_AWADDR (st_hbm_axi3[23].awaddr ), // input wire [33 : 0] AXI_23_AWADDR
.AXI_23_AWBURST (st_hbm_axi3[23].awburst ), // input wire [1 : 0] AXI_23_AWBURST
.AXI_23_AWID (st_hbm_axi3[23].awid ), // input wire [5 : 0] AXI_23_AWID
.AXI_23_AWLEN (st_hbm_axi3[23].awlen ), // input wire [3 : 0] AXI_23_AWLEN
.AXI_23_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_23_AWSIZE
.AXI_23_AWVALID (st_hbm_axi3[23].awvalid ), // input wire AXI_23_AWVALID
.AXI_23_RREADY (st_hbm_axi3[23].rready ), // input wire AXI_23_RREADY
.AXI_23_BREADY (st_hbm_axi3[23].bready ), // input wire AXI_23_BREADY
.AXI_23_WDATA (st_hbm_axi3[23].wdata ), // input wire [255 : 0] AXI_23_WDATA
.AXI_23_WLAST (st_hbm_axi3[23].wlast ), // input wire AXI_23_WLAST
.AXI_23_WSTRB (st_hbm_axi3[23].wstrb ), // input wire [31 : 0] AXI_23_WSTRB
.AXI_23_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_23_WDATA_PARITY
.AXI_23_WVALID (st_hbm_axi3[23].wvalid ), // input wire AXI_23_WVALID
.AXI_23_ARREADY (st_hbm_axi3[23].arready ), // output wire AXI_23_ARREADY
.AXI_23_AWREADY (st_hbm_axi3[23].awready ), // output wire AXI_23_AWREADY
.AXI_23_RDATA_PARITY ( ), // output wire [31 : 0] AXI_23_RDATA_PARITY
.AXI_23_RDATA (st_hbm_axi3[23].rdata ), // output wire [255 : 0] AXI_23_RDATA
.AXI_23_RID (st_hbm_axi3[23].rid ), // output wire [5 : 0] AXI_23_RID
.AXI_23_RLAST (st_hbm_axi3[23].rlast ), // output wire AXI_23_RLAST
.AXI_23_RRESP (st_hbm_axi3[23].rresp ), // output wire [1 : 0] AXI_23_RRESP
.AXI_23_RVALID (st_hbm_axi3[23].rvalid ), // output wire AXI_23_RVALID
.AXI_23_WREADY (st_hbm_axi3[23].wready ), // output wire AXI_23_WREADY
.AXI_23_BID (st_hbm_axi3[23].bid ), // output wire [5 : 0] AXI_23_BID
.AXI_23_BRESP (st_hbm_axi3[23].bresp ), // output wire [1 : 0] AXI_23_BRESP
.AXI_23_BVALID (st_hbm_axi3[23].bvalid ), // output wire AXI_23_BVALID
.AXI_24_ACLK (axi_clk ), // input wire AXI_24_ACLK
.AXI_24_ARESET_N (axi_rst_n ), // input wire AXI_24_ARESET_N
.AXI_24_ARADDR (st_hbm_axi3[24].araddr ), // input wire [33 : 0] AXI_24_ARADDR
.AXI_24_ARBURST (st_hbm_axi3[24].arburst ), // input wire [1 : 0] AXI_24_ARBURST
.AXI_24_ARID (st_hbm_axi3[24].arid ), // input wire [5 : 0] AXI_24_ARID
.AXI_24_ARLEN (st_hbm_axi3[24].arlen ), // input wire [3 : 0] AXI_24_ARLEN
.AXI_24_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_24_ARSIZE
.AXI_24_ARVALID (st_hbm_axi3[24].arvalid ), // input wire AXI_24_ARVALID
.AXI_24_AWADDR (st_hbm_axi3[24].awaddr ), // input wire [33 : 0] AXI_24_AWADDR
.AXI_24_AWBURST (st_hbm_axi3[24].awburst ), // input wire [1 : 0] AXI_24_AWBURST
.AXI_24_AWID (st_hbm_axi3[24].awid ), // input wire [5 : 0] AXI_24_AWID
.AXI_24_AWLEN (st_hbm_axi3[24].awlen ), // input wire [3 : 0] AXI_24_AWLEN
.AXI_24_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_24_AWSIZE
.AXI_24_AWVALID (st_hbm_axi3[24].awvalid ), // input wire AXI_24_AWVALID
.AXI_24_RREADY (st_hbm_axi3[24].rready ), // input wire AXI_24_RREADY
.AXI_24_BREADY (st_hbm_axi3[24].bready ), // input wire AXI_24_BREADY
.AXI_24_WDATA (st_hbm_axi3[24].wdata ), // input wire [255 : 0] AXI_24_WDATA
.AXI_24_WLAST (st_hbm_axi3[24].wlast ), // input wire AXI_24_WLAST
.AXI_24_WSTRB (st_hbm_axi3[24].wstrb ), // input wire [31 : 0] AXI_24_WSTRB
.AXI_24_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_24_WDATA_PARITY
.AXI_24_WVALID (st_hbm_axi3[24].wvalid ), // input wire AXI_24_WVALID
.AXI_24_ARREADY (st_hbm_axi3[24].arready ), // output wire AXI_24_ARREADY
.AXI_24_AWREADY (st_hbm_axi3[24].awready ), // output wire AXI_24_AWREADY
.AXI_24_RDATA_PARITY ( ), // output wire [31 : 0] AXI_24_RDATA_PARITY
.AXI_24_RDATA (st_hbm_axi3[24].rdata ), // output wire [255 : 0] AXI_24_RDATA
.AXI_24_RID (st_hbm_axi3[24].rid ), // output wire [5 : 0] AXI_24_RID
.AXI_24_RLAST (st_hbm_axi3[24].rlast ), // output wire AXI_24_RLAST
.AXI_24_RRESP (st_hbm_axi3[24].rresp ), // output wire [1 : 0] AXI_24_RRESP
.AXI_24_RVALID (st_hbm_axi3[24].rvalid ), // output wire AXI_24_RVALID
.AXI_24_WREADY (st_hbm_axi3[24].wready ), // output wire AXI_24_WREADY
.AXI_24_BID (st_hbm_axi3[24].bid ), // output wire [5 : 0] AXI_24_BID
.AXI_24_BRESP (st_hbm_axi3[24].bresp ), // output wire [1 : 0] AXI_24_BRESP
.AXI_24_BVALID (st_hbm_axi3[24].bvalid ), // output wire AXI_24_BVALID
.AXI_25_ACLK (axi_clk ), // input wire AXI_25_ACLK
.AXI_25_ARESET_N (axi_rst_n ), // input wire AXI_25_ARESET_N
.AXI_25_ARADDR (st_hbm_axi3[25].araddr ), // input wire [33 : 0] AXI_25_ARADDR
.AXI_25_ARBURST (st_hbm_axi3[25].arburst ), // input wire [1 : 0] AXI_25_ARBURST
.AXI_25_ARID (st_hbm_axi3[25].arid ), // input wire [5 : 0] AXI_25_ARID
.AXI_25_ARLEN (st_hbm_axi3[25].arlen ), // input wire [3 : 0] AXI_25_ARLEN
.AXI_25_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_25_ARSIZE
.AXI_25_ARVALID (st_hbm_axi3[25].arvalid ), // input wire AXI_25_ARVALID
.AXI_25_AWADDR (st_hbm_axi3[25].awaddr ), // input wire [33 : 0] AXI_25_AWADDR
.AXI_25_AWBURST (st_hbm_axi3[25].awburst ), // input wire [1 : 0] AXI_25_AWBURST
.AXI_25_AWID (st_hbm_axi3[25].awid ), // input wire [5 : 0] AXI_25_AWID
.AXI_25_AWLEN (st_hbm_axi3[25].awlen ), // input wire [3 : 0] AXI_25_AWLEN
.AXI_25_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_25_AWSIZE
.AXI_25_AWVALID (st_hbm_axi3[25].awvalid ), // input wire AXI_25_AWVALID
.AXI_25_RREADY (st_hbm_axi3[25].rready ), // input wire AXI_25_RREADY
.AXI_25_BREADY (st_hbm_axi3[25].bready ), // input wire AXI_25_BREADY
.AXI_25_WDATA (st_hbm_axi3[25].wdata ), // input wire [255 : 0] AXI_25_WDATA
.AXI_25_WLAST (st_hbm_axi3[25].wlast ), // input wire AXI_25_WLAST
.AXI_25_WSTRB (st_hbm_axi3[25].wstrb ), // input wire [31 : 0] AXI_25_WSTRB
.AXI_25_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_25_WDATA_PARITY
.AXI_25_WVALID (st_hbm_axi3[25].wvalid ), // input wire AXI_25_WVALID
.AXI_25_ARREADY (st_hbm_axi3[25].arready ), // output wire AXI_25_ARREADY
.AXI_25_AWREADY (st_hbm_axi3[25].awready ), // output wire AXI_25_AWREADY
.AXI_25_RDATA_PARITY ( ), // output wire [31 : 0] AXI_25_RDATA_PARITY
.AXI_25_RDATA (st_hbm_axi3[25].rdata ), // output wire [255 : 0] AXI_25_RDATA
.AXI_25_RID (st_hbm_axi3[25].rid ), // output wire [5 : 0] AXI_25_RID
.AXI_25_RLAST (st_hbm_axi3[25].rlast ), // output wire AXI_25_RLAST
.AXI_25_RRESP (st_hbm_axi3[25].rresp ), // output wire [1 : 0] AXI_25_RRESP
.AXI_25_RVALID (st_hbm_axi3[25].rvalid ), // output wire AXI_25_RVALID
.AXI_25_WREADY (st_hbm_axi3[25].wready ), // output wire AXI_25_WREADY
.AXI_25_BID (st_hbm_axi3[25].bid ), // output wire [5 : 0] AXI_25_BID
.AXI_25_BRESP (st_hbm_axi3[25].bresp ), // output wire [1 : 0] AXI_25_BRESP
.AXI_25_BVALID (st_hbm_axi3[25].bvalid ), // output wire AXI_25_BVALID
.AXI_26_ACLK (axi_clk ), // input wire AXI_26_ACLK
.AXI_26_ARESET_N (axi_rst_n ), // input wire AXI_26_ARESET_N
.AXI_26_ARADDR (st_hbm_axi3[26].araddr ), // input wire [33 : 0] AXI_26_ARADDR
.AXI_26_ARBURST (st_hbm_axi3[26].arburst ), // input wire [1 : 0] AXI_26_ARBURST
.AXI_26_ARID (st_hbm_axi3[26].arid ), // input wire [5 : 0] AXI_26_ARID
.AXI_26_ARLEN (st_hbm_axi3[26].arlen ), // input wire [3 : 0] AXI_26_ARLEN
.AXI_26_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_26_ARSIZE
.AXI_26_ARVALID (st_hbm_axi3[26].arvalid ), // input wire AXI_26_ARVALID
.AXI_26_AWADDR (st_hbm_axi3[26].awaddr ), // input wire [33 : 0] AXI_26_AWADDR
.AXI_26_AWBURST (st_hbm_axi3[26].awburst ), // input wire [1 : 0] AXI_26_AWBURST
.AXI_26_AWID (st_hbm_axi3[26].awid ), // input wire [5 : 0] AXI_26_AWID
.AXI_26_AWLEN (st_hbm_axi3[26].awlen ), // input wire [3 : 0] AXI_26_AWLEN
.AXI_26_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_26_AWSIZE
.AXI_26_AWVALID (st_hbm_axi3[26].awvalid ), // input wire AXI_26_AWVALID
.AXI_26_RREADY (st_hbm_axi3[26].rready ), // input wire AXI_26_RREADY
.AXI_26_BREADY (st_hbm_axi3[26].bready ), // input wire AXI_26_BREADY
.AXI_26_WDATA (st_hbm_axi3[26].wdata ), // input wire [255 : 0] AXI_26_WDATA
.AXI_26_WLAST (st_hbm_axi3[26].wlast ), // input wire AXI_26_WLAST
.AXI_26_WSTRB (st_hbm_axi3[26].wstrb ), // input wire [31 : 0] AXI_26_WSTRB
.AXI_26_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_26_WDATA_PARITY
.AXI_26_WVALID (st_hbm_axi3[26].wvalid ), // input wire AXI_26_WVALID
.AXI_26_ARREADY (st_hbm_axi3[26].arready ), // output wire AXI_26_ARREADY
.AXI_26_AWREADY (st_hbm_axi3[26].awready ), // output wire AXI_26_AWREADY
.AXI_26_RDATA_PARITY ( ), // output wire [31 : 0] AXI_26_RDATA_PARITY
.AXI_26_RDATA (st_hbm_axi3[26].rdata ), // output wire [255 : 0] AXI_26_RDATA
.AXI_26_RID (st_hbm_axi3[26].rid ), // output wire [5 : 0] AXI_26_RID
.AXI_26_RLAST (st_hbm_axi3[26].rlast ), // output wire AXI_26_RLAST
.AXI_26_RRESP (st_hbm_axi3[26].rresp ), // output wire [1 : 0] AXI_26_RRESP
.AXI_26_RVALID (st_hbm_axi3[26].rvalid ), // output wire AXI_26_RVALID
.AXI_26_WREADY (st_hbm_axi3[26].wready ), // output wire AXI_26_WREADY
.AXI_26_BID (st_hbm_axi3[26].bid ), // output wire [5 : 0] AXI_26_BID
.AXI_26_BRESP (st_hbm_axi3[26].bresp ), // output wire [1 : 0] AXI_26_BRESP
.AXI_26_BVALID (st_hbm_axi3[26].bvalid ), // output wire AXI_26_BVALID
.AXI_27_ACLK (axi_clk ), // input wire AXI_27_ACLK
.AXI_27_ARESET_N (axi_rst_n ), // input wire AXI_27_ARESET_N
.AXI_27_ARADDR (st_hbm_axi3[27].araddr ), // input wire [33 : 0] AXI_27_ARADDR
.AXI_27_ARBURST (st_hbm_axi3[27].arburst ), // input wire [1 : 0] AXI_27_ARBURST
.AXI_27_ARID (st_hbm_axi3[27].arid ), // input wire [5 : 0] AXI_27_ARID
.AXI_27_ARLEN (st_hbm_axi3[27].arlen ), // input wire [3 : 0] AXI_27_ARLEN
.AXI_27_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_27_ARSIZE
.AXI_27_ARVALID (st_hbm_axi3[27].arvalid ), // input wire AXI_27_ARVALID
.AXI_27_AWADDR (st_hbm_axi3[27].awaddr ), // input wire [33 : 0] AXI_27_AWADDR
.AXI_27_AWBURST (st_hbm_axi3[27].awburst ), // input wire [1 : 0] AXI_27_AWBURST
.AXI_27_AWID (st_hbm_axi3[27].awid ), // input wire [5 : 0] AXI_27_AWID
.AXI_27_AWLEN (st_hbm_axi3[27].awlen ), // input wire [3 : 0] AXI_27_AWLEN
.AXI_27_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_27_AWSIZE
.AXI_27_AWVALID (st_hbm_axi3[27].awvalid ), // input wire AXI_27_AWVALID
.AXI_27_RREADY (st_hbm_axi3[27].rready ), // input wire AXI_27_RREADY
.AXI_27_BREADY (st_hbm_axi3[27].bready ), // input wire AXI_27_BREADY
.AXI_27_WDATA (st_hbm_axi3[27].wdata ), // input wire [255 : 0] AXI_27_WDATA
.AXI_27_WLAST (st_hbm_axi3[27].wlast ), // input wire AXI_27_WLAST
.AXI_27_WSTRB (st_hbm_axi3[27].wstrb ), // input wire [31 : 0] AXI_27_WSTRB
.AXI_27_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_27_WDATA_PARITY
.AXI_27_WVALID (st_hbm_axi3[27].wvalid ), // input wire AXI_27_WVALID
.AXI_27_ARREADY (st_hbm_axi3[27].arready ), // output wire AXI_27_ARREADY
.AXI_27_AWREADY (st_hbm_axi3[27].awready ), // output wire AXI_27_AWREADY
.AXI_27_RDATA_PARITY ( ), // output wire [31 : 0] AXI_27_RDATA_PARITY
.AXI_27_RDATA (st_hbm_axi3[27].rdata ), // output wire [255 : 0] AXI_27_RDATA
.AXI_27_RID (st_hbm_axi3[27].rid ), // output wire [5 : 0] AXI_27_RID
.AXI_27_RLAST (st_hbm_axi3[27].rlast ), // output wire AXI_27_RLAST
.AXI_27_RRESP (st_hbm_axi3[27].rresp ), // output wire [1 : 0] AXI_27_RRESP
.AXI_27_RVALID (st_hbm_axi3[27].rvalid ), // output wire AXI_27_RVALID
.AXI_27_WREADY (st_hbm_axi3[27].wready ), // output wire AXI_27_WREADY
.AXI_27_BID (st_hbm_axi3[27].bid ), // output wire [5 : 0] AXI_27_BID
.AXI_27_BRESP (st_hbm_axi3[27].bresp ), // output wire [1 : 0] AXI_27_BRESP
.AXI_27_BVALID (st_hbm_axi3[27].bvalid ), // output wire AXI_27_BVALID
.AXI_28_ACLK (axi_clk ), // input wire AXI_28_ACLK
.AXI_28_ARESET_N (axi_rst_n ), // input wire AXI_28_ARESET_N
.AXI_28_ARADDR (st_hbm_axi3[28].araddr ), // input wire [33 : 0] AXI_28_ARADDR
.AXI_28_ARBURST (st_hbm_axi3[28].arburst ), // input wire [1 : 0] AXI_28_ARBURST
.AXI_28_ARID (st_hbm_axi3[28].arid ), // input wire [5 : 0] AXI_28_ARID
.AXI_28_ARLEN (st_hbm_axi3[28].arlen ), // input wire [3 : 0] AXI_28_ARLEN
.AXI_28_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_28_ARSIZE
.AXI_28_ARVALID (st_hbm_axi3[28].arvalid ), // input wire AXI_28_ARVALID
.AXI_28_AWADDR (st_hbm_axi3[28].awaddr ), // input wire [33 : 0] AXI_28_AWADDR
.AXI_28_AWBURST (st_hbm_axi3[28].awburst ), // input wire [1 : 0] AXI_28_AWBURST
.AXI_28_AWID (st_hbm_axi3[28].awid ), // input wire [5 : 0] AXI_28_AWID
.AXI_28_AWLEN (st_hbm_axi3[28].awlen ), // input wire [3 : 0] AXI_28_AWLEN
.AXI_28_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_28_AWSIZE
.AXI_28_AWVALID (st_hbm_axi3[28].awvalid ), // input wire AXI_28_AWVALID
.AXI_28_RREADY (st_hbm_axi3[28].rready ), // input wire AXI_28_RREADY
.AXI_28_BREADY (st_hbm_axi3[28].bready ), // input wire AXI_28_BREADY
.AXI_28_WDATA (st_hbm_axi3[28].wdata ), // input wire [255 : 0] AXI_28_WDATA
.AXI_28_WLAST (st_hbm_axi3[28].wlast ), // input wire AXI_28_WLAST
.AXI_28_WSTRB (st_hbm_axi3[28].wstrb ), // input wire [31 : 0] AXI_28_WSTRB
.AXI_28_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_28_WDATA_PARITY
.AXI_28_WVALID (st_hbm_axi3[28].wvalid ), // input wire AXI_28_WVALID
.AXI_28_ARREADY (st_hbm_axi3[28].arready ), // output wire AXI_28_ARREADY
.AXI_28_AWREADY (st_hbm_axi3[28].awready ), // output wire AXI_28_AWREADY
.AXI_28_RDATA_PARITY ( ), // output wire [31 : 0] AXI_28_RDATA_PARITY
.AXI_28_RDATA (st_hbm_axi3[28].rdata ), // output wire [255 : 0] AXI_28_RDATA
.AXI_28_RID (st_hbm_axi3[28].rid ), // output wire [5 : 0] AXI_28_RID
.AXI_28_RLAST (st_hbm_axi3[28].rlast ), // output wire AXI_28_RLAST
.AXI_28_RRESP (st_hbm_axi3[28].rresp ), // output wire [1 : 0] AXI_28_RRESP
.AXI_28_RVALID (st_hbm_axi3[28].rvalid ), // output wire AXI_28_RVALID
.AXI_28_WREADY (st_hbm_axi3[28].wready ), // output wire AXI_28_WREADY
.AXI_28_BID (st_hbm_axi3[28].bid ), // output wire [5 : 0] AXI_28_BID
.AXI_28_BRESP (st_hbm_axi3[28].bresp ), // output wire [1 : 0] AXI_28_BRESP
.AXI_28_BVALID (st_hbm_axi3[28].bvalid ), // output wire AXI_28_BVALID
.AXI_29_ACLK (axi_clk ), // input wire AXI_29_ACLK
.AXI_29_ARESET_N (axi_rst_n ), // input wire AXI_29_ARESET_N
.AXI_29_ARADDR (st_hbm_axi3[29].araddr ), // input wire [33 : 0] AXI_29_ARADDR
.AXI_29_ARBURST (st_hbm_axi3[29].arburst ), // input wire [1 : 0] AXI_29_ARBURST
.AXI_29_ARID (st_hbm_axi3[29].arid ), // input wire [5 : 0] AXI_29_ARID
.AXI_29_ARLEN (st_hbm_axi3[29].arlen ), // input wire [3 : 0] AXI_29_ARLEN
.AXI_29_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_29_ARSIZE
.AXI_29_ARVALID (st_hbm_axi3[29].arvalid ), // input wire AXI_29_ARVALID
.AXI_29_AWADDR (st_hbm_axi3[29].awaddr ), // input wire [33 : 0] AXI_29_AWADDR
.AXI_29_AWBURST (st_hbm_axi3[29].awburst ), // input wire [1 : 0] AXI_29_AWBURST
.AXI_29_AWID (st_hbm_axi3[29].awid ), // input wire [5 : 0] AXI_29_AWID
.AXI_29_AWLEN (st_hbm_axi3[29].awlen ), // input wire [3 : 0] AXI_29_AWLEN
.AXI_29_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_29_AWSIZE
.AXI_29_AWVALID (st_hbm_axi3[29].awvalid ), // input wire AXI_29_AWVALID
.AXI_29_RREADY (st_hbm_axi3[29].rready ), // input wire AXI_29_RREADY
.AXI_29_BREADY (st_hbm_axi3[29].bready ), // input wire AXI_29_BREADY
.AXI_29_WDATA (st_hbm_axi3[29].wdata ), // input wire [255 : 0] AXI_29_WDATA
.AXI_29_WLAST (st_hbm_axi3[29].wlast ), // input wire AXI_29_WLAST
.AXI_29_WSTRB (st_hbm_axi3[29].wstrb ), // input wire [31 : 0] AXI_29_WSTRB
.AXI_29_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_29_WDATA_PARITY
.AXI_29_WVALID (st_hbm_axi3[29].wvalid ), // input wire AXI_29_WVALID
.AXI_29_ARREADY (st_hbm_axi3[29].arready ), // output wire AXI_29_ARREADY
.AXI_29_AWREADY (st_hbm_axi3[29].awready ), // output wire AXI_29_AWREADY
.AXI_29_RDATA_PARITY ( ), // output wire [31 : 0] AXI_29_RDATA_PARITY
.AXI_29_RDATA (st_hbm_axi3[29].rdata ), // output wire [255 : 0] AXI_29_RDATA
.AXI_29_RID (st_hbm_axi3[29].rid ), // output wire [5 : 0] AXI_29_RID
.AXI_29_RLAST (st_hbm_axi3[29].rlast ), // output wire AXI_29_RLAST
.AXI_29_RRESP (st_hbm_axi3[29].rresp ), // output wire [1 : 0] AXI_29_RRESP
.AXI_29_RVALID (st_hbm_axi3[29].rvalid ), // output wire AXI_29_RVALID
.AXI_29_WREADY (st_hbm_axi3[29].wready ), // output wire AXI_29_WREADY
.AXI_29_BID (st_hbm_axi3[29].bid ), // output wire [5 : 0] AXI_29_BID
.AXI_29_BRESP (st_hbm_axi3[29].bresp ), // output wire [1 : 0] AXI_29_BRESP
.AXI_29_BVALID (st_hbm_axi3[29].bvalid ), // output wire AXI_29_BVALID
.AXI_30_ACLK (axi_clk ), // input wire AXI_30_ACLK
.AXI_30_ARESET_N (axi_rst_n ), // input wire AXI_30_ARESET_N
.AXI_30_ARADDR (st_hbm_axi3[30].araddr ), // input wire [33 : 0] AXI_30_ARADDR
.AXI_30_ARBURST (st_hbm_axi3[30].arburst ), // input wire [1 : 0] AXI_30_ARBURST
.AXI_30_ARID (st_hbm_axi3[30].arid ), // input wire [5 : 0] AXI_30_ARID
.AXI_30_ARLEN (st_hbm_axi3[30].arlen ), // input wire [3 : 0] AXI_30_ARLEN
.AXI_30_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_30_ARSIZE
.AXI_30_ARVALID (st_hbm_axi3[30].arvalid ), // input wire AXI_30_ARVALID
.AXI_30_AWADDR (st_hbm_axi3[30].awaddr ), // input wire [33 : 0] AXI_30_AWADDR
.AXI_30_AWBURST (st_hbm_axi3[30].awburst ), // input wire [1 : 0] AXI_30_AWBURST
.AXI_30_AWID (st_hbm_axi3[30].awid ), // input wire [5 : 0] AXI_30_AWID
.AXI_30_AWLEN (st_hbm_axi3[30].awlen ), // input wire [3 : 0] AXI_30_AWLEN
.AXI_30_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_30_AWSIZE
.AXI_30_AWVALID (st_hbm_axi3[30].awvalid ), // input wire AXI_30_AWVALID
.AXI_30_RREADY (st_hbm_axi3[30].rready ), // input wire AXI_30_RREADY
.AXI_30_BREADY (st_hbm_axi3[30].bready ), // input wire AXI_30_BREADY
.AXI_30_WDATA (st_hbm_axi3[30].wdata ), // input wire [255 : 0] AXI_30_WDATA
.AXI_30_WLAST (st_hbm_axi3[30].wlast ), // input wire AXI_30_WLAST
.AXI_30_WSTRB (st_hbm_axi3[30].wstrb ), // input wire [31 : 0] AXI_30_WSTRB
.AXI_30_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_30_WDATA_PARITY
.AXI_30_WVALID (st_hbm_axi3[30].wvalid ), // input wire AXI_30_WVALID
.AXI_30_ARREADY (st_hbm_axi3[30].arready ), // output wire AXI_30_ARREADY
.AXI_30_AWREADY (st_hbm_axi3[30].awready ), // output wire AXI_30_AWREADY
.AXI_30_RDATA_PARITY ( ), // output wire [31 : 0] AXI_30_RDATA_PARITY
.AXI_30_RDATA (st_hbm_axi3[30].rdata ), // output wire [255 : 0] AXI_30_RDATA
.AXI_30_RID (st_hbm_axi3[30].rid ), // output wire [5 : 0] AXI_30_RID
.AXI_30_RLAST (st_hbm_axi3[30].rlast ), // output wire AXI_30_RLAST
.AXI_30_RRESP (st_hbm_axi3[30].rresp ), // output wire [1 : 0] AXI_30_RRESP
.AXI_30_RVALID (st_hbm_axi3[30].rvalid ), // output wire AXI_30_RVALID
.AXI_30_WREADY (st_hbm_axi3[30].wready ), // output wire AXI_30_WREADY
.AXI_30_BID (st_hbm_axi3[30].bid ), // output wire [5 : 0] AXI_30_BID
.AXI_30_BRESP (st_hbm_axi3[30].bresp ), // output wire [1 : 0] AXI_30_BRESP
.AXI_30_BVALID (st_hbm_axi3[30].bvalid ), // output wire AXI_30_BVALID
.AXI_31_ACLK (axi_clk ), // input wire AXI_31_ACLK
.AXI_31_ARESET_N (axi_rst_n ), // input wire AXI_31_ARESET_N
.AXI_31_ARADDR (st_hbm_axi3[31].araddr ), // input wire [33 : 0] AXI_31_ARADDR
.AXI_31_ARBURST (st_hbm_axi3[31].arburst ), // input wire [1 : 0] AXI_31_ARBURST
.AXI_31_ARID (st_hbm_axi3[31].arid ), // input wire [5 : 0] AXI_31_ARID
.AXI_31_ARLEN (st_hbm_axi3[31].arlen ), // input wire [3 : 0] AXI_31_ARLEN
.AXI_31_ARSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_31_ARSIZE
.AXI_31_ARVALID (st_hbm_axi3[31].arvalid ), // input wire AXI_31_ARVALID
.AXI_31_AWADDR (st_hbm_axi3[31].awaddr ), // input wire [33 : 0] AXI_31_AWADDR
.AXI_31_AWBURST (st_hbm_axi3[31].awburst ), // input wire [1 : 0] AXI_31_AWBURST
.AXI_31_AWID (st_hbm_axi3[31].awid ), // input wire [5 : 0] AXI_31_AWID
.AXI_31_AWLEN (st_hbm_axi3[31].awlen ), // input wire [3 : 0] AXI_31_AWLEN
.AXI_31_AWSIZE (DEF_AXSIZE ), // input wire [2 : 0] AXI_31_AWSIZE
.AXI_31_AWVALID (st_hbm_axi3[31].awvalid ), // input wire AXI_31_AWVALID
.AXI_31_RREADY (st_hbm_axi3[31].rready ), // input wire AXI_31_RREADY
.AXI_31_BREADY (st_hbm_axi3[31].bready ), // input wire AXI_31_BREADY
.AXI_31_WDATA (st_hbm_axi3[31].wdata ), // input wire [255 : 0] AXI_31_WDATA
.AXI_31_WLAST (st_hbm_axi3[31].wlast ), // input wire AXI_31_WLAST
.AXI_31_WSTRB (st_hbm_axi3[31].wstrb ), // input wire [31 : 0] AXI_31_WSTRB
.AXI_31_WDATA_PARITY (DEF_PARITY ), // input wire [31 : 0] AXI_31_WDATA_PARITY
.AXI_31_WVALID (st_hbm_axi3[31].wvalid ), // input wire AXI_31_WVALID
.AXI_31_ARREADY (st_hbm_axi3[31].arready ), // output wire AXI_31_ARREADY
.AXI_31_AWREADY (st_hbm_axi3[31].awready ), // output wire AXI_31_AWREADY
.AXI_31_RDATA_PARITY ( ), // output wire [31 : 0] AXI_31_RDATA_PARITY
.AXI_31_RDATA (st_hbm_axi3[31].rdata ), // output wire [255 : 0] AXI_31_RDATA
.AXI_31_RID (st_hbm_axi3[31].rid ), // output wire [5 : 0] AXI_31_RID
.AXI_31_RLAST (st_hbm_axi3[31].rlast ), // output wire AXI_31_RLAST
.AXI_31_RRESP (st_hbm_axi3[31].rresp ), // output wire [1 : 0] AXI_31_RRESP
.AXI_31_RVALID (st_hbm_axi3[31].rvalid ), // output wire AXI_31_RVALID
.AXI_31_WREADY (st_hbm_axi3[31].wready ), // output wire AXI_31_WREADY
.AXI_31_BID (st_hbm_axi3[31].bid ), // output wire [5 : 0] AXI_31_BID
.AXI_31_BRESP (st_hbm_axi3[31].bresp ), // output wire [1 : 0] AXI_31_BRESP
.AXI_31_BVALID (st_hbm_axi3[31].bvalid ), // output wire AXI_31_BVALID
.APB_0_PWDATA (32'd0 ), // input wire [31 : 0] APB_0_PWDATA
.APB_0_PADDR (22'd0 ), // input wire [21 : 0] APB_0_PADDR
.APB_0_PCLK (apb_clk ), // input wire APB_0_PCLK
.APB_0_PENABLE (1'd0 ), // input wire APB_0_PENABLE
.APB_0_PRESET_N (apb_rst_n ), // input wire APB_0_PRESET_N
.APB_0_PSEL (1'd0 ), // input wire APB_0_PSEL
.APB_0_PWRITE (1'd0 ), // input wire APB_0_PWRITE
.APB_0_PRDATA ( ), // output wire [31 : 0] APB_0_PRDATA
.APB_0_PREADY ( ), // output wire APB_0_PREADY
.APB_0_PSLVERR ( ), // output wire APB_0_PSLVERR
.APB_1_PWDATA (32'd0 ), // input wire [31 : 0] APB_1_PWDATA
.APB_1_PADDR (22'd0 ), // input wire [21 : 0] APB_1_PADDR
.APB_1_PCLK (apb_clk ), // input wire APB_1_PCLK
.APB_1_PENABLE (1'd0 ), // input wire APB_1_PENABLE
.APB_1_PRESET_N (apb_rst_n ), // input wire APB_1_PRESET_N
.APB_1_PSEL (1'd0 ), // input wire APB_1_PSEL
.APB_1_PWRITE (1'd0 ), // input wire APB_1_PWRITE
.APB_1_PRDATA ( ), // output wire [31 : 0] APB_1_PRDATA
.APB_1_PREADY ( ), // output wire APB_1_PREADY
.APB_1_PSLVERR ( ), // output wire APB_1_PSLVERR
.apb_complete_0 (apb_complete[0] ), // output wire apb_complete_0
.apb_complete_1 (apb_complete[1] ), // output wire apb_complete_1
.DRAM_0_STAT_CATTRIP ( ), // output wire DRAM_0_STAT_CATTRIP
.DRAM_0_STAT_TEMP ( ), // output wire [6 : 0] DRAM_0_STAT_TEMP
.DRAM_1_STAT_CATTRIP ( ), // output wire DRAM_1_STAT_CATTRIP
.DRAM_1_STAT_TEMP ( ) // output wire [6 : 0] DRAM_1_STAT_TEMP
);
//
// bring apb_complete into clk domain
//
sync
#(
.WIDTH($bits(apb_complete))
)
SYNC_HBM_INIT_TO_ACLK
(
.clk (clk ),
.rst_n (1'b1 ),
.in (apb_complete ),
.sync_out (hbm_ready_q )
);
always_ff @(posedge clk)
o_hbm_ready <= &hbm_ready_q;
endmodule // hbm_wrapper