- Fixed 10GigE firmware communication issues and sequence errors for TX - Multiple changes to help ease timing closure - Cleaned up build scripts - Switched to Xilinx ISE 14.7 as the default build tool for X300 Original-commit: 64d71dcbc5fa6790385b288de25224d386b047b0
46 lines
2.2 KiB
Plaintext
46 lines
2.2 KiB
Plaintext
|
|
NET "FPGA_CLK_p" TNM_NET = "FPGA_CLK_p";
|
|
TIMESPEC "TS_FPGA_CLK_p" = PERIOD "FPGA_CLK_p" 5000 ps HIGH 50%;
|
|
|
|
NET "FPGA_CLK_n" TNM_NET = "FPGA_CLK_n";
|
|
TIMESPEC TS_FPGA_CLK_n = PERIOD "FPGA_CLK_n" TS_FPGA_CLK_p HIGH 50%;
|
|
|
|
NET "FPGA_REFCLK_10MHz_p" TNM_NET = "FPGA_REFCLK_10MHz_p";
|
|
TIMESPEC "TS_FPGA_REFCLK_10MHz_p" = PERIOD "FPGA_REFCLK_10MHz_p" 100 ns HIGH 50%;
|
|
|
|
NET "FPGA_REFCLK_10MHz_n" TNM_NET = "FPGA_REFCLK_10MHz_n";
|
|
TIMESPEC TS_FPGA_REFCLK_10MHz_n = PERIOD "FPGA_REFCLK_10MHz_n" TS_FPGA_REFCLK_10MHz_p HIGH 50%;
|
|
|
|
NET "FPGA_125MHz_CLK" TNM_NET = "FPGA_125MHz_CLK";
|
|
TIMESPEC "TS_FPGA_125MHz_CLK" = PERIOD "FPGA_125MHz_CLK" 8000 ps HIGH 50 %;
|
|
|
|
NET "DB0_ADC_DCLK_P" TNM_NET = "DB0_ADC_DCLK_P";
|
|
TIMESPEC "TS_DB0_ADC_DCLK_P" = PERIOD "DB0_ADC_DCLK_P" 5000 ps HIGH 50 %;
|
|
#OFFSET = IN 0.75ns VALID 1.5nS BEFORE "DB0_ADC_DCLK_P" RISING;
|
|
#OFFSET = IN 0.75ns VALID 1.5nS BEFORE "DB0_ADC_DCLK_P" FALLING;
|
|
NET "DB0_ADC_DCLK_N" TNM_NET = DB0_ADC_DCLK_N;
|
|
TIMESPEC TS_DB0_ADC_DCLK_N = PERIOD "DB0_ADC_DCLK_N" TS_DB0_ADC_DCLK_P HIGH 50%;
|
|
|
|
NET "DB1_ADC_DCLK_P" TNM_NET = "DB1_ADC_DCLK_P";
|
|
TIMESPEC "TS_DB1_ADC_DCLK_P" = PERIOD "DB1_ADC_DCLK_P" 5000 ps HIGH 50 %;
|
|
#OFFSET = IN 0.75ns VALID 1.5nS BEFORE "DB1_ADC_DCLK_P" RISING;
|
|
#OFFSET = IN 0.75ns VALID 1.5nS BEFORE "DB1_ADC_DCLK_P" FALLING;
|
|
NET "DB1_ADC_DCLK_N" TNM_NET = DB1_ADC_DCLK_N;
|
|
TIMESPEC TS_DB1_ADC_DCLK_N = PERIOD "DB1_ADC_DCLK_N" TS_DB1_ADC_DCLK_P HIGH 50%;
|
|
|
|
NET "bus_clk" TNM = bus_clk_grp;
|
|
NET "ioport2_clk" TNM = ioport2_clk_grp;
|
|
NET "rio40_clk" TNM = rio40_clk_grp;
|
|
|
|
TIMESPEC TS_BUS_CLK_TO_IOPORT2_CLK_FALEPATH = FROM bus_clk_grp TO ioport2_clk_grp TIG;
|
|
TIMESPEC TS_IOPORT2_CLK_TO_BUS_CLK_FALEPATH = FROM ioport2_clk_grp TO bus_clk_grp TIG;
|
|
|
|
TIMESPEC TS_IOPORT2_CLK_TO_RIO40_CLK_FALEPATH = FROM ioport2_clk_grp TO rio40_clk_grp TIG;
|
|
TIMESPEC TS_RIO40_CLK_TO_IOPORT2_CLK_FALEPATH = FROM rio40_clk_grp TO ioport2_clk_grp TIG;
|
|
|
|
# FPGA_CLK_p/n is externally phase shifted to allow for crossing from the ADC clock domain
|
|
# to the radio_clk (aka FPGA_CLK_p/n) clock domain. To ensure this timing is consistent,
|
|
# lock the locations of the MMCM and BUFG to generate radio_clk.
|
|
INST "radio_clk_gen/mmcm_adv_inst" LOC = MMCME2_ADV_X0Y0;
|
|
INST "radio_clk_gen/clkout1_buf" LOC = BUFGCTRL_X0Y8;
|