Several cases have been seen where designs encountered routing issues related to GTH clocks which drive fabric loads (such as slice FFs) directly without an instantiated BUFHCE. While the configuration can be supported by the router which is able to insert a BUFHCE route-thru, the placer is not able to account properly for the BUFHCE usage and it is possible for the BUFHCEs to be oversubscribed in a highly utilized clock region.
Consider the case where the clock placer allocates 12 global clock domains to a clock region and then one of the GTH fabric loads also gets placed in the same clock region. Since the GTH clock needs to use a BUFHCE route-thru (the same as the BUFGs), the BUFHCEs become over-subscribed because 13 are needed when only 12 are available. One of the 13 clocks fails to route successfully.
The supported configuration is to instantiate a BUFHCE between the GTH and the fabric load, then the clock placer can account for that BUFHCE utilization and allocate only 11 global clocks to that clock region for the above scenario.
A CR is under investigation to have a pre-placement DRC check catch this unsupported configuration. The CR has not yet been scheduled to be fixed.