In a project flow without any IP, all the constraints are located in a constraints set. By default, the order of the XDC files (or Tcl scripts) displayed in the Vivado IDE defines the read sequence used by the tool when loading an elaborated or synthesized design into memory. The file at the top of the list is read in first, and the bottom one is read in last. You can change the order by simply selecting the file in the IDE, and moving it to the desired place in the list.
For example, in the following figure, the file wave_gen_pin.xdc was moved to before the file wave_gen_timing.xdc by using drag and drop.
The equivalent Tcl command is:
reorder_files -fileset constrs_1 -before [get_files wave_gen_timing.xdc] \ [get_files wave_gen_pins.xdc]
File | Order (Before) | Order (After) |
---|---|---|
wave_gen_timing.xdc | 1 | 2 |
wave_gen_pins.xdc | 2 | 1 |
In Non-Project Mode, the sequence of the read_xdc calls determine the order in which the constraint files are evaluated.