diff --git a/tcl/combpm_gtwizard.tcl b/tcl/combpm_gtwizard.tcl index d22a0c85029632232dfc8cc357566df682e394c3..170b84b35a38c3cad3a60d5ebdae83aec7f1852b 100644 --- a/tcl/combpm_gtwizard.tcl +++ b/tcl/combpm_gtwizard.tcl @@ -1,15 +1,11 @@ # Create a GTWizard IP for one quad. +set quad_name "X0Y4" set module_name "combpm_gtwizard" -set quad_name X0Y4 -# Create IP -create_ip -name gtwizard_ultrascale -vendor xilinx.com -library ip -version 1.7 -module_name ${module_name} - -# Configure the IP -set_property -dict [list \ - CONFIG.CHANNEL_ENABLE {${quad_name}} \ - CONFIG.TX_MASTER_CHANNEL {${quad_name}} \ - CONFIG.RX_MASTER_CHANNEL {${quad_name}} \ +set gt_ip_config [ list \ + CONFIG.CHANNEL_ENABLE $quad_name \ + CONFIG.TX_MASTER_CHANNEL $quad_name \ + CONFIG.RX_MASTER_CHANNEL $quad_name \ CONFIG.TX_LINE_RATE {2.125} \ CONFIG.TX_PLL_TYPE {QPLL1} \ CONFIG.TX_REFCLK_FREQUENCY {156.2500001} \ @@ -42,8 +38,8 @@ set_property -dict [list \ CONFIG.RX_CC_K_0_1 {false} \ CONFIG.RX_CC_PERIODICITY {100} \ CONFIG.ENABLE_OPTIONAL_PORTS {rxcdrlock_out} \ - CONFIG.RX_REFCLK_SOURCE {${quad_name} clk1} \ - CONFIG.TX_REFCLK_SOURCE {${quad_name} clk1} \ + CONFIG.RX_REFCLK_SOURCE "$quad_name clk1" \ + CONFIG.TX_REFCLK_SOURCE "$quad_name clk1" \ CONFIG.LOCATE_TX_USER_CLOCKING {CORE} \ CONFIG.LOCATE_RX_USER_CLOCKING {CORE} \ CONFIG.LOCATE_COMMON {EXAMPLE_DESIGN} \ @@ -54,7 +50,15 @@ set_property -dict [list \ CONFIG.FREERUN_FREQUENCY {100} \ CONFIG.SECONDARY_QPLL_ENABLE {true} \ CONFIG.SECONDARY_QPLL_REFCLK_FREQUENCY {156.25} \ - ] [get_ips ${module_name}] + ] + +puts $gt_ip_config + +# Create IP +create_ip -name gtwizard_ultrascale -vendor xilinx.com -library ip -version 1.7 -module_name ${module_name} + +# Configure the IP +set_property -dict $gt_ip_config [get_ips ${module_name}] # If using 2 ports # CONFIG.CHANNEL_ENABLE {${quad_name} X0Y5} diff --git a/tcl/main.tcl b/tcl/main.tcl index 9e69f0761036edc13f29a69df4ee5e372dbea4a2..78cfc09c87ed5d4ab7e0c8645490eb06ac53f629 100644 --- a/tcl/main.tcl +++ b/tcl/main.tcl @@ -27,6 +27,11 @@ proc doOnCreate {} { variable Vhdl addSources Vhdl + # TODO sould probably get that part number from the project configuration + set fpga_part "xczu11eg-ffvc1760-2L-e" + set_property part ${fpga_part} [current_project] + set_property target_language VHDL [current_project] + # Create GT wizard IP source ../tcl/combpm_gtwizard.tcl }