All the constraints in the primary constraint set (constrs_1 by default) will be applied through synthesis and implementation of the parent run. All constraints for the static portion of the implemented parent run are contained within that locked static checkpoint so there is no need to reapply these static constraints for subsequent child runs. While the DFX Wizard shows constraints sets specified for child runs (default or any other constraint set), these child runs do not apply constraints unless explicitly requested in each run. Constraints specific to any Reconfigurable Module must be applied for any child run, whether they are constraints in the default set or any new set.
If constraints unique to RMs are required, they must be applied in different XDC sources scoped to that module and applied in a new constraint set for the applicable child run(s). Follow these steps to add and associate RM-level constraints.
- Create a new Constraint Set. This can be done when adding or editing
constraints – use the Specify Constraint Set
pull down to select Create Constraint Set.
Give this set a unique name and add XDC files with constraints specific to the RMs
for a target configuration. Creating a new Constraint Set
The new constraint set and any XDC files within it will be shown in the design sources window. Leave the primary constraint set as the active set. In the example below, note that constraints files for static information such as top-level IO, global clock definitions, and the reconfigurable Pblocks are only listed in the primary active constraint set.
- Run the DFX Wizard and step through to the Edit Configuration
Runs page. Add or modify child configuration runs to select the
appropriate Constraint Set for that run. Design Runs will be added or modified upon
clicking the Finish button.
The child configuration design run will show the new constraint set in the Design Runs window.
- Right-click the child Design Run and select Implementation Run
Properties. In this window, ensure that the check-box for the
APPLY_CONSTRSET property is checked. This ensures this
new set of constraints is applied during this implementation run.
- Expand the new Constraint Set (if necessary) to view all the XDC files added. For
each, select the file to see the Source Properties. The
PROCESSING_ORDER can be set to
LATE to ensure these constraints are applied after
everything else has been considered. For improved portability of RM sources,
instance references within the XDC can be scoped to that level (so there is no need
to specify the full hierarchical path from top) if the
SCOPED_TO_CELLS property is set to the hierarchical path
to the Reconfigurable Partition. This also allows you to more easily provide an XDC
per RM for designs with multiple RPs for constraints that do not require unique
physical location information.