06-05-2020 12:28 PM
Using a GTY - I switched the QPLL usage to a CPLL. I get this error in implementation:
[Place 30-754] Unroutable Placement! A BUFG_GT_SYNC and its driver are not placed in a routable site pair. The pair needs to be placed into specific sites in the same clock region in order to use the dedicated path between them.If this sub optimal condition is acceptable for this design, you may use the CLOCK_DEDICATED_ROUTE constraint in the .xdc file to demote this message to a WARNING. However, the use of this override is highly discouraged. These examples can be used directly in the .xdc file to override this clock rule.
The interface is the same - the RXOUTCLK is driving the fabric and the USRCLK pins. Why would this error occur?
06-05-2020 03:07 PM
Check to see if all BUFG_GT have the same control signals for CE and CLR.
The CPLL calibration logic will add one more BUFG_GT. It's probably that this new BUFG_GT does not have the same CE and CLR as your existing ones. If so, the wizard will insert an independent BUFG_GT_SYNC. When you have too many BUFG_GT_SYNC, it cannot fit in the same clock region, and thus the error.
Modify your existing BUFG_GT's CE/CLR pins to match the CPLL BUFG_GT CE/CLR.
06-05-2020 02:15 PM
When you refer to "switched the QPLL usage to a CPLL", did you regenerate the xci? Or how did you make the change?
The placement error likely comes from wrong clock connections.
06-05-2020 02:25 PM
I regenerated the output products if that’s what you mean.
the reference clock comes into refclk and goes out RXCLKOUT. They are the same for QPLL or CPLL. I didn’t change any ports.
06-05-2020 02:32 PM
06-05-2020 02:45 PM
I removed common - the error is in implementation. Synthesis passes fine - so xci ports isn’t an issue.
my question is the same - how can the clock routing be wrong if the clock paths did not change?
06-05-2020 03:07 PM
Check to see if all BUFG_GT have the same control signals for CE and CLR.
The CPLL calibration logic will add one more BUFG_GT. It's probably that this new BUFG_GT does not have the same CE and CLR as your existing ones. If so, the wizard will insert an independent BUFG_GT_SYNC. When you have too many BUFG_GT_SYNC, it cannot fit in the same clock region, and thus the error.
Modify your existing BUFG_GT's CE/CLR pins to match the CPLL BUFG_GT CE/CLR.