From 535b62f6a48e52266ac47b7fbe0245991bf5f938 Mon Sep 17 00:00:00 2001 From: Romain Broucquart <romain.broucquart@synchrotron-soleil.fr> Date: Fri, 15 Apr 2022 16:58:01 +0200 Subject: [PATCH] Fix GT Wizard creation * Put configuration in a variable to print it * Put the quad_name in a variable, not fully used by now. * Set the target FPGA in the TCL. --- tcl/combpm_gtwizard.tcl | 28 ++++++++++++++++------------ tcl/main.tcl | 5 +++++ 2 files changed, 21 insertions(+), 12 deletions(-) diff --git a/tcl/combpm_gtwizard.tcl b/tcl/combpm_gtwizard.tcl index d22a0c8..170b84b 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 9e69f07..78cfc09 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 } -- GitLab