UPGRADE YOUR BROWSER

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

2014.4 Vivado - CRITICAL WARNING: ​[Vivado 12-1411] Cannot set LOC property of ports, Terminal clkn has conflicting location from shape expansion

Description

I am receiving the following critical warning in the design initialization of my Vivado Implementation:
 
CRITICAL WARNING: [Vivado 12-1411] Cannot set LOC property of ports, Terminal clkn has conflicting location from shape expansion (ILOGIC_X1Y74 FIXED, ILOGICE2.D2OBYP_SRC) vs original (IOB_X1Y73 FIXED, IOB18S.PAD) [.../ybd.xdc:4]
Resolution: Verify the location constraints for differential ports are correctly specified in your constraints. The Site type should be of form: IO_LxxP for P-side, and IO_LxxN for N-side (Neg Diff Pair) 

And then I see the following error in place_design:

ERROR: [Place 30-148] Unroutable Placement! A IBUFDS / MMCM component pair is not placed in a routable site pair. The IBUFDS component can use the dedicated path between the IBUFDS and the MMCM if both are placed in the same clock region. 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.
< set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets clk] >

IBUFDS_GTE2_inst (IBUFDS_GTE2.O) is provisionally placed by clockplacer on IBUFDS_GTE2_X0Y16
instance_name1/inst/mmcm_adv_inst (MMCME2_ADV.CLKIN1) is provisionally placed by clockplacer on MMCME2_ADV_X0Y8
instance_name2/inst/mmcm_adv_inst (MMCME2_ADV.CLKIN1) is provisionally placed by clockplacer on MMCME2_ADV_X0Y7

The above error could possibly be related to other connected instances. Following is a list of 
all the related clock rules and their respective instances.

Clock Rule: rule_mmcm_bufg
Status: PASS 
Rule Description: An MMCM driving a BUFG must be placed on the same half side (top/bottom) of the device
instance_name1/inst/mmcm_adv_inst (MMCME2_ADV.CLKFBOUT) is provisionally placed by clock placer on MMCME2_ADV_X0Y8
instance_name1/inst/clkf_buf (BUFG.I) is provisionally placed by clock placer on BUFGCTRL_X0Y31

Clock Rule: rule_mmcm_bufg
Status: PASS 
Rule Description: An MMCM driving a BUFG must be placed on the same half side (top/bottom) of the device
instance_name1/inst/mmcm_adv_inst (MMCME2_ADV.CLKOUT0) is provisionally placed by clock placer on MMCME2_ADV_X0Y8
instance_name1/inst/clkout1_buf (BUFG.I) is provisionally placed by clock placer on BUFGCTRL_X0Y30

Clock Rule: rule_mmcm_bufg
Status: PASS 
Rule Description: An MMCM driving a BUFG must be placed on the same half side (top/bottom) of the device
instance_name2/inst/mmcm_adv_inst (MMCME2_ADV.CLKFBOUT) is provisionally placed by clock placer on MMCME2_ADV_X0Y7
instance_name2/inst/clkf_buf (BUFG.I) is provisionally placed by clock placer on BUFGCTRL_X0Y29

Clock Rule: rule_mmcm_bufg
Status: PASS 
Rule Description: An MMCM driving a BUFG must be placed on the same half side (top/bottom) of the device
instance_name2/inst/mmcm_adv_inst (MMCME2_ADV.CLKOUT0) is provisionally placed by clock placer on MMCME2_ADV_X0Y7
instance_name2/inst/clkout1_buf (BUFG.I) is provisionally placed by clock placer on BUFGCTRL_X0Y28

ERROR: [Place 30-99] Placer failed with error: 'IO Clock Placer failed'

What is wrong and how do I resolve this issue?

Solution

This issue can occur due to incorrect use of IBUFDS_GTE2 for MRCCs.

When differential clocks are coming from MRCCs or SRCCs, IBUFGDS/IBUFDS should be used, not an IBUFDS_GTE2. 

The problem can be resolved by replacing the IBUFDS_GTE2 with an IBUFGDS/IBUFDS.
AR# 64283
Date Created 04/15/2015
Last Updated 05/05/2015
Status Active
Type General Article
Tools
  • Vivado Design Suite - 2014.4
  • Vivado Design Suite - 2014.4.1