dac_fmc_ebz_bd.tcl: Updated bd for multiple tx_ref_clk
parent
45dae0f3d3
commit
694ebbfbfc
|
@ -47,6 +47,7 @@ set SAMPLE_WIDTH $ad_project_params(JESD_NP)
|
|||
set DAC_DATA_WIDTH [expr $NUM_OF_LANES * 32]
|
||||
set SAMPLES_PER_CHANNEL [expr $DAC_DATA_WIDTH / $NUM_OF_CONVERTERS / $SAMPLE_WIDTH]
|
||||
|
||||
set MAX_NUM_OF_LANES 8
|
||||
# Top level ports
|
||||
|
||||
create_bd_port -dir I dac_fifo_bypass
|
||||
|
@ -92,7 +93,7 @@ ad_dacfifo_create axi_dac_fifo \
|
|||
|
||||
ad_ip_instance util_adxcvr util_dac_jesd204_xcvr [list \
|
||||
RX_NUM_OF_LANES 0 \
|
||||
TX_NUM_OF_LANES $NUM_OF_LANES \
|
||||
TX_NUM_OF_LANES $MAX_NUM_OF_LANES \
|
||||
TX_LANE_INVERT [expr 0x0F] \
|
||||
QPLL_REFCLK_DIV 1 \
|
||||
QPLL_FBDIV_RATIO 1 \
|
||||
|
@ -105,16 +106,21 @@ ad_connect sys_cpu_clk util_dac_jesd204_xcvr/up_clk
|
|||
|
||||
# reference clocks & resets
|
||||
|
||||
create_bd_port -dir I tx_ref_clk
|
||||
for {set i 0} {$i < $MAX_NUM_OF_LANES} {incr i} {
|
||||
if {$i % 4 == 0} {
|
||||
create_bd_port -dir I tx_ref_clk_${i}
|
||||
ad_xcvrpll tx_ref_clk_${i} util_dac_jesd204_xcvr/qpll_ref_clk_${i}
|
||||
set quad_ref_clk tx_ref_clk_${i}
|
||||
}
|
||||
ad_xcvrpll $quad_ref_clk util_dac_jesd204_xcvr/cpll_ref_clk_${i}
|
||||
}
|
||||
|
||||
ad_xcvrpll tx_ref_clk util_dac_jesd204_xcvr/qpll_ref_clk_*
|
||||
ad_xcvrpll tx_ref_clk util_dac_jesd204_xcvr/cpll_ref_clk_*
|
||||
ad_xcvrpll dac_jesd204_xcvr/up_pll_rst util_dac_jesd204_xcvr/up_qpll_rst_*
|
||||
ad_xcvrpll dac_jesd204_xcvr/up_pll_rst util_dac_jesd204_xcvr/up_cpll_rst_*
|
||||
|
||||
# connections (dac)
|
||||
|
||||
ad_xcvrcon util_dac_jesd204_xcvr dac_jesd204_xcvr dac_jesd204_link
|
||||
ad_xcvrcon util_dac_jesd204_xcvr dac_jesd204_xcvr dac_jesd204_link {} {} {} $MAX_NUM_OF_LANES
|
||||
|
||||
|
||||
ad_connect util_dac_jesd204_xcvr/tx_out_clk_0 dac_jesd204_transport/link_clk
|
||||
|
@ -164,8 +170,3 @@ ad_cpu_interrupt ps-12 mb-13 dac_dma/irq
|
|||
|
||||
ad_connect axi_dac_fifo/bypass dac_fifo_bypass
|
||||
|
||||
# Create dummy outputs for unused Tx lanes
|
||||
for {set i $NUM_OF_LANES} {$i < 8} {incr i} {
|
||||
create_bd_port -dir O tx_data_${i}_n
|
||||
create_bd_port -dir O tx_data_${i}_p
|
||||
}
|
||||
|
|
|
@ -36,22 +36,22 @@
|
|||
set_property -dict {PACKAGE_PIN AD10} [get_ports tx_ref_clk_p] ; ## D04 FMC_HPC_GBTCLK0_M2C_P MGTREFCLK0P_109_AD10
|
||||
set_property -dict {PACKAGE_PIN AD9 } [get_ports tx_ref_clk_n] ; ## D05 FMC_HPC_GBTCLK0_M2C_N MGTREFCLK0N_109_AD9
|
||||
|
||||
set_property -quiet -dict {PACKAGE_PIN AK10} [get_ports tx_data_p[7]] ; ## C02 FMC_HPC_DP0_C2M_P MGTXTXP0_109_AK10
|
||||
set_property -quiet -dict {PACKAGE_PIN AK9 } [get_ports tx_data_n[7]] ; ## C03 FMC_HPC_DP0_C2M_N MGTXTXN0_109_AK9
|
||||
set_property -quiet -dict {PACKAGE_PIN AK6 } [get_ports tx_data_p[6]] ; ## A22 FMC_HPC_DP1_C2M_P MGTXTXP1_109_AK6
|
||||
set_property -quiet -dict {PACKAGE_PIN AK5 } [get_ports tx_data_n[6]] ; ## A23 FMC_HPC_DP1_C2M_N MGTXTXN1_109_AK5
|
||||
set_property -quiet -dict {PACKAGE_PIN AJ4 } [get_ports tx_data_p[5]] ; ## A26 FMC_HPC_DP2_C2M_P MGTXTXP2_109_AJ4
|
||||
set_property -quiet -dict {PACKAGE_PIN AJ3 } [get_ports tx_data_n[5]] ; ## A27 FMC_HPC_DP2_C2M_N MGTXTXN2_109_AJ3
|
||||
set_property -quiet -dict {PACKAGE_PIN AK2 } [get_ports tx_data_p[4]] ; ## A30 FMC_HPC_DP3_C2M_P MGTXTXP3_109_AK2
|
||||
set_property -quiet -dict {PACKAGE_PIN AK1 } [get_ports tx_data_n[4]] ; ## A31 FMC_HPC_DP3_C2M_N MGTXTXN3_109_AK1
|
||||
set_property -quiet -dict {PACKAGE_PIN AH2 } [get_ports tx_data_p[2]] ; ## A34 FMC_HPC_DP4_C2M_P MGTXTXP0_110_AH2
|
||||
set_property -quiet -dict {PACKAGE_PIN AH1 } [get_ports tx_data_n[2]] ; ## A35 FMC_HPC_DP4_C2M_N MGTXTXN0_110_AH1
|
||||
set_property -quiet -dict {PACKAGE_PIN AF2 } [get_ports tx_data_p[0]] ; ## A38 FMC_HPC_DP5_C2M_P MGTXTXP1_110_AF2
|
||||
set_property -quiet -dict {PACKAGE_PIN AF1 } [get_ports tx_data_n[0]] ; ## A39 FMC_HPC_DP5_C2M_N MGTXTXN1_110_AF1
|
||||
set_property -quiet -dict {PACKAGE_PIN AE4 } [get_ports tx_data_p[1]] ; ## B36 FMC_HPC_DP6_C2M_P MGTXTXP2_110_AE4
|
||||
set_property -quiet -dict {PACKAGE_PIN AE3 } [get_ports tx_data_n[1]] ; ## B37 FMC_HPC_DP6_C2M_N MGTXTXN2_110_AE3
|
||||
set_property -quiet -dict {PACKAGE_PIN AD2 } [get_ports tx_data_p[3]] ; ## B32 FMC_HPC_DP7_C2M_P MGTXTXP3_110_AD2
|
||||
set_property -quiet -dict {PACKAGE_PIN AD1 } [get_ports tx_data_n[3]] ; ## B33 FMC_HPC_DP7_C2M_N MGTXTXN3_110_AD1
|
||||
set_property -dict {PACKAGE_PIN AK10} [get_ports tx_data_p[7]] ; ## C02 FMC_HPC_DP0_C2M_P MGTXTXP0_109_AK10
|
||||
set_property -dict {PACKAGE_PIN AK9 } [get_ports tx_data_n[7]] ; ## C03 FMC_HPC_DP0_C2M_N MGTXTXN0_109_AK9
|
||||
set_property -dict {PACKAGE_PIN AK6 } [get_ports tx_data_p[6]] ; ## A22 FMC_HPC_DP1_C2M_P MGTXTXP1_109_AK6
|
||||
set_property -dict {PACKAGE_PIN AK5 } [get_ports tx_data_n[6]] ; ## A23 FMC_HPC_DP1_C2M_N MGTXTXN1_109_AK5
|
||||
set_property -dict {PACKAGE_PIN AJ4 } [get_ports tx_data_p[5]] ; ## A26 FMC_HPC_DP2_C2M_P MGTXTXP2_109_AJ4
|
||||
set_property -dict {PACKAGE_PIN AJ3 } [get_ports tx_data_n[5]] ; ## A27 FMC_HPC_DP2_C2M_N MGTXTXN2_109_AJ3
|
||||
set_property -dict {PACKAGE_PIN AK2 } [get_ports tx_data_p[4]] ; ## A30 FMC_HPC_DP3_C2M_P MGTXTXP3_109_AK2
|
||||
set_property -dict {PACKAGE_PIN AK1 } [get_ports tx_data_n[4]] ; ## A31 FMC_HPC_DP3_C2M_N MGTXTXN3_109_AK1
|
||||
set_property -dict {PACKAGE_PIN AH2 } [get_ports tx_data_p[2]] ; ## A34 FMC_HPC_DP4_C2M_P MGTXTXP0_110_AH2
|
||||
set_property -dict {PACKAGE_PIN AH1 } [get_ports tx_data_n[2]] ; ## A35 FMC_HPC_DP4_C2M_N MGTXTXN0_110_AH1
|
||||
set_property -dict {PACKAGE_PIN AF2 } [get_ports tx_data_p[0]] ; ## A38 FMC_HPC_DP5_C2M_P MGTXTXP1_110_AF2
|
||||
set_property -dict {PACKAGE_PIN AF1 } [get_ports tx_data_n[0]] ; ## A39 FMC_HPC_DP5_C2M_N MGTXTXN1_110_AF1
|
||||
set_property -dict {PACKAGE_PIN AE4 } [get_ports tx_data_p[1]] ; ## B36 FMC_HPC_DP6_C2M_P MGTXTXP2_110_AE4
|
||||
set_property -dict {PACKAGE_PIN AE3 } [get_ports tx_data_n[1]] ; ## B37 FMC_HPC_DP6_C2M_N MGTXTXN2_110_AE3
|
||||
set_property -dict {PACKAGE_PIN AD2 } [get_ports tx_data_p[3]] ; ## B32 FMC_HPC_DP7_C2M_P MGTXTXP3_110_AD2
|
||||
set_property -dict {PACKAGE_PIN AD1 } [get_ports tx_data_n[3]] ; ## B33 FMC_HPC_DP7_C2M_N MGTXTXN3_110_AD1
|
||||
|
||||
set_property -dict {PACKAGE_PIN AG21 IOSTANDARD LVDS_25 DIFF_TERM TRUE} [get_ports tx_sync_p[0]] ; ## D07 FMC_HPC_LA01_P IO_L13P_T2_MRCC_11_AG21
|
||||
set_property -dict {PACKAGE_PIN AH21 IOSTANDARD LVDS_25 DIFF_TERM TRUE} [get_ports tx_sync_n[0]] ; ## D08 FMC_HPC_LA01_N IO_L13N_T2_MRCC_11_AH21
|
||||
|
|
|
@ -36,8 +36,6 @@
|
|||
`timescale 1ns/100ps
|
||||
|
||||
module system_top #(
|
||||
parameter JESD_L = 4,
|
||||
parameter NUM_LINKS = 2,
|
||||
parameter DEVICE_CODE = 0
|
||||
) (
|
||||
|
||||
|
@ -83,8 +81,8 @@ module system_top #(
|
|||
input tx_sysref_n,
|
||||
input [ 1:0] tx_sync_p,
|
||||
input [ 1:0] tx_sync_n,
|
||||
output [JESD_L*NUM_LINKS-1:0] tx_data_p,
|
||||
output [JESD_L*NUM_LINKS-1:0] tx_data_n,
|
||||
output [ 7:0] tx_data_p,
|
||||
output [ 7:0] tx_data_n,
|
||||
|
||||
inout [ 4:0] dac_ctrl,
|
||||
|
||||
|
@ -116,8 +114,6 @@ module system_top #(
|
|||
wire tx_ref_clk;
|
||||
wire tx_sysref;
|
||||
wire [ 1:0] tx_sync;
|
||||
wire [ 7:0] tx_data_p_loc;
|
||||
wire [ 7:0] tx_data_n_loc;
|
||||
wire tx_sysref_loc;
|
||||
|
||||
// spi
|
||||
|
@ -268,30 +264,28 @@ module system_top #(
|
|||
.spi1_sdi_i (spi1_miso),
|
||||
.spi1_sdo_i (spi1_mosi),
|
||||
.spi1_sdo_o (spi1_mosi),
|
||||
.tx_data_0_n (tx_data_n_loc[0]),
|
||||
.tx_data_0_p (tx_data_p_loc[0]),
|
||||
.tx_data_1_n (tx_data_n_loc[1]),
|
||||
.tx_data_1_p (tx_data_p_loc[1]),
|
||||
.tx_data_2_n (tx_data_n_loc[2]),
|
||||
.tx_data_2_p (tx_data_p_loc[2]),
|
||||
.tx_data_3_n (tx_data_n_loc[3]),
|
||||
.tx_data_3_p (tx_data_p_loc[3]),
|
||||
.tx_data_4_n (tx_data_n_loc[4]),
|
||||
.tx_data_4_p (tx_data_p_loc[4]),
|
||||
.tx_data_5_n (tx_data_n_loc[5]),
|
||||
.tx_data_5_p (tx_data_p_loc[5]),
|
||||
.tx_data_6_n (tx_data_n_loc[6]),
|
||||
.tx_data_6_p (tx_data_p_loc[6]),
|
||||
.tx_data_7_n (tx_data_n_loc[7]),
|
||||
.tx_data_7_p (tx_data_p_loc[7]),
|
||||
.tx_ref_clk (tx_ref_clk),
|
||||
.tx_data_0_n (tx_data_n[0]),
|
||||
.tx_data_0_p (tx_data_p[0]),
|
||||
.tx_data_1_n (tx_data_n[1]),
|
||||
.tx_data_1_p (tx_data_p[1]),
|
||||
.tx_data_2_n (tx_data_n[2]),
|
||||
.tx_data_2_p (tx_data_p[2]),
|
||||
.tx_data_3_n (tx_data_n[3]),
|
||||
.tx_data_3_p (tx_data_p[3]),
|
||||
.tx_data_4_n (tx_data_n[4]),
|
||||
.tx_data_4_p (tx_data_p[4]),
|
||||
.tx_data_5_n (tx_data_n[5]),
|
||||
.tx_data_5_p (tx_data_p[5]),
|
||||
.tx_data_6_n (tx_data_n[6]),
|
||||
.tx_data_6_p (tx_data_p[6]),
|
||||
.tx_data_7_n (tx_data_n[7]),
|
||||
.tx_data_7_p (tx_data_p[7]),
|
||||
.tx_ref_clk_0 (tx_ref_clk),
|
||||
.tx_ref_clk_4 (tx_ref_clk),
|
||||
.tx_sync_0 (tx_sync[NUM_LINKS-1:0]),
|
||||
.tx_sysref_0 (tx_sysref_loc),
|
||||
.dac_fifo_bypass (dac_fifo_bypass));
|
||||
|
||||
assign tx_data_p[JESD_L*NUM_LINKS-1:0] = tx_data_p_loc[JESD_L*NUM_LINKS-1:0];
|
||||
assign tx_data_n[JESD_L*NUM_LINKS-1:0] = tx_data_n_loc[JESD_L*NUM_LINKS-1:0];
|
||||
|
||||
// AD9161/2/4-FMC-EBZ works only in single link,
|
||||
// The FMC connector instead of SYNC1 has SYSREF connected to it
|
||||
assign tx_sysref_loc = (DEVICE_CODE == 3) ? tx_sync[1] : tx_sysref;
|
||||
|
|
|
@ -30,22 +30,22 @@ set_property -dict {PACKAGE_PIN W1 IOSTANDARD LVCMOS18} [get_ports dac_ctrl[4
|
|||
set_property -dict {PACKAGE_PIN G8} [get_ports tx_ref_clk_p] ; ## D04 FMC_HPC0_GBTCLK0_M2C_C_P MGTREFCLK0P_229_G8
|
||||
set_property -dict {PACKAGE_PIN G7} [get_ports tx_ref_clk_n] ; ## D05 FMC_HPC0_GBTCLK0_M2C_C_N MGTREFCLK0N_229_G7
|
||||
|
||||
set_property -quiet -dict {PACKAGE_PIN G3} [get_ports tx_data_n[7]] ; ## C03 FMC_HPC0_DP0_C2M_N MGTHTXN2_229_G3
|
||||
set_property -quiet -dict {PACKAGE_PIN G4} [get_ports tx_data_p[7]] ; ## C02 FMC_HPC0_DP0_C2M_P MGTHTXP2_229_G4
|
||||
set_property -quiet -dict {PACKAGE_PIN H5} [get_ports tx_data_n[6]] ; ## A23 FMC_HPC0_DP1_C2M_N MGTHTXN1_229_H5
|
||||
set_property -quiet -dict {PACKAGE_PIN H6} [get_ports tx_data_p[6]] ; ## A22 FMC_HPC0_DP1_C2M_P MGTHTXP1_229_H6
|
||||
set_property -quiet -dict {PACKAGE_PIN F5} [get_ports tx_data_n[5]] ; ## A27 FMC_HPC0_DP2_C2M_N MGTHTXN3_229_F5
|
||||
set_property -quiet -dict {PACKAGE_PIN F6} [get_ports tx_data_p[5]] ; ## A26 FMC_HPC0_DP2_C2M_P MGTHTXP3_229_F6
|
||||
set_property -quiet -dict {PACKAGE_PIN K5} [get_ports tx_data_n[4]] ; ## A31 FMC_HPC0_DP3_C2M_N MGTHTXN0_229_K5
|
||||
set_property -quiet -dict {PACKAGE_PIN K6} [get_ports tx_data_p[4]] ; ## A30 FMC_HPC0_DP3_C2M_P MGTHTXP0_229_K6
|
||||
set_property -quiet -dict {PACKAGE_PIN M6} [get_ports tx_data_p[2]] ; ## A34 FMC_HPC0_DP4_C2M_P MGTHTXP3_228_M6
|
||||
set_property -quiet -dict {PACKAGE_PIN M5} [get_ports tx_data_n[2]] ; ## A35 FMC_HPC0_DP4_C2M_N MGTHTXN3_228_M5
|
||||
set_property -quiet -dict {PACKAGE_PIN P6} [get_ports tx_data_p[0]] ; ## A38 FMC_HPC0_DP5_C2M_P MGTHTXP1_228_P6
|
||||
set_property -quiet -dict {PACKAGE_PIN P5} [get_ports tx_data_n[0]] ; ## A39 FMC_HPC0_DP5_C2M_N MGTHTXN1_228_P5
|
||||
set_property -quiet -dict {PACKAGE_PIN R4} [get_ports tx_data_p[1]] ; ## B36 FMC_HPC0_DP6_C2M_P MGTHTXP0_228_R4
|
||||
set_property -quiet -dict {PACKAGE_PIN R3} [get_ports tx_data_n[1]] ; ## B37 FMC_HPC0_DP6_C2M_N MGTHTXN0_228_R3
|
||||
set_property -quiet -dict {PACKAGE_PIN N4} [get_ports tx_data_p[3]] ; ## B32 FMC_HPC0_DP7_C2M_P MGTHTXP2_228_N4
|
||||
set_property -quiet -dict {PACKAGE_PIN N3} [get_ports tx_data_n[3]] ; ## B33 FMC_HPC0_DP7_C2M_N MGTHTXN2_228_N3
|
||||
set_property -dict {PACKAGE_PIN G3} [get_ports tx_data_n[7]] ; ## C03 FMC_HPC0_DP0_C2M_N MGTHTXN2_229_G3
|
||||
set_property -dict {PACKAGE_PIN G4} [get_ports tx_data_p[7]] ; ## C02 FMC_HPC0_DP0_C2M_P MGTHTXP2_229_G4
|
||||
set_property -dict {PACKAGE_PIN H5} [get_ports tx_data_n[6]] ; ## A23 FMC_HPC0_DP1_C2M_N MGTHTXN1_229_H5
|
||||
set_property -dict {PACKAGE_PIN H6} [get_ports tx_data_p[6]] ; ## A22 FMC_HPC0_DP1_C2M_P MGTHTXP1_229_H6
|
||||
set_property -dict {PACKAGE_PIN F5} [get_ports tx_data_n[5]] ; ## A27 FMC_HPC0_DP2_C2M_N MGTHTXN3_229_F5
|
||||
set_property -dict {PACKAGE_PIN F6} [get_ports tx_data_p[5]] ; ## A26 FMC_HPC0_DP2_C2M_P MGTHTXP3_229_F6
|
||||
set_property -dict {PACKAGE_PIN K5} [get_ports tx_data_n[4]] ; ## A31 FMC_HPC0_DP3_C2M_N MGTHTXN0_229_K5
|
||||
set_property -dict {PACKAGE_PIN K6} [get_ports tx_data_p[4]] ; ## A30 FMC_HPC0_DP3_C2M_P MGTHTXP0_229_K6
|
||||
set_property -dict {PACKAGE_PIN M6} [get_ports tx_data_p[2]] ; ## A34 FMC_HPC0_DP4_C2M_P MGTHTXP3_228_M6
|
||||
set_property -dict {PACKAGE_PIN M5} [get_ports tx_data_n[2]] ; ## A35 FMC_HPC0_DP4_C2M_N MGTHTXN3_228_M5
|
||||
set_property -dict {PACKAGE_PIN P6} [get_ports tx_data_p[0]] ; ## A38 FMC_HPC0_DP5_C2M_P MGTHTXP1_228_P6
|
||||
set_property -dict {PACKAGE_PIN P5} [get_ports tx_data_n[0]] ; ## A39 FMC_HPC0_DP5_C2M_N MGTHTXN1_228_P5
|
||||
set_property -dict {PACKAGE_PIN R4} [get_ports tx_data_p[1]] ; ## B36 FMC_HPC0_DP6_C2M_P MGTHTXP0_228_R4
|
||||
set_property -dict {PACKAGE_PIN R3} [get_ports tx_data_n[1]] ; ## B37 FMC_HPC0_DP6_C2M_N MGTHTXN0_228_R3
|
||||
set_property -dict {PACKAGE_PIN N4} [get_ports tx_data_p[3]] ; ## B32 FMC_HPC0_DP7_C2M_P MGTHTXP2_228_N4
|
||||
set_property -dict {PACKAGE_PIN N3} [get_ports tx_data_n[3]] ; ## B33 FMC_HPC0_DP7_C2M_N MGTHTXN2_228_N3
|
||||
|
||||
# PL PMOD 1 header
|
||||
set_property -dict {PACKAGE_PIN D20 IOSTANDARD LVCMOS33} [get_ports pmod_spi_clk] ; ## PMOD1_0 IO_L8N_HDGC_AD4N_47_D20
|
||||
|
|
|
@ -80,8 +80,6 @@ tx_sysref_p SYSREF2_P G06 FMC_HPC0_LA00_CC_P Y4 IO_L13P_T2L_
|
|||
*/
|
||||
|
||||
module system_top #(
|
||||
parameter JESD_L = 4,
|
||||
parameter NUM_LINKS = 2,
|
||||
parameter DEVICE_CODE = 0
|
||||
) (
|
||||
|
||||
|
@ -94,8 +92,8 @@ module system_top #(
|
|||
input tx_sysref_n,
|
||||
input [ 1:0] tx_sync_p,
|
||||
input [ 1:0] tx_sync_n,
|
||||
output [JESD_L*NUM_LINKS-1:0] tx_data_p,
|
||||
output [JESD_L*NUM_LINKS-1:0] tx_data_n,
|
||||
output [ 7:0] tx_data_p,
|
||||
output [ 7:0] tx_data_n,
|
||||
|
||||
output spi_csn_dac,
|
||||
output spi_csn_clk,
|
||||
|
@ -124,8 +122,6 @@ module system_top #(
|
|||
wire tx_ref_clk;
|
||||
wire tx_sysref;
|
||||
wire [ 1:0] tx_sync;
|
||||
wire [ 7:0] tx_data_p_loc;
|
||||
wire [ 7:0] tx_data_n_loc;
|
||||
wire tx_sysref_loc;
|
||||
|
||||
// spi
|
||||
|
@ -229,29 +225,27 @@ module system_top #(
|
|||
.spi1_miso (pmod_spi_miso),
|
||||
.spi1_mosi (pmod_spi_mosi),
|
||||
.spi1_sclk (pmod_spi_clk),
|
||||
.tx_data_0_n (tx_data_n_loc[0]),
|
||||
.tx_data_0_p (tx_data_p_loc[0]),
|
||||
.tx_data_1_n (tx_data_n_loc[1]),
|
||||
.tx_data_1_p (tx_data_p_loc[1]),
|
||||
.tx_data_2_n (tx_data_n_loc[2]),
|
||||
.tx_data_2_p (tx_data_p_loc[2]),
|
||||
.tx_data_3_n (tx_data_n_loc[3]),
|
||||
.tx_data_3_p (tx_data_p_loc[3]),
|
||||
.tx_data_4_n (tx_data_n_loc[4]),
|
||||
.tx_data_4_p (tx_data_p_loc[4]),
|
||||
.tx_data_5_n (tx_data_n_loc[5]),
|
||||
.tx_data_5_p (tx_data_p_loc[5]),
|
||||
.tx_data_6_n (tx_data_n_loc[6]),
|
||||
.tx_data_6_p (tx_data_p_loc[6]),
|
||||
.tx_data_7_n (tx_data_n_loc[7]),
|
||||
.tx_data_7_p (tx_data_p_loc[7]),
|
||||
.tx_ref_clk (tx_ref_clk),
|
||||
.tx_data_0_n (tx_data_n[0]),
|
||||
.tx_data_0_p (tx_data_p[0]),
|
||||
.tx_data_1_n (tx_data_n[1]),
|
||||
.tx_data_1_p (tx_data_p[1]),
|
||||
.tx_data_2_n (tx_data_n[2]),
|
||||
.tx_data_2_p (tx_data_p[2]),
|
||||
.tx_data_3_n (tx_data_n[3]),
|
||||
.tx_data_3_p (tx_data_p[3]),
|
||||
.tx_data_4_n (tx_data_n[4]),
|
||||
.tx_data_4_p (tx_data_p[4]),
|
||||
.tx_data_5_n (tx_data_n[5]),
|
||||
.tx_data_5_p (tx_data_p[5]),
|
||||
.tx_data_6_n (tx_data_n[6]),
|
||||
.tx_data_6_p (tx_data_p[6]),
|
||||
.tx_data_7_n (tx_data_n[7]),
|
||||
.tx_data_7_p (tx_data_p[7]),
|
||||
.tx_ref_clk_0 (tx_ref_clk),
|
||||
.tx_ref_clk_4 (tx_ref_clk),
|
||||
.tx_sync_0 (tx_sync[NUM_LINKS-1:0]),
|
||||
.tx_sysref_0 (tx_sysref));
|
||||
|
||||
assign tx_data_p[JESD_L*NUM_LINKS-1:0] = tx_data_p_loc[JESD_L*NUM_LINKS-1:0];
|
||||
assign tx_data_n[JESD_L*NUM_LINKS-1:0] = tx_data_n_loc[JESD_L*NUM_LINKS-1:0];
|
||||
|
||||
// AD9161/2/4-FMC-EBZ works only in single link,
|
||||
// The FMC connector instead of SYNC1 has SYSREF connected to it
|
||||
assign tx_sysref_loc = (DEVICE_CODE == 3) ? tx_sync[1] : tx_sysref;
|
||||
|
|
Loading…
Reference in New Issue