11# The main clocks are all autogenerated by the Xilinx IP
2- # mmcm_clkout1 is the 22Mhz clock from the DDR4 IP used to drive wally and the AHBLite Bus.
3- # mmcm_clkout0 is the clock output of the DDR4 memory interface / 4.
4- # This clock is not used by wally or the AHBLite Bus. However it is used by the AXI BUS on the DD4 IP.
2+ # clk_out3_xlnx_mmcm is the 20Mhz clock from the mmcm used to drive wally and the AHB Bus.
3+ # mmcm_clkout0 is the clock output of the DDR3 memory interface / 4.
4+ # This clock is not used by wally or the AHB Bus. However it is used by the AXI BUS on the DD3 IP.
55
6- create_generated_clock -name CLKDiv64_Gen -source [get_pins wallypipelinedsoc/uncore.uncore/sdc.SDC/sd_top/slow_clk_divider/clkMux/I0] -multiply_by 1 -divide_by 2 [get_pins wallypipelinedsoc/uncore.uncore/sdc.SDC/sd_top/slow_clk_divider/clkMux/O]
6+ create_generated_clock -name CLKDiv64_Gen -source [get_pins wallypipelinedsoc/uncore.uncore/sdc.SDC/sd_top/slow_clk_divider/clkMux/I0] -multiply_by 1 -divide_by 1 [get_pins wallypipelinedsoc/uncore.uncore/sdc.SDC/sd_top/slow_clk_divider/clkMux/O]
7+
8+ # #### clock #####
9+ set_property PACKAGE_PIN E3 [get_ports {default_100mhz_clk}]
10+ set_property IOSTANDARD LVCMOS33 [get_ports {default_100mhz_clk}]
711
812# #### GPI ####
9- set_property PACKAGE_PIN D9 [get_ports {GPI[0]}]
13+ set_property PACKAGE_PIN A8 [get_ports {GPI[0]}]
1014set_property PACKAGE_PIN C9 [get_ports {GPI[1]}]
1115set_property PACKAGE_PIN B9 [get_ports {GPI[2]}]
1216set_property PACKAGE_PIN B8 [get_ports {GPI[3]}]
1317set_property IOSTANDARD LVCMOS33 [get_ports {GPI[3]}]
1418set_property IOSTANDARD LVCMOS33 [get_ports {GPI[2]}]
1519set_property IOSTANDARD LVCMOS33 [get_ports {GPI[1]}]
1620set_property IOSTANDARD LVCMOS33 [get_ports {GPI[0]}]
17- set_input_delay -clock [get_clocks mmcm_clkout1 ] -min -add_delay 2 .000 [get_ports {GPI[*]}]
18- set_input_delay -clock [get_clocks mmcm_clkout1 ] -max -add_delay 2 .000 [get_ports {GPI[*]}]
21+ set_input_delay -clock [get_clocks clk_out3_xlnx_mmcm ] -min -add_delay 0 .000 [get_ports {GPI[*]}]
22+ set_input_delay -clock [get_clocks clk_out3_xlnx_mmcm ] -max -add_delay 0 .000 [get_ports {GPI[*]}]
1923set_max_delay -from [get_ports {GPI[*]}] 10.000
2024
2125# #### GPO ####
@@ -24,77 +28,48 @@ set_property PACKAGE_PIN F6 [get_ports {GPO[1]}]
2428set_property PACKAGE_PIN E1 [get_ports {GPO[2]}]
2529set_property PACKAGE_PIN G3 [get_ports {GPO[4]}]
2630set_property PACKAGE_PIN J4 [get_ports {GPO[3]}]
27- set_property IOSTANDARD LVCMOS12 [get_ports {GPO[4]}]
28- set_property IOSTANDARD LVCMOS12 [get_ports {GPO[3]}]
29- set_property IOSTANDARD LVCMOS12 [get_ports {GPO[2]}]
30- set_property IOSTANDARD LVCMOS12 [get_ports {GPO[1]}]
31- set_property IOSTANDARD LVCMOS12 [get_ports {GPO[0]}]
31+ set_property IOSTANDARD LVCMOS33 [get_ports {GPO[4]}]
32+ set_property IOSTANDARD LVCMOS33 [get_ports {GPO[3]}]
33+ set_property IOSTANDARD LVCMOS33 [get_ports {GPO[2]}]
34+ set_property IOSTANDARD LVCMOS33 [get_ports {GPO[1]}]
35+ set_property IOSTANDARD LVCMOS33 [get_ports {GPO[0]}]
3236set_max_delay -to [get_ports {GPO[*]}] 10.000
33- set_output_delay -clock [get_clocks mmcm_clkout1 ] -min -add_delay 0.000 [get_ports {GPO[*]}]
34- set_output_delay -clock [get_clocks mmcm_clkout1 ] -max -add_delay 0.000 [get_ports {GPO[*]}]
37+ set_output_delay -clock [get_clocks clk_out3_xlnx_mmcm ] -min -add_delay 0.000 [get_ports {GPO[*]}]
38+ set_output_delay -clock [get_clocks clk_out3_xlnx_mmcm ] -max -add_delay 0.000 [get_ports {GPO[*]}]
3539
3640
3741# #### UART #####
3842# *** IOSTANDARD is probably wrong
3943set_property PACKAGE_PIN A9 [get_ports UARTSin]
40- set_property PACKAGE_PIN D0 [get_ports UARTSout]
41- set_max_delay -from [get_ports UARTSin] 10 .000
42- set_max_delay -to [get_ports UARTSout] 10 .000
44+ set_property PACKAGE_PIN D10 [get_ports UARTSout]
45+ set_max_delay -from [get_ports UARTSin] 14 .000
46+ set_max_delay -to [get_ports UARTSout] 14 .000
4347set_property IOSTANDARD LVCMOS33 [get_ports UARTSin]
44- set_property IOSTANDARD LVCMOS3 [get_ports UARTSout]
45- set_property DRIVE 6 [get_ports UARTSout]
46- set_input_delay -clock [get_clocks mmcm_clkout1 ] -min -add_delay 2 .000 [get_ports UARTSin]
47- set_input_delay -clock [get_clocks mmcm_clkout1 ] -max -add_delay 2 .000 [get_ports UARTSin]
48- set_output_delay -clock [get_clocks mmcm_clkout1 ] -min -add_delay 0.000 [get_ports UARTSout]
49- set_output_delay -clock [get_clocks mmcm_clkout1 ] -max -add_delay 0.000 [get_ports UARTSout]
48+ set_property IOSTANDARD LVCMOS33 [get_ports UARTSout]
49+ set_property DRIVE 4 [get_ports UARTSout]
50+ set_input_delay -clock [get_clocks clk_out3_xlnx_mmcm ] -min -add_delay 0 .000 [get_ports UARTSin]
51+ set_input_delay -clock [get_clocks clk_out3_xlnx_mmcm ] -max -add_delay 0 .000 [get_ports UARTSin]
52+ set_output_delay -clock [get_clocks clk_out3_xlnx_mmcm ] -min -add_delay 0.000 [get_ports UARTSout]
53+ set_output_delay -clock [get_clocks clk_out3_xlnx_mmcm ] -max -add_delay 0.000 [get_ports UARTSout]
5054
5155
5256# #### reset #####
5357# ************** reset is inverted
54- set_input_delay -clock [get_clocks default_250mhz_clk1_0_p] -min -add_delay 2.000 [get_ports reset]
55- set_input_delay -clock [get_clocks default_250mhz_clk1_0_p] -max -add_delay 2.000 [get_ports reset]
56- set_input_delay -clock [get_clocks mmcm_clkout0] -min -add_delay 0.000 [get_ports reset]
57- set_input_delay -clock [get_clocks mmcm_clkout0] -max -add_delay 0.000 [get_ports reset]
58- set_input_delay -clock [get_clocks mmcm_clkout1] -min -add_delay 0.000 [get_ports reset]
59- set_input_delay -clock [get_clocks mmcm_clkout1] -max -add_delay 0.000 [get_ports reset]
60- set_max_delay -from [get_ports reset] 15.000
61- set_false_path -from [get_ports reset]
62- set_property PACKAGE_PIN C2 [get_ports {reset}]
63- set_property IOSTANDARD LVCMOS33 [get_ports {reset}]
64-
65-
66-
67- # #### cpu_reset #####
68- # ***********
69- set_property PACKAGE_PIN AV36 [get_ports {cpu_reset}]
70- set_property IOSTANDARD LVCMOS12 [get_ports {cpu_reset}]
71- set_output_delay -clock [get_clocks mmcm_clkout1] -min -add_delay 0.000 [get_ports {cpu_reset}]
72- set_output_delay -clock [get_clocks mmcm_clkout1] -max -add_delay 0.000 [get_ports {cpu_reset}]
73-
74-
75- # #### calib #####
76- # **********
77- set_property PACKAGE_PIN BA37 [get_ports calib]
78- set_property IOSTANDARD LVCMOS12 [get_ports calib]
79- set_output_delay -clock [get_clocks mmcm_clkout1] -min -add_delay 0.000 [get_ports calib]
80- set_output_delay -clock [get_clocks mmcm_clkout1] -max -add_delay 20.000 [get_ports calib]
81- set_max_delay -from [get_pins xlnx_ddr4_c0/inst/u_ddr4_mem_intfc/u_ddr_cal_top/calDone_gated_reg/C] -to [get_ports calib] 50.000
82-
58+ set_input_delay -clock [get_clocks clk_out3_xlnx_mmcm] -min -add_delay 2.000 [get_ports resetn]
59+ set_input_delay -clock [get_clocks clk_out3_xlnx_mmcm] -max -add_delay 2.000 [get_ports resetn]
60+ set_max_delay -from [get_ports resetn] 15.000
61+ set_false_path -from [get_ports resetn]
62+ set_property PACKAGE_PIN C2 [get_ports {resetn}]
63+ set_property IOSTANDARD LVCMOS33 [get_ports {resetn}]
8364
84- # #### ahblite_resetn #####
85- # ***************
86- set_property PACKAGE_PIN AU37 [get_ports {ahblite_resetn}]
87- set_property IOSTANDARD LVCMOS12 [get_ports {ahblite_resetn}]
88- set_output_delay -clock [get_clocks mmcm_clkout1] -min -add_delay 0.000 [get_ports {ahblite_resetn}]
89- set_output_delay -clock [get_clocks mmcm_clkout1] -max -add_delay 0.000 [get_ports {ahblite_resetn}]
9065
66+ set_input_delay -clock [get_clocks clk_out3_xlnx_mmcm] -min -add_delay 2.000 [get_ports south_reset]
67+ set_input_delay -clock [get_clocks clk_out3_xlnx_mmcm] -max -add_delay 2.000 [get_ports south_reset]
68+ set_max_delay -from [get_ports south_reset] 15.000
69+ set_false_path -from [get_ports south_reset]
70+ set_property PACKAGE_PIN D9 [get_ports {south_reset}]
71+ set_property IOSTANDARD LVCMOS33 [get_ports {south_reset}]
9172
92- # #### south_rst #####
93- # ***********************
94- set_property PACKAGE_PIN BE22 [get_ports south_rst]
95- set_property IOSTANDARD LVCMOS18 [get_ports south_rst]
96- set_input_delay -clock [get_clocks mmcm_clkout1] -min -add_delay 2.000 [get_ports south_rst]
97- set_input_delay -clock [get_clocks mmcm_clkout1] -max -add_delay 2.000 [get_ports south_rst]
9873
9974
10075# #### SD Card I/O #####
@@ -103,7 +78,7 @@ set_property PACKAGE_PIN D4 [get_ports {SDCDat[3]}]
10378set_property PACKAGE_PIN D2 [get_ports {SDCDat[2]}]
10479set_property PACKAGE_PIN E2 [get_ports {SDCDat[1]}]
10580set_property PACKAGE_PIN F4 [get_ports {SDCDat[0]}]
106- set_property PACKAGE_PIN F2 [get_ports SDCCLK]
81+ set_property PACKAGE_PIN F3 [get_ports SDCCLK]
10782set_property PACKAGE_PIN D3 [get_ports {SDCCmd}]
10883
10984set_property IOSTANDARD LVCMOS33 [get_ports {SDCDat[3]}]
@@ -132,8 +107,8 @@ set_output_delay -clock [get_clocks CLKDiv64_Gen] -max -add_delay 6.000 [get_por
132107set_output_delay -clock [get_clocks CLKDiv64_Gen] 0.000 [get_ports SDCCLK]
133108
134109# *********************************
135- set_property DCI_CASCADE {64} [get_iobanks 65]
136- set_property INTERNAL_VREF 0.9 [get_iobanks 65]
110+ # set_property DCI_CASCADE {64} [get_iobanks 65]
111+ # set_property INTERNAL_VREF 0.9 [get_iobanks 65]
137112
138113# ddr3
139114
@@ -237,15 +212,8 @@ set_properity PACKAGE_PIN R5 [get_ports ddr3_odt[0]]
237212set_properity PACKAGE_PIN U8 [get_ports ddr3_cs_n[0]]
238213
239214
240-
241- set_max_delay -datapath_only -from [get_pins xlnx_ddr4_c0/inst/u_ddr4_mem_intfc/u_ddr_cal_top/calDone_gated_reg/C] -to [get_pins xlnx_proc_sys_reset_0/U0/EXT_LPF/lpf_int_reg/D] 10.000
242-
243-
244- set_output_delay -clock [get_clocks mmcm_clkout1] -min -add_delay 0.000 [get_ports c0_ddr4_reset_n]
245- set_output_delay -clock [get_clocks mmcm_clkout1] -max -add_delay 20.000 [get_ports c0_ddr4_reset_n]
246-
247-
248-
249- set_max_delay -from [get_pins {xlnx_ddr4_c0/inst/u_ddr4_mem_intfc/u_ddr_cal_top/cal_RESET_n_reg[0]/C}] -to [get_ports c0_ddr4_reset_n] 50.000
215+ # **** may have to bring this one back
216+ # set_max_delay -datapath_only -from [get_pins xlnx_ddr4_c0/inst/u_ddr4_mem_intfc/u_ddr_cal_top/calDone_gated_reg/C] -to [get_pins xlnx_proc_sys_reset_0/U0/EXT_LPF/lpf_int_reg/D] 20.000
250217
251218
219+ set_property CLOCK_DEDICATED_ROUTE ANY_CMT_COLUMN [get_nets wallypipelinedsoc/uncore.uncore/sdc.SDC/clockgater/CLK]
0 commit comments