diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/hdllib.cfg b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/hdllib.cfg
index c63f06e75edf9afec0d4bd0185119ead87e37396..9dfc393f95c2a7ff2a5db7d03a24b6b3de9c5e61 100644
--- a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/hdllib.cfg
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/hdllib.cfg
@@ -12,13 +12,8 @@ test_bench_files =
     ip_stratixiv_tse_sgmii_lvds.vho
     tb_ip_stratixiv_tse_sgmii_lvds.vhd
 
-quartus_copy_files =
-    $UNB/Firmware/modules/MegaWizard/tse_sgmii_lvds/triple_speed_ethernet-library $RADIOHDL/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library
- 
 quartus_vhdl_files = 
     ip_stratixiv_tse_sgmii_lvds.vhd
 
-quartus_sdc_files = 
-
 quartus_qip_files =
     ip_stratixiv_tse_sgmii_lvds.qip
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_13.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_13.v
new file mode 100644
index 0000000000000000000000000000000000000000..ac911c02b7bda120468f058c74dc7025ecd3c692
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_13.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_24.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_24.v
new file mode 100644
index 0000000000000000000000000000000000000000..6ad50b5218aeec2e7ba929ca662fd2612fe70e02
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_24.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_34.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_34.v
new file mode 100644
index 0000000000000000000000000000000000000000..1a40279a99379cbd2b11e227cbb6f8797439ef00
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_34.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_opt_1246.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_opt_1246.v
new file mode 100644
index 0000000000000000000000000000000000000000..2f70116b18f3caff171adf298cc7547d980d8efc
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_opt_1246.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_opt_14_44.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_opt_14_44.v
new file mode 100644
index 0000000000000000000000000000000000000000..5359abf7f42c3ddd8db95844bfe8c0862a3badee
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_opt_14_44.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_opt_36_10.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_opt_36_10.v
new file mode 100644
index 0000000000000000000000000000000000000000..12c9b6f2aff10c1a65bb2353062d477d3d6aa196
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_a_fifo_opt_36_10.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_align_sync.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_align_sync.v
new file mode 100644
index 0000000000000000000000000000000000000000..dbd4f11fdcb94a97720d316b57b351fb14779b01
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_align_sync.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt2gxb_arriagx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt2gxb_arriagx.v
new file mode 100644
index 0000000000000000000000000000000000000000..ec134a1c01de0c55e3ca16b974ceeb70fded3d35
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt2gxb_arriagx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt2gxb_basic.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt2gxb_basic.v
new file mode 100644
index 0000000000000000000000000000000000000000..0fb331e27785c17e24e1716b9e3360ed32d52e58
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt2gxb_basic.v
@@ -0,0 +1,453 @@
+// megafunction wizard: %ALT2GXB%
+// GENERATION: STANDARD
+// VERSION: WM1.0
+// MODULE: alt2gxb 
+
+// ============================================================
+// File Name: altera_tse_alt2gxb_basic.v
+// Megafunction Name(s):
+// 			alt2gxb
+//
+// Simulation Library Files(s):
+// 			
+// ============================================================
+// ************************************************************
+// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
+//
+// 9.0 Internal Build 78 11/25/2008 PN Full Version
+// ************************************************************
+
+
+//Copyright (C) 1991-2008 Altera Corporation
+//Your use of Altera Corporation's design tools, logic functions 
+//and other software and tools, and its AMPP partner logic 
+//functions, and any output files from any of the foregoing 
+//(including device programming or simulation files), and any 
+//associated documentation or information are expressly subject 
+//to the terms and conditions of the Altera Program License 
+//Subscription Agreement, Altera MegaCore Function License 
+//Agreement, or other applicable license agreement, including, 
+//without limitation, that your use is for the sole purpose of 
+//programming logic devices manufactured by Altera and sold by 
+//Altera or its authorized distributors.  Please refer to the 
+//applicable agreement for further details.
+
+
+// related_files : altera_tse_alt2gxb_basic.v
+// ipfs_files : altera_tse_alt2gxb_basic.vo
+
+// synopsys translate_off
+`timescale 1 ps / 1 ps
+// synopsys translate_on
+module altera_tse_alt2gxb_basic (
+	cal_blk_clk,
+	gxb_powerdown,
+	pll_inclk,
+	rx_analogreset,
+	rx_cruclk,
+	rx_datain,
+	rx_digitalreset,
+	rx_seriallpbken,
+	tx_datain,
+	tx_digitalreset,
+	rx_clkout,
+	rx_dataout,
+	rx_patterndetect,
+	tx_clkout,
+	tx_dataout);
+
+	input	  cal_blk_clk;
+	input	[0:0]  gxb_powerdown;
+	input	  pll_inclk;
+	input	[0:0]  rx_analogreset;
+	input	[0:0]  rx_cruclk;
+	input	[0:0]  rx_datain;
+	input	[0:0]  rx_digitalreset;
+	input	[0:0]  rx_seriallpbken;
+	input	[9:0]  tx_datain;
+	input	[0:0]  tx_digitalreset;
+	output	[0:0]  rx_clkout;
+	output	[9:0]  rx_dataout;
+	output	[0:0]  rx_patterndetect;
+	output	[0:0]  tx_clkout;
+	output	[0:0]  tx_dataout;
+`ifndef ALTERA_RESERVED_QIS
+// synopsys translate_off
+`endif
+	tri0	[0:0]  rx_cruclk;
+`ifndef ALTERA_RESERVED_QIS
+// synopsys translate_on
+`endif
+
+	wire [0:0] sub_wire0;
+	wire [0:0] sub_wire1;
+	wire [0:0] sub_wire2;
+	wire [0:0] sub_wire3;
+	wire [9:0] sub_wire4;
+	wire [0:0] sub_wire5 = 1'h0;
+	wire [0:0] rx_patterndetect = sub_wire0[0:0];
+	wire [0:0] rx_clkout = sub_wire1[0:0];
+	wire [0:0] tx_dataout = sub_wire2[0:0];
+	wire [0:0] tx_clkout = sub_wire3[0:0];
+	wire [9:0] rx_dataout = sub_wire4[9:0];
+
+	alt2gxb	alt2gxb_component (
+				.pll_inclk (pll_inclk),
+				.gxb_powerdown (gxb_powerdown),
+				.tx_datain (tx_datain),
+				.rx_revbitorderwa (sub_wire5),
+				.rx_cruclk (rx_cruclk),
+				.cal_blk_clk (cal_blk_clk),
+				.rx_seriallpbken (rx_seriallpbken),
+				.rx_datain (rx_datain),
+				.rx_analogreset (rx_analogreset),
+				.rx_digitalreset (rx_digitalreset),
+				.tx_digitalreset (tx_digitalreset),
+				.rx_patterndetect (sub_wire0),
+				.rx_clkout (sub_wire1),
+				.tx_dataout (sub_wire2),
+				.tx_clkout (sub_wire3),
+				.rx_dataout (sub_wire4)
+				// synopsys translate_off
+				,
+				.aeq_fromgxb (),
+				.aeq_togxb (),
+				.cal_blk_calibrationstatus (),
+				.cal_blk_powerdown (),
+				.coreclkout (),
+				.debug_rx_phase_comp_fifo_error (),
+				.debug_tx_phase_comp_fifo_error (),
+				.fixedclk (),
+				.gxb_enable (),
+				.pipe8b10binvpolarity (),
+				.pipedatavalid (),
+				.pipeelecidle (),
+				.pipephydonestatus (),
+				.pipestatus (),
+				.pll_inclk_alt (),
+				.pll_inclk_rx_cruclk (),
+				.pll_locked (),
+				.pll_locked_alt (),
+				.powerdn (),
+				.reconfig_clk (),
+				.reconfig_fromgxb (),
+				.reconfig_fromgxb_oe (),
+				.reconfig_togxb (),
+				.rx_a1a2size (),
+				.rx_a1a2sizeout (),
+				.rx_a1detect (),
+				.rx_a2detect (),
+				.rx_bistdone (),
+				.rx_bisterr (),
+				.rx_bitslip (),
+				.rx_byteorderalignstatus (),
+				.rx_channelaligned (),
+				.rx_coreclk (),
+				.rx_cruclk_alt (),
+				.rx_ctrldetect (),
+				.rx_dataoutfull (),
+				.rx_disperr (),
+				.rx_enabyteord (),
+				.rx_enapatternalign (),
+				.rx_errdetect (),
+				.rx_freqlocked (),
+				.rx_invpolarity (),
+				.rx_k1detect (),
+				.rx_k2detect (),
+				.rx_locktodata (),
+				.rx_locktorefclk (),
+				.rx_phfifooverflow (),
+				.rx_phfifordenable (),
+				.rx_phfiforeset (),
+				.rx_phfifounderflow (),
+				.rx_phfifowrdisable (),
+				.rx_pll_locked (),
+				.rx_powerdown (),
+				.rx_recovclkout (),
+				.rx_revbyteorderwa (),
+				.rx_rlv (),
+				.rx_rmfifoalmostempty (),
+				.rx_rmfifoalmostfull (),
+				.rx_rmfifodatadeleted (),
+				.rx_rmfifodatainserted (),
+				.rx_rmfifoempty (),
+				.rx_rmfifofull (),
+				.rx_rmfifordena (),
+				.rx_rmfiforeset (),
+				.rx_rmfifowrena (),
+				.rx_runningdisp (),
+				.rx_signaldetect (),
+				.rx_syncstatus (),
+				.tx_coreclk (),
+				.tx_ctrlenable (),
+				.tx_datainfull (),
+				.tx_detectrxloop (),
+				.tx_dispval (),
+				.tx_forcedisp (),
+				.tx_forcedispcompliance (),
+				.tx_forceelecidle (),
+				.tx_invpolarity (),
+				.tx_phfifooverflow (),
+				.tx_phfiforeset (),
+				.tx_phfifounderflow (),
+				.tx_revparallellpbken ()
+				// synopsys translate_on
+				);
+	defparam
+		alt2gxb_component.cmu_pll_inclock_period = 8000,
+		alt2gxb_component.cmu_pll_loop_filter_resistor_control = 3,
+		alt2gxb_component.digitalreset_port_width = 1,
+		alt2gxb_component.en_local_clk_div_ctrl = "true",
+		alt2gxb_component.equalizer_ctrl_a_setting = 0,
+		alt2gxb_component.equalizer_ctrl_b_setting = 0,
+		alt2gxb_component.equalizer_ctrl_c_setting = 0,
+		alt2gxb_component.equalizer_ctrl_d_setting = 0,
+		alt2gxb_component.equalizer_ctrl_v_setting = 0,
+		alt2gxb_component.equalizer_dcgain_setting = 0,
+		alt2gxb_component.intended_device_family = "Stratix II GX",
+		alt2gxb_component.loopback_mode = "slb",
+		alt2gxb_component.lpm_type = "alt2gxb",
+		alt2gxb_component.number_of_channels = 1,
+		alt2gxb_component.operation_mode = "duplex",
+		alt2gxb_component.pll_legal_multiplier_list = "disable_4_5_mult_above_3125",
+		alt2gxb_component.preemphasis_ctrl_1stposttap_setting = 0,
+		alt2gxb_component.preemphasis_ctrl_2ndposttap_inv_setting = "false",
+		alt2gxb_component.preemphasis_ctrl_2ndposttap_setting = 0,
+		alt2gxb_component.preemphasis_ctrl_pretap_inv_setting = "false",
+		alt2gxb_component.preemphasis_ctrl_pretap_setting = 0,
+		alt2gxb_component.protocol = "3g_basic",
+		alt2gxb_component.receiver_termination = "oct_100_ohms",
+		alt2gxb_component.reconfig_dprio_mode = 0,
+		alt2gxb_component.reverse_loopback_mode = "none",
+		alt2gxb_component.rx_8b_10b_compatibility_mode = "false",
+		alt2gxb_component.rx_8b_10b_mode = "none",
+		alt2gxb_component.rx_align_loss_sync_error_num = 1,
+		alt2gxb_component.rx_align_pattern = "0101111100",
+		alt2gxb_component.rx_align_pattern_length = 10,
+		alt2gxb_component.rx_allow_align_polarity_inversion = "false",
+		alt2gxb_component.rx_allow_pipe_polarity_inversion = "false",
+		alt2gxb_component.rx_bandwidth_mode = 1,
+		alt2gxb_component.rx_bitslip_enable = "false",
+		alt2gxb_component.rx_byte_ordering_mode = "none",
+		alt2gxb_component.rx_channel_width = 10,
+		alt2gxb_component.rx_common_mode = "0.9v",
+		alt2gxb_component.rx_cru_inclock_period = 8000,
+		alt2gxb_component.rx_cru_pre_divide_by = 1,
+		alt2gxb_component.rx_datapath_protocol = "basic",
+		alt2gxb_component.rx_data_rate = 1250,
+		alt2gxb_component.rx_data_rate_remainder = 0,
+		alt2gxb_component.rx_disable_auto_idle_insertion = "true",
+		alt2gxb_component.rx_enable_bit_reversal = "false",
+		alt2gxb_component.rx_enable_deep_align_byte_swap = "false",
+		alt2gxb_component.rx_enable_lock_to_data_sig = "false",
+		alt2gxb_component.rx_enable_lock_to_refclk_sig = "false",
+		alt2gxb_component.rx_enable_self_test_mode = "false",
+		alt2gxb_component.rx_enable_true_complement_match_in_word_align = "false",
+		alt2gxb_component.rx_flip_rx_out = "false",
+		alt2gxb_component.rx_force_signal_detect = "true",
+		alt2gxb_component.rx_num_align_cons_good_data = 1,
+		alt2gxb_component.rx_num_align_cons_pat = 1,
+		alt2gxb_component.rx_ppmselect = 32,
+		alt2gxb_component.rx_rate_match_fifo_mode = "none",
+		alt2gxb_component.rx_run_length_enable = "false",
+		alt2gxb_component.rx_signal_detect_threshold = 2,
+		alt2gxb_component.rx_use_align_state_machine = "true",
+		alt2gxb_component.rx_use_clkout = "true",
+		alt2gxb_component.rx_use_coreclk = "false",
+		alt2gxb_component.rx_use_cruclk = "true",
+		alt2gxb_component.rx_use_deserializer_double_data_mode = "false",
+		alt2gxb_component.rx_use_deskew_fifo = "false",
+		alt2gxb_component.rx_use_double_data_mode = "false",
+		alt2gxb_component.transmitter_termination = "oct_100_ohms",
+		alt2gxb_component.tx_8b_10b_compatibility_mode = "false",
+		alt2gxb_component.tx_8b_10b_mode = "none",
+		alt2gxb_component.tx_allow_polarity_inversion = "false",
+		alt2gxb_component.tx_analog_power = "1.5v",
+		alt2gxb_component.tx_channel_width = 10,
+		alt2gxb_component.tx_common_mode = "0.6v",
+		alt2gxb_component.tx_data_rate = 1250,
+		alt2gxb_component.tx_data_rate_remainder = 0,
+		alt2gxb_component.tx_enable_bit_reversal = "false",
+		alt2gxb_component.tx_enable_idle_selection = "false",
+		alt2gxb_component.tx_enable_self_test_mode = "false",
+		alt2gxb_component.tx_flip_tx_in = "false",
+		alt2gxb_component.tx_force_disparity_mode = "false",
+		alt2gxb_component.tx_refclk_divide_by = 1,
+		alt2gxb_component.tx_transmit_protocol = "basic",
+		alt2gxb_component.tx_use_coreclk = "false",
+		alt2gxb_component.tx_use_double_data_mode = "false",
+		alt2gxb_component.tx_use_serializer_double_data_mode = "false",
+		alt2gxb_component.use_calibration_block = "true",
+		alt2gxb_component.vod_ctrl_setting = 3;
+
+
+endmodule
+
+// ============================================================
+// CNX file retrieval info
+// ============================================================
+// Retrieval info: PRIVATE: ALT_SIMLIB_GEN STRING "1"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix II GX"
+// Retrieval info: PRIVATE: NUM_KEYS NUMERIC "71"
+// Retrieval info: PRIVATE: RECONFIG_PROTOCOL STRING "BASIC"
+// Retrieval info: PRIVATE: RECONFIG_SUBPROTOCOL STRING "none"
+// Retrieval info: PRIVATE: RX_ENABLE_DC_COUPLING STRING "false"
+// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
+// Retrieval info: PRIVATE: WIZ_DATA_RATE STRING "1250.00"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INCLK_FREQ_ARRAY STRING "312.500000 250.000000 156.250000 125.000000"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_A STRING "2500"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_A_UNIT STRING "Mbps"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_B STRING "312.500000"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_B_UNIT STRING "MHz"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_SELECTION NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK0_FREQ STRING "125.0"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK0_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK1_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK1_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK2_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK2_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK3_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK3_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK4_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK4_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK5_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK5_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK6_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK6_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_ENABLE_EQUALIZER_CTRL NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_EQUALIZER_CTRL_SETTING NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_FORCE_DEFAULT_SETTINGS NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_INCLK_FREQ STRING "125.0"
+// Retrieval info: PRIVATE: WIZ_INCLK_FREQ_ARRAY STRING "62.5 78.125 125.0 156.25 250.0 312.5"
+// Retrieval info: PRIVATE: WIZ_INPUT_A STRING "1250.00"
+// Retrieval info: PRIVATE: WIZ_INPUT_A_UNIT STRING "Mbps"
+// Retrieval info: PRIVATE: WIZ_INPUT_B STRING "125.0"
+// Retrieval info: PRIVATE: WIZ_INPUT_B_UNIT STRING "MHz"
+// Retrieval info: PRIVATE: WIZ_INPUT_SELECTION NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_SUBPROTOCOL STRING "Serial Loopback"
+// Retrieval info: PRIVATE: WIZ_WORD_ALIGN_FLIP_PATTERN STRING "0"
+// Retrieval info: CONSTANT: CMU_PLL_INCLOCK_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: CMU_PLL_LOOP_FILTER_RESISTOR_CONTROL NUMERIC "3"
+// Retrieval info: CONSTANT: DIGITALRESET_PORT_WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: EN_LOCAL_CLK_DIV_CTRL STRING "true"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_A_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_B_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_C_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_D_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_V_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_DCGAIN_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Stratix II GX"
+// Retrieval info: CONSTANT: LOOPBACK_MODE STRING "slb"
+// Retrieval info: CONSTANT: LPM_TYPE STRING "alt2gxb"
+// Retrieval info: CONSTANT: NUMBER_OF_CHANNELS NUMERIC "1"
+// Retrieval info: CONSTANT: OPERATION_MODE STRING "duplex"
+// Retrieval info: CONSTANT: PLL_LEGAL_MULTIPLIER_LIST STRING "disable_4_5_mult_above_3125"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_1STPOSTTAP_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_2NDPOSTTAP_INV_SETTING STRING "false"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_2NDPOSTTAP_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_PRETAP_INV_SETTING STRING "false"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_PRETAP_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: PROTOCOL STRING "3g_basic"
+// Retrieval info: CONSTANT: RECEIVER_TERMINATION STRING "oct_100_ohms"
+// Retrieval info: CONSTANT: RECONFIG_DPRIO_MODE NUMERIC "0"
+// Retrieval info: CONSTANT: REVERSE_LOOPBACK_MODE STRING "none"
+// Retrieval info: CONSTANT: RX_8B_10B_COMPATIBILITY_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_8B_10B_MODE STRING "none"
+// Retrieval info: CONSTANT: RX_ALIGN_LOSS_SYNC_ERROR_NUM NUMERIC "1"
+// Retrieval info: CONSTANT: RX_ALIGN_PATTERN STRING "0101111100"
+// Retrieval info: CONSTANT: RX_ALIGN_PATTERN_LENGTH NUMERIC "10"
+// Retrieval info: CONSTANT: RX_ALLOW_ALIGN_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: RX_ALLOW_PIPE_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: RX_BANDWIDTH_MODE NUMERIC "1"
+// Retrieval info: CONSTANT: RX_BITSLIP_ENABLE STRING "false"
+// Retrieval info: CONSTANT: RX_BYTE_ORDERING_MODE STRING "none"
+// Retrieval info: CONSTANT: RX_CHANNEL_WIDTH NUMERIC "10"
+// Retrieval info: CONSTANT: RX_COMMON_MODE STRING "0.9v"
+// Retrieval info: CONSTANT: RX_CRU_INCLOCK_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: RX_CRU_PRE_DIVIDE_BY NUMERIC "1"
+// Retrieval info: CONSTANT: RX_DATAPATH_PROTOCOL STRING "basic"
+// Retrieval info: CONSTANT: RX_DATA_RATE NUMERIC "1250"
+// Retrieval info: CONSTANT: RX_DATA_RATE_REMAINDER NUMERIC "0"
+// Retrieval info: CONSTANT: RX_DISABLE_AUTO_IDLE_INSERTION STRING "true"
+// Retrieval info: CONSTANT: RX_ENABLE_BIT_REVERSAL STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_DEEP_ALIGN_BYTE_SWAP STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_LOCK_TO_DATA_SIG STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_LOCK_TO_REFCLK_SIG STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_SELF_TEST_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_TRUE_COMPLEMENT_MATCH_IN_WORD_ALIGN STRING "false"
+// Retrieval info: CONSTANT: RX_FLIP_RX_OUT STRING "false"
+// Retrieval info: CONSTANT: RX_FORCE_SIGNAL_DETECT STRING "true"
+// Retrieval info: CONSTANT: RX_NUM_ALIGN_CONS_GOOD_DATA NUMERIC "1"
+// Retrieval info: CONSTANT: RX_NUM_ALIGN_CONS_PAT NUMERIC "1"
+// Retrieval info: CONSTANT: RX_PPMSELECT NUMERIC "32"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_FIFO_MODE STRING "none"
+// Retrieval info: CONSTANT: RX_RUN_LENGTH_ENABLE STRING "false"
+// Retrieval info: CONSTANT: RX_SIGNAL_DETECT_THRESHOLD NUMERIC "2"
+// Retrieval info: CONSTANT: RX_USE_ALIGN_STATE_MACHINE STRING "true"
+// Retrieval info: CONSTANT: RX_USE_CLKOUT STRING "true"
+// Retrieval info: CONSTANT: RX_USE_CORECLK STRING "false"
+// Retrieval info: CONSTANT: RX_USE_CRUCLK STRING "true"
+// Retrieval info: CONSTANT: RX_USE_DESERIALIZER_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_USE_DESKEW_FIFO STRING "false"
+// Retrieval info: CONSTANT: RX_USE_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: TRANSMITTER_TERMINATION STRING "oct_100_ohms"
+// Retrieval info: CONSTANT: TX_8B_10B_COMPATIBILITY_MODE STRING "false"
+// Retrieval info: CONSTANT: TX_8B_10B_MODE STRING "none"
+// Retrieval info: CONSTANT: TX_ALLOW_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: TX_ANALOG_POWER STRING "1.5v"
+// Retrieval info: CONSTANT: TX_CHANNEL_WIDTH NUMERIC "10"
+// Retrieval info: CONSTANT: TX_COMMON_MODE STRING "0.6v"
+// Retrieval info: CONSTANT: TX_DATA_RATE NUMERIC "1250"
+// Retrieval info: CONSTANT: TX_DATA_RATE_REMAINDER NUMERIC "0"
+// Retrieval info: CONSTANT: TX_ENABLE_BIT_REVERSAL STRING "false"
+// Retrieval info: CONSTANT: TX_ENABLE_IDLE_SELECTION STRING "false"
+// Retrieval info: CONSTANT: TX_ENABLE_SELF_TEST_MODE STRING "false"
+// Retrieval info: CONSTANT: TX_FLIP_TX_IN STRING "false"
+// Retrieval info: CONSTANT: TX_FORCE_DISPARITY_MODE STRING "false"
+// Retrieval info: CONSTANT: TX_REFCLK_DIVIDE_BY NUMERIC "1"
+// Retrieval info: CONSTANT: TX_TRANSMIT_PROTOCOL STRING "basic"
+// Retrieval info: CONSTANT: TX_USE_CORECLK STRING "false"
+// Retrieval info: CONSTANT: TX_USE_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: TX_USE_SERIALIZER_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: USE_CALIBRATION_BLOCK STRING "true"
+// Retrieval info: CONSTANT: VOD_CTRL_SETTING NUMERIC "3"
+// Retrieval info: USED_PORT: cal_blk_clk 0 0 0 0 INPUT NODEFVAL "cal_blk_clk"
+// Retrieval info: USED_PORT: gxb_powerdown 0 0 1 0 INPUT NODEFVAL "gxb_powerdown[0..0]"
+// Retrieval info: USED_PORT: pll_inclk 0 0 0 0 INPUT NODEFVAL "pll_inclk"
+// Retrieval info: USED_PORT: rx_analogreset 0 0 1 0 INPUT NODEFVAL "rx_analogreset[0..0]"
+// Retrieval info: USED_PORT: rx_clkout 0 0 1 0 OUTPUT NODEFVAL "rx_clkout[0..0]"
+// Retrieval info: USED_PORT: rx_cruclk 0 0 1 0 INPUT GND "rx_cruclk[0..0]"
+// Retrieval info: USED_PORT: rx_datain 0 0 1 0 INPUT NODEFVAL "rx_datain[0..0]"
+// Retrieval info: USED_PORT: rx_dataout 0 0 10 0 OUTPUT NODEFVAL "rx_dataout[9..0]"
+// Retrieval info: USED_PORT: rx_digitalreset 0 0 1 0 INPUT NODEFVAL "rx_digitalreset[0..0]"
+// Retrieval info: USED_PORT: rx_patterndetect 0 0 1 0 OUTPUT NODEFVAL "rx_patterndetect[0..0]"
+// Retrieval info: USED_PORT: rx_seriallpbken 0 0 1 0 INPUT NODEFVAL "rx_seriallpbken[0..0]"
+// Retrieval info: USED_PORT: tx_clkout 0 0 1 0 OUTPUT NODEFVAL "tx_clkout[0..0]"
+// Retrieval info: USED_PORT: tx_datain 0 0 10 0 INPUT NODEFVAL "tx_datain[9..0]"
+// Retrieval info: USED_PORT: tx_dataout 0 0 1 0 OUTPUT NODEFVAL "tx_dataout[0..0]"
+// Retrieval info: USED_PORT: tx_digitalreset 0 0 1 0 INPUT NODEFVAL "tx_digitalreset[0..0]"
+// Retrieval info: CONNECT: rx_patterndetect 0 0 1 0 @rx_patterndetect 0 0 1 0
+// Retrieval info: CONNECT: @rx_analogreset 0 0 1 0 rx_analogreset 0 0 1 0
+// Retrieval info: CONNECT: @gxb_powerdown 0 0 1 0 gxb_powerdown 0 0 1 0
+// Retrieval info: CONNECT: rx_dataout 0 0 10 0 @rx_dataout 0 0 10 0
+// Retrieval info: CONNECT: @cal_blk_clk 0 0 0 0 cal_blk_clk 0 0 0 0
+// Retrieval info: CONNECT: @tx_digitalreset 0 0 1 0 tx_digitalreset 0 0 1 0
+// Retrieval info: CONNECT: @rx_revbitorderwa 0 0 1 0 GND 0 0 1 0
+// Retrieval info: CONNECT: @rx_seriallpbken 0 0 1 0 rx_seriallpbken 0 0 1 0
+// Retrieval info: CONNECT: rx_clkout 0 0 1 0 @rx_clkout 0 0 1 0
+// Retrieval info: CONNECT: @rx_digitalreset 0 0 1 0 rx_digitalreset 0 0 1 0
+// Retrieval info: CONNECT: tx_clkout 0 0 1 0 @tx_clkout 0 0 1 0
+// Retrieval info: CONNECT: @rx_cruclk 0 0 1 0 rx_cruclk 0 0 1 0
+// Retrieval info: CONNECT: @pll_inclk 0 0 0 0 pll_inclk 0 0 0 0
+// Retrieval info: CONNECT: tx_dataout 0 0 1 0 @tx_dataout 0 0 1 0
+// Retrieval info: CONNECT: @tx_datain 0 0 10 0 tx_datain 0 0 10 0
+// Retrieval info: CONNECT: @rx_datain 0 0 1 0 rx_datain 0 0 1 0
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_basic.v TRUE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_basic.ppf TRUE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_basic.inc FALSE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_basic.cmp FALSE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_basic.bsf FALSE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_basic_inst.v FALSE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_basic_bb.v FALSE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_basic.vo TRUE FALSE
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt2gxb_gige.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt2gxb_gige.v
new file mode 100644
index 0000000000000000000000000000000000000000..1697a291a9367e116966253d4afe36f959d53e72
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt2gxb_gige.v
@@ -0,0 +1,522 @@
+// megafunction wizard: %ALT2GXB%
+// GENERATION: STANDARD
+// VERSION: WM1.0
+// MODULE: alt2gxb 
+
+// ============================================================
+// File Name: altera_tse_alt2gxb_gige.v
+// Megafunction Name(s):
+// 			alt2gxb
+//
+// Simulation Library Files(s):
+// 			
+// ============================================================
+// ************************************************************
+// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
+//
+// 9.0 Internal Build 78 11/25/2008 PN Full Version
+// ************************************************************
+
+
+//Copyright (C) 1991-2008 Altera Corporation
+//Your use of Altera Corporation's design tools, logic functions 
+//and other software and tools, and its AMPP partner logic 
+//functions, and any output files from any of the foregoing 
+//(including device programming or simulation files), and any 
+//associated documentation or information are expressly subject 
+//to the terms and conditions of the Altera Program License 
+//Subscription Agreement, Altera MegaCore Function License 
+//Agreement, or other applicable license agreement, including, 
+//without limitation, that your use is for the sole purpose of 
+//programming logic devices manufactured by Altera and sold by 
+//Altera or its authorized distributors.  Please refer to the 
+//applicable agreement for further details.
+
+
+// related_files : altera_tse_alt2gxb_gige.v
+// ipfs_files : altera_tse_alt2gxb_gige.vo
+
+// synopsys translate_off
+`timescale 1 ps / 1 ps
+// synopsys translate_on
+module altera_tse_alt2gxb_gige (
+	cal_blk_clk,
+	gxb_powerdown,
+	pll_inclk,
+	reconfig_clk,
+	reconfig_togxb,
+	rx_analogreset,
+	rx_cruclk,
+	rx_datain,
+	rx_digitalreset,
+	rx_seriallpbken,
+	tx_ctrlenable,
+	tx_datain,
+	tx_digitalreset,
+	reconfig_fromgxb,
+	rx_ctrldetect,
+	rx_dataout,
+	rx_disperr,
+	rx_errdetect,
+	rx_patterndetect,
+	rx_rlv,
+	rx_rmfifodatadeleted,
+	rx_rmfifodatainserted,
+	rx_runningdisp,
+	rx_syncstatus,
+	tx_clkout,
+	tx_dataout);
+
+	input	  cal_blk_clk;
+	input	[0:0]  gxb_powerdown;
+	input	  pll_inclk;
+	input	  reconfig_clk;
+	input	[2:0]  reconfig_togxb;
+	input	[0:0]  rx_analogreset;
+	input	[0:0]  rx_cruclk;
+	input	[0:0]  rx_datain;
+	input	[0:0]  rx_digitalreset;
+	input	[0:0]  rx_seriallpbken;
+	input	[0:0]  tx_ctrlenable;
+	input	[7:0]  tx_datain;
+	input	[0:0]  tx_digitalreset;
+	output	[0:0]  reconfig_fromgxb;
+	output	[0:0]  rx_ctrldetect;
+	output	[7:0]  rx_dataout;
+	output	[0:0]  rx_disperr;
+	output	[0:0]  rx_errdetect;
+	output	[0:0]  rx_patterndetect;
+	output	[0:0]  rx_rlv;
+	output	[0:0]  rx_rmfifodatadeleted;
+	output	[0:0]  rx_rmfifodatainserted;
+	output	[0:0]  rx_runningdisp;
+	output	[0:0]  rx_syncstatus;
+	output	[0:0]  tx_clkout;
+	output	[0:0]  tx_dataout;
+`ifndef ALTERA_RESERVED_QIS
+// synopsys translate_off
+`endif
+	tri0	[0:0]  rx_cruclk;
+`ifndef ALTERA_RESERVED_QIS
+// synopsys translate_on
+`endif
+
+	parameter		starting_channel_number = 0;
+
+
+	wire [0:0] sub_wire0;
+	wire [0:0] sub_wire1;
+	wire [0:0] sub_wire2;
+	wire [0:0] sub_wire3;
+	wire [0:0] sub_wire4;
+	wire [0:0] sub_wire5;
+	wire [0:0] sub_wire6;
+	wire [0:0] sub_wire7;
+	wire [0:0] sub_wire8;
+	wire [0:0] sub_wire9;
+	wire [0:0] sub_wire10;
+	wire [0:0] sub_wire11;
+	wire [7:0] sub_wire12;
+	wire [0:0] rx_disperr = sub_wire0[0:0];
+	wire [0:0] rx_rlv = sub_wire1[0:0];
+	wire [0:0] rx_patterndetect = sub_wire2[0:0];
+	wire [0:0] rx_ctrldetect = sub_wire3[0:0];
+	wire [0:0] rx_errdetect = sub_wire4[0:0];
+	wire [0:0] rx_rmfifodatadeleted = sub_wire5[0:0];
+	wire [0:0] rx_runningdisp = sub_wire6[0:0];
+	wire [0:0] tx_dataout = sub_wire7[0:0];
+	wire [0:0] rx_rmfifodatainserted = sub_wire8[0:0];
+	wire [0:0] rx_syncstatus = sub_wire9[0:0];
+	wire [0:0] tx_clkout = sub_wire10[0:0];
+	wire [0:0] reconfig_fromgxb = sub_wire11[0:0];
+	wire [7:0] rx_dataout = sub_wire12[7:0];
+
+	alt2gxb	alt2gxb_component (
+				.pll_inclk (pll_inclk),
+				.gxb_powerdown (gxb_powerdown),
+				.tx_datain (tx_datain),
+				.rx_cruclk (rx_cruclk),
+				.cal_blk_clk (cal_blk_clk),
+				.reconfig_clk (reconfig_clk),
+				.rx_seriallpbken (rx_seriallpbken),
+				.rx_datain (rx_datain),
+				.reconfig_togxb (reconfig_togxb),
+				.tx_ctrlenable (tx_ctrlenable),
+				.rx_analogreset (rx_analogreset),
+				.rx_digitalreset (rx_digitalreset),
+				.tx_digitalreset (tx_digitalreset),
+				.rx_disperr (sub_wire0),
+				.rx_rlv (sub_wire1),
+				.rx_patterndetect (sub_wire2),
+				.rx_ctrldetect (sub_wire3),
+				.rx_errdetect (sub_wire4),
+				.rx_rmfifodatadeleted (sub_wire5),
+				.rx_runningdisp (sub_wire6),
+				.tx_dataout (sub_wire7),
+				.rx_rmfifodatainserted (sub_wire8),
+				.rx_syncstatus (sub_wire9),
+				.tx_clkout (sub_wire10),
+				.reconfig_fromgxb (sub_wire11),
+				.rx_dataout (sub_wire12)
+				// synopsys translate_off
+				,
+				.aeq_fromgxb (),
+				.aeq_togxb (),
+				.cal_blk_calibrationstatus (),
+				.cal_blk_powerdown (),
+				.coreclkout (),
+				.debug_rx_phase_comp_fifo_error (),
+				.debug_tx_phase_comp_fifo_error (),
+				.fixedclk (),
+				.gxb_enable (),
+				.pipe8b10binvpolarity (),
+				.pipedatavalid (),
+				.pipeelecidle (),
+				.pipephydonestatus (),
+				.pipestatus (),
+				.pll_inclk_alt (),
+				.pll_inclk_rx_cruclk (),
+				.pll_locked (),
+				.pll_locked_alt (),
+				.powerdn (),
+				.reconfig_fromgxb_oe (),
+				.rx_a1a2size (),
+				.rx_a1a2sizeout (),
+				.rx_a1detect (),
+				.rx_a2detect (),
+				.rx_bistdone (),
+				.rx_bisterr (),
+				.rx_bitslip (),
+				.rx_byteorderalignstatus (),
+				.rx_channelaligned (),
+				.rx_clkout (),
+				.rx_coreclk (),
+				.rx_cruclk_alt (),
+				.rx_dataoutfull (),
+				.rx_enabyteord (),
+				.rx_enapatternalign (),
+				.rx_freqlocked (),
+				.rx_invpolarity (),
+				.rx_k1detect (),
+				.rx_k2detect (),
+				.rx_locktodata (),
+				.rx_locktorefclk (),
+				.rx_phfifooverflow (),
+				.rx_phfifordenable (),
+				.rx_phfiforeset (),
+				.rx_phfifounderflow (),
+				.rx_phfifowrdisable (),
+				.rx_pll_locked (),
+				.rx_powerdown (),
+				.rx_recovclkout (),
+				.rx_revbitorderwa (),
+				.rx_revbyteorderwa (),
+				.rx_rmfifoalmostempty (),
+				.rx_rmfifoalmostfull (),
+				.rx_rmfifoempty (),
+				.rx_rmfifofull (),
+				.rx_rmfifordena (),
+				.rx_rmfiforeset (),
+				.rx_rmfifowrena (),
+				.rx_signaldetect (),
+				.tx_coreclk (),
+				.tx_datainfull (),
+				.tx_detectrxloop (),
+				.tx_dispval (),
+				.tx_forcedisp (),
+				.tx_forcedispcompliance (),
+				.tx_forceelecidle (),
+				.tx_invpolarity (),
+				.tx_phfifooverflow (),
+				.tx_phfiforeset (),
+				.tx_phfifounderflow (),
+				.tx_revparallellpbken ()
+				// synopsys translate_on
+				);
+	defparam
+		alt2gxb_component.starting_channel_number = starting_channel_number,
+		alt2gxb_component.cmu_pll_inclock_period = 8000,
+		alt2gxb_component.cmu_pll_loop_filter_resistor_control = 3,
+		alt2gxb_component.digitalreset_port_width = 1,
+		alt2gxb_component.en_local_clk_div_ctrl = "true",
+		alt2gxb_component.equalizer_ctrl_a_setting = 0,
+		alt2gxb_component.equalizer_ctrl_b_setting = 0,
+		alt2gxb_component.equalizer_ctrl_c_setting = 0,
+		alt2gxb_component.equalizer_ctrl_d_setting = 0,
+		alt2gxb_component.equalizer_ctrl_v_setting = 0,
+		alt2gxb_component.equalizer_dcgain_setting = 0,
+		alt2gxb_component.gen_reconfig_pll = "false",
+		alt2gxb_component.intended_device_family = "Stratix II GX",
+		alt2gxb_component.loopback_mode = "slb",
+		alt2gxb_component.lpm_type = "alt2gxb",
+		alt2gxb_component.number_of_channels = 1,
+		alt2gxb_component.operation_mode = "duplex",
+		alt2gxb_component.pll_legal_multiplier_list = "disable_4_5_mult_above_3125",
+		alt2gxb_component.preemphasis_ctrl_1stposttap_setting = 0,
+		alt2gxb_component.preemphasis_ctrl_2ndposttap_inv_setting = "false",
+		alt2gxb_component.preemphasis_ctrl_2ndposttap_setting = 0,
+		alt2gxb_component.preemphasis_ctrl_pretap_inv_setting = "false",
+		alt2gxb_component.preemphasis_ctrl_pretap_setting = 0,
+		alt2gxb_component.protocol = "gige",
+		alt2gxb_component.receiver_termination = "oct_100_ohms",
+		alt2gxb_component.reconfig_dprio_mode = 1,
+		alt2gxb_component.reverse_loopback_mode = "none",
+		alt2gxb_component.rx_8b_10b_compatibility_mode = "true",
+		alt2gxb_component.rx_8b_10b_mode = "normal",
+		alt2gxb_component.rx_align_pattern = "0101111100",
+		alt2gxb_component.rx_align_pattern_length = 10,
+		alt2gxb_component.rx_allow_align_polarity_inversion = "false",
+		alt2gxb_component.rx_allow_pipe_polarity_inversion = "false",
+		alt2gxb_component.rx_bandwidth_mode = 1,
+		alt2gxb_component.rx_bitslip_enable = "false",
+		alt2gxb_component.rx_byte_ordering_mode = "none",
+		alt2gxb_component.rx_channel_width = 8,
+		alt2gxb_component.rx_common_mode = "0.9v",
+		alt2gxb_component.rx_cru_inclock_period = 8000,
+		alt2gxb_component.rx_cru_pre_divide_by = 1,
+		alt2gxb_component.rx_datapath_protocol = "basic",
+		alt2gxb_component.rx_data_rate = 1250,
+		alt2gxb_component.rx_data_rate_remainder = 0,
+		alt2gxb_component.rx_disable_auto_idle_insertion = "true",
+		alt2gxb_component.rx_enable_bit_reversal = "false",
+		alt2gxb_component.rx_enable_lock_to_data_sig = "false",
+		alt2gxb_component.rx_enable_lock_to_refclk_sig = "false",
+		alt2gxb_component.rx_enable_self_test_mode = "false",
+		alt2gxb_component.rx_enable_true_complement_match_in_word_align = "false",
+		alt2gxb_component.rx_force_signal_detect = "true",
+		alt2gxb_component.rx_ppmselect = 32,
+		alt2gxb_component.rx_rate_match_back_to_back = "true",
+		alt2gxb_component.rx_rate_match_fifo_mode = "normal",
+		alt2gxb_component.rx_rate_match_ordered_set_based = "true",
+		alt2gxb_component.rx_rate_match_pattern1 = "10100010010101111100",
+		alt2gxb_component.rx_rate_match_pattern2 = "10101011011010000011",
+		alt2gxb_component.rx_rate_match_pattern_size = 20,
+		alt2gxb_component.rx_rate_match_skip_set_based = "true",
+		alt2gxb_component.rx_run_length = 5,
+		alt2gxb_component.rx_run_length_enable = "true",
+		alt2gxb_component.rx_signal_detect_threshold = 2,
+		alt2gxb_component.rx_use_align_state_machine = "true",
+		alt2gxb_component.rx_use_clkout = "false",
+		alt2gxb_component.rx_use_coreclk = "false",
+		alt2gxb_component.rx_use_cruclk = "true",
+		alt2gxb_component.rx_use_deserializer_double_data_mode = "false",
+		alt2gxb_component.rx_use_deskew_fifo = "false",
+		alt2gxb_component.rx_use_double_data_mode = "false",
+		alt2gxb_component.rx_use_rate_match_pattern1_only = "false",
+		alt2gxb_component.transmitter_termination = "oct_100_ohms",
+		alt2gxb_component.tx_8b_10b_compatibility_mode = "true",
+		alt2gxb_component.tx_8b_10b_mode = "normal",
+		alt2gxb_component.tx_allow_polarity_inversion = "false",
+		alt2gxb_component.tx_analog_power = "1.5v",
+		alt2gxb_component.tx_channel_width = 8,
+		alt2gxb_component.tx_common_mode = "0.6v",
+		alt2gxb_component.tx_data_rate = 1250,
+		alt2gxb_component.tx_data_rate_remainder = 0,
+		alt2gxb_component.tx_enable_bit_reversal = "false",
+		alt2gxb_component.tx_enable_idle_selection = "true",
+		alt2gxb_component.tx_enable_self_test_mode = "false",
+		alt2gxb_component.tx_refclk_divide_by = 1,
+		alt2gxb_component.tx_transmit_protocol = "basic",
+		alt2gxb_component.tx_use_coreclk = "false",
+		alt2gxb_component.tx_use_double_data_mode = "false",
+		alt2gxb_component.tx_use_serializer_double_data_mode = "false",
+		alt2gxb_component.use_calibration_block = "true",
+		alt2gxb_component.vod_ctrl_setting = 3;
+
+
+endmodule
+
+// ============================================================
+// CNX file retrieval info
+// ============================================================
+// Retrieval info: PRIVATE: ALT_SIMLIB_GEN STRING "1"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix II GX"
+// Retrieval info: PRIVATE: IP_MODE STRING "TSE"
+// Retrieval info: PRIVATE: LOCKDOWN_EXCL STRING "TSE"
+// Retrieval info: PRIVATE: NUM_KEYS NUMERIC "71"
+// Retrieval info: PRIVATE: RECONFIG_PROTOCOL STRING "BASIC"
+// Retrieval info: PRIVATE: RECONFIG_SUBPROTOCOL STRING "none"
+// Retrieval info: PRIVATE: RX_ENABLE_DC_COUPLING STRING "false"
+// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
+// Retrieval info: PRIVATE: WIZ_DATA_RATE STRING "1250.0000"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INCLK_FREQ_ARRAY STRING "50.0 62.5 78.125 100.0 125.0 156.25 250.0 312.5 500.0"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_A STRING "2500"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_A_UNIT STRING "Mbps"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_B STRING "50.0"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_B_UNIT STRING "MHz"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_SELECTION NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK0_FREQ STRING "125"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK0_PROTOCOL STRING "GIGE"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK1_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK1_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK2_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK2_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK3_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK3_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK4_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK4_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK5_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK5_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK6_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK6_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_ENABLE_EQUALIZER_CTRL NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_EQUALIZER_CTRL_SETTING NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_FORCE_DEFAULT_SETTINGS NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_INCLK_FREQ STRING "125"
+// Retrieval info: PRIVATE: WIZ_INCLK_FREQ_ARRAY STRING "62.5 125"
+// Retrieval info: PRIVATE: WIZ_INPUT_A STRING "1250.0000"
+// Retrieval info: PRIVATE: WIZ_INPUT_A_UNIT STRING "Mbps"
+// Retrieval info: PRIVATE: WIZ_INPUT_B STRING "125"
+// Retrieval info: PRIVATE: WIZ_INPUT_B_UNIT STRING "MHz"
+// Retrieval info: PRIVATE: WIZ_INPUT_SELECTION NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_PROTOCOL STRING "GIGE"
+// Retrieval info: PRIVATE: WIZ_SUBPROTOCOL STRING "GIGE-Enhanced"
+// Retrieval info: PRIVATE: WIZ_WORD_ALIGN_FLIP_PATTERN STRING "0"
+// Retrieval info: PARAMETER: STARTING_CHANNEL_NUMBER NUMERIC "0"
+// Retrieval info: CONSTANT: CMU_PLL_INCLOCK_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: CMU_PLL_LOOP_FILTER_RESISTOR_CONTROL NUMERIC "3"
+// Retrieval info: CONSTANT: DIGITALRESET_PORT_WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: EN_LOCAL_CLK_DIV_CTRL STRING "true"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_A_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_B_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_C_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_D_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_V_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_DCGAIN_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: GEN_RECONFIG_PLL STRING "false"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Stratix II GX"
+// Retrieval info: CONSTANT: LOOPBACK_MODE STRING "slb"
+// Retrieval info: CONSTANT: LPM_TYPE STRING "alt2gxb"
+// Retrieval info: CONSTANT: NUMBER_OF_CHANNELS NUMERIC "1"
+// Retrieval info: CONSTANT: OPERATION_MODE STRING "duplex"
+// Retrieval info: CONSTANT: PLL_LEGAL_MULTIPLIER_LIST STRING "disable_4_5_mult_above_3125"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_1STPOSTTAP_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_2NDPOSTTAP_INV_SETTING STRING "false"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_2NDPOSTTAP_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_PRETAP_INV_SETTING STRING "false"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_PRETAP_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: PROTOCOL STRING "gige"
+// Retrieval info: CONSTANT: RECEIVER_TERMINATION STRING "oct_100_ohms"
+// Retrieval info: CONSTANT: RECONFIG_DPRIO_MODE NUMERIC "1"
+// Retrieval info: CONSTANT: REVERSE_LOOPBACK_MODE STRING "none"
+// Retrieval info: CONSTANT: RX_8B_10B_COMPATIBILITY_MODE STRING "true"
+// Retrieval info: CONSTANT: RX_8B_10B_MODE STRING "normal"
+// Retrieval info: CONSTANT: RX_ALIGN_PATTERN STRING "0101111100"
+// Retrieval info: CONSTANT: RX_ALIGN_PATTERN_LENGTH NUMERIC "10"
+// Retrieval info: CONSTANT: RX_ALLOW_ALIGN_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: RX_ALLOW_PIPE_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: RX_BANDWIDTH_MODE NUMERIC "1"
+// Retrieval info: CONSTANT: RX_BITSLIP_ENABLE STRING "false"
+// Retrieval info: CONSTANT: RX_BYTE_ORDERING_MODE STRING "none"
+// Retrieval info: CONSTANT: RX_CHANNEL_WIDTH NUMERIC "8"
+// Retrieval info: CONSTANT: RX_COMMON_MODE STRING "0.9v"
+// Retrieval info: CONSTANT: RX_CRU_INCLOCK_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: RX_CRU_PRE_DIVIDE_BY NUMERIC "1"
+// Retrieval info: CONSTANT: RX_DATAPATH_PROTOCOL STRING "basic"
+// Retrieval info: CONSTANT: RX_DATA_RATE NUMERIC "1250"
+// Retrieval info: CONSTANT: RX_DATA_RATE_REMAINDER NUMERIC "0"
+// Retrieval info: CONSTANT: RX_DISABLE_AUTO_IDLE_INSERTION STRING "true"
+// Retrieval info: CONSTANT: RX_ENABLE_BIT_REVERSAL STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_LOCK_TO_DATA_SIG STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_LOCK_TO_REFCLK_SIG STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_SELF_TEST_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_TRUE_COMPLEMENT_MATCH_IN_WORD_ALIGN STRING "false"
+// Retrieval info: CONSTANT: RX_FORCE_SIGNAL_DETECT STRING "true"
+// Retrieval info: CONSTANT: RX_PPMSELECT NUMERIC "32"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_BACK_TO_BACK STRING "true"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_FIFO_MODE STRING "normal"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_ORDERED_SET_BASED STRING "true"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_PATTERN1 STRING "10100010010101111100"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_PATTERN2 STRING "10101011011010000011"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_PATTERN_SIZE NUMERIC "20"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_SKIP_SET_BASED STRING "true"
+// Retrieval info: CONSTANT: RX_RUN_LENGTH NUMERIC "5"
+// Retrieval info: CONSTANT: RX_RUN_LENGTH_ENABLE STRING "true"
+// Retrieval info: CONSTANT: RX_SIGNAL_DETECT_THRESHOLD NUMERIC "2"
+// Retrieval info: CONSTANT: RX_USE_ALIGN_STATE_MACHINE STRING "true"
+// Retrieval info: CONSTANT: RX_USE_CLKOUT STRING "false"
+// Retrieval info: CONSTANT: RX_USE_CORECLK STRING "false"
+// Retrieval info: CONSTANT: RX_USE_CRUCLK STRING "true"
+// Retrieval info: CONSTANT: RX_USE_DESERIALIZER_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_USE_DESKEW_FIFO STRING "false"
+// Retrieval info: CONSTANT: RX_USE_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_USE_RATE_MATCH_PATTERN1_ONLY STRING "false"
+// Retrieval info: CONSTANT: TRANSMITTER_TERMINATION STRING "oct_100_ohms"
+// Retrieval info: CONSTANT: TX_8B_10B_COMPATIBILITY_MODE STRING "true"
+// Retrieval info: CONSTANT: TX_8B_10B_MODE STRING "normal"
+// Retrieval info: CONSTANT: TX_ALLOW_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: TX_ANALOG_POWER STRING "1.5v"
+// Retrieval info: CONSTANT: TX_CHANNEL_WIDTH NUMERIC "8"
+// Retrieval info: CONSTANT: TX_COMMON_MODE STRING "0.6v"
+// Retrieval info: CONSTANT: TX_DATA_RATE NUMERIC "1250"
+// Retrieval info: CONSTANT: TX_DATA_RATE_REMAINDER NUMERIC "0"
+// Retrieval info: CONSTANT: TX_ENABLE_BIT_REVERSAL STRING "false"
+// Retrieval info: CONSTANT: TX_ENABLE_IDLE_SELECTION STRING "true"
+// Retrieval info: CONSTANT: TX_ENABLE_SELF_TEST_MODE STRING "false"
+// Retrieval info: CONSTANT: TX_REFCLK_DIVIDE_BY NUMERIC "1"
+// Retrieval info: CONSTANT: TX_TRANSMIT_PROTOCOL STRING "basic"
+// Retrieval info: CONSTANT: TX_USE_CORECLK STRING "false"
+// Retrieval info: CONSTANT: TX_USE_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: TX_USE_SERIALIZER_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: USE_CALIBRATION_BLOCK STRING "true"
+// Retrieval info: CONSTANT: VOD_CTRL_SETTING NUMERIC "3"
+// Retrieval info: USED_PORT: cal_blk_clk 0 0 0 0 INPUT NODEFVAL "cal_blk_clk"
+// Retrieval info: USED_PORT: gxb_powerdown 0 0 1 0 INPUT NODEFVAL "gxb_powerdown[0..0]"
+// Retrieval info: USED_PORT: pll_inclk 0 0 0 0 INPUT NODEFVAL "pll_inclk"
+// Retrieval info: USED_PORT: reconfig_clk 0 0 0 0 INPUT NODEFVAL "reconfig_clk"
+// Retrieval info: USED_PORT: reconfig_fromgxb 0 0 1 0 OUTPUT NODEFVAL "reconfig_fromgxb[0..0]"
+// Retrieval info: USED_PORT: reconfig_togxb 0 0 3 0 INPUT NODEFVAL "reconfig_togxb[2..0]"
+// Retrieval info: USED_PORT: rx_analogreset 0 0 1 0 INPUT NODEFVAL "rx_analogreset[0..0]"
+// Retrieval info: USED_PORT: rx_cruclk 0 0 1 0 INPUT GND "rx_cruclk[0..0]"
+// Retrieval info: USED_PORT: rx_ctrldetect 0 0 1 0 OUTPUT NODEFVAL "rx_ctrldetect[0..0]"
+// Retrieval info: USED_PORT: rx_datain 0 0 1 0 INPUT NODEFVAL "rx_datain[0..0]"
+// Retrieval info: USED_PORT: rx_dataout 0 0 8 0 OUTPUT NODEFVAL "rx_dataout[7..0]"
+// Retrieval info: USED_PORT: rx_digitalreset 0 0 1 0 INPUT NODEFVAL "rx_digitalreset[0..0]"
+// Retrieval info: USED_PORT: rx_disperr 0 0 1 0 OUTPUT NODEFVAL "rx_disperr[0..0]"
+// Retrieval info: USED_PORT: rx_errdetect 0 0 1 0 OUTPUT NODEFVAL "rx_errdetect[0..0]"
+// Retrieval info: USED_PORT: rx_patterndetect 0 0 1 0 OUTPUT NODEFVAL "rx_patterndetect[0..0]"
+// Retrieval info: USED_PORT: rx_rlv 0 0 1 0 OUTPUT NODEFVAL "rx_rlv[0..0]"
+// Retrieval info: USED_PORT: rx_rmfifodatadeleted 0 0 1 0 OUTPUT NODEFVAL "rx_rmfifodatadeleted[0..0]"
+// Retrieval info: USED_PORT: rx_rmfifodatainserted 0 0 1 0 OUTPUT NODEFVAL "rx_rmfifodatainserted[0..0]"
+// Retrieval info: USED_PORT: rx_runningdisp 0 0 1 0 OUTPUT NODEFVAL "rx_runningdisp[0..0]"
+// Retrieval info: USED_PORT: rx_seriallpbken 0 0 1 0 INPUT NODEFVAL "rx_seriallpbken[0..0]"
+// Retrieval info: USED_PORT: rx_syncstatus 0 0 1 0 OUTPUT NODEFVAL "rx_syncstatus[0..0]"
+// Retrieval info: USED_PORT: tx_clkout 0 0 1 0 OUTPUT NODEFVAL "tx_clkout[0..0]"
+// Retrieval info: USED_PORT: tx_ctrlenable 0 0 1 0 INPUT NODEFVAL "tx_ctrlenable[0..0]"
+// Retrieval info: USED_PORT: tx_datain 0 0 8 0 INPUT NODEFVAL "tx_datain[7..0]"
+// Retrieval info: USED_PORT: tx_dataout 0 0 1 0 OUTPUT NODEFVAL "tx_dataout[0..0]"
+// Retrieval info: USED_PORT: tx_digitalreset 0 0 1 0 INPUT NODEFVAL "tx_digitalreset[0..0]"
+// Retrieval info: CONNECT: rx_patterndetect 0 0 1 0 @rx_patterndetect 0 0 1 0
+// Retrieval info: CONNECT: @rx_analogreset 0 0 1 0 rx_analogreset 0 0 1 0
+// Retrieval info: CONNECT: rx_ctrldetect 0 0 1 0 @rx_ctrldetect 0 0 1 0
+// Retrieval info: CONNECT: @gxb_powerdown 0 0 1 0 gxb_powerdown 0 0 1 0
+// Retrieval info: CONNECT: rx_dataout 0 0 8 0 @rx_dataout 0 0 8 0
+// Retrieval info: CONNECT: rx_runningdisp 0 0 1 0 @rx_runningdisp 0 0 1 0
+// Retrieval info: CONNECT: @cal_blk_clk 0 0 0 0 cal_blk_clk 0 0 0 0
+// Retrieval info: CONNECT: rx_errdetect 0 0 1 0 @rx_errdetect 0 0 1 0
+// Retrieval info: CONNECT: @tx_digitalreset 0 0 1 0 tx_digitalreset 0 0 1 0
+// Retrieval info: CONNECT: rx_syncstatus 0 0 1 0 @rx_syncstatus 0 0 1 0
+// Retrieval info: CONNECT: @rx_seriallpbken 0 0 1 0 rx_seriallpbken 0 0 1 0
+// Retrieval info: CONNECT: @reconfig_clk 0 0 0 0 reconfig_clk 0 0 0 0
+// Retrieval info: CONNECT: @reconfig_togxb 0 0 3 0 reconfig_togxb 0 0 3 0
+// Retrieval info: CONNECT: @rx_digitalreset 0 0 1 0 rx_digitalreset 0 0 1 0
+// Retrieval info: CONNECT: tx_clkout 0 0 1 0 @tx_clkout 0 0 1 0
+// Retrieval info: CONNECT: @rx_cruclk 0 0 1 0 rx_cruclk 0 0 1 0
+// Retrieval info: CONNECT: rx_rlv 0 0 1 0 @rx_rlv 0 0 1 0
+// Retrieval info: CONNECT: @pll_inclk 0 0 0 0 pll_inclk 0 0 0 0
+// Retrieval info: CONNECT: @tx_ctrlenable 0 0 1 0 tx_ctrlenable 0 0 1 0
+// Retrieval info: CONNECT: tx_dataout 0 0 1 0 @tx_dataout 0 0 1 0
+// Retrieval info: CONNECT: @tx_datain 0 0 8 0 tx_datain 0 0 8 0
+// Retrieval info: CONNECT: reconfig_fromgxb 0 0 1 0 @reconfig_fromgxb 0 0 1 0
+// Retrieval info: CONNECT: @rx_datain 0 0 1 0 rx_datain 0 0 1 0
+// Retrieval info: CONNECT: rx_rmfifodatainserted 0 0 1 0 @rx_rmfifodatainserted 0 0 1 0
+// Retrieval info: CONNECT: rx_rmfifodatadeleted 0 0 1 0 @rx_rmfifodatadeleted 0 0 1 0
+// Retrieval info: CONNECT: rx_disperr 0 0 1 0 @rx_disperr 0 0 1 0
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_gige.v TRUE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_gige.inc FALSE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_gige.cmp FALSE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_gige.bsf TRUE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_gige_inst.v FALSE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_gige_bb.v FALSE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_gige.ppf TRUE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt2gxb_gige.vo TRUE FALSE
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt4gxb_gige.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt4gxb_gige.v
new file mode 100644
index 0000000000000000000000000000000000000000..3c2cabcc318fa22e34ef08a1a7b803725e99a23d
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_alt4gxb_gige.v
@@ -0,0 +1,1675 @@
+// megafunction wizard: %ALTGX%
+// GENERATION: STANDARD
+// VERSION: WM1.0
+// MODULE: alt4gxb 
+
+// ============================================================
+// File Name: altera_tse_alt4gxb_gige.v
+// Megafunction Name(s):
+// 			alt4gxb
+//
+// Simulation Library Files(s):
+// 			stratixiv_hssi
+// ============================================================
+// ************************************************************
+// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
+//
+// 9.1 Internal Build 95 04/09/2009 PN Full Version
+// ************************************************************
+
+
+//Copyright (C) 1991-2009 Altera Corporation
+//Your use of Altera Corporation's design tools, logic functions 
+//and other software and tools, and its AMPP partner logic 
+//functions, and any output files from any of the foregoing 
+//(including device programming or simulation files), and any 
+//associated documentation or information are expressly subject 
+//to the terms and conditions of the Altera Program License 
+//Subscription Agreement, Altera MegaCore Function License 
+//Agreement, or other applicable license agreement, including, 
+//without limitation, that your use is for the sole purpose of 
+//programming logic devices manufactured by Altera and sold by 
+//Altera or its authorized distributors.  Please refer to the 
+//applicable agreement for further details.
+
+
+//alt4gxb CBX_AUTO_BLACKBOX="ALL" device_family="Stratix IV" effective_data_rate="1250 Mbps" enable_lc_tx_pll="false" equalizer_ctrl_a_setting=0 equalizer_ctrl_b_setting=0 equalizer_ctrl_c_setting=0 equalizer_ctrl_d_setting=0 equalizer_ctrl_v_setting=0 equalizer_dcgain_setting=0 gen_reconfig_pll="false" gx_channel_type="auto" gxb_analog_power="AUTO" gxb_powerdown_width=1 input_clock_frequency="125.0 MHz" intended_device_speed_grade="2" intended_device_variant="GX" loopback_mode="slb" number_of_channels=1 number_of_quads=1 operation_mode="duplex" pll_control_width=1 preemphasis_ctrl_1stposttap_setting=0 preemphasis_ctrl_2ndposttap_inv_setting="false" preemphasis_ctrl_2ndposttap_setting=0 preemphasis_ctrl_pretap_inv_setting="false" preemphasis_ctrl_pretap_setting=0 protocol="gige" receiver_termination="OCT_100_OHMS" reconfig_calibration="true" reconfig_dprio_mode=1 reconfig_fromgxb_port_width=17 reconfig_togxb_port_width=4 rx_8b_10b_mode="normal" rx_align_pattern="0101111100" rx_align_pattern_length=10 rx_allow_align_polarity_inversion="false" rx_allow_pipe_polarity_inversion="false" rx_bitslip_enable="false" rx_byte_ordering_mode="none" rx_channel_width=8 rx_common_mode="0.82v" rx_cru_bandwidth_type="medium" rx_cru_inclock0_period=8000 rx_cru_m_divider=5 rx_cru_n_divider=1 rx_cru_vco_post_scale_divider=4 rx_data_rate=1250 rx_data_rate_remainder=0 rx_datapath_protocol="basic" rx_digitalreset_port_width=1 rx_dwidth_factor=1 rx_enable_bit_reversal="false" rx_enable_lock_to_data_sig="false" rx_enable_lock_to_refclk_sig="false" rx_enable_self_test_mode="false" rx_force_signal_detect="true" rx_ppmselect=32 rx_rate_match_fifo_mode="normal" rx_rate_match_pattern1="10100010010101111100" rx_rate_match_pattern2="10101011011010000011" rx_rate_match_pattern_size=20 rx_run_length=5 rx_run_length_enable="true" rx_signal_detect_threshold=2 rx_use_align_state_machine="true" rx_use_clkout="false" rx_use_coreclk="false" rx_use_cruclk="true" rx_use_deserializer_double_data_mode="false" rx_use_deskew_fifo="false" rx_use_double_data_mode="false" rx_use_rate_match_pattern1_only="false" rx_word_aligner_num_byte=1 starting_channel_number=0 transmitter_termination="OCT_100_OHMS" tx_8b_10b_mode="normal" tx_allow_polarity_inversion="false" tx_analog_power="auto" tx_channel_width=8 tx_clkout_width=1 tx_common_mode="0.65v" tx_data_rate=1250 tx_data_rate_remainder=0 tx_digitalreset_port_width=1 tx_dwidth_factor=1 tx_enable_bit_reversal="false" tx_enable_self_test_mode="false" tx_pll_bandwidth_type="high" tx_pll_clock_post_divider=1 tx_pll_inclk0_period=8000 tx_pll_m_divider=5 tx_pll_n_divider=1 tx_pll_type="CMU" tx_pll_vco_post_scale_divider=4 tx_slew_rate="medium" tx_transmit_protocol="basic" tx_use_coreclk="false" tx_use_double_data_mode="false" tx_use_serializer_double_data_mode="false" use_calibration_block="true" vod_ctrl_setting=1 cal_blk_clk fixedclk fixedclk_fast gxb_powerdown pll_inclk reconfig_clk reconfig_fromgxb reconfig_togxb rx_analogreset rx_cruclk rx_ctrldetect rx_datain rx_dataout rx_digitalreset rx_disperr rx_errdetect rx_patterndetect rx_rlv rx_rmfifodatadeleted rx_rmfifodatainserted rx_runningdisp rx_seriallpbken rx_syncstatus tx_clkout tx_ctrlenable tx_datain tx_dataout tx_digitalreset
+//VERSION_BEGIN 9.1 cbx_alt4gxb 2009:04:08:15:05:21:PN cbx_mgl 2009:04:08:09:26:09:PN cbx_tgx 2008:05:30:03:23:14:PN  VERSION_END
+// synthesis VERILOG_INPUT_VERSION VERILOG_2001
+// altera message_off 10463
+
+
+//synthesis_resources = reg 8 stratixiv_hssi_calibration_block 1 stratixiv_hssi_clock_divider 1 stratixiv_hssi_cmu 1 stratixiv_hssi_pll 2 stratixiv_hssi_rx_pcs 1 stratixiv_hssi_rx_pma 1 stratixiv_hssi_tx_pcs 1 stratixiv_hssi_tx_pma 1 
+//synopsys translate_off
+`timescale 1 ps / 1 ps
+//synopsys translate_on
+(* ALTERA_ATTRIBUTE = {"suppress_da_rule_internal=c104"} *)
+module  altera_tse_alt4gxb_gige_alt4gxb_4fh9
+	( 
+	cal_blk_clk,
+	fixedclk,
+	fixedclk_fast,
+	gxb_powerdown,
+	pll_inclk,
+	reconfig_clk,
+	reconfig_fromgxb,
+	reconfig_togxb,
+	rx_analogreset,
+	rx_cruclk,
+	rx_ctrldetect,
+	rx_datain,
+	rx_dataout,
+	rx_digitalreset,
+	rx_disperr,
+	rx_errdetect,
+	rx_patterndetect,
+	rx_rlv,
+	rx_rmfifodatadeleted,
+	rx_rmfifodatainserted,
+	rx_runningdisp,
+	rx_seriallpbken,
+	rx_syncstatus,
+	tx_clkout,
+	tx_ctrlenable,
+	tx_datain,
+	tx_dataout,
+	tx_digitalreset) /* synthesis synthesis_clearbox=2 */;
+	input   cal_blk_clk;
+	input   fixedclk;
+	input   [5:0]  fixedclk_fast;
+	input   [0:0]  gxb_powerdown;
+	input   pll_inclk;
+	input   reconfig_clk;
+	output   [16:0]  reconfig_fromgxb;
+	input   [3:0]  reconfig_togxb;
+	input   [0:0]  rx_analogreset;
+	input   [0:0]  rx_cruclk;
+	output   [0:0]  rx_ctrldetect;
+	input   [0:0]  rx_datain;
+	output   [7:0]  rx_dataout;
+	input   [0:0]  rx_digitalreset;
+	output   [0:0]  rx_disperr;
+	output   [0:0]  rx_errdetect;
+	output   [0:0]  rx_patterndetect;
+	output   [0:0]  rx_rlv;
+	output   [0:0]  rx_rmfifodatadeleted;
+	output   [0:0]  rx_rmfifodatainserted;
+	output   [0:0]  rx_runningdisp;
+	input   [0:0]  rx_seriallpbken;
+	output   [0:0]  rx_syncstatus;
+	output   [0:0]  tx_clkout;
+	input   [0:0]  tx_ctrlenable;
+	input   [7:0]  tx_datain;
+	output   [0:0]  tx_dataout;
+	input   [0:0]  tx_digitalreset;
+`ifndef ALTERA_RESERVED_QIS
+// synopsys translate_off
+`endif
+	tri0   cal_blk_clk;
+	tri0   fixedclk;
+	tri1   [5:0]  fixedclk_fast;
+	tri0   [0:0]  gxb_powerdown;
+	tri0   pll_inclk;
+	tri0   reconfig_clk;
+	tri0   [0:0]  rx_analogreset;
+	tri0   [0:0]  rx_cruclk;
+	tri0   [0:0]  rx_datain;
+	tri0   [0:0]  rx_digitalreset;
+	tri0   [0:0]  rx_seriallpbken;
+	tri0   [0:0]  tx_ctrlenable;
+	tri0   [7:0]  tx_datain;
+	tri0   [0:0]  tx_digitalreset;
+`ifndef ALTERA_RESERVED_QIS
+// synopsys translate_on
+`endif
+
+
+	parameter	starting_channel_number = 0;
+
+
+	reg	fixedclk_div0quad0c;
+	wire	wire_fixedclk_div0quad0c_clk;
+	reg	fixedclk_div1quad0c;
+	wire	wire_fixedclk_div1quad0c_clk;
+	reg	fixedclk_div2quad0c;
+	wire	wire_fixedclk_div2quad0c_clk;
+	reg	fixedclk_div3quad0c;
+	wire	wire_fixedclk_div3quad0c_clk;
+	reg	fixedclk_div4quad0c;
+	wire	wire_fixedclk_div4quad0c_clk;
+	reg	fixedclk_div5quad0c;
+	wire	wire_fixedclk_div5quad0c_clk;
+	reg	[1:0]	reconfig_togxb_busy_reg;
+	wire  wire_cal_blk0_nonusertocmu;
+	wire  [1:0]   wire_ch_clk_div0_analogfastrefclkout;
+	wire  [1:0]   wire_ch_clk_div0_analogrefclkout;
+	wire  wire_ch_clk_div0_analogrefclkpulse;
+	wire  [99:0]   wire_ch_clk_div0_dprioout;
+	wire  [599:0]   wire_cent_unit0_cmudividerdprioout;
+	wire  [1799:0]   wire_cent_unit0_cmuplldprioout;
+	wire  wire_cent_unit0_dpriodisableout;
+	wire  wire_cent_unit0_dprioout;
+	wire  [1:0]   wire_cent_unit0_pllpowerdn;
+	wire  [1:0]   wire_cent_unit0_pllresetout;
+	wire  wire_cent_unit0_quadresetout;
+	wire  [5:0]   wire_cent_unit0_rxanalogresetout;
+	wire  [5:0]   wire_cent_unit0_rxcrupowerdown;
+	wire  [5:0]   wire_cent_unit0_rxcruresetout;
+	wire  [3:0]   wire_cent_unit0_rxdigitalresetout;
+	wire  [5:0]   wire_cent_unit0_rxibpowerdown;
+	wire  [1599:0]   wire_cent_unit0_rxpcsdprioout;
+	wire  [1799:0]   wire_cent_unit0_rxpmadprioout;
+	wire  [5:0]   wire_cent_unit0_txanalogresetout;
+	wire  [3:0]   wire_cent_unit0_txctrlout;
+	wire  [31:0]   wire_cent_unit0_txdataout;
+	wire  [5:0]   wire_cent_unit0_txdetectrxpowerdown;
+	wire  [3:0]   wire_cent_unit0_txdigitalresetout;
+	wire  [5:0]   wire_cent_unit0_txobpowerdown;
+	wire  [599:0]   wire_cent_unit0_txpcsdprioout;
+	wire  [1799:0]   wire_cent_unit0_txpmadprioout;
+	wire  [3:0]   wire_rx_cdr_pll0_clk;
+	wire  [1:0]   wire_rx_cdr_pll0_dataout;
+	wire  [299:0]   wire_rx_cdr_pll0_dprioout;
+	wire  wire_rx_cdr_pll0_locked;
+	wire  wire_rx_cdr_pll0_pfdrefclkout;
+	wire  [3:0]   wire_tx_pll0_clk;
+	wire  [299:0]   wire_tx_pll0_dprioout;
+	wire  wire_tx_pll0_locked;
+	wire  wire_receive_pcs0_cdrctrllocktorefclkout;
+	wire  [3:0]   wire_receive_pcs0_ctrldetect;
+	wire  [39:0]   wire_receive_pcs0_dataout;
+	wire  [3:0]   wire_receive_pcs0_disperr;
+	wire  [399:0]   wire_receive_pcs0_dprioout;
+	wire  [3:0]   wire_receive_pcs0_errdetect;
+	wire  [3:0]   wire_receive_pcs0_patterndetect;
+	wire  wire_receive_pcs0_rlv;
+	wire  [3:0]   wire_receive_pcs0_rmfifodatadeleted;
+	wire  [3:0]   wire_receive_pcs0_rmfifodatainserted;
+	wire  [3:0]   wire_receive_pcs0_runningdisp;
+	wire  wire_receive_pcs0_signaldetect;
+	wire  [3:0]   wire_receive_pcs0_syncstatus;
+	wire  [7:0]   wire_receive_pma0_analogtestbus;
+	wire  wire_receive_pma0_clockout;
+	wire  wire_receive_pma0_dataout;
+	wire  [299:0]   wire_receive_pma0_dprioout;
+	wire  wire_receive_pma0_locktorefout;
+	wire  [63:0]   wire_receive_pma0_recoverdataout;
+	wire  wire_receive_pma0_signaldetect;
+	wire  wire_transmit_pcs0_clkout;
+	wire  [19:0]   wire_transmit_pcs0_dataout;
+	wire  [149:0]   wire_transmit_pcs0_dprioout;
+	wire  wire_transmit_pcs0_forceelecidleout;
+	wire  wire_transmit_pcs0_txdetectrx;
+	wire  wire_transmit_pma0_clockout;
+	wire  wire_transmit_pma0_dataout;
+	wire  [299:0]   wire_transmit_pma0_dprioout;
+	wire  wire_transmit_pma0_seriallpbkout;
+	wire  [1:0]  analogfastrefclkout;
+	wire  [1:0]  analogrefclkout;
+	wire  [0:0]  analogrefclkpulse;
+	wire cal_blk_powerdown;
+	wire  [599:0]  cent_unit_cmudividerdprioout;
+	wire  [1799:0]  cent_unit_cmuplldprioout;
+	wire  [1:0]  cent_unit_pllpowerdn;
+	wire  [1:0]  cent_unit_pllresetout;
+	wire  [0:0]  cent_unit_quadresetout;
+	wire  [5:0]  cent_unit_rxcrupowerdn;
+	wire  [5:0]  cent_unit_rxibpowerdn;
+	wire  [1599:0]  cent_unit_rxpcsdprioin;
+	wire  [1599:0]  cent_unit_rxpcsdprioout;
+	wire  [1799:0]  cent_unit_rxpmadprioin;
+	wire  [1799:0]  cent_unit_rxpmadprioout;
+	wire  [1199:0]  cent_unit_tx_dprioin;
+	wire  [31:0]  cent_unit_tx_xgmdataout;
+	wire  [3:0]  cent_unit_txctrlout;
+	wire  [5:0]  cent_unit_txdetectrxpowerdn;
+	wire  [599:0]  cent_unit_txdprioout;
+	wire  [5:0]  cent_unit_txobpowerdn;
+	wire  [1799:0]  cent_unit_txpmadprioin;
+	wire  [1799:0]  cent_unit_txpmadprioout;
+	wire  [599:0]  clk_div_cmudividerdprioin;
+	wire  [5:0]  fixedclk_div_in;
+	wire  [0:0]  fixedclk_enable;
+	wire  [5:0]  fixedclk_in;
+	wire  [0:0]  fixedclk_sel;
+	wire  [5:0]  fixedclk_to_cmu;
+	wire  [0:0]  nonusertocmu_out;
+	wire  [9:0]  pll0_clkin;
+	wire  [299:0]  pll0_dprioin;
+	wire  [299:0]  pll0_dprioout;
+	wire  [3:0]  pll0_out;
+	wire  [1:0]  pll_ch_dataout_wire;
+	wire  [299:0]  pll_ch_dprioout;
+	wire  [1799:0]  pll_cmuplldprioout;
+	wire  [0:0]  pll_inclk_wire;
+	wire [0:0]  pll_powerdown;
+	wire  [1:0]  pllpowerdn_in;
+	wire  [1:0]  pllreset_in;
+	wire  [0:0]  reconfig_togxb_busy;
+	wire  [0:0]  reconfig_togxb_disable;
+	wire  [0:0]  reconfig_togxb_in;
+	wire  [0:0]  reconfig_togxb_load;
+	wire  [1:0]  refclkdividerdprioin;
+	wire  [5:0]  rx_analogreset_in;
+	wire  [5:0]  rx_analogreset_out;
+	wire  [0:0]  rx_coreclk_in;
+	wire  [9:0]  rx_cruclk_in;
+	wire  [3:0]  rx_deserclock_in;
+	wire  [3:0]  rx_digitalreset_in;
+	wire  [3:0]  rx_digitalreset_out;
+	wire [0:0]  rx_enapatternalign;
+	wire [0:0]  rx_locktodata;
+	wire  [0:0]  rx_locktodata_wire;
+	wire [0:0]  rx_locktorefclk;
+	wire  [0:0]  rx_locktorefclk_wire;
+	wire  [7:0]  rx_out_wire;
+	wire  [1599:0]  rx_pcsdprioin_wire;
+	wire  [1599:0]  rx_pcsdprioout;
+	wire [0:0]  rx_phfifordenable;
+	wire [0:0]  rx_phfiforeset;
+	wire [0:0]  rx_phfifowrdisable;
+	wire  [0:0]  rx_pldcruclk_in;
+	wire  [3:0]  rx_pll_clkout;
+	wire  [0:0]  rx_pll_pfdrefclkout_wire;
+	wire  [0:0]  rx_plllocked_wire;
+	wire  [16:0]  rx_pma_analogtestbus;
+	wire  [0:0]  rx_pma_clockout;
+	wire  [0:0]  rx_pma_dataout;
+	wire  [0:0]  rx_pma_locktorefout;
+	wire  [19:0]  rx_pma_recoverdataout_wire;
+	wire  [1799:0]  rx_pmadprioin_wire;
+	wire  [1799:0]  rx_pmadprioout;
+	wire [0:0]  rx_powerdown;
+	wire  [5:0]  rx_powerdown_in;
+	wire [0:0]  rx_prbscidenable;
+	wire [0:0]  rx_rmfiforeset;
+	wire  [5:0]  rx_rxcruresetout;
+	wire  [0:0]  rx_signaldetect_wire;
+	wire  [1799:0]  rxpll_dprioin;
+	wire  [5:0]  tx_analogreset_out;
+	wire  [0:0]  tx_clkout_int_wire;
+	wire  [0:0]  tx_core_clkout_wire;
+	wire  [0:0]  tx_coreclk_in;
+	wire  [7:0]  tx_datain_wire;
+	wire  [19:0]  tx_dataout_pcs_to_pma;
+	wire  [3:0]  tx_digitalreset_in;
+	wire  [3:0]  tx_digitalreset_out;
+	wire [0:0]  tx_dispval;
+	wire  [1199:0]  tx_dprioin_wire;
+	wire  [0:0]  tx_forcedisp_wire;
+	wire [0:0]  tx_invpolarity;
+	wire  [0:0]  tx_localrefclk;
+	wire [0:0]  tx_phfiforeset;
+	wire  [1799:0]  tx_pmadprioin_wire;
+	wire  [1799:0]  tx_pmadprioout;
+	wire  [0:0]  tx_serialloopbackout;
+	wire  [599:0]  tx_txdprioout;
+	wire  [0:0]  txdetectrxout;
+	wire  [0:0]  w_cent_unit_dpriodisableout1w;
+
+	// synopsys translate_off
+	initial
+		fixedclk_div0quad0c = 0;
+	// synopsys translate_on
+	always @ ( posedge wire_fixedclk_div0quad0c_clk)
+		  fixedclk_div0quad0c <= (~ fixedclk_div_in[0]);
+	assign
+		wire_fixedclk_div0quad0c_clk = fixedclk_in[0];
+	// synopsys translate_off
+	initial
+		fixedclk_div1quad0c = 0;
+	// synopsys translate_on
+	always @ ( posedge wire_fixedclk_div1quad0c_clk)
+		  fixedclk_div1quad0c <= (~ fixedclk_div_in[1]);
+	assign
+		wire_fixedclk_div1quad0c_clk = fixedclk_in[1];
+	// synopsys translate_off
+	initial
+		fixedclk_div2quad0c = 0;
+	// synopsys translate_on
+	always @ ( posedge wire_fixedclk_div2quad0c_clk)
+		  fixedclk_div2quad0c <= (~ fixedclk_div_in[2]);
+	assign
+		wire_fixedclk_div2quad0c_clk = fixedclk_in[2];
+	// synopsys translate_off
+	initial
+		fixedclk_div3quad0c = 0;
+	// synopsys translate_on
+	always @ ( posedge wire_fixedclk_div3quad0c_clk)
+		  fixedclk_div3quad0c <= (~ fixedclk_div_in[3]);
+	assign
+		wire_fixedclk_div3quad0c_clk = fixedclk_in[3];
+	// synopsys translate_off
+	initial
+		fixedclk_div4quad0c = 0;
+	// synopsys translate_on
+	always @ ( posedge wire_fixedclk_div4quad0c_clk)
+		  fixedclk_div4quad0c <= (~ fixedclk_div_in[4]);
+	assign
+		wire_fixedclk_div4quad0c_clk = fixedclk_in[4];
+	// synopsys translate_off
+	initial
+		fixedclk_div5quad0c = 0;
+	// synopsys translate_on
+	always @ ( posedge wire_fixedclk_div5quad0c_clk)
+		  fixedclk_div5quad0c <= (~ fixedclk_div_in[5]);
+	assign
+		wire_fixedclk_div5quad0c_clk = fixedclk_in[5];
+	// synopsys translate_off
+	initial
+		reconfig_togxb_busy_reg = 0;
+	// synopsys translate_on
+	always @ ( negedge fixedclk)
+		  reconfig_togxb_busy_reg <= {reconfig_togxb_busy_reg[0], reconfig_togxb_busy};
+	stratixiv_hssi_calibration_block   cal_blk0
+	( 
+	.calibrationstatus(),
+	.clk(cal_blk_clk),
+	.enabletestbus(1'b1),
+	.nonusertocmu(wire_cal_blk0_nonusertocmu),
+	.powerdn(cal_blk_powerdown)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.testctrl(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	stratixiv_hssi_clock_divider   ch_clk_div0
+	( 
+	.analogfastrefclkout(wire_ch_clk_div0_analogfastrefclkout),
+	.analogfastrefclkoutshifted(),
+	.analogrefclkout(wire_ch_clk_div0_analogrefclkout),
+	.analogrefclkoutshifted(),
+	.analogrefclkpulse(wire_ch_clk_div0_analogrefclkpulse),
+	.analogrefclkpulseshifted(),
+	.clk0in(pll0_out[3:0]),
+	.coreclkout(),
+	.dpriodisable(w_cent_unit_dpriodisableout1w[0]),
+	.dprioin(cent_unit_cmudividerdprioout[99:0]),
+	.dprioout(wire_ch_clk_div0_dprioout),
+	.quadreset(cent_unit_quadresetout[0]),
+	.rateswitchbaseclock(),
+	.rateswitchdone(),
+	.rateswitchout(),
+	.refclkout()
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.clk1in({4{1'b0}}),
+	.powerdn(1'b0),
+	.rateswitch(1'b0),
+	.rateswitchbaseclkin({2{1'b0}}),
+	.rateswitchdonein({2{1'b0}}),
+	.refclkdig(1'b0),
+	.refclkin({2{1'b0}}),
+	.vcobypassin(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		ch_clk_div0.channel_num = ((starting_channel_number + 0) % 4),
+		ch_clk_div0.divide_by = 5,
+		ch_clk_div0.divider_type = "CHANNEL_REGULAR",
+		ch_clk_div0.dprio_config_mode = 6'h01,
+		ch_clk_div0.effective_data_rate = "1250 Mbps",
+		ch_clk_div0.enable_dynamic_divider = "false",
+		ch_clk_div0.enable_refclk_out = "false",
+		ch_clk_div0.inclk_select = 0,
+		ch_clk_div0.logical_channel_address = (starting_channel_number + 0),
+		ch_clk_div0.pre_divide_by = 1,
+		ch_clk_div0.select_local_rate_switch_done = "false",
+		ch_clk_div0.sim_analogfastrefclkout_phase_shift = 0,
+		ch_clk_div0.sim_analogrefclkout_phase_shift = 0,
+		ch_clk_div0.sim_coreclkout_phase_shift = 0,
+		ch_clk_div0.sim_refclkout_phase_shift = 0,
+		ch_clk_div0.use_coreclk_out_post_divider = "false",
+		ch_clk_div0.use_refclk_post_divider = "false",
+		ch_clk_div0.use_vco_bypass = "false",
+		ch_clk_div0.lpm_type = "stratixiv_hssi_clock_divider";
+	stratixiv_hssi_cmu   cent_unit0
+	( 
+	.adet({4{1'b0}}),
+	.alignstatus(),
+	.autospdx4configsel(),
+	.autospdx4rateswitchout(),
+	.autospdx4spdchg(),
+	.clkdivpowerdn(),
+	.cmudividerdprioin(clk_div_cmudividerdprioin[599:0]),
+	.cmudividerdprioout(wire_cent_unit0_cmudividerdprioout),
+	.cmuplldprioin(pll_cmuplldprioout[1799:0]),
+	.cmuplldprioout(wire_cent_unit0_cmuplldprioout),
+	.digitaltestout(),
+	.dpclk(reconfig_clk),
+	.dpriodisable(reconfig_togxb_disable),
+	.dpriodisableout(wire_cent_unit0_dpriodisableout),
+	.dprioin(reconfig_togxb_in),
+	.dprioload(reconfig_togxb_load),
+	.dpriooe(),
+	.dprioout(wire_cent_unit0_dprioout),
+	.enabledeskew(),
+	.extra10gout(),
+	.fiforesetrd(),
+	.fixedclk({{5{1'b0}}, fixedclk_to_cmu[0]}),
+	.lccmutestbus(),
+	.nonuserfromcal(nonusertocmu_out[0]),
+	.phfifiox4ptrsreset(),
+	.pllpowerdn(wire_cent_unit0_pllpowerdn),
+	.pllresetout(wire_cent_unit0_pllresetout),
+	.quadreset(gxb_powerdown[0]),
+	.quadresetout(wire_cent_unit0_quadresetout),
+	.rdalign({4{1'b0}}),
+	.rdenablesync(1'b0),
+	.recovclk(1'b0),
+	.refclkdividerdprioin(refclkdividerdprioin[1:0]),
+	.refclkdividerdprioout(),
+	.rxadcepowerdown(),
+	.rxadceresetout(),
+	.rxanalogreset({{2{1'b0}}, rx_analogreset_in[3:0]}),
+	.rxanalogresetout(wire_cent_unit0_rxanalogresetout),
+	.rxcrupowerdown(wire_cent_unit0_rxcrupowerdown),
+	.rxcruresetout(wire_cent_unit0_rxcruresetout),
+	.rxctrl({4{1'b0}}),
+	.rxctrlout(),
+	.rxdatain({32{1'b0}}),
+	.rxdataout(),
+	.rxdatavalid({4{1'b0}}),
+	.rxdigitalreset(rx_digitalreset_in[3:0]),
+	.rxdigitalresetout(wire_cent_unit0_rxdigitalresetout),
+	.rxibpowerdown(wire_cent_unit0_rxibpowerdown),
+	.rxpcsdprioin(cent_unit_rxpcsdprioin[1599:0]),
+	.rxpcsdprioout(wire_cent_unit0_rxpcsdprioout),
+	.rxphfifox4byteselout(),
+	.rxphfifox4rdenableout(),
+	.rxphfifox4wrclkout(),
+	.rxphfifox4wrenableout(),
+	.rxpmadprioin(cent_unit_rxpmadprioin[1799:0]),
+	.rxpmadprioout(wire_cent_unit0_rxpmadprioout),
+	.rxpowerdown({{2{1'b0}}, rx_powerdown_in[3:0]}),
+	.rxrunningdisp({4{1'b0}}),
+	.scanout(),
+	.syncstatus({4{1'b0}}),
+	.testout(),
+	.txanalogresetout(wire_cent_unit0_txanalogresetout),
+	.txctrl({4{1'b0}}),
+	.txctrlout(wire_cent_unit0_txctrlout),
+	.txdatain({32{1'b0}}),
+	.txdataout(wire_cent_unit0_txdataout),
+	.txdetectrxpowerdown(wire_cent_unit0_txdetectrxpowerdown),
+	.txdigitalreset(tx_digitalreset_in[3:0]),
+	.txdigitalresetout(wire_cent_unit0_txdigitalresetout),
+	.txdividerpowerdown(),
+	.txobpowerdown(wire_cent_unit0_txobpowerdown),
+	.txpcsdprioin(cent_unit_tx_dprioin[599:0]),
+	.txpcsdprioout(wire_cent_unit0_txpcsdprioout),
+	.txphfifox4byteselout(),
+	.txphfifox4rdclkout(),
+	.txphfifox4rdenableout(),
+	.txphfifox4wrenableout(),
+	.txpllreset({{1{1'b0}}, pll_powerdown[0]}),
+	.txpmadprioin(cent_unit_txpmadprioin[1799:0]),
+	.txpmadprioout(wire_cent_unit0_txpmadprioout)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.extra10gin({7{1'b0}}),
+	.lccmurtestbussel({3{1'b0}}),
+	.pmacramtest(1'b0),
+	.rateswitch(1'b0),
+	.rateswitchdonein(1'b0),
+	.rxclk(1'b0),
+	.rxcoreclk(1'b0),
+	.rxphfifordenable(1'b1),
+	.rxphfiforeset(1'b0),
+	.rxphfifowrdisable(1'b0),
+	.scanclk(1'b0),
+	.scanin({23{1'b0}}),
+	.scanmode(1'b0),
+	.scanshift(1'b0),
+	.testin({10000{1'b0}}),
+	.txclk(1'b0),
+	.txcoreclk(1'b0),
+	.txphfiforddisable(1'b0),
+	.txphfiforeset(1'b0),
+	.txphfifowrenable(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		cent_unit0.auto_spd_deassert_ph_fifo_rst_count = 8,
+		cent_unit0.auto_spd_phystatus_notify_count = 0,
+		cent_unit0.bonded_quad_mode = "none",
+		cent_unit0.devaddr = ((((starting_channel_number / 4) + 0) % 32) + 1),
+		cent_unit0.in_xaui_mode = "false",
+		cent_unit0.offset_all_errors_align = "false",
+		cent_unit0.pipe_auto_speed_nego_enable = "false",
+		cent_unit0.pipe_freq_scale_mode = "Frequency",
+		cent_unit0.pma_done_count = 249950,
+		cent_unit0.portaddr = (((starting_channel_number + 0) / 128) + 1),
+		cent_unit0.rx0_auto_spd_self_switch_enable = "false",
+		cent_unit0.rx0_channel_bonding = "none",
+		cent_unit0.rx0_clk1_mux_select = "recovered clock",
+		cent_unit0.rx0_clk2_mux_select = "local reference clock",
+		cent_unit0.rx0_ph_fifo_reg_mode = "false",
+		cent_unit0.rx0_rd_clk_mux_select = "core clock",
+		cent_unit0.rx0_recovered_clk_mux_select = "recovered clock",
+		cent_unit0.rx0_reset_clock_output_during_digital_reset = "false",
+		cent_unit0.rx0_use_double_data_mode = "false",
+		cent_unit0.tx0_auto_spd_self_switch_enable = "false",
+		cent_unit0.tx0_channel_bonding = "none",
+		cent_unit0.tx0_ph_fifo_reg_mode = "false",
+		cent_unit0.tx0_rd_clk_mux_select = "cmu_clock_divider",
+		cent_unit0.tx0_use_double_data_mode = "false",
+		cent_unit0.tx0_wr_clk_mux_select = "core_clk",
+		cent_unit0.use_deskew_fifo = "false",
+		cent_unit0.vcceh_voltage = "Auto",
+		cent_unit0.lpm_type = "stratixiv_hssi_cmu";
+	stratixiv_hssi_pll   rx_cdr_pll0
+	( 
+	.areset(rx_rxcruresetout[0]),
+	.clk(wire_rx_cdr_pll0_clk),
+	.datain(rx_pma_dataout[0]),
+	.dataout(wire_rx_cdr_pll0_dataout),
+	.dpriodisable(w_cent_unit_dpriodisableout1w[0]),
+	.dprioin(rxpll_dprioin[299:0]),
+	.dprioout(wire_rx_cdr_pll0_dprioout),
+	.freqlocked(),
+	.inclk({rx_cruclk_in[9:0]}),
+	.locked(wire_rx_cdr_pll0_locked),
+	.locktorefclk(rx_pma_locktorefout[0]),
+	.pfdfbclkout(),
+	.pfdrefclkout(wire_rx_cdr_pll0_pfdrefclkout),
+	.powerdown(cent_unit_rxcrupowerdn[0]),
+	.vcobypassout()
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.earlyeios(1'b0),
+	.extra10gin({6{1'b0}}),
+	.pfdfbclk(1'b0),
+	.rateswitch(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		rx_cdr_pll0.bandwidth_type = "Medium",
+		rx_cdr_pll0.channel_num = ((starting_channel_number + 0) % 4),
+		rx_cdr_pll0.dprio_config_mode = 6'h00,
+		rx_cdr_pll0.effective_data_rate = "1250 Mbps",
+		rx_cdr_pll0.enable_dynamic_divider = "false",
+		rx_cdr_pll0.inclk0_input_period = 8000,
+		rx_cdr_pll0.input_clock_frequency = "125.0 MHz",
+		rx_cdr_pll0.m = 5,
+		rx_cdr_pll0.n = 1,
+		rx_cdr_pll0.pfd_clk_select = 0,
+		rx_cdr_pll0.pll_type = "RX CDR",
+		rx_cdr_pll0.use_refclk_pin = "false",
+		rx_cdr_pll0.vco_post_scale = 4,
+		rx_cdr_pll0.lpm_type = "stratixiv_hssi_pll";
+	stratixiv_hssi_pll   tx_pll0
+	( 
+	.areset(pllreset_in[0]),
+	.clk(wire_tx_pll0_clk),
+	.dataout(),
+	.dpriodisable(w_cent_unit_dpriodisableout1w[0]),
+	.dprioin(pll0_dprioin[299:0]),
+	.dprioout(wire_tx_pll0_dprioout),
+	.freqlocked(),
+	.inclk({pll0_clkin[9:0]}),
+	.locked(wire_tx_pll0_locked),
+	.pfdfbclkout(),
+	.pfdrefclkout(),
+	.powerdown(pllpowerdn_in[0]),
+	.vcobypassout()
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.datain(1'b0),
+	.earlyeios(1'b0),
+	.extra10gin({6{1'b0}}),
+	.locktorefclk(1'b1),
+	.pfdfbclk(1'b0),
+	.rateswitch(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		tx_pll0.bandwidth_type = "High",
+		tx_pll0.channel_num = 4,
+		tx_pll0.dprio_config_mode = 6'h00,
+		tx_pll0.inclk0_input_period = 8000,
+		tx_pll0.input_clock_frequency = "125.0 MHz",
+		tx_pll0.logical_tx_pll_number = 0,
+		tx_pll0.m = 5,
+		tx_pll0.n = 1,
+		tx_pll0.pfd_clk_select = 0,
+		tx_pll0.pfd_fb_select = "internal",
+		tx_pll0.pll_type = "CMU",
+		tx_pll0.use_refclk_pin = "false",
+		tx_pll0.vco_post_scale = 4,
+		tx_pll0.lpm_type = "stratixiv_hssi_pll";
+	stratixiv_hssi_rx_pcs   receive_pcs0
+	( 
+	.a1a2size(1'b0),
+	.a1a2sizeout(),
+	.a1detect(),
+	.a2detect(),
+	.adetectdeskew(),
+	.alignstatus(1'b0),
+	.alignstatussync(1'b0),
+	.alignstatussyncout(),
+	.autospdrateswitchout(),
+	.autospdspdchgout(),
+	.bistdone(),
+	.bisterr(),
+	.bitslipboundaryselectout(),
+	.byteorderalignstatus(),
+	.cdrctrlearlyeios(),
+	.cdrctrllocktorefcl((reconfig_togxb_busy | rx_locktorefclk[0])),
+	.cdrctrllocktorefclkout(wire_receive_pcs0_cdrctrllocktorefclkout),
+	.clkout(),
+	.coreclk(rx_coreclk_in[0]),
+	.coreclkout(),
+	.ctrldetect(wire_receive_pcs0_ctrldetect),
+	.datain(rx_pma_recoverdataout_wire[19:0]),
+	.dataout(wire_receive_pcs0_dataout),
+	.dataoutfull(),
+	.digitalreset(rx_digitalreset_out[0]),
+	.digitaltestout(),
+	.disablefifordin(1'b0),
+	.disablefifordout(),
+	.disablefifowrin(1'b0),
+	.disablefifowrout(),
+	.disperr(wire_receive_pcs0_disperr),
+	.dpriodisable(w_cent_unit_dpriodisableout1w[0]),
+	.dprioin(rx_pcsdprioin_wire[399:0]),
+	.dprioout(wire_receive_pcs0_dprioout),
+	.enabledeskew(1'b0),
+	.enabyteord(1'b0),
+	.enapatternalign(rx_enapatternalign[0]),
+	.errdetect(wire_receive_pcs0_errdetect),
+	.fifordin(1'b0),
+	.fifordout(),
+	.fiforesetrd(1'b0),
+	.hipdataout(),
+	.hipdatavalid(),
+	.hipelecidle(),
+	.hipphydonestatus(),
+	.hipstatus(),
+	.invpol(1'b0),
+	.iqpphfifobyteselout(),
+	.iqpphfifoptrsresetout(),
+	.iqpphfifordenableout(),
+	.iqpphfifowrclkout(),
+	.iqpphfifowrenableout(),
+	.k1detect(),
+	.k2detect(),
+	.localrefclk(tx_localrefclk[0]),
+	.masterclk(1'b0),
+	.parallelfdbk({20{1'b0}}),
+	.patterndetect(wire_receive_pcs0_patterndetect),
+	.phfifobyteselout(),
+	.phfifobyteserdisableout(),
+	.phfifooverflow(),
+	.phfifoptrsresetout(),
+	.phfifordenable(rx_phfifordenable[0]),
+	.phfifordenableout(),
+	.phfiforeset(rx_phfiforeset[0]),
+	.phfiforesetout(),
+	.phfifounderflow(),
+	.phfifowrclkout(),
+	.phfifowrdisable(rx_phfifowrdisable[0]),
+	.phfifowrdisableout(),
+	.phfifowrenableout(),
+	.pipebufferstat(),
+	.pipedatavalid(),
+	.pipeelecidle(),
+	.pipephydonestatus(),
+	.pipepowerdown({2{1'b0}}),
+	.pipepowerstate({4{1'b0}}),
+	.pipestatetransdoneout(),
+	.pipestatus(),
+	.prbscidenable(rx_prbscidenable[0]),
+	.quadreset(cent_unit_quadresetout[0]),
+	.rateswitchout(),
+	.rdalign(),
+	.recoveredclk(rx_pma_clockout[0]),
+	.revbitorderwa(1'b0),
+	.revbyteorderwa(1'b0),
+	.revparallelfdbkdata(),
+	.rlv(wire_receive_pcs0_rlv),
+	.rmfifoalmostempty(),
+	.rmfifoalmostfull(),
+	.rmfifodatadeleted(wire_receive_pcs0_rmfifodatadeleted),
+	.rmfifodatainserted(wire_receive_pcs0_rmfifodatainserted),
+	.rmfifoempty(),
+	.rmfifofull(),
+	.rmfifordena(1'b0),
+	.rmfiforeset(rx_rmfiforeset[0]),
+	.rmfifowrena(1'b0),
+	.runningdisp(wire_receive_pcs0_runningdisp),
+	.rxdetectvalid(1'b0),
+	.rxfound({2{1'b0}}),
+	.signaldetect(wire_receive_pcs0_signaldetect),
+	.signaldetected(rx_signaldetect_wire[0]),
+	.syncstatus(wire_receive_pcs0_syncstatus),
+	.syncstatusdeskew(),
+	.xauidelcondmetout(),
+	.xauififoovrout(),
+	.xauiinsertincompleteout(),
+	.xauilatencycompout(),
+	.xgmctrldet(),
+	.xgmctrlin(1'b0),
+	.xgmdatain({8{1'b0}}),
+	.xgmdataout(),
+	.xgmdatavalid(),
+	.xgmrunningdisp()
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.autospdxnconfigsel({3{1'b0}}),
+	.autospdxnspdchg({3{1'b0}}),
+	.bitslip(1'b0),
+	.elecidleinfersel({3{1'b0}}),
+	.grayelecidleinferselfromtx({3{1'b0}}),
+	.hip8b10binvpolarity(1'b0),
+	.hipelecidleinfersel({3{1'b0}}),
+	.hippowerdown({2{1'b0}}),
+	.hiprateswitch(1'b0),
+	.iqpautospdxnspgchg({2{1'b0}}),
+	.iqpphfifoxnbytesel({2{1'b0}}),
+	.iqpphfifoxnptrsreset({2{1'b0}}),
+	.iqpphfifoxnrdenable({2{1'b0}}),
+	.iqpphfifoxnwrclk({2{1'b0}}),
+	.iqpphfifoxnwrenable({2{1'b0}}),
+	.phfifox4bytesel(1'b0),
+	.phfifox4rdenable(1'b0),
+	.phfifox4wrclk(1'b0),
+	.phfifox4wrenable(1'b0),
+	.phfifox8bytesel(1'b0),
+	.phfifox8rdenable(1'b0),
+	.phfifox8wrclk(1'b0),
+	.phfifox8wrenable(1'b0),
+	.phfifoxnbytesel({3{1'b0}}),
+	.phfifoxnptrsreset({3{1'b0}}),
+	.phfifoxnrdenable({3{1'b0}}),
+	.phfifoxnwrclk({3{1'b0}}),
+	.phfifoxnwrenable({3{1'b0}}),
+	.pipe8b10binvpolarity(1'b0),
+	.pipeenrevparallellpbkfromtx(1'b0),
+	.pmatestbusin({8{1'b0}}),
+	.powerdn({2{1'b0}}),
+	.ppmdetectdividedclk(1'b0),
+	.ppmdetectrefclk(1'b0),
+	.rateswitch(1'b0),
+	.rateswitchisdone(1'b0),
+	.rateswitchxndone(1'b0),
+	.refclk(1'b0),
+	.rxelecidlerateswitch(1'b0),
+	.xauidelcondmet(1'b0),
+	.xauififoovr(1'b0),
+	.xauiinsertincomplete(1'b0),
+	.xauilatencycomp(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		receive_pcs0.align_pattern = "0101111100",
+		receive_pcs0.align_pattern_length = 10,
+		receive_pcs0.align_to_deskew_pattern_pos_disp_only = "false",
+		receive_pcs0.allow_align_polarity_inversion = "false",
+		receive_pcs0.allow_pipe_polarity_inversion = "false",
+		receive_pcs0.auto_spd_deassert_ph_fifo_rst_count = 8,
+		receive_pcs0.auto_spd_phystatus_notify_count = 0,
+		receive_pcs0.auto_spd_self_switch_enable = "false",
+		receive_pcs0.bit_slip_enable = "false",
+		receive_pcs0.byte_order_double_data_mode_mask_enable = "false",
+		receive_pcs0.byte_order_mode = "none",
+		receive_pcs0.byte_order_pad_pattern = "0",
+		receive_pcs0.byte_order_pattern = "0",
+		receive_pcs0.byte_order_pld_ctrl_enable = "false",
+		receive_pcs0.cdrctrl_bypass_ppm_detector_cycle = 1000,
+		receive_pcs0.cdrctrl_enable = "false",
+		receive_pcs0.cdrctrl_mask_cycle = 800,
+		receive_pcs0.cdrctrl_min_lock_to_ref_cycle = 63,
+		receive_pcs0.cdrctrl_rxvalid_mask = "false",
+		receive_pcs0.channel_bonding = "none",
+		receive_pcs0.channel_number = ((starting_channel_number + 0) % 4),
+		receive_pcs0.channel_width = 8,
+		receive_pcs0.clk1_mux_select = "recovered clock",
+		receive_pcs0.clk2_mux_select = "local reference clock",
+		receive_pcs0.core_clock_0ppm = "false",
+		receive_pcs0.datapath_low_latency_mode = "false",
+		receive_pcs0.datapath_protocol = "basic",
+		receive_pcs0.dec_8b_10b_compatibility_mode = "true",
+		receive_pcs0.dec_8b_10b_mode = "normal",
+		receive_pcs0.dec_8b_10b_polarity_inv_enable = "false",
+		receive_pcs0.deskew_pattern = "0",
+		receive_pcs0.disable_auto_idle_insertion = "true",
+		receive_pcs0.disable_running_disp_in_word_align = "false",
+		receive_pcs0.disallow_kchar_after_pattern_ordered_set = "false",
+		receive_pcs0.dprio_config_mode = 6'h01,
+		receive_pcs0.elec_idle_infer_enable = "false",
+		receive_pcs0.elec_idle_num_com_detect = 3,
+		receive_pcs0.enable_bit_reversal = "false",
+		receive_pcs0.enable_deep_align = "false",
+		receive_pcs0.enable_deep_align_byte_swap = "false",
+		receive_pcs0.enable_self_test_mode = "false",
+		receive_pcs0.enable_true_complement_match_in_word_align = "false",
+		receive_pcs0.force_signal_detect_dig = "true",
+		receive_pcs0.hip_enable = "false",
+		receive_pcs0.infiniband_invalid_code = 0,
+		receive_pcs0.insert_pad_on_underflow = "false",
+		receive_pcs0.logical_channel_address = (starting_channel_number + 0),
+		receive_pcs0.num_align_code_groups_in_ordered_set = 1,
+		receive_pcs0.num_align_cons_good_data = 4,
+		receive_pcs0.num_align_cons_pat = 3,
+		receive_pcs0.num_align_loss_sync_error = 4,
+		receive_pcs0.ph_fifo_low_latency_enable = "true",
+		receive_pcs0.ph_fifo_reg_mode = "false",
+		receive_pcs0.ph_fifo_xn_mapping0 = "none",
+		receive_pcs0.ph_fifo_xn_mapping1 = "none",
+		receive_pcs0.ph_fifo_xn_mapping2 = "none",
+		receive_pcs0.ph_fifo_xn_select = 1,
+		receive_pcs0.pipe_auto_speed_nego_enable = "false",
+		receive_pcs0.pipe_freq_scale_mode = "Frequency",
+		receive_pcs0.pma_done_count = 249950,
+		receive_pcs0.protocol_hint = "gige",
+		receive_pcs0.rate_match_almost_empty_threshold = 11,
+		receive_pcs0.rate_match_almost_full_threshold = 13,
+		receive_pcs0.rate_match_back_to_back = "true",
+		receive_pcs0.rate_match_delete_threshold = 13,
+		receive_pcs0.rate_match_empty_threshold = 5,
+		receive_pcs0.rate_match_fifo_mode = "true",
+		receive_pcs0.rate_match_full_threshold = 20,
+		receive_pcs0.rate_match_insert_threshold = 11,
+		receive_pcs0.rate_match_ordered_set_based = "true",
+		receive_pcs0.rate_match_pattern1 = "10100010010101111100",
+		receive_pcs0.rate_match_pattern2 = "10101011011010000011",
+		receive_pcs0.rate_match_pattern_size = 20,
+		receive_pcs0.rate_match_reset_enable = "false",
+		receive_pcs0.rate_match_skip_set_based = "false",
+		receive_pcs0.rate_match_start_threshold = 7,
+		receive_pcs0.rd_clk_mux_select = "core clock",
+		receive_pcs0.recovered_clk_mux_select = "recovered clock",
+		receive_pcs0.run_length = 5,
+		receive_pcs0.run_length_enable = "true",
+		receive_pcs0.rx_detect_bypass = "false",
+		receive_pcs0.rx_phfifo_wait_cnt = 15,
+		receive_pcs0.rxstatus_error_report_mode = 0,
+		receive_pcs0.self_test_mode = "incremental",
+		receive_pcs0.use_alignment_state_machine = "true",
+		receive_pcs0.use_deserializer_double_data_mode = "false",
+		receive_pcs0.use_deskew_fifo = "false",
+		receive_pcs0.use_double_data_mode = "false",
+		receive_pcs0.use_parallel_loopback = "false",
+		receive_pcs0.use_rising_edge_triggered_pattern_align = "false",
+		receive_pcs0.lpm_type = "stratixiv_hssi_rx_pcs";
+	stratixiv_hssi_rx_pma   receive_pma0
+	( 
+	.adaptdone(),
+	.analogtestbus(wire_receive_pma0_analogtestbus),
+	.clockout(wire_receive_pma0_clockout),
+	.datain(rx_datain[0]),
+	.dataout(wire_receive_pma0_dataout),
+	.dataoutfull(),
+	.deserclock(rx_deserclock_in[3:0]),
+	.dpriodisable(w_cent_unit_dpriodisableout1w[0]),
+	.dprioin(rx_pmadprioin_wire[299:0]),
+	.dprioout(wire_receive_pma0_dprioout),
+	.freqlock(1'b0),
+	.ignorephslck(1'b0),
+	.locktodata(rx_locktodata_wire[0]),
+	.locktoref(rx_locktorefclk_wire[0]),
+	.locktorefout(wire_receive_pma0_locktorefout),
+	.offsetcancellationen(1'b0),
+	.plllocked(rx_plllocked_wire[0]),
+	.powerdn(cent_unit_rxibpowerdn[0]),
+	.ppmdetectclkrel(),
+	.ppmdetectrefclk(rx_pll_pfdrefclkout_wire[0]),
+	.recoverdatain(pll_ch_dataout_wire[1:0]),
+	.recoverdataout(wire_receive_pma0_recoverdataout),
+	.reverselpbkout(),
+	.revserialfdbkout(),
+	.rxpmareset(rx_analogreset_out[0]),
+	.seriallpbken(rx_seriallpbken[0]),
+	.seriallpbkin(tx_serialloopbackout[0]),
+	.signaldetect(wire_receive_pma0_signaldetect),
+	.testbussel(4'b0110)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.adaptcapture(1'b0),
+	.adcepowerdn(1'b0),
+	.adcereset(1'b0),
+	.adcestandby(1'b0),
+	.extra10gin({38{1'b0}}),
+	.ppmdetectdividedclk(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		receive_pma0.allow_serial_loopback = "true",
+		receive_pma0.channel_number = ((starting_channel_number + 0) % 4),
+		receive_pma0.channel_type = "auto",
+		receive_pma0.common_mode = "0.82V",
+		receive_pma0.deserialization_factor = 10,
+		receive_pma0.dprio_config_mode = 6'h01,
+		receive_pma0.enable_ltd = "false",
+		receive_pma0.enable_ltr = "false",
+		receive_pma0.eq_dc_gain = 0,
+		receive_pma0.eqa_ctrl = 0,
+		receive_pma0.eqb_ctrl = 0,
+		receive_pma0.eqc_ctrl = 0,
+		receive_pma0.eqd_ctrl = 0,
+		receive_pma0.eqv_ctrl = 0,
+		receive_pma0.force_signal_detect = "true",
+		receive_pma0.logical_channel_address = (starting_channel_number + 0),
+		receive_pma0.low_speed_test_select = 0,
+		receive_pma0.offset_cancellation = 1,
+		receive_pma0.ppmselect = 32,
+		receive_pma0.protocol_hint = "gige",
+		receive_pma0.send_direct_reverse_serial_loopback = "None",
+		receive_pma0.signal_detect_hysteresis_valid_threshold = 2,
+		receive_pma0.signal_detect_loss_threshold = 2,
+		receive_pma0.termination = "OCT 100 Ohms",
+		receive_pma0.use_deser_double_data_width = "false",
+		receive_pma0.use_pma_direct = "false",
+		receive_pma0.lpm_type = "stratixiv_hssi_rx_pma";
+	stratixiv_hssi_tx_pcs   transmit_pcs0
+	( 
+	.clkout(wire_transmit_pcs0_clkout),
+	.coreclk(tx_coreclk_in[0]),
+	.coreclkout(),
+	.ctrlenable({{3{1'b0}}, tx_ctrlenable[0]}),
+	.datain({{32{1'b0}}, tx_datain_wire[7:0]}),
+	.datainfull({44{1'b0}}),
+	.dataout(wire_transmit_pcs0_dataout),
+	.detectrxloop(1'b0),
+	.digitalreset(tx_digitalreset_out[0]),
+	.dispval({{3{1'b0}}, tx_dispval[0]}),
+	.dpriodisable(w_cent_unit_dpriodisableout1w[0]),
+	.dprioin(tx_dprioin_wire[149:0]),
+	.dprioout(wire_transmit_pcs0_dprioout),
+	.enrevparallellpbk(1'b0),
+	.forcedisp({{3{1'b0}}, tx_forcedisp_wire[0]}),
+	.forcedispcompliance(1'b0),
+	.forceelecidleout(wire_transmit_pcs0_forceelecidleout),
+	.grayelecidleinferselout(),
+	.hiptxclkout(),
+	.invpol(tx_invpolarity[0]),
+	.iqpphfifobyteselout(),
+	.iqpphfifordclkout(),
+	.iqpphfifordenableout(),
+	.iqpphfifowrenableout(),
+	.localrefclk(tx_localrefclk[0]),
+	.parallelfdbkout(),
+	.phfifobyteselout(),
+	.phfifooverflow(),
+	.phfifordclkout(),
+	.phfiforddisable(1'b0),
+	.phfiforddisableout(),
+	.phfifordenableout(),
+	.phfiforeset(tx_phfiforeset[0]),
+	.phfiforesetout(),
+	.phfifounderflow(),
+	.phfifowrenable(1'b1),
+	.phfifowrenableout(),
+	.pipeenrevparallellpbkout(),
+	.pipepowerdownout(),
+	.pipepowerstateout(),
+	.pipestatetransdone(1'b0),
+	.powerdn({2{1'b0}}),
+	.quadreset(cent_unit_quadresetout[0]),
+	.rateswitchout(),
+	.rdenablesync(),
+	.revparallelfdbk({20{1'b0}}),
+	.txdetectrx(wire_transmit_pcs0_txdetectrx),
+	.xgmctrl(cent_unit_txctrlout[0]),
+	.xgmctrlenable(),
+	.xgmdatain(cent_unit_tx_xgmdataout[7:0]),
+	.xgmdataout()
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.bitslipboundaryselect({5{1'b0}}),
+	.elecidleinfersel({3{1'b0}}),
+	.forceelecidle(1'b0),
+	.freezptr(1'b0),
+	.hipdatain({10{1'b0}}),
+	.hipdetectrxloop(1'b0),
+	.hipelecidleinfersel({3{1'b0}}),
+	.hipforceelecidle(1'b0),
+	.hippowerdn({2{1'b0}}),
+	.hiptxdeemph(1'b0),
+	.hiptxmargin({3{1'b0}}),
+	.iqpphfifoxnbytesel({2{1'b0}}),
+	.iqpphfifoxnrdclk({2{1'b0}}),
+	.iqpphfifoxnrdenable({2{1'b0}}),
+	.iqpphfifoxnwrenable({2{1'b0}}),
+	.phfifobyteserdisable(1'b0),
+	.phfifoptrsreset(1'b0),
+	.phfifox4bytesel(1'b0),
+	.phfifox4rdclk(1'b0),
+	.phfifox4rdenable(1'b0),
+	.phfifox4wrenable(1'b0),
+	.phfifoxnbottombytesel(1'b0),
+	.phfifoxnbottomrdclk(1'b0),
+	.phfifoxnbottomrdenable(1'b0),
+	.phfifoxnbottomwrenable(1'b0),
+	.phfifoxnbytesel({3{1'b0}}),
+	.phfifoxnptrsreset({3{1'b0}}),
+	.phfifoxnrdclk({3{1'b0}}),
+	.phfifoxnrdenable({3{1'b0}}),
+	.phfifoxntopbytesel(1'b0),
+	.phfifoxntoprdclk(1'b0),
+	.phfifoxntoprdenable(1'b0),
+	.phfifoxntopwrenable(1'b0),
+	.phfifoxnwrenable({3{1'b0}}),
+	.pipetxdeemph(1'b0),
+	.pipetxmargin({3{1'b0}}),
+	.pipetxswing(1'b0),
+	.prbscidenable(1'b0),
+	.rateswitch(1'b0),
+	.rateswitchisdone(1'b0),
+	.rateswitchxndone(1'b0),
+	.refclk(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		transmit_pcs0.allow_polarity_inversion = "false",
+		transmit_pcs0.auto_spd_self_switch_enable = "false",
+		transmit_pcs0.bitslip_enable = "false",
+		transmit_pcs0.channel_bonding = "none",
+		transmit_pcs0.channel_number = ((starting_channel_number + 0) % 4),
+		transmit_pcs0.channel_width = 8,
+		transmit_pcs0.core_clock_0ppm = "false",
+		transmit_pcs0.datapath_low_latency_mode = "false",
+		transmit_pcs0.datapath_protocol = "basic",
+		transmit_pcs0.disable_ph_low_latency_mode = "false",
+		transmit_pcs0.disparity_mode = "none",
+		transmit_pcs0.dprio_config_mode = 6'h01,
+		transmit_pcs0.elec_idle_delay = 6,
+		transmit_pcs0.enable_bit_reversal = "false",
+		transmit_pcs0.enable_idle_selection = "true",
+		transmit_pcs0.enable_reverse_parallel_loopback = "false",
+		transmit_pcs0.enable_self_test_mode = "false",
+		transmit_pcs0.enable_symbol_swap = "false",
+		transmit_pcs0.enc_8b_10b_compatibility_mode = "true",
+		transmit_pcs0.enc_8b_10b_mode = "normal",
+		transmit_pcs0.force_echar = "false",
+		transmit_pcs0.force_kchar = "false",
+		transmit_pcs0.hip_enable = "false",
+		transmit_pcs0.logical_channel_address = (starting_channel_number + 0),
+		transmit_pcs0.ph_fifo_reg_mode = "false",
+		transmit_pcs0.ph_fifo_xn_mapping0 = "none",
+		transmit_pcs0.ph_fifo_xn_mapping1 = "none",
+		transmit_pcs0.ph_fifo_xn_mapping2 = "none",
+		transmit_pcs0.ph_fifo_xn_select = 1,
+		transmit_pcs0.pipe_auto_speed_nego_enable = "false",
+		transmit_pcs0.pipe_freq_scale_mode = "Frequency",
+		transmit_pcs0.prbs_cid_pattern = "false",
+		transmit_pcs0.protocol_hint = "gige",
+		transmit_pcs0.refclk_select = "local",
+		transmit_pcs0.self_test_mode = "incremental",
+		transmit_pcs0.use_double_data_mode = "false",
+		transmit_pcs0.use_serializer_double_data_mode = "false",
+		transmit_pcs0.wr_clk_mux_select = "core_clk",
+		transmit_pcs0.lpm_type = "stratixiv_hssi_tx_pcs";
+	stratixiv_hssi_tx_pma   transmit_pma0
+	( 
+	.clockout(wire_transmit_pma0_clockout),
+	.datain({{44{1'b0}}, tx_dataout_pcs_to_pma[19:0]}),
+	.dataout(wire_transmit_pma0_dataout),
+	.detectrxpowerdown(cent_unit_txdetectrxpowerdn[0]),
+	.dftout(),
+	.dpriodisable(w_cent_unit_dpriodisableout1w[0]),
+	.dprioin(tx_pmadprioin_wire[299:0]),
+	.dprioout(wire_transmit_pma0_dprioout),
+	.fastrefclk0in(analogfastrefclkout[1:0]),
+	.fastrefclk1in({2{1'b0}}),
+	.fastrefclk2in({2{1'b0}}),
+	.fastrefclk3in({2{1'b0}}),
+	.fastrefclk4in({2{1'b0}}),
+	.forceelecidle(1'b0),
+	.powerdn(cent_unit_txobpowerdn[0]),
+	.refclk0in({analogrefclkout[1:0]}),
+	.refclk0inpulse(analogrefclkpulse[0]),
+	.refclk1in({2{1'b0}}),
+	.refclk1inpulse(1'b0),
+	.refclk2in({2{1'b0}}),
+	.refclk2inpulse(1'b0),
+	.refclk3in({2{1'b0}}),
+	.refclk3inpulse(1'b0),
+	.refclk4in({2{1'b0}}),
+	.refclk4inpulse(1'b0),
+	.revserialfdbk(1'b0),
+	.rxdetecten(txdetectrxout[0]),
+	.rxdetectvalidout(),
+	.rxfoundout(),
+	.seriallpbkout(wire_transmit_pma0_seriallpbkout),
+	.txpmareset(tx_analogreset_out[0])
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.datainfull({20{1'b0}}),
+	.extra10gin({11{1'b0}}),
+	.pclk({5{1'b0}}),
+	.rxdetectclk(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		transmit_pma0.analog_power = "auto",
+		transmit_pma0.channel_number = ((starting_channel_number + 0) % 4),
+		transmit_pma0.channel_type = "auto",
+		transmit_pma0.clkin_select = 0,
+		transmit_pma0.clkmux_delay = "false",
+		transmit_pma0.common_mode = "0.65V",
+		transmit_pma0.dprio_config_mode = 6'h01,
+		transmit_pma0.enable_reverse_serial_loopback = "false",
+		transmit_pma0.logical_channel_address = (starting_channel_number + 0),
+		transmit_pma0.low_speed_test_select = 0,
+		transmit_pma0.physical_clkin0_mapping = "x1",
+		transmit_pma0.preemp_pretap = 0,
+		transmit_pma0.preemp_pretap_inv = "false",
+		transmit_pma0.preemp_tap_1 = 0,
+		transmit_pma0.preemp_tap_2 = 0,
+		transmit_pma0.preemp_tap_2_inv = "false",
+		transmit_pma0.protocol_hint = "gige",
+		transmit_pma0.rx_detect = 0,
+		transmit_pma0.serialization_factor = 10,
+		transmit_pma0.slew_rate = "medium",
+		transmit_pma0.termination = "OCT 100 Ohms",
+		transmit_pma0.use_pma_direct = "false",
+		transmit_pma0.use_ser_double_data_mode = "false",
+		transmit_pma0.vod_selection = 1,
+		transmit_pma0.lpm_type = "stratixiv_hssi_tx_pma";
+	assign
+		analogfastrefclkout = {wire_ch_clk_div0_analogfastrefclkout},
+		analogrefclkout = {wire_ch_clk_div0_analogrefclkout},
+		analogrefclkpulse = {wire_ch_clk_div0_analogrefclkpulse},
+		cal_blk_powerdown = 1'b0,
+		cent_unit_cmudividerdprioout = {wire_cent_unit0_cmudividerdprioout},
+		cent_unit_cmuplldprioout = {wire_cent_unit0_cmuplldprioout},
+		cent_unit_pllpowerdn = {wire_cent_unit0_pllpowerdn[1:0]},
+		cent_unit_pllresetout = {wire_cent_unit0_pllresetout[1:0]},
+		cent_unit_quadresetout = {wire_cent_unit0_quadresetout},
+		cent_unit_rxcrupowerdn = {wire_cent_unit0_rxcrupowerdown[5:0]},
+		cent_unit_rxibpowerdn = {wire_cent_unit0_rxibpowerdown[5:0]},
+		cent_unit_rxpcsdprioin = {{1200{1'b0}}, rx_pcsdprioout[399:0]},
+		cent_unit_rxpcsdprioout = {wire_cent_unit0_rxpcsdprioout},
+		cent_unit_rxpmadprioin = {{1500{1'b0}}, rx_pmadprioout[299:0]},
+		cent_unit_rxpmadprioout = {wire_cent_unit0_rxpmadprioout},
+		cent_unit_tx_dprioin = {{1050{1'b0}}, tx_txdprioout[149:0]},
+		cent_unit_tx_xgmdataout = {wire_cent_unit0_txdataout},
+		cent_unit_txctrlout = {wire_cent_unit0_txctrlout},
+		cent_unit_txdetectrxpowerdn = {wire_cent_unit0_txdetectrxpowerdown[5:0]},
+		cent_unit_txdprioout = {wire_cent_unit0_txpcsdprioout},
+		cent_unit_txobpowerdn = {wire_cent_unit0_txobpowerdown[5:0]},
+		cent_unit_txpmadprioin = {{1500{1'b0}}, tx_pmadprioout[299:0]},
+		cent_unit_txpmadprioout = {wire_cent_unit0_txpmadprioout},
+		clk_div_cmudividerdprioin = {{500{1'b0}}, wire_ch_clk_div0_dprioout},
+		fixedclk_div_in = {fixedclk_div5quad0c, fixedclk_div4quad0c, fixedclk_div3quad0c, fixedclk_div2quad0c, fixedclk_div1quad0c, fixedclk_div0quad0c},
+		fixedclk_enable = reconfig_togxb_busy_reg[0],
+		fixedclk_in = {{5{1'b0}}, fixedclk},
+		fixedclk_sel = reconfig_togxb_busy_reg[1],
+		fixedclk_to_cmu = {((((fixedclk_sel & fixedclk_enable) & fixedclk_fast[5]) & fixedclk_div_in[5]) | (((~ fixedclk_sel) & (~ fixedclk_enable)) & fixedclk_in[5])), ((((fixedclk_sel & fixedclk_enable) & fixedclk_fast[4]) & fixedclk_div_in[4]) | (((~ fixedclk_sel) & (~ fixedclk_enable)) & fixedclk_in[4])), ((((fixedclk_sel & fixedclk_enable) & fixedclk_fast[3]) & fixedclk_div_in[3]) | (((~ fixedclk_sel) & (~ fixedclk_enable)) & fixedclk_in[3])), ((((fixedclk_sel & fixedclk_enable) & fixedclk_fast[2]) & fixedclk_div_in[2]) | (((~ fixedclk_sel) & (~ fixedclk_enable)) & fixedclk_in[2])), ((((fixedclk_sel & fixedclk_enable) & fixedclk_fast[1]) & fixedclk_div_in[1]) | (((~ fixedclk_sel) & (~ fixedclk_enable)) & fixedclk_in[1])), ((((fixedclk_sel & fixedclk_enable) & fixedclk_fast[0]) & fixedclk_div_in[0]) | (((~ fixedclk_sel) & (~ fixedclk_enable)) & fixedclk_in[0]))},
+		nonusertocmu_out = {wire_cal_blk0_nonusertocmu},
+		pll0_clkin = {{9{1'b0}}, pll_inclk_wire[0]},
+		pll0_dprioin = {cent_unit_cmuplldprioout[1499:1200]},
+		pll0_dprioout = {wire_tx_pll0_dprioout},
+		pll0_out = {wire_tx_pll0_clk[3:0]},
+		pll_ch_dataout_wire = {wire_rx_cdr_pll0_dataout},
+		pll_ch_dprioout = {wire_rx_cdr_pll0_dprioout},
+		pll_cmuplldprioout = {{300{1'b0}}, pll0_dprioout[299:0], {900{1'b0}}, pll_ch_dprioout[299:0]},
+		pll_inclk_wire = {pll_inclk},
+		pll_powerdown = 1'b0,
+		pllpowerdn_in = {1'b0, cent_unit_pllpowerdn[0]},
+		pllreset_in = {1'b0, cent_unit_pllresetout[0]},
+		reconfig_fromgxb = {rx_pma_analogtestbus[16:1], wire_cent_unit0_dprioout},
+		reconfig_togxb_busy = reconfig_togxb[3],
+		reconfig_togxb_disable = reconfig_togxb[1],
+		reconfig_togxb_in = reconfig_togxb[0],
+		reconfig_togxb_load = reconfig_togxb[2],
+		rx_analogreset_in = {{5{1'b0}}, ((~ reconfig_togxb_busy) & rx_analogreset[0])},
+		rx_analogreset_out = {wire_cent_unit0_rxanalogresetout[5:0]},
+		rx_coreclk_in = {tx_core_clkout_wire[0]},
+		rx_cruclk_in = {{9{1'b0}}, rx_pldcruclk_in[0]},
+		rx_ctrldetect = {wire_receive_pcs0_ctrldetect[0]},
+		rx_dataout = {rx_out_wire[7:0]},
+		rx_deserclock_in = {rx_pll_clkout[3:0]},
+		rx_digitalreset_in = {{3{1'b0}}, rx_digitalreset[0]},
+		rx_digitalreset_out = {wire_cent_unit0_rxdigitalresetout},
+		rx_disperr = {wire_receive_pcs0_disperr[0]},
+		rx_enapatternalign = 1'b0,
+		rx_errdetect = {wire_receive_pcs0_errdetect[0]},
+		rx_locktodata = 1'b0,
+		rx_locktodata_wire = {((~ reconfig_togxb_busy) & rx_locktodata[0])},
+		rx_locktorefclk = 1'b0,
+		rx_locktorefclk_wire = {wire_receive_pcs0_cdrctrllocktorefclkout},
+		rx_out_wire = {wire_receive_pcs0_dataout[7:0]},
+		rx_patterndetect = {wire_receive_pcs0_patterndetect[0]},
+		rx_pcsdprioin_wire = {{1200{1'b0}}, cent_unit_rxpcsdprioout[399:0]},
+		rx_pcsdprioout = {{1200{1'b0}}, wire_receive_pcs0_dprioout},
+		rx_phfifordenable = 1'b1,
+		rx_phfiforeset = 1'b0,
+		rx_phfifowrdisable = 1'b0,
+		rx_pldcruclk_in = {rx_cruclk[0]},
+		rx_pll_clkout = {wire_rx_cdr_pll0_clk},
+		rx_pll_pfdrefclkout_wire = {wire_rx_cdr_pll0_pfdrefclkout},
+		rx_plllocked_wire = {wire_rx_cdr_pll0_locked},
+		rx_pma_analogtestbus = {{12{1'b0}}, wire_receive_pma0_analogtestbus[5:2], 1'b0},
+		rx_pma_clockout = {wire_receive_pma0_clockout},
+		rx_pma_dataout = {wire_receive_pma0_dataout},
+		rx_pma_locktorefout = {wire_receive_pma0_locktorefout},
+		rx_pma_recoverdataout_wire = {wire_receive_pma0_recoverdataout[19:0]},
+		rx_pmadprioin_wire = {{1500{1'b0}}, cent_unit_rxpmadprioout[299:0]},
+		rx_pmadprioout = {{1500{1'b0}}, wire_receive_pma0_dprioout},
+		rx_powerdown = 1'b0,
+		rx_powerdown_in = {{5{1'b0}}, rx_powerdown[0]},
+		rx_prbscidenable = 1'b0,
+		rx_rlv = {wire_receive_pcs0_rlv},
+		rx_rmfifodatadeleted = {wire_receive_pcs0_rmfifodatadeleted[0]},
+		rx_rmfifodatainserted = {wire_receive_pcs0_rmfifodatainserted[0]},
+		rx_rmfiforeset = 1'b0,
+		rx_runningdisp = {wire_receive_pcs0_runningdisp[0]},
+		rx_rxcruresetout = {wire_cent_unit0_rxcruresetout[5:0]},
+		rx_signaldetect_wire = {wire_receive_pma0_signaldetect},
+		rx_syncstatus = {wire_receive_pcs0_syncstatus[0]},
+		rxpll_dprioin = {{1500{1'b0}}, cent_unit_cmuplldprioout[299:0]},
+		tx_analogreset_out = {wire_cent_unit0_txanalogresetout[5:0]},
+		tx_clkout = {tx_core_clkout_wire[0]},
+		tx_clkout_int_wire = {wire_transmit_pcs0_clkout},
+		tx_core_clkout_wire = {tx_clkout_int_wire[0]},
+		tx_coreclk_in = {tx_core_clkout_wire[0]},
+		tx_datain_wire = {tx_datain[7:0]},
+		tx_dataout = {wire_transmit_pma0_dataout},
+		tx_dataout_pcs_to_pma = {wire_transmit_pcs0_dataout},
+		tx_digitalreset_in = {{3{1'b0}}, tx_digitalreset[0]},
+		tx_digitalreset_out = {wire_cent_unit0_txdigitalresetout},
+		tx_dispval = 1'b0,
+		tx_dprioin_wire = {{1050{1'b0}}, cent_unit_txdprioout[149:0]},
+		tx_forcedisp_wire = {1'b0},
+		tx_invpolarity = 1'b0,
+		tx_localrefclk = {wire_transmit_pma0_clockout},
+		tx_phfiforeset = 1'b0,
+		tx_pmadprioin_wire = {{1500{1'b0}}, cent_unit_txpmadprioout[299:0]},
+		tx_pmadprioout = {{1500{1'b0}}, wire_transmit_pma0_dprioout},
+		tx_serialloopbackout = {wire_transmit_pma0_seriallpbkout},
+		tx_txdprioout = {{450{1'b0}}, wire_transmit_pcs0_dprioout},
+		txdetectrxout = {wire_transmit_pcs0_txdetectrx},
+		w_cent_unit_dpriodisableout1w = {wire_cent_unit0_dpriodisableout};
+endmodule //altera_tse_alt4gxb_gige_alt4gxb_4fh9
+//VALID FILE
+
+
+// synopsys translate_off
+`timescale 1 ps / 1 ps
+// synopsys translate_on
+module altera_tse_alt4gxb_gige (
+	cal_blk_clk,
+	fixedclk,
+	fixedclk_fast,
+	gxb_powerdown,
+	pll_inclk,
+	reconfig_clk,
+	reconfig_togxb,
+	rx_analogreset,
+	rx_cruclk,
+	rx_datain,
+	rx_digitalreset,
+	rx_seriallpbken,
+	tx_ctrlenable,
+	tx_datain,
+	tx_digitalreset,
+	reconfig_fromgxb,
+	rx_ctrldetect,
+	rx_dataout,
+	rx_disperr,
+	rx_errdetect,
+	rx_patterndetect,
+	rx_rlv,
+	rx_rmfifodatadeleted,
+	rx_rmfifodatainserted,
+	rx_runningdisp,
+	rx_syncstatus,
+	tx_clkout,
+	tx_dataout)/* synthesis synthesis_clearbox = 2 */;
+
+	input	  cal_blk_clk;
+	input	  fixedclk;
+	input	  fixedclk_fast;
+	input	[0:0]  gxb_powerdown;
+	input	  pll_inclk;
+	input	  reconfig_clk;
+	input	[3:0]  reconfig_togxb;
+	input	[0:0]  rx_analogreset;
+	input	[0:0]  rx_cruclk;
+	input	[0:0]  rx_datain;
+	input	[0:0]  rx_digitalreset;
+	input	[0:0]  rx_seriallpbken;
+	input	[0:0]  tx_ctrlenable;
+	input	[7:0]  tx_datain;
+	input	[0:0]  tx_digitalreset;
+	output	[16:0]  reconfig_fromgxb;
+	output	[0:0]  rx_ctrldetect;
+	output	[7:0]  rx_dataout;
+	output	[0:0]  rx_disperr;
+	output	[0:0]  rx_errdetect;
+	output	[0:0]  rx_patterndetect;
+	output	[0:0]  rx_rlv;
+	output	[0:0]  rx_rmfifodatadeleted;
+	output	[0:0]  rx_rmfifodatainserted;
+	output	[0:0]  rx_runningdisp;
+	output	[0:0]  rx_syncstatus;
+	output	[0:0]  tx_clkout;
+	output	[0:0]  tx_dataout;
+`ifndef ALTERA_RESERVED_QIS
+// synopsys translate_off
+`endif
+	tri0	[0:0]  rx_cruclk;
+`ifndef ALTERA_RESERVED_QIS
+// synopsys translate_on
+`endif
+
+	parameter		starting_channel_number = 0;
+
+
+	wire [0:0] sub_wire0;
+	wire [0:0] sub_wire1;
+	wire [0:0] sub_wire2;
+	wire [0:0] sub_wire3;
+	wire [0:0] sub_wire4;
+	wire [0:0] sub_wire5;
+	wire [0:0] sub_wire6;
+	wire [0:0] sub_wire7;
+	wire [0:0] sub_wire8;
+	wire [0:0] sub_wire9;
+	wire [0:0] sub_wire10;
+	wire [16:0] sub_wire11;
+	wire [7:0] sub_wire12;
+	wire [0:0] rx_disperr = sub_wire0[0:0];
+	wire [0:0] rx_rlv = sub_wire1[0:0];
+	wire [0:0] rx_patterndetect = sub_wire2[0:0];
+	wire [0:0] rx_ctrldetect = sub_wire3[0:0];
+	wire [0:0] rx_errdetect = sub_wire4[0:0];
+	wire [0:0] rx_rmfifodatadeleted = sub_wire5[0:0];
+	wire [0:0] rx_runningdisp = sub_wire6[0:0];
+	wire [0:0] tx_dataout = sub_wire7[0:0];
+	wire [0:0] rx_rmfifodatainserted = sub_wire8[0:0];
+	wire [0:0] rx_syncstatus = sub_wire9[0:0];
+	wire [0:0] tx_clkout = sub_wire10[0:0];
+	wire [16:0] reconfig_fromgxb = sub_wire11[16:0];
+	wire [7:0] rx_dataout = sub_wire12[7:0];
+
+	altera_tse_alt4gxb_gige_alt4gxb_4fh9	altera_tse_alt4gxb_gige_alt4gxb_4fh9_component (
+				.fixedclk_fast (fixedclk_fast),
+				.pll_inclk (pll_inclk),
+				.gxb_powerdown (gxb_powerdown),
+				.tx_datain (tx_datain),
+				.rx_cruclk (rx_cruclk),
+				.cal_blk_clk (cal_blk_clk),
+				.reconfig_clk (reconfig_clk),
+				.rx_seriallpbken (rx_seriallpbken),
+				.fixedclk (fixedclk),
+				.rx_datain (rx_datain),
+				.reconfig_togxb (reconfig_togxb),
+				.tx_ctrlenable (tx_ctrlenable),
+				.rx_analogreset (rx_analogreset),
+				.rx_digitalreset (rx_digitalreset),
+				.tx_digitalreset (tx_digitalreset),
+				.rx_disperr (sub_wire0),
+				.rx_rlv (sub_wire1),
+				.rx_patterndetect (sub_wire2),
+				.rx_ctrldetect (sub_wire3),
+				.rx_errdetect (sub_wire4),
+				.rx_rmfifodatadeleted (sub_wire5),
+				.rx_runningdisp (sub_wire6),
+				.tx_dataout (sub_wire7),
+				.rx_rmfifodatainserted (sub_wire8),
+				.rx_syncstatus (sub_wire9),
+				.tx_clkout (sub_wire10),
+				.reconfig_fromgxb (sub_wire11),
+				.rx_dataout (sub_wire12))/* synthesis synthesis_clearbox=2
+	 clearbox_macroname = alt4gxb
+	 clearbox_defparam = "effective_data_rate=1250 Mbps;enable_lc_tx_pll=false;equalizer_ctrl_a_setting=0;equalizer_ctrl_b_setting=0;equalizer_ctrl_c_setting=0;equalizer_ctrl_d_setting=0;equalizer_ctrl_v_setting=0;equalizer_dcgain_setting=0;gen_reconfig_pll=false;gxb_analog_power=AUTO;gx_channel_type=AUTO;input_clock_frequency=125.0 MHz;intended_device_family=Stratix IV;intended_device_speed_grade=2;intended_device_variant=GX;loopback_mode=slb;lpm_type=alt4gxb;number_of_channels=1;operation_mode=duplex;pll_control_width=1;preemphasis_ctrl_1stposttap_setting=0;preemphasis_ctrl_2ndposttap_inv_setting=false;preemphasis_ctrl_2ndposttap_setting=0;preemphasis_ctrl_pretap_inv_setting=false;preemphasis_ctrl_pretap_setting=0;protocol=gige;receiver_termination=oct_100_ohms;reconfig_dprio_mode=1;rx_8b_10b_mode=normal;rx_align_pattern=0101111100;rx_align_pattern_length=10;rx_allow_align_polarity_inversion=false;rx_allow_pipe_polarity_inversion=false;rx_bitslip_enable=false;rx_byte_ordering_mode=NONE;rx_channel_width=8;rx_common_mode=0.82v;rx_cru_bandwidth_type=Medium;rx_cru_inclock0_period=8000;rx_datapath_protocol=basic;rx_data_rate=1250;rx_data_rate_remainder=0;rx_digitalreset_port_width=1;rx_enable_bit_reversal=false;rx_enable_lock_to_data_sig=false;rx_enable_lock_to_refclk_sig=false;rx_enable_self_test_mode=false;rx_force_signal_detect=true;rx_ppmselect=32;rx_rate_match_fifo_mode=normal;rx_rate_match_pattern1=10100010010101111100;rx_rate_match_pattern2=10101011011010000011;rx_rate_match_pattern_size=20;
+	                      rx_run_length=5;rx_run_length_enable=true;rx_signal_detect_threshold=2;rx_use_align_state_machine=true;rx_use_clkout=false;rx_use_coreclk=false;rx_use_cruclk=true;rx_use_deserializer_double_data_mode=false;rx_use_deskew_fifo=false;rx_use_double_data_mode=false;rx_use_rate_match_pattern1_only=false;transmitter_termination=oct_100_ohms;tx_8b_10b_mode=normal;tx_allow_polarity_inversion=false;tx_analog_power=AUTO;tx_channel_width=8;tx_clkout_width=1;tx_common_mode=0.65v;tx_data_rate=1250;tx_data_rate_remainder=0;tx_digitalreset_port_width=1;tx_enable_bit_reversal=false;tx_enable_self_test_mode=false;tx_pll_bandwidth_type=High;tx_pll_inclk0_period=8000;tx_pll_type=CMU;tx_transmit_protocol=basic;tx_use_coreclk=false;tx_use_double_data_mode=false;tx_use_serializer_double_data_mode=false;use_calibration_block=true;vod_ctrl_setting=1;gxb_powerdown_width=1;number_of_quads=1;reconfig_calibration=true;reconfig_fromgxb_port_width=17;reconfig_togxb_port_width=4;rx_cru_m_divider=5;rx_cru_n_divider=1;rx_cru_vco_post_scale_divider=4;rx_dwidth_factor=1;rx_word_aligner_num_byte=1;tx_dwidth_factor=1;tx_pll_clock_post_divider=1;tx_pll_m_divider=5;tx_pll_n_divider=1;tx_pll_vco_post_scale_divider=4;tx_slew_rate=medium;" */;
+	defparam
+		altera_tse_alt4gxb_gige_alt4gxb_4fh9_component.starting_channel_number = starting_channel_number;
+
+
+endmodule
+
+// ============================================================
+// CNX file retrieval info
+// ============================================================
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix IV"
+// Retrieval info: PRIVATE: IP_MODE STRING "TSE"
+// Retrieval info: PRIVATE: LOCKDOWN_EXCL STRING "TSE"
+// Retrieval info: PRIVATE: NUM_KEYS NUMERIC "0"
+// Retrieval info: PRIVATE: RECONFIG_PROTOCOL STRING "BASIC"
+// Retrieval info: PRIVATE: RECONFIG_SUBPROTOCOL STRING "none"
+// Retrieval info: PRIVATE: RX_ENABLE_DC_COUPLING STRING "false"
+// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
+// Retrieval info: PRIVATE: WIZ_BASE_DATA_RATE STRING "1250.0"
+// Retrieval info: PRIVATE: WIZ_BASE_DATA_RATE_ENABLE STRING "0"
+// Retrieval info: PRIVATE: WIZ_DATA_RATE STRING "1250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INCLK_FREQ_ARRAY STRING "100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_A STRING "2000"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_A_UNIT STRING "Mbps"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_B STRING "100"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_B_UNIT STRING "MHz"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_SELECTION NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK0_FREQ STRING "125"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK0_PROTOCOL STRING "GIGE"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK1_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK1_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK2_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK2_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK3_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK3_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK4_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK4_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK5_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK5_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK6_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK6_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_ENABLE_EQUALIZER_CTRL NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_EQUALIZER_CTRL_SETTING NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_FORCE_DEFAULT_SETTINGS NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_INCLK_FREQ STRING "125.0"
+// Retrieval info: PRIVATE: WIZ_INCLK_FREQ_ARRAY STRING "62.5 125.0"
+// Retrieval info: PRIVATE: WIZ_INPUT_A STRING "1250"
+// Retrieval info: PRIVATE: WIZ_INPUT_A_UNIT STRING "Mbps"
+// Retrieval info: PRIVATE: WIZ_INPUT_B STRING "125.0"
+// Retrieval info: PRIVATE: WIZ_INPUT_B_UNIT STRING "MHz"
+// Retrieval info: PRIVATE: WIZ_INPUT_SELECTION NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_PROTOCOL STRING "GIGE"
+// Retrieval info: PRIVATE: WIZ_SUBPROTOCOL STRING "None"
+// Retrieval info: PRIVATE: WIZ_WORD_ALIGN_FLIP_PATTERN STRING "0"
+// Retrieval info: PARAMETER: STARTING_CHANNEL_NUMBER NUMERIC "0"
+// Retrieval info: CONSTANT: EFFECTIVE_DATA_RATE STRING "1250 Mbps"
+// Retrieval info: CONSTANT: ENABLE_LC_TX_PLL STRING "false"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_A_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_B_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_C_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_D_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_CTRL_V_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: EQUALIZER_DCGAIN_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: GEN_RECONFIG_PLL STRING "false"
+// Retrieval info: CONSTANT: GXB_ANALOG_POWER STRING "AUTO"
+// Retrieval info: CONSTANT: GX_CHANNEL_TYPE STRING "AUTO"
+// Retrieval info: CONSTANT: INPUT_CLOCK_FREQUENCY STRING "125.0 MHz"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Stratix IV"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_SPEED_GRADE STRING "2"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_VARIANT STRING "GX"
+// Retrieval info: CONSTANT: LOOPBACK_MODE STRING "slb"
+// Retrieval info: CONSTANT: LPM_TYPE STRING "alt4gxb"
+// Retrieval info: CONSTANT: NUMBER_OF_CHANNELS NUMERIC "1"
+// Retrieval info: CONSTANT: OPERATION_MODE STRING "duplex"
+// Retrieval info: CONSTANT: PLL_CONTROL_WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_1STPOSTTAP_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_2NDPOSTTAP_INV_SETTING STRING "false"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_2NDPOSTTAP_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_PRETAP_INV_SETTING STRING "false"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_PRETAP_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: PROTOCOL STRING "gige"
+// Retrieval info: CONSTANT: RECEIVER_TERMINATION STRING "oct_100_ohms"
+// Retrieval info: CONSTANT: RECONFIG_DPRIO_MODE NUMERIC "1"
+// Retrieval info: CONSTANT: RX_8B_10B_MODE STRING "normal"
+// Retrieval info: CONSTANT: RX_ALIGN_PATTERN STRING "0101111100"
+// Retrieval info: CONSTANT: RX_ALIGN_PATTERN_LENGTH NUMERIC "10"
+// Retrieval info: CONSTANT: RX_ALLOW_ALIGN_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: RX_ALLOW_PIPE_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: RX_BITSLIP_ENABLE STRING "false"
+// Retrieval info: CONSTANT: RX_BYTE_ORDERING_MODE STRING "NONE"
+// Retrieval info: CONSTANT: RX_CHANNEL_WIDTH NUMERIC "8"
+// Retrieval info: CONSTANT: RX_COMMON_MODE STRING "0.82v"
+// Retrieval info: CONSTANT: RX_CRU_BANDWIDTH_TYPE STRING "Medium"
+// Retrieval info: CONSTANT: RX_CRU_INCLOCK0_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: RX_DATAPATH_PROTOCOL STRING "basic"
+// Retrieval info: CONSTANT: RX_DATA_RATE NUMERIC "1250"
+// Retrieval info: CONSTANT: RX_DATA_RATE_REMAINDER NUMERIC "0"
+// Retrieval info: CONSTANT: RX_DIGITALRESET_PORT_WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: RX_ENABLE_BIT_REVERSAL STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_LOCK_TO_DATA_SIG STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_LOCK_TO_REFCLK_SIG STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_SELF_TEST_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_FORCE_SIGNAL_DETECT STRING "true"
+// Retrieval info: CONSTANT: RX_PPMSELECT NUMERIC "32"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_FIFO_MODE STRING "normal"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_PATTERN1 STRING "10100010010101111100"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_PATTERN2 STRING "10101011011010000011"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_PATTERN_SIZE NUMERIC "20"
+// Retrieval info: CONSTANT: RX_RUN_LENGTH NUMERIC "5"
+// Retrieval info: CONSTANT: RX_RUN_LENGTH_ENABLE STRING "true"
+// Retrieval info: CONSTANT: RX_SIGNAL_DETECT_THRESHOLD NUMERIC "2"
+// Retrieval info: CONSTANT: RX_USE_ALIGN_STATE_MACHINE STRING "true"
+// Retrieval info: CONSTANT: RX_USE_CLKOUT STRING "false"
+// Retrieval info: CONSTANT: RX_USE_CORECLK STRING "false"
+// Retrieval info: CONSTANT: RX_USE_CRUCLK STRING "true"
+// Retrieval info: CONSTANT: RX_USE_DESERIALIZER_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_USE_DESKEW_FIFO STRING "false"
+// Retrieval info: CONSTANT: RX_USE_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_USE_RATE_MATCH_PATTERN1_ONLY STRING "false"
+// Retrieval info: CONSTANT: TRANSMITTER_TERMINATION STRING "oct_100_ohms"
+// Retrieval info: CONSTANT: TX_8B_10B_MODE STRING "normal"
+// Retrieval info: CONSTANT: TX_ALLOW_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: TX_ANALOG_POWER STRING "AUTO"
+// Retrieval info: CONSTANT: TX_CHANNEL_WIDTH NUMERIC "8"
+// Retrieval info: CONSTANT: TX_CLKOUT_WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: TX_COMMON_MODE STRING "0.65v"
+// Retrieval info: CONSTANT: TX_DATA_RATE NUMERIC "1250"
+// Retrieval info: CONSTANT: TX_DATA_RATE_REMAINDER NUMERIC "0"
+// Retrieval info: CONSTANT: TX_DIGITALRESET_PORT_WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: TX_ENABLE_BIT_REVERSAL STRING "false"
+// Retrieval info: CONSTANT: TX_ENABLE_SELF_TEST_MODE STRING "false"
+// Retrieval info: CONSTANT: TX_PLL_BANDWIDTH_TYPE STRING "High"
+// Retrieval info: CONSTANT: TX_PLL_INCLK0_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: TX_PLL_TYPE STRING "CMU"
+// Retrieval info: CONSTANT: TX_TRANSMIT_PROTOCOL STRING "basic"
+// Retrieval info: CONSTANT: TX_USE_CORECLK STRING "false"
+// Retrieval info: CONSTANT: TX_USE_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: TX_USE_SERIALIZER_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: USE_CALIBRATION_BLOCK STRING "true"
+// Retrieval info: CONSTANT: VOD_CTRL_SETTING NUMERIC "1"
+// Retrieval info: CONSTANT: gxb_powerdown_width NUMERIC "1"
+// Retrieval info: CONSTANT: number_of_quads NUMERIC "1"
+// Retrieval info: CONSTANT: reconfig_calibration STRING "true"
+// Retrieval info: CONSTANT: reconfig_fromgxb_port_width NUMERIC "17"
+// Retrieval info: CONSTANT: reconfig_togxb_port_width NUMERIC "4"
+// Retrieval info: CONSTANT: rx_cru_m_divider NUMERIC "5"
+// Retrieval info: CONSTANT: rx_cru_n_divider NUMERIC "1"
+// Retrieval info: CONSTANT: rx_cru_vco_post_scale_divider NUMERIC "4"
+// Retrieval info: CONSTANT: rx_dwidth_factor NUMERIC "1"
+// Retrieval info: CONSTANT: rx_word_aligner_num_byte NUMERIC "1"
+// Retrieval info: CONSTANT: tx_dwidth_factor NUMERIC "1"
+// Retrieval info: CONSTANT: tx_pll_clock_post_divider NUMERIC "1"
+// Retrieval info: CONSTANT: tx_pll_m_divider NUMERIC "5"
+// Retrieval info: CONSTANT: tx_pll_n_divider NUMERIC "1"
+// Retrieval info: CONSTANT: tx_pll_vco_post_scale_divider NUMERIC "4"
+// Retrieval info: CONSTANT: tx_slew_rate STRING "medium"
+// Retrieval info: USED_PORT: cal_blk_clk 0 0 0 0 INPUT NODEFVAL "cal_blk_clk"
+// Retrieval info: USED_PORT: fixedclk 0 0 0 0 INPUT NODEFVAL "fixedclk"
+// Retrieval info: USED_PORT: fixedclk_fast 0 0 0 0 INPUT NODEFVAL "fixedclk_fast"
+// Retrieval info: USED_PORT: gxb_powerdown 0 0 1 0 INPUT NODEFVAL "gxb_powerdown[0..0]"
+// Retrieval info: USED_PORT: pll_inclk 0 0 0 0 INPUT NODEFVAL "pll_inclk"
+// Retrieval info: USED_PORT: reconfig_clk 0 0 0 0 INPUT NODEFVAL "reconfig_clk"
+// Retrieval info: USED_PORT: reconfig_fromgxb 0 0 17 0 OUTPUT NODEFVAL "reconfig_fromgxb[16..0]"
+// Retrieval info: USED_PORT: reconfig_togxb 0 0 4 0 INPUT NODEFVAL "reconfig_togxb[3..0]"
+// Retrieval info: USED_PORT: rx_analogreset 0 0 1 0 INPUT NODEFVAL "rx_analogreset[0..0]"
+// Retrieval info: USED_PORT: rx_cruclk 0 0 1 0 INPUT GND "rx_cruclk[0..0]"
+// Retrieval info: USED_PORT: rx_ctrldetect 0 0 1 0 OUTPUT NODEFVAL "rx_ctrldetect[0..0]"
+// Retrieval info: USED_PORT: rx_datain 0 0 1 0 INPUT NODEFVAL "rx_datain[0..0]"
+// Retrieval info: USED_PORT: rx_dataout 0 0 8 0 OUTPUT NODEFVAL "rx_dataout[7..0]"
+// Retrieval info: USED_PORT: rx_digitalreset 0 0 1 0 INPUT NODEFVAL "rx_digitalreset[0..0]"
+// Retrieval info: USED_PORT: rx_disperr 0 0 1 0 OUTPUT NODEFVAL "rx_disperr[0..0]"
+// Retrieval info: USED_PORT: rx_errdetect 0 0 1 0 OUTPUT NODEFVAL "rx_errdetect[0..0]"
+// Retrieval info: USED_PORT: rx_patterndetect 0 0 1 0 OUTPUT NODEFVAL "rx_patterndetect[0..0]"
+// Retrieval info: USED_PORT: rx_rlv 0 0 1 0 OUTPUT NODEFVAL "rx_rlv[0..0]"
+// Retrieval info: USED_PORT: rx_rmfifodatadeleted 0 0 1 0 OUTPUT NODEFVAL "rx_rmfifodatadeleted[0..0]"
+// Retrieval info: USED_PORT: rx_rmfifodatainserted 0 0 1 0 OUTPUT NODEFVAL "rx_rmfifodatainserted[0..0]"
+// Retrieval info: USED_PORT: rx_runningdisp 0 0 1 0 OUTPUT NODEFVAL "rx_runningdisp[0..0]"
+// Retrieval info: USED_PORT: rx_seriallpbken 0 0 1 0 INPUT NODEFVAL "rx_seriallpbken[0..0]"
+// Retrieval info: USED_PORT: rx_syncstatus 0 0 1 0 OUTPUT NODEFVAL "rx_syncstatus[0..0]"
+// Retrieval info: USED_PORT: tx_clkout 0 0 1 0 OUTPUT NODEFVAL "tx_clkout[0..0]"
+// Retrieval info: USED_PORT: tx_ctrlenable 0 0 1 0 INPUT NODEFVAL "tx_ctrlenable[0..0]"
+// Retrieval info: USED_PORT: tx_datain 0 0 8 0 INPUT NODEFVAL "tx_datain[7..0]"
+// Retrieval info: USED_PORT: tx_dataout 0 0 1 0 OUTPUT NODEFVAL "tx_dataout[0..0]"
+// Retrieval info: USED_PORT: tx_digitalreset 0 0 1 0 INPUT NODEFVAL "tx_digitalreset[0..0]"
+// Retrieval info: CONNECT: @fixedclk 0 0 0 0 fixedclk 0 0 0 0
+// Retrieval info: CONNECT: rx_patterndetect 0 0 1 0 @rx_patterndetect 0 0 1 0
+// Retrieval info: CONNECT: @fixedclk_fast 0 0 0 0 fixedclk_fast 0 0 0 0
+// Retrieval info: CONNECT: @rx_analogreset 0 0 1 0 rx_analogreset 0 0 1 0
+// Retrieval info: CONNECT: rx_ctrldetect 0 0 1 0 @rx_ctrldetect 0 0 1 0
+// Retrieval info: CONNECT: @gxb_powerdown 0 0 1 0 gxb_powerdown 0 0 1 0
+// Retrieval info: CONNECT: rx_dataout 0 0 8 0 @rx_dataout 0 0 8 0
+// Retrieval info: CONNECT: rx_runningdisp 0 0 1 0 @rx_runningdisp 0 0 1 0
+// Retrieval info: CONNECT: @cal_blk_clk 0 0 0 0 cal_blk_clk 0 0 0 0
+// Retrieval info: CONNECT: rx_errdetect 0 0 1 0 @rx_errdetect 0 0 1 0
+// Retrieval info: CONNECT: @tx_digitalreset 0 0 1 0 tx_digitalreset 0 0 1 0
+// Retrieval info: CONNECT: rx_syncstatus 0 0 1 0 @rx_syncstatus 0 0 1 0
+// Retrieval info: CONNECT: @rx_seriallpbken 0 0 1 0 rx_seriallpbken 0 0 1 0
+// Retrieval info: CONNECT: @reconfig_clk 0 0 0 0 reconfig_clk 0 0 0 0
+// Retrieval info: CONNECT: @reconfig_togxb 0 0 4 0 reconfig_togxb 0 0 4 0
+// Retrieval info: CONNECT: @rx_digitalreset 0 0 1 0 rx_digitalreset 0 0 1 0
+// Retrieval info: CONNECT: tx_clkout 0 0 1 0 @tx_clkout 0 0 1 0
+// Retrieval info: CONNECT: @rx_cruclk 0 0 1 0 rx_cruclk 0 0 1 0
+// Retrieval info: CONNECT: rx_rlv 0 0 1 0 @rx_rlv 0 0 1 0
+// Retrieval info: CONNECT: @pll_inclk 0 0 0 0 pll_inclk 0 0 0 0
+// Retrieval info: CONNECT: @tx_ctrlenable 0 0 1 0 tx_ctrlenable 0 0 1 0
+// Retrieval info: CONNECT: tx_dataout 0 0 1 0 @tx_dataout 0 0 1 0
+// Retrieval info: CONNECT: @tx_datain 0 0 8 0 tx_datain 0 0 8 0
+// Retrieval info: CONNECT: reconfig_fromgxb 0 0 17 0 @reconfig_fromgxb 0 0 17 0
+// Retrieval info: CONNECT: @rx_datain 0 0 1 0 rx_datain 0 0 1 0
+// Retrieval info: CONNECT: rx_rmfifodatainserted 0 0 1 0 @rx_rmfifodatainserted 0 0 1 0
+// Retrieval info: CONNECT: rx_rmfifodatadeleted 0 0 1 0 @rx_rmfifodatadeleted 0 0 1 0
+// Retrieval info: CONNECT: rx_disperr 0 0 1 0 @rx_disperr 0 0 1 0
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt4gxb_gige.v TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt4gxb_gige.ppf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt4gxb_gige.inc FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt4gxb_gige.cmp FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt4gxb_gige.bsf FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt4gxb_gige_inst.v FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_alt4gxb_gige_bb.v TRUE
+// Retrieval info: LIB_FILE: stratixiv_hssi
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_altgx_civgx_gige.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_altgx_civgx_gige.v
new file mode 100644
index 0000000000000000000000000000000000000000..2b8520f51d232a292c8b8eab878cbda3593d8b3e
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_altgx_civgx_gige.v
@@ -0,0 +1,1112 @@
+// megafunction wizard: %ALTGX%
+// GENERATION: STANDARD
+// VERSION: WM1.0
+// MODULE: alt_c3gxb 
+
+// ============================================================
+// File Name: altera_tse_altgx_civgx_gige.v
+// Megafunction Name(s):
+// 			alt_c3gxb
+//
+// Simulation Library Files(s):
+// 			altera_mf;cycloneiv_hssi
+// ============================================================
+// ************************************************************
+// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
+//
+// 9.1 Internal Build 281 12/09/2009 SP 1 PN Full Version
+// ************************************************************
+
+
+//Copyright (C) 1991-2010 Altera Corporation
+//Your use of Altera Corporation's design tools, logic functions 
+//and other software and tools, and its AMPP partner logic 
+//functions, and any output files from any of the foregoing 
+//(including device programming or simulation files), and any 
+//associated documentation or information are expressly subject 
+//to the terms and conditions of the Altera Program License 
+//Subscription Agreement, Altera MegaCore Function License 
+//Agreement, or other applicable license agreement, including, 
+//without limitation, that your use is for the sole purpose of 
+//programming logic devices manufactured by Altera and sold by 
+//Altera or its authorized distributors.  Please refer to the 
+//applicable agreement for further details.
+
+
+//alt_c3gxb CBX_AUTO_BLACKBOX="ALL" device_family="Cyclone IV GX" effective_data_rate="1250 Mbps" equalization_setting=1 equalizer_dcgain_setting=0 gxb_powerdown_width=1 loopback_mode="slb" number_of_channels=1 number_of_quads=1 operation_mode="duplex" pll_bandwidth_type="high" pll_control_width=1 pll_divide_by="1" pll_inclk_period=8000 pll_multiply_by="5" preemphasis_ctrl_1stposttap_setting=1 protocol="gige" receiver_termination="OCT_100_OHMS" reconfig_calibration="true" reconfig_dprio_mode=0 rx_8b_10b_mode="normal" rx_align_pattern="0101111100" rx_align_pattern_length=10 rx_allow_align_polarity_inversion="false" rx_allow_pipe_polarity_inversion="false" rx_bitslip_enable="false" rx_byte_ordering_mode="none" rx_channel_width=8 rx_common_mode="0.82v" rx_datapath_protocol="basic" rx_digitalreset_port_width=1 rx_dwidth_factor=1 rx_enable_bit_reversal="false" rx_enable_self_test_mode="false" rx_force_signal_detect="true" rx_ppmselect=32 rx_rate_match_fifo_mode="normal" rx_rate_match_pattern1="10100010010101111100" rx_rate_match_pattern2="10101011011010000011" rx_rate_match_pattern_size=20 rx_run_length=5 rx_run_length_enable="true" rx_signal_detect_loss_threshold=1 rx_signal_detect_threshold=2 rx_signal_detect_valid_threshold=1 rx_use_align_state_machine="true" rx_use_clkout="false" rx_use_coreclk="false" rx_use_double_data_mode="false" rx_use_external_termination="false" rx_word_aligner_num_byte=1 starting_channel_number=0 transmitter_termination="OCT_100_OHMS" tx_8b_10b_mode="normal" tx_allow_polarity_inversion="false" tx_channel_width=8 tx_clkout_width=1 tx_common_mode="0.65v" tx_digitalreset_port_width=1 tx_dwidth_factor=1 tx_enable_bit_reversal="false" tx_enable_self_test_mode="false" tx_slew_rate="medium" tx_transmit_protocol="basic" tx_use_coreclk="false" tx_use_double_data_mode="false" tx_use_external_termination="false" use_calibration_block="true" vod_ctrl_setting=1 cal_blk_clk gxb_powerdown pll_inclk reconfig_clk reconfig_fromgxb reconfig_togxb rx_analogreset rx_ctrldetect rx_datain rx_dataout rx_digitalreset rx_disperr rx_errdetect rx_patterndetect rx_rlv rx_rmfifodatadeleted rx_rmfifodatainserted rx_runningdisp rx_syncstatus tx_clkout tx_ctrlenable tx_datain tx_dataout tx_digitalreset intended_device_family="Cyclone IV GX"
+//VERSION_BEGIN 9.1SP1 cbx_alt_c3gxb 2009:12:10:21:16:17:PN cbx_altpll 2009:12:10:21:16:17:PN cbx_cycloneii 2009:12:10:21:16:17:PN cbx_mgl 2009:12:10:22:04:43:PN cbx_stingray 2009:12:10:21:16:16:PN cbx_stratixii 2009:12:10:21:16:18:PN cbx_util_mgl 2009:12:10:21:16:17:PN  VERSION_END
+// synthesis VERILOG_INPUT_VERSION VERILOG_2001
+// altera message_off 10463
+
+
+//synthesis_resources = altpll 1 cycloneiv_hssi_calibration_block 1 cycloneiv_hssi_cmu 1 cycloneiv_hssi_rx_pcs 1 cycloneiv_hssi_rx_pma 1 cycloneiv_hssi_tx_pcs 1 cycloneiv_hssi_tx_pma 1 
+//synopsys translate_off
+`timescale 1 ps / 1 ps
+//synopsys translate_on
+module  altera_tse_altgx_civgx_gige_alt_c3gxb_vgl6
+	( 
+	cal_blk_clk,
+	gxb_powerdown,
+	pll_inclk,
+	reconfig_clk,
+	reconfig_fromgxb,
+	reconfig_togxb,
+	rx_analogreset,
+	rx_ctrldetect,
+	rx_datain,
+	rx_dataout,
+	rx_digitalreset,
+	rx_disperr,
+	rx_errdetect,
+	rx_patterndetect,
+	rx_rlv,
+	rx_rmfifodatadeleted,
+	rx_rmfifodatainserted,
+	rx_runningdisp,
+	rx_syncstatus,
+	tx_clkout,
+	tx_ctrlenable,
+	tx_datain,
+	tx_dataout,
+	tx_digitalreset) ;
+	input   cal_blk_clk;
+	input   [0:0]  gxb_powerdown;
+	input   pll_inclk;
+	input   reconfig_clk;
+	output   [4:0]  reconfig_fromgxb;
+	input   [3:0]  reconfig_togxb;
+	input   [0:0]  rx_analogreset;
+	output   [0:0]  rx_ctrldetect;
+	input   [0:0]  rx_datain;
+	output   [7:0]  rx_dataout;
+	input   [0:0]  rx_digitalreset;
+	output   [0:0]  rx_disperr;
+	output   [0:0]  rx_errdetect;
+	output   [0:0]  rx_patterndetect;
+	output   [0:0]  rx_rlv;
+	output   [0:0]  rx_rmfifodatadeleted;
+	output   [0:0]  rx_rmfifodatainserted;
+	output   [0:0]  rx_runningdisp;
+	output   [0:0]  rx_syncstatus;
+	output   [0:0]  tx_clkout;
+	input   [0:0]  tx_ctrlenable;
+	input   [7:0]  tx_datain;
+	output   [0:0]  tx_dataout;
+	input   [0:0]  tx_digitalreset;
+`ifndef ALTERA_RESERVED_QIS
+// synopsys translate_off
+`endif
+	tri0   cal_blk_clk;
+	tri0   [0:0]  gxb_powerdown;
+	tri0   reconfig_clk;
+	tri0   [0:0]  rx_analogreset;
+	tri0   [0:0]  rx_digitalreset;
+	tri0   [0:0]  tx_ctrlenable;
+	tri0   [7:0]  tx_datain;
+	tri0   [0:0]  tx_digitalreset;
+`ifndef ALTERA_RESERVED_QIS
+// synopsys translate_on
+`endif
+
+
+	parameter	starting_channel_number = 0;
+
+
+	wire  [5:0]   wire_pll0_clk;
+	wire  wire_pll0_fref;
+	wire  wire_pll0_icdrclk;
+	wire  wire_cal_blk0_nonusertocmu;
+	wire  wire_cent_unit0_dprioout;
+	wire  wire_cent_unit0_quadresetout;
+	wire  [3:0]   wire_cent_unit0_rxanalogresetout;
+	wire  [3:0]   wire_cent_unit0_rxcrupowerdown;
+	wire  [3:0]   wire_cent_unit0_rxdigitalresetout;
+	wire  [3:0]   wire_cent_unit0_rxibpowerdown;
+	wire  [3:0]   wire_cent_unit0_txanalogresetout;
+	wire  [3:0]   wire_cent_unit0_txdetectrxpowerdown;
+	wire  [3:0]   wire_cent_unit0_txdigitalresetout;
+	wire  [3:0]   wire_cent_unit0_txdividerpowerdown;
+	wire  [3:0]   wire_cent_unit0_txobpowerdown;
+	wire  wire_receive_pcs0_cdrctrllocktorefclkout;
+	wire  [1:0]   wire_receive_pcs0_ctrldetect;
+	wire  [19:0]   wire_receive_pcs0_dataout;
+	wire  [1:0]   wire_receive_pcs0_disperr;
+	wire  [1:0]   wire_receive_pcs0_errdetect;
+	wire  [1:0]   wire_receive_pcs0_patterndetect;
+	wire  wire_receive_pcs0_rlv;
+	wire  [1:0]   wire_receive_pcs0_rmfifodatadeleted;
+	wire  [1:0]   wire_receive_pcs0_rmfifodatainserted;
+	wire  [1:0]   wire_receive_pcs0_runningdisp;
+	wire  wire_receive_pcs0_signaldetect;
+	wire  [1:0]   wire_receive_pcs0_syncstatus;
+	wire  [7:0]   wire_receive_pma0_analogtestbus;
+	wire  wire_receive_pma0_clockout;
+	wire  wire_receive_pma0_locktorefout;
+	wire  [9:0]   wire_receive_pma0_recoverdataout;
+	wire  wire_receive_pma0_signaldetect;
+	wire  wire_transmit_pcs0_clkout;
+	wire  [9:0]   wire_transmit_pcs0_dataout;
+	wire  wire_transmit_pcs0_forceelecidleout;
+	wire  wire_transmit_pcs0_txdetectrx;
+	wire  wire_transmit_pma0_clockout;
+	wire  wire_transmit_pma0_dataout;
+	wire  wire_transmit_pma0_seriallpbkout;
+	wire cal_blk_powerdown;
+	wire  [0:0]  cent_unit_quadresetout;
+	wire  [3:0]  cent_unit_rxcrupowerdn;
+	wire  [3:0]  cent_unit_rxibpowerdn;
+	wire  [3:0]  cent_unit_txdetectrxpowerdn;
+	wire  [3:0]  cent_unit_txdividerpowerdown;
+	wire  [3:0]  cent_unit_txobpowerdn;
+	wire fixedclk;
+	wire  [3:0]  fixedclk_in;
+	wire  [0:0]  nonusertocmu_out;
+	wire [0:0]  pll_powerdown;
+	wire  [0:0]  reconfig_togxb_disable;
+	wire  [0:0]  reconfig_togxb_in;
+	wire  [0:0]  reconfig_togxb_load;
+	wire  [3:0]  rx_analogreset_in;
+	wire  [3:0]  rx_analogreset_out;
+	wire  [0:0]  rx_coreclk_in;
+	wire  [0:0]  rx_deserclock_in;
+	wire  [3:0]  rx_digitalreset_in;
+	wire  [3:0]  rx_digitalreset_out;
+	wire [0:0]  rx_enapatternalign;
+	wire [0:0]  rx_locktodata;
+	wire [0:0]  rx_locktorefclk;
+	wire  [0:0]  rx_locktorefclk_wire;
+	wire  [7:0]  rx_out_wire;
+	wire [0:0]  rx_phfifordenable;
+	wire [0:0]  rx_phfiforeset;
+	wire [0:0]  rx_phfifowrdisable;
+	wire  [0:0]  rx_pll_pfdrefclkout_wire;
+	wire  [4:0]  rx_pma_analogtestbus;
+	wire  [0:0]  rx_pma_clockout;
+	wire  [9:0]  rx_pma_recoverdataout_wire;
+	wire [0:0]  rx_powerdown;
+	wire  [3:0]  rx_powerdown_in;
+	wire [0:0]  rx_prbscidenable;
+	wire [0:0]  rx_rmfiforeset;
+	wire  [0:0]  rx_signaldetect_wire;
+	wire  [3:0]  tx_analogreset_out;
+	wire  [0:0]  tx_clkout_int_wire;
+	wire  [0:0]  tx_core_clkout_wire;
+	wire  [0:0]  tx_coreclk_in;
+	wire  [7:0]  tx_datain_wire;
+	wire  [9:0]  tx_dataout_pcs_to_pma;
+	wire  [3:0]  tx_digitalreset_in;
+	wire  [3:0]  tx_digitalreset_out;
+	wire  [0:0]  tx_forcedisp_wire;
+	wire [0:0]  tx_invpolarity;
+	wire  [0:0]  tx_localrefclk;
+	wire [0:0]  tx_phfiforeset;
+	wire  [0:0]  tx_pma_fastrefclk0in;
+	wire  [0:0]  tx_pma_refclk0in;
+	wire  [0:0]  tx_pma_refclk0inpulse;
+	wire  [0:0]  tx_serialloopbackout;
+	wire  [0:0]  txdataout;
+	wire  [0:0]  txdetectrxout;
+
+	altpll   pll0
+	( 
+	.activeclock(),
+	.areset(pll_powerdown[0]),
+	.clk(wire_pll0_clk),
+	.clkbad(),
+	.clkloss(),
+	.enable0(),
+	.enable1(),
+	.extclk(),
+	.fbout(),
+	.fref(wire_pll0_fref),
+	.icdrclk(wire_pll0_icdrclk),
+	.inclk({{1{1'b0}}, pll_inclk}),
+	.locked(),
+	.phasedone(),
+	.scandataout(),
+	.scandone(),
+	.sclkout0(),
+	.sclkout1(),
+	.vcooverrange(),
+	.vcounderrange()
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.clkena({6{1'b1}}),
+	.clkswitch(1'b0),
+	.configupdate(1'b0),
+	.extclkena({4{1'b1}}),
+	.fbin(1'b1),
+	.pfdena(1'b1),
+	.phasecounterselect({4{1'b1}}),
+	.phasestep(1'b1),
+	.phaseupdown(1'b1),
+	.pllena(1'b1),
+	.scanaclr(1'b0),
+	.scanclk(1'b0),
+	.scanclkena(1'b1),
+	.scandata(1'b0),
+	.scanread(1'b0),
+	.scanwrite(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		pll0.bandwidth_type = "HIGH",
+		pll0.clk0_divide_by = 1,
+		pll0.clk0_multiply_by = 5,
+		pll0.clk1_divide_by = 5,
+		pll0.clk1_multiply_by = 5,
+		pll0.clk2_divide_by = 5,
+		pll0.clk2_duty_cycle = 20,
+		pll0.clk2_multiply_by = 5,
+		pll0.dpa_divide_by = 1,
+		pll0.dpa_multiply_by = 5,
+		pll0.inclk0_input_frequency = 8000,
+		pll0.operation_mode = "no_compensation",
+		pll0.intended_device_family = "Cyclone IV GX",
+		pll0.lpm_type = "altpll";
+	cycloneiv_hssi_calibration_block   cal_blk0
+	( 
+	.calibrationstatus(),
+	.clk(cal_blk_clk),
+	.nonusertocmu(wire_cal_blk0_nonusertocmu),
+	.powerdn(cal_blk_powerdown)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.testctrl(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	cycloneiv_hssi_cmu   cent_unit0
+	( 
+	.alignstatus(),
+	.coreclkout(),
+	.digitaltestout(),
+	.dpclk(reconfig_clk),
+	.dpriodisable(reconfig_togxb_disable),
+	.dpriodisableout(),
+	.dprioin(reconfig_togxb_in),
+	.dprioload(reconfig_togxb_load),
+	.dpriooe(),
+	.dprioout(wire_cent_unit0_dprioout),
+	.enabledeskew(),
+	.fiforesetrd(),
+	.fixedclk(fixedclk_in[3:0]),
+	.nonuserfromcal(nonusertocmu_out[0]),
+	.quadreset(gxb_powerdown[0]),
+	.quadresetout(wire_cent_unit0_quadresetout),
+	.refclkout(),
+	.rxanalogreset({rx_analogreset_in[3:0]}),
+	.rxanalogresetout(wire_cent_unit0_rxanalogresetout),
+	.rxcrupowerdown(wire_cent_unit0_rxcrupowerdown),
+	.rxctrlout(),
+	.rxdataout(),
+	.rxdigitalreset({rx_digitalreset_in[3:0]}),
+	.rxdigitalresetout(wire_cent_unit0_rxdigitalresetout),
+	.rxibpowerdown(wire_cent_unit0_rxibpowerdown),
+	.rxphfifox4byteselout(),
+	.rxphfifox4rdenableout(),
+	.rxphfifox4wrclkout(),
+	.rxphfifox4wrenableout(),
+	.rxpowerdown({rx_powerdown_in[3:0]}),
+	.testout(),
+	.txanalogresetout(wire_cent_unit0_txanalogresetout),
+	.txctrlout(),
+	.txdetectrxpowerdown(wire_cent_unit0_txdetectrxpowerdown),
+	.txdigitalreset({tx_digitalreset_in[3:0]}),
+	.txdigitalresetout(wire_cent_unit0_txdigitalresetout),
+	.txdividerpowerdown(wire_cent_unit0_txdividerpowerdown),
+	.txobpowerdown(wire_cent_unit0_txobpowerdown),
+	.txphfifox4byteselout(),
+	.txphfifox4rdclkout(),
+	.txphfifox4rdenableout(),
+	.txphfifox4wrenableout()
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.pmacramtest(1'b0),
+	.rdenablesync(1'b1),
+	.refclkdig(1'b0),
+	.rxcoreclk(1'b0),
+	.rxctrl({4{1'b0}}),
+	.rxdatain({32{1'b0}}),
+	.rxdatavalid({4{1'b0}}),
+	.rxphfifordenable(1'b1),
+	.rxphfiforeset(1'b0),
+	.rxphfifowrdisable(1'b0),
+	.rxrunningdisp({4{1'b0}}),
+	.scanclk(1'b0),
+	.scanmode(1'b0),
+	.scanshift(1'b0),
+	.testin({2000{1'b0}}),
+	.txclk(1'b0),
+	.txcoreclk(1'b0),
+	.txctrl({4{1'b0}}),
+	.txdatain({32{1'b0}}),
+	.txphfiforddisable(1'b0),
+	.txphfiforeset(1'b0),
+	.txphfifowrenable(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		cent_unit0.rx0_channel_bonding = "none",
+		cent_unit0.rx0_clk1_mux_select = "recovered clock",
+		cent_unit0.rx0_clk2_mux_select = "local reference clock",
+		cent_unit0.rx0_ph_fifo_reg_mode = "false",
+		cent_unit0.rx0_rd_clk_mux_select = "core clock",
+		cent_unit0.rx0_recovered_clk_mux_select = "recovered clock",
+		cent_unit0.rx0_reset_clock_output_during_digital_reset = "false",
+		cent_unit0.rx0_use_double_data_mode = "false",
+		cent_unit0.tx0_channel_bonding = "none",
+		cent_unit0.tx0_rd_clk_mux_select = "central",
+		cent_unit0.tx0_reset_clock_output_during_digital_reset = "false",
+		cent_unit0.tx0_use_double_data_mode = "false",
+		cent_unit0.tx0_wr_clk_mux_select = "core_clk",
+		cent_unit0.use_coreclk_out_post_divider = "false",
+		cent_unit0.lpm_type = "cycloneiv_hssi_cmu";
+	cycloneiv_hssi_rx_pcs   receive_pcs0
+	( 
+	.a1a2size(1'b0),
+	.a1a2sizeout(),
+	.a1detect(),
+	.a2detect(),
+	.alignstatussyncout(),
+	.bistdone(),
+	.bisterr(),
+	.bitslipboundaryselectout(),
+	.byteorderalignstatus(),
+	.cdrctrlearlyeios(),
+	.cdrctrllocktorefcl(rx_locktorefclk[0]),
+	.cdrctrllocktorefclkout(wire_receive_pcs0_cdrctrllocktorefclkout),
+	.clkout(),
+	.coreclk(rx_coreclk_in[0]),
+	.coreclkout(),
+	.ctrldetect(wire_receive_pcs0_ctrldetect),
+	.datain(rx_pma_recoverdataout_wire[9:0]),
+	.dataout(wire_receive_pcs0_dataout),
+	.dataoutfull(),
+	.digitalreset(rx_digitalreset_out[0]),
+	.disperr(wire_receive_pcs0_disperr),
+	.enabyteord(1'b0),
+	.enapatternalign(rx_enapatternalign[0]),
+	.errdetect(wire_receive_pcs0_errdetect),
+	.fifordout(),
+	.hipdataout(),
+	.hipdatavalid(),
+	.hipelecidle(),
+	.hipphydonestatus(),
+	.hipstatus(),
+	.invpol(1'b0),
+	.k1detect(),
+	.k2detect(),
+	.localrefclk(tx_localrefclk[0]),
+	.parallelfdbk({20{1'b0}}),
+	.patterndetect(wire_receive_pcs0_patterndetect),
+	.phfifooverflow(),
+	.phfifordenable(rx_phfifordenable[0]),
+	.phfifordenableout(),
+	.phfiforeset(rx_phfiforeset[0]),
+	.phfiforesetout(),
+	.phfifounderflow(),
+	.phfifowrdisable(rx_phfifowrdisable[0]),
+	.phfifowrdisableout(),
+	.pipebufferstat(),
+	.pipedatavalid(),
+	.pipeelecidle(),
+	.pipephydonestatus(),
+	.pipepowerdown({2{1'b0}}),
+	.pipepowerstate({4{1'b0}}),
+	.pipestatus(),
+	.prbscidenable(rx_prbscidenable[0]),
+	.quadreset(cent_unit_quadresetout[0]),
+	.recoveredclk(rx_pma_clockout[0]),
+	.revbitorderwa(1'b0),
+	.revparallelfdbkdata(),
+	.rlv(wire_receive_pcs0_rlv),
+	.rmfifodatadeleted(wire_receive_pcs0_rmfifodatadeleted),
+	.rmfifodatainserted(wire_receive_pcs0_rmfifodatainserted),
+	.rmfifoempty(),
+	.rmfifofull(),
+	.rmfifordena(1'b0),
+	.rmfiforeset(rx_rmfiforeset[0]),
+	.rmfifowrena(1'b0),
+	.runningdisp(wire_receive_pcs0_runningdisp),
+	.rxdetectvalid(1'b0),
+	.rxfound({2{1'b0}}),
+	.signaldetect(wire_receive_pcs0_signaldetect),
+	.signaldetected(rx_signaldetect_wire[0]),
+	.syncstatus(wire_receive_pcs0_syncstatus),
+	.xgmctrldet(),
+	.xgmdataout(),
+	.xgmdatavalid(),
+	.xgmrunningdisp()
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.alignstatus(1'b0),
+	.alignstatussync(1'b0),
+	.bitslip(1'b0),
+	.elecidleinfersel({3{1'b0}}),
+	.enabledeskew(1'b0),
+	.fifordin(1'b0),
+	.fiforesetrd(1'b0),
+	.grayelecidleinferselfromtx({3{1'b0}}),
+	.hip8b10binvpolarity(1'b0),
+	.hipelecidleinfersel({3{1'b0}}),
+	.hippowerdown({2{1'b0}}),
+	.masterclk(1'b0),
+	.phfifox4bytesel(1'b0),
+	.phfifox4rdenable(1'b0),
+	.phfifox4wrclk(1'b0),
+	.phfifox4wrenable(1'b0),
+	.pipe8b10binvpolarity(1'b0),
+	.pipeenrevparallellpbkfromtx(1'b0),
+	.pmatestbusin({8{1'b0}}),
+	.powerdn({2{1'b0}}),
+	.refclk(1'b0),
+	.wareset(1'b0),
+	.xgmctrlin(1'b0),
+	.xgmdatain({8{1'b0}})
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		receive_pcs0.align_pattern = "0101111100",
+		receive_pcs0.align_pattern_length = 10,
+		receive_pcs0.allow_align_polarity_inversion = "false",
+		receive_pcs0.allow_pipe_polarity_inversion = "false",
+		receive_pcs0.bit_slip_enable = "false",
+		receive_pcs0.byte_order_mode = "none",
+		receive_pcs0.byte_order_pad_pattern = "0",
+		receive_pcs0.byte_order_pattern = "0",
+		receive_pcs0.byte_order_pld_ctrl_enable = "false",
+		receive_pcs0.cdrctrl_bypass_ppm_detector_cycle = 1000,
+		receive_pcs0.cdrctrl_enable = "false",
+		receive_pcs0.cdrctrl_mask_cycle = 800,
+		receive_pcs0.cdrctrl_min_lock_to_ref_cycle = 63,
+		receive_pcs0.cdrctrl_rxvalid_mask = "false",
+		receive_pcs0.channel_bonding = "none",
+		receive_pcs0.channel_number = ((starting_channel_number + 0) % 4),
+		receive_pcs0.channel_width = 8,
+		receive_pcs0.clk1_mux_select = "recovered clock",
+		receive_pcs0.clk2_mux_select = "local reference clock",
+		receive_pcs0.datapath_low_latency_mode = "false",
+		receive_pcs0.datapath_protocol = "basic",
+		receive_pcs0.dec_8b_10b_compatibility_mode = "true",
+		receive_pcs0.dec_8b_10b_mode = "normal",
+		receive_pcs0.disable_auto_idle_insertion = "true",
+		receive_pcs0.disable_running_disp_in_word_align = "false",
+		receive_pcs0.disallow_kchar_after_pattern_ordered_set = "false",
+		receive_pcs0.elec_idle_infer_enable = "false",
+		receive_pcs0.elec_idle_num_com_detect = 3,
+		receive_pcs0.enable_bit_reversal = "false",
+		receive_pcs0.enable_self_test_mode = "false",
+		receive_pcs0.force_signal_detect_dig = "true",
+		receive_pcs0.hip_enable = "false",
+		receive_pcs0.infiniband_invalid_code = 0,
+		receive_pcs0.insert_pad_on_underflow = "false",
+		receive_pcs0.num_align_code_groups_in_ordered_set = 1,
+		receive_pcs0.num_align_cons_good_data = 4,
+		receive_pcs0.num_align_cons_pat = 3,
+		receive_pcs0.num_align_loss_sync_error = 4,
+		receive_pcs0.ph_fifo_low_latency_enable = "true",
+		receive_pcs0.ph_fifo_reg_mode = "false",
+		receive_pcs0.protocol_hint = "gige",
+		receive_pcs0.rate_match_back_to_back = "true",
+		receive_pcs0.rate_match_delete_threshold = 13,
+		receive_pcs0.rate_match_empty_threshold = 5,
+		receive_pcs0.rate_match_fifo_mode = "true",
+		receive_pcs0.rate_match_full_threshold = 20,
+		receive_pcs0.rate_match_insert_threshold = 11,
+		receive_pcs0.rate_match_ordered_set_based = "true",
+		receive_pcs0.rate_match_pattern1 = "10100010010101111100",
+		receive_pcs0.rate_match_pattern2 = "10101011011010000011",
+		receive_pcs0.rate_match_pattern_size = 20,
+		receive_pcs0.rate_match_reset_enable = "false",
+		receive_pcs0.rate_match_skip_set_based = "false",
+		receive_pcs0.rate_match_start_threshold = 7,
+		receive_pcs0.rd_clk_mux_select = "core clock",
+		receive_pcs0.recovered_clk_mux_select = "recovered clock",
+		receive_pcs0.run_length = 5,
+		receive_pcs0.run_length_enable = "true",
+		receive_pcs0.rx_detect_bypass = "false",
+		receive_pcs0.rxstatus_error_report_mode = 0,
+		receive_pcs0.self_test_mode = "incremental",
+		receive_pcs0.use_alignment_state_machine = "true",
+		receive_pcs0.use_double_data_mode = "false",
+		receive_pcs0.use_parallel_loopback = "false",
+		receive_pcs0.lpm_type = "cycloneiv_hssi_rx_pcs";
+	cycloneiv_hssi_rx_pma   receive_pma0
+	( 
+	.analogtestbus(wire_receive_pma0_analogtestbus),
+	.clockout(wire_receive_pma0_clockout),
+	.crupowerdn(cent_unit_rxcrupowerdn[0]),
+	.datain(rx_datain[0]),
+	.datastrobeout(),
+	.deserclock(rx_deserclock_in[0]),
+	.diagnosticlpbkout(),
+	.freqlocked(),
+	.locktodata(rx_locktodata[0]),
+	.locktoref(rx_locktorefclk_wire[0]),
+	.locktorefout(wire_receive_pma0_locktorefout),
+	.powerdn(cent_unit_rxibpowerdn[0]),
+	.ppmdetectrefclk(rx_pll_pfdrefclkout_wire[0]),
+	.recoverdataout(wire_receive_pma0_recoverdataout),
+	.reverselpbkout(),
+	.rxpmareset(rx_analogreset_out[0]),
+	.seriallpbkin(tx_serialloopbackout[0]),
+	.signaldetect(wire_receive_pma0_signaldetect),
+	.testbussel(4'b0110)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.dpashift(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		receive_pma0.allow_serial_loopback = "true",
+		receive_pma0.channel_number = ((starting_channel_number + 0) % 4),
+		receive_pma0.common_mode = "0.82V",
+		receive_pma0.deserialization_factor = 10,
+		receive_pma0.effective_data_rate = "1250 Mbps",
+		receive_pma0.eq_dc_gain = 0,
+		receive_pma0.eq_setting = 1,
+		receive_pma0.force_signal_detect = "true",
+		receive_pma0.ppmselect = 32,
+		receive_pma0.protocol_hint = "gige",
+		receive_pma0.signal_detect_hysteresis = 2,
+		receive_pma0.signal_detect_hysteresis_valid_threshold = 1,
+		receive_pma0.signal_detect_loss_threshold = 1,
+		receive_pma0.termination = "OCT 100 Ohms",
+		receive_pma0.use_external_termination = "false",
+		receive_pma0.lpm_type = "cycloneiv_hssi_rx_pma";
+	cycloneiv_hssi_tx_pcs   transmit_pcs0
+	( 
+	.clkout(wire_transmit_pcs0_clkout),
+	.coreclk(tx_coreclk_in[0]),
+	.coreclkout(),
+	.ctrlenable({{1{1'b0}}, tx_ctrlenable[0]}),
+	.datain({{12{1'b0}}, tx_datain_wire[7:0]}),
+	.datainfull({22{1'b0}}),
+	.dataout(wire_transmit_pcs0_dataout),
+	.detectrxloop(1'b0),
+	.digitalreset(tx_digitalreset_out[0]),
+	.enrevparallellpbk(1'b0),
+	.forcedisp({{1{1'b0}}, tx_forcedisp_wire[0]}),
+	.forceelecidleout(wire_transmit_pcs0_forceelecidleout),
+	.grayelecidleinferselout(),
+	.hiptxclkout(),
+	.invpol(tx_invpolarity[0]),
+	.localrefclk(tx_localrefclk[0]),
+	.parallelfdbkout(),
+	.phfifooverflow(),
+	.phfiforddisable(1'b0),
+	.phfiforddisableout(),
+	.phfiforeset(tx_phfiforeset[0]),
+	.phfiforesetout(),
+	.phfifounderflow(),
+	.phfifowrenable(1'b1),
+	.phfifowrenableout(),
+	.pipeenrevparallellpbkout(),
+	.pipepowerdownout(),
+	.pipepowerstateout(),
+	.powerdn({2{1'b0}}),
+	.quadreset(cent_unit_quadresetout[0]),
+	.rdenablesync(),
+	.revparallelfdbk({20{1'b0}}),
+	.txdetectrx(wire_transmit_pcs0_txdetectrx),
+	.xgmctrlenable(),
+	.xgmdataout()
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.bitslipboundaryselect({5{1'b0}}),
+	.dispval({2{1'b0}}),
+	.elecidleinfersel({3{1'b0}}),
+	.forceelecidle(1'b0),
+	.hipdatain({10{1'b0}}),
+	.hipdetectrxloop(1'b0),
+	.hipelecidleinfersel({3{1'b0}}),
+	.hipforceelecidle(1'b0),
+	.hippowerdn({2{1'b0}}),
+	.phfifox4bytesel(1'b0),
+	.phfifox4rdclk(1'b0),
+	.phfifox4rdenable(1'b0),
+	.phfifox4wrenable(1'b0),
+	.pipetxswing(1'b0),
+	.prbscidenable(1'b0),
+	.refclk(1'b0),
+	.xgmctrl(1'b0),
+	.xgmdatain({8{1'b0}})
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		transmit_pcs0.allow_polarity_inversion = "false",
+		transmit_pcs0.bitslip_enable = "false",
+		transmit_pcs0.channel_bonding = "none",
+		transmit_pcs0.channel_number = ((starting_channel_number + 0) % 4),
+		transmit_pcs0.channel_width = 8,
+		transmit_pcs0.datapath_low_latency_mode = "false",
+		transmit_pcs0.datapath_protocol = "basic",
+		transmit_pcs0.disable_ph_low_latency_mode = "false",
+		transmit_pcs0.disparity_mode = "none",
+		transmit_pcs0.elec_idle_delay = 6,
+		transmit_pcs0.enable_bit_reversal = "false",
+		transmit_pcs0.enable_idle_selection = "true",
+		transmit_pcs0.enable_reverse_parallel_loopback = "false",
+		transmit_pcs0.enable_self_test_mode = "false",
+		transmit_pcs0.enc_8b_10b_compatibility_mode = "true",
+		transmit_pcs0.enc_8b_10b_mode = "normal",
+		transmit_pcs0.hip_enable = "false",
+		transmit_pcs0.ph_fifo_reg_mode = "false",
+		transmit_pcs0.prbs_cid_pattern = "false",
+		transmit_pcs0.protocol_hint = "gige",
+		transmit_pcs0.refclk_select = "local",
+		transmit_pcs0.self_test_mode = "incremental",
+		transmit_pcs0.use_double_data_mode = "false",
+		transmit_pcs0.wr_clk_mux_select = "core_clk",
+		transmit_pcs0.lpm_type = "cycloneiv_hssi_tx_pcs";
+	cycloneiv_hssi_tx_pma   transmit_pma0
+	( 
+	.cgbpowerdn(cent_unit_txdividerpowerdown[0]),
+	.clockout(wire_transmit_pma0_clockout),
+	.datain({tx_dataout_pcs_to_pma[9:0]}),
+	.dataout(wire_transmit_pma0_dataout),
+	.detectrxpowerdown(cent_unit_txdetectrxpowerdn[0]),
+	.fastrefclk0in(tx_pma_fastrefclk0in[0]),
+	.forceelecidle(1'b0),
+	.powerdn(cent_unit_txobpowerdn[0]),
+	.refclk0in(tx_pma_refclk0in[0]),
+	.refclk0inpulse(tx_pma_refclk0inpulse[0]),
+	.reverselpbkin(1'b0),
+	.rxdetecten(txdetectrxout[0]),
+	.rxdetectvalidout(),
+	.rxfoundout(),
+	.seriallpbkout(wire_transmit_pma0_seriallpbkout),
+	.txpmareset(tx_analogreset_out[0])
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_off
+	`endif
+	,
+	.diagnosticlpbkin(1'b0),
+	.rxdetectclk(1'b0)
+	`ifndef FORMAL_VERIFICATION
+	// synopsys translate_on
+	`endif
+	);
+	defparam
+		transmit_pma0.channel_number = ((starting_channel_number + 0) % 4),
+		transmit_pma0.common_mode = "0.65V",
+		transmit_pma0.effective_data_rate = "1250 Mbps",
+		transmit_pma0.enable_reverse_serial_loopback = "false",
+		transmit_pma0.preemp_tap_1 = 1,
+		transmit_pma0.protocol_hint = "gige",
+		transmit_pma0.rx_detect = 0,
+		transmit_pma0.serialization_factor = 10,
+		transmit_pma0.slew_rate = "medium",
+		transmit_pma0.termination = "OCT 100 Ohms",
+		transmit_pma0.use_external_termination = "false",
+		transmit_pma0.use_rx_detect = "false",
+		transmit_pma0.vod_selection = 1,
+		transmit_pma0.lpm_type = "cycloneiv_hssi_tx_pma";
+	assign
+		cal_blk_powerdown = 1'b0,
+		cent_unit_quadresetout = {wire_cent_unit0_quadresetout},
+		cent_unit_rxcrupowerdn = {wire_cent_unit0_rxcrupowerdown[3:0]},
+		cent_unit_rxibpowerdn = {wire_cent_unit0_rxibpowerdown[3:0]},
+		cent_unit_txdetectrxpowerdn = {wire_cent_unit0_txdetectrxpowerdown[3:0]},
+		cent_unit_txdividerpowerdown = {wire_cent_unit0_txdividerpowerdown[3:0]},
+		cent_unit_txobpowerdn = {wire_cent_unit0_txobpowerdown[3:0]},
+		fixedclk = 1'b0,
+		fixedclk_in = {{3{1'b0}}, fixedclk},
+		nonusertocmu_out = {wire_cal_blk0_nonusertocmu},
+		pll_powerdown = 1'b0,
+		reconfig_fromgxb = {rx_pma_analogtestbus[4:1], wire_cent_unit0_dprioout},
+		reconfig_togxb_disable = reconfig_togxb[1],
+		reconfig_togxb_in = reconfig_togxb[0],
+		reconfig_togxb_load = reconfig_togxb[2],
+		rx_analogreset_in = {{3{1'b0}}, rx_analogreset[0]},
+		rx_analogreset_out = {wire_cent_unit0_rxanalogresetout[3:0]},
+		rx_coreclk_in = {tx_core_clkout_wire[0]},
+		rx_ctrldetect = {wire_receive_pcs0_ctrldetect[0]},
+		rx_dataout = {rx_out_wire[7:0]},
+		rx_deserclock_in = {wire_pll0_icdrclk},
+		rx_digitalreset_in = {{3{1'b0}}, rx_digitalreset[0]},
+		rx_digitalreset_out = {wire_cent_unit0_rxdigitalresetout[3:0]},
+		rx_disperr = {wire_receive_pcs0_disperr[0]},
+		rx_enapatternalign = 1'b0,
+		rx_errdetect = {wire_receive_pcs0_errdetect[0]},
+		rx_locktodata = 1'b0,
+		rx_locktorefclk = 1'b0,
+		rx_locktorefclk_wire = {wire_receive_pcs0_cdrctrllocktorefclkout},
+		rx_out_wire = {wire_receive_pcs0_dataout[7:0]},
+		rx_patterndetect = {wire_receive_pcs0_patterndetect[0]},
+		rx_phfifordenable = 1'b1,
+		rx_phfiforeset = 1'b0,
+		rx_phfifowrdisable = 1'b0,
+		rx_pll_pfdrefclkout_wire = {wire_pll0_fref},
+		rx_pma_analogtestbus = {{4{1'b0}}, wire_receive_pma0_analogtestbus[6]},
+		rx_pma_clockout = {wire_receive_pma0_clockout},
+		rx_pma_recoverdataout_wire = {wire_receive_pma0_recoverdataout[9:0]},
+		rx_powerdown = 1'b0,
+		rx_powerdown_in = {{3{1'b0}}, rx_powerdown[0]},
+		rx_prbscidenable = 1'b0,
+		rx_rlv = {wire_receive_pcs0_rlv},
+		rx_rmfifodatadeleted = {wire_receive_pcs0_rmfifodatadeleted[0]},
+		rx_rmfifodatainserted = {wire_receive_pcs0_rmfifodatainserted[0]},
+		rx_rmfiforeset = 1'b0,
+		rx_runningdisp = {wire_receive_pcs0_runningdisp[0]},
+		rx_signaldetect_wire = {wire_receive_pma0_signaldetect},
+		rx_syncstatus = {wire_receive_pcs0_syncstatus[0]},
+		tx_analogreset_out = {wire_cent_unit0_txanalogresetout[3:0]},
+		tx_clkout = {tx_core_clkout_wire[0]},
+		tx_clkout_int_wire = {wire_transmit_pcs0_clkout},
+		tx_core_clkout_wire = {tx_clkout_int_wire[0]},
+		tx_coreclk_in = {tx_clkout_int_wire[0]},
+		tx_datain_wire = {tx_datain[7:0]},
+		tx_dataout = {txdataout[0]},
+		tx_dataout_pcs_to_pma = {wire_transmit_pcs0_dataout[9:0]},
+		tx_digitalreset_in = {{3{1'b0}}, tx_digitalreset[0]},
+		tx_digitalreset_out = {wire_cent_unit0_txdigitalresetout[3:0]},
+		tx_forcedisp_wire = {1'b0},
+		tx_invpolarity = 1'b0,
+		tx_localrefclk = {wire_transmit_pma0_clockout},
+		tx_phfiforeset = 1'b0,
+		tx_pma_fastrefclk0in = {wire_pll0_clk[0]},
+		tx_pma_refclk0in = {wire_pll0_clk[1]},
+		tx_pma_refclk0inpulse = {wire_pll0_clk[2]},
+		tx_serialloopbackout = {wire_transmit_pma0_seriallpbkout},
+		txdataout = {wire_transmit_pma0_dataout},
+		txdetectrxout = {wire_transmit_pcs0_txdetectrx};
+endmodule //altera_tse_altgx_civgx_gige_alt_c3gxb_vgl6
+//VALID FILE
+
+
+// synopsys translate_off
+`timescale 1 ps / 1 ps
+// synopsys translate_on
+module altera_tse_altgx_civgx_gige (
+	cal_blk_clk,
+	gxb_powerdown,
+	pll_inclk,
+	reconfig_clk,
+	reconfig_togxb,
+	rx_analogreset,
+	rx_datain,
+	rx_digitalreset,
+	tx_ctrlenable,
+	tx_datain,
+	tx_digitalreset,
+	reconfig_fromgxb,
+	rx_ctrldetect,
+	rx_dataout,
+	rx_disperr,
+	rx_errdetect,
+	rx_patterndetect,
+	rx_rlv,
+	rx_rmfifodatadeleted,
+	rx_rmfifodatainserted,
+	rx_runningdisp,
+	rx_syncstatus,
+	tx_clkout,
+	tx_dataout);
+
+	input	  cal_blk_clk;
+	input	[0:0]  gxb_powerdown;
+	input	  pll_inclk;
+	input	  reconfig_clk;
+	input	[3:0]  reconfig_togxb;
+	input	[0:0]  rx_analogreset;
+	input	[0:0]  rx_datain;
+	input	[0:0]  rx_digitalreset;
+	input	[0:0]  tx_ctrlenable;
+	input	[7:0]  tx_datain;
+	input	[0:0]  tx_digitalreset;
+	output	[4:0]  reconfig_fromgxb;
+	output	[0:0]  rx_ctrldetect;
+	output	[7:0]  rx_dataout;
+	output	[0:0]  rx_disperr;
+	output	[0:0]  rx_errdetect;
+	output	[0:0]  rx_patterndetect;
+	output	[0:0]  rx_rlv;
+	output	[0:0]  rx_rmfifodatadeleted;
+	output	[0:0]  rx_rmfifodatainserted;
+	output	[0:0]  rx_runningdisp;
+	output	[0:0]  rx_syncstatus;
+	output	[0:0]  tx_clkout;
+	output	[0:0]  tx_dataout;
+
+	parameter		starting_channel_number = 0;
+
+
+	wire [0:0] sub_wire0;
+	wire [0:0] sub_wire1;
+	wire [0:0] sub_wire2;
+	wire [0:0] sub_wire3;
+	wire [0:0] sub_wire4;
+	wire [0:0] sub_wire5;
+	wire [0:0] sub_wire6;
+	wire [0:0] sub_wire7;
+	wire [0:0] sub_wire8;
+	wire [0:0] sub_wire9;
+	wire [0:0] sub_wire10;
+	wire [4:0] sub_wire11;
+	wire [7:0] sub_wire12;
+	wire [0:0] rx_disperr = sub_wire0[0:0];
+	wire [0:0] rx_rlv = sub_wire1[0:0];
+	wire [0:0] rx_patterndetect = sub_wire2[0:0];
+	wire [0:0] rx_ctrldetect = sub_wire3[0:0];
+	wire [0:0] rx_errdetect = sub_wire4[0:0];
+	wire [0:0] rx_rmfifodatadeleted = sub_wire5[0:0];
+	wire [0:0] rx_runningdisp = sub_wire6[0:0];
+	wire [0:0] tx_dataout = sub_wire7[0:0];
+	wire [0:0] rx_rmfifodatainserted = sub_wire8[0:0];
+	wire [0:0] rx_syncstatus = sub_wire9[0:0];
+	wire [0:0] tx_clkout = sub_wire10[0:0];
+	wire [4:0] reconfig_fromgxb = sub_wire11[4:0];
+	wire [7:0] rx_dataout = sub_wire12[7:0];
+
+	altera_tse_altgx_civgx_gige_alt_c3gxb_vgl6	altera_tse_altgx_civgx_gige_alt_c3gxb_vgl6_component (
+				.pll_inclk (pll_inclk),
+				.gxb_powerdown (gxb_powerdown),
+				.tx_datain (tx_datain),
+				.cal_blk_clk (cal_blk_clk),
+				.reconfig_clk (reconfig_clk),
+				.rx_datain (rx_datain),
+				.reconfig_togxb (reconfig_togxb),
+				.tx_ctrlenable (tx_ctrlenable),
+				.rx_analogreset (rx_analogreset),
+				.rx_digitalreset (rx_digitalreset),
+				.tx_digitalreset (tx_digitalreset),
+				.rx_disperr (sub_wire0),
+				.rx_rlv (sub_wire1),
+				.rx_patterndetect (sub_wire2),
+				.rx_ctrldetect (sub_wire3),
+				.rx_errdetect (sub_wire4),
+				.rx_rmfifodatadeleted (sub_wire5),
+				.rx_runningdisp (sub_wire6),
+				.tx_dataout (sub_wire7),
+				.rx_rmfifodatainserted (sub_wire8),
+				.rx_syncstatus (sub_wire9),
+				.tx_clkout (sub_wire10),
+				.reconfig_fromgxb (sub_wire11),
+				.rx_dataout (sub_wire12));
+	defparam
+		altera_tse_altgx_civgx_gige_alt_c3gxb_vgl6_component.starting_channel_number = starting_channel_number;
+
+
+endmodule
+
+// ============================================================
+// CNX file retrieval info
+// ============================================================
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone IV GX"
+// Retrieval info: PRIVATE: NUM_KEYS NUMERIC "0"
+// Retrieval info: PRIVATE: RECONFIG_PROTOCOL STRING "BASIC"
+// Retrieval info: PRIVATE: RECONFIG_SUBPROTOCOL STRING "none"
+// Retrieval info: PRIVATE: RX_ENABLE_DC_COUPLING STRING "false"
+// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
+// Retrieval info: PRIVATE: WIZ_BASE_DATA_RATE STRING "1250"
+// Retrieval info: PRIVATE: WIZ_BASE_DATA_RATE_ENABLE STRING "0"
+// Retrieval info: PRIVATE: WIZ_DATA_RATE STRING "1250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INCLK_FREQ_ARRAY STRING "100"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_A STRING "2000"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_A_UNIT STRING "Mbps"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_B STRING "100"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_B_UNIT STRING "MHz"
+// Retrieval info: PRIVATE: WIZ_DPRIO_INPUT_SELECTION NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK0_FREQ STRING "100.0"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK0_PROTOCOL STRING "GIGE"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK1_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK1_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK2_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK2_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK3_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK3_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK4_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK4_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK5_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK5_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK6_FREQ STRING "250"
+// Retrieval info: PRIVATE: WIZ_DPRIO_REF_CLK6_PROTOCOL STRING "Basic"
+// Retrieval info: PRIVATE: WIZ_ENABLE_EQUALIZER_CTRL NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_EQUALIZER_CTRL_SETTING NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_FORCE_DEFAULT_SETTINGS NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_INCLK_FREQ STRING "125.0"
+// Retrieval info: PRIVATE: WIZ_INCLK_FREQ_ARRAY STRING "62.5 125.0"
+// Retrieval info: PRIVATE: WIZ_INPUT_A STRING "1250"
+// Retrieval info: PRIVATE: WIZ_INPUT_A_UNIT STRING "Mbps"
+// Retrieval info: PRIVATE: WIZ_INPUT_B STRING "125.0"
+// Retrieval info: PRIVATE: WIZ_INPUT_B_UNIT STRING "MHz"
+// Retrieval info: PRIVATE: WIZ_INPUT_SELECTION NUMERIC "0"
+// Retrieval info: PRIVATE: WIZ_PROTOCOL STRING "GIGE"
+// Retrieval info: PRIVATE: WIZ_SUBPROTOCOL STRING "None"
+// Retrieval info: PRIVATE: WIZ_WORD_ALIGN_FLIP_PATTERN STRING "0"
+// Retrieval info: PARAMETER: STARTING_CHANNEL_NUMBER NUMERIC "0"
+// Retrieval info: CONSTANT: EFFECTIVE_DATA_RATE STRING "1250 Mbps"
+// Retrieval info: CONSTANT: ENABLE_LC_TX_PLL STRING "false"
+// Retrieval info: CONSTANT: ENABLE_PLL_INCLK_ALT_DRIVE_RX_CRU STRING "true"
+// Retrieval info: CONSTANT: ENABLE_PLL_INCLK_DRIVE_RX_CRU STRING "true"
+// Retrieval info: CONSTANT: EQUALIZER_DCGAIN_SETTING NUMERIC "0"
+// Retrieval info: CONSTANT: GEN_RECONFIG_PLL STRING "false"
+// Retrieval info: CONSTANT: GX_CHANNEL_TYPE STRING ""
+// Retrieval info: CONSTANT: INPUT_CLOCK_FREQUENCY STRING "125.0 MHz"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone IV GX"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_SPEED_GRADE STRING "6"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_VARIANT STRING "ANY"
+// Retrieval info: CONSTANT: LOOPBACK_MODE STRING "slb"
+// Retrieval info: CONSTANT: LPM_TYPE STRING "alt_c3gxb"
+// Retrieval info: CONSTANT: NUMBER_OF_CHANNELS NUMERIC "1"
+// Retrieval info: CONSTANT: OPERATION_MODE STRING "duplex"
+// Retrieval info: CONSTANT: PLL_BANDWIDTH_TYPE STRING "High"
+// Retrieval info: CONSTANT: PLL_CONTROL_WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: PLL_INCLK_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: PLL_PFD_FB_MODE STRING "internal"
+// Retrieval info: CONSTANT: PREEMPHASIS_CTRL_1STPOSTTAP_SETTING NUMERIC "1"
+// Retrieval info: CONSTANT: PROTOCOL STRING "gige"
+// Retrieval info: CONSTANT: RECEIVER_TERMINATION STRING "oct_100_ohms"
+// Retrieval info: CONSTANT: RECONFIG_DPRIO_MODE NUMERIC "0"
+// Retrieval info: CONSTANT: RX_8B_10B_MODE STRING "normal"
+// Retrieval info: CONSTANT: RX_ALIGN_PATTERN STRING "0101111100"
+// Retrieval info: CONSTANT: RX_ALIGN_PATTERN_LENGTH NUMERIC "10"
+// Retrieval info: CONSTANT: RX_ALLOW_ALIGN_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: RX_ALLOW_PIPE_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: RX_BITSLIP_ENABLE STRING "false"
+// Retrieval info: CONSTANT: RX_BYTE_ORDERING_MODE STRING "NONE"
+// Retrieval info: CONSTANT: RX_CHANNEL_WIDTH NUMERIC "8"
+// Retrieval info: CONSTANT: RX_COMMON_MODE STRING "0.82v"
+// Retrieval info: CONSTANT: RX_CRU_INCLOCK0_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: RX_DATAPATH_PROTOCOL STRING "basic"
+// Retrieval info: CONSTANT: RX_DATA_RATE NUMERIC "1250"
+// Retrieval info: CONSTANT: RX_DATA_RATE_REMAINDER NUMERIC "0"
+// Retrieval info: CONSTANT: RX_DIGITALRESET_PORT_WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: RX_ENABLE_BIT_REVERSAL STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_LOCK_TO_DATA_SIG STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_LOCK_TO_REFCLK_SIG STRING "false"
+// Retrieval info: CONSTANT: RX_ENABLE_SELF_TEST_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_FORCE_SIGNAL_DETECT STRING "true"
+// Retrieval info: CONSTANT: RX_PPMSELECT NUMERIC "32"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_FIFO_MODE STRING "normal"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_PATTERN1 STRING "10100010010101111100"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_PATTERN2 STRING "10101011011010000011"
+// Retrieval info: CONSTANT: RX_RATE_MATCH_PATTERN_SIZE NUMERIC "20"
+// Retrieval info: CONSTANT: RX_RUN_LENGTH NUMERIC "5"
+// Retrieval info: CONSTANT: RX_RUN_LENGTH_ENABLE STRING "true"
+// Retrieval info: CONSTANT: RX_SIGNAL_DETECT_THRESHOLD NUMERIC "2"
+// Retrieval info: CONSTANT: RX_USE_ALIGN_STATE_MACHINE STRING "true"
+// Retrieval info: CONSTANT: RX_USE_CLKOUT STRING "false"
+// Retrieval info: CONSTANT: RX_USE_CORECLK STRING "false"
+// Retrieval info: CONSTANT: RX_USE_DESERIALIZER_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_USE_DESKEW_FIFO STRING "false"
+// Retrieval info: CONSTANT: RX_USE_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: RX_USE_RATE_MATCH_PATTERN1_ONLY STRING "false"
+// Retrieval info: CONSTANT: TRANSMITTER_TERMINATION STRING "oct_100_ohms"
+// Retrieval info: CONSTANT: TX_8B_10B_MODE STRING "normal"
+// Retrieval info: CONSTANT: TX_ALLOW_POLARITY_INVERSION STRING "false"
+// Retrieval info: CONSTANT: TX_CHANNEL_WIDTH NUMERIC "8"
+// Retrieval info: CONSTANT: TX_CLKOUT_WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: TX_COMMON_MODE STRING "0.65v"
+// Retrieval info: CONSTANT: TX_DATA_RATE NUMERIC "1250"
+// Retrieval info: CONSTANT: TX_DATA_RATE_REMAINDER NUMERIC "0"
+// Retrieval info: CONSTANT: TX_DIGITALRESET_PORT_WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: TX_ENABLE_BIT_REVERSAL STRING "false"
+// Retrieval info: CONSTANT: TX_ENABLE_SELF_TEST_MODE STRING "false"
+// Retrieval info: CONSTANT: TX_PLL_BANDWIDTH_TYPE STRING "High"
+// Retrieval info: CONSTANT: TX_PLL_INCLK0_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: TX_PLL_TYPE STRING "CMU"
+// Retrieval info: CONSTANT: TX_SLEW_RATE STRING "medium"
+// Retrieval info: CONSTANT: TX_TRANSMIT_PROTOCOL STRING "basic"
+// Retrieval info: CONSTANT: TX_USE_CORECLK STRING "false"
+// Retrieval info: CONSTANT: TX_USE_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: TX_USE_SERIALIZER_DOUBLE_DATA_MODE STRING "false"
+// Retrieval info: CONSTANT: USE_CALIBRATION_BLOCK STRING "true"
+// Retrieval info: CONSTANT: VOD_CTRL_SETTING NUMERIC "1"
+// Retrieval info: CONSTANT: equalization_setting NUMERIC "1"
+// Retrieval info: CONSTANT: gxb_powerdown_width NUMERIC "1"
+// Retrieval info: CONSTANT: number_of_quads NUMERIC "1"
+// Retrieval info: CONSTANT: pll_divide_by STRING "1"
+// Retrieval info: CONSTANT: pll_multiply_by STRING "5"
+// Retrieval info: CONSTANT: reconfig_calibration STRING "true"
+// Retrieval info: CONSTANT: reconfig_fromgxb_port_width NUMERIC "5"
+// Retrieval info: CONSTANT: reconfig_togxb_port_width NUMERIC "4"
+// Retrieval info: CONSTANT: rx_dwidth_factor NUMERIC "1"
+// Retrieval info: CONSTANT: rx_signal_detect_loss_threshold STRING "1"
+// Retrieval info: CONSTANT: rx_signal_detect_valid_threshold STRING "1"
+// Retrieval info: CONSTANT: rx_use_external_termination STRING "false"
+// Retrieval info: CONSTANT: rx_word_aligner_num_byte NUMERIC "1"
+// Retrieval info: CONSTANT: tx_dwidth_factor NUMERIC "1"
+// Retrieval info: CONSTANT: tx_use_external_termination STRING "false"
+// Retrieval info: USED_PORT: cal_blk_clk 0 0 0 0 INPUT NODEFVAL "cal_blk_clk"
+// Retrieval info: USED_PORT: gxb_powerdown 0 0 1 0 INPUT NODEFVAL "gxb_powerdown[0..0]"
+// Retrieval info: USED_PORT: pll_inclk 0 0 0 0 INPUT NODEFVAL "pll_inclk"
+// Retrieval info: USED_PORT: reconfig_clk 0 0 0 0 INPUT NODEFVAL "reconfig_clk"
+// Retrieval info: USED_PORT: reconfig_fromgxb 0 0 5 0 OUTPUT NODEFVAL "reconfig_fromgxb[4..0]"
+// Retrieval info: USED_PORT: reconfig_togxb 0 0 4 0 INPUT NODEFVAL "reconfig_togxb[3..0]"
+// Retrieval info: USED_PORT: rx_analogreset 0 0 1 0 INPUT NODEFVAL "rx_analogreset[0..0]"
+// Retrieval info: USED_PORT: rx_ctrldetect 0 0 1 0 OUTPUT NODEFVAL "rx_ctrldetect[0..0]"
+// Retrieval info: USED_PORT: rx_datain 0 0 1 0 INPUT NODEFVAL "rx_datain[0..0]"
+// Retrieval info: USED_PORT: rx_dataout 0 0 8 0 OUTPUT NODEFVAL "rx_dataout[7..0]"
+// Retrieval info: USED_PORT: rx_digitalreset 0 0 1 0 INPUT NODEFVAL "rx_digitalreset[0..0]"
+// Retrieval info: USED_PORT: rx_disperr 0 0 1 0 OUTPUT NODEFVAL "rx_disperr[0..0]"
+// Retrieval info: USED_PORT: rx_errdetect 0 0 1 0 OUTPUT NODEFVAL "rx_errdetect[0..0]"
+// Retrieval info: USED_PORT: rx_patterndetect 0 0 1 0 OUTPUT NODEFVAL "rx_patterndetect[0..0]"
+// Retrieval info: USED_PORT: rx_rlv 0 0 1 0 OUTPUT NODEFVAL "rx_rlv[0..0]"
+// Retrieval info: USED_PORT: rx_rmfifodatadeleted 0 0 1 0 OUTPUT NODEFVAL "rx_rmfifodatadeleted[0..0]"
+// Retrieval info: USED_PORT: rx_rmfifodatainserted 0 0 1 0 OUTPUT NODEFVAL "rx_rmfifodatainserted[0..0]"
+// Retrieval info: USED_PORT: rx_runningdisp 0 0 1 0 OUTPUT NODEFVAL "rx_runningdisp[0..0]"
+// Retrieval info: USED_PORT: rx_syncstatus 0 0 1 0 OUTPUT NODEFVAL "rx_syncstatus[0..0]"
+// Retrieval info: USED_PORT: tx_clkout 0 0 1 0 OUTPUT NODEFVAL "tx_clkout[0..0]"
+// Retrieval info: USED_PORT: tx_ctrlenable 0 0 1 0 INPUT NODEFVAL "tx_ctrlenable[0..0]"
+// Retrieval info: USED_PORT: tx_datain 0 0 8 0 INPUT NODEFVAL "tx_datain[7..0]"
+// Retrieval info: USED_PORT: tx_dataout 0 0 1 0 OUTPUT NODEFVAL "tx_dataout[0..0]"
+// Retrieval info: USED_PORT: tx_digitalreset 0 0 1 0 INPUT NODEFVAL "tx_digitalreset[0..0]"
+// Retrieval info: CONNECT: rx_patterndetect 0 0 1 0 @rx_patterndetect 0 0 1 0
+// Retrieval info: CONNECT: @rx_analogreset 0 0 1 0 rx_analogreset 0 0 1 0
+// Retrieval info: CONNECT: rx_ctrldetect 0 0 1 0 @rx_ctrldetect 0 0 1 0
+// Retrieval info: CONNECT: @gxb_powerdown 0 0 1 0 gxb_powerdown 0 0 1 0
+// Retrieval info: CONNECT: rx_dataout 0 0 8 0 @rx_dataout 0 0 8 0
+// Retrieval info: CONNECT: rx_runningdisp 0 0 1 0 @rx_runningdisp 0 0 1 0
+// Retrieval info: CONNECT: @cal_blk_clk 0 0 0 0 cal_blk_clk 0 0 0 0
+// Retrieval info: CONNECT: rx_errdetect 0 0 1 0 @rx_errdetect 0 0 1 0
+// Retrieval info: CONNECT: @tx_digitalreset 0 0 1 0 tx_digitalreset 0 0 1 0
+// Retrieval info: CONNECT: rx_syncstatus 0 0 1 0 @rx_syncstatus 0 0 1 0
+// Retrieval info: CONNECT: @reconfig_clk 0 0 0 0 reconfig_clk 0 0 0 0
+// Retrieval info: CONNECT: @reconfig_togxb 0 0 4 0 reconfig_togxb 0 0 4 0
+// Retrieval info: CONNECT: @rx_digitalreset 0 0 1 0 rx_digitalreset 0 0 1 0
+// Retrieval info: CONNECT: tx_clkout 0 0 1 0 @tx_clkout 0 0 1 0
+// Retrieval info: CONNECT: rx_rlv 0 0 1 0 @rx_rlv 0 0 1 0
+// Retrieval info: CONNECT: @pll_inclk 0 0 0 0 pll_inclk 0 0 0 0
+// Retrieval info: CONNECT: @tx_ctrlenable 0 0 1 0 tx_ctrlenable 0 0 1 0
+// Retrieval info: CONNECT: tx_dataout 0 0 1 0 @tx_dataout 0 0 1 0
+// Retrieval info: CONNECT: @tx_datain 0 0 8 0 tx_datain 0 0 8 0
+// Retrieval info: CONNECT: reconfig_fromgxb 0 0 5 0 @reconfig_fromgxb 0 0 5 0
+// Retrieval info: CONNECT: @rx_datain 0 0 1 0 rx_datain 0 0 1 0
+// Retrieval info: CONNECT: rx_rmfifodatainserted 0 0 1 0 @rx_rmfifodatainserted 0 0 1 0
+// Retrieval info: CONNECT: rx_rmfifodatadeleted 0 0 1 0 @rx_rmfifodatadeleted 0 0 1 0
+// Retrieval info: CONNECT: rx_disperr 0 0 1 0 @rx_disperr 0 0 1 0
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_altgx_civgx_gige.v TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_altgx_civgx_gige.ppf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_altgx_civgx_gige.inc FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_altgx_civgx_gige.cmp FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_altgx_civgx_gige.bsf FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_altgx_civgx_gige_inst.v FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_altgx_civgx_gige_bb.v TRUE
+// Retrieval info: LIB_FILE: altera_mf
+// Retrieval info: LIB_FILE: cycloneiv_hssi
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_altshifttaps.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_altshifttaps.v
new file mode 100644
index 0000000000000000000000000000000000000000..ac03ae4bfb4892aadfeaf31d3ec13037522a7255
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_altshifttaps.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_altsyncram_dpm_fifo.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_altsyncram_dpm_fifo.v
new file mode 100644
index 0000000000000000000000000000000000000000..df89539ff5b497a125df4ff683124d8a3f1db2f0
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_altsyncram_dpm_fifo.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_bin_cnt.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_bin_cnt.v
new file mode 100644
index 0000000000000000000000000000000000000000..0addf07f0265b344e70bf6e446eb9b569102b5b7
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_bin_cnt.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_carrier_sense.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_carrier_sense.v
new file mode 100644
index 0000000000000000000000000000000000000000..c281913893923458be0e267d461005aa1f3fd08d
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_carrier_sense.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_clk_cntl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_clk_cntl.v
new file mode 100644
index 0000000000000000000000000000000000000000..33339b87154f382c569674ac1dfe4ef335c12778
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_clk_cntl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_clk_gen.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_clk_gen.v
new file mode 100644
index 0000000000000000000000000000000000000000..9eedaf8a5be657acbedef5728b6feae23ec5108e
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_clk_gen.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_colision_detect.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_colision_detect.v
new file mode 100644
index 0000000000000000000000000000000000000000..3bfe9fe3f18a327faa8c6dcce073f5b2fc4e9d6b
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_colision_detect.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc328checker.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc328checker.v
new file mode 100644
index 0000000000000000000000000000000000000000..d914b3e306813e6943c4a5968ee38385024468d8
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc328checker.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc328generator.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc328generator.v
new file mode 100644
index 0000000000000000000000000000000000000000..e8d3d99771ae66bd0a5b46e20142887b13d6950c
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc328generator.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc32ctl8.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc32ctl8.v
new file mode 100644
index 0000000000000000000000000000000000000000..6fe77b1238c796761e06439a2dd9f4ce6430057b
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc32ctl8.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc32galois8.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc32galois8.v
new file mode 100644
index 0000000000000000000000000000000000000000..c9af4aacc4942050b95cf9fff9defda2130d2e55
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_crc32galois8.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dc_fifo.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dc_fifo.v
new file mode 100644
index 0000000000000000000000000000000000000000..b704c235b4b83ff98d186eaad20c8ffe654ebece
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dc_fifo.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dec10b8b.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dec10b8b.v
new file mode 100644
index 0000000000000000000000000000000000000000..6941997b0624791a304b3c0f71abbf53d588aa4e
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dec10b8b.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dec_func.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dec_func.v
new file mode 100644
index 0000000000000000000000000000000000000000..083a1fb6e358990de3398039a1875609d7e1f7a6
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dec_func.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dpram_16x32.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dpram_16x32.v
new file mode 100644
index 0000000000000000000000000000000000000000..ca6c9e5ae7223bf7088e1ed4387509032b963ca8
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dpram_16x32.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dpram_8x32.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dpram_8x32.v
new file mode 100644
index 0000000000000000000000000000000000000000..99cfe804d8d9c1f5b8a3073968ebacf8e2fdbd1d
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_dpram_8x32.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_enc8b10b.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_enc8b10b.v
new file mode 100644
index 0000000000000000000000000000000000000000..3b78095f535ffefa568da0c0201d2c8b55a47366
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_enc8b10b.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_fifoless_mac_rx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_fifoless_mac_rx.v
new file mode 100644
index 0000000000000000000000000000000000000000..f284ea879571cbb46539551d2d48eb1276119585
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_fifoless_mac_rx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_fifoless_mac_tx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_fifoless_mac_tx.v
new file mode 100644
index 0000000000000000000000000000000000000000..30f1974738d5d3c3fdac6128dc0ae306cee3bd3c
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_fifoless_mac_tx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_fifoless_retransmit_cntl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_fifoless_retransmit_cntl.v
new file mode 100644
index 0000000000000000000000000000000000000000..223f9396cfc5c53d22a5b43ef5cb29f9843fc70e
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_fifoless_retransmit_cntl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_geth_pcs_wo_ratematch.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_geth_pcs_wo_ratematch.v
new file mode 100644
index 0000000000000000000000000000000000000000..3f9d6345edc41549e7413b1f1ed8c48d6f627323
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_geth_pcs_wo_ratematch.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gige_reset_ctrl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gige_reset_ctrl.v
new file mode 100644
index 0000000000000000000000000000000000000000..d8619f528095f640bf4b71a302bf6a6f13baf56a
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gige_reset_ctrl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gmii_io.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gmii_io.v
new file mode 100644
index 0000000000000000000000000000000000000000..74c3ea3ce7267f1c4eeeec0a98003ee81222f670
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gmii_io.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gray_cnt.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gray_cnt.v
new file mode 100644
index 0000000000000000000000000000000000000000..9708472c35a23f3260a74c4791725f8ef3bb6abf
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gray_cnt.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gxb_aligned_rxsync.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gxb_aligned_rxsync.v
new file mode 100644
index 0000000000000000000000000000000000000000..88f96b1a7f71dd8cca4cf638a0b054bb35b7a40c
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gxb_aligned_rxsync.v
@@ -0,0 +1,285 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_alt2gxb_aligned_rxsync.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/strxii_pcs/verilog/altera_tse_alt2gxb_aligned_rxsync.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Siew Kong NG
+//
+// Project     : Triple Speed Ethernet - 1000 BASE-X PCS
+//
+// Description : 
+//
+// RX_SYNC alignment for Alt2gxb, Alt4gxb
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2007 (c) Altera Corporation
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+module altera_tse_gxb_aligned_rxsync (
+
+  input clk,
+  input reset,
+
+  input [7:0] alt_dataout,
+  input alt_sync,
+  input alt_disperr,
+  input alt_ctrldetect,
+  input alt_errdetect,
+  input alt_rmfifodatadeleted,
+  input alt_rmfifodatainserted,
+  input alt_runlengthviolation,
+  input alt_patterndetect,
+  input alt_runningdisp,
+
+  output reg [7:0] altpcs_dataout,
+  output altpcs_sync,
+  output reg altpcs_disperr,
+  output reg altpcs_ctrldetect,
+  output reg altpcs_errdetect,
+  output reg altpcs_rmfifodatadeleted,
+  output reg altpcs_rmfifodatainserted,
+  output reg altpcs_carrierdetect) ;
+  parameter DEVICE_FAMILY         = "ARRIAGX";    //  The device family the the core is targetted for. 
+
+  //-------------------------------------------------------------------------------
+  // intermediate wires
+
+
+  //reg altpcs_dataout
+
+  // pipelined 1
+  reg [7:0] alt_dataout_reg1;
+  reg alt_sync_reg1;
+  reg alt_sync_reg2;
+  reg alt_disperr_reg1;
+  reg alt_ctrldetect_reg1;
+  reg alt_errdetect_reg1;
+  reg alt_rmfifodatadeleted_reg1;
+  reg alt_rmfifodatainserted_reg1;
+  reg alt_patterndetect_reg1;
+  reg alt_runningdisp_reg1;
+  reg alt_runlengthviolation_latched;
+  //-------------------------------------------------------------------------------
+
+
+  always @(posedge reset or posedge clk)
+    begin
+        if (reset == 1'b1)
+            begin
+                // pipelined 1
+                alt_dataout_reg1            <= 8'h0;
+                alt_sync_reg1               <= 1'b0;
+                alt_disperr_reg1            <= 1'b0;
+                alt_ctrldetect_reg1         <= 1'b0;
+                alt_errdetect_reg1          <= 1'b0;
+                alt_rmfifodatadeleted_reg1  <= 1'b0;
+                alt_rmfifodatainserted_reg1 <= 1'b0;
+                alt_patterndetect_reg1      <= 1'b0;
+                alt_runningdisp_reg1        <= 1'b0;
+            end
+        else
+            begin
+                // pipelined 1
+                alt_dataout_reg1            <= alt_dataout;
+                alt_sync_reg1               <= alt_sync;
+                alt_disperr_reg1            <= alt_disperr;
+                alt_ctrldetect_reg1         <= alt_ctrldetect;
+                alt_errdetect_reg1          <= alt_errdetect;
+                alt_rmfifodatadeleted_reg1  <= alt_rmfifodatadeleted;
+                alt_rmfifodatainserted_reg1 <= alt_rmfifodatainserted;
+                alt_patterndetect_reg1      <= alt_patterndetect;
+                alt_runningdisp_reg1        <= alt_runningdisp;
+            end
+    
+    end 
+	
+generate if ( DEVICE_FAMILY == "STRATIXIIGX" || DEVICE_FAMILY == "ARRIAGX")
+begin          
+		always @ (posedge reset or posedge clk)
+		begin
+		 if (reset == 1'b1)
+			begin
+				altpcs_dataout              <= 8'h0;
+				altpcs_disperr              <= 1'b1;
+				altpcs_ctrldetect           <= 1'b0;
+				altpcs_errdetect            <= 1'b1;
+				altpcs_rmfifodatadeleted    <= 1'b0;
+				altpcs_rmfifodatainserted   <= 1'b0;
+			end
+		 else
+			begin
+			   if (alt_sync == 1'b1 )
+				 begin      
+					altpcs_dataout              <= alt_dataout_reg1;
+					altpcs_disperr              <= alt_disperr_reg1;
+					altpcs_ctrldetect           <= alt_ctrldetect_reg1;
+					altpcs_errdetect            <= alt_errdetect_reg1;
+					altpcs_rmfifodatadeleted    <= alt_rmfifodatadeleted_reg1;
+					altpcs_rmfifodatainserted   <= alt_rmfifodatainserted_reg1;
+				 end
+			   else
+				 begin
+					altpcs_dataout              <= 8'h0;
+					altpcs_disperr              <= 1'b1;
+					altpcs_ctrldetect           <= 1'b0;
+					altpcs_errdetect            <= 1'b1;
+					altpcs_rmfifodatadeleted    <= 1'b0;
+					altpcs_rmfifodatainserted   <= 1'b0;
+				 end
+			end
+		end
+		assign altpcs_sync              = alt_sync_reg1;	      
+end
+else if ( DEVICE_FAMILY == "STRATIXIV" || DEVICE_FAMILY == "ARRIAIIGX" || DEVICE_FAMILY == "CYCLONEIVGX")
+begin
+	always @ (posedge reset or posedge clk)
+    begin
+     if (reset == 1'b1)
+        begin
+            altpcs_dataout              <= 8'h0;
+            altpcs_disperr              <= 1'b1;
+            altpcs_ctrldetect           <= 1'b0;
+            altpcs_errdetect            <= 1'b1;
+            altpcs_rmfifodatadeleted    <= 1'b0;
+            altpcs_rmfifodatainserted   <= 1'b0;
+			alt_sync_reg2               <= 1'b0;
+        end
+     else
+        begin     
+                altpcs_dataout              <= alt_dataout_reg1;
+                altpcs_disperr              <= alt_disperr_reg1;
+                altpcs_ctrldetect           <= alt_ctrldetect_reg1;
+                altpcs_errdetect            <= alt_errdetect_reg1;
+                altpcs_rmfifodatadeleted    <= alt_rmfifodatadeleted_reg1;
+                altpcs_rmfifodatainserted   <= alt_rmfifodatainserted_reg1;
+				alt_sync_reg2               <= alt_sync_reg1 ;
+        end
+
+    end
+	
+
+    assign altpcs_sync              = alt_sync_reg2;
+end      
+endgenerate
+
+
+
+
+      
+   //latched runlength violation assertion for "carrier_detect" signal generation block
+   //reset the latch value after carrier_detect goes de-asserted
+//   always @ (altpcs_carrierdetect or alt_runlengthviolation or alt_sync_reg1)
+//    begin
+//       if (altpcs_carrierdetect == 1'b0)
+//        begin
+//           alt_runlengthviolation_latched <= 1'b0;
+//        end 
+//       else
+//        begin 
+//           if (alt_runlengthviolation == 1'b1 & alt_sync_reg1 == 1'b1)
+//            begin
+//               alt_runlengthviolation_latched <= 1'b1;
+//            end
+//        end       
+//    end
+  
+
+//    always @ (posedge reset or posedge clk)
+//     begin
+//      if (reset == 1'b1)
+//         begin
+//             alt_runlengthviolation_latched_reg <= 1'b0;
+//         end
+//      else
+//         begin
+//             alt_runlengthviolation_latched_reg <= alt_runlengthviolation_latched;
+//         end
+//     end
+
+    always @ (posedge reset or posedge clk)
+     begin
+      if (reset == 1'b1)
+         begin
+             alt_runlengthviolation_latched <= 1'b0;
+         end
+      else
+       begin
+           if ((altpcs_carrierdetect == 1'b0) | (alt_sync == 1'b0))
+            begin
+               alt_runlengthviolation_latched <= 1'b0;
+            end 
+           else
+            begin 
+               if ((alt_runlengthviolation == 1'b1) & (alt_sync == 1'b1))
+                begin
+                   alt_runlengthviolation_latched <= 1'b1;
+                end
+            end       
+       end
+     end
+
+
+   // carrier_detect signal generation
+   always @ (posedge reset or posedge clk)
+    begin
+     if (reset == 1'b1)
+        begin
+            altpcs_carrierdetect <= 1'b1;
+        end
+     else
+        begin
+           if (  (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'h1C & alt_ctrldetect_reg1 == 1'b1 & alt_errdetect_reg1 == 1'b1  
+                    & alt_disperr_reg1 ==1'b1 & alt_patterndetect_reg1 == 1'b1 & alt_runlengthviolation_latched == 1'b0                 ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'hFC & alt_ctrldetect_reg1 == 1'b1 & alt_patterndetect_reg1 == 1'b1      ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'h9C & alt_ctrldetect_reg1 == 1'b1 & alt_patterndetect_reg1 == 1'b0      ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'hBC & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0      ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'hAC & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0      ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'hB4 & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0      ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'hA7 & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0 
+                    & alt_runningdisp_reg1 == 1'b1                                                                                      ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'hA1 & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0 
+                    & alt_runningdisp_reg1 == 1'b1 & alt_runlengthviolation_latched == 1'b1                                             ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'hA2 & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0 
+                   & alt_runningdisp_reg1 == 1'b1  
+                   & ((alt_runningdisp == 1'b1 & alt_errdetect_reg1 == 1'b1 & alt_disperr_reg1 == 1'b1)|                                                                                
+                      (alt_runningdisp == 1'b0 & alt_errdetect_reg1 == 1'b1 & alt_disperr_reg1 == 1'b0 ))                               ) |
+
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'h43 & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0      ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'h53 & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0      ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'h4B & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0      ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'h47 & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0
+                   & alt_runningdisp_reg1 == 1'b0                                                                                       ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'h41 & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0
+                   & alt_runningdisp_reg1 == 1'b0 & alt_runlengthviolation_latched == 1'b1 
+                   & ((alt_runningdisp == 1'b1 & alt_errdetect_reg1 == 1'b1 & alt_disperr_reg1 == 1'b0)|                                                                                
+                      (alt_runningdisp == 1'b0 & alt_errdetect_reg1 == 1'b1 & alt_disperr_reg1 == 1'b1 ))                               ) |
+                 (alt_sync_reg1 == 1'b1 & alt_dataout_reg1 == 8'h42 & alt_ctrldetect_reg1 == 1'b0 & alt_patterndetect_reg1 == 1'b0
+                   & alt_runningdisp_reg1 == 1'b0 & ((alt_runningdisp == 1'b1 & alt_errdetect_reg1 == 1'b1 & alt_disperr_reg1 == 1'b0)|
+                                                     (alt_runningdisp == 1'b0 & alt_errdetect_reg1 == 1'b1 & alt_disperr_reg1 == 1'b1)) )  
+              )
+
+             begin      
+                altpcs_carrierdetect              <= 1'b0;
+             end
+           else
+             begin
+                altpcs_carrierdetect              <= 1'b1;
+             end
+        end
+
+    end
+
+
+
+
+endmodule
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gxb_gige_inst.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gxb_gige_inst.v
new file mode 100644
index 0000000000000000000000000000000000000000..4817a5e6afe11e6ec5de8a95ba57900db5081f4c
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_gxb_gige_inst.v
@@ -0,0 +1,288 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_gxb_gige_inst.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_gxb_gige_inst.v,v $
+//
+// $Revision: #2 $
+// $Date: 2009/11/05 $
+// Check in by : $Author: aishak $
+// Author      : Siew Kong NG
+//
+// Project     : Triple Speed Ethernet - 1000 BASE-X PCS
+//
+// Description : 
+//
+// Instantiation for Alt2gxb, Alt4gxb
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2007 (c) Altera Corporation
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+//Legal Notice: (C)2007 Altera Corporation. All rights reserved.  Your
+//use of Altera Corporation's design tools, logic functions and other
+//software and tools, and its AMPP partner logic functions, and any
+//output files any of the foregoing (including device programming or
+//simulation files), and any associated documentation or information are
+//expressly subject to the terms and conditions of the Altera Program
+//License Subscription Agreement or other applicable license agreement,
+//including, without limitation, that your use is for the sole purpose
+//of programming logic devices manufactured by Altera and sold by Altera
+//or its authorized distributors.  Please refer to the applicable
+//agreement for further details.
+
+module altera_tse_gxb_gige_inst (
+	cal_blk_clk,
+	gxb_powerdown,
+	pll_inclk,
+	reconfig_clk,
+	reconfig_togxb,	
+	rx_analogreset,
+	rx_cruclk,
+	rx_datain,
+	rx_digitalreset,
+	rx_seriallpbken,
+	tx_ctrlenable,
+	tx_datain,
+	tx_digitalreset,
+	reconfig_fromgxb,
+	rx_ctrldetect,
+	rx_dataout,
+	rx_disperr,
+	rx_errdetect,
+	rx_patterndetect,
+	rx_rlv,
+	rx_syncstatus,
+	tx_clkout,
+	tx_dataout,
+	rx_rmfifodatadeleted,
+	rx_rmfifodatainserted,
+	rx_runningdisp
+);
+parameter DEVICE_FAMILY           = "ARRIAGX";    //  The device family the the core is targetted for.
+parameter STARTING_CHANNEL_NUMBER = 0;
+parameter ENABLE_ALT_RECONFIG     = 0;
+
+
+	input	cal_blk_clk;
+	input	gxb_powerdown;
+	input	pll_inclk;
+	input	reconfig_clk;
+	input	[3:0]  reconfig_togxb;	
+	input	rx_analogreset;
+	input	rx_cruclk;
+	input	rx_datain;
+	input	rx_digitalreset;
+	input	rx_seriallpbken;
+	input	tx_ctrlenable;
+	input	[7:0]  tx_datain;
+	input	tx_digitalreset;
+	output	[16:0]  reconfig_fromgxb;	
+	output	rx_ctrldetect;
+	output	[7:0]  rx_dataout;
+	output	rx_disperr;
+	output	rx_errdetect;
+	output	rx_patterndetect;
+	output	rx_rlv;
+	output	rx_syncstatus;
+	output	tx_clkout;
+	output	tx_dataout;
+	output	rx_rmfifodatadeleted;
+	output	rx_rmfifodatainserted;
+	output	rx_runningdisp;
+
+	
+	wire    [16:0] reconfig_fromgxb;
+        wire    [2:0]  reconfig_togxb_alt2gxb;
+        wire    reconfig_fromgxb_alt2gxb;
+        wire    wire_reconfig_clk;
+        wire    [3:0] wire_reconfig_togxb;
+
+        (* altera_attribute = "-name MESSAGE_DISABLE 10036" *) 
+        wire    [16:0] wire_reconfig_fromgxb;
+
+
+        generate if (ENABLE_ALT_RECONFIG == 0)
+            begin
+            
+                assign wire_reconfig_clk = 1'b0;
+                assign wire_reconfig_togxb = 4'b0010;
+                assign reconfig_fromgxb = {17{1'b0}};        
+    
+            end
+        else
+            begin
+
+                assign wire_reconfig_clk = reconfig_clk;
+                assign wire_reconfig_togxb = reconfig_togxb;
+                assign reconfig_fromgxb = wire_reconfig_fromgxb;
+ 
+            end
+        endgenerate
+
+	
+	generate if ( DEVICE_FAMILY == "STRATIXIIGX" || DEVICE_FAMILY == "ARRIAGX")
+	begin
+	
+          altera_tse_alt2gxb_gige the_altera_tse_alt2gxb_gige
+          (
+            .cal_blk_clk (cal_blk_clk),
+            .gxb_powerdown (gxb_powerdown),
+            .pll_inclk (pll_inclk),
+            .reconfig_clk(wire_reconfig_clk),
+            .reconfig_togxb(reconfig_togxb_alt2gxb),
+            .reconfig_fromgxb(reconfig_fromgxb_alt2gxb), 
+            .rx_analogreset (rx_analogreset),
+            .rx_cruclk (rx_cruclk),
+            .rx_ctrldetect (rx_ctrldetect),
+            .rx_datain (rx_datain),
+            .rx_dataout (rx_dataout),
+            .rx_digitalreset (rx_digitalreset),
+            .rx_disperr (rx_disperr),
+            .rx_errdetect (rx_errdetect),
+            .rx_patterndetect (rx_patterndetect),
+            .rx_rlv (rx_rlv),
+            .rx_seriallpbken (rx_seriallpbken),
+            .rx_syncstatus (rx_syncstatus),
+            .tx_clkout (tx_clkout),
+            .tx_ctrlenable (tx_ctrlenable),
+            .tx_datain (tx_datain),
+            .tx_dataout (tx_dataout),
+            .tx_digitalreset (tx_digitalreset),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted),
+            .rx_runningdisp(rx_runningdisp)
+          );
+          defparam
+              the_altera_tse_alt2gxb_gige.starting_channel_number = STARTING_CHANNEL_NUMBER;
+
+
+          assign reconfig_togxb_alt2gxb = wire_reconfig_togxb[2:0];
+          assign wire_reconfig_fromgxb = {{16{1'b0}}, reconfig_fromgxb_alt2gxb};          
+	
+	end
+	endgenerate
+	
+	generate if ( DEVICE_FAMILY == "ARRIAIIGX")
+	begin
+	
+          altera_tse_alt4gxb_gige the_altera_tse_alt4gxb_gige
+          (
+            .cal_blk_clk (cal_blk_clk),
+            .fixedclk(wire_reconfig_clk),
+            .fixedclk_fast(1'b0),
+            .gxb_powerdown (gxb_powerdown),
+            .pll_inclk (pll_inclk),
+            .reconfig_clk(wire_reconfig_clk),
+            .reconfig_togxb(wire_reconfig_togxb),
+            .reconfig_fromgxb(wire_reconfig_fromgxb),              
+            .rx_analogreset (rx_analogreset),
+            .rx_cruclk (rx_cruclk),
+            .rx_ctrldetect (rx_ctrldetect),
+            .rx_datain (rx_datain),
+            .rx_dataout (rx_dataout),
+            .rx_digitalreset (rx_digitalreset),
+            .rx_disperr (rx_disperr),
+            .rx_errdetect (rx_errdetect),
+            .rx_patterndetect (rx_patterndetect),
+            .rx_rlv (rx_rlv),
+            .rx_seriallpbken (rx_seriallpbken),
+            .rx_syncstatus (rx_syncstatus),
+            .tx_clkout (tx_clkout),
+            .tx_ctrlenable (tx_ctrlenable),
+            .tx_datain (tx_datain),
+            .tx_dataout (tx_dataout),
+            .tx_digitalreset (tx_digitalreset),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted),
+            .rx_runningdisp(rx_runningdisp)
+          );
+	  defparam
+              the_altera_tse_alt4gxb_gige.starting_channel_number = STARTING_CHANNEL_NUMBER;
+          
+	end
+	endgenerate
+
+	generate if ( DEVICE_FAMILY == "STRATIXIV" || DEVICE_FAMILY == "HARDCOPYIV")
+	begin
+	
+          altera_tse_alt4gxb_gige the_altera_tse_alt4gxb_gige
+          (
+            .cal_blk_clk (cal_blk_clk),
+            .fixedclk(wire_reconfig_clk),
+            .fixedclk_fast(1'b0),
+            .gxb_powerdown (gxb_powerdown),            
+            .pll_inclk (pll_inclk),
+            .reconfig_clk(wire_reconfig_clk),
+            .reconfig_togxb(wire_reconfig_togxb),
+            .reconfig_fromgxb(wire_reconfig_fromgxb),       
+            .rx_analogreset (rx_analogreset),
+            .rx_cruclk (rx_cruclk),
+            .rx_ctrldetect (rx_ctrldetect),
+            .rx_datain (rx_datain),
+            .rx_dataout (rx_dataout),
+            .rx_digitalreset (rx_digitalreset),
+            .rx_disperr (rx_disperr),
+            .rx_errdetect (rx_errdetect),
+            .rx_patterndetect (rx_patterndetect),
+            .rx_rlv (rx_rlv),
+            .rx_seriallpbken (rx_seriallpbken),
+            .rx_syncstatus (rx_syncstatus),
+            .tx_clkout (tx_clkout),
+            .tx_ctrlenable (tx_ctrlenable),
+            .tx_datain (tx_datain),
+            .tx_dataout (tx_dataout),
+            .tx_digitalreset (tx_digitalreset),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted),
+            .rx_runningdisp(rx_runningdisp)
+          );
+          defparam
+              the_altera_tse_alt4gxb_gige.starting_channel_number = STARTING_CHANNEL_NUMBER;
+	
+	end
+	endgenerate
+	
+	
+	generate if ( DEVICE_FAMILY == "CYCLONEIVGX")
+	begin
+	
+          altera_tse_altgx_civgx_gige the_altera_tse_alt_gx_civgx
+          (
+            .cal_blk_clk (cal_blk_clk),
+            .gxb_powerdown (gxb_powerdown),
+            .pll_inclk (pll_inclk),
+	    .reconfig_clk(wire_reconfig_clk),
+            .reconfig_togxb(wire_reconfig_togxb),
+            .rx_analogreset (rx_analogreset),
+            .rx_ctrldetect (rx_ctrldetect),
+            .rx_datain (rx_datain),
+            .rx_dataout (rx_dataout),
+            .rx_digitalreset (rx_digitalreset),
+            .rx_disperr (rx_disperr),
+            .rx_errdetect (rx_errdetect),
+            .rx_patterndetect (rx_patterndetect),
+            .rx_rlv (rx_rlv),
+            .rx_syncstatus (rx_syncstatus),
+            .tx_clkout (tx_clkout),
+            .tx_ctrlenable (tx_ctrlenable),
+            .tx_datain (tx_datain),
+            .tx_dataout (tx_dataout),
+            .tx_digitalreset (tx_digitalreset),
+            .reconfig_fromgxb(wire_reconfig_fromgxb[4:0]),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted),
+            .rx_runningdisp(rx_runningdisp)			
+          );
+		  defparam
+              the_altera_tse_alt_gx_civgx.starting_channel_number = STARTING_CHANNEL_NUMBER;          
+	end
+	endgenerate
+	
+endmodule
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_hashing.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_hashing.v
new file mode 100644
index 0000000000000000000000000000000000000000..d5085c1ce9f42e05342814f31ab26ff759c647f3
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_hashing.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_host_control.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_host_control.v
new file mode 100644
index 0000000000000000000000000000000000000000..890174256fa30dc842e67e2d9c87d090bc667845
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_host_control.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_host_control_small.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_host_control_small.v
new file mode 100644
index 0000000000000000000000000000000000000000..0f5fddeb44f9f316f95d4c9c62c1c7d03656013a
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_host_control_small.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_lb_read_cntl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_lb_read_cntl.v
new file mode 100644
index 0000000000000000000000000000000000000000..f5e99e20587caef75e41e7602e4752b9c5025d40
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_lb_read_cntl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_lb_wrt_cntl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_lb_wrt_cntl.v
new file mode 100644
index 0000000000000000000000000000000000000000..eabe4260e1ee363009b704c5da69ab4ae74be814
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_lb_wrt_cntl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_lfsr_10.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_lfsr_10.v
new file mode 100644
index 0000000000000000000000000000000000000000..59f1f571a6c5e4c1a79eb65256f419a3e316c784
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_lfsr_10.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_loopback_ff.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_loopback_ff.v
new file mode 100644
index 0000000000000000000000000000000000000000..6ac41dda187fb455e010ffa2964ad0495f00938d
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_loopback_ff.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac.v
new file mode 100644
index 0000000000000000000000000000000000000000..910e585ec6e0892cd2492731c509bd92d76c269a
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac.v
@@ -0,0 +1,393 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_mac.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_mac.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet
+//
+// Description : 
+//
+// Top level module for Triple Speed Ethernet MAC
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_mac /* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */(
+
+    clk,                       // Avalon slave - clock
+    read,                      // Avalon slave - read
+    write,                     // Avalon slave - write
+    address,                   // Avalon slave - address
+    writedata,                 // Avalon slave - writedata
+    readdata,                  // Avalon slave - readdata
+    waitrequest,               // Avalon slave - waitrequest
+    reset,                     // Avalon slave - reset
+    reset_rx_clk,              
+    reset_tx_clk,
+    reset_ff_rx_clk,
+    reset_ff_tx_clk,
+    ff_rx_clk,                 // AtlanticII source - clk  
+    ff_rx_data,                // AtlanticII source - data 
+    ff_rx_mod,                 // Will not exists in SoPC Model as the 8-bit version is used
+    ff_rx_sop,                 // AtlanticII source - startofpacket
+    ff_rx_eop,                 // AtlanticII source - endofpacket
+    rx_err,                    // AtlanticII source - error 
+    rx_err_stat,               // AtlanticII source - component_specific_signal(eop)
+    rx_frm_type,               // AtlanticII source - component_specific_signal(data)
+    ff_rx_rdy,                 // AtlanticII source - ready
+    ff_rx_dval,                // AtlanticII source - valid
+    ff_rx_dsav,                // AtlanticII source - component_specific_signal(data)
+    ff_tx_clk,                 // AtlanticII sink - clk
+    ff_tx_data,                // AtlanticII sink - data
+    ff_tx_mod,                 // Will not exists in SoPC Model as the 8-bit version is used
+    ff_tx_sop,                 // AtlanticII sink - startofpacket
+    ff_tx_eop,                 // AtlanticII sink - endofpacket
+    ff_tx_err,                 // AtlanticII sink - error
+    ff_tx_wren,                // AtlanticII sink - valid
+    ff_tx_crc_fwd,             // AtlanticII sink - component_specific_signal(eop)
+    ff_tx_rdy,                 // AtlanticII sink - ready
+    ff_tx_septy,               // AtlanticII source - component_specific_signal(data)
+    tx_ff_uflow,               // AtlanticII source - component_specific_signal(data)
+    ff_rx_a_full,
+    ff_rx_a_empty,
+    ff_tx_a_full,
+    ff_tx_a_empty,
+    xoff_gen,
+    xon_gen,
+    magic_sleep_n,
+    magic_wakeup,
+    rx_clk,
+    tx_clk,
+    gm_rx_d,
+    gm_rx_dv,
+    gm_rx_err,
+    gm_tx_d,
+    gm_tx_en,
+    gm_tx_err,
+    m_rx_d,
+    m_rx_en,
+    m_rx_err,
+    m_tx_d,
+    m_tx_en,
+    m_tx_err,
+    m_rx_crs,
+    m_rx_col,   
+    eth_mode,
+    ena_10,
+    set_10,
+    set_1000,
+    mdc,
+    mdio_in,
+    mdio_out,
+    mdio_oen,    
+    tx_control,
+    rx_control,
+    rgmii_in,
+    rgmii_out
+);
+
+parameter ENABLE_ENA            = 8;            //  Enable n-Bit Local Interface
+parameter ENABLE_GMII_LOOPBACK  = 1;            //  GMII_LOOPBACK_ENA : Enable GMII Loopback Logic 
+parameter ENABLE_HD_LOGIC       = 1;            //  HD_LOGIC_ENA : Enable Half Duplex Logic
+parameter USE_SYNC_RESET        = 1;            //  Use Synchronized Reset Inputs
+parameter ENABLE_SUP_ADDR       = 1;        //  SUP_ADDR_ENA : Enable Supplemental Addresses
+parameter ENA_HASH              = 1;            //  ENA_HASH Enable Hash Table 
+parameter STAT_CNT_ENA          = 1;            //  STAT_CNT_ENA Enable Statistic Counters
+parameter ENABLE_EXTENDED_STAT_REG = 0;         //  Enable a few extended statistic registers
+parameter EG_FIFO               = 256 ;         //  Egress FIFO Depth
+parameter EG_ADDR               = 8 ;           //  Egress FIFO Depth
+parameter ING_FIFO              = 256 ;         //  Ingress FIFO Depth
+parameter ING_ADDR              = 8 ;           //  Egress FIFO Depth
+parameter RESET_LEVEL           = 1'b 1 ;       //  Reset Active Level
+parameter MDIO_CLK_DIV          = 40 ;          //  Host Clock Division - MDC Generation
+parameter CORE_VERSION          = 16'h3;        //  ALTERA Core Version
+parameter CUST_VERSION          = 1 ;           //  Customer Core Version
+parameter REDUCED_INTERFACE_ENA = 1;            //  Enable the RGMII Interface
+parameter ENABLE_MDIO           = 1;            //  Enable the MDIO Interface
+parameter ENABLE_MAGIC_DETECT   = 1;            //  Enable magic packet detection
+parameter ENABLE_MIN_FIFO       = 1;            //  Enable minimun FIFO (Reduced functionality)
+parameter ENABLE_MACLITE        = 0;            //  Enable MAC LITE operation
+parameter MACLITE_GIGE          = 0;            //  Enable/Disable Gigabit MAC operation for MAC LITE.
+parameter CRC32DWIDTH           = 4'b 1000;     //  input data width (informal, not for change)
+parameter CRC32GENDELAY         = 3'b 110;      //  when the data from the generator is valid
+parameter CRC32CHECK16BIT       = 1'b 0;        //  1 compare two times 16 bit of the CRC (adds one pipeline step) 
+parameter CRC32S1L2_EXTERN      = 1'b0;         //  false: merge enable
+parameter ENABLE_SHIFT16        = 0;            //  Enable byte stuffing at packet header 
+parameter RAM_TYPE              = "AUTO";       //  Specify the RAM type 
+parameter INSERT_TA             = 0;            //  Option to insert timing adapter for SOPC systems
+parameter ENABLE_MAC_FLOW_CTRL  = 1'b1;         //  Option to enable flow control 
+parameter ENABLE_MAC_TXADDR_SET = 1'b1;         //  Option to enable MAC address insertion onto 'to-be-transmitted' Ethernet frames on MAC TX data path
+parameter ENABLE_MAC_RX_VLAN    = 1'b1;         //  Option to enable VLAN tagged Ethernet frames on MAC RX data path
+parameter ENABLE_MAC_TX_VLAN    = 1'b1;         //  Option to enable VLAN tagged Ethernet frames on MAC TX data path
+parameter SYNCHRONIZER_DEPTH 	= 3;	  	//  Number of synchronizer
+
+
+input   clk;                    //  25MHz Host Interface Clock
+input   read;                   //  Register Read Strobe
+input   write;                  //  Register Write Strobe
+input   [7:0] address;          //  Register Address
+input   [31:0] writedata;       //  Write Data for Host Bus
+output  [31:0] readdata;        //  Read Data to Host Bus
+output  waitrequest;            //  Interface Busy
+input   reset;                  //  Asynchronous Reset
+input   reset_rx_clk;           //  Asynchronous Reset - rx_clk Domain
+input   reset_tx_clk;           //  Asynchronous Reset - tx_clk Domain
+input   reset_ff_rx_clk;        //  Asynchronous Reset - ff_rx_clk Domain
+input   reset_ff_tx_clk;        //  Asynchronous Reset - ff_tx_clk Domain
+input   ff_rx_clk;              //  Transmit Local Clock
+output  [ENABLE_ENA-1:0] ff_rx_data;      //  Data Out
+output  [1:0] ff_rx_mod;        //  Data Modulo
+output  ff_rx_sop;              //  Start of Packet
+output  ff_rx_eop;              //  End of Packet
+output  [5:0] rx_err;           //  Errored Packet Indication
+output  [17:0] rx_err_stat;     //  Packet Length and Status Word
+output  [3:0] rx_frm_type;      //  Unicast Frame Indication    
+input   ff_rx_rdy;              //  PHY Application Ready
+output  ff_rx_dval;             //  Data Valid Strobe
+output  ff_rx_dsav;             //  Data Available
+input   ff_tx_clk;              //  Transmit Local Clock    
+input   [ENABLE_ENA-1:0] ff_tx_data;      //  Data Out
+input   [1:0] ff_tx_mod;        //  Data Modulo
+input   ff_tx_sop;              //  Start of Packet
+input   ff_tx_eop;              //  End of Packet
+input   ff_tx_err;              //  Errored Packet
+input   ff_tx_wren;             //  Write Enable
+input   ff_tx_crc_fwd;          //  Forward Current Frame with CRC from Application
+output  ff_tx_rdy;              //  FIFO Ready
+output  ff_tx_septy;            //  FIFO has space for at least one section
+output  tx_ff_uflow;            //  TX FIFO underflow occured (Synchronous with tx_clk) 
+output  ff_rx_a_full;           //  Receive FIFO Almost Full
+output  ff_rx_a_empty;          //  Receive FIFO Almost Empty
+output  ff_tx_a_full;           //  Transmit FIFO Almost Full
+output  ff_tx_a_empty;          //  Transmit FIFO Almost Empty
+input   xoff_gen;               //  Xoff Pause frame generate 
+input   xon_gen;                //  Xon Pause frame generate 
+input   magic_sleep_n;          //  Enable Sleep Mode
+output  magic_wakeup;           //  Wake Up Request
+input   rx_clk;                 //  Receive Clock
+input   tx_clk;                 //  Transmit Clock                
+input   [7:0] gm_rx_d;          //  GMII Receive Data
+input   gm_rx_dv;               //  GMII Receive Frame Enable  
+input   gm_rx_err;              //  GMII Receive Frame Error  
+output  [7:0] gm_tx_d;          //  GMII Transmit Data
+output  gm_tx_en;               //  GMII Transmit Frame Enable  
+output  gm_tx_err;              //  GMII Transmit Frame Error
+input   [3:0] m_rx_d;           //  MII Receive Data
+input   m_rx_en;                //  MII Receive Frame Enable  
+input   m_rx_err;               //  MII Receive Drame Error      
+output  [3:0] m_tx_d;           //  MII Transmit Data
+output  m_tx_en;                //  MII Transmit Frame Enable  
+output  m_tx_err;               //  MII Transmit Frame Error
+input   m_rx_crs;               //  Carrier Sense
+input   m_rx_col;               //  Collition
+output  eth_mode;               //  Ethernet Mode
+output  ena_10;                 //  Enable 10Mbps Mode
+input   set_1000;               //  Gigabit Mode Enable
+input   set_10;                 //  10Mbps Mode Enable
+output  mdc;                    //  2.5MHz Inteface
+input   mdio_in;                //  MDIO Input
+output  mdio_out;               //  MDIO Output
+output  mdio_oen;               //  MDIO Output Enable
+output  tx_control;
+output  [3:0] rgmii_out;
+input   [3:0] rgmii_in;
+input   rx_control;
+
+
+wire    [31:0] reg_data_out; 
+wire    reg_busy; 
+wire    [ENABLE_ENA-1:0] ff_rx_data; 
+wire    [1:0] ff_rx_mod; 
+wire    ff_rx_sop; 
+wire    ff_rx_eop; 
+wire    ff_rx_dval; 
+wire    ff_rx_dsav; 
+wire    ff_tx_rdy; 
+wire    ff_tx_septy;
+wire    tx_ff_uflow;
+wire    magic_wakeup; 
+wire    ff_rx_a_full;
+wire    ff_rx_a_empty;
+wire    ff_tx_a_full;
+wire    ff_tx_a_empty;
+wire    [7:0] gm_tx_d; 
+wire    gm_tx_en; 
+wire    gm_tx_err;
+wire    [3:0] m_tx_d; 
+wire    m_tx_en; 
+wire    m_tx_err; 
+wire    eth_mode; 
+wire    ena_10;
+wire    mdc; 
+wire    mdio_out; 
+wire    mdio_oen; 
+wire    tx_control;
+wire    [3:0] rgmii_out; 
+wire    [5:0] rx_err;
+wire    [17:0] rx_err_stat;
+wire    [3:0] rx_frm_type;
+
+//  Reset Lines
+//  -----------
+
+wire    reset_rx_clk_int;                       //  Asynchronous Reset - rx_clk Domain
+wire    reset_tx_clk_int;                       //  Asynchronous Reset - tx_clk Domain
+wire    reset_ff_rx_clk_int;                    //  Asynchronous Reset - ff_rx_clk Domain
+wire    reset_ff_tx_clk_int;                    //  Asynchronous Reset - ff_tx_clk Domain
+wire    reset_reg_clk_int;                      //  Asynchronous Reset - reg_clk Domain
+
+
+
+// Programmable Reset Options
+// --------------------------
+    
+generate if (USE_SYNC_RESET == 1)
+    begin          
+        assign reset_rx_clk_int    = RESET_LEVEL == 1'b 1 ? reset_rx_clk    : !reset_rx_clk ;
+        assign reset_tx_clk_int    = RESET_LEVEL == 1'b 1 ? reset_tx_clk    : !reset_tx_clk ;   
+        assign reset_ff_rx_clk_int = RESET_LEVEL == 1'b 1 ? reset_ff_rx_clk : !reset_ff_rx_clk ;
+        assign reset_ff_tx_clk_int = RESET_LEVEL == 1'b 1 ? reset_ff_tx_clk : !reset_ff_tx_clk ;
+        assign reset_reg_clk_int   = RESET_LEVEL == 1'b 1 ? reset           : !reset ;
+    end
+else
+    begin
+        assign reset_rx_clk_int    = RESET_LEVEL == 1'b 1 ? reset : !reset ;
+        assign reset_tx_clk_int    = RESET_LEVEL == 1'b 1 ? reset : !reset ;   
+        assign reset_ff_rx_clk_int = RESET_LEVEL == 1'b 1 ? reset : !reset ;
+        assign reset_ff_tx_clk_int = RESET_LEVEL == 1'b 1 ? reset : !reset ;
+        assign reset_reg_clk_int   = RESET_LEVEL == 1'b 1 ? reset : !reset ; 
+    end      
+endgenerate
+    
+// --------------------------
+
+
+    altera_tse_top_gen_host    top_gen_host_inst(
+        .reset_ff_rx_clk(reset_ff_rx_clk_int),
+        .reset_ff_tx_clk(reset_ff_tx_clk_int),
+        .reset_reg_clk(reset_reg_clk_int),
+        .reset_rx_clk(reset_rx_clk_int),
+        .reset_tx_clk(reset_tx_clk_int),
+        .rx_clk(rx_clk),
+        .tx_clk(tx_clk),
+		.rx_clkena(1'b1),
+		.tx_clkena(1'b1), 
+        .gm_rx_dv(gm_rx_dv),
+        .gm_rx_d(gm_rx_d),
+        .gm_rx_err(gm_rx_err),
+        .m_rx_en(m_rx_en),
+        .m_rx_d(m_rx_d),
+        .m_rx_err(m_rx_err),
+        .m_rx_col(m_rx_col),
+        .m_rx_crs(m_rx_crs),
+        .set_1000(set_1000),
+        .set_10(set_10),
+        .ff_rx_clk(ff_rx_clk),
+        .ff_rx_rdy(ff_rx_rdy),
+        .ff_tx_clk(ff_tx_clk),
+        .ff_tx_wren(ff_tx_wren),
+        .ff_tx_data(ff_tx_data),
+        .ff_tx_mod(ff_tx_mod),
+        .ff_tx_sop(ff_tx_sop),
+        .ff_tx_eop(ff_tx_eop),
+        .ff_tx_err(ff_tx_err),
+        .ff_tx_crc_fwd(ff_tx_crc_fwd),
+        .reg_clk(clk),
+        .reg_addr(address),
+        .reg_data_in(writedata),
+        .reg_rd(read),
+        .reg_wr(write),
+        .mdio_in(mdio_in),
+        .gm_tx_en(gm_tx_en),
+        .gm_tx_d(gm_tx_d),
+        .gm_tx_err(gm_tx_err),
+        .m_tx_en(m_tx_en),
+        .m_tx_d(m_tx_d),
+        .m_tx_err(m_tx_err),
+        .eth_mode(eth_mode),
+        .ena_10(ena_10),
+        .ff_rx_dval(ff_rx_dval),
+        .ff_rx_data(ff_rx_data),
+        .ff_rx_mod(ff_rx_mod),
+        .ff_rx_sop(ff_rx_sop),
+        .ff_rx_eop(ff_rx_eop),
+        .ff_rx_dsav(ff_rx_dsav),
+        .rx_err(rx_err),
+        .rx_err_stat(rx_err_stat),
+        .rx_frm_type(rx_frm_type),
+        .ff_tx_rdy(ff_tx_rdy),
+        .ff_tx_septy(ff_tx_septy),
+        .tx_ff_uflow(tx_ff_uflow),
+        .rx_a_full(ff_rx_a_full),
+        .rx_a_empty(ff_rx_a_empty),
+        .tx_a_full(ff_tx_a_full),
+        .tx_a_empty(ff_tx_a_empty),
+        .xoff_gen(xoff_gen),
+        .xon_gen(xon_gen),
+        .reg_data_out(readdata),
+        .reg_busy(waitrequest),
+        .reg_sleepN(magic_sleep_n),
+        .reg_wakeup(magic_wakeup),
+        .mdc(mdc),
+        .mdio_out(mdio_out),
+        .mdio_oen(mdio_oen),
+        .tx_control(tx_control),
+        .rgmii_out(rgmii_out),
+        .rgmii_in(rgmii_in),
+        .rx_control(rx_control));
+
+    defparam
+        top_gen_host_inst.EG_FIFO = EG_FIFO,
+        top_gen_host_inst.ENABLE_SUP_ADDR = ENABLE_SUP_ADDR,
+        top_gen_host_inst.CORE_VERSION = CORE_VERSION,
+        top_gen_host_inst.CRC32GENDELAY = CRC32GENDELAY,
+        top_gen_host_inst.MDIO_CLK_DIV = MDIO_CLK_DIV,
+        top_gen_host_inst.EG_ADDR = EG_ADDR,
+        top_gen_host_inst.ENA_HASH = ENA_HASH,
+        top_gen_host_inst.STAT_CNT_ENA = STAT_CNT_ENA,
+		top_gen_host_inst.ENABLE_EXTENDED_STAT_REG = ENABLE_EXTENDED_STAT_REG,
+        top_gen_host_inst.ING_FIFO = ING_FIFO,
+        top_gen_host_inst.ENABLE_ENA = ENABLE_ENA,
+        top_gen_host_inst.ENABLE_HD_LOGIC = ENABLE_HD_LOGIC,
+        top_gen_host_inst.REDUCED_INTERFACE_ENA = REDUCED_INTERFACE_ENA,
+        top_gen_host_inst.ENABLE_MDIO = ENABLE_MDIO,
+        top_gen_host_inst.ENABLE_MAGIC_DETECT = ENABLE_MAGIC_DETECT,
+        top_gen_host_inst.ENABLE_MIN_FIFO = ENABLE_MIN_FIFO,        
+        top_gen_host_inst.ENABLE_PADDING = !ENABLE_MACLITE, //1,
+        top_gen_host_inst.ENABLE_LGTH_CHECK = !ENABLE_MACLITE, //1,
+        top_gen_host_inst.GBIT_ONLY = !ENABLE_MACLITE | MACLITE_GIGE, //1,
+        top_gen_host_inst.MBIT_ONLY = !ENABLE_MACLITE | !MACLITE_GIGE, //1,
+        top_gen_host_inst.REDUCED_CONTROL = ENABLE_MACLITE, //0,
+        top_gen_host_inst.CRC32S1L2_EXTERN = CRC32S1L2_EXTERN,
+        top_gen_host_inst.ENABLE_GMII_LOOPBACK = ENABLE_GMII_LOOPBACK,
+        top_gen_host_inst.ING_ADDR = ING_ADDR,
+        top_gen_host_inst.CRC32DWIDTH = CRC32DWIDTH,
+        top_gen_host_inst.CUST_VERSION = CUST_VERSION,
+        top_gen_host_inst.CRC32CHECK16BIT = CRC32CHECK16BIT,
+        top_gen_host_inst.ENABLE_SHIFT16 = ENABLE_SHIFT16,
+        top_gen_host_inst.INSERT_TA = INSERT_TA,
+        top_gen_host_inst.RAM_TYPE = RAM_TYPE,
+        top_gen_host_inst.ENABLE_MAC_FLOW_CTRL  = ENABLE_MAC_FLOW_CTRL,
+        top_gen_host_inst.ENABLE_MAC_TXADDR_SET = ENABLE_MAC_TXADDR_SET,
+        top_gen_host_inst.ENABLE_MAC_RX_VLAN    = ENABLE_MAC_RX_VLAN,
+		top_gen_host_inst.SYNCHRONIZER_DEPTH	= SYNCHRONIZER_DEPTH,
+        top_gen_host_inst.ENABLE_MAC_TX_VLAN    = ENABLE_MAC_TX_VLAN;
+		
+
+
+
+endmodule
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_control.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_control.v
new file mode 100644
index 0000000000000000000000000000000000000000..86d6870e253e6e8e09c1d4a9d61f2a7242091028
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_control.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs.v
new file mode 100644
index 0000000000000000000000000000000000000000..0a284ffbbf4dfcf5aef3d82cfbed64042ed28ba7
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs.v
@@ -0,0 +1,467 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_mac_pcs.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_mac_pcs.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet
+//
+// Description : 
+//
+// Top level module for Triple Speed Ethernet MAC + PCS
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_mac_pcs /* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */(
+
+    clk,                       // Avalon slave - clock
+    read,                      // Avalon slave - read
+    write,                     // Avalon slave - write
+    address,                   // Avalon slave - address
+    writedata,                 // Avalon slave - writedata
+    readdata,                  // Avalon slave - readdata
+    waitrequest,               // Avalon slave - waitrequest
+    reset,                     // Avalon slave - reset
+    reset_rx_clk,              
+    reset_tx_clk,
+    reset_ff_rx_clk,
+    reset_ff_tx_clk,
+    ff_rx_clk,                 // AtlanticII source - clk  
+    ff_rx_data,                // AtlanticII source - data 
+    ff_rx_mod,                 // Will not exists in SoPC Model as the 8-bit version is used
+    ff_rx_sop,                 // AtlanticII source - startofpacket
+    ff_rx_eop,                 // AtlanticII source - endofpacket
+    rx_err,                    // AtlanticII source - error 
+    rx_err_stat,               // AtlanticII source - component_specific_signal(eop)
+    rx_frm_type,               // AtlanticII source - component_specific_signal(data)
+    ff_rx_rdy,                 // AtlanticII source - ready
+    ff_rx_dval,                // AtlanticII source - valid
+    ff_rx_dsav,                // Will not exists in SoPC Model (leave unconnected)
+    ff_tx_clk,                 // AtlanticII sink - clk
+    ff_tx_data,                // AtlanticII sink - data
+    ff_tx_mod,                 // Will not exists in SoPC Model as the 8-bit version is used
+    ff_tx_sop,                 // AtlanticII sink - startofpacket
+    ff_tx_eop,                 // AtlanticII sink - endofpacket
+    ff_tx_err,                 // AtlanticII sink - error
+    ff_tx_wren,                // AtlanticII sink - valid
+    ff_tx_crc_fwd,             // AtlanticII sink - component_specific_signal(eop)
+    ff_tx_rdy,                 // AtlanticII sink - ready
+    ff_tx_septy,               // Will not exists in SoPC Model (leave unconnected)
+    tx_ff_uflow,               // Will not exists in SoPC Model (leave unconnected)
+    ff_rx_a_full,
+    ff_rx_a_empty,
+    ff_tx_a_full,
+    ff_tx_a_empty,
+    xoff_gen,
+    xon_gen,
+    magic_sleep_n,
+    magic_wakeup,
+    mdc,
+    mdio_in,
+    mdio_out,
+    mdio_oen,       
+    tbi_rx_clk,
+    tbi_tx_clk,
+    tbi_rx_d,
+    tbi_tx_d,
+    sd_loopback,   
+    powerdown,
+    led_col,
+    led_an,
+    led_char_err,
+    led_disp_err,
+    led_crs,
+    led_link 
+);
+
+parameter ENABLE_ENA            = 8;            //  Enable n-Bit Local Interface
+parameter ENABLE_GMII_LOOPBACK  = 1;            //  GMII_LOOPBACK_ENA : Enable GMII Loopback Logic 
+parameter ENABLE_HD_LOGIC       = 1;            //  HD_LOGIC_ENA : Enable Half Duplex Logic
+parameter USE_SYNC_RESET        = 1;            //  Use Synchronized Reset Inputs
+parameter ENABLE_SUP_ADDR       = 1;            //  SUP_ADDR_ENA : Enable Supplemental Addresses
+parameter ENA_HASH              = 1;            //  ENA_HASH Enable Hash Table 
+parameter STAT_CNT_ENA          = 1;            //  STAT_CNT_ENA Enable Statistic Counters
+parameter ENABLE_EXTENDED_STAT_REG = 0;         //  Enable a few extended statistic registers
+parameter EG_FIFO               = 256 ;         //  Egress FIFO Depth
+parameter EG_ADDR               = 8 ;           //  Egress FIFO Depth
+parameter ING_FIFO              = 256 ;         //  Ingress FIFO Depth
+parameter ING_ADDR              = 8 ;           //  Egress FIFO Depth
+parameter RESET_LEVEL           = 1'b 1 ;       //  Reset Active Level
+parameter MDIO_CLK_DIV          = 40 ;          //  Host Clock Division - MDC Generation
+parameter CORE_VERSION          = 16'h3;        //  ALTERA Core Version
+parameter CUST_VERSION          = 1 ;           //  Customer Core Version
+parameter REDUCED_INTERFACE_ENA = 0;            //  Enable the RGMII / MII Interface
+parameter ENABLE_MDIO           = 1;            //  Enable the MDIO Interface
+parameter ENABLE_MAGIC_DETECT   = 1;            //  Enable magic packet detection
+parameter ENABLE_MIN_FIFO       = 1;            //  Enable minimun FIFO (Reduced functionality)
+parameter ENABLE_MACLITE        = 0;            //  Enable MAC LITE operation
+parameter MACLITE_GIGE          = 0;            //  Enable/Disable Gigabit MAC operation for MAC LITE.
+parameter CRC32DWIDTH           = 4'b 1000;     //  input data width (informal, not for change)
+parameter CRC32GENDELAY         = 3'b 110;      //  when the data from the generator is valid
+parameter CRC32CHECK16BIT       = 1'b 0;        //  1 compare two times 16 bit of the CRC (adds one pipeline step) 
+parameter CRC32S1L2_EXTERN      = 1'b0;         //  false: merge enable
+parameter ENABLE_SHIFT16        = 0;            //  Enable byte stuffing at packet header
+parameter RAM_TYPE              = "AUTO";       //  Specify the RAM type 
+parameter INSERT_TA             = 0;            //  Option to insert timing adapter for SOPC systems
+parameter PHY_IDENTIFIER        = 32'h 00000000; 
+parameter DEV_VERSION           = 16'h 0001 ;   //  Customer Phy's Core Version
+parameter ENABLE_SGMII          = 1;            //  Enable SGMII logic for synthesis
+parameter ENABLE_MAC_FLOW_CTRL  = 1'b1;         //  Option to enable flow control 
+parameter ENABLE_MAC_TXADDR_SET = 1'b1;         //  Option to enable MAC address insertion onto 'to-be-transmitted' Ethernet frames on MAC TX data path
+parameter ENABLE_MAC_RX_VLAN    = 1'b1;         //  Option to enable VLAN tagged Ethernet frames on MAC RX data path
+parameter ENABLE_MAC_TX_VLAN    = 1'b1;         //  Option to enable VLAN tagged Ethernet frames on MAC TX data path
+parameter SYNCHRONIZER_DEPTH 	= 3;	  	//  Number of synchronizer
+
+input   clk;                    //  25MHz Host Interface Clock
+input   read;                   //  Register Read Strobe
+input   write;                  //  Register Write Strobe
+input   [7:0] address;          //  Register Address
+input   [31:0] writedata;       //  Write Data for Host Bus
+output  [31:0] readdata;        //  Read Data to Host Bus
+output  waitrequest;            //  Interface Busy
+input   reset;                  //  Asynchronous Reset
+input   reset_rx_clk;           //  Asynchronous Reset - rx_clk Domain
+input   reset_tx_clk;           //  Asynchronous Reset - tx_clk Domain
+input   reset_ff_rx_clk;        //  Asynchronous Reset - ff_rx_clk Domain
+input   reset_ff_tx_clk;        //  Asynchronous Reset - ff_tx_clk Domain
+input   ff_rx_clk;              //  Transmit Local Clock
+output  [ENABLE_ENA-1:0] ff_rx_data;      //  Data Out
+output  [1:0] ff_rx_mod;        //  Data Modulo
+output  ff_rx_sop;              //  Start of Packet
+output  ff_rx_eop;              //  End of Packet
+output  [5:0] rx_err;           //  Errored Packet Indication
+output  [17:0] rx_err_stat;     //  Packet Length and Status Word
+output  [3:0] rx_frm_type;      //  Unicast Frame Indication    
+input   ff_rx_rdy;              //  PHY Application Ready
+output  ff_rx_dval;             //  Data Valid Strobe
+output  ff_rx_dsav;             //  Data Available
+input   ff_tx_clk;              //  Transmit Local Clock    
+input   [ENABLE_ENA-1:0] ff_tx_data;      //  Data Out
+input   [1:0] ff_tx_mod;        //  Data Modulo
+input   ff_tx_sop;              //  Start of Packet
+input   ff_tx_eop;              //  End of Packet
+input   ff_tx_err;              //  Errored Packet
+input   ff_tx_wren;             //  Write Enable
+input   ff_tx_crc_fwd;          //  Forward Current Frame with CRC from Application
+output  ff_tx_rdy;              //  FIFO Ready
+output  ff_tx_septy;            //  FIFO has space for at least one section
+output  tx_ff_uflow;            //  TX FIFO underflow occured (Synchronous with tx_clk) 
+output  ff_rx_a_full;           //  Receive FIFO Almost Full
+output  ff_rx_a_empty;          //  Receive FIFO Almost Empty
+output  ff_tx_a_full;           //  Transmit FIFO Almost Full
+output  ff_tx_a_empty;          //  Transmit FIFO Almost Empty
+input   xoff_gen;               //  Xoff Pause frame generate 
+input   xon_gen;                //  Xon Pause frame generate 
+input   magic_sleep_n;          //  Enable Sleep Mode
+output  magic_wakeup;           //  Wake Up Request
+output  mdc;                    //  2.5MHz Inteface
+input   mdio_in;                //  MDIO Input
+output  mdio_out;               //  MDIO Output
+output  mdio_oen;               //  MDIO Output Enable
+
+input   tbi_rx_clk;             //  125MHz Recoved Clock
+input   tbi_tx_clk;             //  125MHz Transmit Clock
+input   [9:0] tbi_rx_d;         //  Non Aligned 10-Bit Characters
+output  [9:0] tbi_tx_d;         //  Transmit TBI Interface
+output  sd_loopback;            //  SERDES Loopback Enable
+output  powerdown;              //  Powerdown Enable
+output  led_crs;                //  Carrier Sense
+output  led_link;               //  Valid Link 
+output  led_col;                //  Collision Indication
+output  led_an;                 //  Auto-Negotiation Status
+output  led_char_err;           //  Character Error
+output  led_disp_err;           //  Disparity Error
+
+
+wire    [31:0] reg_data_out; 
+wire    reg_busy; 
+wire    [ENABLE_ENA-1:0] ff_rx_data; 
+wire    [1:0] ff_rx_mod; 
+wire    ff_rx_sop; 
+wire    ff_rx_eop; 
+wire    ff_rx_dval; 
+wire    ff_rx_dsav; 
+wire    ff_tx_rdy; 
+wire    ff_tx_septy;
+wire    tx_ff_uflow;
+wire    magic_wakeup; 
+wire    ff_rx_a_full;
+wire    ff_rx_a_empty;
+wire    ff_tx_a_full;
+wire    ff_tx_a_empty;
+wire    mdc; 
+wire    mdio_out; 
+wire    mdio_oen; 
+
+wire    [9:0] tbi_tx_d;
+wire    sd_loopback;
+wire    powerdown;
+wire    led_crs;
+wire    led_link;
+wire    led_col;
+wire    led_an;
+wire    led_char_err;
+wire    led_disp_err;
+
+wire    rx_clk;
+wire    tx_clk;
+wire    rx_clkena;
+wire    tx_clkena;
+wire    [7:0] gm_rx_d;          //  GMII Receive Data
+wire    gm_rx_dv;               //  GMII Receive Frame Enable  
+wire    gm_rx_err;              //  GMII Receive Frame Error  
+wire    [7:0] gm_tx_d;          //  GMII Transmit Data
+wire    gm_tx_en;               //  GMII Transmit Frame Enable  
+wire    gm_tx_err;              //  GMII Transmit Frame Error
+wire    [3:0] m_rx_d;           //  MII Receive Data
+wire    m_rx_dv;                //  MII Receive Frame Enable  
+wire    m_rx_err;               //  MII Receive Drame Error      
+wire    [3:0] m_tx_d;           //  MII Transmit Data
+wire    m_tx_en;                //  MII Transmit Frame Enable  
+wire    m_tx_err;               //  MII Transmit Frame Error
+wire    m_rx_crs;               //  Carrier Sense
+wire    m_rx_col;               //  Collition
+wire    set_1000;               //  Gigabit Mode Enable
+wire    set_10;                 //  10Mbps Mode Enable
+
+wire    pcs_en;
+wire    [31:0]readdata_mac;
+wire    waitrequest_mac;
+wire    [31:0]readdata_pcs;
+wire    waitrequest_pcs;
+wire    write_pcs;
+wire    read_pcs;
+wire    write_mac;
+wire    read_mac;
+
+wire    [5:0] rx_err;
+wire    [17:0] rx_err_stat;
+wire    [3:0] rx_frm_type;
+
+//  Reset Lines
+//  -----------
+
+wire    reset_rx_clk_int;                       //  Asynchronous Reset - rx_clk Domain
+wire    reset_tx_clk_int;                       //  Asynchronous Reset - tx_clk Domain
+wire    reset_ff_rx_clk_int;                    //  Asynchronous Reset - ff_rx_clk Domain
+wire    reset_ff_tx_clk_int;                    //  Asynchronous Reset - ff_tx_clk Domain
+wire    reset_reg_clk_int;                      //  Asynchronous Reset - reg_clk Domain
+
+
+  
+// This is done because the PCS address space is from 0x80 to 0x9F
+// ---------------------------------------------------------------
+assign pcs_en = address[7] & !address[6] & !address[5];
+assign write_pcs = pcs_en? write : 1'b0;
+assign read_pcs = pcs_en? read : 1'b0;
+assign write_mac = pcs_en? 1'b0 : write;
+assign read_mac  = pcs_en? 1'b0 : read;
+assign readdata = pcs_en? readdata_pcs : readdata_mac;
+assign waitrequest = pcs_en? waitrequest_pcs : waitrequest_mac;        
+
+assign readdata_pcs[31:16] = {16{1'b0}};
+
+
+
+// Programmable Reset Options
+// --------------------------
+    
+generate if (USE_SYNC_RESET == 1)
+    begin          
+        assign reset_rx_clk_int    = RESET_LEVEL == 1'b 1 ? reset_rx_clk    : !reset_rx_clk ;
+        assign reset_tx_clk_int    = RESET_LEVEL == 1'b 1 ? reset_tx_clk    : !reset_tx_clk ;   
+        assign reset_ff_rx_clk_int = RESET_LEVEL == 1'b 1 ? reset_ff_rx_clk : !reset_ff_rx_clk ;
+        assign reset_ff_tx_clk_int = RESET_LEVEL == 1'b 1 ? reset_ff_tx_clk : !reset_ff_tx_clk ;
+        assign reset_reg_clk_int   = RESET_LEVEL == 1'b 1 ? reset           : !reset ;
+    end
+else
+    begin
+    assign reset_rx_clk_int    = RESET_LEVEL == 1'b 1 ? reset : !reset ;
+        assign reset_tx_clk_int    = RESET_LEVEL == 1'b 1 ? reset : !reset ;   
+        assign reset_ff_rx_clk_int = RESET_LEVEL == 1'b 1 ? reset : !reset ;
+        assign reset_ff_tx_clk_int = RESET_LEVEL == 1'b 1 ? reset : !reset ;
+        assign reset_reg_clk_int   = RESET_LEVEL == 1'b 1 ? reset : !reset ; 
+    end      
+endgenerate
+    
+// --------------------------
+        
+
+    altera_tse_top_gen_host    top_gen_host_inst(
+        .reset_ff_rx_clk(reset_ff_rx_clk_int),
+        .reset_ff_tx_clk(reset_ff_tx_clk_int),
+        .reset_reg_clk(reset_reg_clk_int),
+        .reset_rx_clk(reset_rx_clk_int),
+        .reset_tx_clk(reset_tx_clk_int),
+        .rx_clk(rx_clk),
+        .tx_clk(tx_clk),
+		.rx_clkena(rx_clkena),
+		.tx_clkena(tx_clkena),
+        .gm_rx_dv(gm_rx_dv),
+        .gm_rx_d(gm_rx_d),
+        .gm_rx_err(gm_rx_err),
+        .m_rx_en(m_rx_dv),
+        .m_rx_d(m_rx_d),
+        .m_rx_err(m_rx_err),
+        .m_rx_col(m_rx_col),
+        .m_rx_crs(m_rx_crs),
+        .set_1000(set_1000),
+        .set_10(set_10),
+        .ff_rx_clk(ff_rx_clk),
+        .ff_rx_rdy(ff_rx_rdy),
+        .ff_tx_clk(ff_tx_clk),
+        .ff_tx_wren(ff_tx_wren),
+        .ff_tx_data(ff_tx_data),
+        .ff_tx_mod(ff_tx_mod),
+        .ff_tx_sop(ff_tx_sop),
+        .ff_tx_eop(ff_tx_eop),
+        .ff_tx_err(ff_tx_err),
+        .ff_tx_crc_fwd(ff_tx_crc_fwd),
+        .reg_clk(clk),
+        .reg_addr(address),
+        .reg_data_in(writedata),
+        .reg_rd(read_mac),
+        .reg_wr(write_mac),
+        .mdio_in(mdio_in),
+        .gm_tx_en(gm_tx_en),
+        .gm_tx_d(gm_tx_d),
+        .gm_tx_err(gm_tx_err),
+        .m_tx_en(m_tx_en),
+        .m_tx_d(m_tx_d),
+        .m_tx_err(m_tx_err),
+        .eth_mode(),
+        .ena_10(),
+        .ff_rx_dval(ff_rx_dval),
+        .ff_rx_data(ff_rx_data),
+        .ff_rx_mod(ff_rx_mod),
+        .ff_rx_sop(ff_rx_sop),
+        .ff_rx_eop(ff_rx_eop),
+        .ff_rx_dsav(ff_rx_dsav),
+        .rx_err(rx_err),
+        .rx_err_stat(rx_err_stat),
+        .rx_frm_type(rx_frm_type),
+        .ff_tx_rdy(ff_tx_rdy),
+        .ff_tx_septy(ff_tx_septy),
+        .tx_ff_uflow(tx_ff_uflow),
+        .rx_a_full(ff_rx_a_full),
+        .rx_a_empty(ff_rx_a_empty),
+        .tx_a_full(ff_tx_a_full),
+        .tx_a_empty(ff_tx_a_empty),
+        .xoff_gen(xoff_gen),
+        .xon_gen(xon_gen),
+        .reg_data_out(readdata_mac),
+        .reg_busy(waitrequest_mac),
+        .reg_sleepN(magic_sleep_n),
+        .reg_wakeup(magic_wakeup),
+        .mdc(mdc),
+        .mdio_out(mdio_out),
+        .mdio_oen(mdio_oen));
+
+    defparam
+        top_gen_host_inst.EG_FIFO = EG_FIFO,
+        top_gen_host_inst.ENABLE_SUP_ADDR = ENABLE_SUP_ADDR,
+        top_gen_host_inst.CORE_VERSION = CORE_VERSION,
+        top_gen_host_inst.CRC32GENDELAY = CRC32GENDELAY,
+        top_gen_host_inst.MDIO_CLK_DIV = MDIO_CLK_DIV,
+        top_gen_host_inst.EG_ADDR = EG_ADDR,
+        top_gen_host_inst.ENA_HASH = ENA_HASH,
+        top_gen_host_inst.STAT_CNT_ENA = STAT_CNT_ENA,
+		top_gen_host_inst.ENABLE_EXTENDED_STAT_REG = ENABLE_EXTENDED_STAT_REG,
+        top_gen_host_inst.ING_FIFO = ING_FIFO,
+        top_gen_host_inst.ENABLE_ENA = ENABLE_ENA,
+        top_gen_host_inst.ENABLE_HD_LOGIC = ENABLE_HD_LOGIC,
+        top_gen_host_inst.REDUCED_INTERFACE_ENA = REDUCED_INTERFACE_ENA,
+        top_gen_host_inst.ENABLE_MDIO = ENABLE_MDIO,
+        top_gen_host_inst.ENABLE_MAGIC_DETECT = ENABLE_MAGIC_DETECT,
+        top_gen_host_inst.ENABLE_MIN_FIFO = ENABLE_MIN_FIFO,
+        top_gen_host_inst.ENABLE_PADDING = !ENABLE_MACLITE,
+        top_gen_host_inst.ENABLE_LGTH_CHECK = !ENABLE_MACLITE,
+        top_gen_host_inst.GBIT_ONLY = !ENABLE_MACLITE | MACLITE_GIGE,
+        top_gen_host_inst.MBIT_ONLY = !ENABLE_MACLITE | !MACLITE_GIGE,
+        top_gen_host_inst.REDUCED_CONTROL = ENABLE_MACLITE,
+        top_gen_host_inst.CRC32S1L2_EXTERN = CRC32S1L2_EXTERN,
+        top_gen_host_inst.ENABLE_GMII_LOOPBACK = ENABLE_GMII_LOOPBACK,
+        top_gen_host_inst.ING_ADDR = ING_ADDR,
+        top_gen_host_inst.CRC32DWIDTH = CRC32DWIDTH,
+        top_gen_host_inst.CUST_VERSION = CUST_VERSION,
+        top_gen_host_inst.CRC32CHECK16BIT = CRC32CHECK16BIT,
+        top_gen_host_inst.ENABLE_SHIFT16 = ENABLE_SHIFT16,
+        top_gen_host_inst.INSERT_TA = INSERT_TA,
+        top_gen_host_inst.RAM_TYPE = RAM_TYPE,
+        top_gen_host_inst.ENABLE_MAC_FLOW_CTRL  = ENABLE_MAC_FLOW_CTRL,
+        top_gen_host_inst.ENABLE_MAC_TXADDR_SET = ENABLE_MAC_TXADDR_SET,
+        top_gen_host_inst.ENABLE_MAC_RX_VLAN    = ENABLE_MAC_RX_VLAN,
+		top_gen_host_inst.SYNCHRONIZER_DEPTH = SYNCHRONIZER_DEPTH,
+        top_gen_host_inst.ENABLE_MAC_TX_VLAN    = ENABLE_MAC_TX_VLAN;
+
+
+
+    altera_tse_top_1000_base_x    top_1000_base_x_inst(
+        .reset_rx_clk(reset_rx_clk_int),
+        .reset_tx_clk(reset_tx_clk_int),
+        .reset_reg_clk(reset_reg_clk_int),
+        .rx_clk(rx_clk),
+        .tx_clk(tx_clk),
+		.rx_clkena(rx_clkena),
+		.tx_clkena(tx_clkena),
+		.ref_clk(1'b0),
+        .gmii_rx_dv(gm_rx_dv),
+        .gmii_rx_d(gm_rx_d),
+        .gmii_rx_err(gm_rx_err),
+        .gmii_tx_en(gm_tx_en),
+        .gmii_tx_d(gm_tx_d),
+        .gmii_tx_err(gm_tx_err),
+        .mii_rx_dv(m_rx_dv),
+        .mii_rx_d(m_rx_d),
+        .mii_rx_err(m_rx_err),
+        .mii_tx_en(m_tx_en),
+        .mii_tx_d(m_tx_d),
+        .mii_tx_err(m_tx_err),
+        .mii_col(m_rx_col),
+        .mii_crs(m_rx_crs),
+        .tbi_rx_clk(tbi_rx_clk),
+        .tbi_tx_clk(tbi_tx_clk),
+        .tbi_rx_d(tbi_rx_d),
+        .tbi_tx_d(tbi_tx_d),
+        .sd_loopback(sd_loopback),
+        .reg_clk(clk),
+        .reg_rd(read_pcs),
+        .reg_wr(write_pcs),
+        .reg_addr(address[4:0]),
+        .reg_data_in(writedata[15:0]),
+        .reg_data_out(readdata_pcs[15:0]),
+        .reg_busy(waitrequest_pcs),
+        .powerdown(powerdown),
+        .set_10(set_10),
+        .set_100(),
+        .set_1000(set_1000),
+        .hd_ena(),
+        .led_col(led_col),
+        .led_an(led_an),
+        .led_char_err(led_char_err),
+        .led_disp_err(led_disp_err),
+        .led_crs(led_crs),
+        .led_link(led_link));
+
+    defparam
+        top_1000_base_x_inst.PHY_IDENTIFIER = PHY_IDENTIFIER,
+        top_1000_base_x_inst.DEV_VERSION = DEV_VERSION,
+        top_1000_base_x_inst.ENABLE_SGMII = ENABLE_SGMII;
+
+
+
+endmodule
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_gige_woff.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_gige_woff.v
new file mode 100644
index 0000000000000000000000000000000000000000..b3f55fe30c8189889eea1db72321cfde1a4f006e
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_gige_woff.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma.v
new file mode 100644
index 0000000000000000000000000000000000000000..66922f9e98ee6f440ef4f0917fe71c618385b73a
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma.v
@@ -0,0 +1,530 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_mac_pcs_pma.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_mac_pcs_pma.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet
+//
+// Description : 
+//
+// Top level MAC + PCS + PMA module for Triple Speed Ethernet MAC + PCS + PMA
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+
+//Legal Notice: (C)2007 Altera Corporation. All rights reserved.  Your
+//use of Altera Corporation's design tools, logic functions and other
+//software and tools, and its AMPP partner logic functions, and any
+//output files any of the foregoing (including device programming or
+//simulation files), and any associated documentation or information are
+//expressly subject to the terms and conditions of the Altera Program
+//License Subscription Agreement or other applicable license agreement,
+//including, without limitation, that your use is for the sole purpose
+//of programming logic devices manufactured by Altera and sold by Altera
+//or its authorized distributors.  Please refer to the applicable
+//agreement for further details.
+
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_mac_pcs_pma /* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */ (
+    // inputs:
+    address,
+    clk,
+    ff_rx_clk,
+    ff_rx_rdy,
+    ff_tx_clk,
+    ff_tx_crc_fwd,
+    ff_tx_data,
+    ff_tx_mod,
+    ff_tx_eop,
+    ff_tx_err,
+    ff_tx_sop,
+    ff_tx_wren,
+    gxb_cal_blk_clk,
+    gxb_pwrdn_in,
+    magic_sleep_n,
+    mdio_in,
+    read,
+    ref_clk,
+    reset,
+    rxp,
+    write,
+    writedata,
+    xoff_gen,
+    xon_gen,
+
+    // outputs:
+    ff_rx_a_empty,
+    ff_rx_a_full,
+    ff_rx_data,
+    ff_rx_mod,
+    ff_rx_dsav,
+    ff_rx_dval,
+    ff_rx_eop,
+    ff_rx_sop,
+    ff_tx_a_empty,
+    ff_tx_a_full,
+    ff_tx_rdy,
+    ff_tx_septy,
+    led_an,
+    led_char_err,
+    led_col,
+    led_crs,
+    led_disp_err,
+    led_link,
+    magic_wakeup,
+    mdc,
+    mdio_oen,
+    mdio_out,
+    pcs_pwrdn_out,
+    readdata,
+    rx_err,
+    rx_err_stat,
+    rx_frm_type,
+    tx_ff_uflow,
+    txp,
+    waitrequest
+);
+
+//  Parameters to configure the core for different variations
+//  ---------------------------------------------------------
+
+parameter ENABLE_ENA            = 8;            //  Enable n-Bit Local Interface
+parameter ENABLE_GMII_LOOPBACK  = 1;            //  GMII_LOOPBACK_ENA : Enable GMII Loopback Logic 
+parameter ENABLE_HD_LOGIC       = 1;            //  HD_LOGIC_ENA : Enable Half Duplex Logic
+parameter USE_SYNC_RESET        = 1;            //  Use Synchronized Reset Inputs
+parameter ENABLE_SUP_ADDR       = 1;            //  SUP_ADDR_ENA : Enable Supplemental Addresses
+parameter ENA_HASH              = 1;            //  ENA_HASH Enable Hask Table 
+parameter STAT_CNT_ENA          = 1;            //  STAT_CNT_ENA Enable Statistic Counters
+parameter ENABLE_EXTENDED_STAT_REG = 0;         //  Enable a few extended statistic registers
+parameter EG_FIFO               = 256 ;         //  Egress FIFO Depth
+parameter EG_ADDR               = 8 ;           //  Egress FIFO Depth
+parameter ING_FIFO              = 256 ;         //  Ingress FIFO Depth
+parameter ING_ADDR              = 8 ;           //  Egress FIFO Depth
+parameter RESET_LEVEL           = 1'b 1 ;       //  Reset Active Level
+parameter MDIO_CLK_DIV          = 40 ;          //  Host Clock Division - MDC Generation
+parameter CORE_VERSION          = 16'h3;        //  MorethanIP Core Version
+parameter CUST_VERSION          = 1 ;           //  Customer Core Version
+parameter REDUCED_INTERFACE_ENA = 1;            //  Enable the RGMII / MII Interface
+parameter ENABLE_MDIO           = 1;            //  Enable the MDIO Interface
+parameter ENABLE_MAGIC_DETECT   = 1;            //  Enable magic packet detection
+parameter ENABLE_MACLITE        = 0;            //  Enable MAC LITE operation
+parameter MACLITE_GIGE          = 0;            //  Enable/Disable Gigabit MAC operation for MAC LITE.
+parameter CRC32DWIDTH           = 4'b 1000;     //  input data width (informal, not for change)
+parameter CRC32GENDELAY         = 3'b 110;      //  when the data from the generator is valid
+parameter CRC32CHECK16BIT       = 1'b 0;        //  1 compare two times 16 bit of the CRC (adds one pipeline step) 
+parameter CRC32S1L2_EXTERN      = 1'b0;         //  false: merge enable
+parameter ENABLE_SHIFT16        = 0;            //  Enable byte stuffing at packet header
+parameter RAM_TYPE              = "AUTO";       //  Specify the RAM type 
+parameter INSERT_TA             = 0;            //  Option to insert timing adapter for SOPC systems
+parameter PHY_IDENTIFIER        = 32'h 00000000;//  PHY Identifier 
+parameter DEV_VERSION           = 16'h 0001 ;   //  Customer Phy's Core Version
+parameter ENABLE_SGMII          = 1;            //  Enable SGMII logic for synthesis
+parameter ENABLE_MAC_FLOW_CTRL  = 1'b1;         //  Option to enable flow control 
+parameter ENABLE_MAC_TXADDR_SET = 1'b1;         //  Option to enable MAC address insertion onto 'to-be-transmitted' Ethernet frames on MAC TX data path
+parameter ENABLE_MAC_RX_VLAN    = 1'b1;         //  Option to enable VLAN tagged Ethernet frames on MAC RX data path
+parameter ENABLE_MAC_TX_VLAN    = 1'b1;         //  Option to enable VLAN tagged Ethernet frames on MAC TX data path
+parameter EXPORT_PWRDN          = 1'b0;         //  Option to export the Alt2gxb powerdown signal
+parameter DEVICE_FAMILY         = "ARRIAGX";    //  The device family the the core is targetted for.
+parameter TRANSCEIVER_OPTION    = 1'b1;         //  Option to select transceiver block for MAC PCS PMA Instantiation. Valid Values are 0 and 1:  0 - GXB (GIGE Mode) 1 - LVDS I/O
+parameter ENABLE_ALT_RECONFIG   = 0;            //  Option to have the Alt_Reconfig ports exposed
+parameter SYNCHRONIZER_DEPTH 	= 3;	  	//  Number of synchronizer
+
+  output  ff_rx_a_empty;
+  output  ff_rx_a_full;
+  output  [ENABLE_ENA-1:0] ff_rx_data;
+  output  [1:0] ff_rx_mod;
+  output  ff_rx_dsav;
+  output  ff_rx_dval;
+  output  ff_rx_eop;
+  output  ff_rx_sop;
+  output  ff_tx_a_empty;
+  output  ff_tx_a_full;
+  output  ff_tx_rdy;
+  output  ff_tx_septy;
+  output  led_an;
+  output  led_char_err;
+  output  led_col;
+  output  led_crs;
+  output  led_disp_err;
+  output  led_link;
+  output  magic_wakeup;
+  output  mdc;
+  output  mdio_oen;
+  output  mdio_out;
+  output  pcs_pwrdn_out;
+  output  [31: 0] readdata;
+  output  [5: 0] rx_err;
+  output  [17: 0] rx_err_stat;
+  output  [3: 0] rx_frm_type;
+  output  tx_ff_uflow;
+  output  txp;
+  output  waitrequest;
+  
+  input   [7: 0] address;
+  input   clk;
+  input   ff_rx_clk;
+  input   ff_rx_rdy;
+  input   ff_tx_clk;
+  input   ff_tx_crc_fwd;
+  input   [ENABLE_ENA-1:0] ff_tx_data;
+  input   [1:0] ff_tx_mod;
+  input   ff_tx_eop;
+  input   ff_tx_err;
+  input   ff_tx_sop;
+  input   ff_tx_wren;
+  input   gxb_cal_blk_clk;
+  input   gxb_pwrdn_in;
+  input   magic_sleep_n;
+  input   mdio_in;
+  input   read;
+  input   ref_clk;
+  input   reset;
+  input   rxp;
+  input   write;
+  input   [31:0] writedata;
+  input   xoff_gen;
+  input   xon_gen;
+
+
+  wire    MAC_PCS_reset;
+  wire    ff_rx_a_empty;
+  wire    ff_rx_a_full;
+  wire    [ENABLE_ENA-1:0] ff_rx_data;
+  wire    [1:0] ff_rx_mod;
+  wire    ff_rx_dsav;
+  wire    ff_rx_dval;
+  wire    ff_rx_eop;
+  wire    ff_rx_sop;
+  wire    ff_tx_a_empty;
+  wire    ff_tx_a_full;
+  wire    ff_tx_rdy;
+  wire    ff_tx_septy;
+  wire    led_an;
+  wire    led_char_err;
+  wire    led_col;
+  wire    led_crs;
+  wire    led_disp_err;
+  wire    led_link;
+  wire    magic_wakeup;
+  wire    mdc;
+  wire    mdio_oen;
+  wire    mdio_out;
+  wire    pcs_pwrdn_out_sig;
+  wire    gxb_pwrdn_in_sig;
+  wire    gxb_cal_blk_clk_sig;
+   
+  wire    [31:0] readdata;
+  wire    [5:0] rx_err;
+  wire    [17: 0] rx_err_stat;
+  wire    [3:0] rx_frm_type;
+  wire    sd_loopback;
+  wire    tbi_rx_clk;
+  wire    [9:0] tbi_rx_d;
+  wire    tbi_tx_clk;
+  wire    [9:0] tbi_tx_d;
+  wire    tx_ff_uflow;
+  wire    txp;
+  wire    waitrequest;
+  wire    [9:0] tbi_rx_d_lvds;
+
+  
+  reg     pma_digital_rst0;
+  reg     pma_digital_rst1;
+  reg     pma_digital_rst2;
+  reg     [9:0] tbi_rx_d_flip;
+  reg     [9:0] tbi_tx_d_flip;
+  
+  
+  // Reset logic used to reset the PMA blocks
+  // ----------------------------------------
+  always @(posedge clk or posedge reset)
+    begin
+      if (reset == 1)
+        begin
+          pma_digital_rst0 <= reset;
+          pma_digital_rst1 <= reset;
+          pma_digital_rst2 <= reset;
+        end
+      else 
+        begin
+          pma_digital_rst0 <= reset;
+          pma_digital_rst1 <= pma_digital_rst0;
+          pma_digital_rst2 <= pma_digital_rst1;
+        end
+    end
+
+
+  //  Assign the digital reset of the PMA to the MAC_PCS logic
+  //  --------------------------------------------------------
+  assign MAC_PCS_reset = pma_digital_rst2;
+
+  
+  // Instantiation of the MAC_PCS core that connects to a PMA
+  // --------------------------------------------------------
+  altera_tse_mac_pcs_pma_ena altera_tse_mac_pcs_pma_ena_inst
+    (
+       .address (address),
+       .clk (clk),
+       .ff_rx_a_empty (ff_rx_a_empty),
+       .ff_rx_a_full (ff_rx_a_full),
+       .ff_rx_clk (ff_rx_clk),
+       .ff_rx_data (ff_rx_data),
+       .ff_rx_mod (ff_rx_mod),
+       .ff_rx_dsav (ff_rx_dsav),
+       .ff_rx_dval (ff_rx_dval),
+       .ff_rx_eop (ff_rx_eop),
+       .ff_rx_rdy (ff_rx_rdy),
+       .ff_rx_sop (ff_rx_sop),
+       .ff_tx_a_empty (ff_tx_a_empty),
+       .ff_tx_a_full (ff_tx_a_full),
+       .ff_tx_clk (ff_tx_clk),
+       .ff_tx_crc_fwd (ff_tx_crc_fwd),
+       .ff_tx_data (ff_tx_data),
+       .ff_tx_mod (ff_tx_mod),
+       .ff_tx_eop (ff_tx_eop),
+       .ff_tx_err (ff_tx_err),
+       .ff_tx_rdy (ff_tx_rdy),
+       .ff_tx_septy (ff_tx_septy),
+       .ff_tx_sop (ff_tx_sop),
+       .ff_tx_wren (ff_tx_wren),
+       .led_an (led_an),
+       .led_char_err (led_char_err),
+       .led_col (led_col),
+       .led_crs (led_crs),
+       .led_disp_err (led_disp_err),
+       .led_link (led_link),
+       .magic_sleep_n (magic_sleep_n),
+       .magic_wakeup (magic_wakeup),
+       .mdc (mdc),
+       .mdio_in (mdio_in),
+       .mdio_oen (mdio_oen),
+       .mdio_out (mdio_out),
+       .powerdown (pcs_pwrdn_out_sig),
+       .read (read),
+       .readdata (readdata),
+       .reset (MAC_PCS_reset),
+       .rx_err (rx_err),
+       .rx_err_stat (rx_err_stat),
+       .rx_frm_type (rx_frm_type),
+       .sd_loopback (sd_loopback),
+       .tbi_rx_clk (tbi_rx_clk),
+       .tbi_rx_d (tbi_rx_d),
+       .tbi_tx_clk (tbi_tx_clk),
+       .tbi_tx_d (tbi_tx_d),
+       .tx_ff_uflow (tx_ff_uflow),
+       .waitrequest (waitrequest),
+       .write (write),
+       .writedata (writedata),
+       .xoff_gen (xoff_gen),
+       .xon_gen (xon_gen)
+    );
+
+    defparam
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_ENA = ENABLE_ENA,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_HD_LOGIC = ENABLE_HD_LOGIC,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_GMII_LOOPBACK = ENABLE_GMII_LOOPBACK,
+        altera_tse_mac_pcs_pma_ena_inst.USE_SYNC_RESET = USE_SYNC_RESET,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_SUP_ADDR = ENABLE_SUP_ADDR,
+        altera_tse_mac_pcs_pma_ena_inst.ENA_HASH = ENA_HASH,        
+        altera_tse_mac_pcs_pma_ena_inst.STAT_CNT_ENA = STAT_CNT_ENA,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_EXTENDED_STAT_REG = ENABLE_EXTENDED_STAT_REG,
+        altera_tse_mac_pcs_pma_ena_inst.EG_FIFO = EG_FIFO,
+        altera_tse_mac_pcs_pma_ena_inst.EG_ADDR = EG_ADDR,
+        altera_tse_mac_pcs_pma_ena_inst.ING_FIFO = ING_FIFO,
+        altera_tse_mac_pcs_pma_ena_inst.ING_ADDR = ING_ADDR,
+        altera_tse_mac_pcs_pma_ena_inst.RESET_LEVEL = RESET_LEVEL,
+        altera_tse_mac_pcs_pma_ena_inst.MDIO_CLK_DIV = MDIO_CLK_DIV,
+        altera_tse_mac_pcs_pma_ena_inst.CORE_VERSION = CORE_VERSION,
+        altera_tse_mac_pcs_pma_ena_inst.CUST_VERSION = CUST_VERSION,
+        altera_tse_mac_pcs_pma_ena_inst.REDUCED_INTERFACE_ENA = REDUCED_INTERFACE_ENA,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_MDIO = ENABLE_MDIO,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_MAGIC_DETECT = ENABLE_MAGIC_DETECT,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_MACLITE = ENABLE_MACLITE,
+        altera_tse_mac_pcs_pma_ena_inst.MACLITE_GIGE = MACLITE_GIGE,
+        altera_tse_mac_pcs_pma_ena_inst.CRC32S1L2_EXTERN = CRC32S1L2_EXTERN,
+        altera_tse_mac_pcs_pma_ena_inst.CRC32DWIDTH = CRC32DWIDTH,     
+        altera_tse_mac_pcs_pma_ena_inst.CRC32CHECK16BIT = CRC32CHECK16BIT,               
+        altera_tse_mac_pcs_pma_ena_inst.CRC32GENDELAY = CRC32GENDELAY,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_SHIFT16 = ENABLE_SHIFT16,
+        altera_tse_mac_pcs_pma_ena_inst.INSERT_TA = INSERT_TA,
+        altera_tse_mac_pcs_pma_ena_inst.RAM_TYPE = RAM_TYPE,        
+        altera_tse_mac_pcs_pma_ena_inst.PHY_IDENTIFIER = PHY_IDENTIFIER,
+        altera_tse_mac_pcs_pma_ena_inst.DEV_VERSION = DEV_VERSION,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_SGMII = ENABLE_SGMII,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_MAC_FLOW_CTRL = ENABLE_MAC_FLOW_CTRL, 
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_MAC_TXADDR_SET = ENABLE_MAC_TXADDR_SET,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_MAC_RX_VLAN = ENABLE_MAC_RX_VLAN,
+		altera_tse_mac_pcs_pma_ena_inst.SYNCHRONIZER_DEPTH = SYNCHRONIZER_DEPTH,
+        altera_tse_mac_pcs_pma_ena_inst.ENABLE_MAC_TX_VLAN = ENABLE_MAC_TX_VLAN;
+
+
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1)
+    begin          
+        assign gxb_pwrdn_in_sig = gxb_pwrdn_in;
+        assign pcs_pwrdn_out = pcs_pwrdn_out_sig;
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig = pcs_pwrdn_out_sig;
+		assign pcs_pwrdn_out = 1'b0;
+    end      
+endgenerate
+
+
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for devices other than ArriaGX
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp),
+        .rx_dataout (tbi_rx_d),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback),
+        .tx_clkout (tbi_tx_clk),
+        .tx_datain (tbi_tx_d),
+        .tx_dataout (txp),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX")
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp),
+        .rx_dataout (tbi_rx_d),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback),
+        .tx_clkout (tbi_tx_clk),
+        .tx_datain (tbi_tx_d),
+        .tx_dataout (txp),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1)
+    begin          
+
+    assign tbi_tx_clk = ref_clk;
+    assign tbi_rx_d = tbi_rx_d_flip;
+
+    always @(posedge tbi_rx_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip <= 0;
+        else 
+            begin
+            tbi_rx_d_flip[0] <= tbi_rx_d_lvds[9];
+            tbi_rx_d_flip[1] <= tbi_rx_d_lvds[8];
+            tbi_rx_d_flip[2] <= tbi_rx_d_lvds[7];
+            tbi_rx_d_flip[3] <= tbi_rx_d_lvds[6];
+            tbi_rx_d_flip[4] <= tbi_rx_d_lvds[5];
+            tbi_rx_d_flip[5] <= tbi_rx_d_lvds[4];
+            tbi_rx_d_flip[6] <= tbi_rx_d_lvds[3];
+            tbi_rx_d_flip[7] <= tbi_rx_d_lvds[2];
+            tbi_rx_d_flip[8] <= tbi_rx_d_lvds[1];
+            tbi_rx_d_flip[9] <= tbi_rx_d_lvds[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip <= 0;
+        else 
+            begin
+            tbi_tx_d_flip[0] <= tbi_tx_d[9];
+            tbi_tx_d_flip[1] <= tbi_tx_d[8];
+            tbi_tx_d_flip[2] <= tbi_tx_d[7];
+            tbi_tx_d_flip[3] <= tbi_tx_d[6];
+            tbi_tx_d_flip[4] <= tbi_tx_d[5];
+            tbi_tx_d_flip[5] <= tbi_tx_d[4];
+            tbi_tx_d_flip[6] <= tbi_tx_d[3];
+            tbi_tx_d_flip[7] <= tbi_tx_d[2];
+            tbi_tx_d_flip[8] <= tbi_tx_d[1];
+            tbi_tx_d_flip[9] <= tbi_tx_d[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx
+     (
+         .rx_divfwdclk (tbi_rx_clk),
+         .rx_in (rxp),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx
+    (
+        .tx_in (tbi_tx_d_flip),
+        .tx_inclock (ref_clk),
+        .tx_out (txp)
+    );
+
+    end    
+endgenerate
+
+endmodule
+
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma_ena.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma_ena.v
new file mode 100644
index 0000000000000000000000000000000000000000..03a892212f7f537fd6006f3439582e2befc1befb
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma_ena.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma_gige.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma_gige.v
new file mode 100644
index 0000000000000000000000000000000000000000..7bc83c3ba18509b82483f09ace2d0bf284e394b6
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma_gige.v
@@ -0,0 +1,506 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_mac_pcs_pma_gige.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_mac_pcs_pma_gige.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet
+//
+// Description : 
+//
+// Top level MAC + PCS + PMA module for Triple Speed Ethernet MAC + PCS + PMA
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+
+//Legal Notice: (C)2007 Altera Corporation. All rights reserved.  Your
+//use of Altera Corporation's design tools, logic functions and other
+//software and tools, and its AMPP partner logic functions, and any
+//output files any of the foregoing (including device programming or
+//simulation files), and any associated documentation or information are
+//expressly subject to the terms and conditions of the Altera Program
+//License Subscription Agreement or other applicable license agreement,
+//including, without limitation, that your use is for the sole purpose
+//of programming logic devices manufactured by Altera and sold by Altera
+//or its authorized distributors.  Please refer to the applicable
+//agreement for further details.
+
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_mac_pcs_pma_gige /* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */(
+    // inputs:
+    address,
+    clk,
+    ff_rx_clk,
+    ff_rx_rdy,
+    ff_tx_clk,
+    ff_tx_crc_fwd,
+    ff_tx_data,
+    ff_tx_mod,
+    ff_tx_eop,
+    ff_tx_err,
+    ff_tx_sop,
+    ff_tx_wren,
+    gxb_cal_blk_clk,
+    gxb_pwrdn_in,
+    magic_sleep_n,
+    mdio_in,
+    read,
+    reconfig_clk,
+    reconfig_togxb,
+    ref_clk,
+    reset,
+    rxp,
+    write,
+    writedata,
+    xoff_gen,
+    xon_gen,
+
+    // outputs:
+    ff_rx_a_empty,
+    ff_rx_a_full,
+    ff_rx_data,
+    ff_rx_mod,
+    ff_rx_dsav,
+    ff_rx_dval,
+    ff_rx_eop,
+    ff_rx_sop,
+    ff_tx_a_empty,
+    ff_tx_a_full,
+    ff_tx_rdy,
+    ff_tx_septy,
+    led_an,
+    led_char_err,
+    led_col,
+    led_crs,
+    led_disp_err,
+    led_link,
+    magic_wakeup,
+    mdc,
+    mdio_oen,
+    mdio_out,
+    pcs_pwrdn_out,
+    readdata,
+    reconfig_fromgxb,
+    rx_err,
+    rx_err_stat,
+    rx_frm_type,
+    tx_ff_uflow,
+    txp,
+    waitrequest
+);
+
+//  Parameters to configure the core for different variations
+//  ---------------------------------------------------------
+
+parameter ENABLE_ENA            = 8;            //  Enable n-Bit Local Interface
+parameter ENABLE_GMII_LOOPBACK  = 1;            //  GMII_LOOPBACK_ENA : Enable GMII Loopback Logic 
+parameter ENABLE_HD_LOGIC       = 1;            //  HD_LOGIC_ENA : Enable Half Duplex Logic
+parameter USE_SYNC_RESET        = 1;            //  Use Synchronized Reset Inputs
+parameter ENABLE_SUP_ADDR       = 1;            //  SUP_ADDR_ENA : Enable Supplemental Addresses
+parameter ENA_HASH              = 1;            //  ENA_HASH Enable Hask Table 
+parameter STAT_CNT_ENA          = 1;            //  STAT_CNT_ENA Enable Statistic Counters
+parameter ENABLE_EXTENDED_STAT_REG = 0;         //  Enable a few extended statistic registers
+parameter EG_FIFO               = 256 ;         //  Egress FIFO Depth
+parameter EG_ADDR               = 8 ;           //  Egress FIFO Depth
+parameter ING_FIFO              = 256 ;         //  Ingress FIFO Depth
+parameter ING_ADDR              = 8 ;           //  Egress FIFO Depth
+parameter RESET_LEVEL           = 1'b 1 ;       //  Reset Active Level
+parameter MDIO_CLK_DIV          = 40 ;          //  Host Clock Division - MDC Generation
+parameter CORE_VERSION          = 16'h3;        //  MorethanIP Core Version
+parameter CUST_VERSION          = 1 ;           //  Customer Core Version
+parameter REDUCED_INTERFACE_ENA = 1;            //  Enable the RGMII / MII Interface
+parameter ENABLE_MDIO           = 1;            //  Enable the MDIO Interface
+parameter ENABLE_MAGIC_DETECT   = 1;            //  Enable magic packet detection
+parameter ENABLE_MACLITE        = 0;            //  Enable MAC LITE operation
+parameter MACLITE_GIGE          = 0;            //  Enable/Disable Gigabit MAC operation for MAC LITE.
+parameter CRC32DWIDTH           = 4'b 1000;     //  input data width (informal, not for change)
+parameter CRC32GENDELAY         = 3'b 110;      //  when the data from the generator is valid
+parameter CRC32CHECK16BIT       = 1'b 0;        //  1 compare two times 16 bit of the CRC (adds one pipeline step) 
+parameter CRC32S1L2_EXTERN      = 1'b0;         //  false: merge enable
+parameter ENABLE_SHIFT16        = 0;            //  Enable byte stuffing at packet header
+parameter RAM_TYPE              = "AUTO";       //  Specify the RAM type 
+parameter INSERT_TA             = 0;            //  Option to insert timing adapter for SOPC systems
+parameter PHY_IDENTIFIER        = 32'h 00000000;//  PHY Identifier 
+parameter DEV_VERSION           = 16'h 0001 ;   //  Customer Phy's Core Version
+parameter ENABLE_SGMII          = 1;            //  Enable SGMII logic for synthesis
+parameter ENABLE_MAC_FLOW_CTRL  = 1'b1;         //  Option to enable flow control 
+parameter ENABLE_MAC_TXADDR_SET = 1'b1;         //  Option to enable MAC address insertion onto 'to-be-transmitted' Ethernet frames on MAC TX data path
+parameter ENABLE_MAC_RX_VLAN    = 1'b1;         //  Option to enable VLAN tagged Ethernet frames on MAC RX data path
+parameter ENABLE_MAC_TX_VLAN    = 1'b1;         //  Option to enable VLAN tagged Ethernet frames on MAC TX data path
+parameter EXPORT_PWRDN          = 1'b0;         //  Option to export the Alt2gxb powerdown signal
+parameter DEVICE_FAMILY         = "ARRIAGX";    //  The device family the the core is targetted for.
+parameter TRANSCEIVER_OPTION    = 1'b0;         //  Option to select transceiver block for MAC PCS PMA Instantiation. Valid Values are 0 and 1:  0 - GXB (GIGE Mode) 1 - LVDS I/O
+parameter ENABLE_ALT_RECONFIG   = 0;            //  Option to have the Alt_Reconfig ports exposed
+parameter STARTING_CHANNEL_NUMBER = 0;          //  Starting Channel Number for Reconfig block
+parameter SYNCHRONIZER_DEPTH 	= 3;	  	//  Number of synchronizer
+
+  output  ff_rx_a_empty;
+  output  ff_rx_a_full;
+  output  [ENABLE_ENA-1:0] ff_rx_data;
+  output  [1:0] ff_rx_mod;
+  output  ff_rx_dsav;
+  output  ff_rx_dval;
+  output  ff_rx_eop;
+  output  ff_rx_sop;
+  output  ff_tx_a_empty;
+  output  ff_tx_a_full;
+  output  ff_tx_rdy;
+  output  ff_tx_septy;
+  output  led_an;
+  output  led_char_err;
+  output  led_col;
+  output  led_crs;
+  output  led_disp_err;
+  output  led_link;
+  output  magic_wakeup;
+  output  mdc;
+  output  mdio_oen;
+  output  mdio_out;
+  output  pcs_pwrdn_out;
+  output  [31: 0] readdata;
+  output  [16:0] reconfig_fromgxb;
+  output  [5: 0] rx_err;
+  output  [17: 0] rx_err_stat;
+  output  [3: 0] rx_frm_type;
+  output  tx_ff_uflow;
+  output  txp;
+  output  waitrequest;
+  
+  input   [7: 0] address;
+  input   clk;
+  input   ff_rx_clk;
+  input   ff_rx_rdy;
+  input   ff_tx_clk;
+  input   ff_tx_crc_fwd;
+  input   [ENABLE_ENA-1:0] ff_tx_data;
+  input   [1:0] ff_tx_mod;
+  input   ff_tx_eop;
+  input   ff_tx_err;
+  input   ff_tx_sop;
+  input   ff_tx_wren;
+  input   gxb_cal_blk_clk;
+  input   gxb_pwrdn_in;
+  input   magic_sleep_n;
+  input   mdio_in;
+  input   read;
+  input   reconfig_clk;
+  input   [3:0] reconfig_togxb;
+  input   ref_clk;
+  input   reset;
+  input   rxp;
+  input   write;
+  input   [31:0] writedata;
+  input   xoff_gen;
+  input   xon_gen;
+
+
+  wire    MAC_PCS_reset;
+  wire    ff_rx_a_empty;
+  wire    ff_rx_a_full;
+  wire    [ENABLE_ENA-1:0] ff_rx_data;
+  wire    [1:0] ff_rx_mod;
+  wire    ff_rx_dsav;
+  wire    ff_rx_dval;
+  wire    ff_rx_eop;
+  wire    ff_rx_sop;
+  wire    ff_tx_a_empty;
+  wire    ff_tx_a_full;
+  wire    ff_tx_rdy;
+  wire    ff_tx_septy;
+  wire    gige_pma_reset;
+  wire    led_an;
+  wire    led_char_err;
+  wire    led_char_err_gx;
+  wire    led_col;
+  wire    led_crs;
+  wire    led_disp_err;
+  wire    led_link;
+  wire    link_status;
+  wire    magic_wakeup;
+  wire    mdc;
+  wire    mdio_oen;
+  wire    mdio_out;
+  wire    pcs_clk;
+  wire    [7:0] pcs_rx_frame;
+  wire    pcs_rx_kchar;
+  wire    pcs_pwrdn_out_sig;
+  wire    gxb_pwrdn_in_sig;
+  wire    gxb_cal_blk_clk_sig;
+
+   
+  wire    [31:0] readdata;
+  wire    rx_char_err_gx;
+  wire    rx_disp_err;
+  wire    [5:0] rx_err;
+  wire    [17:0] rx_err_stat;
+  wire    [3:0] rx_frm_type;
+  wire    [7:0] rx_frame;
+  wire    rx_syncstatus;
+  wire    rx_kchar;
+  wire    sd_loopback;
+  wire    tx_ff_uflow;
+  wire    [7:0] tx_frame;
+  wire    tx_kchar;
+  wire    txp;
+  wire    waitrequest;
+
+  wire   rx_runlengthviolation;
+  wire   rx_patterndetect;
+  wire   rx_runningdisp;
+  wire   rx_rmfifodatadeleted;
+  wire   rx_rmfifodatainserted;
+  wire   pcs_rx_carrierdetected;
+  wire   pcs_rx_rmfifodatadeleted;
+  wire   pcs_rx_rmfifodatainserted;
+  
+  
+  reg     pma_digital_rst0;
+  reg     pma_digital_rst1;
+  reg     pma_digital_rst2;
+  
+
+  wire    [16:0] reconfig_fromgxb;
+
+
+  
+  // Reset logic used to reset the PMA blocks
+  // ----------------------------------------
+  always @(posedge clk or posedge reset)
+    begin
+      if (reset == 1)
+        begin
+          pma_digital_rst0 <= reset;
+          pma_digital_rst1 <= reset;
+          pma_digital_rst2 <= reset;
+        end
+      else 
+        begin
+          pma_digital_rst0 <= reset;
+          pma_digital_rst1 <= pma_digital_rst0;
+          pma_digital_rst2 <= pma_digital_rst1;
+        end
+    end
+
+
+  //  Assign the digital reset of the PMA to the MAC_PCS logic
+  //  --------------------------------------------------------
+  assign MAC_PCS_reset = pma_digital_rst2;
+
+
+  //  Assign the character error and link status to top level leds
+  //  ------------------------------------------------------------
+  assign led_char_err = led_char_err_gx;
+  assign led_link = link_status;
+
+
+  
+  // Instantiation of the MAC_PCS core that connects to a PMA
+  // --------------------------------------------------------
+  altera_tse_mac_pcs_pma_strx_gx_ena altera_tse_mac_pcs_pma_strx_gx_ena_inst
+    (
+ 
+       .rx_carrierdetected(pcs_rx_carrierdetected),
+       .rx_rmfifodatadeleted(pcs_rx_rmfifodatadeleted),
+       .rx_rmfifodatainserted(pcs_rx_rmfifodatainserted),
+
+       .address (address),
+       .clk (clk),
+       .ff_rx_a_empty (ff_rx_a_empty),
+       .ff_rx_a_full (ff_rx_a_full),
+       .ff_rx_clk (ff_rx_clk),
+       .ff_rx_data (ff_rx_data),
+       .ff_rx_mod (ff_rx_mod),
+       .ff_rx_dsav (ff_rx_dsav),
+       .ff_rx_dval (ff_rx_dval),
+       .ff_rx_eop (ff_rx_eop),
+       .ff_rx_rdy (ff_rx_rdy),
+       .ff_rx_sop (ff_rx_sop),
+       .ff_tx_a_empty (ff_tx_a_empty),
+       .ff_tx_a_full (ff_tx_a_full),
+       .ff_tx_clk (ff_tx_clk),
+       .ff_tx_crc_fwd (ff_tx_crc_fwd),
+       .ff_tx_data (ff_tx_data),
+       .ff_tx_mod (ff_tx_mod),
+       .ff_tx_eop (ff_tx_eop),
+       .ff_tx_err (ff_tx_err),
+       .ff_tx_rdy (ff_tx_rdy),
+       .ff_tx_septy (ff_tx_septy),
+       .ff_tx_sop (ff_tx_sop),
+       .ff_tx_wren (ff_tx_wren),
+       .led_an (led_an),
+       .led_char_err (led_char_err_gx),
+       .led_col (led_col),
+       .led_crs (led_crs),
+       .led_link (link_status),
+       .magic_sleep_n (magic_sleep_n),
+       .magic_wakeup (magic_wakeup),
+       .mdc (mdc),
+       .mdio_in (mdio_in),
+       .mdio_oen (mdio_oen),
+       .mdio_out (mdio_out),
+       .powerdown (pcs_pwrdn_out_sig),
+       .read (read),
+       .readdata (readdata),
+       .reset (MAC_PCS_reset),
+       .rx_clkout (pcs_clk),
+       .rx_err (rx_err),
+       .rx_err_stat (rx_err_stat),
+       .rx_frame (pcs_rx_frame),
+       .rx_frm_type (rx_frm_type),
+       .rx_kchar (pcs_rx_kchar),
+       .sd_loopback (sd_loopback),
+       .tx_clkout (pcs_clk),
+       .tx_ff_uflow (tx_ff_uflow),
+       .tx_frame (tx_frame),
+       .tx_kchar (tx_kchar),
+       .waitrequest (waitrequest),
+       .write (write),
+       .writedata (writedata),
+       .xoff_gen (xoff_gen),
+       .xon_gen (xon_gen)
+    );
+
+    defparam
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_ENA = ENABLE_ENA,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_HD_LOGIC = ENABLE_HD_LOGIC,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_GMII_LOOPBACK = ENABLE_GMII_LOOPBACK,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.USE_SYNC_RESET = USE_SYNC_RESET,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_SUP_ADDR = ENABLE_SUP_ADDR,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENA_HASH = ENA_HASH,        
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.STAT_CNT_ENA = STAT_CNT_ENA,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_EXTENDED_STAT_REG = ENABLE_EXTENDED_STAT_REG,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.EG_FIFO = EG_FIFO,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.EG_ADDR = EG_ADDR,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ING_FIFO = ING_FIFO,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ING_ADDR = ING_ADDR,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.RESET_LEVEL = RESET_LEVEL,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.MDIO_CLK_DIV = MDIO_CLK_DIV,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.CORE_VERSION = CORE_VERSION,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.CUST_VERSION = CUST_VERSION,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.REDUCED_INTERFACE_ENA = REDUCED_INTERFACE_ENA,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_MDIO = ENABLE_MDIO,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_MAGIC_DETECT = ENABLE_MAGIC_DETECT,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_MACLITE = ENABLE_MACLITE,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.MACLITE_GIGE = MACLITE_GIGE,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.CRC32S1L2_EXTERN = CRC32S1L2_EXTERN,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.CRC32DWIDTH = CRC32DWIDTH,     
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.CRC32CHECK16BIT = CRC32CHECK16BIT,               
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.CRC32GENDELAY = CRC32GENDELAY,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_SHIFT16 = ENABLE_SHIFT16,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.INSERT_TA = INSERT_TA,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.RAM_TYPE = RAM_TYPE,        
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.PHY_IDENTIFIER = PHY_IDENTIFIER,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.DEV_VERSION = DEV_VERSION,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_SGMII = ENABLE_SGMII,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_MAC_FLOW_CTRL = ENABLE_MAC_FLOW_CTRL, 
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_MAC_TXADDR_SET = ENABLE_MAC_TXADDR_SET,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_MAC_RX_VLAN = ENABLE_MAC_RX_VLAN,
+		altera_tse_mac_pcs_pma_strx_gx_ena_inst.SYNCHRONIZER_DEPTH = SYNCHRONIZER_DEPTH,
+        altera_tse_mac_pcs_pma_strx_gx_ena_inst.ENABLE_MAC_TX_VLAN = ENABLE_MAC_TX_VLAN;
+
+
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1)
+    begin          
+        assign gxb_pwrdn_in_sig = gxb_pwrdn_in;
+        assign pcs_pwrdn_out = pcs_pwrdn_out_sig;
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig = pcs_pwrdn_out_sig;
+		assign pcs_pwrdn_out = 1'b0;
+    end      
+endgenerate
+
+
+
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX and ArriaGX devices
+// ----------------------------------------------------------------------------------- 
+       
+
+
+    // Aligned Rx_sync from gxb
+    // -------------------------------
+    altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync
+      (
+        .clk(pcs_clk),
+        .reset(MAC_PCS_reset),
+        //input (from alt2gxb)
+        .alt_dataout(rx_frame),
+        .alt_sync(rx_syncstatus),
+        .alt_disperr(rx_disp_err),
+        .alt_ctrldetect(rx_kchar),
+        .alt_errdetect(rx_char_err_gx),
+        .alt_rmfifodatadeleted(rx_rmfifodatadeleted),
+        .alt_rmfifodatainserted(rx_rmfifodatainserted),
+        .alt_runlengthviolation(rx_runlengthviolation),
+        .alt_patterndetect(rx_patterndetect),
+        .alt_runningdisp(rx_runningdisp),
+
+        //output (to PCS)
+        .altpcs_dataout(pcs_rx_frame),
+        .altpcs_sync(link_status),
+        .altpcs_disperr(led_disp_err),
+        .altpcs_ctrldetect(pcs_rx_kchar),
+        .altpcs_errdetect(led_char_err_gx),
+        .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted),
+        .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted),
+        .altpcs_carrierdetect(pcs_rx_carrierdetected)
+       ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync.DEVICE_FAMILY = DEVICE_FAMILY;
+
+    // Altgxb in GIGE mode
+    // --------------------
+    altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig),
+        .pll_inclk (ref_clk),
+        .reconfig_clk(reconfig_clk),
+        .reconfig_togxb(reconfig_togxb),
+        .reconfig_fromgxb(reconfig_fromgxb),    
+        .rx_analogreset (reset),
+        .rx_cruclk (ref_clk),
+        .rx_ctrldetect (rx_kchar),
+        .rx_datain (rxp),
+        .rx_dataout (rx_frame),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_disperr (rx_disp_err),
+        .rx_errdetect (rx_char_err_gx),
+        .rx_patterndetect (rx_patterndetect),
+        .rx_rlv (rx_runlengthviolation),
+        .rx_seriallpbken (sd_loopback),
+        .rx_syncstatus (rx_syncstatus),
+        .tx_clkout (pcs_clk),
+        .tx_ctrlenable (tx_kchar),
+        .tx_datain (tx_frame),
+        .tx_dataout (txp),
+        .tx_digitalreset (pma_digital_rst2),
+        .rx_rmfifodatadeleted(rx_rmfifodatadeleted),
+        .rx_rmfifodatainserted(rx_rmfifodatainserted),
+        .rx_runningdisp(rx_runningdisp)
+      );
+		defparam
+                the_altera_tse_gxb_gige_inst.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+		the_altera_tse_gxb_gige_inst.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER,
+		the_altera_tse_gxb_gige_inst.DEVICE_FAMILY = DEVICE_FAMILY;		
+
+endmodule
+
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma_strx_gx_ena.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma_strx_gx_ena.v
new file mode 100644
index 0000000000000000000000000000000000000000..d17ef686f50aa4c6c9654710745d778a98254350
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_pma_strx_gx_ena.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_woff.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_woff.v
new file mode 100644
index 0000000000000000000000000000000000000000..cd1ae8da5d2c3648c82aa6e181f79e178681c313
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_pcs_woff.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_rx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_rx.v
new file mode 100644
index 0000000000000000000000000000000000000000..a3bf76af27a6a9acab5ccffcf6541607279aed26
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_rx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_tx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_tx.v
new file mode 100644
index 0000000000000000000000000000000000000000..03eb4640354b6ec809e830aa29335fb0bd78542d
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_tx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_woff.ocp b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_woff.ocp
new file mode 100644
index 0000000000000000000000000000000000000000..ffe8ef77a6daf00b535893ecf61ec8610b3f7452
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_woff.ocp differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_woff.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_woff.v
new file mode 100644
index 0000000000000000000000000000000000000000..a076218ec4203ec6661937928792f1b17e569a40
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mac_woff.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_magic_detection.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_magic_detection.v
new file mode 100644
index 0000000000000000000000000000000000000000..07e763c521f50dc45d6ac3ea997f4bf026a62c07
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_magic_detection.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio.v
new file mode 100644
index 0000000000000000000000000000000000000000..a4c0ec90152aa26782fb581c0dd6b56f6502b822
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio_clk_gen.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio_clk_gen.v
new file mode 100644
index 0000000000000000000000000000000000000000..a8cdb8c092274424c91e1f9feed67dd20d9f1a0f
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio_clk_gen.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio_cntl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio_cntl.v
new file mode 100644
index 0000000000000000000000000000000000000000..c1aeff8bb89cc90162ca1a6bfbbb4fb5dd544a44
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio_cntl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio_reg.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio_reg.v
new file mode 100644
index 0000000000000000000000000000000000000000..8a0047183a44af9c217fdb2f37ac049b1a9b14d8
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mdio_reg.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_rx_if.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_rx_if.v
new file mode 100644
index 0000000000000000000000000000000000000000..72a974f6662c3dfc81144026d124ed0aa6038819
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_rx_if.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_rx_if_pcs.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_rx_if_pcs.v
new file mode 100644
index 0000000000000000000000000000000000000000..e8e5eb470b60f70fd0d19691bd3aabe508f7f352
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_rx_if_pcs.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_tx_if.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_tx_if.v
new file mode 100644
index 0000000000000000000000000000000000000000..df2e9575f2655ff5012677334fcb3c235b69067f
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_tx_if.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_tx_if_pcs.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_tx_if_pcs.v
new file mode 100644
index 0000000000000000000000000000000000000000..ec77e315992c1ef7171e144d755e13945ff2454c
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_mii_tx_if_pcs.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_channel_arbiter.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_channel_arbiter.v
new file mode 100644
index 0000000000000000000000000000000000000000..dbdf88c1ce58a02bfab5647ab300607122e2857e
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_channel_arbiter.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac.v
new file mode 100644
index 0000000000000000000000000000000000000000..090cb2ac0838fb8aaf2b6df20aac89aad765b208
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac.v
@@ -0,0 +1,2665 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_multi_mac.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_multi_mac.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet - 10/100/1000 MAC
+//
+// Description : 
+//
+// Top Level Triple Speed Ethernet(10/100/1000) MAC with FIFOs, MII/GMII
+// interfaces, mdio module and register space (statistic, control and 
+// management)
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation  
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_multi_mac 
+/* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */
+#(
+
+parameter USE_SYNC_RESET        = 0,                    //  Use Synchronized Reset Inputs
+parameter RESET_LEVEL           = 1'b 1 ,               //  Reset Active Level
+parameter ENABLE_GMII_LOOPBACK  = 1,                    //  GMII_LOOPBACK_ENA : Enable GMII Loopback Logic 
+parameter ENABLE_HD_LOGIC       = 1,                    //  HD_LOGIC_ENA : Enable Half Duplex Logic
+parameter ENABLE_SUP_ADDR       = 1,                    //  SUP_ADDR_ENA : Enable Supplemental Addresses
+parameter ENA_HASH              = 1,                    //  ENA_HASH Enable Hash Table 
+parameter STAT_CNT_ENA          = 1,                    //  STAT_CNT_ENA Enable Statistic Counters
+parameter MDIO_CLK_DIV          = 40 ,                  //  Host Clock Division - MDC Generation
+parameter CORE_VERSION          = 16'h3,                //  ALTERA Core Version
+parameter CUST_VERSION          = 1 ,                   //  Customer Core Version
+parameter REDUCED_INTERFACE_ENA = 0,                    //  Enable the RGMII Interface
+parameter ENABLE_MDIO           = 1,                    //  Enable the MDIO Interface
+parameter ENABLE_MAGIC_DETECT   = 1,                    //  Enable magic packet detection 
+parameter CRC32DWIDTH           = 4'b 1000,             //  input data width (informal, not for change)
+parameter CRC32GENDELAY         = 3'b 110,              //  when the data from the generator is valid
+parameter CRC32CHECK16BIT       = 1'b 0,                //  1 compare two times 16 bit of the CRC (adds one pipeline step) 
+parameter CRC32S1L2_EXTERN      = 1'b0,                 //  false: merge enable
+parameter ENABLE_SHIFT16        = 0,                    //  Enable byte stuffing at packet header 
+parameter ENABLE_MAC_FLOW_CTRL  = 1'b1,                 //  Option to enable flow control 
+parameter ENABLE_MAC_TXADDR_SET = 1'b1,                 //  Option to enable MAC address insertion onto 'to-be-transmitted' Ethernet frames on MAC TX data path
+parameter ENABLE_MAC_RX_VLAN    = 1'b1,                 //  Option to enable VLAN tagged Ethernet frames on MAC RX data path
+parameter ENABLE_MAC_TX_VLAN    = 1'b1,                 //  Option to enable VLAN tagged Ethernet frames on MAC TX data path
+
+parameter ENABLE_CLK_SHARING    = 0,                    //  Option to share clock for multiple channels (Clocks are rate-matched).
+parameter ENABLE_REG_SHARING    = 1,                    //  Option to share register space. Uses certain hard-coded values from input.
+parameter ENABLE_EXTENDED_STAT_REG = 0,                 //  Enable a few extended statistic registers
+parameter MAX_CHANNELS          = 1,                    //  The number of channels in Multi-TSE component 
+parameter ENABLE_PKT_CLASS      = 1,                    //  Enable Packet Classification Av-ST Interface
+parameter ENABLE_RX_FIFO_STATUS = 1,                    //  Enable Receive FIFO Almost Full status interface
+parameter CHANNEL_WIDTH         = 1,                    //  The width of the channel interface
+parameter SYNCHRONIZER_DEPTH 	= 3,		  	//  Number of synchronizer
+
+
+// Internal parameters
+parameter ADDR_WIDTH = (MAX_CHANNELS > 16)? 13 :
+                       (MAX_CHANNELS > 8)? 12 :
+                       (MAX_CHANNELS > 4)? 11 :
+                       (MAX_CHANNELS > 2)? 10 :                       
+                       (MAX_CHANNELS > 1)? 9 : 8
+
+)
+
+
+
+(
+
+	// RESET / MAC REG IF / MDIO
+	input wire   reset,                      //  Asynchronous Reset - clk Domain
+	input wire   clk,                        //  25MHz Host Interface Clock
+	input wire   read,                       //  Register Read Strobe
+	input wire   write,                      //  Register Write Strobe
+	input wire   [ADDR_WIDTH-1:0] address,   //  Register Address
+	input wire   [31:0] writedata,           //  Write Data for Host Bus
+	output wire  [31:0] readdata,            //  Read Data to Host Bus
+	output wire  waitrequest,                //  Interface Busy
+	output wire  mdc,                        //  2.5MHz Inteface
+	input wire   mdio_in,                    //  MDIO Input
+	output wire  mdio_out,                   //  MDIO Output
+	output wire  mdio_oen,                   //  MDIO Output Enable
+
+	// SHARED CLK SIGNALS
+	input wire   rx_clk,                     //  Receive Clock
+	input wire   tx_clk,                     //  Transmit Clock 
+    output wire  mac_rx_clk,                 //  Av-ST Receive Clock
+	output wire  mac_tx_clk,                 //  Av-ST Transmit Clock 
+
+    // SHARED RX STATUS 
+    input wire   rx_afull_clk,                             //  Almost full clock
+	input wire   [1:0] rx_afull_data,                      //  Almost full data
+	input wire   rx_afull_valid,                           //  Almost full valid
+	input wire   [CHANNEL_WIDTH-1:0] rx_afull_channel,     //  Almost full channel
+	
+
+    // CHANNEL 0
+	
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_0,               //  Carrier Sense
+	input wire   m_rx_col_0,               //  Collition
+	input wire   rx_clk_0,                 //  Receive Clock
+	input wire   tx_clk_0,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_0,          //  GMII Receive Data
+	input wire   gm_rx_dv_0,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_0,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_0,          //  GMII Transmit Data
+	output wire  gm_tx_en_0,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_0,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_0,           //  MII Receive Data
+	input wire   m_rx_en_0,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_0,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_0,           //  MII Transmit Data
+	output wire  m_tx_en_0,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_0,               //  MII Transmit Frame Error
+	output wire  tx_control_0,
+	output wire  [3:0] rgmii_out_0,
+	input wire   [3:0] rgmii_in_0,
+	input wire   rx_control_0,
+	output wire  eth_mode_0,               //  Ethernet Mode
+	output wire  ena_10_0,                 //  Enable 10Mbps Mode
+	input wire   set_1000_0,               //  Gigabit Mode Enable
+	input wire   set_10_0,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_0,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_0,             //  Av-ST Transmit Clock 	
+	output wire  data_rx_sop_0,            //  Start of Packet
+	output wire  data_rx_eop_0,            //  End of Packet
+	output wire  [7:0] data_rx_data_0,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_0,    //  Receive packet error
+	output wire  data_rx_valid_0,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_0,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_0,   //  Frame Type Indication
+	output wire  pkt_class_valid_0,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_0,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_0,     //  Data from FIFO transmit
+	input wire   data_tx_valid_0,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_0,            //  Start of Packet
+	input wire   data_tx_eop_0,            //  END of Packet
+	output wire  data_tx_ready_0,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_0,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_0,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_0,               //  Xoff Pause frame generate 
+	input wire   xon_gen_0,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_0,          //  Enable Sleep Mode
+	output wire  magic_wakeup_0,           //  Wake Up Request
+
+
+    // CHANNEL 1
+	
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_1,               //  Carrier Sense
+	input wire   m_rx_col_1,               //  Collition
+	input wire   rx_clk_1,                 //  Receive Clock
+	input wire   tx_clk_1,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_1,          //  GMII Receive Data
+	input wire   gm_rx_dv_1,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_1,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_1,          //  GMII Transmit Data
+	output wire  gm_tx_en_1,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_1,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_1,           //  MII Receive Data
+	input wire   m_rx_en_1,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_1,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_1,           //  MII Transmit Data
+	output wire  m_tx_en_1,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_1,               //  MII Transmit Frame Error
+	output wire  tx_control_1,
+	output wire  [3:0] rgmii_out_1,
+	input wire   [3:0] rgmii_in_1,
+	input wire   rx_control_1,
+	output wire  eth_mode_1,               //  Ethernet Mode
+	output wire  ena_10_1,                 //  Enable 10Mbps Mode
+	input wire   set_1000_1,               //  Gigabit Mode Enable
+	input wire   set_10_1,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_1,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_1,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_1,            //  Start of Packet
+	output wire  data_rx_eop_1,            //  End of Packet
+	output wire  [7:0] data_rx_data_1,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_1,    //  Receive packet error
+	output wire  data_rx_valid_1,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_1,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_1,   //  Frame Type Indication
+	output wire  pkt_class_valid_1,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_1,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_1,     //  Data from FIFO transmit
+	input wire   data_tx_valid_1,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_1,            //  Start of Packet
+	input wire   data_tx_eop_1,            //  END of Packet
+	output wire  data_tx_ready_1,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_1,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_1,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_1,               //  Xoff Pause frame generate 
+	input wire   xon_gen_1,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_1,          //  Enable Sleep Mode
+	output wire  magic_wakeup_1,           //  Wake Up Request
+
+
+    // CHANNEL 2
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_2,               //  Carrier Sense
+	input wire   m_rx_col_2,               //  Collition
+	input wire   rx_clk_2,                 //  Receive Clock
+	input wire   tx_clk_2,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_2,          //  GMII Receive Data
+	input wire   gm_rx_dv_2,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_2,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_2,          //  GMII Transmit Data
+	output wire  gm_tx_en_2,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_2,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_2,           //  MII Receive Data
+	input wire   m_rx_en_2,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_2,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_2,           //  MII Transmit Data
+	output wire  m_tx_en_2,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_2,               //  MII Transmit Frame Error
+	output wire  tx_control_2,
+	output wire  [3:0] rgmii_out_2,
+	input wire   [3:0] rgmii_in_2,
+	input wire   rx_control_2,
+	output wire  eth_mode_2,               //  Ethernet Mode
+	output wire  ena_10_2,                 //  Enable 10Mbps Mode
+	input wire   set_1000_2,               //  Gigabit Mode Enable
+	input wire   set_10_2,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_2,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_2,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_2,            //  Start of Packet
+	output wire  data_rx_eop_2,            //  End of Packet
+	output wire  [7:0] data_rx_data_2,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_2,    //  Receive packet error
+	output wire  data_rx_valid_2,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_2,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_2,   //  Frame Type Indication
+	output wire  pkt_class_valid_2,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_2,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_2,     //  Data from FIFO transmit
+	input wire   data_tx_valid_2,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_2,            //  Start of Packet
+	input wire   data_tx_eop_2,            //  END of Packet
+	output wire  data_tx_ready_2,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_2,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_2,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_2,               //  Xoff Pause frame generate 
+	input wire   xon_gen_2,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_2,          //  Enable Sleep Mode
+	output wire  magic_wakeup_2,           //  Wake Up Request
+
+
+    // CHANNEL 3
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_3,               //  Carrier Sense
+	input wire   m_rx_col_3,               //  Collition
+	input wire   rx_clk_3,                 //  Receive Clock
+	input wire   tx_clk_3,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_3,          //  GMII Receive Data
+	input wire   gm_rx_dv_3,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_3,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_3,          //  GMII Transmit Data
+	output wire  gm_tx_en_3,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_3,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_3,           //  MII Receive Data
+	input wire   m_rx_en_3,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_3,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_3,           //  MII Transmit Data
+	output wire  m_tx_en_3,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_3,               //  MII Transmit Frame Error
+	output wire  tx_control_3,
+	output wire  [3:0] rgmii_out_3,
+	input wire   [3:0] rgmii_in_3,
+	input wire   rx_control_3,
+	output wire  eth_mode_3,               //  Ethernet Mode
+	output wire  ena_10_3,                 //  Enable 10Mbps Mode
+	input wire   set_1000_3,               //  Gigabit Mode Enable
+	input wire   set_10_3,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_3,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_3,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_3,            //  Start of Packet
+	output wire  data_rx_eop_3,            //  End of Packet
+	output wire  [7:0] data_rx_data_3,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_3,    //  Receive packet error
+	output wire  data_rx_valid_3,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_3,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_3,   //  Frame Type Indication
+	output wire  pkt_class_valid_3,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_3,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_3,     //  Data from FIFO transmit
+	input wire   data_tx_valid_3,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_3,            //  Start of Packet
+	input wire   data_tx_eop_3,            //  END of Packet
+	output wire  data_tx_ready_3,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_3,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_3,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_3,               //  Xoff Pause frame generate 
+	input wire   xon_gen_3,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_3,          //  Enable Sleep Mode
+	output wire  magic_wakeup_3,           //  Wake Up Request
+
+
+    // CHANNEL 4
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_4,               //  Carrier Sense
+	input wire   m_rx_col_4,               //  Collition
+	input wire   rx_clk_4,                 //  Receive Clock
+	input wire   tx_clk_4,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_4,          //  GMII Receive Data
+	input wire   gm_rx_dv_4,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_4,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_4,          //  GMII Transmit Data
+	output wire  gm_tx_en_4,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_4,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_4,           //  MII Receive Data
+	input wire   m_rx_en_4,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_4,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_4,           //  MII Transmit Data
+	output wire  m_tx_en_4,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_4,               //  MII Transmit Frame Error
+	output wire  tx_control_4,
+	output wire  [3:0] rgmii_out_4,
+	input wire   [3:0] rgmii_in_4,
+	input wire   rx_control_4,
+	output wire  eth_mode_4,               //  Ethernet Mode
+	output wire  ena_10_4,                 //  Enable 10Mbps Mode
+	input wire   set_1000_4,               //  Gigabit Mode Enable
+	input wire   set_10_4,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_4,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_4,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_4,            //  Start of Packet
+	output wire  data_rx_eop_4,            //  End of Packet
+	output wire  [7:0] data_rx_data_4,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_4,    //  Receive packet error
+	output wire  data_rx_valid_4,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_4,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_4,   //  Frame Type Indication
+	output wire  pkt_class_valid_4,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_4,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_4,     //  Data from FIFO transmit
+	input wire   data_tx_valid_4,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_4,            //  Start of Packet
+	input wire   data_tx_eop_4,            //  END of Packet
+	output wire  data_tx_ready_4,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_4,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_4,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_4,               //  Xoff Pause frame generate 
+	input wire   xon_gen_4,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_4,          //  Enable Sleep Mode
+	output wire  magic_wakeup_4,           //  Wake Up Request
+
+
+    // CHANNEL 5
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_5,               //  Carrier Sense
+	input wire   m_rx_col_5,               //  Collition
+	input wire   rx_clk_5,                 //  Receive Clock
+	input wire   tx_clk_5,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_5,          //  GMII Receive Data
+	input wire   gm_rx_dv_5,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_5,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_5,          //  GMII Transmit Data
+	output wire  gm_tx_en_5,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_5,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_5,           //  MII Receive Data
+	input wire   m_rx_en_5,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_5,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_5,           //  MII Transmit Data
+	output wire  m_tx_en_5,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_5,               //  MII Transmit Frame Error
+	output wire  tx_control_5,
+	output wire  [3:0] rgmii_out_5,
+	input wire   [3:0] rgmii_in_5,
+	input wire   rx_control_5,
+	output wire  eth_mode_5,               //  Ethernet Mode
+	output wire  ena_10_5,                 //  Enable 10Mbps Mode
+	input wire   set_1000_5,               //  Gigabit Mode Enable
+	input wire   set_10_5,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_5,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_5,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_5,            //  Start of Packet
+	output wire  data_rx_eop_5,            //  End of Packet
+	output wire  [7:0] data_rx_data_5,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_5,    //  Receive packet error
+	output wire  data_rx_valid_5,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_5,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_5,   //  Frame Type Indication
+	output wire  pkt_class_valid_5,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_5,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_5,     //  Data from FIFO transmit
+	input wire   data_tx_valid_5,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_5,            //  Start of Packet
+	input wire   data_tx_eop_5,            //  END of Packet
+	output wire  data_tx_ready_5,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_5,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_5,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_5,               //  Xoff Pause frame generate 
+	input wire   xon_gen_5,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_5,          //  Enable Sleep Mode
+	output wire  magic_wakeup_5,           //  Wake Up Request
+
+
+    // CHANNEL 6
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_6,               //  Carrier Sense
+	input wire   m_rx_col_6,               //  Collition
+	input wire   rx_clk_6,                 //  Receive Clock
+	input wire   tx_clk_6,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_6,          //  GMII Receive Data
+	input wire   gm_rx_dv_6,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_6,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_6,          //  GMII Transmit Data
+	output wire  gm_tx_en_6,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_6,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_6,           //  MII Receive Data
+	input wire   m_rx_en_6,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_6,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_6,           //  MII Transmit Data
+	output wire  m_tx_en_6,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_6,               //  MII Transmit Frame Error
+	output wire  tx_control_6,
+	output wire  [3:0] rgmii_out_6,
+	input wire   [3:0] rgmii_in_6,
+	input wire   rx_control_6,
+	output wire  eth_mode_6,               //  Ethernet Mode
+	output wire  ena_10_6,                 //  Enable 10Mbps Mode
+	input wire   set_1000_6,               //  Gigabit Mode Enable
+	input wire   set_10_6,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_6,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_6,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_6,            //  Start of Packet
+	output wire  data_rx_eop_6,            //  End of Packet
+	output wire  [7:0] data_rx_data_6,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_6,    //  Receive packet error
+	output wire  data_rx_valid_6,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_6,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_6,   //  Frame Type Indication
+	output wire  pkt_class_valid_6,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_6,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_6,     //  Data from FIFO transmit
+	input wire   data_tx_valid_6,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_6,            //  Start of Packet
+	input wire   data_tx_eop_6,            //  END of Packet
+	output wire  data_tx_ready_6,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_6,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_6,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_6,               //  Xoff Pause frame generate 
+	input wire   xon_gen_6,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_6,          //  Enable Sleep Mode
+	output wire  magic_wakeup_6,           //  Wake Up Request
+
+
+    // CHANNEL 7
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_7,               //  Carrier Sense
+	input wire   m_rx_col_7,               //  Collition
+	input wire   rx_clk_7,                 //  Receive Clock
+	input wire   tx_clk_7,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_7,          //  GMII Receive Data
+	input wire   gm_rx_dv_7,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_7,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_7,          //  GMII Transmit Data
+	output wire  gm_tx_en_7,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_7,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_7,           //  MII Receive Data
+	input wire   m_rx_en_7,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_7,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_7,           //  MII Transmit Data
+	output wire  m_tx_en_7,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_7,               //  MII Transmit Frame Error
+	output wire  tx_control_7,
+	output wire  [3:0] rgmii_out_7,
+	input wire   [3:0] rgmii_in_7,
+	input wire   rx_control_7,
+	output wire  eth_mode_7,               //  Ethernet Mode
+	output wire  ena_10_7,                 //  Enable 10Mbps Mode
+	input wire   set_1000_7,               //  Gigabit Mode Enable
+	input wire   set_10_7,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_7,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_7,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_7,            //  Start of Packet
+	output wire  data_rx_eop_7,            //  End of Packet
+	output wire  [7:0] data_rx_data_7,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_7,    //  Receive packet error
+	output wire  data_rx_valid_7,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_7,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_7,   //  Frame Type Indication
+	output wire  pkt_class_valid_7,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_7,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_7,     //  Data from FIFO transmit
+	input wire   data_tx_valid_7,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_7,            //  Start of Packet
+	input wire   data_tx_eop_7,            //  END of Packet
+	output wire  data_tx_ready_7,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_7,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_7,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_7,               //  Xoff Pause frame generate 
+	input wire   xon_gen_7,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_7,          //  Enable Sleep Mode
+	output wire  magic_wakeup_7,           //  Wake Up Request
+
+
+    // CHANNEL 8
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_8,               //  Carrier Sense
+	input wire   m_rx_col_8,               //  Collition
+	input wire   rx_clk_8,                 //  Receive Clock
+	input wire   tx_clk_8,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_8,          //  GMII Receive Data
+	input wire   gm_rx_dv_8,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_8,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_8,          //  GMII Transmit Data
+	output wire  gm_tx_en_8,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_8,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_8,           //  MII Receive Data
+	input wire   m_rx_en_8,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_8,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_8,           //  MII Transmit Data
+	output wire  m_tx_en_8,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_8,               //  MII Transmit Frame Error
+	output wire  tx_control_8,
+	output wire  [3:0] rgmii_out_8,
+	input wire   [3:0] rgmii_in_8,
+	input wire   rx_control_8,
+	output wire  eth_mode_8,               //  Ethernet Mode
+	output wire  ena_10_8,                 //  Enable 10Mbps Mode
+	input wire   set_1000_8,               //  Gigabit Mode Enable
+	input wire   set_10_8,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_8,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_8,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_8,            //  Start of Packet
+	output wire  data_rx_eop_8,            //  End of Packet
+	output wire  [7:0] data_rx_data_8,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_8,    //  Receive packet error
+	output wire  data_rx_valid_8,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_8,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_8,   //  Frame Type Indication
+	output wire  pkt_class_valid_8,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_8,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_8,     //  Data from FIFO transmit
+	input wire   data_tx_valid_8,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_8,            //  Start of Packet
+	input wire   data_tx_eop_8,            //  END of Packet
+	output wire  data_tx_ready_8,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_8,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_8,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_8,               //  Xoff Pause frame generate 
+	input wire   xon_gen_8,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_8,          //  Enable Sleep Mode
+	output wire  magic_wakeup_8,           //  Wake Up Request
+
+
+    // CHANNEL 9
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_9,               //  Carrier Sense
+	input wire   m_rx_col_9,               //  Collition
+	input wire   rx_clk_9,                 //  Receive Clock
+	input wire   tx_clk_9,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_9,          //  GMII Receive Data
+	input wire   gm_rx_dv_9,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_9,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_9,          //  GMII Transmit Data
+	output wire  gm_tx_en_9,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_9,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_9,           //  MII Receive Data
+	input wire   m_rx_en_9,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_9,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_9,           //  MII Transmit Data
+	output wire  m_tx_en_9,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_9,               //  MII Transmit Frame Error
+	output wire  tx_control_9,
+	output wire  [3:0] rgmii_out_9,
+	input wire   [3:0] rgmii_in_9,
+	input wire   rx_control_9,
+	output wire  eth_mode_9,               //  Ethernet Mode
+	output wire  ena_10_9,                 //  Enable 10Mbps Mode
+	input wire   set_1000_9,               //  Gigabit Mode Enable
+	input wire   set_10_9,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_9,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_9,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_9,            //  Start of Packet
+	output wire  data_rx_eop_9,            //  End of Packet
+	output wire  [7:0] data_rx_data_9,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_9,    //  Receive packet error
+	output wire  data_rx_valid_9,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_9,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_9,   //  Frame Type Indication
+	output wire  pkt_class_valid_9,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_9,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_9,     //  Data from FIFO transmit
+	input wire   data_tx_valid_9,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_9,            //  Start of Packet
+	input wire   data_tx_eop_9,            //  END of Packet
+	output wire  data_tx_ready_9,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_9,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_9,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_9,               //  Xoff Pause frame generate 
+	input wire   xon_gen_9,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_9,          //  Enable Sleep Mode
+	output wire  magic_wakeup_9,           //  Wake Up Request
+
+
+    // CHANNEL 10
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_10,               //  Carrier Sense
+	input wire   m_rx_col_10,               //  Collition
+	input wire   rx_clk_10,                 //  Receive Clock
+	input wire   tx_clk_10,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_10,          //  GMII Receive Data
+	input wire   gm_rx_dv_10,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_10,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_10,          //  GMII Transmit Data
+	output wire  gm_tx_en_10,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_10,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_10,           //  MII Receive Data
+	input wire   m_rx_en_10,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_10,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_10,           //  MII Transmit Data
+	output wire  m_tx_en_10,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_10,               //  MII Transmit Frame Error
+	output wire  tx_control_10,
+	output wire  [3:0] rgmii_out_10,
+	input wire   [3:0] rgmii_in_10,
+	input wire   rx_control_10,
+	output wire  eth_mode_10,               //  Ethernet Mode
+	output wire  ena_10_10,                 //  Enable 10Mbps Mode
+	input wire   set_1000_10,               //  Gigabit Mode Enable
+	input wire   set_10_10,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_10,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_10,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_10,            //  Start of Packet
+	output wire  data_rx_eop_10,            //  End of Packet
+	output wire  [7:0] data_rx_data_10,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_10,    //  Receive packet error
+	output wire  data_rx_valid_10,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_10,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_10,   //  Frame Type Indication
+	output wire  pkt_class_valid_10,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_10,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_10,     //  Data from FIFO transmit
+	input wire   data_tx_valid_10,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_10,            //  Start of Packet
+	input wire   data_tx_eop_10,            //  END of Packet
+	output wire  data_tx_ready_10,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_10,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_10,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_10,               //  Xoff Pause frame generate 
+	input wire   xon_gen_10,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_10,          //  Enable Sleep Mode
+	output wire  magic_wakeup_10,           //  Wake Up Request
+
+
+    // CHANNEL 11
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_11,               //  Carrier Sense
+	input wire   m_rx_col_11,               //  Collition
+	input wire   rx_clk_11,                 //  Receive Clock
+	input wire   tx_clk_11,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_11,          //  GMII Receive Data
+	input wire   gm_rx_dv_11,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_11,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_11,          //  GMII Transmit Data
+	output wire  gm_tx_en_11,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_11,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_11,           //  MII Receive Data
+	input wire   m_rx_en_11,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_11,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_11,           //  MII Transmit Data
+	output wire  m_tx_en_11,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_11,               //  MII Transmit Frame Error
+	output wire  tx_control_11,
+	output wire  [3:0] rgmii_out_11,
+	input wire   [3:0] rgmii_in_11,
+	input wire   rx_control_11,
+	output wire  eth_mode_11,               //  Ethernet Mode
+	output wire  ena_10_11,                 //  Enable 10Mbps Mode
+	input wire   set_1000_11,               //  Gigabit Mode Enable
+	input wire   set_10_11,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_11,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_11,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_11,            //  Start of Packet
+	output wire  data_rx_eop_11,            //  End of Packet
+	output wire  [7:0] data_rx_data_11,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_11,    //  Receive packet error
+	output wire  data_rx_valid_11,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_11,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_11,   //  Frame Type Indication
+	output wire  pkt_class_valid_11,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_11,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_11,     //  Data from FIFO transmit
+	input wire   data_tx_valid_11,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_11,            //  Start of Packet
+	input wire   data_tx_eop_11,            //  END of Packet
+	output wire  data_tx_ready_11,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_11,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_11,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_11,               //  Xoff Pause frame generate 
+	input wire   xon_gen_11,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_11,          //  Enable Sleep Mode
+	output wire  magic_wakeup_11,           //  Wake Up Request
+
+
+    // CHANNEL 12
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_12,               //  Carrier Sense
+	input wire   m_rx_col_12,               //  Collition
+	input wire   rx_clk_12,                 //  Receive Clock
+	input wire   tx_clk_12,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_12,          //  GMII Receive Data
+	input wire   gm_rx_dv_12,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_12,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_12,          //  GMII Transmit Data
+	output wire  gm_tx_en_12,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_12,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_12,           //  MII Receive Data
+	input wire   m_rx_en_12,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_12,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_12,           //  MII Transmit Data
+	output wire  m_tx_en_12,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_12,               //  MII Transmit Frame Error
+	output wire  tx_control_12,
+	output wire  [3:0] rgmii_out_12,
+	input wire   [3:0] rgmii_in_12,
+	input wire   rx_control_12,
+	output wire  eth_mode_12,               //  Ethernet Mode
+	output wire  ena_10_12,                 //  Enable 10Mbps Mode
+	input wire   set_1000_12,               //  Gigabit Mode Enable
+	input wire   set_10_12,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_12,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_12,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_12,            //  Start of Packet
+	output wire  data_rx_eop_12,            //  End of Packet
+	output wire  [7:0] data_rx_data_12,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_12,    //  Receive packet error
+	output wire  data_rx_valid_12,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_12,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_12,   //  Frame Type Indication
+	output wire  pkt_class_valid_12,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_12,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_12,     //  Data from FIFO transmit
+	input wire   data_tx_valid_12,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_12,            //  Start of Packet
+	input wire   data_tx_eop_12,            //  END of Packet
+	output wire  data_tx_ready_12,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_12,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_12,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_12,               //  Xoff Pause frame generate 
+	input wire   xon_gen_12,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_12,          //  Enable Sleep Mode
+	output wire  magic_wakeup_12,           //  Wake Up Request
+
+
+    // CHANNEL 13
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_13,               //  Carrier Sense
+	input wire   m_rx_col_13,               //  Collition
+	input wire   rx_clk_13,                 //  Receive Clock
+	input wire   tx_clk_13,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_13,          //  GMII Receive Data
+	input wire   gm_rx_dv_13,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_13,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_13,          //  GMII Transmit Data
+	output wire  gm_tx_en_13,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_13,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_13,           //  MII Receive Data
+	input wire   m_rx_en_13,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_13,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_13,           //  MII Transmit Data
+	output wire  m_tx_en_13,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_13,               //  MII Transmit Frame Error
+	output wire  tx_control_13,
+	output wire  [3:0] rgmii_out_13,
+	input wire   [3:0] rgmii_in_13,
+	input wire   rx_control_13,
+	output wire  eth_mode_13,               //  Ethernet Mode
+	output wire  ena_10_13,                 //  Enable 10Mbps Mode
+	input wire   set_1000_13,               //  Gigabit Mode Enable
+	input wire   set_10_13,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_13,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_13,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_13,            //  Start of Packet
+	output wire  data_rx_eop_13,            //  End of Packet
+	output wire  [7:0] data_rx_data_13,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_13,    //  Receive packet error
+	output wire  data_rx_valid_13,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_13,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_13,   //  Frame Type Indication
+	output wire  pkt_class_valid_13,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_13,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_13,     //  Data from FIFO transmit
+	input wire   data_tx_valid_13,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_13,            //  Start of Packet
+	input wire   data_tx_eop_13,            //  END of Packet
+	output wire  data_tx_ready_13,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_13,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_13,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_13,               //  Xoff Pause frame generate 
+	input wire   xon_gen_13,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_13,          //  Enable Sleep Mode
+	output wire  magic_wakeup_13,           //  Wake Up Request
+
+
+    // CHANNEL 14
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_14,               //  Carrier Sense
+	input wire   m_rx_col_14,               //  Collition
+	input wire   rx_clk_14,                 //  Receive Clock
+	input wire   tx_clk_14,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_14,          //  GMII Receive Data
+	input wire   gm_rx_dv_14,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_14,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_14,          //  GMII Transmit Data
+	output wire  gm_tx_en_14,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_14,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_14,           //  MII Receive Data
+	input wire   m_rx_en_14,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_14,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_14,           //  MII Transmit Data
+	output wire  m_tx_en_14,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_14,               //  MII Transmit Frame Error
+	output wire  tx_control_14,
+	output wire  [3:0] rgmii_out_14,
+	input wire   [3:0] rgmii_in_14,
+	input wire   rx_control_14,
+	output wire  eth_mode_14,               //  Ethernet Mode
+	output wire  ena_10_14,                 //  Enable 10Mbps Mode
+	input wire   set_1000_14,               //  Gigabit Mode Enable
+	input wire   set_10_14,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_14,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_14,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_14,            //  Start of Packet
+	output wire  data_rx_eop_14,            //  End of Packet
+	output wire  [7:0] data_rx_data_14,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_14,    //  Receive packet error
+	output wire  data_rx_valid_14,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_14,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_14,   //  Frame Type Indication
+	output wire  pkt_class_valid_14,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_14,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_14,     //  Data from FIFO transmit
+	input wire   data_tx_valid_14,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_14,            //  Start of Packet
+	input wire   data_tx_eop_14,            //  END of Packet
+	output wire  data_tx_ready_14,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_14,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_14,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_14,               //  Xoff Pause frame generate 
+	input wire   xon_gen_14,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_14,          //  Enable Sleep Mode
+	output wire  magic_wakeup_14,           //  Wake Up Request
+
+
+    // CHANNEL 15
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_15,               //  Carrier Sense
+	input wire   m_rx_col_15,               //  Collition
+	input wire   rx_clk_15,                 //  Receive Clock
+	input wire   tx_clk_15,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_15,          //  GMII Receive Data
+	input wire   gm_rx_dv_15,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_15,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_15,          //  GMII Transmit Data
+	output wire  gm_tx_en_15,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_15,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_15,           //  MII Receive Data
+	input wire   m_rx_en_15,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_15,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_15,           //  MII Transmit Data
+	output wire  m_tx_en_15,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_15,               //  MII Transmit Frame Error
+	output wire  tx_control_15,
+	output wire  [3:0] rgmii_out_15,
+	input wire   [3:0] rgmii_in_15,
+	input wire   rx_control_15,
+	output wire  eth_mode_15,               //  Ethernet Mode
+	output wire  ena_10_15,                 //  Enable 10Mbps Mode
+	input wire   set_1000_15,               //  Gigabit Mode Enable
+	input wire   set_10_15,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_15,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_15,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_15,            //  Start of Packet
+	output wire  data_rx_eop_15,            //  End of Packet
+	output wire  [7:0] data_rx_data_15,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_15,    //  Receive packet error
+	output wire  data_rx_valid_15,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_15,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_15,   //  Frame Type Indication
+	output wire  pkt_class_valid_15,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_15,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_15,     //  Data from FIFO transmit
+	input wire   data_tx_valid_15,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_15,            //  Start of Packet
+	input wire   data_tx_eop_15,            //  END of Packet
+	output wire  data_tx_ready_15,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_15,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_15,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_15,               //  Xoff Pause frame generate 
+	input wire   xon_gen_15,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_15,          //  Enable Sleep Mode
+	output wire  magic_wakeup_15,           //  Wake Up Request
+
+
+    // CHANNEL 16
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_16,               //  Carrier Sense
+	input wire   m_rx_col_16,               //  Collition
+	input wire   rx_clk_16,                 //  Receive Clock
+	input wire   tx_clk_16,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_16,          //  GMII Receive Data
+	input wire   gm_rx_dv_16,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_16,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_16,          //  GMII Transmit Data
+	output wire  gm_tx_en_16,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_16,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_16,           //  MII Receive Data
+	input wire   m_rx_en_16,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_16,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_16,           //  MII Transmit Data
+	output wire  m_tx_en_16,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_16,               //  MII Transmit Frame Error
+	output wire  tx_control_16,
+	output wire  [3:0] rgmii_out_16,
+	input wire   [3:0] rgmii_in_16,
+	input wire   rx_control_16,
+	output wire  eth_mode_16,               //  Ethernet Mode
+	output wire  ena_10_16,                 //  Enable 10Mbps Mode
+	input wire   set_1000_16,               //  Gigabit Mode Enable
+	input wire   set_10_16,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_16,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_16,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_16,            //  Start of Packet
+	output wire  data_rx_eop_16,            //  End of Packet
+	output wire  [7:0] data_rx_data_16,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_16,    //  Receive packet error
+	output wire  data_rx_valid_16,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_16,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_16,   //  Frame Type Indication
+	output wire  pkt_class_valid_16,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_16,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_16,     //  Data from FIFO transmit
+	input wire   data_tx_valid_16,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_16,            //  Start of Packet
+	input wire   data_tx_eop_16,            //  END of Packet
+	output wire  data_tx_ready_16,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_16,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_16,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_16,               //  Xoff Pause frame generate 
+	input wire   xon_gen_16,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_16,          //  Enable Sleep Mode
+	output wire  magic_wakeup_16,           //  Wake Up Request
+
+
+    // CHANNEL 17
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_17,               //  Carrier Sense
+	input wire   m_rx_col_17,               //  Collition
+	input wire   rx_clk_17,                 //  Receive Clock
+	input wire   tx_clk_17,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_17,          //  GMII Receive Data
+	input wire   gm_rx_dv_17,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_17,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_17,          //  GMII Transmit Data
+	output wire  gm_tx_en_17,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_17,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_17,           //  MII Receive Data
+	input wire   m_rx_en_17,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_17,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_17,           //  MII Transmit Data
+	output wire  m_tx_en_17,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_17,               //  MII Transmit Frame Error
+	output wire  tx_control_17,
+	output wire  [3:0] rgmii_out_17,
+	input wire   [3:0] rgmii_in_17,
+	input wire   rx_control_17,
+	output wire  eth_mode_17,               //  Ethernet Mode
+	output wire  ena_10_17,                 //  Enable 10Mbps Mode
+	input wire   set_1000_17,               //  Gigabit Mode Enable
+	input wire   set_10_17,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_17,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_17,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_17,            //  Start of Packet
+	output wire  data_rx_eop_17,            //  End of Packet
+	output wire  [7:0] data_rx_data_17,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_17,    //  Receive packet error
+	output wire  data_rx_valid_17,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_17,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_17,   //  Frame Type Indication
+	output wire  pkt_class_valid_17,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_17,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_17,     //  Data from FIFO transmit
+	input wire   data_tx_valid_17,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_17,            //  Start of Packet
+	input wire   data_tx_eop_17,            //  END of Packet
+	output wire  data_tx_ready_17,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_17,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_17,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_17,               //  Xoff Pause frame generate 
+	input wire   xon_gen_17,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_17,          //  Enable Sleep Mode
+	output wire  magic_wakeup_17,           //  Wake Up Request
+
+
+    // CHANNEL 18
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_18,               //  Carrier Sense
+	input wire   m_rx_col_18,               //  Collition
+	input wire   rx_clk_18,                 //  Receive Clock
+	input wire   tx_clk_18,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_18,          //  GMII Receive Data
+	input wire   gm_rx_dv_18,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_18,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_18,          //  GMII Transmit Data
+	output wire  gm_tx_en_18,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_18,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_18,           //  MII Receive Data
+	input wire   m_rx_en_18,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_18,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_18,           //  MII Transmit Data
+	output wire  m_tx_en_18,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_18,               //  MII Transmit Frame Error
+	output wire  tx_control_18,
+	output wire  [3:0] rgmii_out_18,
+	input wire   [3:0] rgmii_in_18,
+	input wire   rx_control_18,
+	output wire  eth_mode_18,               //  Ethernet Mode
+	output wire  ena_10_18,                 //  Enable 10Mbps Mode
+	input wire   set_1000_18,               //  Gigabit Mode Enable
+	input wire   set_10_18,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_18,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_18,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_18,            //  Start of Packet
+	output wire  data_rx_eop_18,            //  End of Packet
+	output wire  [7:0] data_rx_data_18,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_18,    //  Receive packet error
+	output wire  data_rx_valid_18,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_18,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_18,   //  Frame Type Indication
+	output wire  pkt_class_valid_18,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_18,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_18,     //  Data from FIFO transmit
+	input wire   data_tx_valid_18,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_18,            //  Start of Packet
+	input wire   data_tx_eop_18,            //  END of Packet
+	output wire  data_tx_ready_18,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_18,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_18,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_18,               //  Xoff Pause frame generate 
+	input wire   xon_gen_18,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_18,          //  Enable Sleep Mode
+	output wire  magic_wakeup_18,           //  Wake Up Request
+
+
+    // CHANNEL 19
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_19,               //  Carrier Sense
+	input wire   m_rx_col_19,               //  Collition
+	input wire   rx_clk_19,                 //  Receive Clock
+	input wire   tx_clk_19,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_19,          //  GMII Receive Data
+	input wire   gm_rx_dv_19,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_19,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_19,          //  GMII Transmit Data
+	output wire  gm_tx_en_19,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_19,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_19,           //  MII Receive Data
+	input wire   m_rx_en_19,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_19,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_19,           //  MII Transmit Data
+	output wire  m_tx_en_19,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_19,               //  MII Transmit Frame Error
+	output wire  tx_control_19,
+	output wire  [3:0] rgmii_out_19,
+	input wire   [3:0] rgmii_in_19,
+	input wire   rx_control_19,
+	output wire  eth_mode_19,               //  Ethernet Mode
+	output wire  ena_10_19,                 //  Enable 10Mbps Mode
+	input wire   set_1000_19,               //  Gigabit Mode Enable
+	input wire   set_10_19,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_19,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_19,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_19,            //  Start of Packet
+	output wire  data_rx_eop_19,            //  End of Packet
+	output wire  [7:0] data_rx_data_19,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_19,    //  Receive packet error
+	output wire  data_rx_valid_19,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_19,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_19,   //  Frame Type Indication
+	output wire  pkt_class_valid_19,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_19,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_19,     //  Data from FIFO transmit
+	input wire   data_tx_valid_19,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_19,            //  Start of Packet
+	input wire   data_tx_eop_19,            //  END of Packet
+	output wire  data_tx_ready_19,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_19,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_19,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_19,               //  Xoff Pause frame generate 
+	input wire   xon_gen_19,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_19,          //  Enable Sleep Mode
+	output wire  magic_wakeup_19,           //  Wake Up Request
+
+
+    // CHANNEL 20
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_20,               //  Carrier Sense
+	input wire   m_rx_col_20,               //  Collition
+	input wire   rx_clk_20,                 //  Receive Clock
+	input wire   tx_clk_20,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_20,          //  GMII Receive Data
+	input wire   gm_rx_dv_20,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_20,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_20,          //  GMII Transmit Data
+	output wire  gm_tx_en_20,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_20,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_20,           //  MII Receive Data
+	input wire   m_rx_en_20,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_20,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_20,           //  MII Transmit Data
+	output wire  m_tx_en_20,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_20,               //  MII Transmit Frame Error
+	output wire  tx_control_20,
+	output wire  [3:0] rgmii_out_20,
+	input wire   [3:0] rgmii_in_20,
+	input wire   rx_control_20,
+	output wire  eth_mode_20,               //  Ethernet Mode
+	output wire  ena_10_20,                 //  Enable 10Mbps Mode
+	input wire   set_1000_20,               //  Gigabit Mode Enable
+	input wire   set_10_20,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_20,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_20,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_20,            //  Start of Packet
+	output wire  data_rx_eop_20,            //  End of Packet
+	output wire  [7:0] data_rx_data_20,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_20,    //  Receive packet error
+	output wire  data_rx_valid_20,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_20,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_20,   //  Frame Type Indication
+	output wire  pkt_class_valid_20,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_20,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_20,     //  Data from FIFO transmit
+	input wire   data_tx_valid_20,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_20,            //  Start of Packet
+	input wire   data_tx_eop_20,            //  END of Packet
+	output wire  data_tx_ready_20,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_20,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_20,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_20,               //  Xoff Pause frame generate 
+	input wire   xon_gen_20,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_20,          //  Enable Sleep Mode
+	output wire  magic_wakeup_20,           //  Wake Up Request
+
+
+    // CHANNEL 21
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_21,               //  Carrier Sense
+	input wire   m_rx_col_21,               //  Collition
+	input wire   rx_clk_21,                 //  Receive Clock
+	input wire   tx_clk_21,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_21,          //  GMII Receive Data
+	input wire   gm_rx_dv_21,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_21,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_21,          //  GMII Transmit Data
+	output wire  gm_tx_en_21,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_21,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_21,           //  MII Receive Data
+	input wire   m_rx_en_21,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_21,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_21,           //  MII Transmit Data
+	output wire  m_tx_en_21,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_21,               //  MII Transmit Frame Error
+	output wire  tx_control_21,
+	output wire  [3:0] rgmii_out_21,
+	input wire   [3:0] rgmii_in_21,
+	input wire   rx_control_21,
+	output wire  eth_mode_21,               //  Ethernet Mode
+	output wire  ena_10_21,                 //  Enable 10Mbps Mode
+	input wire   set_1000_21,               //  Gigabit Mode Enable
+	input wire   set_10_21,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_21,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_21,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_21,            //  Start of Packet
+	output wire  data_rx_eop_21,            //  End of Packet
+	output wire  [7:0] data_rx_data_21,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_21,    //  Receive packet error
+	output wire  data_rx_valid_21,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_21,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_21,   //  Frame Type Indication
+	output wire  pkt_class_valid_21,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_21,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_21,     //  Data from FIFO transmit
+	input wire   data_tx_valid_21,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_21,            //  Start of Packet
+	input wire   data_tx_eop_21,            //  END of Packet
+	output wire  data_tx_ready_21,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_21,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_21,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_21,               //  Xoff Pause frame generate 
+	input wire   xon_gen_21,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_21,          //  Enable Sleep Mode
+	output wire  magic_wakeup_21,           //  Wake Up Request
+
+
+    // CHANNEL 22
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_22,               //  Carrier Sense
+	input wire   m_rx_col_22,               //  Collition
+	input wire   rx_clk_22,                 //  Receive Clock
+	input wire   tx_clk_22,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_22,          //  GMII Receive Data
+	input wire   gm_rx_dv_22,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_22,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_22,          //  GMII Transmit Data
+	output wire  gm_tx_en_22,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_22,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_22,           //  MII Receive Data
+	input wire   m_rx_en_22,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_22,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_22,           //  MII Transmit Data
+	output wire  m_tx_en_22,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_22,               //  MII Transmit Frame Error
+	output wire  tx_control_22,
+	output wire  [3:0] rgmii_out_22,
+	input wire   [3:0] rgmii_in_22,
+	input wire   rx_control_22,
+	output wire  eth_mode_22,               //  Ethernet Mode
+	output wire  ena_10_22,                 //  Enable 10Mbps Mode
+	input wire   set_1000_22,               //  Gigabit Mode Enable
+	input wire   set_10_22,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_22,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_22,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_22,            //  Start of Packet
+	output wire  data_rx_eop_22,            //  End of Packet
+	output wire  [7:0] data_rx_data_22,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_22,    //  Receive packet error
+	output wire  data_rx_valid_22,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_22,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_22,   //  Frame Type Indication
+	output wire  pkt_class_valid_22,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_22,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_22,     //  Data from FIFO transmit
+	input wire   data_tx_valid_22,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_22,            //  Start of Packet
+	input wire   data_tx_eop_22,            //  END of Packet
+	output wire  data_tx_ready_22,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_22,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_22,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_22,               //  Xoff Pause frame generate 
+	input wire   xon_gen_22,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_22,          //  Enable Sleep Mode
+	output wire  magic_wakeup_22,           //  Wake Up Request
+
+
+    // CHANNEL 23
+
+	// GMII / MII / RGMII SIGNALS 
+	input wire   m_rx_crs_23,               //  Carrier Sense
+	input wire   m_rx_col_23,               //  Collition
+	input wire   rx_clk_23,                 //  Receive Clock
+	input wire   tx_clk_23,                 //  Transmit Clock                
+	input wire   [7:0] gm_rx_d_23,          //  GMII Receive Data
+	input wire   gm_rx_dv_23,               //  GMII Receive Frame Enable  
+	input wire   gm_rx_err_23,              //  GMII Receive Frame Error  
+	output wire  [7:0] gm_tx_d_23,          //  GMII Transmit Data
+	output wire  gm_tx_en_23,               //  GMII Transmit Frame Enable  
+	output wire  gm_tx_err_23,              //  GMII Transmit Frame Error
+	input wire   [3:0] m_rx_d_23,           //  MII Receive Data
+	input wire   m_rx_en_23,                //  MII Receive Frame Enable  
+	input wire   m_rx_err_23,               //  MII Receive Drame Error      
+	output wire  [3:0] m_tx_d_23,           //  MII Transmit Data
+	output wire  m_tx_en_23,                //  MII Transmit Frame Enable  
+	output wire  m_tx_err_23,               //  MII Transmit Frame Error
+	output wire  tx_control_23,
+	output wire  [3:0] rgmii_out_23,
+	input wire   [3:0] rgmii_in_23,
+	input wire   rx_control_23,
+	output wire  eth_mode_23,               //  Ethernet Mode
+	output wire  ena_10_23,                 //  Enable 10Mbps Mode
+	input wire   set_1000_23,               //  Gigabit Mode Enable
+	input wire   set_10_23,                 //  10Mbps Mode Enable
+	
+	// AV-ST TX & RX
+	output wire  mac_rx_clk_23,             //  Av-ST Receive Clock
+	output wire  mac_tx_clk_23,             //  Av-ST Transmit Clock
+	output wire  data_rx_sop_23,            //  Start of Packet
+	output wire  data_rx_eop_23,            //  End of Packet
+	output wire  [7:0] data_rx_data_23,     //  Data from FIFO
+	output wire  [4:0] data_rx_error_23,    //  Receive packet error
+	output wire  data_rx_valid_23,          //  Data Receive FIFO Valid
+	input wire   data_rx_ready_23,          //  Data Receive Ready
+	output wire  [4:0] pkt_class_data_23,   //  Frame Type Indication
+	output wire  pkt_class_valid_23,        //  Frame Type Indication Valid 
+	input wire   data_tx_error_23,          //  STATUS FIFO (Tx frame Error from Apps)
+	input wire   [7:0] data_tx_data_23,     //  Data from FIFO transmit
+	input wire   data_tx_valid_23,          //  Data FIFO transmit Empty
+	input wire   data_tx_sop_23,            //  Start of Packet
+	input wire   data_tx_eop_23,            //  END of Packet
+	output wire  data_tx_ready_23,          //  Data FIFO transmit Read Enable 
+	
+	// STAND_ALONE CONDUITS 
+	output wire  tx_ff_uflow_23,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+	input wire   tx_crc_fwd_23,             //  Forward Current Frame with CRC from Application
+	input wire   xoff_gen_23,               //  Xoff Pause frame generate 
+	input wire   xon_gen_23,                //  Xon Pause frame generate 
+	input wire   magic_sleep_n_23,          //  Enable Sleep Mode
+	output wire  magic_wakeup_23);          //  Wake Up Request
+
+
+
+
+	altera_tse_top_multi_mac U_TOP_MULTI_MAC(
+	
+	        .reset(reset),                            //INPUT  : ASYNCHRONOUS RESET - clk DOMAIN
+	        .clk(clk),                                //INPUT  : CLOCK
+	        .read(read),                              //INPUT  : REGISTER READ TRANSACTION
+	        .write(write),                            //INPUT  : REGISTER WRITE TRANSACTION
+	        .address(address),                        //INPUT  : REGISTER ADDRESS
+	        .writedata(writedata),                    //INPUT  : REGISTER WRITE DATA
+	        .readdata(readdata),                      //OUTPUT : REGISTER READ DATA
+	        .waitrequest(waitrequest),                //OUTPUT : TRANSACTION BUSY, ACTIVE LOW
+	        .mdc(mdc),                                //OUTPUT : MDIO Clock 
+	        .mdio_out(mdio_out),                      //OUTPUT : Outgoing MDIO DATA
+	        .mdio_in(mdio_in),                        //INPUT  : Incoming MDIO DATA       
+	        .mdio_oen(mdio_oen),                      //OUTPUT : MDIO Output Enable
+	        .rx_clk(rx_clk),                          //INPUT  : MAC RX CLK
+	        .tx_clk(tx_clk),                          //INPUT  : MAC TX CLK
+	        .mac_rx_clk(mac_rx_clk),                  //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk(mac_tx_clk),                  //OUTPUT : Av-ST Tx Clock
+            .rx_afull_clk(rx_afull_clk),              //INPUT  : AFull Status Clock
+	        .rx_afull_data(rx_afull_data),            //INPUT  : AFull Status Data
+	        .rx_afull_valid(rx_afull_valid),          //INPUT  : AFull Status Valid
+	        .rx_afull_channel(rx_afull_channel),      //INPUT  : AFull Status Channel
+            
+             // Channel 0 
+	        
+	        .rx_clk_0(rx_clk_0),                      //INPUT  : MAC RX CLK
+	        .tx_clk_0(tx_clk_0),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_0(gm_rx_d_0),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_0(gm_rx_dv_0),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_0(gm_rx_err_0),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_0(gm_tx_d_0),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_0(gm_tx_en_0),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_0(gm_tx_err_0),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_0(m_rx_crs_0),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_0(m_rx_col_0),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_0(m_rx_d_0),                      //INPUT  : MII RX DATA
+	        .m_rx_en_0(m_rx_en_0),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_0(m_rx_err_0),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_0(m_tx_d_0),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_0(m_tx_en_0),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_0(m_tx_err_0),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_0(rx_control_0),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_0(rgmii_in_0),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_0(tx_control_0),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_0(rgmii_out_0),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_0(eth_mode_0),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_0(ena_10_0),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_0(set_10_0),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_0(set_1000_0),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_0(mac_rx_clk_0),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_0(mac_tx_clk_0),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_0(data_rx_sop_0),            //OUTPUT : Start of Packet
+	        .data_rx_eop_0(data_rx_eop_0),            //OUTPUT : End of Packet
+	        .data_rx_data_0(data_rx_data_0),          //OUTPUT : Data from FIFO
+	        .data_rx_error_0(data_rx_error_0),        //OUTPUT : Receive packet error
+	        .data_rx_valid_0(data_rx_valid_0),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_0(data_rx_ready_0),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_0(pkt_class_data_0),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_0(pkt_class_valid_0),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_0(data_tx_error_0),        //INPUT  : Status
+	        .data_tx_data_0(data_tx_data_0),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_0(data_tx_valid_0),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_0(data_tx_sop_0),            //INPUT  : Start of Packet
+	        .data_tx_eop_0(data_tx_eop_0),            //INPUT  : End of Packet
+	        .data_tx_ready_0(data_tx_ready_0),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_0(tx_ff_uflow_0),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_0(tx_crc_fwd_0),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_0(xoff_gen_0),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_0(xon_gen_0),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_0(magic_sleep_n_0),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_0(magic_wakeup_0),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 1 
+	        
+	        .rx_clk_1(rx_clk_1),                      //INPUT  : MAC RX CLK
+	        .tx_clk_1(tx_clk_1),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_1(gm_rx_d_1),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_1(gm_rx_dv_1),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_1(gm_rx_err_1),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_1(gm_tx_d_1),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_1(gm_tx_en_1),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_1(gm_tx_err_1),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_1(m_rx_crs_1),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_1(m_rx_col_1),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_1(m_rx_d_1),                      //INPUT  : MII RX DATA
+	        .m_rx_en_1(m_rx_en_1),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_1(m_rx_err_1),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_1(m_tx_d_1),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_1(m_tx_en_1),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_1(m_tx_err_1),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_1(rx_control_1),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_1(rgmii_in_1),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_1(tx_control_1),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_1(rgmii_out_1),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_1(eth_mode_1),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_1(ena_10_1),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_1(set_10_1),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_1(set_1000_1),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_1(mac_rx_clk_1),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_1(mac_tx_clk_1),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_1(data_rx_sop_1),            //OUTPUT : Start of Packet
+	        .data_rx_eop_1(data_rx_eop_1),            //OUTPUT : End of Packet
+	        .data_rx_data_1(data_rx_data_1),          //OUTPUT : Data from FIFO
+	        .data_rx_error_1(data_rx_error_1),        //OUTPUT : Receive packet error
+	        .data_rx_valid_1(data_rx_valid_1),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_1(data_rx_ready_1),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_1(pkt_class_data_1),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_1(pkt_class_valid_1),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_1(data_tx_error_1),        //INPUT  : Status
+	        .data_tx_data_1(data_tx_data_1),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_1(data_tx_valid_1),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_1(data_tx_sop_1),            //INPUT  : Start of Packet
+	        .data_tx_eop_1(data_tx_eop_1),            //INPUT  : End of Packet
+	        .data_tx_ready_1(data_tx_ready_1),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_1(tx_ff_uflow_1),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_1(tx_crc_fwd_1),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_1(xoff_gen_1),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_1(xon_gen_1),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_1(magic_sleep_n_1),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_1(magic_wakeup_1),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 2 
+	        
+	        .rx_clk_2(rx_clk_2),                      //INPUT  : MAC RX CLK
+	        .tx_clk_2(tx_clk_2),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_2(gm_rx_d_2),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_2(gm_rx_dv_2),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_2(gm_rx_err_2),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_2(gm_tx_d_2),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_2(gm_tx_en_2),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_2(gm_tx_err_2),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_2(m_rx_crs_2),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_2(m_rx_col_2),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_2(m_rx_d_2),                      //INPUT  : MII RX DATA
+	        .m_rx_en_2(m_rx_en_2),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_2(m_rx_err_2),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_2(m_tx_d_2),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_2(m_tx_en_2),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_2(m_tx_err_2),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_2(rx_control_2),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_2(rgmii_in_2),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_2(tx_control_2),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_2(rgmii_out_2),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_2(eth_mode_2),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_2(ena_10_2),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_2(set_10_2),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_2(set_1000_2),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_2(mac_rx_clk_2),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_2(mac_tx_clk_2),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_2(data_rx_sop_2),            //OUTPUT : Start of Packet
+	        .data_rx_eop_2(data_rx_eop_2),            //OUTPUT : End of Packet
+	        .data_rx_data_2(data_rx_data_2),          //OUTPUT : Data from FIFO
+	        .data_rx_error_2(data_rx_error_2),        //OUTPUT : Receive packet error
+	        .data_rx_valid_2(data_rx_valid_2),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_2(data_rx_ready_2),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_2(pkt_class_data_2),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_2(pkt_class_valid_2),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_2(data_tx_error_2),        //INPUT  : Status
+	        .data_tx_data_2(data_tx_data_2),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_2(data_tx_valid_2),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_2(data_tx_sop_2),            //INPUT  : Start of Packet
+	        .data_tx_eop_2(data_tx_eop_2),            //INPUT  : End of Packet
+	        .data_tx_ready_2(data_tx_ready_2),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_2(tx_ff_uflow_2),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_2(tx_crc_fwd_2),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_2(xoff_gen_2),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_2(xon_gen_2),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_2(magic_sleep_n_2),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_2(magic_wakeup_2),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 3 
+	        
+	        .rx_clk_3(rx_clk_3),                      //INPUT  : MAC RX CLK
+	        .tx_clk_3(tx_clk_3),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_3(gm_rx_d_3),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_3(gm_rx_dv_3),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_3(gm_rx_err_3),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_3(gm_tx_d_3),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_3(gm_tx_en_3),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_3(gm_tx_err_3),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_3(m_rx_crs_3),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_3(m_rx_col_3),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_3(m_rx_d_3),                      //INPUT  : MII RX DATA
+	        .m_rx_en_3(m_rx_en_3),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_3(m_rx_err_3),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_3(m_tx_d_3),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_3(m_tx_en_3),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_3(m_tx_err_3),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_3(rx_control_3),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_3(rgmii_in_3),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_3(tx_control_3),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_3(rgmii_out_3),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_3(eth_mode_3),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_3(ena_10_3),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_3(set_10_3),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_3(set_1000_3),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_3(mac_rx_clk_3),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_3(mac_tx_clk_3),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_3(data_rx_sop_3),            //OUTPUT : Start of Packet
+	        .data_rx_eop_3(data_rx_eop_3),            //OUTPUT : End of Packet
+	        .data_rx_data_3(data_rx_data_3),          //OUTPUT : Data from FIFO
+	        .data_rx_error_3(data_rx_error_3),        //OUTPUT : Receive packet error
+	        .data_rx_valid_3(data_rx_valid_3),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_3(data_rx_ready_3),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_3(pkt_class_data_3),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_3(pkt_class_valid_3),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_3(data_tx_error_3),        //INPUT  : Status
+	        .data_tx_data_3(data_tx_data_3),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_3(data_tx_valid_3),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_3(data_tx_sop_3),            //INPUT  : Start of Packet
+	        .data_tx_eop_3(data_tx_eop_3),            //INPUT  : End of Packet
+	        .data_tx_ready_3(data_tx_ready_3),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_3(tx_ff_uflow_3),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_3(tx_crc_fwd_3),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_3(xoff_gen_3),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_3(xon_gen_3),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_3(magic_sleep_n_3),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_3(magic_wakeup_3),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 4 
+	        
+	        .rx_clk_4(rx_clk_4),                      //INPUT  : MAC RX CLK
+	        .tx_clk_4(tx_clk_4),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_4(gm_rx_d_4),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_4(gm_rx_dv_4),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_4(gm_rx_err_4),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_4(gm_tx_d_4),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_4(gm_tx_en_4),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_4(gm_tx_err_4),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_4(m_rx_crs_4),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_4(m_rx_col_4),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_4(m_rx_d_4),                      //INPUT  : MII RX DATA
+	        .m_rx_en_4(m_rx_en_4),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_4(m_rx_err_4),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_4(m_tx_d_4),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_4(m_tx_en_4),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_4(m_tx_err_4),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_4(rx_control_4),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_4(rgmii_in_4),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_4(tx_control_4),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_4(rgmii_out_4),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_4(eth_mode_4),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_4(ena_10_4),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_4(set_10_4),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_4(set_1000_4),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_4(mac_rx_clk_4),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_4(mac_tx_clk_4),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_4(data_rx_sop_4),            //OUTPUT : Start of Packet
+	        .data_rx_eop_4(data_rx_eop_4),            //OUTPUT : End of Packet
+	        .data_rx_data_4(data_rx_data_4),          //OUTPUT : Data from FIFO
+	        .data_rx_error_4(data_rx_error_4),        //OUTPUT : Receive packet error
+	        .data_rx_valid_4(data_rx_valid_4),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_4(data_rx_ready_4),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_4(pkt_class_data_4),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_4(pkt_class_valid_4),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_4(data_tx_error_4),        //INPUT  : Status
+	        .data_tx_data_4(data_tx_data_4),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_4(data_tx_valid_4),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_4(data_tx_sop_4),            //INPUT  : Start of Packet
+	        .data_tx_eop_4(data_tx_eop_4),            //INPUT  : End of Packet
+	        .data_tx_ready_4(data_tx_ready_4),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_4(tx_ff_uflow_4),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_4(tx_crc_fwd_4),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_4(xoff_gen_4),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_4(xon_gen_4),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_4(magic_sleep_n_4),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_4(magic_wakeup_4),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 5 
+	        
+	        .rx_clk_5(rx_clk_5),                      //INPUT  : MAC RX CLK
+	        .tx_clk_5(tx_clk_5),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_5(gm_rx_d_5),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_5(gm_rx_dv_5),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_5(gm_rx_err_5),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_5(gm_tx_d_5),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_5(gm_tx_en_5),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_5(gm_tx_err_5),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_5(m_rx_crs_5),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_5(m_rx_col_5),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_5(m_rx_d_5),                      //INPUT  : MII RX DATA
+	        .m_rx_en_5(m_rx_en_5),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_5(m_rx_err_5),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_5(m_tx_d_5),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_5(m_tx_en_5),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_5(m_tx_err_5),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_5(rx_control_5),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_5(rgmii_in_5),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_5(tx_control_5),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_5(rgmii_out_5),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_5(eth_mode_5),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_5(ena_10_5),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_5(set_10_5),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_5(set_1000_5),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_5(mac_rx_clk_5),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_5(mac_tx_clk_5),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_5(data_rx_sop_5),            //OUTPUT : Start of Packet
+	        .data_rx_eop_5(data_rx_eop_5),            //OUTPUT : End of Packet
+	        .data_rx_data_5(data_rx_data_5),          //OUTPUT : Data from FIFO
+	        .data_rx_error_5(data_rx_error_5),        //OUTPUT : Receive packet error
+	        .data_rx_valid_5(data_rx_valid_5),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_5(data_rx_ready_5),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_5(pkt_class_data_5),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_5(pkt_class_valid_5),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_5(data_tx_error_5),        //INPUT  : Status
+	        .data_tx_data_5(data_tx_data_5),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_5(data_tx_valid_5),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_5(data_tx_sop_5),            //INPUT  : Start of Packet
+	        .data_tx_eop_5(data_tx_eop_5),            //INPUT  : End of Packet
+	        .data_tx_ready_5(data_tx_ready_5),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_5(tx_ff_uflow_5),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_5(tx_crc_fwd_5),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_5(xoff_gen_5),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_5(xon_gen_5),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_5(magic_sleep_n_5),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_5(magic_wakeup_5),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 6 
+	        
+	        .rx_clk_6(rx_clk_6),                      //INPUT  : MAC RX CLK
+	        .tx_clk_6(tx_clk_6),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_6(gm_rx_d_6),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_6(gm_rx_dv_6),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_6(gm_rx_err_6),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_6(gm_tx_d_6),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_6(gm_tx_en_6),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_6(gm_tx_err_6),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_6(m_rx_crs_6),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_6(m_rx_col_6),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_6(m_rx_d_6),                      //INPUT  : MII RX DATA
+	        .m_rx_en_6(m_rx_en_6),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_6(m_rx_err_6),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_6(m_tx_d_6),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_6(m_tx_en_6),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_6(m_tx_err_6),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_6(rx_control_6),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_6(rgmii_in_6),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_6(tx_control_6),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_6(rgmii_out_6),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_6(eth_mode_6),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_6(ena_10_6),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_6(set_10_6),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_6(set_1000_6),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_6(mac_rx_clk_6),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_6(mac_tx_clk_6),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_6(data_rx_sop_6),            //OUTPUT : Start of Packet
+	        .data_rx_eop_6(data_rx_eop_6),            //OUTPUT : End of Packet
+	        .data_rx_data_6(data_rx_data_6),          //OUTPUT : Data from FIFO
+	        .data_rx_error_6(data_rx_error_6),        //OUTPUT : Receive packet error
+	        .data_rx_valid_6(data_rx_valid_6),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_6(data_rx_ready_6),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_6(pkt_class_data_6),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_6(pkt_class_valid_6),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_6(data_tx_error_6),        //INPUT  : Status
+	        .data_tx_data_6(data_tx_data_6),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_6(data_tx_valid_6),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_6(data_tx_sop_6),            //INPUT  : Start of Packet
+	        .data_tx_eop_6(data_tx_eop_6),            //INPUT  : End of Packet
+	        .data_tx_ready_6(data_tx_ready_6),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_6(tx_ff_uflow_6),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_6(tx_crc_fwd_6),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_6(xoff_gen_6),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_6(xon_gen_6),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_6(magic_sleep_n_6),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_6(magic_wakeup_6),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 7 
+	        
+	        .rx_clk_7(rx_clk_7),                      //INPUT  : MAC RX CLK
+	        .tx_clk_7(tx_clk_7),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_7(gm_rx_d_7),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_7(gm_rx_dv_7),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_7(gm_rx_err_7),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_7(gm_tx_d_7),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_7(gm_tx_en_7),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_7(gm_tx_err_7),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_7(m_rx_crs_7),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_7(m_rx_col_7),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_7(m_rx_d_7),                      //INPUT  : MII RX DATA
+	        .m_rx_en_7(m_rx_en_7),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_7(m_rx_err_7),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_7(m_tx_d_7),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_7(m_tx_en_7),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_7(m_tx_err_7),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_7(rx_control_7),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_7(rgmii_in_7),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_7(tx_control_7),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_7(rgmii_out_7),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_7(eth_mode_7),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_7(ena_10_7),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_7(set_10_7),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_7(set_1000_7),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_7(mac_rx_clk_7),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_7(mac_tx_clk_7),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_7(data_rx_sop_7),            //OUTPUT : Start of Packet
+	        .data_rx_eop_7(data_rx_eop_7),            //OUTPUT : End of Packet
+	        .data_rx_data_7(data_rx_data_7),          //OUTPUT : Data from FIFO
+	        .data_rx_error_7(data_rx_error_7),        //OUTPUT : Receive packet error
+	        .data_rx_valid_7(data_rx_valid_7),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_7(data_rx_ready_7),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_7(pkt_class_data_7),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_7(pkt_class_valid_7),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_7(data_tx_error_7),        //INPUT  : Status
+	        .data_tx_data_7(data_tx_data_7),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_7(data_tx_valid_7),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_7(data_tx_sop_7),            //INPUT  : Start of Packet
+	        .data_tx_eop_7(data_tx_eop_7),            //INPUT  : End of Packet
+	        .data_tx_ready_7(data_tx_ready_7),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_7(tx_ff_uflow_7),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_7(tx_crc_fwd_7),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_7(xoff_gen_7),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_7(xon_gen_7),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_7(magic_sleep_n_7),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_7(magic_wakeup_7),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 8 
+	        
+	        .rx_clk_8(rx_clk_8),                      //INPUT  : MAC RX CLK
+	        .tx_clk_8(tx_clk_8),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_8(gm_rx_d_8),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_8(gm_rx_dv_8),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_8(gm_rx_err_8),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_8(gm_tx_d_8),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_8(gm_tx_en_8),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_8(gm_tx_err_8),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_8(m_rx_crs_8),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_8(m_rx_col_8),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_8(m_rx_d_8),                      //INPUT  : MII RX DATA
+	        .m_rx_en_8(m_rx_en_8),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_8(m_rx_err_8),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_8(m_tx_d_8),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_8(m_tx_en_8),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_8(m_tx_err_8),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_8(rx_control_8),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_8(rgmii_in_8),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_8(tx_control_8),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_8(rgmii_out_8),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_8(eth_mode_8),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_8(ena_10_8),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_8(set_10_8),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_8(set_1000_8),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_8(mac_rx_clk_8),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_8(mac_tx_clk_8),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_8(data_rx_sop_8),            //OUTPUT : Start of Packet
+	        .data_rx_eop_8(data_rx_eop_8),            //OUTPUT : End of Packet
+	        .data_rx_data_8(data_rx_data_8),          //OUTPUT : Data from FIFO
+	        .data_rx_error_8(data_rx_error_8),        //OUTPUT : Receive packet error
+	        .data_rx_valid_8(data_rx_valid_8),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_8(data_rx_ready_8),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_8(pkt_class_data_8),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_8(pkt_class_valid_8),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_8(data_tx_error_8),        //INPUT  : Status
+	        .data_tx_data_8(data_tx_data_8),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_8(data_tx_valid_8),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_8(data_tx_sop_8),            //INPUT  : Start of Packet
+	        .data_tx_eop_8(data_tx_eop_8),            //INPUT  : End of Packet
+	        .data_tx_ready_8(data_tx_ready_8),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_8(tx_ff_uflow_8),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_8(tx_crc_fwd_8),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_8(xoff_gen_8),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_8(xon_gen_8),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_8(magic_sleep_n_8),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_8(magic_wakeup_8),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 9 
+	        
+	        .rx_clk_9(rx_clk_9),                      //INPUT  : MAC RX CLK
+	        .tx_clk_9(tx_clk_9),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_9(gm_rx_d_9),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_9(gm_rx_dv_9),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_9(gm_rx_err_9),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_9(gm_tx_d_9),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_9(gm_tx_en_9),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_9(gm_tx_err_9),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_9(m_rx_crs_9),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_9(m_rx_col_9),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_9(m_rx_d_9),                      //INPUT  : MII RX DATA
+	        .m_rx_en_9(m_rx_en_9),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_9(m_rx_err_9),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_9(m_tx_d_9),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_9(m_tx_en_9),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_9(m_tx_err_9),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_9(rx_control_9),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_9(rgmii_in_9),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_9(tx_control_9),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_9(rgmii_out_9),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_9(eth_mode_9),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_9(ena_10_9),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_9(set_10_9),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_9(set_1000_9),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_9(mac_rx_clk_9),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_9(mac_tx_clk_9),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_9(data_rx_sop_9),            //OUTPUT : Start of Packet
+	        .data_rx_eop_9(data_rx_eop_9),            //OUTPUT : End of Packet
+	        .data_rx_data_9(data_rx_data_9),          //OUTPUT : Data from FIFO
+	        .data_rx_error_9(data_rx_error_9),        //OUTPUT : Receive packet error
+	        .data_rx_valid_9(data_rx_valid_9),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_9(data_rx_ready_9),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_9(pkt_class_data_9),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_9(pkt_class_valid_9),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_9(data_tx_error_9),        //INPUT  : Status
+	        .data_tx_data_9(data_tx_data_9),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_9(data_tx_valid_9),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_9(data_tx_sop_9),            //INPUT  : Start of Packet
+	        .data_tx_eop_9(data_tx_eop_9),            //INPUT  : End of Packet
+	        .data_tx_ready_9(data_tx_ready_9),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_9(tx_ff_uflow_9),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_9(tx_crc_fwd_9),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_9(xoff_gen_9),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_9(xon_gen_9),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_9(magic_sleep_n_9),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_9(magic_wakeup_9),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 10 
+	        
+	        .rx_clk_10(rx_clk_10),                      //INPUT  : MAC RX CLK
+	        .tx_clk_10(tx_clk_10),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_10(gm_rx_d_10),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_10(gm_rx_dv_10),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_10(gm_rx_err_10),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_10(gm_tx_d_10),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_10(gm_tx_en_10),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_10(gm_tx_err_10),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_10(m_rx_crs_10),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_10(m_rx_col_10),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_10(m_rx_d_10),                      //INPUT  : MII RX DATA
+	        .m_rx_en_10(m_rx_en_10),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_10(m_rx_err_10),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_10(m_tx_d_10),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_10(m_tx_en_10),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_10(m_tx_err_10),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_10(rx_control_10),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_10(rgmii_in_10),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_10(tx_control_10),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_10(rgmii_out_10),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_10(eth_mode_10),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_10(ena_10_10),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_10(set_10_10),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_10(set_1000_10),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_10(mac_rx_clk_10),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_10(mac_tx_clk_10),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_10(data_rx_sop_10),            //OUTPUT : Start of Packet
+	        .data_rx_eop_10(data_rx_eop_10),            //OUTPUT : End of Packet
+	        .data_rx_data_10(data_rx_data_10),          //OUTPUT : Data from FIFO
+	        .data_rx_error_10(data_rx_error_10),        //OUTPUT : Receive packet error
+	        .data_rx_valid_10(data_rx_valid_10),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_10(data_rx_ready_10),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_10(pkt_class_data_10),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_10(pkt_class_valid_10),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_10(data_tx_error_10),        //INPUT  : Status
+	        .data_tx_data_10(data_tx_data_10),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_10(data_tx_valid_10),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_10(data_tx_sop_10),            //INPUT  : Start of Packet
+	        .data_tx_eop_10(data_tx_eop_10),            //INPUT  : End of Packet
+	        .data_tx_ready_10(data_tx_ready_10),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_10(tx_ff_uflow_10),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_10(tx_crc_fwd_10),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_10(xoff_gen_10),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_10(xon_gen_10),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_10(magic_sleep_n_10),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_10(magic_wakeup_10),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 11 
+	        
+	        .rx_clk_11(rx_clk_11),                      //INPUT  : MAC RX CLK
+	        .tx_clk_11(tx_clk_11),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_11(gm_rx_d_11),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_11(gm_rx_dv_11),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_11(gm_rx_err_11),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_11(gm_tx_d_11),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_11(gm_tx_en_11),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_11(gm_tx_err_11),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_11(m_rx_crs_11),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_11(m_rx_col_11),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_11(m_rx_d_11),                      //INPUT  : MII RX DATA
+	        .m_rx_en_11(m_rx_en_11),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_11(m_rx_err_11),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_11(m_tx_d_11),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_11(m_tx_en_11),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_11(m_tx_err_11),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_11(rx_control_11),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_11(rgmii_in_11),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_11(tx_control_11),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_11(rgmii_out_11),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_11(eth_mode_11),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_11(ena_10_11),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_11(set_10_11),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_11(set_1000_11),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_11(mac_rx_clk_11),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_11(mac_tx_clk_11),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_11(data_rx_sop_11),            //OUTPUT : Start of Packet
+	        .data_rx_eop_11(data_rx_eop_11),            //OUTPUT : End of Packet
+	        .data_rx_data_11(data_rx_data_11),          //OUTPUT : Data from FIFO
+	        .data_rx_error_11(data_rx_error_11),        //OUTPUT : Receive packet error
+	        .data_rx_valid_11(data_rx_valid_11),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_11(data_rx_ready_11),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_11(pkt_class_data_11),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_11(pkt_class_valid_11),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_11(data_tx_error_11),        //INPUT  : Status
+	        .data_tx_data_11(data_tx_data_11),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_11(data_tx_valid_11),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_11(data_tx_sop_11),            //INPUT  : Start of Packet
+	        .data_tx_eop_11(data_tx_eop_11),            //INPUT  : End of Packet
+	        .data_tx_ready_11(data_tx_ready_11),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_11(tx_ff_uflow_11),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_11(tx_crc_fwd_11),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_11(xoff_gen_11),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_11(xon_gen_11),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_11(magic_sleep_n_11),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_11(magic_wakeup_11),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 12 
+	        
+	        .rx_clk_12(rx_clk_12),                      //INPUT  : MAC RX CLK
+	        .tx_clk_12(tx_clk_12),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_12(gm_rx_d_12),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_12(gm_rx_dv_12),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_12(gm_rx_err_12),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_12(gm_tx_d_12),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_12(gm_tx_en_12),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_12(gm_tx_err_12),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_12(m_rx_crs_12),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_12(m_rx_col_12),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_12(m_rx_d_12),                      //INPUT  : MII RX DATA
+	        .m_rx_en_12(m_rx_en_12),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_12(m_rx_err_12),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_12(m_tx_d_12),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_12(m_tx_en_12),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_12(m_tx_err_12),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_12(rx_control_12),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_12(rgmii_in_12),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_12(tx_control_12),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_12(rgmii_out_12),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_12(eth_mode_12),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_12(ena_10_12),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_12(set_10_12),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_12(set_1000_12),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_12(mac_rx_clk_12),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_12(mac_tx_clk_12),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_12(data_rx_sop_12),            //OUTPUT : Start of Packet
+	        .data_rx_eop_12(data_rx_eop_12),            //OUTPUT : End of Packet
+	        .data_rx_data_12(data_rx_data_12),          //OUTPUT : Data from FIFO
+	        .data_rx_error_12(data_rx_error_12),        //OUTPUT : Receive packet error
+	        .data_rx_valid_12(data_rx_valid_12),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_12(data_rx_ready_12),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_12(pkt_class_data_12),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_12(pkt_class_valid_12),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_12(data_tx_error_12),        //INPUT  : Status
+	        .data_tx_data_12(data_tx_data_12),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_12(data_tx_valid_12),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_12(data_tx_sop_12),            //INPUT  : Start of Packet
+	        .data_tx_eop_12(data_tx_eop_12),            //INPUT  : End of Packet
+	        .data_tx_ready_12(data_tx_ready_12),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_12(tx_ff_uflow_12),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_12(tx_crc_fwd_12),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_12(xoff_gen_12),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_12(xon_gen_12),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_12(magic_sleep_n_12),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_12(magic_wakeup_12),          //OUTPUT : MAC WAKE-UP INDICATION	        
+
+             // Channel 13 
+	        
+	        .rx_clk_13(rx_clk_13),                      //INPUT  : MAC RX CLK
+	        .tx_clk_13(tx_clk_13),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_13(gm_rx_d_13),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_13(gm_rx_dv_13),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_13(gm_rx_err_13),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_13(gm_tx_d_13),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_13(gm_tx_en_13),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_13(gm_tx_err_13),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_13(m_rx_crs_13),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_13(m_rx_col_13),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_13(m_rx_d_13),                      //INPUT  : MII RX DATA
+	        .m_rx_en_13(m_rx_en_13),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_13(m_rx_err_13),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_13(m_tx_d_13),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_13(m_tx_en_13),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_13(m_tx_err_13),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_13(rx_control_13),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_13(rgmii_in_13),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_13(tx_control_13),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_13(rgmii_out_13),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_13(eth_mode_13),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_13(ena_10_13),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_13(set_10_13),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_13(set_1000_13),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_13(mac_rx_clk_13),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_13(mac_tx_clk_13),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_13(data_rx_sop_13),            //OUTPUT : Start of Packet
+	        .data_rx_eop_13(data_rx_eop_13),            //OUTPUT : End of Packet
+	        .data_rx_data_13(data_rx_data_13),          //OUTPUT : Data from FIFO
+	        .data_rx_error_13(data_rx_error_13),        //OUTPUT : Receive packet error
+	        .data_rx_valid_13(data_rx_valid_13),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_13(data_rx_ready_13),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_13(pkt_class_data_13),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_13(pkt_class_valid_13),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_13(data_tx_error_13),        //INPUT  : Status
+	        .data_tx_data_13(data_tx_data_13),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_13(data_tx_valid_13),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_13(data_tx_sop_13),            //INPUT  : Start of Packet
+	        .data_tx_eop_13(data_tx_eop_13),            //INPUT  : End of Packet
+	        .data_tx_ready_13(data_tx_ready_13),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_13(tx_ff_uflow_13),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_13(tx_crc_fwd_13),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_13(xoff_gen_13),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_13(xon_gen_13),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_13(magic_sleep_n_13),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_13(magic_wakeup_13),          //OUTPUT : MAC WAKE-UP INDICATION	        
+
+             // Channel 14 
+	        
+	        .rx_clk_14(rx_clk_14),                      //INPUT  : MAC RX CLK
+	        .tx_clk_14(tx_clk_14),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_14(gm_rx_d_14),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_14(gm_rx_dv_14),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_14(gm_rx_err_14),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_14(gm_tx_d_14),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_14(gm_tx_en_14),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_14(gm_tx_err_14),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_14(m_rx_crs_14),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_14(m_rx_col_14),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_14(m_rx_d_14),                      //INPUT  : MII RX DATA
+	        .m_rx_en_14(m_rx_en_14),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_14(m_rx_err_14),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_14(m_tx_d_14),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_14(m_tx_en_14),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_14(m_tx_err_14),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_14(rx_control_14),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_14(rgmii_in_14),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_14(tx_control_14),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_14(rgmii_out_14),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_14(eth_mode_14),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_14(ena_10_14),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_14(set_10_14),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_14(set_1000_14),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_14(mac_rx_clk_14),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_14(mac_tx_clk_14),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_14(data_rx_sop_14),            //OUTPUT : Start of Packet
+	        .data_rx_eop_14(data_rx_eop_14),            //OUTPUT : End of Packet
+	        .data_rx_data_14(data_rx_data_14),          //OUTPUT : Data from FIFO
+	        .data_rx_error_14(data_rx_error_14),        //OUTPUT : Receive packet error
+	        .data_rx_valid_14(data_rx_valid_14),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_14(data_rx_ready_14),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_14(pkt_class_data_14),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_14(pkt_class_valid_14),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_14(data_tx_error_14),        //INPUT  : Status
+	        .data_tx_data_14(data_tx_data_14),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_14(data_tx_valid_14),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_14(data_tx_sop_14),            //INPUT  : Start of Packet
+	        .data_tx_eop_14(data_tx_eop_14),            //INPUT  : End of Packet
+	        .data_tx_ready_14(data_tx_ready_14),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_14(tx_ff_uflow_14),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_14(tx_crc_fwd_14),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_14(xoff_gen_14),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_14(xon_gen_14),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_14(magic_sleep_n_14),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_14(magic_wakeup_14),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 15 
+	        
+	        .rx_clk_15(rx_clk_15),                      //INPUT  : MAC RX CLK
+	        .tx_clk_15(tx_clk_15),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_15(gm_rx_d_15),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_15(gm_rx_dv_15),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_15(gm_rx_err_15),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_15(gm_tx_d_15),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_15(gm_tx_en_15),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_15(gm_tx_err_15),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_15(m_rx_crs_15),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_15(m_rx_col_15),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_15(m_rx_d_15),                      //INPUT  : MII RX DATA
+	        .m_rx_en_15(m_rx_en_15),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_15(m_rx_err_15),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_15(m_tx_d_15),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_15(m_tx_en_15),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_15(m_tx_err_15),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_15(rx_control_15),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_15(rgmii_in_15),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_15(tx_control_15),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_15(rgmii_out_15),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_15(eth_mode_15),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_15(ena_10_15),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_15(set_10_15),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_15(set_1000_15),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_15(mac_rx_clk_15),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_15(mac_tx_clk_15),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_15(data_rx_sop_15),            //OUTPUT : Start of Packet
+	        .data_rx_eop_15(data_rx_eop_15),            //OUTPUT : End of Packet
+	        .data_rx_data_15(data_rx_data_15),          //OUTPUT : Data from FIFO
+	        .data_rx_error_15(data_rx_error_15),        //OUTPUT : Receive packet error
+	        .data_rx_valid_15(data_rx_valid_15),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_15(data_rx_ready_15),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_15(pkt_class_data_15),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_15(pkt_class_valid_15),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_15(data_tx_error_15),        //INPUT  : Status
+	        .data_tx_data_15(data_tx_data_15),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_15(data_tx_valid_15),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_15(data_tx_sop_15),            //INPUT  : Start of Packet
+	        .data_tx_eop_15(data_tx_eop_15),            //INPUT  : End of Packet
+	        .data_tx_ready_15(data_tx_ready_15),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_15(tx_ff_uflow_15),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_15(tx_crc_fwd_15),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_15(xoff_gen_15),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_15(xon_gen_15),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_15(magic_sleep_n_15),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_15(magic_wakeup_15),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 16 
+	        
+	        .rx_clk_16(rx_clk_16),                      //INPUT  : MAC RX CLK
+	        .tx_clk_16(tx_clk_16),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_16(gm_rx_d_16),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_16(gm_rx_dv_16),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_16(gm_rx_err_16),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_16(gm_tx_d_16),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_16(gm_tx_en_16),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_16(gm_tx_err_16),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_16(m_rx_crs_16),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_16(m_rx_col_16),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_16(m_rx_d_16),                      //INPUT  : MII RX DATA
+	        .m_rx_en_16(m_rx_en_16),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_16(m_rx_err_16),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_16(m_tx_d_16),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_16(m_tx_en_16),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_16(m_tx_err_16),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_16(rx_control_16),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_16(rgmii_in_16),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_16(tx_control_16),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_16(rgmii_out_16),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_16(eth_mode_16),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_16(ena_10_16),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_16(set_10_16),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_16(set_1000_16),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_16(mac_rx_clk_16),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_16(mac_tx_clk_16),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_16(data_rx_sop_16),            //OUTPUT : Start of Packet
+	        .data_rx_eop_16(data_rx_eop_16),            //OUTPUT : End of Packet
+	        .data_rx_data_16(data_rx_data_16),          //OUTPUT : Data from FIFO
+	        .data_rx_error_16(data_rx_error_16),        //OUTPUT : Receive packet error
+	        .data_rx_valid_16(data_rx_valid_16),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_16(data_rx_ready_16),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_16(pkt_class_data_16),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_16(pkt_class_valid_16),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_16(data_tx_error_16),        //INPUT  : Status
+	        .data_tx_data_16(data_tx_data_16),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_16(data_tx_valid_16),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_16(data_tx_sop_16),            //INPUT  : Start of Packet
+	        .data_tx_eop_16(data_tx_eop_16),            //INPUT  : End of Packet
+	        .data_tx_ready_16(data_tx_ready_16),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_16(tx_ff_uflow_16),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_16(tx_crc_fwd_16),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_16(xoff_gen_16),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_16(xon_gen_16),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_16(magic_sleep_n_16),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_16(magic_wakeup_16),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 17 
+	        
+	        .rx_clk_17(rx_clk_17),                      //INPUT  : MAC RX CLK
+	        .tx_clk_17(tx_clk_17),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_17(gm_rx_d_17),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_17(gm_rx_dv_17),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_17(gm_rx_err_17),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_17(gm_tx_d_17),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_17(gm_tx_en_17),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_17(gm_tx_err_17),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_17(m_rx_crs_17),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_17(m_rx_col_17),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_17(m_rx_d_17),                      //INPUT  : MII RX DATA
+	        .m_rx_en_17(m_rx_en_17),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_17(m_rx_err_17),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_17(m_tx_d_17),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_17(m_tx_en_17),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_17(m_tx_err_17),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_17(rx_control_17),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_17(rgmii_in_17),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_17(tx_control_17),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_17(rgmii_out_17),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_17(eth_mode_17),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_17(ena_10_17),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_17(set_10_17),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_17(set_1000_17),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_17(mac_rx_clk_17),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_17(mac_tx_clk_17),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_17(data_rx_sop_17),            //OUTPUT : Start of Packet
+	        .data_rx_eop_17(data_rx_eop_17),            //OUTPUT : End of Packet
+	        .data_rx_data_17(data_rx_data_17),          //OUTPUT : Data from FIFO
+	        .data_rx_error_17(data_rx_error_17),        //OUTPUT : Receive packet error
+	        .data_rx_valid_17(data_rx_valid_17),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_17(data_rx_ready_17),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_17(pkt_class_data_17),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_17(pkt_class_valid_17),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_17(data_tx_error_17),        //INPUT  : Status
+	        .data_tx_data_17(data_tx_data_17),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_17(data_tx_valid_17),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_17(data_tx_sop_17),            //INPUT  : Start of Packet
+	        .data_tx_eop_17(data_tx_eop_17),            //INPUT  : End of Packet
+	        .data_tx_ready_17(data_tx_ready_17),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_17(tx_ff_uflow_17),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_17(tx_crc_fwd_17),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_17(xoff_gen_17),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_17(xon_gen_17),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_17(magic_sleep_n_17),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_17(magic_wakeup_17),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 18 
+	        
+	        .rx_clk_18(rx_clk_18),                      //INPUT  : MAC RX CLK
+	        .tx_clk_18(tx_clk_18),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_18(gm_rx_d_18),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_18(gm_rx_dv_18),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_18(gm_rx_err_18),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_18(gm_tx_d_18),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_18(gm_tx_en_18),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_18(gm_tx_err_18),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_18(m_rx_crs_18),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_18(m_rx_col_18),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_18(m_rx_d_18),                      //INPUT  : MII RX DATA
+	        .m_rx_en_18(m_rx_en_18),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_18(m_rx_err_18),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_18(m_tx_d_18),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_18(m_tx_en_18),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_18(m_tx_err_18),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_18(rx_control_18),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_18(rgmii_in_18),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_18(tx_control_18),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_18(rgmii_out_18),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_18(eth_mode_18),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_18(ena_10_18),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_18(set_10_18),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_18(set_1000_18),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_18(mac_rx_clk_18),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_18(mac_tx_clk_18),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_18(data_rx_sop_18),            //OUTPUT : Start of Packet
+	        .data_rx_eop_18(data_rx_eop_18),            //OUTPUT : End of Packet
+	        .data_rx_data_18(data_rx_data_18),          //OUTPUT : Data from FIFO
+	        .data_rx_error_18(data_rx_error_18),        //OUTPUT : Receive packet error
+	        .data_rx_valid_18(data_rx_valid_18),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_18(data_rx_ready_18),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_18(pkt_class_data_18),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_18(pkt_class_valid_18),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_18(data_tx_error_18),        //INPUT  : Status
+	        .data_tx_data_18(data_tx_data_18),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_18(data_tx_valid_18),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_18(data_tx_sop_18),            //INPUT  : Start of Packet
+	        .data_tx_eop_18(data_tx_eop_18),            //INPUT  : End of Packet
+	        .data_tx_ready_18(data_tx_ready_18),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_18(tx_ff_uflow_18),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_18(tx_crc_fwd_18),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_18(xoff_gen_18),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_18(xon_gen_18),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_18(magic_sleep_n_18),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_18(magic_wakeup_18),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 19 
+	        
+	        .rx_clk_19(rx_clk_19),                      //INPUT  : MAC RX CLK
+	        .tx_clk_19(tx_clk_19),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_19(gm_rx_d_19),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_19(gm_rx_dv_19),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_19(gm_rx_err_19),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_19(gm_tx_d_19),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_19(gm_tx_en_19),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_19(gm_tx_err_19),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_19(m_rx_crs_19),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_19(m_rx_col_19),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_19(m_rx_d_19),                      //INPUT  : MII RX DATA
+	        .m_rx_en_19(m_rx_en_19),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_19(m_rx_err_19),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_19(m_tx_d_19),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_19(m_tx_en_19),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_19(m_tx_err_19),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_19(rx_control_19),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_19(rgmii_in_19),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_19(tx_control_19),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_19(rgmii_out_19),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_19(eth_mode_19),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_19(ena_10_19),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_19(set_10_19),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_19(set_1000_19),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_19(mac_rx_clk_19),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_19(mac_tx_clk_19),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_19(data_rx_sop_19),            //OUTPUT : Start of Packet
+	        .data_rx_eop_19(data_rx_eop_19),            //OUTPUT : End of Packet
+	        .data_rx_data_19(data_rx_data_19),          //OUTPUT : Data from FIFO
+	        .data_rx_error_19(data_rx_error_19),        //OUTPUT : Receive packet error
+	        .data_rx_valid_19(data_rx_valid_19),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_19(data_rx_ready_19),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_19(pkt_class_data_19),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_19(pkt_class_valid_19),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_19(data_tx_error_19),        //INPUT  : Status
+	        .data_tx_data_19(data_tx_data_19),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_19(data_tx_valid_19),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_19(data_tx_sop_19),            //INPUT  : Start of Packet
+	        .data_tx_eop_19(data_tx_eop_19),            //INPUT  : End of Packet
+	        .data_tx_ready_19(data_tx_ready_19),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_19(tx_ff_uflow_19),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_19(tx_crc_fwd_19),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_19(xoff_gen_19),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_19(xon_gen_19),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_19(magic_sleep_n_19),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_19(magic_wakeup_19),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 20 
+	        
+	        .rx_clk_20(rx_clk_20),                      //INPUT  : MAC RX CLK
+	        .tx_clk_20(tx_clk_20),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_20(gm_rx_d_20),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_20(gm_rx_dv_20),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_20(gm_rx_err_20),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_20(gm_tx_d_20),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_20(gm_tx_en_20),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_20(gm_tx_err_20),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_20(m_rx_crs_20),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_20(m_rx_col_20),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_20(m_rx_d_20),                      //INPUT  : MII RX DATA
+	        .m_rx_en_20(m_rx_en_20),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_20(m_rx_err_20),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_20(m_tx_d_20),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_20(m_tx_en_20),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_20(m_tx_err_20),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_20(rx_control_20),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_20(rgmii_in_20),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_20(tx_control_20),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_20(rgmii_out_20),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_20(eth_mode_20),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_20(ena_10_20),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_20(set_10_20),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_20(set_1000_20),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_20(mac_rx_clk_20),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_20(mac_tx_clk_20),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_20(data_rx_sop_20),            //OUTPUT : Start of Packet
+	        .data_rx_eop_20(data_rx_eop_20),            //OUTPUT : End of Packet
+	        .data_rx_data_20(data_rx_data_20),          //OUTPUT : Data from FIFO
+	        .data_rx_error_20(data_rx_error_20),        //OUTPUT : Receive packet error
+	        .data_rx_valid_20(data_rx_valid_20),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_20(data_rx_ready_20),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_20(pkt_class_data_20),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_20(pkt_class_valid_20),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_20(data_tx_error_20),        //INPUT  : Status
+	        .data_tx_data_20(data_tx_data_20),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_20(data_tx_valid_20),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_20(data_tx_sop_20),            //INPUT  : Start of Packet
+	        .data_tx_eop_20(data_tx_eop_20),            //INPUT  : End of Packet
+	        .data_tx_ready_20(data_tx_ready_20),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_20(tx_ff_uflow_20),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_20(tx_crc_fwd_20),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_20(xoff_gen_20),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_20(xon_gen_20),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_20(magic_sleep_n_20),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_20(magic_wakeup_20),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 21 
+	        
+	        .rx_clk_21(rx_clk_21),                      //INPUT  : MAC RX CLK
+	        .tx_clk_21(tx_clk_21),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_21(gm_rx_d_21),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_21(gm_rx_dv_21),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_21(gm_rx_err_21),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_21(gm_tx_d_21),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_21(gm_tx_en_21),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_21(gm_tx_err_21),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_21(m_rx_crs_21),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_21(m_rx_col_21),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_21(m_rx_d_21),                      //INPUT  : MII RX DATA
+	        .m_rx_en_21(m_rx_en_21),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_21(m_rx_err_21),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_21(m_tx_d_21),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_21(m_tx_en_21),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_21(m_tx_err_21),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_21(rx_control_21),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_21(rgmii_in_21),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_21(tx_control_21),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_21(rgmii_out_21),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_21(eth_mode_21),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_21(ena_10_21),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_21(set_10_21),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_21(set_1000_21),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_21(mac_rx_clk_21),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_21(mac_tx_clk_21),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_21(data_rx_sop_21),            //OUTPUT : Start of Packet
+	        .data_rx_eop_21(data_rx_eop_21),            //OUTPUT : End of Packet
+	        .data_rx_data_21(data_rx_data_21),          //OUTPUT : Data from FIFO
+	        .data_rx_error_21(data_rx_error_21),        //OUTPUT : Receive packet error
+	        .data_rx_valid_21(data_rx_valid_21),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_21(data_rx_ready_21),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_21(pkt_class_data_21),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_21(pkt_class_valid_21),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_21(data_tx_error_21),        //INPUT  : Status
+	        .data_tx_data_21(data_tx_data_21),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_21(data_tx_valid_21),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_21(data_tx_sop_21),            //INPUT  : Start of Packet
+	        .data_tx_eop_21(data_tx_eop_21),            //INPUT  : End of Packet
+	        .data_tx_ready_21(data_tx_ready_21),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_21(tx_ff_uflow_21),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_21(tx_crc_fwd_21),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_21(xoff_gen_21),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_21(xon_gen_21),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_21(magic_sleep_n_21),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_21(magic_wakeup_21),          //OUTPUT : MAC WAKE-UP INDICATION
+
+             // Channel 22 
+	        
+	        .rx_clk_22(rx_clk_22),                      //INPUT  : MAC RX CLK
+	        .tx_clk_22(tx_clk_22),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_22(gm_rx_d_22),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_22(gm_rx_dv_22),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_22(gm_rx_err_22),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_22(gm_tx_d_22),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_22(gm_tx_en_22),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_22(gm_tx_err_22),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_22(m_rx_crs_22),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_22(m_rx_col_22),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_22(m_rx_d_22),                      //INPUT  : MII RX DATA
+	        .m_rx_en_22(m_rx_en_22),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_22(m_rx_err_22),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_22(m_tx_d_22),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_22(m_tx_en_22),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_22(m_tx_err_22),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_22(rx_control_22),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_22(rgmii_in_22),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_22(tx_control_22),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_22(rgmii_out_22),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_22(eth_mode_22),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_22(ena_10_22),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_22(set_10_22),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_22(set_1000_22),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_22(mac_rx_clk_22),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_22(mac_tx_clk_22),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_22(data_rx_sop_22),            //OUTPUT : Start of Packet
+	        .data_rx_eop_22(data_rx_eop_22),            //OUTPUT : End of Packet
+	        .data_rx_data_22(data_rx_data_22),          //OUTPUT : Data from FIFO
+	        .data_rx_error_22(data_rx_error_22),        //OUTPUT : Receive packet error
+	        .data_rx_valid_22(data_rx_valid_22),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_22(data_rx_ready_22),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_22(pkt_class_data_22),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_22(pkt_class_valid_22),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_22(data_tx_error_22),        //INPUT  : Status
+	        .data_tx_data_22(data_tx_data_22),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_22(data_tx_valid_22),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_22(data_tx_sop_22),            //INPUT  : Start of Packet
+	        .data_tx_eop_22(data_tx_eop_22),            //INPUT  : End of Packet
+	        .data_tx_ready_22(data_tx_ready_22),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_22(tx_ff_uflow_22),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_22(tx_crc_fwd_22),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_22(xoff_gen_22),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_22(xon_gen_22),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_22(magic_sleep_n_22),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_22(magic_wakeup_22),          //OUTPUT : MAC WAKE-UP INDICATION	        	        	        	        	        	        
+	        	        	        
+	                     
+             // Channel 23 
+	        
+	        .rx_clk_23(rx_clk_23),                      //INPUT  : MAC RX CLK
+	        .tx_clk_23(tx_clk_23),                      //INPUT  : MAC TX CLK
+	        .gm_rx_d_23(gm_rx_d_23),                    //INPUT  : GMII RX DATA
+	        .gm_rx_dv_23(gm_rx_dv_23),                  //INPUT  : GMII RX VALID INDICATION
+	        .gm_rx_err_23(gm_rx_err_23),                //INPUT  : GMII RX ERROR INDICATION
+	        .gm_tx_d_23(gm_tx_d_23),                    //OUTPUT : GMII TX DATA
+	        .gm_tx_en_23(gm_tx_en_23),                  //OUTPUT : GMII TX VALID INDICATION
+	        .gm_tx_err_23(gm_tx_err_23),                //OUTPUT : GMII TX ERROR INDICATION
+	        .m_rx_crs_23(m_rx_crs_23),                  //INPUT  : MII RX CARRIER SENSE
+	        .m_rx_col_23(m_rx_col_23),                  //INPUT  : MII RX COLLISION
+	        .m_rx_d_23(m_rx_d_23),                      //INPUT  : MII RX DATA
+	        .m_rx_en_23(m_rx_en_23),                    //INPUT  : MII RX VALID INDICATION
+	        .m_rx_err_23(m_rx_err_23),                  //INPUT  : MII RX ERROR INDICATION
+	        .m_tx_d_23(m_tx_d_23),                      //OUTPUT : MII TX DATA
+	        .m_tx_en_23(m_tx_en_23),                    //OUTPUT : MII TX VALID INDICATION
+	        .m_tx_err_23(m_tx_err_23),                  //OUTPUT : MII TX ERROR INDICATION
+	        .rx_control_23(rx_control_23),              //INPUT  : RGMII RX CONTROL INDICATION
+	        .rgmii_in_23(rgmii_in_23),                  //INPUT  : RGMII RX DATA INDICATION
+	        .tx_control_23(tx_control_23),              //OUTPUT : RGMII TX CONTROL INDICATION
+	        .rgmii_out_23(rgmii_out_23),                //OUTPUT : RGMII TX DATA INDICATION
+	        .eth_mode_23(eth_mode_23),                  //OUTPUT : ETHERNET SPEED 1000MBPS INDICATION
+	        .ena_10_23(ena_10_23),                      //OUTPUT : SPEED 10 MBPS INDICATION
+	        .set_10_23(set_10_23),                      //INPUT  : SPEED 10 MBPS
+	        .set_1000_23(set_1000_23),                  //INPUT  : SPEED 1000 MBPS
+	        .mac_rx_clk_23(mac_rx_clk_23),              //OUTPUT : Av-ST Rx Clock
+            .mac_tx_clk_23(mac_tx_clk_23),              //OUTPUT : Av-ST Tx Clock
+	        .data_rx_sop_23(data_rx_sop_23),            //OUTPUT : Start of Packet
+	        .data_rx_eop_23(data_rx_eop_23),            //OUTPUT : End of Packet
+	        .data_rx_data_23(data_rx_data_23),          //OUTPUT : Data from FIFO
+	        .data_rx_error_23(data_rx_error_23),        //OUTPUT : Receive packet error
+	        .data_rx_valid_23(data_rx_valid_23),        //OUTPUT : Data Receive FIFO Valid
+	        .data_rx_ready_23(data_rx_ready_23),        //OUTPUT : Data Receive Ready
+	        .pkt_class_data_23(pkt_class_data_23),      //OUTPUT : Frame Type Indication
+	        .pkt_class_valid_23(pkt_class_valid_23),    //OUTPUT : Frame Type Indication Valid
+	        .data_tx_error_23(data_tx_error_23),        //INPUT  : Status
+	        .data_tx_data_23(data_tx_data_23),          //INPUT  : Data from FIFO transmit
+	        .data_tx_valid_23(data_tx_valid_23),        //INPUT  : Data FIFO transmit Empty
+	        .data_tx_sop_23(data_tx_sop_23),            //INPUT  : Start of Packet
+	        .data_tx_eop_23(data_tx_eop_23),            //INPUT  : End of Packet
+	        .data_tx_ready_23(data_tx_ready_23),        //OUTPUT : Data FIFO transmit Read Enable  
+	        .tx_ff_uflow_23(tx_ff_uflow_23),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+	        .tx_crc_fwd_23(tx_crc_fwd_23),              //INPUT  : Forward Current Frame with CRC from Application
+	        .xoff_gen_23(xoff_gen_23),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+	        .xon_gen_23(xon_gen_23),                    //INPUT  : XON PAUSE FRAME GENERATE
+	        .magic_sleep_n_23(magic_sleep_n_23),        //INPUT  : MAC SLEEP MODE CONTROL
+	        .magic_wakeup_23(magic_wakeup_23));         //OUTPUT : MAC WAKE-UP INDICATION
+	        
+	    defparam
+	        U_TOP_MULTI_MAC.USE_SYNC_RESET = USE_SYNC_RESET, 
+	        U_TOP_MULTI_MAC.RESET_LEVEL = RESET_LEVEL,
+	        U_TOP_MULTI_MAC.ENABLE_GMII_LOOPBACK = ENABLE_GMII_LOOPBACK, 
+	        U_TOP_MULTI_MAC.ENABLE_HD_LOGIC = ENABLE_HD_LOGIC,
+	        U_TOP_MULTI_MAC.ENABLE_SUP_ADDR = ENABLE_SUP_ADDR,
+	        U_TOP_MULTI_MAC.ENA_HASH = ENA_HASH,
+	        U_TOP_MULTI_MAC.STAT_CNT_ENA = STAT_CNT_ENA,
+	        U_TOP_MULTI_MAC.CORE_VERSION = CORE_VERSION, 
+	        U_TOP_MULTI_MAC.CUST_VERSION = CUST_VERSION,
+	        U_TOP_MULTI_MAC.REDUCED_INTERFACE_ENA = REDUCED_INTERFACE_ENA,
+	        U_TOP_MULTI_MAC.ENABLE_MDIO = ENABLE_MDIO,
+	        U_TOP_MULTI_MAC.MDIO_CLK_DIV = MDIO_CLK_DIV,
+	        U_TOP_MULTI_MAC.ENABLE_MAGIC_DETECT = ENABLE_MAGIC_DETECT,
+	        U_TOP_MULTI_MAC.CRC32DWIDTH = CRC32DWIDTH,
+	        U_TOP_MULTI_MAC.CRC32GENDELAY = CRC32GENDELAY, 
+	        U_TOP_MULTI_MAC.CRC32CHECK16BIT = CRC32CHECK16BIT, 
+	        U_TOP_MULTI_MAC.CRC32S1L2_EXTERN = CRC32S1L2_EXTERN,
+	        U_TOP_MULTI_MAC.ENABLE_SHIFT16 = ENABLE_SHIFT16,   
+	        U_TOP_MULTI_MAC.ENABLE_MAC_FLOW_CTRL = ENABLE_MAC_FLOW_CTRL,
+	        U_TOP_MULTI_MAC.ENABLE_MAC_TXADDR_SET = ENABLE_MAC_TXADDR_SET,
+	        U_TOP_MULTI_MAC.ENABLE_MAC_RX_VLAN = ENABLE_MAC_RX_VLAN,
+	        U_TOP_MULTI_MAC.ENABLE_MAC_TX_VLAN = ENABLE_MAC_TX_VLAN,
+	        U_TOP_MULTI_MAC.ADDR_WIDTH = ADDR_WIDTH,
+	        U_TOP_MULTI_MAC.MAX_CHANNELS = MAX_CHANNELS,
+	        U_TOP_MULTI_MAC.CHANNEL_WIDTH = CHANNEL_WIDTH,
+	        U_TOP_MULTI_MAC.ENABLE_RX_FIFO_STATUS = ENABLE_RX_FIFO_STATUS,
+	        U_TOP_MULTI_MAC.ENABLE_EXTENDED_STAT_REG = ENABLE_EXTENDED_STAT_REG,
+	        U_TOP_MULTI_MAC.ENABLE_REG_SHARING = ENABLE_REG_SHARING,
+			U_TOP_MULTI_MAC.SYNCHRONIZER_DEPTH = SYNCHRONIZER_DEPTH,
+	        U_TOP_MULTI_MAC.ENABLE_CLK_SHARING = ENABLE_CLK_SHARING;    
+
+
+
+
+endmodule // module altera_tse_multi_mac
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac_pcs.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac_pcs.v
new file mode 100644
index 0000000000000000000000000000000000000000..c2374cbdd1eebcb5a14ae445f8dfd484e4ac296b
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac_pcs.v
@@ -0,0 +1,2094 @@
+
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_multi_mac_pcs.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_multi_mac_pcs.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet - 10/100/1000 MAC
+//
+// Description : 
+//
+// Top Level Triple Speed Ethernet(10/100/1000) MAC with FIFOs, MII/GMII
+// interfaces, mdio module and register space (statistic, control and 
+// management)
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation  
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_multi_mac_pcs
+/* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */
+#(
+parameter USE_SYNC_RESET        = 0,                    //  Use Synchronized Reset Inputs
+parameter RESET_LEVEL           = 1'b 1 ,               //  Reset Active Level
+parameter ENABLE_GMII_LOOPBACK  = 1,                    //  GMII_LOOPBACK_ENA : Enable GMII Loopback Logic 
+parameter ENABLE_HD_LOGIC       = 1,                    //  HD_LOGIC_ENA : Enable Half Duplex Logic
+parameter ENABLE_SUP_ADDR       = 1,                    //  SUP_ADDR_ENA : Enable Supplemental Addresses
+parameter ENA_HASH              = 1,                    //  ENA_HASH Enable Hash Table 
+parameter STAT_CNT_ENA          = 1,                    //  STAT_CNT_ENA Enable Statistic Counters
+parameter MDIO_CLK_DIV          = 40 ,                  //  Host Clock Division - MDC Generation
+parameter CORE_VERSION          = 16'h3,                //  ALTERA Core Version
+parameter CUST_VERSION          = 1 ,                   //  Customer Core Version
+parameter REDUCED_INTERFACE_ENA = 0,                    //  Enable the RGMII Interface
+parameter ENABLE_MDIO           = 1,                    //  Enable the MDIO Interface
+parameter ENABLE_MAGIC_DETECT   = 1,                    //  Enable magic packet detection 
+parameter ENABLE_PADDING        = 1,                    //  Enable padding operation.
+parameter ENABLE_LGTH_CHECK     = 1,                    //  Enable frame length checking.
+parameter GBIT_ONLY             = 1,                    //  Enable Gigabit only operation.
+parameter MBIT_ONLY             = 1,                    //  Enable Megabit (10/100) only operation.
+parameter REDUCED_CONTROL       = 0,                    //  Reduced control for MAC LITE
+parameter CRC32DWIDTH           = 4'b 1000,             //  input data width (informal, not for change)
+parameter CRC32GENDELAY         = 3'b 110,              //  when the data from the generator is valid
+parameter CRC32CHECK16BIT       = 1'b 0,                //  1 compare two times 16 bit of the CRC (adds one pipeline step) 
+parameter CRC32S1L2_EXTERN      = 1'b0,                 //  false: merge enable
+parameter ENABLE_SHIFT16        = 0,                    //  Enable byte stuffing at packet header 
+parameter ENABLE_MAC_FLOW_CTRL  = 1'b1,                 //  Option to enable flow control 
+parameter ENABLE_MAC_TXADDR_SET = 1'b1,                 //  Option to enable MAC address insertion onto 'to-be-transmitted' Ethernet frames on MAC TX data path
+parameter ENABLE_MAC_RX_VLAN    = 1'b1,                 //  Option to enable VLAN tagged Ethernet frames on MAC RX data path
+parameter ENABLE_MAC_TX_VLAN    = 1'b1,                 //  Option to enable VLAN tagged Ethernet frames on MAC TX data path
+parameter PHY_IDENTIFIER        = 32'h 00000000,        //  PHY Identifier
+parameter DEV_VERSION           = 16'h 0001 ,           //  Customer Phy's Core Version
+parameter ENABLE_SGMII          = 1,                    //  Enable SGMII logic for synthesis
+parameter ENABLE_CLK_SHARING    = 0,                    //  Option to share clock for multiple channels (Clocks are rate-matched).
+parameter ENABLE_REG_SHARING    = 0,                    //  Option to share register space. Uses certain hard-coded values from input.
+parameter ENABLE_EXTENDED_STAT_REG = 0,                 //  Enable a few extended statistic registers
+parameter MAX_CHANNELS          = 1,                    //  The number of channels in Multi-TSE component
+parameter ENABLE_RX_FIFO_STATUS = 1,                    //  Enable Receive FIFO Almost Full status interface
+parameter CHANNEL_WIDTH         = 1,                    //  The width of the channel interface
+parameter ENABLE_PKT_CLASS      = 1,                    //  Enable Packet Classification Av-ST Interface
+parameter SYNCHRONIZER_DEPTH 	= 3,		  	//  Number of synchronizer
+// Internal parameters
+parameter ADDR_WIDTH = (MAX_CHANNELS > 16)? 13 :
+                       (MAX_CHANNELS > 8)? 12 : 
+                       (MAX_CHANNELS > 4)? 11 : 
+                       (MAX_CHANNELS > 2)? 10 :  
+                       (MAX_CHANNELS > 1)? 9 : 8
+)
+
+
+// Port List
+(
+
+    // RESET / MAC REG IF / MDIO
+    input wire   reset,                      //  Asynchronous Reset - clk Domain
+    input wire   clk,                        //  25MHz Host Interface Clock
+    input wire   read,                       //  Register Read Strobe
+    input wire   write,                      //  Register Write Strobe
+    input wire   [ADDR_WIDTH-1:0] address,   //  Register Address
+    input wire   [31:0] writedata,           //  Write Data for Host Bus
+    output wire  [31:0] readdata,            //  Read Data to Host Bus
+    output wire  waitrequest,                //  Interface Busy
+    output wire  mdc,                        //  2.5MHz Inteface
+    input wire   mdio_in,                    //  MDIO Input
+    output wire  mdio_out,                   //  MDIO Output
+    output wire  mdio_oen,                   //  MDIO Output Enable
+    input wire   ref_clk,                    //  Reference Clock
+
+	// SHARED CLK SIGNALS
+    output wire  mac_rx_clk,                 //  Av-ST Receive Clock
+	output wire  mac_tx_clk,                 //  Av-ST Transmit Clock 
+
+	// SHARED RX STATUS
+    input wire   rx_afull_clk,                             //  Almost full clk
+    input wire   [1:0] rx_afull_data,                      //  Almost full data
+    input wire   rx_afull_valid,                           //  Almost full valid
+    input wire   [CHANNEL_WIDTH-1:0] rx_afull_channel,     //  Almost full channel
+
+
+    // CHANNEL 0
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_0,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_0,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_0,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_0,         //  Transmit TBI Interface
+    output wire  sd_loopback_0,            //  SERDES Loopback Enable
+    output wire  powerdown_0,              //  Powerdown Enable
+    output wire  led_crs_0,                //  Carrier Sense
+    output wire  led_link_0,               //  Valid Link 
+    output wire  led_col_0,                //  Collision Indication
+    output wire  led_an_0,                 //  Auto-Negotiation Status
+    output wire  led_char_err_0,           //  Character Error
+    output wire  led_disp_err_0,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_0,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_0,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_0,            //  Start of Packet
+    output wire  data_rx_eop_0,            //  End of Packet
+    output wire  [7:0] data_rx_data_0,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_0,    //  Receive packet error
+    output wire  data_rx_valid_0,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_0,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_0,   //  Frame Type Indication
+    output wire  pkt_class_valid_0,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_0,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_0,     //  Data from FIFO transmit
+    input wire   data_tx_valid_0,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_0,            //  Start of Packet
+    input wire   data_tx_eop_0,            //  END of Packet
+    output wire  data_tx_ready_0,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_0,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_0,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_0,               //  Xoff Pause frame generate 
+    input wire   xon_gen_0,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_0,          //  Enable Sleep Mode
+    output wire  magic_wakeup_0,           //  Wake Up Request
+
+
+    // CHANNEL 1
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_1,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_1,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_1,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_1,         //  Transmit TBI Interface
+    output wire  sd_loopback_1,            //  SERDES Loopback Enable
+    output wire  powerdown_1,              //  Powerdown Enable
+    output wire  led_crs_1,                //  Carrier Sense
+    output wire  led_link_1,               //  Valid Link 
+    output wire  led_col_1,                //  Collision Indication
+    output wire  led_an_1,                 //  Auto-Negotiation Status
+    output wire  led_char_err_1,           //  Character Error
+    output wire  led_disp_err_1,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_1,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_1,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_1,            //  Start of Packet
+    output wire  data_rx_eop_1,            //  End of Packet
+    output wire  [7:0] data_rx_data_1,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_1,    //  Receive packet error
+    output wire  data_rx_valid_1,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_1,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_1,   //  Frame Type Indication
+    output wire  pkt_class_valid_1,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_1,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_1,     //  Data from FIFO transmit
+    input wire   data_tx_valid_1,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_1,            //  Start of Packet
+    input wire   data_tx_eop_1,            //  END of Packet
+    output wire  data_tx_ready_1,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_1,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_1,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_1,               //  Xoff Pause frame generate 
+    input wire   xon_gen_1,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_1,          //  Enable Sleep Mode
+    output wire  magic_wakeup_1,           //  Wake Up Request
+
+
+    // CHANNEL 2
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_2,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_2,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_2,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_2,         //  Transmit TBI Interface
+    output wire  sd_loopback_2,            //  SERDES Loopback Enable
+    output wire  powerdown_2,              //  Powerdown Enable
+    output wire  led_crs_2,                //  Carrier Sense
+    output wire  led_link_2,               //  Valid Link 
+    output wire  led_col_2,                //  Collision Indication
+    output wire  led_an_2,                 //  Auto-Negotiation Status
+    output wire  led_char_err_2,           //  Character Error
+    output wire  led_disp_err_2,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_2,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_2,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_2,            //  Start of Packet
+    output wire  data_rx_eop_2,            //  End of Packet
+    output wire  [7:0] data_rx_data_2,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_2,    //  Receive packet error
+    output wire  data_rx_valid_2,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_2,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_2,   //  Frame Type Indication
+    output wire  pkt_class_valid_2,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_2,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_2,     //  Data from FIFO transmit
+    input wire   data_tx_valid_2,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_2,            //  Start of Packet
+    input wire   data_tx_eop_2,            //  END of Packet
+    output wire  data_tx_ready_2,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_2,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_2,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_2,               //  Xoff Pause frame generate 
+    input wire   xon_gen_2,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_2,          //  Enable Sleep Mode
+    output wire  magic_wakeup_2,           //  Wake Up Request
+
+
+    // CHANNEL 3
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_3,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_3,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_3,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_3,         //  Transmit TBI Interface
+    output wire  sd_loopback_3,            //  SERDES Loopback Enable
+    output wire  powerdown_3,              //  Powerdown Enable
+    output wire  led_crs_3,                //  Carrier Sense
+    output wire  led_link_3,               //  Valid Link 
+    output wire  led_col_3,                //  Collision Indication
+    output wire  led_an_3,                 //  Auto-Negotiation Status
+    output wire  led_char_err_3,           //  Character Error
+    output wire  led_disp_err_3,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_3,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_3,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_3,            //  Start of Packet
+    output wire  data_rx_eop_3,            //  End of Packet
+    output wire  [7:0] data_rx_data_3,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_3,    //  Receive packet error
+    output wire  data_rx_valid_3,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_3,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_3,   //  Frame Type Indication
+    output wire  pkt_class_valid_3,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_3,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_3,     //  Data from FIFO transmit
+    input wire   data_tx_valid_3,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_3,            //  Start of Packet
+    input wire   data_tx_eop_3,            //  END of Packet
+    output wire  data_tx_ready_3,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_3,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_3,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_3,               //  Xoff Pause frame generate 
+    input wire   xon_gen_3,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_3,          //  Enable Sleep Mode
+    output wire  magic_wakeup_3,           //  Wake Up Request
+
+
+    // CHANNEL 4
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_4,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_4,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_4,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_4,         //  Transmit TBI Interface
+    output wire  sd_loopback_4,            //  SERDES Loopback Enable
+    output wire  powerdown_4,              //  Powerdown Enable
+    output wire  led_crs_4,                //  Carrier Sense
+    output wire  led_link_4,               //  Valid Link 
+    output wire  led_col_4,                //  Collision Indication
+    output wire  led_an_4,                 //  Auto-Negotiation Status
+    output wire  led_char_err_4,           //  Character Error
+    output wire  led_disp_err_4,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_4,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_4,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_4,            //  Start of Packet
+    output wire  data_rx_eop_4,            //  End of Packet
+    output wire  [7:0] data_rx_data_4,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_4,    //  Receive packet error
+    output wire  data_rx_valid_4,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_4,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_4,   //  Frame Type Indication
+    output wire  pkt_class_valid_4,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_4,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_4,     //  Data from FIFO transmit
+    input wire   data_tx_valid_4,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_4,            //  Start of Packet
+    input wire   data_tx_eop_4,            //  END of Packet
+    output wire  data_tx_ready_4,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_4,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_4,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_4,               //  Xoff Pause frame generate 
+    input wire   xon_gen_4,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_4,          //  Enable Sleep Mode
+    output wire  magic_wakeup_4,           //  Wake Up Request
+
+
+    // CHANNEL 5
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_5,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_5,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_5,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_5,         //  Transmit TBI Interface
+    output wire  sd_loopback_5,            //  SERDES Loopback Enable
+    output wire  powerdown_5,              //  Powerdown Enable
+    output wire  led_crs_5,                //  Carrier Sense
+    output wire  led_link_5,               //  Valid Link 
+    output wire  led_col_5,                //  Collision Indication
+    output wire  led_an_5,                 //  Auto-Negotiation Status
+    output wire  led_char_err_5,           //  Character Error
+    output wire  led_disp_err_5,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_5,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_5,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_5,            //  Start of Packet
+    output wire  data_rx_eop_5,            //  End of Packet
+    output wire  [7:0] data_rx_data_5,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_5,    //  Receive packet error
+    output wire  data_rx_valid_5,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_5,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_5,   //  Frame Type Indication
+    output wire  pkt_class_valid_5,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_5,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_5,     //  Data from FIFO transmit
+    input wire   data_tx_valid_5,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_5,            //  Start of Packet
+    input wire   data_tx_eop_5,            //  END of Packet
+    output wire  data_tx_ready_5,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_5,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_5,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_5,               //  Xoff Pause frame generate 
+    input wire   xon_gen_5,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_5,          //  Enable Sleep Mode
+    output wire  magic_wakeup_5,           //  Wake Up Request
+
+
+    // CHANNEL 6
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_6,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_6,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_6,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_6,         //  Transmit TBI Interface
+    output wire  sd_loopback_6,            //  SERDES Loopback Enable
+    output wire  powerdown_6,              //  Powerdown Enable
+    output wire  led_crs_6,                //  Carrier Sense
+    output wire  led_link_6,               //  Valid Link 
+    output wire  led_col_6,                //  Collision Indication
+    output wire  led_an_6,                 //  Auto-Negotiation Status
+    output wire  led_char_err_6,           //  Character Error
+    output wire  led_disp_err_6,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_6,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_6,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_6,            //  Start of Packet
+    output wire  data_rx_eop_6,            //  End of Packet
+    output wire  [7:0] data_rx_data_6,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_6,    //  Receive packet error
+    output wire  data_rx_valid_6,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_6,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_6,   //  Frame Type Indication
+    output wire  pkt_class_valid_6,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_6,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_6,     //  Data from FIFO transmit
+    input wire   data_tx_valid_6,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_6,            //  Start of Packet
+    input wire   data_tx_eop_6,            //  END of Packet
+    output wire  data_tx_ready_6,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_6,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_6,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_6,               //  Xoff Pause frame generate 
+    input wire   xon_gen_6,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_6,          //  Enable Sleep Mode
+    output wire  magic_wakeup_6,           //  Wake Up Request
+
+
+    // CHANNEL 7
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_7,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_7,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_7,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_7,         //  Transmit TBI Interface
+    output wire  sd_loopback_7,            //  SERDES Loopback Enable
+    output wire  powerdown_7,              //  Powerdown Enable
+    output wire  led_crs_7,                //  Carrier Sense
+    output wire  led_link_7,               //  Valid Link 
+    output wire  led_col_7,                //  Collision Indication
+    output wire  led_an_7,                 //  Auto-Negotiation Status
+    output wire  led_char_err_7,           //  Character Error
+    output wire  led_disp_err_7,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_7,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_7,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_7,            //  Start of Packet
+    output wire  data_rx_eop_7,            //  End of Packet
+    output wire  [7:0] data_rx_data_7,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_7,    //  Receive packet error
+    output wire  data_rx_valid_7,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_7,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_7,   //  Frame Type Indication
+    output wire  pkt_class_valid_7,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_7,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_7,     //  Data from FIFO transmit
+    input wire   data_tx_valid_7,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_7,            //  Start of Packet
+    input wire   data_tx_eop_7,            //  END of Packet
+    output wire  data_tx_ready_7,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_7,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_7,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_7,               //  Xoff Pause frame generate 
+    input wire   xon_gen_7,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_7,          //  Enable Sleep Mode
+    output wire  magic_wakeup_7,           //  Wake Up Request
+
+
+    // CHANNEL 8
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_8,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_8,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_8,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_8,         //  Transmit TBI Interface
+    output wire  sd_loopback_8,            //  SERDES Loopback Enable
+    output wire  powerdown_8,              //  Powerdown Enable
+    output wire  led_crs_8,                //  Carrier Sense
+    output wire  led_link_8,               //  Valid Link 
+    output wire  led_col_8,                //  Collision Indication
+    output wire  led_an_8,                 //  Auto-Negotiation Status
+    output wire  led_char_err_8,           //  Character Error
+    output wire  led_disp_err_8,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_8,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_8,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_8,            //  Start of Packet
+    output wire  data_rx_eop_8,            //  End of Packet
+    output wire  [7:0] data_rx_data_8,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_8,    //  Receive packet error
+    output wire  data_rx_valid_8,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_8,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_8,   //  Frame Type Indication
+    output wire  pkt_class_valid_8,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_8,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_8,     //  Data from FIFO transmit
+    input wire   data_tx_valid_8,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_8,            //  Start of Packet
+    input wire   data_tx_eop_8,            //  END of Packet
+    output wire  data_tx_ready_8,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_8,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_8,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_8,               //  Xoff Pause frame generate 
+    input wire   xon_gen_8,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_8,          //  Enable Sleep Mode
+    output wire  magic_wakeup_8,           //  Wake Up Request
+
+
+    // CHANNEL 9
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_9,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_9,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_9,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_9,         //  Transmit TBI Interface
+    output wire  sd_loopback_9,            //  SERDES Loopback Enable
+    output wire  powerdown_9,              //  Powerdown Enable
+    output wire  led_crs_9,                //  Carrier Sense
+    output wire  led_link_9,               //  Valid Link 
+    output wire  led_col_9,                //  Collision Indication
+    output wire  led_an_9,                 //  Auto-Negotiation Status
+    output wire  led_char_err_9,           //  Character Error
+    output wire  led_disp_err_9,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_9,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_9,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_9,            //  Start of Packet
+    output wire  data_rx_eop_9,            //  End of Packet
+    output wire  [7:0] data_rx_data_9,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_9,    //  Receive packet error
+    output wire  data_rx_valid_9,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_9,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_9,   //  Frame Type Indication
+    output wire  pkt_class_valid_9,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_9,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_9,     //  Data from FIFO transmit
+    input wire   data_tx_valid_9,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_9,            //  Start of Packet
+    input wire   data_tx_eop_9,            //  END of Packet
+    output wire  data_tx_ready_9,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_9,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_9,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_9,               //  Xoff Pause frame generate 
+    input wire   xon_gen_9,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_9,          //  Enable Sleep Mode
+    output wire  magic_wakeup_9,           //  Wake Up Request
+
+
+    // CHANNEL 10
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_10,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_10,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_10,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_10,         //  Transmit TBI Interface
+    output wire  sd_loopback_10,            //  SERDES Loopback Enable
+    output wire  powerdown_10,              //  Powerdown Enable
+    output wire  led_crs_10,                //  Carrier Sense
+    output wire  led_link_10,               //  Valid Link 
+    output wire  led_col_10,                //  Collision Indication
+    output wire  led_an_10,                 //  Auto-Negotiation Status
+    output wire  led_char_err_10,           //  Character Error
+    output wire  led_disp_err_10,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_10,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_10,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_10,            //  Start of Packet
+    output wire  data_rx_eop_10,            //  End of Packet
+    output wire  [7:0] data_rx_data_10,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_10,    //  Receive packet error
+    output wire  data_rx_valid_10,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_10,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_10,   //  Frame Type Indication
+    output wire  pkt_class_valid_10,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_10,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_10,     //  Data from FIFO transmit
+    input wire   data_tx_valid_10,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_10,            //  Start of Packet
+    input wire   data_tx_eop_10,            //  END of Packet
+    output wire  data_tx_ready_10,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_10,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_10,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_10,               //  Xoff Pause frame generate 
+    input wire   xon_gen_10,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_10,          //  Enable Sleep Mode
+    output wire  magic_wakeup_10,           //  Wake Up Request
+
+
+    // CHANNEL 11
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_11,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_11,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_11,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_11,         //  Transmit TBI Interface
+    output wire  sd_loopback_11,            //  SERDES Loopback Enable
+    output wire  powerdown_11,              //  Powerdown Enable
+    output wire  led_crs_11,                //  Carrier Sense
+    output wire  led_link_11,               //  Valid Link 
+    output wire  led_col_11,                //  Collision Indication
+    output wire  led_an_11,                 //  Auto-Negotiation Status
+    output wire  led_char_err_11,           //  Character Error
+    output wire  led_disp_err_11,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_11,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_11,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_11,            //  Start of Packet
+    output wire  data_rx_eop_11,            //  End of Packet
+    output wire  [7:0] data_rx_data_11,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_11,    //  Receive packet error
+    output wire  data_rx_valid_11,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_11,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_11,   //  Frame Type Indication
+    output wire  pkt_class_valid_11,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_11,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_11,     //  Data from FIFO transmit
+    input wire   data_tx_valid_11,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_11,            //  Start of Packet
+    input wire   data_tx_eop_11,            //  END of Packet
+    output wire  data_tx_ready_11,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_11,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_11,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_11,               //  Xoff Pause frame generate 
+    input wire   xon_gen_11,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_11,          //  Enable Sleep Mode
+    output wire  magic_wakeup_11,           //  Wake Up Request
+
+
+    // CHANNEL 12
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_12,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_12,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_12,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_12,         //  Transmit TBI Interface
+    output wire  sd_loopback_12,            //  SERDES Loopback Enable
+    output wire  powerdown_12,              //  Powerdown Enable
+    output wire  led_crs_12,                //  Carrier Sense
+    output wire  led_link_12,               //  Valid Link 
+    output wire  led_col_12,                //  Collision Indication
+    output wire  led_an_12,                 //  Auto-Negotiation Status
+    output wire  led_char_err_12,           //  Character Error
+    output wire  led_disp_err_12,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_12,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_12,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_12,            //  Start of Packet
+    output wire  data_rx_eop_12,            //  End of Packet
+    output wire  [7:0] data_rx_data_12,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_12,    //  Receive packet error
+    output wire  data_rx_valid_12,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_12,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_12,   //  Frame Type Indication
+    output wire  pkt_class_valid_12,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_12,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_12,     //  Data from FIFO transmit
+    input wire   data_tx_valid_12,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_12,            //  Start of Packet
+    input wire   data_tx_eop_12,            //  END of Packet
+    output wire  data_tx_ready_12,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_12,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_12,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_12,               //  Xoff Pause frame generate 
+    input wire   xon_gen_12,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_12,          //  Enable Sleep Mode
+    output wire  magic_wakeup_12,           //  Wake Up Request
+
+
+    // CHANNEL 13
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_13,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_13,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_13,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_13,         //  Transmit TBI Interface
+    output wire  sd_loopback_13,            //  SERDES Loopback Enable
+    output wire  powerdown_13,              //  Powerdown Enable
+    output wire  led_crs_13,                //  Carrier Sense
+    output wire  led_link_13,               //  Valid Link 
+    output wire  led_col_13,                //  Collision Indication
+    output wire  led_an_13,                 //  Auto-Negotiation Status
+    output wire  led_char_err_13,           //  Character Error
+    output wire  led_disp_err_13,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_13,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_13,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_13,            //  Start of Packet
+    output wire  data_rx_eop_13,            //  End of Packet
+    output wire  [7:0] data_rx_data_13,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_13,    //  Receive packet error
+    output wire  data_rx_valid_13,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_13,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_13,   //  Frame Type Indication
+    output wire  pkt_class_valid_13,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_13,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_13,     //  Data from FIFO transmit
+    input wire   data_tx_valid_13,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_13,            //  Start of Packet
+    input wire   data_tx_eop_13,            //  END of Packet
+    output wire  data_tx_ready_13,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_13,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_13,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_13,               //  Xoff Pause frame generate 
+    input wire   xon_gen_13,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_13,          //  Enable Sleep Mode
+    output wire  magic_wakeup_13,           //  Wake Up Request
+
+
+    // CHANNEL 14
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_14,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_14,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_14,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_14,         //  Transmit TBI Interface
+    output wire  sd_loopback_14,            //  SERDES Loopback Enable
+    output wire  powerdown_14,              //  Powerdown Enable
+    output wire  led_crs_14,                //  Carrier Sense
+    output wire  led_link_14,               //  Valid Link 
+    output wire  led_col_14,                //  Collision Indication
+    output wire  led_an_14,                 //  Auto-Negotiation Status
+    output wire  led_char_err_14,           //  Character Error
+    output wire  led_disp_err_14,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_14,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_14,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_14,            //  Start of Packet
+    output wire  data_rx_eop_14,            //  End of Packet
+    output wire  [7:0] data_rx_data_14,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_14,    //  Receive packet error
+    output wire  data_rx_valid_14,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_14,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_14,   //  Frame Type Indication
+    output wire  pkt_class_valid_14,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_14,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_14,     //  Data from FIFO transmit
+    input wire   data_tx_valid_14,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_14,            //  Start of Packet
+    input wire   data_tx_eop_14,            //  END of Packet
+    output wire  data_tx_ready_14,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_14,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_14,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_14,               //  Xoff Pause frame generate 
+    input wire   xon_gen_14,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_14,          //  Enable Sleep Mode
+    output wire  magic_wakeup_14,           //  Wake Up Request
+
+
+    // CHANNEL 15
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_15,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_15,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_15,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_15,         //  Transmit TBI Interface
+    output wire  sd_loopback_15,            //  SERDES Loopback Enable
+    output wire  powerdown_15,              //  Powerdown Enable
+    output wire  led_crs_15,                //  Carrier Sense
+    output wire  led_link_15,               //  Valid Link 
+    output wire  led_col_15,                //  Collision Indication
+    output wire  led_an_15,                 //  Auto-Negotiation Status
+    output wire  led_char_err_15,           //  Character Error
+    output wire  led_disp_err_15,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_15,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_15,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_15,            //  Start of Packet
+    output wire  data_rx_eop_15,            //  End of Packet
+    output wire  [7:0] data_rx_data_15,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_15,    //  Receive packet error
+    output wire  data_rx_valid_15,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_15,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_15,   //  Frame Type Indication
+    output wire  pkt_class_valid_15,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_15,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_15,     //  Data from FIFO transmit
+    input wire   data_tx_valid_15,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_15,            //  Start of Packet
+    input wire   data_tx_eop_15,            //  END of Packet
+    output wire  data_tx_ready_15,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_15,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_15,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_15,               //  Xoff Pause frame generate 
+    input wire   xon_gen_15,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_15,          //  Enable Sleep Mode
+    output wire  magic_wakeup_15,           //  Wake Up Request
+
+
+    // CHANNEL 16
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_16,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_16,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_16,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_16,         //  Transmit TBI Interface
+    output wire  sd_loopback_16,            //  SERDES Loopback Enable
+    output wire  powerdown_16,              //  Powerdown Enable
+    output wire  led_crs_16,                //  Carrier Sense
+    output wire  led_link_16,               //  Valid Link 
+    output wire  led_col_16,                //  Collision Indication
+    output wire  led_an_16,                 //  Auto-Negotiation Status
+    output wire  led_char_err_16,           //  Character Error
+    output wire  led_disp_err_16,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_16,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_16,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_16,            //  Start of Packet
+    output wire  data_rx_eop_16,            //  End of Packet
+    output wire  [7:0] data_rx_data_16,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_16,    //  Receive packet error
+    output wire  data_rx_valid_16,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_16,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_16,   //  Frame Type Indication
+    output wire  pkt_class_valid_16,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_16,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_16,     //  Data from FIFO transmit
+    input wire   data_tx_valid_16,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_16,            //  Start of Packet
+    input wire   data_tx_eop_16,            //  END of Packet
+    output wire  data_tx_ready_16,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_16,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_16,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_16,               //  Xoff Pause frame generate 
+    input wire   xon_gen_16,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_16,          //  Enable Sleep Mode
+    output wire  magic_wakeup_16,           //  Wake Up Request
+
+
+    // CHANNEL 17
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_17,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_17,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_17,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_17,         //  Transmit TBI Interface
+    output wire  sd_loopback_17,            //  SERDES Loopback Enable
+    output wire  powerdown_17,              //  Powerdown Enable
+    output wire  led_crs_17,                //  Carrier Sense
+    output wire  led_link_17,               //  Valid Link 
+    output wire  led_col_17,                //  Collision Indication
+    output wire  led_an_17,                 //  Auto-Negotiation Status
+    output wire  led_char_err_17,           //  Character Error
+    output wire  led_disp_err_17,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_17,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_17,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_17,            //  Start of Packet
+    output wire  data_rx_eop_17,            //  End of Packet
+    output wire  [7:0] data_rx_data_17,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_17,    //  Receive packet error
+    output wire  data_rx_valid_17,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_17,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_17,   //  Frame Type Indication
+    output wire  pkt_class_valid_17,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_17,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_17,     //  Data from FIFO transmit
+    input wire   data_tx_valid_17,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_17,            //  Start of Packet
+    input wire   data_tx_eop_17,            //  END of Packet
+    output wire  data_tx_ready_17,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_17,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_17,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_17,               //  Xoff Pause frame generate 
+    input wire   xon_gen_17,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_17,          //  Enable Sleep Mode
+    output wire  magic_wakeup_17,           //  Wake Up Request
+
+
+    // CHANNEL 18
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_18,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_18,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_18,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_18,         //  Transmit TBI Interface
+    output wire  sd_loopback_18,            //  SERDES Loopback Enable
+    output wire  powerdown_18,              //  Powerdown Enable
+    output wire  led_crs_18,                //  Carrier Sense
+    output wire  led_link_18,               //  Valid Link 
+    output wire  led_col_18,                //  Collision Indication
+    output wire  led_an_18,                 //  Auto-Negotiation Status
+    output wire  led_char_err_18,           //  Character Error
+    output wire  led_disp_err_18,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_18,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_18,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_18,            //  Start of Packet
+    output wire  data_rx_eop_18,            //  End of Packet
+    output wire  [7:0] data_rx_data_18,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_18,    //  Receive packet error
+    output wire  data_rx_valid_18,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_18,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_18,   //  Frame Type Indication
+    output wire  pkt_class_valid_18,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_18,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_18,     //  Data from FIFO transmit
+    input wire   data_tx_valid_18,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_18,            //  Start of Packet
+    input wire   data_tx_eop_18,            //  END of Packet
+    output wire  data_tx_ready_18,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_18,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_18,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_18,               //  Xoff Pause frame generate 
+    input wire   xon_gen_18,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_18,          //  Enable Sleep Mode
+    output wire  magic_wakeup_18,           //  Wake Up Request
+
+
+    // CHANNEL 19
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_19,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_19,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_19,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_19,         //  Transmit TBI Interface
+    output wire  sd_loopback_19,            //  SERDES Loopback Enable
+    output wire  powerdown_19,              //  Powerdown Enable
+    output wire  led_crs_19,                //  Carrier Sense
+    output wire  led_link_19,               //  Valid Link 
+    output wire  led_col_19,                //  Collision Indication
+    output wire  led_an_19,                 //  Auto-Negotiation Status
+    output wire  led_char_err_19,           //  Character Error
+    output wire  led_disp_err_19,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_19,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_19,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_19,            //  Start of Packet
+    output wire  data_rx_eop_19,            //  End of Packet
+    output wire  [7:0] data_rx_data_19,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_19,    //  Receive packet error
+    output wire  data_rx_valid_19,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_19,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_19,   //  Frame Type Indication
+    output wire  pkt_class_valid_19,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_19,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_19,     //  Data from FIFO transmit
+    input wire   data_tx_valid_19,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_19,            //  Start of Packet
+    input wire   data_tx_eop_19,            //  END of Packet
+    output wire  data_tx_ready_19,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_19,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_19,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_19,               //  Xoff Pause frame generate 
+    input wire   xon_gen_19,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_19,          //  Enable Sleep Mode
+    output wire  magic_wakeup_19,           //  Wake Up Request
+
+
+    // CHANNEL 20
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_20,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_20,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_20,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_20,         //  Transmit TBI Interface
+    output wire  sd_loopback_20,            //  SERDES Loopback Enable
+    output wire  powerdown_20,              //  Powerdown Enable
+    output wire  led_crs_20,                //  Carrier Sense
+    output wire  led_link_20,               //  Valid Link 
+    output wire  led_col_20,                //  Collision Indication
+    output wire  led_an_20,                 //  Auto-Negotiation Status
+    output wire  led_char_err_20,           //  Character Error
+    output wire  led_disp_err_20,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_20,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_20,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_20,            //  Start of Packet
+    output wire  data_rx_eop_20,            //  End of Packet
+    output wire  [7:0] data_rx_data_20,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_20,    //  Receive packet error
+    output wire  data_rx_valid_20,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_20,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_20,   //  Frame Type Indication
+    output wire  pkt_class_valid_20,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_20,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_20,     //  Data from FIFO transmit
+    input wire   data_tx_valid_20,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_20,            //  Start of Packet
+    input wire   data_tx_eop_20,            //  END of Packet
+    output wire  data_tx_ready_20,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_20,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_20,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_20,               //  Xoff Pause frame generate 
+    input wire   xon_gen_20,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_20,          //  Enable Sleep Mode
+    output wire  magic_wakeup_20,           //  Wake Up Request
+
+
+    // CHANNEL 21
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_21,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_21,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_21,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_21,         //  Transmit TBI Interface
+    output wire  sd_loopback_21,            //  SERDES Loopback Enable
+    output wire  powerdown_21,              //  Powerdown Enable
+    output wire  led_crs_21,                //  Carrier Sense
+    output wire  led_link_21,               //  Valid Link 
+    output wire  led_col_21,                //  Collision Indication
+    output wire  led_an_21,                 //  Auto-Negotiation Status
+    output wire  led_char_err_21,           //  Character Error
+    output wire  led_disp_err_21,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_21,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_21,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_21,            //  Start of Packet
+    output wire  data_rx_eop_21,            //  End of Packet
+    output wire  [7:0] data_rx_data_21,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_21,    //  Receive packet error
+    output wire  data_rx_valid_21,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_21,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_21,   //  Frame Type Indication
+    output wire  pkt_class_valid_21,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_21,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_21,     //  Data from FIFO transmit
+    input wire   data_tx_valid_21,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_21,            //  Start of Packet
+    input wire   data_tx_eop_21,            //  END of Packet
+    output wire  data_tx_ready_21,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_21,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_21,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_21,               //  Xoff Pause frame generate 
+    input wire   xon_gen_21,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_21,          //  Enable Sleep Mode
+    output wire  magic_wakeup_21,           //  Wake Up Request
+
+
+    // CHANNEL 22
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_22,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_22,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_22,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_22,         //  Transmit TBI Interface
+    output wire  sd_loopback_22,            //  SERDES Loopback Enable
+    output wire  powerdown_22,              //  Powerdown Enable
+    output wire  led_crs_22,                //  Carrier Sense
+    output wire  led_link_22,               //  Valid Link 
+    output wire  led_col_22,                //  Collision Indication
+    output wire  led_an_22,                 //  Auto-Negotiation Status
+    output wire  led_char_err_22,           //  Character Error
+    output wire  led_disp_err_22,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_22,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_22,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_22,            //  Start of Packet
+    output wire  data_rx_eop_22,            //  End of Packet
+    output wire  [7:0] data_rx_data_22,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_22,    //  Receive packet error
+    output wire  data_rx_valid_22,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_22,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_22,   //  Frame Type Indication
+    output wire  pkt_class_valid_22,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_22,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_22,     //  Data from FIFO transmit
+    input wire   data_tx_valid_22,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_22,            //  Start of Packet
+    input wire   data_tx_eop_22,            //  END of Packet
+    output wire  data_tx_ready_22,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_22,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_22,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_22,               //  Xoff Pause frame generate 
+    input wire   xon_gen_22,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_22,          //  Enable Sleep Mode
+    output wire  magic_wakeup_22,           //  Wake Up Request
+
+
+    // CHANNEL 23
+
+    // PCS SIGNALS TO PHY
+    input wire   tbi_rx_clk_23,             //  125MHz Recoved Clock
+    input wire   tbi_tx_clk_23,             //  125MHz Transmit Clock
+    input wire   [9:0] tbi_rx_d_23,         //  Non Aligned 10-Bit Characters
+    output wire  [9:0] tbi_tx_d_23,         //  Transmit TBI Interface
+    output wire  sd_loopback_23,            //  SERDES Loopback Enable
+    output wire  powerdown_23,              //  Powerdown Enable
+    output wire  led_crs_23,                //  Carrier Sense
+    output wire  led_link_23,               //  Valid Link 
+    output wire  led_col_23,                //  Collision Indication
+    output wire  led_an_23,                 //  Auto-Negotiation Status
+    output wire  led_char_err_23,           //  Character Error
+    output wire  led_disp_err_23,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_23,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_23,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_23,            //  Start of Packet
+    output wire  data_rx_eop_23,            //  End of Packet
+    output wire  [7:0] data_rx_data_23,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_23,    //  Receive packet error
+    output wire  data_rx_valid_23,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_23,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_23,   //  Frame Type Indication
+    output wire  pkt_class_valid_23,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_23,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_23,     //  Data from FIFO transmit
+    input wire   data_tx_valid_23,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_23,            //  Start of Packet
+    input wire   data_tx_eop_23,            //  END of Packet
+    output wire  data_tx_ready_23,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_23,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_23,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_23,               //  Xoff Pause frame generate 
+    input wire   xon_gen_23,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_23,          //  Enable Sleep Mode
+    output wire  magic_wakeup_23);          //  Wake Up Request
+
+
+    // Component instantiation
+
+    altera_tse_top_multi_mac_pcs U_MULTI_MAC_PCS(
+
+        .reset(reset),                            //INPUT  : ASYNCHRONOUS RESET - clk DOMAIN
+        .clk(clk),                                //INPUT  : CLOCK
+        .read(read),                              //INPUT  : REGISTER READ TRANSACTION
+        .write(write),                            //INPUT  : REGISTER WRITE TRANSACTION
+        .ref_clk(ref_clk),                        //INPUT  : REFERENCE CLOCK
+        .address(address),                        //INPUT  : REGISTER ADDRESS
+        .writedata(writedata),                    //INPUT  : REGISTER WRITE DATA
+        .readdata(readdata),                      //OUTPUT : REGISTER READ DATA
+        .waitrequest(waitrequest),                //OUTPUT : TRANSACTION BUSY, ACTIVE LOW
+        .mdc(mdc),                                //OUTPUT : MDIO Clock 
+        .mdio_out(mdio_out),                      //OUTPUT : Outgoing MDIO DATA
+        .mdio_in(mdio_in),                        //INPUT  : Incoming MDIO DATA       
+        .mdio_oen(mdio_oen),                      //OUTPUT : MDIO Output Enable
+        .mac_rx_clk(mac_rx_clk),                  //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk(mac_tx_clk),                  //OUTPUT : Av-ST Tx Clock
+	    .rx_afull_clk(rx_afull_clk),              //INPUT  : AFull Status Clock
+	    .rx_afull_data(rx_afull_data),            //INPUT  : AFull Status Data
+	    .rx_afull_valid(rx_afull_valid),          //INPUT  : AFull Status Valid
+	    .rx_afull_channel(rx_afull_channel),      //INPUT  : AFull Status Channel
+
+         // Channel 0 
+            
+        .tbi_rx_clk_0(tbi_rx_clk_0),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_0(tbi_tx_clk_0),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_0(tbi_rx_d_0),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_0(tbi_tx_d_0),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_0(sd_loopback_0),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_0(powerdown_0),                //OUTPUT : Powerdown Enable
+        .led_col_0(led_col_0),                    //OUTPUT : Collision Indication
+        .led_an_0(led_an_0),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_0(led_char_err_0),          //OUTPUT : Character error
+        .led_disp_err_0(led_disp_err_0),          //OUTPUT : Disparity error
+        .led_crs_0(led_crs_0),                    //OUTPUT : Carrier sense
+        .led_link_0(led_link_0),                  //OUTPUT : Valid link    
+        .mac_rx_clk_0(mac_rx_clk_0),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_0(mac_tx_clk_0),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_0(data_rx_sop_0),            //OUTPUT : Start of Packet
+        .data_rx_eop_0(data_rx_eop_0),            //OUTPUT : End of Packet
+        .data_rx_data_0(data_rx_data_0),          //OUTPUT : Data from FIFO
+        .data_rx_error_0(data_rx_error_0),        //OUTPUT : Receive packet error
+        .data_rx_valid_0(data_rx_valid_0),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_0(data_rx_ready_0),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_0(pkt_class_data_0),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_0(pkt_class_valid_0),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_0(data_tx_error_0),        //INPUT  : Status
+        .data_tx_data_0(data_tx_data_0),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_0(data_tx_valid_0),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_0(data_tx_sop_0),            //INPUT  : Start of Packet
+        .data_tx_eop_0(data_tx_eop_0),            //INPUT  : End of Packet
+        .data_tx_ready_0(data_tx_ready_0),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_0(tx_ff_uflow_0),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_0(tx_crc_fwd_0),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_0(xoff_gen_0),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_0(xon_gen_0),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_0(magic_sleep_n_0),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_0(magic_wakeup_0),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 1 
+            
+        .tbi_rx_clk_1(tbi_rx_clk_1),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_1(tbi_tx_clk_1),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_1(tbi_rx_d_1),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_1(tbi_tx_d_1),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_1(sd_loopback_1),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_1(powerdown_1),                //OUTPUT : Powerdown Enable
+        .led_col_1(led_col_1),                    //OUTPUT : Collision Indication
+        .led_an_1(led_an_1),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_1(led_char_err_1),          //OUTPUT : Character error
+        .led_disp_err_1(led_disp_err_1),          //OUTPUT : Disparity error
+        .led_crs_1(led_crs_1),                    //OUTPUT : Carrier sense
+        .led_link_1(led_link_1),                  //OUTPUT : Valid link    
+        .mac_rx_clk_1(mac_rx_clk_1),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_1(mac_tx_clk_1),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_1(data_rx_sop_1),            //OUTPUT : Start of Packet
+        .data_rx_eop_1(data_rx_eop_1),            //OUTPUT : End of Packet
+        .data_rx_data_1(data_rx_data_1),          //OUTPUT : Data from FIFO
+        .data_rx_error_1(data_rx_error_1),        //OUTPUT : Receive packet error
+        .data_rx_valid_1(data_rx_valid_1),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_1(data_rx_ready_1),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_1(pkt_class_data_1),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_1(pkt_class_valid_1),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_1(data_tx_error_1),        //INPUT  : Status
+        .data_tx_data_1(data_tx_data_1),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_1(data_tx_valid_1),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_1(data_tx_sop_1),            //INPUT  : Start of Packet
+        .data_tx_eop_1(data_tx_eop_1),            //INPUT  : End of Packet
+        .data_tx_ready_1(data_tx_ready_1),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_1(tx_ff_uflow_1),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_1(tx_crc_fwd_1),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_1(xoff_gen_1),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_1(xon_gen_1),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_1(magic_sleep_n_1),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_1(magic_wakeup_1),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 2 
+            
+        .tbi_rx_clk_2(tbi_rx_clk_2),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_2(tbi_tx_clk_2),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_2(tbi_rx_d_2),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_2(tbi_tx_d_2),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_2(sd_loopback_2),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_2(powerdown_2),                //OUTPUT : Powerdown Enable
+        .led_col_2(led_col_2),                    //OUTPUT : Collision Indication
+        .led_an_2(led_an_2),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_2(led_char_err_2),          //OUTPUT : Character error
+        .led_disp_err_2(led_disp_err_2),          //OUTPUT : Disparity error
+        .led_crs_2(led_crs_2),                    //OUTPUT : Carrier sense
+        .led_link_2(led_link_2),                  //OUTPUT : Valid link    
+        .mac_rx_clk_2(mac_rx_clk_2),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_2(mac_tx_clk_2),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_2(data_rx_sop_2),            //OUTPUT : Start of Packet
+        .data_rx_eop_2(data_rx_eop_2),            //OUTPUT : End of Packet
+        .data_rx_data_2(data_rx_data_2),          //OUTPUT : Data from FIFO
+        .data_rx_error_2(data_rx_error_2),        //OUTPUT : Receive packet error
+        .data_rx_valid_2(data_rx_valid_2),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_2(data_rx_ready_2),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_2(pkt_class_data_2),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_2(pkt_class_valid_2),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_2(data_tx_error_2),        //INPUT  : Status
+        .data_tx_data_2(data_tx_data_2),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_2(data_tx_valid_2),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_2(data_tx_sop_2),            //INPUT  : Start of Packet
+        .data_tx_eop_2(data_tx_eop_2),            //INPUT  : End of Packet
+        .data_tx_ready_2(data_tx_ready_2),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_2(tx_ff_uflow_2),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_2(tx_crc_fwd_2),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_2(xoff_gen_2),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_2(xon_gen_2),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_2(magic_sleep_n_2),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_2(magic_wakeup_2),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 3 
+            
+        .tbi_rx_clk_3(tbi_rx_clk_3),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_3(tbi_tx_clk_3),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_3(tbi_rx_d_3),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_3(tbi_tx_d_3),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_3(sd_loopback_3),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_3(powerdown_3),                //OUTPUT : Powerdown Enable
+        .led_col_3(led_col_3),                    //OUTPUT : Collision Indication
+        .led_an_3(led_an_3),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_3(led_char_err_3),          //OUTPUT : Character error
+        .led_disp_err_3(led_disp_err_3),          //OUTPUT : Disparity error
+        .led_crs_3(led_crs_3),                    //OUTPUT : Carrier sense
+        .led_link_3(led_link_3),                  //OUTPUT : Valid link    
+        .mac_rx_clk_3(mac_rx_clk_3),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_3(mac_tx_clk_3),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_3(data_rx_sop_3),            //OUTPUT : Start of Packet
+        .data_rx_eop_3(data_rx_eop_3),            //OUTPUT : End of Packet
+        .data_rx_data_3(data_rx_data_3),          //OUTPUT : Data from FIFO
+        .data_rx_error_3(data_rx_error_3),        //OUTPUT : Receive packet error
+        .data_rx_valid_3(data_rx_valid_3),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_3(data_rx_ready_3),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_3(pkt_class_data_3),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_3(pkt_class_valid_3),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_3(data_tx_error_3),        //INPUT  : Status
+        .data_tx_data_3(data_tx_data_3),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_3(data_tx_valid_3),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_3(data_tx_sop_3),            //INPUT  : Start of Packet
+        .data_tx_eop_3(data_tx_eop_3),            //INPUT  : End of Packet
+        .data_tx_ready_3(data_tx_ready_3),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_3(tx_ff_uflow_3),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_3(tx_crc_fwd_3),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_3(xoff_gen_3),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_3(xon_gen_3),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_3(magic_sleep_n_3),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_3(magic_wakeup_3),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 4 
+            
+        .tbi_rx_clk_4(tbi_rx_clk_4),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_4(tbi_tx_clk_4),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_4(tbi_rx_d_4),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_4(tbi_tx_d_4),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_4(sd_loopback_4),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_4(powerdown_4),                //OUTPUT : Powerdown Enable
+        .led_col_4(led_col_4),                    //OUTPUT : Collision Indication
+        .led_an_4(led_an_4),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_4(led_char_err_4),          //OUTPUT : Character error
+        .led_disp_err_4(led_disp_err_4),          //OUTPUT : Disparity error
+        .led_crs_4(led_crs_4),                    //OUTPUT : Carrier sense
+        .led_link_4(led_link_4),                  //OUTPUT : Valid link    
+        .mac_rx_clk_4(mac_rx_clk_4),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_4(mac_tx_clk_4),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_4(data_rx_sop_4),            //OUTPUT : Start of Packet
+        .data_rx_eop_4(data_rx_eop_4),            //OUTPUT : End of Packet
+        .data_rx_data_4(data_rx_data_4),          //OUTPUT : Data from FIFO
+        .data_rx_error_4(data_rx_error_4),        //OUTPUT : Receive packet error
+        .data_rx_valid_4(data_rx_valid_4),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_4(data_rx_ready_4),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_4(pkt_class_data_4),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_4(pkt_class_valid_4),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_4(data_tx_error_4),        //INPUT  : Status
+        .data_tx_data_4(data_tx_data_4),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_4(data_tx_valid_4),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_4(data_tx_sop_4),            //INPUT  : Start of Packet
+        .data_tx_eop_4(data_tx_eop_4),            //INPUT  : End of Packet
+        .data_tx_ready_4(data_tx_ready_4),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_4(tx_ff_uflow_4),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_4(tx_crc_fwd_4),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_4(xoff_gen_4),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_4(xon_gen_4),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_4(magic_sleep_n_4),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_4(magic_wakeup_4),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 5 
+            
+        .tbi_rx_clk_5(tbi_rx_clk_5),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_5(tbi_tx_clk_5),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_5(tbi_rx_d_5),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_5(tbi_tx_d_5),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_5(sd_loopback_5),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_5(powerdown_5),                //OUTPUT : Powerdown Enable
+        .led_col_5(led_col_5),                    //OUTPUT : Collision Indication
+        .led_an_5(led_an_5),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_5(led_char_err_5),          //OUTPUT : Character error
+        .led_disp_err_5(led_disp_err_5),          //OUTPUT : Disparity error
+        .led_crs_5(led_crs_5),                    //OUTPUT : Carrier sense
+        .led_link_5(led_link_5),                  //OUTPUT : Valid link    
+        .mac_rx_clk_5(mac_rx_clk_5),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_5(mac_tx_clk_5),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_5(data_rx_sop_5),            //OUTPUT : Start of Packet
+        .data_rx_eop_5(data_rx_eop_5),            //OUTPUT : End of Packet
+        .data_rx_data_5(data_rx_data_5),          //OUTPUT : Data from FIFO
+        .data_rx_error_5(data_rx_error_5),        //OUTPUT : Receive packet error
+        .data_rx_valid_5(data_rx_valid_5),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_5(data_rx_ready_5),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_5(pkt_class_data_5),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_5(pkt_class_valid_5),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_5(data_tx_error_5),        //INPUT  : Status
+        .data_tx_data_5(data_tx_data_5),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_5(data_tx_valid_5),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_5(data_tx_sop_5),            //INPUT  : Start of Packet
+        .data_tx_eop_5(data_tx_eop_5),            //INPUT  : End of Packet
+        .data_tx_ready_5(data_tx_ready_5),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_5(tx_ff_uflow_5),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_5(tx_crc_fwd_5),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_5(xoff_gen_5),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_5(xon_gen_5),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_5(magic_sleep_n_5),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_5(magic_wakeup_5),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 6 
+            
+        .tbi_rx_clk_6(tbi_rx_clk_6),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_6(tbi_tx_clk_6),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_6(tbi_rx_d_6),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_6(tbi_tx_d_6),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_6(sd_loopback_6),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_6(powerdown_6),                //OUTPUT : Powerdown Enable
+        .led_col_6(led_col_6),                    //OUTPUT : Collision Indication
+        .led_an_6(led_an_6),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_6(led_char_err_6),          //OUTPUT : Character error
+        .led_disp_err_6(led_disp_err_6),          //OUTPUT : Disparity error
+        .led_crs_6(led_crs_6),                    //OUTPUT : Carrier sense
+        .led_link_6(led_link_6),                  //OUTPUT : Valid link    
+        .mac_rx_clk_6(mac_rx_clk_6),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_6(mac_tx_clk_6),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_6(data_rx_sop_6),            //OUTPUT : Start of Packet
+        .data_rx_eop_6(data_rx_eop_6),            //OUTPUT : End of Packet
+        .data_rx_data_6(data_rx_data_6),          //OUTPUT : Data from FIFO
+        .data_rx_error_6(data_rx_error_6),        //OUTPUT : Receive packet error
+        .data_rx_valid_6(data_rx_valid_6),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_6(data_rx_ready_6),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_6(pkt_class_data_6),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_6(pkt_class_valid_6),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_6(data_tx_error_6),        //INPUT  : Status
+        .data_tx_data_6(data_tx_data_6),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_6(data_tx_valid_6),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_6(data_tx_sop_6),            //INPUT  : Start of Packet
+        .data_tx_eop_6(data_tx_eop_6),            //INPUT  : End of Packet
+        .data_tx_ready_6(data_tx_ready_6),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_6(tx_ff_uflow_6),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_6(tx_crc_fwd_6),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_6(xoff_gen_6),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_6(xon_gen_6),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_6(magic_sleep_n_6),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_6(magic_wakeup_6),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 7 
+            
+        .tbi_rx_clk_7(tbi_rx_clk_7),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_7(tbi_tx_clk_7),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_7(tbi_rx_d_7),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_7(tbi_tx_d_7),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_7(sd_loopback_7),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_7(powerdown_7),                //OUTPUT : Powerdown Enable
+        .led_col_7(led_col_7),                    //OUTPUT : Collision Indication
+        .led_an_7(led_an_7),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_7(led_char_err_7),          //OUTPUT : Character error
+        .led_disp_err_7(led_disp_err_7),          //OUTPUT : Disparity error
+        .led_crs_7(led_crs_7),                    //OUTPUT : Carrier sense
+        .led_link_7(led_link_7),                  //OUTPUT : Valid link    
+        .mac_rx_clk_7(mac_rx_clk_7),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_7(mac_tx_clk_7),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_7(data_rx_sop_7),            //OUTPUT : Start of Packet
+        .data_rx_eop_7(data_rx_eop_7),            //OUTPUT : End of Packet
+        .data_rx_data_7(data_rx_data_7),          //OUTPUT : Data from FIFO
+        .data_rx_error_7(data_rx_error_7),        //OUTPUT : Receive packet error
+        .data_rx_valid_7(data_rx_valid_7),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_7(data_rx_ready_7),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_7(pkt_class_data_7),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_7(pkt_class_valid_7),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_7(data_tx_error_7),        //INPUT  : Status
+        .data_tx_data_7(data_tx_data_7),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_7(data_tx_valid_7),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_7(data_tx_sop_7),            //INPUT  : Start of Packet
+        .data_tx_eop_7(data_tx_eop_7),            //INPUT  : End of Packet
+        .data_tx_ready_7(data_tx_ready_7),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_7(tx_ff_uflow_7),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_7(tx_crc_fwd_7),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_7(xoff_gen_7),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_7(xon_gen_7),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_7(magic_sleep_n_7),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_7(magic_wakeup_7),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 8 
+            
+        .tbi_rx_clk_8(tbi_rx_clk_8),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_8(tbi_tx_clk_8),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_8(tbi_rx_d_8),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_8(tbi_tx_d_8),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_8(sd_loopback_8),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_8(powerdown_8),                //OUTPUT : Powerdown Enable
+        .led_col_8(led_col_8),                    //OUTPUT : Collision Indication
+        .led_an_8(led_an_8),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_8(led_char_err_8),          //OUTPUT : Character error
+        .led_disp_err_8(led_disp_err_8),          //OUTPUT : Disparity error
+        .led_crs_8(led_crs_8),                    //OUTPUT : Carrier sense
+        .led_link_8(led_link_8),                  //OUTPUT : Valid link    
+        .mac_rx_clk_8(mac_rx_clk_8),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_8(mac_tx_clk_8),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_8(data_rx_sop_8),            //OUTPUT : Start of Packet
+        .data_rx_eop_8(data_rx_eop_8),            //OUTPUT : End of Packet
+        .data_rx_data_8(data_rx_data_8),          //OUTPUT : Data from FIFO
+        .data_rx_error_8(data_rx_error_8),        //OUTPUT : Receive packet error
+        .data_rx_valid_8(data_rx_valid_8),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_8(data_rx_ready_8),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_8(pkt_class_data_8),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_8(pkt_class_valid_8),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_8(data_tx_error_8),        //INPUT  : Status
+        .data_tx_data_8(data_tx_data_8),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_8(data_tx_valid_8),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_8(data_tx_sop_8),            //INPUT  : Start of Packet
+        .data_tx_eop_8(data_tx_eop_8),            //INPUT  : End of Packet
+        .data_tx_ready_8(data_tx_ready_8),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_8(tx_ff_uflow_8),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_8(tx_crc_fwd_8),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_8(xoff_gen_8),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_8(xon_gen_8),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_8(magic_sleep_n_8),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_8(magic_wakeup_8),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 9 
+            
+        .tbi_rx_clk_9(tbi_rx_clk_9),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_9(tbi_tx_clk_9),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_9(tbi_rx_d_9),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_9(tbi_tx_d_9),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_9(sd_loopback_9),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_9(powerdown_9),                //OUTPUT : Powerdown Enable
+        .led_col_9(led_col_9),                    //OUTPUT : Collision Indication
+        .led_an_9(led_an_9),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_9(led_char_err_9),          //OUTPUT : Character error
+        .led_disp_err_9(led_disp_err_9),          //OUTPUT : Disparity error
+        .led_crs_9(led_crs_9),                    //OUTPUT : Carrier sense
+        .led_link_9(led_link_9),                  //OUTPUT : Valid link    
+        .mac_rx_clk_9(mac_rx_clk_9),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_9(mac_tx_clk_9),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_9(data_rx_sop_9),            //OUTPUT : Start of Packet
+        .data_rx_eop_9(data_rx_eop_9),            //OUTPUT : End of Packet
+        .data_rx_data_9(data_rx_data_9),          //OUTPUT : Data from FIFO
+        .data_rx_error_9(data_rx_error_9),        //OUTPUT : Receive packet error
+        .data_rx_valid_9(data_rx_valid_9),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_9(data_rx_ready_9),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_9(pkt_class_data_9),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_9(pkt_class_valid_9),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_9(data_tx_error_9),        //INPUT  : Status
+        .data_tx_data_9(data_tx_data_9),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_9(data_tx_valid_9),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_9(data_tx_sop_9),            //INPUT  : Start of Packet
+        .data_tx_eop_9(data_tx_eop_9),            //INPUT  : End of Packet
+        .data_tx_ready_9(data_tx_ready_9),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_9(tx_ff_uflow_9),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_9(tx_crc_fwd_9),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_9(xoff_gen_9),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_9(xon_gen_9),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_9(magic_sleep_n_9),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_9(magic_wakeup_9),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 10 
+            
+        .tbi_rx_clk_10(tbi_rx_clk_10),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_10(tbi_tx_clk_10),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_10(tbi_rx_d_10),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_10(tbi_tx_d_10),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_10(sd_loopback_10),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_10(powerdown_10),                //OUTPUT : Powerdown Enable
+        .led_col_10(led_col_10),                    //OUTPUT : Collision Indication
+        .led_an_10(led_an_10),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_10(led_char_err_10),          //OUTPUT : Character error
+        .led_disp_err_10(led_disp_err_10),          //OUTPUT : Disparity error
+        .led_crs_10(led_crs_10),                    //OUTPUT : Carrier sense
+        .led_link_10(led_link_10),                  //OUTPUT : Valid link    
+        .mac_rx_clk_10(mac_rx_clk_10),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_10(mac_tx_clk_10),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_10(data_rx_sop_10),            //OUTPUT : Start of Packet
+        .data_rx_eop_10(data_rx_eop_10),            //OUTPUT : End of Packet
+        .data_rx_data_10(data_rx_data_10),          //OUTPUT : Data from FIFO
+        .data_rx_error_10(data_rx_error_10),        //OUTPUT : Receive packet error
+        .data_rx_valid_10(data_rx_valid_10),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_10(data_rx_ready_10),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_10(pkt_class_data_10),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_10(pkt_class_valid_10),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_10(data_tx_error_10),        //INPUT  : Status
+        .data_tx_data_10(data_tx_data_10),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_10(data_tx_valid_10),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_10(data_tx_sop_10),            //INPUT  : Start of Packet
+        .data_tx_eop_10(data_tx_eop_10),            //INPUT  : End of Packet
+        .data_tx_ready_10(data_tx_ready_10),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_10(tx_ff_uflow_10),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_10(tx_crc_fwd_10),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_10(xoff_gen_10),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_10(xon_gen_10),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_10(magic_sleep_n_10),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_10(magic_wakeup_10),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 11 
+            
+        .tbi_rx_clk_11(tbi_rx_clk_11),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_11(tbi_tx_clk_11),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_11(tbi_rx_d_11),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_11(tbi_tx_d_11),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_11(sd_loopback_11),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_11(powerdown_11),                //OUTPUT : Powerdown Enable
+        .led_col_11(led_col_11),                    //OUTPUT : Collision Indication
+        .led_an_11(led_an_11),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_11(led_char_err_11),          //OUTPUT : Character error
+        .led_disp_err_11(led_disp_err_11),          //OUTPUT : Disparity error
+        .led_crs_11(led_crs_11),                    //OUTPUT : Carrier sense
+        .led_link_11(led_link_11),                  //OUTPUT : Valid link    
+        .mac_rx_clk_11(mac_rx_clk_11),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_11(mac_tx_clk_11),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_11(data_rx_sop_11),            //OUTPUT : Start of Packet
+        .data_rx_eop_11(data_rx_eop_11),            //OUTPUT : End of Packet
+        .data_rx_data_11(data_rx_data_11),          //OUTPUT : Data from FIFO
+        .data_rx_error_11(data_rx_error_11),        //OUTPUT : Receive packet error
+        .data_rx_valid_11(data_rx_valid_11),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_11(data_rx_ready_11),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_11(pkt_class_data_11),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_11(pkt_class_valid_11),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_11(data_tx_error_11),        //INPUT  : Status
+        .data_tx_data_11(data_tx_data_11),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_11(data_tx_valid_11),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_11(data_tx_sop_11),            //INPUT  : Start of Packet
+        .data_tx_eop_11(data_tx_eop_11),            //INPUT  : End of Packet
+        .data_tx_ready_11(data_tx_ready_11),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_11(tx_ff_uflow_11),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_11(tx_crc_fwd_11),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_11(xoff_gen_11),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_11(xon_gen_11),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_11(magic_sleep_n_11),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_11(magic_wakeup_11),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 12 
+            
+        .tbi_rx_clk_12(tbi_rx_clk_12),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_12(tbi_tx_clk_12),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_12(tbi_rx_d_12),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_12(tbi_tx_d_12),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_12(sd_loopback_12),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_12(powerdown_12),                //OUTPUT : Powerdown Enable
+        .led_col_12(led_col_12),                    //OUTPUT : Collision Indication
+        .led_an_12(led_an_12),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_12(led_char_err_12),          //OUTPUT : Character error
+        .led_disp_err_12(led_disp_err_12),          //OUTPUT : Disparity error
+        .led_crs_12(led_crs_12),                    //OUTPUT : Carrier sense
+        .led_link_12(led_link_12),                  //OUTPUT : Valid link    
+        .mac_rx_clk_12(mac_rx_clk_12),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_12(mac_tx_clk_12),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_12(data_rx_sop_12),            //OUTPUT : Start of Packet
+        .data_rx_eop_12(data_rx_eop_12),            //OUTPUT : End of Packet
+        .data_rx_data_12(data_rx_data_12),          //OUTPUT : Data from FIFO
+        .data_rx_error_12(data_rx_error_12),        //OUTPUT : Receive packet error
+        .data_rx_valid_12(data_rx_valid_12),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_12(data_rx_ready_12),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_12(pkt_class_data_12),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_12(pkt_class_valid_12),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_12(data_tx_error_12),        //INPUT  : Status
+        .data_tx_data_12(data_tx_data_12),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_12(data_tx_valid_12),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_12(data_tx_sop_12),            //INPUT  : Start of Packet
+        .data_tx_eop_12(data_tx_eop_12),            //INPUT  : End of Packet
+        .data_tx_ready_12(data_tx_ready_12),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_12(tx_ff_uflow_12),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_12(tx_crc_fwd_12),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_12(xoff_gen_12),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_12(xon_gen_12),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_12(magic_sleep_n_12),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_12(magic_wakeup_12),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 13 
+            
+        .tbi_rx_clk_13(tbi_rx_clk_13),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_13(tbi_tx_clk_13),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_13(tbi_rx_d_13),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_13(tbi_tx_d_13),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_13(sd_loopback_13),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_13(powerdown_13),                //OUTPUT : Powerdown Enable
+        .led_col_13(led_col_13),                    //OUTPUT : Collision Indication
+        .led_an_13(led_an_13),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_13(led_char_err_13),          //OUTPUT : Character error
+        .led_disp_err_13(led_disp_err_13),          //OUTPUT : Disparity error
+        .led_crs_13(led_crs_13),                    //OUTPUT : Carrier sense
+        .led_link_13(led_link_13),                  //OUTPUT : Valid link    
+        .mac_rx_clk_13(mac_rx_clk_13),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_13(mac_tx_clk_13),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_13(data_rx_sop_13),            //OUTPUT : Start of Packet
+        .data_rx_eop_13(data_rx_eop_13),            //OUTPUT : End of Packet
+        .data_rx_data_13(data_rx_data_13),          //OUTPUT : Data from FIFO
+        .data_rx_error_13(data_rx_error_13),        //OUTPUT : Receive packet error
+        .data_rx_valid_13(data_rx_valid_13),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_13(data_rx_ready_13),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_13(pkt_class_data_13),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_13(pkt_class_valid_13),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_13(data_tx_error_13),        //INPUT  : Status
+        .data_tx_data_13(data_tx_data_13),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_13(data_tx_valid_13),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_13(data_tx_sop_13),            //INPUT  : Start of Packet
+        .data_tx_eop_13(data_tx_eop_13),            //INPUT  : End of Packet
+        .data_tx_ready_13(data_tx_ready_13),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_13(tx_ff_uflow_13),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_13(tx_crc_fwd_13),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_13(xoff_gen_13),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_13(xon_gen_13),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_13(magic_sleep_n_13),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_13(magic_wakeup_13),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 14 
+            
+        .tbi_rx_clk_14(tbi_rx_clk_14),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_14(tbi_tx_clk_14),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_14(tbi_rx_d_14),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_14(tbi_tx_d_14),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_14(sd_loopback_14),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_14(powerdown_14),                //OUTPUT : Powerdown Enable
+        .led_col_14(led_col_14),                    //OUTPUT : Collision Indication
+        .led_an_14(led_an_14),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_14(led_char_err_14),          //OUTPUT : Character error
+        .led_disp_err_14(led_disp_err_14),          //OUTPUT : Disparity error
+        .led_crs_14(led_crs_14),                    //OUTPUT : Carrier sense
+        .led_link_14(led_link_14),                  //OUTPUT : Valid link    
+        .mac_rx_clk_14(mac_rx_clk_14),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_14(mac_tx_clk_14),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_14(data_rx_sop_14),            //OUTPUT : Start of Packet
+        .data_rx_eop_14(data_rx_eop_14),            //OUTPUT : End of Packet
+        .data_rx_data_14(data_rx_data_14),          //OUTPUT : Data from FIFO
+        .data_rx_error_14(data_rx_error_14),        //OUTPUT : Receive packet error
+        .data_rx_valid_14(data_rx_valid_14),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_14(data_rx_ready_14),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_14(pkt_class_data_14),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_14(pkt_class_valid_14),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_14(data_tx_error_14),        //INPUT  : Status
+        .data_tx_data_14(data_tx_data_14),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_14(data_tx_valid_14),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_14(data_tx_sop_14),            //INPUT  : Start of Packet
+        .data_tx_eop_14(data_tx_eop_14),            //INPUT  : End of Packet
+        .data_tx_ready_14(data_tx_ready_14),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_14(tx_ff_uflow_14),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_14(tx_crc_fwd_14),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_14(xoff_gen_14),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_14(xon_gen_14),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_14(magic_sleep_n_14),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_14(magic_wakeup_14),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 15 
+            
+        .tbi_rx_clk_15(tbi_rx_clk_15),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_15(tbi_tx_clk_15),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_15(tbi_rx_d_15),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_15(tbi_tx_d_15),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_15(sd_loopback_15),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_15(powerdown_15),                //OUTPUT : Powerdown Enable
+        .led_col_15(led_col_15),                    //OUTPUT : Collision Indication
+        .led_an_15(led_an_15),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_15(led_char_err_15),          //OUTPUT : Character error
+        .led_disp_err_15(led_disp_err_15),          //OUTPUT : Disparity error
+        .led_crs_15(led_crs_15),                    //OUTPUT : Carrier sense
+        .led_link_15(led_link_15),                  //OUTPUT : Valid link    
+        .mac_rx_clk_15(mac_rx_clk_15),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_15(mac_tx_clk_15),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_15(data_rx_sop_15),            //OUTPUT : Start of Packet
+        .data_rx_eop_15(data_rx_eop_15),            //OUTPUT : End of Packet
+        .data_rx_data_15(data_rx_data_15),          //OUTPUT : Data from FIFO
+        .data_rx_error_15(data_rx_error_15),        //OUTPUT : Receive packet error
+        .data_rx_valid_15(data_rx_valid_15),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_15(data_rx_ready_15),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_15(pkt_class_data_15),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_15(pkt_class_valid_15),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_15(data_tx_error_15),        //INPUT  : Status
+        .data_tx_data_15(data_tx_data_15),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_15(data_tx_valid_15),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_15(data_tx_sop_15),            //INPUT  : Start of Packet
+        .data_tx_eop_15(data_tx_eop_15),            //INPUT  : End of Packet
+        .data_tx_ready_15(data_tx_ready_15),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_15(tx_ff_uflow_15),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_15(tx_crc_fwd_15),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_15(xoff_gen_15),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_15(xon_gen_15),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_15(magic_sleep_n_15),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_15(magic_wakeup_15),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 16 
+            
+        .tbi_rx_clk_16(tbi_rx_clk_16),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_16(tbi_tx_clk_16),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_16(tbi_rx_d_16),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_16(tbi_tx_d_16),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_16(sd_loopback_16),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_16(powerdown_16),                //OUTPUT : Powerdown Enable
+        .led_col_16(led_col_16),                    //OUTPUT : Collision Indication
+        .led_an_16(led_an_16),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_16(led_char_err_16),          //OUTPUT : Character error
+        .led_disp_err_16(led_disp_err_16),          //OUTPUT : Disparity error
+        .led_crs_16(led_crs_16),                    //OUTPUT : Carrier sense
+        .led_link_16(led_link_16),                  //OUTPUT : Valid link    
+        .mac_rx_clk_16(mac_rx_clk_16),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_16(mac_tx_clk_16),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_16(data_rx_sop_16),            //OUTPUT : Start of Packet
+        .data_rx_eop_16(data_rx_eop_16),            //OUTPUT : End of Packet
+        .data_rx_data_16(data_rx_data_16),          //OUTPUT : Data from FIFO
+        .data_rx_error_16(data_rx_error_16),        //OUTPUT : Receive packet error
+        .data_rx_valid_16(data_rx_valid_16),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_16(data_rx_ready_16),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_16(pkt_class_data_16),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_16(pkt_class_valid_16),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_16(data_tx_error_16),        //INPUT  : Status
+        .data_tx_data_16(data_tx_data_16),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_16(data_tx_valid_16),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_16(data_tx_sop_16),            //INPUT  : Start of Packet
+        .data_tx_eop_16(data_tx_eop_16),            //INPUT  : End of Packet
+        .data_tx_ready_16(data_tx_ready_16),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_16(tx_ff_uflow_16),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_16(tx_crc_fwd_16),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_16(xoff_gen_16),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_16(xon_gen_16),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_16(magic_sleep_n_16),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_16(magic_wakeup_16),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 17 
+            
+        .tbi_rx_clk_17(tbi_rx_clk_17),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_17(tbi_tx_clk_17),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_17(tbi_rx_d_17),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_17(tbi_tx_d_17),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_17(sd_loopback_17),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_17(powerdown_17),                //OUTPUT : Powerdown Enable
+        .led_col_17(led_col_17),                    //OUTPUT : Collision Indication
+        .led_an_17(led_an_17),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_17(led_char_err_17),          //OUTPUT : Character error
+        .led_disp_err_17(led_disp_err_17),          //OUTPUT : Disparity error
+        .led_crs_17(led_crs_17),                    //OUTPUT : Carrier sense
+        .led_link_17(led_link_17),                  //OUTPUT : Valid link    
+        .mac_rx_clk_17(mac_rx_clk_17),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_17(mac_tx_clk_17),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_17(data_rx_sop_17),            //OUTPUT : Start of Packet
+        .data_rx_eop_17(data_rx_eop_17),            //OUTPUT : End of Packet
+        .data_rx_data_17(data_rx_data_17),          //OUTPUT : Data from FIFO
+        .data_rx_error_17(data_rx_error_17),        //OUTPUT : Receive packet error
+        .data_rx_valid_17(data_rx_valid_17),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_17(data_rx_ready_17),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_17(pkt_class_data_17),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_17(pkt_class_valid_17),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_17(data_tx_error_17),        //INPUT  : Status
+        .data_tx_data_17(data_tx_data_17),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_17(data_tx_valid_17),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_17(data_tx_sop_17),            //INPUT  : Start of Packet
+        .data_tx_eop_17(data_tx_eop_17),            //INPUT  : End of Packet
+        .data_tx_ready_17(data_tx_ready_17),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_17(tx_ff_uflow_17),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_17(tx_crc_fwd_17),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_17(xoff_gen_17),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_17(xon_gen_17),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_17(magic_sleep_n_17),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_17(magic_wakeup_17),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 18 
+            
+        .tbi_rx_clk_18(tbi_rx_clk_18),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_18(tbi_tx_clk_18),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_18(tbi_rx_d_18),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_18(tbi_tx_d_18),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_18(sd_loopback_18),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_18(powerdown_18),                //OUTPUT : Powerdown Enable
+        .led_col_18(led_col_18),                    //OUTPUT : Collision Indication
+        .led_an_18(led_an_18),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_18(led_char_err_18),          //OUTPUT : Character error
+        .led_disp_err_18(led_disp_err_18),          //OUTPUT : Disparity error
+        .led_crs_18(led_crs_18),                    //OUTPUT : Carrier sense
+        .led_link_18(led_link_18),                  //OUTPUT : Valid link    
+        .mac_rx_clk_18(mac_rx_clk_18),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_18(mac_tx_clk_18),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_18(data_rx_sop_18),            //OUTPUT : Start of Packet
+        .data_rx_eop_18(data_rx_eop_18),            //OUTPUT : End of Packet
+        .data_rx_data_18(data_rx_data_18),          //OUTPUT : Data from FIFO
+        .data_rx_error_18(data_rx_error_18),        //OUTPUT : Receive packet error
+        .data_rx_valid_18(data_rx_valid_18),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_18(data_rx_ready_18),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_18(pkt_class_data_18),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_18(pkt_class_valid_18),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_18(data_tx_error_18),        //INPUT  : Status
+        .data_tx_data_18(data_tx_data_18),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_18(data_tx_valid_18),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_18(data_tx_sop_18),            //INPUT  : Start of Packet
+        .data_tx_eop_18(data_tx_eop_18),            //INPUT  : End of Packet
+        .data_tx_ready_18(data_tx_ready_18),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_18(tx_ff_uflow_18),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_18(tx_crc_fwd_18),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_18(xoff_gen_18),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_18(xon_gen_18),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_18(magic_sleep_n_18),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_18(magic_wakeup_18),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 19 
+            
+        .tbi_rx_clk_19(tbi_rx_clk_19),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_19(tbi_tx_clk_19),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_19(tbi_rx_d_19),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_19(tbi_tx_d_19),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_19(sd_loopback_19),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_19(powerdown_19),                //OUTPUT : Powerdown Enable
+        .led_col_19(led_col_19),                    //OUTPUT : Collision Indication
+        .led_an_19(led_an_19),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_19(led_char_err_19),          //OUTPUT : Character error
+        .led_disp_err_19(led_disp_err_19),          //OUTPUT : Disparity error
+        .led_crs_19(led_crs_19),                    //OUTPUT : Carrier sense
+        .led_link_19(led_link_19),                  //OUTPUT : Valid link    
+        .mac_rx_clk_19(mac_rx_clk_19),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_19(mac_tx_clk_19),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_19(data_rx_sop_19),            //OUTPUT : Start of Packet
+        .data_rx_eop_19(data_rx_eop_19),            //OUTPUT : End of Packet
+        .data_rx_data_19(data_rx_data_19),          //OUTPUT : Data from FIFO
+        .data_rx_error_19(data_rx_error_19),        //OUTPUT : Receive packet error
+        .data_rx_valid_19(data_rx_valid_19),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_19(data_rx_ready_19),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_19(pkt_class_data_19),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_19(pkt_class_valid_19),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_19(data_tx_error_19),        //INPUT  : Status
+        .data_tx_data_19(data_tx_data_19),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_19(data_tx_valid_19),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_19(data_tx_sop_19),            //INPUT  : Start of Packet
+        .data_tx_eop_19(data_tx_eop_19),            //INPUT  : End of Packet
+        .data_tx_ready_19(data_tx_ready_19),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_19(tx_ff_uflow_19),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_19(tx_crc_fwd_19),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_19(xoff_gen_19),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_19(xon_gen_19),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_19(magic_sleep_n_19),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_19(magic_wakeup_19),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 20 
+            
+        .tbi_rx_clk_20(tbi_rx_clk_20),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_20(tbi_tx_clk_20),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_20(tbi_rx_d_20),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_20(tbi_tx_d_20),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_20(sd_loopback_20),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_20(powerdown_20),                //OUTPUT : Powerdown Enable
+        .led_col_20(led_col_20),                    //OUTPUT : Collision Indication
+        .led_an_20(led_an_20),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_20(led_char_err_20),          //OUTPUT : Character error
+        .led_disp_err_20(led_disp_err_20),          //OUTPUT : Disparity error
+        .led_crs_20(led_crs_20),                    //OUTPUT : Carrier sense
+        .led_link_20(led_link_20),                  //OUTPUT : Valid link    
+        .mac_rx_clk_20(mac_rx_clk_20),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_20(mac_tx_clk_20),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_20(data_rx_sop_20),            //OUTPUT : Start of Packet
+        .data_rx_eop_20(data_rx_eop_20),            //OUTPUT : End of Packet
+        .data_rx_data_20(data_rx_data_20),          //OUTPUT : Data from FIFO
+        .data_rx_error_20(data_rx_error_20),        //OUTPUT : Receive packet error
+        .data_rx_valid_20(data_rx_valid_20),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_20(data_rx_ready_20),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_20(pkt_class_data_20),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_20(pkt_class_valid_20),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_20(data_tx_error_20),        //INPUT  : Status
+        .data_tx_data_20(data_tx_data_20),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_20(data_tx_valid_20),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_20(data_tx_sop_20),            //INPUT  : Start of Packet
+        .data_tx_eop_20(data_tx_eop_20),            //INPUT  : End of Packet
+        .data_tx_ready_20(data_tx_ready_20),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_20(tx_ff_uflow_20),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_20(tx_crc_fwd_20),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_20(xoff_gen_20),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_20(xon_gen_20),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_20(magic_sleep_n_20),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_20(magic_wakeup_20),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 21 
+            
+        .tbi_rx_clk_21(tbi_rx_clk_21),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_21(tbi_tx_clk_21),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_21(tbi_rx_d_21),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_21(tbi_tx_d_21),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_21(sd_loopback_21),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_21(powerdown_21),                //OUTPUT : Powerdown Enable
+        .led_col_21(led_col_21),                    //OUTPUT : Collision Indication
+        .led_an_21(led_an_21),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_21(led_char_err_21),          //OUTPUT : Character error
+        .led_disp_err_21(led_disp_err_21),          //OUTPUT : Disparity error
+        .led_crs_21(led_crs_21),                    //OUTPUT : Carrier sense
+        .led_link_21(led_link_21),                  //OUTPUT : Valid link    
+        .mac_rx_clk_21(mac_rx_clk_21),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_21(mac_tx_clk_21),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_21(data_rx_sop_21),            //OUTPUT : Start of Packet
+        .data_rx_eop_21(data_rx_eop_21),            //OUTPUT : End of Packet
+        .data_rx_data_21(data_rx_data_21),          //OUTPUT : Data from FIFO
+        .data_rx_error_21(data_rx_error_21),        //OUTPUT : Receive packet error
+        .data_rx_valid_21(data_rx_valid_21),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_21(data_rx_ready_21),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_21(pkt_class_data_21),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_21(pkt_class_valid_21),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_21(data_tx_error_21),        //INPUT  : Status
+        .data_tx_data_21(data_tx_data_21),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_21(data_tx_valid_21),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_21(data_tx_sop_21),            //INPUT  : Start of Packet
+        .data_tx_eop_21(data_tx_eop_21),            //INPUT  : End of Packet
+        .data_tx_ready_21(data_tx_ready_21),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_21(tx_ff_uflow_21),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_21(tx_crc_fwd_21),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_21(xoff_gen_21),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_21(xon_gen_21),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_21(magic_sleep_n_21),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_21(magic_wakeup_21),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 22 
+            
+        .tbi_rx_clk_22(tbi_rx_clk_22),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_22(tbi_tx_clk_22),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_22(tbi_rx_d_22),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_22(tbi_tx_d_22),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_22(sd_loopback_22),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_22(powerdown_22),                //OUTPUT : Powerdown Enable
+        .led_col_22(led_col_22),                    //OUTPUT : Collision Indication
+        .led_an_22(led_an_22),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_22(led_char_err_22),          //OUTPUT : Character error
+        .led_disp_err_22(led_disp_err_22),          //OUTPUT : Disparity error
+        .led_crs_22(led_crs_22),                    //OUTPUT : Carrier sense
+        .led_link_22(led_link_22),                  //OUTPUT : Valid link    
+        .mac_rx_clk_22(mac_rx_clk_22),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_22(mac_tx_clk_22),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_22(data_rx_sop_22),            //OUTPUT : Start of Packet
+        .data_rx_eop_22(data_rx_eop_22),            //OUTPUT : End of Packet
+        .data_rx_data_22(data_rx_data_22),          //OUTPUT : Data from FIFO
+        .data_rx_error_22(data_rx_error_22),        //OUTPUT : Receive packet error
+        .data_rx_valid_22(data_rx_valid_22),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_22(data_rx_ready_22),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_22(pkt_class_data_22),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_22(pkt_class_valid_22),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_22(data_tx_error_22),        //INPUT  : Status
+        .data_tx_data_22(data_tx_data_22),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_22(data_tx_valid_22),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_22(data_tx_sop_22),            //INPUT  : Start of Packet
+        .data_tx_eop_22(data_tx_eop_22),            //INPUT  : End of Packet
+        .data_tx_ready_22(data_tx_ready_22),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_22(tx_ff_uflow_22),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_22(tx_crc_fwd_22),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_22(xoff_gen_22),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_22(xon_gen_22),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_22(magic_sleep_n_22),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_22(magic_wakeup_22),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 23 
+            
+        .tbi_rx_clk_23(tbi_rx_clk_23),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_23(tbi_tx_clk_23),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_23(tbi_rx_d_23),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_23(tbi_tx_d_23),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_23(sd_loopback_23),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_23(powerdown_23),                //OUTPUT : Powerdown Enable
+        .led_col_23(led_col_23),                    //OUTPUT : Collision Indication
+        .led_an_23(led_an_23),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_23(led_char_err_23),          //OUTPUT : Character error
+        .led_disp_err_23(led_disp_err_23),          //OUTPUT : Disparity error
+        .led_crs_23(led_crs_23),                    //OUTPUT : Carrier sense
+        .led_link_23(led_link_23),                  //OUTPUT : Valid link    
+        .mac_rx_clk_23(mac_rx_clk_23),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_23(mac_tx_clk_23),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_23(data_rx_sop_23),            //OUTPUT : Start of Packet
+        .data_rx_eop_23(data_rx_eop_23),            //OUTPUT : End of Packet
+        .data_rx_data_23(data_rx_data_23),          //OUTPUT : Data from FIFO
+        .data_rx_error_23(data_rx_error_23),        //OUTPUT : Receive packet error
+        .data_rx_valid_23(data_rx_valid_23),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_23(data_rx_ready_23),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_23(pkt_class_data_23),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_23(pkt_class_valid_23),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_23(data_tx_error_23),        //INPUT  : Status
+        .data_tx_data_23(data_tx_data_23),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_23(data_tx_valid_23),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_23(data_tx_sop_23),            //INPUT  : Start of Packet
+        .data_tx_eop_23(data_tx_eop_23),            //INPUT  : End of Packet
+        .data_tx_ready_23(data_tx_ready_23),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_23(tx_ff_uflow_23),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_23(tx_crc_fwd_23),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_23(xoff_gen_23),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_23(xon_gen_23),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_23(magic_sleep_n_23),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_23(magic_wakeup_23));         //OUTPUT : MAC WAKE-UP INDICATION
+
+    defparam
+        U_MULTI_MAC_PCS.USE_SYNC_RESET = USE_SYNC_RESET, 
+        U_MULTI_MAC_PCS.RESET_LEVEL = RESET_LEVEL,
+        U_MULTI_MAC_PCS.ENABLE_GMII_LOOPBACK = ENABLE_GMII_LOOPBACK, 
+        U_MULTI_MAC_PCS.ENABLE_HD_LOGIC = ENABLE_HD_LOGIC,
+        U_MULTI_MAC_PCS.ENABLE_SUP_ADDR = ENABLE_SUP_ADDR,
+        U_MULTI_MAC_PCS.ENA_HASH = ENA_HASH,
+        U_MULTI_MAC_PCS.STAT_CNT_ENA = STAT_CNT_ENA,
+        U_MULTI_MAC_PCS.CORE_VERSION = CORE_VERSION, 
+        U_MULTI_MAC_PCS.CUST_VERSION = CUST_VERSION,
+        U_MULTI_MAC_PCS.REDUCED_INTERFACE_ENA = REDUCED_INTERFACE_ENA,
+        U_MULTI_MAC_PCS.ENABLE_MDIO = ENABLE_MDIO,
+        U_MULTI_MAC_PCS.MDIO_CLK_DIV = MDIO_CLK_DIV,
+        U_MULTI_MAC_PCS.ENABLE_MAGIC_DETECT = ENABLE_MAGIC_DETECT,
+        U_MULTI_MAC_PCS.ENABLE_PADDING = ENABLE_PADDING,
+        U_MULTI_MAC_PCS.ENABLE_LGTH_CHECK = ENABLE_LGTH_CHECK,
+        U_MULTI_MAC_PCS.GBIT_ONLY = GBIT_ONLY,
+        U_MULTI_MAC_PCS.MBIT_ONLY = MBIT_ONLY,
+        U_MULTI_MAC_PCS.REDUCED_CONTROL = REDUCED_CONTROL,
+        U_MULTI_MAC_PCS.CRC32DWIDTH = CRC32DWIDTH,
+        U_MULTI_MAC_PCS.CRC32GENDELAY = CRC32GENDELAY, 
+        U_MULTI_MAC_PCS.CRC32CHECK16BIT = CRC32CHECK16BIT, 
+        U_MULTI_MAC_PCS.CRC32S1L2_EXTERN = CRC32S1L2_EXTERN,
+        U_MULTI_MAC_PCS.ENABLE_SHIFT16 = ENABLE_SHIFT16,   
+        U_MULTI_MAC_PCS.ENABLE_MAC_FLOW_CTRL = ENABLE_MAC_FLOW_CTRL,
+        U_MULTI_MAC_PCS.ENABLE_MAC_TXADDR_SET = ENABLE_MAC_TXADDR_SET,
+        U_MULTI_MAC_PCS.ENABLE_MAC_RX_VLAN = ENABLE_MAC_RX_VLAN,
+        U_MULTI_MAC_PCS.ENABLE_MAC_TX_VLAN = ENABLE_MAC_TX_VLAN,
+        U_MULTI_MAC_PCS.PHY_IDENTIFIER = PHY_IDENTIFIER,
+        U_MULTI_MAC_PCS.DEV_VERSION = DEV_VERSION,
+        U_MULTI_MAC_PCS.ENABLE_SGMII = ENABLE_SGMII,
+        U_MULTI_MAC_PCS.MAX_CHANNELS = MAX_CHANNELS,
+        U_MULTI_MAC_PCS.CHANNEL_WIDTH = CHANNEL_WIDTH,
+	    U_MULTI_MAC_PCS.ENABLE_RX_FIFO_STATUS = ENABLE_RX_FIFO_STATUS,
+	    U_MULTI_MAC_PCS.ENABLE_EXTENDED_STAT_REG = ENABLE_EXTENDED_STAT_REG,
+        U_MULTI_MAC_PCS.ENABLE_CLK_SHARING = ENABLE_CLK_SHARING,
+        U_MULTI_MAC_PCS.ENABLE_REG_SHARING = ENABLE_REG_SHARING;
+
+
+ endmodule // module altera_tse_multi_mac_pcs
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac_pcs_pma.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac_pcs_pma.v
new file mode 100644
index 0000000000000000000000000000000000000000..aa446484af6cb5f34ff895b39a2117fb807c8018
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac_pcs_pma.v
@@ -0,0 +1,6122 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_multi_mac_pcs_pma.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_multi_mac_pcs_pma.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet - 10/100/1000 MAC
+//
+// Description : 
+//
+// Top Level Triple Speed Ethernet(10/100/1000) MAC with MII/GMII
+// interfaces, mdio module and register space (statistic, control and 
+// management)
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation  
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_multi_mac_pcs_pma
+/* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */
+#(
+parameter USE_SYNC_RESET        = 0,                    //  Use Synchronized Reset Inputs
+parameter RESET_LEVEL           = 1'b 1 ,               //  Reset Active Level
+parameter ENABLE_GMII_LOOPBACK  = 1,                    //  GMII_LOOPBACK_ENA : Enable GMII Loopback Logic 
+parameter ENABLE_HD_LOGIC       = 1,                    //  HD_LOGIC_ENA : Enable Half Duplex Logic
+parameter ENABLE_SUP_ADDR       = 1,                    //  SUP_ADDR_ENA : Enable Supplemental Addresses
+parameter ENA_HASH              = 1,                    //  ENA_HASH Enable Hash Table 
+parameter STAT_CNT_ENA          = 1,                    //  STAT_CNT_ENA Enable Statistic Counters
+parameter MDIO_CLK_DIV          = 40 ,                  //  Host Clock Division - MDC Generation
+parameter CORE_VERSION          = 16'h3,                //  ALTERA Core Version
+parameter CUST_VERSION          = 1 ,                   //  Customer Core Version
+parameter REDUCED_INTERFACE_ENA = 0,                    //  Enable the RGMII Interface
+parameter ENABLE_MDIO           = 1,                    //  Enable the MDIO Interface
+parameter ENABLE_MAGIC_DETECT   = 1,                    //  Enable magic packet detection 
+parameter ENABLE_PADDING        = 1,                    //  Enable padding operation.
+parameter ENABLE_LGTH_CHECK     = 1,                    //  Enable frame length checking.
+parameter GBIT_ONLY             = 1,                    //  Enable Gigabit only operation.
+parameter MBIT_ONLY             = 1,                    //  Enable Megabit (10/100) only operation.
+parameter REDUCED_CONTROL       = 0,                    //  Reduced control for MAC LITE
+parameter CRC32DWIDTH           = 4'b 1000,             //  input data width (informal, not for change)
+parameter CRC32GENDELAY         = 3'b 110,              //  when the data from the generator is valid
+parameter CRC32CHECK16BIT       = 1'b 0,                //  1 compare two times 16 bit of the CRC (adds one pipeline step) 
+parameter CRC32S1L2_EXTERN      = 1'b0,                 //  false: merge enable
+parameter ENABLE_SHIFT16        = 0,                    //  Enable byte stuffing at packet header 
+parameter ENABLE_MAC_FLOW_CTRL  = 1'b1,                 //  Option to enable flow control 
+parameter ENABLE_MAC_TXADDR_SET = 1'b1,                 //  Option to enable MAC address insertion onto 'to-be-transmitted' Ethernet frames on MAC TX data path
+parameter ENABLE_MAC_RX_VLAN    = 1'b1,                 //  Option to enable VLAN tagged Ethernet frames on MAC RX data path
+parameter ENABLE_MAC_TX_VLAN    = 1'b1,                 //  Option to enable VLAN tagged Ethernet frames on MAC TX data path
+parameter PHY_IDENTIFIER        = 32'h 00000000,        //  PHY Identifier
+parameter DEV_VERSION           = 16'h 0001 ,           //  Customer Phy's Core Version
+parameter ENABLE_SGMII          = 1,                    //  Enable SGMII logic for synthesis
+parameter ENABLE_CLK_SHARING    = 0,                    //  Option to share clock for multiple channels (Clocks are rate-matched).
+parameter ENABLE_REG_SHARING    = 0,                    //  Option to share register space. Uses certain hard-coded values from input.
+parameter ENABLE_EXTENDED_STAT_REG = 0,                 //  Enable a few extended statistic registers
+parameter MAX_CHANNELS          = 1,                    //  The number of channels in Multi-TSE component
+parameter ENABLE_PKT_CLASS      = 1,                    //  Enable Packet Classification Av-ST Interface
+parameter ENABLE_RX_FIFO_STATUS = 1,                    //  Enable Receive FIFO Almost Full status interface
+parameter CHANNEL_WIDTH         = 1,                    //  The width of the channel interface
+parameter EXPORT_PWRDN          = 1'b0,                 //  Option to export the Alt2gxb powerdown signal
+parameter DEVICE_FAMILY         = "ARRIAGX",            //  The device family the the core is targetted for.
+parameter TRANSCEIVER_OPTION    = 1'b1,                 //  Option to select transceiver block for MAC PCS PMA Instantiation. Valid Values are 0 and 1:  0 - GXB (GIGE Mode) 1 - LVDS I/O
+parameter ENABLE_ALT_RECONFIG   = 0,                    //  Option to have the Alt_Reconfig ports exposed
+parameter SYNCHRONIZER_DEPTH 	= 3,	  	        //  Number of synchronizer
+// Internal parameters
+parameter ADDR_WIDTH = (MAX_CHANNELS > 16)? 13 :
+                       (MAX_CHANNELS > 8)? 12 : 
+                       (MAX_CHANNELS > 4)? 11 : 
+                       (MAX_CHANNELS > 2)? 10 :  
+                       (MAX_CHANNELS > 1)? 9 : 8
+)
+
+
+// Port List
+(
+
+    // RESET / MAC REG IF / MDIO
+    input wire   reset,                      //  Asynchronous Reset - clk Domain
+    input wire   clk,                        //  25MHz Host Interface Clock
+    input wire   read,                       //  Register Read Strobe
+    input wire   write,                      //  Register Write Strobe
+    input wire   [ADDR_WIDTH-1:0] address,   //  Register Address
+    input wire   [31:0] writedata,           //  Write Data for Host Bus
+    output wire  [31:0] readdata,            //  Read Data to Host Bus
+    output wire  waitrequest,                //  Interface Busy
+    output wire  mdc,                        //  2.5MHz Inteface
+    input wire   mdio_in,                    //  MDIO Input
+    output wire  mdio_out,                   //  MDIO Output
+    output wire  mdio_oen,                   //  MDIO Output Enable
+
+    // DEVICE SPECIFIC SIGNALS
+    input wire   gxb_cal_blk_clk,            //  GXB Calibration Clock
+    input wire   ref_clk,                    //  Rference Clock
+
+	// SHARED CLK SIGNALS
+    output wire  mac_rx_clk,                 //  Av-ST Receive Clock
+	output wire  mac_tx_clk,                 //  Av-ST Transmit Clock 
+
+	// SHARED RX STATUS
+	input wire   rx_afull_clk,                             //  Almost full clock
+    input wire   [1:0] rx_afull_data,                      //  Almost full data
+    input wire   rx_afull_valid,                           //  Almost full valid
+    input wire   [CHANNEL_WIDTH-1:0] rx_afull_channel,     //  Almost full channel
+
+
+    // CHANNEL 0
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_0,                    //  Differential Receive Data 
+    output wire  txp_0,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_0,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_0,          //  Powerdown Enable from PCS
+    output wire  led_crs_0,                //  Carrier Sense
+    output wire  led_link_0,               //  Valid Link 
+    output wire  led_col_0,                //  Collision Indication
+    output wire  led_an_0,                 //  Auto-Negotiation Status
+    output wire  led_char_err_0,           //  Character Error
+    output wire  led_disp_err_0,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_0,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_0,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_0,            //  Start of Packet
+    output wire  data_rx_eop_0,            //  End of Packet
+    output wire  [7:0] data_rx_data_0,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_0,    //  Receive packet error
+    output wire  data_rx_valid_0,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_0,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_0,   //  Frame Type Indication
+    output wire  pkt_class_valid_0,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_0,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_0,     //  Data from FIFO transmit
+    input wire   data_tx_valid_0,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_0,            //  Start of Packet
+    input wire   data_tx_eop_0,            //  END of Packet
+    output wire  data_tx_ready_0,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_0,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_0,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_0,               //  Xoff Pause frame generate 
+    input wire   xon_gen_0,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_0,          //  Enable Sleep Mode
+    output wire  magic_wakeup_0,           //  Wake Up Request
+
+
+    // CHANNEL 1
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_1,                    //  Differential Receive Data 
+    output wire  txp_1,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_1,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_1,          //  Powerdown Enable from PCS
+    output wire  led_crs_1,                //  Carrier Sense
+    output wire  led_link_1,               //  Valid Link 
+    output wire  led_col_1,                //  Collision Indication
+    output wire  led_an_1,                 //  Auto-Negotiation Status
+    output wire  led_char_err_1,           //  Character Error
+    output wire  led_disp_err_1,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_1,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_1,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_1,            //  Start of Packet
+    output wire  data_rx_eop_1,            //  End of Packet
+    output wire  [7:0] data_rx_data_1,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_1,    //  Receive packet error
+    output wire  data_rx_valid_1,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_1,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_1,   //  Frame Type Indication
+    output wire  pkt_class_valid_1,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_1,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_1,     //  Data from FIFO transmit
+    input wire   data_tx_valid_1,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_1,            //  Start of Packet
+    input wire   data_tx_eop_1,            //  END of Packet
+    output wire  data_tx_ready_1,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_1,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_1,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_1,               //  Xoff Pause frame generate 
+    input wire   xon_gen_1,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_1,          //  Enable Sleep Mode
+    output wire  magic_wakeup_1,           //  Wake Up Request
+
+
+    // CHANNEL 2
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_2,                    //  Differential Receive Data 
+    output wire  txp_2,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_2,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_2,          //  Powerdown Enable from PCS
+    output wire  led_crs_2,                //  Carrier Sense
+    output wire  led_link_2,               //  Valid Link 
+    output wire  led_col_2,                //  Collision Indication
+    output wire  led_an_2,                 //  Auto-Negotiation Status
+    output wire  led_char_err_2,           //  Character Error
+    output wire  led_disp_err_2,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_2,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_2,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_2,            //  Start of Packet
+    output wire  data_rx_eop_2,            //  End of Packet
+    output wire  [7:0] data_rx_data_2,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_2,    //  Receive packet error
+    output wire  data_rx_valid_2,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_2,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_2,   //  Frame Type Indication
+    output wire  pkt_class_valid_2,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_2,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_2,     //  Data from FIFO transmit
+    input wire   data_tx_valid_2,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_2,            //  Start of Packet
+    input wire   data_tx_eop_2,            //  END of Packet
+    output wire  data_tx_ready_2,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_2,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_2,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_2,               //  Xoff Pause frame generate 
+    input wire   xon_gen_2,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_2,          //  Enable Sleep Mode
+    output wire  magic_wakeup_2,           //  Wake Up Request
+
+
+    // CHANNEL 3
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_3,                    //  Differential Receive Data 
+    output wire  txp_3,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_3,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_3,          //  Powerdown Enable from PCS
+    output wire  led_crs_3,                //  Carrier Sense
+    output wire  led_link_3,               //  Valid Link 
+    output wire  led_col_3,                //  Collision Indication
+    output wire  led_an_3,                 //  Auto-Negotiation Status
+    output wire  led_char_err_3,           //  Character Error
+    output wire  led_disp_err_3,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_3,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_3,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_3,            //  Start of Packet
+    output wire  data_rx_eop_3,            //  End of Packet
+    output wire  [7:0] data_rx_data_3,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_3,    //  Receive packet error
+    output wire  data_rx_valid_3,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_3,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_3,   //  Frame Type Indication
+    output wire  pkt_class_valid_3,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_3,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_3,     //  Data from FIFO transmit
+    input wire   data_tx_valid_3,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_3,            //  Start of Packet
+    input wire   data_tx_eop_3,            //  END of Packet
+    output wire  data_tx_ready_3,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_3,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_3,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_3,               //  Xoff Pause frame generate 
+    input wire   xon_gen_3,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_3,          //  Enable Sleep Mode
+    output wire  magic_wakeup_3,           //  Wake Up Request
+
+
+    // CHANNEL 4
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_4,                    //  Differential Receive Data 
+    output wire  txp_4,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_4,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_4,          //  Powerdown Enable from PCS
+    output wire  led_crs_4,                //  Carrier Sense
+    output wire  led_link_4,               //  Valid Link 
+    output wire  led_col_4,                //  Collision Indication
+    output wire  led_an_4,                 //  Auto-Negotiation Status
+    output wire  led_char_err_4,           //  Character Error
+    output wire  led_disp_err_4,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_4,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_4,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_4,            //  Start of Packet
+    output wire  data_rx_eop_4,            //  End of Packet
+    output wire  [7:0] data_rx_data_4,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_4,    //  Receive packet error
+    output wire  data_rx_valid_4,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_4,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_4,   //  Frame Type Indication
+    output wire  pkt_class_valid_4,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_4,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_4,     //  Data from FIFO transmit
+    input wire   data_tx_valid_4,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_4,            //  Start of Packet
+    input wire   data_tx_eop_4,            //  END of Packet
+    output wire  data_tx_ready_4,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_4,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_4,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_4,               //  Xoff Pause frame generate 
+    input wire   xon_gen_4,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_4,          //  Enable Sleep Mode
+    output wire  magic_wakeup_4,           //  Wake Up Request
+
+
+    // CHANNEL 5
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_5,                    //  Differential Receive Data 
+    output wire  txp_5,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_5,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_5,          //  Powerdown Enable from PCS
+    output wire  led_crs_5,                //  Carrier Sense
+    output wire  led_link_5,               //  Valid Link 
+    output wire  led_col_5,                //  Collision Indication
+    output wire  led_an_5,                 //  Auto-Negotiation Status
+    output wire  led_char_err_5,           //  Character Error
+    output wire  led_disp_err_5,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_5,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_5,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_5,            //  Start of Packet
+    output wire  data_rx_eop_5,            //  End of Packet
+    output wire  [7:0] data_rx_data_5,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_5,    //  Receive packet error
+    output wire  data_rx_valid_5,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_5,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_5,   //  Frame Type Indication
+    output wire  pkt_class_valid_5,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_5,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_5,     //  Data from FIFO transmit
+    input wire   data_tx_valid_5,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_5,            //  Start of Packet
+    input wire   data_tx_eop_5,            //  END of Packet
+    output wire  data_tx_ready_5,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_5,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_5,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_5,               //  Xoff Pause frame generate 
+    input wire   xon_gen_5,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_5,          //  Enable Sleep Mode
+    output wire  magic_wakeup_5,           //  Wake Up Request
+
+
+    // CHANNEL 6
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_6,                    //  Differential Receive Data 
+    output wire  txp_6,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_6,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_6,          //  Powerdown Enable from PCS
+    output wire  led_crs_6,                //  Carrier Sense
+    output wire  led_link_6,               //  Valid Link 
+    output wire  led_col_6,                //  Collision Indication
+    output wire  led_an_6,                 //  Auto-Negotiation Status
+    output wire  led_char_err_6,           //  Character Error
+    output wire  led_disp_err_6,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_6,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_6,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_6,            //  Start of Packet
+    output wire  data_rx_eop_6,            //  End of Packet
+    output wire  [7:0] data_rx_data_6,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_6,    //  Receive packet error
+    output wire  data_rx_valid_6,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_6,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_6,   //  Frame Type Indication
+    output wire  pkt_class_valid_6,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_6,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_6,     //  Data from FIFO transmit
+    input wire   data_tx_valid_6,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_6,            //  Start of Packet
+    input wire   data_tx_eop_6,            //  END of Packet
+    output wire  data_tx_ready_6,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_6,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_6,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_6,               //  Xoff Pause frame generate 
+    input wire   xon_gen_6,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_6,          //  Enable Sleep Mode
+    output wire  magic_wakeup_6,           //  Wake Up Request
+
+
+    // CHANNEL 7
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_7,                    //  Differential Receive Data 
+    output wire  txp_7,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_7,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_7,          //  Powerdown Enable from PCS
+    output wire  led_crs_7,                //  Carrier Sense
+    output wire  led_link_7,               //  Valid Link 
+    output wire  led_col_7,                //  Collision Indication
+    output wire  led_an_7,                 //  Auto-Negotiation Status
+    output wire  led_char_err_7,           //  Character Error
+    output wire  led_disp_err_7,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_7,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_7,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_7,            //  Start of Packet
+    output wire  data_rx_eop_7,            //  End of Packet
+    output wire  [7:0] data_rx_data_7,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_7,    //  Receive packet error
+    output wire  data_rx_valid_7,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_7,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_7,   //  Frame Type Indication
+    output wire  pkt_class_valid_7,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_7,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_7,     //  Data from FIFO transmit
+    input wire   data_tx_valid_7,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_7,            //  Start of Packet
+    input wire   data_tx_eop_7,            //  END of Packet
+    output wire  data_tx_ready_7,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_7,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_7,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_7,               //  Xoff Pause frame generate 
+    input wire   xon_gen_7,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_7,          //  Enable Sleep Mode
+    output wire  magic_wakeup_7,           //  Wake Up Request
+
+
+    // CHANNEL 8
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_8,                    //  Differential Receive Data 
+    output wire  txp_8,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_8,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_8,          //  Powerdown Enable from PCS
+    output wire  led_crs_8,                //  Carrier Sense
+    output wire  led_link_8,               //  Valid Link 
+    output wire  led_col_8,                //  Collision Indication
+    output wire  led_an_8,                 //  Auto-Negotiation Status
+    output wire  led_char_err_8,           //  Character Error
+    output wire  led_disp_err_8,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_8,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_8,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_8,            //  Start of Packet
+    output wire  data_rx_eop_8,            //  End of Packet
+    output wire  [7:0] data_rx_data_8,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_8,    //  Receive packet error
+    output wire  data_rx_valid_8,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_8,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_8,   //  Frame Type Indication
+    output wire  pkt_class_valid_8,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_8,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_8,     //  Data from FIFO transmit
+    input wire   data_tx_valid_8,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_8,            //  Start of Packet
+    input wire   data_tx_eop_8,            //  END of Packet
+    output wire  data_tx_ready_8,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_8,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_8,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_8,               //  Xoff Pause frame generate 
+    input wire   xon_gen_8,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_8,          //  Enable Sleep Mode
+    output wire  magic_wakeup_8,           //  Wake Up Request
+
+
+    // CHANNEL 9
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_9,                    //  Differential Receive Data 
+    output wire  txp_9,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_9,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_9,          //  Powerdown Enable from PCS
+    output wire  led_crs_9,                //  Carrier Sense
+    output wire  led_link_9,               //  Valid Link 
+    output wire  led_col_9,                //  Collision Indication
+    output wire  led_an_9,                 //  Auto-Negotiation Status
+    output wire  led_char_err_9,           //  Character Error
+    output wire  led_disp_err_9,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_9,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_9,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_9,            //  Start of Packet
+    output wire  data_rx_eop_9,            //  End of Packet
+    output wire  [7:0] data_rx_data_9,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_9,    //  Receive packet error
+    output wire  data_rx_valid_9,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_9,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_9,   //  Frame Type Indication
+    output wire  pkt_class_valid_9,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_9,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_9,     //  Data from FIFO transmit
+    input wire   data_tx_valid_9,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_9,            //  Start of Packet
+    input wire   data_tx_eop_9,            //  END of Packet
+    output wire  data_tx_ready_9,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_9,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_9,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_9,               //  Xoff Pause frame generate 
+    input wire   xon_gen_9,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_9,          //  Enable Sleep Mode
+    output wire  magic_wakeup_9,           //  Wake Up Request
+
+
+    // CHANNEL 10
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_10,                    //  Differential Receive Data 
+    output wire  txp_10,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_10,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_10,          //  Powerdown Enable from PCS
+    output wire  led_crs_10,                //  Carrier Sense
+    output wire  led_link_10,               //  Valid Link 
+    output wire  led_col_10,                //  Collision Indication
+    output wire  led_an_10,                 //  Auto-Negotiation Status
+    output wire  led_char_err_10,           //  Character Error
+    output wire  led_disp_err_10,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_10,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_10,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_10,            //  Start of Packet
+    output wire  data_rx_eop_10,            //  End of Packet
+    output wire  [7:0] data_rx_data_10,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_10,    //  Receive packet error
+    output wire  data_rx_valid_10,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_10,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_10,   //  Frame Type Indication
+    output wire  pkt_class_valid_10,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_10,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_10,     //  Data from FIFO transmit
+    input wire   data_tx_valid_10,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_10,            //  Start of Packet
+    input wire   data_tx_eop_10,            //  END of Packet
+    output wire  data_tx_ready_10,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_10,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_10,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_10,               //  Xoff Pause frame generate 
+    input wire   xon_gen_10,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_10,          //  Enable Sleep Mode
+    output wire  magic_wakeup_10,           //  Wake Up Request
+
+
+    // CHANNEL 11
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_11,                    //  Differential Receive Data 
+    output wire  txp_11,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_11,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_11,          //  Powerdown Enable from PCS
+    output wire  led_crs_11,                //  Carrier Sense
+    output wire  led_link_11,               //  Valid Link 
+    output wire  led_col_11,                //  Collision Indication
+    output wire  led_an_11,                 //  Auto-Negotiation Status
+    output wire  led_char_err_11,           //  Character Error
+    output wire  led_disp_err_11,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_11,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_11,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_11,            //  Start of Packet
+    output wire  data_rx_eop_11,            //  End of Packet
+    output wire  [7:0] data_rx_data_11,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_11,    //  Receive packet error
+    output wire  data_rx_valid_11,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_11,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_11,   //  Frame Type Indication
+    output wire  pkt_class_valid_11,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_11,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_11,     //  Data from FIFO transmit
+    input wire   data_tx_valid_11,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_11,            //  Start of Packet
+    input wire   data_tx_eop_11,            //  END of Packet
+    output wire  data_tx_ready_11,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_11,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_11,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_11,               //  Xoff Pause frame generate 
+    input wire   xon_gen_11,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_11,          //  Enable Sleep Mode
+    output wire  magic_wakeup_11,           //  Wake Up Request
+
+
+    // CHANNEL 12
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_12,                    //  Differential Receive Data 
+    output wire  txp_12,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_12,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_12,          //  Powerdown Enable from PCS
+    output wire  led_crs_12,                //  Carrier Sense
+    output wire  led_link_12,               //  Valid Link 
+    output wire  led_col_12,                //  Collision Indication
+    output wire  led_an_12,                 //  Auto-Negotiation Status
+    output wire  led_char_err_12,           //  Character Error
+    output wire  led_disp_err_12,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_12,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_12,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_12,            //  Start of Packet
+    output wire  data_rx_eop_12,            //  End of Packet
+    output wire  [7:0] data_rx_data_12,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_12,    //  Receive packet error
+    output wire  data_rx_valid_12,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_12,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_12,   //  Frame Type Indication
+    output wire  pkt_class_valid_12,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_12,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_12,     //  Data from FIFO transmit
+    input wire   data_tx_valid_12,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_12,            //  Start of Packet
+    input wire   data_tx_eop_12,            //  END of Packet
+    output wire  data_tx_ready_12,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_12,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_12,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_12,               //  Xoff Pause frame generate 
+    input wire   xon_gen_12,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_12,          //  Enable Sleep Mode
+    output wire  magic_wakeup_12,           //  Wake Up Request
+
+
+    // CHANNEL 13
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_13,                    //  Differential Receive Data 
+    output wire  txp_13,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_13,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_13,          //  Powerdown Enable from PCS
+    output wire  led_crs_13,                //  Carrier Sense
+    output wire  led_link_13,               //  Valid Link 
+    output wire  led_col_13,                //  Collision Indication
+    output wire  led_an_13,                 //  Auto-Negotiation Status
+    output wire  led_char_err_13,           //  Character Error
+    output wire  led_disp_err_13,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_13,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_13,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_13,            //  Start of Packet
+    output wire  data_rx_eop_13,            //  End of Packet
+    output wire  [7:0] data_rx_data_13,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_13,    //  Receive packet error
+    output wire  data_rx_valid_13,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_13,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_13,   //  Frame Type Indication
+    output wire  pkt_class_valid_13,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_13,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_13,     //  Data from FIFO transmit
+    input wire   data_tx_valid_13,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_13,            //  Start of Packet
+    input wire   data_tx_eop_13,            //  END of Packet
+    output wire  data_tx_ready_13,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_13,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_13,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_13,               //  Xoff Pause frame generate 
+    input wire   xon_gen_13,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_13,          //  Enable Sleep Mode
+    output wire  magic_wakeup_13,           //  Wake Up Request
+
+
+    // CHANNEL 14
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_14,                    //  Differential Receive Data 
+    output wire  txp_14,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_14,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_14,          //  Powerdown Enable from PCS
+    output wire  led_crs_14,                //  Carrier Sense
+    output wire  led_link_14,               //  Valid Link 
+    output wire  led_col_14,                //  Collision Indication
+    output wire  led_an_14,                 //  Auto-Negotiation Status
+    output wire  led_char_err_14,           //  Character Error
+    output wire  led_disp_err_14,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_14,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_14,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_14,            //  Start of Packet
+    output wire  data_rx_eop_14,            //  End of Packet
+    output wire  [7:0] data_rx_data_14,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_14,    //  Receive packet error
+    output wire  data_rx_valid_14,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_14,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_14,   //  Frame Type Indication
+    output wire  pkt_class_valid_14,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_14,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_14,     //  Data from FIFO transmit
+    input wire   data_tx_valid_14,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_14,            //  Start of Packet
+    input wire   data_tx_eop_14,            //  END of Packet
+    output wire  data_tx_ready_14,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_14,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_14,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_14,               //  Xoff Pause frame generate 
+    input wire   xon_gen_14,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_14,          //  Enable Sleep Mode
+    output wire  magic_wakeup_14,           //  Wake Up Request
+
+
+    // CHANNEL 15
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_15,                    //  Differential Receive Data 
+    output wire  txp_15,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_15,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_15,          //  Powerdown Enable from PCS
+    output wire  led_crs_15,                //  Carrier Sense
+    output wire  led_link_15,               //  Valid Link 
+    output wire  led_col_15,                //  Collision Indication
+    output wire  led_an_15,                 //  Auto-Negotiation Status
+    output wire  led_char_err_15,           //  Character Error
+    output wire  led_disp_err_15,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_15,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_15,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_15,            //  Start of Packet
+    output wire  data_rx_eop_15,            //  End of Packet
+    output wire  [7:0] data_rx_data_15,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_15,    //  Receive packet error
+    output wire  data_rx_valid_15,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_15,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_15,   //  Frame Type Indication
+    output wire  pkt_class_valid_15,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_15,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_15,     //  Data from FIFO transmit
+    input wire   data_tx_valid_15,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_15,            //  Start of Packet
+    input wire   data_tx_eop_15,            //  END of Packet
+    output wire  data_tx_ready_15,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_15,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_15,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_15,               //  Xoff Pause frame generate 
+    input wire   xon_gen_15,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_15,          //  Enable Sleep Mode
+    output wire  magic_wakeup_15,           //  Wake Up Request
+
+
+    // CHANNEL 16
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_16,                    //  Differential Receive Data 
+    output wire  txp_16,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_16,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_16,          //  Powerdown Enable from PCS
+    output wire  led_crs_16,                //  Carrier Sense
+    output wire  led_link_16,               //  Valid Link 
+    output wire  led_col_16,                //  Collision Indication
+    output wire  led_an_16,                 //  Auto-Negotiation Status
+    output wire  led_char_err_16,           //  Character Error
+    output wire  led_disp_err_16,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_16,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_16,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_16,            //  Start of Packet
+    output wire  data_rx_eop_16,            //  End of Packet
+    output wire  [7:0] data_rx_data_16,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_16,    //  Receive packet error
+    output wire  data_rx_valid_16,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_16,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_16,   //  Frame Type Indication
+    output wire  pkt_class_valid_16,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_16,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_16,     //  Data from FIFO transmit
+    input wire   data_tx_valid_16,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_16,            //  Start of Packet
+    input wire   data_tx_eop_16,            //  END of Packet
+    output wire  data_tx_ready_16,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_16,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_16,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_16,               //  Xoff Pause frame generate 
+    input wire   xon_gen_16,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_16,          //  Enable Sleep Mode
+    output wire  magic_wakeup_16,           //  Wake Up Request
+
+
+    // CHANNEL 17
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_17,                    //  Differential Receive Data 
+    output wire  txp_17,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_17,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_17,          //  Powerdown Enable from PCS
+    output wire  led_crs_17,                //  Carrier Sense
+    output wire  led_link_17,               //  Valid Link 
+    output wire  led_col_17,                //  Collision Indication
+    output wire  led_an_17,                 //  Auto-Negotiation Status
+    output wire  led_char_err_17,           //  Character Error
+    output wire  led_disp_err_17,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_17,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_17,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_17,            //  Start of Packet
+    output wire  data_rx_eop_17,            //  End of Packet
+    output wire  [7:0] data_rx_data_17,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_17,    //  Receive packet error
+    output wire  data_rx_valid_17,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_17,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_17,   //  Frame Type Indication
+    output wire  pkt_class_valid_17,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_17,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_17,     //  Data from FIFO transmit
+    input wire   data_tx_valid_17,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_17,            //  Start of Packet
+    input wire   data_tx_eop_17,            //  END of Packet
+    output wire  data_tx_ready_17,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_17,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_17,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_17,               //  Xoff Pause frame generate 
+    input wire   xon_gen_17,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_17,          //  Enable Sleep Mode
+    output wire  magic_wakeup_17,           //  Wake Up Request
+
+
+    // CHANNEL 18
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_18,                    //  Differential Receive Data 
+    output wire  txp_18,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_18,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_18,          //  Powerdown Enable from PCS
+    output wire  led_crs_18,                //  Carrier Sense
+    output wire  led_link_18,               //  Valid Link 
+    output wire  led_col_18,                //  Collision Indication
+    output wire  led_an_18,                 //  Auto-Negotiation Status
+    output wire  led_char_err_18,           //  Character Error
+    output wire  led_disp_err_18,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_18,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_18,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_18,            //  Start of Packet
+    output wire  data_rx_eop_18,            //  End of Packet
+    output wire  [7:0] data_rx_data_18,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_18,    //  Receive packet error
+    output wire  data_rx_valid_18,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_18,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_18,   //  Frame Type Indication
+    output wire  pkt_class_valid_18,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_18,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_18,     //  Data from FIFO transmit
+    input wire   data_tx_valid_18,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_18,            //  Start of Packet
+    input wire   data_tx_eop_18,            //  END of Packet
+    output wire  data_tx_ready_18,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_18,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_18,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_18,               //  Xoff Pause frame generate 
+    input wire   xon_gen_18,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_18,          //  Enable Sleep Mode
+    output wire  magic_wakeup_18,           //  Wake Up Request
+
+
+    // CHANNEL 19
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_19,                    //  Differential Receive Data 
+    output wire  txp_19,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_19,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_19,          //  Powerdown Enable from PCS
+    output wire  led_crs_19,                //  Carrier Sense
+    output wire  led_link_19,               //  Valid Link 
+    output wire  led_col_19,                //  Collision Indication
+    output wire  led_an_19,                 //  Auto-Negotiation Status
+    output wire  led_char_err_19,           //  Character Error
+    output wire  led_disp_err_19,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_19,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_19,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_19,            //  Start of Packet
+    output wire  data_rx_eop_19,            //  End of Packet
+    output wire  [7:0] data_rx_data_19,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_19,    //  Receive packet error
+    output wire  data_rx_valid_19,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_19,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_19,   //  Frame Type Indication
+    output wire  pkt_class_valid_19,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_19,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_19,     //  Data from FIFO transmit
+    input wire   data_tx_valid_19,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_19,            //  Start of Packet
+    input wire   data_tx_eop_19,            //  END of Packet
+    output wire  data_tx_ready_19,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_19,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_19,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_19,               //  Xoff Pause frame generate 
+    input wire   xon_gen_19,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_19,          //  Enable Sleep Mode
+    output wire  magic_wakeup_19,           //  Wake Up Request
+
+
+    // CHANNEL 20
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_20,                    //  Differential Receive Data 
+    output wire  txp_20,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_20,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_20,          //  Powerdown Enable from PCS
+    output wire  led_crs_20,                //  Carrier Sense
+    output wire  led_link_20,               //  Valid Link 
+    output wire  led_col_20,                //  Collision Indication
+    output wire  led_an_20,                 //  Auto-Negotiation Status
+    output wire  led_char_err_20,           //  Character Error
+    output wire  led_disp_err_20,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_20,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_20,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_20,            //  Start of Packet
+    output wire  data_rx_eop_20,            //  End of Packet
+    output wire  [7:0] data_rx_data_20,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_20,    //  Receive packet error
+    output wire  data_rx_valid_20,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_20,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_20,   //  Frame Type Indication
+    output wire  pkt_class_valid_20,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_20,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_20,     //  Data from FIFO transmit
+    input wire   data_tx_valid_20,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_20,            //  Start of Packet
+    input wire   data_tx_eop_20,            //  END of Packet
+    output wire  data_tx_ready_20,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_20,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_20,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_20,               //  Xoff Pause frame generate 
+    input wire   xon_gen_20,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_20,          //  Enable Sleep Mode
+    output wire  magic_wakeup_20,           //  Wake Up Request
+
+
+    // CHANNEL 21
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_21,                    //  Differential Receive Data 
+    output wire  txp_21,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_21,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_21,          //  Powerdown Enable from PCS
+    output wire  led_crs_21,                //  Carrier Sense
+    output wire  led_link_21,               //  Valid Link 
+    output wire  led_col_21,                //  Collision Indication
+    output wire  led_an_21,                 //  Auto-Negotiation Status
+    output wire  led_char_err_21,           //  Character Error
+    output wire  led_disp_err_21,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_21,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_21,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_21,            //  Start of Packet
+    output wire  data_rx_eop_21,            //  End of Packet
+    output wire  [7:0] data_rx_data_21,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_21,    //  Receive packet error
+    output wire  data_rx_valid_21,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_21,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_21,   //  Frame Type Indication
+    output wire  pkt_class_valid_21,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_21,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_21,     //  Data from FIFO transmit
+    input wire   data_tx_valid_21,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_21,            //  Start of Packet
+    input wire   data_tx_eop_21,            //  END of Packet
+    output wire  data_tx_ready_21,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_21,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_21,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_21,               //  Xoff Pause frame generate 
+    input wire   xon_gen_21,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_21,          //  Enable Sleep Mode
+    output wire  magic_wakeup_21,           //  Wake Up Request
+
+
+    // CHANNEL 22
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_22,                    //  Differential Receive Data 
+    output wire  txp_22,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_22,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_22,          //  Powerdown Enable from PCS
+    output wire  led_crs_22,                //  Carrier Sense
+    output wire  led_link_22,               //  Valid Link 
+    output wire  led_col_22,                //  Collision Indication
+    output wire  led_an_22,                 //  Auto-Negotiation Status
+    output wire  led_char_err_22,           //  Character Error
+    output wire  led_disp_err_22,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_22,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_22,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_22,            //  Start of Packet
+    output wire  data_rx_eop_22,            //  End of Packet
+    output wire  [7:0] data_rx_data_22,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_22,    //  Receive packet error
+    output wire  data_rx_valid_22,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_22,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_22,   //  Frame Type Indication
+    output wire  pkt_class_valid_22,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_22,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_22,     //  Data from FIFO transmit
+    input wire   data_tx_valid_22,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_22,            //  Start of Packet
+    input wire   data_tx_eop_22,            //  END of Packet
+    output wire  data_tx_ready_22,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_22,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_22,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_22,               //  Xoff Pause frame generate 
+    input wire   xon_gen_22,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_22,          //  Enable Sleep Mode
+    output wire  magic_wakeup_22,           //  Wake Up Request
+
+
+    // CHANNEL 23
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_23,                    //  Differential Receive Data 
+    output wire  txp_23,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_23,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_23,          //  Powerdown Enable from PCS
+    output wire  led_crs_23,                //  Carrier Sense
+    output wire  led_link_23,               //  Valid Link 
+    output wire  led_col_23,                //  Collision Indication
+    output wire  led_an_23,                 //  Auto-Negotiation Status
+    output wire  led_char_err_23,           //  Character Error
+    output wire  led_disp_err_23,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_23,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_23,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_23,            //  Start of Packet
+    output wire  data_rx_eop_23,            //  End of Packet
+    output wire  [7:0] data_rx_data_23,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_23,    //  Receive packet error
+    output wire  data_rx_valid_23,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_23,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_23,   //  Frame Type Indication
+    output wire  pkt_class_valid_23,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_23,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_23,     //  Data from FIFO transmit
+    input wire   data_tx_valid_23,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_23,            //  Start of Packet
+    input wire   data_tx_eop_23,            //  END of Packet
+    output wire  data_tx_ready_23,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_23,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_23,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_23,               //  Xoff Pause frame generate 
+    input wire   xon_gen_23,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_23,          //  Enable Sleep Mode
+    output wire  magic_wakeup_23);          //  Wake Up Request
+
+
+wire    MAC_PCS_reset;
+wire    [23:0] pcs_pwrdn_out_sig;
+wire    [23:0] gxb_pwrdn_in_sig;
+
+reg     pma_digital_rst0;
+reg     pma_digital_rst1;
+reg     pma_digital_rst2;
+wire    [9:0] tbi_rx_d_lvds_0;
+reg     [9:0] tbi_rx_d_flip_0;
+reg     [9:0] tbi_tx_d_flip_0;
+wire    [9:0] tbi_rx_d_0;
+wire    [9:0] tbi_tx_d_0;
+wire    [9:0] tbi_rx_d_lvds_1;
+reg     [9:0] tbi_rx_d_flip_1;
+reg     [9:0] tbi_tx_d_flip_1;
+wire    [9:0] tbi_rx_d_1;
+wire    [9:0] tbi_tx_d_1;
+wire    [9:0] tbi_rx_d_lvds_2;
+reg     [9:0] tbi_rx_d_flip_2;
+reg     [9:0] tbi_tx_d_flip_2;
+wire    [9:0] tbi_rx_d_2;
+wire    [9:0] tbi_tx_d_2;
+wire    [9:0] tbi_rx_d_lvds_3;
+reg     [9:0] tbi_rx_d_flip_3;
+reg     [9:0] tbi_tx_d_flip_3;
+wire    [9:0] tbi_rx_d_3;
+wire    [9:0] tbi_tx_d_3;
+wire    [9:0] tbi_rx_d_lvds_4;
+reg     [9:0] tbi_rx_d_flip_4;
+reg     [9:0] tbi_tx_d_flip_4;
+wire    [9:0] tbi_rx_d_4;
+wire    [9:0] tbi_tx_d_4;
+wire    [9:0] tbi_rx_d_lvds_5;
+reg     [9:0] tbi_rx_d_flip_5;
+reg     [9:0] tbi_tx_d_flip_5;
+wire    [9:0] tbi_rx_d_5;
+wire    [9:0] tbi_tx_d_5;
+wire    [9:0] tbi_rx_d_lvds_6;
+reg     [9:0] tbi_rx_d_flip_6;
+reg     [9:0] tbi_tx_d_flip_6;
+wire    [9:0] tbi_rx_d_6;
+wire    [9:0] tbi_tx_d_6;
+wire    [9:0] tbi_rx_d_lvds_7;
+reg     [9:0] tbi_rx_d_flip_7;
+reg     [9:0] tbi_tx_d_flip_7;
+wire    [9:0] tbi_rx_d_7;
+wire    [9:0] tbi_tx_d_7;
+wire    [9:0] tbi_rx_d_lvds_8;
+reg     [9:0] tbi_rx_d_flip_8;
+reg     [9:0] tbi_tx_d_flip_8;
+wire    [9:0] tbi_rx_d_8;
+wire    [9:0] tbi_tx_d_8;
+wire    [9:0] tbi_rx_d_lvds_9;
+reg     [9:0] tbi_rx_d_flip_9;
+reg     [9:0] tbi_tx_d_flip_9;
+wire    [9:0] tbi_rx_d_9;
+wire    [9:0] tbi_tx_d_9;
+wire    [9:0] tbi_rx_d_lvds_10;
+reg     [9:0] tbi_rx_d_flip_10;
+reg     [9:0] tbi_tx_d_flip_10;
+wire    [9:0] tbi_rx_d_10;
+wire    [9:0] tbi_tx_d_10;
+wire    [9:0] tbi_rx_d_lvds_11;
+reg     [9:0] tbi_rx_d_flip_11;
+reg     [9:0] tbi_tx_d_flip_11;
+wire    [9:0] tbi_rx_d_11;
+wire    [9:0] tbi_tx_d_11;
+wire    [9:0] tbi_rx_d_lvds_12;
+reg     [9:0] tbi_rx_d_flip_12;
+reg     [9:0] tbi_tx_d_flip_12;
+wire    [9:0] tbi_rx_d_12;
+wire    [9:0] tbi_tx_d_12;
+wire    [9:0] tbi_rx_d_lvds_13;
+reg     [9:0] tbi_rx_d_flip_13;
+reg     [9:0] tbi_tx_d_flip_13;
+wire    [9:0] tbi_rx_d_13;
+wire    [9:0] tbi_tx_d_13;
+wire    [9:0] tbi_rx_d_lvds_14;
+reg     [9:0] tbi_rx_d_flip_14;
+reg     [9:0] tbi_tx_d_flip_14;
+wire    [9:0] tbi_rx_d_14;
+wire    [9:0] tbi_tx_d_14;
+wire    [9:0] tbi_rx_d_lvds_15;
+reg     [9:0] tbi_rx_d_flip_15;
+reg     [9:0] tbi_tx_d_flip_15;
+wire    [9:0] tbi_rx_d_15;
+wire    [9:0] tbi_tx_d_15;
+wire    [9:0] tbi_rx_d_lvds_16;
+reg     [9:0] tbi_rx_d_flip_16;
+reg     [9:0] tbi_tx_d_flip_16;
+wire    [9:0] tbi_rx_d_16;
+wire    [9:0] tbi_tx_d_16;
+wire    [9:0] tbi_rx_d_lvds_17;
+reg     [9:0] tbi_rx_d_flip_17;
+reg     [9:0] tbi_tx_d_flip_17;
+wire    [9:0] tbi_rx_d_17;
+wire    [9:0] tbi_tx_d_17;
+wire    [9:0] tbi_rx_d_lvds_18;
+reg     [9:0] tbi_rx_d_flip_18;
+reg     [9:0] tbi_tx_d_flip_18;
+wire    [9:0] tbi_rx_d_18;
+wire    [9:0] tbi_tx_d_18;
+wire    [9:0] tbi_rx_d_lvds_19;
+reg     [9:0] tbi_rx_d_flip_19;
+reg     [9:0] tbi_tx_d_flip_19;
+wire    [9:0] tbi_rx_d_19;
+wire    [9:0] tbi_tx_d_19;
+wire    [9:0] tbi_rx_d_lvds_20;
+reg     [9:0] tbi_rx_d_flip_20;
+reg     [9:0] tbi_tx_d_flip_20;
+wire    [9:0] tbi_rx_d_20;
+wire    [9:0] tbi_tx_d_20;
+wire    [9:0] tbi_rx_d_lvds_21;
+reg     [9:0] tbi_rx_d_flip_21;
+reg     [9:0] tbi_tx_d_flip_21;
+wire    [9:0] tbi_rx_d_21;
+wire    [9:0] tbi_tx_d_21;
+wire    [9:0] tbi_rx_d_lvds_22;
+reg     [9:0] tbi_rx_d_flip_22;
+reg     [9:0] tbi_tx_d_flip_22;
+wire    [9:0] tbi_rx_d_22;
+wire    [9:0] tbi_tx_d_22;
+wire    [9:0] tbi_rx_d_lvds_23;
+reg     [9:0] tbi_rx_d_flip_23;
+reg     [9:0] tbi_tx_d_flip_23;
+wire    [9:0] tbi_rx_d_23;
+wire    [9:0] tbi_tx_d_23;
+
+wire    sd_loopback_0;
+wire    sd_loopback_1;
+wire    sd_loopback_2;
+wire    sd_loopback_3;
+wire    sd_loopback_4;
+wire    sd_loopback_5;
+wire    sd_loopback_6;
+wire    sd_loopback_7;
+wire    sd_loopback_8;
+wire    sd_loopback_9;
+wire    sd_loopback_10;
+wire    sd_loopback_11;
+wire    sd_loopback_12;
+wire    sd_loopback_13;
+wire    sd_loopback_14;
+wire    sd_loopback_15;
+wire    sd_loopback_16;
+wire    sd_loopback_17;
+wire    sd_loopback_18;
+wire    sd_loopback_19;
+wire    sd_loopback_20;
+wire    sd_loopback_21;
+wire    sd_loopback_22;
+wire    sd_loopback_23;
+
+wire    tbi_rx_clk_0;
+wire    tbi_rx_clk_1;
+wire    tbi_rx_clk_2;
+wire    tbi_rx_clk_3;
+wire    tbi_rx_clk_4;
+wire    tbi_rx_clk_5;
+wire    tbi_rx_clk_6;
+wire    tbi_rx_clk_7;
+wire    tbi_rx_clk_8;
+wire    tbi_rx_clk_9;
+wire    tbi_rx_clk_10;
+wire    tbi_rx_clk_11;
+wire    tbi_rx_clk_12;
+wire    tbi_rx_clk_13;
+wire    tbi_rx_clk_14;
+wire    tbi_rx_clk_15;
+wire    tbi_rx_clk_16;
+wire    tbi_rx_clk_17;
+wire    tbi_rx_clk_18;
+wire    tbi_rx_clk_19;
+wire    tbi_rx_clk_20;
+wire    tbi_rx_clk_21;
+wire    tbi_rx_clk_22;
+wire    tbi_rx_clk_23;
+
+wire    tbi_tx_clk_0;
+wire    tbi_tx_clk_1;
+wire    tbi_tx_clk_2;
+wire    tbi_tx_clk_3;
+wire    tbi_tx_clk_4;
+wire    tbi_tx_clk_5;
+wire    tbi_tx_clk_6;
+wire    tbi_tx_clk_7;
+wire    tbi_tx_clk_8;
+wire    tbi_tx_clk_9;
+wire    tbi_tx_clk_10;
+wire    tbi_tx_clk_11;
+wire    tbi_tx_clk_12;
+wire    tbi_tx_clk_13;
+wire    tbi_tx_clk_14;
+wire    tbi_tx_clk_15;
+wire    tbi_tx_clk_16;
+wire    tbi_tx_clk_17;
+wire    tbi_tx_clk_18;
+wire    tbi_tx_clk_19;
+wire    tbi_tx_clk_20;
+wire    tbi_tx_clk_21;
+wire    tbi_tx_clk_22;
+wire    tbi_tx_clk_23;
+
+
+    // Reset logic used to reset the PMA blocks
+    // ----------------------------------------
+    always @(posedge clk or posedge reset)
+      begin
+        if (reset == 1)
+          begin
+            pma_digital_rst0 <= reset;
+            pma_digital_rst1 <= reset;
+            pma_digital_rst2 <= reset;
+          end
+        else 
+          begin
+            pma_digital_rst0 <= reset;
+            pma_digital_rst1 <= pma_digital_rst0;
+            pma_digital_rst2 <= pma_digital_rst1;
+          end
+      end
+
+
+    //  Assign the digital reset of the PMA to the MAC_PCS logic
+    //  --------------------------------------------------------
+    assign MAC_PCS_reset = pma_digital_rst2;
+
+
+    // Instantiation of the MAC_PCS core that connects to a PMA
+    // --------------------------------------------------------
+
+    altera_tse_top_multi_mac_pcs U_MULTI_MAC_PCS(
+
+        .reset(reset),                            //INPUT  : ASYNCHRONOUS RESET - clk DOMAIN
+        .clk(clk),                                //INPUT  : CLOCK
+        .read(read),                              //INPUT  : REGISTER READ TRANSACTION
+        .ref_clk(ref_clk),                        //INPUT  : REFERENCE CLOCK 
+        .write(write),                            //INPUT  : REGISTER WRITE TRANSACTION
+        .address(address),                        //INPUT  : REGISTER ADDRESS
+        .writedata(writedata),                    //INPUT  : REGISTER WRITE DATA
+        .readdata(readdata),                      //OUTPUT : REGISTER READ DATA
+        .waitrequest(waitrequest),                //OUTPUT : TRANSACTION BUSY, ACTIVE LOW
+        .mdc(mdc),                                //OUTPUT : MDIO Clock 
+        .mdio_out(mdio_out),                      //OUTPUT : Outgoing MDIO DATA
+        .mdio_in(mdio_in),                        //INPUT  : Incoming MDIO DATA       
+        .mdio_oen(mdio_oen),                      //OUTPUT : MDIO Output Enable
+        .mac_rx_clk(mac_rx_clk),                  //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk(mac_tx_clk),                  //OUTPUT : Av-ST Tx Clock
+        .rx_afull_clk(rx_afull_clk),              //INPUT  : AFull Status Clock
+	    .rx_afull_data(rx_afull_data),            //INPUT  : AFull Status Data
+	    .rx_afull_valid(rx_afull_valid),          //INPUT  : AFull Status Valid
+	    .rx_afull_channel(rx_afull_channel),      //INPUT  : AFull Status Channel
+
+         // Channel 0 
+            
+        .tbi_rx_clk_0(tbi_rx_clk_0),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_0(tbi_tx_clk_0),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_0(tbi_rx_d_0),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_0(tbi_tx_d_0),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_0(sd_loopback_0),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_0(pcs_pwrdn_out_sig[0]),       //OUTPUT : Powerdown Enable
+        .led_col_0(led_col_0),                    //OUTPUT : Collision Indication
+        .led_an_0(led_an_0),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_0(led_char_err_0),          //OUTPUT : Character error
+        .led_disp_err_0(led_disp_err_0),          //OUTPUT : Disparity error
+        .led_crs_0(led_crs_0),                    //OUTPUT : Carrier sense
+        .led_link_0(led_link_0),                  //OUTPUT : Valid link    
+        .mac_rx_clk_0(mac_rx_clk_0),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_0(mac_tx_clk_0),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_0(data_rx_sop_0),            //OUTPUT : Start of Packet
+        .data_rx_eop_0(data_rx_eop_0),            //OUTPUT : End of Packet
+        .data_rx_data_0(data_rx_data_0),          //OUTPUT : Data from FIFO
+        .data_rx_error_0(data_rx_error_0),        //OUTPUT : Receive packet error
+        .data_rx_valid_0(data_rx_valid_0),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_0(data_rx_ready_0),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_0(pkt_class_data_0),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_0(pkt_class_valid_0),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_0(data_tx_error_0),        //INPUT  : Status
+        .data_tx_data_0(data_tx_data_0),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_0(data_tx_valid_0),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_0(data_tx_sop_0),            //INPUT  : Start of Packet
+        .data_tx_eop_0(data_tx_eop_0),            //INPUT  : End of Packet
+        .data_tx_ready_0(data_tx_ready_0),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_0(tx_ff_uflow_0),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_0(tx_crc_fwd_0),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_0(xoff_gen_0),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_0(xon_gen_0),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_0(magic_sleep_n_0),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_0(magic_wakeup_0),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 1 
+            
+        .tbi_rx_clk_1(tbi_rx_clk_1),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_1(tbi_tx_clk_1),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_1(tbi_rx_d_1),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_1(tbi_tx_d_1),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_1(sd_loopback_1),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_1(pcs_pwrdn_out_sig[1]),       //OUTPUT : Powerdown Enable
+        .led_col_1(led_col_1),                    //OUTPUT : Collision Indication
+        .led_an_1(led_an_1),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_1(led_char_err_1),          //OUTPUT : Character error
+        .led_disp_err_1(led_disp_err_1),          //OUTPUT : Disparity error
+        .led_crs_1(led_crs_1),                    //OUTPUT : Carrier sense
+        .led_link_1(led_link_1),                  //OUTPUT : Valid link    
+        .mac_rx_clk_1(mac_rx_clk_1),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_1(mac_tx_clk_1),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_1(data_rx_sop_1),            //OUTPUT : Start of Packet
+        .data_rx_eop_1(data_rx_eop_1),            //OUTPUT : End of Packet
+        .data_rx_data_1(data_rx_data_1),          //OUTPUT : Data from FIFO
+        .data_rx_error_1(data_rx_error_1),        //OUTPUT : Receive packet error
+        .data_rx_valid_1(data_rx_valid_1),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_1(data_rx_ready_1),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_1(pkt_class_data_1),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_1(pkt_class_valid_1),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_1(data_tx_error_1),        //INPUT  : Status
+        .data_tx_data_1(data_tx_data_1),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_1(data_tx_valid_1),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_1(data_tx_sop_1),            //INPUT  : Start of Packet
+        .data_tx_eop_1(data_tx_eop_1),            //INPUT  : End of Packet
+        .data_tx_ready_1(data_tx_ready_1),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_1(tx_ff_uflow_1),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_1(tx_crc_fwd_1),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_1(xoff_gen_1),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_1(xon_gen_1),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_1(magic_sleep_n_1),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_1(magic_wakeup_1),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 2 
+            
+        .tbi_rx_clk_2(tbi_rx_clk_2),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_2(tbi_tx_clk_2),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_2(tbi_rx_d_2),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_2(tbi_tx_d_2),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_2(sd_loopback_2),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_2(pcs_pwrdn_out_sig[2]),       //OUTPUT : Powerdown Enable
+        .led_col_2(led_col_2),                    //OUTPUT : Collision Indication
+        .led_an_2(led_an_2),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_2(led_char_err_2),          //OUTPUT : Character error
+        .led_disp_err_2(led_disp_err_2),          //OUTPUT : Disparity error
+        .led_crs_2(led_crs_2),                    //OUTPUT : Carrier sense
+        .led_link_2(led_link_2),                  //OUTPUT : Valid link    
+        .mac_rx_clk_2(mac_rx_clk_2),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_2(mac_tx_clk_2),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_2(data_rx_sop_2),            //OUTPUT : Start of Packet
+        .data_rx_eop_2(data_rx_eop_2),            //OUTPUT : End of Packet
+        .data_rx_data_2(data_rx_data_2),          //OUTPUT : Data from FIFO
+        .data_rx_error_2(data_rx_error_2),        //OUTPUT : Receive packet error
+        .data_rx_valid_2(data_rx_valid_2),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_2(data_rx_ready_2),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_2(pkt_class_data_2),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_2(pkt_class_valid_2),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_2(data_tx_error_2),        //INPUT  : Status
+        .data_tx_data_2(data_tx_data_2),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_2(data_tx_valid_2),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_2(data_tx_sop_2),            //INPUT  : Start of Packet
+        .data_tx_eop_2(data_tx_eop_2),            //INPUT  : End of Packet
+        .data_tx_ready_2(data_tx_ready_2),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_2(tx_ff_uflow_2),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_2(tx_crc_fwd_2),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_2(xoff_gen_2),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_2(xon_gen_2),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_2(magic_sleep_n_2),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_2(magic_wakeup_2),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 3 
+            
+        .tbi_rx_clk_3(tbi_rx_clk_3),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_3(tbi_tx_clk_3),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_3(tbi_rx_d_3),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_3(tbi_tx_d_3),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_3(sd_loopback_3),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_3(pcs_pwrdn_out_sig[3]),       //OUTPUT : Powerdown Enable
+        .led_col_3(led_col_3),                    //OUTPUT : Collision Indication
+        .led_an_3(led_an_3),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_3(led_char_err_3),          //OUTPUT : Character error
+        .led_disp_err_3(led_disp_err_3),          //OUTPUT : Disparity error
+        .led_crs_3(led_crs_3),                    //OUTPUT : Carrier sense
+        .led_link_3(led_link_3),                  //OUTPUT : Valid link    
+        .mac_rx_clk_3(mac_rx_clk_3),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_3(mac_tx_clk_3),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_3(data_rx_sop_3),            //OUTPUT : Start of Packet
+        .data_rx_eop_3(data_rx_eop_3),            //OUTPUT : End of Packet
+        .data_rx_data_3(data_rx_data_3),          //OUTPUT : Data from FIFO
+        .data_rx_error_3(data_rx_error_3),        //OUTPUT : Receive packet error
+        .data_rx_valid_3(data_rx_valid_3),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_3(data_rx_ready_3),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_3(pkt_class_data_3),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_3(pkt_class_valid_3),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_3(data_tx_error_3),        //INPUT  : Status
+        .data_tx_data_3(data_tx_data_3),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_3(data_tx_valid_3),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_3(data_tx_sop_3),            //INPUT  : Start of Packet
+        .data_tx_eop_3(data_tx_eop_3),            //INPUT  : End of Packet
+        .data_tx_ready_3(data_tx_ready_3),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_3(tx_ff_uflow_3),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_3(tx_crc_fwd_3),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_3(xoff_gen_3),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_3(xon_gen_3),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_3(magic_sleep_n_3),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_3(magic_wakeup_3),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 4 
+            
+        .tbi_rx_clk_4(tbi_rx_clk_4),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_4(tbi_tx_clk_4),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_4(tbi_rx_d_4),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_4(tbi_tx_d_4),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_4(sd_loopback_4),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_4(pcs_pwrdn_out_sig[4]),       //OUTPUT : Powerdown Enable
+        .led_col_4(led_col_4),                    //OUTPUT : Collision Indication
+        .led_an_4(led_an_4),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_4(led_char_err_4),          //OUTPUT : Character error
+        .led_disp_err_4(led_disp_err_4),          //OUTPUT : Disparity error
+        .led_crs_4(led_crs_4),                    //OUTPUT : Carrier sense
+        .led_link_4(led_link_4),                  //OUTPUT : Valid link    
+        .mac_rx_clk_4(mac_rx_clk_4),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_4(mac_tx_clk_4),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_4(data_rx_sop_4),            //OUTPUT : Start of Packet
+        .data_rx_eop_4(data_rx_eop_4),            //OUTPUT : End of Packet
+        .data_rx_data_4(data_rx_data_4),          //OUTPUT : Data from FIFO
+        .data_rx_error_4(data_rx_error_4),        //OUTPUT : Receive packet error
+        .data_rx_valid_4(data_rx_valid_4),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_4(data_rx_ready_4),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_4(pkt_class_data_4),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_4(pkt_class_valid_4),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_4(data_tx_error_4),        //INPUT  : Status
+        .data_tx_data_4(data_tx_data_4),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_4(data_tx_valid_4),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_4(data_tx_sop_4),            //INPUT  : Start of Packet
+        .data_tx_eop_4(data_tx_eop_4),            //INPUT  : End of Packet
+        .data_tx_ready_4(data_tx_ready_4),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_4(tx_ff_uflow_4),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_4(tx_crc_fwd_4),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_4(xoff_gen_4),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_4(xon_gen_4),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_4(magic_sleep_n_4),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_4(magic_wakeup_4),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 5 
+            
+        .tbi_rx_clk_5(tbi_rx_clk_5),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_5(tbi_tx_clk_5),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_5(tbi_rx_d_5),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_5(tbi_tx_d_5),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_5(sd_loopback_5),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_5(pcs_pwrdn_out_sig[5]),       //OUTPUT : Powerdown Enable
+        .led_col_5(led_col_5),                    //OUTPUT : Collision Indication
+        .led_an_5(led_an_5),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_5(led_char_err_5),          //OUTPUT : Character error
+        .led_disp_err_5(led_disp_err_5),          //OUTPUT : Disparity error
+        .led_crs_5(led_crs_5),                    //OUTPUT : Carrier sense
+        .led_link_5(led_link_5),                  //OUTPUT : Valid link    
+        .mac_rx_clk_5(mac_rx_clk_5),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_5(mac_tx_clk_5),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_5(data_rx_sop_5),            //OUTPUT : Start of Packet
+        .data_rx_eop_5(data_rx_eop_5),            //OUTPUT : End of Packet
+        .data_rx_data_5(data_rx_data_5),          //OUTPUT : Data from FIFO
+        .data_rx_error_5(data_rx_error_5),        //OUTPUT : Receive packet error
+        .data_rx_valid_5(data_rx_valid_5),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_5(data_rx_ready_5),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_5(pkt_class_data_5),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_5(pkt_class_valid_5),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_5(data_tx_error_5),        //INPUT  : Status
+        .data_tx_data_5(data_tx_data_5),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_5(data_tx_valid_5),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_5(data_tx_sop_5),            //INPUT  : Start of Packet
+        .data_tx_eop_5(data_tx_eop_5),            //INPUT  : End of Packet
+        .data_tx_ready_5(data_tx_ready_5),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_5(tx_ff_uflow_5),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_5(tx_crc_fwd_5),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_5(xoff_gen_5),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_5(xon_gen_5),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_5(magic_sleep_n_5),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_5(magic_wakeup_5),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 6 
+            
+        .tbi_rx_clk_6(tbi_rx_clk_6),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_6(tbi_tx_clk_6),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_6(tbi_rx_d_6),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_6(tbi_tx_d_6),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_6(sd_loopback_6),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_6(pcs_pwrdn_out_sig[6]),       //OUTPUT : Powerdown Enable
+        .led_col_6(led_col_6),                    //OUTPUT : Collision Indication
+        .led_an_6(led_an_6),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_6(led_char_err_6),          //OUTPUT : Character error
+        .led_disp_err_6(led_disp_err_6),          //OUTPUT : Disparity error
+        .led_crs_6(led_crs_6),                    //OUTPUT : Carrier sense
+        .led_link_6(led_link_6),                  //OUTPUT : Valid link    
+        .mac_rx_clk_6(mac_rx_clk_6),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_6(mac_tx_clk_6),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_6(data_rx_sop_6),            //OUTPUT : Start of Packet
+        .data_rx_eop_6(data_rx_eop_6),            //OUTPUT : End of Packet
+        .data_rx_data_6(data_rx_data_6),          //OUTPUT : Data from FIFO
+        .data_rx_error_6(data_rx_error_6),        //OUTPUT : Receive packet error
+        .data_rx_valid_6(data_rx_valid_6),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_6(data_rx_ready_6),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_6(pkt_class_data_6),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_6(pkt_class_valid_6),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_6(data_tx_error_6),        //INPUT  : Status
+        .data_tx_data_6(data_tx_data_6),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_6(data_tx_valid_6),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_6(data_tx_sop_6),            //INPUT  : Start of Packet
+        .data_tx_eop_6(data_tx_eop_6),            //INPUT  : End of Packet
+        .data_tx_ready_6(data_tx_ready_6),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_6(tx_ff_uflow_6),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_6(tx_crc_fwd_6),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_6(xoff_gen_6),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_6(xon_gen_6),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_6(magic_sleep_n_6),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_6(magic_wakeup_6),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 7 
+            
+        .tbi_rx_clk_7(tbi_rx_clk_7),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_7(tbi_tx_clk_7),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_7(tbi_rx_d_7),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_7(tbi_tx_d_7),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_7(sd_loopback_7),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_7(pcs_pwrdn_out_sig[7]),       //OUTPUT : Powerdown Enable
+        .led_col_7(led_col_7),                    //OUTPUT : Collision Indication
+        .led_an_7(led_an_7),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_7(led_char_err_7),          //OUTPUT : Character error
+        .led_disp_err_7(led_disp_err_7),          //OUTPUT : Disparity error
+        .led_crs_7(led_crs_7),                    //OUTPUT : Carrier sense
+        .led_link_7(led_link_7),                  //OUTPUT : Valid link    
+        .mac_rx_clk_7(mac_rx_clk_7),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_7(mac_tx_clk_7),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_7(data_rx_sop_7),            //OUTPUT : Start of Packet
+        .data_rx_eop_7(data_rx_eop_7),            //OUTPUT : End of Packet
+        .data_rx_data_7(data_rx_data_7),          //OUTPUT : Data from FIFO
+        .data_rx_error_7(data_rx_error_7),        //OUTPUT : Receive packet error
+        .data_rx_valid_7(data_rx_valid_7),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_7(data_rx_ready_7),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_7(pkt_class_data_7),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_7(pkt_class_valid_7),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_7(data_tx_error_7),        //INPUT  : Status
+        .data_tx_data_7(data_tx_data_7),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_7(data_tx_valid_7),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_7(data_tx_sop_7),            //INPUT  : Start of Packet
+        .data_tx_eop_7(data_tx_eop_7),            //INPUT  : End of Packet
+        .data_tx_ready_7(data_tx_ready_7),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_7(tx_ff_uflow_7),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_7(tx_crc_fwd_7),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_7(xoff_gen_7),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_7(xon_gen_7),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_7(magic_sleep_n_7),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_7(magic_wakeup_7),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 8 
+            
+        .tbi_rx_clk_8(tbi_rx_clk_8),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_8(tbi_tx_clk_8),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_8(tbi_rx_d_8),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_8(tbi_tx_d_8),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_8(sd_loopback_8),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_8(pcs_pwrdn_out_sig[8]),       //OUTPUT : Powerdown Enable
+        .led_col_8(led_col_8),                    //OUTPUT : Collision Indication
+        .led_an_8(led_an_8),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_8(led_char_err_8),          //OUTPUT : Character error
+        .led_disp_err_8(led_disp_err_8),          //OUTPUT : Disparity error
+        .led_crs_8(led_crs_8),                    //OUTPUT : Carrier sense
+        .led_link_8(led_link_8),                  //OUTPUT : Valid link    
+        .mac_rx_clk_8(mac_rx_clk_8),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_8(mac_tx_clk_8),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_8(data_rx_sop_8),            //OUTPUT : Start of Packet
+        .data_rx_eop_8(data_rx_eop_8),            //OUTPUT : End of Packet
+        .data_rx_data_8(data_rx_data_8),          //OUTPUT : Data from FIFO
+        .data_rx_error_8(data_rx_error_8),        //OUTPUT : Receive packet error
+        .data_rx_valid_8(data_rx_valid_8),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_8(data_rx_ready_8),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_8(pkt_class_data_8),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_8(pkt_class_valid_8),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_8(data_tx_error_8),        //INPUT  : Status
+        .data_tx_data_8(data_tx_data_8),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_8(data_tx_valid_8),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_8(data_tx_sop_8),            //INPUT  : Start of Packet
+        .data_tx_eop_8(data_tx_eop_8),            //INPUT  : End of Packet
+        .data_tx_ready_8(data_tx_ready_8),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_8(tx_ff_uflow_8),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_8(tx_crc_fwd_8),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_8(xoff_gen_8),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_8(xon_gen_8),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_8(magic_sleep_n_8),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_8(magic_wakeup_8),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 9 
+            
+        .tbi_rx_clk_9(tbi_rx_clk_9),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_9(tbi_tx_clk_9),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_9(tbi_rx_d_9),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_9(tbi_tx_d_9),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_9(sd_loopback_9),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_9(pcs_pwrdn_out_sig[9]),       //OUTPUT : Powerdown Enable
+        .led_col_9(led_col_9),                    //OUTPUT : Collision Indication
+        .led_an_9(led_an_9),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_9(led_char_err_9),          //OUTPUT : Character error
+        .led_disp_err_9(led_disp_err_9),          //OUTPUT : Disparity error
+        .led_crs_9(led_crs_9),                    //OUTPUT : Carrier sense
+        .led_link_9(led_link_9),                  //OUTPUT : Valid link    
+        .mac_rx_clk_9(mac_rx_clk_9),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_9(mac_tx_clk_9),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_9(data_rx_sop_9),            //OUTPUT : Start of Packet
+        .data_rx_eop_9(data_rx_eop_9),            //OUTPUT : End of Packet
+        .data_rx_data_9(data_rx_data_9),          //OUTPUT : Data from FIFO
+        .data_rx_error_9(data_rx_error_9),        //OUTPUT : Receive packet error
+        .data_rx_valid_9(data_rx_valid_9),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_9(data_rx_ready_9),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_9(pkt_class_data_9),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_9(pkt_class_valid_9),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_9(data_tx_error_9),        //INPUT  : Status
+        .data_tx_data_9(data_tx_data_9),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_9(data_tx_valid_9),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_9(data_tx_sop_9),            //INPUT  : Start of Packet
+        .data_tx_eop_9(data_tx_eop_9),            //INPUT  : End of Packet
+        .data_tx_ready_9(data_tx_ready_9),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_9(tx_ff_uflow_9),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_9(tx_crc_fwd_9),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_9(xoff_gen_9),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_9(xon_gen_9),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_9(magic_sleep_n_9),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_9(magic_wakeup_9),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 10 
+            
+        .tbi_rx_clk_10(tbi_rx_clk_10),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_10(tbi_tx_clk_10),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_10(tbi_rx_d_10),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_10(tbi_tx_d_10),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_10(sd_loopback_10),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_10(pcs_pwrdn_out_sig[10]),       //OUTPUT : Powerdown Enable
+        .led_col_10(led_col_10),                    //OUTPUT : Collision Indication
+        .led_an_10(led_an_10),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_10(led_char_err_10),          //OUTPUT : Character error
+        .led_disp_err_10(led_disp_err_10),          //OUTPUT : Disparity error
+        .led_crs_10(led_crs_10),                    //OUTPUT : Carrier sense
+        .led_link_10(led_link_10),                  //OUTPUT : Valid link    
+        .mac_rx_clk_10(mac_rx_clk_10),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_10(mac_tx_clk_10),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_10(data_rx_sop_10),            //OUTPUT : Start of Packet
+        .data_rx_eop_10(data_rx_eop_10),            //OUTPUT : End of Packet
+        .data_rx_data_10(data_rx_data_10),          //OUTPUT : Data from FIFO
+        .data_rx_error_10(data_rx_error_10),        //OUTPUT : Receive packet error
+        .data_rx_valid_10(data_rx_valid_10),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_10(data_rx_ready_10),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_10(pkt_class_data_10),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_10(pkt_class_valid_10),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_10(data_tx_error_10),        //INPUT  : Status
+        .data_tx_data_10(data_tx_data_10),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_10(data_tx_valid_10),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_10(data_tx_sop_10),            //INPUT  : Start of Packet
+        .data_tx_eop_10(data_tx_eop_10),            //INPUT  : End of Packet
+        .data_tx_ready_10(data_tx_ready_10),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_10(tx_ff_uflow_10),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_10(tx_crc_fwd_10),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_10(xoff_gen_10),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_10(xon_gen_10),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_10(magic_sleep_n_10),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_10(magic_wakeup_10),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 11 
+            
+        .tbi_rx_clk_11(tbi_rx_clk_11),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_11(tbi_tx_clk_11),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_11(tbi_rx_d_11),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_11(tbi_tx_d_11),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_11(sd_loopback_11),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_11(pcs_pwrdn_out_sig[11]),       //OUTPUT : Powerdown Enable
+        .led_col_11(led_col_11),                    //OUTPUT : Collision Indication
+        .led_an_11(led_an_11),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_11(led_char_err_11),          //OUTPUT : Character error
+        .led_disp_err_11(led_disp_err_11),          //OUTPUT : Disparity error
+        .led_crs_11(led_crs_11),                    //OUTPUT : Carrier sense
+        .led_link_11(led_link_11),                  //OUTPUT : Valid link    
+        .mac_rx_clk_11(mac_rx_clk_11),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_11(mac_tx_clk_11),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_11(data_rx_sop_11),            //OUTPUT : Start of Packet
+        .data_rx_eop_11(data_rx_eop_11),            //OUTPUT : End of Packet
+        .data_rx_data_11(data_rx_data_11),          //OUTPUT : Data from FIFO
+        .data_rx_error_11(data_rx_error_11),        //OUTPUT : Receive packet error
+        .data_rx_valid_11(data_rx_valid_11),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_11(data_rx_ready_11),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_11(pkt_class_data_11),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_11(pkt_class_valid_11),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_11(data_tx_error_11),        //INPUT  : Status
+        .data_tx_data_11(data_tx_data_11),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_11(data_tx_valid_11),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_11(data_tx_sop_11),            //INPUT  : Start of Packet
+        .data_tx_eop_11(data_tx_eop_11),            //INPUT  : End of Packet
+        .data_tx_ready_11(data_tx_ready_11),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_11(tx_ff_uflow_11),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_11(tx_crc_fwd_11),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_11(xoff_gen_11),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_11(xon_gen_11),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_11(magic_sleep_n_11),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_11(magic_wakeup_11),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 12 
+            
+        .tbi_rx_clk_12(tbi_rx_clk_12),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_12(tbi_tx_clk_12),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_12(tbi_rx_d_12),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_12(tbi_tx_d_12),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_12(sd_loopback_12),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_12(pcs_pwrdn_out_sig[12]),       //OUTPUT : Powerdown Enable
+        .led_col_12(led_col_12),                    //OUTPUT : Collision Indication
+        .led_an_12(led_an_12),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_12(led_char_err_12),          //OUTPUT : Character error
+        .led_disp_err_12(led_disp_err_12),          //OUTPUT : Disparity error
+        .led_crs_12(led_crs_12),                    //OUTPUT : Carrier sense
+        .led_link_12(led_link_12),                  //OUTPUT : Valid link    
+        .mac_rx_clk_12(mac_rx_clk_12),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_12(mac_tx_clk_12),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_12(data_rx_sop_12),            //OUTPUT : Start of Packet
+        .data_rx_eop_12(data_rx_eop_12),            //OUTPUT : End of Packet
+        .data_rx_data_12(data_rx_data_12),          //OUTPUT : Data from FIFO
+        .data_rx_error_12(data_rx_error_12),        //OUTPUT : Receive packet error
+        .data_rx_valid_12(data_rx_valid_12),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_12(data_rx_ready_12),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_12(pkt_class_data_12),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_12(pkt_class_valid_12),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_12(data_tx_error_12),        //INPUT  : Status
+        .data_tx_data_12(data_tx_data_12),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_12(data_tx_valid_12),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_12(data_tx_sop_12),            //INPUT  : Start of Packet
+        .data_tx_eop_12(data_tx_eop_12),            //INPUT  : End of Packet
+        .data_tx_ready_12(data_tx_ready_12),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_12(tx_ff_uflow_12),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_12(tx_crc_fwd_12),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_12(xoff_gen_12),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_12(xon_gen_12),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_12(magic_sleep_n_12),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_12(magic_wakeup_12),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 13 
+            
+        .tbi_rx_clk_13(tbi_rx_clk_13),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_13(tbi_tx_clk_13),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_13(tbi_rx_d_13),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_13(tbi_tx_d_13),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_13(sd_loopback_13),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_13(pcs_pwrdn_out_sig[13]),       //OUTPUT : Powerdown Enable
+        .led_col_13(led_col_13),                    //OUTPUT : Collision Indication
+        .led_an_13(led_an_13),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_13(led_char_err_13),          //OUTPUT : Character error
+        .led_disp_err_13(led_disp_err_13),          //OUTPUT : Disparity error
+        .led_crs_13(led_crs_13),                    //OUTPUT : Carrier sense
+        .led_link_13(led_link_13),                  //OUTPUT : Valid link    
+        .mac_rx_clk_13(mac_rx_clk_13),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_13(mac_tx_clk_13),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_13(data_rx_sop_13),            //OUTPUT : Start of Packet
+        .data_rx_eop_13(data_rx_eop_13),            //OUTPUT : End of Packet
+        .data_rx_data_13(data_rx_data_13),          //OUTPUT : Data from FIFO
+        .data_rx_error_13(data_rx_error_13),        //OUTPUT : Receive packet error
+        .data_rx_valid_13(data_rx_valid_13),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_13(data_rx_ready_13),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_13(pkt_class_data_13),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_13(pkt_class_valid_13),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_13(data_tx_error_13),        //INPUT  : Status
+        .data_tx_data_13(data_tx_data_13),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_13(data_tx_valid_13),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_13(data_tx_sop_13),            //INPUT  : Start of Packet
+        .data_tx_eop_13(data_tx_eop_13),            //INPUT  : End of Packet
+        .data_tx_ready_13(data_tx_ready_13),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_13(tx_ff_uflow_13),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_13(tx_crc_fwd_13),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_13(xoff_gen_13),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_13(xon_gen_13),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_13(magic_sleep_n_13),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_13(magic_wakeup_13),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 14 
+            
+        .tbi_rx_clk_14(tbi_rx_clk_14),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_14(tbi_tx_clk_14),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_14(tbi_rx_d_14),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_14(tbi_tx_d_14),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_14(sd_loopback_14),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_14(pcs_pwrdn_out_sig[14]),       //OUTPUT : Powerdown Enable
+        .led_col_14(led_col_14),                    //OUTPUT : Collision Indication
+        .led_an_14(led_an_14),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_14(led_char_err_14),          //OUTPUT : Character error
+        .led_disp_err_14(led_disp_err_14),          //OUTPUT : Disparity error
+        .led_crs_14(led_crs_14),                    //OUTPUT : Carrier sense
+        .led_link_14(led_link_14),                  //OUTPUT : Valid link    
+        .mac_rx_clk_14(mac_rx_clk_14),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_14(mac_tx_clk_14),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_14(data_rx_sop_14),            //OUTPUT : Start of Packet
+        .data_rx_eop_14(data_rx_eop_14),            //OUTPUT : End of Packet
+        .data_rx_data_14(data_rx_data_14),          //OUTPUT : Data from FIFO
+        .data_rx_error_14(data_rx_error_14),        //OUTPUT : Receive packet error
+        .data_rx_valid_14(data_rx_valid_14),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_14(data_rx_ready_14),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_14(pkt_class_data_14),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_14(pkt_class_valid_14),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_14(data_tx_error_14),        //INPUT  : Status
+        .data_tx_data_14(data_tx_data_14),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_14(data_tx_valid_14),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_14(data_tx_sop_14),            //INPUT  : Start of Packet
+        .data_tx_eop_14(data_tx_eop_14),            //INPUT  : End of Packet
+        .data_tx_ready_14(data_tx_ready_14),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_14(tx_ff_uflow_14),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_14(tx_crc_fwd_14),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_14(xoff_gen_14),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_14(xon_gen_14),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_14(magic_sleep_n_14),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_14(magic_wakeup_14),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 15 
+            
+        .tbi_rx_clk_15(tbi_rx_clk_15),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_15(tbi_tx_clk_15),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_15(tbi_rx_d_15),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_15(tbi_tx_d_15),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_15(sd_loopback_15),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_15(pcs_pwrdn_out_sig[15]),       //OUTPUT : Powerdown Enable
+        .led_col_15(led_col_15),                    //OUTPUT : Collision Indication
+        .led_an_15(led_an_15),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_15(led_char_err_15),          //OUTPUT : Character error
+        .led_disp_err_15(led_disp_err_15),          //OUTPUT : Disparity error
+        .led_crs_15(led_crs_15),                    //OUTPUT : Carrier sense
+        .led_link_15(led_link_15),                  //OUTPUT : Valid link    
+        .mac_rx_clk_15(mac_rx_clk_15),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_15(mac_tx_clk_15),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_15(data_rx_sop_15),            //OUTPUT : Start of Packet
+        .data_rx_eop_15(data_rx_eop_15),            //OUTPUT : End of Packet
+        .data_rx_data_15(data_rx_data_15),          //OUTPUT : Data from FIFO
+        .data_rx_error_15(data_rx_error_15),        //OUTPUT : Receive packet error
+        .data_rx_valid_15(data_rx_valid_15),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_15(data_rx_ready_15),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_15(pkt_class_data_15),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_15(pkt_class_valid_15),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_15(data_tx_error_15),        //INPUT  : Status
+        .data_tx_data_15(data_tx_data_15),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_15(data_tx_valid_15),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_15(data_tx_sop_15),            //INPUT  : Start of Packet
+        .data_tx_eop_15(data_tx_eop_15),            //INPUT  : End of Packet
+        .data_tx_ready_15(data_tx_ready_15),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_15(tx_ff_uflow_15),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_15(tx_crc_fwd_15),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_15(xoff_gen_15),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_15(xon_gen_15),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_15(magic_sleep_n_15),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_15(magic_wakeup_15),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 16 
+            
+        .tbi_rx_clk_16(tbi_rx_clk_16),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_16(tbi_tx_clk_16),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_16(tbi_rx_d_16),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_16(tbi_tx_d_16),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_16(sd_loopback_16),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_16(pcs_pwrdn_out_sig[16]),       //OUTPUT : Powerdown Enable
+        .led_col_16(led_col_16),                    //OUTPUT : Collision Indication
+        .led_an_16(led_an_16),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_16(led_char_err_16),          //OUTPUT : Character error
+        .led_disp_err_16(led_disp_err_16),          //OUTPUT : Disparity error
+        .led_crs_16(led_crs_16),                    //OUTPUT : Carrier sense
+        .led_link_16(led_link_16),                  //OUTPUT : Valid link    
+        .mac_rx_clk_16(mac_rx_clk_16),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_16(mac_tx_clk_16),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_16(data_rx_sop_16),            //OUTPUT : Start of Packet
+        .data_rx_eop_16(data_rx_eop_16),            //OUTPUT : End of Packet
+        .data_rx_data_16(data_rx_data_16),          //OUTPUT : Data from FIFO
+        .data_rx_error_16(data_rx_error_16),        //OUTPUT : Receive packet error
+        .data_rx_valid_16(data_rx_valid_16),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_16(data_rx_ready_16),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_16(pkt_class_data_16),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_16(pkt_class_valid_16),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_16(data_tx_error_16),        //INPUT  : Status
+        .data_tx_data_16(data_tx_data_16),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_16(data_tx_valid_16),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_16(data_tx_sop_16),            //INPUT  : Start of Packet
+        .data_tx_eop_16(data_tx_eop_16),            //INPUT  : End of Packet
+        .data_tx_ready_16(data_tx_ready_16),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_16(tx_ff_uflow_16),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_16(tx_crc_fwd_16),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_16(xoff_gen_16),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_16(xon_gen_16),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_16(magic_sleep_n_16),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_16(magic_wakeup_16),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 17 
+            
+        .tbi_rx_clk_17(tbi_rx_clk_17),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_17(tbi_tx_clk_17),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_17(tbi_rx_d_17),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_17(tbi_tx_d_17),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_17(sd_loopback_17),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_17(pcs_pwrdn_out_sig[17]),       //OUTPUT : Powerdown Enable
+        .led_col_17(led_col_17),                    //OUTPUT : Collision Indication
+        .led_an_17(led_an_17),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_17(led_char_err_17),          //OUTPUT : Character error
+        .led_disp_err_17(led_disp_err_17),          //OUTPUT : Disparity error
+        .led_crs_17(led_crs_17),                    //OUTPUT : Carrier sense
+        .led_link_17(led_link_17),                  //OUTPUT : Valid link    
+        .mac_rx_clk_17(mac_rx_clk_17),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_17(mac_tx_clk_17),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_17(data_rx_sop_17),            //OUTPUT : Start of Packet
+        .data_rx_eop_17(data_rx_eop_17),            //OUTPUT : End of Packet
+        .data_rx_data_17(data_rx_data_17),          //OUTPUT : Data from FIFO
+        .data_rx_error_17(data_rx_error_17),        //OUTPUT : Receive packet error
+        .data_rx_valid_17(data_rx_valid_17),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_17(data_rx_ready_17),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_17(pkt_class_data_17),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_17(pkt_class_valid_17),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_17(data_tx_error_17),        //INPUT  : Status
+        .data_tx_data_17(data_tx_data_17),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_17(data_tx_valid_17),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_17(data_tx_sop_17),            //INPUT  : Start of Packet
+        .data_tx_eop_17(data_tx_eop_17),            //INPUT  : End of Packet
+        .data_tx_ready_17(data_tx_ready_17),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_17(tx_ff_uflow_17),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_17(tx_crc_fwd_17),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_17(xoff_gen_17),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_17(xon_gen_17),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_17(magic_sleep_n_17),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_17(magic_wakeup_17),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 18 
+            
+        .tbi_rx_clk_18(tbi_rx_clk_18),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_18(tbi_tx_clk_18),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_18(tbi_rx_d_18),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_18(tbi_tx_d_18),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_18(sd_loopback_18),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_18(pcs_pwrdn_out_sig[18]),       //OUTPUT : Powerdown Enable
+        .led_col_18(led_col_18),                    //OUTPUT : Collision Indication
+        .led_an_18(led_an_18),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_18(led_char_err_18),          //OUTPUT : Character error
+        .led_disp_err_18(led_disp_err_18),          //OUTPUT : Disparity error
+        .led_crs_18(led_crs_18),                    //OUTPUT : Carrier sense
+        .led_link_18(led_link_18),                  //OUTPUT : Valid link    
+        .mac_rx_clk_18(mac_rx_clk_18),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_18(mac_tx_clk_18),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_18(data_rx_sop_18),            //OUTPUT : Start of Packet
+        .data_rx_eop_18(data_rx_eop_18),            //OUTPUT : End of Packet
+        .data_rx_data_18(data_rx_data_18),          //OUTPUT : Data from FIFO
+        .data_rx_error_18(data_rx_error_18),        //OUTPUT : Receive packet error
+        .data_rx_valid_18(data_rx_valid_18),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_18(data_rx_ready_18),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_18(pkt_class_data_18),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_18(pkt_class_valid_18),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_18(data_tx_error_18),        //INPUT  : Status
+        .data_tx_data_18(data_tx_data_18),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_18(data_tx_valid_18),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_18(data_tx_sop_18),            //INPUT  : Start of Packet
+        .data_tx_eop_18(data_tx_eop_18),            //INPUT  : End of Packet
+        .data_tx_ready_18(data_tx_ready_18),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_18(tx_ff_uflow_18),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_18(tx_crc_fwd_18),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_18(xoff_gen_18),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_18(xon_gen_18),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_18(magic_sleep_n_18),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_18(magic_wakeup_18),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 19 
+            
+        .tbi_rx_clk_19(tbi_rx_clk_19),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_19(tbi_tx_clk_19),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_19(tbi_rx_d_19),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_19(tbi_tx_d_19),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_19(sd_loopback_19),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_19(pcs_pwrdn_out_sig[19]),       //OUTPUT : Powerdown Enable
+        .led_col_19(led_col_19),                    //OUTPUT : Collision Indication
+        .led_an_19(led_an_19),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_19(led_char_err_19),          //OUTPUT : Character error
+        .led_disp_err_19(led_disp_err_19),          //OUTPUT : Disparity error
+        .led_crs_19(led_crs_19),                    //OUTPUT : Carrier sense
+        .led_link_19(led_link_19),                  //OUTPUT : Valid link    
+        .mac_rx_clk_19(mac_rx_clk_19),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_19(mac_tx_clk_19),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_19(data_rx_sop_19),            //OUTPUT : Start of Packet
+        .data_rx_eop_19(data_rx_eop_19),            //OUTPUT : End of Packet
+        .data_rx_data_19(data_rx_data_19),          //OUTPUT : Data from FIFO
+        .data_rx_error_19(data_rx_error_19),        //OUTPUT : Receive packet error
+        .data_rx_valid_19(data_rx_valid_19),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_19(data_rx_ready_19),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_19(pkt_class_data_19),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_19(pkt_class_valid_19),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_19(data_tx_error_19),        //INPUT  : Status
+        .data_tx_data_19(data_tx_data_19),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_19(data_tx_valid_19),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_19(data_tx_sop_19),            //INPUT  : Start of Packet
+        .data_tx_eop_19(data_tx_eop_19),            //INPUT  : End of Packet
+        .data_tx_ready_19(data_tx_ready_19),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_19(tx_ff_uflow_19),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_19(tx_crc_fwd_19),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_19(xoff_gen_19),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_19(xon_gen_19),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_19(magic_sleep_n_19),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_19(magic_wakeup_19),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 20 
+            
+        .tbi_rx_clk_20(tbi_rx_clk_20),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_20(tbi_tx_clk_20),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_20(tbi_rx_d_20),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_20(tbi_tx_d_20),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_20(sd_loopback_20),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_20(pcs_pwrdn_out_sig[20]),       //OUTPUT : Powerdown Enable
+        .led_col_20(led_col_20),                    //OUTPUT : Collision Indication
+        .led_an_20(led_an_20),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_20(led_char_err_20),          //OUTPUT : Character error
+        .led_disp_err_20(led_disp_err_20),          //OUTPUT : Disparity error
+        .led_crs_20(led_crs_20),                    //OUTPUT : Carrier sense
+        .led_link_20(led_link_20),                  //OUTPUT : Valid link    
+        .mac_rx_clk_20(mac_rx_clk_20),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_20(mac_tx_clk_20),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_20(data_rx_sop_20),            //OUTPUT : Start of Packet
+        .data_rx_eop_20(data_rx_eop_20),            //OUTPUT : End of Packet
+        .data_rx_data_20(data_rx_data_20),          //OUTPUT : Data from FIFO
+        .data_rx_error_20(data_rx_error_20),        //OUTPUT : Receive packet error
+        .data_rx_valid_20(data_rx_valid_20),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_20(data_rx_ready_20),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_20(pkt_class_data_20),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_20(pkt_class_valid_20),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_20(data_tx_error_20),        //INPUT  : Status
+        .data_tx_data_20(data_tx_data_20),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_20(data_tx_valid_20),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_20(data_tx_sop_20),            //INPUT  : Start of Packet
+        .data_tx_eop_20(data_tx_eop_20),            //INPUT  : End of Packet
+        .data_tx_ready_20(data_tx_ready_20),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_20(tx_ff_uflow_20),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_20(tx_crc_fwd_20),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_20(xoff_gen_20),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_20(xon_gen_20),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_20(magic_sleep_n_20),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_20(magic_wakeup_20),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 21 
+            
+        .tbi_rx_clk_21(tbi_rx_clk_21),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_21(tbi_tx_clk_21),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_21(tbi_rx_d_21),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_21(tbi_tx_d_21),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_21(sd_loopback_21),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_21(pcs_pwrdn_out_sig[21]),       //OUTPUT : Powerdown Enable
+        .led_col_21(led_col_21),                    //OUTPUT : Collision Indication
+        .led_an_21(led_an_21),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_21(led_char_err_21),          //OUTPUT : Character error
+        .led_disp_err_21(led_disp_err_21),          //OUTPUT : Disparity error
+        .led_crs_21(led_crs_21),                    //OUTPUT : Carrier sense
+        .led_link_21(led_link_21),                  //OUTPUT : Valid link    
+        .mac_rx_clk_21(mac_rx_clk_21),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_21(mac_tx_clk_21),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_21(data_rx_sop_21),            //OUTPUT : Start of Packet
+        .data_rx_eop_21(data_rx_eop_21),            //OUTPUT : End of Packet
+        .data_rx_data_21(data_rx_data_21),          //OUTPUT : Data from FIFO
+        .data_rx_error_21(data_rx_error_21),        //OUTPUT : Receive packet error
+        .data_rx_valid_21(data_rx_valid_21),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_21(data_rx_ready_21),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_21(pkt_class_data_21),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_21(pkt_class_valid_21),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_21(data_tx_error_21),        //INPUT  : Status
+        .data_tx_data_21(data_tx_data_21),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_21(data_tx_valid_21),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_21(data_tx_sop_21),            //INPUT  : Start of Packet
+        .data_tx_eop_21(data_tx_eop_21),            //INPUT  : End of Packet
+        .data_tx_ready_21(data_tx_ready_21),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_21(tx_ff_uflow_21),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_21(tx_crc_fwd_21),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_21(xoff_gen_21),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_21(xon_gen_21),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_21(magic_sleep_n_21),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_21(magic_wakeup_21),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 22 
+            
+        .tbi_rx_clk_22(tbi_rx_clk_22),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_22(tbi_tx_clk_22),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_22(tbi_rx_d_22),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_22(tbi_tx_d_22),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_22(sd_loopback_22),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_22(pcs_pwrdn_out_sig[22]),       //OUTPUT : Powerdown Enable
+        .led_col_22(led_col_22),                    //OUTPUT : Collision Indication
+        .led_an_22(led_an_22),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_22(led_char_err_22),          //OUTPUT : Character error
+        .led_disp_err_22(led_disp_err_22),          //OUTPUT : Disparity error
+        .led_crs_22(led_crs_22),                    //OUTPUT : Carrier sense
+        .led_link_22(led_link_22),                  //OUTPUT : Valid link    
+        .mac_rx_clk_22(mac_rx_clk_22),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_22(mac_tx_clk_22),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_22(data_rx_sop_22),            //OUTPUT : Start of Packet
+        .data_rx_eop_22(data_rx_eop_22),            //OUTPUT : End of Packet
+        .data_rx_data_22(data_rx_data_22),          //OUTPUT : Data from FIFO
+        .data_rx_error_22(data_rx_error_22),        //OUTPUT : Receive packet error
+        .data_rx_valid_22(data_rx_valid_22),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_22(data_rx_ready_22),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_22(pkt_class_data_22),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_22(pkt_class_valid_22),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_22(data_tx_error_22),        //INPUT  : Status
+        .data_tx_data_22(data_tx_data_22),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_22(data_tx_valid_22),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_22(data_tx_sop_22),            //INPUT  : Start of Packet
+        .data_tx_eop_22(data_tx_eop_22),            //INPUT  : End of Packet
+        .data_tx_ready_22(data_tx_ready_22),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_22(tx_ff_uflow_22),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_22(tx_crc_fwd_22),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_22(xoff_gen_22),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_22(xon_gen_22),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_22(magic_sleep_n_22),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_22(magic_wakeup_22),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 23 
+            
+        .tbi_rx_clk_23(tbi_rx_clk_23),              //INPUT  : Receive TBI Clock
+        .tbi_tx_clk_23(tbi_tx_clk_23),              //INPUT  : Transmit TBI Clock
+        .tbi_rx_d_23(tbi_rx_d_23),                  //INPUT  : Receive TBI Interface
+        .tbi_tx_d_23(tbi_tx_d_23),                  //OUTPUT : Transmit TBI Interface
+        .sd_loopback_23(sd_loopback_23),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_23(pcs_pwrdn_out_sig[23]),       //OUTPUT : Powerdown Enable
+        .led_col_23(led_col_23),                    //OUTPUT : Collision Indication
+        .led_an_23(led_an_23),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_23(led_char_err_23),          //OUTPUT : Character error
+        .led_disp_err_23(led_disp_err_23),          //OUTPUT : Disparity error
+        .led_crs_23(led_crs_23),                    //OUTPUT : Carrier sense
+        .led_link_23(led_link_23),                  //OUTPUT : Valid link    
+        .mac_rx_clk_23(mac_rx_clk_23),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_23(mac_tx_clk_23),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_23(data_rx_sop_23),            //OUTPUT : Start of Packet
+        .data_rx_eop_23(data_rx_eop_23),            //OUTPUT : End of Packet
+        .data_rx_data_23(data_rx_data_23),          //OUTPUT : Data from FIFO
+        .data_rx_error_23(data_rx_error_23),        //OUTPUT : Receive packet error
+        .data_rx_valid_23(data_rx_valid_23),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_23(data_rx_ready_23),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_23(pkt_class_data_23),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_23(pkt_class_valid_23),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_23(data_tx_error_23),        //INPUT  : Status
+        .data_tx_data_23(data_tx_data_23),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_23(data_tx_valid_23),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_23(data_tx_sop_23),            //INPUT  : Start of Packet
+        .data_tx_eop_23(data_tx_eop_23),            //INPUT  : End of Packet
+        .data_tx_ready_23(data_tx_ready_23),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_23(tx_ff_uflow_23),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_23(tx_crc_fwd_23),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_23(xoff_gen_23),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_23(xon_gen_23),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_23(magic_sleep_n_23),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_23(magic_wakeup_23));         //OUTPUT : MAC WAKE-UP INDICATION
+
+    defparam
+        U_MULTI_MAC_PCS.USE_SYNC_RESET = USE_SYNC_RESET, 
+        U_MULTI_MAC_PCS.RESET_LEVEL = RESET_LEVEL,
+        U_MULTI_MAC_PCS.ENABLE_GMII_LOOPBACK = ENABLE_GMII_LOOPBACK, 
+        U_MULTI_MAC_PCS.ENABLE_HD_LOGIC = ENABLE_HD_LOGIC,
+        U_MULTI_MAC_PCS.ENABLE_SUP_ADDR = ENABLE_SUP_ADDR,
+        U_MULTI_MAC_PCS.ENA_HASH = ENA_HASH,
+        U_MULTI_MAC_PCS.STAT_CNT_ENA = STAT_CNT_ENA,
+        U_MULTI_MAC_PCS.CORE_VERSION = CORE_VERSION, 
+        U_MULTI_MAC_PCS.CUST_VERSION = CUST_VERSION,
+        U_MULTI_MAC_PCS.REDUCED_INTERFACE_ENA = REDUCED_INTERFACE_ENA,
+        U_MULTI_MAC_PCS.ENABLE_MDIO = ENABLE_MDIO,
+        U_MULTI_MAC_PCS.MDIO_CLK_DIV = MDIO_CLK_DIV,
+        U_MULTI_MAC_PCS.ENABLE_MAGIC_DETECT = ENABLE_MAGIC_DETECT,
+        U_MULTI_MAC_PCS.ENABLE_PADDING = ENABLE_PADDING,
+        U_MULTI_MAC_PCS.ENABLE_LGTH_CHECK = ENABLE_LGTH_CHECK,
+        U_MULTI_MAC_PCS.GBIT_ONLY = GBIT_ONLY,
+        U_MULTI_MAC_PCS.MBIT_ONLY = MBIT_ONLY,
+        U_MULTI_MAC_PCS.REDUCED_CONTROL = REDUCED_CONTROL,
+        U_MULTI_MAC_PCS.CRC32DWIDTH = CRC32DWIDTH,
+        U_MULTI_MAC_PCS.CRC32GENDELAY = CRC32GENDELAY, 
+        U_MULTI_MAC_PCS.CRC32CHECK16BIT = CRC32CHECK16BIT, 
+        U_MULTI_MAC_PCS.CRC32S1L2_EXTERN = CRC32S1L2_EXTERN,
+        U_MULTI_MAC_PCS.ENABLE_SHIFT16 = ENABLE_SHIFT16,   
+        U_MULTI_MAC_PCS.ENABLE_MAC_FLOW_CTRL = ENABLE_MAC_FLOW_CTRL,
+        U_MULTI_MAC_PCS.ENABLE_MAC_TXADDR_SET = ENABLE_MAC_TXADDR_SET,
+        U_MULTI_MAC_PCS.ENABLE_MAC_RX_VLAN = ENABLE_MAC_RX_VLAN,
+        U_MULTI_MAC_PCS.ENABLE_MAC_TX_VLAN = ENABLE_MAC_TX_VLAN,
+        U_MULTI_MAC_PCS.PHY_IDENTIFIER = PHY_IDENTIFIER,
+        U_MULTI_MAC_PCS.DEV_VERSION = DEV_VERSION,
+        U_MULTI_MAC_PCS.ENABLE_SGMII = ENABLE_SGMII,
+        U_MULTI_MAC_PCS.MAX_CHANNELS = MAX_CHANNELS,
+        U_MULTI_MAC_PCS.CHANNEL_WIDTH = CHANNEL_WIDTH,
+	    U_MULTI_MAC_PCS.ENABLE_RX_FIFO_STATUS = ENABLE_RX_FIFO_STATUS,
+	    U_MULTI_MAC_PCS.ENABLE_EXTENDED_STAT_REG = ENABLE_EXTENDED_STAT_REG,
+        U_MULTI_MAC_PCS.ENABLE_CLK_SHARING = ENABLE_CLK_SHARING,    
+        U_MULTI_MAC_PCS.ENABLE_REG_SHARING = ENABLE_REG_SHARING;    
+
+
+
+// #######################################################################
+// ###############       CHANNEL 0 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 0)
+    begin          
+        assign gxb_pwrdn_in_sig[0] = gxb_pwrdn_in_0;
+        assign pcs_pwrdn_out_0 = pcs_pwrdn_out_sig[0];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[0] = pcs_pwrdn_out_sig[0];
+		assign pcs_pwrdn_out_0 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 0)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_0
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[0]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_0),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_0),
+        .rx_dataout (tbi_rx_d_0),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_0),
+        .tx_clkout (tbi_tx_clk_0),
+        .tx_datain (tbi_tx_d_0),
+        .tx_dataout (txp_0),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 0)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_0
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[0]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_0),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_0),
+        .rx_dataout (tbi_rx_d_0),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_0),
+        .tx_clkout (tbi_tx_clk_0),
+        .tx_datain (tbi_tx_d_0),
+        .tx_dataout (txp_0),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 0)
+    begin          
+
+    assign tbi_tx_clk_0 = ref_clk;
+    assign tbi_rx_d_0 = tbi_rx_d_flip_0;
+
+    always @(posedge tbi_rx_clk_0 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_0 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_0[0] <= tbi_rx_d_lvds_0[9];
+            tbi_rx_d_flip_0[1] <= tbi_rx_d_lvds_0[8];
+            tbi_rx_d_flip_0[2] <= tbi_rx_d_lvds_0[7];
+            tbi_rx_d_flip_0[3] <= tbi_rx_d_lvds_0[6];
+            tbi_rx_d_flip_0[4] <= tbi_rx_d_lvds_0[5];
+            tbi_rx_d_flip_0[5] <= tbi_rx_d_lvds_0[4];
+            tbi_rx_d_flip_0[6] <= tbi_rx_d_lvds_0[3];
+            tbi_rx_d_flip_0[7] <= tbi_rx_d_lvds_0[2];
+            tbi_rx_d_flip_0[8] <= tbi_rx_d_lvds_0[1];
+            tbi_rx_d_flip_0[9] <= tbi_rx_d_lvds_0[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_0 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_0[0] <= tbi_tx_d_0[9];
+            tbi_tx_d_flip_0[1] <= tbi_tx_d_0[8];
+            tbi_tx_d_flip_0[2] <= tbi_tx_d_0[7];
+            tbi_tx_d_flip_0[3] <= tbi_tx_d_0[6];
+            tbi_tx_d_flip_0[4] <= tbi_tx_d_0[5];
+            tbi_tx_d_flip_0[5] <= tbi_tx_d_0[4];
+            tbi_tx_d_flip_0[6] <= tbi_tx_d_0[3];
+            tbi_tx_d_flip_0[7] <= tbi_tx_d_0[2];
+            tbi_tx_d_flip_0[8] <= tbi_tx_d_0[1];
+            tbi_tx_d_flip_0[9] <= tbi_tx_d_0[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_0
+     (
+         .rx_divfwdclk (tbi_rx_clk_0),
+         .rx_in (rxp_0),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_0),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_0
+    (
+        .tx_in (tbi_tx_d_flip_0),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_0)
+    );
+
+    end    
+else
+    begin
+    assign txp_0 = 1'b0;
+    assign tbi_rx_clk_0 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 1 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 1)
+    begin          
+        assign gxb_pwrdn_in_sig[1] = gxb_pwrdn_in_1;
+        assign pcs_pwrdn_out_1 = pcs_pwrdn_out_sig[1];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[1] = pcs_pwrdn_out_sig[1];
+		assign pcs_pwrdn_out_1 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 1)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_1
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[1]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_1),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_1),
+        .rx_dataout (tbi_rx_d_1),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_1),
+        .tx_clkout (tbi_tx_clk_1),
+        .tx_datain (tbi_tx_d_1),
+        .tx_dataout (txp_1),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 1)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_1
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[1]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_1),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_1),
+        .rx_dataout (tbi_rx_d_1),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_1),
+        .tx_clkout (tbi_tx_clk_1),
+        .tx_datain (tbi_tx_d_1),
+        .tx_dataout (txp_1),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 1)
+    begin          
+
+    assign tbi_tx_clk_1 = ref_clk;
+    assign tbi_rx_d_1 = tbi_rx_d_flip_1;
+
+    always @(posedge tbi_rx_clk_1 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_1 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_1[0] <= tbi_rx_d_lvds_1[9];
+            tbi_rx_d_flip_1[1] <= tbi_rx_d_lvds_1[8];
+            tbi_rx_d_flip_1[2] <= tbi_rx_d_lvds_1[7];
+            tbi_rx_d_flip_1[3] <= tbi_rx_d_lvds_1[6];
+            tbi_rx_d_flip_1[4] <= tbi_rx_d_lvds_1[5];
+            tbi_rx_d_flip_1[5] <= tbi_rx_d_lvds_1[4];
+            tbi_rx_d_flip_1[6] <= tbi_rx_d_lvds_1[3];
+            tbi_rx_d_flip_1[7] <= tbi_rx_d_lvds_1[2];
+            tbi_rx_d_flip_1[8] <= tbi_rx_d_lvds_1[1];
+            tbi_rx_d_flip_1[9] <= tbi_rx_d_lvds_1[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_1 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_1[0] <= tbi_tx_d_1[9];
+            tbi_tx_d_flip_1[1] <= tbi_tx_d_1[8];
+            tbi_tx_d_flip_1[2] <= tbi_tx_d_1[7];
+            tbi_tx_d_flip_1[3] <= tbi_tx_d_1[6];
+            tbi_tx_d_flip_1[4] <= tbi_tx_d_1[5];
+            tbi_tx_d_flip_1[5] <= tbi_tx_d_1[4];
+            tbi_tx_d_flip_1[6] <= tbi_tx_d_1[3];
+            tbi_tx_d_flip_1[7] <= tbi_tx_d_1[2];
+            tbi_tx_d_flip_1[8] <= tbi_tx_d_1[1];
+            tbi_tx_d_flip_1[9] <= tbi_tx_d_1[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_1
+     (
+         .rx_divfwdclk (tbi_rx_clk_1),
+         .rx_in (rxp_1),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_1),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_1
+    (
+        .tx_in (tbi_tx_d_flip_1),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_1)
+    );
+
+    end    
+else
+    begin
+    assign txp_1 = 1'b0;
+    assign tbi_rx_clk_1 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 2 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 2)
+    begin          
+        assign gxb_pwrdn_in_sig[2] = gxb_pwrdn_in_2;
+        assign pcs_pwrdn_out_2 = pcs_pwrdn_out_sig[2];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[2] = pcs_pwrdn_out_sig[2];
+		assign pcs_pwrdn_out_2 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 2)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_2
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[2]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_2),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_2),
+        .rx_dataout (tbi_rx_d_2),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_2),
+        .tx_clkout (tbi_tx_clk_2),
+        .tx_datain (tbi_tx_d_2),
+        .tx_dataout (txp_2),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 2)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_2
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[2]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_2),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_2),
+        .rx_dataout (tbi_rx_d_2),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_2),
+        .tx_clkout (tbi_tx_clk_2),
+        .tx_datain (tbi_tx_d_2),
+        .tx_dataout (txp_2),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 2)
+    begin          
+
+    assign tbi_tx_clk_2 = ref_clk;
+    assign tbi_rx_d_2 = tbi_rx_d_flip_2;
+
+    always @(posedge tbi_rx_clk_2 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_2 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_2[0] <= tbi_rx_d_lvds_2[9];
+            tbi_rx_d_flip_2[1] <= tbi_rx_d_lvds_2[8];
+            tbi_rx_d_flip_2[2] <= tbi_rx_d_lvds_2[7];
+            tbi_rx_d_flip_2[3] <= tbi_rx_d_lvds_2[6];
+            tbi_rx_d_flip_2[4] <= tbi_rx_d_lvds_2[5];
+            tbi_rx_d_flip_2[5] <= tbi_rx_d_lvds_2[4];
+            tbi_rx_d_flip_2[6] <= tbi_rx_d_lvds_2[3];
+            tbi_rx_d_flip_2[7] <= tbi_rx_d_lvds_2[2];
+            tbi_rx_d_flip_2[8] <= tbi_rx_d_lvds_2[1];
+            tbi_rx_d_flip_2[9] <= tbi_rx_d_lvds_2[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_2 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_2[0] <= tbi_tx_d_2[9];
+            tbi_tx_d_flip_2[1] <= tbi_tx_d_2[8];
+            tbi_tx_d_flip_2[2] <= tbi_tx_d_2[7];
+            tbi_tx_d_flip_2[3] <= tbi_tx_d_2[6];
+            tbi_tx_d_flip_2[4] <= tbi_tx_d_2[5];
+            tbi_tx_d_flip_2[5] <= tbi_tx_d_2[4];
+            tbi_tx_d_flip_2[6] <= tbi_tx_d_2[3];
+            tbi_tx_d_flip_2[7] <= tbi_tx_d_2[2];
+            tbi_tx_d_flip_2[8] <= tbi_tx_d_2[1];
+            tbi_tx_d_flip_2[9] <= tbi_tx_d_2[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_2
+     (
+         .rx_divfwdclk (tbi_rx_clk_2),
+         .rx_in (rxp_2),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_2),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_2
+    (
+        .tx_in (tbi_tx_d_flip_2),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_2)
+    );
+
+    end    
+else
+    begin
+    assign txp_2 = 1'b0;
+    assign tbi_rx_clk_2 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 3 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 3)
+    begin          
+        assign gxb_pwrdn_in_sig[3] = gxb_pwrdn_in_3;
+        assign pcs_pwrdn_out_3 = pcs_pwrdn_out_sig[3];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[3] = pcs_pwrdn_out_sig[3];
+		assign pcs_pwrdn_out_3 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 3)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_3
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[3]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_3),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_3),
+        .rx_dataout (tbi_rx_d_3),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_3),
+        .tx_clkout (tbi_tx_clk_3),
+        .tx_datain (tbi_tx_d_3),
+        .tx_dataout (txp_3),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 3)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_3
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[3]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_3),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_3),
+        .rx_dataout (tbi_rx_d_3),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_3),
+        .tx_clkout (tbi_tx_clk_3),
+        .tx_datain (tbi_tx_d_3),
+        .tx_dataout (txp_3),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 3)
+    begin          
+
+    assign tbi_tx_clk_3 = ref_clk;
+    assign tbi_rx_d_3 = tbi_rx_d_flip_3;
+
+    always @(posedge tbi_rx_clk_3 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_3 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_3[0] <= tbi_rx_d_lvds_3[9];
+            tbi_rx_d_flip_3[1] <= tbi_rx_d_lvds_3[8];
+            tbi_rx_d_flip_3[2] <= tbi_rx_d_lvds_3[7];
+            tbi_rx_d_flip_3[3] <= tbi_rx_d_lvds_3[6];
+            tbi_rx_d_flip_3[4] <= tbi_rx_d_lvds_3[5];
+            tbi_rx_d_flip_3[5] <= tbi_rx_d_lvds_3[4];
+            tbi_rx_d_flip_3[6] <= tbi_rx_d_lvds_3[3];
+            tbi_rx_d_flip_3[7] <= tbi_rx_d_lvds_3[2];
+            tbi_rx_d_flip_3[8] <= tbi_rx_d_lvds_3[1];
+            tbi_rx_d_flip_3[9] <= tbi_rx_d_lvds_3[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_3 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_3[0] <= tbi_tx_d_3[9];
+            tbi_tx_d_flip_3[1] <= tbi_tx_d_3[8];
+            tbi_tx_d_flip_3[2] <= tbi_tx_d_3[7];
+            tbi_tx_d_flip_3[3] <= tbi_tx_d_3[6];
+            tbi_tx_d_flip_3[4] <= tbi_tx_d_3[5];
+            tbi_tx_d_flip_3[5] <= tbi_tx_d_3[4];
+            tbi_tx_d_flip_3[6] <= tbi_tx_d_3[3];
+            tbi_tx_d_flip_3[7] <= tbi_tx_d_3[2];
+            tbi_tx_d_flip_3[8] <= tbi_tx_d_3[1];
+            tbi_tx_d_flip_3[9] <= tbi_tx_d_3[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_3
+     (
+         .rx_divfwdclk (tbi_rx_clk_3),
+         .rx_in (rxp_3),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_3),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_3
+    (
+        .tx_in (tbi_tx_d_flip_3),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_3)
+    );
+
+    end    
+else
+    begin
+    assign txp_3 = 1'b0;
+    assign tbi_rx_clk_3 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 4 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 4)
+    begin          
+        assign gxb_pwrdn_in_sig[4] = gxb_pwrdn_in_4;
+        assign pcs_pwrdn_out_4 = pcs_pwrdn_out_sig[4];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[4] = pcs_pwrdn_out_sig[4];
+		assign pcs_pwrdn_out_4 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 4)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_4
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[4]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_4),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_4),
+        .rx_dataout (tbi_rx_d_4),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_4),
+        .tx_clkout (tbi_tx_clk_4),
+        .tx_datain (tbi_tx_d_4),
+        .tx_dataout (txp_4),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 4)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_4
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[4]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_4),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_4),
+        .rx_dataout (tbi_rx_d_4),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_4),
+        .tx_clkout (tbi_tx_clk_4),
+        .tx_datain (tbi_tx_d_4),
+        .tx_dataout (txp_4),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 4)
+    begin          
+
+    assign tbi_tx_clk_4 = ref_clk;
+    assign tbi_rx_d_4 = tbi_rx_d_flip_4;
+
+    always @(posedge tbi_rx_clk_4 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_4 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_4[0] <= tbi_rx_d_lvds_4[9];
+            tbi_rx_d_flip_4[1] <= tbi_rx_d_lvds_4[8];
+            tbi_rx_d_flip_4[2] <= tbi_rx_d_lvds_4[7];
+            tbi_rx_d_flip_4[3] <= tbi_rx_d_lvds_4[6];
+            tbi_rx_d_flip_4[4] <= tbi_rx_d_lvds_4[5];
+            tbi_rx_d_flip_4[5] <= tbi_rx_d_lvds_4[4];
+            tbi_rx_d_flip_4[6] <= tbi_rx_d_lvds_4[3];
+            tbi_rx_d_flip_4[7] <= tbi_rx_d_lvds_4[2];
+            tbi_rx_d_flip_4[8] <= tbi_rx_d_lvds_4[1];
+            tbi_rx_d_flip_4[9] <= tbi_rx_d_lvds_4[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_4 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_4[0] <= tbi_tx_d_4[9];
+            tbi_tx_d_flip_4[1] <= tbi_tx_d_4[8];
+            tbi_tx_d_flip_4[2] <= tbi_tx_d_4[7];
+            tbi_tx_d_flip_4[3] <= tbi_tx_d_4[6];
+            tbi_tx_d_flip_4[4] <= tbi_tx_d_4[5];
+            tbi_tx_d_flip_4[5] <= tbi_tx_d_4[4];
+            tbi_tx_d_flip_4[6] <= tbi_tx_d_4[3];
+            tbi_tx_d_flip_4[7] <= tbi_tx_d_4[2];
+            tbi_tx_d_flip_4[8] <= tbi_tx_d_4[1];
+            tbi_tx_d_flip_4[9] <= tbi_tx_d_4[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_4
+     (
+         .rx_divfwdclk (tbi_rx_clk_4),
+         .rx_in (rxp_4),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_4),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_4
+    (
+        .tx_in (tbi_tx_d_flip_4),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_4)
+    );
+
+    end    
+else
+    begin
+    assign txp_4 = 1'b0;
+    assign tbi_rx_clk_4 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 5 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 5)
+    begin          
+        assign gxb_pwrdn_in_sig[5] = gxb_pwrdn_in_5;
+        assign pcs_pwrdn_out_5 = pcs_pwrdn_out_sig[5];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[5] = pcs_pwrdn_out_sig[5];
+		assign pcs_pwrdn_out_5 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 5)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_5
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[5]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_5),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_5),
+        .rx_dataout (tbi_rx_d_5),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_5),
+        .tx_clkout (tbi_tx_clk_5),
+        .tx_datain (tbi_tx_d_5),
+        .tx_dataout (txp_5),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 5)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_5
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[5]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_5),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_5),
+        .rx_dataout (tbi_rx_d_5),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_5),
+        .tx_clkout (tbi_tx_clk_5),
+        .tx_datain (tbi_tx_d_5),
+        .tx_dataout (txp_5),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 5)
+    begin          
+
+    assign tbi_tx_clk_5 = ref_clk;
+    assign tbi_rx_d_5 = tbi_rx_d_flip_5;
+
+    always @(posedge tbi_rx_clk_5 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_5 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_5[0] <= tbi_rx_d_lvds_5[9];
+            tbi_rx_d_flip_5[1] <= tbi_rx_d_lvds_5[8];
+            tbi_rx_d_flip_5[2] <= tbi_rx_d_lvds_5[7];
+            tbi_rx_d_flip_5[3] <= tbi_rx_d_lvds_5[6];
+            tbi_rx_d_flip_5[4] <= tbi_rx_d_lvds_5[5];
+            tbi_rx_d_flip_5[5] <= tbi_rx_d_lvds_5[4];
+            tbi_rx_d_flip_5[6] <= tbi_rx_d_lvds_5[3];
+            tbi_rx_d_flip_5[7] <= tbi_rx_d_lvds_5[2];
+            tbi_rx_d_flip_5[8] <= tbi_rx_d_lvds_5[1];
+            tbi_rx_d_flip_5[9] <= tbi_rx_d_lvds_5[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_5 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_5[0] <= tbi_tx_d_5[9];
+            tbi_tx_d_flip_5[1] <= tbi_tx_d_5[8];
+            tbi_tx_d_flip_5[2] <= tbi_tx_d_5[7];
+            tbi_tx_d_flip_5[3] <= tbi_tx_d_5[6];
+            tbi_tx_d_flip_5[4] <= tbi_tx_d_5[5];
+            tbi_tx_d_flip_5[5] <= tbi_tx_d_5[4];
+            tbi_tx_d_flip_5[6] <= tbi_tx_d_5[3];
+            tbi_tx_d_flip_5[7] <= tbi_tx_d_5[2];
+            tbi_tx_d_flip_5[8] <= tbi_tx_d_5[1];
+            tbi_tx_d_flip_5[9] <= tbi_tx_d_5[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_5
+     (
+         .rx_divfwdclk (tbi_rx_clk_5),
+         .rx_in (rxp_5),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_5),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_5
+    (
+        .tx_in (tbi_tx_d_flip_5),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_5)
+    );
+
+    end    
+else
+    begin
+    assign txp_5 = 1'b0;
+    assign tbi_rx_clk_5 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 6 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 6)
+    begin          
+        assign gxb_pwrdn_in_sig[6] = gxb_pwrdn_in_6;
+        assign pcs_pwrdn_out_6 = pcs_pwrdn_out_sig[6];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[6] = pcs_pwrdn_out_sig[6];
+		assign pcs_pwrdn_out_6 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 6)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_6
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[6]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_6),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_6),
+        .rx_dataout (tbi_rx_d_6),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_6),
+        .tx_clkout (tbi_tx_clk_6),
+        .tx_datain (tbi_tx_d_6),
+        .tx_dataout (txp_6),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 6)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_6
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[6]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_6),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_6),
+        .rx_dataout (tbi_rx_d_6),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_6),
+        .tx_clkout (tbi_tx_clk_6),
+        .tx_datain (tbi_tx_d_6),
+        .tx_dataout (txp_6),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 6)
+    begin          
+
+    assign tbi_tx_clk_6 = ref_clk;
+    assign tbi_rx_d_6 = tbi_rx_d_flip_6;
+
+    always @(posedge tbi_rx_clk_6 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_6 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_6[0] <= tbi_rx_d_lvds_6[9];
+            tbi_rx_d_flip_6[1] <= tbi_rx_d_lvds_6[8];
+            tbi_rx_d_flip_6[2] <= tbi_rx_d_lvds_6[7];
+            tbi_rx_d_flip_6[3] <= tbi_rx_d_lvds_6[6];
+            tbi_rx_d_flip_6[4] <= tbi_rx_d_lvds_6[5];
+            tbi_rx_d_flip_6[5] <= tbi_rx_d_lvds_6[4];
+            tbi_rx_d_flip_6[6] <= tbi_rx_d_lvds_6[3];
+            tbi_rx_d_flip_6[7] <= tbi_rx_d_lvds_6[2];
+            tbi_rx_d_flip_6[8] <= tbi_rx_d_lvds_6[1];
+            tbi_rx_d_flip_6[9] <= tbi_rx_d_lvds_6[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_6 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_6[0] <= tbi_tx_d_6[9];
+            tbi_tx_d_flip_6[1] <= tbi_tx_d_6[8];
+            tbi_tx_d_flip_6[2] <= tbi_tx_d_6[7];
+            tbi_tx_d_flip_6[3] <= tbi_tx_d_6[6];
+            tbi_tx_d_flip_6[4] <= tbi_tx_d_6[5];
+            tbi_tx_d_flip_6[5] <= tbi_tx_d_6[4];
+            tbi_tx_d_flip_6[6] <= tbi_tx_d_6[3];
+            tbi_tx_d_flip_6[7] <= tbi_tx_d_6[2];
+            tbi_tx_d_flip_6[8] <= tbi_tx_d_6[1];
+            tbi_tx_d_flip_6[9] <= tbi_tx_d_6[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_6
+     (
+         .rx_divfwdclk (tbi_rx_clk_6),
+         .rx_in (rxp_6),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_6),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_6
+    (
+        .tx_in (tbi_tx_d_flip_6),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_6)
+    );
+
+    end    
+else
+    begin
+    assign txp_6 = 1'b0;
+    assign tbi_rx_clk_6 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 7 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 7)
+    begin          
+        assign gxb_pwrdn_in_sig[7] = gxb_pwrdn_in_7;
+        assign pcs_pwrdn_out_7 = pcs_pwrdn_out_sig[7];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[7] = pcs_pwrdn_out_sig[7];
+		assign pcs_pwrdn_out_7 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 7)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_7
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[7]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_7),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_7),
+        .rx_dataout (tbi_rx_d_7),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_7),
+        .tx_clkout (tbi_tx_clk_7),
+        .tx_datain (tbi_tx_d_7),
+        .tx_dataout (txp_7),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 7)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_7
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[7]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_7),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_7),
+        .rx_dataout (tbi_rx_d_7),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_7),
+        .tx_clkout (tbi_tx_clk_7),
+        .tx_datain (tbi_tx_d_7),
+        .tx_dataout (txp_7),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 7)
+    begin          
+
+    assign tbi_tx_clk_7 = ref_clk;
+    assign tbi_rx_d_7 = tbi_rx_d_flip_7;
+
+    always @(posedge tbi_rx_clk_7 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_7 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_7[0] <= tbi_rx_d_lvds_7[9];
+            tbi_rx_d_flip_7[1] <= tbi_rx_d_lvds_7[8];
+            tbi_rx_d_flip_7[2] <= tbi_rx_d_lvds_7[7];
+            tbi_rx_d_flip_7[3] <= tbi_rx_d_lvds_7[6];
+            tbi_rx_d_flip_7[4] <= tbi_rx_d_lvds_7[5];
+            tbi_rx_d_flip_7[5] <= tbi_rx_d_lvds_7[4];
+            tbi_rx_d_flip_7[6] <= tbi_rx_d_lvds_7[3];
+            tbi_rx_d_flip_7[7] <= tbi_rx_d_lvds_7[2];
+            tbi_rx_d_flip_7[8] <= tbi_rx_d_lvds_7[1];
+            tbi_rx_d_flip_7[9] <= tbi_rx_d_lvds_7[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_7 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_7[0] <= tbi_tx_d_7[9];
+            tbi_tx_d_flip_7[1] <= tbi_tx_d_7[8];
+            tbi_tx_d_flip_7[2] <= tbi_tx_d_7[7];
+            tbi_tx_d_flip_7[3] <= tbi_tx_d_7[6];
+            tbi_tx_d_flip_7[4] <= tbi_tx_d_7[5];
+            tbi_tx_d_flip_7[5] <= tbi_tx_d_7[4];
+            tbi_tx_d_flip_7[6] <= tbi_tx_d_7[3];
+            tbi_tx_d_flip_7[7] <= tbi_tx_d_7[2];
+            tbi_tx_d_flip_7[8] <= tbi_tx_d_7[1];
+            tbi_tx_d_flip_7[9] <= tbi_tx_d_7[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_7
+     (
+         .rx_divfwdclk (tbi_rx_clk_7),
+         .rx_in (rxp_7),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_7),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_7
+    (
+        .tx_in (tbi_tx_d_flip_7),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_7)
+    );
+
+    end 
+else
+    begin
+    assign txp_7 = 1'b0;
+    assign tbi_rx_clk_7 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 8 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 8)
+    begin          
+        assign gxb_pwrdn_in_sig[8] = gxb_pwrdn_in_8;
+        assign pcs_pwrdn_out_8 = pcs_pwrdn_out_sig[8];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[8] = pcs_pwrdn_out_sig[8];
+		assign pcs_pwrdn_out_8 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 8)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_8
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[8]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_8),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_8),
+        .rx_dataout (tbi_rx_d_8),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_8),
+        .tx_clkout (tbi_tx_clk_8),
+        .tx_datain (tbi_tx_d_8),
+        .tx_dataout (txp_8),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 8)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_8
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[8]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_8),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_8),
+        .rx_dataout (tbi_rx_d_8),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_8),
+        .tx_clkout (tbi_tx_clk_8),
+        .tx_datain (tbi_tx_d_8),
+        .tx_dataout (txp_8),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 8)
+    begin          
+
+    assign tbi_tx_clk_8 = ref_clk;
+    assign tbi_rx_d_8 = tbi_rx_d_flip_8;
+
+    always @(posedge tbi_rx_clk_8 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_8 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_8[0] <= tbi_rx_d_lvds_8[9];
+            tbi_rx_d_flip_8[1] <= tbi_rx_d_lvds_8[8];
+            tbi_rx_d_flip_8[2] <= tbi_rx_d_lvds_8[7];
+            tbi_rx_d_flip_8[3] <= tbi_rx_d_lvds_8[6];
+            tbi_rx_d_flip_8[4] <= tbi_rx_d_lvds_8[5];
+            tbi_rx_d_flip_8[5] <= tbi_rx_d_lvds_8[4];
+            tbi_rx_d_flip_8[6] <= tbi_rx_d_lvds_8[3];
+            tbi_rx_d_flip_8[7] <= tbi_rx_d_lvds_8[2];
+            tbi_rx_d_flip_8[8] <= tbi_rx_d_lvds_8[1];
+            tbi_rx_d_flip_8[9] <= tbi_rx_d_lvds_8[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_8 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_8[0] <= tbi_tx_d_8[9];
+            tbi_tx_d_flip_8[1] <= tbi_tx_d_8[8];
+            tbi_tx_d_flip_8[2] <= tbi_tx_d_8[7];
+            tbi_tx_d_flip_8[3] <= tbi_tx_d_8[6];
+            tbi_tx_d_flip_8[4] <= tbi_tx_d_8[5];
+            tbi_tx_d_flip_8[5] <= tbi_tx_d_8[4];
+            tbi_tx_d_flip_8[6] <= tbi_tx_d_8[3];
+            tbi_tx_d_flip_8[7] <= tbi_tx_d_8[2];
+            tbi_tx_d_flip_8[8] <= tbi_tx_d_8[1];
+            tbi_tx_d_flip_8[9] <= tbi_tx_d_8[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_8
+     (
+         .rx_divfwdclk (tbi_rx_clk_8),
+         .rx_in (rxp_8),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_8),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_8
+    (
+        .tx_in (tbi_tx_d_flip_8),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_8)
+    );
+
+    end   
+else
+    begin
+    assign txp_8 = 1'b0;
+    assign tbi_rx_clk_8 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 9 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 9)
+    begin          
+        assign gxb_pwrdn_in_sig[9] = gxb_pwrdn_in_9;
+        assign pcs_pwrdn_out_9 = pcs_pwrdn_out_sig[9];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[9] = pcs_pwrdn_out_sig[9];
+		assign pcs_pwrdn_out_9 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 9)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_9
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[9]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_9),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_9),
+        .rx_dataout (tbi_rx_d_9),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_9),
+        .tx_clkout (tbi_tx_clk_9),
+        .tx_datain (tbi_tx_d_9),
+        .tx_dataout (txp_9),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 9)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_9
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[9]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_9),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_9),
+        .rx_dataout (tbi_rx_d_9),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_9),
+        .tx_clkout (tbi_tx_clk_9),
+        .tx_datain (tbi_tx_d_9),
+        .tx_dataout (txp_9),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 9)
+    begin          
+
+    assign tbi_tx_clk_9 = ref_clk;
+    assign tbi_rx_d_9 = tbi_rx_d_flip_9;
+
+    always @(posedge tbi_rx_clk_9 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_9 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_9[0] <= tbi_rx_d_lvds_9[9];
+            tbi_rx_d_flip_9[1] <= tbi_rx_d_lvds_9[8];
+            tbi_rx_d_flip_9[2] <= tbi_rx_d_lvds_9[7];
+            tbi_rx_d_flip_9[3] <= tbi_rx_d_lvds_9[6];
+            tbi_rx_d_flip_9[4] <= tbi_rx_d_lvds_9[5];
+            tbi_rx_d_flip_9[5] <= tbi_rx_d_lvds_9[4];
+            tbi_rx_d_flip_9[6] <= tbi_rx_d_lvds_9[3];
+            tbi_rx_d_flip_9[7] <= tbi_rx_d_lvds_9[2];
+            tbi_rx_d_flip_9[8] <= tbi_rx_d_lvds_9[1];
+            tbi_rx_d_flip_9[9] <= tbi_rx_d_lvds_9[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_9 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_9[0] <= tbi_tx_d_9[9];
+            tbi_tx_d_flip_9[1] <= tbi_tx_d_9[8];
+            tbi_tx_d_flip_9[2] <= tbi_tx_d_9[7];
+            tbi_tx_d_flip_9[3] <= tbi_tx_d_9[6];
+            tbi_tx_d_flip_9[4] <= tbi_tx_d_9[5];
+            tbi_tx_d_flip_9[5] <= tbi_tx_d_9[4];
+            tbi_tx_d_flip_9[6] <= tbi_tx_d_9[3];
+            tbi_tx_d_flip_9[7] <= tbi_tx_d_9[2];
+            tbi_tx_d_flip_9[8] <= tbi_tx_d_9[1];
+            tbi_tx_d_flip_9[9] <= tbi_tx_d_9[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_9
+     (
+         .rx_divfwdclk (tbi_rx_clk_9),
+         .rx_in (rxp_9),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_9),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_9
+    (
+        .tx_in (tbi_tx_d_flip_9),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_9)
+    );
+
+    end  
+else
+    begin
+    assign txp_9 = 1'b0;
+    assign tbi_rx_clk_9 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 10 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 10)
+    begin          
+        assign gxb_pwrdn_in_sig[10] = gxb_pwrdn_in_10;
+        assign pcs_pwrdn_out_10 = pcs_pwrdn_out_sig[10];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[10] = pcs_pwrdn_out_sig[10];
+		assign pcs_pwrdn_out_10 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 10)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_10
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[10]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_10),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_10),
+        .rx_dataout (tbi_rx_d_10),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_10),
+        .tx_clkout (tbi_tx_clk_10),
+        .tx_datain (tbi_tx_d_10),
+        .tx_dataout (txp_10),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 10)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_10
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[10]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_10),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_10),
+        .rx_dataout (tbi_rx_d_10),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_10),
+        .tx_clkout (tbi_tx_clk_10),
+        .tx_datain (tbi_tx_d_10),
+        .tx_dataout (txp_10),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 10)
+    begin          
+
+    assign tbi_tx_clk_10 = ref_clk;
+    assign tbi_rx_d_10 = tbi_rx_d_flip_10;
+
+    always @(posedge tbi_rx_clk_10 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_10 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_10[0] <= tbi_rx_d_lvds_10[9];
+            tbi_rx_d_flip_10[1] <= tbi_rx_d_lvds_10[8];
+            tbi_rx_d_flip_10[2] <= tbi_rx_d_lvds_10[7];
+            tbi_rx_d_flip_10[3] <= tbi_rx_d_lvds_10[6];
+            tbi_rx_d_flip_10[4] <= tbi_rx_d_lvds_10[5];
+            tbi_rx_d_flip_10[5] <= tbi_rx_d_lvds_10[4];
+            tbi_rx_d_flip_10[6] <= tbi_rx_d_lvds_10[3];
+            tbi_rx_d_flip_10[7] <= tbi_rx_d_lvds_10[2];
+            tbi_rx_d_flip_10[8] <= tbi_rx_d_lvds_10[1];
+            tbi_rx_d_flip_10[9] <= tbi_rx_d_lvds_10[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_10 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_10[0] <= tbi_tx_d_10[9];
+            tbi_tx_d_flip_10[1] <= tbi_tx_d_10[8];
+            tbi_tx_d_flip_10[2] <= tbi_tx_d_10[7];
+            tbi_tx_d_flip_10[3] <= tbi_tx_d_10[6];
+            tbi_tx_d_flip_10[4] <= tbi_tx_d_10[5];
+            tbi_tx_d_flip_10[5] <= tbi_tx_d_10[4];
+            tbi_tx_d_flip_10[6] <= tbi_tx_d_10[3];
+            tbi_tx_d_flip_10[7] <= tbi_tx_d_10[2];
+            tbi_tx_d_flip_10[8] <= tbi_tx_d_10[1];
+            tbi_tx_d_flip_10[9] <= tbi_tx_d_10[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_10
+     (
+         .rx_divfwdclk (tbi_rx_clk_10),
+         .rx_in (rxp_10),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_10),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_10
+    (
+        .tx_in (tbi_tx_d_flip_10),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_10)
+    );
+
+    end    
+else
+    begin
+    assign txp_10 = 1'b0;
+    assign tbi_rx_clk_10 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 11 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 11)
+    begin          
+        assign gxb_pwrdn_in_sig[11] = gxb_pwrdn_in_11;
+        assign pcs_pwrdn_out_11 = pcs_pwrdn_out_sig[11];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[11] = pcs_pwrdn_out_sig[11];
+		assign pcs_pwrdn_out_11 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 11)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_11
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[11]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_11),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_11),
+        .rx_dataout (tbi_rx_d_11),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_11),
+        .tx_clkout (tbi_tx_clk_11),
+        .tx_datain (tbi_tx_d_11),
+        .tx_dataout (txp_11),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 11)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_11
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[11]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_11),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_11),
+        .rx_dataout (tbi_rx_d_11),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_11),
+        .tx_clkout (tbi_tx_clk_11),
+        .tx_datain (tbi_tx_d_11),
+        .tx_dataout (txp_11),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 11)
+    begin          
+
+    assign tbi_tx_clk_11 = ref_clk;
+    assign tbi_rx_d_11 = tbi_rx_d_flip_11;
+
+    always @(posedge tbi_rx_clk_11 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_11 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_11[0] <= tbi_rx_d_lvds_11[9];
+            tbi_rx_d_flip_11[1] <= tbi_rx_d_lvds_11[8];
+            tbi_rx_d_flip_11[2] <= tbi_rx_d_lvds_11[7];
+            tbi_rx_d_flip_11[3] <= tbi_rx_d_lvds_11[6];
+            tbi_rx_d_flip_11[4] <= tbi_rx_d_lvds_11[5];
+            tbi_rx_d_flip_11[5] <= tbi_rx_d_lvds_11[4];
+            tbi_rx_d_flip_11[6] <= tbi_rx_d_lvds_11[3];
+            tbi_rx_d_flip_11[7] <= tbi_rx_d_lvds_11[2];
+            tbi_rx_d_flip_11[8] <= tbi_rx_d_lvds_11[1];
+            tbi_rx_d_flip_11[9] <= tbi_rx_d_lvds_11[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_11 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_11[0] <= tbi_tx_d_11[9];
+            tbi_tx_d_flip_11[1] <= tbi_tx_d_11[8];
+            tbi_tx_d_flip_11[2] <= tbi_tx_d_11[7];
+            tbi_tx_d_flip_11[3] <= tbi_tx_d_11[6];
+            tbi_tx_d_flip_11[4] <= tbi_tx_d_11[5];
+            tbi_tx_d_flip_11[5] <= tbi_tx_d_11[4];
+            tbi_tx_d_flip_11[6] <= tbi_tx_d_11[3];
+            tbi_tx_d_flip_11[7] <= tbi_tx_d_11[2];
+            tbi_tx_d_flip_11[8] <= tbi_tx_d_11[1];
+            tbi_tx_d_flip_11[9] <= tbi_tx_d_11[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_11
+     (
+         .rx_divfwdclk (tbi_rx_clk_11),
+         .rx_in (rxp_11),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_11),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_11
+    (
+        .tx_in (tbi_tx_d_flip_11),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_11)
+    );
+
+    end    
+else
+    begin
+    assign txp_11 = 1'b0;
+    assign tbi_rx_clk_11 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 12 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 12)
+    begin          
+        assign gxb_pwrdn_in_sig[12] = gxb_pwrdn_in_12;
+        assign pcs_pwrdn_out_12 = pcs_pwrdn_out_sig[12];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[12] = pcs_pwrdn_out_sig[12];
+		assign pcs_pwrdn_out_12 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 12)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_12
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[12]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_12),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_12),
+        .rx_dataout (tbi_rx_d_12),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_12),
+        .tx_clkout (tbi_tx_clk_12),
+        .tx_datain (tbi_tx_d_12),
+        .tx_dataout (txp_12),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 12)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_12
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[12]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_12),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_12),
+        .rx_dataout (tbi_rx_d_12),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_12),
+        .tx_clkout (tbi_tx_clk_12),
+        .tx_datain (tbi_tx_d_12),
+        .tx_dataout (txp_12),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 12)
+    begin          
+
+    assign tbi_tx_clk_12 = ref_clk;
+    assign tbi_rx_d_12 = tbi_rx_d_flip_12;
+
+    always @(posedge tbi_rx_clk_12 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_12 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_12[0] <= tbi_rx_d_lvds_12[9];
+            tbi_rx_d_flip_12[1] <= tbi_rx_d_lvds_12[8];
+            tbi_rx_d_flip_12[2] <= tbi_rx_d_lvds_12[7];
+            tbi_rx_d_flip_12[3] <= tbi_rx_d_lvds_12[6];
+            tbi_rx_d_flip_12[4] <= tbi_rx_d_lvds_12[5];
+            tbi_rx_d_flip_12[5] <= tbi_rx_d_lvds_12[4];
+            tbi_rx_d_flip_12[6] <= tbi_rx_d_lvds_12[3];
+            tbi_rx_d_flip_12[7] <= tbi_rx_d_lvds_12[2];
+            tbi_rx_d_flip_12[8] <= tbi_rx_d_lvds_12[1];
+            tbi_rx_d_flip_12[9] <= tbi_rx_d_lvds_12[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_12 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_12[0] <= tbi_tx_d_12[9];
+            tbi_tx_d_flip_12[1] <= tbi_tx_d_12[8];
+            tbi_tx_d_flip_12[2] <= tbi_tx_d_12[7];
+            tbi_tx_d_flip_12[3] <= tbi_tx_d_12[6];
+            tbi_tx_d_flip_12[4] <= tbi_tx_d_12[5];
+            tbi_tx_d_flip_12[5] <= tbi_tx_d_12[4];
+            tbi_tx_d_flip_12[6] <= tbi_tx_d_12[3];
+            tbi_tx_d_flip_12[7] <= tbi_tx_d_12[2];
+            tbi_tx_d_flip_12[8] <= tbi_tx_d_12[1];
+            tbi_tx_d_flip_12[9] <= tbi_tx_d_12[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_12
+     (
+         .rx_divfwdclk (tbi_rx_clk_12),
+         .rx_in (rxp_12),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_12),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_12
+    (
+        .tx_in (tbi_tx_d_flip_12),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_12)
+    );
+
+    end   
+else
+    begin
+    assign txp_12 = 1'b0;
+    assign tbi_rx_clk_12 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 13 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 13)
+    begin          
+        assign gxb_pwrdn_in_sig[13] = gxb_pwrdn_in_13;
+        assign pcs_pwrdn_out_13 = pcs_pwrdn_out_sig[13];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[13] = pcs_pwrdn_out_sig[13];
+		assign pcs_pwrdn_out_13 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 13)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_13
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[13]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_13),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_13),
+        .rx_dataout (tbi_rx_d_13),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_13),
+        .tx_clkout (tbi_tx_clk_13),
+        .tx_datain (tbi_tx_d_13),
+        .tx_dataout (txp_13),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 13)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_13
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[13]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_13),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_13),
+        .rx_dataout (tbi_rx_d_13),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_13),
+        .tx_clkout (tbi_tx_clk_13),
+        .tx_datain (tbi_tx_d_13),
+        .tx_dataout (txp_13),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 13)
+    begin          
+
+    assign tbi_tx_clk_13 = ref_clk;
+    assign tbi_rx_d_13 = tbi_rx_d_flip_13;
+
+    always @(posedge tbi_rx_clk_13 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_13 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_13[0] <= tbi_rx_d_lvds_13[9];
+            tbi_rx_d_flip_13[1] <= tbi_rx_d_lvds_13[8];
+            tbi_rx_d_flip_13[2] <= tbi_rx_d_lvds_13[7];
+            tbi_rx_d_flip_13[3] <= tbi_rx_d_lvds_13[6];
+            tbi_rx_d_flip_13[4] <= tbi_rx_d_lvds_13[5];
+            tbi_rx_d_flip_13[5] <= tbi_rx_d_lvds_13[4];
+            tbi_rx_d_flip_13[6] <= tbi_rx_d_lvds_13[3];
+            tbi_rx_d_flip_13[7] <= tbi_rx_d_lvds_13[2];
+            tbi_rx_d_flip_13[8] <= tbi_rx_d_lvds_13[1];
+            tbi_rx_d_flip_13[9] <= tbi_rx_d_lvds_13[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_13 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_13[0] <= tbi_tx_d_13[9];
+            tbi_tx_d_flip_13[1] <= tbi_tx_d_13[8];
+            tbi_tx_d_flip_13[2] <= tbi_tx_d_13[7];
+            tbi_tx_d_flip_13[3] <= tbi_tx_d_13[6];
+            tbi_tx_d_flip_13[4] <= tbi_tx_d_13[5];
+            tbi_tx_d_flip_13[5] <= tbi_tx_d_13[4];
+            tbi_tx_d_flip_13[6] <= tbi_tx_d_13[3];
+            tbi_tx_d_flip_13[7] <= tbi_tx_d_13[2];
+            tbi_tx_d_flip_13[8] <= tbi_tx_d_13[1];
+            tbi_tx_d_flip_13[9] <= tbi_tx_d_13[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_13
+     (
+         .rx_divfwdclk (tbi_rx_clk_13),
+         .rx_in (rxp_13),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_13),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_13
+    (
+        .tx_in (tbi_tx_d_flip_13),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_13)
+    );
+
+    end    
+else
+    begin
+    assign txp_13 = 1'b0;
+    assign tbi_rx_clk_13 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 14 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 14)
+    begin          
+        assign gxb_pwrdn_in_sig[14] = gxb_pwrdn_in_14;
+        assign pcs_pwrdn_out_14 = pcs_pwrdn_out_sig[14];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[14] = pcs_pwrdn_out_sig[14];
+		assign pcs_pwrdn_out_14 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 14)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_14
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[14]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_14),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_14),
+        .rx_dataout (tbi_rx_d_14),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_14),
+        .tx_clkout (tbi_tx_clk_14),
+        .tx_datain (tbi_tx_d_14),
+        .tx_dataout (txp_14),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 14)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_14
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[14]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_14),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_14),
+        .rx_dataout (tbi_rx_d_14),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_14),
+        .tx_clkout (tbi_tx_clk_14),
+        .tx_datain (tbi_tx_d_14),
+        .tx_dataout (txp_14),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 14)
+    begin          
+
+    assign tbi_tx_clk_14 = ref_clk;
+    assign tbi_rx_d_14 = tbi_rx_d_flip_14;
+
+    always @(posedge tbi_rx_clk_14 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_14 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_14[0] <= tbi_rx_d_lvds_14[9];
+            tbi_rx_d_flip_14[1] <= tbi_rx_d_lvds_14[8];
+            tbi_rx_d_flip_14[2] <= tbi_rx_d_lvds_14[7];
+            tbi_rx_d_flip_14[3] <= tbi_rx_d_lvds_14[6];
+            tbi_rx_d_flip_14[4] <= tbi_rx_d_lvds_14[5];
+            tbi_rx_d_flip_14[5] <= tbi_rx_d_lvds_14[4];
+            tbi_rx_d_flip_14[6] <= tbi_rx_d_lvds_14[3];
+            tbi_rx_d_flip_14[7] <= tbi_rx_d_lvds_14[2];
+            tbi_rx_d_flip_14[8] <= tbi_rx_d_lvds_14[1];
+            tbi_rx_d_flip_14[9] <= tbi_rx_d_lvds_14[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_14 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_14[0] <= tbi_tx_d_14[9];
+            tbi_tx_d_flip_14[1] <= tbi_tx_d_14[8];
+            tbi_tx_d_flip_14[2] <= tbi_tx_d_14[7];
+            tbi_tx_d_flip_14[3] <= tbi_tx_d_14[6];
+            tbi_tx_d_flip_14[4] <= tbi_tx_d_14[5];
+            tbi_tx_d_flip_14[5] <= tbi_tx_d_14[4];
+            tbi_tx_d_flip_14[6] <= tbi_tx_d_14[3];
+            tbi_tx_d_flip_14[7] <= tbi_tx_d_14[2];
+            tbi_tx_d_flip_14[8] <= tbi_tx_d_14[1];
+            tbi_tx_d_flip_14[9] <= tbi_tx_d_14[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_14
+     (
+         .rx_divfwdclk (tbi_rx_clk_14),
+         .rx_in (rxp_14),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_14),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_14
+    (
+        .tx_in (tbi_tx_d_flip_14),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_14)
+    );
+
+    end
+else
+    begin
+    assign txp_14 = 1'b0;
+    assign tbi_rx_clk_14 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 15 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 15)
+    begin          
+        assign gxb_pwrdn_in_sig[15] = gxb_pwrdn_in_15;
+        assign pcs_pwrdn_out_15 = pcs_pwrdn_out_sig[15];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[15] = pcs_pwrdn_out_sig[15];
+		assign pcs_pwrdn_out_15 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 15)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_15
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[15]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_15),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_15),
+        .rx_dataout (tbi_rx_d_15),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_15),
+        .tx_clkout (tbi_tx_clk_15),
+        .tx_datain (tbi_tx_d_15),
+        .tx_dataout (txp_15),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 15)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_15
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[15]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_15),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_15),
+        .rx_dataout (tbi_rx_d_15),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_15),
+        .tx_clkout (tbi_tx_clk_15),
+        .tx_datain (tbi_tx_d_15),
+        .tx_dataout (txp_15),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 15)
+    begin          
+
+    assign tbi_tx_clk_15 = ref_clk;
+    assign tbi_rx_d_15 = tbi_rx_d_flip_15;
+
+    always @(posedge tbi_rx_clk_15 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_15 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_15[0] <= tbi_rx_d_lvds_15[9];
+            tbi_rx_d_flip_15[1] <= tbi_rx_d_lvds_15[8];
+            tbi_rx_d_flip_15[2] <= tbi_rx_d_lvds_15[7];
+            tbi_rx_d_flip_15[3] <= tbi_rx_d_lvds_15[6];
+            tbi_rx_d_flip_15[4] <= tbi_rx_d_lvds_15[5];
+            tbi_rx_d_flip_15[5] <= tbi_rx_d_lvds_15[4];
+            tbi_rx_d_flip_15[6] <= tbi_rx_d_lvds_15[3];
+            tbi_rx_d_flip_15[7] <= tbi_rx_d_lvds_15[2];
+            tbi_rx_d_flip_15[8] <= tbi_rx_d_lvds_15[1];
+            tbi_rx_d_flip_15[9] <= tbi_rx_d_lvds_15[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_15 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_15[0] <= tbi_tx_d_15[9];
+            tbi_tx_d_flip_15[1] <= tbi_tx_d_15[8];
+            tbi_tx_d_flip_15[2] <= tbi_tx_d_15[7];
+            tbi_tx_d_flip_15[3] <= tbi_tx_d_15[6];
+            tbi_tx_d_flip_15[4] <= tbi_tx_d_15[5];
+            tbi_tx_d_flip_15[5] <= tbi_tx_d_15[4];
+            tbi_tx_d_flip_15[6] <= tbi_tx_d_15[3];
+            tbi_tx_d_flip_15[7] <= tbi_tx_d_15[2];
+            tbi_tx_d_flip_15[8] <= tbi_tx_d_15[1];
+            tbi_tx_d_flip_15[9] <= tbi_tx_d_15[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_15
+     (
+         .rx_divfwdclk (tbi_rx_clk_15),
+         .rx_in (rxp_15),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_15),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_15
+    (
+        .tx_in (tbi_tx_d_flip_15),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_15)
+    );
+
+    end 
+else
+    begin
+    assign txp_15 = 1'b0;
+    assign tbi_rx_clk_15 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 16 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 16)
+    begin          
+        assign gxb_pwrdn_in_sig[16] = gxb_pwrdn_in_16;
+        assign pcs_pwrdn_out_16 = pcs_pwrdn_out_sig[16];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[16] = pcs_pwrdn_out_sig[16];
+		assign pcs_pwrdn_out_16 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 16)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_16
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[16]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_16),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_16),
+        .rx_dataout (tbi_rx_d_16),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_16),
+        .tx_clkout (tbi_tx_clk_16),
+        .tx_datain (tbi_tx_d_16),
+        .tx_dataout (txp_16),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 16)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_16
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[16]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_16),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_16),
+        .rx_dataout (tbi_rx_d_16),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_16),
+        .tx_clkout (tbi_tx_clk_16),
+        .tx_datain (tbi_tx_d_16),
+        .tx_dataout (txp_16),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 16)
+    begin          
+
+    assign tbi_tx_clk_16 = ref_clk;
+    assign tbi_rx_d_16 = tbi_rx_d_flip_16;
+
+    always @(posedge tbi_rx_clk_16 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_16 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_16[0] <= tbi_rx_d_lvds_16[9];
+            tbi_rx_d_flip_16[1] <= tbi_rx_d_lvds_16[8];
+            tbi_rx_d_flip_16[2] <= tbi_rx_d_lvds_16[7];
+            tbi_rx_d_flip_16[3] <= tbi_rx_d_lvds_16[6];
+            tbi_rx_d_flip_16[4] <= tbi_rx_d_lvds_16[5];
+            tbi_rx_d_flip_16[5] <= tbi_rx_d_lvds_16[4];
+            tbi_rx_d_flip_16[6] <= tbi_rx_d_lvds_16[3];
+            tbi_rx_d_flip_16[7] <= tbi_rx_d_lvds_16[2];
+            tbi_rx_d_flip_16[8] <= tbi_rx_d_lvds_16[1];
+            tbi_rx_d_flip_16[9] <= tbi_rx_d_lvds_16[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_16 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_16[0] <= tbi_tx_d_16[9];
+            tbi_tx_d_flip_16[1] <= tbi_tx_d_16[8];
+            tbi_tx_d_flip_16[2] <= tbi_tx_d_16[7];
+            tbi_tx_d_flip_16[3] <= tbi_tx_d_16[6];
+            tbi_tx_d_flip_16[4] <= tbi_tx_d_16[5];
+            tbi_tx_d_flip_16[5] <= tbi_tx_d_16[4];
+            tbi_tx_d_flip_16[6] <= tbi_tx_d_16[3];
+            tbi_tx_d_flip_16[7] <= tbi_tx_d_16[2];
+            tbi_tx_d_flip_16[8] <= tbi_tx_d_16[1];
+            tbi_tx_d_flip_16[9] <= tbi_tx_d_16[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_16
+     (
+         .rx_divfwdclk (tbi_rx_clk_16),
+         .rx_in (rxp_16),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_16),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_16
+    (
+        .tx_in (tbi_tx_d_flip_16),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_16)
+    );
+
+    end 
+else
+    begin
+    assign txp_16 = 1'b0;
+    assign tbi_rx_clk_16 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 17 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 17)
+    begin          
+        assign gxb_pwrdn_in_sig[17] = gxb_pwrdn_in_17;
+        assign pcs_pwrdn_out_17 = pcs_pwrdn_out_sig[17];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[17] = pcs_pwrdn_out_sig[17];
+		assign pcs_pwrdn_out_17 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 17)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_17
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[17]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_17),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_17),
+        .rx_dataout (tbi_rx_d_17),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_17),
+        .tx_clkout (tbi_tx_clk_17),
+        .tx_datain (tbi_tx_d_17),
+        .tx_dataout (txp_17),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 17)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_17
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[17]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_17),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_17),
+        .rx_dataout (tbi_rx_d_17),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_17),
+        .tx_clkout (tbi_tx_clk_17),
+        .tx_datain (tbi_tx_d_17),
+        .tx_dataout (txp_17),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 17)
+    begin          
+
+    assign tbi_tx_clk_17 = ref_clk;
+    assign tbi_rx_d_17 = tbi_rx_d_flip_17;
+
+    always @(posedge tbi_rx_clk_17 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_17 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_17[0] <= tbi_rx_d_lvds_17[9];
+            tbi_rx_d_flip_17[1] <= tbi_rx_d_lvds_17[8];
+            tbi_rx_d_flip_17[2] <= tbi_rx_d_lvds_17[7];
+            tbi_rx_d_flip_17[3] <= tbi_rx_d_lvds_17[6];
+            tbi_rx_d_flip_17[4] <= tbi_rx_d_lvds_17[5];
+            tbi_rx_d_flip_17[5] <= tbi_rx_d_lvds_17[4];
+            tbi_rx_d_flip_17[6] <= tbi_rx_d_lvds_17[3];
+            tbi_rx_d_flip_17[7] <= tbi_rx_d_lvds_17[2];
+            tbi_rx_d_flip_17[8] <= tbi_rx_d_lvds_17[1];
+            tbi_rx_d_flip_17[9] <= tbi_rx_d_lvds_17[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_17 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_17[0] <= tbi_tx_d_17[9];
+            tbi_tx_d_flip_17[1] <= tbi_tx_d_17[8];
+            tbi_tx_d_flip_17[2] <= tbi_tx_d_17[7];
+            tbi_tx_d_flip_17[3] <= tbi_tx_d_17[6];
+            tbi_tx_d_flip_17[4] <= tbi_tx_d_17[5];
+            tbi_tx_d_flip_17[5] <= tbi_tx_d_17[4];
+            tbi_tx_d_flip_17[6] <= tbi_tx_d_17[3];
+            tbi_tx_d_flip_17[7] <= tbi_tx_d_17[2];
+            tbi_tx_d_flip_17[8] <= tbi_tx_d_17[1];
+            tbi_tx_d_flip_17[9] <= tbi_tx_d_17[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_17
+     (
+         .rx_divfwdclk (tbi_rx_clk_17),
+         .rx_in (rxp_17),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_17),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_17
+    (
+        .tx_in (tbi_tx_d_flip_17),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_17)
+    );
+
+    end  
+else
+    begin
+    assign txp_17 = 1'b0;
+    assign tbi_rx_clk_17 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 18 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 18)
+    begin          
+        assign gxb_pwrdn_in_sig[18] = gxb_pwrdn_in_18;
+        assign pcs_pwrdn_out_18 = pcs_pwrdn_out_sig[18];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[18] = pcs_pwrdn_out_sig[18];
+		assign pcs_pwrdn_out_18 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 18)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_18
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[18]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_18),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_18),
+        .rx_dataout (tbi_rx_d_18),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_18),
+        .tx_clkout (tbi_tx_clk_18),
+        .tx_datain (tbi_tx_d_18),
+        .tx_dataout (txp_18),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 18)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_18
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[18]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_18),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_18),
+        .rx_dataout (tbi_rx_d_18),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_18),
+        .tx_clkout (tbi_tx_clk_18),
+        .tx_datain (tbi_tx_d_18),
+        .tx_dataout (txp_18),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 18)
+    begin          
+
+    assign tbi_tx_clk_18 = ref_clk;
+    assign tbi_rx_d_18 = tbi_rx_d_flip_18;
+
+    always @(posedge tbi_rx_clk_18 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_18 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_18[0] <= tbi_rx_d_lvds_18[9];
+            tbi_rx_d_flip_18[1] <= tbi_rx_d_lvds_18[8];
+            tbi_rx_d_flip_18[2] <= tbi_rx_d_lvds_18[7];
+            tbi_rx_d_flip_18[3] <= tbi_rx_d_lvds_18[6];
+            tbi_rx_d_flip_18[4] <= tbi_rx_d_lvds_18[5];
+            tbi_rx_d_flip_18[5] <= tbi_rx_d_lvds_18[4];
+            tbi_rx_d_flip_18[6] <= tbi_rx_d_lvds_18[3];
+            tbi_rx_d_flip_18[7] <= tbi_rx_d_lvds_18[2];
+            tbi_rx_d_flip_18[8] <= tbi_rx_d_lvds_18[1];
+            tbi_rx_d_flip_18[9] <= tbi_rx_d_lvds_18[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_18 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_18[0] <= tbi_tx_d_18[9];
+            tbi_tx_d_flip_18[1] <= tbi_tx_d_18[8];
+            tbi_tx_d_flip_18[2] <= tbi_tx_d_18[7];
+            tbi_tx_d_flip_18[3] <= tbi_tx_d_18[6];
+            tbi_tx_d_flip_18[4] <= tbi_tx_d_18[5];
+            tbi_tx_d_flip_18[5] <= tbi_tx_d_18[4];
+            tbi_tx_d_flip_18[6] <= tbi_tx_d_18[3];
+            tbi_tx_d_flip_18[7] <= tbi_tx_d_18[2];
+            tbi_tx_d_flip_18[8] <= tbi_tx_d_18[1];
+            tbi_tx_d_flip_18[9] <= tbi_tx_d_18[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_18
+     (
+         .rx_divfwdclk (tbi_rx_clk_18),
+         .rx_in (rxp_18),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_18),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_18
+    (
+        .tx_in (tbi_tx_d_flip_18),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_18)
+    );
+
+    end  
+else
+    begin
+    assign txp_18 = 1'b0;
+    assign tbi_rx_clk_18 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 19 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 19)
+    begin          
+        assign gxb_pwrdn_in_sig[19] = gxb_pwrdn_in_19;
+        assign pcs_pwrdn_out_19 = pcs_pwrdn_out_sig[19];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[19] = pcs_pwrdn_out_sig[19];
+		assign pcs_pwrdn_out_19 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 19)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_19
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[19]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_19),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_19),
+        .rx_dataout (tbi_rx_d_19),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_19),
+        .tx_clkout (tbi_tx_clk_19),
+        .tx_datain (tbi_tx_d_19),
+        .tx_dataout (txp_19),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 19)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_19
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[19]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_19),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_19),
+        .rx_dataout (tbi_rx_d_19),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_19),
+        .tx_clkout (tbi_tx_clk_19),
+        .tx_datain (tbi_tx_d_19),
+        .tx_dataout (txp_19),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 19)
+    begin          
+
+    assign tbi_tx_clk_19 = ref_clk;
+    assign tbi_rx_d_19 = tbi_rx_d_flip_19;
+
+    always @(posedge tbi_rx_clk_19 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_19 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_19[0] <= tbi_rx_d_lvds_19[9];
+            tbi_rx_d_flip_19[1] <= tbi_rx_d_lvds_19[8];
+            tbi_rx_d_flip_19[2] <= tbi_rx_d_lvds_19[7];
+            tbi_rx_d_flip_19[3] <= tbi_rx_d_lvds_19[6];
+            tbi_rx_d_flip_19[4] <= tbi_rx_d_lvds_19[5];
+            tbi_rx_d_flip_19[5] <= tbi_rx_d_lvds_19[4];
+            tbi_rx_d_flip_19[6] <= tbi_rx_d_lvds_19[3];
+            tbi_rx_d_flip_19[7] <= tbi_rx_d_lvds_19[2];
+            tbi_rx_d_flip_19[8] <= tbi_rx_d_lvds_19[1];
+            tbi_rx_d_flip_19[9] <= tbi_rx_d_lvds_19[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_19 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_19[0] <= tbi_tx_d_19[9];
+            tbi_tx_d_flip_19[1] <= tbi_tx_d_19[8];
+            tbi_tx_d_flip_19[2] <= tbi_tx_d_19[7];
+            tbi_tx_d_flip_19[3] <= tbi_tx_d_19[6];
+            tbi_tx_d_flip_19[4] <= tbi_tx_d_19[5];
+            tbi_tx_d_flip_19[5] <= tbi_tx_d_19[4];
+            tbi_tx_d_flip_19[6] <= tbi_tx_d_19[3];
+            tbi_tx_d_flip_19[7] <= tbi_tx_d_19[2];
+            tbi_tx_d_flip_19[8] <= tbi_tx_d_19[1];
+            tbi_tx_d_flip_19[9] <= tbi_tx_d_19[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_19
+     (
+         .rx_divfwdclk (tbi_rx_clk_19),
+         .rx_in (rxp_19),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_19),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_19
+    (
+        .tx_in (tbi_tx_d_flip_19),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_19)
+    );
+
+    end 
+else
+    begin
+    assign txp_19 = 1'b0;
+    assign tbi_rx_clk_19 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 20 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 20)
+    begin          
+        assign gxb_pwrdn_in_sig[20] = gxb_pwrdn_in_20;
+        assign pcs_pwrdn_out_20 = pcs_pwrdn_out_sig[20];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[20] = pcs_pwrdn_out_sig[20];
+		assign pcs_pwrdn_out_20 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 20)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_20
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[20]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_20),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_20),
+        .rx_dataout (tbi_rx_d_20),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_20),
+        .tx_clkout (tbi_tx_clk_20),
+        .tx_datain (tbi_tx_d_20),
+        .tx_dataout (txp_20),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 20)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_20
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[20]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_20),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_20),
+        .rx_dataout (tbi_rx_d_20),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_20),
+        .tx_clkout (tbi_tx_clk_20),
+        .tx_datain (tbi_tx_d_20),
+        .tx_dataout (txp_20),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 20)
+    begin          
+
+    assign tbi_tx_clk_20 = ref_clk;
+    assign tbi_rx_d_20 = tbi_rx_d_flip_20;
+
+    always @(posedge tbi_rx_clk_20 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_20 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_20[0] <= tbi_rx_d_lvds_20[9];
+            tbi_rx_d_flip_20[1] <= tbi_rx_d_lvds_20[8];
+            tbi_rx_d_flip_20[2] <= tbi_rx_d_lvds_20[7];
+            tbi_rx_d_flip_20[3] <= tbi_rx_d_lvds_20[6];
+            tbi_rx_d_flip_20[4] <= tbi_rx_d_lvds_20[5];
+            tbi_rx_d_flip_20[5] <= tbi_rx_d_lvds_20[4];
+            tbi_rx_d_flip_20[6] <= tbi_rx_d_lvds_20[3];
+            tbi_rx_d_flip_20[7] <= tbi_rx_d_lvds_20[2];
+            tbi_rx_d_flip_20[8] <= tbi_rx_d_lvds_20[1];
+            tbi_rx_d_flip_20[9] <= tbi_rx_d_lvds_20[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_20 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_20[0] <= tbi_tx_d_20[9];
+            tbi_tx_d_flip_20[1] <= tbi_tx_d_20[8];
+            tbi_tx_d_flip_20[2] <= tbi_tx_d_20[7];
+            tbi_tx_d_flip_20[3] <= tbi_tx_d_20[6];
+            tbi_tx_d_flip_20[4] <= tbi_tx_d_20[5];
+            tbi_tx_d_flip_20[5] <= tbi_tx_d_20[4];
+            tbi_tx_d_flip_20[6] <= tbi_tx_d_20[3];
+            tbi_tx_d_flip_20[7] <= tbi_tx_d_20[2];
+            tbi_tx_d_flip_20[8] <= tbi_tx_d_20[1];
+            tbi_tx_d_flip_20[9] <= tbi_tx_d_20[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_20
+     (
+         .rx_divfwdclk (tbi_rx_clk_20),
+         .rx_in (rxp_20),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_20),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_20
+    (
+        .tx_in (tbi_tx_d_flip_20),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_20)
+    );
+
+    end 
+else
+    begin
+    assign txp_20 = 1'b0;
+    assign tbi_rx_clk_20 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 21 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 21)
+    begin          
+        assign gxb_pwrdn_in_sig[21] = gxb_pwrdn_in_21;
+        assign pcs_pwrdn_out_21 = pcs_pwrdn_out_sig[21];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[21] = pcs_pwrdn_out_sig[21];
+		assign pcs_pwrdn_out_21 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 21)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_21
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[21]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_21),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_21),
+        .rx_dataout (tbi_rx_d_21),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_21),
+        .tx_clkout (tbi_tx_clk_21),
+        .tx_datain (tbi_tx_d_21),
+        .tx_dataout (txp_21),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 21)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_21
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[21]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_21),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_21),
+        .rx_dataout (tbi_rx_d_21),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_21),
+        .tx_clkout (tbi_tx_clk_21),
+        .tx_datain (tbi_tx_d_21),
+        .tx_dataout (txp_21),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 21)
+    begin          
+
+    assign tbi_tx_clk_21 = ref_clk;
+    assign tbi_rx_d_21 = tbi_rx_d_flip_21;
+
+    always @(posedge tbi_rx_clk_21 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_21 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_21[0] <= tbi_rx_d_lvds_21[9];
+            tbi_rx_d_flip_21[1] <= tbi_rx_d_lvds_21[8];
+            tbi_rx_d_flip_21[2] <= tbi_rx_d_lvds_21[7];
+            tbi_rx_d_flip_21[3] <= tbi_rx_d_lvds_21[6];
+            tbi_rx_d_flip_21[4] <= tbi_rx_d_lvds_21[5];
+            tbi_rx_d_flip_21[5] <= tbi_rx_d_lvds_21[4];
+            tbi_rx_d_flip_21[6] <= tbi_rx_d_lvds_21[3];
+            tbi_rx_d_flip_21[7] <= tbi_rx_d_lvds_21[2];
+            tbi_rx_d_flip_21[8] <= tbi_rx_d_lvds_21[1];
+            tbi_rx_d_flip_21[9] <= tbi_rx_d_lvds_21[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_21 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_21[0] <= tbi_tx_d_21[9];
+            tbi_tx_d_flip_21[1] <= tbi_tx_d_21[8];
+            tbi_tx_d_flip_21[2] <= tbi_tx_d_21[7];
+            tbi_tx_d_flip_21[3] <= tbi_tx_d_21[6];
+            tbi_tx_d_flip_21[4] <= tbi_tx_d_21[5];
+            tbi_tx_d_flip_21[5] <= tbi_tx_d_21[4];
+            tbi_tx_d_flip_21[6] <= tbi_tx_d_21[3];
+            tbi_tx_d_flip_21[7] <= tbi_tx_d_21[2];
+            tbi_tx_d_flip_21[8] <= tbi_tx_d_21[1];
+            tbi_tx_d_flip_21[9] <= tbi_tx_d_21[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_21
+     (
+         .rx_divfwdclk (tbi_rx_clk_21),
+         .rx_in (rxp_21),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_21),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_21
+    (
+        .tx_in (tbi_tx_d_flip_21),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_21)
+    );
+
+    end  
+else
+    begin
+    assign txp_21 = 1'b0;
+    assign tbi_rx_clk_21 = 1'b0;	
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 22 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 22)
+    begin          
+        assign gxb_pwrdn_in_sig[22] = gxb_pwrdn_in_22;
+        assign pcs_pwrdn_out_22 = pcs_pwrdn_out_sig[22];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[22] = pcs_pwrdn_out_sig[22];
+		assign pcs_pwrdn_out_22 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 22)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_22
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[22]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_22),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_22),
+        .rx_dataout (tbi_rx_d_22),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_22),
+        .tx_clkout (tbi_tx_clk_22),
+        .tx_datain (tbi_tx_d_22),
+        .tx_dataout (txp_22),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 22)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_22
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[22]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_22),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_22),
+        .rx_dataout (tbi_rx_d_22),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_22),
+        .tx_clkout (tbi_tx_clk_22),
+        .tx_datain (tbi_tx_d_22),
+        .tx_dataout (txp_22),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 22)
+    begin          
+
+    assign tbi_tx_clk_22 = ref_clk;
+    assign tbi_rx_d_22 = tbi_rx_d_flip_22;
+
+    always @(posedge tbi_rx_clk_22 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_22 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_22[0] <= tbi_rx_d_lvds_22[9];
+            tbi_rx_d_flip_22[1] <= tbi_rx_d_lvds_22[8];
+            tbi_rx_d_flip_22[2] <= tbi_rx_d_lvds_22[7];
+            tbi_rx_d_flip_22[3] <= tbi_rx_d_lvds_22[6];
+            tbi_rx_d_flip_22[4] <= tbi_rx_d_lvds_22[5];
+            tbi_rx_d_flip_22[5] <= tbi_rx_d_lvds_22[4];
+            tbi_rx_d_flip_22[6] <= tbi_rx_d_lvds_22[3];
+            tbi_rx_d_flip_22[7] <= tbi_rx_d_lvds_22[2];
+            tbi_rx_d_flip_22[8] <= tbi_rx_d_lvds_22[1];
+            tbi_rx_d_flip_22[9] <= tbi_rx_d_lvds_22[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_22 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_22[0] <= tbi_tx_d_22[9];
+            tbi_tx_d_flip_22[1] <= tbi_tx_d_22[8];
+            tbi_tx_d_flip_22[2] <= tbi_tx_d_22[7];
+            tbi_tx_d_flip_22[3] <= tbi_tx_d_22[6];
+            tbi_tx_d_flip_22[4] <= tbi_tx_d_22[5];
+            tbi_tx_d_flip_22[5] <= tbi_tx_d_22[4];
+            tbi_tx_d_flip_22[6] <= tbi_tx_d_22[3];
+            tbi_tx_d_flip_22[7] <= tbi_tx_d_22[2];
+            tbi_tx_d_flip_22[8] <= tbi_tx_d_22[1];
+            tbi_tx_d_flip_22[9] <= tbi_tx_d_22[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_22
+     (
+         .rx_divfwdclk (tbi_rx_clk_22),
+         .rx_in (rxp_22),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_22),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_22
+    (
+        .tx_in (tbi_tx_d_flip_22),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_22)
+    );
+
+    end    
+else
+    begin
+    assign txp_22 = 1'b0;
+    assign tbi_rx_clk_22 = 1'b0;	
+    end  
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 23 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 23)
+    begin          
+        assign gxb_pwrdn_in_sig[23] = gxb_pwrdn_in_23;
+        assign pcs_pwrdn_out_23 = pcs_pwrdn_out_sig[23];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[23] = pcs_pwrdn_out_sig[23];
+		assign pcs_pwrdn_out_23 = 1'b0;
+    end      
+endgenerate
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX devices
+// ---------------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0 && MAX_CHANNELS > 23)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic_23
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[23]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_23),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_23),
+        .rx_dataout (tbi_rx_d_23),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_23),
+        .tx_clkout (tbi_tx_clk_23),
+        .tx_datain (tbi_tx_d_23),
+        .tx_dataout (txp_23),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX" && MAX_CHANNELS > 23)
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx_23
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig[23]),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset),
+        .rx_clkout (tbi_rx_clk_23),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp_23),
+        .rx_dataout (tbi_rx_d_23),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback_23),
+        .tx_clkout (tbi_tx_clk_23),
+        .tx_datain (tbi_tx_d_23),
+        .tx_dataout (txp_23),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1 && MAX_CHANNELS > 23)
+    begin          
+
+    assign tbi_tx_clk_23 = ref_clk;
+    assign tbi_rx_d_23 = tbi_rx_d_flip_23;
+
+    always @(posedge tbi_rx_clk_23 or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_rx_d_flip_23 <= 0;
+        else 
+            begin
+            tbi_rx_d_flip_23[0] <= tbi_rx_d_lvds_23[9];
+            tbi_rx_d_flip_23[1] <= tbi_rx_d_lvds_23[8];
+            tbi_rx_d_flip_23[2] <= tbi_rx_d_lvds_23[7];
+            tbi_rx_d_flip_23[3] <= tbi_rx_d_lvds_23[6];
+            tbi_rx_d_flip_23[4] <= tbi_rx_d_lvds_23[5];
+            tbi_rx_d_flip_23[5] <= tbi_rx_d_lvds_23[4];
+            tbi_rx_d_flip_23[6] <= tbi_rx_d_lvds_23[3];
+            tbi_rx_d_flip_23[7] <= tbi_rx_d_lvds_23[2];
+            tbi_rx_d_flip_23[8] <= tbi_rx_d_lvds_23[1];
+            tbi_rx_d_flip_23[9] <= tbi_rx_d_lvds_23[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset)
+        begin
+        if (reset == 1)
+            tbi_tx_d_flip_23 <= 0;
+        else 
+            begin
+            tbi_tx_d_flip_23[0] <= tbi_tx_d_23[9];
+            tbi_tx_d_flip_23[1] <= tbi_tx_d_23[8];
+            tbi_tx_d_flip_23[2] <= tbi_tx_d_23[7];
+            tbi_tx_d_flip_23[3] <= tbi_tx_d_23[6];
+            tbi_tx_d_flip_23[4] <= tbi_tx_d_23[5];
+            tbi_tx_d_flip_23[5] <= tbi_tx_d_23[4];
+            tbi_tx_d_flip_23[6] <= tbi_tx_d_23[3];
+            tbi_tx_d_flip_23[7] <= tbi_tx_d_23[2];
+            tbi_tx_d_flip_23[8] <= tbi_tx_d_23[1];
+            tbi_tx_d_flip_23[9] <= tbi_tx_d_23[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx_23
+     (
+         .rx_divfwdclk (tbi_rx_clk_23),
+         .rx_in (rxp_23),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds_23),
+         .rx_outclock (),
+         .rx_reset (reset)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx_23
+    (
+        .tx_in (tbi_tx_d_flip_23),
+        .tx_inclock (ref_clk),
+        .tx_out (txp_23)
+    );
+
+    end 
+else
+    begin
+    assign txp_23 = 1'b0;
+    assign tbi_rx_clk_23 = 1'b0;	
+    end      
+endgenerate
+
+
+
+endmodule // module altera_tse_multi_mac_pcs_pma
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac_pcs_pma_gige.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac_pcs_pma_gige.v
new file mode 100644
index 0000000000000000000000000000000000000000..f32eeb44ff5112eb4fc25accbdc8e100eaca35ca
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_multi_mac_pcs_pma_gige.v
@@ -0,0 +1,5136 @@
+
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_multi_mac_pcs_pma_gige.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_multi_mac_pcs_pma_gige.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet - 10/100/1000 MAC
+//
+// Description : 
+//
+// Top Level Triple Speed Ethernet(10/100/1000) MAC with MII/GMII
+// interfaces, mdio module and register space (statistic, control and 
+// management)
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation  
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_multi_mac_pcs_pma_gige
+/* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */
+#(
+parameter USE_SYNC_RESET        = 0,                    //  Use Synchronized Reset Inputs
+parameter RESET_LEVEL           = 1'b 1 ,               //  Reset Active Level
+parameter ENABLE_GMII_LOOPBACK  = 1,                    //  GMII_LOOPBACK_ENA : Enable GMII Loopback Logic 
+parameter ENABLE_HD_LOGIC       = 1,                    //  HD_LOGIC_ENA : Enable Half Duplex Logic
+parameter ENABLE_SUP_ADDR       = 1,                    //  SUP_ADDR_ENA : Enable Supplemental Addresses
+parameter ENA_HASH              = 1,                    //  ENA_HASH Enable Hash Table 
+parameter STAT_CNT_ENA          = 1,                    //  STAT_CNT_ENA Enable Statistic Counters
+parameter MDIO_CLK_DIV          = 40 ,                  //  Host Clock Division - MDC Generation
+parameter CORE_VERSION          = 16'h3,                //  ALTERA Core Version
+parameter CUST_VERSION          = 1 ,                   //  Customer Core Version
+parameter REDUCED_INTERFACE_ENA = 0,                    //  Enable the RGMII Interface
+parameter ENABLE_MDIO           = 1,                    //  Enable the MDIO Interface
+parameter ENABLE_MAGIC_DETECT   = 1,                    //  Enable magic packet detection 
+parameter ENABLE_PADDING        = 1,                    //  Enable padding operation.
+parameter ENABLE_LGTH_CHECK     = 1,                    //  Enable frame length checking.
+parameter GBIT_ONLY             = 1,                    //  Enable Gigabit only operation.
+parameter MBIT_ONLY             = 1,                    //  Enable Megabit (10/100) only operation.
+parameter REDUCED_CONTROL       = 0,                    //  Reduced control for MAC LITE
+parameter CRC32DWIDTH           = 4'b 1000,             //  input data width (informal, not for change)
+parameter CRC32GENDELAY         = 3'b 110,              //  when the data from the generator is valid
+parameter CRC32CHECK16BIT       = 1'b 0,                //  1 compare two times 16 bit of the CRC (adds one pipeline step) 
+parameter CRC32S1L2_EXTERN      = 1'b0,                 //  false: merge enable
+parameter ENABLE_SHIFT16        = 0,                    //  Enable byte stuffing at packet header 
+parameter ENABLE_MAC_FLOW_CTRL  = 1'b1,                 //  Option to enable flow control 
+parameter ENABLE_MAC_TXADDR_SET = 1'b1,                 //  Option to enable MAC address insertion onto 'to-be-transmitted' Ethernet frames on MAC TX data path
+parameter ENABLE_MAC_RX_VLAN    = 1'b1,                 //  Option to enable VLAN tagged Ethernet frames on MAC RX data path
+parameter ENABLE_MAC_TX_VLAN    = 1'b1,                 //  Option to enable VLAN tagged Ethernet frames on MAC TX data path
+parameter PHY_IDENTIFIER        = 32'h 00000000,        //  PHY Identifier
+parameter DEV_VERSION           = 16'h 0001 ,           //  Customer Phy's Core Version
+parameter ENABLE_SGMII          = 1,                    //  Enable SGMII logic for synthesis
+parameter ENABLE_CLK_SHARING    = 1,                    //  Option to share clock for multiple channels (Clocks are rate-matched).
+parameter ENABLE_REG_SHARING    = 0,                    //  Option to share register space. Uses certain hard-coded values from input.
+parameter ENABLE_EXTENDED_STAT_REG = 0,                 //  Enable a few extended statistic registers
+parameter MAX_CHANNELS          = 1,                    //  The number of channels in Multi-TSE component
+parameter ENABLE_PKT_CLASS      = 1,                    //  Enable Packet Classification Av-ST Interface
+parameter ENABLE_RX_FIFO_STATUS = 1,                    //  Enable Receive FIFO Almost Full status interface
+parameter CHANNEL_WIDTH         = 1,                    //  The width of the channel interface
+parameter EXPORT_PWRDN          = 1'b0,                 //  Option to export the Alt2gxb powerdown signal
+parameter DEVICE_FAMILY         = "ARRIAGX",            //  The device family the the core is targetted for.
+parameter TRANSCEIVER_OPTION    = 1'b0,                 //  Option to select transceiver block for MAC PCS PMA Instantiation. Valid Values are 0 and 1:  0 - GXB (GIGE Mode) 1 - LVDS IO
+parameter ENABLE_ALT_RECONFIG   = 0,                    //  Option to expose the altreconfig ports
+parameter SYNCHRONIZER_DEPTH 	= 3,	  	        //  Number of synchronizer
+// Internal parameters
+parameter STARTING_CHANNEL_NUMBER = 0,
+parameter ADDR_WIDTH = (MAX_CHANNELS > 16)? 13 :
+                       (MAX_CHANNELS > 8)? 12 : 
+                       (MAX_CHANNELS > 4)? 11 : 
+                       (MAX_CHANNELS > 2)? 10 :  
+                       (MAX_CHANNELS > 1)? 9 : 8
+)
+
+
+// Port List
+(
+
+    // RESET / MAC REG IF / MDIO
+    input wire   reset,                      //  Asynchronous Reset - clk Domain
+    input wire   clk,                        //  25MHz Host Interface Clock
+    input wire   read,                       //  Register Read Strobe
+    input wire   write,                      //  Register Write Strobe
+    input wire   [ADDR_WIDTH-1:0] address,   //  Register Address
+    input wire   [31:0] writedata,           //  Write Data for Host Bus
+    output wire  [31:0] readdata,            //  Read Data to Host Bus
+    output wire  waitrequest,                //  Interface Busy
+    output wire  mdc,                        //  2.5MHz Inteface
+    input wire   mdio_in,                    //  MDIO Input
+    output wire  mdio_out,                   //  MDIO Output
+    output wire  mdio_oen,                   //  MDIO Output Enable
+
+    // DEVICE SPECIFIC SIGNALS
+    input wire   gxb_cal_blk_clk,            //  GXB Calibration Clock
+    input wire   ref_clk,                    //  Rference Clock
+
+	// SHARED CLK SIGNALS
+    output wire  mac_rx_clk,                 //  Av-ST Receive Clock
+    output wire  mac_tx_clk,                 //  Av-ST Transmit Clock 
+
+	// SHARED RX STATUS
+    input wire   rx_afull_clk,                             //  Almost full clk
+    input wire   [1:0] rx_afull_data,                      //  Almost full data
+    input wire   rx_afull_valid,                           //  Almost full valid
+    input wire   [CHANNEL_WIDTH-1:0] rx_afull_channel,     //  Almost full channel
+
+
+    // CHANNEL 0
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_0,                    //  Differential Receive Data 
+    output wire  txp_0,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_0,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_0,          //  Powerdown Enable from PCS
+    output wire  led_crs_0,                //  Carrier Sense
+    output wire  led_link_0,               //  Valid Link 
+    output wire  led_col_0,                //  Collision Indication
+    output wire  led_an_0,                 //  Auto-Negotiation Status
+    output wire  led_char_err_0,           //  Character Error
+    output wire  led_disp_err_0,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_0,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_0,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_0,            //  Start of Packet
+    output wire  data_rx_eop_0,            //  End of Packet
+    output wire  [7:0] data_rx_data_0,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_0,    //  Receive packet error
+    output wire  data_rx_valid_0,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_0,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_0,   //  Frame Type Indication
+    output wire  pkt_class_valid_0,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_0,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_0,     //  Data from FIFO transmit
+    input wire   data_tx_valid_0,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_0,            //  Start of Packet
+    input wire   data_tx_eop_0,            //  END of Packet
+    output wire  data_tx_ready_0,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_0,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_0,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_0,               //  Xoff Pause frame generate 
+    input wire   xon_gen_0,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_0,          //  Enable Sleep Mode
+    output wire  magic_wakeup_0,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_0,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_0,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_0,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 1
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_1,                    //  Differential Receive Data 
+    output wire  txp_1,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_1,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_1,          //  Powerdown Enable from PCS
+    output wire  led_crs_1,                //  Carrier Sense
+    output wire  led_link_1,               //  Valid Link 
+    output wire  led_col_1,                //  Collision Indication
+    output wire  led_an_1,                 //  Auto-Negotiation Status
+    output wire  led_char_err_1,           //  Character Error
+    output wire  led_disp_err_1,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_1,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_1,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_1,            //  Start of Packet
+    output wire  data_rx_eop_1,            //  End of Packet
+    output wire  [7:0] data_rx_data_1,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_1,    //  Receive packet error
+    output wire  data_rx_valid_1,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_1,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_1,   //  Frame Type Indication
+    output wire  pkt_class_valid_1,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_1,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_1,     //  Data from FIFO transmit
+    input wire   data_tx_valid_1,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_1,            //  Start of Packet
+    input wire   data_tx_eop_1,            //  END of Packet
+    output wire  data_tx_ready_1,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_1,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_1,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_1,               //  Xoff Pause frame generate 
+    input wire   xon_gen_1,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_1,          //  Enable Sleep Mode
+    output wire  magic_wakeup_1,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_1,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_1,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_1,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 2
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_2,                    //  Differential Receive Data 
+    output wire  txp_2,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_2,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_2,          //  Powerdown Enable from PCS
+    output wire  led_crs_2,                //  Carrier Sense
+    output wire  led_link_2,               //  Valid Link 
+    output wire  led_col_2,                //  Collision Indication
+    output wire  led_an_2,                 //  Auto-Negotiation Status
+    output wire  led_char_err_2,           //  Character Error
+    output wire  led_disp_err_2,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_2,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_2,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_2,            //  Start of Packet
+    output wire  data_rx_eop_2,            //  End of Packet
+    output wire  [7:0] data_rx_data_2,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_2,    //  Receive packet error
+    output wire  data_rx_valid_2,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_2,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_2,   //  Frame Type Indication
+    output wire  pkt_class_valid_2,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_2,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_2,     //  Data from FIFO transmit
+    input wire   data_tx_valid_2,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_2,            //  Start of Packet
+    input wire   data_tx_eop_2,            //  END of Packet
+    output wire  data_tx_ready_2,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_2,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_2,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_2,               //  Xoff Pause frame generate 
+    input wire   xon_gen_2,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_2,          //  Enable Sleep Mode
+    output wire  magic_wakeup_2,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_2,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_2,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_2,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 3
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_3,                    //  Differential Receive Data 
+    output wire  txp_3,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_3,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_3,          //  Powerdown Enable from PCS
+    output wire  led_crs_3,                //  Carrier Sense
+    output wire  led_link_3,               //  Valid Link 
+    output wire  led_col_3,                //  Collision Indication
+    output wire  led_an_3,                 //  Auto-Negotiation Status
+    output wire  led_char_err_3,           //  Character Error
+    output wire  led_disp_err_3,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_3,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_3,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_3,            //  Start of Packet
+    output wire  data_rx_eop_3,            //  End of Packet
+    output wire  [7:0] data_rx_data_3,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_3,    //  Receive packet error
+    output wire  data_rx_valid_3,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_3,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_3,   //  Frame Type Indication
+    output wire  pkt_class_valid_3,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_3,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_3,     //  Data from FIFO transmit
+    input wire   data_tx_valid_3,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_3,            //  Start of Packet
+    input wire   data_tx_eop_3,            //  END of Packet
+    output wire  data_tx_ready_3,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_3,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_3,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_3,               //  Xoff Pause frame generate 
+    input wire   xon_gen_3,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_3,          //  Enable Sleep Mode
+    output wire  magic_wakeup_3,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_3,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_3,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_3,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 4
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_4,                    //  Differential Receive Data 
+    output wire  txp_4,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_4,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_4,          //  Powerdown Enable from PCS
+    output wire  led_crs_4,                //  Carrier Sense
+    output wire  led_link_4,               //  Valid Link 
+    output wire  led_col_4,                //  Collision Indication
+    output wire  led_an_4,                 //  Auto-Negotiation Status
+    output wire  led_char_err_4,           //  Character Error
+    output wire  led_disp_err_4,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_4,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_4,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_4,            //  Start of Packet
+    output wire  data_rx_eop_4,            //  End of Packet
+    output wire  [7:0] data_rx_data_4,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_4,    //  Receive packet error
+    output wire  data_rx_valid_4,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_4,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_4,   //  Frame Type Indication
+    output wire  pkt_class_valid_4,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_4,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_4,     //  Data from FIFO transmit
+    input wire   data_tx_valid_4,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_4,            //  Start of Packet
+    input wire   data_tx_eop_4,            //  END of Packet
+    output wire  data_tx_ready_4,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_4,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_4,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_4,               //  Xoff Pause frame generate 
+    input wire   xon_gen_4,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_4,          //  Enable Sleep Mode
+    output wire  magic_wakeup_4,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_4,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_4,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_4,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 5
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_5,                    //  Differential Receive Data 
+    output wire  txp_5,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_5,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_5,          //  Powerdown Enable from PCS
+    output wire  led_crs_5,                //  Carrier Sense
+    output wire  led_link_5,               //  Valid Link 
+    output wire  led_col_5,                //  Collision Indication
+    output wire  led_an_5,                 //  Auto-Negotiation Status
+    output wire  led_char_err_5,           //  Character Error
+    output wire  led_disp_err_5,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_5,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_5,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_5,            //  Start of Packet
+    output wire  data_rx_eop_5,            //  End of Packet
+    output wire  [7:0] data_rx_data_5,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_5,    //  Receive packet error
+    output wire  data_rx_valid_5,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_5,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_5,   //  Frame Type Indication
+    output wire  pkt_class_valid_5,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_5,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_5,     //  Data from FIFO transmit
+    input wire   data_tx_valid_5,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_5,            //  Start of Packet
+    input wire   data_tx_eop_5,            //  END of Packet
+    output wire  data_tx_ready_5,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_5,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_5,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_5,               //  Xoff Pause frame generate 
+    input wire   xon_gen_5,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_5,          //  Enable Sleep Mode
+    output wire  magic_wakeup_5,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_5,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_5,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_5,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 6
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_6,                    //  Differential Receive Data 
+    output wire  txp_6,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_6,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_6,          //  Powerdown Enable from PCS
+    output wire  led_crs_6,                //  Carrier Sense
+    output wire  led_link_6,               //  Valid Link 
+    output wire  led_col_6,                //  Collision Indication
+    output wire  led_an_6,                 //  Auto-Negotiation Status
+    output wire  led_char_err_6,           //  Character Error
+    output wire  led_disp_err_6,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_6,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_6,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_6,            //  Start of Packet
+    output wire  data_rx_eop_6,            //  End of Packet
+    output wire  [7:0] data_rx_data_6,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_6,    //  Receive packet error
+    output wire  data_rx_valid_6,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_6,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_6,   //  Frame Type Indication
+    output wire  pkt_class_valid_6,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_6,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_6,     //  Data from FIFO transmit
+    input wire   data_tx_valid_6,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_6,            //  Start of Packet
+    input wire   data_tx_eop_6,            //  END of Packet
+    output wire  data_tx_ready_6,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_6,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_6,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_6,               //  Xoff Pause frame generate 
+    input wire   xon_gen_6,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_6,          //  Enable Sleep Mode
+    output wire  magic_wakeup_6,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_6,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_6,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_6,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 7
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_7,                    //  Differential Receive Data 
+    output wire  txp_7,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_7,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_7,          //  Powerdown Enable from PCS
+    output wire  led_crs_7,                //  Carrier Sense
+    output wire  led_link_7,               //  Valid Link 
+    output wire  led_col_7,                //  Collision Indication
+    output wire  led_an_7,                 //  Auto-Negotiation Status
+    output wire  led_char_err_7,           //  Character Error
+    output wire  led_disp_err_7,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_7,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_7,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_7,            //  Start of Packet
+    output wire  data_rx_eop_7,            //  End of Packet
+    output wire  [7:0] data_rx_data_7,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_7,    //  Receive packet error
+    output wire  data_rx_valid_7,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_7,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_7,   //  Frame Type Indication
+    output wire  pkt_class_valid_7,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_7,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_7,     //  Data from FIFO transmit
+    input wire   data_tx_valid_7,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_7,            //  Start of Packet
+    input wire   data_tx_eop_7,            //  END of Packet
+    output wire  data_tx_ready_7,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_7,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_7,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_7,               //  Xoff Pause frame generate 
+    input wire   xon_gen_7,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_7,          //  Enable Sleep Mode
+    output wire  magic_wakeup_7,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_7,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_7,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_7,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 8
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_8,                    //  Differential Receive Data 
+    output wire  txp_8,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_8,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_8,          //  Powerdown Enable from PCS
+    output wire  led_crs_8,                //  Carrier Sense
+    output wire  led_link_8,               //  Valid Link 
+    output wire  led_col_8,                //  Collision Indication
+    output wire  led_an_8,                 //  Auto-Negotiation Status
+    output wire  led_char_err_8,           //  Character Error
+    output wire  led_disp_err_8,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_8,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_8,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_8,            //  Start of Packet
+    output wire  data_rx_eop_8,            //  End of Packet
+    output wire  [7:0] data_rx_data_8,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_8,    //  Receive packet error
+    output wire  data_rx_valid_8,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_8,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_8,   //  Frame Type Indication
+    output wire  pkt_class_valid_8,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_8,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_8,     //  Data from FIFO transmit
+    input wire   data_tx_valid_8,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_8,            //  Start of Packet
+    input wire   data_tx_eop_8,            //  END of Packet
+    output wire  data_tx_ready_8,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_8,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_8,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_8,               //  Xoff Pause frame generate 
+    input wire   xon_gen_8,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_8,          //  Enable Sleep Mode
+    output wire  magic_wakeup_8,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_8,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_8,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_8,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 9
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_9,                    //  Differential Receive Data 
+    output wire  txp_9,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_9,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_9,          //  Powerdown Enable from PCS
+    output wire  led_crs_9,                //  Carrier Sense
+    output wire  led_link_9,               //  Valid Link 
+    output wire  led_col_9,                //  Collision Indication
+    output wire  led_an_9,                 //  Auto-Negotiation Status
+    output wire  led_char_err_9,           //  Character Error
+    output wire  led_disp_err_9,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_9,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_9,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_9,            //  Start of Packet
+    output wire  data_rx_eop_9,            //  End of Packet
+    output wire  [7:0] data_rx_data_9,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_9,    //  Receive packet error
+    output wire  data_rx_valid_9,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_9,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_9,   //  Frame Type Indication
+    output wire  pkt_class_valid_9,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_9,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_9,     //  Data from FIFO transmit
+    input wire   data_tx_valid_9,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_9,            //  Start of Packet
+    input wire   data_tx_eop_9,            //  END of Packet
+    output wire  data_tx_ready_9,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_9,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_9,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_9,               //  Xoff Pause frame generate 
+    input wire   xon_gen_9,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_9,          //  Enable Sleep Mode
+    output wire  magic_wakeup_9,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_9,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_9,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_9,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 10
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_10,                    //  Differential Receive Data 
+    output wire  txp_10,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_10,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_10,          //  Powerdown Enable from PCS
+    output wire  led_crs_10,                //  Carrier Sense
+    output wire  led_link_10,               //  Valid Link 
+    output wire  led_col_10,                //  Collision Indication
+    output wire  led_an_10,                 //  Auto-Negotiation Status
+    output wire  led_char_err_10,           //  Character Error
+    output wire  led_disp_err_10,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_10,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_10,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_10,            //  Start of Packet
+    output wire  data_rx_eop_10,            //  End of Packet
+    output wire  [7:0] data_rx_data_10,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_10,    //  Receive packet error
+    output wire  data_rx_valid_10,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_10,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_10,   //  Frame Type Indication
+    output wire  pkt_class_valid_10,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_10,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_10,     //  Data from FIFO transmit
+    input wire   data_tx_valid_10,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_10,            //  Start of Packet
+    input wire   data_tx_eop_10,            //  END of Packet
+    output wire  data_tx_ready_10,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_10,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_10,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_10,               //  Xoff Pause frame generate 
+    input wire   xon_gen_10,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_10,          //  Enable Sleep Mode
+    output wire  magic_wakeup_10,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_10,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_10,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_10,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 11
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_11,                    //  Differential Receive Data 
+    output wire  txp_11,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_11,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_11,          //  Powerdown Enable from PCS
+    output wire  led_crs_11,                //  Carrier Sense
+    output wire  led_link_11,               //  Valid Link 
+    output wire  led_col_11,                //  Collision Indication
+    output wire  led_an_11,                 //  Auto-Negotiation Status
+    output wire  led_char_err_11,           //  Character Error
+    output wire  led_disp_err_11,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_11,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_11,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_11,            //  Start of Packet
+    output wire  data_rx_eop_11,            //  End of Packet
+    output wire  [7:0] data_rx_data_11,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_11,    //  Receive packet error
+    output wire  data_rx_valid_11,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_11,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_11,   //  Frame Type Indication
+    output wire  pkt_class_valid_11,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_11,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_11,     //  Data from FIFO transmit
+    input wire   data_tx_valid_11,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_11,            //  Start of Packet
+    input wire   data_tx_eop_11,            //  END of Packet
+    output wire  data_tx_ready_11,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_11,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_11,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_11,               //  Xoff Pause frame generate 
+    input wire   xon_gen_11,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_11,          //  Enable Sleep Mode
+    output wire  magic_wakeup_11,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_11,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_11,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_11,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 12
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_12,                    //  Differential Receive Data 
+    output wire  txp_12,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_12,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_12,          //  Powerdown Enable from PCS
+    output wire  led_crs_12,                //  Carrier Sense
+    output wire  led_link_12,               //  Valid Link 
+    output wire  led_col_12,                //  Collision Indication
+    output wire  led_an_12,                 //  Auto-Negotiation Status
+    output wire  led_char_err_12,           //  Character Error
+    output wire  led_disp_err_12,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_12,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_12,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_12,            //  Start of Packet
+    output wire  data_rx_eop_12,            //  End of Packet
+    output wire  [7:0] data_rx_data_12,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_12,    //  Receive packet error
+    output wire  data_rx_valid_12,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_12,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_12,   //  Frame Type Indication
+    output wire  pkt_class_valid_12,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_12,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_12,     //  Data from FIFO transmit
+    input wire   data_tx_valid_12,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_12,            //  Start of Packet
+    input wire   data_tx_eop_12,            //  END of Packet
+    output wire  data_tx_ready_12,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_12,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_12,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_12,               //  Xoff Pause frame generate 
+    input wire   xon_gen_12,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_12,          //  Enable Sleep Mode
+    output wire  magic_wakeup_12,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_12,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_12,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_12,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 13
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_13,                    //  Differential Receive Data 
+    output wire  txp_13,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_13,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_13,          //  Powerdown Enable from PCS
+    output wire  led_crs_13,                //  Carrier Sense
+    output wire  led_link_13,               //  Valid Link 
+    output wire  led_col_13,                //  Collision Indication
+    output wire  led_an_13,                 //  Auto-Negotiation Status
+    output wire  led_char_err_13,           //  Character Error
+    output wire  led_disp_err_13,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_13,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_13,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_13,            //  Start of Packet
+    output wire  data_rx_eop_13,            //  End of Packet
+    output wire  [7:0] data_rx_data_13,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_13,    //  Receive packet error
+    output wire  data_rx_valid_13,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_13,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_13,   //  Frame Type Indication
+    output wire  pkt_class_valid_13,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_13,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_13,     //  Data from FIFO transmit
+    input wire   data_tx_valid_13,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_13,            //  Start of Packet
+    input wire   data_tx_eop_13,            //  END of Packet
+    output wire  data_tx_ready_13,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_13,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_13,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_13,               //  Xoff Pause frame generate 
+    input wire   xon_gen_13,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_13,          //  Enable Sleep Mode
+    output wire  magic_wakeup_13,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_13,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_13,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_13,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 14
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_14,                    //  Differential Receive Data 
+    output wire  txp_14,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_14,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_14,          //  Powerdown Enable from PCS
+    output wire  led_crs_14,                //  Carrier Sense
+    output wire  led_link_14,               //  Valid Link 
+    output wire  led_col_14,                //  Collision Indication
+    output wire  led_an_14,                 //  Auto-Negotiation Status
+    output wire  led_char_err_14,           //  Character Error
+    output wire  led_disp_err_14,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_14,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_14,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_14,            //  Start of Packet
+    output wire  data_rx_eop_14,            //  End of Packet
+    output wire  [7:0] data_rx_data_14,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_14,    //  Receive packet error
+    output wire  data_rx_valid_14,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_14,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_14,   //  Frame Type Indication
+    output wire  pkt_class_valid_14,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_14,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_14,     //  Data from FIFO transmit
+    input wire   data_tx_valid_14,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_14,            //  Start of Packet
+    input wire   data_tx_eop_14,            //  END of Packet
+    output wire  data_tx_ready_14,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_14,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_14,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_14,               //  Xoff Pause frame generate 
+    input wire   xon_gen_14,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_14,          //  Enable Sleep Mode
+    output wire  magic_wakeup_14,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_14,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_14,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_14,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 15
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_15,                    //  Differential Receive Data 
+    output wire  txp_15,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_15,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_15,          //  Powerdown Enable from PCS
+    output wire  led_crs_15,                //  Carrier Sense
+    output wire  led_link_15,               //  Valid Link 
+    output wire  led_col_15,                //  Collision Indication
+    output wire  led_an_15,                 //  Auto-Negotiation Status
+    output wire  led_char_err_15,           //  Character Error
+    output wire  led_disp_err_15,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_15,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_15,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_15,            //  Start of Packet
+    output wire  data_rx_eop_15,            //  End of Packet
+    output wire  [7:0] data_rx_data_15,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_15,    //  Receive packet error
+    output wire  data_rx_valid_15,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_15,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_15,   //  Frame Type Indication
+    output wire  pkt_class_valid_15,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_15,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_15,     //  Data from FIFO transmit
+    input wire   data_tx_valid_15,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_15,            //  Start of Packet
+    input wire   data_tx_eop_15,            //  END of Packet
+    output wire  data_tx_ready_15,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_15,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_15,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_15,               //  Xoff Pause frame generate 
+    input wire   xon_gen_15,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_15,          //  Enable Sleep Mode
+    output wire  magic_wakeup_15,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_15,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_15,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_15,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 16
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_16,                    //  Differential Receive Data 
+    output wire  txp_16,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_16,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_16,          //  Powerdown Enable from PCS
+    output wire  led_crs_16,                //  Carrier Sense
+    output wire  led_link_16,               //  Valid Link 
+    output wire  led_col_16,                //  Collision Indication
+    output wire  led_an_16,                 //  Auto-Negotiation Status
+    output wire  led_char_err_16,           //  Character Error
+    output wire  led_disp_err_16,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_16,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_16,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_16,            //  Start of Packet
+    output wire  data_rx_eop_16,            //  End of Packet
+    output wire  [7:0] data_rx_data_16,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_16,    //  Receive packet error
+    output wire  data_rx_valid_16,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_16,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_16,   //  Frame Type Indication
+    output wire  pkt_class_valid_16,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_16,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_16,     //  Data from FIFO transmit
+    input wire   data_tx_valid_16,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_16,            //  Start of Packet
+    input wire   data_tx_eop_16,            //  END of Packet
+    output wire  data_tx_ready_16,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_16,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_16,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_16,               //  Xoff Pause frame generate 
+    input wire   xon_gen_16,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_16,          //  Enable Sleep Mode
+    output wire  magic_wakeup_16,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_16,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_16,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_16,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 17
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_17,                    //  Differential Receive Data 
+    output wire  txp_17,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_17,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_17,          //  Powerdown Enable from PCS
+    output wire  led_crs_17,                //  Carrier Sense
+    output wire  led_link_17,               //  Valid Link 
+    output wire  led_col_17,                //  Collision Indication
+    output wire  led_an_17,                 //  Auto-Negotiation Status
+    output wire  led_char_err_17,           //  Character Error
+    output wire  led_disp_err_17,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_17,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_17,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_17,            //  Start of Packet
+    output wire  data_rx_eop_17,            //  End of Packet
+    output wire  [7:0] data_rx_data_17,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_17,    //  Receive packet error
+    output wire  data_rx_valid_17,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_17,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_17,   //  Frame Type Indication
+    output wire  pkt_class_valid_17,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_17,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_17,     //  Data from FIFO transmit
+    input wire   data_tx_valid_17,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_17,            //  Start of Packet
+    input wire   data_tx_eop_17,            //  END of Packet
+    output wire  data_tx_ready_17,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_17,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_17,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_17,               //  Xoff Pause frame generate 
+    input wire   xon_gen_17,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_17,          //  Enable Sleep Mode
+    output wire  magic_wakeup_17,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_17,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_17,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_17,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 18
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_18,                    //  Differential Receive Data 
+    output wire  txp_18,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_18,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_18,          //  Powerdown Enable from PCS
+    output wire  led_crs_18,                //  Carrier Sense
+    output wire  led_link_18,               //  Valid Link 
+    output wire  led_col_18,                //  Collision Indication
+    output wire  led_an_18,                 //  Auto-Negotiation Status
+    output wire  led_char_err_18,           //  Character Error
+    output wire  led_disp_err_18,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_18,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_18,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_18,            //  Start of Packet
+    output wire  data_rx_eop_18,            //  End of Packet
+    output wire  [7:0] data_rx_data_18,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_18,    //  Receive packet error
+    output wire  data_rx_valid_18,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_18,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_18,   //  Frame Type Indication
+    output wire  pkt_class_valid_18,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_18,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_18,     //  Data from FIFO transmit
+    input wire   data_tx_valid_18,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_18,            //  Start of Packet
+    input wire   data_tx_eop_18,            //  END of Packet
+    output wire  data_tx_ready_18,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_18,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_18,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_18,               //  Xoff Pause frame generate 
+    input wire   xon_gen_18,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_18,          //  Enable Sleep Mode
+    output wire  magic_wakeup_18,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_18,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_18,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_18,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 19
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_19,                    //  Differential Receive Data 
+    output wire  txp_19,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_19,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_19,          //  Powerdown Enable from PCS
+    output wire  led_crs_19,                //  Carrier Sense
+    output wire  led_link_19,               //  Valid Link 
+    output wire  led_col_19,                //  Collision Indication
+    output wire  led_an_19,                 //  Auto-Negotiation Status
+    output wire  led_char_err_19,           //  Character Error
+    output wire  led_disp_err_19,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_19,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_19,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_19,            //  Start of Packet
+    output wire  data_rx_eop_19,            //  End of Packet
+    output wire  [7:0] data_rx_data_19,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_19,    //  Receive packet error
+    output wire  data_rx_valid_19,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_19,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_19,   //  Frame Type Indication
+    output wire  pkt_class_valid_19,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_19,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_19,     //  Data from FIFO transmit
+    input wire   data_tx_valid_19,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_19,            //  Start of Packet
+    input wire   data_tx_eop_19,            //  END of Packet
+    output wire  data_tx_ready_19,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_19,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_19,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_19,               //  Xoff Pause frame generate 
+    input wire   xon_gen_19,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_19,          //  Enable Sleep Mode
+    output wire  magic_wakeup_19,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_19,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_19,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_19,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 20
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_20,                    //  Differential Receive Data 
+    output wire  txp_20,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_20,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_20,          //  Powerdown Enable from PCS
+    output wire  led_crs_20,                //  Carrier Sense
+    output wire  led_link_20,               //  Valid Link 
+    output wire  led_col_20,                //  Collision Indication
+    output wire  led_an_20,                 //  Auto-Negotiation Status
+    output wire  led_char_err_20,           //  Character Error
+    output wire  led_disp_err_20,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_20,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_20,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_20,            //  Start of Packet
+    output wire  data_rx_eop_20,            //  End of Packet
+    output wire  [7:0] data_rx_data_20,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_20,    //  Receive packet error
+    output wire  data_rx_valid_20,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_20,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_20,   //  Frame Type Indication
+    output wire  pkt_class_valid_20,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_20,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_20,     //  Data from FIFO transmit
+    input wire   data_tx_valid_20,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_20,            //  Start of Packet
+    input wire   data_tx_eop_20,            //  END of Packet
+    output wire  data_tx_ready_20,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_20,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_20,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_20,               //  Xoff Pause frame generate 
+    input wire   xon_gen_20,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_20,          //  Enable Sleep Mode
+    output wire  magic_wakeup_20,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_20,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_20,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_20,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 21
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_21,                    //  Differential Receive Data 
+    output wire  txp_21,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_21,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_21,          //  Powerdown Enable from PCS
+    output wire  led_crs_21,                //  Carrier Sense
+    output wire  led_link_21,               //  Valid Link 
+    output wire  led_col_21,                //  Collision Indication
+    output wire  led_an_21,                 //  Auto-Negotiation Status
+    output wire  led_char_err_21,           //  Character Error
+    output wire  led_disp_err_21,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_21,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_21,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_21,            //  Start of Packet
+    output wire  data_rx_eop_21,            //  End of Packet
+    output wire  [7:0] data_rx_data_21,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_21,    //  Receive packet error
+    output wire  data_rx_valid_21,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_21,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_21,   //  Frame Type Indication
+    output wire  pkt_class_valid_21,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_21,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_21,     //  Data from FIFO transmit
+    input wire   data_tx_valid_21,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_21,            //  Start of Packet
+    input wire   data_tx_eop_21,            //  END of Packet
+    output wire  data_tx_ready_21,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_21,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_21,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_21,               //  Xoff Pause frame generate 
+    input wire   xon_gen_21,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_21,          //  Enable Sleep Mode
+    output wire  magic_wakeup_21,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_21,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_21,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_21,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 22
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_22,                    //  Differential Receive Data 
+    output wire  txp_22,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_22,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_22,          //  Powerdown Enable from PCS
+    output wire  led_crs_22,                //  Carrier Sense
+    output wire  led_link_22,               //  Valid Link 
+    output wire  led_col_22,                //  Collision Indication
+    output wire  led_an_22,                 //  Auto-Negotiation Status
+    output wire  led_char_err_22,           //  Character Error
+    output wire  led_disp_err_22,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_22,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_22,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_22,            //  Start of Packet
+    output wire  data_rx_eop_22,            //  End of Packet
+    output wire  [7:0] data_rx_data_22,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_22,    //  Receive packet error
+    output wire  data_rx_valid_22,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_22,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_22,   //  Frame Type Indication
+    output wire  pkt_class_valid_22,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_22,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_22,     //  Data from FIFO transmit
+    input wire   data_tx_valid_22,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_22,            //  Start of Packet
+    input wire   data_tx_eop_22,            //  END of Packet
+    output wire  data_tx_ready_22,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_22,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_22,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_22,               //  Xoff Pause frame generate 
+    input wire   xon_gen_22,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_22,          //  Enable Sleep Mode
+    output wire  magic_wakeup_22,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_22,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_22,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_22,  //  Signals from the gxb block to the reconfig block
+
+
+    // CHANNEL 23
+
+    // PCS SIGNALS TO PHY
+    input wire   rxp_23,                    //  Differential Receive Data 
+    output wire  txp_23,                    //  Differential Transmit Data 
+    input wire   gxb_pwrdn_in_23,           //  Powerdown signal to GXB
+    output wire  pcs_pwrdn_out_23,          //  Powerdown Enable from PCS
+    output wire  led_crs_23,                //  Carrier Sense
+    output wire  led_link_23,               //  Valid Link 
+    output wire  led_col_23,                //  Collision Indication
+    output wire  led_an_23,                 //  Auto-Negotiation Status
+    output wire  led_char_err_23,           //  Character Error
+    output wire  led_disp_err_23,           //  Disparity Error
+
+    // AV-ST TX & RX
+    output wire  mac_rx_clk_23,             //  Av-ST Receive Clock
+    output wire  mac_tx_clk_23,             //  Av-ST Transmit Clock   
+    output wire  data_rx_sop_23,            //  Start of Packet
+    output wire  data_rx_eop_23,            //  End of Packet
+    output wire  [7:0] data_rx_data_23,     //  Data from FIFO
+    output wire  [4:0] data_rx_error_23,    //  Receive packet error
+    output wire  data_rx_valid_23,          //  Data Receive FIFO Valid
+    input wire   data_rx_ready_23,          //  Data Receive Ready
+    output wire  [4:0] pkt_class_data_23,   //  Frame Type Indication
+    output wire  pkt_class_valid_23,        //  Frame Type Indication Valid 
+    input wire   data_tx_error_23,          //  STATUS FIFO (Tx frame Error from Apps)
+    input wire   [7:0] data_tx_data_23,     //  Data from FIFO transmit
+    input wire   data_tx_valid_23,          //  Data FIFO transmit Empty
+    input wire   data_tx_sop_23,            //  Start of Packet
+    input wire   data_tx_eop_23,            //  END of Packet
+    output wire  data_tx_ready_23,          //  Data FIFO transmit Read Enable 	
+
+    // STAND_ALONE CONDUITS 
+    output wire  tx_ff_uflow_23,            //  TX FIFO underflow occured (Synchronous with tx_clk)
+    input wire   tx_crc_fwd_23,             //  Forward Current Frame with CRC from Application
+    input wire   xoff_gen_23,               //  Xoff Pause frame generate 
+    input wire   xon_gen_23,                //  Xon Pause frame generate 
+    input wire   magic_sleep_n_23,          //  Enable Sleep Mode
+    output wire  magic_wakeup_23,           //  Wake Up Request
+
+    // RECONFIG BLOCK SIGNALS
+    input wire   reconfig_clk_23,             //  Clock for reconfiguration block
+    input wire   [3:0] reconfig_togxb_23,     //  Signals from the reconfig block to the GXB block
+    output wire  [16:0] reconfig_fromgxb_23); //  Signals from the gxb block to the reconfig block
+
+
+wire    MAC_PCS_reset;
+wire    [23:0] pcs_pwrdn_out_sig;
+wire    [23:0] gxb_pwrdn_in_sig;
+wire    gige_pma_reset;
+wire    [23:0] led_char_err_gx;
+wire    [23:0] link_status;
+//wire    [23:0] pcs_clk;
+wire    pcs_clk_c0;
+wire    pcs_clk_c1;
+wire    pcs_clk_c2;
+wire    pcs_clk_c3;
+wire    pcs_clk_c4;
+wire    pcs_clk_c5;
+wire    pcs_clk_c6;
+wire    pcs_clk_c7;
+wire    pcs_clk_c8;
+wire    pcs_clk_c9;
+wire    pcs_clk_c10;
+wire    pcs_clk_c11;
+wire    pcs_clk_c12;
+wire    pcs_clk_c13;
+wire    pcs_clk_c14;
+wire    pcs_clk_c15;
+wire    pcs_clk_c16;
+wire    pcs_clk_c17;
+wire    pcs_clk_c18;
+wire    pcs_clk_c19;
+wire    pcs_clk_c20;
+wire    pcs_clk_c21;
+wire    pcs_clk_c22;
+wire    pcs_clk_c23;
+wire    [23:0] rx_char_err_gx;
+wire    [23:0] rx_disp_err;
+wire    [23:0] rx_syncstatus;
+wire    [23:0] rx_runlengthviolation;
+wire    [23:0] rx_patterndetect;
+wire    [23:0] rx_runningdisp;
+wire    [23:0] rx_rmfifodatadeleted;
+wire    [23:0] rx_rmfifodatainserted;
+wire    [23:0] pcs_rx_rmfifodatadeleted;
+wire    [23:0] pcs_rx_rmfifodatainserted;
+wire    [23:0] pcs_rx_carrierdetected;
+
+reg     pma_digital_rst0;
+reg     pma_digital_rst1;
+reg     pma_digital_rst2;
+wire    rx_kchar_0;
+wire    [7:0] rx_frame_0;
+wire    pcs_rx_kchar_0;
+wire    [7:0] pcs_rx_frame_0;
+wire    tx_kchar_0;
+wire    [7:0] tx_frame_0;
+wire    rx_kchar_1;
+wire    [7:0] rx_frame_1;
+wire    pcs_rx_kchar_1;
+wire    [7:0] pcs_rx_frame_1;
+wire    tx_kchar_1;
+wire    [7:0] tx_frame_1;
+wire    rx_kchar_2;
+wire    [7:0] rx_frame_2;
+wire    pcs_rx_kchar_2;
+wire    [7:0] pcs_rx_frame_2;
+wire    tx_kchar_2;
+wire    [7:0] tx_frame_2;
+wire    rx_kchar_3;
+wire    [7:0] rx_frame_3;
+wire    pcs_rx_kchar_3;
+wire    [7:0] pcs_rx_frame_3;
+wire    tx_kchar_3;
+wire    [7:0] tx_frame_3;
+wire    rx_kchar_4;
+wire    [7:0] rx_frame_4;
+wire    pcs_rx_kchar_4;
+wire    [7:0] pcs_rx_frame_4;
+wire    tx_kchar_4;
+wire    [7:0] tx_frame_4;
+wire    rx_kchar_5;
+wire    [7:0] rx_frame_5;
+wire    pcs_rx_kchar_5;
+wire    [7:0] pcs_rx_frame_5;
+wire    tx_kchar_5;
+wire    [7:0] tx_frame_5;
+wire    rx_kchar_6;
+wire    [7:0] rx_frame_6;
+wire    pcs_rx_kchar_6;
+wire    [7:0] pcs_rx_frame_6;
+wire    tx_kchar_6;
+wire    [7:0] tx_frame_6;
+wire    rx_kchar_7;
+wire    [7:0] rx_frame_7;
+wire    pcs_rx_kchar_7;
+wire    [7:0] pcs_rx_frame_7;
+wire    tx_kchar_7;
+wire    [7:0] tx_frame_7;
+wire    rx_kchar_8;
+wire    [7:0] rx_frame_8;
+wire    pcs_rx_kchar_8;
+wire    [7:0] pcs_rx_frame_8;
+wire    tx_kchar_8;
+wire    [7:0] tx_frame_8;
+wire    rx_kchar_9;
+wire    [7:0] rx_frame_9;
+wire    pcs_rx_kchar_9;
+wire    [7:0] pcs_rx_frame_9;
+wire    tx_kchar_9;
+wire    [7:0] tx_frame_9;
+wire    rx_kchar_10;
+wire    [7:0] rx_frame_10;
+wire    pcs_rx_kchar_10;
+wire    [7:0] pcs_rx_frame_10;
+wire    tx_kchar_10;
+wire    [7:0] tx_frame_10;
+wire    rx_kchar_11;
+wire    [7:0] rx_frame_11;
+wire    pcs_rx_kchar_11;
+wire    [7:0] pcs_rx_frame_11;
+wire    tx_kchar_11;
+wire    [7:0] tx_frame_11;
+wire    rx_kchar_12;
+wire    [7:0] rx_frame_12;
+wire    pcs_rx_kchar_12;
+wire    [7:0] pcs_rx_frame_12;
+wire    tx_kchar_12;
+wire    [7:0] tx_frame_12;
+wire    rx_kchar_13;
+wire    [7:0] rx_frame_13;
+wire    pcs_rx_kchar_13;
+wire    [7:0] pcs_rx_frame_13;
+wire    tx_kchar_13;
+wire    [7:0] tx_frame_13;
+wire    rx_kchar_14;
+wire    [7:0] rx_frame_14;
+wire    pcs_rx_kchar_14;
+wire    [7:0] pcs_rx_frame_14;
+wire    tx_kchar_14;
+wire    [7:0] tx_frame_14;
+wire    rx_kchar_15;
+wire    [7:0] rx_frame_15;
+wire    pcs_rx_kchar_15;
+wire    [7:0] pcs_rx_frame_15;
+wire    tx_kchar_15;
+wire    [7:0] tx_frame_15;
+wire    rx_kchar_16;
+wire    [7:0] rx_frame_16;
+wire    pcs_rx_kchar_16;
+wire    [7:0] pcs_rx_frame_16;
+wire    tx_kchar_16;
+wire    [7:0] tx_frame_16;
+wire    rx_kchar_17;
+wire    [7:0] rx_frame_17;
+wire    pcs_rx_kchar_17;
+wire    [7:0] pcs_rx_frame_17;
+wire    tx_kchar_17;
+wire    [7:0] tx_frame_17;
+wire    rx_kchar_18;
+wire    [7:0] rx_frame_18;
+wire    pcs_rx_kchar_18;
+wire    [7:0] pcs_rx_frame_18;
+wire    tx_kchar_18;
+wire    [7:0] tx_frame_18;
+wire    rx_kchar_19;
+wire    [7:0] rx_frame_19;
+wire    pcs_rx_kchar_19;
+wire    [7:0] pcs_rx_frame_19;
+wire    tx_kchar_19;
+wire    [7:0] tx_frame_19;
+wire    rx_kchar_20;
+wire    [7:0] rx_frame_20;
+wire    pcs_rx_kchar_20;
+wire    [7:0] pcs_rx_frame_20;
+wire    tx_kchar_20;
+wire    [7:0] tx_frame_20;
+wire    rx_kchar_21;
+wire    [7:0] rx_frame_21;
+wire    pcs_rx_kchar_21;
+wire    [7:0] pcs_rx_frame_21;
+wire    tx_kchar_21;
+wire    [7:0] tx_frame_21;
+wire    rx_kchar_22;
+wire    [7:0] rx_frame_22;
+wire    pcs_rx_kchar_22;
+wire    [7:0] pcs_rx_frame_22;
+wire    tx_kchar_22;
+wire    [7:0] tx_frame_22;
+wire    rx_kchar_23;
+wire    [7:0] rx_frame_23;
+wire    pcs_rx_kchar_23;
+wire    [7:0] pcs_rx_frame_23;
+wire    tx_kchar_23;
+wire    [7:0] tx_frame_23;
+
+wire    sd_loopback_0;
+wire    sd_loopback_1;
+wire    sd_loopback_2;
+wire    sd_loopback_3;
+wire    sd_loopback_4;
+wire    sd_loopback_5;
+wire    sd_loopback_6;
+wire    sd_loopback_7;
+wire    sd_loopback_8;
+wire    sd_loopback_9;
+wire    sd_loopback_10;
+wire    sd_loopback_11;
+wire    sd_loopback_12;
+wire    sd_loopback_13;
+wire    sd_loopback_14;
+wire    sd_loopback_15;
+wire    sd_loopback_16;
+wire    sd_loopback_17;
+wire    sd_loopback_18;
+wire    sd_loopback_19;
+wire    sd_loopback_20;
+wire    sd_loopback_21;
+wire    sd_loopback_22;
+wire    sd_loopback_23;
+
+
+
+    // Reset logic used to reset the PMA blocks
+    // ----------------------------------------
+    always @(posedge clk or posedge reset)
+      begin
+        if (reset == 1)
+          begin
+            pma_digital_rst0 <= reset;
+            pma_digital_rst1 <= reset;
+            pma_digital_rst2 <= reset;
+          end
+        else 
+          begin
+            pma_digital_rst0 <= reset;
+            pma_digital_rst1 <= pma_digital_rst0;
+            pma_digital_rst2 <= pma_digital_rst1;
+          end
+      end
+
+
+    //  Assign the digital reset of the PMA to the MAC_PCS logic
+    //  --------------------------------------------------------
+    assign MAC_PCS_reset = pma_digital_rst2;
+	
+	// Assign pcs clock for all channels
+	//assign pcs_clk = {pcs_clk_c23,pcs_clk_c22,pcs_clk_c21,pcs_clk_c20,pcs_clk_c19,pcs_clk_c18,pcs_clk_c17,pcs_clk_c16,pcs_clk_c15,pcs_clk_c14,pcs_clk_c13,pcs_clk_c12,pcs_clk_c11,pcs_clk_c10,pcs_clk_c9,pcs_clk_c8,pcs_clk_c7,pcs_clk_c6,pcs_clk_c5,pcs_clk_c4,pcs_clk_c3,pcs_clk_c2,pcs_clk_c1,pcs_clk_c0};
+
+    //  Assign the character error and link status to top level leds
+    //  ------------------------------------------------------------
+    assign led_char_err_0 = led_char_err_gx[0];
+    assign led_link_0 = link_status[0];
+    assign led_char_err_1 = led_char_err_gx[1];
+    assign led_link_1 = link_status[1];
+    assign led_char_err_2 = led_char_err_gx[2];
+    assign led_link_2 = link_status[2];
+    assign led_char_err_3 = led_char_err_gx[3];
+    assign led_link_3 = link_status[3];
+    assign led_char_err_4 = led_char_err_gx[4];
+    assign led_link_4 = link_status[4];
+    assign led_char_err_5 = led_char_err_gx[5];
+    assign led_link_5 = link_status[5];
+    assign led_char_err_6 = led_char_err_gx[6];
+    assign led_link_6 = link_status[6];
+    assign led_char_err_7 = led_char_err_gx[7];
+    assign led_link_7 = link_status[7];
+    assign led_char_err_8 = led_char_err_gx[8];
+    assign led_link_8 = link_status[8];
+    assign led_char_err_9 = led_char_err_gx[9];
+    assign led_link_9 = link_status[9];
+    assign led_char_err_10 = led_char_err_gx[10];
+    assign led_link_10 = link_status[10];
+    assign led_char_err_11 = led_char_err_gx[11];
+    assign led_link_11 = link_status[11];
+    assign led_char_err_12 = led_char_err_gx[12];
+    assign led_link_12 = link_status[12];
+    assign led_char_err_13 = led_char_err_gx[13];
+    assign led_link_13 = link_status[13];
+    assign led_char_err_14 = led_char_err_gx[14];
+    assign led_link_14 = link_status[14];
+    assign led_char_err_15 = led_char_err_gx[15];
+    assign led_link_15 = link_status[15];
+    assign led_char_err_16 = led_char_err_gx[16];
+    assign led_link_16 = link_status[16];
+    assign led_char_err_17 = led_char_err_gx[17];
+    assign led_link_17 = link_status[17];
+    assign led_char_err_18 = led_char_err_gx[18];
+    assign led_link_18 = link_status[18];
+    assign led_char_err_19 = led_char_err_gx[19];
+    assign led_link_19 = link_status[19];
+    assign led_char_err_20 = led_char_err_gx[20];
+    assign led_link_20 = link_status[20];
+    assign led_char_err_21 = led_char_err_gx[21];
+    assign led_link_21 = link_status[21];
+    assign led_char_err_22 = led_char_err_gx[22];
+    assign led_link_22 = link_status[22];
+    assign led_char_err_23 = led_char_err_gx[23];
+    assign led_link_23 = link_status[23];
+
+
+    // Instantiation of the MAC_PCS core that connects to a PMA
+    // --------------------------------------------------------
+
+    altera_tse_top_multi_mac_pcs_gige U_MULTI_MAC_PCS(
+
+        .reset(MAC_PCS_reset),                    //INPUT  : ASYNCHRONOUS RESET - clk DOMAIN
+        .clk(clk),                                //INPUT  : CLOCK
+        .read(read),                              //INPUT  : REGISTER READ TRANSACTION
+        .ref_clk(ref_clk),                        //INPUT  : REFERENCE CLOCK 
+        .write(write),                            //INPUT  : REGISTER WRITE TRANSACTION
+        .address(address),                        //INPUT  : REGISTER ADDRESS
+        .writedata(writedata),                    //INPUT  : REGISTER WRITE DATA
+        .readdata(readdata),                      //OUTPUT : REGISTER READ DATA
+        .waitrequest(waitrequest),                //OUTPUT : TRANSACTION BUSY, ACTIVE LOW
+        .mdc(mdc),                                //OUTPUT : MDIO Clock 
+        .mdio_out(mdio_out),                      //OUTPUT : Outgoing MDIO DATA
+        .mdio_in(mdio_in),                        //INPUT  : Incoming MDIO DATA       
+        .mdio_oen(mdio_oen),                      //OUTPUT : MDIO Output Enable
+        .mac_rx_clk(mac_rx_clk),                  //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk(mac_tx_clk),                  //OUTPUT : Av-ST Tx Clock
+	    .rx_afull_clk(rx_afull_clk),              //INPUT  : AFull Status Clock
+	    .rx_afull_data(rx_afull_data),            //INPUT  : AFull Status Data
+	    .rx_afull_valid(rx_afull_valid),          //INPUT  : AFull Status Valid
+	    .rx_afull_channel(rx_afull_channel),      //INPUT  : AFull Status Channel
+
+         // Channel 0 
+            
+
+        .rx_carrierdetected_0(pcs_rx_carrierdetected[0]),
+        .rx_rmfifodatadeleted_0(pcs_rx_rmfifodatadeleted[0]),
+        .rx_rmfifodatainserted_0(pcs_rx_rmfifodatainserted[0]),
+
+        .rx_clkout_0(pcs_clk_c0),                 //INPUT  : Receive Clock
+        .tx_clkout_0(pcs_clk_c0),                 //INPUT  : Transmit Clock
+        .rx_kchar_0(pcs_rx_kchar_0),              //INPUT  : Special Character Indication
+        .tx_kchar_0(tx_kchar_0),                  //OUTPUT : Special Character Indication
+        .rx_frame_0(pcs_rx_frame_0),              //INPUT  : Frame
+        .tx_frame_0(tx_frame_0),                  //OUTPUT : Frame
+        .sd_loopback_0(sd_loopback_0),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_0(pcs_pwrdn_out_sig[0]),       //OUTPUT : Powerdown Enable
+        .led_col_0(led_col_0),                    //OUTPUT : Collision Indication
+        .led_an_0(led_an_0),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_0(led_char_err_gx[0]),      //INPUT  : Character error
+        .led_crs_0(led_crs_0),                    //OUTPUT : Carrier sense
+        .led_link_0(link_status[0]),              //INPUT  : Valid link    
+        .mac_rx_clk_0(mac_rx_clk_0),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_0(mac_tx_clk_0),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_0(data_rx_sop_0),            //OUTPUT : Start of Packet
+        .data_rx_eop_0(data_rx_eop_0),            //OUTPUT : End of Packet
+        .data_rx_data_0(data_rx_data_0),          //OUTPUT : Data from FIFO
+        .data_rx_error_0(data_rx_error_0),        //OUTPUT : Receive packet error
+        .data_rx_valid_0(data_rx_valid_0),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_0(data_rx_ready_0),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_0(pkt_class_data_0),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_0(pkt_class_valid_0),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_0(data_tx_error_0),        //INPUT  : Status
+        .data_tx_data_0(data_tx_data_0),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_0(data_tx_valid_0),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_0(data_tx_sop_0),            //INPUT  : Start of Packet
+        .data_tx_eop_0(data_tx_eop_0),            //INPUT  : End of Packet
+        .data_tx_ready_0(data_tx_ready_0),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_0(tx_ff_uflow_0),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_0(tx_crc_fwd_0),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_0(xoff_gen_0),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_0(xon_gen_0),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_0(magic_sleep_n_0),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_0(magic_wakeup_0),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 1 
+            
+
+        .rx_carrierdetected_1(pcs_rx_carrierdetected[1]),
+        .rx_rmfifodatadeleted_1(pcs_rx_rmfifodatadeleted[1]),
+        .rx_rmfifodatainserted_1(pcs_rx_rmfifodatainserted[1]),
+
+        .rx_clkout_1(pcs_clk_c1),                 //INPUT  : Receive Clock
+        .tx_clkout_1(pcs_clk_c1),                 //INPUT  : Transmit Clock
+        .rx_kchar_1(pcs_rx_kchar_1),              //INPUT  : Special Character Indication
+        .tx_kchar_1(tx_kchar_1),                  //OUTPUT : Special Character Indication
+        .rx_frame_1(pcs_rx_frame_1),              //INPUT  : Frame
+        .tx_frame_1(tx_frame_1),                  //OUTPUT : Frame
+        .sd_loopback_1(sd_loopback_1),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_1(pcs_pwrdn_out_sig[1]),       //OUTPUT : Powerdown Enable
+        .led_col_1(led_col_1),                    //OUTPUT : Collision Indication
+        .led_an_1(led_an_1),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_1(led_char_err_gx[1]),      //INPUT  : Character error
+        .led_crs_1(led_crs_1),                    //OUTPUT : Carrier sense
+        .led_link_1(link_status[1]),              //INPUT  : Valid link    
+        .mac_rx_clk_1(mac_rx_clk_1),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_1(mac_tx_clk_1),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_1(data_rx_sop_1),            //OUTPUT : Start of Packet
+        .data_rx_eop_1(data_rx_eop_1),            //OUTPUT : End of Packet
+        .data_rx_data_1(data_rx_data_1),          //OUTPUT : Data from FIFO
+        .data_rx_error_1(data_rx_error_1),        //OUTPUT : Receive packet error
+        .data_rx_valid_1(data_rx_valid_1),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_1(data_rx_ready_1),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_1(pkt_class_data_1),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_1(pkt_class_valid_1),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_1(data_tx_error_1),        //INPUT  : Status
+        .data_tx_data_1(data_tx_data_1),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_1(data_tx_valid_1),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_1(data_tx_sop_1),            //INPUT  : Start of Packet
+        .data_tx_eop_1(data_tx_eop_1),            //INPUT  : End of Packet
+        .data_tx_ready_1(data_tx_ready_1),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_1(tx_ff_uflow_1),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_1(tx_crc_fwd_1),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_1(xoff_gen_1),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_1(xon_gen_1),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_1(magic_sleep_n_1),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_1(magic_wakeup_1),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 2 
+            
+
+        .rx_carrierdetected_2(pcs_rx_carrierdetected[2]),
+        .rx_rmfifodatadeleted_2(pcs_rx_rmfifodatadeleted[2]),
+        .rx_rmfifodatainserted_2(pcs_rx_rmfifodatainserted[2]),
+
+        .rx_clkout_2(pcs_clk_c2),                 //INPUT  : Receive Clock
+        .tx_clkout_2(pcs_clk_c2),                 //INPUT  : Transmit Clock
+        .rx_kchar_2(pcs_rx_kchar_2),              //INPUT  : Special Character Indication
+        .tx_kchar_2(tx_kchar_2),                  //OUTPUT : Special Character Indication
+        .rx_frame_2(pcs_rx_frame_2),              //INPUT  : Frame
+        .tx_frame_2(tx_frame_2),                  //OUTPUT : Frame
+        .sd_loopback_2(sd_loopback_2),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_2(pcs_pwrdn_out_sig[2]),       //OUTPUT : Powerdown Enable
+        .led_col_2(led_col_2),                    //OUTPUT : Collision Indication
+        .led_an_2(led_an_2),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_2(led_char_err_gx[2]),      //INPUT  : Character error
+        .led_crs_2(led_crs_2),                    //OUTPUT : Carrier sense
+        .led_link_2(link_status[2]),              //INPUT  : Valid link    
+        .mac_rx_clk_2(mac_rx_clk_2),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_2(mac_tx_clk_2),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_2(data_rx_sop_2),            //OUTPUT : Start of Packet
+        .data_rx_eop_2(data_rx_eop_2),            //OUTPUT : End of Packet
+        .data_rx_data_2(data_rx_data_2),          //OUTPUT : Data from FIFO
+        .data_rx_error_2(data_rx_error_2),        //OUTPUT : Receive packet error
+        .data_rx_valid_2(data_rx_valid_2),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_2(data_rx_ready_2),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_2(pkt_class_data_2),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_2(pkt_class_valid_2),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_2(data_tx_error_2),        //INPUT  : Status
+        .data_tx_data_2(data_tx_data_2),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_2(data_tx_valid_2),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_2(data_tx_sop_2),            //INPUT  : Start of Packet
+        .data_tx_eop_2(data_tx_eop_2),            //INPUT  : End of Packet
+        .data_tx_ready_2(data_tx_ready_2),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_2(tx_ff_uflow_2),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_2(tx_crc_fwd_2),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_2(xoff_gen_2),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_2(xon_gen_2),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_2(magic_sleep_n_2),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_2(magic_wakeup_2),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 3 
+            
+
+        .rx_carrierdetected_3(pcs_rx_carrierdetected[3]),
+        .rx_rmfifodatadeleted_3(pcs_rx_rmfifodatadeleted[3]),
+        .rx_rmfifodatainserted_3(pcs_rx_rmfifodatainserted[3]),
+
+        .rx_clkout_3(pcs_clk_c3),                 //INPUT  : Receive Clock
+        .tx_clkout_3(pcs_clk_c3),                 //INPUT  : Transmit Clock
+        .rx_kchar_3(pcs_rx_kchar_3),              //INPUT  : Special Character Indication
+        .tx_kchar_3(tx_kchar_3),                  //OUTPUT : Special Character Indication
+        .rx_frame_3(pcs_rx_frame_3),              //INPUT  : Frame
+        .tx_frame_3(tx_frame_3),                  //OUTPUT : Frame
+        .sd_loopback_3(sd_loopback_3),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_3(pcs_pwrdn_out_sig[3]),       //OUTPUT : Powerdown Enable
+        .led_col_3(led_col_3),                    //OUTPUT : Collision Indication
+        .led_an_3(led_an_3),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_3(led_char_err_gx[3]),      //INPUT  : Character error
+        .led_crs_3(led_crs_3),                    //OUTPUT : Carrier sense
+        .led_link_3(link_status[3]),              //INPUT  : Valid link    
+        .mac_rx_clk_3(mac_rx_clk_3),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_3(mac_tx_clk_3),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_3(data_rx_sop_3),            //OUTPUT : Start of Packet
+        .data_rx_eop_3(data_rx_eop_3),            //OUTPUT : End of Packet
+        .data_rx_data_3(data_rx_data_3),          //OUTPUT : Data from FIFO
+        .data_rx_error_3(data_rx_error_3),        //OUTPUT : Receive packet error
+        .data_rx_valid_3(data_rx_valid_3),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_3(data_rx_ready_3),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_3(pkt_class_data_3),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_3(pkt_class_valid_3),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_3(data_tx_error_3),        //INPUT  : Status
+        .data_tx_data_3(data_tx_data_3),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_3(data_tx_valid_3),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_3(data_tx_sop_3),            //INPUT  : Start of Packet
+        .data_tx_eop_3(data_tx_eop_3),            //INPUT  : End of Packet
+        .data_tx_ready_3(data_tx_ready_3),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_3(tx_ff_uflow_3),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_3(tx_crc_fwd_3),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_3(xoff_gen_3),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_3(xon_gen_3),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_3(magic_sleep_n_3),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_3(magic_wakeup_3),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 4 
+            
+
+        .rx_carrierdetected_4(pcs_rx_carrierdetected[4]),
+        .rx_rmfifodatadeleted_4(pcs_rx_rmfifodatadeleted[4]),
+        .rx_rmfifodatainserted_4(pcs_rx_rmfifodatainserted[4]),
+
+        .rx_clkout_4(pcs_clk_c4),                 //INPUT  : Receive Clock
+        .tx_clkout_4(pcs_clk_c4),                 //INPUT  : Transmit Clock
+        .rx_kchar_4(pcs_rx_kchar_4),              //INPUT  : Special Character Indication
+        .tx_kchar_4(tx_kchar_4),                  //OUTPUT : Special Character Indication
+        .rx_frame_4(pcs_rx_frame_4),              //INPUT  : Frame
+        .tx_frame_4(tx_frame_4),                  //OUTPUT : Frame
+        .sd_loopback_4(sd_loopback_4),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_4(pcs_pwrdn_out_sig[4]),       //OUTPUT : Powerdown Enable
+        .led_col_4(led_col_4),                    //OUTPUT : Collision Indication
+        .led_an_4(led_an_4),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_4(led_char_err_gx[4]),      //INPUT  : Character error
+        .led_crs_4(led_crs_4),                    //OUTPUT : Carrier sense
+        .led_link_4(link_status[4]),              //INPUT  : Valid link    
+        .mac_rx_clk_4(mac_rx_clk_4),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_4(mac_tx_clk_4),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_4(data_rx_sop_4),            //OUTPUT : Start of Packet
+        .data_rx_eop_4(data_rx_eop_4),            //OUTPUT : End of Packet
+        .data_rx_data_4(data_rx_data_4),          //OUTPUT : Data from FIFO
+        .data_rx_error_4(data_rx_error_4),        //OUTPUT : Receive packet error
+        .data_rx_valid_4(data_rx_valid_4),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_4(data_rx_ready_4),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_4(pkt_class_data_4),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_4(pkt_class_valid_4),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_4(data_tx_error_4),        //INPUT  : Status
+        .data_tx_data_4(data_tx_data_4),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_4(data_tx_valid_4),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_4(data_tx_sop_4),            //INPUT  : Start of Packet
+        .data_tx_eop_4(data_tx_eop_4),            //INPUT  : End of Packet
+        .data_tx_ready_4(data_tx_ready_4),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_4(tx_ff_uflow_4),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_4(tx_crc_fwd_4),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_4(xoff_gen_4),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_4(xon_gen_4),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_4(magic_sleep_n_4),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_4(magic_wakeup_4),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 5 
+            
+
+        .rx_carrierdetected_5(pcs_rx_carrierdetected[5]),
+        .rx_rmfifodatadeleted_5(pcs_rx_rmfifodatadeleted[5]),
+        .rx_rmfifodatainserted_5(pcs_rx_rmfifodatainserted[5]),
+
+        .rx_clkout_5(pcs_clk_c5),                 //INPUT  : Receive Clock
+        .tx_clkout_5(pcs_clk_c5),                 //INPUT  : Transmit Clock
+        .rx_kchar_5(pcs_rx_kchar_5),              //INPUT  : Special Character Indication
+        .tx_kchar_5(tx_kchar_5),                  //OUTPUT : Special Character Indication
+        .rx_frame_5(pcs_rx_frame_5),              //INPUT  : Frame
+        .tx_frame_5(tx_frame_5),                  //OUTPUT : Frame
+        .sd_loopback_5(sd_loopback_5),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_5(pcs_pwrdn_out_sig[5]),       //OUTPUT : Powerdown Enable
+        .led_col_5(led_col_5),                    //OUTPUT : Collision Indication
+        .led_an_5(led_an_5),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_5(led_char_err_gx[5]),      //INPUT  : Character error
+        .led_crs_5(led_crs_5),                    //OUTPUT : Carrier sense
+        .led_link_5(link_status[5]),              //INPUT  : Valid link    
+        .mac_rx_clk_5(mac_rx_clk_5),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_5(mac_tx_clk_5),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_5(data_rx_sop_5),            //OUTPUT : Start of Packet
+        .data_rx_eop_5(data_rx_eop_5),            //OUTPUT : End of Packet
+        .data_rx_data_5(data_rx_data_5),          //OUTPUT : Data from FIFO
+        .data_rx_error_5(data_rx_error_5),        //OUTPUT : Receive packet error
+        .data_rx_valid_5(data_rx_valid_5),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_5(data_rx_ready_5),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_5(pkt_class_data_5),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_5(pkt_class_valid_5),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_5(data_tx_error_5),        //INPUT  : Status
+        .data_tx_data_5(data_tx_data_5),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_5(data_tx_valid_5),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_5(data_tx_sop_5),            //INPUT  : Start of Packet
+        .data_tx_eop_5(data_tx_eop_5),            //INPUT  : End of Packet
+        .data_tx_ready_5(data_tx_ready_5),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_5(tx_ff_uflow_5),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_5(tx_crc_fwd_5),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_5(xoff_gen_5),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_5(xon_gen_5),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_5(magic_sleep_n_5),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_5(magic_wakeup_5),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 6 
+            
+
+        .rx_carrierdetected_6(pcs_rx_carrierdetected[6]),
+        .rx_rmfifodatadeleted_6(pcs_rx_rmfifodatadeleted[6]),
+        .rx_rmfifodatainserted_6(pcs_rx_rmfifodatainserted[6]),
+
+        .rx_clkout_6(pcs_clk_c6),                 //INPUT  : Receive Clock
+        .tx_clkout_6(pcs_clk_c6),                 //INPUT  : Transmit Clock
+        .rx_kchar_6(pcs_rx_kchar_6),              //INPUT  : Special Character Indication
+        .tx_kchar_6(tx_kchar_6),                  //OUTPUT : Special Character Indication
+        .rx_frame_6(pcs_rx_frame_6),              //INPUT  : Frame
+        .tx_frame_6(tx_frame_6),                  //OUTPUT : Frame
+        .sd_loopback_6(sd_loopback_6),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_6(pcs_pwrdn_out_sig[6]),       //OUTPUT : Powerdown Enable
+        .led_col_6(led_col_6),                    //OUTPUT : Collision Indication
+        .led_an_6(led_an_6),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_6(led_char_err_gx[6]),      //INPUT  : Character error
+        .led_crs_6(led_crs_6),                    //OUTPUT : Carrier sense
+        .led_link_6(link_status[6]),              //INPUT  : Valid link    
+        .mac_rx_clk_6(mac_rx_clk_6),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_6(mac_tx_clk_6),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_6(data_rx_sop_6),            //OUTPUT : Start of Packet
+        .data_rx_eop_6(data_rx_eop_6),            //OUTPUT : End of Packet
+        .data_rx_data_6(data_rx_data_6),          //OUTPUT : Data from FIFO
+        .data_rx_error_6(data_rx_error_6),        //OUTPUT : Receive packet error
+        .data_rx_valid_6(data_rx_valid_6),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_6(data_rx_ready_6),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_6(pkt_class_data_6),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_6(pkt_class_valid_6),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_6(data_tx_error_6),        //INPUT  : Status
+        .data_tx_data_6(data_tx_data_6),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_6(data_tx_valid_6),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_6(data_tx_sop_6),            //INPUT  : Start of Packet
+        .data_tx_eop_6(data_tx_eop_6),            //INPUT  : End of Packet
+        .data_tx_ready_6(data_tx_ready_6),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_6(tx_ff_uflow_6),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_6(tx_crc_fwd_6),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_6(xoff_gen_6),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_6(xon_gen_6),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_6(magic_sleep_n_6),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_6(magic_wakeup_6),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 7 
+            
+
+        .rx_carrierdetected_7(pcs_rx_carrierdetected[7]),
+        .rx_rmfifodatadeleted_7(pcs_rx_rmfifodatadeleted[7]),
+        .rx_rmfifodatainserted_7(pcs_rx_rmfifodatainserted[7]),
+
+        .rx_clkout_7(pcs_clk_c7),                 //INPUT  : Receive Clock
+        .tx_clkout_7(pcs_clk_c7),                 //INPUT  : Transmit Clock
+        .rx_kchar_7(pcs_rx_kchar_7),              //INPUT  : Special Character Indication
+        .tx_kchar_7(tx_kchar_7),                  //OUTPUT : Special Character Indication
+        .rx_frame_7(pcs_rx_frame_7),              //INPUT  : Frame
+        .tx_frame_7(tx_frame_7),                  //OUTPUT : Frame
+        .sd_loopback_7(sd_loopback_7),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_7(pcs_pwrdn_out_sig[7]),       //OUTPUT : Powerdown Enable
+        .led_col_7(led_col_7),                    //OUTPUT : Collision Indication
+        .led_an_7(led_an_7),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_7(led_char_err_gx[7]),      //INPUT  : Character error
+        .led_crs_7(led_crs_7),                    //OUTPUT : Carrier sense
+        .led_link_7(link_status[7]),              //INPUT  : Valid link    
+        .mac_rx_clk_7(mac_rx_clk_7),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_7(mac_tx_clk_7),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_7(data_rx_sop_7),            //OUTPUT : Start of Packet
+        .data_rx_eop_7(data_rx_eop_7),            //OUTPUT : End of Packet
+        .data_rx_data_7(data_rx_data_7),          //OUTPUT : Data from FIFO
+        .data_rx_error_7(data_rx_error_7),        //OUTPUT : Receive packet error
+        .data_rx_valid_7(data_rx_valid_7),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_7(data_rx_ready_7),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_7(pkt_class_data_7),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_7(pkt_class_valid_7),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_7(data_tx_error_7),        //INPUT  : Status
+        .data_tx_data_7(data_tx_data_7),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_7(data_tx_valid_7),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_7(data_tx_sop_7),            //INPUT  : Start of Packet
+        .data_tx_eop_7(data_tx_eop_7),            //INPUT  : End of Packet
+        .data_tx_ready_7(data_tx_ready_7),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_7(tx_ff_uflow_7),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_7(tx_crc_fwd_7),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_7(xoff_gen_7),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_7(xon_gen_7),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_7(magic_sleep_n_7),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_7(magic_wakeup_7),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 8 
+            
+
+        .rx_carrierdetected_8(pcs_rx_carrierdetected[8]),
+        .rx_rmfifodatadeleted_8(pcs_rx_rmfifodatadeleted[8]),
+        .rx_rmfifodatainserted_8(pcs_rx_rmfifodatainserted[8]),
+
+        .rx_clkout_8(pcs_clk_c8),                 //INPUT  : Receive Clock
+        .tx_clkout_8(pcs_clk_c8),                 //INPUT  : Transmit Clock
+        .rx_kchar_8(pcs_rx_kchar_8),              //INPUT  : Special Character Indication
+        .tx_kchar_8(tx_kchar_8),                  //OUTPUT : Special Character Indication
+        .rx_frame_8(pcs_rx_frame_8),              //INPUT  : Frame
+        .tx_frame_8(tx_frame_8),                  //OUTPUT : Frame
+        .sd_loopback_8(sd_loopback_8),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_8(pcs_pwrdn_out_sig[8]),       //OUTPUT : Powerdown Enable
+        .led_col_8(led_col_8),                    //OUTPUT : Collision Indication
+        .led_an_8(led_an_8),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_8(led_char_err_gx[8]),      //INPUT  : Character error
+        .led_crs_8(led_crs_8),                    //OUTPUT : Carrier sense
+        .led_link_8(link_status[8]),              //INPUT  : Valid link    
+        .mac_rx_clk_8(mac_rx_clk_8),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_8(mac_tx_clk_8),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_8(data_rx_sop_8),            //OUTPUT : Start of Packet
+        .data_rx_eop_8(data_rx_eop_8),            //OUTPUT : End of Packet
+        .data_rx_data_8(data_rx_data_8),          //OUTPUT : Data from FIFO
+        .data_rx_error_8(data_rx_error_8),        //OUTPUT : Receive packet error
+        .data_rx_valid_8(data_rx_valid_8),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_8(data_rx_ready_8),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_8(pkt_class_data_8),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_8(pkt_class_valid_8),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_8(data_tx_error_8),        //INPUT  : Status
+        .data_tx_data_8(data_tx_data_8),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_8(data_tx_valid_8),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_8(data_tx_sop_8),            //INPUT  : Start of Packet
+        .data_tx_eop_8(data_tx_eop_8),            //INPUT  : End of Packet
+        .data_tx_ready_8(data_tx_ready_8),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_8(tx_ff_uflow_8),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_8(tx_crc_fwd_8),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_8(xoff_gen_8),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_8(xon_gen_8),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_8(magic_sleep_n_8),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_8(magic_wakeup_8),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 9 
+            
+
+        .rx_carrierdetected_9(pcs_rx_carrierdetected[9]),
+        .rx_rmfifodatadeleted_9(pcs_rx_rmfifodatadeleted[9]),
+        .rx_rmfifodatainserted_9(pcs_rx_rmfifodatainserted[9]),
+
+        .rx_clkout_9(pcs_clk_c9),                 //INPUT  : Receive Clock
+        .tx_clkout_9(pcs_clk_c9),                 //INPUT  : Transmit Clock
+        .rx_kchar_9(pcs_rx_kchar_9),              //INPUT  : Special Character Indication
+        .tx_kchar_9(tx_kchar_9),                  //OUTPUT : Special Character Indication
+        .rx_frame_9(pcs_rx_frame_9),              //INPUT  : Frame
+        .tx_frame_9(tx_frame_9),                  //OUTPUT : Frame
+        .sd_loopback_9(sd_loopback_9),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_9(pcs_pwrdn_out_sig[9]),       //OUTPUT : Powerdown Enable
+        .led_col_9(led_col_9),                    //OUTPUT : Collision Indication
+        .led_an_9(led_an_9),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_9(led_char_err_gx[9]),      //INPUT  : Character error
+        .led_crs_9(led_crs_9),                    //OUTPUT : Carrier sense
+        .led_link_9(link_status[9]),              //INPUT  : Valid link    
+        .mac_rx_clk_9(mac_rx_clk_9),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_9(mac_tx_clk_9),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_9(data_rx_sop_9),            //OUTPUT : Start of Packet
+        .data_rx_eop_9(data_rx_eop_9),            //OUTPUT : End of Packet
+        .data_rx_data_9(data_rx_data_9),          //OUTPUT : Data from FIFO
+        .data_rx_error_9(data_rx_error_9),        //OUTPUT : Receive packet error
+        .data_rx_valid_9(data_rx_valid_9),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_9(data_rx_ready_9),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_9(pkt_class_data_9),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_9(pkt_class_valid_9),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_9(data_tx_error_9),        //INPUT  : Status
+        .data_tx_data_9(data_tx_data_9),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_9(data_tx_valid_9),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_9(data_tx_sop_9),            //INPUT  : Start of Packet
+        .data_tx_eop_9(data_tx_eop_9),            //INPUT  : End of Packet
+        .data_tx_ready_9(data_tx_ready_9),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_9(tx_ff_uflow_9),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_9(tx_crc_fwd_9),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_9(xoff_gen_9),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_9(xon_gen_9),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_9(magic_sleep_n_9),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_9(magic_wakeup_9),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 10 
+            
+
+        .rx_carrierdetected_10(pcs_rx_carrierdetected[10]),
+        .rx_rmfifodatadeleted_10(pcs_rx_rmfifodatadeleted[10]),
+        .rx_rmfifodatainserted_10(pcs_rx_rmfifodatainserted[10]),
+
+        .rx_clkout_10(pcs_clk_c10),                 //INPUT  : Receive Clock
+        .tx_clkout_10(pcs_clk_c10),                 //INPUT  : Transmit Clock
+        .rx_kchar_10(pcs_rx_kchar_10),              //INPUT  : Special Character Indication
+        .tx_kchar_10(tx_kchar_10),                  //OUTPUT : Special Character Indication
+        .rx_frame_10(pcs_rx_frame_10),              //INPUT  : Frame
+        .tx_frame_10(tx_frame_10),                  //OUTPUT : Frame
+        .sd_loopback_10(sd_loopback_10),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_10(pcs_pwrdn_out_sig[10]),       //OUTPUT : Powerdown Enable
+        .led_col_10(led_col_10),                    //OUTPUT : Collision Indication
+        .led_an_10(led_an_10),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_10(led_char_err_gx[10]),      //INPUT  : Character error
+        .led_crs_10(led_crs_10),                    //OUTPUT : Carrier sense
+        .led_link_10(link_status[10]),              //INPUT  : Valid link    
+        .mac_rx_clk_10(mac_rx_clk_10),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_10(mac_tx_clk_10),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_10(data_rx_sop_10),            //OUTPUT : Start of Packet
+        .data_rx_eop_10(data_rx_eop_10),            //OUTPUT : End of Packet
+        .data_rx_data_10(data_rx_data_10),          //OUTPUT : Data from FIFO
+        .data_rx_error_10(data_rx_error_10),        //OUTPUT : Receive packet error
+        .data_rx_valid_10(data_rx_valid_10),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_10(data_rx_ready_10),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_10(pkt_class_data_10),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_10(pkt_class_valid_10),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_10(data_tx_error_10),        //INPUT  : Status
+        .data_tx_data_10(data_tx_data_10),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_10(data_tx_valid_10),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_10(data_tx_sop_10),            //INPUT  : Start of Packet
+        .data_tx_eop_10(data_tx_eop_10),            //INPUT  : End of Packet
+        .data_tx_ready_10(data_tx_ready_10),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_10(tx_ff_uflow_10),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_10(tx_crc_fwd_10),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_10(xoff_gen_10),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_10(xon_gen_10),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_10(magic_sleep_n_10),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_10(magic_wakeup_10),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 11 
+            
+
+        .rx_carrierdetected_11(pcs_rx_carrierdetected[11]),
+        .rx_rmfifodatadeleted_11(pcs_rx_rmfifodatadeleted[11]),
+        .rx_rmfifodatainserted_11(pcs_rx_rmfifodatainserted[11]),
+
+        .rx_clkout_11(pcs_clk_c11),                 //INPUT  : Receive Clock
+        .tx_clkout_11(pcs_clk_c11),                 //INPUT  : Transmit Clock
+        .rx_kchar_11(pcs_rx_kchar_11),              //INPUT  : Special Character Indication
+        .tx_kchar_11(tx_kchar_11),                  //OUTPUT : Special Character Indication
+        .rx_frame_11(pcs_rx_frame_11),              //INPUT  : Frame
+        .tx_frame_11(tx_frame_11),                  //OUTPUT : Frame
+        .sd_loopback_11(sd_loopback_11),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_11(pcs_pwrdn_out_sig[11]),       //OUTPUT : Powerdown Enable
+        .led_col_11(led_col_11),                    //OUTPUT : Collision Indication
+        .led_an_11(led_an_11),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_11(led_char_err_gx[11]),      //INPUT  : Character error
+        .led_crs_11(led_crs_11),                    //OUTPUT : Carrier sense
+        .led_link_11(link_status[11]),              //INPUT  : Valid link    
+        .mac_rx_clk_11(mac_rx_clk_11),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_11(mac_tx_clk_11),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_11(data_rx_sop_11),            //OUTPUT : Start of Packet
+        .data_rx_eop_11(data_rx_eop_11),            //OUTPUT : End of Packet
+        .data_rx_data_11(data_rx_data_11),          //OUTPUT : Data from FIFO
+        .data_rx_error_11(data_rx_error_11),        //OUTPUT : Receive packet error
+        .data_rx_valid_11(data_rx_valid_11),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_11(data_rx_ready_11),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_11(pkt_class_data_11),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_11(pkt_class_valid_11),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_11(data_tx_error_11),        //INPUT  : Status
+        .data_tx_data_11(data_tx_data_11),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_11(data_tx_valid_11),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_11(data_tx_sop_11),            //INPUT  : Start of Packet
+        .data_tx_eop_11(data_tx_eop_11),            //INPUT  : End of Packet
+        .data_tx_ready_11(data_tx_ready_11),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_11(tx_ff_uflow_11),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_11(tx_crc_fwd_11),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_11(xoff_gen_11),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_11(xon_gen_11),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_11(magic_sleep_n_11),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_11(magic_wakeup_11),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 12 
+            
+
+        .rx_carrierdetected_12(pcs_rx_carrierdetected[12]),
+        .rx_rmfifodatadeleted_12(pcs_rx_rmfifodatadeleted[12]),
+        .rx_rmfifodatainserted_12(pcs_rx_rmfifodatainserted[12]),
+
+        .rx_clkout_12(pcs_clk_c12),                 //INPUT  : Receive Clock
+        .tx_clkout_12(pcs_clk_c12),                 //INPUT  : Transmit Clock
+        .rx_kchar_12(pcs_rx_kchar_12),              //INPUT  : Special Character Indication
+        .tx_kchar_12(tx_kchar_12),                  //OUTPUT : Special Character Indication
+        .rx_frame_12(pcs_rx_frame_12),              //INPUT  : Frame
+        .tx_frame_12(tx_frame_12),                  //OUTPUT : Frame
+        .sd_loopback_12(sd_loopback_12),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_12(pcs_pwrdn_out_sig[12]),       //OUTPUT : Powerdown Enable
+        .led_col_12(led_col_12),                    //OUTPUT : Collision Indication
+        .led_an_12(led_an_12),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_12(led_char_err_gx[12]),      //INPUT  : Character error
+        .led_crs_12(led_crs_12),                    //OUTPUT : Carrier sense
+        .led_link_12(link_status[12]),              //INPUT  : Valid link    
+        .mac_rx_clk_12(mac_rx_clk_12),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_12(mac_tx_clk_12),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_12(data_rx_sop_12),            //OUTPUT : Start of Packet
+        .data_rx_eop_12(data_rx_eop_12),            //OUTPUT : End of Packet
+        .data_rx_data_12(data_rx_data_12),          //OUTPUT : Data from FIFO
+        .data_rx_error_12(data_rx_error_12),        //OUTPUT : Receive packet error
+        .data_rx_valid_12(data_rx_valid_12),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_12(data_rx_ready_12),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_12(pkt_class_data_12),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_12(pkt_class_valid_12),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_12(data_tx_error_12),        //INPUT  : Status
+        .data_tx_data_12(data_tx_data_12),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_12(data_tx_valid_12),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_12(data_tx_sop_12),            //INPUT  : Start of Packet
+        .data_tx_eop_12(data_tx_eop_12),            //INPUT  : End of Packet
+        .data_tx_ready_12(data_tx_ready_12),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_12(tx_ff_uflow_12),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_12(tx_crc_fwd_12),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_12(xoff_gen_12),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_12(xon_gen_12),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_12(magic_sleep_n_12),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_12(magic_wakeup_12),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 13 
+            
+
+        .rx_carrierdetected_13(pcs_rx_carrierdetected[13]),
+        .rx_rmfifodatadeleted_13(pcs_rx_rmfifodatadeleted[13]),
+        .rx_rmfifodatainserted_13(pcs_rx_rmfifodatainserted[13]),
+
+        .rx_clkout_13(pcs_clk_c13),                 //INPUT  : Receive Clock
+        .tx_clkout_13(pcs_clk_c13),                 //INPUT  : Transmit Clock
+        .rx_kchar_13(pcs_rx_kchar_13),              //INPUT  : Special Character Indication
+        .tx_kchar_13(tx_kchar_13),                  //OUTPUT : Special Character Indication
+        .rx_frame_13(pcs_rx_frame_13),              //INPUT  : Frame
+        .tx_frame_13(tx_frame_13),                  //OUTPUT : Frame
+        .sd_loopback_13(sd_loopback_13),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_13(pcs_pwrdn_out_sig[13]),       //OUTPUT : Powerdown Enable
+        .led_col_13(led_col_13),                    //OUTPUT : Collision Indication
+        .led_an_13(led_an_13),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_13(led_char_err_gx[13]),      //INPUT  : Character error
+        .led_crs_13(led_crs_13),                    //OUTPUT : Carrier sense
+        .led_link_13(link_status[13]),              //INPUT  : Valid link    
+        .mac_rx_clk_13(mac_rx_clk_13),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_13(mac_tx_clk_13),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_13(data_rx_sop_13),            //OUTPUT : Start of Packet
+        .data_rx_eop_13(data_rx_eop_13),            //OUTPUT : End of Packet
+        .data_rx_data_13(data_rx_data_13),          //OUTPUT : Data from FIFO
+        .data_rx_error_13(data_rx_error_13),        //OUTPUT : Receive packet error
+        .data_rx_valid_13(data_rx_valid_13),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_13(data_rx_ready_13),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_13(pkt_class_data_13),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_13(pkt_class_valid_13),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_13(data_tx_error_13),        //INPUT  : Status
+        .data_tx_data_13(data_tx_data_13),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_13(data_tx_valid_13),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_13(data_tx_sop_13),            //INPUT  : Start of Packet
+        .data_tx_eop_13(data_tx_eop_13),            //INPUT  : End of Packet
+        .data_tx_ready_13(data_tx_ready_13),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_13(tx_ff_uflow_13),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_13(tx_crc_fwd_13),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_13(xoff_gen_13),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_13(xon_gen_13),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_13(magic_sleep_n_13),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_13(magic_wakeup_13),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 14 
+            
+
+        .rx_carrierdetected_14(pcs_rx_carrierdetected[14]),
+        .rx_rmfifodatadeleted_14(pcs_rx_rmfifodatadeleted[14]),
+        .rx_rmfifodatainserted_14(pcs_rx_rmfifodatainserted[14]),
+
+        .rx_clkout_14(pcs_clk_c14),                 //INPUT  : Receive Clock
+        .tx_clkout_14(pcs_clk_c14),                 //INPUT  : Transmit Clock
+        .rx_kchar_14(pcs_rx_kchar_14),              //INPUT  : Special Character Indication
+        .tx_kchar_14(tx_kchar_14),                  //OUTPUT : Special Character Indication
+        .rx_frame_14(pcs_rx_frame_14),              //INPUT  : Frame
+        .tx_frame_14(tx_frame_14),                  //OUTPUT : Frame
+        .sd_loopback_14(sd_loopback_14),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_14(pcs_pwrdn_out_sig[14]),       //OUTPUT : Powerdown Enable
+        .led_col_14(led_col_14),                    //OUTPUT : Collision Indication
+        .led_an_14(led_an_14),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_14(led_char_err_gx[14]),      //INPUT  : Character error
+        .led_crs_14(led_crs_14),                    //OUTPUT : Carrier sense
+        .led_link_14(link_status[14]),              //INPUT  : Valid link    
+        .mac_rx_clk_14(mac_rx_clk_14),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_14(mac_tx_clk_14),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_14(data_rx_sop_14),            //OUTPUT : Start of Packet
+        .data_rx_eop_14(data_rx_eop_14),            //OUTPUT : End of Packet
+        .data_rx_data_14(data_rx_data_14),          //OUTPUT : Data from FIFO
+        .data_rx_error_14(data_rx_error_14),        //OUTPUT : Receive packet error
+        .data_rx_valid_14(data_rx_valid_14),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_14(data_rx_ready_14),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_14(pkt_class_data_14),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_14(pkt_class_valid_14),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_14(data_tx_error_14),        //INPUT  : Status
+        .data_tx_data_14(data_tx_data_14),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_14(data_tx_valid_14),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_14(data_tx_sop_14),            //INPUT  : Start of Packet
+        .data_tx_eop_14(data_tx_eop_14),            //INPUT  : End of Packet
+        .data_tx_ready_14(data_tx_ready_14),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_14(tx_ff_uflow_14),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_14(tx_crc_fwd_14),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_14(xoff_gen_14),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_14(xon_gen_14),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_14(magic_sleep_n_14),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_14(magic_wakeup_14),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 15 
+            
+
+        .rx_carrierdetected_15(pcs_rx_carrierdetected[15]),
+        .rx_rmfifodatadeleted_15(pcs_rx_rmfifodatadeleted[15]),
+        .rx_rmfifodatainserted_15(pcs_rx_rmfifodatainserted[15]),
+
+        .rx_clkout_15(pcs_clk_c15),                 //INPUT  : Receive Clock
+        .tx_clkout_15(pcs_clk_c15),                 //INPUT  : Transmit Clock
+        .rx_kchar_15(pcs_rx_kchar_15),              //INPUT  : Special Character Indication
+        .tx_kchar_15(tx_kchar_15),                  //OUTPUT : Special Character Indication
+        .rx_frame_15(pcs_rx_frame_15),              //INPUT  : Frame
+        .tx_frame_15(tx_frame_15),                  //OUTPUT : Frame
+        .sd_loopback_15(sd_loopback_15),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_15(pcs_pwrdn_out_sig[15]),       //OUTPUT : Powerdown Enable
+        .led_col_15(led_col_15),                    //OUTPUT : Collision Indication
+        .led_an_15(led_an_15),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_15(led_char_err_gx[15]),      //INPUT  : Character error
+        .led_crs_15(led_crs_15),                    //OUTPUT : Carrier sense
+        .led_link_15(link_status[15]),              //INPUT  : Valid link    
+        .mac_rx_clk_15(mac_rx_clk_15),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_15(mac_tx_clk_15),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_15(data_rx_sop_15),            //OUTPUT : Start of Packet
+        .data_rx_eop_15(data_rx_eop_15),            //OUTPUT : End of Packet
+        .data_rx_data_15(data_rx_data_15),          //OUTPUT : Data from FIFO
+        .data_rx_error_15(data_rx_error_15),        //OUTPUT : Receive packet error
+        .data_rx_valid_15(data_rx_valid_15),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_15(data_rx_ready_15),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_15(pkt_class_data_15),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_15(pkt_class_valid_15),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_15(data_tx_error_15),        //INPUT  : Status
+        .data_tx_data_15(data_tx_data_15),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_15(data_tx_valid_15),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_15(data_tx_sop_15),            //INPUT  : Start of Packet
+        .data_tx_eop_15(data_tx_eop_15),            //INPUT  : End of Packet
+        .data_tx_ready_15(data_tx_ready_15),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_15(tx_ff_uflow_15),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_15(tx_crc_fwd_15),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_15(xoff_gen_15),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_15(xon_gen_15),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_15(magic_sleep_n_15),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_15(magic_wakeup_15),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 16 
+            
+
+        .rx_carrierdetected_16(pcs_rx_carrierdetected[16]),
+        .rx_rmfifodatadeleted_16(pcs_rx_rmfifodatadeleted[16]),
+        .rx_rmfifodatainserted_16(pcs_rx_rmfifodatainserted[16]),
+
+        .rx_clkout_16(pcs_clk_c16),                 //INPUT  : Receive Clock
+        .tx_clkout_16(pcs_clk_c16),                 //INPUT  : Transmit Clock
+        .rx_kchar_16(pcs_rx_kchar_16),              //INPUT  : Special Character Indication
+        .tx_kchar_16(tx_kchar_16),                  //OUTPUT : Special Character Indication
+        .rx_frame_16(pcs_rx_frame_16),              //INPUT  : Frame
+        .tx_frame_16(tx_frame_16),                  //OUTPUT : Frame
+        .sd_loopback_16(sd_loopback_16),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_16(pcs_pwrdn_out_sig[16]),       //OUTPUT : Powerdown Enable
+        .led_col_16(led_col_16),                    //OUTPUT : Collision Indication
+        .led_an_16(led_an_16),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_16(led_char_err_gx[16]),      //INPUT  : Character error
+        .led_crs_16(led_crs_16),                    //OUTPUT : Carrier sense
+        .led_link_16(link_status[16]),              //INPUT  : Valid link    
+        .mac_rx_clk_16(mac_rx_clk_16),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_16(mac_tx_clk_16),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_16(data_rx_sop_16),            //OUTPUT : Start of Packet
+        .data_rx_eop_16(data_rx_eop_16),            //OUTPUT : End of Packet
+        .data_rx_data_16(data_rx_data_16),          //OUTPUT : Data from FIFO
+        .data_rx_error_16(data_rx_error_16),        //OUTPUT : Receive packet error
+        .data_rx_valid_16(data_rx_valid_16),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_16(data_rx_ready_16),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_16(pkt_class_data_16),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_16(pkt_class_valid_16),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_16(data_tx_error_16),        //INPUT  : Status
+        .data_tx_data_16(data_tx_data_16),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_16(data_tx_valid_16),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_16(data_tx_sop_16),            //INPUT  : Start of Packet
+        .data_tx_eop_16(data_tx_eop_16),            //INPUT  : End of Packet
+        .data_tx_ready_16(data_tx_ready_16),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_16(tx_ff_uflow_16),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_16(tx_crc_fwd_16),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_16(xoff_gen_16),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_16(xon_gen_16),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_16(magic_sleep_n_16),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_16(magic_wakeup_16),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 17 
+            
+
+        .rx_carrierdetected_17(pcs_rx_carrierdetected[17]),
+        .rx_rmfifodatadeleted_17(pcs_rx_rmfifodatadeleted[17]),
+        .rx_rmfifodatainserted_17(pcs_rx_rmfifodatainserted[17]),
+
+        .rx_clkout_17(pcs_clk_c17),                 //INPUT  : Receive Clock
+        .tx_clkout_17(pcs_clk_c17),                 //INPUT  : Transmit Clock
+        .rx_kchar_17(pcs_rx_kchar_17),              //INPUT  : Special Character Indication
+        .tx_kchar_17(tx_kchar_17),                  //OUTPUT : Special Character Indication
+        .rx_frame_17(pcs_rx_frame_17),              //INPUT  : Frame
+        .tx_frame_17(tx_frame_17),                  //OUTPUT : Frame
+        .sd_loopback_17(sd_loopback_17),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_17(pcs_pwrdn_out_sig[17]),       //OUTPUT : Powerdown Enable
+        .led_col_17(led_col_17),                    //OUTPUT : Collision Indication
+        .led_an_17(led_an_17),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_17(led_char_err_gx[17]),      //INPUT  : Character error
+        .led_crs_17(led_crs_17),                    //OUTPUT : Carrier sense
+        .led_link_17(link_status[17]),              //INPUT  : Valid link    
+        .mac_rx_clk_17(mac_rx_clk_17),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_17(mac_tx_clk_17),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_17(data_rx_sop_17),            //OUTPUT : Start of Packet
+        .data_rx_eop_17(data_rx_eop_17),            //OUTPUT : End of Packet
+        .data_rx_data_17(data_rx_data_17),          //OUTPUT : Data from FIFO
+        .data_rx_error_17(data_rx_error_17),        //OUTPUT : Receive packet error
+        .data_rx_valid_17(data_rx_valid_17),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_17(data_rx_ready_17),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_17(pkt_class_data_17),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_17(pkt_class_valid_17),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_17(data_tx_error_17),        //INPUT  : Status
+        .data_tx_data_17(data_tx_data_17),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_17(data_tx_valid_17),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_17(data_tx_sop_17),            //INPUT  : Start of Packet
+        .data_tx_eop_17(data_tx_eop_17),            //INPUT  : End of Packet
+        .data_tx_ready_17(data_tx_ready_17),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_17(tx_ff_uflow_17),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_17(tx_crc_fwd_17),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_17(xoff_gen_17),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_17(xon_gen_17),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_17(magic_sleep_n_17),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_17(magic_wakeup_17),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 18 
+            
+
+        .rx_carrierdetected_18(pcs_rx_carrierdetected[18]),
+        .rx_rmfifodatadeleted_18(pcs_rx_rmfifodatadeleted[18]),
+        .rx_rmfifodatainserted_18(pcs_rx_rmfifodatainserted[18]),
+
+        .rx_clkout_18(pcs_clk_c18),                 //INPUT  : Receive Clock
+        .tx_clkout_18(pcs_clk_c18),                 //INPUT  : Transmit Clock
+        .rx_kchar_18(pcs_rx_kchar_18),              //INPUT  : Special Character Indication
+        .tx_kchar_18(tx_kchar_18),                  //OUTPUT : Special Character Indication
+        .rx_frame_18(pcs_rx_frame_18),              //INPUT  : Frame
+        .tx_frame_18(tx_frame_18),                  //OUTPUT : Frame
+        .sd_loopback_18(sd_loopback_18),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_18(pcs_pwrdn_out_sig[18]),       //OUTPUT : Powerdown Enable
+        .led_col_18(led_col_18),                    //OUTPUT : Collision Indication
+        .led_an_18(led_an_18),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_18(led_char_err_gx[18]),      //INPUT  : Character error
+        .led_crs_18(led_crs_18),                    //OUTPUT : Carrier sense
+        .led_link_18(link_status[18]),              //INPUT  : Valid link    
+        .mac_rx_clk_18(mac_rx_clk_18),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_18(mac_tx_clk_18),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_18(data_rx_sop_18),            //OUTPUT : Start of Packet
+        .data_rx_eop_18(data_rx_eop_18),            //OUTPUT : End of Packet
+        .data_rx_data_18(data_rx_data_18),          //OUTPUT : Data from FIFO
+        .data_rx_error_18(data_rx_error_18),        //OUTPUT : Receive packet error
+        .data_rx_valid_18(data_rx_valid_18),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_18(data_rx_ready_18),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_18(pkt_class_data_18),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_18(pkt_class_valid_18),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_18(data_tx_error_18),        //INPUT  : Status
+        .data_tx_data_18(data_tx_data_18),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_18(data_tx_valid_18),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_18(data_tx_sop_18),            //INPUT  : Start of Packet
+        .data_tx_eop_18(data_tx_eop_18),            //INPUT  : End of Packet
+        .data_tx_ready_18(data_tx_ready_18),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_18(tx_ff_uflow_18),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_18(tx_crc_fwd_18),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_18(xoff_gen_18),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_18(xon_gen_18),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_18(magic_sleep_n_18),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_18(magic_wakeup_18),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 19 
+            
+
+        .rx_carrierdetected_19(pcs_rx_carrierdetected[19]),
+        .rx_rmfifodatadeleted_19(pcs_rx_rmfifodatadeleted[19]),
+        .rx_rmfifodatainserted_19(pcs_rx_rmfifodatainserted[19]),
+
+        .rx_clkout_19(pcs_clk_c19),                 //INPUT  : Receive Clock
+        .tx_clkout_19(pcs_clk_c19),                 //INPUT  : Transmit Clock
+        .rx_kchar_19(pcs_rx_kchar_19),              //INPUT  : Special Character Indication
+        .tx_kchar_19(tx_kchar_19),                  //OUTPUT : Special Character Indication
+        .rx_frame_19(pcs_rx_frame_19),              //INPUT  : Frame
+        .tx_frame_19(tx_frame_19),                  //OUTPUT : Frame
+        .sd_loopback_19(sd_loopback_19),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_19(pcs_pwrdn_out_sig[19]),       //OUTPUT : Powerdown Enable
+        .led_col_19(led_col_19),                    //OUTPUT : Collision Indication
+        .led_an_19(led_an_19),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_19(led_char_err_gx[19]),      //INPUT  : Character error
+        .led_crs_19(led_crs_19),                    //OUTPUT : Carrier sense
+        .led_link_19(link_status[19]),              //INPUT  : Valid link    
+        .mac_rx_clk_19(mac_rx_clk_19),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_19(mac_tx_clk_19),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_19(data_rx_sop_19),            //OUTPUT : Start of Packet
+        .data_rx_eop_19(data_rx_eop_19),            //OUTPUT : End of Packet
+        .data_rx_data_19(data_rx_data_19),          //OUTPUT : Data from FIFO
+        .data_rx_error_19(data_rx_error_19),        //OUTPUT : Receive packet error
+        .data_rx_valid_19(data_rx_valid_19),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_19(data_rx_ready_19),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_19(pkt_class_data_19),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_19(pkt_class_valid_19),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_19(data_tx_error_19),        //INPUT  : Status
+        .data_tx_data_19(data_tx_data_19),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_19(data_tx_valid_19),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_19(data_tx_sop_19),            //INPUT  : Start of Packet
+        .data_tx_eop_19(data_tx_eop_19),            //INPUT  : End of Packet
+        .data_tx_ready_19(data_tx_ready_19),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_19(tx_ff_uflow_19),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_19(tx_crc_fwd_19),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_19(xoff_gen_19),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_19(xon_gen_19),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_19(magic_sleep_n_19),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_19(magic_wakeup_19),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 20 
+            
+
+        .rx_carrierdetected_20(pcs_rx_carrierdetected[20]),
+        .rx_rmfifodatadeleted_20(pcs_rx_rmfifodatadeleted[20]),
+        .rx_rmfifodatainserted_20(pcs_rx_rmfifodatainserted[20]),
+
+        .rx_clkout_20(pcs_clk_c20),                 //INPUT  : Receive Clock
+        .tx_clkout_20(pcs_clk_c20),                 //INPUT  : Transmit Clock
+        .rx_kchar_20(pcs_rx_kchar_20),              //INPUT  : Special Character Indication
+        .tx_kchar_20(tx_kchar_20),                  //OUTPUT : Special Character Indication
+        .rx_frame_20(pcs_rx_frame_20),              //INPUT  : Frame
+        .tx_frame_20(tx_frame_20),                  //OUTPUT : Frame
+        .sd_loopback_20(sd_loopback_20),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_20(pcs_pwrdn_out_sig[20]),       //OUTPUT : Powerdown Enable
+        .led_col_20(led_col_20),                    //OUTPUT : Collision Indication
+        .led_an_20(led_an_20),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_20(led_char_err_gx[20]),      //INPUT  : Character error
+        .led_crs_20(led_crs_20),                    //OUTPUT : Carrier sense
+        .led_link_20(link_status[20]),              //INPUT  : Valid link    
+        .mac_rx_clk_20(mac_rx_clk_20),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_20(mac_tx_clk_20),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_20(data_rx_sop_20),            //OUTPUT : Start of Packet
+        .data_rx_eop_20(data_rx_eop_20),            //OUTPUT : End of Packet
+        .data_rx_data_20(data_rx_data_20),          //OUTPUT : Data from FIFO
+        .data_rx_error_20(data_rx_error_20),        //OUTPUT : Receive packet error
+        .data_rx_valid_20(data_rx_valid_20),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_20(data_rx_ready_20),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_20(pkt_class_data_20),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_20(pkt_class_valid_20),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_20(data_tx_error_20),        //INPUT  : Status
+        .data_tx_data_20(data_tx_data_20),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_20(data_tx_valid_20),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_20(data_tx_sop_20),            //INPUT  : Start of Packet
+        .data_tx_eop_20(data_tx_eop_20),            //INPUT  : End of Packet
+        .data_tx_ready_20(data_tx_ready_20),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_20(tx_ff_uflow_20),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_20(tx_crc_fwd_20),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_20(xoff_gen_20),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_20(xon_gen_20),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_20(magic_sleep_n_20),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_20(magic_wakeup_20),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 21 
+            
+
+        .rx_carrierdetected_21(pcs_rx_carrierdetected[21]),
+        .rx_rmfifodatadeleted_21(pcs_rx_rmfifodatadeleted[21]),
+        .rx_rmfifodatainserted_21(pcs_rx_rmfifodatainserted[21]),
+
+        .rx_clkout_21(pcs_clk_c21),                 //INPUT  : Receive Clock
+        .tx_clkout_21(pcs_clk_c21),                 //INPUT  : Transmit Clock
+        .rx_kchar_21(pcs_rx_kchar_21),              //INPUT  : Special Character Indication
+        .tx_kchar_21(tx_kchar_21),                  //OUTPUT : Special Character Indication
+        .rx_frame_21(pcs_rx_frame_21),              //INPUT  : Frame
+        .tx_frame_21(tx_frame_21),                  //OUTPUT : Frame
+        .sd_loopback_21(sd_loopback_21),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_21(pcs_pwrdn_out_sig[21]),       //OUTPUT : Powerdown Enable
+        .led_col_21(led_col_21),                    //OUTPUT : Collision Indication
+        .led_an_21(led_an_21),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_21(led_char_err_gx[21]),      //INPUT  : Character error
+        .led_crs_21(led_crs_21),                    //OUTPUT : Carrier sense
+        .led_link_21(link_status[21]),              //INPUT  : Valid link    
+        .mac_rx_clk_21(mac_rx_clk_21),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_21(mac_tx_clk_21),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_21(data_rx_sop_21),            //OUTPUT : Start of Packet
+        .data_rx_eop_21(data_rx_eop_21),            //OUTPUT : End of Packet
+        .data_rx_data_21(data_rx_data_21),          //OUTPUT : Data from FIFO
+        .data_rx_error_21(data_rx_error_21),        //OUTPUT : Receive packet error
+        .data_rx_valid_21(data_rx_valid_21),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_21(data_rx_ready_21),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_21(pkt_class_data_21),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_21(pkt_class_valid_21),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_21(data_tx_error_21),        //INPUT  : Status
+        .data_tx_data_21(data_tx_data_21),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_21(data_tx_valid_21),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_21(data_tx_sop_21),            //INPUT  : Start of Packet
+        .data_tx_eop_21(data_tx_eop_21),            //INPUT  : End of Packet
+        .data_tx_ready_21(data_tx_ready_21),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_21(tx_ff_uflow_21),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_21(tx_crc_fwd_21),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_21(xoff_gen_21),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_21(xon_gen_21),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_21(magic_sleep_n_21),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_21(magic_wakeup_21),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 22 
+            
+
+        .rx_carrierdetected_22(pcs_rx_carrierdetected[22]),
+        .rx_rmfifodatadeleted_22(pcs_rx_rmfifodatadeleted[22]),
+        .rx_rmfifodatainserted_22(pcs_rx_rmfifodatainserted[22]),
+
+        .rx_clkout_22(pcs_clk_c22),                 //INPUT  : Receive Clock
+        .tx_clkout_22(pcs_clk_c22),                 //INPUT  : Transmit Clock
+        .rx_kchar_22(pcs_rx_kchar_22),              //INPUT  : Special Character Indication
+        .tx_kchar_22(tx_kchar_22),                  //OUTPUT : Special Character Indication
+        .rx_frame_22(pcs_rx_frame_22),              //INPUT  : Frame
+        .tx_frame_22(tx_frame_22),                  //OUTPUT : Frame
+        .sd_loopback_22(sd_loopback_22),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_22(pcs_pwrdn_out_sig[22]),       //OUTPUT : Powerdown Enable
+        .led_col_22(led_col_22),                    //OUTPUT : Collision Indication
+        .led_an_22(led_an_22),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_22(led_char_err_gx[22]),      //INPUT  : Character error
+        .led_crs_22(led_crs_22),                    //OUTPUT : Carrier sense
+        .led_link_22(link_status[22]),              //INPUT  : Valid link    
+        .mac_rx_clk_22(mac_rx_clk_22),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_22(mac_tx_clk_22),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_22(data_rx_sop_22),            //OUTPUT : Start of Packet
+        .data_rx_eop_22(data_rx_eop_22),            //OUTPUT : End of Packet
+        .data_rx_data_22(data_rx_data_22),          //OUTPUT : Data from FIFO
+        .data_rx_error_22(data_rx_error_22),        //OUTPUT : Receive packet error
+        .data_rx_valid_22(data_rx_valid_22),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_22(data_rx_ready_22),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_22(pkt_class_data_22),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_22(pkt_class_valid_22),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_22(data_tx_error_22),        //INPUT  : Status
+        .data_tx_data_22(data_tx_data_22),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_22(data_tx_valid_22),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_22(data_tx_sop_22),            //INPUT  : Start of Packet
+        .data_tx_eop_22(data_tx_eop_22),            //INPUT  : End of Packet
+        .data_tx_ready_22(data_tx_ready_22),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_22(tx_ff_uflow_22),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_22(tx_crc_fwd_22),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_22(xoff_gen_22),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_22(xon_gen_22),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_22(magic_sleep_n_22),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_22(magic_wakeup_22),          //OUTPUT : MAC WAKE-UP INDICATION
+
+         // Channel 23 
+            
+
+        .rx_carrierdetected_23(pcs_rx_carrierdetected[23]),
+        .rx_rmfifodatadeleted_23(pcs_rx_rmfifodatadeleted[23]),
+        .rx_rmfifodatainserted_23(pcs_rx_rmfifodatainserted[23]),
+
+        .rx_clkout_23(pcs_clk_c23),                 //INPUT  : Receive Clock
+        .tx_clkout_23(pcs_clk_c23),                 //INPUT  : Transmit Clock
+        .rx_kchar_23(pcs_rx_kchar_23),              //INPUT  : Special Character Indication
+        .tx_kchar_23(tx_kchar_23),                  //OUTPUT : Special Character Indication
+        .rx_frame_23(pcs_rx_frame_23),              //INPUT  : Frame
+        .tx_frame_23(tx_frame_23),                  //OUTPUT : Frame
+        .sd_loopback_23(sd_loopback_23),            //OUTPUT : SERDES Loopback Enable
+        .powerdown_23(pcs_pwrdn_out_sig[23]),       //OUTPUT : Powerdown Enable
+        .led_col_23(led_col_23),                    //OUTPUT : Collision Indication
+        .led_an_23(led_an_23),                      //OUTPUT : Auto Negotiation Status
+        .led_char_err_23(led_char_err_gx[23]),      //INPUT  : Character error
+        .led_crs_23(led_crs_23),                    //OUTPUT : Carrier sense
+        .led_link_23(link_status[23]),              //INPUT  : Valid link    
+        .mac_rx_clk_23(mac_rx_clk_23),              //OUTPUT : Av-ST Rx Clock
+        .mac_tx_clk_23(mac_tx_clk_23),              //OUTPUT : Av-ST Tx Clock
+        .data_rx_sop_23(data_rx_sop_23),            //OUTPUT : Start of Packet
+        .data_rx_eop_23(data_rx_eop_23),            //OUTPUT : End of Packet
+        .data_rx_data_23(data_rx_data_23),          //OUTPUT : Data from FIFO
+        .data_rx_error_23(data_rx_error_23),        //OUTPUT : Receive packet error
+        .data_rx_valid_23(data_rx_valid_23),        //OUTPUT : Data Receive FIFO Valid
+        .data_rx_ready_23(data_rx_ready_23),        //OUTPUT : Data Receive Ready
+        .pkt_class_data_23(pkt_class_data_23),      //OUTPUT : Frame Type Indication
+        .pkt_class_valid_23(pkt_class_valid_23),    //OUTPUT : Frame Type Indication Valid
+        .data_tx_error_23(data_tx_error_23),        //INPUT  : Status
+        .data_tx_data_23(data_tx_data_23),          //INPUT  : Data from FIFO transmit
+        .data_tx_valid_23(data_tx_valid_23),        //INPUT  : Data FIFO transmit Empty
+        .data_tx_sop_23(data_tx_sop_23),            //INPUT  : Start of Packet
+        .data_tx_eop_23(data_tx_eop_23),            //INPUT  : End of Packet
+        .data_tx_ready_23(data_tx_ready_23),        //OUTPUT : Data FIFO transmit Read Enable  
+        .tx_ff_uflow_23(tx_ff_uflow_23),            //OUTPUT : TX FIFO underflow occured (Synchronous with tx_clk)
+        .tx_crc_fwd_23(tx_crc_fwd_23),              //INPUT  : Forward Current Frame with CRC from Application
+        .xoff_gen_23(xoff_gen_23),                  //INPUT  : XOFF PAUSE FRAME GENERATE
+        .xon_gen_23(xon_gen_23),                    //INPUT  : XON PAUSE FRAME GENERATE
+        .magic_sleep_n_23(magic_sleep_n_23),        //INPUT  : MAC SLEEP MODE CONTROL
+        .magic_wakeup_23(magic_wakeup_23));         //OUTPUT : MAC WAKE-UP INDICATION
+
+    defparam
+        U_MULTI_MAC_PCS.USE_SYNC_RESET = USE_SYNC_RESET, 
+        U_MULTI_MAC_PCS.RESET_LEVEL = RESET_LEVEL,
+        U_MULTI_MAC_PCS.ENABLE_GMII_LOOPBACK = ENABLE_GMII_LOOPBACK, 
+        U_MULTI_MAC_PCS.ENABLE_HD_LOGIC = ENABLE_HD_LOGIC,
+        U_MULTI_MAC_PCS.ENABLE_SUP_ADDR = ENABLE_SUP_ADDR,
+        U_MULTI_MAC_PCS.ENA_HASH = ENA_HASH,
+        U_MULTI_MAC_PCS.STAT_CNT_ENA = STAT_CNT_ENA,
+        U_MULTI_MAC_PCS.CORE_VERSION = CORE_VERSION, 
+        U_MULTI_MAC_PCS.CUST_VERSION = CUST_VERSION,
+        U_MULTI_MAC_PCS.REDUCED_INTERFACE_ENA = REDUCED_INTERFACE_ENA,
+        U_MULTI_MAC_PCS.ENABLE_MDIO = ENABLE_MDIO,
+        U_MULTI_MAC_PCS.MDIO_CLK_DIV = MDIO_CLK_DIV,
+        U_MULTI_MAC_PCS.ENABLE_MAGIC_DETECT = ENABLE_MAGIC_DETECT,
+        U_MULTI_MAC_PCS.ENABLE_PADDING = ENABLE_PADDING,
+        U_MULTI_MAC_PCS.ENABLE_LGTH_CHECK = ENABLE_LGTH_CHECK,
+        U_MULTI_MAC_PCS.GBIT_ONLY = GBIT_ONLY,
+        U_MULTI_MAC_PCS.MBIT_ONLY = MBIT_ONLY,
+        U_MULTI_MAC_PCS.REDUCED_CONTROL = REDUCED_CONTROL,
+        U_MULTI_MAC_PCS.CRC32DWIDTH = CRC32DWIDTH,
+        U_MULTI_MAC_PCS.CRC32GENDELAY = CRC32GENDELAY, 
+        U_MULTI_MAC_PCS.CRC32CHECK16BIT = CRC32CHECK16BIT, 
+        U_MULTI_MAC_PCS.CRC32S1L2_EXTERN = CRC32S1L2_EXTERN,
+        U_MULTI_MAC_PCS.ENABLE_SHIFT16 = ENABLE_SHIFT16,   
+        U_MULTI_MAC_PCS.ENABLE_MAC_FLOW_CTRL = ENABLE_MAC_FLOW_CTRL,
+        U_MULTI_MAC_PCS.ENABLE_MAC_TXADDR_SET = ENABLE_MAC_TXADDR_SET,
+        U_MULTI_MAC_PCS.ENABLE_MAC_RX_VLAN = ENABLE_MAC_RX_VLAN,
+        U_MULTI_MAC_PCS.ENABLE_MAC_TX_VLAN = ENABLE_MAC_TX_VLAN,
+        U_MULTI_MAC_PCS.PHY_IDENTIFIER = PHY_IDENTIFIER,
+        U_MULTI_MAC_PCS.DEV_VERSION = DEV_VERSION,
+        U_MULTI_MAC_PCS.ENABLE_SGMII = ENABLE_SGMII,
+        U_MULTI_MAC_PCS.MAX_CHANNELS = MAX_CHANNELS,
+        U_MULTI_MAC_PCS.CHANNEL_WIDTH = CHANNEL_WIDTH,
+        U_MULTI_MAC_PCS.ENABLE_RX_FIFO_STATUS = ENABLE_RX_FIFO_STATUS,
+        U_MULTI_MAC_PCS.ENABLE_EXTENDED_STAT_REG = ENABLE_EXTENDED_STAT_REG,
+        U_MULTI_MAC_PCS.ENABLE_CLK_SHARING = ENABLE_CLK_SHARING,    
+        U_MULTI_MAC_PCS.ENABLE_REG_SHARING = ENABLE_REG_SHARING;    
+
+
+
+// #######################################################################
+// ###############       CHANNEL 0 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 0)
+    begin          
+        assign gxb_pwrdn_in_sig[0] = gxb_pwrdn_in_0;
+        assign pcs_pwrdn_out_0 = pcs_pwrdn_out_sig[0];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[0] = pcs_pwrdn_out_sig[0];
+		assign pcs_pwrdn_out_0 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 0)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_0
+          (
+            .clk(pcs_clk_c0),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_0),
+            .alt_sync(rx_syncstatus[0]),
+            .alt_disperr(rx_disp_err[0]),
+            .alt_ctrldetect(rx_kchar_0),
+            .alt_errdetect(rx_char_err_gx[0]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[0]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[0]),
+            .alt_runlengthviolation(rx_runlengthviolation[0]),
+            .alt_patterndetect(rx_patterndetect[0]),
+            .alt_runningdisp(rx_runningdisp[0]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_0),
+            .altpcs_sync(link_status[0]),
+            .altpcs_disperr(led_disp_err_0),
+            .altpcs_ctrldetect(pcs_rx_kchar_0),
+            .altpcs_errdetect(led_char_err_gx[0]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[0]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[0]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[0])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_0.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_0
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[0]),            
+            .pll_inclk (ref_clk),
+       	    .reconfig_clk(reconfig_clk_0),
+            .reconfig_togxb(reconfig_togxb_0),
+            .reconfig_fromgxb(reconfig_fromgxb_0),             
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_0),
+            .rx_datain (rxp_0),
+            .rx_dataout (rx_frame_0),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[0]),
+            .rx_errdetect (rx_char_err_gx[0]),
+            .rx_patterndetect (rx_patterndetect[0]),
+            .rx_rlv (rx_runlengthviolation[0]),
+            .rx_seriallpbken (sd_loopback_0),
+            .rx_syncstatus (rx_syncstatus[0]),
+            .tx_clkout (pcs_clk_c0),
+            .tx_ctrlenable (tx_kchar_0),
+            .tx_datain (tx_frame_0),
+            .tx_dataout (txp_0),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[0]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[0]),
+            .rx_runningdisp(rx_runningdisp[0])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_0.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_0.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER,
+        the_altera_tse_gxb_gige_inst_0.DEVICE_FAMILY = DEVICE_FAMILY; 
+        
+    end
+else
+    begin
+    assign reconfig_fromgxb_0 = {17{1'b0}};
+    assign led_char_err_gx[0] = 1'b0;
+    assign link_status[0] = 1'b0;
+    assign led_disp_err_0 = 1'b0;
+    assign txp_0 = 1'b0;
+	assign pcs_clk_c0 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 1 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 1)
+    begin          
+        assign gxb_pwrdn_in_sig[1] = gxb_pwrdn_in_1;
+        assign pcs_pwrdn_out_1 = pcs_pwrdn_out_sig[1];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[1] = pcs_pwrdn_out_sig[1];
+		assign pcs_pwrdn_out_1 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 1)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_1
+          (
+            .clk(pcs_clk_c1),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_1),
+            .alt_sync(rx_syncstatus[1]),
+            .alt_disperr(rx_disp_err[1]),
+            .alt_ctrldetect(rx_kchar_1),
+            .alt_errdetect(rx_char_err_gx[1]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[1]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[1]),
+            .alt_runlengthviolation(rx_runlengthviolation[1]),
+            .alt_patterndetect(rx_patterndetect[1]),
+            .alt_runningdisp(rx_runningdisp[1]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_1),
+            .altpcs_sync(link_status[1]),
+            .altpcs_disperr(led_disp_err_1),
+            .altpcs_ctrldetect(pcs_rx_kchar_1),
+            .altpcs_errdetect(led_char_err_gx[1]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[1]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[1]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[1])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_1.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_1
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[1]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_1),
+            .reconfig_togxb(reconfig_togxb_1),
+            .reconfig_fromgxb(reconfig_fromgxb_1),         
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_1),
+            .rx_datain (rxp_1),
+            .rx_dataout (rx_frame_1),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[1]),
+            .rx_errdetect (rx_char_err_gx[1]),
+            .rx_patterndetect (rx_patterndetect[1]),
+            .rx_rlv (rx_runlengthviolation[1]),
+            .rx_seriallpbken (sd_loopback_1),
+            .rx_syncstatus (rx_syncstatus[1]),
+            .tx_clkout (pcs_clk_c1),
+            .tx_ctrlenable (tx_kchar_1),
+            .tx_datain (tx_frame_1),
+            .tx_dataout (txp_1),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[1]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[1]),
+            .rx_runningdisp(rx_runningdisp[1])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_1.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_1.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 4,
+        the_altera_tse_gxb_gige_inst_1.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_1 = {17{1'b0}};
+    assign led_char_err_gx[1] = 1'b0;
+    assign link_status[1] = 1'b0;
+    assign led_disp_err_1 = 1'b0;
+    assign txp_1 = 1'b0;
+	assign pcs_clk_c1 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 2 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 2)
+    begin          
+        assign gxb_pwrdn_in_sig[2] = gxb_pwrdn_in_2;
+        assign pcs_pwrdn_out_2 = pcs_pwrdn_out_sig[2];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[2] = pcs_pwrdn_out_sig[2];
+		assign pcs_pwrdn_out_2 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 2)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_2
+          (
+            .clk(pcs_clk_c2),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_2),
+            .alt_sync(rx_syncstatus[2]),
+            .alt_disperr(rx_disp_err[2]),
+            .alt_ctrldetect(rx_kchar_2),
+            .alt_errdetect(rx_char_err_gx[2]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[2]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[2]),
+            .alt_runlengthviolation(rx_runlengthviolation[2]),
+            .alt_patterndetect(rx_patterndetect[2]),
+            .alt_runningdisp(rx_runningdisp[2]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_2),
+            .altpcs_sync(link_status[2]),
+            .altpcs_disperr(led_disp_err_2),
+            .altpcs_ctrldetect(pcs_rx_kchar_2),
+            .altpcs_errdetect(led_char_err_gx[2]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[2]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[2]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[2])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_2.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_2
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[2]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_2),
+            .reconfig_togxb(reconfig_togxb_2),
+            .reconfig_fromgxb(reconfig_fromgxb_2),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_2),
+            .rx_datain (rxp_2),
+            .rx_dataout (rx_frame_2),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[2]),
+            .rx_errdetect (rx_char_err_gx[2]),
+            .rx_patterndetect (rx_patterndetect[2]),
+            .rx_rlv (rx_runlengthviolation[2]),
+            .rx_seriallpbken (sd_loopback_2),
+            .rx_syncstatus (rx_syncstatus[2]),
+            .tx_clkout (pcs_clk_c2),
+            .tx_ctrlenable (tx_kchar_2),
+            .tx_datain (tx_frame_2),
+            .tx_dataout (txp_2),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[2]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[2]),
+            .rx_runningdisp(rx_runningdisp[2])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_2.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_2.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 8,
+        the_altera_tse_gxb_gige_inst_2.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_2 = {17{1'b0}};
+    assign led_char_err_gx[2] = 1'b0;
+    assign link_status[2] = 1'b0;
+    assign led_disp_err_2 = 1'b0;
+    assign txp_2 = 1'b0;
+	assign pcs_clk_c2 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 3 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 3)
+    begin          
+        assign gxb_pwrdn_in_sig[3] = gxb_pwrdn_in_3;
+        assign pcs_pwrdn_out_3 = pcs_pwrdn_out_sig[3];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[3] = pcs_pwrdn_out_sig[3];
+		assign pcs_pwrdn_out_3 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 3)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_3
+          (
+            .clk(pcs_clk_c3),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_3),
+            .alt_sync(rx_syncstatus[3]),
+            .alt_disperr(rx_disp_err[3]),
+            .alt_ctrldetect(rx_kchar_3),
+            .alt_errdetect(rx_char_err_gx[3]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[3]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[3]),
+            .alt_runlengthviolation(rx_runlengthviolation[3]),
+            .alt_patterndetect(rx_patterndetect[3]),
+            .alt_runningdisp(rx_runningdisp[3]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_3),
+            .altpcs_sync(link_status[3]),
+            .altpcs_disperr(led_disp_err_3),
+            .altpcs_ctrldetect(pcs_rx_kchar_3),
+            .altpcs_errdetect(led_char_err_gx[3]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[3]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[3]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[3])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_3.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_3
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[3]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_3),
+            .reconfig_togxb(reconfig_togxb_3),
+            .reconfig_fromgxb(reconfig_fromgxb_3),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_3),
+            .rx_datain (rxp_3),
+            .rx_dataout (rx_frame_3),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[3]),
+            .rx_errdetect (rx_char_err_gx[3]),
+            .rx_patterndetect (rx_patterndetect[3]),
+            .rx_rlv (rx_runlengthviolation[3]),
+            .rx_seriallpbken (sd_loopback_3),
+            .rx_syncstatus (rx_syncstatus[3]),
+            .tx_clkout (pcs_clk_c3),
+            .tx_ctrlenable (tx_kchar_3),
+            .tx_datain (tx_frame_3),
+            .tx_dataout (txp_3),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[3]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[3]),
+            .rx_runningdisp(rx_runningdisp[3])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_3.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_3.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 12,
+        the_altera_tse_gxb_gige_inst_3.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_3 = {17{1'b0}};
+    assign led_char_err_gx[3] = 1'b0;
+    assign link_status[3] = 1'b0;
+    assign led_disp_err_3 = 1'b0;
+    assign txp_3 = 1'b0;
+	assign pcs_clk_c3 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 4 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 4)
+    begin          
+        assign gxb_pwrdn_in_sig[4] = gxb_pwrdn_in_4;
+        assign pcs_pwrdn_out_4 = pcs_pwrdn_out_sig[4];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[4] = pcs_pwrdn_out_sig[4];
+		assign pcs_pwrdn_out_4 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 4)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_4
+          (
+            .clk(pcs_clk_c4),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_4),
+            .alt_sync(rx_syncstatus[4]),
+            .alt_disperr(rx_disp_err[4]),
+            .alt_ctrldetect(rx_kchar_4),
+            .alt_errdetect(rx_char_err_gx[4]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[4]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[4]),
+            .alt_runlengthviolation(rx_runlengthviolation[4]),
+            .alt_patterndetect(rx_patterndetect[4]),
+            .alt_runningdisp(rx_runningdisp[4]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_4),
+            .altpcs_sync(link_status[4]),
+            .altpcs_disperr(led_disp_err_4),
+            .altpcs_ctrldetect(pcs_rx_kchar_4),
+            .altpcs_errdetect(led_char_err_gx[4]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[4]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[4]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[4])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_4.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_4
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[4]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_4),
+            .reconfig_togxb(reconfig_togxb_4),
+            .reconfig_fromgxb(reconfig_fromgxb_4),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_4),
+            .rx_datain (rxp_4),
+            .rx_dataout (rx_frame_4),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[4]),
+            .rx_errdetect (rx_char_err_gx[4]),
+            .rx_patterndetect (rx_patterndetect[4]),
+            .rx_rlv (rx_runlengthviolation[4]),
+            .rx_seriallpbken (sd_loopback_4),
+            .rx_syncstatus (rx_syncstatus[4]),
+            .tx_clkout (pcs_clk_c4),
+            .tx_ctrlenable (tx_kchar_4),
+            .tx_datain (tx_frame_4),
+            .tx_dataout (txp_4),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[4]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[4]),
+            .rx_runningdisp(rx_runningdisp[4])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_4.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_4.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 16,
+        the_altera_tse_gxb_gige_inst_4.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_4 = {17{1'b0}};
+    assign led_char_err_gx[4] = 1'b0;
+    assign link_status[4] = 1'b0;
+    assign led_disp_err_4 = 1'b0;
+    assign txp_4 = 1'b0;
+	assign pcs_clk_c4 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 5 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 5)
+    begin          
+        assign gxb_pwrdn_in_sig[5] = gxb_pwrdn_in_5;
+        assign pcs_pwrdn_out_5 = pcs_pwrdn_out_sig[5];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[5] = pcs_pwrdn_out_sig[5];
+		assign pcs_pwrdn_out_5 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 5)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_5
+          (
+            .clk(pcs_clk_c5),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_5),
+            .alt_sync(rx_syncstatus[5]),
+            .alt_disperr(rx_disp_err[5]),
+            .alt_ctrldetect(rx_kchar_5),
+            .alt_errdetect(rx_char_err_gx[5]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[5]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[5]),
+            .alt_runlengthviolation(rx_runlengthviolation[5]),
+            .alt_patterndetect(rx_patterndetect[5]),
+            .alt_runningdisp(rx_runningdisp[5]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_5),
+            .altpcs_sync(link_status[5]),
+            .altpcs_disperr(led_disp_err_5),
+            .altpcs_ctrldetect(pcs_rx_kchar_5),
+            .altpcs_errdetect(led_char_err_gx[5]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[5]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[5]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[5])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_5.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_5
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[5]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_5),
+            .reconfig_togxb(reconfig_togxb_5),
+            .reconfig_fromgxb(reconfig_fromgxb_5),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_5),
+            .rx_datain (rxp_5),
+            .rx_dataout (rx_frame_5),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[5]),
+            .rx_errdetect (rx_char_err_gx[5]),
+            .rx_patterndetect (rx_patterndetect[5]),
+            .rx_rlv (rx_runlengthviolation[5]),
+            .rx_seriallpbken (sd_loopback_5),
+            .rx_syncstatus (rx_syncstatus[5]),
+            .tx_clkout (pcs_clk_c5),
+            .tx_ctrlenable (tx_kchar_5),
+            .tx_datain (tx_frame_5),
+            .tx_dataout (txp_5),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[5]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[5]),
+            .rx_runningdisp(rx_runningdisp[5])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_5.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_5.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 20,
+        the_altera_tse_gxb_gige_inst_5.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_5 = {17{1'b0}};
+    assign led_char_err_gx[5] = 1'b0;
+    assign link_status[5] = 1'b0;
+    assign led_disp_err_5 = 1'b0;
+    assign txp_5 = 1'b0;
+	assign pcs_clk_c5 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 6 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 6)
+    begin          
+        assign gxb_pwrdn_in_sig[6] = gxb_pwrdn_in_6;
+        assign pcs_pwrdn_out_6 = pcs_pwrdn_out_sig[6];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[6] = pcs_pwrdn_out_sig[6];
+		assign pcs_pwrdn_out_6 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 6)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_6
+          (
+            .clk(pcs_clk_c6),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_6),
+            .alt_sync(rx_syncstatus[6]),
+            .alt_disperr(rx_disp_err[6]),
+            .alt_ctrldetect(rx_kchar_6),
+            .alt_errdetect(rx_char_err_gx[6]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[6]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[6]),
+            .alt_runlengthviolation(rx_runlengthviolation[6]),
+            .alt_patterndetect(rx_patterndetect[6]),
+            .alt_runningdisp(rx_runningdisp[6]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_6),
+            .altpcs_sync(link_status[6]),
+            .altpcs_disperr(led_disp_err_6),
+            .altpcs_ctrldetect(pcs_rx_kchar_6),
+            .altpcs_errdetect(led_char_err_gx[6]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[6]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[6]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[6])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_6.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_6
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[6]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_6),
+            .reconfig_togxb(reconfig_togxb_6),
+            .reconfig_fromgxb(reconfig_fromgxb_6),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_6),
+            .rx_datain (rxp_6),
+            .rx_dataout (rx_frame_6),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[6]),
+            .rx_errdetect (rx_char_err_gx[6]),
+            .rx_patterndetect (rx_patterndetect[6]),
+            .rx_rlv (rx_runlengthviolation[6]),
+            .rx_seriallpbken (sd_loopback_6),
+            .rx_syncstatus (rx_syncstatus[6]),
+            .tx_clkout (pcs_clk_c6),
+            .tx_ctrlenable (tx_kchar_6),
+            .tx_datain (tx_frame_6),
+            .tx_dataout (txp_6),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[6]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[6]),
+            .rx_runningdisp(rx_runningdisp[6])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_6.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_6.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 24,
+        the_altera_tse_gxb_gige_inst_6.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_6 = {17{1'b0}};
+    assign led_char_err_gx[6] = 1'b0;
+    assign link_status[6] = 1'b0;
+    assign led_disp_err_6 = 1'b0;
+    assign txp_6 = 1'b0;
+	assign pcs_clk_c6 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 7 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 7)
+    begin          
+        assign gxb_pwrdn_in_sig[7] = gxb_pwrdn_in_7;
+        assign pcs_pwrdn_out_7 = pcs_pwrdn_out_sig[7];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[7] = pcs_pwrdn_out_sig[7];
+		assign pcs_pwrdn_out_7 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 7)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_7
+          (
+            .clk(pcs_clk_c7),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_7),
+            .alt_sync(rx_syncstatus[7]),
+            .alt_disperr(rx_disp_err[7]),
+            .alt_ctrldetect(rx_kchar_7),
+            .alt_errdetect(rx_char_err_gx[7]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[7]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[7]),
+            .alt_runlengthviolation(rx_runlengthviolation[7]),
+            .alt_patterndetect(rx_patterndetect[7]),
+            .alt_runningdisp(rx_runningdisp[7]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_7),
+            .altpcs_sync(link_status[7]),
+            .altpcs_disperr(led_disp_err_7),
+            .altpcs_ctrldetect(pcs_rx_kchar_7),
+            .altpcs_errdetect(led_char_err_gx[7]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[7]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[7]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[7])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_7.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_7
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[7]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_7),
+            .reconfig_togxb(reconfig_togxb_7),
+            .reconfig_fromgxb(reconfig_fromgxb_7),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_7),
+            .rx_datain (rxp_7),
+            .rx_dataout (rx_frame_7),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[7]),
+            .rx_errdetect (rx_char_err_gx[7]),
+            .rx_patterndetect (rx_patterndetect[7]),
+            .rx_rlv (rx_runlengthviolation[7]),
+            .rx_seriallpbken (sd_loopback_7),
+            .rx_syncstatus (rx_syncstatus[7]),
+            .tx_clkout (pcs_clk_c7),
+            .tx_ctrlenable (tx_kchar_7),
+            .tx_datain (tx_frame_7),
+            .tx_dataout (txp_7),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[7]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[7]),
+            .rx_runningdisp(rx_runningdisp[7])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_7.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_7.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 24,
+        the_altera_tse_gxb_gige_inst_7.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_7 = {17{1'b0}};
+    assign led_char_err_gx[7] = 1'b0;
+    assign link_status[7] = 1'b0;
+    assign led_disp_err_7 = 1'b0;
+    assign txp_7 = 1'b0;
+	assign pcs_clk_c7 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 8 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 8)
+    begin          
+        assign gxb_pwrdn_in_sig[8] = gxb_pwrdn_in_8;
+        assign pcs_pwrdn_out_8 = pcs_pwrdn_out_sig[8];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[8] = pcs_pwrdn_out_sig[8];
+		assign pcs_pwrdn_out_8 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 8)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_8
+          (
+            .clk(pcs_clk_c8),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_8),
+            .alt_sync(rx_syncstatus[8]),
+            .alt_disperr(rx_disp_err[8]),
+            .alt_ctrldetect(rx_kchar_8),
+            .alt_errdetect(rx_char_err_gx[8]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[8]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[8]),
+            .alt_runlengthviolation(rx_runlengthviolation[8]),
+            .alt_patterndetect(rx_patterndetect[8]),
+            .alt_runningdisp(rx_runningdisp[8]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_8),
+            .altpcs_sync(link_status[8]),
+            .altpcs_disperr(led_disp_err_8),
+            .altpcs_ctrldetect(pcs_rx_kchar_8),
+            .altpcs_errdetect(led_char_err_gx[8]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[8]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[8]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[8])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_8.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_8
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[8]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_8),
+            .reconfig_togxb(reconfig_togxb_8),
+            .reconfig_fromgxb(reconfig_fromgxb_8),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_8),
+            .rx_datain (rxp_8),
+            .rx_dataout (rx_frame_8),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[8]),
+            .rx_errdetect (rx_char_err_gx[8]),
+            .rx_patterndetect (rx_patterndetect[8]),
+            .rx_rlv (rx_runlengthviolation[8]),
+            .rx_seriallpbken (sd_loopback_8),
+            .rx_syncstatus (rx_syncstatus[8]),
+            .tx_clkout (pcs_clk_c8),
+            .tx_ctrlenable (tx_kchar_8),
+            .tx_datain (tx_frame_8),
+            .tx_dataout (txp_8),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[8]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[8]),
+            .rx_runningdisp(rx_runningdisp[8])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_8.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_8.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 32,
+        the_altera_tse_gxb_gige_inst_8.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_8 = {17{1'b0}};
+    assign led_char_err_gx[8] = 1'b0;
+    assign link_status[8] = 1'b0;
+    assign led_disp_err_8 = 1'b0;
+    assign txp_8 = 1'b0;
+	assign pcs_clk_c8 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 9 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 9)
+    begin          
+        assign gxb_pwrdn_in_sig[9] = gxb_pwrdn_in_9;
+        assign pcs_pwrdn_out_9 = pcs_pwrdn_out_sig[9];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[9] = pcs_pwrdn_out_sig[9];
+		assign pcs_pwrdn_out_9 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 9)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_9
+          (
+            .clk(pcs_clk_c9),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_9),
+            .alt_sync(rx_syncstatus[9]),
+            .alt_disperr(rx_disp_err[9]),
+            .alt_ctrldetect(rx_kchar_9),
+            .alt_errdetect(rx_char_err_gx[9]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[9]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[9]),
+            .alt_runlengthviolation(rx_runlengthviolation[9]),
+            .alt_patterndetect(rx_patterndetect[9]),
+            .alt_runningdisp(rx_runningdisp[9]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_9),
+            .altpcs_sync(link_status[9]),
+            .altpcs_disperr(led_disp_err_9),
+            .altpcs_ctrldetect(pcs_rx_kchar_9),
+            .altpcs_errdetect(led_char_err_gx[9]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[9]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[9]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[9])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_9.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_9
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[9]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_9),
+            .reconfig_togxb(reconfig_togxb_9),
+            .reconfig_fromgxb(reconfig_fromgxb_9),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_9),
+            .rx_datain (rxp_9),
+            .rx_dataout (rx_frame_9),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[9]),
+            .rx_errdetect (rx_char_err_gx[9]),
+            .rx_patterndetect (rx_patterndetect[9]),
+            .rx_rlv (rx_runlengthviolation[9]),
+            .rx_seriallpbken (sd_loopback_9),
+            .rx_syncstatus (rx_syncstatus[9]),
+            .tx_clkout (pcs_clk_c9),
+            .tx_ctrlenable (tx_kchar_9),
+            .tx_datain (tx_frame_9),
+            .tx_dataout (txp_9),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[9]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[9]),
+            .rx_runningdisp(rx_runningdisp[9])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_9.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_9.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 36,
+        the_altera_tse_gxb_gige_inst_9.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_9 = {17{1'b0}};
+    assign led_char_err_gx[9] = 1'b0;
+    assign link_status[9] = 1'b0;
+    assign led_disp_err_9 = 1'b0;
+    assign txp_9 = 1'b0;
+	assign pcs_clk_c9 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 10 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 10)
+    begin          
+        assign gxb_pwrdn_in_sig[10] = gxb_pwrdn_in_10;
+        assign pcs_pwrdn_out_10 = pcs_pwrdn_out_sig[10];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[10] = pcs_pwrdn_out_sig[10];
+		assign pcs_pwrdn_out_10 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 10)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_10
+          (
+            .clk(pcs_clk_c10),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_10),
+            .alt_sync(rx_syncstatus[10]),
+            .alt_disperr(rx_disp_err[10]),
+            .alt_ctrldetect(rx_kchar_10),
+            .alt_errdetect(rx_char_err_gx[10]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[10]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[10]),
+            .alt_runlengthviolation(rx_runlengthviolation[10]),
+            .alt_patterndetect(rx_patterndetect[10]),
+            .alt_runningdisp(rx_runningdisp[10]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_10),
+            .altpcs_sync(link_status[10]),
+            .altpcs_disperr(led_disp_err_10),
+            .altpcs_ctrldetect(pcs_rx_kchar_10),
+            .altpcs_errdetect(led_char_err_gx[10]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[10]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[10]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[10])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_10.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_10
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[10]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_10),
+            .reconfig_togxb(reconfig_togxb_10),
+            .reconfig_fromgxb(reconfig_fromgxb_10),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_10),
+            .rx_datain (rxp_10),
+            .rx_dataout (rx_frame_10),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[10]),
+            .rx_errdetect (rx_char_err_gx[10]),
+            .rx_patterndetect (rx_patterndetect[10]),
+            .rx_rlv (rx_runlengthviolation[10]),
+            .rx_seriallpbken (sd_loopback_10),
+            .rx_syncstatus (rx_syncstatus[10]),
+            .tx_clkout (pcs_clk_c10),
+            .tx_ctrlenable (tx_kchar_10),
+            .tx_datain (tx_frame_10),
+            .tx_dataout (txp_10),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[10]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[10]),
+            .rx_runningdisp(rx_runningdisp[10])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_10.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_10.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 40,
+        the_altera_tse_gxb_gige_inst_10.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_10 = {17{1'b0}};
+    assign led_char_err_gx[10] = 1'b0;
+    assign link_status[10] = 1'b0;
+    assign led_disp_err_10 = 1'b0;
+    assign txp_10 = 1'b0;
+	assign pcs_clk_c10 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 11 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 11)
+    begin          
+        assign gxb_pwrdn_in_sig[11] = gxb_pwrdn_in_11;
+        assign pcs_pwrdn_out_11 = pcs_pwrdn_out_sig[11];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[11] = pcs_pwrdn_out_sig[11];
+		assign pcs_pwrdn_out_11 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 11)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_11
+          (
+            .clk(pcs_clk_c11),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_11),
+            .alt_sync(rx_syncstatus[11]),
+            .alt_disperr(rx_disp_err[11]),
+            .alt_ctrldetect(rx_kchar_11),
+            .alt_errdetect(rx_char_err_gx[11]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[11]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[11]),
+            .alt_runlengthviolation(rx_runlengthviolation[11]),
+            .alt_patterndetect(rx_patterndetect[11]),
+            .alt_runningdisp(rx_runningdisp[11]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_11),
+            .altpcs_sync(link_status[11]),
+            .altpcs_disperr(led_disp_err_11),
+            .altpcs_ctrldetect(pcs_rx_kchar_11),
+            .altpcs_errdetect(led_char_err_gx[11]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[11]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[11]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[11])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_11.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_11
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[11]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_11),
+            .reconfig_togxb(reconfig_togxb_11),
+            .reconfig_fromgxb(reconfig_fromgxb_11),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_11),
+            .rx_datain (rxp_11),
+            .rx_dataout (rx_frame_11),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[11]),
+            .rx_errdetect (rx_char_err_gx[11]),
+            .rx_patterndetect (rx_patterndetect[11]),
+            .rx_rlv (rx_runlengthviolation[11]),
+            .rx_seriallpbken (sd_loopback_11),
+            .rx_syncstatus (rx_syncstatus[11]),
+            .tx_clkout (pcs_clk_c11),
+            .tx_ctrlenable (tx_kchar_11),
+            .tx_datain (tx_frame_11),
+            .tx_dataout (txp_11),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[11]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[11]),
+            .rx_runningdisp(rx_runningdisp[11])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_11.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_11.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 44,
+        the_altera_tse_gxb_gige_inst_11.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_11 = {17{1'b0}};
+    assign led_char_err_gx[11] = 1'b0;
+    assign link_status[11] = 1'b0;
+    assign led_disp_err_11 = 1'b0;
+    assign txp_11 = 1'b0;
+	assign pcs_clk_c11 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 12 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 12)
+    begin          
+        assign gxb_pwrdn_in_sig[12] = gxb_pwrdn_in_12;
+        assign pcs_pwrdn_out_12 = pcs_pwrdn_out_sig[12];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[12] = pcs_pwrdn_out_sig[12];
+		assign pcs_pwrdn_out_12 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 12)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_12
+          (
+            .clk(pcs_clk_c12),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_12),
+            .alt_sync(rx_syncstatus[12]),
+            .alt_disperr(rx_disp_err[12]),
+            .alt_ctrldetect(rx_kchar_12),
+            .alt_errdetect(rx_char_err_gx[12]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[12]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[12]),
+            .alt_runlengthviolation(rx_runlengthviolation[12]),
+            .alt_patterndetect(rx_patterndetect[12]),
+            .alt_runningdisp(rx_runningdisp[12]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_12),
+            .altpcs_sync(link_status[12]),
+            .altpcs_disperr(led_disp_err_12),
+            .altpcs_ctrldetect(pcs_rx_kchar_12),
+            .altpcs_errdetect(led_char_err_gx[12]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[12]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[12]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[12])
+           ) ;
+ 		defparam
+		the_altera_tse_gxb_aligned_rxsync_12.DEVICE_FAMILY = DEVICE_FAMILY;   
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_12
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[12]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_12),
+            .reconfig_togxb(reconfig_togxb_12),
+            .reconfig_fromgxb(reconfig_fromgxb_12),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_12),
+            .rx_datain (rxp_12),
+            .rx_dataout (rx_frame_12),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[12]),
+            .rx_errdetect (rx_char_err_gx[12]),
+            .rx_patterndetect (rx_patterndetect[12]),
+            .rx_rlv (rx_runlengthviolation[12]),
+            .rx_seriallpbken (sd_loopback_12),
+            .rx_syncstatus (rx_syncstatus[12]),
+            .tx_clkout (pcs_clk_c12),
+            .tx_ctrlenable (tx_kchar_12),
+            .tx_datain (tx_frame_12),
+            .tx_dataout (txp_12),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[12]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[12]),
+            .rx_runningdisp(rx_runningdisp[12])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_12.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_12.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 48,
+        the_altera_tse_gxb_gige_inst_12.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_12 = {17{1'b0}};
+    assign led_char_err_gx[12] = 1'b0;
+    assign link_status[12] = 1'b0;
+    assign led_disp_err_12 = 1'b0;
+    assign txp_12 = 1'b0;
+	assign pcs_clk_c12 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 13 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 13)
+    begin          
+        assign gxb_pwrdn_in_sig[13] = gxb_pwrdn_in_13;
+        assign pcs_pwrdn_out_13 = pcs_pwrdn_out_sig[13];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[13] = pcs_pwrdn_out_sig[13];
+		assign pcs_pwrdn_out_13 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 13)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_13
+          (
+            .clk(pcs_clk_c13),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_13),
+            .alt_sync(rx_syncstatus[13]),
+            .alt_disperr(rx_disp_err[13]),
+            .alt_ctrldetect(rx_kchar_13),
+            .alt_errdetect(rx_char_err_gx[13]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[13]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[13]),
+            .alt_runlengthviolation(rx_runlengthviolation[13]),
+            .alt_patterndetect(rx_patterndetect[13]),
+            .alt_runningdisp(rx_runningdisp[13]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_13),
+            .altpcs_sync(link_status[13]),
+            .altpcs_disperr(led_disp_err_13),
+            .altpcs_ctrldetect(pcs_rx_kchar_13),
+            .altpcs_errdetect(led_char_err_gx[13]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[13]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[13]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[13])
+           ) ;
+ 		defparam
+		the_altera_tse_gxb_aligned_rxsync_13.DEVICE_FAMILY = DEVICE_FAMILY;   
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_13
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[13]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_13),
+            .reconfig_togxb(reconfig_togxb_13),
+            .reconfig_fromgxb(reconfig_fromgxb_13),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_13),
+            .rx_datain (rxp_13),
+            .rx_dataout (rx_frame_13),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[13]),
+            .rx_errdetect (rx_char_err_gx[13]),
+            .rx_patterndetect (rx_patterndetect[13]),
+            .rx_rlv (rx_runlengthviolation[13]),
+            .rx_seriallpbken (sd_loopback_13),
+            .rx_syncstatus (rx_syncstatus[13]),
+            .tx_clkout (pcs_clk_c13),
+            .tx_ctrlenable (tx_kchar_13),
+            .tx_datain (tx_frame_13),
+            .tx_dataout (txp_13),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[13]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[13]),
+            .rx_runningdisp(rx_runningdisp[13])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_13.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_13.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 52,
+        the_altera_tse_gxb_gige_inst_13.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_13 = {17{1'b0}};
+    assign led_char_err_gx[13] = 1'b0;
+    assign link_status[13] = 1'b0;
+    assign led_disp_err_13 = 1'b0;
+    assign txp_13 = 1'b0;
+	assign pcs_clk_c13 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 14 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 14)
+    begin          
+        assign gxb_pwrdn_in_sig[14] = gxb_pwrdn_in_14;
+        assign pcs_pwrdn_out_14 = pcs_pwrdn_out_sig[14];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[14] = pcs_pwrdn_out_sig[14];
+		assign pcs_pwrdn_out_14 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 14)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_14
+          (
+            .clk(pcs_clk_c14),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_14),
+            .alt_sync(rx_syncstatus[14]),
+            .alt_disperr(rx_disp_err[14]),
+            .alt_ctrldetect(rx_kchar_14),
+            .alt_errdetect(rx_char_err_gx[14]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[14]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[14]),
+            .alt_runlengthviolation(rx_runlengthviolation[14]),
+            .alt_patterndetect(rx_patterndetect[14]),
+            .alt_runningdisp(rx_runningdisp[14]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_14),
+            .altpcs_sync(link_status[14]),
+            .altpcs_disperr(led_disp_err_14),
+            .altpcs_ctrldetect(pcs_rx_kchar_14),
+            .altpcs_errdetect(led_char_err_gx[14]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[14]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[14]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[14])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_14.DEVICE_FAMILY = DEVICE_FAMILY;
+		
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_14
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[14]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_14),
+            .reconfig_togxb(reconfig_togxb_14),
+            .reconfig_fromgxb(reconfig_fromgxb_14),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_14),
+            .rx_datain (rxp_14),
+            .rx_dataout (rx_frame_14),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[14]),
+            .rx_errdetect (rx_char_err_gx[14]),
+            .rx_patterndetect (rx_patterndetect[14]),
+            .rx_rlv (rx_runlengthviolation[14]),
+            .rx_seriallpbken (sd_loopback_14),
+            .rx_syncstatus (rx_syncstatus[14]),
+            .tx_clkout (pcs_clk_c14),
+            .tx_ctrlenable (tx_kchar_14),
+            .tx_datain (tx_frame_14),
+            .tx_dataout (txp_14),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[14]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[14]),
+            .rx_runningdisp(rx_runningdisp[14])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_14.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_14.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 56,
+        the_altera_tse_gxb_gige_inst_14.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_14 = {17{1'b0}};
+    assign led_char_err_gx[14] = 1'b0;
+    assign link_status[14] = 1'b0;
+    assign led_disp_err_14 = 1'b0;
+    assign txp_14 = 1'b0;
+	assign pcs_clk_c14 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 15 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 15)
+    begin          
+        assign gxb_pwrdn_in_sig[15] = gxb_pwrdn_in_15;
+        assign pcs_pwrdn_out_15 = pcs_pwrdn_out_sig[15];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[15] = pcs_pwrdn_out_sig[15];
+		assign pcs_pwrdn_out_15 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 15)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_15
+          (
+            .clk(pcs_clk_c15),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_15),
+            .alt_sync(rx_syncstatus[15]),
+            .alt_disperr(rx_disp_err[15]),
+            .alt_ctrldetect(rx_kchar_15),
+            .alt_errdetect(rx_char_err_gx[15]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[15]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[15]),
+            .alt_runlengthviolation(rx_runlengthviolation[15]),
+            .alt_patterndetect(rx_patterndetect[15]),
+            .alt_runningdisp(rx_runningdisp[15]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_15),
+            .altpcs_sync(link_status[15]),
+            .altpcs_disperr(led_disp_err_15),
+            .altpcs_ctrldetect(pcs_rx_kchar_15),
+            .altpcs_errdetect(led_char_err_gx[15]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[15]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[15]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[15])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_15.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_15
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[15]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_15),
+            .reconfig_togxb(reconfig_togxb_15),
+            .reconfig_fromgxb(reconfig_fromgxb_15),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_15),
+            .rx_datain (rxp_15),
+            .rx_dataout (rx_frame_15),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[15]),
+            .rx_errdetect (rx_char_err_gx[15]),
+            .rx_patterndetect (rx_patterndetect[15]),
+            .rx_rlv (rx_runlengthviolation[15]),
+            .rx_seriallpbken (sd_loopback_15),
+            .rx_syncstatus (rx_syncstatus[15]),
+            .tx_clkout (pcs_clk_c15),
+            .tx_ctrlenable (tx_kchar_15),
+            .tx_datain (tx_frame_15),
+            .tx_dataout (txp_15),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[15]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[15]),
+            .rx_runningdisp(rx_runningdisp[15])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_15.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_15.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 60,
+        the_altera_tse_gxb_gige_inst_15.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_15 = {17{1'b0}};
+    assign led_char_err_gx[15] = 1'b0;
+    assign link_status[15] = 1'b0;
+    assign led_disp_err_15 = 1'b0;
+    assign txp_15 = 1'b0;
+	assign pcs_clk_c15 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 16 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 16)
+    begin          
+        assign gxb_pwrdn_in_sig[16] = gxb_pwrdn_in_16;
+        assign pcs_pwrdn_out_16 = pcs_pwrdn_out_sig[16];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[16] = pcs_pwrdn_out_sig[16];
+		assign pcs_pwrdn_out_16 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 16)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_16
+          (
+            .clk(pcs_clk_c16),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_16),
+            .alt_sync(rx_syncstatus[16]),
+            .alt_disperr(rx_disp_err[16]),
+            .alt_ctrldetect(rx_kchar_16),
+            .alt_errdetect(rx_char_err_gx[16]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[16]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[16]),
+            .alt_runlengthviolation(rx_runlengthviolation[16]),
+            .alt_patterndetect(rx_patterndetect[16]),
+            .alt_runningdisp(rx_runningdisp[16]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_16),
+            .altpcs_sync(link_status[16]),
+            .altpcs_disperr(led_disp_err_16),
+            .altpcs_ctrldetect(pcs_rx_kchar_16),
+            .altpcs_errdetect(led_char_err_gx[16]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[16]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[16]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[16])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_16.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_16
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[16]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_16),
+            .reconfig_togxb(reconfig_togxb_16),
+            .reconfig_fromgxb(reconfig_fromgxb_16),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_16),
+            .rx_datain (rxp_16),
+            .rx_dataout (rx_frame_16),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[16]),
+            .rx_errdetect (rx_char_err_gx[16]),
+            .rx_patterndetect (rx_patterndetect[16]),
+            .rx_rlv (rx_runlengthviolation[16]),
+            .rx_seriallpbken (sd_loopback_16),
+            .rx_syncstatus (rx_syncstatus[16]),
+            .tx_clkout (pcs_clk_c16),
+            .tx_ctrlenable (tx_kchar_16),
+            .tx_datain (tx_frame_16),
+            .tx_dataout (txp_16),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[16]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[16]),
+            .rx_runningdisp(rx_runningdisp[16])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_16.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_16.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 64,
+        the_altera_tse_gxb_gige_inst_16.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_16 = {17{1'b0}};
+    assign led_char_err_gx[16] = 1'b0;
+    assign link_status[16] = 1'b0;
+    assign led_disp_err_16 = 1'b0;
+    assign txp_16 = 1'b0;
+	assign pcs_clk_c16 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 17 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 17)
+    begin          
+        assign gxb_pwrdn_in_sig[17] = gxb_pwrdn_in_17;
+        assign pcs_pwrdn_out_17 = pcs_pwrdn_out_sig[17];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[17] = pcs_pwrdn_out_sig[17];
+		assign pcs_pwrdn_out_17 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 17)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_17
+          (
+            .clk(pcs_clk_c17),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_17),
+            .alt_sync(rx_syncstatus[17]),
+            .alt_disperr(rx_disp_err[17]),
+            .alt_ctrldetect(rx_kchar_17),
+            .alt_errdetect(rx_char_err_gx[17]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[17]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[17]),
+            .alt_runlengthviolation(rx_runlengthviolation[17]),
+            .alt_patterndetect(rx_patterndetect[17]),
+            .alt_runningdisp(rx_runningdisp[17]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_17),
+            .altpcs_sync(link_status[17]),
+            .altpcs_disperr(led_disp_err_17),
+            .altpcs_ctrldetect(pcs_rx_kchar_17),
+            .altpcs_errdetect(led_char_err_gx[17]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[17]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[17]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[17])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_17.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_17
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[17]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_17),
+            .reconfig_togxb(reconfig_togxb_17),
+            .reconfig_fromgxb(reconfig_fromgxb_17),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_17),
+            .rx_datain (rxp_17),
+            .rx_dataout (rx_frame_17),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[17]),
+            .rx_errdetect (rx_char_err_gx[17]),
+            .rx_patterndetect (rx_patterndetect[17]),
+            .rx_rlv (rx_runlengthviolation[17]),
+            .rx_seriallpbken (sd_loopback_17),
+            .rx_syncstatus (rx_syncstatus[17]),
+            .tx_clkout (pcs_clk_c17),
+            .tx_ctrlenable (tx_kchar_17),
+            .tx_datain (tx_frame_17),
+            .tx_dataout (txp_17),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[17]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[17]),
+            .rx_runningdisp(rx_runningdisp[17])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_17.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_17.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 68,
+        the_altera_tse_gxb_gige_inst_17.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_17 = {17{1'b0}};
+    assign led_char_err_gx[17] = 1'b0;
+    assign link_status[17] = 1'b0;
+    assign led_disp_err_17 = 1'b0;
+    assign txp_17 = 1'b0;
+	assign pcs_clk_c17 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 18 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 18)
+    begin          
+        assign gxb_pwrdn_in_sig[18] = gxb_pwrdn_in_18;
+        assign pcs_pwrdn_out_18 = pcs_pwrdn_out_sig[18];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[18] = pcs_pwrdn_out_sig[18];
+		assign pcs_pwrdn_out_18 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 18)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_18
+          (
+            .clk(pcs_clk_c18),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_18),
+            .alt_sync(rx_syncstatus[18]),
+            .alt_disperr(rx_disp_err[18]),
+            .alt_ctrldetect(rx_kchar_18),
+            .alt_errdetect(rx_char_err_gx[18]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[18]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[18]),
+            .alt_runlengthviolation(rx_runlengthviolation[18]),
+            .alt_patterndetect(rx_patterndetect[18]),
+            .alt_runningdisp(rx_runningdisp[18]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_18),
+            .altpcs_sync(link_status[18]),
+            .altpcs_disperr(led_disp_err_18),
+            .altpcs_ctrldetect(pcs_rx_kchar_18),
+            .altpcs_errdetect(led_char_err_gx[18]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[18]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[18]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[18])
+           ) ;
+ 		defparam
+		the_altera_tse_gxb_aligned_rxsync_18.DEVICE_FAMILY = DEVICE_FAMILY;   
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_18
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[18]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_18),
+            .reconfig_togxb(reconfig_togxb_18),
+            .reconfig_fromgxb(reconfig_fromgxb_18),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_18),
+            .rx_datain (rxp_18),
+            .rx_dataout (rx_frame_18),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[18]),
+            .rx_errdetect (rx_char_err_gx[18]),
+            .rx_patterndetect (rx_patterndetect[18]),
+            .rx_rlv (rx_runlengthviolation[18]),
+            .rx_seriallpbken (sd_loopback_18),
+            .rx_syncstatus (rx_syncstatus[18]),
+            .tx_clkout (pcs_clk_c18),
+            .tx_ctrlenable (tx_kchar_18),
+            .tx_datain (tx_frame_18),
+            .tx_dataout (txp_18),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[18]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[18]),
+            .rx_runningdisp(rx_runningdisp[18])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_18.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_18.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 72,
+        the_altera_tse_gxb_gige_inst_18.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_18 = {17{1'b0}};
+    assign led_char_err_gx[18] = 1'b0;
+    assign link_status[18] = 1'b0;
+    assign led_disp_err_18 = 1'b0;
+    assign txp_18 = 1'b0;
+	assign pcs_clk_c18 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 19 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 19)
+    begin          
+        assign gxb_pwrdn_in_sig[19] = gxb_pwrdn_in_19;
+        assign pcs_pwrdn_out_19 = pcs_pwrdn_out_sig[19];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[19] = pcs_pwrdn_out_sig[19];
+		assign pcs_pwrdn_out_19 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 19)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_19
+          (
+            .clk(pcs_clk_c19),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_19),
+            .alt_sync(rx_syncstatus[19]),
+            .alt_disperr(rx_disp_err[19]),
+            .alt_ctrldetect(rx_kchar_19),
+            .alt_errdetect(rx_char_err_gx[19]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[19]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[19]),
+            .alt_runlengthviolation(rx_runlengthviolation[19]),
+            .alt_patterndetect(rx_patterndetect[19]),
+            .alt_runningdisp(rx_runningdisp[19]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_19),
+            .altpcs_sync(link_status[19]),
+            .altpcs_disperr(led_disp_err_19),
+            .altpcs_ctrldetect(pcs_rx_kchar_19),
+            .altpcs_errdetect(led_char_err_gx[19]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[19]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[19]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[19])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_19.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_19
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[19]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_19),
+            .reconfig_togxb(reconfig_togxb_19),
+            .reconfig_fromgxb(reconfig_fromgxb_19),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_19),
+            .rx_datain (rxp_19),
+            .rx_dataout (rx_frame_19),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[19]),
+            .rx_errdetect (rx_char_err_gx[19]),
+            .rx_patterndetect (rx_patterndetect[19]),
+            .rx_rlv (rx_runlengthviolation[19]),
+            .rx_seriallpbken (sd_loopback_19),
+            .rx_syncstatus (rx_syncstatus[19]),
+            .tx_clkout (pcs_clk_c19),
+            .tx_ctrlenable (tx_kchar_19),
+            .tx_datain (tx_frame_19),
+            .tx_dataout (txp_19),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[19]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[19]),
+            .rx_runningdisp(rx_runningdisp[19])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_19.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_19.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 76,
+        the_altera_tse_gxb_gige_inst_19.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_19 = {17{1'b0}};
+    assign led_char_err_gx[19] = 1'b0;
+    assign link_status[19] = 1'b0;
+    assign led_disp_err_19 = 1'b0;
+    assign txp_19 = 1'b0;
+	assign pcs_clk_c19 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 20 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 20)
+    begin          
+        assign gxb_pwrdn_in_sig[20] = gxb_pwrdn_in_20;
+        assign pcs_pwrdn_out_20 = pcs_pwrdn_out_sig[20];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[20] = pcs_pwrdn_out_sig[20];
+		assign pcs_pwrdn_out_20 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 20)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_20
+          (
+            .clk(pcs_clk_c20),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_20),
+            .alt_sync(rx_syncstatus[20]),
+            .alt_disperr(rx_disp_err[20]),
+            .alt_ctrldetect(rx_kchar_20),
+            .alt_errdetect(rx_char_err_gx[20]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[20]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[20]),
+            .alt_runlengthviolation(rx_runlengthviolation[20]),
+            .alt_patterndetect(rx_patterndetect[20]),
+            .alt_runningdisp(rx_runningdisp[20]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_20),
+            .altpcs_sync(link_status[20]),
+            .altpcs_disperr(led_disp_err_20),
+            .altpcs_ctrldetect(pcs_rx_kchar_20),
+            .altpcs_errdetect(led_char_err_gx[20]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[20]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[20]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[20])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_20.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_20
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[20]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_20),
+            .reconfig_togxb(reconfig_togxb_20),
+            .reconfig_fromgxb(reconfig_fromgxb_20),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_20),
+            .rx_datain (rxp_20),
+            .rx_dataout (rx_frame_20),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[20]),
+            .rx_errdetect (rx_char_err_gx[20]),
+            .rx_patterndetect (rx_patterndetect[20]),
+            .rx_rlv (rx_runlengthviolation[20]),
+            .rx_seriallpbken (sd_loopback_20),
+            .rx_syncstatus (rx_syncstatus[20]),
+            .tx_clkout (pcs_clk_c20),
+            .tx_ctrlenable (tx_kchar_20),
+            .tx_datain (tx_frame_20),
+            .tx_dataout (txp_20),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[20]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[20]),
+            .rx_runningdisp(rx_runningdisp[20])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_20.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_20.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 80,
+        the_altera_tse_gxb_gige_inst_20.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_20 = {17{1'b0}};
+    assign led_char_err_gx[20] = 1'b0;
+    assign link_status[20] = 1'b0;
+    assign led_disp_err_20 = 1'b0;
+    assign txp_20 = 1'b0;
+	assign pcs_clk_c20 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 21 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 21)
+    begin          
+        assign gxb_pwrdn_in_sig[21] = gxb_pwrdn_in_21;
+        assign pcs_pwrdn_out_21 = pcs_pwrdn_out_sig[21];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[21] = pcs_pwrdn_out_sig[21];
+		assign pcs_pwrdn_out_21 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 21)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_21
+          (
+            .clk(pcs_clk_c21),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_21),
+            .alt_sync(rx_syncstatus[21]),
+            .alt_disperr(rx_disp_err[21]),
+            .alt_ctrldetect(rx_kchar_21),
+            .alt_errdetect(rx_char_err_gx[21]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[21]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[21]),
+            .alt_runlengthviolation(rx_runlengthviolation[21]),
+            .alt_patterndetect(rx_patterndetect[21]),
+            .alt_runningdisp(rx_runningdisp[21]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_21),
+            .altpcs_sync(link_status[21]),
+            .altpcs_disperr(led_disp_err_21),
+            .altpcs_ctrldetect(pcs_rx_kchar_21),
+            .altpcs_errdetect(led_char_err_gx[21]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[21]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[21]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[21])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_21.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_21
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[21]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_21),
+            .reconfig_togxb(reconfig_togxb_21),
+            .reconfig_fromgxb(reconfig_fromgxb_21),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_21),
+            .rx_datain (rxp_21),
+            .rx_dataout (rx_frame_21),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[21]),
+            .rx_errdetect (rx_char_err_gx[21]),
+            .rx_patterndetect (rx_patterndetect[21]),
+            .rx_rlv (rx_runlengthviolation[21]),
+            .rx_seriallpbken (sd_loopback_21),
+            .rx_syncstatus (rx_syncstatus[21]),
+            .tx_clkout (pcs_clk_c21),
+            .tx_ctrlenable (tx_kchar_21),
+            .tx_datain (tx_frame_21),
+            .tx_dataout (txp_21),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[21]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[21]),
+            .rx_runningdisp(rx_runningdisp[21])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_21.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_21.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 84,
+        the_altera_tse_gxb_gige_inst_21.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_21 = {17{1'b0}};
+    assign led_char_err_gx[21] = 1'b0;
+    assign link_status[21] = 1'b0;
+    assign led_disp_err_21 = 1'b0;
+    assign txp_21 = 1'b0;
+	assign pcs_clk_c21 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 22 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 22)
+    begin          
+        assign gxb_pwrdn_in_sig[22] = gxb_pwrdn_in_22;
+        assign pcs_pwrdn_out_22 = pcs_pwrdn_out_sig[22];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[22] = pcs_pwrdn_out_sig[22];
+		assign pcs_pwrdn_out_22 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 22)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_22
+          (
+            .clk(pcs_clk_c22),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_22),
+            .alt_sync(rx_syncstatus[22]),
+            .alt_disperr(rx_disp_err[22]),
+            .alt_ctrldetect(rx_kchar_22),
+            .alt_errdetect(rx_char_err_gx[22]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[22]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[22]),
+            .alt_runlengthviolation(rx_runlengthviolation[22]),
+            .alt_patterndetect(rx_patterndetect[22]),
+            .alt_runningdisp(rx_runningdisp[22]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_22),
+            .altpcs_sync(link_status[22]),
+            .altpcs_disperr(led_disp_err_22),
+            .altpcs_ctrldetect(pcs_rx_kchar_22),
+            .altpcs_errdetect(led_char_err_gx[22]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[22]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[22]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[22])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_22.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_22
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[22]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_22),
+            .reconfig_togxb(reconfig_togxb_22),
+            .reconfig_fromgxb(reconfig_fromgxb_22),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_22),
+            .rx_datain (rxp_22),
+            .rx_dataout (rx_frame_22),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[22]),
+            .rx_errdetect (rx_char_err_gx[22]),
+            .rx_patterndetect (rx_patterndetect[22]),
+            .rx_rlv (rx_runlengthviolation[22]),
+            .rx_seriallpbken (sd_loopback_22),
+            .rx_syncstatus (rx_syncstatus[22]),
+            .tx_clkout (pcs_clk_c22),
+            .tx_ctrlenable (tx_kchar_22),
+            .tx_datain (tx_frame_22),
+            .tx_dataout (txp_22),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[22]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[22]),
+            .rx_runningdisp(rx_runningdisp[22])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_22.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_22.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 88,
+        the_altera_tse_gxb_gige_inst_22.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_22 = {17{1'b0}};
+    assign led_char_err_gx[22] = 1'b0;
+    assign link_status[22] = 1'b0;
+    assign led_disp_err_22 = 1'b0;
+    assign txp_22 = 1'b0;
+	assign pcs_clk_c22 = 1'b0;
+    end      
+endgenerate
+
+
+
+// #######################################################################
+// ###############       CHANNEL 23 LOGIC/COMPONENTS       ###############
+// #######################################################################
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1 && MAX_CHANNELS > 23)
+    begin          
+        assign gxb_pwrdn_in_sig[23] = gxb_pwrdn_in_23;
+        assign pcs_pwrdn_out_23 = pcs_pwrdn_out_sig[23];
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig[23] = pcs_pwrdn_out_sig[23];
+		assign pcs_pwrdn_out_23 = 1'b0;
+    end      
+endgenerate
+
+
+generate if (MAX_CHANNELS > 23)
+    begin  
+    // Instantiation of the Alt2gxb and Alt4gxb block as the PMA for Stratix_II_GX ,ArriaGX and Stratix IV devices
+    // ----------------------------------------------------------------------------------- 
+    
+
+        // Aligned Rx_sync from gxb
+        // -------------------------------
+        altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync_23
+          (
+            .clk(pcs_clk_c23),
+            .reset(MAC_PCS_reset),
+            //input (from alt2gxb)
+            .alt_dataout(rx_frame_23),
+            .alt_sync(rx_syncstatus[23]),
+            .alt_disperr(rx_disp_err[23]),
+            .alt_ctrldetect(rx_kchar_23),
+            .alt_errdetect(rx_char_err_gx[23]),
+            .alt_rmfifodatadeleted(rx_rmfifodatadeleted[23]),
+            .alt_rmfifodatainserted(rx_rmfifodatainserted[23]),
+            .alt_runlengthviolation(rx_runlengthviolation[23]),
+            .alt_patterndetect(rx_patterndetect[23]),
+            .alt_runningdisp(rx_runningdisp[23]),
+    
+            //output (to PCS)
+            .altpcs_dataout(pcs_rx_frame_23),
+            .altpcs_sync(link_status[23]),
+            .altpcs_disperr(led_disp_err_23),
+            .altpcs_ctrldetect(pcs_rx_kchar_23),
+            .altpcs_errdetect(led_char_err_gx[23]),
+            .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted[23]),
+            .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted[23]),
+            .altpcs_carrierdetect(pcs_rx_carrierdetected[23])
+           ) ;
+		defparam
+		the_altera_tse_gxb_aligned_rxsync_23.DEVICE_FAMILY = DEVICE_FAMILY;    
+
+        // Altgxb in GIGE mode
+        // --------------------
+        altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst_23
+          (
+            .cal_blk_clk (gxb_cal_blk_clk),
+            .gxb_powerdown (gxb_pwrdn_in_sig[23]),
+            .pll_inclk (ref_clk),
+            .reconfig_clk(reconfig_clk_23),
+            .reconfig_togxb(reconfig_togxb_23),
+            .reconfig_fromgxb(reconfig_fromgxb_23),              
+            .rx_analogreset (reset),
+            .rx_cruclk (ref_clk),
+            .rx_ctrldetect (rx_kchar_23),
+            .rx_datain (rxp_23),
+            .rx_dataout (rx_frame_23),
+            .rx_digitalreset (pma_digital_rst2),
+            .rx_disperr (rx_disp_err[23]),
+            .rx_errdetect (rx_char_err_gx[23]),
+            .rx_patterndetect (rx_patterndetect[23]),
+            .rx_rlv (rx_runlengthviolation[23]),
+            .rx_seriallpbken (sd_loopback_23),
+            .rx_syncstatus (rx_syncstatus[23]),
+            .tx_clkout (pcs_clk_c23),
+            .tx_ctrlenable (tx_kchar_23),
+            .tx_datain (tx_frame_23),
+            .tx_dataout (txp_23),
+            .tx_digitalreset (pma_digital_rst2),
+            .rx_rmfifodatadeleted(rx_rmfifodatadeleted[23]),
+            .rx_rmfifodatainserted(rx_rmfifodatainserted[23]),
+            .rx_runningdisp(rx_runningdisp[23])
+          );
+   defparam
+        the_altera_tse_gxb_gige_inst_23.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+        the_altera_tse_gxb_gige_inst_23.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER + 92,
+        the_altera_tse_gxb_gige_inst_23.DEVICE_FAMILY = DEVICE_FAMILY; 
+    end
+else
+    begin
+    assign reconfig_fromgxb_23 = {17{1'b0}};
+    assign led_char_err_gx[23] = 1'b0;
+    assign link_status[23] = 1'b0;
+    assign led_disp_err_23 = 1'b0;
+    assign txp_23 = 1'b0;
+    assign pcs_clk_c23 = 1'b0;	
+    end      
+endgenerate
+
+
+endmodule // module altera_tse_multi_mac_pcs_pma_gige
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs.v
new file mode 100644
index 0000000000000000000000000000000000000000..564738ff5ec8fd7c096274c70a0309314cd93025
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs.v
@@ -0,0 +1,211 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_pcs.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_pcs.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet
+//
+// Description : 
+//
+// Top level module for Triple Speed Ethernet PCS
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_pcs /* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */(
+
+    reg_clk,                     // Avalon slave - clock
+    reg_rd,                      // Avalon slave - read
+    reg_wr,                      // Avalon slave - write
+    reg_addr,                    // Avalon slave - address
+    reg_data_in,                 // Avalon slave - writedata
+    reg_data_out,                // Avalon slave - readdata
+    reg_busy,                    // Avalon slave - waitrequest
+    reset_reg_clk,               // Avalon slave - reset  
+    reset_rx_clk,
+    reset_tx_clk,
+    rx_clk,
+    tx_clk,
+	rx_clkena,
+	tx_clkena,
+    gmii_rx_dv,
+    gmii_rx_d,
+    gmii_rx_err,
+    gmii_tx_en,
+    gmii_tx_d,
+    gmii_tx_err,
+    mii_rx_dv,
+    mii_rx_d,
+    mii_rx_err,
+    mii_tx_en,
+    mii_tx_d,
+    mii_tx_err,
+    mii_col,
+    mii_crs,
+    tbi_rx_clk,
+    tbi_tx_clk,
+    tbi_rx_d,
+    tbi_tx_d,
+    sd_loopback,
+    powerdown,
+    set_10,
+    set_100,
+    set_1000,
+    hd_ena,
+    led_col,
+    led_an,
+    led_char_err,
+    led_disp_err,
+    led_crs,
+    led_link);
+
+
+parameter PHY_IDENTIFIER     = 32'h 00000000 ; 
+parameter DEV_VERSION        = 16'h 0001 ; 
+parameter ENABLE_SGMII       = 1;                 //  Enable SGMII logic for synthesis
+parameter SYNCHRONIZER_DEPTH = 3;	  	  //  Number of synchronizer   
+
+input   reset_rx_clk;           //  Asynchronous Reset - rx_clk Domain
+input   reset_tx_clk;           //  Asynchronous Reset - tx_clk Domain
+input   reset_reg_clk;          //  Asynchronous Reset - clk Domain
+output  rx_clk;                 //  MAC Receive clock
+output  tx_clk;                 //  MAC Transmit clock
+output  rx_clkena;              //  MAC Receive Clock Enable
+output  tx_clkena;              //  MAC Transmit Clock Enable
+output  gmii_rx_dv;             //  GMII Receive Enable
+output  [7:0] gmii_rx_d;        //  GMII Receive Data
+output  gmii_rx_err;            //  GMII Receive Error
+input   gmii_tx_en;             //  GMII Transmit Enable
+input   [7:0] gmii_tx_d;        //  GMII Transmit Data
+input   gmii_tx_err;            //  GMII Transmit Error
+output  mii_rx_dv;              //  MII Receive Enable
+output  [3:0] mii_rx_d;         //  MII Receive Data
+output  mii_rx_err;             //  MII Receive Error
+input   mii_tx_en;              //  MII Transmit Enable
+input   [3:0] mii_tx_d;         //  MII Transmit Data
+input   mii_tx_err;             //  MII Transmit Error
+output  mii_col;                //  MII Collision
+output  mii_crs;                //  MII Carrier Sense
+input   tbi_rx_clk;             //  125MHz Recoved Clock
+input   tbi_tx_clk;             //  125MHz Transmit Clock
+input   [9:0] tbi_rx_d;         //  Non Aligned 10-Bit Characters
+output  [9:0] tbi_tx_d;         //  Transmit TBI Interface
+output  sd_loopback;            //  SERDES Loopback Enable
+output  powerdown;              //  Powerdown Enable
+input   reg_clk;                //  Register Interface Clock
+input   reg_rd;                 //  Register Read Enable
+input   reg_wr;                 //  Register Write Enable
+input   [4:0] reg_addr;         //  Register Address
+input   [15:0] reg_data_in;     //  Register Input Data 
+output  [15:0] reg_data_out;    //  Register Output Data
+output  reg_busy;               //  Access Busy 
+output  led_crs;                //  Carrier Sense
+output  led_link;               //  Valid Link 
+output  hd_ena;                 //  Half-Duplex Enable
+output  led_col;                //  Collision Indication
+output  led_an;                 //  Auto-Negotiation Status
+output  led_char_err;           //  Character Error
+output  led_disp_err;           //  Disparity Error
+output  set_10;                 //  10Mbps Link Indication
+output  set_100;                //  100Mbps Link Indication
+output  set_1000;               //  Gigabit Link Indication
+
+wire    rx_clk;
+wire    tx_clk;
+wire    rx_clkena;
+wire    tx_clkena;
+wire    gmii_rx_dv;
+wire    [7:0] gmii_rx_d;
+wire    gmii_rx_err;
+wire    mii_rx_dv;
+wire    [3:0] mii_rx_d;
+wire    mii_rx_err;
+wire    mii_col;
+wire    mii_crs;
+wire    [9:0] tbi_tx_d;
+wire    sd_loopback;
+wire    powerdown;
+wire    [15:0] reg_data_out;
+wire    reg_busy;
+wire    led_crs;
+wire    led_link;
+wire    hd_ena;
+wire    led_col;
+wire    led_an;
+wire    led_char_err;
+wire    led_disp_err;
+wire    set_10;
+wire    set_100;
+wire    set_1000;
+
+
+
+    altera_tse_top_1000_base_x    top_1000_base_x_inst(
+        .reset_rx_clk(reset_rx_clk),
+        .reset_tx_clk(reset_tx_clk),
+        .reset_reg_clk(reset_reg_clk),
+        .rx_clk(rx_clk),
+        .tx_clk(tx_clk),
+		.rx_clkena(rx_clkena),
+		.tx_clkena(tx_clkena),
+		.ref_clk(1'b0),
+        .gmii_rx_dv(gmii_rx_dv),
+        .gmii_rx_d(gmii_rx_d),
+        .gmii_rx_err(gmii_rx_err),
+        .gmii_tx_en(gmii_tx_en),
+        .gmii_tx_d(gmii_tx_d),
+        .gmii_tx_err(gmii_tx_err),
+        .mii_rx_dv(mii_rx_dv),
+        .mii_rx_d(mii_rx_d),
+        .mii_rx_err(mii_rx_err),
+        .mii_tx_en(mii_tx_en),
+        .mii_tx_d(mii_tx_d),
+        .mii_tx_err(mii_tx_err),
+        .mii_col(mii_col),
+        .mii_crs(mii_crs),
+        .tbi_rx_clk(tbi_rx_clk),
+        .tbi_tx_clk(tbi_tx_clk),
+        .tbi_rx_d(tbi_rx_d),
+        .tbi_tx_d(tbi_tx_d),
+        .sd_loopback(sd_loopback),
+        .reg_clk(reg_clk),
+        .reg_rd(reg_rd),
+        .reg_wr(reg_wr),
+        .reg_addr(reg_addr),
+        .reg_data_in(reg_data_in),
+        .reg_data_out(reg_data_out),
+        .reg_busy(reg_busy),
+        .powerdown(powerdown),
+        .set_10(set_10),
+        .set_100(set_100),
+        .set_1000(set_1000),
+        .hd_ena(hd_ena),
+        .led_col(led_col),
+        .led_an(led_an),
+        .led_char_err(led_char_err),
+        .led_disp_err(led_disp_err),
+        .led_crs(led_crs),
+        .led_link(led_link));
+
+defparam
+    top_1000_base_x_inst.PHY_IDENTIFIER = PHY_IDENTIFIER,
+    top_1000_base_x_inst.DEV_VERSION = DEV_VERSION,
+    top_1000_base_x_inst.ENABLE_SGMII = ENABLE_SGMII;
+
+
+
+endmodule
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_control.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_control.v
new file mode 100644
index 0000000000000000000000000000000000000000..ff0ac62f3685a0b71aff50a3f54564a1294b6696
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_control.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_host_control.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_host_control.v
new file mode 100644
index 0000000000000000000000000000000000000000..2a3120505ec8918a2878b573ab080b3d4c8d17fc
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_host_control.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_pma.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_pma.v
new file mode 100644
index 0000000000000000000000000000000000000000..a8adae58f4102bcac5aa752fc5176fab57b1d612
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_pma.v
@@ -0,0 +1,434 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_pcs_pma.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_pcs_pma.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet
+//
+// Description : 
+//
+// Top level PCS + PMA module for Triple Speed Ethernet PCS + PMA
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+//Legal Notice: (C)2007 Altera Corporation. All rights reserved.  Your
+//use of Altera Corporation's design tools, logic functions and other
+//software and tools, and its AMPP partner logic functions, and any
+//output files any of the foregoing (including device programming or
+//simulation files), and any associated documentation or information are
+//expressly subject to the terms and conditions of the Altera Program
+//License Subscription Agreement or other applicable license agreement,
+//including, without limitation, that your use is for the sole purpose
+//of programming logic devices manufactured by Altera and sold by Altera
+//or its authorized distributors.  Please refer to the applicable
+//agreement for further details.
+ 
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_pcs_pma /* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */(
+    // inputs:
+    address,
+    clk,
+    gmii_tx_d,
+    gmii_tx_en,
+    gmii_tx_err,
+    gxb_cal_blk_clk,
+    gxb_pwrdn_in,
+    mii_tx_d,
+    mii_tx_en,
+    mii_tx_err,
+    read,
+    ref_clk,
+    reset,
+    reset_rx_clk,
+    reset_tx_clk,
+    rxp,
+    write,
+    writedata,
+
+    // outputs:
+    gmii_rx_d,
+    gmii_rx_dv,
+    gmii_rx_err,
+    hd_ena,
+    led_an,
+    led_char_err,
+    led_col,
+    led_crs,
+    led_disp_err,
+    led_link,
+    mii_col,
+    mii_crs,
+    mii_rx_d,
+    mii_rx_dv,
+    mii_rx_err,
+    pcs_pwrdn_out,
+    readdata,
+    rx_clk,
+	rx_clkena,
+	tx_clkena,
+    set_10,
+    set_100,
+    set_1000,
+    tx_clk,
+    txp,
+    waitrequest
+);
+
+
+//  Parameters to configure the core for different variations
+//  ---------------------------------------------------------
+
+parameter PHY_IDENTIFIER        = 32'h 00000000; //  PHY Identifier 
+parameter DEV_VERSION           = 16'h 0001 ;    //  Customer Phy's Core Version
+parameter ENABLE_SGMII          = 1;             //  Enable SGMII logic for synthesis
+parameter EXPORT_PWRDN          = 1'b0;          //  Option to export the Alt2gxb powerdown signal
+parameter DEVICE_FAMILY         = "ARRIAGX";     //  The device family the the core is targetted for.
+parameter TRANSCEIVER_OPTION    = 1'b1;          //  Option to select transceiver block for MAC PCS PMA Instantiation. Valid Values are 0 and 1:  0 - GXB (GIGE Mode) 1 - LVDS I/O
+parameter ENABLE_ALT_RECONFIG   = 0;             //  Option to have the Alt_Reconfig ports exposed
+parameter SYNCHRONIZER_DEPTH 	= 3;	  	 //  Number of synchronizer
+
+  output  [7:0] gmii_rx_d;
+  output  gmii_rx_dv;
+  output  gmii_rx_err;
+  output  hd_ena;
+  output  led_an;
+  output  led_char_err;
+  output  led_col;
+  output  led_crs;
+  output  led_disp_err;
+  output  led_link;
+  output  mii_col;
+  output  mii_crs;
+  output  [3:0] mii_rx_d;
+  output  mii_rx_dv;
+  output  mii_rx_err;
+  output  pcs_pwrdn_out;
+  output  [15:0] readdata;
+  output  rx_clk;
+  output  set_10;
+  output  set_100;
+  output  set_1000;
+  output  tx_clk;
+  output  rx_clkena;
+  output  tx_clkena; 
+  output  txp;
+  output  waitrequest;
+  
+  input   [4:0] address;
+  input   clk;
+  input   [7:0] gmii_tx_d;
+  input   gmii_tx_en;
+  input   gmii_tx_err;
+  input   gxb_pwrdn_in;
+  input   gxb_cal_blk_clk;
+  input   [3:0] mii_tx_d;
+  input   mii_tx_en;
+  input   mii_tx_err;
+  input   read;
+  input   ref_clk;
+  input   reset;
+  input   reset_rx_clk;
+  input   reset_tx_clk;
+  input   rxp;
+  input   write;
+  input   [15:0] writedata;
+
+
+  wire    PCS_rx_reset;
+  wire    PCS_tx_reset;
+  wire    PCS_reset;
+  wire    [7:0] gmii_rx_d;
+  wire    gmii_rx_dv;
+  wire    gmii_rx_err;
+  wire    hd_ena;
+  wire    led_an;
+  wire    led_char_err;
+  wire    led_col;
+  wire    led_crs;
+  wire    led_disp_err;
+  wire    led_link;
+  wire    mii_col;
+  wire    mii_crs;
+  wire    [3:0] mii_rx_d;
+  wire    mii_rx_dv;
+  wire    mii_rx_err;
+  
+  wire    [15:0] readdata;
+  wire    rx_clk;
+  wire    set_10;
+  wire    set_100;
+  wire    set_1000;
+  wire    tbi_rx_clk;
+  wire    [9:0] tbi_rx_d;
+  wire    [9:0] tbi_tx_d;
+  wire    tx_clk;
+  wire    rx_clkena;
+  wire    tx_clkena;
+  wire    txp;
+  wire    waitrequest;
+  wire    sd_loopback;
+  wire    pcs_pwrdn_out_sig;
+  wire    gxb_pwrdn_in_sig;
+  wire    [9:0] tbi_rx_d_lvds;
+
+  
+  reg     pma_digital_rst0;
+  reg     pma_digital_rst1;
+  reg     pma_digital_rst2;
+  reg     [9:0] tbi_rx_d_flip;
+  reg     [9:0] tbi_tx_d_flip;
+    
+  
+// Reset logic used to reset the PMA blocks
+// ----------------------------------------
+always @(posedge clk or posedge reset_rx_clk)
+   begin
+     if (reset_rx_clk == 1)
+        begin
+          pma_digital_rst0 <= reset_rx_clk;
+          pma_digital_rst1 <= reset_rx_clk;
+          pma_digital_rst2 <= reset_rx_clk;
+        end
+     else 
+        begin
+          pma_digital_rst0 <= reset_rx_clk;
+          pma_digital_rst1 <= pma_digital_rst0;
+          pma_digital_rst2 <= pma_digital_rst1;
+        end
+   end
+
+
+//  Assign the digital reset of the PMA to the PCS logic
+//  --------------------------------------------------------
+assign PCS_rx_reset = pma_digital_rst2;
+assign PCS_tx_reset = reset_tx_clk | pma_digital_rst2;
+assign PCS_reset = reset | pma_digital_rst2;
+
+
+
+// Instantiation of the PCS core that connects to a PMA
+// --------------------------------------------------------
+  altera_tse_top_1000_base_x altera_tse_top_1000_base_x_inst
+    (
+        .gmii_rx_d (gmii_rx_d),
+        .gmii_rx_dv (gmii_rx_dv),
+        .gmii_rx_err (gmii_rx_err),
+        .gmii_tx_d (gmii_tx_d),
+        .gmii_tx_en (gmii_tx_en),
+        .gmii_tx_err (gmii_tx_err),
+        .hd_ena (hd_ena),
+        .led_an (led_an),
+        .led_char_err (led_char_err),
+        .led_col (led_col),
+        .led_crs (led_crs),
+        .led_disp_err (led_disp_err),
+        .led_link (led_link),
+        .mii_col (mii_col),
+        .mii_crs (mii_crs),
+        .mii_rx_d (mii_rx_d),
+        .mii_rx_dv (mii_rx_dv),
+        .mii_rx_err (mii_rx_err),
+        .mii_tx_d (mii_tx_d),
+        .mii_tx_en (mii_tx_en),
+        .mii_tx_err (mii_tx_err),
+        .reg_addr (address),
+        .reg_busy (waitrequest),
+        .reg_clk (clk),
+        .reg_data_in (writedata),
+        .reg_data_out (readdata),
+        .reg_rd (read),
+        .reg_wr (write),
+        .reset_reg_clk (PCS_reset),
+        .reset_rx_clk (PCS_rx_reset),
+        .reset_tx_clk (PCS_tx_reset),
+        .rx_clk (rx_clk),
+		.rx_clkena(rx_clkena),
+		.tx_clkena(tx_clkena),
+		.ref_clk(1'b0),
+        .set_10 (set_10),
+        .set_100 (set_100),
+        .set_1000 (set_1000),
+        .sd_loopback(sd_loopback),
+        .powerdown(pcs_pwrdn_out_sig),
+        .tbi_rx_clk (tbi_rx_clk),
+        .tbi_rx_d (tbi_rx_d),
+        .tbi_tx_clk (tbi_tx_clk),
+        .tbi_tx_d (tbi_tx_d),
+        .tx_clk (tx_clk)
+    );
+    
+    defparam
+        altera_tse_top_1000_base_x_inst.PHY_IDENTIFIER = PHY_IDENTIFIER,
+        altera_tse_top_1000_base_x_inst.DEV_VERSION = DEV_VERSION,
+        altera_tse_top_1000_base_x_inst.ENABLE_SGMII = ENABLE_SGMII;
+
+
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1)
+    begin          
+        assign gxb_pwrdn_in_sig = gxb_pwrdn_in;
+        assign pcs_pwrdn_out = pcs_pwrdn_out_sig;
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig = pcs_pwrdn_out_sig;
+		assign pcs_pwrdn_out = 1'b0;
+    end      
+endgenerate
+
+
+
+// Either one of these blocks below will be instantiated depending on the parameterization 
+// that is chosen.
+// ---------------------------------------------------------------------------------------
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix II GX devices
+// ----------------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 0)
+    begin          
+
+    altera_tse_alt2gxb_basic the_altera_tse_alt2gxb_basic
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset_rx_clk),
+        .rx_clkout (tbi_rx_clk),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp),
+        .rx_dataout (tbi_rx_d),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback),
+        .tx_clkout (tbi_tx_clk),
+        .tx_datain (tbi_tx_d),
+        .tx_dataout (txp),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+
+// Instantiation of the Alt2gxb block as the PMA for ArriaGX device
+// ---------------------------------------------------------------- 
+
+generate if (DEVICE_FAMILY == "ARRIAGX")
+    begin          
+
+    altera_tse_alt2gxb_arriagx the_altera_tse_alt2gxb_arriagx
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig),
+        .pll_inclk (ref_clk),
+        .rx_analogreset (reset_rx_clk),
+        .rx_clkout (tbi_rx_clk),
+        .rx_cruclk (ref_clk),
+        .rx_datain (rxp),
+        .rx_dataout (tbi_rx_d),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_patterndetect (),
+        .rx_seriallpbken (sd_loopback),
+        .tx_clkout (tbi_tx_clk),
+        .tx_datain (tbi_tx_d),
+        .tx_dataout (txp),
+        .tx_digitalreset (pma_digital_rst2)
+      );
+
+    end    
+endgenerate
+
+
+
+// Instantiation of the LVDS SERDES block as the PMA for Stratix III devices
+//
+// IEEE 802.3 Clause 36 PCS requires that bit 0 of TBI_DATA to be transmitted 
+// first.  However, ALTLVDS had bit 9 transmit first.  hence, we need a bit
+// reversal algorithm.  
+// -------------------------------------------------------------------------
+
+generate if (DEVICE_FAMILY != "ARRIAGX" && TRANSCEIVER_OPTION == 1)
+    begin          
+
+    assign tbi_tx_clk = ref_clk;
+    assign tbi_rx_d = tbi_rx_d_flip;
+
+    always @(posedge tbi_rx_clk or posedge reset_rx_clk)
+        begin
+        if (reset_rx_clk == 1)
+            tbi_rx_d_flip <= 0;
+        else 
+            begin
+            tbi_rx_d_flip[0] <= tbi_rx_d_lvds[9];
+            tbi_rx_d_flip[1] <= tbi_rx_d_lvds[8];
+            tbi_rx_d_flip[2] <= tbi_rx_d_lvds[7];
+            tbi_rx_d_flip[3] <= tbi_rx_d_lvds[6];
+            tbi_rx_d_flip[4] <= tbi_rx_d_lvds[5];
+            tbi_rx_d_flip[5] <= tbi_rx_d_lvds[4];
+            tbi_rx_d_flip[6] <= tbi_rx_d_lvds[3];
+            tbi_rx_d_flip[7] <= tbi_rx_d_lvds[2];
+            tbi_rx_d_flip[8] <= tbi_rx_d_lvds[1];
+            tbi_rx_d_flip[9] <= tbi_rx_d_lvds[0];
+            end
+        end
+
+    always @(posedge ref_clk or posedge reset_rx_clk)
+        begin
+        if (reset_rx_clk == 1)
+            tbi_tx_d_flip <= 0;
+        else 
+            begin
+            tbi_tx_d_flip[0] <= tbi_tx_d[9];
+            tbi_tx_d_flip[1] <= tbi_tx_d[8];
+            tbi_tx_d_flip[2] <= tbi_tx_d[7];
+            tbi_tx_d_flip[3] <= tbi_tx_d[6];
+            tbi_tx_d_flip[4] <= tbi_tx_d[5];
+            tbi_tx_d_flip[5] <= tbi_tx_d[4];
+            tbi_tx_d_flip[6] <= tbi_tx_d[3];
+            tbi_tx_d_flip[7] <= tbi_tx_d[2];
+            tbi_tx_d_flip[8] <= tbi_tx_d[1];
+            tbi_tx_d_flip[9] <= tbi_tx_d[0];
+            end
+        end
+
+     altera_tse_pma_lvds_rx the_altera_tse_pma_lvds_rx
+     (
+         .rx_divfwdclk (tbi_rx_clk),
+         .rx_in (rxp),
+         .rx_inclock (ref_clk),
+         .rx_out (tbi_rx_d_lvds),
+         .rx_outclock (),
+         .rx_reset (reset_rx_clk)
+     );
+
+
+    altera_tse_pma_lvds_tx the_altera_tse_pma_lvds_tx
+    (
+        .tx_in (tbi_tx_d_flip),
+        .tx_inclock (ref_clk),
+        .tx_out (txp)
+    );
+
+    end    
+endgenerate
+
+endmodule
+
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_pma_gige.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_pma_gige.v
new file mode 100644
index 0000000000000000000000000000000000000000..38e3438414f182617792445f6e75aca91c7e9ee7
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pcs_pma_gige.v
@@ -0,0 +1,414 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_pcs_pma_gige.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/Top_level_modules/altera_tse_pcs_pma_gige.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet
+//
+// Description : 
+//
+// Top level PCS + PMA module for Triple Speed Ethernet PCS + PMA
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+//Legal Notice: (C)2007 Altera Corporation. All rights reserved.  Your
+//use of Altera Corporation's design tools, logic functions and other
+//software and tools, and its AMPP partner logic functions, and any
+//output files any of the foregoing (including device programming or
+//simulation files), and any associated documentation or information are
+//expressly subject to the terms and conditions of the Altera Program
+//License Subscription Agreement or other applicable license agreement,
+//including, without limitation, that your use is for the sole purpose
+//of programming logic devices manufactured by Altera and sold by Altera
+//or its authorized distributors.  Please refer to the applicable
+//agreement for further details.
+ 
+(*altera_attribute = {"-name SYNCHRONIZER_IDENTIFICATION OFF" } *)
+module altera_tse_pcs_pma_gige /* synthesis ALTERA_ATTRIBUTE = "SUPPRESS_DA_RULE_INTERNAL=\"R102,R105,D102,D101,D103\"" */(
+    // inputs:
+    address,
+    clk,
+    gmii_tx_d,
+    gmii_tx_en,
+    gmii_tx_err,
+    gxb_cal_blk_clk,
+    gxb_pwrdn_in,
+    mii_tx_d,
+    mii_tx_en,
+    mii_tx_err,
+    read,
+    reconfig_clk,
+    reconfig_togxb,
+    ref_clk,
+    reset,
+    reset_rx_clk,
+    reset_tx_clk,
+    rxp,
+    write,
+    writedata,
+
+    // outputs:
+    gmii_rx_d,
+    gmii_rx_dv,
+    gmii_rx_err,
+    hd_ena,
+    led_an,
+    led_char_err,
+    led_col,
+    led_crs,
+    led_disp_err,
+    led_link,
+    mii_col,
+    mii_crs,
+    mii_rx_d,
+    mii_rx_dv,
+    mii_rx_err,
+    pcs_pwrdn_out,
+    readdata,
+    reconfig_fromgxb,
+    rx_clk,
+    set_10,
+    set_100,
+    set_1000,
+    tx_clk,
+	rx_clkena,
+	tx_clkena,
+    txp,
+    waitrequest
+);
+
+
+//  Parameters to configure the core for different variations
+//  ---------------------------------------------------------
+
+parameter PHY_IDENTIFIER        = 32'h 00000000; //  PHY Identifier 
+parameter DEV_VERSION           = 16'h 0001 ;    //  Customer Phy's Core Version
+parameter ENABLE_SGMII          = 1;             //  Enable SGMII logic for synthesis
+parameter EXPORT_PWRDN          = 1'b0;          //  Option to export the Alt2gxb powerdown signal
+parameter DEVICE_FAMILY         = "ARRIAGX";     //  The device family the the core is targetted for.
+parameter TRANSCEIVER_OPTION    = 1'b0;          //  Option to select transceiver block for MAC PCS PMA Instantiation. 
+                                                 //  Valid Values are 0 and 1:  0 - GXB (GIGE Mode) 1 - LVDS I/O.
+parameter STARTING_CHANNEL_NUMBER = 0;           //  Starting Channel Number for Reconfig block
+parameter ENABLE_ALT_RECONFIG   = 0;             //  Option to expose the alt_reconfig ports
+parameter SYNCHRONIZER_DEPTH 	= 3;	  	 //  Number of synchronizer
+
+  output  [7:0] gmii_rx_d;
+  output  gmii_rx_dv;
+  output  gmii_rx_err;
+  output  hd_ena;
+  output  led_an;
+  output  led_char_err;
+  output  led_col;
+  output  led_crs;
+  output  led_disp_err;
+  output  led_link;
+  output  mii_col;
+  output  mii_crs;
+  output  [3:0] mii_rx_d;
+  output  mii_rx_dv;
+  output  mii_rx_err;
+  output  pcs_pwrdn_out;
+  output  [15:0] readdata;
+  output  [16:0] reconfig_fromgxb;
+  output  rx_clk;
+  output  set_10;
+  output  set_100;
+  output  set_1000;
+  output  tx_clk;
+  output  rx_clkena;
+  output  tx_clkena;
+  output  txp;
+  output  waitrequest;
+  
+  input   [4:0] address;
+  input   clk;
+  input   [7:0] gmii_tx_d;
+  input   gmii_tx_en;
+  input   gmii_tx_err;
+  input   gxb_pwrdn_in;
+  input   gxb_cal_blk_clk;
+  input   [3:0] mii_tx_d;
+  input   mii_tx_en;
+  input   mii_tx_err;
+  input   read;
+  input   reconfig_clk;
+  input   [3:0] reconfig_togxb;
+  input   ref_clk;
+  input   reset;
+  input   reset_rx_clk;
+  input   reset_tx_clk;
+  input   rxp;
+  input   write;
+  input   [15:0] writedata;
+
+
+  wire    PCS_rx_reset;
+  wire    PCS_tx_reset;
+  wire    PCS_reset;
+  wire    gige_pma_reset;
+  wire    [7:0] gmii_rx_d;
+  wire    gmii_rx_dv;
+  wire    gmii_rx_err;
+  wire    hd_ena;
+  wire    led_an;
+  wire    led_char_err;
+  wire    led_char_err_gx;
+  wire    led_col;
+  wire    led_crs;
+  wire    led_disp_err;
+  wire    led_link;
+  wire    link_status;
+  wire    mii_col;
+  wire    mii_crs;
+  wire    [3:0] mii_rx_d;
+  wire    mii_rx_dv;
+  wire    mii_rx_err;
+  wire    pcs_clk;
+  wire    [7:0] pcs_rx_frame;
+  wire    pcs_rx_kchar;
+
+  wire    [15:0] readdata;
+  wire    rx_char_err_gx;
+  wire    rx_clk;
+  wire    rx_disp_err;
+  wire    [7:0] rx_frame;
+  wire    rx_syncstatus;
+  wire    rx_kchar;
+  wire    set_10;
+  wire    set_100;
+  wire    set_1000;
+  wire    tx_clk;
+  wire    rx_clkena;
+  wire    tx_clkena;
+  wire    [7:0] tx_frame;
+  wire    tx_kchar;
+  wire    txp;
+  wire    waitrequest;
+  wire    sd_loopback;
+  wire    pcs_pwrdn_out_sig;
+  wire    gxb_pwrdn_in_sig;
+
+  wire   rx_runlengthviolation;
+  wire   rx_patterndetect;
+  wire   rx_runningdisp;
+  wire   rx_rmfifodatadeleted;
+  wire   rx_rmfifodatainserted;
+  wire   pcs_rx_rmfifodatadeleted;
+  wire   pcs_rx_rmfifodatainserted;
+    
+  reg     pma_digital_rst0;
+  reg     pma_digital_rst1;
+  reg     pma_digital_rst2;
+
+
+  wire    [16:0] reconfig_fromgxb;
+
+    
+  
+// Reset logic used to reset the PMA blocks
+// ----------------------------------------
+always @(posedge clk or posedge reset_rx_clk)
+   begin
+     if (reset_rx_clk == 1)
+        begin
+          pma_digital_rst0 <= reset_rx_clk;
+          pma_digital_rst1 <= reset_rx_clk;
+          pma_digital_rst2 <= reset_rx_clk;
+        end
+     else 
+        begin
+          pma_digital_rst0 <= reset_rx_clk;
+          pma_digital_rst1 <= pma_digital_rst0;
+          pma_digital_rst2 <= pma_digital_rst1;
+        end
+   end
+
+
+
+//  Assign the digital reset of the PMA to the PCS logic
+//  --------------------------------------------------------
+assign PCS_rx_reset = pma_digital_rst2;
+assign PCS_tx_reset = reset_tx_clk | pma_digital_rst2;
+assign PCS_reset = reset | pma_digital_rst2;
+
+
+
+//  Assign the character error and link status to top level leds
+//  ------------------------------------------------------------
+assign led_char_err = led_char_err_gx;
+assign led_link = link_status;
+
+
+
+// Instantiation of the PCS core that connects to a PMA
+// --------------------------------------------------------
+  altera_tse_top_1000_base_x_strx_gx altera_tse_top_1000_base_x_strx_gx_inst
+    (
+        .rx_carrierdetected(pcs_rx_carrierdetected),
+        .rx_rmfifodatadeleted(pcs_rx_rmfifodatadeleted),
+        .rx_rmfifodatainserted(pcs_rx_rmfifodatainserted),
+        .gmii_rx_d (gmii_rx_d),
+        .gmii_rx_dv (gmii_rx_dv),
+        .gmii_rx_err (gmii_rx_err),
+        .gmii_tx_d (gmii_tx_d),
+        .gmii_tx_en (gmii_tx_en),
+        .gmii_tx_err (gmii_tx_err),
+        .hd_ena (hd_ena),
+        .led_an (led_an),
+        .led_char_err (led_char_err_gx),
+        .led_col (led_col),
+        .led_crs (led_crs),
+        .led_link (link_status),
+        .mii_col (mii_col),
+        .mii_crs (mii_crs),
+        .mii_rx_d (mii_rx_d),
+        .mii_rx_dv (mii_rx_dv),
+        .mii_rx_err (mii_rx_err),
+        .mii_tx_d (mii_tx_d),
+        .mii_tx_en (mii_tx_en),
+        .mii_tx_err (mii_tx_err),
+        .powerdown (pcs_pwrdn_out_sig),
+        .reg_addr (address),
+        .reg_busy (waitrequest),
+        .reg_clk (clk),
+        .reg_data_in (writedata),
+        .reg_data_out (readdata),
+        .reg_rd (read),
+        .reg_wr (write),
+        .reset_reg_clk (PCS_reset),
+        .reset_rx_clk (PCS_rx_reset),
+        .reset_tx_clk (PCS_tx_reset),
+        .rx_clk (rx_clk),
+        .rx_clkout (pcs_clk),
+        .rx_frame (pcs_rx_frame),
+        .rx_kchar (pcs_rx_kchar),
+        .sd_loopback (sd_loopback),
+        .set_10 (set_10),
+        .set_100 (set_100),
+        .set_1000 (set_1000),
+        .tx_clk (tx_clk),
+		.rx_clkena(rx_clkena),
+	    .tx_clkena(tx_clkena),
+		.ref_clk(1'b0),
+        .tx_clkout (pcs_clk),
+        .tx_frame (tx_frame),
+        .tx_kchar (tx_kchar)
+
+    );    
+    defparam
+        altera_tse_top_1000_base_x_strx_gx_inst.PHY_IDENTIFIER = PHY_IDENTIFIER,
+        altera_tse_top_1000_base_x_strx_gx_inst.DEV_VERSION = DEV_VERSION,
+        altera_tse_top_1000_base_x_strx_gx_inst.ENABLE_SGMII = ENABLE_SGMII;
+
+
+
+// Export powerdown signal or wire it internally
+// ---------------------------------------------
+generate if (EXPORT_PWRDN == 1)
+    begin          
+        assign gxb_pwrdn_in_sig = gxb_pwrdn_in;
+        assign pcs_pwrdn_out = pcs_pwrdn_out_sig;
+    end
+else
+    begin
+        assign gxb_pwrdn_in_sig = pcs_pwrdn_out_sig;
+		assign pcs_pwrdn_out = 1'b0;
+    end      
+endgenerate
+
+
+
+
+// Instantiation of the Alt2gxb block as the PMA for Stratix_II_GX and ArriaGX devices
+// ----------------------------------------------------------------------------------- 
+
+    // Aligned Rx_sync from gxb
+    // -------------------------------
+    altera_tse_gxb_aligned_rxsync the_altera_tse_gxb_aligned_rxsync
+      (
+        .clk(pcs_clk),
+        .reset(PCS_rx_reset),
+        //input (from alt2gxb)
+        .alt_dataout(rx_frame),
+        .alt_sync(rx_syncstatus),
+        .alt_disperr(rx_disp_err),
+        .alt_ctrldetect(rx_kchar),
+        .alt_errdetect(rx_char_err_gx),
+        .alt_rmfifodatadeleted(rx_rmfifodatadeleted),
+        .alt_rmfifodatainserted(rx_rmfifodatainserted),
+        .alt_runlengthviolation(rx_runlengthviolation),
+        .alt_patterndetect(rx_patterndetect),
+        .alt_runningdisp(rx_runningdisp),
+
+        //output (to PCS)
+        .altpcs_dataout(pcs_rx_frame),
+        .altpcs_sync(link_status),
+        .altpcs_disperr(led_disp_err),
+        .altpcs_ctrldetect(pcs_rx_kchar),
+        .altpcs_errdetect(led_char_err_gx),
+        .altpcs_rmfifodatadeleted(pcs_rx_rmfifodatadeleted),
+        .altpcs_rmfifodatainserted(pcs_rx_rmfifodatainserted),
+        .altpcs_carrierdetect(pcs_rx_carrierdetected)
+
+       ) ;
+       defparam
+           the_altera_tse_gxb_aligned_rxsync.DEVICE_FAMILY = DEVICE_FAMILY;		
+
+
+
+    // Altgxb in GIGE mode
+    // --------------------
+    altera_tse_gxb_gige_inst the_altera_tse_gxb_gige_inst
+      (
+        .cal_blk_clk (gxb_cal_blk_clk),
+        .gxb_powerdown (gxb_pwrdn_in_sig),
+        .pll_inclk (ref_clk),
+        .reconfig_clk(reconfig_clk),
+        .reconfig_togxb(reconfig_togxb),
+        .reconfig_fromgxb(reconfig_fromgxb),
+        .rx_analogreset (reset),
+        .rx_cruclk (ref_clk),
+        .rx_ctrldetect (rx_kchar),
+        .rx_datain (rxp),
+        .rx_dataout (rx_frame),
+        .rx_digitalreset (pma_digital_rst2),
+        .rx_disperr (rx_disp_err),
+        .rx_errdetect (rx_char_err_gx),
+        .rx_patterndetect (rx_patterndetect),
+        .rx_rlv (rx_runlengthviolation),
+        .rx_seriallpbken (sd_loopback),
+        .rx_syncstatus (rx_syncstatus),
+        .tx_clkout (pcs_clk),
+        .tx_ctrlenable (tx_kchar),
+        .tx_datain (tx_frame),
+        .tx_dataout (txp),
+        .tx_digitalreset (pma_digital_rst2),
+        .rx_rmfifodatadeleted(rx_rmfifodatadeleted),
+        .rx_rmfifodatainserted(rx_rmfifodatainserted),
+        .rx_runningdisp(rx_runningdisp)
+
+      );
+      defparam
+          the_altera_tse_gxb_gige_inst.ENABLE_ALT_RECONFIG = ENABLE_ALT_RECONFIG,
+          the_altera_tse_gxb_gige_inst.STARTING_CHANNEL_NUMBER = STARTING_CHANNEL_NUMBER,
+          the_altera_tse_gxb_gige_inst.DEVICE_FAMILY = DEVICE_FAMILY;
+
+
+
+
+endmodule
+
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pma_lvds_rx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pma_lvds_rx.v
new file mode 100644
index 0000000000000000000000000000000000000000..000f9433532f1244c2b5897181caba4f3c078b77
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pma_lvds_rx.v
@@ -0,0 +1,173 @@
+// megafunction wizard: %ALTLVDS%
+// GENERATION: STANDARD
+// VERSION: WM1.0
+// MODULE: altlvds_rx 
+
+// ============================================================
+// File Name: altera_tse_pma_lvds_rx.v
+// Megafunction Name(s):
+// 			altlvds_rx
+//
+// Simulation Library Files(s):
+// 			altera_mf
+// ============================================================
+// ************************************************************
+// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
+//
+// 7.2 Internal Build 97 06/25/2007 SJ Full Version
+// ************************************************************
+
+
+//Copyright (C) 1991-2007 Altera Corporation
+//Your use of Altera Corporation's design tools, logic functions 
+//and other software and tools, and its AMPP partner logic 
+//functions, and any output files from any of the foregoing 
+//(including device programming or simulation files), and any 
+//associated documentation or information are expressly subject 
+//to the terms and conditions of the Altera Program License 
+//Subscription Agreement, Altera MegaCore Function License 
+//Agreement, or other applicable license agreement, including, 
+//without limitation, that your use is for the sole purpose of 
+//programming logic devices manufactured by Altera and sold by 
+//Altera or its authorized distributors.  Please refer to the 
+//applicable agreement for further details.
+
+
+// synopsys translate_off
+`timescale 1 ps / 1 ps
+// synopsys translate_on
+module altera_tse_pma_lvds_rx (
+	rx_in,
+	rx_inclock,
+	rx_reset,
+	rx_divfwdclk,
+	rx_out,
+	rx_outclock);
+
+	input	[0:0]  rx_in;
+	input	  rx_inclock;
+	input	[0:0]  rx_reset;
+	output	[0:0]  rx_divfwdclk;
+	output	[9:0]  rx_out;
+	output	  rx_outclock;
+
+	wire [0:0] sub_wire0;
+	wire [9:0] sub_wire1;
+	wire  sub_wire2;
+	wire [0:0] rx_divfwdclk = sub_wire0[0:0];
+	wire [9:0] rx_out = sub_wire1[9:0];
+	wire  rx_outclock = sub_wire2;
+
+	altlvds_rx	altlvds_rx_component (
+				.rx_inclock (rx_inclock),
+				.rx_reset (rx_reset),
+				.rx_in (rx_in),
+				.rx_divfwdclk (sub_wire0),
+				.rx_out (sub_wire1),
+				.rx_outclock (sub_wire2),
+				.pll_areset (1'b0),
+				.rx_cda_max (),
+				.rx_cda_reset (1'b0),
+				.rx_channel_data_align (1'b0),
+				.rx_coreclk (1'b1),
+				.rx_data_align (1'b0),
+				.rx_deskew (1'b0),
+				.rx_dpa_locked (),
+				.rx_dpll_enable (1'b1),
+				.rx_dpll_hold (1'b0),
+				.rx_dpll_reset (1'b0),
+				.rx_enable (1'b1),
+				.rx_fifo_reset (1'b0),
+				.rx_locked (),
+				.rx_pll_enable (1'b1),
+				.rx_readclock (1'b0),
+				.rx_syncclock (1'b0));
+	defparam
+		altlvds_rx_component.common_rx_tx_pll = "ON",
+		altlvds_rx_component.deserialization_factor = 10,
+		altlvds_rx_component.enable_dpa_mode = "ON",
+		altlvds_rx_component.enable_soft_cdr_mode = "ON",
+		altlvds_rx_component.implement_in_les = "OFF",
+		altlvds_rx_component.inclock_period = 8000,
+		altlvds_rx_component.input_data_rate = 1250,
+		altlvds_rx_component.intended_device_family = "Stratix III",
+		altlvds_rx_component.lpm_type = "altlvds_rx",
+		altlvds_rx_component.number_of_channels = 1,
+		altlvds_rx_component.outclock_resource = "AUTO",
+		altlvds_rx_component.registered_output = "ON",
+		altlvds_rx_component.use_external_pll = "OFF",
+		altlvds_rx_component.enable_dpa_align_to_rising_edge_only = "OFF",
+		altlvds_rx_component.enable_dpa_initial_phase_selection = "OFF";
+
+
+endmodule
+
+// ============================================================
+// CNX file retrieval info
+// ============================================================
+// Retrieval info: PRIVATE: Bitslip NUMERIC "4"
+// Retrieval info: PRIVATE: Channel_Data_Align_Max NUMERIC "0"
+// Retrieval info: PRIVATE: Channel_Data_Align_Reset NUMERIC "0"
+// Retrieval info: PRIVATE: Clock_Mode NUMERIC "0"
+// Retrieval info: PRIVATE: Data_rate STRING "1250"
+// Retrieval info: PRIVATE: Deser_Factor NUMERIC "10"
+// Retrieval info: PRIVATE: Dpa_Locked NUMERIC "0"
+// Retrieval info: PRIVATE: Dpll_Enable NUMERIC "0"
+// Retrieval info: PRIVATE: Dpll_Hold NUMERIC "0"
+// Retrieval info: PRIVATE: Dpll_Reset NUMERIC "1"
+// Retrieval info: PRIVATE: Enable_DPA_Mode STRING "ON"
+// Retrieval info: PRIVATE: Ext_PLL STRING "OFF"
+// Retrieval info: PRIVATE: Fifo_Reset NUMERIC "0"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix III"
+// Retrieval info: PRIVATE: Int_Device STRING "Stratix III"
+// Retrieval info: PRIVATE: LVDS_Mode NUMERIC "1"
+// Retrieval info: PRIVATE: Le_Serdes STRING "OFF"
+// Retrieval info: PRIVATE: Lose_Lock NUMERIC "0"
+// Retrieval info: PRIVATE: Num_Channel NUMERIC "1"
+// Retrieval info: PRIVATE: PLL_Enable NUMERIC "0"
+// Retrieval info: PRIVATE: PLL_Freq STRING "125.00"
+// Retrieval info: PRIVATE: PLL_Period STRING "8.000"
+// Retrieval info: PRIVATE: Reg_InOut NUMERIC "1"
+// Retrieval info: PRIVATE: Reset_Fifo NUMERIC "1"
+// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
+// Retrieval info: PRIVATE: Use_Clock_Resc STRING "AUTO"
+// Retrieval info: PRIVATE: Use_Common_Rx_Tx_Plls NUMERIC "1"
+// Retrieval info: PRIVATE: Use_Data_Align NUMERIC "0"
+// Retrieval info: PRIVATE: Use_Lock NUMERIC "0"
+// Retrieval info: PRIVATE: Use_Pll_Areset NUMERIC "0"
+// Retrieval info: CONSTANT: COMMON_RX_TX_PLL STRING "ON"
+// Retrieval info: CONSTANT: DESERIALIZATION_FACTOR NUMERIC "10"
+// Retrieval info: CONSTANT: ENABLE_DPA_MODE STRING "ON"
+// Retrieval info: CONSTANT: ENABLE_SOFT_CDR_MODE STRING "ON"
+// Retrieval info: CONSTANT: IMPLEMENT_IN_LES STRING "OFF"
+// Retrieval info: CONSTANT: INCLOCK_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: INPUT_DATA_RATE NUMERIC "1250"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Stratix III"
+// Retrieval info: CONSTANT: LPM_TYPE STRING "altlvds_rx"
+// Retrieval info: CONSTANT: NUMBER_OF_CHANNELS NUMERIC "1"
+// Retrieval info: CONSTANT: OUTCLOCK_RESOURCE STRING "AUTO"
+// Retrieval info: CONSTANT: REGISTERED_OUTPUT STRING "ON"
+// Retrieval info: CONSTANT: USE_EXTERNAL_PLL STRING "OFF"
+// Retrieval info: CONSTANT: enable_dpa_align_to_rising_edge_only STRING "OFF"
+// Retrieval info: CONSTANT: enable_dpa_initial_phase_selection STRING "OFF"
+// Retrieval info: USED_PORT: rx_divfwdclk 0 0 1 0 OUTPUT NODEFVAL rx_divfwdclk[0..0]
+// Retrieval info: USED_PORT: rx_in 0 0 1 0 INPUT NODEFVAL rx_in[0..0]
+// Retrieval info: USED_PORT: rx_inclock 0 0 0 0 INPUT_CLK_EXT GND rx_inclock
+// Retrieval info: USED_PORT: rx_out 0 0 10 0 OUTPUT NODEFVAL rx_out[9..0]
+// Retrieval info: USED_PORT: rx_outclock 0 0 0 0 OUTPUT NODEFVAL rx_outclock
+// Retrieval info: USED_PORT: rx_reset 0 0 1 0 INPUT GND rx_reset[0..0]
+// Retrieval info: CONNECT: @rx_in 0 0 1 0 rx_in 0 0 1 0
+// Retrieval info: CONNECT: rx_out 0 0 10 0 @rx_out 0 0 10 0
+// Retrieval info: CONNECT: @rx_inclock 0 0 0 0 rx_inclock 0 0 0 0
+// Retrieval info: CONNECT: rx_divfwdclk 0 0 1 0 @rx_divfwdclk 0 0 1 0
+// Retrieval info: CONNECT: @rx_reset 0 0 1 0 rx_reset 0 0 1 0
+// Retrieval info: CONNECT: rx_outclock 0 0 0 0 @rx_outclock 0 0 0 0
+// Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_rx.v TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_rx.ppf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_rx.inc FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_rx.cmp FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_rx.bsf FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_rx_inst.v FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_rx_bb.v FALSE
+// Retrieval info: LIB_FILE: altera_mf
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pma_lvds_tx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pma_lvds_tx.v
new file mode 100644
index 0000000000000000000000000000000000000000..1cf57677431523b2e2dac1a4c06f3f99d5d5d0f4
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_pma_lvds_tx.v
@@ -0,0 +1,143 @@
+// megafunction wizard: %ALTLVDS%
+// GENERATION: STANDARD
+// VERSION: WM1.0
+// MODULE: altlvds_tx 
+
+// ============================================================
+// File Name: altera_tse_pma_lvds_tx.v
+// Megafunction Name(s):
+// 			altlvds_tx
+//
+// Simulation Library Files(s):
+// 			altera_mf
+// ============================================================
+// ************************************************************
+// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
+//
+// 7.2 Internal Build 97 06/25/2007 SJ Full Version
+// ************************************************************
+
+
+//Copyright (C) 1991-2007 Altera Corporation
+//Your use of Altera Corporation's design tools, logic functions 
+//and other software and tools, and its AMPP partner logic 
+//functions, and any output files from any of the foregoing 
+//(including device programming or simulation files), and any 
+//associated documentation or information are expressly subject 
+//to the terms and conditions of the Altera Program License 
+//Subscription Agreement, Altera MegaCore Function License 
+//Agreement, or other applicable license agreement, including, 
+//without limitation, that your use is for the sole purpose of 
+//programming logic devices manufactured by Altera and sold by 
+//Altera or its authorized distributors.  Please refer to the 
+//applicable agreement for further details.
+
+
+// synopsys translate_off
+`timescale 1 ps / 1 ps
+// synopsys translate_on
+module altera_tse_pma_lvds_tx (
+	tx_in,
+	tx_inclock,
+	tx_out);
+
+	input	[9:0]  tx_in;
+	input	  tx_inclock;
+	output	[0:0]  tx_out;
+
+	wire [0:0] sub_wire0;
+	wire [0:0] tx_out = sub_wire0[0:0];
+
+	altlvds_tx	altlvds_tx_component (
+				.tx_in (tx_in),
+				.tx_inclock (tx_inclock),
+				.tx_out (sub_wire0),
+				.pll_areset (1'b0),
+				.sync_inclock (1'b0),
+				.tx_coreclock (),
+				.tx_enable (1'b1),
+				.tx_locked (),
+				.tx_outclock (),
+				.tx_pll_enable (1'b1),
+				.tx_syncclock (1'b0));
+	defparam
+		altlvds_tx_component.common_rx_tx_pll = "ON",
+		altlvds_tx_component.deserialization_factor = 10,
+		altlvds_tx_component.implement_in_les = "OFF",
+		altlvds_tx_component.inclock_data_alignment = "UNUSED",
+		altlvds_tx_component.inclock_period = 8000,
+		altlvds_tx_component.inclock_phase_shift = 0,
+		altlvds_tx_component.intended_device_family = "Stratix III",
+		altlvds_tx_component.lpm_type = "altlvds_tx",
+		altlvds_tx_component.number_of_channels = 1,
+		altlvds_tx_component.outclock_resource = "AUTO",
+		altlvds_tx_component.output_data_rate = 1250,
+		altlvds_tx_component.registered_input = "TX_CLKIN",
+		altlvds_tx_component.use_external_pll = "OFF";
+
+
+endmodule
+
+// ============================================================
+// CNX file retrieval info
+// ============================================================
+// Retrieval info: PRIVATE: Clock_Choices STRING "TX_CLKIN"
+// Retrieval info: PRIVATE: Clock_Mode NUMERIC "0"
+// Retrieval info: PRIVATE: Data_rate STRING "1250"
+// Retrieval info: PRIVATE: Deser_Factor NUMERIC "10"
+// Retrieval info: PRIVATE: Enable_DPA_Mode STRING "OFF"
+// Retrieval info: PRIVATE: Ext_PLL STRING "OFF"
+// Retrieval info: PRIVATE: INCLOCK_PHASE_SHIFT STRING "0.00"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix III"
+// Retrieval info: PRIVATE: Int_Device STRING "Stratix III"
+// Retrieval info: PRIVATE: LVDS_Mode NUMERIC "0"
+// Retrieval info: PRIVATE: Le_Serdes STRING "OFF"
+// Retrieval info: PRIVATE: Num_Channel NUMERIC "1"
+// Retrieval info: PRIVATE: OUTCLOCK_PHASE_SHIFT STRING "0.00"
+// Retrieval info: PRIVATE: Outclock_Divide_By NUMERIC "10"
+// Retrieval info: PRIVATE: PLL_Enable NUMERIC "0"
+// Retrieval info: PRIVATE: PLL_Freq STRING "125.00"
+// Retrieval info: PRIVATE: PLL_Period STRING "8.000"
+// Retrieval info: PRIVATE: Reg_InOut NUMERIC "1"
+// Retrieval info: PRIVATE: SYNTH_WRAPPER_GEN_POSTFIX STRING "0"
+// Retrieval info: PRIVATE: Use_Clock_Resc STRING "AUTO"
+// Retrieval info: PRIVATE: Use_Common_Rx_Tx_Plls NUMERIC "1"
+// Retrieval info: PRIVATE: Use_CoreClock NUMERIC "0"
+// Retrieval info: PRIVATE: Use_Lock NUMERIC "0"
+// Retrieval info: PRIVATE: Use_Pll_Areset NUMERIC "0"
+// Retrieval info: PRIVATE: Use_Tx_Out_Phase NUMERIC "1"
+// Retrieval info: CONSTANT: COMMON_RX_TX_PLL STRING "ON"
+// Retrieval info: CONSTANT: DESERIALIZATION_FACTOR NUMERIC "10"
+// Retrieval info: CONSTANT: IMPLEMENT_IN_LES STRING "OFF"
+// Retrieval info: CONSTANT: INCLOCK_DATA_ALIGNMENT STRING "UNUSED"
+// Retrieval info: CONSTANT: INCLOCK_PERIOD NUMERIC "8000"
+// Retrieval info: CONSTANT: INCLOCK_PHASE_SHIFT NUMERIC "0"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Stratix III"
+// Retrieval info: CONSTANT: LPM_TYPE STRING "altlvds_tx"
+// Retrieval info: CONSTANT: NUMBER_OF_CHANNELS NUMERIC "1"
+// Retrieval info: CONSTANT: OUTCLOCK_RESOURCE STRING "AUTO"
+// Retrieval info: CONSTANT: OUTPUT_DATA_RATE NUMERIC "1250"
+// Retrieval info: CONSTANT: REGISTERED_INPUT STRING "TX_CLKIN"
+// Retrieval info: CONSTANT: USE_EXTERNAL_PLL STRING "OFF"
+// Retrieval info: USED_PORT: tx_in 0 0 10 0 INPUT NODEFVAL tx_in[9..0]
+// Retrieval info: USED_PORT: tx_inclock 0 0 0 0 INPUT_CLK_EXT GND tx_inclock
+// Retrieval info: USED_PORT: tx_out 0 0 1 0 OUTPUT NODEFVAL tx_out[0..0]
+// Retrieval info: CONNECT: @tx_in 0 0 10 0 tx_in 0 0 10 0
+// Retrieval info: CONNECT: tx_out 0 0 1 0 @tx_out 0 0 1 0
+// Retrieval info: CONNECT: @tx_inclock 0 0 0 0 tx_inclock 0 0 0 0
+// Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
+// Retrieval info: GEN_FILE: TYPE_NORMAL tse_pma_lvds_tx.v TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL tse_pma_lvds_tx.ppf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL tse_pma_lvds_tx.inc FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL tse_pma_lvds_tx.cmp FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL tse_pma_lvds_tx.bsf FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL tse_pma_lvds_tx_inst.v FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL tse_pma_lvds_tx_bb.v FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_tx.v TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_tx.ppf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_tx.inc FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_tx.cmp FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_tx.bsf FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_tx_inst.v FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL altera_tse_pma_lvds_tx_bb.v FALSE
+// Retrieval info: LIB_FILE: altera_mf
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_quad_16x32.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_quad_16x32.v
new file mode 100644
index 0000000000000000000000000000000000000000..f36cc71fd26eafd745899aa4538a182227a03f98
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_quad_16x32.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_quad_8x32.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_quad_8x32.v
new file mode 100644
index 0000000000000000000000000000000000000000..79fbe8d8be33e5362dcadaa67b4d9e1d58927411
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_quad_8x32.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_register_map.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_register_map.v
new file mode 100644
index 0000000000000000000000000000000000000000..4efa1954981753e70f67479cd9d0cc18008ecc32
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_register_map.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_register_map_small.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_register_map_small.v
new file mode 100644
index 0000000000000000000000000000000000000000..592454822a6a617687e8f7e733ac8c0dfb4d9763
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_register_map_small.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_retransmit_cntl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_retransmit_cntl.v
new file mode 100644
index 0000000000000000000000000000000000000000..477d295a2de87092493de02238f89feff39e5baa
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_retransmit_cntl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_in1.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_in1.v
new file mode 100644
index 0000000000000000000000000000000000000000..b6584448f036bad24c95af99436427147302a342
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_in1.v
@@ -0,0 +1,106 @@
+// megafunction wizard: %ALTDDIO_IN%
+// GENERATION: STANDARD
+// VERSION: WM1.0
+// MODULE: altddio_in 
+
+// ============================================================
+// File Name: rgmii_in1.v
+// Megafunction Name(s):
+// 			altddio_in
+// ============================================================
+// ************************************************************
+// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
+//
+// 6.0 Build 176 04/19/2006 SJ Full Version
+// ************************************************************
+
+
+//Copyright (C) 1991-2006 Altera Corporation
+//Your use of Altera Corporation's design tools, logic functions 
+//and other software and tools, and its AMPP partner logic 
+//functions, and any output files any of the foregoing 
+//(including device programming or simulation files), and any 
+//associated documentation or information are expressly subject 
+//to the terms and conditions of the Altera Program License 
+//Subscription Agreement, Altera MegaCore Function License 
+//Agreement, or other applicable license agreement, including, 
+//without limitation, that your use is for the sole purpose of 
+//programming logic devices manufactured by Altera and sold by 
+//Altera or its authorized distributors.  Please refer to the 
+//applicable agreement for further details.
+
+
+// synopsys translate_off
+`timescale 1 ps / 1 ps
+// synopsys translate_on
+module altera_tse_rgmii_in1 (
+	aclr,
+	datain,
+	inclock,
+	dataout_h,
+	dataout_l);
+
+	input	  aclr;
+	input	  datain;
+	input	  inclock;
+	output	  dataout_h;
+	output	  dataout_l;
+
+	wire [0:0] sub_wire0;
+	wire [0:0] sub_wire2;
+	wire [0:0] sub_wire1 = sub_wire0[0:0];
+	wire  dataout_h = sub_wire1;
+	wire [0:0] sub_wire3 = sub_wire2[0:0];
+	wire  dataout_l = sub_wire3;
+	wire  sub_wire4 = datain;
+	wire  sub_wire5 = sub_wire4;
+
+	altddio_in	altddio_in_component (
+				.datain (sub_wire5),
+				.inclock (inclock),
+				.aclr (aclr),
+				.dataout_h (sub_wire0),
+				.dataout_l (sub_wire2),
+				.aset (1'b0),
+				.inclocken (1'b1));
+	defparam
+		altddio_in_component.intended_device_family = "Stratix II",
+		altddio_in_component.invert_input_clocks = "OFF",
+		altddio_in_component.lpm_type = "altddio_in",
+		altddio_in_component.width = 1;
+
+
+endmodule
+
+// ============================================================
+// CNX file retrieval info
+// ============================================================
+// Retrieval info: PRIVATE: ARESET_MODE NUMERIC "0"
+// Retrieval info: PRIVATE: CLKEN NUMERIC "0"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: PRIVATE: INVERT_INPUT_CLOCKS NUMERIC "0"
+// Retrieval info: PRIVATE: POWER_UP_HIGH NUMERIC "0"
+// Retrieval info: PRIVATE: WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: CONSTANT: INVERT_INPUT_CLOCKS STRING "OFF"
+// Retrieval info: CONSTANT: LPM_TYPE STRING "altddio_in"
+// Retrieval info: CONSTANT: WIDTH NUMERIC "1"
+// Retrieval info: USED_PORT: aclr 0 0 0 0 INPUT GND aclr
+// Retrieval info: USED_PORT: datain 0 0 0 0 INPUT NODEFVAL datain
+// Retrieval info: USED_PORT: dataout_h 0 0 0 0 OUTPUT NODEFVAL dataout_h
+// Retrieval info: USED_PORT: dataout_l 0 0 0 0 OUTPUT NODEFVAL dataout_l
+// Retrieval info: USED_PORT: inclock 0 0 0 0 INPUT_CLK_EXT NODEFVAL inclock
+// Retrieval info: CONNECT: @datain 0 0 1 0 datain 0 0 0 0
+// Retrieval info: CONNECT: dataout_h 0 0 0 0 @dataout_h 0 0 1 0
+// Retrieval info: CONNECT: dataout_l 0 0 0 0 @dataout_l 0 0 1 0
+// Retrieval info: CONNECT: @inclock 0 0 0 0 inclock 0 0 0 0
+// Retrieval info: CONNECT: @aclr 0 0 0 0 aclr 0 0 0 0
+// Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in1.v TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in1.ppf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in1.inc FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in1.cmp FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in1.bsf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in1_inst.v FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in1_bb.v TRUE
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_in4.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_in4.v
new file mode 100644
index 0000000000000000000000000000000000000000..f3e1f8be5ca7e53c9cf5eeeab62d051746f00519
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_in4.v
@@ -0,0 +1,102 @@
+// megafunction wizard: %ALTDDIO_IN%
+// GENERATION: STANDARD
+// VERSION: WM1.0
+// MODULE: altddio_in 
+
+// ============================================================
+// File Name: rgmii_in4.v
+// Megafunction Name(s):
+// 			altddio_in
+// ============================================================
+// ************************************************************
+// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
+//
+// 6.0 Build 176 04/19/2006 SJ Full Version
+// ************************************************************
+
+
+//Copyright (C) 1991-2006 Altera Corporation
+//Your use of Altera Corporation's design tools, logic functions 
+//and other software and tools, and its AMPP partner logic 
+//functions, and any output files any of the foregoing 
+//(including device programming or simulation files), and any 
+//associated documentation or information are expressly subject 
+//to the terms and conditions of the Altera Program License 
+//Subscription Agreement, Altera MegaCore Function License 
+//Agreement, or other applicable license agreement, including, 
+//without limitation, that your use is for the sole purpose of 
+//programming logic devices manufactured by Altera and sold by 
+//Altera or its authorized distributors.  Please refer to the 
+//applicable agreement for further details.
+
+
+// synopsys translate_off
+`timescale 1 ps / 1 ps
+// synopsys translate_on
+module altera_tse_rgmii_in4 (
+	aclr,
+	datain,
+	inclock,
+	dataout_h,
+	dataout_l);
+
+	input	  aclr;
+	input	[3:0]  datain;
+	input	  inclock;
+	output	[3:0]  dataout_h;
+	output	[3:0]  dataout_l;
+
+	wire [3:0] sub_wire0;
+	wire [3:0] sub_wire1;
+	wire [3:0] dataout_h = sub_wire0[3:0];
+	wire [3:0] dataout_l = sub_wire1[3:0];
+
+	altddio_in	altddio_in_component (
+				.datain (datain),
+				.inclock (inclock),
+				.aclr (aclr),
+				.dataout_h (sub_wire0),
+				.dataout_l (sub_wire1),
+				.aset (1'b0),
+				.inclocken (1'b1));
+	defparam
+		altddio_in_component.intended_device_family = "Stratix II",
+		altddio_in_component.invert_input_clocks = "OFF",
+		altddio_in_component.lpm_type = "altddio_in",
+		altddio_in_component.width = 4;
+
+
+endmodule
+
+// ============================================================
+// CNX file retrieval info
+// ============================================================
+// Retrieval info: PRIVATE: ARESET_MODE NUMERIC "0"
+// Retrieval info: PRIVATE: CLKEN NUMERIC "0"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: PRIVATE: INVERT_INPUT_CLOCKS NUMERIC "0"
+// Retrieval info: PRIVATE: POWER_UP_HIGH NUMERIC "0"
+// Retrieval info: PRIVATE: WIDTH NUMERIC "4"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: CONSTANT: INVERT_INPUT_CLOCKS STRING "OFF"
+// Retrieval info: CONSTANT: LPM_TYPE STRING "altddio_in"
+// Retrieval info: CONSTANT: WIDTH NUMERIC "4"
+// Retrieval info: USED_PORT: aclr 0 0 0 0 INPUT GND aclr
+// Retrieval info: USED_PORT: datain 0 0 4 0 INPUT NODEFVAL datain[3..0]
+// Retrieval info: USED_PORT: dataout_h 0 0 4 0 OUTPUT NODEFVAL dataout_h[3..0]
+// Retrieval info: USED_PORT: dataout_l 0 0 4 0 OUTPUT NODEFVAL dataout_l[3..0]
+// Retrieval info: USED_PORT: inclock 0 0 0 0 INPUT_CLK_EXT NODEFVAL inclock
+// Retrieval info: CONNECT: @datain 0 0 4 0 datain 0 0 4 0
+// Retrieval info: CONNECT: dataout_h 0 0 4 0 @dataout_h 0 0 4 0
+// Retrieval info: CONNECT: dataout_l 0 0 4 0 @dataout_l 0 0 4 0
+// Retrieval info: CONNECT: @inclock 0 0 0 0 inclock 0 0 0 0
+// Retrieval info: CONNECT: @aclr 0 0 0 0 aclr 0 0 0 0
+// Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in4.v TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in4.ppf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in4.inc FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in4.cmp FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in4.bsf TRUE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in4_inst.v FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_in4_bb.v TRUE
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_module.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_module.v
new file mode 100644
index 0000000000000000000000000000000000000000..679b8810d0d78be1081f6657404503e91149a14c
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_module.v
@@ -0,0 +1,270 @@
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+//
+// Revision Control Information
+//
+// $RCSfile: altera_tse_rgmii_module.v,v $
+// $Source: /ipbu/cvs/sio/projects/TriSpeedEthernet/src/RTL/MAC/mac/rgmii/altera_tse_rgmii_module.v,v $
+//
+// $Revision: #1 $
+// $Date: 2009/09/30 $
+// Check in by : $Author: max $
+// Author      : Arul Paniandi
+//
+// Project     : Triple Speed Ethernet - 10/100/1000 MAC
+//
+// Description : 
+//
+// Top level RGMII interface (receive and transmit) module.
+
+// 
+// ALTERA Confidential and Proprietary
+// Copyright 2006 (c) Altera Corporation
+// All rights reserved
+//
+// -------------------------------------------------------------------------
+// -------------------------------------------------------------------------
+
+// synthesis translate_off
+`timescale 1ns / 100ps
+// synthesis translate_on
+module altera_tse_rgmii_module (   // new ports to cater for mii with RGMII interface are added 
+                      // inputs
+                       rgmii_in,
+					   speed,
+					   //data
+                       gm_tx_d,
+					   m_tx_d,  
+					   
+					   //control
+                       gm_tx_en,
+					   m_tx_en,
+					   
+                       gm_tx_err,
+					   m_tx_err,
+					   
+                       reset_rx_clk,
+                       reset_tx_clk,
+                       rx_clk,
+                       rx_control,
+                       tx_clk,
+
+                      // outputs:
+                       rgmii_out,
+                       
+					   gm_rx_d,
+					   m_rx_d,
+					   
+                       gm_rx_dv,
+					   m_rx_en,
+					   
+					   
+                       gm_rx_err,
+                       m_rx_err,
+					   
+					   m_rx_col,
+					   m_rx_crs,
+					   tx_control
+                    )
+;
+	
+  output  [  3: 0] rgmii_out;
+  output  [  7: 0] gm_rx_d;
+  output  [  3: 0] m_rx_d;
+  output           gm_rx_dv;
+  output           m_rx_en;
+  output           gm_rx_err;
+  output           m_rx_err;
+  output           m_rx_col;
+  output           m_rx_crs;
+  output           tx_control;
+  
+  input   [  3: 0] rgmii_in;
+  input            speed;
+  input   [  7: 0] gm_tx_d;
+  input   [  3: 0] m_tx_d; 
+  input            gm_tx_en;
+  input            m_tx_en;
+  input            gm_tx_err;
+  input            m_tx_err;
+  input            reset_rx_clk;
+  input            reset_tx_clk;
+  input            rx_clk;
+  input            rx_control;
+  input            tx_clk;
+
+  wire    [  3: 0] rgmii_out;
+  wire    [  7: 0] gm_rx_d;
+  wire             gm_rx_dv;
+  wire             m_rx_en;
+  wire             gm_rx_err;
+  wire             m_rx_err;
+  reg              m_rx_col;
+  reg              m_rx_crs;
+  
+  reg              rx_dv;
+  reg              rx_err;
+  wire             tx_control;
+  //wire             tx_err;
+  reg     [  7: 0] rgmii_out_4_wire;
+  reg              rgmii_out_1_wire_inp1;
+  reg              rgmii_out_1_wire_inp2;
+  
+  wire    [  7:0 ] rgmii_in_4_wire;
+  reg     [  7:0 ] rgmii_in_4_reg;
+  reg     [  7:0 ] rgmii_in_4_temp_reg;
+  wire    [  1:0 ] rgmii_in_1_wire;
+  reg     [  1:0 ] rgmii_in_1_temp_reg;
+  
+  reg m_tx_en_reg1;
+  reg m_tx_en_reg2;
+  reg m_tx_en_reg3;
+  reg m_tx_en_reg4;
+  
+  assign gm_rx_d = rgmii_in_4_reg;
+  assign m_rx_d  = rgmii_in_4_reg[3:0];  // mii is only 4 bits, data are duplicated so we only take one nibble
+    
+  altera_tse_rgmii_in4 the_rgmii_in4
+    (
+      .aclr (reset_rx_clk),         //INPUT
+      .datain (rgmii_in),           //INPUT     
+      .dataout_h (rgmii_in_4_wire[7 : 4]),  //OUTPUT
+      .dataout_l (rgmii_in_4_wire[3 : 0]),  //OUTPUT
+      .inclock (rx_clk)             //OUTPUT
+    );
+
+
+  altera_tse_rgmii_in1 the_rgmii_in1
+    (
+      .aclr (reset_rx_clk),            //INPUT
+      .datain (rx_control),            //INPUT
+      .dataout_h (rgmii_in_1_wire[1]), //INPUT    rx_err
+      .dataout_l (rgmii_in_1_wire[0]), //OUTPUT   rx_dv
+      .inclock (rx_clk)                //OUTPUT
+    );
+
+
+always @(posedge rx_clk or posedge reset_rx_clk)
+    begin
+        if (reset_rx_clk == 1'b1) begin
+            rgmii_in_4_temp_reg <= {8{1'b0}};
+            rgmii_in_1_temp_reg <= {2{1'b0}};
+        end
+        else begin
+            rgmii_in_4_temp_reg <= rgmii_in_4_wire;
+            rgmii_in_1_temp_reg <= rgmii_in_1_wire;
+        end
+    end
+
+
+always @(posedge rx_clk or posedge reset_rx_clk)
+    begin
+        if (reset_rx_clk == 1'b1) begin
+            rgmii_in_4_reg <= {8{1'b0}};
+            rx_err <= 1'b0;
+            rx_dv <= 1'b0;
+        end
+        else begin
+            rgmii_in_4_reg <= {rgmii_in_4_wire[3:0], rgmii_in_4_temp_reg[7:4]};
+            rx_err <= rgmii_in_1_wire[0];
+            rx_dv <= rgmii_in_1_temp_reg[1];            
+        end
+    end
+	
+	
+always @(rx_dv or rx_err or rgmii_in_4_reg)
+  begin
+		m_rx_crs = 1'b0;
+		if ((rx_dv == 1'b1) || (rx_dv == 1'b0 && rx_err == 1'b1 && rgmii_in_4_reg == 8'hFF ) || (rx_dv == 1'b0 && rx_err == 1'b1 && rgmii_in_4_reg == 8'h0E ) || (rx_dv == 1'b0 && rx_err == 1'b1 && rgmii_in_4_reg == 8'h0F ) || (rx_dv == 1'b0 && rx_err == 1'b1 && rgmii_in_4_reg == 8'h1F ) )
+		begin
+			m_rx_crs = 1'b1;   // read RGMII specification data sheet , table 4 for the conditions where CRS should go high
+		end
+  end
+
+always @(posedge tx_clk or posedge reset_tx_clk)
+begin
+	if(reset_tx_clk == 1'b1)
+	begin
+		m_tx_en_reg1 <= 1'b0;
+		m_tx_en_reg2 <= 1'b0;
+		m_tx_en_reg3 <= 1'b0;
+		m_tx_en_reg4 <= 1'b0;
+
+	end
+	else
+	begin
+		m_tx_en_reg1 <= m_tx_en;
+		m_tx_en_reg2 <= m_tx_en_reg1;
+		m_tx_en_reg3 <= m_tx_en_reg2;
+		m_tx_en_reg4 <= m_tx_en_reg3;
+	end
+
+end  
+  
+always @(m_tx_en_reg4 or m_rx_crs or rx_dv)
+begin
+	m_rx_col = 1'b0;
+	if ( m_tx_en_reg4 == 1'b1 & (m_rx_crs == 1'b1 | rx_dv == 1'b1))
+	begin
+		m_rx_col = 1'b1;
+	end
+end
+  
+  assign gm_rx_err = rx_err ^ rx_dv;
+  assign gm_rx_dv = rx_dv;
+  
+  assign m_rx_err = rx_err ^ rx_dv;
+  assign m_rx_en = rx_dv;
+  
+    // mux for Out 4
+  always @(*)
+  begin
+    case (speed)
+      1'b1:  rgmii_out_4_wire = gm_tx_d;
+      1'b0:  rgmii_out_4_wire = {m_tx_d,m_tx_d};
+    endcase
+  end
+  
+   // mux for Out 1
+  always @(*)
+  begin
+    case (speed)
+      1'b1: 
+		begin
+			rgmii_out_1_wire_inp1 = gm_tx_en; // gigabit
+			rgmii_out_1_wire_inp2 = gm_tx_en ^ gm_tx_err;
+		end	
+      1'b0:  
+		begin
+			rgmii_out_1_wire_inp1 = m_tx_en;
+			rgmii_out_1_wire_inp2 = m_tx_en ^ m_tx_err;
+		end
+    endcase
+  end
+  
+  
+  altera_tse_rgmii_out4 the_rgmii_out4
+    (
+      .aclr (reset_tx_clk),         //INPUT
+      .datain_h (rgmii_out_4_wire[3 : 0]),   //INPUT
+      .datain_l (rgmii_out_4_wire[7 : 4]),   //INPUT
+      .dataout (rgmii_out),         //INPUT
+      .outclock (tx_clk)            //OUTPUT
+    );
+
+
+  //assign tx_err = gm_tx_en ^ gm_tx_err;
+
+  altera_tse_rgmii_out1 the_rgmii_out1
+    (
+      .aclr (reset_tx_clk),         //INPUT
+      .datain_h (rgmii_out_1_wire_inp1),         //INPUT
+      .datain_l (rgmii_out_1_wire_inp2),           //INPUT     
+      .dataout (tx_control),        //INPUT
+      .outclock (tx_clk)            //OUTPUT
+    );
+
+
+
+endmodule
+
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_out1.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_out1.v
new file mode 100644
index 0000000000000000000000000000000000000000..b97e1d782b50f933e1dfef46a35342c4d7fb7c18
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_out1.v
@@ -0,0 +1,110 @@
+// megafunction wizard: %ALTDDIO_OUT%
+// GENERATION: STANDARD
+// VERSION: WM1.0
+// MODULE: altddio_out 
+
+// ============================================================
+// File Name: rgmii_out1.v
+// Megafunction Name(s):
+// 			altddio_out
+// ============================================================
+// ************************************************************
+// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
+//
+// 6.0 Build 176 04/19/2006 SJ Full Version
+// ************************************************************
+
+
+//Copyright (C) 1991-2006 Altera Corporation
+//Your use of Altera Corporation's design tools, logic functions 
+//and other software and tools, and its AMPP partner logic 
+//functions, and any output files any of the foregoing 
+//(including device programming or simulation files), and any 
+//associated documentation or information are expressly subject 
+//to the terms and conditions of the Altera Program License 
+//Subscription Agreement, Altera MegaCore Function License 
+//Agreement, or other applicable license agreement, including, 
+//without limitation, that your use is for the sole purpose of 
+//programming logic devices manufactured by Altera and sold by 
+//Altera or its authorized distributors.  Please refer to the 
+//applicable agreement for further details.
+
+
+// synopsys translate_off
+`timescale 1 ps / 1 ps
+// synopsys translate_on
+module altera_tse_rgmii_out1 (
+	aclr,
+	datain_h,
+	datain_l,
+	outclock,
+	dataout);
+
+	input	  aclr;
+	input	  datain_h;
+	input	  datain_l;
+	input	  outclock;
+	output	  dataout;
+
+	wire [0:0] sub_wire0;
+	wire [0:0] sub_wire1 = sub_wire0[0:0];
+	wire  dataout = sub_wire1;
+	wire  sub_wire2 = datain_h;
+	wire  sub_wire3 = sub_wire2;
+	wire  sub_wire4 = datain_l;
+	wire  sub_wire5 = sub_wire4;
+
+	altddio_out	altddio_out_component (
+				.outclock (outclock),
+				.datain_h (sub_wire3),
+				.aclr (aclr),
+				.datain_l (sub_wire5),
+				.dataout (sub_wire0),
+				.aset (1'b0),
+				.oe (1'b1),
+				.outclocken (1'b1));
+	defparam
+		altddio_out_component.extend_oe_disable = "UNUSED",
+		altddio_out_component.intended_device_family = "Stratix II",
+		altddio_out_component.lpm_type = "altddio_out",
+		altddio_out_component.oe_reg = "UNUSED",
+		altddio_out_component.width = 1;
+
+
+endmodule
+
+// ============================================================
+// CNX file retrieval info
+// ============================================================
+// Retrieval info: PRIVATE: ARESET_MODE NUMERIC "0"
+// Retrieval info: PRIVATE: CLKEN NUMERIC "0"
+// Retrieval info: PRIVATE: EXTEND_OE_DISABLE NUMERIC "0"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: PRIVATE: OE NUMERIC "0"
+// Retrieval info: PRIVATE: OE_REG NUMERIC "0"
+// Retrieval info: PRIVATE: POWER_UP_HIGH NUMERIC "0"
+// Retrieval info: PRIVATE: WIDTH NUMERIC "1"
+// Retrieval info: CONSTANT: EXTEND_OE_DISABLE STRING "UNUSED"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: CONSTANT: LPM_TYPE STRING "altddio_out"
+// Retrieval info: CONSTANT: OE_REG STRING "UNUSED"
+// Retrieval info: CONSTANT: WIDTH NUMERIC "1"
+// Retrieval info: USED_PORT: aclr 0 0 0 0 INPUT GND aclr
+// Retrieval info: USED_PORT: datain_h 0 0 0 0 INPUT NODEFVAL datain_h
+// Retrieval info: USED_PORT: datain_l 0 0 0 0 INPUT NODEFVAL datain_l
+// Retrieval info: USED_PORT: dataout 0 0 0 0 OUTPUT NODEFVAL dataout
+// Retrieval info: USED_PORT: outclock 0 0 0 0 INPUT_CLK_EXT NODEFVAL outclock
+// Retrieval info: CONNECT: @datain_h 0 0 1 0 datain_h 0 0 0 0
+// Retrieval info: CONNECT: @datain_l 0 0 1 0 datain_l 0 0 0 0
+// Retrieval info: CONNECT: dataout 0 0 0 0 @dataout 0 0 1 0
+// Retrieval info: CONNECT: @outclock 0 0 0 0 outclock 0 0 0 0
+// Retrieval info: CONNECT: @aclr 0 0 0 0 aclr 0 0 0 0
+// Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out1.v TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out1.ppf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out1.inc FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out1.cmp FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out1.bsf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out1_inst.v FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out1_bb.v TRUE
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_out4.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_out4.v
new file mode 100644
index 0000000000000000000000000000000000000000..ae35c5a840ed4faa990f652180d801f74f52583b
--- /dev/null
+++ b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rgmii_out4.v
@@ -0,0 +1,105 @@
+// megafunction wizard: %ALTDDIO_OUT%
+// GENERATION: STANDARD
+// VERSION: WM1.0
+// MODULE: altddio_out 
+
+// ============================================================
+// File Name: rgmii_out4.v
+// Megafunction Name(s):
+// 			altddio_out
+// ============================================================
+// ************************************************************
+// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!
+//
+// 6.0 Build 176 04/19/2006 SJ Full Version
+// ************************************************************
+
+
+//Copyright (C) 1991-2006 Altera Corporation
+//Your use of Altera Corporation's design tools, logic functions 
+//and other software and tools, and its AMPP partner logic 
+//functions, and any output files any of the foregoing 
+//(including device programming or simulation files), and any 
+//associated documentation or information are expressly subject 
+//to the terms and conditions of the Altera Program License 
+//Subscription Agreement, Altera MegaCore Function License 
+//Agreement, or other applicable license agreement, including, 
+//without limitation, that your use is for the sole purpose of 
+//programming logic devices manufactured by Altera and sold by 
+//Altera or its authorized distributors.  Please refer to the 
+//applicable agreement for further details.
+
+
+// synopsys translate_off
+`timescale 1 ps / 1 ps
+// synopsys translate_on
+module altera_tse_rgmii_out4 (
+	aclr,
+	datain_h,
+	datain_l,
+	outclock,
+	dataout);
+
+	input	  aclr;
+	input	[3:0]  datain_h;
+	input	[3:0]  datain_l;
+	input	  outclock;
+	output	[3:0]  dataout;
+
+	wire [3:0] sub_wire0;
+	wire [3:0] dataout = sub_wire0[3:0];
+
+	altddio_out	altddio_out_component (
+				.outclock (outclock),
+				.datain_h (datain_h),
+				.aclr (aclr),
+				.datain_l (datain_l),
+				.dataout (sub_wire0),
+				.aset (1'b0),
+				.oe (1'b1),
+				.outclocken (1'b1));
+	defparam
+		altddio_out_component.extend_oe_disable = "UNUSED",
+		altddio_out_component.intended_device_family = "Stratix II",
+		altddio_out_component.lpm_type = "altddio_out",
+		altddio_out_component.oe_reg = "UNUSED",
+		altddio_out_component.width = 4;
+
+
+endmodule
+
+// ============================================================
+// CNX file retrieval info
+// ============================================================
+// Retrieval info: PRIVATE: ARESET_MODE NUMERIC "0"
+// Retrieval info: PRIVATE: CLKEN NUMERIC "0"
+// Retrieval info: PRIVATE: EXTEND_OE_DISABLE NUMERIC "0"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: PRIVATE: OE NUMERIC "0"
+// Retrieval info: PRIVATE: OE_REG NUMERIC "0"
+// Retrieval info: PRIVATE: POWER_UP_HIGH NUMERIC "0"
+// Retrieval info: PRIVATE: WIDTH NUMERIC "4"
+// Retrieval info: CONSTANT: EXTEND_OE_DISABLE STRING "UNUSED"
+// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Stratix II"
+// Retrieval info: CONSTANT: LPM_TYPE STRING "altddio_out"
+// Retrieval info: CONSTANT: OE_REG STRING "UNUSED"
+// Retrieval info: CONSTANT: WIDTH NUMERIC "4"
+// Retrieval info: USED_PORT: aclr 0 0 0 0 INPUT GND aclr
+// Retrieval info: USED_PORT: datain_h 0 0 4 0 INPUT NODEFVAL datain_h[3..0]
+// Retrieval info: USED_PORT: datain_l 0 0 4 0 INPUT NODEFVAL datain_l[3..0]
+// Retrieval info: USED_PORT: dataout 0 0 4 0 OUTPUT NODEFVAL dataout[3..0]
+// Retrieval info: USED_PORT: outclock 0 0 0 0 INPUT_CLK_EXT NODEFVAL outclock
+// Retrieval info: CONNECT: @datain_h 0 0 4 0 datain_h 0 0 4 0
+// Retrieval info: CONNECT: @datain_l 0 0 4 0 datain_l 0 0 4 0
+// Retrieval info: CONNECT: dataout 0 0 4 0 @dataout 0 0 4 0
+// Retrieval info: CONNECT: @outclock 0 0 0 0 outclock 0 0 0 0
+// Retrieval info: CONNECT: @aclr 0 0 0 0 aclr 0 0 0 0
+// Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out4.v TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out4.ppf TRUE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out4.inc FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out4.cmp FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out4.bsf TRUE FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out4_inst.v FALSE
+// Retrieval info: GEN_FILE: TYPE_NORMAL rgmii_out4_bb.v TRUE
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_converter.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_converter.v
new file mode 100644
index 0000000000000000000000000000000000000000..5a5e1725a970f543476a9b60973bbaec542bcf43
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_converter.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_counter_cntl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_counter_cntl.v
new file mode 100644
index 0000000000000000000000000000000000000000..9a2f4a6007a1827914f775d2bff63ed4a992f7cc
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_counter_cntl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_encapsulation.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_encapsulation.v
new file mode 100644
index 0000000000000000000000000000000000000000..f57ee26941f9ef685828cb1d8bdb71e871c393b2
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_encapsulation.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_encapsulation_strx_gx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_encapsulation_strx_gx.v
new file mode 100644
index 0000000000000000000000000000000000000000..f2e84c38ebdca9f07442395e30009a80d89dd318
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_encapsulation_strx_gx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff.v
new file mode 100644
index 0000000000000000000000000000000000000000..dd88b6c773d835de001c7b5933d4f728684aa995
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_cntrl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_cntrl.v
new file mode 100644
index 0000000000000000000000000000000000000000..91ab622fe6f6e57fd278440210b0eaf2678876fe
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_cntrl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_cntrl_32.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_cntrl_32.v
new file mode 100644
index 0000000000000000000000000000000000000000..f5052fc665670ebb1e2440a9d645906cf399ff44
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_cntrl_32.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_cntrl_32_shift16.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_cntrl_32_shift16.v
new file mode 100644
index 0000000000000000000000000000000000000000..a0f60d9f88d49aa5bdfb8c5423c4548a5b0c8da6
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_cntrl_32_shift16.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_length.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_length.v
new file mode 100644
index 0000000000000000000000000000000000000000..322832a58a5dbb0a0b06434cae4103d32db62590
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_ff_length.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_fifo_rd.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_fifo_rd.v
new file mode 100644
index 0000000000000000000000000000000000000000..1d8d8914607157b502fe07bc237c424116ef5e80
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_fifo_rd.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_min_ff.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_min_ff.v
new file mode 100644
index 0000000000000000000000000000000000000000..004c5269137d0a1fe1fd308fc09fb96065e47e11
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_min_ff.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_stat_extract.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_stat_extract.v
new file mode 100644
index 0000000000000000000000000000000000000000..04d14608e6f5926a932070b75781a8be6f38b033
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_stat_extract.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_sync.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_sync.v
new file mode 100644
index 0000000000000000000000000000000000000000..ab12b1c3698dbe139bbef0b4b3bdfaac86fb939b
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_rx_sync.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sdpm_altsyncram.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sdpm_altsyncram.v
new file mode 100644
index 0000000000000000000000000000000000000000..9eaa7085d90f3a6b454d6e2cafade5ce37b4c9df
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sdpm_altsyncram.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sdpm_gen.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sdpm_gen.v
new file mode 100644
index 0000000000000000000000000000000000000000..a0b18fe9638f59baa6fc415ebde3c3efc5a714ca
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sdpm_gen.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_cntl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_cntl.v
new file mode 100644
index 0000000000000000000000000000000000000000..2e4233b5b7546ebe920c05551393db7d1c5907eb
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_cntl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_div.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_div.v
new file mode 100644
index 0000000000000000000000000000000000000000..beb3e1edf90a3904eb138d555e408c8822f0ced5
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_div.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_enable.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_enable.v
new file mode 100644
index 0000000000000000000000000000000000000000..484ee836613b7c502fde7af4f9678031a0b0a184
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_enable.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_scheduler.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_scheduler.v
new file mode 100644
index 0000000000000000000000000000000000000000..aa1abf76baa3f135270bb7008e180ebecd898821
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_sgmii_clk_scheduler.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_shared_mac_control.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_shared_mac_control.v
new file mode 100644
index 0000000000000000000000000000000000000000..9eacf019eb634270d99cecfa5c00a75ab9175bcd
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_shared_mac_control.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_shared_register_map.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_shared_register_map.v
new file mode 100644
index 0000000000000000000000000000000000000000..cdf1cb21b42b99510727b2e7c149a30d34c916bf
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_shared_register_map.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter32.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter32.v
new file mode 100644
index 0000000000000000000000000000000000000000..f4ddb7ac9858202e04cf1ae719e0f392427b7e44
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter32.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter8.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter8.v
new file mode 100644
index 0000000000000000000000000000000000000000..d91afa2fdc2611225477f7521b2243f3e947cf04
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter8.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter_fifo32.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter_fifo32.v
new file mode 100644
index 0000000000000000000000000000000000000000..e0d1af490f2865af7c619e6ecb9d369e3788debf
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter_fifo32.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter_fifo8.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter_fifo8.v
new file mode 100644
index 0000000000000000000000000000000000000000..536416ca5e2daff9b90a399d8bfdb9a6c85a5594
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_timing_adapter_fifo8.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x.ocp b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x.ocp
new file mode 100644
index 0000000000000000000000000000000000000000..15cd0ebf6d8a02d7b9a2669776fbcfe1fc0263a0
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x.ocp differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x.v
new file mode 100644
index 0000000000000000000000000000000000000000..69e1395fe120aeb4e88cf1b1029ee50e00376775
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x_strx_gx.ocp b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x_strx_gx.ocp
new file mode 100644
index 0000000000000000000000000000000000000000..17173958c0a5ecf11131ca3b1d650dd8dd79ae44
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x_strx_gx.ocp differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x_strx_gx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x_strx_gx.v
new file mode 100644
index 0000000000000000000000000000000000000000..f995cbd4e4e86cfb84380432132477e3e3fcb6a1
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1000_base_x_strx_gx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1geth.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1geth.v
new file mode 100644
index 0000000000000000000000000000000000000000..28b75481be0d433e83f82f8f94c23d62b49625c7
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_1geth.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_autoneg.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_autoneg.v
new file mode 100644
index 0000000000000000000000000000000000000000..22d8f7d902261fa0ca5a9cdbcfd41b243d4b1757
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_autoneg.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_fifoless_1geth.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_fifoless_1geth.v
new file mode 100644
index 0000000000000000000000000000000000000000..d2a9e1d7610045339780e9e074ffec73a6975b96
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_fifoless_1geth.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_gen_host.ocp b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_gen_host.ocp
new file mode 100644
index 0000000000000000000000000000000000000000..265c8a914ff9ed0af1177be33ac8ba8cf6a374b3
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_gen_host.ocp differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_gen_host.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_gen_host.v
new file mode 100644
index 0000000000000000000000000000000000000000..a993d587732d36e748313ea8b6a8c1ec5967bc12
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_gen_host.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_mdio.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_mdio.v
new file mode 100644
index 0000000000000000000000000000000000000000..3fffbb94844ca7a4b97fca76ab7c72d9ce554cba
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_mdio.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_multi_mac.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_multi_mac.v
new file mode 100644
index 0000000000000000000000000000000000000000..981e57574bc4171c75df66f0506fc3ded4d7acab
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_multi_mac.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_multi_mac_pcs.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_multi_mac_pcs.v
new file mode 100644
index 0000000000000000000000000000000000000000..6dc45e77e3071cf71a3baf987c71ac5828e68719
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_multi_mac_pcs.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_multi_mac_pcs_gige.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_multi_mac_pcs_gige.v
new file mode 100644
index 0000000000000000000000000000000000000000..09919fec7a709768a9c9c8f93d0f56c5b8ca21e7
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_multi_mac_pcs_gige.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_pcs.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_pcs.v
new file mode 100644
index 0000000000000000000000000000000000000000..961bce0f16545e7e0ed217761d2f712afb8027a1
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_pcs.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_pcs_strx_gx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_pcs_strx_gx.v
new file mode 100644
index 0000000000000000000000000000000000000000..d440209565b502e15214baa3553ed27c3490466e
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_pcs_strx_gx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_rx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_rx.v
new file mode 100644
index 0000000000000000000000000000000000000000..61594f772406cce3586dc96a50207d35f19b26e1
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_rx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_rx_converter.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_rx_converter.v
new file mode 100644
index 0000000000000000000000000000000000000000..19cfa5c1960d69b82c4b537b86f3bde1dc340074
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_rx_converter.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_sgmii.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_sgmii.v
new file mode 100644
index 0000000000000000000000000000000000000000..6b2d6e0397500c20095c96d525dfee714af3bc06
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_sgmii.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_sgmii_strx_gx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_sgmii_strx_gx.v
new file mode 100644
index 0000000000000000000000000000000000000000..4f386f2a93250b883ffb9fcefcc8092eca956802
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_sgmii_strx_gx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_tx.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_tx.v
new file mode 100644
index 0000000000000000000000000000000000000000..61f195863d4bf53c4d68031fc1ae01ea562fc619
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_tx.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_tx_converter.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_tx_converter.v
new file mode 100644
index 0000000000000000000000000000000000000000..4c72a5356c25b08b47f21dac2d545691e4be4dc9
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_tx_converter.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_w_fifo.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_w_fifo.v
new file mode 100644
index 0000000000000000000000000000000000000000..e8ff11cebac338c21df25c56c936263bfde31b32
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_w_fifo.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_w_fifo_10_100_1000.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_w_fifo_10_100_1000.v
new file mode 100644
index 0000000000000000000000000000000000000000..c6ca8744cccb820829963c16eff671b8dd900bca
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_w_fifo_10_100_1000.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_wo_fifo.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_wo_fifo.v
new file mode 100644
index 0000000000000000000000000000000000000000..4b61b7510a050095d699680404401b063aa75184
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_wo_fifo.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_wo_fifo_10_100_1000.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_wo_fifo_10_100_1000.v
new file mode 100644
index 0000000000000000000000000000000000000000..015ab5bf201e76ede3d2a8ffc35907545d50dfe7
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_top_wo_fifo_10_100_1000.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_converter.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_converter.v
new file mode 100644
index 0000000000000000000000000000000000000000..c3c19bf31a738bd96f27568f896bbb0439deb9b4
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_converter.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_counter_cntl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_counter_cntl.v
new file mode 100644
index 0000000000000000000000000000000000000000..f672868b236ba8212ac984ff33e8f069478cd1d4
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_counter_cntl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_encapsulation.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_encapsulation.v
new file mode 100644
index 0000000000000000000000000000000000000000..f97985b0685f166f96948e63c0f97d2ed6e58f83
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_encapsulation.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff.v
new file mode 100644
index 0000000000000000000000000000000000000000..aca3dc88ebd1154a76ca900fee2839db447ece66
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_cntrl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_cntrl.v
new file mode 100644
index 0000000000000000000000000000000000000000..a8a6e5e5a870a219510da26fbc07b108f74eab72
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_cntrl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_cntrl_32.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_cntrl_32.v
new file mode 100644
index 0000000000000000000000000000000000000000..8376a2aed76ea382552fb9890ef74d767d707be1
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_cntrl_32.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_cntrl_32_shift16.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_cntrl_32_shift16.v
new file mode 100644
index 0000000000000000000000000000000000000000..2fc13d17af203784495aaa9b9aa6e8b41b80c641
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_cntrl_32_shift16.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_length.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_length.v
new file mode 100644
index 0000000000000000000000000000000000000000..5d900e71ed557408dd167d6a4a9c132f7407288d
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_length.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_read_cntl.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_read_cntl.v
new file mode 100644
index 0000000000000000000000000000000000000000..8ee8078c3ee892cd7327ac7fc72d2bac757a4b34
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_ff_read_cntl.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_min_ff.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_min_ff.v
new file mode 100644
index 0000000000000000000000000000000000000000..d7117253d57b466547faf91a26f9848ab824cab3
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_min_ff.v differ
diff --git a/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_stat_extract.v b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_stat_extract.v
new file mode 100644
index 0000000000000000000000000000000000000000..e3d3ec07214fd0ddea6f829cf6b0ef7c35ff4a09
Binary files /dev/null and b/libraries/technology/ip_stratixiv/tse_sgmii_lvds/triple_speed_ethernet-library/altera_tse_tx_stat_extract.v differ