10.2.3 I/O PDC Commands

I/O PDC commands are used to set and reset I/O standards, voltages values, and attributes.

10.2.3.1 set_iobank

This PDC command sets the input/output supply voltage (vcci) and the input reference voltage (vref) for the specified I/O bank. DDRIO banks have a dedicated vref pin and you do not need to set any pin on these banks. (See the device datasheet to see which banks are of type DDRIO.)

Diff I/Os do not need a vref pin.

set_iobank bankname \
[-vcci vcci_voltage]\ [-vref vref_voltage]\ [-fixed value]\
[-vrefpins value]\
[-updateiostd value]\

Arguments

The following sections describe the set_iobank arguments.

bankname
Specifies the name of the bank. I/O banks are numbered 0 through N (bank0, bank1,...bankN). See the datasheet for your device to determine the number of banks.
-vcci vcci_voltage

Sets the input/output supply voltage. You can enter one of the following values:

Table 10-50. -Vcci Values
Vcci VoltageCompatible Standards
3.3VLVTTL, LVCMOS 3.3, PCI 3.3, LVPECL
2.5VLVCMOS 2.5, SSTL2 (Class I and II), LVDS, BUSLVDS, MLVDS, MINILVDS, RSDS
1.8VLVCMOS 1.8, LPDDRI, LPDDRII, SSTL18I
1.5VLVCMOS 1.5, SSTL 1.5 (Class I and II), HSTL (Class I and II)
1.2VLVCMOS 1.2
-vref vref_voltage

Sets the input reference voltage. You can enter one of the following values:

Table 10-51. -vref Values
Vref VoltageCompatible Standards
1.25VSSTL2 (Class I and II)
1.0VSSTL18 (Class I and II), LPDDR (Class I and II)
0.75VSSTL15 (Class I and II), HSTL (Class I and Class II)
-fixed Value

Specifies if the I/O technologies (vcci and vccr voltage) assigned to the bank are locked. You can enter one of the following values:

Table 10-52. -fixed Values
ValueDescription
yesThe technologies are locked.
noThe technologies are not locked.
-vrefpins value

Specifies, if the I/O technologies (vcci and vccr voltage) assigned to the bank are locked. You can enter one of the following values:

Table 10-53. -vrefpins Values
ValueDescription
defaultBecause the VREF pins are not locked, the I/O Bank Assigner can assign a VREF pin.
pinnumThe specified VREF pin(s) are locked if the -fixed option is yes. The I/O Bank Assigner cannot remove locked VREF pins.
-updateiostd Value

Specifies, if the I/O technologies (vcci and vccr voltage) assigned to the bank are locked. You can enter one of the following values:

Table 10-54. -updateiostd Values
ValueDescription
yesIf there are I/Os placed on the bank, we keep the placement and change the host to one which is compatible with this bank setting. Check the I/O Attributes to see the one used by the tool.
noIf there are I/Os placed and locked on the bank, the command will fail. If they are placed I/Os they will be unplaced.

Exceptions

Any pins assigned to the specified I/O bank that are incompatible with the default technology are unassigned.

Examples

The following example assigns 3.3V to the input/output supply voltage (vcci) and 1.5V to the input reference voltage (vref) for I/O bank 0.

set_iobank bank0 -vcci 3.3 -vref 1.5

The following example shows that even though you can import a set_iobank command with the -vrefpins argument set to “default”, the exported PDC file shows the specific default pins instead of "default".

Imported PDC file contains:

set_iobank bank3 -vcci 3.3 -vref 1.8 -fixed yes -vrefpins {default}

Exported PDC file contains:

set_iobank bank3 -vcci 3.3 -vref 1.8 -fixed yes -vrefpins {N3 P8 M8}

See Also

10.2.3.2 reset_io

This PDC command restores all attributes of an I/O macro to its default values. Also, if the port is assigned, it becomes unassigned.

reset_io portname -attributes value

Arguments

The following sections describe reset_io arguments.

portname

Specifies the port name of the I/O macro to be reset. You can use the following wild card characters in port names:

Table 10-55. portname Characteristics
Wild CardWhat It Does
\Interprets the next character as a non-special character
?Matches any single character
*Matches any string
-attributes Value

Preserve or not preserve the I/O attributes during incremental flow. The following table shows the acceptable values for this argument:

Table 10-56. -attributes Values
ValueDescription
yesUnassigns all of the I/O attributes and resets them to their default values.
noUnassigns only the port.

Exceptions

None.

Examples

Resets the I/O macro "a" to the default I/O attributes and unassigns it.

reset_io a

Resets all I/O macros beginning with "b" to the default I/O attributes and unassigns them.

reset_io b_*

Only unassigns port b from its location.

reset_io b -attributes no

See Also

10.2.3.3 reset_iobank

This PDC command resets an I/O bank's technology to the default technology.

reset_iobank bankname

Arguments

The following section describes reset_iobank arguments.

bankname

Specify, if the I/O bank must be reset to the default technology. I/O banks are numbered 0-7 (bank0, bank1, …, bank7).

Exceptions

Any pins that are assigned to the specified I/O bank but are incompatible with the default technology are unassigned.

Examples

The following example resets the I/O bank 4 to the default technology:

reset_iobank bank4

See Also

10.2.3.4 reserve

This PDC command reserves the named pins in the current device package.

reserve -pinname "list of package pins"

Arguments

The following section describes reserve arguments.

-pinname "list of package pins"
Specify the package pin name(s) to reserve. You can reserve one or more pins.

Exceptions

None.

Examples

reserve -pinname "F2"
reserve -pinname "F2 B4 B3"
reserve -pinname "124 17"

See Also

10.2.3.5 set_io (SmartFusion 2 and IGLOO 2)

This PDC command sets the attributes of an I/O.

You can use the set_io command to assign an I/O technology, the I/O attributes, place, or lock the I/O at a given pin location. There are three I/O bank types available in SmartFusion 2 and IGLOO 2; MSIOD, MSIO, and DDRIO.

Important: For the I/O Register combining option, use the set_ioff command. See the set_ioff command for more information.
set_io portname\
[-iostd value]\
[-pre_emphasis value]\ 
[-lpe value]\
[-ff_io_state value]\
[-out_drive value]\
[-slew value]\
[-res_pull value]\
[-schmitt_trigger value]\
[-in_delay value]\
[-odt_static value]\
[-odt_imp value]\
[-ff_io_avail value]\
[-pinname package_pin] \ 
[-fixed value] \
[-out_load value]

Arguments

The following section describes set_io (SmartFusion 2 and IGLOO 2) arguments. The attributes below are case sensitive.

portname

Specify the portname of the I/O macro.

-iostd Value

Sets the I/O standard for this macro. Choosing a standard allows the software to set other attributes, such as the slew rate and output loading. If the voltage standard used with the I/O is not compatible with other I/Os in the I/O bank, then assigning an I/O standard to a port will invalidate its location and automatically unassign the I/O.

The following table lists the supported I/Os by Bank type.

Table 10-57. -iostd Values
MSIODMSIODDRIO
LVTTL
LVCMOS33
PCI
LVPECL (Input ONLY)
LVDS33
LVCMOS12LVCMOS12LVCMOS12
LVCMOS15LVCMOS15LVCMOS15
LVCMOS18LVCMOS18LVCMOS18
LVCMOS25LVCMOS25LVCMOS25
SSTL2ISSTL2ISSTL2I (DDR1)
STL2IISSTL2II (DDR1)
SSTL18ISSTL18ISSTL18I (DDR2)
SSTL18IISSTL18II (DDR2)
HSTLIHSTLIHSTLI
HSTLII
SSTL15I (DDR3)
SSTL15II (DDR3)
LPDDRI
LPDDRII
LVDSLVDS
RSDSRSDS
MINILVDSMINILVDS
BUSLVDS (Input ONLY)BUSLVDS
MLVDS (Input ONLY)MLVDS

I/O standards support for single and differential I/Os is shown in the following table.

Table 10-58. I/O Standards for Single and Differential I/Os
ValueSingleDifferentialDescription
LVTTLX(Low-Voltage TTL) A general purpose standard (EIA/JESDSA) for 3.3V applications. It uses an LVTTL input buffer and a push-pull output buffer.
LVCMOS33X(Low-Voltage CMOS for 3.3V) An extension of the LVCMOS standard (JESD8-5) used for general purpose 3.3V applications.
LVCMOS25X(Low-Voltage CMOS for 2.5V) An extension of the LVCMOS standard (JESD8-5) used for general purpose 2.5V applications.
LVCMOS18X(Low-Voltage CMOS for 1.8V) An extension of the LVCMOS standard (JESD8-5) used for general purpose 1.8V applications. It uses a 3.3V-tolerant CMOS input buffer and a push-pull output buffer.
LVCMOS15X(Low-Voltage CMOS for 1.5V) An extension of the LVCMOS standard (JESD8-5) used for general purpose 1.5V applications. It uses a 3.3V-tolerant CMOS input buffer and a push-pull output buffer.
LVCMOS12X(Low-Voltage CMOS for 1.2V) An extension of the LVCMOS standard (JESD8-5) used for general purpose 1.2V applications.
LVDSXA moderate-speed differential signaling system, in which the transmitter generates two different voltages which are compared at the receiver. It requires that one data bit be carried through two signal lines; therefore, you need two pins per input or output. It also requires an external resistor termination. The voltage swing between these two signal lines is approximately 350 mV.
LVDS33XLVDS for 3.3V
BUSLVDSX2.5V BUSLVDS
MLVDSX
MINILVDSX
RSDSX
LVPECL (only for inputs)XPECL is another differential I/O standard. It requires that one data bit is carried through two signal lines; therefore, two pins are needed per input or output. It also requires an external resistor termination. The voltage swing between these two signal lines is approximately 850 mV. When the power supply is 3.3V, it is commonly referred to as Low-Voltage PECL (LVPECL).
PCI(Peripheral Component Interface) Specifies support for both 33 MHz and 66 MHz PCI bus applications. It uses an LVTTL input buffer and a push-pull output buffer. With the aid of an external resistor, this I/O standard can be 5V compliant for most families.
PCIX(Peripheral Component Interface Extended) An enhanced version of the PCI specification that can support higher average bandwidth; it increases the speed that data can move within a computer from 66 MHz to 133 MHz. PCI-X is backward-compatible, which means that devices can operate at conventional PCI frequencies (33 MHz and 66 MHz). PCI-X is also more Fault tolerant than PCI.
HSTLIXX(High-Speed Transceiver Logic) A general purpose, high-speed 1.5V bus standard (EIA/JESD8-6). It has four classes; Microchip® SoC supports Class I and II. It requires a differential amplifier input buffer and a push- pull output buffer.
HSTLIIXX(High-Speed Transceiver Logic) A general purpose, high-speed 1.5V bus standard (EIA/JESD8-6). It has four classes; Microchip SoC supports Class I and II. It requires a differential amplifier input buffer and a push-pull output buffer.
SSTL2IXX(Stub Series Terminated Logic for 2.5V) A general purpose 2.5V memory bus standard (JESD8-9). It has two classes; Microchip SoC supports both. It requires a differential amplifier input buffer and a push-pull output buffer.
SSTL2IIXXSee SSTL2I above.
SSTL15IXX(Stub Series Terminated Logic for 1.5V) A general purpose 1.5V memory bus standard (JESD8-9). It has two classes; Microchip SoC supports both. It requires a differential amplifier input buffer and a push-pull output buffer.
SSTL15IIXXSee SSTL15I
SSTL18IIXX(Stub Series Terminated Logic for 1.8V) A general-purpose 1.8V memory bus standard (JESD8-9). It has two classes; Microchip SoC supports both. It requires a differential amplifier input buffer and a push-pull output buffer.
-pre_emphasis Value

The pre-emphasis rate is the amount of rise or fall time an input signal takes to get from logic low to logic high or vice versa. It is commonly defined to be the propagation delay between 10% and 90% of the signal's voltage swing. Possible values are shown in the following table. The output buffer has a programmable slew rate for both high-to-low and low-to-high transitions. The low rate is incompatible with 3.3V PCI requirements.

Table 10-59. -pre_emphasis Value
ValueDescription
NONESets to none (default)
MINSets to minimum
MEDIUMSets to medium
MAXSets to maximum
-lpe Value

Sets the state at which your device exits from Low Power mode. Possible values are shown in the following table.

Table 10-60. -lpe Value
ValueDescription
OFFDefault; no LPE set
Wake_on_ChangeExits from Low Power mode on change
Wake_on_0Exits from Low Power mode on 0
Wake_on_1Exits from Low Power mode on 1
-ff_io_state Value

Preserves the previous state of the I/O. By default, all the I/Os become striated, when the device goes into Flash*Freeze mode. (A tristatable I/O is an I/O with three output states: high, low, and high-impedance.) You can override this default using theFF_IO_STATE attributes. When you set this attribute to LAST_VALUE, the I/O remains in the same state in which it was functioning before the device went into Flash*Freeze mode. Possible values are shown in the following table.

Table 10-61. -ff_io_state Value
ValueDescription
TRISTATESets the I/O to tri-state (default).
LAST_VALUEPreserves the previous state of the I/O.
-out_drive Value

Sets the strength of the output buffer to 2, 4, 6, 8, 10, 12, 16, or 20 in mA, weakest to strongest. The list of I/O standards for which you can change the output drive and the list of values you can assign for each I/O standard is family-specific. Not all I/O standards have a selectable output drive strength. Also, each I/O standard has a different range of legal output drive strength values. The values you can choose from depend on which I/O standard you have specified for this command. See the Slew and Out_drive Settings table under "Exceptions" in this topic for possible values. The following table lists the acceptable values.

Table 10-62. -out_drive Value
ValueDescription
2Sets the output drive strength to 2 mA
4Sets the output drive strength to 4 mA
6Sets the output drive strength to 6 mA
8Sets the output drive strength to 8 mA
10Sets the output drive strength to 10 mA
12Sets the output drive strength to 12 mA
16Sets the output drive strength to 16 mA
20Sets the output drive strength to 20 mA
-slew Value

Sets the output slew rate. Slew control affects only the falling edges for some families. Slew control affects both rising and falling edges. Not all I/O standards have a selectable slew. Whether you can use the slew attribute depends on which I/O standard you have specified for this command.

See the Slew and Out_drive Settings table under Exceptions in this topic. The following table lists the acceptable values for the -slew attribute.

Table 10-63. -slew Value
ValueDescription
SLOWSets the I/O slew to slow.
MEDIUMSets the I/O slew to medium.
MEDIUM_FASTSets the I/O slew to medium fast.
FASTSets the I/O slew to fast.
-res_pull Value

Allows you to include a weak resistor for either pull-up or pull-down of the input buffer or the output buffer. Not all I/O standards have a selectable resistor pull option. The following table shows the acceptable values for the -res_pull attribute.

Table 10-64. -res_pull Value
ValueDescription
upIncludes a weak resistor for pull-up of the input buffer.
downIncludes a weak resistor for pull-down of the input buffer.
noneDoes not include a weak resistor. This is the default value.
-schmitt_trigger Value

Specifies whether this I/O has an input Schmitt Trigger. The Schmitt Trigger introduces hysteresis on the I/O input. This allows very slow moving or noisy input signals to be used with the part without false or multiple I/O transitions taking place in the I/O. The following table lists the acceptable values for the - schmitt_trigger attribute.

Table 10-65. -schmitt_trigger Value
ValueDescription
ONTurns the Schmitt Trigger ON.
OFFTurns the Schmitt Trigger OFF.
-in_delay Value

Specifies whether this I/O has an input delay. You can specify an input delay between 0 and 63. The input delay is not a delay value but rather a selection from 0 to 63. The actual value is a function of the operating conditions and is automatically computed by the delay extractor when a timing report is generated. The following table lists the acceptable values for the -in_delay attribute.

Table 10-66. -in_delay Value
ValueDescription
OFFThis I/O does not have an input delay.
0Sets the input delay to 0.
1Sets the input delay to 1.
2Sets the input delay to 2.
......
63Sets the input delay to 63.
-odt_static Value

On-Die Termination (ODT) is the technology where the termination resistor for impedance matching in transmission lines is located inside a semiconductor chip instead of on a printed circuit board. The following table lists the possible values.

Table 10-67. -odt_static Value
ValueDescription
ONYes, the termination resistor for impedance matching is located inside the chip
OFFNo, the termination resistor is on the printed circuit board
-odt_imp Value

ODT is the technology where the termination resistor for impedance matching in transmission lines is located inside a semiconductor chip instead of on a printed circuit board.

Port Configuration (PC) bits are static configuration bits set during programming to configure the I/O(s) as per your choice. See your device data sheet for a full range of possible values.

-ff_io_avail Value

Indicates the I/O is available in Flash*Freeze mode. The following table lists the possible values.

Table 10-68. -ff_io_avail Value
ValueDescription
yesI/O is available in Flash*Freeze mode.
noBy default, I/O is unavailable in Flash*Freeze mode.
-pinname package_pin

Specifies the package pin name(s) on which to place the I/O.

-fixed Value

Specifies whether the pin is locked or unlocked.

Table 10-69. -fixed Value
ValueDescription
yesThe location of this port is locked.
noThe location of this port is unlocked.
-out_load Value

Sets the output load (in pF) of output signals. The default is 5.

Direction: Output

Examples

set_io PAD \
-PINNAME A2 \
-FIXED yes \
-FF_IO_STATE LAST_VALUE \
set_io PAD_0 \
-pinname A8 \
-fixed yes \
-IN_DELAY 6 \
-LPE Wake_On_Change \
-RES_PULL Down \
-SCHMITT_TRIGGER On \
set_io PAD_3 \
-OUT_DRIVE 6 \
-OUT_LOAD 52 \

See Also

10.2.3.6 set_io (RTG4 only)

This PDC command sets the attributes of an I/O for RTG4 devices. You can use the set_io command to assign an I/O technology, the I/O attributes, place, or lock the I/O at a given pin location. There are three I/O Bank types available in RTG4; MSIOD, MSIO, and DDRIO.

Important: For the I/O Register combining option, use the set_ioff command. See the set_ioff command for more information.
set_io portname\
[-direction input | output]\ 
[-iostd value]\
[-pre_emphasis value]\ 
[-out_drive value]\
[-out_load value]\ 
[-slew value]\
[-res_pull value]\
[-schmitt_trigger value]\ 
[-input_delay value]\
[-odt_static value]\ 
[-odt_dynamic value]\
[-odt_imp value]\

Arguments

The following section describes set_io (RTG4 only) arguments.

portname

Specifies the portname of the I/O macro.

-direction Value

Specifies the direction of the I/O ports. Valid values are input, output, and inout.

-iostd Value

Sets the I/O standard for this macro. Choosing a standard allows the software to set other attributes, such as the slew rate and output loading. If the voltage standard used with the I/O is not compatible with other I/Os in the I/O bank, then assigning an I/O standard to a port will invalidate its location and automatically unassign the I/O.

The following table lists a list of supported I/Os by Bank type.

Table 10-70. -iostd Value
MSIODMSIODDRIO
LVTTL
LVCMOS33
PCI
LVPECL (Input ONLY)
LVDS33
LVCMOS12LVCMOS12LVCMOS12
LVCMOS15LVCMOS15LVCMOS15
LVCMOS18LVCMOS18LVCMOS18
LVCMOS25LVCMOS25LVCMOS25
SSTL2ISSTL2ISSTL2I (DDR1)
SSTL2IISTL2IISSTL2II (DDR1)
SSTL18ISSTL18ISSTL18I (DDR2)
SSTL18IISSTL18IISSTL18II (DDR2)
HSTLIHSTLIHSTLI
HSTLII
SSTL15I (DDR3)

Only for IOs used by FDDR

SSTL15II (DDR3)

Only for I/OS used by FDDR

LPDDRI
LPDDRII
LVDSLVDS
RSDSRSDS
MINILVDSMINILVDS
BUSLVDS (Input ONLY)BUSLVDS
MLVDS (Input ONLY)MLVDS

I/O standards support for single and differential I/Os is shown in the following table.

Table 10-71. I/O Standards for Single and Differential I/Os
ValueSingleDifferentialDescription
LVTTLX(Low-Voltage TTL) A general purpose standard (EIA/ JESDSA) for 3.3V applications. It uses an LVTTL input buffer and a push-pull output buffer.
LVCMOS33X(Low-Voltage CMOS for 3.3V) An extension of the LVCMOS standard (JESD8-5) used for general purpose 3.3V applications.
LVCMOS25X(Low-Voltage CMOS for 2.5V) An extension of the LVCMOS standard (JESD8-5) used for general purpose 2.5V applications.
LVCMOS18X(Low-Voltage CMOS for 1.8V) An extension of the LVCMOS standard (JESD8-5) used for general purpose 1.8V applications. It uses a 3.3V-tolerant CMOS input buffer and a push-pull output buffer.
LVCMOS15X(Low-Voltage CMOS for 1.5V) An extension of the LVCMOS standard (JESD8-5) used for general purpose 1.5V applications. It uses a 3.3V-tolerant CMOS input buffer and a push-pull output buffer.
LVCMOS12X(Low-Voltage CMOS for 1.2V) An extension of the LVCMOS standard (JESD8-5) used for general purpose 1.2V applications. This I/O standard is supported only in ProASIC®3L and the IGLOO® family of devices.
LVDSXA moderate-speed differential signaling system, in which the transmitter generates two different voltages which are compared at the receiver. It requires that one data bit be carried through two signal lines. Therefore, you need two pins per input or output. It also requires an external resistor termination. The voltage swing between these two signal lines is approximately 350 mV.
LVDS33XLVDS for 3.3V
BUSLVDSX2.5V BUSLVDS
MLVDSX
MINILVDSX
RSDSX
LVPECL (only for inputs)XPECL is another differential I/O standard. It requires that one data bit is carried through two signal lines; therefore, two pins are needed per input or output. It also requires an external resistor termination. The voltage swing between these two signal lines is approximately 850 mV. When the power supply is 3.3V, it is commonly referred to as LVPECL.
HSTLIXXHigh-Speed Transceiver Logic Class I. A general- purpose, high-speed 1.5V bus standard (EIA/JESD 8-6). It has four classes; Microchip® SoC supports Class I and Class II. It requires a differential amplifier input buffer and a push-pull output buffer.
HSTLIIXXHigh-Speed Transceiver Logic Class II. A general- purpose, high-speed 1.5V bus standard (EIA/JESD8-6). It has four classes; Microchip SoC supports Class I and Class II. It requires a differential amplifier input buffer and a push-pull output buffer.
HSTL18IXXHigh-Speed Transceiver Logic 1.8V Class I. A general- purpose, high-speed 1.8V bus. It has four classes; Microchip SoC supports Class I and Class II. It requires a differential amplifier input buffer and a push-pull output buffer.
HSTL18IIXXHigh-Speed Transceiver Logic 1.8V Class II. A general- purpose, high-speed 1.8V bus. It has four classes; Microchip SoC supports Class I and Class II. It requires a differential amplifier input buffer and a push-pull output buffer.
SSTL2IXX(Stub Series Terminated Logic for 2.5V) A general- purpose 2.5V memory bus standard (JESD8-9). It has two classes: Class I and Class II; Microchip SoC supports both. It requires a differential amplifier input buffer and a push-pull output buffer.
SSTL2IIXXSee SSTL2I above.
SSTL15IXXStub Series Terminated Logic for 1.5V Class I. A general purpose 1.5V memory bus standard (JESD8-9). It has two classes: Class I and Class II; Microchip supports both. It requires a differential amplifier input buffer and a push-pull output buffer.
SSTL15IIXXStub Series Terminated Logic for 1.5V Class II. See SSTL15I above.
SSTL18IXXStub Series Terminated Logic for 1.8V Class I. A general purpose 1.8V memory bus standard (JESD8-9). It has two classes; Microchip SoC supports both. It requires a differential amplifier input buffer and a push- pull output buffer.
SSTL18IIXXStub Series Terminated Logic for 1.8V Class II. A general purpose 1.8V memory bus standard (JESD8-9). It has two classes; Microchip SoC supports both. It requires a differential amplifier input buffer and a push- pull output buffer.
LPDDRIXX
LPDDRIIXX
-pre_emphasis Value

The pre-emphasis rate is the amount of rise or fall time an input signal takes to get from logic low to logic high or vice versa. It is commonly defined to be the propagation delay between 10% and 90% of the signal's voltage swing. Possible values are shown in the following table. The output buffer has a programmable slew rate for both high-to-low and low-to-high transitions.

Table 10-72. -pre_emphasis Value
ValueDescriptionApplicable to I/O Standards
NONESets to none (default)LVDS, RSDS
MINSets to minimumLVDS, RSDS
MEDIUMSets to mediumRSDS only
MAXSets to maximumLVDS, RSDS
-out_drive Value

Sets the strength of the output buffer to 2, 4, 6, 8, 10, 12, 16, or 20 in mA, weakest to strongest. The list of I/O standards for which you can change the output drive and the list of values you can assign for each I/O standard is family-specific and I/O Bank Type -specific. Not all I/O standards have a selectable output drive strength. Also, each I/O standard has a different range of legal output drive strength values. The values you can choose from depend on which I/O standard you have specified for this command. The following table lists the acceptable values.

Table 10-73. -out_drive Value
Value (mA)Description
2Sets the output drive strength to 2 mA
4Sets the output drive strength to 4 mA
6Sets the output drive strength to 6 mA
8Sets the output drive strength to 8 mA
10Sets the output drive strength to 10 mA
12Sets the output drive strength to 12 mA
16Sets the output drive strength to 16 mA
20Sets the output drive strength to 20 mA
Table 10-74. I/O Standards
I/O StandardUser -set Valid Output Drive Values (mA) Per I/O Bank TypeValid Output Drive Value for Die
LVTTLMSIOMSIODDDRIO
22
44
88
1212
1616
LVCMOS3322
44
88
1212
1616
LVCMOS122222
4444
666
LVCMOS152222
4444
6666
888
1010
1212
LVCMOS182222
4444
6666
8888
101010
121212
1616
-out_load Value

Sets the output load (in pF) of output signals.

-slew Value

Sets the output slew rate. Slew control affects only the falling edges for some families. Slew control affects both rising and falling edges. Not all I/O standards have a selectable slew. Whether you can use the slew attribute depends on which I/O standard you have specified for this command.

The following table lists the acceptable values for the -slew attribute.

Table 10-75. -slew Value
ValueDescriptionI/O StandardI/O Bank Type
SLOWSets the I/O slew to slowLVCMOS12, LVCMOS15, LVCMOS18MSIO, MSIOD, DDRIO
MEDIUMSets the I/O slew to mediumLVCMOS12, LVCMOS15, LVCMOS18DDRIO
FASTSets the I/O slew to fastLVCMOS12, LVCMOS15DDRIO
-res_pull Value

Allows you to include a weak resistor for either pull-up or pull-down of the input buffer or the output buffer. Not all I/O standards have a selectable resistor pull option. The following table shows the acceptable values for the -res_pull attribute for different I/O Standard and I/O Bank combinations.

Table 10-76. -res_pull Value
ValueI/O StandardI/O Bank TypeDescription
upLVTTL, LVCMOS33 PCIMSIOIncludes a weak resistor for pull- up of the input buffer
LVCMOS12, LVCMOS15, LVCMOS18, LVCMOS25MSIO/MSIOD/ DDRIO
downLVTTL, LVCMOS33 PCIMSIOIncludes a weak resistor for pull- down of the input buffer
LVCMOS12, LVCMOS15, LVCMOS18, LVCMOS25MSIO/MSIOD/ DDRIO
noneLVTTL, LVCMOS33 PCIMSIODoes not include a weak resistor (Default value)
LVCMOS12, LVCMOS15, LVCMOS18, LVCMOS25MSIO/MSIOD/ DDRIO
-schmitt_trigger Value

Specifies whether this I/O has an input Schmitt Trigger. The Schmitt Trigger introduces hysteresis on the I/O input. This allows very slow moving or noisy input signals to be used with the part without false or multiple I/O transitions taking place in the I/O. The following table shows the acceptable values for the -schmitt_trigger attribute.

Table 10-77. -schmitt_trigger Value
ValueDescription
ONTurns the Schmitt Trigger ON.
OFFTurns the Schmitt Trigger OFF (Default value).

The applicable valid values are dependent on the I/O Standard and the I/O Bank Type.

Table 10-78. I/O Standard and the I/O Bank Type
I/O StandardI/O Bank Type
LVTTLMSIOMSIODDDRIO
OFF/ONN/AN/A
LVCMOS33OFF/ONN/AN/A
PCIOFF/ONN/AN/A
LVCMOS12OFF/ONOFF/ONOFF/ON
LVCMOS15OFF/ONOFF/ONOFF/ON
LVCMOS18OFF/ONOFF/ONOFF/ON
LVCMOS25OFF/ONOFF/ONOFF/ON
-input_delay Value

Specifies whether this I/O has an input delay. You can specify an input delay between 0 and 63. The input delay is not an absolute delay value but rather a selection from 0 to 63. The actual value is a function of the operating conditions and is automatically computed by the delay extractor when a timing report is generated. The following table shows the acceptable values for the -input_delay attribute.

Table 10-79. -input_delay Value
ValueDescription
OFFThis I/O does not have an input delay (Default value)
0Sets the input delay to 0
1Sets the input delay to 1
2Sets the input delay to 2
......
63Sets the input delay to 63
-odt_static Value

ODT is the technology where the termination resistor for impedance matching in transmission lines is located inside a semiconductor chip instead of on a printed circuit board. Possible value are listed in the following table.

Note: ODT is not allowed for 2.5V or higher single-ended signals. It is allowed for differential signals.
Table 10-80. -odt_static Value
ValueDescription
ONYes, the termination resistor for impedance matching is located inside the chip.
OFFNo, the termination resistor is on the printed circuit board (Default value).

The valid value for each I/O Standard and I/O Bank Type combination is listed in the following table.

Table 10-81. I/O Standard and I/O Bank Type
I/O StandardI/O Bank Type
MSIOMSIODDDRIO
LVPECLOFF/ONN/AN/A
LVDS33OFF/ONN/AN/A
SSTL18I (DDR2)OFF/ONOFF/ONOFF/ON
SSTL18II (DDR2)OFF/ONOFF/ONOFF/ON
HSTL18IOFF/ONOFF/ONOFF/ON
HSTL18IIN/AN/AOFF/ON
HSTLIOFFOFFOFF/ON
HSTLIIOFFOFFOFF/ON
SSTL15I (DDR3)N/AN/AOFF/ON
SSTL15II (DDR3)N/AN/AOFF/ON
LPDDRIN/AN/AOFF/ON
LPDDRIIN/AN/AOFF/ON
LVDSOFF/ONOFF/ONN/A
RSDSOFF/ONOFF/ONN/A
MINILVDSOFF/ONOFF/ONN/A
BUSLVDSOFF/ONOFF/ONN/A
MLVDSOFF/ONOFF/ONN/A
-odt_dynamic Value

This option is not supported for “ES” devices. It is supported only for production devices. This option is used to opt in or out of the dynamic odt set on a bank. Possible value are listed in the table below.

ValueDescription

ODT_STATIC = ON

ODT_DYNAMIC = ON

Illegal

ODT_STATIC = ON

ODT_DYNAMIC = OFF

The ODT resistor is always turned ON.

ODT_STATIC = OFF

ODT_DYNAMIC = OFF

The ODT resistor is always turned OFF.

ODT_STATIC = OFF

ODT_DYNAMIC = ON

The ODT resistor is ON or OFF based on the ODT Dynamic bank setting.
The following I/O standards are supported:

LVDS, RSDS, MINILVDS, LVPECL, HSTLI, HSTLII, SSTL15I, SSTL15II, SSTL18I, SSTL18II, HSTL18I, HSTL18II, LPDDRI, LPDDRII

-odt_imp Value

ODT is the technology where the termination resistor for impedance matching in transmission lines is located inside a semiconductor chip instead of on a printed circuit board. The valid value for each I/O Standard and I/O Bank type is listed in the table below. When the value for an I/O standard is not listed, the impedance value is fixed for the specific I/O standard and is not user- selectable.

Table 10-82. -odt_imp Value
I/O StandardI/O Bank Type
MSIOMSIODDDRIO
SSTL18I (DDR2)50 75 15050 75 15050 75 150
SSTL18II (DDR2)50 75 15050 75 15050 75 150
HSTL18I50 75 15050 75 15050 75 150
HSTL18II50 75 150
LPDDRI50 75 150
LPDDRII50 75 150
SSTL15I (DDR3)20 30 40 60 120
SSTL15II (DDR3)20 30 40 60 120

PC bits are static configuration bits set during programming to configure the IO(s) as per your choice. See your device data sheet for a full range of possible values.

Examples

set_io IO_in\[2\] -iostd LVCMOS25 \
-slew slow \
-schmitt_trigger off \
-input_delay off \

See Also

10.2.3.7 unreserve

This PDC command resets the named pins in the current device. Therefore, they are no longer reserved. You can use these pins in your design.

unreserve -pinname "list of package pins"

Arguments

The following section describes unreserve arguments.

-pinname "list of package pins"

Specifies the package pin name(s) to unreserve.

Exceptions

None.

Examples

unreserve -pinname "F2" 
unreserve -pinname "F2 B4 B3" 
unreserve -pinname "124 63"

See Also