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

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

Description

Keywords: input, output, bidirectional, LVDS, DIFFMTB

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

Solution

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:

Spartan-3A BLVDS_25 output driving LVDS_25 input
Spartan-3A BLVDS_25 output driving LVDS_25 input


Spartan-3A LVDS_25 output driving LVDS_25 input
Spartan-3A LVDS_25 output driving LVDS_25 input


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

Comparison BLVDS_25 and LDVS_25 outputs
Comparison BLVDS_25 and LDVS_25 outputs


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:

http://www.xilinx.com/support/documentation/data_sheets/ds529.pdf

External output and input terminations resistors from Spartan-3A data sheet
External output and input terminations resistors from Spartan-3A 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 Created 11/24/2008
Last Updated 01/27/2009
Status Active
Type General Article