A constraint set is a list of constraint files that can be applied to your design in Project Mode. The set contains design constraints captured in XDC or Tcl files.
Allowed Constraint Set Structures
The following constraint set structures are allowed:
- Multiple constraint files within a constraint set
- Constraint sets with separate physical and timing constraint files
- A master constraint file
- A new constraint file that accepts constraint changes
- Multiple constraint sets
Multiple Constraint Sets Are Allowed
You can have multiple constraint sets for a project. Multiple constraint sets allow you to use different implementation runs to test different approaches.
For example, you can have one constraint set for synthesis, and a second constraint set for implementation. Having two constraint sets allows you to experiment by applying different constraints during synthesis, simulation, and implementation.
Organizing design constraints into multiple constraint sets can help you:
- Target various Xilinx devices for the same project. Different physical and timing constraints might be needed for different target devices.
- Perform what-if design exploration. Use constraint sets to explore various scenarios for floorplanning and over-constraining the design.
- Manage constraint changes. Override master constraints with local changes in a separate constraint file.
report_methodologyon the synthesized design. Fix problematic constraints before implementation!
For more information on defining and working with constraints that affect placement and routing, see this link in the Vivado Design Suite User Guide: Using Constraints (UG903).