IOBUF_INTERMDISABLE - IOBUF_INTERMDISABLE - 2026.1 English - Primitive: Bidirectional Buffer with Input Path Disable and On-die Input Termination Disable - UG953

Vivado Design Suite 7 Series FPGA and Zynq 7000 SoC Libraries Guide (UG953)

Document ID
UG953
Release Date
2026-06-23
Version
2026.1 English

Primitive: Bidirectional Buffer with Input Path Disable and On-die Input Termination Disable

  • PRIMITIVE_GROUP: I/O
  • PRIMITIVE_SUBGROUP: BIDIR_BUFFER
Page-1 Graphic ID: SW & IP X12314 X12314-061219 Sheet.2 IOBUF_INTERMDISABLE IOBUF_INTERMDISABLE Sheet.3 I/O I/O Dynamic connector.32 Dynamic connector.33 Sheet.6 Sheet.7 Sheet.8 Sheet.9 Sheet.10 Sheet.11 Sheet.12 I I Sheet.13 O O Connector Dot.1 Sheet.15 T T Sheet.16 INTERMDISABLE INTERMDISABLE Sheet.17 IBUFDISABLE IBUFDISABLE

Introduction

The IOBUF_INTERMDISABLE primitive is available in the HD I/O banks. It has an IBUFDISABLE port that can be used to disable the input buffer during periods that the buffer is not being used. The IOBUF_INTERMDISABLE primitive also has an INTERMDISABLE port that can be used to manually disable the optional on-die receiver termination feature.

The IOBUF_INTERMDISABLE primitive can disable the input buffer and force the O output to the internal logic to a logic-Low when the IBUFDISABLE signal is asserted High and the output buffer is 3-stated (T = High). If the I/O is using the on-die receiver termination feature (uncalibrated), this primitive disables the termination legs whenever the INTERMDISABLE signal is asserted High and the output buffer is 3-stated (T = High). When the output buffer is 3-stated (T = High), the input buffer and any on-die receiver termination are controlled by IBUFDISABLE and INTERMDISABLE, respectively. The USE_IBUFDISABLE attribute must be set to TRUE and the SIM_DEVICE set to the appropriate value for this primitive to have the expected behavior that is specific to the architecture. When the output buffer is not 3-stated (T = Low), the input buffer and any on-die receiver termination are disabled and the O output (to the internal logic) is forced to a logic-Low. These features can be combined to reduce power whenever the input is idle for a period of time.

I/O attributes that do not impact the logic function of the component, such as IOSTANDARD and IBUF_LOW_PWR, should be supplied to the top-level port via an appropriate property.

Port Descriptions

Port Direction Width Function
I Input 1 Buffer input representing the output path from the device.
IBUFDISABLE Input 1 Disables input path through the buffer and forces to a logic Low. This feature is generally used to reduce power at times when the I/O is idle for a period of time.
INTERMDISABLE Input 1 Control to enable/disable on-chip input termination. This is generally used to reduce power in long periods of an idle state.
IO Inout 1 Bidirectional I/O port connection. Connect directly to top-level port in the design.
O Output 1 Buffer output representing the input path to the device.
T Input 1 3-state enable input signifying whether the buffer acts as an input or output.

Design Entry Method

Instantiation Yes
Inference No
IP and IP Integrator Catalog No

Available Attributes

Attribute Type Allowed Values Default Description
SIM_DEVICE STRING Set the device version for simulation functionality.
USE_IBUFDISABLE STRING "TRUE", "FALSE", "T_CONTROL" "TRUE" Set this attribute to "TRUE" to enable the IBUFDISABLE pin.

VHDL Instantiation Template

Unless they already exist, copy the following two statements and paste them before the entity declaration.
Library UNISIM;
use UNISIM.vcomponents.all;

-- IOBUF_INTERMDISABLE: Single-ended Bi-directional Buffer with Input Termination
--                      and Input path enable/disable
--                      May only be placed in High Range (HR) Banks
--                      7 Series
-- Xilinx HDL Language Template, version 2026.1

IOBUF_INTERMDISABLE_inst : IOBUF_INTERMDISABLE
generic map (
   DRIVE => 12,
   IOSTANDARD => "DEFAULT", -- Specify the I/O standard
   IBUF_LOW_PWR => "TRUE", -- Low Power - "TRUE", High Performance = "FALSE"
   USE_IBUFDISABLE => "TRUE", -- Use IBUFDISABLE function "TRUE" or "FALSE"
   SLEW => "SLOW")
port map (
   O => O,     -- Buffer output
   IO => IO,   -- Buffer inout port (connect directly to top-level port)
   DCITERMDISABLE => DCITERMDISABLE, -- DCI Termination enable input
   I => I,     -- Buffer input
   IBUFDISABLE => IBUFDISABLE, -- Input disable input, high=disable
   INTERMDISABLE => INTERMDISABLE, -- Input termination disable input
   T => T      -- 3-state enable input, high=input, low=output
);

-- End of IOBUF_DCIEN_inst instantiation

Verilog Instantiation Template


// IOBUF_INTERMDISABLE: Single-ended Bi-directional Buffer with Input Termination
//                      and Input path enable/disable
//                      May only be placed in High Range (HR) Banks
//                      7 Series
// Xilinx HDL Language Template, version 2026.1

IOBUF_INTERMDISABLE #(
   .DRIVE(12), // Specify the output drive strength
   .IBUF_LOW_PWR("TRUE"),  // Low Power - "TRUE", High Performance = "FALSE"
   .IOSTANDARD("DEFAULT"), // Specify the I/O standard
   .SLEW("SLOW"),          // Specify the output slew rate
   .USE_IBUFDISABLE("TRUE") // Use IBUFDISABLE function, "TRUE" or "FALSE"
) IOBUF_INTERMDISABLE_inst (
   .O(O),     // Buffer output
   .IO(IO),   // Buffer inout port (connect directly to top-level port)
   .I(I),     // Buffer input
   .IBUFDISABLE(IBUFDISABLE), // Input disable input, high=disable
   .INTERMDISABLE(INTERMDISABLE), // Input termination disable input
   .T(T)      // 3-state enable input, high=input, low=output
);

// End of IOBUF_INTERMDISABLE_inst instantiation

Related Information

  • 7 Series FPGAs SelectIO Resources User Guide (UG471)