As in Project Mode, if an IP delivers XDC constraints, the system automatically processes and adds them to the in-memory design. For this design, you disable the XDC files included with the Clock Wizard IP. You apply constraints from the top-level XDC file instead. The Clock Wizard IP has not had the output products generated yet. First, you need to generate the output products, which include the XDC files.
When generating the output products for an included XCI file IP, decide whether to use an out-of-context flow, which includes creating a synthesis Design Checkpoint (DCP). Alternatively, choose to let the IP be synthesized as part of the top-level design.
Because you want to disable the use of an XDC for the Clocking wizard, you need to configure the IP accordingly. Consequently, you also need to ensure that the IP does not use a DCP.
- Add the following to your script to configure the IP to not use a Synthesis
Design
Checkpoint:
set_property generate_synth_checkpoint false [get_files clk_wiz_0.xci]Now when synthesis completes at the top level, the system uses the RTL output products, and it does not expect a DCP. Unlike in a Project Flow, you must manually create output products, as they are not automatically generated as needed.
- Add the
generate_targetcommand to your Tcl script:generate_target all [get_ips clk_wiz_0]XCI file from the source IP repository into a local directory, the system writes the output products to the local directory.
Tip: To find out what output products an IP supports, use either the report_property command on the IP, orget_propertyto get theKNOWN_TARGETSproperty from the IP. For example, do not add these to your script:report_property [get_ips clk_wiz_0] get_property KNOWN_TARGETS [get_ips clk_wiz_0]You can generate multiple output products by passing a list to the command, such as
{synthesis instantiation_template}.To disable the XDC files delivered with the Clock Wizard, you need the names of the files. You can query the XDC file(s) that are delivered with an IP, by using the
get_filescommand with the-of_objectsand-filteroptions. - To capture the XDC file names of the Clock Wizard IP in a Tcl variable, add the
following lines to your
script:
set clk_wiz_xdc [get_files -of_objects \ [get_files clk_wiz_0.xci] -filter {FILE_TYPE == XDC}]This returns the names of the XDC files delivered with the Clock Wizard.
- To disable the XDC files, add this line to your script as
well:
set_property is_enabled false [get_files $clk_wiz_xdc]Your script disables the XDC files delivered with
clk_wizIP.To check what XDC files are evaluated and in what order, use the
report_compile_ordercommand with the-constraintsoption.