I now am studying the tri-state buffer from the reference "Fundamental of Logic Design", 6th edition, By: C. H. Roth and L. L. Kinney. I found that circuit of a bi-directional pin as application of tri-state buffer:
With this text descriping it
Integrated circuits are often designed using bi-directional pins for input and output. Bi-directional means that the same pin can be used as an input pin and as an output pin, but not both at the same time. To accomplish this, the circuit output is connected to the pin through a three-state buffer, as shown in Figure 9-12.When the buffer is enabled, the pin is driven with the output signal.When the buffer is disabled, an external source can drive the input pin.
I have some questions about this circuit:
- In case of
EN=1, the output of the ciruit will be put in the bi-directional bin and also looped again into the circuit. I think there should be some other tri-state buffer in the lower signal to prevent this. Is this right?
- In case of
EN=1, what if there is some logic value is put on the bi-directional pin as an input from external source? This will result in unknown state I think. So I think there should be another tri-state buffer on the line between the join and the pin. Is this right?