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

11.1 Virtex-II MAP - "ERROR:DesignRules:503 - Blockcheck: Incompatible programming for IO standard."


When I try to assign a bidirectional I/O a class I (or III) I/O standard, the following error occurs in the related packing phase of MAP. However, if the I/O standard attribute is changed from class I (or III) to class II (or IV), the error does not occur.

"ERROR:DesignRules:503 - Blockcheck: Incompatible programming for IO standard.

IO standard SSTL2_I_DCI of comp TST does not allow both input and output

programming on the same comp."


This error is valid. The reason that a class I (or III) I/O produces an error for bidirectional pins while a class II (or IV) I/O of the same type does not is related to the termination schemes used for the respective standards.

A class II (or IV) standard uses a termination scheme that is symmetrical with the transmission line (with termination resistors on both the source and receiver side). Alternatively, a class I (or III) standard uses an asymmetrical termination scheme with a termination resistor only on the receiving side. Consequently, the odd numbered classes cannot be used in a bidirectional IOB since in Virtex-II silicon the source and receiver share a common connection to the I/O pad.

AR# 11971
Date Created 08/29/2007
Last Updated 12/15/2012
Status Active
Type General Article