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

13.1 Place - What is a placement cost table and how should it be used?


A "placement cost table" is used to run multiple passes on a design.

What are cost tables and how do they work?

How should I use them for my design?


A cost table is nothing more than a random seed to placement.

Its affect on placement allows for a multi-pass search through the possible distribution of results quality.

This distribution of possible results approximates a Bell Curve where there are few exceptionally good results, few exceptionally bad results, and many results with average QOR.

Cost tables can be used in various ways:

Searching for the Best Result
Cost tables are most often used to find the optimal result that allows an aggressive design to meet timing requirements.
Once the best cost table for that design is found, it can be reused as long as design changes are small and good QOR continues.
If not, it is necessary to search the Bell Curve for a new best cost table.

Avoiding the Worst Result
Cost tables can also be used to avoid poor results.
For one in every 100 designs, the default cost table will happen to be the worst cost table.
If the design does not have aggressive timing requirements but is getting poor results, trying another cost table may correct the problem.

Comparing the Relative Quality of Two Designs
Cost tables can be used to compare the relative quality of two design revisions.
If compared at only the default cost table, it is not possible to accurately judge the results because it is not known where on the Bell Curve of possible results each test fell.
If each design is run with ten cost tables it is possible to compare the overall results and get a more accurate picture of the relative design quality.

Avoiding Rare Tool Issues
If a placement run at the default cost table runs into a rarely seen placement bug, it might be possible to avoid the bug by running with a different cost table.

Determining Whether a Particular Effect is Random or Consistent
Xilinx sometimes receive comments such as "All I did was change the net name and now my design does not meet timing" or "I upgraded from version 11.X to 11.Y and now the design fails to fit".
Each of these changes can be expected to have a random effect on the QOR that is similar to changing the cost table.
Changing a net name changes the result of an alphabetic sort which leads to a different order of processing.
To test whether a certain change has a consistent effect (good or bad) on QOR, run ten cost tables each way and compare the results.
AR# 35534
Date Created 05/07/2010
Last Updated 02/09/2015
Status Active
Type General Article
  • Spartan-3
  • Spartan-3 XA
  • Spartan-3A
  • More
  • Spartan-3A DSP
  • Spartan-3AN
  • Spartan-3E
  • Spartan-6 LX
  • Spartan-6 LXT
  • Less
  • ISE Design Suite - 11.1
  • ISE Design Suite - 11.2
  • ISE Design Suite - 11.3
  • More
  • ISE Design Suite - 11.4
  • ISE Design Suite - 11.5
  • ISE Design Suite - 12.1
  • ISE Design Suite - 12.2
  • ISE Design Suite - 12.3
  • ISE Design Suite - 12.4
  • ISE Design Suite - 13.1
  • Less