We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 46553

PlanAhead - Multiple constraints entered on one line of a UCF file are written in a new format, the constraints are written to the run directory


PlanAhead tool changes the format of a multi-constraint line from a source .ucf file when it is written to the .ucf in the run directories.

Single line constraints that include, LOC, IOSTANDARD and DIFF term constraints are getting changed into multiple line constraints.

For example, the original top.ucf line has this constraint:

NET CLK_N LOC = "K22" | DIFF_TERM = "TRUE" | IOSTANDARD = "LVDS_25"; # This is a comment on K22, and should be at the end of the line

This gets changed by PlanAhead into:

# This is a comment on K22, and should be at the end of the line
NET "CLK_N" LOC = K22;


PlanAhead tool does not change the original constraint file, but writes out a new version in the runs directory.

The constraints should remain valid. However, users have indicated the following concerns:

  • The command line is only written once and does not seem to be associated with subsequent constraints that came from the same line.
  • Source control software may flag a warning/error if the UCF in the runs directory is compared with the original source UCF. Users should avoid source control settings that would allow such a comparison. Even though the files will have the same name, they are different files if separate locations and expected to have differences.

If the original UCF file is required to be used for implementation, a user can pass it to NGDBUILD using the -uc switch in the "more options" field under Translate (Ngdbuild) in the Implementation Project Settings. To do this, the user should also remove the UCF from the PlanAhead project sources which will prevent the constraints from showing in the design views (Note thatresults of the constraints will be properly displayed, but PlanAhead associates the results back to a constraint since it only passes the file to NGDBUILD and does not load the constraints itself)

AR# 46553
Date Created 12/14/2012
Last Updated 02/27/2013
Status Active
Type General Article
  • PlanAhead