eth: Add TX/RX polarity control to MAC+PHY+GT wrapper

Signed-off-by: Alex Forencich <alex@alexforencich.com>
This commit is contained in:
Alex Forencich
2025-02-24 17:17:23 -08:00
parent 7047cb5c4f
commit 916355ca8a
11 changed files with 55 additions and 1 deletions

View File

@@ -26,6 +26,10 @@ module taxi_eth_mac_25g_us_ch #
// GT type
parameter string GT_TYPE = "GTY",
// GT parameters
parameter logic GT_TX_POLARITY = 1'b0,
parameter logic GT_RX_POLARITY = 1'b0,
// MAC/PHY parameters
parameter logic PADDING_EN = 1'b1,
parameter logic DIC_EN = 1'b1,
@@ -270,6 +274,8 @@ end else if (HAS_COMMON && GT_TYPE == "GTY" && GT_USP) begin : xcvr
.txpmaresetdone_out(),
.txprgdivresetdone_out(),
.txpolarity_in(GT_TX_POLARITY),
.gtwiz_userdata_tx_in(gt_txdata),
.txheader_in(gt_txheader),
.txsequence_in(7'b0),
@@ -287,6 +293,8 @@ end else if (HAS_COMMON && GT_TYPE == "GTY" && GT_USP) begin : xcvr
.rxpmaresetdone_out(),
.rxprgdivresetdone_out(),
.rxpolarity_in(GT_RX_POLARITY),
.rxgearboxslip_in(gt_rxgearboxslip),
.gtwiz_userdata_rx_out(gt_rxdata),
.rxdatavalid_out(gt_rxdatavalid),
@@ -331,6 +339,8 @@ end else if (HAS_COMMON && GT_TYPE == "GTH" && GT_USP) begin : xcvr
.txpmaresetdone_out(),
.txprgdivresetdone_out(),
.txpolarity_in(GT_TX_POLARITY),
.gtwiz_userdata_tx_in(gt_txdata),
.txheader_in(gt_txheader),
.txsequence_in(7'b0),
@@ -348,6 +358,8 @@ end else if (HAS_COMMON && GT_TYPE == "GTH" && GT_USP) begin : xcvr
.rxpmaresetdone_out(),
.rxprgdivresetdone_out(),
.rxpolarity_in(GT_RX_POLARITY),
.rxgearboxslip_in(gt_rxgearboxslip),
.gtwiz_userdata_rx_out(gt_rxdata),
.rxdatavalid_out(gt_rxdatavalid),
@@ -392,6 +404,8 @@ end else if (HAS_COMMON && GT_TYPE == "GTY" && !GT_USP) begin : xcvr
.txpmaresetdone_out(),
.txprgdivresetdone_out(),
.txpolarity_in(GT_TX_POLARITY),
.gtwiz_userdata_tx_in(gt_txdata),
.txheader_in(gt_txheader),
.txsequence_in(7'b0),
@@ -409,6 +423,8 @@ end else if (HAS_COMMON && GT_TYPE == "GTY" && !GT_USP) begin : xcvr
.rxpmaresetdone_out(),
.rxprgdivresetdone_out(),
.rxpolarity_in(GT_RX_POLARITY),
.rxgearboxslip_in(gt_rxgearboxslip),
.gtwiz_userdata_rx_out(gt_rxdata),
.rxdatavalid_out(gt_rxdatavalid),
@@ -453,6 +469,8 @@ end else if (HAS_COMMON && GT_TYPE == "GTH" && !GT_USP) begin : xcvr
.txpmaresetdone_out(),
.txprgdivresetdone_out(),
.txpolarity_in(GT_TX_POLARITY),
.gtwiz_userdata_tx_in(gt_txdata),
.txheader_in(gt_txheader),
.txsequence_in(7'b0),
@@ -470,6 +488,8 @@ end else if (HAS_COMMON && GT_TYPE == "GTH" && !GT_USP) begin : xcvr
.rxpmaresetdone_out(),
.rxprgdivresetdone_out(),
.rxpolarity_in(GT_RX_POLARITY),
.rxgearboxslip_in(gt_rxgearboxslip),
.gtwiz_userdata_rx_out(gt_rxdata),
.rxdatavalid_out(gt_rxdatavalid),
@@ -516,6 +536,8 @@ end else if (!HAS_COMMON && GT_TYPE == "GTY") begin : xcvr
.txpmaresetdone_out(),
.txprgdivresetdone_out(),
.txpolarity_in(GT_TX_POLARITY),
.gtwiz_userdata_tx_in(gt_txdata),
.txheader_in(gt_txheader),
.txsequence_in(7'b0),
@@ -533,6 +555,8 @@ end else if (!HAS_COMMON && GT_TYPE == "GTY") begin : xcvr
.rxpmaresetdone_out(),
.rxprgdivresetdone_out(),
.rxpolarity_in(GT_RX_POLARITY),
.rxgearboxslip_in(gt_rxgearboxslip),
.gtwiz_userdata_rx_out(gt_rxdata),
.rxdatavalid_out(gt_rxdatavalid),
@@ -581,6 +605,8 @@ end else if (!HAS_COMMON && GT_TYPE == "GTH") begin : xcvr
.txpmaresetdone_out(),
.txprgdivresetdone_out(),
.txpolarity_in(GT_TX_POLARITY),
.gtwiz_userdata_tx_in(gt_txdata),
.txheader_in(gt_txheader),
.txsequence_in(7'b0),
@@ -598,6 +624,8 @@ end else if (!HAS_COMMON && GT_TYPE == "GTH") begin : xcvr
.rxpmaresetdone_out(),
.rxprgdivresetdone_out(),
.rxpolarity_in(GT_RX_POLARITY),
.rxgearboxslip_in(gt_rxgearboxslip),
.gtwiz_userdata_rx_out(gt_rxdata),
.rxdatavalid_out(gt_rxdatavalid),