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# 5106

2.1i Floorplanner - PROHIBIT constraints are not supported.

Description

Keywords: Prohibit, Floorplanner, 1.5i, 2.1i, 3.1i

Urgency: Standard

General Description: Prohibit Constraints placed in the UCF filewill be ignored by the 2.1i Floorplanner. In the Floorplanner, thisallows logic to be placed in prohibited areas. Currently it isthe responsibility of the user to not place logic in prohibitedlocations within the Floorplanner.

When the design is implemented using the floorplan files,the PROHIBIT constraints in the UCF file are ignored. Ifthe IOB locations are not specified in the floorplan andthe design is re-implemented using the floorplan file, IOBscould be placed in locations that are listed as prohibitedin the UCF file.

Solution

1

In version 3.1i, the user can use the Floorplan -> Prohibitconstraint to prohibit locations in the floorplan for thedesign. Alternatively, the user can read in the constraintsfrom the UCF file using the File -> Read Constraints commandfrom within the Floorplanner. This will annotate any placementconstraints in the UCF file to the Floorplan (including PROHIBITconstraints).

2

Another way to get around this problem is to manually move the IOB locations that may be in prohibited areas to non-prohibited areas in the Floorplanner. Saving this floorplan will preserve the IOB locations.

3

To resolve this issue, the design can be run without the floorplan file (so that the PROHIBIT constraints are not ignored). The design can then be brought in to the Floorplanner and the Floorplan -> Replace All With Placement option will ensure that the IOBs are placed in non-prohibited locations. The user can then remove/adjust logic as desired and save the floorplan. By using this technique, the IOBs will be locked to locations that are not prohibited in the floorplan file.

4

Another possible workaround to this issue is to manually edit the <design>.mfp file. This is the file that is produced by the Flooplanner when the floorplan is saved. To do this:

1. Floorplan the desired logic and save the floorplan2. Open the <design>.mfp file in a text editor3. Add the PROHIBIT constraints to the end of the .mfp file with the following syntax (for example to prohibit P10): PROHIBIT P10 ;4. Run the tools as usual through the design flow

NOTE : This method is recommended only if no other method will resolve the issue. It is not recommended for the user to manually edit the .mfp file as a part of the normal design flow.