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.
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, the 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.