I know that the "third state" of a tristate buffer is a high - impedance output. But my question is what about the input impedance? Will it also change to high - Z?

Whatever article I read about a tristate buffer, no one seems to talk about the input impedance, so my second question is that does it even matter if the input impedance is low or extremely high?

  • \$\begingroup\$ UJ: One of the things you will eventually learn about learning electronics is to be mindful of what such descriptions (component data sheets included) are NOT telling you. This is a good question for that reason. \$\endgroup\$ – FiddyOhm Aug 5 '16 at 15:28

On regular, CMOS digital chips, the impedance of an input is always high.

By definition, the internal implementation of an input should not influence the level of that input. Only the external components should be able to decide on whether the input is high or low. Otherwise, it becomes an output.

It is as simple as that.

And actually, an output that is high impedance is often exactly configured in the same way as an input, on a MCU. It has exactly the same behavior.

To be more explicit, here is how a general-purpose input/output (GPIO) pin is implemented within an MCU:

MCU pin equivalent circuit

There are only three valid states: OutputH on and OutputL off (the pin is a high-level output), OutputH off and OutputL on (the pin is a low-level output), or both OutputH and OutputL off (the pin is either an high impedance output or an input). The difference between a high impedance output and an input is simply whether the Input value is used or unused from the firmware. As an aside, the state where both OutputH and OutputL are on is invalid, as this would create a short between Vcc and GND.

Note that I took the example of MCU GPIO pins here, because they can be configured in any state you want, but the principle is the same for any kind of digital chips (logic chips, etc): an input is always high-impedance.

  • 2
    \$\begingroup\$ Your answer regarding a "digital input" is always high impedance is not correct. It may be true for many modern CMOS integrated circuits or MCUs. But it is not correct for many ICs from former times, many of which are still available today. Take a look at the input characteristics of a SN7400N which requires you to sink up to 1.6mA from its input pin if you want to establish a low level on the pin. I would not call that high impedance. \$\endgroup\$ – Michael Karas Aug 5 '16 at 14:50
  • 1
    \$\begingroup\$ @MichaelKaras SN74xx is just unobtainium now. I'm not even sure you can still find SN74LSxx easily (it has a better 0.4mA low level input leakage, which is closer to the high-Z state, but using 74LS on a design would be a very bad idea anyway). So, yes, I shamelessly assumed CMOS was considered here. But your remark is right, I just think it is not worth warning about that nowadays. \$\endgroup\$ – dim Aug 5 '16 at 15:04
  • \$\begingroup\$ I gave the example of just one part number. That part is available!! Mouser and Digikey both have it in stock. But there are dozens if not hundreds of other parts that I could show you do not have high impedance digital inputs. So your statement of "always high impedance" is still wrong despite what you choose to see in your workspace. \$\endgroup\$ – Michael Karas Aug 5 '16 at 15:19
  • 1
    \$\begingroup\$ DIM, your answer is focused on the implementation of a tri-state buffer in an MCU context. I believe the OP meant in a larger context - e.g. CMOS, TTL, etc. As to MichaelKaras's comments: There are many 74 logic families; some, but not all, are CMOS and have high-Z inputs simply because they are CMOS. There are still a number of 74 families, whose inputs are not CMOS/HI-Z, which are available and used in the Real World of Electronics for various reasons. \$\endgroup\$ – FiddyOhm Aug 5 '16 at 15:25
  • 1
    \$\begingroup\$ I'm with dim, even a 74xx input is relatively high impedance in the context of the logic system it's used with, you can drive many inputs with a single output. \$\endgroup\$ – Neil_UK Aug 5 '16 at 15:25

I feel like these answers are overly complex for the question.

A typical CMOS tri-state inverter is shown below. You can see that the input capacitance is just gate capacitance plus any parasitics, regardless of the value of OE. MOSFET gates are capacitive. They may draw a very small leakage current but this is in most cases negligible.

tri-state buffer

When OE is activated, both the series NMOS and PMOS switch on and allow for the input to cause a toggle at the output.

When the OE is inactive, the supply voltage and ground are cut off from the output. This high-z state can be measured on the order of MOhms.

If you're using a BJT tri-state then the input impedance will drop by quite a lot in most cases (since BJT's are current controlled devices). But, when someone says tri-state buffer they typically mean CMOS, in my experience.


A tristate buffer isn't complicated. Ideally, it looks about like this:


simulate this circuit – Schematic created using CircuitLab

(I've included BUF1 and BUF2 mostly to illustrate that the input impedance can be different from the output impedance that is coupled to/through SW1. But you can also just mentally ignore them for some thinking purposes, if that helps you.)

Where SW1 is controlled by BUF2 (with some unknown input impedance.) Note that when SW1 is in position TRI, that the output floats. That's also known as high impedance because it isn't connected to anything. (In practice, nothing is so perfect as that, so there will be some very small conductance present.) When SW1 is in the ~TRI position, then the output will have the conditions of BUF1's output (impedance, voltage source, etc.)

In logic, of course, the input will be allowed to be whatever signalling is used for a "0" or a "1" and most practical designs will have BUF1's input impedance as high as possible so as to reduce the loading on whatever is driving it. (Similarly, BUF2's input impedance will also be as high as practical.)

There is also something related called an open-collector or open-drain output. These look more like the following case:


simulate this circuit

Note that in this case the logic value at the input controls SW1. (In the first case above (the first schematic), the input logic value doesn't control SW1.) The output will either be a low impedance output "0" or else a high impedance "1". These are also useful to know about. You can see their output as either "0" or "tristate."

The tristating control input impedance should be as high as practical. But even that is a matter of circumstances. I suppose if one is trying to drive it with a 50 ohm coax/driver situation, you might prefer that input to have a matching impedance. (Don't know of any situation where that happens, though.) The input itself (first circuit case) normally also has as high an impedance as possible where logic states are involved. Though if the input were to be an analog signal of some kind then it might be best to completely remove BUF1 somehow and actually just have a wire to pass along that analog signal as accurately as possible.

  • 1
    \$\begingroup\$ I think you've answered another question, Jonk. OP wants to know if the input of BUF changes when the output of BUF is tri-stated. (It doesn't.) See @Dim's answer. \$\endgroup\$ – Transistor Aug 5 '16 at 18:24
  • \$\begingroup\$ Wouldn't surprise me. It does address it through implication by providing functional schematics, I think. But perhaps you are right. The OP may be able to answer their own question this way. Don't know, though. \$\endgroup\$ – jonk Aug 5 '16 at 18:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.