I understand that in many cases the router will attempt to delay my data path to avoid hold violations. Under what circumstances will the router not try to delay these routes?
The hold time router is an algorithm that will try to delay the data path as long as this can be done without causing setup violations, and the source and load of the net are separated sufficiently to prevent routing congestion.
The hold time router will be called in the following situations:
-When the router effort level is set to standard or medium and the total timing score of the hold time violations is less than 200000.
-When the router effort level is set to high and the total timing score of the hold time violations is less than 500000.
-At any combination of effort level and hold time score by setting the environment variable RT_FORCE_HOLD_ROUTER.
For general information about setting the ISE environment variables, see (Xilinx Answer 11630).