diff --git a/example/ADM_PCIE_9V3/fpga_10g/rtl/fpga.v b/example/ADM_PCIE_9V3/fpga_10g/rtl/fpga.v
index f6e443d2cdf49a7b867a0122933ca88caa3b90b9..f8152c8517e12dd45d485814064edfaff8f76f69 100644
--- a/example/ADM_PCIE_9V3/fpga_10g/rtl/fpga.v
+++ b/example/ADM_PCIE_9V3/fpga_10g/rtl/fpga.v
@@ -309,6 +309,7 @@ qsfp_0_phy_0_inst (
     .phy_rx_rst(qsfp_0_rx_rst_0_int),
     .phy_xgmii_rxd(qsfp_0_rxd_0_int),
     .phy_xgmii_rxc(qsfp_0_rxc_0_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -355,6 +356,7 @@ qsfp_0_phy_1_inst (
     .phy_rx_rst(qsfp_0_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_0_rxd_1_int),
     .phy_xgmii_rxc(qsfp_0_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -401,6 +403,7 @@ qsfp_0_phy_2_inst (
     .phy_rx_rst(qsfp_0_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_0_rxd_2_int),
     .phy_xgmii_rxc(qsfp_0_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -447,6 +450,7 @@ qsfp_0_phy_3_inst (
     .phy_rx_rst(qsfp_0_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_0_rxd_3_int),
     .phy_xgmii_rxc(qsfp_0_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -548,6 +552,7 @@ qsfp_1_phy_0_inst (
     .phy_rx_rst(qsfp_1_rx_rst_0_int),
     .phy_xgmii_rxd(qsfp_1_rxd_0_int),
     .phy_xgmii_rxc(qsfp_1_rxc_0_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -594,6 +599,7 @@ qsfp_1_phy_1_inst (
     .phy_rx_rst(qsfp_1_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_1_rxd_1_int),
     .phy_xgmii_rxc(qsfp_1_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -640,6 +646,7 @@ qsfp_1_phy_2_inst (
     .phy_rx_rst(qsfp_1_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_1_rxd_2_int),
     .phy_xgmii_rxc(qsfp_1_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -686,6 +693,7 @@ qsfp_1_phy_3_inst (
     .phy_rx_rst(qsfp_1_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_1_rxd_3_int),
     .phy_xgmii_rxc(qsfp_1_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/ADM_PCIE_9V3/fpga_25g/rtl/fpga.v b/example/ADM_PCIE_9V3/fpga_25g/rtl/fpga.v
index 43714da4a5cd211bb09e384d3282d5f69f632b8b..da8329b276082e279038c7664d901314808f4b52 100644
--- a/example/ADM_PCIE_9V3/fpga_25g/rtl/fpga.v
+++ b/example/ADM_PCIE_9V3/fpga_25g/rtl/fpga.v
@@ -312,6 +312,7 @@ qsfp_0_phy_0_inst (
     .phy_rx_rst(qsfp_0_rx_rst_0_int),
     .phy_xgmii_rxd(qsfp_0_rxd_0_int),
     .phy_xgmii_rxc(qsfp_0_rxc_0_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -361,6 +362,7 @@ qsfp_0_phy_1_inst (
     .phy_rx_rst(qsfp_0_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_0_rxd_1_int),
     .phy_xgmii_rxc(qsfp_0_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -410,6 +412,7 @@ qsfp_0_phy_2_inst (
     .phy_rx_rst(qsfp_0_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_0_rxd_2_int),
     .phy_xgmii_rxc(qsfp_0_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -459,6 +462,7 @@ qsfp_0_phy_3_inst (
     .phy_rx_rst(qsfp_0_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_0_rxd_3_int),
     .phy_xgmii_rxc(qsfp_0_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -563,6 +567,7 @@ qsfp_1_phy_0_inst (
     .phy_rx_rst(qsfp_1_rx_rst_0_int),
     .phy_xgmii_rxd(qsfp_1_rxd_0_int),
     .phy_xgmii_rxc(qsfp_1_rxc_0_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -612,6 +617,7 @@ qsfp_1_phy_1_inst (
     .phy_rx_rst(qsfp_1_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_1_rxd_1_int),
     .phy_xgmii_rxc(qsfp_1_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -661,6 +667,7 @@ qsfp_1_phy_2_inst (
     .phy_rx_rst(qsfp_1_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_1_rxd_2_int),
     .phy_xgmii_rxc(qsfp_1_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -710,6 +717,7 @@ qsfp_1_phy_3_inst (
     .phy_rx_rst(qsfp_1_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_1_rxd_3_int),
     .phy_xgmii_rxc(qsfp_1_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/AU200/fpga_10g/rtl/fpga.v b/example/AU200/fpga_10g/rtl/fpga.v
index 6917bc679ad96b8127eceb56c6671f85d2110fad..61fbca2c0a0ac5cfecfde0f25fe5d6e5857a2bb1 100644
--- a/example/AU200/fpga_10g/rtl/fpga.v
+++ b/example/AU200/fpga_10g/rtl/fpga.v
@@ -422,6 +422,7 @@ qsfp0_phy_1_inst (
     .phy_rx_rst(qsfp0_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp0_rxd_1_int),
     .phy_xgmii_rxc(qsfp0_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -468,6 +469,7 @@ qsfp0_phy_2_inst (
     .phy_rx_rst(qsfp0_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp0_rxd_2_int),
     .phy_xgmii_rxc(qsfp0_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -514,6 +516,7 @@ qsfp0_phy_3_inst (
     .phy_rx_rst(qsfp0_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp0_rxd_3_int),
     .phy_xgmii_rxc(qsfp0_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -560,6 +563,7 @@ qsfp0_phy_4_inst (
     .phy_rx_rst(qsfp0_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp0_rxd_4_int),
     .phy_xgmii_rxc(qsfp0_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -665,6 +669,7 @@ qsfp1_phy_1_inst (
     .phy_rx_rst(qsfp1_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp1_rxd_1_int),
     .phy_xgmii_rxc(qsfp1_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -711,6 +716,7 @@ qsfp1_phy_2_inst (
     .phy_rx_rst(qsfp1_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp1_rxd_2_int),
     .phy_xgmii_rxc(qsfp1_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -757,6 +763,7 @@ qsfp1_phy_3_inst (
     .phy_rx_rst(qsfp1_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp1_rxd_3_int),
     .phy_xgmii_rxc(qsfp1_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -803,6 +810,7 @@ qsfp1_phy_4_inst (
     .phy_rx_rst(qsfp1_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp1_rxd_4_int),
     .phy_xgmii_rxc(qsfp1_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/AU250/fpga_10g/rtl/fpga.v b/example/AU250/fpga_10g/rtl/fpga.v
index 6917bc679ad96b8127eceb56c6671f85d2110fad..61fbca2c0a0ac5cfecfde0f25fe5d6e5857a2bb1 100644
--- a/example/AU250/fpga_10g/rtl/fpga.v
+++ b/example/AU250/fpga_10g/rtl/fpga.v
@@ -422,6 +422,7 @@ qsfp0_phy_1_inst (
     .phy_rx_rst(qsfp0_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp0_rxd_1_int),
     .phy_xgmii_rxc(qsfp0_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -468,6 +469,7 @@ qsfp0_phy_2_inst (
     .phy_rx_rst(qsfp0_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp0_rxd_2_int),
     .phy_xgmii_rxc(qsfp0_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -514,6 +516,7 @@ qsfp0_phy_3_inst (
     .phy_rx_rst(qsfp0_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp0_rxd_3_int),
     .phy_xgmii_rxc(qsfp0_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -560,6 +563,7 @@ qsfp0_phy_4_inst (
     .phy_rx_rst(qsfp0_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp0_rxd_4_int),
     .phy_xgmii_rxc(qsfp0_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -665,6 +669,7 @@ qsfp1_phy_1_inst (
     .phy_rx_rst(qsfp1_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp1_rxd_1_int),
     .phy_xgmii_rxc(qsfp1_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -711,6 +716,7 @@ qsfp1_phy_2_inst (
     .phy_rx_rst(qsfp1_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp1_rxd_2_int),
     .phy_xgmii_rxc(qsfp1_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -757,6 +763,7 @@ qsfp1_phy_3_inst (
     .phy_rx_rst(qsfp1_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp1_rxd_3_int),
     .phy_xgmii_rxc(qsfp1_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -803,6 +810,7 @@ qsfp1_phy_4_inst (
     .phy_rx_rst(qsfp1_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp1_rxd_4_int),
     .phy_xgmii_rxc(qsfp1_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/AU280/fpga_10g/rtl/fpga.v b/example/AU280/fpga_10g/rtl/fpga.v
index 210024d751bccfebd722f4137be88426ce76046c..8e1b338025a7cf74e85cdc422e29ad21dcdf60e4 100644
--- a/example/AU280/fpga_10g/rtl/fpga.v
+++ b/example/AU280/fpga_10g/rtl/fpga.v
@@ -299,6 +299,7 @@ qsfp0_phy_1_inst (
     .phy_rx_rst(qsfp0_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp0_rxd_1_int),
     .phy_xgmii_rxc(qsfp0_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -345,6 +346,7 @@ qsfp0_phy_2_inst (
     .phy_rx_rst(qsfp0_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp0_rxd_2_int),
     .phy_xgmii_rxc(qsfp0_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -391,6 +393,7 @@ qsfp0_phy_3_inst (
     .phy_rx_rst(qsfp0_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp0_rxd_3_int),
     .phy_xgmii_rxc(qsfp0_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -437,6 +440,7 @@ qsfp0_phy_4_inst (
     .phy_rx_rst(qsfp0_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp0_rxd_4_int),
     .phy_xgmii_rxc(qsfp0_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -539,6 +543,7 @@ qsfp1_phy_1_inst (
     .phy_rx_rst(qsfp1_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp1_rxd_1_int),
     .phy_xgmii_rxc(qsfp1_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -585,6 +590,7 @@ qsfp1_phy_2_inst (
     .phy_rx_rst(qsfp1_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp1_rxd_2_int),
     .phy_xgmii_rxc(qsfp1_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -631,6 +637,7 @@ qsfp1_phy_3_inst (
     .phy_rx_rst(qsfp1_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp1_rxd_3_int),
     .phy_xgmii_rxc(qsfp1_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -677,6 +684,7 @@ qsfp1_phy_4_inst (
     .phy_rx_rst(qsfp1_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp1_rxd_4_int),
     .phy_xgmii_rxc(qsfp1_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/AU50/fpga_10g/rtl/fpga.v b/example/AU50/fpga_10g/rtl/fpga.v
index f17738c80d182c6dbfbdbb23a28275ddc94cde8f..0149e3c4571d89ad76897a7969a87fd1bdac75f0 100644
--- a/example/AU50/fpga_10g/rtl/fpga.v
+++ b/example/AU50/fpga_10g/rtl/fpga.v
@@ -267,6 +267,7 @@ qsfp_phy_1_inst (
     .phy_rx_rst(qsfp_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_rxd_1_int),
     .phy_xgmii_rxc(qsfp_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -313,6 +314,7 @@ qsfp_phy_2_inst (
     .phy_rx_rst(qsfp_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_rxd_2_int),
     .phy_xgmii_rxc(qsfp_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -359,6 +361,7 @@ qsfp_phy_3_inst (
     .phy_rx_rst(qsfp_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_rxd_3_int),
     .phy_xgmii_rxc(qsfp_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -405,6 +408,7 @@ qsfp_phy_4_inst (
     .phy_rx_rst(qsfp_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_rxd_4_int),
     .phy_xgmii_rxc(qsfp_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/ExaNIC_X10/fpga/rtl/fpga.v b/example/ExaNIC_X10/fpga/rtl/fpga.v
index 885fec03a1cd2d63570bb0befb5e37e1d7274bdb..836dbeba82bcf926bd14ca3ff5f382343d3767fa 100644
--- a/example/ExaNIC_X10/fpga/rtl/fpga.v
+++ b/example/ExaNIC_X10/fpga/rtl/fpga.v
@@ -254,6 +254,7 @@ sfp_1_phy_inst (
     .phy_rx_rst(sfp_1_rx_rst_int),
     .phy_xgmii_rxd(sfp_1_rxd_int),
     .phy_xgmii_rxc(sfp_1_rxc_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -300,6 +301,7 @@ sfp_2_phy_inst (
     .phy_rx_rst(sfp_2_rx_rst_int),
     .phy_xgmii_rxd(sfp_2_rxd_int),
     .phy_xgmii_rxc(sfp_2_rxc_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/ExaNIC_X25/fpga_10g/rtl/fpga.v b/example/ExaNIC_X25/fpga_10g/rtl/fpga.v
index 71de10a49491165dd71381c95f9efd018d04ed59..0860f7765d3ff0c21e8f9e4bb12885398f78a0d0 100644
--- a/example/ExaNIC_X25/fpga_10g/rtl/fpga.v
+++ b/example/ExaNIC_X25/fpga_10g/rtl/fpga.v
@@ -254,6 +254,7 @@ sfp_1_phy_inst (
     .phy_rx_rst(sfp_1_rx_rst_int),
     .phy_xgmii_rxd(sfp_1_rxd_int),
     .phy_xgmii_rxc(sfp_1_rxc_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -300,6 +301,7 @@ sfp_2_phy_inst (
     .phy_rx_rst(sfp_2_rx_rst_int),
     .phy_xgmii_rxd(sfp_2_rxd_int),
     .phy_xgmii_rxc(sfp_2_rxc_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/HTG9200/fpga_10g/rtl/fpga.v b/example/HTG9200/fpga_10g/rtl/fpga.v
index c7176a5ee8ef3a219d936c93cee2a990a2746311..d05252be814e66455a28d541a39897f01fb02e74 100644
--- a/example/HTG9200/fpga_10g/rtl/fpga.v
+++ b/example/HTG9200/fpga_10g/rtl/fpga.v
@@ -471,6 +471,7 @@ qsfp_1_phy_1_inst (
     .phy_rx_rst(qsfp_1_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_1_rxd_1_int),
     .phy_xgmii_rxc(qsfp_1_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -517,6 +518,7 @@ qsfp_1_phy_2_inst (
     .phy_rx_rst(qsfp_1_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_1_rxd_2_int),
     .phy_xgmii_rxc(qsfp_1_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -563,6 +565,7 @@ qsfp_1_phy_3_inst (
     .phy_rx_rst(qsfp_1_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_1_rxd_3_int),
     .phy_xgmii_rxc(qsfp_1_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -609,6 +612,7 @@ qsfp_1_phy_4_inst (
     .phy_rx_rst(qsfp_1_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_1_rxd_4_int),
     .phy_xgmii_rxc(qsfp_1_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -710,6 +714,7 @@ qsfp_2_phy_1_inst (
     .phy_rx_rst(qsfp_2_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_2_rxd_1_int),
     .phy_xgmii_rxc(qsfp_2_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -756,6 +761,7 @@ qsfp_2_phy_2_inst (
     .phy_rx_rst(qsfp_2_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_2_rxd_2_int),
     .phy_xgmii_rxc(qsfp_2_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -802,6 +808,7 @@ qsfp_2_phy_3_inst (
     .phy_rx_rst(qsfp_2_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_2_rxd_3_int),
     .phy_xgmii_rxc(qsfp_2_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -848,6 +855,7 @@ qsfp_2_phy_4_inst (
     .phy_rx_rst(qsfp_2_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_2_rxd_4_int),
     .phy_xgmii_rxc(qsfp_2_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -949,6 +957,7 @@ qsfp_3_phy_1_inst (
     .phy_rx_rst(qsfp_3_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_3_rxd_1_int),
     .phy_xgmii_rxc(qsfp_3_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -995,6 +1004,7 @@ qsfp_3_phy_2_inst (
     .phy_rx_rst(qsfp_3_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_3_rxd_2_int),
     .phy_xgmii_rxc(qsfp_3_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1041,6 +1051,7 @@ qsfp_3_phy_3_inst (
     .phy_rx_rst(qsfp_3_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_3_rxd_3_int),
     .phy_xgmii_rxc(qsfp_3_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1087,6 +1098,7 @@ qsfp_3_phy_4_inst (
     .phy_rx_rst(qsfp_3_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_3_rxd_4_int),
     .phy_xgmii_rxc(qsfp_3_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1188,6 +1200,7 @@ qsfp_4_phy_1_inst (
     .phy_rx_rst(qsfp_4_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_4_rxd_1_int),
     .phy_xgmii_rxc(qsfp_4_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1234,6 +1247,7 @@ qsfp_4_phy_2_inst (
     .phy_rx_rst(qsfp_4_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_4_rxd_2_int),
     .phy_xgmii_rxc(qsfp_4_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1280,6 +1294,7 @@ qsfp_4_phy_3_inst (
     .phy_rx_rst(qsfp_4_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_4_rxd_3_int),
     .phy_xgmii_rxc(qsfp_4_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1326,6 +1341,7 @@ qsfp_4_phy_4_inst (
     .phy_rx_rst(qsfp_4_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_4_rxd_4_int),
     .phy_xgmii_rxc(qsfp_4_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1427,6 +1443,7 @@ qsfp_5_phy_1_inst (
     .phy_rx_rst(qsfp_5_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_5_rxd_1_int),
     .phy_xgmii_rxc(qsfp_5_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1473,6 +1490,7 @@ qsfp_5_phy_2_inst (
     .phy_rx_rst(qsfp_5_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_5_rxd_2_int),
     .phy_xgmii_rxc(qsfp_5_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1519,6 +1537,7 @@ qsfp_5_phy_3_inst (
     .phy_rx_rst(qsfp_5_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_5_rxd_3_int),
     .phy_xgmii_rxc(qsfp_5_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1565,6 +1584,7 @@ qsfp_5_phy_4_inst (
     .phy_rx_rst(qsfp_5_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_5_rxd_4_int),
     .phy_xgmii_rxc(qsfp_5_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1666,6 +1686,7 @@ qsfp_6_phy_1_inst (
     .phy_rx_rst(qsfp_6_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_6_rxd_1_int),
     .phy_xgmii_rxc(qsfp_6_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1712,6 +1733,7 @@ qsfp_6_phy_2_inst (
     .phy_rx_rst(qsfp_6_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_6_rxd_2_int),
     .phy_xgmii_rxc(qsfp_6_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1758,6 +1780,7 @@ qsfp_6_phy_3_inst (
     .phy_rx_rst(qsfp_6_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_6_rxd_3_int),
     .phy_xgmii_rxc(qsfp_6_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1804,6 +1827,7 @@ qsfp_6_phy_4_inst (
     .phy_rx_rst(qsfp_6_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_6_rxd_4_int),
     .phy_xgmii_rxc(qsfp_6_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1905,6 +1929,7 @@ qsfp_7_phy_1_inst (
     .phy_rx_rst(qsfp_7_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_7_rxd_1_int),
     .phy_xgmii_rxc(qsfp_7_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1951,6 +1976,7 @@ qsfp_7_phy_2_inst (
     .phy_rx_rst(qsfp_7_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_7_rxd_2_int),
     .phy_xgmii_rxc(qsfp_7_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -1997,6 +2023,7 @@ qsfp_7_phy_3_inst (
     .phy_rx_rst(qsfp_7_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_7_rxd_3_int),
     .phy_xgmii_rxc(qsfp_7_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -2043,6 +2070,7 @@ qsfp_7_phy_4_inst (
     .phy_rx_rst(qsfp_7_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_7_rxd_4_int),
     .phy_xgmii_rxc(qsfp_7_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -2144,6 +2172,7 @@ qsfp_8_phy_1_inst (
     .phy_rx_rst(qsfp_8_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_8_rxd_1_int),
     .phy_xgmii_rxc(qsfp_8_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -2190,6 +2219,7 @@ qsfp_8_phy_2_inst (
     .phy_rx_rst(qsfp_8_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_8_rxd_2_int),
     .phy_xgmii_rxc(qsfp_8_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -2236,6 +2266,7 @@ qsfp_8_phy_3_inst (
     .phy_rx_rst(qsfp_8_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_8_rxd_3_int),
     .phy_xgmii_rxc(qsfp_8_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -2282,6 +2313,7 @@ qsfp_8_phy_4_inst (
     .phy_rx_rst(qsfp_8_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_8_rxd_4_int),
     .phy_xgmii_rxc(qsfp_8_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -2383,6 +2415,7 @@ qsfp_9_phy_1_inst (
     .phy_rx_rst(qsfp_9_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_9_rxd_1_int),
     .phy_xgmii_rxc(qsfp_9_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -2429,6 +2462,7 @@ qsfp_9_phy_2_inst (
     .phy_rx_rst(qsfp_9_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_9_rxd_2_int),
     .phy_xgmii_rxc(qsfp_9_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -2475,6 +2509,7 @@ qsfp_9_phy_3_inst (
     .phy_rx_rst(qsfp_9_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_9_rxd_3_int),
     .phy_xgmii_rxc(qsfp_9_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -2521,6 +2556,7 @@ qsfp_9_phy_4_inst (
     .phy_rx_rst(qsfp_9_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_9_rxd_4_int),
     .phy_xgmii_rxc(qsfp_9_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/VCU108/fpga_10g/rtl/fpga.v b/example/VCU108/fpga_10g/rtl/fpga.v
index 29d213428cd7b280358ce766cdffbb3170e60e11..7327fbb6d13d435693508f1dcce6e4e86b26ac39 100644
--- a/example/VCU108/fpga_10g/rtl/fpga.v
+++ b/example/VCU108/fpga_10g/rtl/fpga.v
@@ -362,6 +362,7 @@ qsfp_phy_1_inst (
     .phy_rx_rst(qsfp_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_rxd_1_int),
     .phy_xgmii_rxc(qsfp_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -408,6 +409,7 @@ qsfp_phy_2_inst (
     .phy_rx_rst(qsfp_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_rxd_2_int),
     .phy_xgmii_rxc(qsfp_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -454,6 +456,7 @@ qsfp_phy_3_inst (
     .phy_rx_rst(qsfp_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_rxd_3_int),
     .phy_xgmii_rxc(qsfp_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -500,6 +503,7 @@ qsfp_phy_4_inst (
     .phy_rx_rst(qsfp_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp_rxd_4_int),
     .phy_xgmii_rxc(qsfp_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/VCU118/fpga_10g/rtl/fpga.v b/example/VCU118/fpga_10g/rtl/fpga.v
index b207cd1bc312f6a0bc2febd240c22f0cac6abc0c..eaeaa06eb71c8cb3523f69a0070143f436c71432 100644
--- a/example/VCU118/fpga_10g/rtl/fpga.v
+++ b/example/VCU118/fpga_10g/rtl/fpga.v
@@ -394,6 +394,7 @@ qsfp1_phy_1_inst (
     .phy_rx_rst(qsfp1_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp1_rxd_1_int),
     .phy_xgmii_rxc(qsfp1_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -440,6 +441,7 @@ qsfp1_phy_2_inst (
     .phy_rx_rst(qsfp1_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp1_rxd_2_int),
     .phy_xgmii_rxc(qsfp1_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -486,6 +488,7 @@ qsfp1_phy_3_inst (
     .phy_rx_rst(qsfp1_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp1_rxd_3_int),
     .phy_xgmii_rxc(qsfp1_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -532,6 +535,7 @@ qsfp1_phy_4_inst (
     .phy_rx_rst(qsfp1_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp1_rxd_4_int),
     .phy_xgmii_rxc(qsfp1_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -635,6 +639,7 @@ qsfp2_phy_1_inst (
     .phy_rx_rst(qsfp2_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp2_rxd_1_int),
     .phy_xgmii_rxc(qsfp2_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -681,6 +686,7 @@ qsfp2_phy_2_inst (
     .phy_rx_rst(qsfp2_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp2_rxd_2_int),
     .phy_xgmii_rxc(qsfp2_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -727,6 +733,7 @@ qsfp2_phy_3_inst (
     .phy_rx_rst(qsfp2_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp2_rxd_3_int),
     .phy_xgmii_rxc(qsfp2_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -773,6 +780,7 @@ qsfp2_phy_4_inst (
     .phy_rx_rst(qsfp2_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp2_rxd_4_int),
     .phy_xgmii_rxc(qsfp2_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/VCU118/fpga_25g/rtl/fpga.v b/example/VCU118/fpga_25g/rtl/fpga.v
index 1eb213443dd743fe90ca2ec86b64657d2320816a..721117efbf4b3a1398411f579adf0f7da26c4434 100644
--- a/example/VCU118/fpga_25g/rtl/fpga.v
+++ b/example/VCU118/fpga_25g/rtl/fpga.v
@@ -397,6 +397,7 @@ qsfp1_phy_1_inst (
     .phy_rx_rst(qsfp1_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp1_rxd_1_int),
     .phy_xgmii_rxc(qsfp1_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -446,6 +447,7 @@ qsfp1_phy_2_inst (
     .phy_rx_rst(qsfp1_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp1_rxd_2_int),
     .phy_xgmii_rxc(qsfp1_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -495,6 +497,7 @@ qsfp1_phy_3_inst (
     .phy_rx_rst(qsfp1_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp1_rxd_3_int),
     .phy_xgmii_rxc(qsfp1_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -544,6 +547,7 @@ qsfp1_phy_4_inst (
     .phy_rx_rst(qsfp1_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp1_rxd_4_int),
     .phy_xgmii_rxc(qsfp1_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -650,6 +654,7 @@ qsfp2_phy_1_inst (
     .phy_rx_rst(qsfp2_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp2_rxd_1_int),
     .phy_xgmii_rxc(qsfp2_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -699,6 +704,7 @@ qsfp2_phy_2_inst (
     .phy_rx_rst(qsfp2_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp2_rxd_2_int),
     .phy_xgmii_rxc(qsfp2_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -748,6 +754,7 @@ qsfp2_phy_3_inst (
     .phy_rx_rst(qsfp2_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp2_rxd_3_int),
     .phy_xgmii_rxc(qsfp2_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -797,6 +804,7 @@ qsfp2_phy_4_inst (
     .phy_rx_rst(qsfp2_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp2_rxd_4_int),
     .phy_xgmii_rxc(qsfp2_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/VCU1525/fpga_10g/rtl/fpga.v b/example/VCU1525/fpga_10g/rtl/fpga.v
index 6917bc679ad96b8127eceb56c6671f85d2110fad..61fbca2c0a0ac5cfecfde0f25fe5d6e5857a2bb1 100644
--- a/example/VCU1525/fpga_10g/rtl/fpga.v
+++ b/example/VCU1525/fpga_10g/rtl/fpga.v
@@ -422,6 +422,7 @@ qsfp0_phy_1_inst (
     .phy_rx_rst(qsfp0_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp0_rxd_1_int),
     .phy_xgmii_rxc(qsfp0_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -468,6 +469,7 @@ qsfp0_phy_2_inst (
     .phy_rx_rst(qsfp0_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp0_rxd_2_int),
     .phy_xgmii_rxc(qsfp0_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -514,6 +516,7 @@ qsfp0_phy_3_inst (
     .phy_rx_rst(qsfp0_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp0_rxd_3_int),
     .phy_xgmii_rxc(qsfp0_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -560,6 +563,7 @@ qsfp0_phy_4_inst (
     .phy_rx_rst(qsfp0_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp0_rxd_4_int),
     .phy_xgmii_rxc(qsfp0_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -665,6 +669,7 @@ qsfp1_phy_1_inst (
     .phy_rx_rst(qsfp1_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp1_rxd_1_int),
     .phy_xgmii_rxc(qsfp1_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -711,6 +716,7 @@ qsfp1_phy_2_inst (
     .phy_rx_rst(qsfp1_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp1_rxd_2_int),
     .phy_xgmii_rxc(qsfp1_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -757,6 +763,7 @@ qsfp1_phy_3_inst (
     .phy_rx_rst(qsfp1_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp1_rxd_3_int),
     .phy_xgmii_rxc(qsfp1_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -803,6 +810,7 @@ qsfp1_phy_4_inst (
     .phy_rx_rst(qsfp1_rx_rst_4_int),
     .phy_xgmii_rxd(qsfp1_rxd_4_int),
     .phy_xgmii_rxc(qsfp1_rxc_4_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/ZCU102/fpga/rtl/fpga.v b/example/ZCU102/fpga/rtl/fpga.v
index 2df13cbf880f3c5b45ffcb07a313b1533df47829..58a0ed8af1691218f12a738abad5e516349f7e7d 100644
--- a/example/ZCU102/fpga/rtl/fpga.v
+++ b/example/ZCU102/fpga/rtl/fpga.v
@@ -337,6 +337,7 @@ sfp0_phy_inst (
     .phy_rx_rst(sfp0_rx_rst_int),
     .phy_xgmii_rxd(sfp0_rxd_int),
     .phy_xgmii_rxc(sfp0_rxc_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -383,6 +384,7 @@ sfp1_phy_inst (
     .phy_rx_rst(sfp1_rx_rst_int),
     .phy_xgmii_rxd(sfp1_rxd_int),
     .phy_xgmii_rxc(sfp1_rxc_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -429,6 +431,7 @@ sfp2_phy_inst (
     .phy_rx_rst(sfp2_rx_rst_int),
     .phy_xgmii_rxd(sfp2_rxd_int),
     .phy_xgmii_rxc(sfp2_rxc_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -475,6 +478,7 @@ sfp3_phy_inst (
     .phy_rx_rst(sfp3_rx_rst_int),
     .phy_xgmii_rxd(sfp3_rxd_int),
     .phy_xgmii_rxc(sfp3_rxc_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/ZCU106/fpga/rtl/fpga.v b/example/ZCU106/fpga/rtl/fpga.v
index 64c45346ff22eb24e9fb8ccb5291f1bf3fe789c1..10bd47d76166f2f7ee13d8ac04222ba4dc4720f8 100644
--- a/example/ZCU106/fpga/rtl/fpga.v
+++ b/example/ZCU106/fpga/rtl/fpga.v
@@ -298,6 +298,7 @@ sfp0_phy_inst (
     .phy_rx_rst(sfp0_rx_rst_int),
     .phy_xgmii_rxd(sfp0_rxd_int),
     .phy_xgmii_rxc(sfp0_rxc_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -344,6 +345,7 @@ sfp1_phy_inst (
     .phy_rx_rst(sfp1_rx_rst_int),
     .phy_xgmii_rxd(sfp1_rxd_int),
     .phy_xgmii_rxc(sfp1_rxc_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
diff --git a/example/fb2CG/fpga_10g/rtl/fpga.v b/example/fb2CG/fpga_10g/rtl/fpga.v
index 90b85fbd9376c7906bd9f0248aa38113c73cc015..19cb236ff292efbb3d6d5671a39da91040cacff5 100644
--- a/example/fb2CG/fpga_10g/rtl/fpga.v
+++ b/example/fb2CG/fpga_10g/rtl/fpga.v
@@ -358,6 +358,7 @@ qsfp_0_phy_0_inst (
     .phy_rx_rst(qsfp_0_rx_rst_0_int),
     .phy_xgmii_rxd(qsfp_0_rxd_0_int),
     .phy_xgmii_rxc(qsfp_0_rxc_0_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -404,6 +405,7 @@ qsfp_0_phy_1_inst (
     .phy_rx_rst(qsfp_0_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_0_rxd_1_int),
     .phy_xgmii_rxc(qsfp_0_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -450,6 +452,7 @@ qsfp_0_phy_2_inst (
     .phy_rx_rst(qsfp_0_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_0_rxd_2_int),
     .phy_xgmii_rxc(qsfp_0_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -496,6 +499,7 @@ qsfp_0_phy_3_inst (
     .phy_rx_rst(qsfp_0_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_0_rxd_3_int),
     .phy_xgmii_rxc(qsfp_0_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -623,6 +627,7 @@ qsfp_1_phy_0_inst (
     .phy_rx_rst(qsfp_1_rx_rst_0_int),
     .phy_xgmii_rxd(qsfp_1_rxd_0_int),
     .phy_xgmii_rxc(qsfp_1_rxc_0_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -669,6 +674,7 @@ qsfp_1_phy_1_inst (
     .phy_rx_rst(qsfp_1_rx_rst_1_int),
     .phy_xgmii_rxd(qsfp_1_rxd_1_int),
     .phy_xgmii_rxc(qsfp_1_rxc_1_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -715,6 +721,7 @@ qsfp_1_phy_2_inst (
     .phy_rx_rst(qsfp_1_rx_rst_2_int),
     .phy_xgmii_rxd(qsfp_1_rxd_2_int),
     .phy_xgmii_rxc(qsfp_1_rxc_2_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),
@@ -761,6 +768,7 @@ qsfp_1_phy_3_inst (
     .phy_rx_rst(qsfp_1_rx_rst_3_int),
     .phy_xgmii_rxd(qsfp_1_rxd_3_int),
     .phy_xgmii_rxc(qsfp_1_rxc_3_int),
+    .phy_tx_bad_block(),
     .phy_rx_error_count(),
     .phy_rx_bad_block(),
     .phy_rx_sequence_error(),