diff --git a/src/eth/example/HTG9200/fpga/rtl/fpga_core.sv b/src/eth/example/HTG9200/fpga/rtl/fpga_core.sv index c37fc26..f5213e7 100644 --- a/src/eth/example/HTG9200/fpga/rtl/fpga_core.sv +++ b/src/eth/example/HTG9200/fpga/rtl/fpga_core.sv @@ -296,19 +296,21 @@ xfcp_mod_i2c_inst ( ); // Ethernet +localparam MAC_CNT = MAC_DATA_W > 64 ? GTY_QUAD_CNT : GTY_CNT; + wire eth_reset = SIM ? 1'b0 : (si5341_i2c_busy || !eth_pll_locked); assign eth_port_resetl = {PORT_CNT{~eth_reset}}; -wire eth_gty_tx_clk[GTY_CNT]; -wire eth_gty_tx_rst[GTY_CNT]; -taxi_axis_if #(.DATA_W(MAC_DATA_W), .ID_W(8), .USER_EN(1), .USER_W(1)) eth_gty_axis_tx[GTY_CNT](); -taxi_axis_if #(.DATA_W(96), .KEEP_W(1), .ID_W(8)) eth_gty_axis_tx_cpl[GTY_CNT](); +wire eth_gty_tx_clk[MAC_CNT]; +wire eth_gty_tx_rst[MAC_CNT]; +taxi_axis_if #(.DATA_W(MAC_DATA_W), .ID_W(8), .USER_EN(1), .USER_W(1)) eth_gty_axis_tx[MAC_CNT](); +taxi_axis_if #(.DATA_W(96), .KEEP_W(1), .ID_W(8)) eth_gty_axis_tx_cpl[MAC_CNT](); -wire eth_gty_rx_clk[GTY_CNT]; -wire eth_gty_rx_rst[GTY_CNT]; -taxi_axis_if #(.DATA_W(MAC_DATA_W), .ID_W(8), .USER_EN(1), .USER_W(1)) eth_gty_axis_rx[GTY_CNT](); +wire eth_gty_rx_clk[MAC_CNT]; +wire eth_gty_rx_rst[MAC_CNT]; +taxi_axis_if #(.DATA_W(MAC_DATA_W), .ID_W(8), .USER_EN(1), .USER_W(1)) eth_gty_axis_rx[MAC_CNT](); -wire eth_gty_rx_status[GTY_CNT]; +wire eth_gty_rx_status[MAC_CNT]; wire [GTY_QUAD_CNT-1:0] eth_gty_gtpowergood; diff --git a/src/eth/example/XUPP3R/fpga/rtl/fpga_core.sv b/src/eth/example/XUPP3R/fpga/rtl/fpga_core.sv index 02d4b68..0f2e060 100644 --- a/src/eth/example/XUPP3R/fpga/rtl/fpga_core.sv +++ b/src/eth/example/XUPP3R/fpga/rtl/fpga_core.sv @@ -193,19 +193,21 @@ stat_mux_inst ( ); // QSFP28 +localparam MAC_CNT = MAC_DATA_W > 64 ? GTY_QUAD_CNT : GTY_CNT; + assign eth_port_resetl = '1; assign eth_port_lpmode = '0; -wire eth_gty_tx_clk[GTY_CNT]; -wire eth_gty_tx_rst[GTY_CNT]; -taxi_axis_if #(.DATA_W(MAC_DATA_W), .ID_W(8), .USER_EN(1), .USER_W(1)) eth_gty_axis_tx[GTY_CNT](); -taxi_axis_if #(.DATA_W(96), .KEEP_W(1), .ID_W(8)) eth_gty_axis_tx_cpl[GTY_CNT](); +wire eth_gty_tx_clk[MAC_CNT]; +wire eth_gty_tx_rst[MAC_CNT]; +taxi_axis_if #(.DATA_W(MAC_DATA_W), .ID_W(8), .USER_EN(1), .USER_W(1)) eth_gty_axis_tx[MAC_CNT](); +taxi_axis_if #(.DATA_W(96), .KEEP_W(1), .ID_W(8)) eth_gty_axis_tx_cpl[MAC_CNT](); -wire eth_gty_rx_clk[GTY_CNT]; -wire eth_gty_rx_rst[GTY_CNT]; -taxi_axis_if #(.DATA_W(MAC_DATA_W), .ID_W(8), .USER_EN(1), .USER_W(1)) eth_gty_axis_rx[GTY_CNT](); +wire eth_gty_rx_clk[MAC_CNT]; +wire eth_gty_rx_rst[MAC_CNT]; +taxi_axis_if #(.DATA_W(MAC_DATA_W), .ID_W(8), .USER_EN(1), .USER_W(1)) eth_gty_axis_rx[MAC_CNT](); -wire eth_gty_rx_status[GTY_CNT]; +wire eth_gty_rx_status[MAC_CNT]; wire [GTY_QUAD_CNT-1:0] eth_gty_gtpowergood;