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

Spartan-3A, Spartan-3AN, Spartan-3ADSP - "ERROR:Pack:2309 - Too many bonded comps of type "DIFFSTB" found to fit this device"


When implementing a design, I receive an error indicating that there are no DIFFMTB sites left. Why?


When implementing a design with large number of differential I/Os (LVDS_25, LVDS_33, MINI_LVDS_25, MINI_LVDS_33, RSDS_25, RSDS_33, PPDS_25, PPDS_33, TMDS_33), you might receive the following error if you have exceeded the number of DIFFMTB sites:

Too many bonded comps of type 'DIFFSTB" found to fit this device

DIFFMTB / DIFFSTB sites are the Differential Standard Master / Slave Top Bottom sites. These are the only sites that can support the above standards for both inputs and outputs, so you are limited to using the Top and Bottom banks of the device for true differential outputs. 

The left and right banks of the device can support differential I/O standards; however, these are limited to the following: 

  • Some pins can support all of the differential I/O standards listed above, but only as inputs (called DIFFMI_NDT / DIFFSI_NDT). 
  • The rest of the pins can support a different set of differential I/O standards as both inputs and outputs (BLVDS_25, DIFF_HSTL_I_18, DIFF_HSTL_II_18, DIFF_HSTL_III_18, DIFF_HSTL_I, DIFF_HSTL_III, DIFF_SSTL3_I, DIFF_SSTL3_II, DIFF_SSTL2_I, DIFF_SSTL2_II, DIFF_SSTL18_I, DIFF_SSTL18_II). These are listed as DIFFMLR and DIFFSLR sites. 


If you are using differential I/O standards (for example, LVDS_25) and still do not have enough pins in order to MAP your design, then there are some options available to you: 

  • Ensure you place all the LVDS_25 inputs in the left and right banks to free up pins in the Top and Bottom banks. 
  • Move to a larger device or package size; this will have additional pins in the Top and Bottom banks and might allow the design to be mapped. 
  • If increasing package or device size does not resolve the issue or you have only a small number of LVDS_25 outputs that cannot be mapped, it is possible to use BLVDS_25 to drive a LVDS_25 pin because they have very similar electrical specifications. The following is a comparison of a LVDS_25 output and a BLVDS_25 Spartan-3A output driving a LVDS_25 receiver:



Looking at the signals at the die of the receiver, it is clear that the BLVDS_25 is compatible: 


However, in order to use a BLVDS_25 output to drive a LVDS_25 input, additional termination resistors are required as shown in Figure 7 of the data sheet: 



As the additional termination resistors will take up PCB space, this option might be possible only if there is a small number of LVDS_25 outputs that cannot be mapped.

AR# 31952
Date 08/17/2017
Status Active
Type General Article
  • Spartan-3A
Page Bookmarked